/* Shared responsive header: dropdown navigation, not a full-height side drawer. */
header.site-header{position:relative!important;display:block!important;z-index:50!important;overflow:visible!important;background:var(--bg)!important}
header.site-header .header-top{display:block!important;width:100%!important;margin:0!important;padding:0!important;border:0!important}
header.site-header .header-top>.w{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;max-width:760px!important;min-height:62px!important;height:auto!important;margin:0 auto!important;padding:8px 20px!important}
header.site-header .brand{display:block;min-width:0;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;color:inherit;line-height:1.25}
header.site-header .brand b{display:block;font-size:clamp(.9rem,3.8vw,1.1rem);font-weight:600;white-space:inherit;overflow:hidden;text-overflow:ellipsis}
header.site-header .header-controls{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex:0 0 auto!important;margin-left:auto!important}
header.site-header .header-controls .btn{margin:0!important;padding:7px 10px!important;white-space:nowrap!important;font-size:.875rem!important}
header.site-header .header-bottom{display:none;width:100%;margin:0;padding:8px 20px 10px;border-top:1px solid var(--bd);background:var(--bg)}
header.site-header .nav-mobile-bar{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;max-width:720px;min-height:48px;margin:0 auto;padding:10px 14px;border:1px solid var(--bd);border-radius:9px;background:var(--card);color:var(--fg);cursor:pointer;user-select:none;text-align:left}
header.site-header .nav-mobile-bar:hover{border-color:var(--ring)}
header.site-header .nav-mobile-bar:focus-visible{outline:2px solid var(--ring);outline-offset:2px}
header.site-header .nav-mobile-label{font-size:.95rem;font-weight:500;color:var(--fg);margin:0}
header.site-header .nav-mobile-hamburger{display:flex;flex:0 0 20px;width:20px;height:16px;flex-direction:column;justify-content:space-between}
header.site-header .nav-mobile-hamburger span{display:block;width:20px;height:2px;border-radius:2px;background:currentColor}
header.site-header .nav-mobile-chevron{display:flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:auto;flex:0 0 18px;transition:transform .2s}
header.site-header .nav-mobile-chevron svg{display:block;width:18px;height:18px;max-width:18px;max-height:18px}
header.site-header .nav-mobile-bar[aria-expanded="true"] .nav-mobile-chevron{transform:rotate(180deg)}
header.site-header .nav-mobile-btn,header.site-header .hamburger{display:none!important}
header.site-header .nav-desktop{display:flex!important;align-items:center;justify-content:flex-end;gap:12px;max-width:760px;margin:0 auto;padding:8px 20px}
header.site-header .nav-desktop a{display:inline-block;margin:0!important;padding:6px 0;color:var(--mut);font-size:.9rem;text-decoration:none;white-space:nowrap}
header.site-header .nav-desktop a:hover{color:var(--fg)}
header.site-header #nav-mobile{display:none!important;box-sizing:border-box!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;bottom:auto!important;width:min(calc(100% - 32px),720px)!important;height:auto!important;max-height:min(60vh,420px)!important;overflow-y:auto!important;flex-direction:column!important;gap:0!important;margin:0 auto!important;padding:8px!important;background:var(--bg)!important;border:1px solid var(--bd)!important;border-radius:0 0 12px 12px!important;box-shadow:0 16px 32px rgba(0,0,0,.3)!important;z-index:100!important;transform:translateY(-6px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .18s ease,opacity .18s ease,visibility .18s ease!important}
header.site-header #nav-mobile.active{display:flex!important;transform:translateY(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
header.site-header #nav-mobile a{display:block!important;width:100%;margin:0!important;padding:12px 10px!important;border-bottom:1px solid var(--bd)!important;font-size:1rem!important;line-height:1.4!important;text-decoration:none!important;color:var(--fg)!important;white-space:normal!important}
header.site-header #nav-mobile a:last-child{border-bottom:0!important}
header.site-header #nav-mobile a:hover{background:var(--card)!important}
@media(max-width:760px){
 header.site-header .header-top>.w{min-height:60px!important;padding:8px 16px!important;gap:8px!important}
 header.site-header .brand{max-width:min(42vw,220px)}
 header.site-header .header-controls{gap:6px!important}
 header.site-header .header-controls .btn{padding:6px 8px!important;font-size:.82rem!important}
 header.site-header .header-bottom{display:block!important;padding:8px 16px 10px!important}
 header.site-header .nav-desktop{display:none!important}
 header.site-header #nav-mobile{width:calc(100% - 32px)!important;max-height:min(60vh,420px)!important}
 h1{margin-top:32px}
}
@media(max-width:360px){
 header.site-header .header-top>.w{padding-left:10px!important;padding-right:10px!important;gap:5px!important}
 header.site-header .brand{max-width:35vw}
 header.site-header .brand b{font-size:.84rem!important}
 header.site-header .header-controls{gap:4px!important}
 header.site-header .header-controls .btn{padding:5px 6px!important;font-size:.76rem!important}
 header.site-header .header-bottom{padding-left:10px!important;padding-right:10px!important}
 header.site-header #nav-mobile{width:calc(100% - 20px)!important}
}
@media(min-width:761px){header.site-header .header-bottom,header.site-header #nav-mobile{display:none!important}}
@media(prefers-reduced-motion:reduce){header.site-header #nav-mobile,header.site-header .nav-mobile-chevron{transition:none!important}}

/* Keep the site name on one line on compact mobile screens. */
@media(max-width:760px){
 header.site-header .brand{display:block!important;white-space:nowrap!important;width:max-content!important;max-width:none!important;flex:0 0 auto!important;overflow:visible!important;text-overflow:clip!important;}
 header.site-header .brand b{white-space:nowrap!important;display:block!important;overflow:visible!important;text-overflow:clip!important;font-size:clamp(.72rem,3.4vw,.88rem)!important;letter-spacing:-.025em!important;}
 header.site-header .header-top>.w{gap:6px!important;padding-left:10px!important;padding-right:10px!important;}
}
@media(max-width:360px){
 header.site-header .brand{max-width:none!important;flex:0 0 auto!important;}
 header.site-header .brand b{font-size:.70rem!important;letter-spacing:-.035em!important;}
 header.site-header .header-controls .btn{padding:5px 5px!important;font-size:.70rem!important;}
}


/* Footer navigation links are green and underlined; legal copy remains white. */
footer .footer-links a {
  color: #a7e3c0 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
footer .footer-links a:hover,
footer .footer-links a:focus-visible {
  color: #22c55e !important;
  text-decoration: underline !important;
}
footer .footer-copy,
footer .footer-copy p {
  color: #ffffff !important;
}
