@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root{color-scheme:dark;--bg:#05070c;--text:#f2f4f3;--muted:#8b97a4;--accent:#a5f4dc;--line:#232c35}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.site-header{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;justify-content:flex-end;align-items:center;padding:35px 5.5%}
.brand{font:700 14px 'Space Grotesk',sans-serif;letter-spacing:.13em}.brand span,footer span{color:var(--accent)}
nav a,.hero-bottom,footer{font-size:12px;letter-spacing:.04em;color:#aab8bc}nav a:hover,.hero-bottom a:hover,footer a:hover{color:var(--accent)}nav span,.hero-bottom a span{color:var(--accent);margin-left:7px}
.hero{height:100svh;min-height:600px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at 50% 48%,#101e2b 0%,#080d17 38%,#05070c 75%)}
.swarm-wrap,#swarm{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero h1{z-index:1;pointer-events:none;margin:0;padding:0 20px;font:500 clamp(48px,7vw,106px)/1.04 'Space Grotesk',sans-serif;letter-spacing:-.065em;text-shadow:0 2px 40px #050a10,0 0 15px #050a10}
.hero h1 em{font-style:normal;color:#c5f9e9}.hero h1>span{color:#7fe3c7}
.hero-bottom{position:absolute;bottom:35px;left:5.5%;right:5.5%;z-index:1;display:flex;justify-content:space-between}.interaction-hint{color:#849497}
.writing{max-width:1000px;margin:0 auto;padding:120px 6% 130px}.section-heading{margin-bottom:55px}.section-heading h2{margin:0;font:500 clamp(38px,5vw,58px) 'Space Grotesk',sans-serif;letter-spacing:-.05em}.section-heading h2 span{color:var(--accent)}
.article-list{border-top:1px solid var(--line)}.article-card{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:38px 0 42px;border-bottom:1px solid var(--line);scroll-margin-top:25px}.article-index,.article-meta{font:600 10px 'Space Grotesk',sans-serif;letter-spacing:.11em;color:#8aa99e}.article-index span{display:block;color:#65747b;margin-top:8px}.article-meta{display:flex;gap:18px;color:#75848a}.article-meta span:first-child{color:#a5dccc}.article-main h3{margin:13px 0 12px;font:500 clamp(24px,3vw,34px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-.035em}.article-main>p{margin:0;color:#9daab2;font-size:15px;line-height:1.75;max-width:650px}
details{margin-top:22px}summary{display:inline-block;cursor:pointer;list-style:none;font-size:12px;font-weight:700;border-bottom:1px solid #6caa9a;padding-bottom:7px}summary::-webkit-details-marker{display:none}summary span,.permalink span{color:var(--accent);margin-left:8px}details[open] summary span{display:inline-block;transform:rotate(90deg)}
.article-body{max-width:680px;color:#c2ccce;font-size:16px;line-height:1.85;padding-top:18px}.article-body p{margin:0 0 16px}.article-body h4{font:600 18px 'Space Grotesk',sans-serif;color:var(--text);margin:26px 0 9px}.permalink{display:inline-block;margin-top:18px;font-size:12px;color:#8d9d9f}.permalink:hover{color:var(--accent)}
.article-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.source-note{color:#93a6a6;font-size:13px}.diagram{margin:30px 0;padding:22px;border:1px solid #293d42;background:#0b141a}.diagram figcaption{font-size:12px;font-weight:700;color:#d4ede6}.diagram figcaption span{display:block;color:#839a98;font-size:11px;font-weight:400;margin-top:3px}.diagram-flow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px}.diagram-flow span{border:1px solid #385454;padding:9px 10px;color:#c9e6dd;font-size:12px}.diagram-flow b{color:#6eaaa1;font-weight:400}.diagram-flow .diagram-risk{border-color:#b8a86e;color:#eadba5}
footer{border-top:1px solid var(--line);padding:30px 5.5%;display:flex;justify-content:space-between}
@media(max-width:600px){.site-header{padding:25px 6%}.hero{min-height:520px}.hero h1{font-size:clamp(39px,9vw,56px)}.hero-bottom{bottom:25px;left:6%;right:6%}.writing{padding:80px 6% 90px}.section-heading{margin-bottom:35px}.article-card{grid-template-columns:1fr;gap:15px}.article-index span{display:inline;margin-left:7px}.article-main h3{font-size:25px}}
@media(hover:none){.interaction-hint{visibility:hidden}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.interaction-hint{display:none}}
