
:root{
  --tb-max:1180px;
  --tb-calle:clamp(16px,4vw,32px);
  --tb-barra:64px;
  --tb-radio:12px;
  --tb-radio-lg:18px;
  --tb-sec-y:clamp(48px,7vw,88px);

  --ev-fondo:#ece5d9;
  --ev-fondo-alt:#e0d7c7;
  --ev-superficie:#f4efe6;
  --ev-superficie-2:#fbf8f2;
  --ev-linea:#cfc2ad;
  --ev-linea-suave:#e0d6c6;
  --ev-texto:#2a211a;
  --ev-texto-suave:#6b5d4e;
  --ev-acento:#b4141b;
  --ev-acento-claro:#8f0f15;
  --ev-acento-2:#8a5f12;
  --ev-acento-txt:#ffffff;
  --ev-ok:#1f7a45;
  --ev-no:#b4141b;
  --ev-aviso:#8a5f12;
  --ev-scrim-1:rgba(236,229,217,.62);
  --ev-scrim-2:rgba(236,229,217,.96);
  --ev-sombra:rgba(42,33,26,.16);
  --ev-top-bg:#0877B9;
  --ev-top-txt:#ffffff;

  --tb-marca:#0877B9;
  --tb-marca-2:#FFC400;

  --z-tribuna:#7a1a1a;
  --z-lounge:#c9963c;
  --z-pla-a:#b4141b;
  --z-pla-b:#3f6fa8;
  --z-p3a:#16212e;
  --z-p3b:#3a4a5c;
  --z-p3c:#5b83b3;
  --z-p3d:#8fb4d9;
  --z-p4a:#0f5c46;
  --z-p4b:#1c8f72;
  --z-p4c:#5cc2a3;
  --z-neutro:#9aa0a6;

  --z-linea:#f3ede2;
  --z-nov:#a8adb2;
  --z-escenario:#c9ced3;
  --z-escenario-txt:#20262c;
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation:none !important;transition:none !important}
}

body{
  margin:0;
  background:var(--ev-fondo);
  color:var(--ev-texto);
  font:400 16px/1.6 Montserrat,system-ui,"Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img,svg{display:block;max-width:100%}
[hidden]{display:none !important}
a{color:inherit}
:focus-visible{outline:3px solid var(--ev-acento-claro);outline-offset:3px;border-radius:4px}
.tb-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.tb-sec{padding-block:var(--tb-sec-y);scroll-margin-top:calc(var(--tb-barra) + 8px)}
.tb-sec.tono-a{background:var(--ev-fondo)}
.tb-sec.tono-b{background:var(--ev-superficie)}

.tb-wrap{width:100%;max-width:var(--tb-max);margin-inline:auto;padding-inline:var(--tb-calle)}
.tb-wrap--ancho{max-width:1360px}

.tb-h2{margin:0 0 10px;font-size:clamp(24px,3.4vw,40px);font-weight:800;line-height:1.12;letter-spacing:-.02em}
.tb-h3{margin:0 0 12px;font-size:clamp(18px,2.2vw,24px);font-weight:800;line-height:1.2}
.tb-bajada{margin:0;max-width:66ch;color:var(--ev-texto-suave);font-size:clamp(14px,1.6vw,17px)}
.tb-cab{margin-bottom:clamp(24px,3.4vw,40px)}

.tb-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:12px 22px;
  border:1px solid transparent;border-radius:var(--tb-radio);
  font:800 15px/1.1 Montserrat,system-ui,sans-serif;
  text-align:center;text-decoration:none;cursor:pointer;
  transition:background .18s,border-color .18s,color .18s,transform .12s;
}
.tb-btn:active{transform:translateY(1px)}
.tb-btn--primario{background:var(--ev-acento);color:var(--ev-acento-txt);border-color:var(--ev-acento)}
.tb-btn--primario:hover{background:var(--ev-acento-claro);border-color:var(--ev-acento-claro)}
.tb-btn--secundario{background:transparent;color:var(--ev-texto);border-color:var(--ev-linea)}
.tb-btn--secundario:hover{border-color:var(--ev-texto);background:color-mix(in srgb,var(--ev-texto) 8%,transparent)}
.tb-btn--fantasma{min-height:40px;padding:9px 16px;background:transparent;color:var(--ev-texto-suave);border-color:var(--ev-linea-suave);font-size:13px}
.tb-btn--fantasma:hover{color:var(--ev-texto);border-color:var(--ev-linea)}
.tb-btn--bloque{width:100%}
.tb-btn[aria-disabled="true"]{opacity:.35;pointer-events:none}

.tb-chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:3px 9px;border:1px solid var(--ev-linea);border-radius:999px;
  font-size:11px;font-weight:700;line-height:1.4;white-space:nowrap;
}
.tb-chip--sector{background:var(--ev-superficie-2);font-variant-numeric:tabular-nums}
.tb-chip--activa{border-color:var(--ev-ok);background:color-mix(in srgb,var(--ev-ok) 15%,transparent);color:var(--ev-ok)}
.tb-chip--agotada{border-color:var(--ev-no);background:color-mix(in srgb,var(--ev-no) 15%,transparent);color:var(--ev-no)}
.tb-chip--proxima{border-color:var(--ev-aviso);background:color-mix(in srgb,var(--ev-aviso) 15%,transparent);color:var(--ev-aviso)}
.tb-chip--marca{border-style:dashed;color:var(--ev-texto-suave);font-size:10.5px;white-space:normal}

.tb-nota{
  margin:0;padding:14px 16px;
  border:1px solid var(--ev-linea);
  border-radius:var(--tb-radio);
  background:var(--ev-superficie-2);
  color:var(--ev-texto-suave);font-size:13px;line-height:1.55;
}
.tb-nota strong{color:var(--ev-texto)}
.tb-notas{display:grid;gap:10px;margin-top:20px}

.tb-top{border-bottom:1px solid var(--ev-linea);background:var(--ev-top-bg,var(--ev-fondo-alt,#08090a))}
.tb-top__in{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  width:100%;max-width:var(--tb-max);margin-inline:auto;
  min-height:62px;padding-inline:var(--tb-calle);
}
.tb-top__logo{display:inline-flex;align-items:center;flex:none}
.tb-top__logo img{height:30px;width:auto}
.tb-top__acc{display:flex;align-items:center;gap:8px}
.tb-top__acc a{
  display:inline-flex;align-items:center;gap:8px;
  min-height:40px;padding:9px 16px;
  border:1px solid transparent;border-radius:10px;
  color:var(--ev-top-txt,var(--ev-texto));text-decoration:none;
  font-size:13px;font-weight:700;white-space:nowrap;
  transition:background .16s,border-color .16s;
}
.tb-top__acc a:hover{background:color-mix(in srgb,var(--ev-top-txt,var(--ev-texto)) 15%,transparent)}
.tb-top__acc a.es-borde{border-color:color-mix(in srgb,var(--ev-top-txt,var(--ev-texto)) 45%,transparent)}
.tb-top__acc a.es-marca{
  background:var(--tb-marca-2);border-color:var(--tb-marca-2);color:#141005;font-weight:800;
}
.tb-top__acc a.es-marca:hover{filter:brightness(1.08);background:var(--tb-marca-2)}
.tb-top__acc svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:560px){
  .tb-datos dt{flex-wrap:wrap;font-size:10px;letter-spacing:.06em}
  .tb-top__in{min-height:56px;gap:10px}
  .tb-top__logo img{height:24px}
  .tb-top__acc{gap:6px}
  .tb-top__acc a{min-height:38px;padding:8px 11px;font-size:12px;gap:6px}
  .tb-top__acc a.es-borde span{display:none}
}

.tb-barra{
  position:sticky;top:0;z-index:60;
  border-bottom:1px solid var(--ev-linea);
  background:color-mix(in srgb,var(--ev-fondo) 90%,transparent);
  backdrop-filter:blur(14px);
}
.tb-barra__in{
  display:flex;align-items:center;gap:clamp(8px,2vw,24px);
  width:100%;max-width:var(--tb-max);margin-inline:auto;
  min-height:var(--tb-barra);padding-inline:var(--tb-calle);
}
.tb-barra__marca{flex:none;text-decoration:none;font-size:13px;font-weight:800;line-height:1.15;letter-spacing:-.01em}
.tb-barra__marca small{display:block;color:var(--ev-texto-suave);font-size:11px;font-weight:600}

.tb-barra__nav{
  flex:1 1 auto;min-width:0;
  display:flex;gap:2px;margin:0;padding:0;list-style:none;
  overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;
  scroll-snap-type:x proximity;
}
.tb-barra__nav::-webkit-scrollbar{display:none}
.tb-barra__nav a{
  display:block;padding:10px 12px;border-radius:8px;
  color:var(--ev-texto-suave);text-decoration:none;
  font-size:13px;font-weight:700;white-space:nowrap;
  scroll-snap-align:start;transition:color .16s,background .16s;
}
.tb-barra__nav a:hover{color:var(--ev-texto);background:var(--ev-superficie-2)}

body:has(#evento:target)      .tb-barra__nav a[href="#evento"],
body:has(#precios:target)     .tb-barra__nav a[href="#precios"],
body:has(#etapas:target)      .tb-barra__nav a[href="#etapas"],
body:has(#paquetes:target)    .tb-barra__nav a[href="#paquetes"],
body:has(#escuchalo:target)   .tb-barra__nav a[href="#escuchalo"],
body:has(#como-llegar:target) .tb-barra__nav a[href="#como-llegar"],
body:has(#condiciones:target) .tb-barra__nav a[href="#condiciones"]{
  color:var(--ev-texto);background:var(--ev-superficie-2);
}

/* Clase que aplica js/app.js al item visible durante el scroll. */
.tb-barra__nav li.es-activo > a{color:var(--ev-texto);background:var(--ev-superficie-2)}

.tb-barra__cta{flex:none;min-height:40px;padding:10px 18px;font-size:13px}

@media (max-width:860px){
  .tb-barra__marca,.tb-barra__cta{display:none}
  .tb-barra__in{padding-inline:8px}
  .tb-barra__nav a{padding:10px;font-size:12.5px}
}

.tb-promo{
  position:sticky;top:var(--tb-barra);z-index:55;
  background:var(--ev-acento);
  border-bottom:1px solid color-mix(in srgb,#000 22%,var(--ev-acento));
}
.tb-promo__in{
  display:flex;align-items:center;gap:clamp(12px,2vw,24px);
  width:100%;max-width:var(--tb-max);margin-inline:auto;
  padding:10px var(--tb-calle);
}
.tb-promo__txt{
  margin:0;flex:1 1 auto;min-width:0;
  color:var(--ev-acento-txt);font-size:13px;line-height:1.35;
}
.tb-promo__txt b{font-weight:800}
.tb-promo__txt span{opacity:.86}
.tb-promo__desde{
  margin:0;flex:none;white-space:nowrap;
  color:var(--ev-acento-txt);font-size:12px;font-weight:700;
}
.tb-promo__desde b{font-size:16px;font-weight:800}
.tb-promo__cta{
  flex:none;min-height:38px;padding:9px 18px;font-size:13px;
  background:var(--ev-acento-txt);color:var(--ev-acento);
  border-color:var(--ev-acento-txt);
}
.tb-promo__cta:hover{
  background:color-mix(in srgb,var(--ev-acento-txt) 88%,transparent);
  border-color:var(--ev-acento-txt);color:var(--ev-acento);
}

@media (max-width:860px){ .tb-promo{display:none} }

.tb-hero{position:relative;background:var(--ev-fondo-alt,#000);overflow:hidden}

.tb-hero__img{display:block;width:100%}
.tb-hero__img img{
  width:100%;height:100%;
  aspect-ratio:2/1;
  object-fit:cover;object-position:center;
  max-height:min(78vh,760px);
}

.tb-hero__cta{
  position:absolute;left:0;right:0;bottom:0;
  display:flex;flex-wrap:wrap;gap:12px;justify-content:center;
  padding:clamp(22px,4vw,44px) var(--tb-calle);
  background:linear-gradient(180deg,transparent 0%,var(--ev-scrim-1) 45%,var(--ev-scrim-2) 100%);
}
.tb-hero__cta .tb-btn{min-width:210px}
.tb-hero__cta .tb-btn--secundario{
  border-color:var(--ev-linea);
  background:color-mix(in srgb,var(--ev-superficie-2) 82%,transparent);
  backdrop-filter:blur(6px);
}

@media (max-width:700px){
  .tb-hero__img img{aspect-ratio:4/5;max-height:78vh}
  .tb-hero__cta{gap:8px;padding-bottom:20px}
  .tb-hero__cta .tb-btn{width:100%;min-width:0}
}

.tb-datos{
  display:grid;gap:1px;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-linea);overflow:hidden;
}
.tb-datos div{padding:18px 20px;background:var(--ev-superficie)}
.tb-datos dt{
  display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;
  margin:0 0 6px;color:var(--ev-texto-suave);
  font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
}
.tb-datos dt svg{
  width:15px;height:15px;flex:none;
  fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;
}
.tb-datos dd{margin:0;font-size:clamp(15px,1.7vw,17px);font-weight:700;line-height:1.3}
.tb-datos dd small{display:block;margin-top:3px;color:var(--ev-texto-suave);font-size:12px;font-weight:500}
.tb-datos a{color:var(--ev-acento-claro)}

.tb-precios__grid{display:grid;gap:clamp(20px,3vw,36px);grid-template-columns:minmax(0,1fr)}
@media (min-width:1040px){
  .tb-precios__grid{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:start}
  .tb-plano-col{position:sticky;top:calc(var(--tb-barra) + 20px)}
}

.tb-plano{
  padding:clamp(10px,1.6vw,18px);
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-superficie-2);
}
.tb-plano svg{width:100%;height:auto}

.tbm-escenario rect{fill:var(--z-escenario,#d7dade);stroke:var(--z-linea,#08090a);stroke-width:10}
.tbm-escenario text{fill:var(--z-escenario-txt,#0b0b0c);font:800 105px Montserrat,sans-serif;text-anchor:middle;dominant-baseline:middle;letter-spacing:6px}

.tbm-nov path{fill:var(--z-nov,#6f757c);stroke:var(--z-linea,#08090a);stroke-width:9;pointer-events:none}

.tbm-sec{cursor:pointer}
.tbm-sec path{fill:var(--z-neutro);stroke:var(--z-linea,#08090a);stroke-width:10;transition:filter .15s,stroke .15s}
.tbm-sec:hover path{filter:brightness(1.3);stroke:#fff;stroke-width:16}
.tbm-sec:focus-visible{outline:none}
.tbm-sec:focus-visible path{stroke:#fff;stroke-width:20}

.z-tribuna path{fill:var(--z-tribuna)}
.z-lounge  path{fill:var(--z-lounge)}
.z-pla-a   path{fill:var(--z-pla-a)}
.z-pla-b   path{fill:var(--z-pla-b)}
.z-p3a path{fill:var(--z-p3a)}
.z-p3b path{fill:var(--z-p3b)}
.z-p3c path{fill:var(--z-p3c)}
.z-p3d path{fill:var(--z-p3d)}
.z-p4a path{fill:var(--z-p4a)}
.z-p4b path{fill:var(--z-p4b)}
.z-p4c path{fill:var(--z-p4c)}

.tbm-lbl text{
  fill:#fff;font:800 132px Montserrat,sans-serif;
  text-anchor:middle;dominant-baseline:middle;pointer-events:none;
  paint-order:stroke;stroke:rgba(0,0,0,.5);stroke-width:14px;
}
.tbm-lbl text.chico{font-size:100px}
.tbm-lbl text.tribuna{font-size:86px;letter-spacing:4px}
.tbm-lbl circle.tbm-sa{fill:#fff;stroke:rgba(0,0,0,.5);stroke-width:5;pointer-events:none}

#precios:has(.z-tribuna:hover) [data-zona="tribuna"],
#precios:has(.z-lounge:hover)  [data-zona="lounge"],
#precios:has(.z-pla-a:hover)   [data-zona="pla-a"],
#precios:has(.z-pla-b:hover)   [data-zona="pla-b"],
#precios:has(.z-p3a:hover)     [data-zona="p3a"],
#precios:has(.z-p3b:hover)     [data-zona="p3b"],
#precios:has(.z-p3c:hover)     [data-zona="p3c"],
#precios:has(.z-p3d:hover)     [data-zona="p3d"],
#precios:has(.z-p4a:hover)     [data-zona="p4a"],
#precios:has(.z-p4b:hover)     [data-zona="p4b"],
#precios:has(.z-p4c:hover)     [data-zona="p4c"]{
  background:color-mix(in srgb,var(--ev-acento) 16%,transparent) !important;
  box-shadow:inset 3px 0 0 var(--ev-acento);
}
#precios:has([data-zona="tribuna"]:hover) .z-tribuna path,
#precios:has([data-zona="lounge"]:hover)  .z-lounge  path,
#precios:has([data-zona="pla-a"]:hover)   .z-pla-a   path,
#precios:has([data-zona="pla-b"]:hover)   .z-pla-b   path,
#precios:has([data-zona="p3a"]:hover)     .z-p3a path,
#precios:has([data-zona="p3b"]:hover)     .z-p3b path,
#precios:has([data-zona="p3c"]:hover)     .z-p3c path,
#precios:has([data-zona="p3d"]:hover)     .z-p3d path,
#precios:has([data-zona="p4a"]:hover)     .z-p4a path,
#precios:has([data-zona="p4b"]:hover)     .z-p4b path,
#precios:has([data-zona="p4c"]:hover)     .z-p4c path{
  filter:brightness(1.38);stroke:#fff;stroke-width:16;
}

.tb-tabs{position:relative}
.tb-tabs__radio{position:absolute;opacity:0;pointer-events:none}
.tb-tabs__barra{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
  margin-bottom:12px;padding:5px;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio);
  background:var(--ev-fondo);
}
.tb-tabs__barra label{
  display:grid;place-items:center;
  min-height:42px;padding:8px 10px;border-radius:9px;
  color:var(--ev-texto-suave);
  font-size:13px;font-weight:800;text-align:center;line-height:1.2;
  cursor:pointer;transition:background .16s,color .16s;
}
.tb-tabs__barra label:hover{color:var(--ev-texto)}
.tb-tabs__panel{display:none}

#mapa-interactivo:checked ~ .tb-tabs__barra label[for="mapa-interactivo"],
#mapa-oficial:checked     ~ .tb-tabs__barra label[for="mapa-oficial"]{
  background:var(--ev-superficie-2);color:var(--ev-texto);
  box-shadow:0 1px 3px var(--ev-sombra);
}
#mapa-interactivo:checked ~ .tb-tabs__panel--interactivo,
#mapa-oficial:checked     ~ .tb-tabs__panel--oficial{display:block}

.tb-tabs__radio:focus-visible ~ .tb-tabs__barra label[for]{outline:3px solid var(--ev-acento-claro);outline-offset:3px}

.tb-mapa-oficial{
  margin:0;padding:0;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio);
  background:var(--ev-superficie-2);overflow:hidden;
}
.tb-mapa-oficial img{width:100%;height:auto}
.tb-mapa-oficial figcaption{
  display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;
  padding:12px 14px;border-top:1px solid var(--ev-linea);
  color:var(--ev-texto-suave);font-size:12px;line-height:1.4;
}

.tb-cross{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0;padding:0;list-style:none}
.tb-cross a{
  display:block;overflow:hidden;text-decoration:none;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-superficie-2);
  transition:border-color .18s,transform .18s;
}
.tb-cross a:hover{border-color:var(--ev-acento);transform:translateY(-2px)}
.tb-cross img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.tb-cross span{
  display:block;padding:12px 16px;border-top:1px solid var(--ev-linea);
  color:var(--ev-texto-suave);font-size:12.5px;line-height:1.45;
}
.tb-cross span b{display:block;color:var(--ev-texto);font-size:14px;font-weight:800;margin-bottom:3px}

.tb-ref{
  margin-top:14px;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio);
  background:var(--ev-fondo);
}
.tb-ref>summary{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;
  padding:14px 16px;cursor:pointer;list-style:none;
  font-size:13.5px;font-weight:800;
}
.tb-ref>summary::-webkit-details-marker{display:none}
.tb-ref>summary:hover{background:color-mix(in srgb,var(--ev-texto) 4%,transparent)}
.tb-ref__muestra{display:flex;gap:4px;margin-inline-start:auto}
.tb-ref__muestra i{width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.55)}
.tb-ref>summary::after{
  content:"";width:10px;height:10px;flex:none;
  border-right:2.5px solid var(--ev-texto-suave);border-bottom:2.5px solid var(--ev-texto-suave);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s;
}
.tb-ref[open]>summary::after{transform:rotate(225deg) translate(-2px,-2px)}

.tb-ref__cuerpo{
  display:grid;gap:18px 26px;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  padding:4px 16px 18px;
}
.tb-ref__grupo h4{
  margin:0 0 9px;color:var(--ev-acento-2,var(--ev-acento-claro));
  font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
}
.tb-ref__grupo ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.tb-ref__grupo li{display:grid;grid-template-columns:15px 1fr;gap:9px;align-items:start;font-size:12.5px;line-height:1.35}
.tb-ref__grupo i{width:14px;height:14px;margin-top:2px;border-radius:3px;border:1px solid rgba(0,0,0,.55)}
.tb-ref__grupo i.punto{border-radius:50%;background:#fff}
.tb-ref__grupo b{display:block;font-weight:700}
.tb-ref__grupo span{color:var(--ev-texto-suave);font-size:11.5px}

.tb-plano__pie{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:14px}

.tb-etapas{display:grid;gap:12px}

.tb-etapa{
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-superficie-2);overflow:hidden;
}
.tb-etapa[data-estado="activa"]{border-color:color-mix(in srgb,var(--ev-acento) 55%,var(--ev-linea))}
.tb-etapa[data-estado="agotada"]{opacity:.72}

.tb-etapa>summary{
  display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:center;
  padding:18px 20px;cursor:pointer;list-style:none;
}
.tb-etapa>summary::-webkit-details-marker{display:none}
.tb-etapa>summary:hover{background:color-mix(in srgb,var(--ev-texto) 4%,transparent)}
.tb-etapa__tit{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:clamp(15px,1.9vw,19px);font-weight:800;line-height:1.25}
.tb-etapa__sub{grid-column:1/-1;color:var(--ev-texto-suave);font-size:12.5px;line-height:1.45}
.tb-etapa__desde{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--ev-texto-suave);white-space:nowrap}
.tb-etapa__desde b{color:var(--ev-texto);font-size:17px}
.tb-etapa__desde::after{
  content:"";width:11px;height:11px;flex:none;margin-right:3px;
  border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s;
}
.tb-etapa[open]>summary .tb-etapa__desde::after{transform:rotate(225deg) translate(-2px,-2px)}
.tb-etapa__cuerpo{padding:0 20px 20px}

.tb-nivel{
  margin-bottom:8px;
  border:1px solid var(--ev-linea-suave);border-radius:var(--tb-radio);
  background:var(--ev-fondo);
}
.tb-nivel:last-child{margin-bottom:0}
.tb-nivel>summary{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;
  padding:13px 16px;cursor:pointer;list-style:none;
}
.tb-nivel>summary::-webkit-details-marker{display:none}
.tb-nivel>summary:hover{background:color-mix(in srgb,var(--ev-texto) 4%,transparent)}
.tb-nivel__n{
  color:var(--ev-acento-2,var(--ev-acento-claro));
  font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
}
.tb-nivel__d{color:var(--ev-texto-suave);font-size:11.5px;font-weight:600}
.tb-nivel__meta{
  display:flex;align-items:center;gap:9px;margin-inline-start:auto;
  color:var(--ev-texto-suave);font-size:11.5px;font-weight:700;white-space:nowrap;
}
.tb-nivel__meta b{color:var(--ev-texto);font-size:15px}
.tb-nivel__meta::after{
  content:"";width:9px;height:9px;flex:none;margin-right:3px;
  border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s;
}
.tb-nivel[open]>summary .tb-nivel__meta::after{transform:rotate(225deg) translate(-2px,-2px)}

/* Destino de los enlaces del plano: al vivir dentro de un <details>
   cerrado, el navegador lo abre al navegar hasta el. */
.tb-nivel__cuerpo{padding:0 16px 14px;scroll-margin-top:calc(var(--tb-barra) + 90px)}
.tb-nivel__cuerpo:target{
  border-radius:var(--tb-radio);
  box-shadow:0 0 0 2px var(--ev-acento);
}

@media (max-width:560px){
  .tb-nivel>summary{padding:13px 13px}
  .tb-nivel__d{width:100%;order:3}
  .tb-nivel__cuerpo{padding:0 13px 12px}
}

.tb-tabla{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}
.tb-tabla th,.tb-tabla td{padding:13px 8px;text-align:right;border-bottom:1px solid var(--ev-linea-suave);vertical-align:middle}
.tb-tabla th:first-child,.tb-tabla td:first-child{width:100%;text-align:left;padding-left:0}
.tb-tabla td:last-child,.tb-tabla th:last-child{padding-right:0}
.tb-tabla tr:last-child td{border-bottom:0}
.tb-tabla thead th{
  padding-block:8px;color:var(--ev-texto-suave);
  font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  white-space:nowrap;border-bottom:1px solid var(--ev-linea);
}
.tb-tabla tbody tr{transition:background .15s}
.tb-tabla tbody tr:hover{background:color-mix(in srgb,var(--ev-texto) 5%,transparent)}

.tb-loc{display:flex;align-items:center;gap:8px;font-weight:700;font-size:13.5px;line-height:1.3}
.tb-loc__secs{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}

.tb-loc__punto{
  width:14px;height:14px;flex:none;
  border-radius:4px;border:1px solid rgba(0,0,0,.55);
  background:var(--z-neutro);
}
[data-zona="tribuna"] .tb-loc__punto{background:var(--z-tribuna)}
[data-zona="lounge"]  .tb-loc__punto{background:var(--z-lounge)}
[data-zona="pla-a"]   .tb-loc__punto{background:var(--z-pla-a)}
[data-zona="pla-b"]   .tb-loc__punto{background:var(--z-pla-b)}
[data-zona="p3a"]     .tb-loc__punto{background:var(--z-p3a)}
[data-zona="p3b"]     .tb-loc__punto{background:var(--z-p3b)}
[data-zona="p3c"]     .tb-loc__punto{background:var(--z-p3c)}
[data-zona="p3d"]     .tb-loc__punto{background:var(--z-p3d)}
[data-zona="p4a"]     .tb-loc__punto{background:var(--z-p4a)}
[data-zona="p4b"]     .tb-loc__punto{background:var(--z-p4b)}
[data-zona="p4c"]     .tb-loc__punto{background:var(--z-p4c)}

.tb-precio{display:block;text-align:right}
.tb-total{display:block;font-size:15.5px;font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums}
.tb-desglose{display:block;margin-top:4px;white-space:normal;color:var(--ev-texto-suave);font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums}
.tb-td-aforo{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ev-texto-suave);font-weight:600}

.tb-tabla [data-estado="agotada"]{opacity:.45}
.tb-tabla [data-estado="agotada"] .tb-total{text-decoration:line-through}

@media (max-width:820px){
  .tb-tabla,.tb-tabla tbody,.tb-tabla tr,.tb-tabla td{display:block;width:100%}
  .tb-tabla thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .tb-tabla tbody tr{
    margin-bottom:10px;padding:16px;
    border:1px solid var(--ev-linea);border-radius:var(--tb-radio);
    background:var(--ev-superficie);
  }
  .tb-tabla tbody tr:hover{background:var(--ev-superficie)}
  .tb-tabla tbody tr:last-child{margin-bottom:0}
  .tb-tabla td{padding:0;text-align:left;border:0}
  .tb-tabla td:first-child{padding-bottom:12px}
  .tb-tabla td.tb-td-aforo{
    display:flex;align-items:baseline;justify-content:space-between;gap:10px;
    padding:9px 0;border-top:1px solid var(--ev-linea-suave);
  }
  .tb-tabla td.tb-td-aforo::before{
    content:attr(data-l);color:var(--ev-texto-suave);font-size:11.5px;font-weight:700;
  }
  .tb-tabla td.tb-td-precio{border-top:0;padding-top:0}
  .tb-tabla td.tb-td-precio{
    display:flex;align-items:flex-end;justify-content:space-between;gap:10px;
    padding-top:13px;border-top:1px solid var(--ev-linea-suave);
  }

  .tb-tabla .tb-precio{white-space:normal;min-width:0}
  .tb-tabla .tb-desglose{white-space:normal}
  .tb-tabla td.tb-td-precio::before{min-width:0;flex:0 1 auto}
  .tb-tabla td.tb-td-precio::before{
    content:attr(data-l);flex:none;
    color:var(--ev-texto-suave);font-size:11.5px;font-weight:700;
  }
}

.tb-pagos{display:grid;gap:10px;margin-top:14px}
.tb-pago{
  display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:16px;align-items:center;
  padding:16px 18px;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio);
  background:var(--ev-superficie-2);text-decoration:none;
  transition:border-color .18s,background .18s;
}
.tb-pago:hover{border-color:var(--ev-acento);background:var(--ev-acento)}
.tb-pago:hover strong,
.tb-pago:hover small{color:var(--ev-acento-txt)}
.tb-pago:hover .tb-pago__ico{border-color:color-mix(in srgb,var(--ev-acento-txt) 55%,transparent);color:var(--ev-acento-txt)}
.tb-pago:hover .tb-pago__ir{background:transparent;border-color:var(--ev-acento-txt);color:var(--ev-acento-txt)}
.tb-pago__ico{
  display:grid;place-items:center;width:46px;height:46px;
  border:1px solid var(--ev-linea);border-radius:50%;color:var(--ev-acento-claro);
}
.tb-pago__ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tb-pago strong{display:block;font-size:16px;line-height:1.25}
.tb-pago small{display:block;margin-top:5px;color:var(--ev-texto-suave);font-size:12.5px;line-height:1.4}
.tb-pago__ir{
  padding:11px 18px;border:1px solid var(--ev-acento);border-radius:10px;
  color:var(--ev-texto);font-size:13px;font-weight:800;white-space:nowrap;
}

.tb-pagos-otros{
  margin-top:12px;padding:18px;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio);background:var(--ev-superficie-2);
}
.tb-pagos-otros h4{margin:0 0 12px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ev-texto-suave)}
.tb-pagos-otros ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:0;padding:0;list-style:none}
.tb-pagos-otros a{
  display:grid;place-items:center;min-height:44px;padding:10px;
  border:1px solid var(--ev-linea);border-radius:10px;
  text-decoration:none;font-size:12.5px;font-weight:700;text-align:center;
}
.tb-pagos-otros a:hover{border-color:var(--ev-acento);background:color-mix(in srgb,var(--ev-acento) 10%,transparent)}

@media (max-width:560px){
  .tb-pago{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:14px}
  .tb-pago__ico{width:40px;height:40px}
  .tb-pago__ir{grid-column:1/-1;text-align:center;margin-top:4px}
}

.tb-venta{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(255px,1fr))}
.tb-venta__item{
  display:flex;flex-direction:column;gap:10px;
  padding:22px;border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-superficie-2);
}
.tb-venta__item[data-estado="activa"]{border-color:var(--ev-ok);background:color-mix(in srgb,var(--ev-ok) 10%,var(--ev-superficie-2))}
.tb-venta__item[data-estado="finalizada"]{opacity:.6}
.tb-venta__n{
  display:grid;place-items:center;width:34px;height:34px;
  border-radius:50%;background:var(--ev-acento);color:var(--ev-acento-txt);
  font-size:15px;font-weight:800;
}
.tb-venta__item h3{margin:0;font-size:16px;font-weight:800;line-height:1.25}
.tb-venta__item p{margin:0;color:var(--ev-texto-suave);font-size:13px;line-height:1.5}
.tb-venta__item a{color:var(--ev-acento-claro)}

.tb-paquetes{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
/* Con exactamente cuatro tarjetas se pasa de dos a cuatro columnas: tres
   dejarían una huérfana en la segunda fila. */
@media (max-width:1119px){.tb-paquetes:has(> :last-child:nth-child(4)){grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}
@media (min-width:1120px){.tb-paquetes:has(> :last-child:nth-child(4)){grid-template-columns:repeat(4,1fr)}}
.tb-paq{
  display:flex;flex-direction:column;gap:14px;
  padding:24px;border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-superficie-2);
}
.tb-paq--destacado{border-color:var(--ev-acento)}
.tb-paq__cab{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}
.tb-paq h3{margin:0;font-size:17px;font-weight:800;line-height:1.25}
.tb-paq__precio{font-size:22px;font-weight:900;white-space:nowrap}
.tb-paq__cupos{width:100%;color:var(--ev-texto-suave);font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.tb-paq__loc{color:var(--ev-texto-suave);font-size:12.5px;font-weight:700}
.tb-paq ul{display:grid;gap:9px;margin:0;padding:0;list-style:none;font-size:13.5px;line-height:1.5}
.tb-paq li{display:grid;grid-template-columns:16px 1fr;gap:9px;color:var(--ev-texto-suave)}
.tb-paq li::before{content:"";width:7px;height:12px;margin-top:4px;border-right:2px solid var(--ev-acento);border-bottom:2px solid var(--ev-acento);transform:rotate(42deg)}
.tb-paq li b{color:var(--ev-texto)}
.tb-paq .tb-btn{margin-top:auto}

.tb-dos{display:grid;gap:clamp(20px,3vw,40px);grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.tb-dos{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center}}

.tb-dos:has(>[hidden]:last-child){grid-template-columns:minmax(0,1fr) !important}
.tb-prosa p{margin:0 0 14px;font-size:clamp(14.5px,1.7vw,16.5px);line-height:1.68;color:var(--ev-texto-suave)}
.tb-prosa p:first-child{color:var(--ev-texto);font-weight:600}
.tb-prosa p:last-child{margin-bottom:0}
.tb-media{border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);overflow:hidden;background:var(--ev-superficie-2)}
.tb-media img{width:100%;height:auto}
.tb-embed{border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);overflow:hidden}
.tb-embed iframe{display:block;width:100%;border:0}

.tb-llegar{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.tb-llegar__item{padding:20px;border:1px solid var(--ev-linea);border-radius:var(--tb-radio);background:var(--ev-superficie-2)}
.tb-llegar__item h3{margin:0 0 8px;font-size:15px;font-weight:800}
.tb-llegar__item p{margin:0;color:var(--ev-texto-suave);font-size:13.5px;line-height:1.55}

.tb-cond{display:grid;gap:8px}
.tb-cond details{border:1px solid var(--ev-linea);border-radius:var(--tb-radio);background:var(--ev-superficie-2)}
.tb-cond summary{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px 18px;cursor:pointer;list-style:none;
  font-size:14.5px;font-weight:800;
}
.tb-cond summary::-webkit-details-marker{display:none}
.tb-cond summary::after{
  content:"";width:10px;height:10px;flex:none;
  border-right:2.5px solid var(--ev-texto-suave);border-bottom:2.5px solid var(--ev-texto-suave);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s;
}
.tb-cond details[open] summary::after{transform:rotate(225deg) translate(-2px,-2px)}
.tb-cond summary:hover{background:color-mix(in srgb,var(--ev-texto) 4%,transparent)}
.tb-cond__cuerpo{padding:0 18px 18px;color:var(--ev-texto-suave);font-size:13.5px;line-height:1.65}
.tb-cond__cuerpo p{margin:0 0 10px}
.tb-cond__cuerpo p:last-child{margin-bottom:0}
.tb-cond__cuerpo strong{color:var(--ev-texto)}

.tb-pie{padding-block:clamp(16px,2.2vw,24px);border-top:1px solid var(--ev-linea);background:var(--ev-superficie)}
.tb-pie__in{display:flex;flex-wrap:wrap;gap:8px 32px;align-items:center;justify-content:space-between}
.tb-pie dl{display:flex;flex-wrap:wrap;gap:6px 26px;margin:0;font-size:12.5px}
.tb-pie dt{color:var(--ev-texto-suave);font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:10.5px;align-self:center}
.tb-pie dd{margin:0 0 0 -18px;font-weight:600}
.tb-pie__marca{font-size:12.5px;color:var(--ev-texto-suave)}

@media (max-width:700px){
  .tb-pie__in{flex-direction:column;gap:14px;text-align:center}
  .tb-pie dl{
    display:grid;grid-template-columns:auto auto;
    justify-content:center;align-items:baseline;
    gap:6px 8px;
  }
  .tb-pie dt{text-align:right}
  .tb-pie dd{margin:0;text-align:left}
}

.tb-movil{
  position:fixed;left:0;right:0;bottom:0;z-index:70;
  display:none;
  padding:10px var(--tb-calle) calc(10px + env(safe-area-inset-bottom));
  border-top:1px solid var(--ev-linea);
  background:color-mix(in srgb,var(--ev-fondo) 96%,transparent);
  backdrop-filter:blur(14px);
  box-shadow:0 -10px 30px var(--ev-sombra);
}

.tb-movil--dos .tb-movil__in{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tb-movil--dos .tb-btn{min-height:50px;padding:12px 8px;font-size:13px;white-space:nowrap}
@media (max-width:380px){ .tb-movil--dos .tb-btn{font-size:12px;padding:12px 6px} }

.tb-movil--menu .tb-movil__in{display:grid;gap:8px}
.tb-movil__desde{
  display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin:0;color:var(--ev-texto-suave);font-size:12px;font-weight:700;
}
.tb-movil__desde b{color:var(--ev-texto);font-size:16px}
.tb-movil__menu{position:relative}
.tb-movil__menu>summary{
  display:flex;align-items:center;justify-content:center;gap:10px;
  min-height:50px;padding:12px 20px;border-radius:var(--tb-radio);
  background:var(--ev-acento);color:var(--ev-acento-txt);
  font:800 15px/1.1 Montserrat,system-ui,sans-serif;
  cursor:pointer;list-style:none;
}
.tb-movil__menu>summary::-webkit-details-marker{display:none}
.tb-movil__menu>summary::after{
  content:"";width:9px;height:9px;flex:none;
  border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;
  transform:rotate(-135deg) translate(-2px,-2px);transition:transform .18s;
}
.tb-movil__menu[open]>summary::after{transform:rotate(45deg) translate(-1px,-1px)}
.tb-movil__opciones{
  position:absolute;left:0;right:0;bottom:calc(100% + 10px);
  display:grid;gap:6px;margin:0;padding:8px;list-style:none;
  border:1px solid var(--ev-linea);border-radius:var(--tb-radio-lg);
  background:var(--ev-superficie);
  box-shadow:0 -16px 40px var(--ev-sombra);
}
.tb-movil__opciones a{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:48px;padding:12px 14px;border-radius:10px;
  background:var(--ev-superficie-2);text-decoration:none;
  font-size:13.5px;font-weight:700;
}
.tb-movil__opciones a:hover{background:color-mix(in srgb,var(--ev-acento) 18%,var(--ev-superficie-2))}
.tb-movil__opciones a span{color:var(--ev-texto-suave);font-size:11.5px;font-weight:600}

@media (max-width:860px){
  .tb-movil{display:block}
  body{padding-bottom:96px}
  body:has(.tb-movil--menu:not([hidden])){padding-bottom:116px}
}
