:root{--aost-green:#92D050;--aost-green-dark:#5fa928;--aost-ink:#1f2d23;--aost-muted:#68736b;--aost-line:#e2e9df;--aost-soft:#f5f8f3;--aost-header-h:76px}
body.aost-independent-header-active #masthead{display:none!important}
.aost-independent-header,.aost-independent-header *{box-sizing:border-box}
.aost-independent-header{position:sticky;top:0;z-index:99990;width:100%;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(224,232,220,.9);box-shadow:0 7px 26px rgba(27,48,31,.055);backdrop-filter:saturate(145%) blur(14px);-webkit-backdrop-filter:saturate(145%) blur(14px);font-family:inherit}
.admin-bar .aost-independent-header{top:32px}
.aost-independent-shell{width:min(1440px,calc(100% - 48px));height:var(--aost-header-h);margin:auto;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:clamp(14px,1.4vw,24px)}
.aost-independent-brand{display:flex;align-items:center;flex:0 0 auto;text-decoration:none!important}
.aost-independent-logo-img{display:block;width:clamp(88px,6.4vw,108px);height:auto;max-height:48px;object-fit:contain}
.aost-independent-logo-text{font-size:30px;font-weight:850;letter-spacing:-.05em;color:var(--aost-ink)}
.aost-independent-desktop-nav{min-width:0;justify-self:end}
.aost-independent-menu{display:flex;align-items:center;justify-content:flex-end;gap:0;list-style:none;margin:0!important;padding:0!important}
.aost-independent-menu>li{position:relative;margin:0!important;padding:0!important;list-style:none}
.aost-independent-menu a{display:flex;align-items:center;gap:5px;text-decoration:none!important;color:#2b392e;font-size:clamp(11px,.82vw,14px);line-height:1.2;font-weight:650;white-space:nowrap;padding:12px clamp(5px,.55vw,10px);border-radius:9px;transition:color .16s ease,background .16s ease}
.aost-independent-menu>li:hover>a,.aost-independent-menu>li:focus-within>a,.aost-independent-menu>.current-menu-item>a,.aost-independent-menu>.current-menu-ancestor>a{color:var(--aost-green-dark);background:#f6faf3}
.aost-independent-menu .menu-item-has-children>a:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px}
.aost-independent-menu .sub-menu{position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%,8px);min-width:238px;max-width:310px;margin:0!important;padding:8px!important;list-style:none;background:#fff;border:1px solid var(--aost-line);border-radius:14px;box-shadow:0 18px 48px rgba(23,48,28,.13);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease}
.aost-independent-menu li:hover>.sub-menu,.aost-independent-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.aost-independent-menu .sub-menu li{list-style:none;margin:0!important}
.aost-independent-menu .sub-menu a{white-space:normal;font-size:13px;padding:10px 12px;border-radius:9px}
.aost-independent-menu .sub-menu a:hover{background:#f3f8ef;color:var(--aost-green-dark)}
.aost-independent-menu .sub-menu .sub-menu{top:-8px;left:100%;transform:translate(8px,0)}
.aost-independent-menu .sub-menu li:hover>.sub-menu,.aost-independent-menu .sub-menu li:focus-within>.sub-menu{transform:translate(0,0)}
.aost-independent-actions{display:flex;align-items:center;justify-content:flex-end;gap:clamp(7px,.7vw,11px);min-width:max-content}
.aost-independent-find,.aost-independent-cta{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none!important;min-height:40px;border-radius:999px;font-size:13px;line-height:1;font-weight:750;transition:transform .17s ease,background .17s ease,border-color .17s ease,box-shadow .17s ease}
.aost-independent-find{gap:7px;padding:9px 13px;color:#4f7f31!important;background:#fff;border:1px solid #d8e6d2}
.aost-independent-find:hover{background:#f3f8ef;border-color:#bcd9ab;transform:translateY(-1px)}
.aost-independent-find svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;flex:0 0 auto}
.aost-independent-cta{padding:11px 19px;color:#fff!important;background:#72bd2e;box-shadow:0 7px 18px rgba(94,169,40,.16)}
.aost-independent-cta:hover{background:var(--aost-green-dark);transform:translateY(-1px);box-shadow:0 10px 22px rgba(94,169,40,.21)}
.aost-independent-account{width:39px;height:39px;display:flex;align-items:center;justify-content:center;flex:0 0 39px;border-radius:50%;text-decoration:none!important;background:#fff;border:1px solid #dde7d9;overflow:hidden;box-shadow:0 2px 10px rgba(30,52,34,.06)}
.aost-independent-account svg{width:20px;height:20px;fill:none;stroke:#536158;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.aost-independent-account img,.aost-independent-avatar{display:block!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;border:0!important;border-radius:50%!important;object-fit:cover!important}
.aost-independent-toggle{display:none;width:42px;height:42px;flex:0 0 42px;border:0;background:transparent;border-radius:10px;padding:10px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.aost-independent-toggle span{display:block;width:22px;height:2px;border-radius:2px;background:#26352a;transition:transform .2s ease,opacity .2s ease}
.aost-independent-header.is-open .aost-independent-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.aost-independent-header.is-open .aost-independent-toggle span:nth-child(2){opacity:0}
.aost-independent-header.is-open .aost-independent-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.aost-independent-drawer{border-top:1px solid var(--aost-line);background:#fff;box-shadow:0 20px 35px rgba(26,44,30,.08)}
.aost-independent-drawer-inner{width:min(100% - 32px,720px);margin:auto;padding:13px 0 20px}
.aost-independent-drawer .aost-independent-menu{display:block}
.aost-independent-drawer .aost-independent-menu>li{border-bottom:1px solid #edf1eb}
.aost-independent-drawer .aost-independent-menu a{width:100%;justify-content:space-between;padding:13px 4px;font-size:14px;border-radius:0;background:transparent!important}
.aost-independent-drawer .aost-independent-menu .menu-item-has-children>a:after{display:none}
.aost-independent-drawer .sub-menu{position:static;transform:none!important;opacity:1;visibility:visible;pointer-events:auto;display:none;min-width:0;max-width:none;padding:0 0 9px 13px!important;border:0;border-radius:0;box-shadow:none;background:transparent}
.aost-independent-drawer li.aost-submenu-open>.sub-menu{display:block}
.aost-independent-drawer .sub-menu a{padding:10px 4px;font-size:13px;color:var(--aost-muted)}
.aost-independent-subtoggle{position:absolute;right:0;top:5px;width:40px;height:40px;border:0;background:transparent;border-radius:8px;cursor:pointer;color:#4d5c52;font-size:0}
.aost-independent-subtoggle:before{content:"";position:absolute;left:15px;top:13px;width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .18s ease}
.aost-submenu-open>.aost-independent-subtoggle:before{transform:rotate(225deg);top:17px}
.aost-independent-mobile-find{padding-top:14px}.aost-independent-mobile-find .aost-independent-find{width:100%;justify-content:center}
@media(max-width:1180px){
  .aost-independent-shell{width:calc(100% - 32px);gap:12px}
  .aost-independent-menu a{font-size:11px;padding-inline:5px}
  .aost-independent-find{width:39px;padding:0}.aost-independent-find span{display:none}
  .aost-independent-cta{padding:10px 14px;font-size:12px}
  .aost-independent-logo-img{width:92px}
}
@media(max-width:1100px){
  :root{--aost-header-h:70px}
  .aost-independent-shell{grid-template-columns:max-content minmax(0,1fr);width:calc(100% - 30px)}
  .aost-independent-desktop-nav{display:none}
  .aost-independent-actions{min-width:0}
  .aost-independent-actions>.aost-independent-find{display:none}
  .aost-independent-toggle{display:flex}
  .aost-independent-cta{max-width:min(36vw,190px);overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:600px){
  :root{--aost-header-h:64px}
  .aost-independent-shell{width:calc(100% - 22px);gap:8px}
  .aost-independent-logo-img{width:82px;max-height:40px}
  .aost-independent-actions{gap:6px}
  .aost-independent-cta{min-height:36px;padding:9px 11px;font-size:10.5px;max-width:36vw}
  .aost-independent-account{width:36px;height:36px;flex-basis:36px}
  .aost-independent-toggle{width:38px;height:38px;flex-basis:38px;padding:8px}
}
@media(max-width:390px){.aost-independent-cta{max-width:32vw;padding-inline:9px;font-size:10px}.aost-independent-logo-img{width:76px}}
@media(max-width:782px){.admin-bar .aost-independent-header{top:46px}}
@media(prefers-reduced-motion:reduce){.aost-independent-header *{transition:none!important;scroll-behavior:auto!important}}

/* ==========================================================
   v0.9.1 — desktop containment + single submenu indicator
   ========================================================== */
/* Astra may still filter wp_nav_menu() and inject its own dropdown glyph.
   In the independent header we own the indicator completely. */
.aost-independent-header .dropdown-menu-toggle,
.aost-independent-header .ast-icon,
.aost-independent-header .ast-header-navigation-arrow,
.aost-independent-header .sub-arrow{
  display:none!important;
}

/* At the narrow-desktop band there is not enough honest room for the
   full navigation + both CTAs. Move to the already-stable compact header
   before any element can cross the logo/actions. */
@media (max-width:1240px){
  :root{--aost-header-h:70px}
  .aost-independent-shell{
    grid-template-columns:max-content minmax(0,1fr);
    width:calc(100% - 30px);
    gap:12px;
  }
  .aost-independent-desktop-nav{display:none}
  .aost-independent-actions{min-width:0}
  .aost-independent-actions>.aost-independent-find{display:none}
  .aost-independent-toggle{display:flex}
  .aost-independent-cta{
    max-width:min(36vw,190px);
    overflow:hidden;
    text-overflow:ellipsis;
  }
}

/* ==========================================================
   v0.9.2 — submenu interaction corridor + reliable anchors
   ========================================================== */
@media (min-width:1241px){
  /* No dead gap between the parent item and its dropdown. */
  .aost-independent-menu>li>.sub-menu{
    top:calc(100% - 1px)!important;
  }
  /* Invisible hover corridor protects diagonal mouse movement. */
  .aost-independent-menu>li>.sub-menu::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-10px;
    height:10px;
  }
  .aost-independent-menu .sub-menu .sub-menu{
    left:calc(100% - 1px)!important;
  }
}

/* Native anchor landing must clear the sticky AOST header. */
html{scroll-padding-top:96px}
[id]{scroll-margin-top:96px}
@media(max-width:1240px){html{scroll-padding-top:86px}[id]{scroll-margin-top:86px}}
