@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:300 500;font-display:swap;src:url(/fonts/dm-sans.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #F4F8FC;--bg-tint: #EAF3FB;--surface: #FFFFFF;--on-dark: #FFFFFF;--surface-soft: #FBFDFF;--surface-mute: #F4F7FB;--field: #F9FBFE;--ink: #061B3A;--text: #3C5573;--muted: #57718C;--muted-2: #4A6580;--text-deep: #2E4A66;--brand: #16736F;--brand-hover: #2D9E9A;--accent: #2D9E9A;--accent-hover: #3BB8B4;--glow: #5BCECE;--brand-wash: #E8F6F5;--brand-line: #BFE3E1;--brand-fade: #F2FAF9;--demo-fade: #E9F5F4;--line: #DFE8F2;--line-soft: #EAF0F7;--line-tint: #D6E5F3;--line-dashed: #B6C6DA;--night: #061B3A;--night-2: #0A2450;--night-line: #143C6E;--night-text: #E8F0FA;--night-muted: #8BA5C0;--night-deep: #03080F;--night-faint: #2A3E58;--ok: #1B9E6E;--ok-text: #12795A;--ok-ink: #0D3B2E;--ok-wash: #E9F9F1;--ok-line: #A9E4C8;--ok-night: #0E3D31;--ok-bright: #2ECC8A;--scene-bg: #EEF3F8;--scene-ground: #E4EBF2;--scene-plinth: #F7FAFC;--scene-wall: #F3F5F7;--scene-floor: #D9E1EA;--scene-tile-line: #C3CFDB;--scene-metal: #2B3440;--scene-metal-2: #59636F;--scene-cabinet: #3B4654;--scene-steel: #A9B3BE;--scene-glass: #BFD6E6;--scene-wood: #B98E62;--scene-wood-dark: #8A6544;--scene-roof: #6E5A47;--scene-fabric: #FBFBF8;--scene-stone: #CFC8BC;--scene-water: #6FB7C9;--scene-foliage: #5E8F6A;--scene-foliage-2: #7FA886;--scene-trunk: #7A6650;--scene-accent: #2D9E9A;--scene-led-ok: #2ECC8A;--scene-led-act: #5BCECE;--scene-led-warn: #F2B33D;--state-ready: #1B9E6E;--state-ink: #061B3A;--state-unknown: #8BA5C0;--font-serif: "Instrument Serif", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--font-mono: "Space Mono", "Courier New", monospace;--container: 1180px;--container-wide: 1280px;--gutter: clamp(18px, 4vw, 40px);--gutter-wide: clamp(20px, 4vw, 48px);--radius-sm: 9px;--radius: 10px;--radius-md: 12px;--radius-lg: 14px;--radius-xl: 18px;--shadow-xs: 0 1px 2px rgba(6, 27, 58, .04);--shadow-card: 0 1px 2px rgba(6, 27, 58, .04), 0 8px 24px rgba(6, 27, 58, .04);--shadow-panel: 0 1px 2px rgba(6, 27, 58, .05), 0 18px 50px rgba(6, 27, 58, .08);--shadow-btn: 0 2px 10px rgba(22, 115, 111, .24);--glow-gradient: radial-gradient(circle at 50% 45%, rgba(91, 206, 206, .26), rgba(45, 158, 154, .09) 45%, rgba(244, 248, 252, 0) 72%)}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-hover)}img{max-width:100%;height:auto}input,select,textarea,button{font:inherit}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}:focus-visible{outline:2px solid var(--brand-hover);outline-offset:3px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--radius)}.skip-link:focus{top:12px;color:#fff}.wrap{max-width:var(--container);margin:0 auto}.wrap-wide{max-width:var(--container-wide);margin:0 auto}.kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--brand);margin:0 0 18px}.on-night .kicker{color:var(--glow)}.pill{display:inline-block;border:1px solid var(--brand-line);background:#ffffffbf;color:var(--brand);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:8px 16px;border-radius:999px}.label{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.note{font-family:var(--font-mono);font-size:11px;line-height:1.8;color:var(--muted);margin:16px 0 0}.accent-italic{font-style:italic;color:var(--accent)}.h2{font-family:var(--font-serif);font-weight:400;font-size:clamp(2.1rem,4.4vw,3.6rem);line-height:1.06;letter-spacing:-.02em;color:var(--ink);margin:0;max-width:24ch}.h2-page{font-family:var(--font-serif);font-weight:400;font-size:clamp(1.9rem,3.6vw,3.2rem);line-height:1.08;letter-spacing:-.015em;color:var(--ink);margin:0;max-width:24ch}.on-night .h2,.on-night .h2-page{color:#fff}.lede{font-size:clamp(1.05rem,1.2vw,1.2rem);line-height:1.6;color:var(--text);max-width:60ch;margin:18px 0 0;text-wrap:pretty}.on-night .lede{color:var(--night-text)}.btn{display:inline-block;font-weight:500;padding:15px 26px;border-radius:var(--radius);border:none;cursor:pointer;white-space:nowrap;line-height:normal;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn-primary{background:var(--brand);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:hover{background:var(--brand-hover);color:#fff}.btn-secondary{background:var(--surface);border:1px solid var(--line);color:var(--ink);font-weight:400}.btn-secondary:hover{border-color:var(--brand-hover);color:var(--brand)}.btn-ghost{border:1px solid var(--line);color:var(--text);font-weight:400}.btn-ghost:hover{border-color:var(--brand);color:var(--brand)}.btn-bright{background:var(--accent);color:var(--night-deep)}.btn-bright:hover{background:var(--accent-hover);color:var(--night-deep)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes glow{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.85;transform:scale(1.04)}}@keyframes draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes flow{to{stroke-dashoffset:-28}}[data-reveal].is-pending{opacity:0}[data-reveal].is-revealed{animation:rise .65s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--reveal, 0) * 80ms)}@media print{[data-reveal]{opacity:1!important;animation:none!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-reveal].is-pending{opacity:1}}
