/* Shared navigation: native modal, keyboard access and reduced-motion support. */
.site-header{position:sticky;top:0;z-index:40;background:#faf9f6;color:#293028;border-bottom:1px solid #29302820;transition:background .3s,box-shadow .3s}
.site-header-inner{width:min(1440px,calc(100% - 112px));min-height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-brand{display:block;flex-shrink:0}.site-brand img{width:250px;height:auto}
.site-header-actions{display:flex;gap:32px;align-items:center}
.site-book,.site-menu-toggle,.menu-close{font:12px Arial,sans-serif;letter-spacing:.1em;text-decoration:none;color:inherit}
.site-book{display:flex;align-items:center;gap:28px;padding:14px 20px;border:1px solid #ad9d5f80;transition:background .25s,color .25s}
.site-book:hover{background:#ad9d5f;color:#20261f}.site-book span{font-size:20px;transition:transform .25s}.site-book:hover span{transform:translate(2px,-2px)}
.site-menu-toggle,.menu-close{display:flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:10px 0 10px 12px;border:0;background:transparent;cursor:pointer}
.menu-lines{width:30px;height:16px;position:relative}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0;width:30px;height:1px;background:currentColor;transition:transform .25s,width .25s}
.menu-lines:before{top:3px}.menu-lines:after{bottom:3px;width:21px}.site-menu-toggle:hover .menu-lines:after{width:30px}.site-menu-toggle:hover .menu-lines:before{transform:translateY(-2px)}
.editorial-home .site-header{position:fixed;width:100%;background:transparent;color:#faf9f6;border-color:#ffffff28}
.editorial-home .site-header.is-scrolled{background:#293028f2;backdrop-filter:blur(16px);box-shadow:0 4px 28px #0002}
.site-menu{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;color:#faf9f6;background:#20261f;overflow:auto;overscroll-behavior:contain}
.site-menu::backdrop{background:#10170ee6}
.site-menu[open]{animation:menu-reveal .45s cubic-bezier(.2,.7,.2,1) both}
.menu-top,.menu-layout,.menu-bottom{width:min(1440px,calc(100% - 112px));margin-inline:auto}
.menu-top{min-height:96px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #faf9f62a}
.menu-close span{font-size:35px;font-weight:200;line-height:1;transition:transform .3s}.menu-close:hover span{transform:rotate(90deg)}
.menu-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(40px,8vw,140px);padding-block:40px}
.menu-eyebrow{font:10px Arial,sans-serif;letter-spacing:.18em;color:#c7b777;margin:0 0 18px}
.menu-links{display:flex;flex-direction:column}.menu-links a{font:clamp(32px,3.7vw,58px)/1.25 Ogg,Georgia,serif;text-decoration:none;letter-spacing:-.025em;display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid #ffffff1f;transition:color .25s,padding .25s}
.menu-links a>span:last-child{font:24px Arial,sans-serif;color:#c7b777;opacity:0;transform:translate(-10px,8px);transition:transform .25s,opacity .25s}
.menu-links a:hover,.menu-links a:focus-visible,.menu-links a[aria-current=page]{color:#d7c689;padding-left:12px}
.menu-links a:hover>span:last-child,.menu-links a:focus-visible>span:last-child{opacity:1;transform:translate(0,0)}
.site-menu[open] .menu-links a{animation:menu-link-in .5s both}
.menu-links a:nth-child(2){animation-delay:40ms!important}.menu-links a:nth-child(3){animation-delay:80ms!important}.menu-links a:nth-child(4){animation-delay:120ms!important}.menu-links a:nth-child(5){animation-delay:160ms!important}
.menu-secondary{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:24px}.menu-secondary a,.menu-details a,.menu-bottom a{font:12px/1.6 Arial,sans-serif;text-decoration:none;text-underline-offset:5px}.menu-secondary a:hover,.menu-details a:hover,.menu-bottom a:hover{text-decoration:underline;color:#d7c689}
.menu-photo{position:relative;overflow:hidden;aspect-ratio:16/9}.menu-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.menu-photo:hover img{transform:scale(1.035)}.menu-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#10170eaa)}.menu-photo>span{position:absolute;left:24px;bottom:20px;z-index:1;font:9px Arial,sans-serif;letter-spacing:.18em}
.menu-details{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.menu-details p:not(.menu-eyebrow){font:13px/1.8 Arial,sans-serif;color:#d5d8ce;margin:0 0 12px}
.menu-bottom{border-top:1px solid #faf9f62a;padding-block:22px;display:flex;justify-content:space-between;gap:20px;font:11px/1.6 Arial,sans-serif;color:#b6bdad}
html.menu-is-open{overflow:hidden;scrollbar-gutter:stable}
.menu-fallback{display:flex;flex-wrap:wrap;gap:20px;padding:20px;background:#293028;color:#faf9f6}
.site-menu :focus-visible,.site-header :focus-visible{outline:2px solid #d7c689;outline-offset:5px}
@keyframes menu-reveal{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
@keyframes menu-link-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.menu-layout{padding-block:64px}}
@media(max-width:850px){.site-header-inner,.menu-top,.menu-layout,.menu-bottom{width:calc(100% - 48px)}.site-header-inner,.menu-top{min-height:82px}.site-brand img{width:210px}.site-header-actions{gap:22px}.menu-layout{gap:36px;grid-template-columns:1fr}.menu-aside{display:none}.menu-links a{font-size:clamp(32px,7vw,52px);padding-block:10px}.menu-layout{padding-block:30px}.menu-links a>span:last-child{opacity:1;transform:none}.menu-bottom{flex-wrap:wrap}.site-book{gap:16px}}
@media(max-width:480px){.site-header-inner,.menu-top,.menu-layout,.menu-bottom{width:calc(100% - 36px)}.site-brand img{width:165px}.site-header-actions{gap:14px}.site-book{padding:10px;font-size:10px;gap:8px}.site-book span{font-size:15px}.site-menu-toggle{padding-left:0;gap:0}.site-menu-toggle>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.site-menu-toggle{width:34px}.menu-top .site-brand img{width:190px}.menu-secondary{gap:16px 22px}.menu-bottom a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.site-header,.site-menu,.site-menu *,.site-header *,.menu-lines:before,.menu-lines:after{animation:none!important;transition:none!important}}
