/* Disclosure navigation: primary page links remain usable without JavaScript. */
header #main-nav{gap:12px}
header #main-nav>.nav-item{position:relative}
header #main-nav .nav-item-row{display:flex;align-items:center;gap:1px}
header #main-nav .nav-item-row>a{display:flex;align-items:center;min-height:44px;font-size:.875rem}
header #main-nav .nav-subtoggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:40px;margin:0;padding:0;border:0;border-radius:3px;background:transparent;color:var(--navy);cursor:pointer}
header #main-nav .nav-subtoggle:hover,header #main-nav .nav-subtoggle[aria-expanded="true"]{background:var(--paper);color:var(--amber)}
header #main-nav .nav-subtoggle>span{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform 180ms ease}
header #main-nav .nav-subtoggle[aria-expanded="true"]>span{transform:translateY(1px) rotate(225deg)}
header #main-nav .nav-submenu{display:block;position:absolute;z-index:2;top:calc(100% + 8px);left:-14px;right:auto;width:264px;max-height:none;overflow:visible;margin:0;padding:8px;list-style:none;background:white;border:1px solid var(--line);border-radius:5px;box-shadow:0 14px 32px #10263b1c;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity 180ms ease,transform 180ms ease,visibility 0s linear 180ms}
/* Bridge the visual gap, so the panel stays open while the pointer enters it. */
header #main-nav .nav-submenu::before{content:"";position:absolute;top:-10px;left:0;right:0;height:10px}
header #main-nav .is-expanded>.nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
header #main-nav .nav-submenu>li{margin:0;border:0}
header #main-nav .nav-submenu>li>a{display:block;min-height:44px;margin:0;padding:10px 12px;border:0;border-radius:3px;background:transparent;color:var(--navy);font-size:.85rem;font-weight:500;line-height:1.5;white-space:normal;text-decoration:none}
header #main-nav .nav-submenu>li>a:hover,header #main-nav .nav-submenu>li>a:focus-visible{background:var(--paper);color:var(--amber)}
header #main-nav>.nav-contact>a{font-size:.875rem;padding:12px 16px}
@media(min-width:1121px){header #main-nav>.nav-item:nth-last-child(2)>.nav-submenu{left:auto;right:-14px}}
@media(max-width:1120px){
 .js header #main-nav{display:none;position:absolute;top:100%;left:0;right:0;align-items:stretch;gap:0;padding:9px 25px max(22px,env(safe-area-inset-bottom));max-height:var(--menu-height,calc(100dvh - 120px));overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:white;border-bottom:1px solid var(--line);box-shadow:0 8px 16px #10263b0c}
 .js header #main-nav.open{display:flex}
 .js header #main-nav>.nav-item{border-top:1px solid var(--line)}
 .js header #main-nav .nav-item-row{justify-content:space-between;gap:12px}
 .js header #main-nav .nav-item-row>a{flex:1;padding:12px 0;font-size:1rem}
 .js header #main-nav .nav-subtoggle{flex-basis:44px;width:44px;height:44px;border:1px solid var(--line)}
 .js header #main-nav .nav-submenu{display:none;position:static;width:auto;margin:0 0 12px;padding:4px 8px;border:0;border-left:2px solid #c49956;border-radius:0;background:var(--paper);box-shadow:none;transform:none;max-height:none;overflow:visible;scrollbar-gutter:auto}
 .js header #main-nav .is-expanded>.nav-submenu{display:block;animation:nav-reveal 180ms ease both}
 .js header #main-nav .nav-submenu::before{display:none}
 .js header #main-nav .nav-submenu>li>a{font-size:.9rem;padding:10px 12px}
 .js header #main-nav>.nav-contact>a{display:block;margin-top:10px;padding:12px 15px;font-size:1rem}
}
@keyframes nav-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){header #main-nav .nav-submenu,header #main-nav .nav-subtoggle>span{transition:none!important;animation:none!important}}
