/* ===================================================================
   Blog de Nyveko — estilos del índice y de los artículos
   Se apoya en /assets/nyveko.css (variables, nav, footer, cta, faq).
   =================================================================== */

/* ---------- Índice del blog ---------- */
.blog-hero{padding:140px clamp(24px,9vw,120px) 34px;max-width:1280px;margin:0 auto}
.blog-hero .eyebrow{display:block;margin-bottom:16px}
.blog-hero h1{font-family:var(--display);font-weight:700;font-size:clamp(38px,6vw,74px);letter-spacing:-.03em;line-height:1.02;max-width:18ch}
.blog-hero .lead{color:var(--muted2);font-size:clamp(16px,1.7vw,20px);line-height:1.6;max-width:64ch;margin-top:20px}

.blog-grid{padding:26px clamp(24px,9vw,120px) 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1280px;margin:0 auto}
@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}}

.post-card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:26px 24px 22px;text-decoration:none;color:var(--fg);overflow:hidden;min-height:240px;transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s}
.post-card:hover{transform:translateY(-5px);border-color:#3a3a3a;box-shadow:0 18px 50px -20px rgba(0,0,0,.9)}
.post-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.post-card:hover::after{transform:scaleX(1)}
.post-card .pc-tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}
.post-card h2{font-family:var(--display);font-weight:700;font-size:21px;line-height:1.16;letter-spacing:-.01em;margin:12px 0 0;color:var(--fg)}
.post-card p{color:var(--muted2);font-size:14px;line-height:1.5;margin:10px 0 0}
.post-card .pc-meta{margin-top:auto;padding-top:18px;font-family:var(--mono);font-size:11.5px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}

/* ---------- Artículo ---------- */
.post{max-width:760px;margin:0 auto;padding:128px clamp(22px,6vw,40px) 24px}
.post .crumbs{font-family:var(--mono);font-size:12px;letter-spacing:.03em;color:var(--muted);margin-bottom:24px}
.post .crumbs a{color:var(--muted2);text-decoration:none}
.post .crumbs a:hover{color:var(--lime)}
.post-meta{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--lime);display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px}
.post-meta .dot{color:var(--muted)}
.post h1{font-family:var(--display);font-weight:700;font-size:clamp(32px,5vw,52px);letter-spacing:-.03em;line-height:1.05;color:var(--fg)}
.post-lead{color:var(--muted2);font-size:clamp(17px,1.9vw,21px);line-height:1.55;margin-top:20px}
.post-capsule{margin:32px 0 8px;padding:22px 24px;background:rgba(212,255,0,.055);border:1px solid rgba(212,255,0,.22);border-left:3px solid var(--lime);border-radius:12px;color:#EDEDE8;font-size:16px;line-height:1.62}
.post-capsule b,.post-capsule strong{color:var(--lime)}

/* Tipografía del cuerpo */
.post-body{margin-top:38px;font-size:17px;line-height:1.75;color:#E7E7E2}
.post-body > *:first-child{margin-top:0}
.post-body h2{font-family:var(--display);font-weight:700;font-size:clamp(25px,3.2vw,34px);letter-spacing:-.02em;line-height:1.16;margin:54px 0 16px;color:var(--fg);scroll-margin-top:96px}
.post-body h3{font-family:var(--display);font-weight:700;font-size:clamp(20px,2.3vw,24px);letter-spacing:-.01em;margin:34px 0 12px;color:var(--fg)}
.post-body p{margin:0 0 20px}
.post-body a{color:var(--lime);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-body a:hover{opacity:.82}
.post-body strong{color:#FAFAF7;font-weight:600}
.post-body em{color:#F2F2ED}
.post-body ul,.post-body ol{margin:0 0 22px;padding-left:24px}
.post-body li{margin:0 0 10px}
.post-body ul li::marker{color:var(--lime)}
.post-body ol li::marker{color:var(--lime);font-family:var(--mono);font-size:.88em}
.post-body blockquote{margin:28px 0;padding:8px 0 8px 22px;border-left:3px solid var(--lime);font-size:19px;line-height:1.55;color:#FAFAF7;font-style:italic}
.post-body table{width:100%;border-collapse:collapse;margin:26px 0;font-size:14.5px;display:block;overflow-x:auto;white-space:normal}
.post-body th,.post-body td{border:1px solid var(--border);padding:11px 14px;text-align:left;vertical-align:top}
.post-body thead th{background:#141414;color:var(--fg);font-family:var(--display);font-weight:600;font-size:13.5px}
.post-body tbody tr:nth-child(even){background:rgba(255,255,255,.02)}
.post-body aside.callout{margin:28px 0;padding:18px 20px;background:var(--card);border:1px solid var(--border);border-radius:12px;font-size:15.5px;line-height:1.62;color:var(--muted2)}
.post-body aside.callout::before{content:"Consejo";display:block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.post-body aside.callout.lime{background:rgba(212,255,0,.06);border-color:rgba(212,255,0,.3);color:#EDEDE8}
.post-body aside.callout.lime::before{content:"Clave";color:var(--lime)}
.post-body pre{margin:24px 0;padding:18px 20px;background:#101010;border:1px solid var(--border);border-radius:12px;overflow-x:auto;font-family:var(--mono);font-size:13.5px;line-height:1.6;color:#D7E7B0}
.post-body code{font-family:var(--mono);font-size:.9em;background:rgba(255,255,255,.06);padding:2px 6px;border-radius:5px;color:#E7E7A0}
.post-body pre code{background:none;padding:0;color:inherit}

/* CTA de servicio relacionado */
.post-cta{max-width:760px;margin:44px auto 0;padding:0 clamp(22px,6vw,40px)}
.post-cta-inner{background:linear-gradient(160deg,#161616,#101010);border:1px solid var(--border);border-radius:18px;padding:32px 30px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
.post-cta-inner .pcx{flex:1 1 300px}
.post-cta-inner h2{font-family:var(--display);font-weight:700;font-size:clamp(21px,2.5vw,27px);letter-spacing:-.02em;line-height:1.12;color:var(--fg);max-width:24ch}
.post-cta-inner p{color:var(--muted2);font-size:14.5px;margin-top:7px}

/* Artículos relacionados */
.related-posts{max-width:1040px;margin:72px auto 0;padding:0 clamp(22px,6vw,40px)}
.related-posts h2{font-family:var(--display);font-weight:700;font-size:24px;margin-bottom:22px;letter-spacing:-.01em;color:var(--fg)}
.rp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:800px){.rp-grid{grid-template-columns:1fr}}
.rp-card{position:relative;display:flex;flex-direction:column;gap:9px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;text-decoration:none;color:var(--fg);transition:border-color .3s,transform .3s}
.rp-card:hover{border-color:#3a3a3a;transform:translateY(-3px)}
.rp-card .pc-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--lime)}
.rp-card h3{font-family:var(--display);font-weight:700;font-size:16px;line-height:1.24;color:var(--fg)}
