/* ==========================================================
   El Tardeo 90's — Widgets Elementor
   Estilo neón/rave. Autocontenido: funciona con el tema
   El Tardeo 90's y también con Hello Elementor u otros.
   ========================================================== */

.t90{
  /* ---- Paleta original de El Tardeo 90's (rojo + negro) ---- */
  --t90-red:#FF1744;         /* rojo de marca del logo */
  --t90-red-dark:#D50032;
  --t90-bg:#000;
  --t90-bg2:#050505;
  --t90-panel:#111;
  --t90-panel2:#1a1a1a;
  --t90-txt:#fff;
  --t90-muted:rgba(255,255,255,.4);
  --t90-muted2:rgba(255,255,255,.55);
  --t90-card:rgba(255,255,255,.04);
  --t90-line:rgba(255,255,255,.1);
  --t90-shadow:0 18px 50px rgba(0,0,0,.5);
  --t90-glow:0 0 24px rgba(255,23,68,.45);
  --t90-radius:12px;
  --t90-display:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --t90-body:"Helvetica Neue",Helvetica,Arial,sans-serif;

  /* ---- Alias: mantienen compatibles las reglas antiguas ---- */
  --t90-pink:var(--t90-red);
  --t90-cyan:var(--t90-red);
  --t90-yellow:var(--t90-red);
  --t90-green:#2dff7a;

  color:var(--t90-txt);
  font-family:var(--t90-body);
}
.t90 *{box-sizing:border-box}
.t90 a{text-decoration:none}
.t90 img{max-width:100%;display:block}

/* ---------- Piezas comunes ---------- */
.t90-kicker{
  display:inline-flex;border:1px solid var(--t90-line);border-radius:999px;
  padding:8px 13px;background:rgba(255,255,255,.06);color:var(--t90-yellow);
  font:900 13px var(--t90-body);text-transform:uppercase;letter-spacing:.12em;
}
.t90-lead{font:bold clamp(18px,2.1vw,26px)/1.35 var(--t90-body);color:var(--t90-muted);max-width:720px}
.t90-copy{font:bold 18px/1.6 var(--t90-body);color:var(--t90-muted);max-width:850px}

.t90-title{
  font-size:clamp(34px,5vw,70px);line-height:.9;margin:0 0 20px;text-transform:uppercase;
  font-family:var(--t90-display);color:var(--t90-txt);
  text-shadow:4px 4px 0 #000,0 0 18px var(--t90-pink);
}
.t90-title em{font-style:normal;color:var(--t90-cyan)}

.t90-btn{
  display:inline-flex;align-items:center;gap:10px;padding:15px 22px;border-radius:999px;
  border:2px solid var(--t90-txt);background:linear-gradient(90deg,var(--t90-pink),var(--t90-cyan));
  color:#09000f;text-transform:uppercase;font:900 15px var(--t90-body);letter-spacing:.04em;
  box-shadow:var(--t90-shadow);transition:transform .2s;cursor:pointer;
}
.t90-btn:hover{transform:translateY(-2px)}
.t90-btn--ghost{background:transparent;border-color:var(--t90-cyan);color:var(--t90-txt);box-shadow:none}

/* ---------- HERO ---------- */
.t90-hero{position:relative;display:grid;align-items:center;padding:70px 0 44px}
.t90-hero--full{min-height:calc(100vh - 72px)}
.t90-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}
.t90-hero__grid--solo{grid-template-columns:1fr}
.t90-hero h1{
  font-size:clamp(52px,10vw,126px);line-height:.82;margin:18px 0;text-transform:uppercase;
  font-family:var(--t90-display);color:var(--t90-txt);
  text-shadow:5px 5px 0 #000,0 0 20px var(--t90-pink),0 0 32px var(--t90-cyan);
}
.t90-hero h1 .t90-hl{display:block;color:var(--t90-yellow);text-shadow:5px 5px 0 #000,0 0 24px var(--t90-yellow)}
.t90-hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.t90-hero__card{
  position:relative;min-height:560px;border:1px solid var(--t90-line);border-radius:var(--t90-radius);
  overflow:hidden;background:linear-gradient(145deg,rgba(255,47,214,.2),rgba(0,247,255,.12));box-shadow:var(--t90-shadow);
}
.t90-hero__card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.t90-hero__card::after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 40% 28%,rgba(255,255,255,.28),transparent 19%),linear-gradient(180deg,transparent,rgba(0,0,0,.84));
}
.t90-poster{
  position:absolute;inset:auto 26px 26px 26px;z-index:2;border:2px solid rgba(255,255,255,.35);
  border-radius:22px;padding:24px;background:rgba(0,0,0,.42);text-transform:uppercase;box-shadow:0 0 30px rgba(0,0,0,.5);
}
.t90-poster small{color:var(--t90-yellow);letter-spacing:.12em;font:900 13px var(--t90-body)}
.t90-poster b{font-size:42px;display:block;color:var(--t90-cyan);text-shadow:0 0 15px var(--t90-cyan);font-family:var(--t90-display)}
.t90-poster__meta{font:900 13px/1.5 var(--t90-body);color:var(--t90-cyan);text-transform:uppercase;letter-spacing:.06em}

/* ---------- TICKER ---------- */
.t90-ticker{border-block:2px solid var(--t90-txt);background:#09000d;overflow:hidden;white-space:nowrap}
.t90-ticker__track{
  display:inline-block;padding:12px 0;font-size:22px;text-transform:uppercase;
  color:var(--t90-txt);text-shadow:0 0 12px var(--t90-pink);font-family:var(--t90-display);
  animation:t90ticker var(--t90-speed,24s) linear infinite;
}
.t90-ticker__track--rev{animation-direction:reverse}
.t90-ticker:hover .t90-ticker__track{animation-play-state:paused}
.t90-star{margin:0 18px;color:var(--t90-cyan)}
@keyframes t90ticker{to{transform:translateX(-50%)}}

/* ---------- DALE AL PLAY (Spotify) ---------- */
.t90-play{display:flex;flex-direction:column;gap:14px}
.t90-play--center{align-items:center}
.t90-play--right{align-items:flex-end}
.t90-play__btn{font-size:18px}
.t90-dot{width:10px;height:10px;border-radius:50%;background:#09000f;animation:t90pulse 1.3s infinite}
@keyframes t90pulse{50%{opacity:.3}}
.t90-play__box{
  width:100%;max-width:720px;border-radius:16px;overflow:hidden;border:1px solid var(--t90-line);
  background:rgba(0,0,0,.4);box-shadow:var(--t90-shadow);
}
.t90-play__box[hidden]{display:none}
.t90-play__box iframe{width:100%;border:0;display:block}

/* ---------- AGENDA ---------- */
.t90-filtros{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.t90-filtro{
  padding:10px 18px;border-radius:999px;border:1px solid var(--t90-line);background:transparent;
  color:var(--t90-muted);font:900 13px var(--t90-body);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:.2s;
}
.t90-filtro:hover{color:var(--t90-txt)}
.t90-filtro.is-active{background:linear-gradient(90deg,var(--t90-pink),var(--t90-cyan));color:#09000f;border-color:transparent;box-shadow:var(--t90-shadow)}
.t90-agenda{display:grid;gap:22px}
.t90-agenda[data-cols="1"]{grid-template-columns:1fr}
.t90-agenda[data-cols="2"]{grid-template-columns:repeat(2,1fr)}
.t90-agenda[data-cols="3"]{grid-template-columns:repeat(3,1fr)}
.t90-agenda[data-cols="4"]{grid-template-columns:repeat(4,1fr)}
.t90-evento{
  position:relative;background:var(--t90-card);border:1px solid var(--t90-line);border-radius:var(--t90-radius);
  overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.26);transition:transform .2s,box-shadow .2s;
}
.t90-evento:hover{transform:translateY(-6px);box-shadow:var(--t90-shadow)}
.t90-evento[hidden]{display:none!important}
.t90-evento__img{position:relative;aspect-ratio:3/2;overflow:hidden;background:linear-gradient(135deg,rgba(255,47,214,.5),rgba(0,247,255,.5))}
.t90-evento__img img{width:100%;height:100%;object-fit:cover}
.t90-evento__noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font:900 40px var(--t90-display);color:rgba(255,255,255,.5)}
.t90-evento__fecha{
  position:absolute;top:14px;left:14px;z-index:2;background:rgba(0,0,0,.75);border:1px solid var(--t90-cyan);
  border-radius:14px;padding:8px 12px;text-align:center;font-family:var(--t90-display);line-height:1;
}
.t90-evento__fecha .d{display:block;font-size:24px;color:var(--t90-cyan)}
.t90-evento__fecha .m{display:block;font:900 11px var(--t90-body);color:var(--t90-yellow);text-transform:uppercase;letter-spacing:.1em;margin-top:3px}
.t90-badge{
  position:absolute;top:14px;right:14px;z-index:2;border-radius:999px;padding:6px 12px;
  font:900 11px var(--t90-body);text-transform:uppercase;letter-spacing:.08em;
}
.t90-badge--agotado{background:#f39c12;color:#09000f}
.t90-badge--cancelado{background:#e74c3c;color:#fff}
.t90-badge--pasado{background:#7f8c8d;color:#fff}
.t90-evento__body{padding:22px}
.t90-evento__title{font:900 22px var(--t90-display);text-transform:uppercase;color:var(--t90-txt);margin:0 0 10px}
.t90-evento__meta{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.t90-evento__meta span{font:bold 14px var(--t90-body);color:var(--t90-muted)}
.t90-evento__meta b{color:var(--t90-cyan);font-weight:900}
.t90-evento__btn{width:100%;justify-content:center;font-size:14px;padding:13px 18px}
.t90-evento__btn--off{background:rgba(255,255,255,.1);border-color:var(--t90-line);color:var(--t90-muted);box-shadow:none;cursor:not-allowed}
.t90-vacia{padding:50px 20px;text-align:center;border:2px dashed var(--t90-line);border-radius:var(--t90-radius);color:var(--t90-muted);font:bold 17px var(--t90-body)}

/* ---------- CARDS / EQUIPO / PRODUCTOS ---------- */
.t90-grid{display:grid;gap:22px}
.t90-grid[data-cols="1"]{grid-template-columns:1fr}
.t90-grid[data-cols="2"]{grid-template-columns:repeat(2,1fr)}
.t90-grid[data-cols="3"]{grid-template-columns:repeat(3,1fr)}
.t90-grid[data-cols="4"]{grid-template-columns:repeat(4,1fr)}
.t90-card{background:var(--t90-card);border:1px solid var(--t90-line);border-radius:var(--t90-radius);padding:26px;box-shadow:0 18px 50px rgba(0,0,0,.26)}
.t90-card h3{font:900 24px var(--t90-display);margin:0 0 10px;color:var(--t90-yellow);text-transform:uppercase}
.t90-card p{font:bold 16px/1.6 var(--t90-body);color:var(--t90-muted);margin:0}

.t90-dj{background:var(--t90-card);border:1px solid var(--t90-line);border-radius:var(--t90-radius);overflow:hidden;transition:transform .2s,box-shadow .2s}
.t90-dj:hover{transform:translateY(-6px);box-shadow:var(--t90-shadow)}
.t90-dj__img{aspect-ratio:1/1;overflow:hidden;background:linear-gradient(135deg,rgba(255,47,214,.5),rgba(0,247,255,.5))}
.t90-dj__img img{width:100%;height:100%;object-fit:cover}
.t90-dj__body{padding:20px}
.t90-dj__role{font:900 12px var(--t90-body);color:var(--t90-yellow);text-transform:uppercase;letter-spacing:.1em}
.t90-dj__name{font:900 22px var(--t90-display);text-transform:uppercase;margin:6px 0 8px;color:var(--t90-txt)}
.t90-dj__bio{font:bold 14px/1.6 var(--t90-body);color:var(--t90-muted);margin:0}

.t90-prod{background:var(--t90-card);border:1px solid var(--t90-line);border-radius:var(--t90-radius);padding:22px;text-align:center}
.t90-prod__img{height:160px;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,rgba(255,47,214,.5),rgba(0,247,255,.5));display:flex;align-items:center;justify-content:center;font:900 14px var(--t90-body);color:var(--t90-txt);text-transform:uppercase}
.t90-prod__img img{width:100%;height:100%;object-fit:cover}
.t90-prod p{font:bold 15px var(--t90-body);color:var(--t90-muted);margin-top:12px}

/* ---------- GALERÍA ---------- */
.t90-gal{display:grid;gap:12px}
.t90-gal[data-cols="2"]{grid-template-columns:repeat(2,1fr)}
.t90-gal[data-cols="3"]{grid-template-columns:repeat(3,1fr)}
.t90-gal[data-cols="4"]{grid-template-columns:repeat(4,1fr)}
.t90-gal[data-cols="5"]{grid-template-columns:repeat(5,1fr)}
.t90-gal a,.t90-gal figure{position:relative;margin:0;aspect-ratio:1/1;border-radius:18px;overflow:hidden;border:1px solid var(--t90-line);display:block}
.t90-gal img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.t90-gal a:hover img,.t90-gal figure:hover img{transform:scale(1.07)}

/* ---------- CONTACTO ---------- */
.t90-contacto{
  border-radius:var(--t90-radius);border:1px solid var(--t90-line);padding:34px;
  background:linear-gradient(135deg,rgba(255,47,214,.18),rgba(0,247,255,.12));
  display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;
}
.t90-contacto .t90-title{margin-bottom:14px}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1024px){
  .t90-agenda[data-cols="4"]{grid-template-columns:repeat(2,1fr)}
  .t90-grid[data-cols="4"]{grid-template-columns:repeat(2,1fr)}
  .t90-gal[data-cols="5"],.t90-gal[data-cols="4"]{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:880px){
  .t90-hero,.t90-hero--full{min-height:auto;padding:40px 0}
  .t90-hero__grid{grid-template-columns:1fr}
  .t90-hero__card{min-height:380px}
  .t90-grid[data-cols="3"],.t90-grid[data-cols="2"]{grid-template-columns:1fr}
  .t90-contacto{grid-template-columns:1fr}
}
@media(max-width:560px){
  .t90-gal[data-cols]{grid-template-columns:repeat(2,1fr)}
  .t90-grid[data-cols="4"]{grid-template-columns:1fr}
}

/* ---------- Accesibilidad ---------- */
@media(prefers-reduced-motion:reduce){
  .t90-ticker__track{animation:none}
  .t90 *{transition:none!important}
}

/* ==========================================================
   PANEL DE EVENTOS (móvil) — shortcode [tardeo_panel]
   ========================================================== */
.t90-panel{max-width:640px;margin:0 auto;padding:16px}
.t90-panel__top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.t90-panel__h{font:900 28px var(--t90-display);text-transform:uppercase;margin:0;color:var(--t90-txt);text-shadow:3px 3px 0 #000,0 0 14px var(--t90-pink)}
.t90-panel__p{font:bold 15px var(--t90-body);color:var(--t90-muted)}
.t90-panel__volver{color:var(--t90-cyan);font:900 15px var(--t90-body);text-transform:uppercase}
.t90-panel__nuevo{font-size:14px;padding:12px 18px}
.t90-panel__box{background:var(--t90-card);border:1px solid var(--t90-line);border-radius:var(--t90-radius);padding:24px}

/* Avisos */
.t90-aviso{border-radius:14px;padding:14px 16px;margin-bottom:16px;font:bold 15px var(--t90-body)}
.t90-aviso--ok{background:rgba(45,255,122,.14);border:1px solid var(--t90-green);color:var(--t90-green)}
.t90-aviso--err{background:rgba(255,47,214,.14);border:1px solid var(--t90-pink);color:#ffb8f0}

/* Lista */
.t90-panel__lista{display:flex;flex-direction:column;gap:12px}
.t90-fila{
  display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;
  background:var(--t90-card);border:1px solid var(--t90-line);border-radius:18px;padding:12px;transition:.15s;
}
.t90-fila:active,.t90-fila:hover{border-color:var(--t90-cyan);transform:translateY(-2px)}
.t90-fila__img{width:64px;height:64px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,rgba(255,47,214,.5),rgba(0,247,255,.5));display:flex;align-items:center;justify-content:center}
.t90-fila__img img{width:100%;height:100%;object-fit:cover}
.t90-fila__img span{font:900 14px var(--t90-display);color:rgba(255,255,255,.65)}
.t90-fila__txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.t90-fila__txt strong{font:900 16px var(--t90-body);color:var(--t90-txt);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t90-fila__txt span{font:bold 13px var(--t90-body);color:var(--t90-muted)}
.t90-chip{border-radius:999px;padding:5px 10px;font:900 10px var(--t90-body);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.t90-chip--proximo{background:rgba(0,247,255,.18);color:var(--t90-cyan);border:1px solid var(--t90-cyan)}
.t90-chip--agotado{background:#f39c12;color:#09000f}
.t90-chip--pasado{background:rgba(255,255,255,.12);color:var(--t90-muted)}
.t90-chip--cancelado{background:#e74c3c;color:#fff}

/* Formulario */
.t90-form{display:flex;flex-direction:column;gap:16px}
.t90-campo{display:flex;flex-direction:column;gap:7px}
.t90-campo>span{font:900 12px var(--t90-body);color:var(--t90-yellow);text-transform:uppercase;letter-spacing:.08em}
.t90-campo input,.t90-campo select{
  width:100%;padding:14px;border-radius:14px;border:1px solid var(--t90-line);
  background:rgba(0,0,0,.35);color:var(--t90-txt);font:bold 16px var(--t90-body); /* 16px evita el zoom en iOS */
  -webkit-appearance:none;appearance:none;
}
.t90-campo select{background-image:linear-gradient(45deg,transparent 50%,var(--t90-cyan) 50%),linear-gradient(135deg,var(--t90-cyan) 50%,transparent 50%);
  background-position:calc(100% - 20px) calc(1.25em),calc(100% - 15px) calc(1.25em);background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.t90-campo input:focus,.t90-campo select:focus{outline:none;border-color:var(--t90-cyan);box-shadow:0 0 0 3px rgba(0,247,255,.18)}
.t90-campo__fila{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.t90-subir{display:block;cursor:pointer}
.t90-subir input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.t90-subir__txt{
  display:flex;align-items:center;justify-content:center;gap:8px;padding:18px;border-radius:16px;
  border:2px dashed var(--t90-line);background:rgba(255,255,255,.04);color:var(--t90-muted);
  font:900 14px var(--t90-body);text-transform:uppercase;letter-spacing:.05em;
}
.t90-subir:active .t90-subir__txt{border-color:var(--t90-cyan);color:var(--t90-cyan)}
.t90-form__foto{margin-top:12px;border-radius:16px;overflow:hidden;border:1px solid var(--t90-line);max-height:280px}
.t90-form__foto img,img.t90-form__foto{width:100%;height:auto;display:block;object-fit:cover}
.t90-form__foto[hidden]{display:none}

.t90-check{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--t90-line)}
.t90-check input{width:22px;height:22px;accent-color:var(--t90-pink)}
.t90-check span{font:900 14px var(--t90-body);color:var(--t90-txt);text-transform:uppercase}

.t90-form__guardar{width:100%;justify-content:center;padding:18px;font-size:16px;border:0}
.t90-form__borrar{margin-top:18px;text-align:center}
.t90-borrar{background:none;border:1px solid rgba(231,76,60,.5);color:#ff8b7f;border-radius:999px;padding:12px 20px;font:900 13px var(--t90-body);text-transform:uppercase;cursor:pointer}
.t90-borrar:active{background:rgba(231,76,60,.15)}

/* Login de WordPress dentro del panel */
.t90-panel .login-username,.t90-panel .login-password,.t90-panel .login-remember,.t90-panel .login-submit{margin-bottom:14px}
.t90-panel .login-username label,.t90-panel .login-password label{display:block;font:900 12px var(--t90-body);color:var(--t90-yellow);text-transform:uppercase;margin-bottom:6px}
.t90-panel #user_login,.t90-panel #user_pass{width:100%;padding:14px;border-radius:14px;border:1px solid var(--t90-line);background:rgba(0,0,0,.35);color:var(--t90-txt);font:bold 16px var(--t90-body)}
.t90-panel #wp-submit{
  width:100%;padding:16px;border-radius:999px;border:2px solid var(--t90-txt);cursor:pointer;
  background:linear-gradient(90deg,var(--t90-pink),var(--t90-cyan));color:#09000f;font:900 15px var(--t90-body);text-transform:uppercase;
}

@media(max-width:420px){
  .t90-panel__top{flex-direction:column;align-items:stretch}
  .t90-panel__nuevo{justify-content:center}
  .t90-fila{grid-template-columns:54px 1fr;grid-template-areas:"img txt" "chip chip"}
  .t90-fila__img{grid-area:img;width:54px;height:54px}
  .t90-fila__txt{grid-area:txt}
  .t90-chip{grid-area:chip;justify-self:start}
}

/* ==========================================================
   v1.2 — BOTÓN REDONDO «DALE AL PLAY» (latido + ondas)
   ========================================================== */
.t90-play__round{--t90-play-size:96px;--t90-wave:var(--t90-pink);display:flex;flex-direction:column;align-items:center;gap:12px}
.t90-play__circle{
  position:relative;width:var(--t90-play-size);height:var(--t90-play-size);border-radius:50%;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--t90-pink),var(--t90-cyan));
  box-shadow:0 0 22px rgba(255,47,214,.55),0 10px 30px rgba(0,0,0,.45);
  display:grid;place-items:center;isolation:isolate;
  animation:t90beat 1.6s ease-in-out infinite;
}
.t90-play__circle:hover{animation-play-state:paused;transform:scale(1.06);transition:transform .2s}
.t90-play__circle:focus-visible{outline:3px solid var(--t90-cyan);outline-offset:4px}
@keyframes t90beat{
  0%,100%{transform:scale(1)}
  14%{transform:scale(1.09)}
  28%{transform:scale(1)}
  42%{transform:scale(1.06)}
  56%{transform:scale(1)}
}
/* Ondas expansivas */
.t90-play__wave{
  position:absolute;inset:0;border-radius:50%;border:2px solid var(--t90-wave);
  opacity:0;pointer-events:none;z-index:-1;animation:t90wave 2.4s ease-out infinite;
}
.t90-play__wave:nth-child(2){animation-delay:.8s}
.t90-play__wave:nth-child(3){animation-delay:1.6s}
@keyframes t90wave{
  0%{transform:scale(1);opacity:.75}
  100%{transform:scale(2.3);opacity:0}
}
/* Triángulo de play (CSS puro) */
.t90-play__icon{
  width:0;height:0;margin-left:15%;
  border-top:calc(var(--t90-play-size)*.17) solid transparent;
  border-bottom:calc(var(--t90-play-size)*.17) solid transparent;
  border-left:calc(var(--t90-play-size)*.28) solid #09000f;
  transition:.2s;
}
/* Estado sonando: pausa dibujada con dos barras */
.t90-play__round.is-playing .t90-play__circle{animation:none}
.t90-play__round.is-playing .t90-play__wave{animation:none;opacity:0}
.t90-play__round.is-playing .t90-play__icon{
  margin-left:0;width:calc(var(--t90-play-size)*.26);height:calc(var(--t90-play-size)*.3);
  border:0;background:linear-gradient(90deg,#09000f 0 34%,transparent 34% 66%,#09000f 66% 100%);
}
.t90-play__caption{font:900 13px var(--t90-body);letter-spacing:.14em;text-transform:uppercase;color:var(--t90-muted)}
.t90-play__round.is-playing .t90-play__caption{color:var(--t90-cyan)}

/* ==========================================================
   v1.2 — AGENDA EN LISTA
   ========================================================== */
.t90-agenda--lista{grid-template-columns:1fr}
.t90-agenda--lista .t90-evento{display:flex;align-items:stretch;gap:0}
.t90-agenda--lista .t90-evento__img{width:150px;flex:0 0 150px;aspect-ratio:auto;align-self:stretch}
.t90-agenda--lista .t90-evento__body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px}
.t90-agenda--lista .t90-evento__title{font-size:26px;margin:0}
.t90-agenda--lista .t90-evento__meta{margin-bottom:0}
.t90-agenda--lista .t90-evento__btn{width:auto;align-self:flex-start;margin-top:6px}
.t90-evento__cuando{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.t90-pill{
  background:var(--t90-pink);color:#09000f;border-radius:8px;padding:6px 12px;
  font:900 12px var(--t90-body);text-transform:uppercase;letter-spacing:.08em;
}
.t90-hora{font:bold 14px var(--t90-body);color:var(--t90-muted)}
@media(max-width:640px){
  .t90-agenda--lista .t90-evento{flex-direction:column}
  .t90-agenda--lista .t90-evento__img{width:100%!important;flex:0 0 auto!important;aspect-ratio:16/9}
}

/* Filtros: por defecto centrados */
.t90-filtros{justify-content:center}
.t90-filtros--estado{margin-bottom:14px}

/* Diagnóstico (solo admins) */
.t90-diag{
  margin-top:16px;border:1px solid var(--t90-cyan);border-radius:16px;padding:16px 20px;
  background:rgba(0,247,255,.07);color:var(--t90-txt);font:14px/1.6 var(--t90-body);text-align:left;
}
.t90-diag ul{margin:10px 0;padding-left:20px}
.t90-diag li{margin:4px 0}
.t90-diag p{margin:10px 0 0;color:var(--t90-yellow);font-weight:bold}

/* ==========================================================
   v1.2 — SCROLL HORIZONTAL (equipo / salas)
   ========================================================== */
.t90-scroll{
  display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding-bottom:14px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;
  scrollbar-color:var(--t90-pink) rgba(255,255,255,.08);
}
.t90-scroll::-webkit-scrollbar{height:8px}
.t90-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.08);border-radius:99px}
.t90-scroll::-webkit-scrollbar-thumb{background:linear-gradient(90deg,var(--t90-pink),var(--t90-cyan));border-radius:99px}
.t90-scroll>*{scroll-snap-align:start;flex:0 0 var(--t90-scroll-w,280px)}

/* ==========================================================
   v1.2 — SALAS
   ========================================================== */
.t90-sala{
  position:relative;border-radius:var(--t90-radius);overflow:hidden;border:1px solid var(--t90-line);
  min-height:260px;display:flex;align-items:flex-end;
  background:linear-gradient(135deg,rgba(255,47,214,.35),rgba(0,247,255,.25));
  transition:transform .2s,box-shadow .2s;
}
.t90-sala:hover{transform:translateY(-6px);box-shadow:var(--t90-shadow)}
.t90-sala__img{position:absolute;inset:0}
.t90-sala__img img{width:100%;height:100%;object-fit:cover}
.t90-sala::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.86))}
.t90-sala__body{position:relative;z-index:2;padding:22px;width:100%}
.t90-sala__tag{
  position:absolute;top:16px;right:16px;z-index:3;border:1px solid var(--t90-pink);color:var(--t90-pink);
  border-radius:999px;padding:5px 12px;font:900 10px var(--t90-body);text-transform:uppercase;letter-spacing:.1em;
  background:rgba(0,0,0,.5);
}
.t90-sala__name{font:900 24px var(--t90-display);text-transform:uppercase;color:var(--t90-txt);margin:0 0 6px}
.t90-sala__city{font:900 13px var(--t90-body);color:var(--t90-pink);text-transform:uppercase;letter-spacing:.08em}
.t90-sala__addr{font:bold 13px var(--t90-body);color:var(--t90-muted);margin:6px 0 0}

/* ==========================================================
   v1.2 — HERO: logo + cuenta atrás
   ========================================================== */
.t90-cuenta{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;padding:40px 16px}
.t90-cuenta__logo{max-width:min(560px,86vw);opacity:0;transform:translateY(40px)}
.t90-cuenta__logo.is-in{animation:t90rise .9s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes t90rise{to{opacity:1;transform:translateY(0)}}
.t90-cuenta__claim{font:900 clamp(14px,2vw,20px) var(--t90-body);letter-spacing:.16em;text-transform:uppercase;color:var(--t90-txt)}
.t90-cuenta__claim em{font-style:normal;color:var(--t90-pink)}
.t90-cuenta__pre{font:900 12px var(--t90-body);letter-spacing:.22em;text-transform:uppercase;color:var(--t90-muted)}
.t90-reloj{display:flex;gap:clamp(10px,3vw,34px);align-items:flex-start}
.t90-reloj__u{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:clamp(56px,12vw,110px)}
.t90-reloj__n{
  font:900 clamp(38px,9vw,86px)/1 var(--t90-display);color:var(--t90-txt);
  text-shadow:3px 3px 0 #000,0 0 20px var(--t90-pink);font-variant-numeric:tabular-nums;
}
.t90-reloj__l{font:900 10px var(--t90-body);letter-spacing:.2em;text-transform:uppercase;color:var(--t90-muted)}
.t90-reloj__sep{font:900 clamp(24px,5vw,50px) var(--t90-display);color:var(--t90-cyan);opacity:.5;padding-top:.15em}
.t90-cuenta__donde{font:900 clamp(12px,1.8vw,16px) var(--t90-body);letter-spacing:.14em;text-transform:uppercase;color:var(--t90-pink)}
.t90-cuenta__ya{font:900 clamp(18px,4vw,34px) var(--t90-display);color:var(--t90-green);text-transform:uppercase}

@media(prefers-reduced-motion:reduce){
  .t90-play__circle,.t90-play__wave{animation:none!important}
  .t90-cuenta__logo{opacity:1;transform:none;animation:none!important}
}


/* ==========================================================
   v1.3 — TEMA ORIGINAL: rojo #FF1744 sobre negro, sin neón
   ========================================================== */

/* Titulares: peso 900, sin resplandor, con el punto rojo de la marca */
.t90-title,.t90-hero h1,.t90-evento__title,.t90-dj__name,.t90-sala__name,.t90-card h3,.t90-panel__h{
  text-shadow:none;
  font-weight:900;
  letter-spacing:-.02em;
}
.t90-title{font-size:clamp(32px,4.6vw,64px);text-transform:none}
.t90-title em{color:var(--t90-red);font-style:normal}
/* El punto rojo del final: "El equipo." */
.t90-title--punto::after{content:".";color:var(--t90-red)}
.t90-hero h1{text-transform:none;letter-spacing:-.03em}
.t90-hero h1 .t90-hl{color:var(--t90-red);text-shadow:none}

/* Botones: rojo plano, esquinas suaves */
.t90-btn{
  background:var(--t90-red);border:0;color:#fff;border-radius:6px;
  box-shadow:none;letter-spacing:.08em;font-weight:900;
}
.t90-btn:hover{background:var(--t90-red-dark);transform:none}
.t90-btn--ghost{background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff}
.t90-btn--ghost:hover{background:rgba(255,255,255,.08)}

/* Tarjetas: negro con línea sutil */
.t90-evento,.t90-card,.t90-dj,.t90-prod,.t90-sala,.t90-panel__box,.t90-fila{
  background:var(--t90-panel);border-color:var(--t90-line);box-shadow:none;
}
.t90-evento:hover,.t90-dj:hover,.t90-sala:hover{box-shadow:var(--t90-shadow);border-color:rgba(255,255,255,.2)}
.t90-evento__noimg,.t90-evento__img,.t90-dj__img,.t90-prod__img,.t90-sala{background:var(--t90-panel2)}
.t90-fila__img{background:var(--t90-panel2)}

/* Etiquetas y chapas */
.t90-kicker{color:var(--t90-red);background:transparent;border-color:rgba(255,255,255,.15)}
.t90-dj__role,.t90-sala__city{color:var(--t90-red)}
.t90-card h3{color:#fff}
.t90-pill{background:var(--t90-red);color:#fff;border-radius:4px}
.t90-evento__fecha{background:rgba(0,0,0,.8);border-color:var(--t90-red);border-radius:6px}
.t90-evento__fecha .d{color:var(--t90-red)}
.t90-evento__fecha .m{color:#fff}
.t90-evento__meta b{color:var(--t90-red)}
.t90-sala__tag{border-color:var(--t90-red);color:var(--t90-red)}

/* Filtros tipo pestaña, como la original */
.t90-filtro{
  border:1px solid rgba(255,255,255,.12);border-radius:4px;color:rgba(255,255,255,.45);
  letter-spacing:.14em;background:transparent;
}
.t90-filtro:hover{color:#fff;border-color:rgba(255,255,255,.3)}
.t90-filtro.is-active{background:var(--t90-red);color:#fff;border-color:var(--t90-red);box-shadow:none}

/* Ticker: rojo sobre negro */
.t90-ticker{background:#000;border-color:rgba(255,255,255,.12)}
.t90-ticker__track{text-shadow:none;color:#fff;font-weight:900;letter-spacing:.02em}
.t90-star{color:var(--t90-red)}

/* Contacto */
.t90-contacto{background:var(--t90-panel);border-color:var(--t90-line)}

/* Play redondo: rojo plano con ondas rojas */
.t90-play__round{--t90-wave:var(--t90-red)}
.t90-play__circle{background:var(--t90-red);box-shadow:var(--t90-glow),0 10px 30px rgba(0,0,0,.6)}
.t90-play__icon{border-left-color:#fff}
.t90-play__round.is-playing .t90-play__icon{background:linear-gradient(90deg,#fff 0 34%,transparent 34% 66%,#fff 66% 100%)}
.t90-play__box{border-color:var(--t90-line);background:rgba(0,0,0,.9);box-shadow:none;border-radius:12px}

/* Cuenta atrás */
.t90-reloj__n{text-shadow:none;font-weight:900;letter-spacing:-.03em}
.t90-reloj__sep{color:rgba(255,255,255,.2)}
.t90-cuenta__donde,.t90-cuenta__claim em{color:var(--t90-red)}
.t90-cuenta__pre{color:rgba(255,255,255,.35)}

/* Panel móvil */
.t90-campo>span{color:rgba(255,255,255,.45);letter-spacing:.1em}
.t90-campo input,.t90-campo select,.t90-panel #user_login,.t90-panel #user_pass{
  background:var(--t90-panel2);border-color:var(--t90-line);border-radius:6px;
}
.t90-campo input:focus,.t90-campo select:focus{border-color:var(--t90-red);box-shadow:0 0 0 3px rgba(255,23,68,.2)}
.t90-panel #wp-submit{background:var(--t90-red);border:0;border-radius:6px}
.t90-check input{accent-color:var(--t90-red)}
.t90-chip--proximo{background:rgba(255,23,68,.15);color:var(--t90-red);border-color:var(--t90-red)}
.t90-subir:active .t90-subir__txt{border-color:var(--t90-red);color:var(--t90-red)}
.t90-aviso--err{background:rgba(255,23,68,.12);border-color:var(--t90-red);color:#ff8fa3}
.t90-diag{border-color:var(--t90-red);background:rgba(255,23,68,.06)}
.t90-diag p{color:var(--t90-red)}

/* Barra de scroll roja */
.t90-scroll::-webkit-scrollbar-thumb{background:var(--t90-red)}
.t90-scroll{scrollbar-color:var(--t90-red) rgba(255,255,255,.08)}

/* ---------- Incrustar (iframe) ---------- */
.t90-embed-wrap{display:flex;justify-content:center;width:100%}
.t90-embed{width:100%;border:1px solid var(--t90-line);border-radius:12px;overflow:hidden;background:var(--t90-panel)}
.t90-embed iframe{width:100%;height:600px;border:0;display:block}

/* ---------- Cuenta atrás con vídeo/imagen de fondo ---------- */
.t90-cuenta--fondo{position:relative;overflow:hidden;border-radius:12px;justify-content:center}
.t90-cuenta__video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;
  pointer-events:none;border-radius:inherit;
}
.t90-cuenta__velo{position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.6);border-radius:inherit}
.t90-cuenta__dentro{
  position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;
  gap:18px;text-align:center;width:100%;
}
.t90-cuenta--fondo .t90-reloj__n{text-shadow:0 2px 18px rgba(0,0,0,.8)}

/* ==========================================================
   v1.5 — AGENDA: columnas 5/6, automáticas y formato póster
   ========================================================== */
.t90-agenda[data-cols="5"]{grid-template-columns:repeat(5,1fr)}
.t90-agenda[data-cols="6"]{grid-template-columns:repeat(6,1fr)}
.t90-agenda[data-cols="auto"]{
  grid-template-columns:repeat(auto-fill,minmax(var(--t90-card-min,260px),1fr));
}

/* Póster vertical: cartel grande, texto compacto debajo */
.t90-agenda--poster .t90-evento__img{aspect-ratio:.7}
.t90-agenda--poster .t90-evento__body{padding:14px}
.t90-agenda--poster .t90-evento__title{font-size:16px;line-height:1.25;margin-bottom:6px}
.t90-agenda--poster .t90-evento__meta{gap:3px;margin-bottom:10px}
.t90-agenda--poster .t90-evento__meta span{font-size:12px}
.t90-agenda--poster .t90-evento__btn{padding:10px 12px;font-size:11px;letter-spacing:.04em}
.t90-agenda--poster .t90-evento__fecha{top:8px;left:8px;padding:5px 8px}
.t90-agenda--poster .t90-evento__fecha .d{font-size:17px}
.t90-agenda--poster .t90-evento__fecha .m{font-size:9px}
.t90-agenda--poster .t90-badge{top:8px;right:8px;padding:4px 8px;font-size:9px}

/* Responsive: las columnas fijas se reducen por pasos; «auto» ya se adapta sola */
@media(max-width:1200px){
  .t90-agenda[data-cols="6"]{grid-template-columns:repeat(4,1fr)}
  .t90-agenda[data-cols="5"]{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:880px){
  .t90-agenda[data-cols="6"],.t90-agenda[data-cols="5"]{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:640px){
  .t90-agenda[data-cols="6"],.t90-agenda[data-cols="5"],
  .t90-agenda[data-cols="4"],.t90-agenda[data-cols="3"]{grid-template-columns:repeat(2,1fr)}
  .t90-agenda--poster .t90-evento__title{font-size:14px}
}


/* v1.6 — el atributo hidden debe ganar a cualquier display posterior */
.t90-agenda .t90-evento[hidden],
.t90-agenda--lista .t90-evento[hidden],
.t90-agenda--poster .t90-evento[hidden],
.t90-agenda--rejilla .t90-evento[hidden]{display:none!important}

/* ==========================================================
   v1.7 — GALERÍAS DE EVENTOS
   ========================================================== */
.t90-gal-wrap{width:100%}

/* Barra de búsqueda */
.t90-gal__barra{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:24px}
.t90-gal__buscar,.t90-gal__sel{
  padding:13px 16px;border-radius:6px;border:1px solid var(--t90-line);
  background:var(--t90-panel2);color:var(--t90-txt);font:bold 15px var(--t90-body);
  -webkit-appearance:none;appearance:none;
}
.t90-gal__buscar{flex:1;min-width:240px;max-width:420px}
.t90-gal__sel{min-width:170px;cursor:pointer;padding-right:34px;
  background-image:linear-gradient(45deg,transparent 50%,var(--t90-red) 50%),linear-gradient(135deg,var(--t90-red) 50%,transparent 50%);
  background-position:calc(100% - 18px) calc(1.15em),calc(100% - 13px) calc(1.15em);
  background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.t90-gal__buscar:focus,.t90-gal__sel:focus{outline:none;border-color:var(--t90-red);box-shadow:0 0 0 3px rgba(255,23,68,.2)}

/* Rejilla de galerías */
.t90-gals{display:grid;gap:16px}
.t90-gals[data-cols="auto"]{grid-template-columns:repeat(auto-fill,minmax(var(--t90-card-min,260px),1fr))}
.t90-gals[data-cols="2"]{grid-template-columns:repeat(2,1fr)}
.t90-gals[data-cols="3"]{grid-template-columns:repeat(3,1fr)}
.t90-gals[data-cols="4"]{grid-template-columns:repeat(4,1fr)}
.t90-gals[data-cols="5"]{grid-template-columns:repeat(5,1fr)}
.t90-gals[data-cols="6"]{grid-template-columns:repeat(6,1fr)}

.t90-gal{
  display:block;background:var(--t90-panel);border:1px solid var(--t90-line);border-radius:12px;
  overflow:hidden;transition:transform .2s,border-color .2s;
}
.t90-gal:hover{transform:translateY(-5px);border-color:var(--t90-red)}
.t90-gal[hidden]{display:none!important}
.t90-gal__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--t90-panel2)}
.t90-gal__img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.t90-gal:hover .t90-gal__img img{transform:scale(1.06)}
.t90-gal__n{
  position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.75);color:#fff;
  border-radius:4px;padding:4px 8px;font:900 11px var(--t90-body);
}
.t90-gal__body{padding:14px;display:flex;flex-direction:column;gap:5px}
.t90-gal__fecha{font:900 11px var(--t90-body);letter-spacing:.1em;color:var(--t90-red)}
.t90-gal__name{font:900 15px/1.3 var(--t90-body);color:var(--t90-txt);margin:0}
.t90-gal__sub{font:bold 12px var(--t90-body);color:var(--t90-muted)}

/* Cabecera de una galería */
.t90-gal__volver{
  display:inline-block;color:var(--t90-red);font:900 14px var(--t90-body);
  text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;
}
.t90-gal__cab{margin-bottom:22px;text-align:center}
.t90-gal__h{font:900 clamp(24px,3.4vw,40px) var(--t90-display);color:var(--t90-txt);margin:0 0 6px;letter-spacing:-.02em}

/* Rejilla de fotos */
.t90-fotos{display:grid;gap:16px}
.t90-fotos[data-cols="auto"]{grid-template-columns:repeat(auto-fill,minmax(var(--t90-card-min,200px),1fr))}
.t90-fotos[data-cols="2"]{grid-template-columns:repeat(2,1fr)}
.t90-fotos[data-cols="3"]{grid-template-columns:repeat(3,1fr)}
.t90-fotos[data-cols="4"]{grid-template-columns:repeat(4,1fr)}
.t90-fotos[data-cols="5"]{grid-template-columns:repeat(5,1fr)}
.t90-fotos[data-cols="6"]{grid-template-columns:repeat(6,1fr)}
.t90-foto{
  padding:0;border:1px solid var(--t90-line);border-radius:8px;overflow:hidden;cursor:pointer;
  background:var(--t90-panel2);aspect-ratio:1;display:block;transition:border-color .2s;
}
.t90-foto:hover{border-color:var(--t90-red)}
.t90-foto:focus-visible{outline:3px solid var(--t90-red);outline-offset:2px}
.t90-foto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.t90-foto:hover img{transform:scale(1.07)}

/* Visor a pantalla completa */
.t90-visor{
  position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.94);
  display:flex;align-items:center;justify-content:center;padding:20px;
}
.t90-visor[hidden]{display:none}
.t90-visor img{max-width:100%;max-height:86vh;object-fit:contain;border-radius:6px}
.t90-visor__pie{
  position:absolute;bottom:16px;left:0;right:0;text-align:center;color:rgba(255,255,255,.6);
  font:bold 13px var(--t90-body);padding:0 20px;
}
.t90-visor__x,.t90-visor__ant,.t90-visor__sig{
  position:absolute;background:rgba(255,255,255,.1);border:0;color:#fff;cursor:pointer;
  width:48px;height:48px;border-radius:50%;font-size:22px;line-height:1;
  display:grid;place-items:center;transition:background .2s;
}
.t90-visor__x:hover,.t90-visor__ant:hover,.t90-visor__sig:hover{background:var(--t90-red)}
.t90-visor__x{top:16px;right:16px}
.t90-visor__ant{left:16px;top:50%;transform:translateY(-50%)}
.t90-visor__sig{right:16px;top:50%;transform:translateY(-50%)}

@media(max-width:640px){
  .t90-gals[data-cols="6"],.t90-gals[data-cols="5"],
  .t90-gals[data-cols="4"],.t90-gals[data-cols="3"]{grid-template-columns:repeat(2,1fr)}
  .t90-fotos[data-cols="6"],.t90-fotos[data-cols="5"],
  .t90-fotos[data-cols="4"]{grid-template-columns:repeat(3,1fr)}
  .t90-gal__barra{flex-direction:column}
  .t90-gal__buscar,.t90-gal__sel{max-width:none;width:100%}
  .t90-visor__ant,.t90-visor__sig{width:40px;height:40px}
}

/* ==========================================================
   v2.1 — CONTRATACIÓN + VENTANA DE CONTACTO
   ========================================================== */
.t90-contrata{text-align:center;padding:80px 20px;display:flex;flex-direction:column;align-items:center;gap:14px}
.t90-contrata__k{font:900 12px var(--t90-body);letter-spacing:.28em;text-transform:uppercase;color:var(--t90-muted);margin:0}
.t90-contrata__h{
  font:900 clamp(30px,5vw,64px)/1.05 var(--t90-display);color:#fff;margin:0;letter-spacing:-.03em;max-width:16ch;
}
.t90-contrata__h em{color:var(--t90-red);font-style:normal}
.t90-contrata__p{font:400 clamp(14px,1.5vw,17px)/1.6 var(--t90-body);color:rgba(255,255,255,.6);max-width:58ch;margin:6px 0 10px}
.t90-contrata__btns{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.t90-btn--blanco{background:#fff;color:#000;border:1px solid #fff}
.t90-btn--blanco:hover{background:rgba(255,255,255,.85);color:#000}

/* Ventana */
.t90-modal{
  position:fixed;inset:0;z-index:99998;background:rgba(0,0,0,.8);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto;
}
.t90-modal[hidden]{display:none}
.t90-modal__caja{
  position:relative;width:100%;max-width:520px;background:#111;border:1px solid rgba(255,255,255,.12);
  border-radius:14px;padding:30px;
}
.t90-modal__x{
  position:absolute;top:14px;right:14px;background:none;border:0;color:#fff;font-size:30px;line-height:1;
  cursor:pointer;width:36px;height:36px;border-radius:50%;transition:background .2s;
}
.t90-modal__x:hover{background:rgba(255,255,255,.12)}
.t90-modal__h{font:900 26px var(--t90-display);color:#fff;margin:0 0 4px;letter-spacing:-.02em}
.t90-modal__sub{font:400 14px var(--t90-body);color:rgba(255,255,255,.5);margin:0 0 20px}

.t90-cform{display:flex;flex-direction:column;gap:12px}
.t90-cform input,.t90-cform textarea{
  width:100%;padding:14px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);color:#fff;font:400 15px var(--t90-body);
}
.t90-cform input::placeholder,.t90-cform textarea::placeholder{color:rgba(255,255,255,.4)}
.t90-cform input:focus,.t90-cform textarea:focus{outline:none;border-color:var(--t90-red);box-shadow:0 0 0 3px rgba(255,23,68,.18)}
.t90-cform textarea{resize:vertical;min-height:110px}
.t90-cform__enviar{width:100%;justify-content:center;padding:16px;margin-top:4px;border:0}
.t90-cform__enviar[disabled]{opacity:.6;cursor:wait}
.t90-cform__aviso{margin:6px 0 0;font:bold 14px var(--t90-body);text-align:center;padding:10px;border-radius:8px}
.t90-cform__aviso[hidden]{display:none}
.t90-cform__aviso.ok{background:rgba(45,255,122,.12);color:#2dff7a}
.t90-cform__aviso.mal{background:rgba(255,23,68,.12);color:#ff8fa3}
/* Trampa antispam: fuera de la vista pero no display:none */
.t90-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}

/* ==========================================================
   v2.1 — PROMO DESTACADA (Krucero)
   ========================================================== */
.t90-promo{
  position:relative;overflow:hidden;border-radius:12px;min-height:70vh;
  display:flex;align-items:center;justify-content:center;background:var(--t90-panel);
}
.t90-promo__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}
.t90-promo__velo{position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.62)}
.t90-promo__dentro{position:relative;z-index:2;text-align:center;padding:50px 20px;display:flex;flex-direction:column;align-items:center;gap:10px}
.t90-promo__emoji{font-size:52px;line-height:1}
.t90-promo__k{font:900 12px var(--t90-body);letter-spacing:.28em;text-transform:uppercase;color:var(--t90-red);margin:6px 0 0}
.t90-promo__h{font:900 clamp(28px,4.6vw,58px)/1.05 var(--t90-display);color:#fff;margin:4px 0;letter-spacing:-.03em}
.t90-promo__ruta{font:400 clamp(14px,1.6vw,18px)/1.5 var(--t90-body);color:rgba(255,255,255,.75);margin:0;max-width:46ch}
.t90-promo__salida{font:400 15px var(--t90-body);color:rgba(255,255,255,.75);margin:0 0 12px}
.t90-promo__salida strong{color:#fff;font-weight:900}

/* ==========================================================
   v2.1 — PIE DE PÁGINA
   ========================================================== */
.t90-foot{background:#050505;border-top:1px solid rgba(255,255,255,.08);padding:56px 24px 26px}
.t90-foot__top{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;
  max-width:1200px;margin:0 auto 40px;
}
.t90-foot__id{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.t90-foot__logo{width:44px;height:auto;display:block}
.t90-foot__nombre{font:900 18px var(--t90-display);color:#fff;text-transform:uppercase;letter-spacing:-.01em}
.t90-foot__lema{font:400 14px/1.6 var(--t90-body);color:rgba(255,255,255,.45);margin:0;max-width:34ch}
.t90-foot__ct{
  font:900 11px var(--t90-body);letter-spacing:.2em;text-transform:uppercase;color:var(--t90-red);margin:0 0 14px;
}
.t90-foot__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.t90-foot__col li{font:400 14px/1.5 var(--t90-body);color:rgba(255,255,255,.55)}
.t90-foot__col a{color:inherit;transition:color .2s}
.t90-foot__col a:hover{color:var(--t90-red)}

.t90-foot__redes{
  display:flex;gap:28px;justify-content:center;flex-wrap:wrap;
  padding:24px 0;border-top:1px solid rgba(255,255,255,.07);max-width:1200px;margin:0 auto;
}
.t90-foot__redes a{
  font:900 12px var(--t90-body);letter-spacing:.16em;text-transform:uppercase;color:#fff;transition:color .2s;
}
.t90-foot__redes a:hover{color:var(--t90-red)}

.t90-foot__djs{text-align:center;padding:6px 0 24px}
.t90-foot__dt{font:900 10px var(--t90-body);letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.3);margin:0 0 8px}
.t90-foot__djlist{display:flex;gap:22px;justify-content:center;flex-wrap:wrap}
.t90-foot__djlist a,.t90-foot__djlist span{font:400 14px var(--t90-body);color:rgba(255,255,255,.65)}
.t90-foot__djlist a:hover{color:var(--t90-red)}

.t90-foot__legal{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.07);padding-top:20px;max-width:1200px;margin:0 auto;
}
.t90-foot__legal span{font:400 12px var(--t90-body);color:rgba(255,255,255,.3)}
.t90-foot__legal a{color:var(--t90-red);text-decoration:underline}

@media(max-width:900px){
  .t90-foot__top{grid-template-columns:1fr 1fr;gap:28px}
}
@media(max-width:560px){
  .t90-foot__top{grid-template-columns:1fr;gap:26px}
  .t90-foot__legal{justify-content:center;text-align:center}
  .t90-foot__redes{gap:16px}
  .t90-modal__caja{padding:22px}
  .t90-contrata{padding:50px 16px}
}

/* ==========================================================
   v2.2 — CARRUSEL AUTOMÁTICO (equipo, como la web original)
   ========================================================== */
.t90-marquee{
  overflow:hidden!important;position:relative;width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
/* !important en lo crítico: si el tema o Elementor meten gap/flex-wrap,
   romperían el bucle. Aquí lo blindamos. */
.t90-marquee__pista{
  display:flex!important;flex-wrap:nowrap!important;width:max-content!important;
  gap:0!important;              /* el hueco va en el margen de cada ficha, no aquí */
  animation:t90slide 45s linear infinite;
  will-change:transform;
}
.t90-marquee:hover .t90-marquee__pista,
.t90-marquee:focus-within .t90-marquee__pista{animation-play-state:paused}
.t90-marquee__pista>*{
  flex:0 0 var(--t90-scroll-w,280px)!important;
  margin:0 22px 0 0!important;box-sizing:border-box;
}
@keyframes t90slide{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
@media(prefers-reduced-motion:reduce){
  .t90-marquee__pista{animation:none;flex-wrap:wrap!important;justify-content:center}
  .t90-marquee{overflow:visible!important}
}
@media(max-width:640px){
  .t90-marquee__pista>*{flex:0 0 min(var(--t90-scroll-w,280px),78vw)!important;margin-right:14px!important}
  .t90-scroll>*{flex:0 0 min(var(--t90-scroll-w,280px),78vw)}
}

/* ==========================================================
   v2.3 — ABOUT + CONTADORES
   ========================================================== */
.t90-about{max-width:900px;margin:0 auto;padding:70px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
.t90-about__k{font:900 12px var(--t90-body);letter-spacing:.28em;text-transform:uppercase;color:var(--t90-muted);margin:0}
.t90-about__h{
  font:900 clamp(28px,4.4vw,56px)/1.06 var(--t90-display);color:#fff;margin:0;letter-spacing:-.03em;max-width:18ch;
}
.t90-about__h em{color:var(--t90-red);font-style:normal}
.t90-about__p{font:400 clamp(14px,1.5vw,17px)/1.75 var(--t90-body);color:rgba(255,255,255,.6);margin:8px 0 0;max-width:70ch}

.t90-cifras{display:grid;gap:28px;width:100%;margin-top:44px}
.t90-cifras[data-cols="2"]{grid-template-columns:repeat(2,1fr)}
.t90-cifras[data-cols="3"]{grid-template-columns:repeat(3,1fr)}
.t90-cifras[data-cols="4"]{grid-template-columns:repeat(4,1fr)}
.t90-cifra{display:flex;flex-direction:column;align-items:center;gap:6px}
.t90-cifra__n{
  font:900 clamp(30px,5vw,60px)/1 var(--t90-display);color:#fff;letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
}
.t90-cifra__l{font:900 11px var(--t90-body);letter-spacing:.18em;text-transform:uppercase;color:var(--t90-muted)}

@media(max-width:640px){
  .t90-cifras{gap:22px}
  .t90-cifras[data-cols="4"],.t90-cifras[data-cols="3"]{grid-template-columns:repeat(2,1fr)}
  .t90-about{padding:46px 16px}
}
