:root{--ink:#241f2c;--ink-soft:#5a5466;--paper:#f8f5ef;--paper-2:#efe9df;--card:#fffdf9;--teal:#2e2242;--teal-2:#5b4278;--brass:#a9822f;--gold:#d8b46a;--rule:#e2d9c9;--night:#231a33;--night-2:#2f2445;--cream:#f3efe7;--mist:#cdc6d8;--serif:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,Segoe UI,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.7;font-size:17.5px;-webkit-font-smoothing:antialiased}
a{color:var(--teal-2)}
html[data-lang="en"] [lang="es"]:not(html),html[data-lang="es"] [lang="en"]:not(html){display:none!important}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
header.top{position:sticky;top:0;z-index:20;background:rgba(35,26,51,.94);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
.brand{font-family:var(--serif);font-weight:600;font-size:19px;color:var(--cream);text-decoration:none;white-space:nowrap}
.brand em{font-style:normal;color:var(--gold)}
nav.main{display:flex;gap:22px;align-items:center}
nav.main a{color:var(--mist);text-decoration:none;font-size:14.5px;font-weight:500}
nav.main a:hover,nav.main a[aria-current]{color:var(--gold)}
.lang{display:inline-flex;border:1px solid rgba(255,255,255,.22);border-radius:999px;overflow:hidden}
.lang button{background:none;border:0;padding:6px 12px;font:600 12.5px var(--sans);letter-spacing:.06em;color:var(--mist);cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--gold);color:var(--night)}
@media (max-width:700px){nav.main a.hide-sm{display:none}}
.bhero{color:var(--cream);padding:72px 0 64px;background:radial-gradient(700px 420px at 92% 18%,rgba(216,180,106,.16),transparent 62%),linear-gradient(160deg,var(--night) 0%,var(--night-2) 100%)}
.eyebrow{font:600 12.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.dewey{font-family:"Courier New",ui-monospace,monospace;letter-spacing:.05em}
.bhero h1{font-family:var(--serif);font-weight:600;font-size:clamp(32px,4.6vw,52px);line-height:1.1;max-width:20em}
.bhero .dek{color:var(--mist);font-size:19px;margin-top:18px;max-width:40em}
.meta{color:var(--mist);font-size:14.5px;margin-top:22px}
.post{max-width:720px;margin:0 auto;padding:56px 24px 72px}
.post p{margin:0 0 1.15em}
.post h2{font-family:var(--serif);font-weight:600;color:var(--teal);font-size:clamp(23px,2.6vw,29px);line-height:1.25;margin:1.8em 0 .6em}
.post ol,.post ul{margin:0 0 1.2em 1.3em}
.post li{margin:0 0 .6em}
.post strong{color:var(--teal)}
.post blockquote{border-left:3px solid var(--gold);padding:4px 0 4px 20px;margin:1.6em 0;font-family:var(--serif);font-size:21px;line-height:1.45;color:var(--teal)}
.post .sources{margin-top:2.6em;padding-top:1.4em;border-top:1px solid var(--rule);font-size:15px;color:var(--ink-soft)}
.post .sources h3{font:600 13px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:10px}
.post .sources li{margin-bottom:.4em}
.author{display:flex;gap:18px;align-items:center;margin-top:2.4em;padding:22px;background:var(--card);border:1px solid var(--rule);border-radius:10px}
.author img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:none}
.author p{margin:0;font-size:15.5px;color:var(--ink-soft)}
.author strong{display:block;font-family:var(--serif);font-size:18px;color:var(--teal)}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-weight:600;font-size:15px;text-decoration:none;border:1px solid var(--teal);color:var(--teal)}
.btn.primary{background:var(--teal);color:var(--paper)}
.list{max-width:820px;margin:0 auto;padding:56px 24px 80px}
.card{display:block;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:28px 30px;margin-bottom:22px;transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-2px);box-shadow:0 18px 40px -26px rgba(46,34,66,.45)}
.card .when{font:600 12.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}
.card h2{font-family:var(--serif);font-weight:600;color:var(--teal);font-size:25px;line-height:1.25;margin:8px 0 10px}
.card p{color:var(--ink-soft)}
.card .more{display:inline-block;margin-top:12px;font-weight:600;color:var(--teal-2)}
footer{background:#1a1326;color:var(--mist);font-size:14px;padding:28px 0}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{color:var(--gold)}
