:root{color-scheme:light;--ink:#071f3f;--blue:#074e91;--orange:#f25b24;--paper:#f8f7f3;--muted:#5f6b78}
*{box-sizing:border-box}
html,body{min-height:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}
.site-shell{min-height:100svh;display:grid;grid-template-rows:auto 1fr;overflow:hidden}
.brand-banner{position:relative;z-index:5;min-height:170px;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(230px,.8fr) minmax(520px,1.6fr);align-items:center;gap:clamp(24px,4vw,72px);padding:24px clamp(28px,6vw,96px);background:rgba(255,255,255,.97);border-bottom:3px solid var(--orange);box-shadow:0 16px 50px rgba(7,31,63,.1)}
.brand-lockup{display:flex;align-items:center;gap:14px}
.brand-logo{width:220px;height:110px;object-fit:contain}
.brand-promise{padding-left:clamp(24px,3vw,52px);border-left:2px solid var(--orange);display:flex;flex-direction:column;font-size:clamp(1.15rem,1.75vw,1.75rem);line-height:1.2;white-space:nowrap}
.brand-promise strong{color:var(--orange);font-weight:500}
.construction-hero{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;padding:clamp(64px,9vw,136px) clamp(28px,9vw,150px);overflow:hidden;background:#f8f7f3}
.hero-art{position:absolute;inset:0;z-index:-2;background:url(assets/under-construction-hero.png) center/cover no-repeat}
.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,247,243,.97) 0%,rgba(248,247,243,.78) 38%,rgba(248,247,243,.08) 68%)}
.hero-content{width:min(720px,60vw);position:relative;z-index:1}
.eyebrow{margin:0 0 24px;display:flex;align-items:center;gap:12px;color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.eyebrow span{width:42px;height:3px;background:var(--orange)}
h1{margin:0;color:#061b35;font-size:clamp(4rem,8.2vw,9.2rem);font-weight:900;letter-spacing:-.075em;line-height:.76;text-transform:uppercase}
h1 em{color:transparent;font-style:normal;-webkit-text-stroke:clamp(1px,.13vw,2.5px) var(--blue)}
.intro{max-width:520px;margin:38px 0 0;color:var(--muted);font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.55}
.launch-row{margin-top:36px;display:flex;align-items:center;gap:28px}
.coming-soon{margin:0;padding:12px 20px;color:#fff;background:var(--orange);font-size:.76rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase;box-shadow:7px 7px 0 var(--ink);transform:rotate(-1deg)}
.contact-link{color:var(--ink);font-size:.92rem;font-weight:750;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.contact-link:hover,.contact-link:focus-visible{color:var(--orange)}
.contact-link:focus-visible{outline:3px solid rgba(242,91,36,.3);outline-offset:6px}
.corner-note{position:absolute;right:30px;bottom:24px;margin:0;color:rgba(7,31,63,.5);font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;writing-mode:vertical-rl}
@media(max-width:1120px){.brand-banner{grid-template-columns:1fr 1fr;min-height:150px}}
@media(max-width:700px){.brand-banner{min-height:auto;grid-template-columns:1fr;gap:15px;padding:12px 22px 18px}.brand-logo{width:180px;height:90px}.brand-promise{padding:12px 0 0;border-left:0;border-top:1px solid #d9e0e6;font-size:1rem;flex-direction:row;gap:5px}.construction-hero{min-height:calc(100svh - 141px);align-items:flex-end;padding:190px 22px 52px}.hero-art{background-position:61% center}.hero-art:after{background:linear-gradient(180deg,rgba(248,247,243,.05) 0%,rgba(248,247,243,.73) 35%,rgba(248,247,243,.98) 64%)}.hero-content{width:100%}.eyebrow{margin-bottom:17px;font-size:.66rem;letter-spacing:.11em}h1{font-size:clamp(3.55rem,18vw,5.5rem);line-height:.8}.intro{margin-top:27px;max-width:390px;font-size:.98rem}.launch-row{margin-top:26px;flex-wrap:wrap;gap:24px}.corner-note{display:none}}
@media(max-width:1320px) and (min-width:1121px){
  .brand-banner{grid-template-columns:220px 190px minmax(440px,1fr);gap:20px;padding:20px 36px}
  .brand-logo{width:195px;height:98px}
  .brand-promise{padding-left:24px;font-size:1.3rem}
}
@media(max-width:1120px) and (min-width:701px){
  .brand-banner{min-height:132px;padding:16px clamp(32px,7vw,72px);gap:32px}
  .brand-logo{width:200px;height:100px}
  .brand-promise{justify-self:end;font-size:clamp(1.1rem,2.6vw,1.55rem)}
  .construction-hero{min-height:calc(100svh - 132px);padding:72px clamp(36px,7vw,80px)}
  .hero-content{width:min(680px,82vw)}
  h1{font-size:clamp(4.5rem,10vw,7rem)}
  h1 em{font-size:.84em;letter-spacing:-.065em}
  .hero-art{background-position:58% center}
}
@media(max-width:700px){
  .site-shell{overflow-x:hidden;overflow-y:auto}
  .brand-banner{gap:6px;padding:10px 18px 14px;text-align:center}
  .brand-lockup{justify-content:center}
  .brand-logo{width:170px;height:82px}
  .brand-promise{justify-content:center;padding-top:9px;font-size:.9rem;white-space:normal}
  .construction-hero{min-height:calc(100svh - 126px);padding:clamp(145px,39vh,280px) 22px 42px}
  .hero-content{max-width:100%}
  .eyebrow{gap:8px;line-height:1.35}
  .eyebrow span{width:28px;flex:0 0 28px}
  h1{font-size:clamp(3rem,15vw,4.4rem);line-height:.82;letter-spacing:-.065em}
  h1 em{display:block;font-size:.72em;line-height:.9;letter-spacing:-.075em;-webkit-text-stroke:1.3px var(--blue)}
  .intro{margin-top:24px;line-height:1.45}
  .launch-row{margin-top:24px}
  .coming-soon{padding:11px 16px;box-shadow:5px 5px 0 var(--ink)}
  .contact-link{min-height:44px;display:inline-flex;align-items:center}
}
@media(max-width:420px){
  .brand-banner{padding-inline:14px}
  .brand-logo{width:154px;height:74px}
  .brand-promise{font-size:.82rem}
  .construction-hero{padding:clamp(128px,34vh,220px) 18px 34px}
  .hero-art{background-position:65% center}
  .eyebrow{font-size:.59rem;letter-spacing:.09em}
  h1{font-size:clamp(2.75rem,14vw,3.65rem)}
  .intro{font-size:.93rem}
}
@media(max-width:350px){
  .brand-logo{width:142px;height:68px}
  .brand-promise{font-size:.76rem}
  .construction-hero{padding-inline:15px}
  h1{font-size:2.7rem}
  h1 em{font-size:.66em}
  .launch-row{align-items:flex-start;flex-direction:column;gap:14px}
}
@media(max-height:700px) and (min-width:701px){
  .brand-banner{min-height:104px;padding-top:10px;padding-bottom:10px}
  .brand-logo{width:168px;height:84px}
  .construction-hero{min-height:calc(100svh - 104px);padding-top:42px;padding-bottom:42px}
  .eyebrow{margin-bottom:16px}
  h1{font-size:clamp(3.8rem,8.5vw,6.2rem)}
  .intro{margin-top:24px}
  .launch-row{margin-top:22px}
}
@media(prefers-reduced-motion:no-preference){.hero-content{animation:reveal .7s cubic-bezier(.2,.8,.2,1) both}.brand-banner{animation:slide-in .55s ease-out both}@keyframes reveal{from{opacity:0;transform:translateY(18px)}}@keyframes slide-in{from{opacity:0;transform:translateY(-12px)}}}


/* ProRack Global brand lockup - transparent PNG, logo-only header */
.brand-banner{min-height:112px;grid-template-columns:1fr;gap:0;padding:18px clamp(28px,6vw,96px)}
.brand-lockup{width:auto;overflow:visible;display:flex;align-items:center;gap:0}
.brand-logo{display:block;width:min(100%,360px);height:auto;object-fit:contain;transform:none;aspect-ratio:571/105}
.brand-promise{display:none}
.construction-hero{min-height:calc(100svh - 112px)}
@media(max-width:1320px) and (min-width:1121px){
  .brand-banner{padding:16px 36px;min-height:104px}
  .brand-logo{width:min(100%,320px)}
  .construction-hero{min-height:calc(100svh - 104px)}
}
@media(max-width:1120px){
  .brand-banner{min-height:100px;justify-items:center;padding:16px clamp(28px,6vw,72px)}
  .brand-logo{width:min(100%,330px)}
  .construction-hero{min-height:calc(100svh - 100px)}
}
@media(max-width:700px){
  .brand-banner{min-height:auto;gap:0;padding:14px 18px;text-align:center}
  .brand-lockup{justify-content:center}
  .brand-logo{width:min(100%,270px)}
  .construction-hero{min-height:calc(100svh - 92px);align-items:center;padding:clamp(40px,6vh,72px) 20px clamp(48px,8vh,80px)}
  .hero-art{background-position:74% center}
  /* scrim strongest through the middle, where the copy now sits */
  .hero-art:after{background:linear-gradient(180deg,rgba(248,247,243,.04) 0%,rgba(248,247,243,.42) 18%,rgba(248,247,243,.9) 36%,rgba(248,247,243,.95) 74%,rgba(248,247,243,.7) 100%)}
  .hero-content{width:100%;min-width:0;max-width:100%}
  .intro,h1{width:100%;max-width:100%}
  h1{font-size:clamp(3.2rem,13.6vw,4rem)}
  h1 em{font-size:clamp(1.35rem,7vw,2rem);letter-spacing:-.07em}
  .intro{margin-top:22px;font-size:.95rem;line-height:1.5;max-width:34ch;overflow-wrap:break-word}
  .launch-row{margin-top:28px;gap:20px;flex-wrap:wrap}
}
@media(max-width:420px){
  .brand-banner{padding-inline:14px}
  .brand-logo{width:min(100%,240px)}
  .construction-hero{padding-inline:18px;padding-bottom:clamp(52px,8vh,76px)}
}
@media(max-height:700px) and (min-width:701px){
  .brand-banner{min-height:92px;padding-top:12px;padding-bottom:12px}
  .brand-logo{width:min(100%,290px)}
  .construction-hero{min-height:calc(100svh - 92px)}
}

/* corner note: keep it legible where it crosses the racking in the photo */
.corner-note{color:rgba(7,31,63,.72);text-shadow:0 0 6px rgba(248,247,243,.95),0 0 16px rgba(248,247,243,.85)}
