/* Public chrome: one layout for the masthead and navigation. */
:root{--shell-glass:rgba(252,252,248,.76);--shell-edge:rgba(255,255,255,.92);--shell-shadow:0 8px 32px #242b2910,0 1px 3px #242b2910;--shell-active:#263e32;--shell-active-text:#fff;--shell-text:#252a27}
html[data-theme=dark]{--shell-glass:rgba(35,40,38,.87);--shell-edge:rgba(255,255,255,.2);--shell-shadow:0 8px 32px #0004,0 1px 3px #0003;--shell-active:#d7edb2;--shell-active-text:#1f2e22;--shell-text:#eff1ea}
.glass-surface{background:var(--shell-glass);border:1px solid var(--shell-edge);box-shadow:var(--shell-shadow),inset 0 1px 0 #fff8,inset 0 -1px 0 #ffffff30;-webkit-backdrop-filter:blur(24px) saturate(155%);backdrop-filter:blur(24px) saturate(155%)}
.site-masthead{position:sticky;z-index:50;top:0;max-width:1440px;margin:auto;padding:18px var(--side) 8px}.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:10px 14px;border-radius:28px;color:var(--shell-text)}.site-brand{display:inline-flex;align-items:center;flex-shrink:0;gap:10px;text-decoration:none;color:inherit;letter-spacing:normal;min-height:44px}.site-brand:hover{color:inherit}.site-brand img{display:block;width:40px;height:40px;object-fit:contain;border-radius:50%;flex-shrink:0}.brand-name{font:600 14px/1.3 var(--sans);letter-spacing:-.02em;white-space:nowrap}.brand-caption{display:block;font:400 9px/1.5 var(--sans);letter-spacing:.025em;margin-top:4px;color:var(--muted)}.masthead-actions{display:flex;align-items:center;gap:3px;flex-shrink:0}.shell-control{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--shell-text);text-decoration:none;cursor:pointer;transition:background .2s,box-shadow .2s}.shell-control svg,.site-navigation svg,.menu-grid svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.shell-control:hover{background:#ffffff65;box-shadow:inset 0 0 0 1px var(--shell-edge);color:var(--shell-text)}.shell-control[hidden]{display:none}.site-navigation{display:flex;align-items:center;gap:2px;min-width:0}.nav-link{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;padding:12px 11px;min-height:44px;border-radius:20px;color:var(--shell-text);text-decoration:none;font:500 12px/1.2 var(--sans);letter-spacing:0;white-space:nowrap;transition:background .22s,box-shadow .22s,color .22s}.site-navigation svg{display:none}.nav-link:hover{background:#ffffff85;color:var(--shell-text)}.nav-link.active{background:var(--shell-active);color:var(--shell-active-text);box-shadow:0 3px 9px #20392920,inset 0 1px 0 #ffffff30}.menu-toggle{margin-left:2px}.site-menu{position:fixed;inset:0;max-height:calc(100dvh - 48px);width:min(580px,calc(100% - 32px));padding:30px;border-radius:28px;color:var(--shell-text);overflow-y:auto;overscroll-behavior:contain}.site-menu::backdrop{background:rgba(24,30,29,.28);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.menu-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.menu-heading h2{font:400 48px/1 var(--serif);letter-spacing:-.02em;margin:10px 0}.menu-heading p{margin:0;font-size:9px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.menu-grid a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:15px;padding:16px;color:inherit;text-decoration:none;font-size:14px;min-height:58px}.menu-grid a>span:last-child{margin-left:auto;color:var(--muted)}.menu-grid a:hover{background:var(--glass-strong)}.menu-grid a[aria-current]{background:var(--shell-active);color:var(--shell-active-text);border-color:transparent}.menu-grid a[aria-current]>span:last-child{color:inherit}.menu-utility{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}.menu-utility a{padding:10px 12px;min-height:44px;font-size:12px;color:inherit}html.menu-open{overflow:hidden}.site-footer .footer-brand{display:inline-block;font:400 28px/1.25 var(--serif);letter-spacing:-.015em;text-decoration:none;color:var(--ink);margin-bottom:14px}.footer-brand span{color:var(--blue)}.site-footer{padding-top:48px}.site-footer a:not(.footer-brand){display:inline-flex;align-items:center;min-height:34px}.site-footer div:nth-child(2){gap:0}.site-footer p{line-height:1.7}a,button,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}html{scroll-padding-top:120px}#main{scroll-margin-top:120px}.skip:focus{z-index:100}.detail h1,.collection-head h1{line-height:1.02}html[data-theme=dark] .shell-control:hover,html[data-theme=dark] .nav-link:hover{background:#ffffff14}html[data-theme=dark] .nav-link.active{background:var(--shell-active);color:var(--shell-active-text)}
@media(max-width:1190px){.masthead-inner{gap:12px;padding-inline:10px}.brand-name{font-size:12px}.brand-caption{font-size:8px}.nav-link{padding-inline:9px;font-size:10.5px}.masthead-actions{gap:0}.shell-control{width:40px;height:44px}}
@media(max-width:1090px){.site-masthead{padding:12px var(--side) 8px}.masthead-inner{min-height:64px;gap:12px;padding:8px 12px;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;position:relative}.masthead-inner:before{content:"";position:absolute;inset:0;border-radius:24px;z-index:-1;background:var(--shell-glass);border:1px solid var(--shell-edge);box-shadow:var(--shell-shadow);backdrop-filter:blur(24px) saturate(155%);-webkit-backdrop-filter:blur(24px) saturate(155%)}.brand-name{font-size:14px}.brand-caption{font-size:9px}.shell-control{width:44px}.site-navigation{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(500px,calc(100% - 24px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;border-radius:27px;background:var(--shell-glass);border:1px solid var(--shell-edge);box-shadow:0 10px 40px #15262022,inset 0 1px 0 #fff9,inset 0 -1px 0 #fff5;backdrop-filter:blur(28px) saturate(175%);-webkit-backdrop-filter:blur(28px) saturate(175%)}.nav-enhanced .site-navigation{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-enhanced .site-navigation .nav-secondary{display:none}.site-navigation .nav-link{display:flex;flex-direction:column;min-height:54px;padding:7px 3px;gap:5px;border-radius:21px;font-size:9px}.site-navigation svg{display:block;width:19px;height:19px}.site-footer{padding-bottom:calc(180px + env(safe-area-inset-bottom))}.nav-enhanced .site-footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}html{scroll-padding-top:100px;scroll-padding-bottom:100px}#main{scroll-margin-top:100px}.site-menu{padding:24px}.masthead-actions{gap:0}}
@media(max-width:480px){.site-masthead{padding:10px 12px 6px}.masthead-inner{gap:6px;padding:8px 10px}.site-brand{gap:7px}.site-brand img{width:33px;height:33px}.brand-name{font-size:12px;letter-spacing:-.015em}.brand-caption{font-size:7.5px;letter-spacing:0}.shell-control{width:44px;height:44px}.shell-control svg{width:17px;height:17px}.site-navigation{bottom:calc(10px + env(safe-area-inset-bottom))}.site-menu{padding:20px;max-height:calc(100dvh - 28px)}.menu-grid a{padding:13px 11px;gap:9px;font-size:13px}.menu-heading h2{font-size:42px}.site-menu .shell-control{width:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important}.nav-link,.shell-control{transition:none}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.glass-surface,.site-navigation,.masthead-inner:before{background:var(--paper)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:1px solid var(--ink)}.site-menu::backdrop{backdrop-filter:none;background:#0008}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass-surface,.site-navigation,.masthead-inner:before{background:var(--paper)}}

@media(max-width:360px){.brand-name{font-size:10px}.brand-caption{font-size:6.7px}.site-brand{gap:6px}.site-brand img{width:28px;height:28px}.masthead-inner{padding-inline:8px;gap:4px}}
/* Shared publication metadata across every article surface. */
.publication-meta{display:flex;flex-wrap:wrap;gap:5px 12px;margin:10px 0 16px;font:11px/1.65 Arial,Helvetica,sans-serif;letter-spacing:0;text-transform:none;color:inherit;opacity:.8;overflow-wrap:anywhere}.publication-meta time{font:inherit;color:inherit}.publication-meta .publication-age{font:inherit;font-weight:600;color:inherit}.travel-feature .publication-meta{color:#fff;opacity:1}.archive-list .publication-meta{margin:0;min-width:0}.home-book .publication-meta{font-size:10px}
