/* One header system, shared by the homepage and every generated page. */
body>.site-header{position:fixed;z-index:50;top:max(10px,env(safe-area-inset-top,0px));left:0;right:0;display:flex;justify-content:center;width:auto;margin:0;padding:0 clamp(16px,4vw,56px);pointer-events:none;--navy:#243867;--sun:#ffbe98}
.site-header>.nav{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:8px 16px;width:min(1240px,100%);min-height:64px;margin:0;padding:6px 8px 6px 14px;border-radius:24px;border:1px solid #ffffffcc;background:linear-gradient(135deg,#ffffffc7,#ffffffa8 70%);box-shadow:inset 0 1px 0 #fffffff2,inset 1px 0 0 #ffffff73,inset 0 -1px 0 #24386714,0 0 0 1px #24386712,0 16px 40px -24px #2438673d,0 2px 5px #2438670a;-webkit-backdrop-filter:blur(16px) saturate(1.35);backdrop-filter:blur(16px) saturate(1.35);font:500 15px/1.55 'DM Sans',Arial,sans-serif}
.site-header .logo{display:inline-flex;align-items:center;gap:12px;min-height:44px;flex:none;text-decoration:none}.site-header .logo .mark{width:36px;height:30px}.site-header .logo-words{font:700 22px/1 'Fraunces Soft',Georgia,serif;letter-spacing:-.02em;color:#243867}.site-header .logo .sun{fill:#ffbe98}.site-header .logo .ink{fill:#243867;stroke:#243867}.site-header .logo .ink-fill{fill:#243867}.site-header .logo .ink-stroke{fill:none;stroke:#243867}
.site-header .nav>.nav-links{display:flex;flex-wrap:nowrap;align-items:center;gap:2px}.site-header .nav-links>a:not(.nav-contact){display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;font:500 15px/1.55 'DM Sans',Arial,sans-serif;text-decoration:none;color:#243867;transition:background-color .2s}.site-header .nav-links>a:not(.nav-contact):hover,.site-header .nav-links>a[aria-current]{background:#24386712;color:#243867}
.site-header .nav-contact{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin:0 0 0 8px;padding:10px 16px;border:1px solid #243867;border-radius:999px;background:#243867;color:white;box-shadow:0 2px 5px #2438671f;font:500 14px/1.55 'DM Sans',Arial,sans-serif;white-space:nowrap;transition:transform .18s,background-color .18s;text-decoration:none}.site-header .nav-contact:after{content:none}.site-header .nav-contact:hover{background:#16274e;border-color:#16274e;transform:none;box-shadow:0 2px 5px #2438671f}.site-header .nav-contact:active{transform:scale(.97)}.site-header .nav-contact .i{width:16px;height:16px;transition:transform .2s}.site-header .menu-toggle{display:none;align-items:center;gap:10px;min-height:44px;padding:8px 16px;border:1px solid #ffffffcc;border-radius:999px;background:#ffffff80;box-shadow:0 0 0 1px #24386712;font:500 15px/1.55 'DM Sans',Arial,sans-serif;color:#243867}.site-header .menu-toggle .i{width:18px;height:18px}
.site-header~main{padding-top:calc(64px + 24px + max(10px,env(safe-area-inset-top,0px)))}
.site-header .button-label{display:inline-block;min-width:0}.site-header .button-chars{display:block;overflow:hidden;line-height:1.3;white-space:pre}.site-header .button-chars>span{display:inline-block;text-shadow:0 1.3em currentColor;transition:transform .6s cubic-bezier(.625,.05,0,1);transition-delay:var(--char-delay)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.site-header .nav-contact:hover .button-chars>span{transform:translateY(-1.3em)}.site-header .nav-contact:hover .i{transform:translateX(2px)}}
@media(max-width:720px){.nav-ready .site-header .nav>.nav-links{display:none}.nav-ready .site-header .menu-toggle{display:inline-flex}}
@media(max-width:360px){.site-header .logo-words{font-size:18px}}
@media(prefers-reduced-motion:reduce){.site-header *{transition:none!important}}
@media(prefers-reduced-transparency:reduce){.site-header>.nav{background:#fffdf8;backdrop-filter:none;-webkit-backdrop-filter:none}}
