/* =========== HEADER (global) =========== */
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header-h);background:rgba(255,255,255,.96);border-bottom:1px solid transparent;transition:background .3s,border-color .3s,box-shadow .3s,transform .35s var(--ease)}
@supports (backdrop-filter:blur(12px)){.site-header{background:rgba(255,255,255,.86);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px)}}
.site-header.is-scrolled{border-color:var(--line);box-shadow:0 10px 30px -22px rgba(40,40,43,.4)}
.site-header.is-hidden{transform:translateY(-100%)}
.site-header__bar{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-logo{display:block;flex:none}
.site-logo img{width:120px;height:auto}
.logo-white{display:none!important}

/* transparent over dark heroes */
.site-header.is-over-dark:not(.is-scrolled):not(.nav-open){background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.site-header.is-over-dark:not(.is-scrolled) .logo-dark{display:none!important}
.site-header.is-over-dark:not(.is-scrolled) .logo-white{display:block!important}
@media (min-width:1101px){
  .site-header.is-over-dark:not(.is-scrolled) .site-nav__list>li>.nav-link{color:#fff}
  .site-header.is-over-dark:not(.is-scrolled) .nav-link--hl{border-color:rgba(255,255,255,.35)}
}
.site-header.is-over-dark:not(.is-scrolled) .nav-toggle{color:#fff;border-color:rgba(255,255,255,.35)}

.site-nav__list{list-style:none;display:flex;align-items:center;gap:6px}
.nav-link{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:var(--r-pill);font-weight:600;font-size:.98rem;color:var(--ink);transition:color .2s,background .2s}
.nav-link .chev{width:16px;height:16px;transition:transform .25s}
.nav-link:hover,.nav-link[aria-current="page"],.is-current>.nav-link{color:var(--green-d)}
.nav-link--hl{border:1.5px solid var(--line-2);gap:8px}
.nav-link--hl .ic{width:18px;height:18px}
.nav-link--hl:hover{border-color:var(--green);background:var(--mist)}
.js-drop[aria-expanded="true"] .chev{transform:rotate(180deg)}
.site-nav__head,.site-nav__foot{display:none}
.site-header__actions{display:flex;align-items:center;gap:12px}
.nav-toggle{display:none;place-items:center;width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line-2);color:var(--ink)}

/* dropdown */
.has-drop{position:relative}
.drop{list-style:none;position:absolute;top:calc(100% + 10px);left:50%;min-width:210px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .2s,transform .25s var(--ease),visibility .2s}
.drop a{display:block;padding:10px 14px;border-radius:10px;font-weight:600}
.drop a:hover,.drop a[aria-current="page"]{background:var(--mist);color:var(--green-d)}

/* mega menu */
.mega{position:absolute;left:0;right:0;top:100%;padding-top:0;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s,transform .28s var(--ease),visibility .22s}
.mega__inner{display:grid;grid-template-columns:1.05fr 1fr 1fr 1fr;gap:28px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:0 0 var(--r-lg) var(--r-lg);box-shadow:0 30px 60px -30px rgba(40,40,43,.35)}
.mega__promo{position:relative;border-radius:var(--r);overflow:hidden;background:var(--ink);color:#fff;min-height:300px;display:flex;align-items:flex-end}
.mega__promo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.mega__promo-body{position:relative;padding:22px}
.mega__promo-title{font-family:var(--f-display);font-weight:600;font-size:1.6rem;text-transform:uppercase;margin:0 0 6px}
.mega__promo-body p{font-size:.92rem;color:rgba(255,255,255,.82)}
.mega__title{font-family:var(--f-display);font-weight:600;text-transform:uppercase;font-size:1.05rem;letter-spacing:.02em;margin:6px 0 12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.mega__col ul{list-style:none;display:grid;gap:4px}
.mega__col a{display:block;padding:10px 12px;border-radius:12px;transition:background .2s}
.mega__col a strong{display:block;font-size:.98rem;font-weight:600}
.mega__col a span{display:block;font-size:.84rem;color:var(--muted);line-height:1.45}
.mega__col a:hover,.mega__col a[aria-current="page"]{background:var(--mist)}
.mega__col a:hover strong{color:var(--green-d)}

@media (min-width:1101px){
  .has-drop:hover>.drop,.has-drop:focus-within>.drop,.js-drop[aria-expanded="true"]+.drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
  .has-mega:hover>.mega,.has-mega:focus-within>.mega,.js-drop[aria-expanded="true"]+.mega{opacity:1;visibility:visible;transform:none}
  .has-mega>.mega::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
  .has-drop>.drop::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
}

/* mobile nav */
@media (max-width:1100px){
  :root{--header-h:68px}
  .site-logo img{width:104px}
  .nav-toggle{display:grid}
  .header-cta{display:none}
  .site-nav{position:fixed;top:0;right:0;bottom:0;z-index:120;width:min(420px,100%);display:flex;flex-direction:column;background:#fff;transform:translateX(100%);transition:transform .38s var(--ease);overflow-y:auto;overscroll-behavior:contain;visibility:hidden}
  .site-nav.is-open{transform:none;visibility:visible}
  .site-nav__head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}
  .site-nav__head img{width:104px}
  .nav-close{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--mist)}
  .site-nav__list{flex-direction:column;align-items:stretch;gap:0;padding:10px 12px;flex:1}
  .site-nav__list>li{border-bottom:1px solid var(--line)}
  .nav-link{width:100%;justify-content:space-between;padding:16px 10px;font-size:1.08rem;border-radius:0}
  .nav-link--hl{border:0;justify-content:flex-start}
  .drop,.mega{position:static;opacity:1;visibility:visible;transform:none;display:none;box-shadow:none;border:0;padding:0 0 12px;min-width:0}
  .js-drop[aria-expanded="true"]+.drop,.js-drop[aria-expanded="true"]+.mega{display:block}
  .drop a{padding:10px 14px}
  .mega__inner{display:block;padding:0;border:0;box-shadow:none;border-radius:0}
  .mega__promo{display:none}
  .mega__col{padding:6px 0}
  .mega__title{font-size:.9rem;color:var(--muted);border:0;padding:0 12px;margin:10px 0 4px}
  .mega__col a span{display:none}
  .site-nav__foot{display:grid;gap:14px;padding:20px;border-top:1px solid var(--line);background:var(--mist)}
  .site-nav__foot .btn{justify-content:space-between}
  .site-nav__phone{display:flex;align-items:center;gap:10px;font-weight:600}
  .nav-overlay{position:fixed;inset:0;z-index:95;background:rgba(20,20,22,.5);backdrop-filter:blur(2px)}
  body.nav-lock{overflow:hidden}
}
/* backdrop-filter/transform create a containing block for fixed children — disable while the mobile menu is open */
.site-header.nav-open{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transform:none!important}
