/* Shared header refinement. Loaded after chrome.css on every page. */
:root { --eo-gold:var(--eo-brand-gold,#c4a56a); --eo-gold-rgb:196,165,106; }
html { scroll-padding-top:calc(var(--eo-header-h,88px) + 18px); }
body header.eo-navbar { background:#fffdf8; border-bottom:1px solid #e4dfd2; }
body header.eo-navbar .nav-wrap { width:min(1380px,calc(100% - 64px)); gap:24px; }
body header.eo-navbar .brand { gap:12px; min-width:0; }
body header.eo-navbar .crest { width:50px; height:50px; flex-shrink:0; }
body header.eo-navbar .brand-title { font-size:25px; line-height:1.1; letter-spacing:-.035em; }
body header.eo-navbar .brand-sub { font-size:9px; line-height:1.3; letter-spacing:.12em; }
body header.eo-navbar .eo-nav-shell { gap:20px; }
body header.eo-navbar .eo-nav { gap:22px; }
body header.eo-navbar .eo-nav > a,
body header.eo-navbar .eo-nav-group > summary { font-size:13px; min-height:46px; line-height:1.5; }
body header.eo-navbar .eo-nav > a { padding:12px 0; }
body header.eo-navbar .eo-nav > a::after { bottom:5px; }
body header.eo-navbar .eo-nav-group > summary { position:relative; gap:8px; }
body header.eo-navbar .eo-nav-group > summary i { font-size:10px; }
body header.eo-navbar .eo-nav-group.is-current > summary,
body header.eo-navbar .eo-nav-group[open] > summary { text-decoration:none; }
body header.eo-navbar .eo-nav-group > summary::before { content:''; position:absolute; left:0; right:100%; bottom:5px; height:1px; background:#a4854f; transition:right .18s ease; }
body header.eo-navbar .eo-nav-group > summary:hover::before,
body header.eo-navbar .eo-nav-group.is-current > summary::before,
body header.eo-navbar .eo-nav-group[open] > summary::before { right:0; }
body header.eo-navbar .eo-search-toggle,
body header.eo-navbar .nav-toggle { width:44px; height:44px; border-color:#d5d1c4; border-radius:50%; font-size:19px; }
body header.eo-navbar .nav-toggle { font-size:23px; }
body header.eo-navbar .header-quote { min-height:46px; padding:12px 20px; gap:14px; font-size:12px; font-weight:600; }
body header.eo-navbar .header-quote i { font-size:14px; transition:transform .18s ease; }
body header.eo-navbar .header-quote:hover i { transform:translate(2px,-2px); }
body header.eo-navbar.is-scrolled { background:rgba(255,253,248,.97); box-shadow:0 5px 24px #173b3210; }
body header.eo-navbar.is-scrolled .nav-wrap { height:72px; }
body header.eo-navbar.is-scrolled .crest { width:42px; height:42px; }
body header.eo-navbar.is-scrolled .brand-title { font-size:23px; }
body header.eo-navbar .brand-title { transition:font-size .2s ease; }
body header.eo-navbar .eo-mega-panel { top:calc(100% - 1px); width:min(920px,100%); max-height:calc(100dvh - var(--eo-header-h,88px) - 20px); overflow:auto; overscroll-behavior:contain; padding:26px; border:1px solid #d9d1bd; border-top:2px solid #c4a56a; border-radius:0 0 24px 8px; box-shadow:0 16px 35px #173b3219; }
body header.eo-navbar .eo-mega-heading { padding-bottom:18px; margin-bottom:18px; }
body header.eo-navbar .eo-mega-heading div > span { font-size:10px; color:#795d2f; }
body header.eo-navbar .eo-mega-heading strong { font-size:29px; letter-spacing:-.025em; }
body header.eo-navbar .eo-mega-heading a { font-size:13px; min-height:44px; }
body header.eo-navbar .eo-mega-grid { gap:18px; }
body header.eo-navbar .eo-nav .eo-mega-card { padding:0 0 10px; gap:12px 10px; border-radius:6px; }
body header.eo-navbar .eo-mega-card img { height:116px; border-radius:5px 20px 5px 5px; }
body header.eo-navbar .eo-mega-card strong { font-size:14px; line-height:1.5; }
body header.eo-navbar .eo-mega-card small { font-size:12px; color:#596451; margin-top:4px; }
body header.eo-navbar .eo-mega-card > i { font-size:15px; }
body header.eo-navbar .eo-nav .eo-mega-card::after { display:none; }
body header.eo-navbar .eo-nav .eo-mega-card:hover { background:#f4f1e7; }
body header.eo-navbar .eo-simple-panel { width:560px; right:140px; display:block; padding:22px; }
body header.eo-navbar .eo-nav-explore .eo-simple-panel { width:330px; right:120px; }
.eo-menu-intro { margin-bottom:14px; padding:0 4px 15px; border-bottom:1px solid #e3dccb; }
.eo-menu-intro > span { display:block; color:#795d2f; font-size:10px; letter-spacing:.11em; text-transform:uppercase; }
.eo-menu-intro > strong { display:block; margin-top:5px; color:#173b32; font:500 25px/1.2 var(--font-serif); letter-spacing:-.02em; }
.eo-menu-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:3px 12px; }
.eo-nav-explore .eo-menu-links { grid-template-columns:1fr; }
body header.eo-navbar .eo-simple-panel .eo-menu-links a { justify-content:start; gap:10px; padding:11px 8px; font-size:13px; min-height:48px; border-radius:4px; line-height:1.5; }
body header.eo-navbar .eo-simple-panel a > i { width:20px; color:#82632f; flex-shrink:0; font-size:16px; }
body header.eo-navbar .eo-simple-panel a > span[aria-hidden] { margin-left:auto; color:#795d2f; }
body header.eo-navbar .eo-simple-panel a[aria-current=page] { background:#f1eee3; }
body header.eo-navbar :is(a,button,summary):focus-visible,
body .eo-mobile-drawer :is(a,button,summary):focus-visible { outline:2px solid #82632f; outline-offset:4px; border-radius:3px; }
body .eo-mobile-drawer { width:min(430px,94vw); padding:24px; background:#fffdf8; overscroll-behavior:contain; scrollbar-width:thin; transition:transform .25s ease,visibility 0s linear .25s; }
body.mobile-open .eo-mobile-drawer { transition-delay:0s; }
body .eo-mobile-header { position:sticky; top:-24px; z-index:2; margin:0 -2px 15px; padding:10px 2px 17px; background:#fffdf8; border-bottom:1px solid #ded8c8; }
body .eo-mobile-heading span { font-size:11px; }
body .eo-mobile-drawer .eo-mobile-heading strong { font-size:29px; line-height:1.3; margin-top:5px; }
body .eo-nav-close { border-radius:50%; }
body .eo-drawer-links > a { font-size:15px; min-height:50px; }
body .eo-drawer-group summary { font-size:17px; min-height:57px; }
body .eo-drawer-group summary span { font-size:22px; }
body .eo-drawer-group.is-current summary { color:#173b32; }
body .eo-drawer-links .eo-drawer-group a { font-size:14px; min-height:46px; padding:11px 0; line-height:1.55; }
body .eo-drawer-group a small { font-size:12px; color:#596451; }
body .eo-drawer-links .eo-drawer-group a[aria-current=page] { font-weight:600; }
body .eo-drawer-actions { gap:10px; margin-top:22px; }
body .eo-drawer-actions a { display:flex; align-items:center; justify-content:center; gap:8px; font-size:13px; min-height:48px; border-radius:999px; }
body .eo-drawer-contact { gap:2px; margin-top:20px; padding-top:14px; }
body .eo-drawer-contact a { display:flex; align-items:center; gap:10px; min-height:44px; font-size:13px; }
body .eo-drawer-contact a i { color:#82632f; }
body .eo-drawer-contact a span { font-size:13px; color:inherit; }
body .eo-drawer-contact > span { margin-top:8px; font-size:11px; line-height:1.6; }
body .eo-search-dialog { border-radius:9px 28px 9px 9px; padding:28px; width:min(650px,calc(100% - 32px)); box-shadow:0 18px 60px #173b3229; }
body .eo-search-heading span { font-size:10px; }
body .eo-search-heading h2 { font-size:34px; letter-spacing:-.03em; }
body .eo-search-dialog > label,.eo-search-status,.eo-search-help { font-size:13px; }
body .eo-search-results a { font-size:14px; min-height:52px; padding:13px 8px; border-radius:3px; }
body .eo-search-results a:focus-visible,.eo-search-help:focus-visible { outline:2px solid #82632f; outline-offset:3px; }
@media (max-width:1200px) {
  body header.eo-navbar .nav-wrap { width:calc(100% - 48px); gap:18px; }
  body header.eo-navbar .brand-title { font-size:23px; }
  body header.eo-navbar .eo-nav { gap:16px; }
  body header.eo-navbar .eo-nav-shell { gap:14px; }
  body header.eo-navbar .header-quote { padding-inline:16px; }
}
@media (max-width:1080px) {
  body header.eo-navbar .nav-wrap { width:calc(100% - 40px); height:76px; }
  body header.eo-navbar .crest { width:44px; height:44px; }
  body header.eo-navbar .brand-title { font-size:23px; }
  body header.eo-navbar.is-scrolled .nav-wrap { height:68px; }
  body header.eo-navbar.is-scrolled .crest { width:40px; height:40px; }
  body header.eo-navbar .eo-nav-shell { gap:12px; }
}
@media (max-width:600px) {
  body header.eo-navbar .nav-wrap { width:calc(100% - 32px); gap:10px; }
  body header.eo-navbar .brand { gap:9px; }
  body header.eo-navbar .brand-title,body header.eo-navbar.is-scrolled .brand-title { font-size:21px; }
  body header.eo-navbar .brand-sub { font-size:8px; letter-spacing:.1em; }
  body header.eo-navbar .eo-nav-shell { gap:8px; }
  body header.eo-navbar .crest { width:42px; height:42px; }
  body .eo-mobile-drawer { padding:22px; }
  body .eo-mobile-header { top:-22px; }
  body .eo-search-dialog { padding:22px; }
  body .eo-search-heading h2 { font-size:29px; }
}
@media (max-width:360px) {
  body header.eo-navbar .brand-title,body header.eo-navbar.is-scrolled .brand-title { font-size:18px; }
  body header.eo-navbar .crest,body header.eo-navbar.is-scrolled .crest { width:36px; height:36px; }
  body header.eo-navbar .brand { gap:8px; }
  body header.eo-navbar .eo-nav-shell { gap:6px; }
  body .eo-mobile-drawer { padding:18px; }
  body .eo-mobile-header { top:-18px; }
  body .eo-mobile-drawer .eo-mobile-heading strong { font-size:27px; }
}
@media (prefers-reduced-motion:reduce) {
  body header.eo-navbar .brand-title,
  body header.eo-navbar .eo-nav-group > summary::before,
  body header.eo-navbar .header-quote i,
  body .eo-mobile-drawer,
  body .eo-mobile-backdrop { transition:none!important; }
}

.eo-search-keyboard-hint { margin:-2px 0 12px; color:#65705d; font-size:11px; }
@media(max-width:600px) { .eo-search-keyboard-hint { display:none; } }
