/* Shared public header; independent of each page's legacy navigation rules. */
.site-header[data-site-page],body.narrow-story-ready .site-header[data-site-page]{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(1rem,2.5vw,2.5rem);min-height:calc(88px + var(--safe-top));padding:calc(.9rem + var(--safe-top)) max(var(--gutter),var(--safe-right)) .9rem max(var(--gutter),var(--safe-left));background:var(--paper);backdrop-filter:none;-webkit-backdrop-filter:none}
.site-header[data-site-page]>.brand{justify-self:start}
.site-header-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:clamp(.5rem,1.5vw,1.25rem)}
.site-app-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem .9rem;border-radius:.7rem;background:#0864e8;color:#fff;font-size:.9rem;font-weight:700;text-decoration:none;white-space:nowrap}
.site-app-link:hover{background:#0756c8;color:#fff}
.site-header[data-site-page].is-compact>.site-header-actions{grid-column:2;grid-row:1}
.site-header[data-site-page]>.site-menu-toggle{justify-self:end;grid-column:3}
.site-shortcuts{width:max-content;justify-self:center;display:flex;align-items:center;gap:clamp(1.25rem,2.2vw,2.5rem)}
.site-shortcuts a,.site-menu-toggle{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.site-shortcuts a{display:flex;align-items:center;min-height:48px;border-bottom:2px solid transparent}
.site-shortcuts a:hover,.site-shortcuts a[aria-current]{color:var(--blue-deep);border-color:currentColor}
.site-menu-toggle,.site-menu__top button{display:flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;min-width:48px;padding:.5rem 0;border:0;background:transparent;color:inherit;cursor:pointer}
.site-menu-toggle svg,.site-menu__top svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}
.site-header[data-site-page] :focus-visible,.site-menu :focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.site-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(30rem,100%);height:100%;height:100dvh;max-height:100dvh;max-width:100%;padding:0;border:0;background:var(--deep);color:var(--white);box-shadow:-1rem 0 3rem #0003;overflow:hidden}
.site-menu[open]{display:flex;flex-direction:column;animation:site-menu-in 260ms cubic-bezier(.2,0,0,1)}
.site-menu::backdrop{background:rgb(7 26 39 / .45)}
.site-menu__top{display:flex;align-items:center;justify-content:space-between;flex:none;min-height:calc(88px + var(--safe-top));padding:calc(.9rem + var(--safe-top)) 2rem .9rem;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.site-menu__top button{font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit}
.site-menu nav{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:0 2rem max(2rem,var(--safe-bottom));scrollbar-gutter:stable}
.site-menu nav a,.site-menu nav .mementom-accessibility-settings>button{display:flex;align-items:center;min-height:60px;padding:.85rem 0;border-bottom:1px solid #ffffff30;text-decoration:none;font-size:1.15rem;font-weight:650;line-height:1.4}
.site-menu nav .mementom-accessibility-settings>button{width:100%;border-radius:0;font-size:var(--type-menu,1.15rem)}
.site-menu nav a:nth-child(4){margin-top:1.25rem}
.site-menu nav a:hover,.site-menu nav a[aria-current],.site-menu nav .mementom-accessibility-settings>button:hover{color:var(--blue-light)}
.site-menu nav a[aria-current]{text-decoration:underline;text-underline-offset:.3em}
.site-menu.is-closing{animation:site-menu-out 180ms ease-in forwards}
@keyframes site-menu-in{from{transform:translateX(25%);opacity:0}to{transform:none;opacity:1}}
@keyframes site-menu-out{to{transform:translateX(25%);opacity:0}}
.site-header[data-site-page].is-compact,body.narrow-story-ready .site-header[data-site-page].is-compact{grid-template-columns:minmax(0,1fr) auto}
.site-header[data-site-page].is-compact>.brand{grid-column:1;grid-row:1;justify-self:start}
.site-header[data-site-page].is-compact>.site-menu-toggle{grid-column:2;grid-row:1;justify-self:end}
.site-header.is-compact .site-shortcuts{position:absolute;left:0;visibility:hidden;pointer-events:none;transform:scale(0);transform-origin:top left}
@media(max-width:380px){.site-header[data-site-page],body.narrow-story-ready .site-header[data-site-page]{gap:.5rem}.site-menu__top{padding-right:1.25rem;padding-left:1.25rem}.site-menu nav{padding-right:1.25rem;padding-left:1.25rem}}
@media(max-width:600px){.site-header[data-site-page]>.brand{--wordmark-width:clamp(7.5rem,34vw,10.5rem);max-width:100%}.site-app-link{font-size:.8rem;padding:.6rem .65rem;max-width:9rem;white-space:normal;text-align:center;line-height:1.2}.site-header-actions{gap:.5rem}}
@media(max-width:380px){.site-app-link{max-width:7rem;font-size:.75rem;padding:.5rem}}
@media(prefers-reduced-motion:reduce){.site-menu[open],.site-menu.is-closing{animation:none}}
/* The story's viewport sizing uses the same physical header on phones. */
:root{--narrow-header:calc(88px + var(--safe-top))}

.site-menu .site-menu-children{padding-left:20px;border-left:1px solid #ffffff40}.site-menu .site-menu-children a{font-size:.95rem;min-height:52px}

.app-return{display:grid;align-items:center;min-height:calc(100svh - 88px);padding-block:clamp(3rem,8vh,7rem)}
.app-return>div{max-width:48rem}.app-return p{margin-block:1.5rem;max-width:42rem}.app-return .button{border-radius:.7rem;background:#0864e8;color:#fff}
.app-return h2{font-size:clamp(2rem,6vw,4rem);line-height:1.1;overflow-wrap:break-word}
