/* Shared navigation: one type scale, aligned hit areas, and a gently raised surface. */
body[class] .site-header{
 display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;
 height:104px;min-height:104px;padding:0 clamp(24px,3vw,64px);gap:24px;
 position:sticky;top:0;
 background:linear-gradient(180deg,#30453a 0%,#24392f 48%,#1c3027 100%);
 border-top:1px solid #ffffff24;border-bottom:1px solid #9fb6a34d;
 box-shadow:inset 0 1px 0 #ffffff12,0 5px 12px #0b201b20,0 15px 30px #0b201b18;
 color:#f4f7f0;
}
body[class] .site-header .brand-lockup{flex:none;display:block}
body[class] .site-header .brand{font-family:'Helvetica Neue',Arial,sans-serif;font-size:30px;line-height:1.1;letter-spacing:-1.2px}
body[class] .site-header .brand-subnav{display:flex;font-size:12px;gap:5px;margin-top:6px;line-height:1.2}
body[class] .site-header .brand-subnav a{min-height:0;padding:0}
body.is-home .site-header .brand-subnav{display:none}
body[class] .site-header .primary-nav{
 display:flex;order:0;flex:1 1 auto;flex-basis:auto;justify-content:center;align-items:center;
 width:auto;min-height:52px;gap:2px;margin:0;padding:0;border:0;
 font-family:'Helvetica Neue',Arial,sans-serif;font-size:16px;font-weight:500;line-height:1.25;letter-spacing:0;
}
body .primary-nav>a,body .primary-nav .nav-group>summary{
 display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 12px;
 font:inherit;color:inherit;border-radius:8px;gap:8px;white-space:nowrap;
 transition:background-color .15s,box-shadow .15s;
}
body .primary-nav>a:hover,body .nav-group>summary:hover,body .nav-group[open]>summary{
 color:#fff;background:#ffffff0d;box-shadow:inset 0 1px 0 #ffffff15;
}
body .primary-nav>a::after{display:none}
body .nav-group>summary::after{font-size:15px;color:#c5d6c6}
body .nav-group>div{top:calc(100% + 12px);left:0;border-radius:12px;background:#243a2f;border:1px solid #82988666;box-shadow:0 18px 36px #0a1e2040;padding:10px;min-width:290px}
body .primary-nav .nav-group>div a{font:500 16px/1.45 'Helvetica Neue',Arial,sans-serif;padding:13px 15px;border-radius:6px;min-height:48px;white-space:normal}
body[class] .site-header .header-actions{order:2;flex:none;margin:0;gap:10px}
body[class] .site-header .header-book,body[class] .site-header .menu-trigger{display:none}
body[class] .site-header .search-trigger{width:48px;height:48px;display:grid;place-items:center;padding:12px;border-radius:12px;border:1px solid #ffffff24;background:#ffffff08;box-shadow:inset 0 1px 0 #ffffff10}
body[class] .mega-menu{top:104px;max-height:calc(100dvh - 104px);background:#243a2f;position:fixed}
body[class] .mega-menu a{font:400 17px/1.45 'Helvetica Neue',Arial,sans-serif;padding:11px 0;min-height:46px}
body[class] .mega-menu h3{font:500 18px/1.3 'Helvetica Neue',Arial,sans-serif;margin-bottom:12px;color:#c7d9bf}
@media(min-width:1500px){body[class] .site-header .primary-nav{font-size:17px;gap:10px}body .primary-nav>a,body .primary-nav .nav-group>summary{padding:0 16px}}
@media(max-width:1199px){
 body[class] .site-header .primary-nav{display:none}
 body[class] .site-header .menu-trigger{display:flex;align-items:center;justify-content:center;gap:12px;font:500 16px/1.25 'Helvetica Neue',Arial,sans-serif;border:1px solid #ffffff2e;border-radius:12px;padding:12px 18px;min-height:48px;background:#ffffff08;box-shadow:inset 0 1px 0 #ffffff10}
 body[class] .site-header .menu-label{position:static;width:auto;height:auto;clip:auto;overflow:visible;white-space:normal}
 body[class] .mega-menu nav{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 body[class] .site-header{height:88px;min-height:88px;padding:0 20px;gap:12px}
 body[class] .site-header .brand{font-size:27px}
 body[class] .site-header .brand-subnav{font-size:10px;gap:3px}
 body[class] .site-header .header-actions{gap:8px}
 body[class] .site-header .menu-trigger{padding:12px;gap:8px}
 body[class] .mega-menu{top:88px;max-height:calc(100dvh - 88px);padding:28px 24px}
 body[class] .mega-menu nav{grid-template-columns:1fr;gap:28px}
 body[class] .mega-menu a{font-size:18px;min-height:48px}
 body[class] .site-header .search-trigger{width:44px;height:48px;padding:10px}
}
@media(max-width:390px){body[class] .site-header{padding:0 14px}body[class] .site-header .brand-subnav{display:none}}
@media(prefers-reduced-motion:reduce){body .primary-nav>a,body .primary-nav .nav-group>summary{transition:none}}
/* Keep long imported text from widening the page beneath the navigation. */
.page-content .flex-row>*{min-width:0;overflow-wrap:anywhere}
