/* Approved shared responsive header. */
#site-header{background:#fbfaf5;color:#224f46;border-bottom:1px solid #d6c18c}
#site-header .header-utility{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:9px 38px;border-bottom:1px solid #e7e9df;font:12px/1.35 Arial,sans-serif;letter-spacing:.025em;color:#65756a}
#site-header .header-utility>span:last-child{display:flex;align-items:center;gap:6px}
#site-header .header-utility svg{width:13px;height:13px;color:#a38247}
#site-header .header-masthead{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 38px 26px;background:radial-gradient(ellipse at 95% 15%,#eaf0e680,transparent 52%)}
#site-header .brand-identity{display:flex;align-items:center;gap:21px;color:#224f46;text-decoration:none;min-width:0}
/* Frame the unchanged historical emblem from its original banner. */
#site-header .brand-emblem{--seal-size:88px;display:block;flex:none;width:var(--seal-size);height:var(--seal-size);border-radius:50%;background-image:url('images/banner.jpg');background-repeat:no-repeat;background-size:calc(var(--seal-size)*6.35267857) calc(var(--seal-size)*1.85267857);background-position:calc(var(--seal-size)*-1.41071429) calc(var(--seal-size)*-.08928571);box-shadow:0 0 0 4px #fff,0 0 0 5px #c3aa6d40}
#site-header .brand-copy{display:block;min-width:0}
#site-header .brand-title{display:block;font:600 clamp(25px,2.5vw,31px)/1.17 Georgia,'Times New Roman',serif;letter-spacing:-.032em}
#site-header .brand-title>span{white-space:nowrap}
#site-header .brand-dedication{display:block;margin-top:9px;font:15px/1.4 Georgia,'Times New Roman',serif;color:#637367}
#site-header .dedication-short{display:none}
#site-header .header-contact{flex:none;padding-left:26px;border-left:1px solid #dde3d7;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
#site-header .contact-label{font:11px/1.4 Arial,sans-serif;letter-spacing:.04em;color:#637367}
#site-header .header-phone{font:600 18px/1.4 Arial,sans-serif;letter-spacing:-.025em;white-space:nowrap;text-decoration:none;color:#224f46}
#site-header .header-admission{display:flex;align-items:center;gap:17px;margin-top:7px;padding:8px 12px;border:1px solid #d8c38d;border-radius:5px;background:#f6edda;color:#315448;text-decoration:none;font:600 12px/1.4 Arial,sans-serif}
#site-header .header-admission span{font-size:17px;font-weight:400;color:#917342}
#site-header .header-admission:hover{background:#efe0bd;border-color:#ad8d4c}
#site-header .mobile-call,#site-header .mobile-toolbar{display:none}
#site-header .header-navigation{background:#224f46;border-bottom:3px solid #c2a566;padding:0 28px}
#site-header nav{display:flex;gap:5px;align-items:stretch;justify-content:space-between;padding:6px 0;background:none;border:0}
#site-header nav a{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;padding:13px 12px;color:#f7faf6;text-decoration:none;font:600 14px/1.3 Arial,sans-serif;border-radius:5px;box-shadow:none;white-space:nowrap}
#site-header nav a svg{flex:none;width:18px;height:18px;color:#d4c18d}
#site-header nav a:hover,#site-header nav a[aria-current]{background:#396458;box-shadow:inset 0 -2px #dac285}
#site-header a:focus-visible,#site-header button:focus-visible{outline:3px solid #c39b50;outline-offset:3px}
@media(max-width:1050px) and (min-width:761px){
 #site-header .header-masthead{padding:23px 26px;gap:20px}
 #site-header .brand-identity{gap:16px}
 #site-header .brand-emblem{--seal-size:77px}
 #site-header .brand-title{font-size:25px}
 #site-header .brand-dedication{font-size:13px}
 #site-header .header-contact{padding-left:18px}
 #site-header .header-phone{font-size:16px}
 #site-header .header-admission{font-size:11px;gap:10px}
 #site-header nav a{padding-inline:8px;gap:7px;font-size:13px}
}
@media(max-width:760px){
 #site-header .header-utility,#site-header .header-contact,#site-header .dedication-full{display:none}
 #site-header .header-masthead{padding:20px 18px;gap:12px}
 #site-header .brand-identity{gap:12px;flex:1}
 #site-header .brand-emblem{--seal-size:59px}
 #site-header .brand-title{font-size:23px;line-height:1.12;letter-spacing:-.025em}
 #site-header .brand-title>span{display:block}
 #site-header .brand-dedication{margin-top:7px;font:12px/1.4 Arial,sans-serif}
 #site-header .dedication-short{display:inline}
 #site-header .mobile-call{display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:1px solid #dce3d7;border-radius:11px;background:#f1f4e9;color:#315c4c;text-decoration:none}
 #site-header .mobile-call svg{width:20px;height:20px}
 #site-header .header-navigation{padding:0 18px;border-bottom-width:3px}
 #site-header .mobile-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:55px}
 #site-header .menu-toggle{display:flex;align-items:center;gap:10px;min-height:44px;padding:0;border:0;background:none;color:#fff;font:600 14px/1.3 Arial,sans-serif;cursor:pointer}
 #site-header .menu-bars{width:18px;height:13px;position:relative;border-top:1.5px solid #dfce9e;border-bottom:1.5px solid #dfce9e}
 #site-header .menu-bars:before{content:'';position:absolute;top:4.5px;left:0;right:0;border-top:1.5px solid #dfce9e}
 #site-header .mobile-admission{display:flex;align-items:center;gap:13px;min-height:44px;color:#f2e4be;text-decoration:none;font:600 13px/1.3 Arial,sans-serif}
 #site-header .mobile-admission span{font-size:18px}
 #site-header nav{display:none;grid-template-columns:1fr 1fr;gap:5px;padding:0 0 12px;border-top:1px solid #ffffff17}
 #site-header nav.is-open{display:grid}
 #site-header nav a{justify-content:flex-start;white-space:normal;font-size:13px;min-height:48px;padding:12px 10px;gap:9px}
}
@media(max-width:360px){
 #site-header .header-masthead{padding-inline:15px;gap:8px}
 #site-header .brand-identity{gap:10px}
 #site-header .brand-emblem{--seal-size:49px}
 #site-header .brand-title{font-size:20px}
 #site-header .brand-dedication{font-size:11.5px}
 #site-header .mobile-call{width:44px}
 #site-header .header-navigation{padding-inline:15px}
}
