
/* ==========================================================
   HEDA SHELVES
   DRIVE-IN PALLET RACKING SYSTEM
   PRODUCT NO.00312

   COMPLETE PRODUCT DESCRIPTION HTML + CSS

   PAGE CONCEPT:
   Real Warehouse Storage / Pallet Load Engineering
   Orange Bracket & Rail Structure / LIFO Operation

   SOURCE IMAGES:
   Original No.00312 Product Gallery
   Original HEDA Drive-In Technical Diagram

   INQUIRY:
   Official Native GET QUOTE NOW Popup

   CSS SCOPE: .heda-d312
========================================================== */

.heda-d312{
  --d-ink:#20313d;
  --d-dark:#19303f;
  --d-navy:#183b56;
  --d-blue:#286394;
  --d-orange:#e78232;
  --d-orange-dark:#bf6325;
  --d-copy:#526675;
  --d-muted:#758796;
  --d-border:#dce5ea;
  --d-soft:#f3f7f9;
  --d-cream:#faf7f2;
  width:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#fff;
  color:var(--d-copy);
  font:15px/1.85 Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
}

.heda-d312,
.heda-d312 *{
  box-sizing:border-box;
}

.heda-d312 h2,
.heda-d312 h3,
.heda-d312 h4,
.heda-d312 p,
.heda-d312 figure{
  margin:0;
}

.heda-d312 img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  border:0;
}

.heda-d312 a{
  text-decoration:none;
}

.heda-d312 .d-wrap{
  width:calc(100% - 44px);
  max-width:1180px;
  margin:0 auto;
}

.heda-d312 .d-section{
  padding:78px 0;
}

.heda-d312 .d-soft{
  background:var(--d-soft);
}

.heda-d312 .d-cream{
  background:var(--d-cream);
}

.heda-d312 .d-kicker{
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:17px;
  color:var(--d-blue);
  font-size:11px;
  font-weight:800;
  letter-spacing:1.4px;
  text-transform:uppercase;
}

.heda-d312 .d-kicker:before{
  content:"";
  display:block;
  width:27px;
  height:2px;
  flex:0 0 27px;
  background:var(--d-orange);
}

.heda-d312 .d-title{
  color:var(--d-ink);
  font-size:clamp(29px,3.35vw,42px);
  font-weight:800;
  letter-spacing:-.8px;
  line-height:1.23;
}

.heda-d312 .d-lead{
  max-width:790px;
  margin-top:18px;
  color:var(--d-copy);
  font-size:15px;
  line-height:1.95;
}

.heda-d312 .d-head{
  max-width:835px;
  margin-bottom:34px;
}

.heda-d312 .d-caption{
  margin-top:12px;
  color:var(--d-muted);
  font-size:12px;
  line-height:1.8;
}

.heda-d312 .d-notice{
  padding:19px 23px;
  border-left:3px solid var(--d-orange);
  background:#e7eef2;
  color:#536b79;
  font-size:13px;
  line-height:1.95;
}

.heda-d312 .d-notice strong{
  color:var(--d-ink);
}

/* ==========================================================
   01 / WAREHOUSE INSTALLATION HERO
========================================================== */

.heda-d312 .d-hero{
  padding:0 0 27px;
  background:#fff;
  border-top:4px solid var(--d-orange);
}

.heda-d312 .d-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:13px;
  padding:19px 0;
  border-bottom:1px solid var(--d-border);
}

.heda-d312 .d-topline span{
  color:var(--d-blue);
  font-size:11px;
  font-weight:800;
  letter-spacing:1.3px;
}

.heda-d312 .d-topline strong{
  color:var(--d-orange-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:1px;
}

.heda-d312 .d-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);
  gap:0;
  align-items:stretch;
  margin-top:28px;
  border:1px solid var(--d-border);
}

.heda-d312 .d-hero-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:42px 40px;
  background:var(--d-cream);
}

.heda-d312 .d-hero-label{
  display:block;
  margin-bottom:18px;
  color:var(--d-orange-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

.heda-d312 .d-hero h2{
  color:var(--d-ink);
  font-size:clamp(36px,4.4vw,55px);
  font-weight:800;
  letter-spacing:-1.2px;
  line-height:1.13;
}

.heda-d312 .d-hero h2 span{
  display:block;
  color:var(--d-blue);
}

.heda-d312 .d-hero-desc{
  margin-top:22px;
  color:var(--d-copy);
  font-size:15px;
  line-height:1.95;
}

.heda-d312 .d-hero-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:24px;
}

.heda-d312 .d-hero-tags span{
  padding:8px 10px;
  border:1px solid #d9e2e8;
  background:#fff;
  color:#557287;
  font-size:11px;
  font-weight:700;
  line-height:1.5;
}

.heda-d312 .d-hero-visual{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:15px;
  border-left:1px solid var(--d-border);
  background:#f9fbfc;
}

.heda-d312 .d-hero-visual img{
  max-height:590px;
  object-fit:contain;
}

/* ==========================================================
   02 / PRODUCT REFERENCE
========================================================== */

.heda-d312 .d-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:16px;
  border:1px solid var(--d-border);
  background:#fff;
}

.heda-d312 .d-fact{
  min-width:0;
  padding:26px 25px;
}

.heda-d312 .d-fact+.d-fact{
  border-left:1px solid var(--d-border);
}

.heda-d312 .d-fact strong{
  display:block;
  color:var(--d-ink);
  font-size:23px;
  font-weight:800;
  line-height:1.3;
}

.heda-d312 .d-fact span{
  display:block;
  margin-top:9px;
  color:var(--d-muted);
  font-size:12px;
  line-height:1.85;
}

/* ==========================================================
   03 / LANE OPERATION
========================================================== */

.heda-d312 .d-lane-layout{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:47px;
  align-items:start;
}

.heda-d312 .d-lane-steps{
  border-top:1px solid var(--d-border);
}

.heda-d312 .d-lane-step{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:15px;
  padding:22px 0;
  border-bottom:1px solid var(--d-border);
}

.heda-d312 .d-step-number{
  color:var(--d-orange);
  font-size:13px;
  font-weight:800;
}

.heda-d312 .d-lane-step h3{
  color:var(--d-ink);
  font-size:19px;
  font-weight:800;
  line-height:1.45;
}

.heda-d312 .d-lane-step p{
  margin-top:8px;
  color:var(--d-copy);
  font-size:13px;
  line-height:1.9;
}

/* ==========================================================
   04 / STRUCTURAL DETAIL CARDS
   Strictly equal media ratios and card heights
========================================================== */

.heda-d312 .d-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}

.heda-d312 .d-detail-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  border:1px solid var(--d-border);
  overflow:hidden;
  background:#fff;
}

.heda-d312 .d-detail-photo{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  aspect-ratio:1/1;
  padding:13px;
  background:#f8fafb;
}

.heda-d312 .d-detail-photo img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.heda-d312 .d-detail-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
  padding:27px 28px 30px;
  border-top:1px solid var(--d-border);
}

.heda-d312 .d-detail-label{
  display:block;
  margin-bottom:13px;
  color:var(--d-orange-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:1.25px;
  text-transform:uppercase;
}

.heda-d312 .d-detail-copy h3{
  color:var(--d-ink);
  font-size:22px;
  font-weight:800;
  line-height:1.4;
}

.heda-d312 .d-detail-copy p{
  margin-top:12px;
  font-size:14px;
  line-height:1.95;
}

.heda-d312 .d-detail-foot{
  margin-top:auto;
  padding-top:20px;
  color:var(--d-muted);
  font-size:12px;
  line-height:1.85;
}

/* ==========================================================
   05 / BRACING IMAGE FEATURE
========================================================== */

.heda-d312 .d-bracing{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  align-items:stretch;
  border:1px solid var(--d-border);
  background:#fff;
}

.heda-d312 .d-bracing-picture{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:17px;
  background:#f8fafb;
}

.heda-d312 .d-bracing-picture img{
  max-height:560px;
  object-fit:contain;
}

.heda-d312 .d-bracing-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:37px;
  border-left:1px solid var(--d-border);
}

.heda-d312 .d-bracing-list{
  margin-top:24px;
  border-top:1px solid var(--d-border);
}

.heda-d312 .d-bracing-item{
  padding:13px 0;
  border-bottom:1px solid var(--d-border);
}

.heda-d312 .d-bracing-item h3{
  color:var(--d-ink);
  font-size:16px;
  font-weight:800;
  line-height:1.45;
}

.heda-d312 .d-bracing-item p{
  margin-top:6px;
  color:var(--d-muted);
  font-size:13px;
  line-height:1.85;
}

/* ==========================================================
   06 / ENGINEERING REFERENCE
========================================================== */

.heda-d312 .d-engineering{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  align-items:stretch;
  border:1px solid var(--d-border);
  background:#fff;
}

.heda-d312 .d-engineering-photo{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:15px;
}

.heda-d312 .d-engineering-photo img{
  object-fit:contain;
}

.heda-d312 .d-engineering-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:31px;
  border-left:1px solid var(--d-border);
  background:#f7f9fb;
}

.heda-d312 .d-engineering-list{
  margin-top:21px;
  border-top:1px solid var(--d-border);
}

.heda-d312 .d-engineering-item{
  padding:12px 0;
  border-bottom:1px solid var(--d-border);
}

.heda-d312 .d-engineering-item h3{
  color:var(--d-ink);
  font-size:16px;
  font-weight:800;
  line-height:1.45;
}

.heda-d312 .d-engineering-item p{
  margin-top:5px;
  color:var(--d-muted);
  font-size:13px;
  line-height:1.85;
}

/* ==========================================================
   07 / LOAD RATING BAND
========================================================== */

.heda-d312 .d-load-section{
  padding:76px 0;
  background:var(--d-dark);
}

.heda-d312 .d-load-layout{
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  gap:50px;
  align-items:center;
}

.heda-d312 .d-load-section .d-kicker{
  color:#c4d8e5;
}

.heda-d312 .d-load-section .d-title{
  color:#fff;
}

.heda-d312 .d-load-section .d-lead{
  color:#cfdde6;
}

.heda-d312 .d-load-card{
  min-width:0;
  padding:35px;
  border:1px solid rgba(255,255,255,.2);
  background:#23465f;
}

.heda-d312 .d-load-card-label{
  display:block;
  margin-bottom:15px;
  color:#cbdce6;
  font-size:11px;
  font-weight:800;
  letter-spacing:1.35px;
  text-transform:uppercase;
}

.heda-d312 .d-load-value{
  color:#fff;
  font-size:clamp(45px,5.3vw,65px);
  font-weight:800;
  letter-spacing:-1.3px;
  line-height:1.08;
}

.heda-d312 .d-load-unit{
  display:block;
  margin-top:8px;
  color:#ffc18c;
  font-size:16px;
  font-weight:800;
  letter-spacing:0;
}

.heda-d312 .d-load-card p{
  margin-top:23px;
  padding-top:19px;
  border-top:1px solid rgba(255,255,255,.21);
  color:#d2e0e8;
  font-size:13px;
  line-height:1.95;
}

.heda-d312 .d-load-checks{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  margin-top:28px;
  border:1px solid rgba(255,255,255,.17);
  background:rgba(255,255,255,.17);
}

.heda-d312 .d-load-check{
  padding:24px;
  background:#203c50;
}

.heda-d312 .d-load-check h3{
  color:#fff;
  font-size:17px;
  font-weight:800;
  line-height:1.45;
}

.heda-d312 .d-load-check p{
  margin-top:10px;
  color:#cddde6;
  font-size:13px;
  line-height:1.9;
}

/* ==========================================================
   08 / APPLICATION CARDS
========================================================== */

.heda-d312 .d-apps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:19px;
  align-items:stretch;
}

.heda-d312 .d-app{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  padding:27px 28px 30px;
  border:1px solid var(--d-border);
  border-top:3px solid var(--d-blue);
  background:#fff;
}

.heda-d312 .d-app:nth-child(even){
  border-top-color:var(--d-orange);
}

.heda-d312 .d-app span{
  display:block;
  margin-bottom:16px;
  color:var(--d-orange-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:1.2px;
  text-transform:uppercase;
}

.heda-d312 .d-app h3{
  color:var(--d-ink);
  font-size:20px;
  font-weight:800;
  line-height:1.45;
}

.heda-d312 .d-app p{
  margin-top:12px;
  color:var(--d-copy);
  font-size:14px;
  line-height:1.95;
}

/* ==========================================================
   09 / SPECS TABLE
========================================================== */

.heda-d312 .d-spec-layout{
  display:grid;
  grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);
  gap:48px;
  align-items:start;
}

.heda-d312 .d-spec-table{
  min-width:0;
  padding:29px 32px;
  border:1px solid var(--d-border);
  background:#fff;
}

.heda-d312 .d-spec-table h3{
  margin-bottom:20px;
  color:var(--d-ink);
  font-size:21px;
  font-weight:800;
  line-height:1.4;
}

.heda-d312 .d-spec-row{
  display:grid;
  grid-template-columns:minmax(0,.37fr) minmax(0,.63fr);
  gap:17px;
  padding:12px 0;
  border-bottom:1px solid var(--d-border);
}

.heda-d312 .d-spec-row:last-child{
  border-bottom:0;
}

.heda-d312 .d-spec-key{
  color:#647c8b;
  font-size:13px;
  font-weight:700;
  line-height:1.85;
}

.heda-d312 .d-spec-value{
  min-width:0;
  color:var(--d-ink);
  font-size:13px;
  line-height:1.85;
}

/* ==========================================================
   10 / QUOTATION CHECKLIST
========================================================== */

.heda-d312 .d-plan{
  display:grid;
  grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);
  gap:47px;
  align-items:start;
}

.heda-d312 .d-plan-panel{
  min-width:0;
  padding:29px 32px;
  border:1px solid var(--d-border);
  background:#fff;
}

.heda-d312 .d-plan-panel h3{
  margin-bottom:19px;
  color:var(--d-ink);
  font-size:21px;
  font-weight:800;
  line-height:1.4;
}

.heda-d312 .d-plan-items{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 19px;
}

.heda-d312 .d-plan-item{
  position:relative;
  padding:12px 0 12px 21px;
  border-bottom:1px solid var(--d-border);
  color:var(--d-copy);
  font-size:13px;
  line-height:1.85;
}

.heda-d312 .d-plan-item:before{
  content:"";
  position:absolute;
  left:2px;
  top:21px;
  width:8px;
  height:8px;
  background:var(--d-orange);
}

.heda-d312 .d-plan-footer{
  margin-top:19px;
  color:var(--d-muted);
  font-size:12px;
  line-height:1.9;
}

/* ==========================================================
   11 / FAQ
========================================================== */

.heda-d312 .d-faq{
  border-top:1px solid var(--d-border);
}

.heda-d312 .d-faq-row{
  display:grid;
  grid-template-columns:minmax(0,.39fr) minmax(0,.61fr);
  gap:35px;
  padding:23px 0;
  border-bottom:1px solid var(--d-border);
}

.heda-d312 .d-faq-row h3{
  color:var(--d-ink);
  font-size:16px;
  font-weight:800;
  line-height:1.65;
}

.heda-d312 .d-faq-row p{
  color:var(--d-copy);
  font-size:14px;
  line-height:1.95;
}

/* ==========================================================
   12 / NATIVE INQUIRY CTA
========================================================== */

.heda-d312 .d-cta-section{
  padding:40px 0 68px;
}

.heda-d312 .d-cta{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:37px;
  padding:44px 47px;
  border-left:5px solid var(--d-orange);
  background:var(--d-dark);
}

.heda-d312 .d-cta-copy{
  min-width:0;
  max-width:685px;
}

.heda-d312 .d-cta-label{
  display:block;
  margin-bottom:13px;
  color:#c6d9e6;
  font-size:11px;
  font-weight:800;
  letter-spacing:1.4px;
  text-transform:uppercase;
}

.heda-d312 .d-cta h2{
  color:#fff;
  font-size:clamp(26px,3vw,35px);
  font-weight:800;
  line-height:1.3;
}

.heda-d312 .d-cta p{
  margin-top:14px;
  color:#cbdce6;
  font-size:14px;
  line-height:1.95;
}

/* Original HEDA popup trigger: visual styling only */

.heda-d312 a.d312-quote{
  position:relative;
  z-index:2;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto;
  width:auto !important;
  height:auto !important;
  min-width:190px;
  min-height:54px;
  margin:0 !important;
  padding:16px 26px !important;
  border:0 !important;
  border-radius:3px !important;
  background:#e78232 !important;
  background-image:none !important;
  color:#fff !important;
  font:800 13px/1.5 Arial,Helvetica,sans-serif !important;
  text-align:center !important;
  text-decoration:none !important;
  white-space:nowrap;
  opacity:1 !important;
  visibility:visible !important;
  box-shadow:none !important;
  cursor:pointer;
  transition:background-color .2s ease;
}

.heda-d312 a.d312-quote:hover{
  background:#bf6325 !important;
  color:#fff !important;
}

.heda-d312 a.d312-quote:visited{
  color:#fff !important;
}

.heda-d312 a.d312-quote:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}

/* ==========================================================
   TABLET
========================================================== */

@media(max-width:1024px){
  .heda-d312 .d-hero-copy{
    padding:32px 29px;
  }

  .heda-d312 .d-hero h2{
    font-size:43px;
  }

  .heda-d312 .d-lane-layout,
  .heda-d312 .d-spec-layout,
  .heda-d312 .d-plan{
    gap:29px;
  }

  .heda-d312 .d-bracing-copy{
    padding:29px;
  }

  .heda-d312 .d-engineering-copy{
    padding:25px;
  }
}

/* ==========================================================
   MOBILE / TABLET PORTRAIT
========================================================== */

@media(max-width:768px){
  .heda-d312 .d-wrap{
    width:calc(100% - 32px);
  }

  .heda-d312 .d-section{
    padding:57px 0;
  }

  .heda-d312 .d-title{
    font-size:31px;
  }

  .heda-d312 .d-head{
    margin-bottom:27px;
  }

  .heda-d312 .d-hero-grid,
  .heda-d312 .d-lane-layout,
  .heda-d312 .d-bracing,
  .heda-d312 .d-engineering,
  .heda-d312 .d-load-layout,
  .heda-d312 .d-spec-layout,
  .heda-d312 .d-plan{
    grid-template-columns:1fr;
  }

  .heda-d312 .d-hero-copy{
    padding:32px 27px;
  }

  .heda-d312 .d-hero h2{
    font-size:39px;
  }

  .heda-d312 .d-hero-visual{
    border-left:0;
    border-top:1px solid var(--d-border);
  }

  .heda-d312 .d-facts{
    grid-template-columns:1fr;
  }

  .heda-d312 .d-fact{
    padding:21px 24px;
  }

  .heda-d312 .d-fact+.d-fact{
    border-left:0;
    border-top:1px solid var(--d-border);
  }

  .heda-d312 .d-lane-layout{
    gap:23px;
  }

  .heda-d312 .d-detail-grid{
    grid-template-columns:1fr;
    gap:17px;
  }

  .heda-d312 .d-bracing-copy,
  .heda-d312 .d-engineering-copy{
    border-left:0;
    border-top:1px solid var(--d-border);
    padding:27px;
  }

  .heda-d312 .d-load-section{
    padding:57px 0;
  }

  .heda-d312 .d-load-layout{
    gap:26px;
  }

  .heda-d312 .d-load-checks{
    grid-template-columns:1fr;
  }

  .heda-d312 .d-load-check{
    padding:20px 24px;
  }

  .heda-d312 .d-spec-layout,
  .heda-d312 .d-plan{
    gap:26px;
  }

  .heda-d312 .d-faq-row{
    grid-template-columns:1fr;
    gap:8px;
  }

  .heda-d312 .d-cta{
    grid-template-columns:1fr;
    gap:24px;
    padding:35px 28px;
  }

  .heda-d312 a.d312-quote{
    justify-self:start;
  }
}

/* ==========================================================
   SMALL MOBILE
========================================================== */

@media(max-width:480px){
  .heda-d312 .d-wrap{
    width:calc(100% - 26px);
  }

  .heda-d312 .d-hero-copy{
    padding:27px 21px;
  }

  .heda-d312 .d-hero h2{
    font-size:33px;
  }

  .heda-d312 .d-hero-desc{
    font-size:14px;
  }

  .heda-d312 .d-hero-visual{
    padding:7px;
  }

  .heda-d312 .d-detail-copy{
    padding:23px;
  }

  .heda-d312 .d-bracing-copy,
  .heda-d312 .d-engineering-copy{
    padding:22px;
  }

  .heda-d312 .d-load-card{
    padding:26px 22px;
  }

  .heda-d312 .d-load-value{
    font-size:46px;
  }

  .heda-d312 .d-apps{
    grid-template-columns:1fr;
  }

  .heda-d312 .d-app{
    padding:24px 22px;
  }

  .heda-d312 .d-spec-table,
  .heda-d312 .d-plan-panel{
    padding:21px;
  }

  .heda-d312 .d-spec-row{
    grid-template-columns:1fr;
    gap:4px;
  }

  .heda-d312 .d-plan-items{
    grid-template-columns:1fr;
  }

  .heda-d312 .d-cta{
    padding:29px 22px;
  }

  .heda-d312 a.d312-quote{
    width:100% !important;
    min-width:0;
    white-space:normal;
  }
}
