/* Shared masthead and hero composition; product detail and brochure pages retain a light header. */
.site-header{height:104px;padding-inline:clamp(28px,3.2vw,64px);display:grid;grid-template-columns:190px 1fr 190px;gap:24px;color:var(--ink)}
.brand{width:174px}
.brand-symbol-header{width:174px;height:60px}
.desktop-nav{justify-content:center;gap:clamp(28px,3.2vw,56px);margin:0;white-space:nowrap}
.desktop-nav>a,.nav-trigger{font-size:14px;font-weight:600;letter-spacing:.065em;text-transform:uppercase}
.nav-trigger{color:inherit;padding:18px 0}
.header-contact{padding:18px 0;border:0;gap:12px}
.header-actions{justify-self:end}
.mega-menu{top:104px;color:var(--ink);padding-inline:clamp(28px,3.2vw,64px)}
.immersive-header .site-header{position:absolute;inset:0 0 auto;background:transparent;color:#fff;box-shadow:none}
.immersive-header .brand-symbol-header img{filter:brightness(0) invert(1)}
.immersive-header .desktop-nav>a:hover,.immersive-header .nav-trigger:hover{color:#d3e3ed}
.desktop-nav>a:focus-visible,.nav-trigger:focus-visible,.brand:focus-visible,.menu-toggle:focus-visible{outline:2px solid currentColor;outline-offset:7px}
.hero{height:86svh;max-height:960px;min-height:680px;display:flex;align-items:center;justify-content:center}
.hero-shade{background:linear-gradient(180deg,rgba(8,15,20,.66) 0%,rgba(8,15,20,.4) 28%,rgba(8,15,20,.56) 100%)}
.hero-content{padding-top:100px;padding-bottom:100px;text-align:center;display:flex;flex-direction:column;align-items:center}
.hero-content .eyebrow,.catalog-hero .eyebrow{font-size:14px;letter-spacing:.16em;color:#fff}
.hero-content h1{font-size:clamp(58px,5.3vw,88px);font-weight:500;letter-spacing:-.035em;line-height:1.08;max-width:980px;margin:23px 0 25px}
.hero-content em{color:#fff}
.hero-content p{max-width:660px;font-size:clamp(18px,1.5vw,23px);line-height:1.55;margin-bottom:32px}
.hero-bottom{bottom:30px;opacity:.8}
.catalog-hero{min-height:clamp(560px,70svh,800px);padding:160px 0 100px;display:flex;align-items:center;text-align:center;background-position:center center}
.catalog-hero:before{background:linear-gradient(180deg,rgba(8,15,20,.66) 0%,rgba(8,15,20,.47) 38%,rgba(8,15,20,.58) 100%)}
.catalog-hero .wrap{display:flex;flex-direction:column;align-items:center}
.catalog-hero h1{font-size:clamp(54px,5vw,86px);font-weight:500;line-height:1.12;letter-spacing:-.035em;max-width:1120px;margin:23px 0 25px}
.catalog-hero p{max-width:760px;font-size:clamp(18px,1.5vw,23px);line-height:1.55;color:#f1f3f4}
@media(max-width:1200px){.site-header{grid-template-columns:174px 1fr 32px;gap:20px}.desktop-nav{gap:28px}.desktop-nav>a,.nav-trigger{font-size:13px}}
@media(max-width:900px){
  .site-header{height:88px;grid-template-columns:1fr auto;padding-inline:24px}
  .brand{width:139px}.brand-symbol-header{width:139px;height:48px}
  .desktop-nav{display:none}.menu-toggle{display:block;color:inherit;padding:10px;line-height:1}
  .mega-menu{display:none}.mobile-menu{display:grid;top:88px;padding:16px 24px 24px;color:var(--ink);max-height:calc(100svh - 88px);overflow-y:auto}
  .immersive-header .mobile-menu-open{background:#fff;color:var(--ink)}
  .immersive-header .mobile-menu-open .brand-symbol-header img{filter:none}
  .hero{min-height:640px;height:86svh}.hero-content{padding-top:108px;padding-bottom:80px}
  .hero-content h1{font-size:clamp(48px,7.6vw,70px)}
  .catalog-hero{min-height:580px;padding:145px 0 90px}
  .catalog-hero h1{font-size:clamp(48px,7vw,68px)}
}
@media(max-width:480px){
  .site-header{height:80px;padding-inline:20px}.brand{width:127px}.brand-symbol-header{width:127px;height:44px}
  .mobile-menu{top:80px;max-height:calc(100svh - 80px);padding-inline:20px}
  .hero{height:calc(100svh - 24px);min-height:620px;background-position:62% center}
  .hero-content{padding-top:110px;padding-bottom:90px}
  .hero-content .eyebrow,.catalog-hero .eyebrow{font-size:11px}
  .hero-content h1{font-size:clamp(42px,11vw,53px);margin:21px 0}
  .hero-content p,.catalog-hero p{font-size:17px}
  .catalog-hero{min-height:560px;padding:138px 0 80px;background-position:62% center}
  .catalog-hero h1{font-size:clamp(42px,10.5vw,52px);margin:21px 0}
}
