/* Shared navigation v23 — preserve the established midnight navy / warm gold identity. */
#site-header{z-index:70;overflow:visible;box-shadow:0 3px 18px #05243d14}
#site-header .nav{position:relative;gap:24px;min-height:92px;max-width:1500px}
#site-header .brand{padding:8px 18px}
#site-header .navlinks{gap:8px;overflow:visible;max-height:none}
#site-header .navlinks>a:not(.button),#site-header .service-menu>summary{font:600 13px/1.4 'LHPS Sans',Arial,sans-serif;color:#fffdf8;min-height:46px;padding:14px 15px;display:flex;align-items:center;white-space:nowrap;text-decoration:none;border-radius:4px;transition:background .15s,color .15s}
#site-header .navlinks>a:not(.button):hover,#site-header .service-menu>summary:hover,#site-header .service-menu[open]>summary{background:#ffffff0d;color:#edc77e}
#site-header .service-menu{position:static;padding:0;border:0;width:auto}
#site-header .service-menu>summary{gap:10px;list-style:none}
#site-header .service-menu>summary:after{display:none;content:none}
#site-header .service-menu>summary::-webkit-details-marker{display:none}
#site-header .service-menu>summary svg{color:#edc77e;transition:transform .2s;flex-shrink:0}
#site-header .service-menu[open]>summary svg{transform:rotate(180deg)}
#site-header .service-menu:not([open])>.service-menu-panel{display:none}
#site-header .service-menu-panel{position:absolute;top:calc(100% - 1px);right:0;left:auto;width:min(870px,100%);max-width:none;display:block;background:#fffdf8;border:1px solid #e5dfd2;border-top:3px solid #dbb364;border-radius:0 0 9px 9px;padding:0;margin:0;box-shadow:0 22px 48px #05243d2e;color:#17324d;z-index:80;overflow:visible}
#site-header .nav-panel-heading{padding:22px 26px 18px;display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid #e6e0d5;font:600 14px/1.5 'LHPS Sans',Arial,sans-serif}
#site-header .nav-panel-location{font-size:11px;font-weight:500;color:#647482}
#site-header .nav-service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:25px 26px 26px}
#site-header .nav-service-group{min-width:0}
#site-header .nav-service-group h2{font:700 10px/1.5 'LHPS Sans',Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.13em!important;color:#68757e;margin:0 0 10px;text-wrap:initial}
#site-header .service-menu-panel .nav-service-link{display:block;padding:12px 9px!important;margin:0 -9px 3px;min-height:76px;border-radius:5px;text-decoration:none!important;background:transparent;transition:background .15s}
#site-header .nav-service-link:hover,#site-header .nav-service-link[aria-current=page]{background:#f0ece3}
#site-header .nav-service-name{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font:700 13px/1.4 'LHPS Sans',Arial,sans-serif;color:#17324d}
#site-header .nav-service-name>span{color:#9b7c42;font-size:15px}
#site-header .nav-service-description{display:block;margin-top:6px;font:400 11px/1.6 'LHPS Sans',Arial,sans-serif;color:#5e6c75}
#site-header .nav-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f3efe6;padding:15px 26px;border-radius:0 0 8px 8px;font:400 11px/1.5 'LHPS Sans',Arial,sans-serif;color:#5e6c75}
#site-header .service-menu-panel .nav-overview{display:flex;align-items:center;gap:25px;font:700 12px/1.4 'LHPS Sans',Arial,sans-serif;padding:10px 0!important;min-height:44px;text-decoration:none;background:transparent}
#site-header .nav-overview:hover{text-decoration:underline;text-underline-offset:4px}
#site-header .navlinks .nav-quote{min-height:46px;padding:14px 20px;margin-left:12px;gap:22px;border-radius:3px;font:700 12px/1.4 'LHPS Sans',Arial,sans-serif;text-decoration:none;white-space:nowrap}
#site-header :focus-visible{outline:3px solid #dbb364!important;outline-offset:3px}
#site-header .menu-toggle{display:none}
@media(max-width:1100px) and (min-width:1001px){#site-header .nav{gap:12px}#site-header .navlinks{gap:0}#site-header .navlinks>a:not(.button),#site-header .service-menu>summary{padding-inline:12px;font-size:12px}#site-header .navlinks .nav-quote{margin-left:5px;padding-inline:15px;gap:12px}}
@media(max-width:1000px){
 #site-header .nav{width:calc(100% - 36px);min-height:76px;gap:0 16px;flex-wrap:wrap}
 #site-header .brand{padding:6px 12px}
 #site-header .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid #7890a0;border-radius:4px;min-height:44px;min-width:100px;padding:10px 14px;font:600 12px/1.4 'LHPS Sans',Arial,sans-serif;color:#fffdf8;background:transparent}
 #site-header .menu-toggle-icon{position:relative;width:18px;height:14px;display:block}
 #site-header .menu-toggle-icon span{position:absolute;left:0;right:0;height:1.5px;background:#edc77e;top:3px;transition:transform .15s,top .15s}
 #site-header .menu-toggle-icon span:last-child{top:10px}
 #site-header .menu-toggle[aria-expanded=true] .menu-toggle-icon span{top:6px;transform:rotate(45deg)}
 #site-header .menu-toggle[aria-expanded=true] .menu-toggle-icon span:last-child{transform:rotate(-45deg)}
 #site-header .navlinks,#site-header .navlinks.js-expanded{display:flex;flex-direction:column;align-items:stretch;width:100%;margin:0;padding:12px 0 22px;gap:0;background:#05243d;max-height:calc(100dvh - 170px);overflow-y:auto;overscroll-behavior:contain;border-top:1px solid #ffffff25}
 #site-header .navlinks.js-collapsed{display:none}
 #site-header .navlinks>a:not(.button),#site-header .service-menu>summary{font-size:14px;min-height:52px;padding:14px 10px;border-radius:0;border-bottom:1px solid #ffffff18}
 #site-header .service-menu{width:100%}
 #site-header .service-menu>summary{justify-content:space-between}
 #site-header .service-menu-panel{position:static;width:100%;margin:10px 0 12px;border:0;border-top:2px solid #dbb364;box-shadow:none;border-radius:3px;overflow:hidden}
 #site-header .nav-panel-heading{padding:16px 17px;font-size:12px}
 #site-header .nav-panel-location{display:none}
 #site-header .nav-service-groups{grid-template-columns:1fr;padding:17px;gap:16px}
 #site-header .nav-service-group h2{font-size:10px;margin-bottom:7px}
 #site-header .service-menu-panel .nav-service-link{min-height:63px;padding:10px 9px!important;margin-bottom:0}
 #site-header .nav-service-name{font-size:13px}
 #site-header .nav-service-description{font-size:11px;margin-top:4px}
 #site-header .nav-service-group+.nav-service-group{border-top:1px solid #e6e0d5;padding-top:15px}
 #site-header .nav-panel-footer{padding:7px 17px;display:block}
 #site-header .nav-panel-footer>span{display:none}
 #site-header .service-menu-panel .nav-overview{justify-content:space-between;font-size:12px;padding-block:12px!important}
 #site-header .navlinks .nav-quote{margin:16px 0 0;min-height:48px;justify-content:space-between;padding:14px 18px}
}
@media(prefers-reduced-motion:reduce){#site-header *{transition:none!important}}

/* Isolate navigation labels from the editorial heading system. */
#site-header .nav-service-name svg,#site-header .nav-quote svg{display:block;flex-shrink:0;width:13px;height:13px}#site-header .nav-service-name svg{color:#9b7c42}
/* Keep the narrow-screen accordion in one scrollable column, never flex-wrap sideways. */
@media(max-width:1000px){#site-header .navlinks,#site-header .navlinks.js-expanded{flex-wrap:nowrap}#site-header .navlinks>*{flex-shrink:0}}
