:root{--ink:#101418;--ink-soft:#1B2128;--paper:#FAF8F3;--paper-dim:#F1EDE3;--tag:#FFD644;--tag-deep:#E8BD1E;--profit:#148A4E;--loss:#D42B2B;--mut:#8A93A0;--mut-paper:#7A7264;--disp:'Archivo Black',system-ui,sans-serif;--body:'Inter',system-ui,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit}
.topbar{background:var(--ink);padding:16px 0}
.wrap{max-width:760px;margin:0 auto;padding:0 20px}
.wrapwide{max-width:1060px;margin:0 auto;padding:0 20px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--paper);margin-left:8px}
.brandtag{background:var(--tag);color:var(--ink);font-family:var(--disp);font-size:17px;padding:10px 13px 8px;border-radius:8px;letter-spacing:1px;line-height:1}
.brandname{font-family:var(--disp);font-size:16px}
.topnav{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.topnav .links{display:flex;gap:16px;font-size:14px}
.topnav .links a{color:#C7CDD6;text-decoration:none;font-weight:600}
.topnav .links a:hover{color:var(--tag)}
.crumbs{font-size:13px;color:var(--mut-paper);padding:18px 0 0}
.crumbs a{color:var(--mut-paper)}
article{padding:26px 0 40px}
h1{font-family:var(--disp);font-size:clamp(26px,4.5vw,40px);line-height:1.12;margin-bottom:12px}
.meta{font-family:var(--mono);font-size:12.5px;color:var(--mut-paper);letter-spacing:.5px;margin-bottom:26px}
h2{font-family:var(--disp);font-size:clamp(19px,3vw,25px);margin:38px 0 12px}
h3{font-size:18px;font-weight:700;margin:26px 0 8px}
p{margin-bottom:14px;color:#2A323C}
ul,ol{margin:0 0 16px 22px;color:#2A323C}
li{margin-bottom:6px}
strong{color:var(--ink)}
.fig{margin:28px 0;background:#fff;border:1.5px solid #E4DECE;border-radius:12px;padding:18px}
.fig svg{width:100%;height:auto;display:block}
.figcap{font-size:13px;color:var(--mut-paper);margin-top:10px;text-align:center;font-family:var(--mono)}
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15px}
th,td{text-align:left;padding:9px 11px;border-bottom:1.5px dashed #D8D1BE}
th{font-family:var(--mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--mut-paper)}
.cta{background:var(--ink);color:var(--paper);border-radius:12px;padding:22px 24px;margin:30px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.cta .t{font-family:var(--disp);font-size:17px}
.cta .d{font-size:14px;color:#C7CDD6;margin-top:3px}
.cta a{background:var(--tag);color:var(--ink);font-weight:700;padding:11px 18px;border-radius:8px;text-decoration:none;white-space:nowrap}
.related{border-top:1.5px dashed #D8D1BE;margin-top:36px;padding-top:22px}
.related h2{margin-top:0;font-size:18px}
.related a{display:block;padding:7px 0;font-weight:600;color:#2A323C;text-decoration:none}
.related a:hover{color:var(--tag-deep);text-decoration:underline}
.postgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0 50px}
@media(max-width:700px){.postgrid{grid-template-columns:1fr}}
.postcard{background:#fff;border:1.5px solid #E4DECE;border-radius:12px;padding:20px;text-decoration:none;color:var(--ink);display:block;transition:transform .12s,border-color .12s}
.postcard:hover{transform:translateY(-2px);border-color:var(--tag-deep)}
.postcard .t{font-family:var(--disp);font-size:16.5px;line-height:1.3}
.postcard .d{font-size:14px;color:#6b6455;margin-top:8px}
.postcard .m{font-family:var(--mono);font-size:11.5px;color:var(--mut-paper);margin-top:12px}
footer{background:var(--ink);color:var(--mut);padding:26px 0;font-size:13.5px}
footer .frow{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
footer a{color:#C7CDD6;text-decoration:none;font-weight:600}

.fcols{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-bottom:26px}
.fcols h4{font-family:var(--mono,monospace);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--mut);margin-bottom:10px}
.fcols a{display:block;font-weight:500;font-size:13px;line-height:1.4;padding:3px 0}
@media(max-width:900px){.fcols{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.fcols{grid-template-columns:repeat(2,1fr);gap:16px}}
