*{box-sizing:border-box;margin:0;padding:0}
:root{--paper:#F1F1EF;--ink:#161615;--muted:#5a5a53;--muted2:#67675f;--label:#9a9a93;--gray:#8e8e88;
--divider:#bdbdb6;--soft:#dcdcd6;--blackin:#0d0d0c;--accent:#b8b8b1}
html{-webkit-text-size-adjust:100%}
body{font-family:'Hanken Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased;background:var(--paper);color:var(--ink)}
::selection{background:var(--ink);color:var(--paper)}
a{color:inherit;text-decoration:none}
.mono{font-family:'IBM Plex Mono',monospace}
.serif{font-family:'Newsreader',serif}
.wrap{max-width:1340px;margin:0 auto;padding:0 48px}
/* topbar */
.top{border-bottom:1.5px solid var(--ink)}
.top .in{max-width:1340px;margin:0 auto;padding:18px 48px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.wordmark{font-size:22px;font-weight:800;letter-spacing:-0.04em}
.topnav{display:flex;gap:30px}
.topnav a{font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.04em;transition:opacity .2s}
.topnav a:hover{opacity:.55}
.topright{display:flex;align-items:center;gap:14px}
.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--ink);color:var(--paper);border-radius:100px;font-size:13px;font-weight:600;transition:gap .25s ease}
.pill:hover{gap:11px}
.prof{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.04em;color:var(--muted2);transition:color .2s}
.prof:hover{color:var(--ink)}
/* masthead */
.mast{max-width:1340px;margin:0 auto;padding:64px 48px 40px}
.mast .mrow{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.kick{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--label)}
.mast h1{font-size:104px;line-height:.9;font-weight:700;letter-spacing:-0.045em;margin-top:24px}
.mast h1 em{font-family:'Newsreader',serif;font-style:italic;font-weight:400}
.edition{text-align:right;padding-bottom:10px;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--muted2);line-height:1.9}
.mast .lede{font-family:'Newsreader',serif;font-size:23px;line-height:1.5;color:var(--muted);margin-top:34px;max-width:620px}
/* gpt band */
.gptpad{max-width:1340px;margin:0 auto;padding:0 48px}
.gptband{background:var(--ink);border-radius:12px;padding:34px 40px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.gptband .l{display:flex;align-items:center;gap:24px}
.gptband .ic{width:54px;height:54px;flex:none;border-radius:50%;background:var(--paper);display:flex;align-items:center;justify-content:center;font-size:24px}
.gptband .t{font-size:22px;font-weight:700;letter-spacing:-0.015em;color:var(--paper)}
.gptband .s{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--label);margin-top:6px}
.btn-light{display:inline-flex;align-items:center;gap:10px;padding:16px 30px;background:var(--paper);color:var(--ink);border-radius:100px;font-size:15px;font-weight:600;white-space:nowrap;transition:gap .25s ease}
.btn-light:hover{gap:15px}
.btn-dark{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;background:var(--ink);color:var(--paper);border-radius:100px;font-size:15px;font-weight:600;transition:gap .25s ease}
.btn-dark:hover{gap:16px}
/* cat line */
.cats{max-width:1340px;margin:32px auto 0;padding:22px 48px;border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink)}
.cats .in{display:flex;gap:8px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.cats b{color:var(--gray);cursor:pointer;font-weight:400;transition:color .2s}
.cats b:hover,.cats b.on{color:var(--ink);font-weight:600}
.cats .sep{color:var(--divider)}
/* index + preview */
.idx{max-width:1340px;margin:0 auto;padding:0 48px 90px;display:grid;grid-template-columns:1.45fr 1fr;gap:64px;align-items:start}
.row{display:flex;gap:28px;padding:30px 16px;border-bottom:1px solid var(--soft);cursor:pointer;transition:background .2s ease,padding .2s ease}
.row:hover{background:var(--ink);padding-left:24px;padding-right:24px}
.row:hover .rt,.row:hover .rn,.row:hover .rc{color:var(--paper)}
.row:hover .ra{color:var(--paper)}
.rn{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--label);padding-top:10px;flex:none;width:28px;transition:color .2s}
.rc{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--label);margin-bottom:10px;transition:color .2s}
.rt{font-size:36px;line-height:1.02;font-weight:700;letter-spacing:-0.025em;transition:color .2s}
.ra{font-size:22px;color:var(--divider);padding-top:6px;transition:color .2s}
.aside{position:sticky;top:40px;padding-top:30px}
.ph{aspect-ratio:4/5;border-radius:8px;overflow:hidden;background:repeating-linear-gradient(45deg,#e6e6e1,#e6e6e1 12px,#d9d9d3 12px,#d9d9d3 24px);display:flex;align-items:center;justify-content:center;margin-bottom:26px}
.ph img{width:100%;height:100%;object-fit:cover}
.ph span{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--gray);background:var(--paper);padding:8px 14px;border-radius:4px}
.aside .ac{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--label);margin-bottom:14px}
.aside h2{font-size:30px;line-height:1.08;font-weight:700;letter-spacing:-0.02em}
.aside .ax{font-family:'Newsreader',serif;font-size:18px;line-height:1.55;color:var(--muted);margin-top:16px}
.aside .am{display:flex;align-items:center;gap:14px;margin-top:24px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gray)}
.aside .am .d{color:var(--divider)}
/* newsletter */
.nl{border-top:1.5px solid var(--ink);background:var(--ink)}
.nl .in{max-width:1340px;margin:0 auto;padding:70px 48px;display:flex;align-items:center;justify-content:space-between;gap:60px}
.nl h2{font-size:44px;line-height:1.04;font-weight:700;letter-spacing:-0.025em;color:var(--paper);max-width:560px}
.nl h2 em{font-family:'Newsreader',serif;font-style:italic;font-weight:400;color:var(--accent)}
.nl form{display:flex;gap:12px;flex:1;max-width:440px}
.nl input{flex:1;padding:18px 24px;border-radius:100px;border:1px solid #33332f;background:var(--blackin);color:var(--paper);font-size:15px;font-family:inherit;outline:none}
.nl button{padding:18px 30px;border-radius:100px;border:none;background:var(--paper);color:var(--ink);font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit}
/* footer */
.foot{background:var(--paper)}
.foot .in{max-width:1340px;margin:0 auto;padding:40px 48px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.foot .c{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--label)}
/* fab */
.fab{position:fixed;bottom:28px;right:28px;z-index:50;display:inline-flex;align-items:center;gap:10px;padding:16px 26px;background:var(--ink);color:var(--paper);border-radius:100px;font-size:15px;font-weight:600;box-shadow:0 10px 36px rgba(0,0,0,.28);transition:transform .25s ease}
.fab:hover{transform:translateY(-3px)}
/* article */
.art{max-width:760px;margin:0 auto;padding:60px 48px 40px}
.art .kick{margin-bottom:18px}
.art h1{font-size:clamp(40px,6vw,72px);line-height:.98;font-weight:700;letter-spacing:-0.035em}
.art h1 em{font-family:'Newsreader',serif;font-style:italic;font-weight:400}
.art .ameta{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gray);margin:24px 0 0;padding-bottom:30px;border-bottom:1.5px solid var(--ink);display:flex;gap:14px}
.art .ameta .d{color:var(--divider)}
.prose{max-width:680px;margin:0 auto;padding:0 48px}
.prose p{font-size:18px;line-height:1.65;color:#2c2c28;margin:20px 0}
.prose h2{font-size:30px;font-weight:700;letter-spacing:-0.02em;margin:44px 0 6px}
.prose h3{font-size:22px;font-weight:700;margin:30px 0 4px}
.prose ul{margin:18px 0 18px 4px;list-style:none}
.prose li{font-size:18px;line-height:1.6;color:#2c2c28;padding:6px 0 6px 24px;position:relative}
.prose li::before{content:"—";position:absolute;left:0;color:var(--gray)}
.prose strong{font-weight:700}
.prose a{border-bottom:1px solid var(--divider)}
.prose .serifq{font-family:'Newsreader',serif;font-size:23px;line-height:1.5;color:var(--muted);margin:30px 0}
.backlink{display:inline-block;max-width:760px;margin:30px auto 0;padding:0 48px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gray)}
/* segmentacion */
.seg{display:flex;height:100vh;min-height:680px;position:relative;overflow:hidden}
.seg .half{flex:1;padding:64px 72px;display:flex;flex-direction:column;justify-content:space-between;transition:flex .5s cubic-bezier(.7,0,.2,1);cursor:pointer}
.seg .pat{background:#F7F3EC}.seg .pat:hover{flex:1.45;background:#FBF8F2}
.seg .pro{background:#0B0B0C}.seg .pro:hover{flex:1.45;background:#000}
.seg .hd{display:flex;align-items:center;justify-content:space-between}
.seg .lbl{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.seg .pat .lbl{color:#8a8377}.seg .pat .url{color:#b6ad9d}
.seg .pro .lbl{color:#6e6e74}.seg .pro .url{color:#4a4a50}
.seg .url{font-family:'IBM Plex Mono',monospace;font-size:12px}
.seg .body{max-width:460px}.seg .pro .body{margin-left:auto;text-align:right}
.seg .who{font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px}
.seg .pat .who{color:#a8987c}.seg .pro .who{color:#7d7d86}
.seg h2{font-size:clamp(42px,6vw,62px);line-height:1.02;font-weight:700;letter-spacing:-0.03em}
.seg .pat h2{color:#1a1813}.seg .pro h2{color:#F2F0EC}
.seg .sub{font-size:20px;line-height:1.5;margin-top:24px}
.seg .pat .sub{font-family:'Newsreader',serif;font-size:21px;color:#5c574d}.seg .pro .sub{color:#9a9aa2}
.seg .badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:108px;height:108px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 40px rgba(0,0,0,.28);z-index:2}
.seg .badge span{font-size:23px;font-weight:800;letter-spacing:-0.04em;color:#1a1813}
@media(max-width:760px){
  .wrap,.mast,.gptpad,.cats,.idx,.nl .in,.foot .in,.top .in{padding-left:20px;padding-right:20px}
  .topnav{display:none}.mast{padding:34px 20px 26px}.mast .row{flex-direction:column;align-items:flex-start;gap:16px}
  .mast h1{font-size:50px}.edition{text-align:left;padding-bottom:0}
  .gptband{flex-direction:column;align-items:flex-start;padding:24px;gap:18px}.gptband .btn-light{width:100%;justify-content:center}
  .idx{grid-template-columns:1fr;gap:0;padding-bottom:56px}.aside{display:none}
  .row{padding:22px 2px}.rt{font-size:25px}
  .nl .in{flex-direction:column;align-items:flex-start;padding:48px 20px;gap:26px}.nl h2{font-size:32px}.nl form{width:100%;max-width:none}
  .art,.prose,.backlink{padding-left:20px;padding-right:20px}
  .seg{flex-direction:column;height:auto}.seg .half{min-height:60vh}.seg .pro .body{margin-left:0;text-align:left}.seg .badge{display:none}
  .fab{bottom:18px;right:18px;padding:13px 18px;font-size:14px}
}