
:root{color-scheme:light;--bg:#f4f1eb;--ink:#172b31;--sub:#3c555c;--panel:#ffffff;--accent:#12656d;--accentink:#ffffff;--border:#9aaeb2;--serif:Georgia,"Times New Roman",serif;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.62;font-size:1.07rem}a{color:var(--accent);text-underline-offset:.2em}a:hover{text-decoration-thickness:3px}/* Universal focus state, Erik Kroes, erikkroes.nl/blog/the-universal-focus-state. Applied by Claude 2026-10-29 after the audit; see CHANGELOG. */:focus-visible{outline:.375rem double black;box-shadow:0 0 0 .25rem white;border-radius:.125rem}button{cursor:pointer;font:inherit}button:disabled{cursor:not-allowed}.skip{position:absolute;z-index:99;top:-100px;left:12px;background:var(--ink);color:white;padding:12px}.skip:focus{top:12px;color:white}.shell{max-width:1140px;margin:auto;padding:0 clamp(20px,4vw,50px)}.mast{border-bottom:1px solid var(--border)}.mastinner{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px}.wordmark{text-transform:uppercase;font-weight:900;letter-spacing:.11em;font-size:.79rem;text-decoration:none;color:var(--ink)}nav ul{display:flex;gap:9px;flex-wrap:wrap;list-style:none;padding:0;margin:0}nav a{display:inline-block;padding:7px 12px;text-decoration:none;color:var(--ink);border:1px solid transparent;border-radius:100px;font-size:.89rem;font-weight:700}nav a:hover{border-color:var(--border)}nav [aria-current=page]{background:var(--ink);color:var(--bg)}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-weight:800;font-size:.75rem}.hero{padding:clamp(65px,10vw,125px) 0 70px;position:relative}.hero h1{font-family:var(--serif);font-size:clamp(3.5rem,9vw,7.7rem);letter-spacing:-.065em;line-height:1.01;max-width:1000px;margin:12px 0 30px}.hero h1 em{font-weight:400;color:var(--accent)}.lead{max-width:750px;font-size:clamp(1.22rem,2.5vw,1.65rem);line-height:1.48}.stamp{display:inline-block;transform:rotate(-4deg);border:2px solid currentColor;padding:7px 14px;font-weight:900;font-size:.8rem;letter-spacing:.06em;margin-top:24px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:clamp(22px,4vw,40px);min-width:0}.card h2,.card h3{font-family:var(--serif);font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.13;margin:10px 0 16px}.card p{margin:0 0 16px}.card a{font-weight:800}.card .num{font-size:.78rem;letter-spacing:.14em;font-weight:900}.feature{background:var(--ink);color:#fff;border-radius:22px;padding:clamp(24px,6vw,65px);margin:48px 0}.feature a{color:#c5f4ed}.feature h2{font:normal clamp(2rem,5vw,4rem)/1.13 var(--serif);margin:0 0 20px}.section{padding:32px 0 65px}.section>h2{font:normal clamp(2.3rem,5vw,4rem)/1.12 var(--serif);letter-spacing:-.04em;margin:0 0 20px}.prose{max-width:760px}.prose p{margin:0 0 1.2em}.bigline{font:normal clamp(1.8rem,4vw,3.35rem)/1.25 var(--serif);max-width:900px}.taglist{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0}.tag{border:1px solid currentColor;border-radius:999px;padding:6px 12px;font-size:.86rem;font-weight:750}.button{display:inline-block;background:var(--accent);color:var(--accentink);border:2px solid var(--accent);padding:12px 20px;border-radius:10px;font-weight:850;text-decoration:none}.button:hover{filter:brightness(.9)}button.button{appearance:none}.output{font:normal clamp(1.55rem,3.5vw,2.6rem)/1.25 var(--serif);min-height:120px;margin:22px 0}.output .source{display:block;font:italic clamp(.95rem,1.4vw,1.1rem)/1.4 var(--serif);opacity:.85;margin-top:.6em}.output .source:empty{display:none}.callout{border-left:6px solid var(--accent);padding:10px 25px;background:var(--panel);margin:25px 0}footer{margin-top:50px;border-top:1px solid var(--border);padding:30px 0 50px}footer p{font-size:.93rem}.tiny{font-size:.87rem;color:var(--sub)}.kicker{font-size:.85rem;color:var(--sub);font-weight:850;letter-spacing:.09em;text-transform:uppercase}.divider{height:1px;background:var(--border);margin:40px 0}details{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 20px;margin:12px 0}summary{cursor:pointer;font-weight:850}details p{margin-bottom:3px}.full{grid-column:1/-1}.catglyph{font-size:clamp(5rem,16vw,11rem);line-height:1;display:block;filter:grayscale(1);margin:25px 0}.museum-quote{font:italic clamp(1.5rem,3vw,2.25rem)/1.4 var(--serif)}.warning{background:#e0ece7;border:1px solid #71998e;border-radius:10px;padding:15px 18px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.public{--bg:#f4f1eb;--ink:#172b31;--sub:#3c555c;--accent:#12656d;--border:#99aaab}body.os{--bg:#e8f2ee;--ink:#102e2e;--sub:#315756;--accent:#165c50;--border:#8cac9e}body.museum{--bg:#f3eef3;--ink:#32223d;--sub:#604b68;--accent:#643c75;--border:#b4a0b9}body.salem{--bg:#13271f;--ink:#f3f4e8;--sub:#c8d5c6;--panel:#20382d;--accent:#a9e6d1;--accentink:#10261e;--border:#6c8d7c;color-scheme:dark}body.salem .feature{background:#283e34}body.salem .feature a{color:#c3f8e6}body.salem .warning{background:#283e34;border-color:#86a999}body.salem .wordmark{color:#f3f4e8}body.salem .skip{background:#f3f4e8;color:#13271f}body.salem .tiny{color:#d0ddd0}
@media(max-width:680px){.grid{grid-template-columns:1fr}.hero{padding:55px 0}.hero h1{font-size:clamp(2.4rem,12vw,5rem)/* was clamp(3.1rem,15vw,5rem); Claude 2026-10-29, reflow at 320 px, see CHANGELOG */}nav ul{gap:2px}nav a{padding:6px 8px}.mastinner{align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
