/* KAELIS — blog. Usa los tokens de style.css; se carga solo en /blog/. */

/* ---------- Índice ---------- */
.blog-index{padding:clamp(140px,16vh,190px) 0 clamp(72px,9vw,112px)}
.blog-index .eyebrow{margin-bottom:26px}
.blog-index h1{font-family:var(--serif);font-weight:var(--display-w);font-size:clamp(42px,6.2vw,80px);line-height:1;letter-spacing:-.012em;margin-bottom:26px}
.blog-index h1 em{font-style:italic;font-weight:500;color:var(--accent)}
.blog-lead{font-size:19px;line-height:1.62;color:var(--slate);max-width:56ch;margin-bottom:clamp(56px,7vw,88px)}
.blog-empty{color:var(--slate);font-size:17.5px;border-top:1px solid var(--hair);padding-top:30px}

.post-item{display:grid;grid-template-columns:0.9fr 1.1fr;gap:clamp(24px,5vw,72px);padding:42px 0;border-top:1px solid var(--hair);transition:background-color .3s ease}
.post-item:last-child{border-bottom:1px solid var(--hair)}
.post-item:hover{background:linear-gradient(90deg,rgba(143,42,56,.03),transparent 62%)}
.post-item-meta{display:flex;flex-direction:column;gap:12px;padding-top:6px}
.post-item-meta .area-num{min-width:0;padding-top:0}
.post-item-pillar{font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--slate-2)}
.post-item-pillar strong{color:var(--accent);font-weight:500}
.post-item h2{font-family:var(--serif);font-weight:var(--display-w);font-size:clamp(25px,2.9vw,34px);line-height:1.12;letter-spacing:-.008em;margin-bottom:12px}
.post-item h2 a{transition:color .2s ease}
.post-item h2 a:hover{color:var(--accent)}
.post-item h2 em{font-style:italic;color:var(--accent)}
.post-item p{color:var(--slate);font-size:17px;line-height:1.68;max-width:56ch;margin-bottom:18px}

/* ---------- Artículo ---------- */
.post{padding:clamp(130px,15vh,180px) 0 clamp(72px,9vw,112px)}
.post-wrap{max-width:calc(780px + 2 * var(--gutter))}
.post-draft{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;color:var(--wine);background:var(--ivory-2);border-left:2px solid var(--accent);padding:12px 16px;margin-bottom:32px}
.post-crumbs{display:flex;gap:10px;flex-wrap:wrap;font-family:var(--mono);font-size:12.5px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:26px}
.post-crumbs a{border-bottom:1px solid transparent;transition:border-color .2s}
.post-crumbs a:hover{border-color:var(--accent)}
.post-crumbs span:last-child{color:var(--slate-2)}
.post h1{font-family:var(--serif);font-weight:var(--display-w);font-size:clamp(38px,5.4vw,62px);line-height:1.04;letter-spacing:-.01em;margin-bottom:22px}
.post h1 em{font-style:italic;font-weight:500;color:var(--accent)}
.post-lead{font-size:20px;line-height:1.55;color:var(--slate);max-width:60ch;margin-bottom:22px}
.post-meta{display:flex;flex-wrap:wrap;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--slate-2);padding-bottom:34px;border-bottom:1px solid var(--hair);margin-bottom:40px}
.post-cover{margin:0 0 40px}
.post-cover img{display:block;width:100%;height:auto;border:1px solid var(--hair)}

.post-body{color:var(--ink-soft);overflow-wrap:break-word}
.post-body > *:first-child{margin-top:0}
.post-body h2{font-family:var(--serif);font-weight:var(--display-w);font-size:clamp(26px,2.8vw,32px);line-height:1.15;letter-spacing:-.006em;color:var(--ink);margin:52px 0 14px;scroll-margin-top:100px}
.post-body h3{font-family:var(--serif);font-weight:var(--display-w);font-size:clamp(21px,2.2vw,24px);line-height:1.25;color:var(--ink);margin:34px 0 10px;scroll-margin-top:100px}
.post-body p,.post-body li{font-size:18px;line-height:1.75}
.post-body p{margin-bottom:18px}
.post-body ul,.post-body ol{padding-left:1.3em;margin-bottom:18px}
.post-body li{margin-bottom:8px}
.post-body li::marker{color:var(--accent)}
.post-body strong{font-weight:600;color:var(--ink)}
.post-body em{font-style:italic}
.post-body a{color:var(--accent);border-bottom:1px solid var(--hair);transition:border-color .2s}
.post-body a:hover{border-bottom-color:var(--accent)}
.post-body blockquote{border-left:2px solid var(--accent);padding:4px 0 4px 22px;margin:28px 0;font-family:var(--serif);font-style:italic;font-size:22px;line-height:1.5;color:var(--ink)}
.post-body blockquote p{font-size:inherit;line-height:inherit;margin-bottom:0}
.post-body hr{border:0;border-top:1px solid var(--hair);margin:44px 0}
.post-body code{font-family:var(--mono);font-size:.88em;background:var(--ivory-2);padding:2px 6px;border-radius:2px}
.post-body pre{font-family:var(--mono);font-size:14px;line-height:1.6;background:var(--ivory-2);border-left:2px solid var(--hair);padding:16px 18px;margin:0 0 22px;overflow-x:auto}
.post-body pre code{background:none;padding:0;font-size:inherit;border-radius:0}
.post-body img{max-width:100%;height:auto}
.post-table{margin:28px 0;overflow-x:auto}
.post-body table{width:100%;border-collapse:collapse;font-size:16px}
.post-body th,.post-body td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--hair);vertical-align:top}
.post-body th{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--slate)}
.post-figure{margin:32px 0}
.post-figure img{display:block;width:100%;height:auto;border:1px solid var(--hair)}
.post-figure figcaption{font-size:14px;color:var(--slate-2);margin-top:10px}

.post-cta{margin-top:64px;padding:40px 0 36px;border-top:1px solid var(--ink)}
.post-cta .eyebrow{margin-bottom:14px}
.post-cta .post-cta-title{font-family:var(--serif);font-weight:var(--display-w);font-size:clamp(32px,4vw,46px);line-height:1.05;color:var(--ink);max-width:none;margin-bottom:14px}
.post-cta .post-cta-title em{font-style:italic;color:var(--accent)}
.post-cta p{color:var(--slate);font-size:17.5px;max-width:48ch;margin-bottom:24px}
.post-disclaimer{font-size:14px;line-height:1.72;color:var(--slate-2);border-top:1px solid var(--hair);padding-top:22px;max-width:72ch}

.post-related{margin-top:64px}
.post-related .eyebrow{margin-bottom:8px}
.post-related-item{display:flex;flex-direction:column;gap:8px;padding:24px 0;border-bottom:1px solid var(--hair);transition:color .2s}
.post-related-item:hover .post-related-title{color:var(--accent)}
.post-related-pillar{font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--slate-2)}
.post-related-title{font-family:var(--serif);font-weight:var(--display-w);font-size:24px;line-height:1.2}
.post-related-title em{font-style:italic;color:var(--accent)}

.nav-links a[aria-current]{color:var(--ink)}
.nav-links a[aria-current]::after{width:100%}

@media(max-width:840px){
  .post-item{grid-template-columns:1fr;gap:12px;padding:32px 0}
  .post-item-meta{flex-direction:row;flex-wrap:wrap;gap:14px;align-items:baseline}
  .post-body p,.post-body li{font-size:17px}
  .post-lead{font-size:18px}
  .post-body table{font-size:15px}
  .post-body th,.post-body td{padding:10px 8px}
  .post-body blockquote{font-size:20px;padding-left:18px}
}
