:root{
  --c-bg:#0f0f14; --c-surface:#1a1a22; --c-surface-2:#22222e;
  --c-text:#ececf2; --c-muted:#a0a0b0; --c-line:#2e2e3a;
  --c-brand:#ff6a00; --c-brand-2:#ffb300; --c-accent:#e8123f;
  --c-cta:#ff6a00; --c-cta-h:#ff8326;
  --r-sm:6px; --r-md:12px; --r-lg:18px;
  --s-xs:.5rem; --s-sm:.85rem; --s-md:1.2rem; --s-lg:2rem; --s-xl:3rem;
  --maxw:1200px;
  --font:'Segoe UI',Roboto,system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--c-bg);color:var(--c-text);line-height:1.7;font-size:17px}
img{max-width:100%;display:block}
a{color:var(--c-brand-2);text-decoration:none}
a:hover{text-decoration:underline}

.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--s-md)}

/* ---------- Header ---------- */
.site-header{background:#000;border-bottom:2px solid var(--c-brand);position:sticky;top:0;z-index:1000}
.nav{display:flex;align-items:center;gap:12px;max-width:var(--maxw);margin:0 auto;padding:.7rem var(--s-md)}
.logo{font-weight:800;font-size:1.5rem;color:var(--c-brand);letter-spacing:.5px}
.logo span{color:var(--c-brand-2)}
.nav-menu{display:flex;gap:.2rem;margin-left:auto;flex-wrap:wrap}
.nav-menu a{color:var(--c-text);padding:.5rem .7rem;border-radius:var(--r-sm);font-size:.95rem;font-weight:600}
.nav-menu a:hover{background:var(--c-surface-2);text-decoration:none;color:var(--c-brand-2)}
.mobile-cta{margin-left:auto;display:none}
.burger{display:none;background:none;border:none;color:var(--c-text);font-size:1.8rem;cursor:pointer;padding:.2rem .5rem;line-height:1}

/* ---------- Buttons ---------- */
.cta-button,.btn{display:inline-block;background:linear-gradient(135deg,var(--c-cta),var(--c-brand-2));color:#1a0f00;font-weight:800;padding:.85rem 1.6rem;border-radius:var(--r-md);text-align:center;border:none;cursor:pointer;font-size:1.05rem;box-shadow:0 4px 14px rgba(255,106,0,.3);transition:transform .15s,box-shadow .15s}
.cta-button:hover,.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,106,0,.45);text-decoration:none;color:#1a0f00}
.btn-sm{padding:.5rem 1rem;font-size:.9rem}

/* ---------- Hero ---------- */
.hero{background:radial-gradient(circle at 30% 20%,rgba(255,106,0,.18),transparent 60%),var(--c-surface);border-radius:var(--r-lg);padding:var(--s-xl) var(--s-lg);margin:var(--s-lg) 0;text-align:center;border:1px solid var(--c-line)}
.hero h1{font-size:2.2rem;line-height:1.2;margin-bottom:var(--s-md)}
.hero p{color:var(--c-muted);font-size:1.15rem;max-width:680px;margin:0 auto var(--s-md)}
.hero .cta-button{margin-top:var(--s-sm)}

/* ---------- Content ---------- */
main{padding:var(--s-lg) 0 var(--s-xl)}
article h1{font-size:2rem;line-height:1.25;margin:var(--s-md) 0}
article h2{font-size:1.5rem;margin:var(--s-lg) 0 var(--s-sm);color:var(--c-brand-2);border-left:4px solid var(--c-brand);padding-left:.7rem}
article h3{font-size:1.2rem;margin:var(--s-md) 0 var(--s-xs);color:var(--c-text)}
article p{margin:0 0 var(--s-md)}
article ul,article ol{margin:0 0 var(--s-md) 1.4rem}
article li{margin-bottom:.4rem}

.content-img{max-width:800px;width:100%;height:auto;margin:1.5rem auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-md)}

/* Capturas de pantalla verticales (móvil) — sin recorte, proporción natural */
.shot{display:block;width:auto;max-width:320px;max-height:640px;height:auto;margin:1.5rem auto;border-radius:var(--r-md);border:1px solid var(--c-line);box-shadow:0 6px 24px rgba(0,0,0,.4)}

/* ---------- Tables ---------- */
table{width:100%;border-collapse:collapse;margin:var(--s-md) 0;background:var(--c-surface);border-radius:var(--r-md);overflow:hidden}
th,td{padding:.8rem 1rem;text-align:left;border-bottom:1px solid var(--c-line)}
th{background:var(--c-surface-2);color:var(--c-brand-2);font-weight:700}
tr:last-child td{border-bottom:none}
tr:hover td{background:var(--c-surface-2)}

/* ---------- Callouts ---------- */
.age-disclaimer{background:rgba(232,18,63,.12);border:1px solid var(--c-accent);border-radius:var(--r-sm);padding:.7rem 1rem;font-size:.9rem;color:#ffb3c1;margin:var(--s-md) 0}
.disclaimer{font-size:.85rem;color:var(--c-muted);margin:var(--s-sm) 0 var(--s-md)}
.byline{font-size:.9rem;color:var(--c-muted);border-left:3px solid var(--c-brand);padding-left:.7rem;margin:0 0 var(--s-md)}
.note{background:var(--c-surface-2);border-left:4px solid var(--c-brand-2);padding:1rem 1.2rem;border-radius:var(--r-sm);margin:var(--s-md) 0}

/* ---------- Cards ---------- */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--s-md);margin:var(--s-md) 0}
.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-md);padding:1.3rem}
.card h3{margin-top:0;color:var(--c-brand-2)}

/* ---------- Footer ---------- */
.site-footer{background:#000;border-top:2px solid var(--c-brand);margin-top:var(--s-xl);padding:var(--s-lg) 0}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s-lg)}
.footer-col h4,.footer-col .footer-title{color:var(--c-brand-2);margin:0 0 var(--s-sm);font-size:1rem;font-weight:700}
.footer-col a{display:block;color:var(--c-muted);padding:.25rem 0;font-size:.92rem}
.footer-col a:hover{color:var(--c-brand-2)}
.footer-bottom{border-top:1px solid var(--c-line);margin-top:var(--s-lg);padding-top:var(--s-md);text-align:center;color:var(--c-muted);font-size:.85rem}
.footer-bottom strong{color:var(--c-text)}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .burger{display:block;order:3}
  .mobile-cta{display:inline-block;order:2}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#000;flex-direction:column;padding:var(--s-sm);border-bottom:2px solid var(--c-brand);z-index:999}
  .nav-menu.open{display:flex}
  .nav-menu a{padding:.8rem;border-bottom:1px solid var(--c-line)}
  .nav{flex-wrap:wrap;position:relative}
  .hero h1{font-size:1.7rem}
  article h1{font-size:1.6rem}
  article h2{font-size:1.3rem}
}
