/* geo.css — estilos compartidos de las páginas answer-first (dogfooding GEO).
   Reusa la paleta y tipografía de landing.html: dark editorial, Bricolage + lima. */
:root{
  --tinta:#0B0E14; --panel:#121826; --panel2:#0F141F; --linea:#232B3D;
  --hueso:#F2EFE8; --gris:#8B93A7;
  --lima:#C6F24E; --ambar:#FFC64B; --coral:#FF6B5B;
  --disp:"Bricolage Grotesque",serif; --body:"Instrument Sans",sans-serif; --mono:"Spline Sans Mono",monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--tinta);color:var(--hueso);font-family:var(--body);line-height:1.65;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:radial-gradient(circle at 82% 8%, rgba(198,242,78,.08), transparent 42%),
  radial-gradient(circle at 6% 82%, rgba(255,107,91,.05), transparent 40%);}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.035;
  background-image:linear-gradient(var(--linea) 1px,transparent 1px),linear-gradient(90deg,var(--linea) 1px,transparent 1px);
  background-size:56px 56px;}
.wrap{position:relative;z-index:1;max-width:800px;margin:0 auto;padding:0 24px}

nav{display:flex;justify-content:space-between;align-items:center;padding:26px 0;max-width:800px;margin:0 auto;position:relative;z-index:1}
.logo{font-family:var(--disp);font-weight:700;font-size:1.25rem;letter-spacing:-.02em;text-decoration:none;color:var(--hueso)}
.logo .punto{color:var(--lima)}
.nav-tag{font-family:var(--mono);font-size:.72rem;color:var(--gris);border:1px solid var(--linea);border-radius:99px;padding:5px 14px}
@media(max-width:620px){.nav-tag{display:none}}

/* migas / kicker */
.migas{font-family:var(--mono);font-size:.72rem;color:var(--gris);letter-spacing:.06em;margin:14px 0 0}
.migas a{color:var(--gris);text-decoration:none}
.migas a:hover{color:var(--lima)}
.kicker{font-family:var(--mono);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lima);margin:44px 0 16px;display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--lima)}

/* título del artículo */
article{padding:8px 0 40px}
h1{font-family:var(--disp);font-optical-sizing:auto;font-weight:640;font-size:clamp(2rem,4.6vw,3.1rem);line-height:1.08;letter-spacing:-.03em;margin-bottom:8px}
h1 em{font-style:italic;color:var(--lima)}
.meta-linea{font-family:var(--mono);font-size:.72rem;color:var(--gris);letter-spacing:.06em;margin:18px 0 32px;padding-bottom:24px;border-bottom:1px solid var(--linea);display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.meta-linea .autor{color:var(--hueso)}
.meta-linea .verif{color:var(--lima)}

/* respuesta directa (answer-first) — el bloque que las IAs citan */
.respuesta{background:linear-gradient(160deg,var(--panel),var(--panel2));border:1px solid var(--linea);border-left:3px solid var(--lima);border-radius:14px;padding:26px 28px;margin-bottom:36px;font-size:1.14rem;line-height:1.6}
.respuesta b{color:var(--hueso);font-weight:600}
.respuesta .lbl{display:block;font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lima);margin-bottom:12px}

/* cuerpo */
article h2{font-family:var(--disp);font-weight:620;font-size:clamp(1.4rem,2.8vw,1.9rem);letter-spacing:-.02em;line-height:1.16;margin:48px 0 14px}
article h3{font-family:var(--disp);font-weight:600;font-size:1.18rem;letter-spacing:-.01em;margin:32px 0 10px}
article p{color:#c9cdd8;font-size:1.04rem;margin-bottom:16px}
article p b, article li b{color:var(--hueso);font-weight:600}
article a{color:var(--lima);text-decoration:none;border-bottom:1px solid rgba(198,242,78,.3)}
article a:hover{border-bottom-color:var(--lima)}
article ul,article ol{margin:0 0 20px 0;padding-left:0;list-style:none}
article li{color:#c9cdd8;font-size:1.04rem;padding:7px 0 7px 26px;position:relative}
article ul li::before{content:"—";position:absolute;left:0;color:var(--lima)}
article ol{counter-reset:li}
article ol li::before{counter-increment:li;content:counter(li);position:absolute;left:0;color:var(--lima);font-family:var(--mono);font-size:.85rem;font-weight:700}
.dato-inline{color:var(--lima);font-weight:600;font-family:var(--mono)}
.fuente{font-family:var(--mono);font-size:.72rem;color:var(--gris);font-style:normal}

/* tabla */
.tabla{width:100%;border-collapse:collapse;margin:8px 0 26px;font-size:.95rem}
.tabla th,.tabla td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--linea)}
.tabla th{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);font-weight:400}
.tabla td{color:#c9cdd8}
.tabla td b{color:var(--hueso)}
.tabla tr:hover td{background:rgba(198,242,78,.03)}
.tabla .lift{color:var(--lima);font-family:var(--mono);font-weight:600}

/* bloque Q&A */
.qa{border:1px solid var(--linea);border-radius:14px;overflow:hidden;margin:8px 0 26px;background:var(--panel2)}
.qa details{border-bottom:1px solid var(--linea)}
.qa details:last-child{border-bottom:none}
.qa summary{font-family:var(--disp);font-weight:600;font-size:1.06rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;color:var(--hueso)}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";font-family:var(--mono);color:var(--lima);font-size:1.3rem;flex-shrink:0}
.qa details[open] summary::after{content:"–"}
.qa .a{padding:0 22px 20px;color:#c9cdd8;font-size:1rem}
.qa .a p{font-size:1rem}

/* callout dato */
.callout{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;border:1px solid var(--linea);border-radius:14px;padding:22px 24px;background:var(--panel2);margin:8px 0 26px}
.callout .big{font-family:var(--disp);font-weight:700;font-size:2.6rem;letter-spacing:-.04em;line-height:1;color:var(--lima)}
.callout .big.coral{color:var(--coral)}.callout .big.ambar{color:var(--ambar)}
.callout p{margin:0;font-size:.98rem}

/* autor / E-E-A-T */
.autor-box{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;border:1px solid var(--linea);border-radius:14px;padding:22px 24px;background:linear-gradient(160deg,var(--panel),var(--panel2));margin:40px 0}
.autor-box .av{width:52px;height:52px;border-radius:14px;background:var(--lima);color:var(--tinta);font-family:var(--disp);font-weight:700;font-size:1.5rem;display:flex;align-items:center;justify-content:center}
.autor-box .n{font-family:var(--disp);font-weight:600;font-size:1.02rem}
.autor-box .d{color:var(--gris);font-size:.86rem;margin-top:2px}

/* CTA */
.cta{text-align:center;border:1px solid var(--linea);border-radius:18px;padding:44px 30px;background:linear-gradient(160deg,var(--panel),var(--panel2));margin:48px 0 16px}
.cta h2{margin:0 0 10px}
.cta p{color:var(--gris);max-width:34rem;margin:0 auto 26px}
.btn{display:inline-block;background:var(--lima);color:var(--tinta);border:none;border-radius:12px;font-family:var(--disp);font-weight:700;font-size:1.06rem;padding:15px 36px;cursor:pointer;text-decoration:none;transition:transform .15s, box-shadow .2s;letter-spacing:-.01em}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 34px -8px rgba(198,242,78,.45)}
.cta .sub{font-family:var(--mono);font-size:.72rem;color:var(--gris);margin-top:16px}

/* relacionadas */
.rel{margin:40px 0 8px}
.rel .rk{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--lima);margin-bottom:16px}
.rel-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.rel-grid{grid-template-columns:1fr}}
.rel a{display:block;border:1px solid var(--linea);border-radius:12px;padding:18px 20px;text-decoration:none;background:var(--panel2);transition:border-color .2s,transform .2s;border-bottom:1px solid var(--linea)}
.rel a:hover{border-color:rgba(198,242,78,.4);transform:translateY(-2px)}
.rel a b{display:block;font-family:var(--disp);font-weight:600;color:var(--hueso);font-size:1rem;letter-spacing:-.01em}
.rel a span{color:var(--gris);font-size:.84rem}

footer{border-top:1px solid var(--linea);padding:34px 0;display:flex;justify-content:space-between;color:var(--gris);font-size:.82rem;font-family:var(--mono);gap:16px;flex-wrap:wrap;max-width:800px;margin:0 auto;position:relative;z-index:1}
footer a{color:var(--gris);text-decoration:none}
footer a:hover{color:var(--lima)}
