/* V69 · One-row brand / research-logo rail / hamburger navigation.
   Navigation routes, publication review limits and original catalogue are retained. */
.site-header{position:sticky;top:0;z-index:95;background:#fff;box-shadow:0 1px 0 #e9e4df}
.site-header .header-inner{max-width:1920px;min-height:84px;margin:auto;padding:10px clamp(16px,2.2vw,43px);display:flex;align-items:center;gap:clamp(16px,2.4vw,44px);flex-wrap:nowrap}
.site-header .header-inner>.brand{display:block;flex:0 0 auto;white-space:nowrap;font-size:clamp(36px,2.65vw,51px);line-height:1;letter-spacing:-.07em}
/* The central rail fills the available room between the mark and menu. */
.site-header .campus-nav-rail{position:relative;flex:1 1 auto;min-width:0;width:auto;z-index:1;background:transparent;border:0;overflow:hidden}
.site-header .campus-nav-inner{max-width:none;min-width:0;min-height:56px;margin:0;padding:0;display:flex;align-items:center;gap:8px}
.site-header .campus-nav-track{flex:1;min-width:0;padding:4px 0;gap:10px;scrollbar-width:none;overscroll-behavior-x:contain;scroll-padding-left:8px}
.site-header .campus-nav-item{flex:0 0 73px;width:73px;display:flex;align-items:center;justify-content:center;padding:4px 3px;gap:0;min-height:53px;border-radius:10px;text-decoration:none}
.site-header .campus-nav-item:hover,.site-header .campus-nav-item:focus-visible{background:#f8f3ef}
.site-header .campus-nav-item .school-badge{display:block;object-fit:contain;width:55px;height:45px;max-width:55px;flex:0 0 55px;border:0;border-radius:0;background:none;box-shadow:none;padding:0}
.site-header .campus-nav-item .school-initials{font-size:13px;width:52px;height:43px;display:grid;place-items:center}
.site-header .campus-nav-item span:not(.school-initials){display:none}
.site-header .campus-nav-arrow{display:grid;place-items:center;flex:0 0 26px;height:36px;width:26px;border:0;background:#fff;color:#796e64;border-radius:8px;font-size:23px;padding:0 0 3px}
.site-header .campus-nav-arrow:hover{background:#f7f2ef;color:#2e2723}
/* Sole navigation control: right-aligned menu toggle. */
.site-header .menu-wrap{order:initial;display:block;position:relative;flex:0 0 51px;z-index:100}
.site-header .cat-menu-button{display:flex!important;align-items:center;justify-content:center;width:51px;height:51px;padding:0;border:0;border-radius:50%;background:#262320;color:#fff;cursor:pointer;transition:background .2s,transform .2s}
.site-header .cat-menu-button svg{width:26px;height:26px;display:block}
.site-header .cat-menu-button:hover,.site-header .cat-menu-button[aria-expanded=true]{background:#C4A05A;color:#fff;transform:translateY(-1px)}
.site-header .cat-menu-button:focus-visible,.site-header .campus-nav-arrow:focus-visible,.site-header .campus-nav-item:focus-visible{outline:3px solid #C4A05A;outline-offset:3px}
/* Only one navigation bar; moved source-review banner and category/subnav links into menu. */
.editorial-preview-note,.topline,.subnav{display:none!important}
.site-header .menu-dropdown{position:absolute;top:calc(100% + 13px);right:0;left:auto;width:min(455px,calc(100vw - 28px));min-width:0;max-height:calc(100dvh - 105px);overflow-y:auto;overscroll-behavior:contain;padding:23px 25px 19px;border:1px solid #e8ded5;border-radius:19px;background:#fff;box-shadow:0 18px 62px #27201826;z-index:105;scrollbar-width:thin}
.site-header .menu-dropdown.hidden{display:none!important}
.site-header .menu-intro{margin-bottom:17px}
.site-header .menu-eyebrow{display:block;font-size:10px;color:#96712D;letter-spacing:.12em;font-weight:850;margin-bottom:8px}
.site-header .menu-intro>strong{display:block;font:normal 29px/1.08 var(--serif);letter-spacing:-.03em;color:#26221f;margin:0 0 8px;text-transform:none;padding:0}
.site-header .menu-intro>p{font-size:12px;line-height:1.55;color:#71665d;margin:0}
.site-header .menu-dropdown .search-wrap{position:relative;flex:none;min-width:0;margin:14px 0 19px;width:100%;order:initial}
.site-header .menu-dropdown .search-form{height:47px;display:flex;align-items:center;background:#faf7f4;border:1px solid #e2d8cf;border-radius:24px;overflow:hidden}
.site-header .menu-dropdown .search-form:focus-within{box-shadow:0 0 0 3px #f7d6c6}
.site-header .menu-dropdown .search-form input{font-size:12px;min-width:0;padding:0 9px 0 16px;flex:1}
.site-header .menu-dropdown .search-button{display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;margin-right:3px;border-radius:50%;background:#EDDDB6;color:#fff;border:0;cursor:pointer}
.site-header .menu-dropdown .search-button svg{display:block}
.site-header .menu-dropdown .search-suggestions{position:relative;top:auto;left:auto;right:auto;z-index:110;padding:7px;margin-top:7px;box-shadow:0 8px 25px #0001}
.site-header .menu-navigation{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;row-gap:16px}
.site-header .menu-group{min-width:0}
.site-header .menu-group strong{display:block;color:#96712D;letter-spacing:.11em;font-size:9.7px;font-weight:850;margin:0 0 7px;padding:0 0 9px;border-bottom:1px solid #eee5dc}
.site-header .menu-group a{display:flex;justify-content:space-between;align-items:flex-start;gap:9px;color:#312923;font-size:12px;line-height:1.3;font-weight:650;padding:9px 7px;margin:0 -7px;border-radius:7px;text-decoration:none}
.site-header .menu-group a span{flex:0 0 auto;font-size:11px;color:#96712D;font-weight:500}
.site-header .menu-group a:hover,.site-header .menu-group a:focus-visible{background:#fbf3ec;color:#96712D}
.site-header .menu-utility{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #eee5dc;margin-top:18px;padding-top:17px}
.site-header .menu-utility button{border:1px solid #e9ded6;border-radius:10px;background:#faf6f2;color:#332a24;font-size:11.2px;line-height:1.35;font-weight:750;padding:12px 8px;min-height:47px;cursor:pointer;white-space:normal}
.site-header .menu-utility button:hover{border-color:#C4A05A;background:#f9ebe1}
.site-header .menu-utility .count-bubble{position:static;display:inline-grid;place-items:center;vertical-align:middle;margin-left:3px}
.site-header .menu-utility .count-bubble.hidden{display:none!important}
.site-header .menu-trust{font-size:10px;line-height:1.6;color:#82766e;margin:17px 0 0}
.site-header .menu-trust a{text-decoration:underline;text-underline-offset:2px;font-weight:750;color:#96712D}
@media(min-width:1450px){.site-header .campus-nav-item{flex-basis:81px;width:81px}.site-header .campus-nav-item .school-badge{width:59px;max-width:59px;height:48px;flex-basis:59px}}
@media(max-width:900px){
 .site-header .header-inner{min-height:74px;padding:10px 17px;gap:16px;flex-wrap:nowrap}
 .site-header .header-inner>.brand{font-size:37px}
 .site-header .campus-nav-inner{min-height:52px;gap:4px}
 .site-header .campus-nav-item{flex-basis:59px;width:59px;min-height:46px}
 .site-header .campus-nav-item .school-badge{width:47px;max-width:47px;height:39px;flex-basis:47px}
 .site-header .menu-wrap{flex-basis:47px;margin:0}
 .site-header .cat-menu-button{height:47px;width:47px}
}
@media(max-width:570px){
 .site-header .header-inner{min-height:68px;padding:8px 11px;gap:9px;flex-wrap:nowrap}
 .site-header .header-inner>.brand{font-size:30px;letter-spacing:-.067em}
 .site-header .campus-nav-inner{min-height:42px;gap:2px}
 .site-header .campus-nav-arrow{flex-basis:16px;width:16px;height:28px;font-size:19px}
 .site-header .campus-nav-track{gap:3px}
 .site-header .campus-nav-item{flex-basis:46px;width:46px;min-height:40px;padding:1px}
 .site-header .campus-nav-item .school-badge{width:40px;max-width:40px;height:34px;flex-basis:40px}
 .site-header .menu-wrap{flex-basis:43px}
 .site-header .cat-menu-button{height:43px;width:43px}
 .site-header .cat-menu-button svg{width:23px;height:23px}
 .site-header .menu-dropdown{top:calc(100% + 9px);width:min(410px,calc(100vw - 20px));max-height:calc(100dvh - 80px);padding:19px 17px 16px;right:0}
 .site-header .menu-navigation{column-gap:13px;row-gap:15px}
 .site-header .menu-group a{font-size:11.3px;padding:8px 5px;margin:0 -5px}
 .site-header .menu-intro>strong{font-size:27px}
 .site-header .menu-trust{font-size:9.5px}
}
@media(max-width:365px){
 .site-header .header-inner{gap:6px;padding:7px 8px}
 .site-header .header-inner>.brand{font-size:27px}
 .site-header .campus-nav-arrow{display:none}
 .site-header .menu-wrap{flex-basis:40px}
 .site-header .cat-menu-button{height:40px;width:40px}
 .site-header .menu-navigation{grid-template-columns:1fr 1fr;column-gap:9px}
}
@media(prefers-reduced-motion:reduce){.site-header .cat-menu-button{transition:none}}
