/* Q.AI · Blog — marca v4 (ink + teal + Space Grotesk/Inter/JetBrains Mono) */
:root{
  --ink:#0E1A2B; --ink-deep:#091320; --ink-surface:#13253C; --ink-surface2:#1B3350;
  --teal:#1FB59D; --teal-bright:#2FD3B8; --teal-deep:#0E7C6B;
  --light:#EAF0F2; --fg-muted:#9DB0C4; --fg-soft:#6C819A; --fg-faint:#4C6076;
  --rule:rgba(234,240,242,0.10); --rule-strong:rgba(234,240,242,0.17); --rule-teal:rgba(31,181,157,0.30);
  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-xl:26px; --r-pill:999px;
  --font-display:'Space Grotesk',system-ui,sans-serif;
  --font-body:'Inter',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  --font-mono:'JetBrains Mono','IBM Plex Mono',ui-monospace,monospace;
  --ease:cubic-bezier(0.16,1,0.3,1); --dur:200ms;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:clip}
body{background:var(--ink-deep);color:var(--light);font-family:var(--font-body);line-height:1.65;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:var(--teal-bright);text-decoration:none;transition:color var(--dur) var(--ease)}
a:hover{color:var(--light)}
img{max-width:100%}

/* ── Barra superior mini ── */
.b-top{position:sticky;top:0;z-index:50;background:rgba(9,19,32,0.85);backdrop-filter:blur(16px);border-bottom:1px solid var(--rule)}
.b-top-in{max-width:1080px;margin:0 auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.b-lockup{display:flex;align-items:center;gap:9px;color:var(--light)}
.b-lockup .mark{width:26px;height:26px;flex-shrink:0}
.b-wordmark{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:-0.02em}
.b-wordmark .node{color:var(--teal)}
.b-div{width:1px;height:15px;background:var(--rule-strong);margin:0 3px}
.b-tag{font-family:var(--font-mono);font-weight:600;font-size:10.5px;text-transform:uppercase;letter-spacing:0.13em;color:var(--fg-muted)}
.b-actions{display:flex;align-items:center;gap:14px}
.b-actions a{font-size:13px;color:var(--fg-muted);font-weight:500}
.b-actions a:hover{color:var(--light)}
.b-cta{background:linear-gradient(135deg,var(--teal),var(--teal-bright));color:#04140f !important;font-weight:700;padding:8px 15px;border-radius:var(--r-pill);font-size:13px}
.b-cta:hover{color:#04140f !important;transform:translateY(-1px)}
@media(max-width:560px){.b-tag,.b-div{display:none}}

/* ── Índice del blog ── */
.b-hero{max-width:1080px;margin:0 auto;padding:64px 22px 34px}
.b-eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--teal)}
.b-hero h1{font-family:var(--font-display);font-size:clamp(2.1rem,5vw,3.2rem);font-weight:700;letter-spacing:-0.02em;line-height:1.08;margin:12px 0 14px}
.b-hero p{font-size:1.12rem;color:var(--fg-muted);max-width:60ch;line-height:1.6}
.b-grid{max-width:1080px;margin:0 auto;padding:8px 22px 80px;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}
.b-card{display:flex;flex-direction:column;background:rgba(255,255,255,0.02);border:1px solid var(--rule);border-radius:var(--r-lg);padding:26px;transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease);min-height:230px}
.b-card:hover{transform:translateY(-4px);border-color:var(--rule-teal)}
.b-card .emoji{font-size:30px;line-height:1;margin-bottom:14px}
.b-card h2{font-family:var(--font-display);font-size:1.28rem;font-weight:700;letter-spacing:-0.01em;line-height:1.2;color:var(--light);margin-bottom:9px}
.b-card p{font-size:0.94rem;color:var(--fg-muted);line-height:1.55;flex:1}
.b-card .meta{margin-top:16px;font-family:var(--font-mono);font-size:11px;color:var(--fg-soft);display:flex;align-items:center;gap:8px}
.b-card .arrow{color:var(--teal);font-weight:700;margin-left:auto;transition:transform var(--dur) var(--ease)}
.b-card:hover .arrow{transform:translateX(3px)}

/* ── Artículo ── */
.article{max-width:740px;margin:0 auto;padding:56px 22px 0}
.article .back{font-family:var(--font-mono);font-size:12px;color:var(--fg-soft);display:inline-flex;gap:6px;margin-bottom:26px}
.article .kicker{font-family:var(--font-mono);font-size:11.5px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--teal)}
.article h1{font-family:var(--font-display);font-size:clamp(2rem,4.6vw,2.85rem);font-weight:700;letter-spacing:-0.02em;line-height:1.1;margin:14px 0 16px;overflow-wrap:anywhere}
.article .dek{font-size:1.22rem;color:var(--fg-muted);line-height:1.5;margin-bottom:22px}
.article .meta{font-family:var(--font-mono);font-size:12px;color:var(--fg-soft);display:flex;gap:14px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid var(--rule);margin-bottom:34px}
.article-body{font-size:1.075rem;line-height:1.78;color:#D6DEE6}
.article-body h2{font-family:var(--font-display);font-size:1.55rem;font-weight:700;letter-spacing:-0.01em;color:var(--light);margin:44px 0 14px;line-height:1.2}
.article-body h3{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--light);margin:30px 0 10px}
.article-body p{margin-bottom:20px}
.article-body strong{color:var(--light);font-weight:700}
.article-body ul{margin:0 0 22px;padding-left:2px;list-style:none;display:flex;flex-direction:column;gap:11px}
.article-body ul li{position:relative;padding-left:26px;color:#CBD5E0}
.article-body ul li::before{content:"→";position:absolute;left:0;top:0;color:var(--teal);font-weight:700}
.article-body a{border-bottom:1px solid var(--rule-teal)}

/* Puntos clave */
.takeaways{margin:40px 0;background:rgba(31,181,157,0.06);border:1px solid var(--rule-teal);border-radius:var(--r-lg);padding:26px 28px}
.takeaways .t-title{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--teal);margin-bottom:14px}
.takeaways ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.takeaways li{position:relative;padding-left:28px;font-size:1.02rem;line-height:1.5;color:var(--light)}
.takeaways li::before{content:"✓";position:absolute;left:0;top:1px;color:var(--teal);font-weight:800}

/* CTA de cierre */
.cta-block{max-width:740px;margin:52px auto 0;padding:0 22px}
.cta-inner{background:linear-gradient(135deg,rgba(31,181,157,0.12),rgba(47,211,184,0.05));border:1px solid var(--rule-teal);border-radius:var(--r-xl);padding:38px 34px;text-align:center}
.cta-inner h3{font-family:var(--font-display);font-size:1.6rem;font-weight:700;letter-spacing:-0.01em;color:var(--light);margin-bottom:12px;line-height:1.2}
.cta-inner p{font-size:1.05rem;color:var(--fg-muted);max-width:52ch;margin:0 auto 24px;line-height:1.55}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn-primary{background:linear-gradient(135deg,var(--teal),var(--teal-bright));color:#04140f;font-weight:700;padding:13px 26px;border-radius:var(--r-pill);font-size:15px;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.btn-primary:hover{color:#04140f;transform:translateY(-2px);box-shadow:0 10px 30px rgba(31,181,157,0.35)}
.btn-ghost{border:1px solid var(--rule-strong);color:var(--light);font-weight:600;padding:13px 24px;border-radius:var(--r-pill);font-size:15px;transition:border-color var(--dur) var(--ease)}
.btn-ghost:hover{border-color:var(--teal);color:var(--light)}

/* Fuentes */
.sources{max-width:740px;margin:44px auto 0;padding:26px 22px 0;border-top:1px solid var(--rule)}
.sources .s-title{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--fg-soft);margin-bottom:12px}
.sources ol{padding-left:20px;display:flex;flex-direction:column;gap:7px}
.sources li{font-size:13px;color:var(--fg-muted);line-height:1.4}

/* Footer */
.b-foot{max-width:1080px;margin:70px auto 0;padding:30px 22px 48px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.b-foot .fl{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-soft);letter-spacing:0.03em}
.b-foot .fl b{color:var(--teal-deep)}
.b-foot .fr{display:flex;gap:16px}
.b-foot .fr a{font-size:12.5px;color:var(--fg-muted)}

:focus-visible{outline:2px solid var(--teal-bright);outline-offset:2px;border-radius:6px}
@media(prefers-reduced-motion:reduce){*{transition-duration:0.01ms !important}}
