/* Shared navigation: native disclosure works without JavaScript. */
body header { z-index:60; }
body header .site-menu { position:relative; margin-left:auto; flex:0 0 auto; font-family:Manrope,Arial,sans-serif; color:#163d38; }
body header .site-menu>summary { display:flex; align-items:center; justify-content:center; width:48px; height:48px; padding:0; border:1px solid #cde5df; border-radius:15px; background:#fff; cursor:pointer; list-style:none; touch-action:manipulation; }
.site-menu>summary::-webkit-details-marker { display:none; }
.site-menu>summary::marker { content:''; }
body header .site-menu>summary:hover { background:#e1f5ef; }
body header .site-menu>summary:focus-visible,body header .site-menu-panel a:focus-visible { outline:3px solid #087e79; outline-offset:3px; }
.site-menu-icon { display:grid; gap:5px; width:22px; }
.site-menu-icon i { display:block; height:2px; border-radius:2px; background:currentColor; transition:transform .18s,opacity .18s; }
.site-menu[open] .site-menu-icon i:first-child { transform:translateY(7px) rotate(45deg); }
.site-menu[open] .site-menu-icon i:nth-child(2) { opacity:0; }
.site-menu[open] .site-menu-icon i:last-child { transform:translateY(-7px) rotate(-45deg); }
body header .site-menu:not([open])>.site-menu-panel { display:none!important; }
body header .site-menu>.site-menu-panel { position:absolute; top:calc(100% + 12px); right:0; display:flex!important; flex-direction:column; gap:2px; margin:0; width:min(340px,calc(100vw - 32px)); max-height:calc(100dvh - 100px); overflow:auto; overscroll-behavior:contain; padding:14px; border:1px solid #cde5df; border-radius:22px; background:#fff; box-shadow:0 18px 55px #163d3826; text-align:left; }
body header .site-menu-heading { margin:4px 12px 8px; color:#52716c; font-size:12px; font-weight:600; }
body header .site-menu-panel a { display:flex; align-items:center; min-height:46px; padding:10px 12px; border-radius:11px; color:#163d38!important; font-size:15px; font-weight:600; line-height:1.4; text-decoration:none; white-space:normal; }
body header .site-menu-panel a:hover { background:#e5f6f1; }
body header .site-menu-panel .site-menu-contact { margin-top:8px; background:#087e79!important; color:white!important; }
body header .site-menu-panel .site-menu-email { font-size:14px; color:#52716c!important; font-weight:400; }
@media(max-width:1023px) {
 body header>nav:not(.site-menu-panel),body header>div>nav:not(.site-menu-panel) { display:none!important; }
 html body header .site-brand,body header .brand,body header .policy-brand { display:inline-flex; align-items:center; gap:10px; min-width:0; flex:0 1 auto; text-decoration:none; white-space:nowrap; }
 body header .site-brand-mark,body header .brand img,body header .policy-brand img { display:block; width:34px; height:38px; flex:0 0 34px; object-fit:contain; }
 html body header a.site-brand>.site-brand-title[data-content],body header .brand,body header .policy-brand { max-width:none; font-size:clamp(15px,4.3vw,19px); font-weight:800; letter-spacing:-.035em; line-height:1.2; }
 body header.header,body header.policy-header { padding:10px 16px; min-height:68px; gap:12px; }
 body header>div.max-w-7xl { height:68px; padding-inline:16px; gap:12px; }
 body header .back-link { display:none; }
}
@media(prefers-reduced-motion:reduce) { .site-menu-icon i { transition:none; } }
