[hidden]{display:none!important}
:root{
  --negro:#070709;
  --oscuro:#0e0e12;
  --tarjeta:#14141a;
  --carbon:#15110d;
  --linea:rgba(212,175,55,.22);
  --linea-suave:rgba(255,255,255,.08);
  --oro:#d4af37;
  --oro-claro:#f5d77f;
  --oro-hondo:#8f7126;
  --marfil:#f6efe0;
  --gris:#b3ab9d;
  --metal:linear-gradient(135deg,#f5d77f 0%,#d4af37 50%,#997d2e 100%);
  --display:"Barlow Condensed","Arial Narrow",sans-serif;
  --texto:"Barlow",system-ui,sans-serif;
  --script:"Pinyon Script",cursive;
  --gutter:20px;
  --sec:clamp(56px,7vw,88px);
  --radio:24px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--negro);color:var(--marfil);font-family:var(--texto);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
img{max-width:100%;display:block;height:auto}
:focus-visible{outline:2px solid var(--oro-claro);outline-offset:3px}
.wrap{width:min(1180px,100% - var(--gutter) * 2);margin-inline:auto}
.solo-lector{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.saltar{position:absolute;left:12px;top:-60px;z-index:60;background:var(--oro);color:var(--negro);padding:10px 16px;border-radius:999px;font-weight:600;text-decoration:none}
.saltar:focus{top:12px}
.ico{width:1.1em;height:1.1em;flex:0 0 auto}
.dorado{background:linear-gradient(135deg,#fff1c5 0%,#d4af37 50%,#aa8222 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--oro)}
.acento{font-family:var(--script);color:var(--oro-claro)}
.centro{text-align:center}
body::before,body::after{content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(130px)}
body::before{top:0;left:22%;width:380px;height:380px;background:rgba(212,175,55,.08)}
body::after{top:55%;right:4%;width:320px;height:320px;background:rgba(217,119,6,.05)}

/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;font-family:var(--texto);font-weight:600;font-size:14px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:filter .2s,background .2s,color .2s,border-color .2s}
.btn.lleno{background:var(--metal);color:#070709;box-shadow:0 0 22px rgba(212,175,55,.3)}
.btn.lleno:hover{filter:brightness(1.1)}
.btn.vacio{border-color:rgba(212,175,55,.5);color:var(--oro-claro);background:rgba(20,20,26,.5)}
.btn.vacio:hover{border-color:var(--oro);background:var(--tarjeta)}
.pill-borde{display:inline-flex;border-radius:999px;padding:1px;background:var(--metal);text-decoration:none}
.pill-borde span{display:inline-flex;align-items:center;min-height:44px;border-radius:999px;background:var(--negro);color:var(--oro);padding:0 22px;font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;transition:background .3s,color .3s}
.pill-borde:hover span{background:transparent;color:#070709}

/* Cabecera */
header.top{position:sticky;top:0;z-index:30;background:rgba(7,7,9,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--linea);transition:background .3s}
header.top.solido{background:rgba(7,7,9,.95)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.marca{display:flex;align-items:center;text-decoration:none;min-height:44px}
.marca img{height:38px;width:auto}
.marca .nombre{font-family:var(--script);font-size:34px;line-height:1;color:var(--oro-claro);display:none}
.marca.sin-logo img{display:none}
.marca.sin-logo .nombre{display:block}
nav ul{display:flex;gap:28px;list-style:none}
nav a{text-decoration:none;font-weight:500;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#d8d1c3;padding:12px 0;display:inline-block}
nav a:hover{color:var(--oro-claro)}

/* Hero con video */
.hero{position:relative;min-height:max(600px,calc(100svh - 120px));display:flex;align-items:center;overflow:hidden;isolation:isolate}
.hero video,.hero .poster{position:absolute;inset:-6% 0 -6% 0;width:100%;height:112%;object-fit:cover;z-index:-3;will-change:transform}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,var(--negro) 0%,rgba(7,7,9,.72) 42%,rgba(7,7,9,.3) 100%),linear-gradient(90deg,rgba(7,7,9,.85) 0%,transparent 55%)}
.hero .wrap{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:center;padding-block:72px}
.eyebrow{font-family:var(--texto);font-size:13px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--oro);margin-bottom:16px}
.chip-hoy{display:inline-flex;align-items:center;gap:10px;padding:6px 18px;border-radius:999px;border:1px solid rgba(212,175,55,.4);background:rgba(20,20,26,.6);backdrop-filter:blur(8px);font-family:var(--script);font-size:26px;line-height:1.2;color:var(--oro-claro)}
.chip-hoy i{width:8px;height:8px;border-radius:50%;background:var(--oro);animation:latido 1.6s ease-in-out infinite}
@keyframes latido{50%{opacity:.35}}
.hoy-evento{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(48px,8.4vw,108px);line-height:.95;margin:18px 0 16px;color:#fff;text-wrap:balance}
.hoy-detalle{max-width:42ch;font-size:clamp(16px,1.6vw,19px);font-weight:300;color:#ddd6c8}
.hero .acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hoy-caja h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(24px,2.6vw,30px);line-height:1.05;color:#fff;margin-top:6px}
.hoy-caja h3 span{color:var(--oro-claro)}
.hoy-lista{list-style:none;margin-top:20px;display:grid;gap:16px;position:relative}
.hoy-lista li{display:flex;gap:14px;align-items:flex-start}
.hoy-lista .ico{width:22px;height:22px;flex:0 0 22px;color:var(--oro);margin-top:2px}
.hoy-lista b{display:block;color:#fff;font-weight:600}
.hoy-lista span{display:block;color:var(--gris);font-size:14px}
.hero .ventajas{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font-size:15px;color:#ddd6c8}
.hero .ventajas .ico{width:22px;height:22px;color:var(--oro)}
.hero .ventajas b{color:var(--oro-claro);font-weight:600}

/* Entrada del hero */
.h-in{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.hero.listo .h-in{opacity:1;transform:none}
.hero.listo .h-in:nth-child(2){transition-delay:.1s}
.hero.listo .h-in:nth-child(3){transition-delay:.2s}
.hero.listo .h-in:nth-child(4){transition-delay:.32s}
.hero.listo .h-in:nth-child(5){transition-delay:.44s}
.hero.listo .cuenta{transition-delay:.55s}

/* Cuenta regresiva (vidrio) */
.cuenta{position:relative;overflow:hidden;background:rgba(20,20,26,.72);border:1px solid rgba(212,175,55,.3);border-radius:var(--radio);padding:26px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 0 22px -3px rgba(212,175,55,.25),0 30px 60px rgba(0,0,0,.5)}
.cuenta::before{content:"";position:absolute;top:-50px;right:-50px;width:150px;height:150px;border-radius:50%;background:rgba(212,175,55,.15);filter:blur(30px)}
.cuenta-cab{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--linea-suave)}
.cuenta .rotulo{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gris)}
.cuenta h3{font-family:var(--display);font-weight:800;font-size:26px;line-height:1.05;text-transform:uppercase;color:var(--oro-claro);margin-top:2px}
.cuenta .cuando{flex:0 0 auto;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--oro);border:1px solid rgba(212,175,55,.3);background:rgba(245,158,11,.08);border-radius:6px;padding:4px 9px;white-space:nowrap}
.cuenta .cuando:empty{display:none}
.reloj{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px;text-align:center}
.reloj div{background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:12px 4px 10px}
.reloj div:last-child{border-color:rgba(212,175,55,.3)}
.reloj b{display:block;font-family:var(--display);font-weight:700;font-size:38px;line-height:1;font-variant-numeric:tabular-nums;color:#fff}
.reloj div:last-child b{color:var(--oro-claro)}
.reloj span{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris)}
.cuenta .encurso{display:none;position:relative;font-family:var(--display);font-size:30px;font-weight:700;color:var(--oro-claro);padding-top:16px}
.cuenta.vivo .reloj{display:none}
.cuenta.vivo .encurso{display:block}

/* Marquesina (dorada, con texto oscuro) */
.marquesina{background:#c9a45c;color:#1a1307;overflow:hidden;white-space:nowrap;border-block:1px solid #8a6a2b}
.marquesina .pista{display:inline-flex;animation:corre 46s linear infinite}
.marquesina:hover .pista{animation-play-state:paused}
.marquesina span{font-family:var(--display);font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.03em;padding:11px 0}
.marquesina span::after{content:"";display:inline-block;width:8px;height:8px;background:#1a1307;transform:rotate(45deg);margin:0 28px 2px}
@keyframes corre{to{transform:translateX(-50%)}}
@keyframes entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Secciones */
.bloque{padding-block:var(--sec);position:relative}
.bloque-corto{padding-block:calc(var(--sec) * .5)}
.cab-sec{text-align:center;max-width:720px;margin:0 auto clamp(36px,5vw,54px)}
.cab-sec .kick,.kick{font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--oro)}
.cab-sec .kick.acento,.kick.acento{font-family:var(--script);font-size:32px;letter-spacing:0;text-transform:none;font-weight:400;color:var(--oro-claro);line-height:1}
h2.titulo{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(36px,5.4vw,60px);line-height:1;color:#fff;margin-top:8px;text-wrap:balance}
.raya{display:block;width:80px;height:2px;background:var(--metal);margin:18px auto}
.bajada{color:var(--gris);font-size:16px;max-width:60ch;margin-inline:auto}
.vidrio{background:rgba(20,20,26,.8);border:1px solid rgba(212,175,55,.28);border-radius:28px;box-shadow:0 30px 60px rgba(0,0,0,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

/* Agenda: rueda (prototipo aprobado; no cambia) */
.agenda-vidrio{overflow:hidden;position:relative}
.agenda-vidrio::before{content:"";position:absolute;top:-140px;left:-140px;width:420px;height:420px;background:rgba(212,175,55,.08);border-radius:50%;filter:blur(60px);pointer-events:none}
.agenda-caja{position:relative;display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:center;padding:clamp(20px,4vw,44px)}
.agenda-pie{position:relative;padding:0 clamp(20px,4vw,44px) clamp(20px,4vw,40px)}
.col-rueda{display:flex;flex-direction:column;align-items:center;position:relative;min-width:0;width:100%}
.agenda-der{min-width:0}
.rueda{position:relative;width:100%;max-width:390px;aspect-ratio:1;border-radius:50%;box-shadow:0 0 0 1px rgba(212,175,55,.12),0 24px 50px -18px rgba(0,0,0,.8)}
.rueda svg{width:100%;height:100%;display:block}
.puntero{position:absolute;top:-12px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:15px solid #eab308;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6));z-index:2}
.nucleo{position:absolute;inset:0;margin:auto;width:37%;height:37%;border-radius:50%;background:linear-gradient(135deg,#fde68a 0%,#d4af37 50%,#996515 100%);border:2px solid #fcd34d;box-shadow:0 10px 30px rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#120d04;text-align:center;pointer-events:none}
.nucleo small{font-family:var(--display);font-weight:800;letter-spacing:.14em;font-size:clamp(11px,2.6vw,14px);opacity:.8}
.nucleo b{font-family:var(--display);font-weight:800;font-size:clamp(24px,6vw,34px);line-height:1}
.nucleo i{width:34px;height:2px;background:rgba(0,0,0,.4);margin-top:5px}
.pista-rueda{color:var(--gris);font-size:13px;margin-top:20px}
.seg{cursor:pointer}
.seg path{stroke:rgba(212,175,55,.3);stroke-width:1.5;transition:filter .2s}
.seg:hover path{filter:brightness(1.25)}
.seg text{font-family:var(--display);text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-weight:800}
.et-dia{font-size:17px;fill:#d4d4d4;letter-spacing:.04em}
.et-num{font-size:27px;fill:#fff}
.et-pts{fill:#eab308}
.et.sel .et-dia,.et.sel .et-num,.et.sel .et-pts{fill:#120d04}
.agenda-der .semana{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;margin-bottom:4px;scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.35) transparent}
.agenda-der .semana::-webkit-scrollbar{height:4px}
.agenda-der .semana::-webkit-scrollbar-thumb{background:rgba(212,175,55,.35);border-radius:4px}
.semana .dia{flex:1;min-width:52px;padding:12px 6px 10px;border-radius:16px;background:#141414;border:1px solid #262626;color:#d4d4d4;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;font-family:var(--display);text-transform:uppercase;transition:border-color .2s}
.semana .dia:hover{border-color:rgba(212,175,55,.5);color:#fff}
.semana .dia:focus-visible{outline:2px solid var(--oro-claro);outline-offset:2px}
.semana .dia small{font-weight:700;font-size:13px;letter-spacing:.06em}
.semana .dia b{font-size:26px;font-weight:800;line-height:1}
.semana .dia .pts{display:flex;gap:4px;height:6px;margin-top:4px}
.semana .dia .pts i{width:6px;height:6px;border-radius:50%;background:#eab308}
.semana .dia[aria-selected="true"]{background:linear-gradient(160deg,#f7dd8a 0%,#d4af37 55%,#b08a2a 100%);color:#120d04;border-color:#f5d77f;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}
.semana .dia.es-hoy:not([aria-selected="true"]){border-color:rgba(212,175,55,.55)}
.semana .dia.es-hoy small{color:var(--oro-claro)}
.semana .dia.es-hoy[aria-selected="true"] small{color:#120d04}
.semana .dia[aria-selected="true"] .pts i{background:#120d04}
.detalle-dia{min-height:260px}
.fecha-dia{font-family:var(--script);color:var(--oro-claro);font-size:clamp(28px,4vw,40px);line-height:1.1;margin-top:18px}
.detalle-dia h3{font-family:var(--display);font-size:clamp(32px,4.6vw,52px);font-weight:800;text-transform:uppercase;line-height:1;color:#fff;margin:4px 0 8px}
.linea-dia{color:var(--gris);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.linea-dia .punto{color:#eab308;display:inline-flex;align-items:center;gap:6px}
.linea-dia .punto::before{content:"";width:8px;height:8px;border-radius:50%;background:#eab308}
.lista-dia{display:flex;justify-content:space-between;margin:22px 0 10px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.en-curso{color:#34d399;display:inline-flex;align-items:center;gap:6px;text-transform:none;letter-spacing:0;font-weight:500}
.en-curso::before{content:"";width:7px;height:7px;border-radius:50%;background:#34d399}
.ev-dia{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:14px;background:#141414;border:1px solid #262626;margin-bottom:10px}
.ev-dia.prin{border-color:rgba(212,175,55,.45);box-shadow:0 6px 18px rgba(0,0,0,.4)}
.ev-dia h4{font-size:16px;font-weight:600}
.ev-dia p{font-size:14px;color:var(--gris)}
.chip-oro{font-family:var(--display);font-weight:800;font-size:12px;text-transform:uppercase;padding:2px 8px;border-radius:5px;background:var(--metal);color:#120d04;margin-left:8px;vertical-align:2px}
.ver-ev{flex:0 0 auto;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(212,175,55,.5);color:var(--oro-claro);font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s}
.ver-ev:hover{background:var(--oro);color:#070709}
.detalle-dia p.vacio{color:var(--gris);font-size:18px;margin-top:12px}
.detalle-dia .vacio-mas{color:var(--gris);max-width:46ch;margin:10px 0 18px}
.detalle-dia .cambia{animation:entra .45s both}

/* Más adelante y calendario */
.proximos{padding-top:28px;border-top:1px solid var(--linea-suave)}
.proximos h3{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--oro);margin-bottom:14px}
.proximos ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px}
.proximos li a{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:16px;border-radius:14px;background:var(--oscuro);border:1px solid var(--linea-suave);text-decoration:none;min-height:56px;transition:border-color .2s}
.proximos li a:hover{border-color:rgba(212,175,55,.5)}
.proximos li span{color:var(--oro-claro);font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.proximos li b{font-weight:500;flex:1 1 auto}
.ver-mes{display:flex;justify-content:center;margin-top:28px}
.calendario{max-width:760px;margin:22px auto 0;background:#101010;border:1px solid rgba(212,175,55,.18);border-radius:22px;padding:clamp(16px,3vw,30px)}
.cal-cab{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.cal-cab h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(24px,3vw,32px);color:var(--oro-claro)}
.cal-flecha{width:44px;height:44px;border-radius:12px;border:1px solid rgba(212,175,55,.5);background:none;color:var(--oro-claro);font-size:26px;line-height:1;cursor:pointer}
.cal-flecha:disabled{opacity:.3;cursor:default}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-n{font-family:var(--display);font-weight:700;text-transform:uppercase;text-align:center;color:var(--gris);font-size:13px;padding:4px 0}
.cal-c{position:relative;aspect-ratio:5/4;min-height:44px;border-radius:10px;border:1px solid #262626;background:#141414;color:var(--marfil);font-family:var(--display);font-weight:700;font-size:clamp(15px,2vw,19px);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:6px;cursor:pointer;text-align:left}
.cal-c.vacia{border:0;background:none;cursor:default}
.cal-c.pasado{opacity:.4}
.cal-c.hoy{border-color:var(--oro);color:var(--oro-claro)}
.cal-c:hover{border-color:rgba(212,175,55,.5)}
.cal-c.sel{background:linear-gradient(135deg,#fde68a 0%,#d4af37 50%,#996515 100%);color:#120d04;border-color:#fde68a}
.cal-pts{display:flex;gap:3px}
.cal-pts i{width:6px;height:6px;border-radius:50%;background:#c9a45c}
.cal-pts i.g{background:#fde68a}
.cal-c.sel .cal-pts i{background:#120d04}
.cal-leyenda{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;color:var(--gris);font-size:13px}
.cal-leyenda i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#c9a45c;margin-right:6px}
.cal-leyenda i.g{background:#fde68a}
.cal-dia{margin-top:6px}
.cal-dia .vacio{color:var(--gris);margin-top:8px}
.cal-grid.cargando{opacity:.45;transition:opacity .15s}
.cal-grid.cargando .cal-c{cursor:progress}
.aviso-agenda{color:var(--gris);font-size:18px;padding:20px 0;text-align:center}

/* Banner de premio (evento especial y bingo) */
.banner-premio{position:relative;overflow:hidden;border-radius:28px;border:1px solid rgba(212,175,55,.4);background:linear-gradient(90deg,var(--negro),var(--tarjeta),var(--oscuro));padding:clamp(32px,6vw,60px) clamp(20px,4vw,48px);text-align:center;box-shadow:0 0 40px rgba(0,0,0,.8)}
.banner-premio::before{content:"";position:absolute;top:-90px;left:50%;transform:translateX(-50%);width:min(420px,90%);height:160px;background:rgba(245,158,11,.2);filter:blur(90px);pointer-events:none}
.bp-kick{position:relative;font-family:var(--display);font-size:clamp(16px,2vw,20px);letter-spacing:.28em;text-transform:uppercase;color:var(--oro-claro);font-weight:700}
.bp-monto{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 14px;font-family:var(--display);font-weight:800;font-size:clamp(64px,12vw,140px);line-height:1;margin:12px 0 10px;font-variant-numeric:tabular-nums}
.bp-repartir{font-family:var(--script);font-weight:400;font-style:normal;font-size:clamp(30px,4.6vw,52px);color:var(--oro)}
.bp-datos{position:relative;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 26px;font-size:16px;color:#d6d0c4;margin-bottom:26px}
.bp-datos b{color:#fff;font-weight:600}
#bingo .banner-premio{background:radial-gradient(ellipse at 70% 30%,#2a2010 0%,var(--negro) 62%)}

/* Torneos */
.banda{overflow:hidden;isolation:isolate}
.banda .fondo{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:saturate(.8)}
.banda::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--negro),rgba(7,7,9,.86) 30%,rgba(7,7,9,.95))}
.lista-torneos{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px;margin-bottom:28px}
.tarjeta-torneo{position:relative;display:flex;flex-direction:column;gap:8px;height:100%;padding:24px;border-radius:20px;background:rgba(20,20,26,.65);border:1px solid var(--linea-suave);color:inherit;text-decoration:none;transition:border-color .25s,transform .25s}
.tarjeta-torneo:hover{border-color:rgba(212,175,55,.5);transform:translateY(-2px)}
.tarjeta-torneo.prox{border:2px solid var(--oro);background:rgba(20,20,26,.92);box-shadow:0 0 30px rgba(212,175,55,.15)}
.tt-arriba{display:flex;justify-content:space-between;align-items:center;gap:10px}
.tt-fecha{font-family:var(--display);font-weight:700;letter-spacing:.06em;color:var(--oro);font-size:15px}
.tt-badge{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:5px;background:var(--oro);color:#070709}
.tarjeta-torneo h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:28px;line-height:1.05;color:#fff}
.tarjeta-torneo p{color:#cfc8ba;font-size:14px;flex:1}
.tt-ver{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--oro)}
.ficha-torneo{padding:clamp(20px,4vw,40px)}
.ft-cab{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-bottom:22px;margin-bottom:26px;border-bottom:1px solid var(--linea-suave)}
.torneo-cercano{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(28px,4vw,38px);line-height:1.05;color:#fff}
.ft-cuando{color:var(--oro);font-size:14px;margin-top:4px}
.torneo{display:grid;grid-template-columns:7fr 5fr;gap:30px;align-items:start}
.torneo table{width:100%;border-collapse:collapse;font-size:15px}
.torneo th{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gris);text-align:left;padding:10px 0;border-bottom:1px solid var(--linea-suave)}
.torneo th:last-child{text-align:right}
.torneo td{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.05);color:#d6d0c4}
.torneo td:last-child{text-align:right;font-family:var(--display);font-weight:700;font-size:18px;color:#fff}
.torneo tbody th{font-size:15px;font-weight:400;letter-spacing:0;text-transform:none;color:#d6d0c4;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.reglas-panel{background:rgba(14,14,18,.7);border:1px solid var(--linea-suave);border-radius:18px;padding:22px}
.reglas-panel h4,.niveles h4{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--oro);margin-bottom:14px}
.reglas{list-style:none;display:grid;gap:12px}
.reglas li{position:relative;padding-left:26px;font-size:15px;color:#d6d0c4}
.reglas li::before{content:"";position:absolute;left:0;top:.35em;width:14px;height:8px;border-left:2.5px solid var(--oro);border-bottom:2.5px solid var(--oro);transform:rotate(-45deg)}
.niveles{margin-top:30px;padding-top:24px;border-top:1px solid var(--linea-suave)}
.niveles ol{list-style:none;display:grid;grid-template-columns:repeat(10,1fr);gap:8px}
.niveles li{padding:10px 0;border-radius:10px;text-align:center;background:rgba(255,255,255,.04);border:1px solid var(--linea-suave)}
.niveles li b{display:block;font-family:var(--display);font-size:20px;font-weight:800;line-height:1}
.niveles li.tardio{background:var(--oro);border-color:var(--oro);color:#070709}
.niveles li.cierre{background:#d97706;border-color:#f59e0b;color:#fff}
.niveles .leyenda{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:14px;font-size:14px;color:var(--gris)}
.niveles .leyenda i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px;vertical-align:-1px}
.niveles .leyenda i.a{background:var(--oro)}
.niveles .leyenda i.b{background:#d97706}

/* Buffet */
.buffet-horario{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.buffet-horario li{text-align:center;padding:28px 20px;border-radius:20px;background:rgba(20,20,26,.9);border:1px solid rgba(212,175,55,.3);transition:border-color .3s}
.buffet-horario li:hover{border-color:var(--oro)}
.buffet-horario small{display:block;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--oro);margin-bottom:8px}
.buffet-horario b{display:block;font-family:var(--display);font-weight:800;font-size:clamp(28px,3.4vw,36px);line-height:1.05;color:#fff;text-transform:uppercase}
.buffet-horario span{display:block;margin-top:6px;font-size:14px;color:var(--gris)}
#buffet .reels-buffet{justify-content:center;margin-top:24px}
#buffet .reels-buffet .reel{flex:0 0 150px}

/* Reels */
.carrusel{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:30px}
.carrusel .reel{border-radius:20px}
.reel{position:relative;aspect-ratio:9/16;border:1px solid var(--linea-suave);border-radius:14px;overflow:hidden;background:#0e0b08;transition:border-color .3s}
.reel:hover{border-color:rgba(212,175,55,.6)}
.reel video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reel::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.15) 55%,transparent);pointer-events:none}
.reel-titulo{position:absolute;left:14px;right:14px;bottom:14px;z-index:1;font-family:var(--display);font-weight:700;font-size:16px;line-height:1.15;text-transform:uppercase}
.reel-sonido{position:absolute;top:10px;right:10px;z-index:1;width:28px;height:28px;border-radius:50%;background:rgba(0,0,0,.6);display:grid;place-items:center;font-size:12px}
.reel-abrir{position:absolute;inset:0;z-index:2;background:none;border:0;cursor:pointer}
.reel-abrir:focus-visible{outline:2px solid var(--oro-claro);outline-offset:-4px}
.reels-buffet{display:flex;gap:10px;position:relative}
.reels-buffet .reel{flex:0 0 110px}
.visor{position:fixed;inset:0;z-index:48;background:rgba(5,4,3,.94);display:grid;place-items:center;padding:16px}
.visor-caja{width:min(420px,100%);display:flex;flex-direction:column;gap:12px}
.visor video{width:100%;max-height:72vh;aspect-ratio:9/16;background:#000;border-radius:12px;object-fit:contain}
.visor-titulo{font-weight:600}
.visor-botones{display:flex;gap:10px;flex-wrap:wrap}
body.con-visor,body.con-ficha{overflow:hidden}

/* Empleo */
.empleo-caja{max-width:900px;margin-inline:auto;text-align:center;padding:clamp(32px,6vw,56px) clamp(20px,4vw,48px)}
.empleo-caja .bajada{margin:12px auto 26px}

/* Contacto */
.contacto-caja{padding:clamp(22px,5vw,48px)}
.contacto-cab{margin-bottom:24px}
.contacto-cab h2.titulo{margin-top:6px}
.contacto{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}
.datos{list-style:none}
.datos li{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--linea-suave)}
.datos li:last-child{border-bottom:0}
.circ{width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:var(--oscuro);border:1px solid rgba(212,175,55,.4);display:grid;place-items:center;color:var(--oro)}
.datos .k{display:block;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.datos p{color:#fff;margin-top:2px}
.datos p.ref{color:var(--gris);font-size:.92em}
.datos b{color:var(--oro-claro);font-weight:600}
.datos a{color:var(--oro-claro)}
/* Zona tocable de 44 px sin mover el texto */
.datos p a,.pie address a{display:inline-block;padding-block:12px;margin-block:-12px}
.datos .horario{display:flex;flex-direction:column;gap:2px}
.wa-demo{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.wa-demo .btn{flex:1 1 auto;white-space:nowrap;padding:0 20px;letter-spacing:.08em}
.mapa{min-height:360px;border-radius:20px;overflow:hidden;border:1px solid var(--linea-suave)}
.mapa iframe{width:100%;height:100%;min-height:360px;border:0;display:block;filter:grayscale(.35) contrast(1.05)}

/* Pie */
.pie{border-top:1px solid var(--linea);padding-top:48px;color:var(--gris);font-size:14px}
.pie .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px 40px}
.pie-marca{max-width:460px;display:grid;gap:10px}
.pie-marca img{width:192px}
.pie address{font-style:normal}
.pie a{color:var(--oro-claro)}
.pie-nav{display:flex;flex-wrap:wrap;gap:6px 22px;align-content:flex-start}
.pie-nav a{text-decoration:none;color:#d8d1c3;font-size:13px;letter-spacing:.1em;text-transform:uppercase;min-height:44px;display:inline-flex;align-items:center}
.pie-nav a:hover{color:var(--oro-claro)}
.pie-legal{margin-top:32px;padding-block:22px 40px;border-top:1px solid var(--linea-suave);align-items:center}
.mas18{display:flex;align-items:center;gap:12px}
.mas18 span{width:32px;height:32px;flex:0 0 32px;border-radius:50%;border:1px solid #6b6660;display:grid;place-items:center;font-weight:700;font-size:12px;color:#d6d0c4}
.mas18 strong{color:#d6d0c4;font-weight:500}

.barra-movil{display:none}

/* Verificación de edad */
#edad{position:fixed;inset:0;z-index:50;background:rgba(7,7,9,.92);backdrop-filter:blur(8px);display:none;place-items:center;padding:24px;text-align:center}
#edad.visible{display:grid}
#edad .caja{max-width:440px;display:grid;justify-items:center}
.edad-logo{width:240px}
#edad h2{font-family:var(--display);font-size:44px;text-transform:uppercase;font-weight:800;color:#fff;line-height:1;margin:22px 0 10px}
.edad-texto{color:var(--gris)}
#edad .btns{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap}

/* Menú del celular */
.menu-btn{display:none;align-items:center;min-height:44px;padding:0 18px;background:transparent;border:1px solid rgba(212,175,55,.5);border-radius:999px;color:var(--oro-claro);font-family:var(--texto);font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}

/* Agregar a mi calendario */
.cal{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}
.cal .cal-t{font-size:15px;color:var(--gris);width:100%}
.cal .btn{min-height:44px;padding:0 18px}

/* Demo de pantallas internas */
#pantalla{position:fixed;inset:0;z-index:70;display:none;flex-direction:column;padding:4vh 5vw 3vh;background:radial-gradient(ellipse at 72% 22%,#2a2010 0%,var(--negro) 64%);color:var(--marfil);overflow:hidden}
#pantalla.visible{display:flex}
.p-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--linea);padding-bottom:2vh}
.p-top img{height:6vh;width:auto}
.p-reloj{font-family:var(--display);font-weight:700;font-size:5.5vh;color:var(--oro-claro);font-variant-numeric:tabular-nums}
.p-slides{flex:1;position:relative}
.p-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;opacity:0;transition:opacity .9s}
.p-slide.activa{opacity:1}
.p-kicker{font-family:var(--script);font-size:10vh;line-height:1;color:var(--oro-claro)}
.p-grande{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:16vh;line-height:.9;margin-top:1vh}
.p-grande.oro{color:var(--oro-claro);font-size:26vh;font-variant-numeric:tabular-nums}
.p-texto{font-size:4vh;max-width:56ch;color:var(--gris);margin-top:3vh}
.p-cuenta{display:flex;gap:5vw;margin-top:4vh}
.p-cuenta b{display:block;font-family:var(--display);font-size:18vh;font-weight:700;line-height:1;color:var(--oro-claro);font-variant-numeric:tabular-nums}
.p-cuenta span{font-size:3vh;color:var(--gris)}
.p-vivo{font-family:var(--display);font-weight:700;font-size:10vh;color:var(--oro-claro);margin-top:4vh}
.p-lista{list-style:none;margin-top:2vh}
.p-lista li{display:flex;justify-content:space-between;gap:4vw;font-family:var(--display);font-weight:700;font-size:4.4vh;line-height:1.1;text-transform:uppercase;border-bottom:1px solid var(--linea);padding:1vh 0}
.p-kicker.chico{font-size:7.5vh}
.p-lista li em{font-style:normal;color:var(--oro-claro)}
.p-pie{display:flex;justify-content:space-between;align-items:center;gap:3vw;border-top:1px solid var(--linea);padding-top:2vh;font-size:2.4vh;color:var(--gris)}
.p-puntos{display:flex;gap:1.4vh}
.p-puntos i{display:block;width:1.3vh;height:1.3vh;background:var(--linea);transform:rotate(45deg)}
.p-puntos i.on{background:var(--oro)}
.p-salir{background:transparent;border:1px solid var(--linea);color:var(--gris);font:inherit;font-size:2vh;padding:.8vh 1.6vh;cursor:pointer;min-height:44px}
body.en-pantalla{overflow:hidden}

/* Tableta */
@media (max-width:1024px){
  nav ul{gap:20px}
  .hero .wrap{grid-template-columns:1fr 1fr;gap:32px}
  .carrusel{grid-template-columns:repeat(3,1fr)}
}
/* Celular */
@media (max-width:900px){
  :root{--gutter:16px}
  nav{display:none}
  header.top .cab-llegar{display:none}
  .menu-btn{display:inline-flex}
  nav.abierto{display:block;position:absolute;left:0;right:0;top:100%;background:rgba(7,7,9,.97);border-bottom:1px solid var(--linea)}
  nav.abierto ul{flex-direction:column;gap:0;width:min(1180px,100% - var(--gutter) * 2);margin-inline:auto;padding:4px 0 14px}
  nav.abierto a{display:block;padding:14px 0;font-size:16px;border-bottom:1px solid var(--linea-suave)}
  .top .wrap{min-height:64px}
  .marca img{height:30px}
  .hero{min-height:auto}
  .hero .wrap{grid-template-columns:1fr;gap:32px;padding-block:56px 40px}
  .agenda-caja,.torneo,.contacto{grid-template-columns:1fr;gap:28px}
  .buffet-horario{grid-template-columns:1fr;gap:0;border:1px solid rgba(212,175,55,.3);border-radius:20px;background:rgba(20,20,26,.9);overflow:hidden}
  .buffet-horario li{display:grid;grid-template-columns:84px 1fr;grid-template-areas:"k v" "k d";column-gap:14px;align-items:center;text-align:left;padding:16px 18px;border:0;border-radius:0;background:none}
  .buffet-horario li+li{border-top:1px solid var(--linea-suave)}
  .buffet-horario small{grid-area:k;margin:0}
  .buffet-horario b{grid-area:v;font-size:24px}
  .buffet-horario span{grid-area:d;margin-top:2px;font-size:13px}
  .carrusel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:4px 2px 14px}
  .carrusel .reel{flex:0 0 min(62vw,240px);scroll-snap-align:start}
  .niveles ol{grid-template-columns:repeat(5,1fr)}
  .reloj b{font-size:32px}
  .mapa,.mapa iframe{min-height:280px}
  .barra-movil{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:25;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(7,7,9,.95);border-top:1px solid var(--linea)}
  .barra-movil .btn{min-height:48px;padding:0 10px}
  .pie-legal{padding-bottom:110px}
}
@media (max-width:420px){
  .btn{padding:0 18px;letter-spacing:.08em}
  .hero .acciones .btn,.wa-demo .btn{flex:1 1 100%}
  .wa-demo .btn{white-space:normal;text-align:center}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .h-in{opacity:1;transform:none}
}
