@font-face{font-family:'Newsreader';font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-var-normal.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-var-italic.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/hanken-grotesk-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/hanken-grotesk-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/hanken-grotesk-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-latin-500-normal.woff2) format('woff2')}
:root{--canvas:#0D0F13;--panel:#151821;--panel-2:#1B1F2A;--accent:#C8A165;--accent-hover:#DDB77A;--accent-muted:#6E5A3C;--text-secondary:#B8B6AD;--text-primary:#ECE6DA;--line:rgba(200,161,101,.18);--line-strong:#7E6A4A;--display:'Newsreader',Georgia,serif;--body:'Hanken Grotesk',system-ui,sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--canvas);color:var(--text-primary);font:400 18px/1.65 var(--body);-webkit-font-smoothing:antialiased;animation:pagein 1s var(--ease) both}
@keyframes pagein{from{opacity:0}to{opacity:1}}
img{display:block;max-width:100%}
a{color:inherit}
.mono{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--accent);color:var(--canvas);padding:10px 16px;border-radius:8px;transition:top .3s var(--ease)}
.skip:focus{top:16px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
nav.top{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px clamp(16px,4vw,48px);background:rgba(13,15,19,.86);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid rgba(236,230,218,.07)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand svg.logo{width:30px;height:30px;color:var(--accent)}
.brand .wm{display:grid;gap:5px;font:600 13px/1 var(--body);letter-spacing:.34em}
.brand .wm b{color:var(--accent);font-weight:500;font-size:8.6px;letter-spacing:.62em}
.links{display:flex;align-items:center;gap:26px}
.links a{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--text-secondary);transition:color .3s var(--ease)}
.links a:hover{color:var(--text-primary)}
.links a:not(.btn){display:inline-flex;align-items:center;min-height:24px;padding:3px 2px}
.links a.btn{font:500 13px/1 var(--body);letter-spacing:0;text-transform:none;color:var(--canvas)}
.links a.btn:hover{color:var(--canvas)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 22px;border-radius:99px;border:1px solid var(--accent);background:var(--accent);color:var(--canvas);font:500 15px/1 var(--body);text-decoration:none;cursor:pointer;transition:background .35s var(--ease),transform .35s var(--ease),border-color .35s var(--ease)}
.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px)}
.btn.sm{padding:10px 16px;font-size:13px}
@media (max-width:900px){.links a:not(.btn){display:none}.links a.lang{display:inline-flex}}
main{padding:132px clamp(16px,6vw,96px) 40px}
.post{max-width:760px;margin:0 auto}
.crumbs{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--accent)}
.crumbs span[aria-hidden]{color:var(--accent-muted)}
.post header{margin-bottom:40px;padding-bottom:34px;border-bottom:1px solid var(--line)}
.post .meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;margin:0 0 20px;color:var(--text-secondary);font-size:14px}
.post .meta .mono{color:var(--accent)}
.post h1{margin:0;font:400 clamp(34px,5.2vw,58px)/1.08 var(--display);letter-spacing:-.015em;text-wrap:balance}
.post .lede{color:var(--text-secondary);font-size:20px;line-height:1.55;margin:22px 0 0}
.body h2{margin:50px 0 14px;font:400 clamp(26px,3vw,34px)/1.15 var(--display);letter-spacing:-.01em}
.body h3{margin:34px 0 10px;font:600 18px/1.35 var(--body)}
.body p{margin:0 0 20px}
.body ul,.body ol{margin:0 0 22px;padding-left:22px}
.body li{margin:0 0 10px}
.body li::marker{color:var(--accent)}
.body strong{font-weight:600;color:var(--text-primary)}
.body a{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}
.body a:hover{color:var(--text-primary)}
.tbl{overflow-x:auto;margin:6px 0 26px;border:1px solid var(--line);border-radius:4px;background:var(--panel)}
table{border-collapse:collapse;width:100%;font-size:16px}
th,td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top}
th{font:500 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
td:nth-child(n+2),th:nth-child(n+2){text-align:right;white-space:nowrap}
tr.sum td{background:rgba(200,161,101,.07)}
tbody tr:last-child td{border-bottom:0}
.faq{margin:56px 0 0}
.faq h2{margin:0 0 18px;font:400 clamp(26px,3vw,34px)/1.15 var(--display)}
details{border-bottom:1px solid var(--line)}
details:first-of-type{border-top:1px solid var(--line)}
summary{cursor:pointer;list-style:none;padding:18px 36px 18px 0;position:relative;font:500 18px/1.4 var(--body)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:16px;color:var(--accent);font:300 24px/1 var(--display);transition:transform .3s var(--ease)}
details[open] summary::after{transform:rotate(45deg)}
details div{padding:0 0 20px;color:var(--text-secondary)}
details div p{margin:0 0 12px}
.cta{margin:64px 0 0;padding:36px clamp(22px,4vw,44px);border:1px solid var(--accent);border-radius:20px;background:linear-gradient(180deg,rgba(200,161,101,.13),rgba(200,161,101,.02) 55%),var(--panel)}
.cta .mono{color:var(--accent)}
.cta h2{margin:12px 0 10px;font:400 clamp(26px,3vw,34px)/1.15 var(--display)}
.cta p{margin:0 0 24px;color:var(--text-secondary)}
.more{margin:56px 0 0;padding-top:34px;border-top:1px solid var(--line)}
.more h2{margin:0 0 16px;font:400 24px/1.2 var(--display)}
.more ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.more li{display:grid;gap:4px}
.more a{font:400 22px/1.25 var(--display);text-decoration:none;color:var(--text-primary)}
.more a:hover{color:var(--accent-hover)}
.more span{color:var(--text-secondary);font-size:16px}
.index header{border-bottom:0;padding-bottom:0;margin-bottom:12px}
.index header .mono{color:var(--accent)}
.index h1{margin-top:14px}
.cards{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.card{padding:30px 28px;background:var(--panel);border:1px solid var(--line);border-radius:18px;display:grid;gap:12px}
.card .mono{color:var(--accent);font-size:11px}
.card h2{margin:0;font:400 clamp(24px,2.6vw,30px)/1.2 var(--display)}
.card h2 a{text-decoration:none}
.card h2 a:hover{color:var(--accent-hover)}
.card p{margin:0;color:var(--text-secondary)}
footer{padding:48px clamp(16px,6vw,96px) 40px;border-top:1px solid var(--line);color:var(--text-secondary);font-size:14px;margin-top:40px}
footer .wrap{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:baseline}
footer .fbrand{display:flex;align-items:center;gap:14px}
footer .fbrand svg{width:26px;height:26px;flex:0 0 26px;color:var(--accent)}
footer .fbrand a{display:inline-flex;align-items:center;min-height:24px}
footer .flinks{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
footer .flinks a{display:inline-flex;align-items:center;min-height:24px;color:var(--text-secondary);text-decoration:underline;text-underline-offset:3px}
footer .flinks a:hover{color:var(--accent)}
@media (max-width:720px){main{padding-top:112px}body{font-size:17px}.post .lede{font-size:18px}table{font-size:14px}th,td{padding:10px 9px}th{white-space:normal;font-size:10px;letter-spacing:.08em}.card{padding:24px 20px}}
@media (prefers-reduced-motion:reduce){body{animation:none}}
