:root{--bg:#fafaf7;--fg:#0e0e0e;--muted:#6b6b6b;--line:#dcdcd6;--accent:#c8403a;--paper:#fff;--grid:12}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{overflow-x:hidden}body{font-family:"Helvetica Neue","Inter Display","Neue Haas Grotesk","Arial Narrow",sans-serif;background:var(--bg);color:var(--fg);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}.mono{font-family:"IBM Plex Mono","JetBrains Mono","Courier New",monospace;letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;color:var(--muted)}img{width:100%}.container{max-width:1240px;margin:0 auto;padding:0 32px}a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease,color .2s ease}a:hover{border-color:var(--accent);color:var(--accent)}h1,h2,h3,h4{font-weight:600;letter-spacing:-.01em;line-height:1.15}h1{font-size:clamp(2.4rem,5.4vw,4.6rem);margin-bottom:1rem}h2{font-size:clamp(1.6rem,2.8vw,2.2rem);margin:2.4rem 0 1rem;border-top:1px solid var(--line);padding-top:1.4rem}h3{font-size:1.15rem;margin:1.6rem 0 .6rem}p{margin:0 0 1rem;max-width:62ch}ul,ol{margin:0 0 1rem 1.2rem}li{margin-bottom:.35rem}img{max-width:100%;height:auto;display:block}.site-header{position:sticky;top:0;z-index:50;background:rgba(250,250,247,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:18px 10px;gap:16px}.brand{display:flex;align-items:baseline;gap:6px;font-weight:700;font-size:1.4rem;letter-spacing:-.02em}.brand .dot{width:10px;height:10px;background:var(--accent);border-radius:50%;display:inline-block;align-self:center}.brand:hover{border-bottom:none;color:var(--fg)}.nav-primary{display:flex;flex-wrap:wrap;gap:28px;align-items:center}.nav-primary a{font-size:.92rem;position:relative;padding:6px 0}.nav-primary a.active{color:var(--accent)}.nav-primary a.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--accent)}.hero{background:#111;color:#fafaf7;padding:96px 0 88px;border-bottom:1px solid var(--line)}.hero .container{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px}.hero h1{color:#fff;max-width:18ch}.hero .tagline{color:#bdbdbd;max-width:34ch;font-size:1.05rem}.hero .mono{color:#9d9d9d}.grid{display:flex;flex-wrap:wrap;gap:32px}.col-8{flex:1 1 660px}.col-4{flex:1 1 300px}.facts{display:flex;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:48px 0}.facts .fact{flex:1 1 220px;padding:36px 28px;border-right:1px solid var(--line)}.facts .fact:last-child{border-right:none}.facts .num{font-size:3rem;font-weight:600;letter-spacing:-.03em}.facts .lbl{margin-top:8px;color:var(--muted);font-size:.9rem;max-width:30ch}.pullquote{border-top:2px solid var(--fg);border-bottom:2px solid var(--fg);padding:36px 0;margin:36px 0;font-size:1.5rem;line-height:1.35;font-weight:500;max-width:46ch}.pullquote cite{display:block;margin-top:14px;font-size:.85rem;font-style:normal;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.faq{border-top:1px solid var(--line);margin-top:32px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}.faq summary:after{content:"+";font-family:monospace;font-weight:400}.faq details[open] summary:after{content:"–"}.faq p{margin-top:10px;color:#333}.subscribe{background:#0e0e0e;color:#fafaf7;padding:64px 0;margin-top:64px}.subscribe .container{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end;justify-content:space-between}.subscribe h2{border-top:none;padding-top:0;color:#fff;max-width:18ch}.subscribe form{display:flex;flex-wrap:wrap;gap:10px;flex:1 1 420px}.subscribe input{flex:1 1 160px;background:0 0;color:#fff;border:1px solid #3a3a3a;padding:14px 16px;font:inherit;outline:none}.subscribe input::placeholder{color:#8d8d8d}.subscribe input:focus{border-color:var(--accent)}.subscribe button{background:var(--accent);color:#fff;border:none;padding:14px 28px;font:inherit;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:transform .15s ease,background .2s ease}.subscribe button:hover{background:#a8332e;transform:translateY(-1px)}.subscribe .legal{flex-basis:100%;color:#7a7a7a;font-size:.78rem;margin-top:8px}.cta{display:inline-block;background:var(--accent);color:#fff !important;padding:16px 30px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;font-size:.92rem;border:none;cursor:pointer;transition:background .2s ease}.cta:hover{background:#a8332e;border-color:transparent}.article-wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:48px;padding:64px 0}.article{flex:1 1 700px;max-width:820px;margin:0 auto}.article p,.article ul,.article ol{font-size:1.06rem;color:#1a1a1a}.aside{flex:1 1 240px}.aside .card{border:1px solid var(--line);padding:24px;margin-bottom:20px;background:var(--paper)}.aside h3{margin-top:0}.breadcrumb{font-size:.82rem;color:var(--muted);margin-bottom:24px}.breadcrumb a:hover{color:var(--accent)}.meta{display:flex;flex-wrap:wrap;gap:20px;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:18px 0 36px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:32px 0}.tags span{border:1px solid var(--line);padding:6px 12px;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.posts-list{display:flex;flex-wrap:wrap;gap:24px;margin:32px 0}.post-card{flex:1 1 280px;border:1px solid var(--line);background:var(--paper);padding:28px;transition:transform .2s ease,border-color .2s ease;display:flex;flex-direction:column;gap:10px}.post-card:hover{transform:translateY(-3px);border-color:var(--accent)}.post-card h3{margin:0;font-size:1.2rem}.post-card .mono{display:block}.compact-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}.compact-list a{display:flex;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}.compact-list a:hover{color:var(--accent);border-color:var(--accent)}.compact-list .idx{font-family:monospace;color:var(--muted);font-size:.85rem}.disclaimer{border:1px solid var(--line);background:var(--paper);padding:24px;margin:48px 0 0;font-size:.88rem;color:#444}.disclaimer strong{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--accent);margin-bottom:8px}.author-box{display:flex;flex-wrap:wrap;gap:18px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:32px 0}.author-box .ini{width:64px;height:64px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.4rem}.author-box .info p{margin:4px 0;font-size:.95rem;color:var(--muted)}.author-box .info strong{color:var(--fg)}.share-floating{position:sticky;top:120px;display:flex;flex-direction:column;gap:10px;align-self:flex-start;flex:0 0 56px}.share-floating a{width:42px;height:42px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:.78rem;background:var(--paper)}.share-floating a:hover{border-color:var(--accent);color:var(--accent)}.site-footer{background:#0e0e0e;color:#9d9d9d;padding:72px 0 40px;margin-top:64px}.footer-inner{display:flex;flex-wrap:wrap;gap:60px;justify-content:space-between}.footer-brand{flex:1 1 340px}.footer-brand .brand{color:#fff;font-size:2rem;margin-bottom:16px}.footer-brand p{color:#7a7a7a;max-width:38ch}.footer-cols{flex:1 1 460px;display:flex;flex-wrap:wrap;gap:48px}.footer-cols .col{flex:1 1 180px}.footer-cols h4{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}.footer-cols ul{list-style:none;margin:0;padding:0}.footer-cols li{margin-bottom:10px}.footer-cols a{color:#9d9d9d}.footer-cols a:hover{color:var(--accent)}.copy{margin-top:48px;border-top:1px solid #1f1f1f;padding-top:24px;color:#5a5a5a;font-size:.82rem}.cc-banner{position:fixed;left:0;right:0;bottom:0;background:#0e0e0e;color:#fff;padding:18px 32px;display:none;z-index:1000;border-top:2px solid var(--accent)}.cc-banner.show{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}.cc-banner p{margin:0;color:#cfcfcf;flex:1 1 360px;font-size:.9rem;max-width:60ch}.cc-banner .cc-btns{display:flex;flex-wrap:wrap;gap:10px}.cc-banner button{padding:12px 18px;border:none;font:inherit;font-weight:600;font-size:.82rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em}.cc-banner .accept{background:var(--accent);color:#fff}.cc-banner .customize{background:#fff;color:#0e0e0e}.cc-banner .reject{background:0 0;color:#fff;border:1px solid #555}.cc-modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;z-index:1100;padding:24px}.cc-modal.show{display:flex}.cc-modal .box{background:#fff;color:#0e0e0e;max-width:560px;width:100%;padding:36px}.cc-modal h3{margin-bottom:18px}.cc-cat{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0}.cc-cat:last-of-type{border-bottom:1px solid var(--line)}.cc-cat .info p{margin:4px 0;color:var(--muted);font-size:.85rem;max-width:38ch}.switch{position:relative;width:46px;height:26px;flex:0 0 auto}.switch input{opacity:0;width:0;height:0}.switch .slider{position:absolute;inset:0;background:#bcbcbc;border-radius:30px;transition:.2s}.switch .slider:before{content:"";position:absolute;height:20px;width:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+.slider{background:var(--accent)}.switch input:checked+.slider:before{transform:translateX(20px)}.switch input:disabled+.slider{opacity:.65}.cc-modal .save{margin-top:20px;background:#0e0e0e;color:#fff;border:none;padding:14px 22px;font:inherit;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em}.err-page{padding:120px 0;text-align:center}.err-page .code{font-family:monospace;font-size:6rem;color:var(--accent);margin-bottom:18px}@media (max-width:720px){.container{padding:0 20px}.hero{padding:64px 0 56px}.article-wrap{padding:40px 0;gap:24px}.share-floating{flex-direction:row;position:static;flex:1 1 100%}.facts .fact{border-right:none;border-bottom:1px solid var(--line)}}