/* Ruby Haze · Antes que todos (early access). Capa sobre tickets.css: la preventa aprobada no se toca. */

/* ---------- hero ---------- */

/* nombre de la fiesta en pequeño, de corrido, con THIRD ANNIVERSARY montado sobre la base de las letras */
.mark{position:relative;display:inline-block;margin-top:16px;font-weight:700;font-size:30px;line-height:.8;letter-spacing:-.03em;word-spacing:.12em;text-transform:uppercase;color:var(--flyer);white-space:nowrap;animation:fade 1s var(--ease) .1s both}
.mark-a{position:absolute;left:50%;top:78%;transform:translate(-50%,-50%);font-size:.25em;letter-spacing:.05em;word-spacing:0;line-height:1;color:var(--bone);text-shadow:0 1px 3px rgba(0,0,0,.5)}

/* early access: sutil, como el "presentan" de la preventa */
.ea-k{font-size:clamp(13.5px,3.9vw,15.5px);font-weight:400;line-height:1;letter-spacing:.02em;color:rgba(241,238,231,.72);text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 18px rgba(0,0,0,.55)}
.ea .hero > .ea-k{margin-block:auto}

.ea-mid{display:flex;flex-direction:column;align-items:center;margin:0 0 auto}

/* ANTES QUE / TODOS */
.ea-t{position:relative;display:inline-block;text-align:center;font-weight:700;color:var(--flyer);line-height:.9;letter-spacing:-.015em;word-spacing:.12em;white-space:nowrap;text-transform:uppercase;font-size:min(15.4vw,78px)}
.ea-t .w{display:block;animation:rise 1s var(--ease) both}
.ea-t .w + .w{margin-top:.08em}
.ea-t .w2{font-size:1.62em;line-height:.9;letter-spacing:-.02em;word-spacing:0;animation-delay:.12s}

/* el guiño */
.ea-wink{font-size:min(15px,3.8vw);font-weight:400;color:rgba(241,238,231,.85);white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 18px rgba(0,0,0,.55);animation:fade 1s var(--ease) .7s both}
.ea-wink b{font-weight:700;color:var(--bone)}
.ea-t + .ea-wink{margin-top:22px}

.ea .hero-low{padding-top:24px}
.ea .hero-low .when{margin-top:0}

@media (max-width:979.98px){
  .mark{margin-top:14px;font-size:26px}
  .ea .hero > .ea-k{margin-top:clamp(18px,4.5vh,40px);margin-bottom:clamp(8px,1.6vh,14px)}
  .ea-t + .ea-wink{margin-top:clamp(10px,1.8vh,16px);padding-top:clamp(12px,2vh,16px)}
  .ea-wink{font-size:min(16.5px,4.05vw)}
}
@media (min-width:980px){
  .split .mark{margin-top:14px;font-size:34px}
  .split .ea-k{font-size:16px}
  .split .ea .hero > .ea-k{margin-top:clamp(28px,5.5vh,56px);margin-bottom:clamp(20px,3.5vh,40px)}
  /* el guiño queda a medio camino entre el titular y la fecha */
  .split .ea .ea-mid{display:contents}
  .split .ea-t{margin-top:20px;font-size:min(7vw,132px,13.5vh)}
  .split .ea .ea-t + .ea-wink{margin-top:auto;margin-bottom:auto}
  .split .ea .ea-wink{font-size:clamp(17px,1.5vw,24px)}
  .split .ea .hero-low{margin-top:0;padding-top:0}
  .split .ea .hero-low .when{font-size:clamp(16px,1.25vw,19px)}
}
@media (min-width:980px) and (max-height:800px){
  .split .ea-t{font-size:min(7vw,10.5vh)}
  .split .ea .hero > .ea-k{margin-top:26px;margin-bottom:18px}
}

/* ---------- precios ---------- */

/* VIP: fila normal como las demás, sin recuadro; la etiqueta roja va al lado del título */
.blk--prices .ea-vip .pr-n{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.blk--prices .ea-vip .pr-d{color:var(--bone-soft);text-wrap:balance}
.blk--prices .ea-vip .pr-d b{color:var(--bone);font-weight:700}
.ea-promo{display:inline-block;padding:4px 9px;border-radius:999px;background:#c8203a;color:var(--bone);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1;white-space:nowrap}
.ea-vip-after{grid-column:1 / -1;margin-top:6px;font-size:13px;line-height:1.45;color:rgba(241,238,231,.55)}

/* precios especiales, solo por hoy */
.ea-note{margin-top:30px;display:grid;gap:6px;text-align:center;font-size:15px;line-height:1.5;font-weight:300;color:rgba(241,238,231,.72)}
.ea-note-k{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:2px;font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--bone);white-space:nowrap}
.ea-note-k::before,.ea-note-k::after{content:'';flex:0 1 44px;height:1px;background:linear-gradient(90deg,transparent,rgba(200,32,58,.9))}
.ea-note-k::after{background:linear-gradient(90deg,rgba(200,32,58,.9),transparent)}
@media (max-width:979.98px){
  .ea-note-k{font-size:min(12px,3vw);letter-spacing:.14em;gap:10px}
  .ea-note-k::before,.ea-note-k::after{flex-basis:28px}
}

/* ---------- compra ---------- */

/* General y VIP arriba, Mesa VIP a lo ancho debajo */
.ea .pick{grid-template-columns:1fr 1fr}
.ea .pick .opt--mesa{grid-column:1 / -1;justify-content:center}
.ea .opt--vipea{overflow:visible}
.ea-hoy{position:absolute;top:-8px;right:12px;padding:3px 7px;border-radius:999px;background:#c8203a;color:var(--bone);font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.1;white-space:nowrap;pointer-events:none}
.ea-vipnote{margin-top:12px;font-size:14px;line-height:1.5;color:rgba(241,238,231,.85);text-align:center;text-wrap:balance}
.ea-vipnote b{color:var(--bone);font-weight:700}

@media (prefers-reduced-motion:reduce){
  .mark,.ea-t .w,.ea-wink{animation:none}
}
/* mismo rojo del logo de la fiesta (#d30007) en el título grande y en Ruby Haze pequeño */
.mark,.ea-t{color:#d30007}
/* Ruby Haze pequeño como logo: mismo ancho y centro que tenía el texto */
.mark-logo{display:block;width:5.425em;max-width:none;height:auto;margin:-.175em 0 .085em}
