/* C-ux · ctxplorer rediseño UX/UI 2026-10 (carril C). Fichero propio enlazado desde el layout raíz (parche 01).
   Dirección «cartelera»: superficies blancas y gris neutro, tinta casi negra, el póster pone el color,
   el rojo de marca SOLO en la acción principal (boletos/entradas, registro), el estado activo y el logo.
   Tipografía: Libre Franklin (OFL, autoalojada, 29 KB, 400-800) en lugar de Inter.
   Sin texto degradado, sin antetítulos en mayúsculas espaciadas, sin cifras de relleno, sin emojis como iconos. */

/* ---------- 1. Fuente ---------- */
@font-face{font-family:"Libre Franklin";font-style:normal;font-weight:400 800;font-display:optional;src:url(../media/c-ux-librefranklin-v1.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"LF Fallback";src:local("Arial"),local("ArialMT");size-adjust:103.1%;ascent-override:93.7%;descent-override:23.9%;line-gap-override:0%}
html:root{--font-inter:"Libre Franklin","LF Fallback",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif!important;--font-sans:var(--font-inter)}
body{font-family:var(--font-inter)}

/* ---------- 2. Tokens ---------- */
:root{--bg:#fff;--fg:#18181b;--card:#fff;--card-hover:#f4f4f5;--border:#e4e4e7;--muted:#63636c;--surface:#f5f5f6;--surface-2:#ececee;--badge-bg:#f1f1f3;--input-bg:#fff;--input-border:#d4d4d8;--text-secondary:#4f4f58;--text-tertiary:#63636c;--nav-bg:#fffffff5;--nav-border:#18181b14;--shadow:0 1px 2px #18181b0d;--shadow-lg:0 6px 20px #18181b14;--cx-red:#dc2f3e;--cx-red-hover:#bf2533;--cx-ink:#18181b;--cx-radius:10px}
.dark{--cx-ink:#fafafa;--text-tertiary:#8b8b95;--surface:#111113;--border:#27272a}

/* ---------- 3. Tipografía: sin pesos 900, sin tracking apretado, sin texto degradado ---------- */
.font-black{font-weight:800}
h1,h2,h3{letter-spacing:-.012em}
.tracking-tight,.tracking-tighter,[class*="tracking-[-0.0"]{letter-spacing:-.012em}
.gradient-text,.bg-clip-text.text-transparent{background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;-webkit-text-fill-color:currentColor!important;color:inherit!important}
/* antetítulos «EN TENDENCIA», «ACTUALIZADO HOY…», «LA CIUDAD, EN UNA SOLA APP»: sin mayúsculas espaciadas ni rojo */
p.uppercase[class*="tracking-"],span.uppercase[class*="tracking-"]:not(.rounded-full){text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--text-secondary)!important}
p.uppercase.text-center[class*="tracking-"]{font-size:11px;font-weight:500;color:var(--text-tertiary)!important}
/* antetítulo-píldora que repite el H1 (agenda, categoría, país, blog) */
div.inline-flex.rounded-full.uppercase:has(+h1),div.inline-flex.rounded-full.uppercase:has(+div>h1){display:none}
/* manchas de color difuminadas de fondo */
[class*="blur-[100px]"],[class*="blur-3xl"].rounded-full.absolute{display:none}
/* entrada animada de cada bloque: retrasa la pintura y no aporta */
main>*{animation:none!important}
/* .animate-fade-in arrancaba en opacity:0: la página se veía en blanco 0,6 s y retrasaba el LCP */
.animate-fade-in{opacity:1!important;animation:none!important;transform:none!important}

/* ---------- 4. Rojo solo para la acción ---------- */
a.text-sm.text-\[\#e63946\].hover\:underline{color:var(--fg);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;white-space:nowrap}
a.text-sm.text-\[\#e63946\].hover\:underline:hover{color:var(--cx-red)}
.bg-\[\#e63946\]{background-color:var(--cx-red)}
.hover\:bg-\[\#c62d3a\]:hover{background-color:var(--cx-red-hover)}

/* ---------- 5. Cabecera y menú ---------- */
nav[aria-label="Navegación principal"]>div>a:first-child{letter-spacing:-.01em}
nav[aria-label="Navegación principal"] button.md\:hidden{min-width:44px;min-height:44px;justify-content:center}
nav[aria-label="Navegación principal"] :is(a,button,summary,span){white-space:nowrap}
/* tableta (768-1023): la barra de escritorio no cabía (el país y «Iniciar sesión» partían en dos líneas) */
@media (min-width:768px) and (max-width:1023px){
  nav[aria-label="Navegación principal"]>div>a:first-child{font-size:20px}
  nav[aria-label="Navegación principal"]>div>div.relative.hidden.md\:block:has(details){display:none!important}
  nav[aria-label="Navegación principal"] a.hidden.md\:block.text-sm[href="/blog"],nav[aria-label="Navegación principal"] button.hidden.md\:flex.w-8{display:none!important}
}
/* menú móvil: iconos emoji fuera, listas limpias */
nav[aria-label="Navegación principal"] a>span.text-base:first-child,nav[aria-label="Navegación principal"] a>span.text-lg:first-child,nav[aria-label="Navegación principal"] a>span.text-xl:first-child{display:none}

/* ---------- 6. Barra inferior móvil: sin botón flotante pulsante ---------- */
.bottom-nav .perfect-day-pulse{animation:none;width:24px;height:24px;background:none!important;box-shadow:none!important;color:inherit}
.bottom-nav .perfect-day-pulse svg{width:24px;height:24px}
.bottom-nav a.-mt-3{margin-top:0}
.bottom-nav a{color:var(--text-tertiary)}
.bottom-nav a>span.font-bold{font-weight:500;color:inherit!important}
.bottom-nav{box-shadow:none;border-top:1px solid var(--border)}

/* ---------- 7. Tarjeta de evento (EventCard): nada encima del póster ---------- */
.event-card-premium{container-type:inline-size;position:relative;border-radius:var(--cx-radius)!important;box-shadow:none!important;will-change:auto}
.event-card-premium:hover{transform:none;box-shadow:0 0 0 1px var(--fg) inset!important;border-color:var(--fg)!important}
.event-card-premium img,a.group img[class*="group-hover:scale"]{transition:none!important;transform:none!important;scale:none!important}
.event-card-premium,.event-card-premium:hover{translate:none!important}
/* zona de la imagen: la etiqueta y los botones bajan a la fila de datos */
.event-card-premium>div.relative:first-child{position:static}
.event-card-premium>div.relative:first-child>img{position:relative!important;display:block;aspect-ratio:4/3;height:auto!important}
.event-card-premium>div.relative:first-child>div.absolute.bottom-3.left-3{position:absolute;top:calc(75cqw + 12px);bottom:auto;left:12px;right:auto;max-width:calc(100% - 88px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;border-radius:0;background:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--text-secondary)!important;font-size:12px;font-weight:600;line-height:20px}
.event-card-premium>div.relative:first-child>div.absolute.top-3.right-12{top:calc(75cqw + 6px);right:40px}
.event-card-premium>div.relative:first-child>button.absolute.top-3.right-3{top:calc(75cqw + 6px);right:6px}
.event-card-premium>div.relative:first-child button.rounded-full{width:32px;height:32px;background:transparent!important;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--fg)!important;border-radius:8px}
.event-card-premium>div.relative:first-child button.rounded-full svg{color:currentColor!important}
.event-card-premium>div.relative:first-child button.rounded-full:hover{background:var(--card-hover)!important}
.event-card-premium>div.p-3{padding-top:40px}
.event-card-premium h3{font-size:15px;line-height:1.25;font-weight:700;color:var(--fg)}
/* fecha primero, ciudad recortada: «9 oct · Ciudad de México» en una línea */
.event-card-premium>div.p-3>p.flex{flex-wrap:nowrap;min-width:0;font-size:13px;color:var(--text-secondary)!important;white-space:nowrap}
.event-card-premium>div.p-3>p.flex>svg{display:none}
.event-card-premium>div.p-3>p.flex>span:last-child{order:-2;font-weight:600;color:var(--fg)}
.event-card-premium>div.p-3>p.flex>span:nth-last-child(2){order:-1}
.event-card-premium>div.p-3>p.flex>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;min-width:0}
.event-card-premium>div.p-3>div.mt-auto span.font-bold{font-size:14px;font-weight:700;color:var(--fg)!important}
/* insignias sobre la imagen que sí son datos (GRATIS, -%): planas */
.event-card-premium>div.relative:first-child>div.absolute.top-3.left-3 *{box-shadow:none!important;border-radius:6px!important}

/* ---------- 8. Carruseles: flechas fuera de las tarjetas, siempre visibles en escritorio ---------- */
section.relative.overflow-hidden:has(>div.relative.group>button.ctx-rail-btn){overflow:visible}
section:has(>div.relative.group>button.ctx-rail-btn)>div.flex.items-center.justify-between{padding-right:0}
@media (min-width:1024px){
  section:has(>div.relative.group>button.ctx-rail-btn){position:relative}
  section:has(>div.relative.group>button.ctx-rail-btn)>div.flex.items-center.justify-between{padding-right:104px;min-height:44px}
  div.relative.group:has(>button.ctx-rail-btn){position:static}
  button.ctx-rail-btn{display:flex!important;position:absolute;top:-8px!important;bottom:auto;left:auto!important;width:44px!important;height:44px!important;transform:none!important;translate:none!important;opacity:1!important;border-radius:var(--cx-radius)!important;background:var(--card)!important;border:1px solid var(--border)!important;color:var(--fg)!important;align-items:center;justify-content:center;transition:background-color .15s,border-color .15s,opacity .15s}
  button.ctx-rail-prev{right:52px!important}
  button.ctx-rail-next{right:0!important}
  button.ctx-rail-btn:hover{border-color:var(--fg)!important}
  button.ctx-rail-btn:disabled,button.ctx-rail-btn[aria-disabled="true"]{opacity:.35!important;cursor:default}
}
/* desplazamiento con el dedo: sin snap obligatorio que frena, con margen para que se vea que sigue */
.overflow-x-auto.snap-mandatory{scroll-snap-type:x proximity!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}

/* ---------- 9. Portada ---------- */
/* hero: más bajo, sin cifras de relleno ni maqueta de teléfono */
section.relative.min-h-\[88vh\]{min-height:auto!important;padding:56px 0 48px}
@media (min-width:1024px){section.relative.min-h-\[88vh\]{padding:96px 0 88px}}
section.relative.min-h-\[88vh\] div.flex.flex-wrap.items-center.gap-6.mt-8{display:none}
section.relative.min-h-\[88vh\] div.hidden.lg\:flex.items-center.justify-center{display:none!important}
section.relative.min-h-\[88vh\] .grid.lg\:grid-cols-2{grid-template-columns:1fr}
section.relative.min-h-\[88vh\] h1{font-size:clamp(2.1rem,6vw,4rem);line-height:1.04}
section.relative.min-h-\[88vh\] button{border-radius:var(--cx-radius)!important;box-shadow:none!important}
section.relative.min-h-\[88vh\]>div.absolute.bottom-0{display:none}
/* «Lo que todos quieren»: UN destacado (el n.º 1) y la lista; sin franja lateral, sin antetítulo, sin numeritos rojos */
section[aria-label="Trending ahora"]>div.max-w-7xl{padding-top:48px}
section[aria-label="Trending ahora"] .w-1.h-8.rounded-full{display:none}
section[aria-label="Trending ahora"] p.text-\[11px\].uppercase{display:none}
section[aria-label="Trending ahora"] p.text-sm.ml-5{margin-left:0;margin-bottom:20px}
section[aria-label="Trending ahora"] a.rounded-3xl{border-radius:12px}
section[aria-label="Trending ahora"] a.rounded-3xl span.rounded-full.bg-\[\#e63946\]{background:#fff!important;color:#18181b!important;box-shadow:none!important;border-radius:6px;letter-spacing:0;text-transform:none;font-size:12px}
section[aria-label="Trending ahora"] a.rounded-3xl span.backdrop-blur-md{-webkit-backdrop-filter:none;backdrop-filter:none;background:none!important;border:0!important;padding:0;font-size:13px}
section[aria-label="Trending ahora"] a.rounded-3xl div.flex.items-center.gap-2.mb-3{gap:12px}
section[aria-label="Trending ahora"] a.rounded-3xl div.flex.items-center.gap-4{font-size:0}
section[aria-label="Trending ahora"] a.rounded-3xl span.ml-auto{border-radius:var(--cx-radius);padding:10px 16px;font-size:14px;background:var(--cx-red)!important;border-color:var(--cx-red)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
section[aria-label="Trending ahora"] a.rounded-2xl{border-radius:var(--cx-radius)}
section[aria-label="Trending ahora"] a.rounded-2xl div.w-7.h-7.rounded-full{background:#fff!important;color:#18181b;border-radius:6px;box-shadow:none;width:24px;height:24px;top:8px;left:8px}
section[aria-label="Trending ahora"] a.rounded-2xl span.uppercase{color:var(--text-secondary)!important;font-size:12px!important}
section[aria-label="Trending ahora"] a.rounded-2xl span.text-sm.font-black{color:var(--fg)!important;font-weight:700}
@media (max-width:639px){
  section[aria-label="Trending ahora"] a.rounded-3xl{height:360px}
  section[aria-label="Trending ahora"] a.rounded-2xl{height:112px}
  section[aria-label="Trending ahora"] a.rounded-2xl>div.relative{width:112px}
  section[aria-label="Trending ahora"] a.rounded-2xl>div.flex-1{padding:10px 12px}
  section[aria-label="Trending ahora"] a.rounded-2xl div.flex.items-center.justify-between.mt-2{flex-direction:column;align-items:flex-start;gap:2px}
  section[aria-label="Trending ahora"] a.rounded-2xl div.flex.items-center.gap-3.text-xs{white-space:nowrap;max-width:100%;overflow:hidden}
  section[aria-label="Trending ahora"] a.rounded-2xl div.flex.items-center.gap-3.text-xs svg{display:none}
}
/* promoción Perfect Day: una fila sobria en lugar de un bloque rojo degradado */
section.max-w-7xl.py-8>a[href="/perfect-day"].rounded-2xl{background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--border);border-radius:var(--cx-radius)!important}
section.max-w-7xl.py-8>a[href="/perfect-day"].rounded-2xl .bg-white\/20{background:var(--surface)!important;color:var(--cx-red)!important}
section.max-w-7xl.py-8>a[href="/perfect-day"].rounded-2xl .text-white\/70{color:var(--text-secondary)!important}
section.max-w-7xl.py-8>a[href="/perfect-day"].rounded-2xl:hover{border-color:var(--fg)}
/* banner del Mundial 2026 (terminó el 19-jul-2026) y promo duplicada «Cada noche de CDMX»: fuera de la portada */
section[aria-label="Mundial 2026 en México"]{display:none}
section.py-10:has(>div.rounded-3xl>img[src*="promo-poster"]){display:none}
/* «Eventos destacados» repetía el destacado: queda un solo destacado (el n.º 1 de tendencia) */
div.pt-8>section:has(a[href*="featured=true"]){display:none}
/* tarjetas de categoría con foto: sin emoji, radios contenidos */
a.group.snap-start.w-\[260px\]{border-radius:12px;width:220px;height:260px}
a.group.snap-start.w-\[260px\] span.text-3xl{display:none}
a.group.snap-start.w-\[260px\] h3{font-weight:700}
@media (max-width:639px){a.group.snap-start.w-\[260px\]{width:168px;height:208px}}
/* grandes bloques promocionales de color */
.rounded-3xl{border-radius:14px}

/* ---------- 10. Ciudad / país / agenda / categoría ---------- */
/* fichas de cifras (50+ / 25 hoy / 3 categorías) con emoji: fuera; las cifras ya están en el texto */
section.-mt-9:has(.grid-cols-3>div.rounded-2xl.shadow-lg){display:none}
/* chips del héroe de ciudad: una línea de texto, sin píldoras ni pulso */
span.rounded-full.uppercase.tracking-wider{background:none!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0!important;text-transform:none;letter-spacing:0;font-size:14px;font-weight:600}
span.rounded-full.uppercase.tracking-wider .animate-ping{display:none}
/* el chip «México · Ciudad de México» repite la miga y el H1 */
span.rounded-full.uppercase.tracking-wider.bg-white\/15{display:none}
span.rounded-full.uppercase.tracking-wider.bg-\[\#e63946\]::after{content:" ·";font-weight:400}
/* atajos (Eventos hoy, Agenda, Fin de semana…): rectángulos, no píldoras */
a.rounded-full.border,a.rounded-full[style*="border"]{border-radius:8px}
/* categorías con emoji en caja de color */
a.group.flex.items-center.gap-3>span.w-10.h-10.rounded-xl.text-xl{display:none}
/* héroe de ciudad y país: botones sin brillo */
a.rounded-2xl.shadow-lg,a.rounded-2xl[class*="shadow-[#e63946]"]{box-shadow:none!important;border-radius:var(--cx-radius)!important}

/* ---------- 11. Ficha de evento ---------- */
/* héroe: imagen limpia, título y datos DEBAJO (antes se montaban sobre el póster) */
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8{height:auto!important;padding-top:min(45vw,520px);margin-bottom:0;background:#0f0f11;cursor:default}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>img{height:min(45vw,520px)!important;bottom:auto!important;transform:none!important;object-fit:cover}
@media (min-width:1024px){
  article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8{padding-top:400px}
  article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>img{object-fit:contain;height:400px!important}
  article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.inset-0{height:400px}
  article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 h1{max-width:calc(66.666% - 24px)}
  /* la tarjeta de precio sube a la altura del título: compra visible en la primera pantalla */
  article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-1{margin-top:-190px;position:relative;z-index:15}
}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.inset-0{bottom:auto;height:min(45vw,520px);background:none!important}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.bottom-0{position:relative;padding:20px max(16px,calc((100% - 80rem)/2 + 16px)) 76px;background:var(--bg)}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.bottom-0>div.max-w-7xl{max-width:none;margin:0}
@media (min-width:640px){article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.bottom-0{padding-top:28px;padding-bottom:84px}}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 h1{color:var(--fg)!important;font-size:clamp(1.65rem,4.6vw,3rem);line-height:1.1;margin-bottom:10px}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 div.text-white\/80{color:var(--text-secondary)!important;font-size:15px}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 div.text-white\/80 .bg-white\/40{background:var(--text-tertiary)}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 div.text-white\/80>span:nth-child(3),article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 div.text-white\/80>span:nth-child(5){color:var(--fg);font-weight:600}
/* categoría: texto, sin píldora roja */
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 div.absolute.bottom-0 span.rounded-full{background:none!important;color:var(--text-secondary)!important;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;font-weight:600;margin-bottom:6px}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8 div.absolute.bottom-0 span.rounded-full>span{display:none}
/* favorito y compartir: fila de acciones bajo los datos, fuera de la imagen */
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.top-4.right-4{top:auto;bottom:20px;left:max(16px,calc((100% - 80rem)/2 + 16px));right:auto;z-index:20}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.top-4.right-4>button{width:44px;height:44px;border-radius:var(--cx-radius);background:var(--card)!important;border:1px solid var(--border);-webkit-backdrop-filter:none;backdrop-filter:none}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.top-4.right-4>button svg{color:var(--fg)!important}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.top-4.right-4 div.relative>button{height:44px;border-radius:var(--cx-radius)}
article.min-h-screen>div.relative.w-full.overflow-hidden.mb-8>div.absolute.top-4.left-4{top:12px;left:12px}
/* cuenta atrás: una línea discreta, sin caja rosa */
#section-facts>div.rounded-xl{background:none!important;border:0!important;padding:0}
#section-facts .countdown-cell{background:none!important;border:0!important;box-shadow:none!important;min-width:0;padding:0 2px}
#section-facts .countdown-num{font-size:15px}
#section-facts .live-dot{display:none}
#section-facts span.text-xs.font-semibold{color:var(--text-secondary)!important}
/* «Evento destacado» y demás insignias de relleno en los datos */
#section-facts>div.flex.flex-wrap>div:has(>span.text-lg){display:none}
/* móvil: precio, fecha, hora y botón de compra JUSTO después del título (antes a ~1.700 px) */
@media (max-width:1023px){
  article.min-h-screen .grid.lg\:grid-cols-3{display:flex;flex-direction:column;gap:32px}
  article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-1,article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-1>div.sticky{display:contents}
  article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-1>div.sticky>div:first-child{order:-2}
  article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-1>div.sticky>a.block.rounded-2xl{order:-1}
  article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-1>div.sticky>*{order:1}
  article.min-h-screen .grid.lg\:grid-cols-3>div.lg\:col-span-2{order:0}
}
/* tarjeta de precio: sin franja roja; «Comprar» es el botón principal, «Pagar y agregar» secundario */
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child{border:1px solid var(--border);box-shadow:none!important;border-radius:12px;background:var(--card)!important}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child>div.h-1{display:none}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child span.text-4xl{font-weight:800;font-size:2rem}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.space-y-3 span.font-medium{font-size:14px;font-weight:600}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2{display:flex;flex-direction:column;gap:8px}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2>*{margin:0!important}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2>a{order:-1;min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--cx-radius);background:var(--cx-red)!important;font-size:15px}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2>a:hover{background:var(--cx-red-hover)!important}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2>div.relative>button.bg-\[\#e63946\]{background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--border);min-height:44px;border-radius:var(--cx-radius)}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2>div.relative>button.bg-\[\#e63946\]:hover{border-color:var(--fg)}
article.min-h-screen .lg\:col-span-1 div.sticky>div.rounded-2xl:first-child div.pt-2.space-y-2>p{order:5}
/* barra fija de compra en móvil */
.sticky-cta-bar .glass{background:var(--card)!important;-webkit-backdrop-filter:none;backdrop-filter:none;border-color:var(--border)!important}
.sticky-cta-bar button.bg-\[\#e63946\],.sticky-cta-bar a.bg-\[\#e63946\]{border-radius:var(--cx-radius);min-height:44px;padding-left:20px;padding-right:20px}
/* bloques de relleno con caja y emoji */
#completa-tu-dia span.text-lg:first-child,#completa-tu-dia div.flex>span.text-lg{display:none}
#section-fomo>div>div.relative>div.absolute.h-1{display:none}

/* ---------- 12. Recinto ---------- */
span.rounded-full[style*="230,57,70"],span.rounded-full[style*="230, 57, 70"]{border-radius:6px}

/* recinto: sin píldora «VENUE», sin cifras repetidas */
span.rounded-full.uppercase[style*="230,57,70"],span.rounded-full.uppercase[style*="230, 57, 70"]{display:none}
span.rounded-full[style*="42,157,143"],span.rounded-full[style*="42, 157, 143"]{background:none!important;padding:0;font-weight:600}
span.rounded-full.bg-white\/10.backdrop-blur-sm{background:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:0}
div.justify-around.py-3.rounded-xl:has(>div.w-px){display:none}

/* Perfect Day: caja «¿Cómo funciona?» neutra */
div.relative.rounded-2xl.animate-fade-in:has(>p.uppercase){background:var(--surface)!important;border:1px solid var(--border)!important}
div.relative.rounded-2xl.animate-fade-in:has(>p.uppercase) *{border-color:var(--border)}

/* ---------- 13. Pie ---------- */
footer[role="contentinfo"]{background:var(--surface)}
footer[role="contentinfo"] h4{font-size:13px;letter-spacing:0;text-transform:none;color:var(--fg)}
footer .ctx-install-link{display:none;margin-top:12px;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--cx-radius);background:var(--card);color:var(--fg);font-size:14px;font-weight:600;cursor:pointer}
html[data-ctx-pwa="1"] footer .ctx-install-link{display:flex;width:fit-content}
footer .ctx-install-link:hover{border-color:var(--fg)}

/* ---------- 14. Avisos flotantes: más bajos en móvil ---------- */
@media (max-width:767px){
  [role="dialog"].fixed.bottom-4{bottom:calc(68px + env(safe-area-inset-bottom,0px))}
}

/* ---------- 15. Zonas de toque ≥44 px en táctil (zona ampliada invisible, el diseño no se mueve) ---------- */
/* Solo elementos pequeños por naturaleza: botones, enlaces del pie y de navegación, chips y enlaces de texto sueltos.
   Se excluyen los posicionados (absolute/fixed/sticky) y los enlaces dentro de un párrafo (excepción WCAG 2.5.8). */
@media (pointer:coarse){
  :is(button,summary,footer a[href],nav a[href],a.rounded-full,a.rounded-lg,a.rounded-xl,a.text-sm,a.text-xs,li>a[href]):not(.absolute):not(.fixed):not(.sticky):not(p a):not(.w-full){position:relative}
  :is(button,summary,footer a[href],nav a[href],a.rounded-full,a.rounded-lg,a.rounded-xl,a.text-sm,a.text-xs,li>a[href]):not(p a):not(.w-full)::after{content:"";position:absolute;left:0;right:0;top:50%;height:max(100%,44px);min-width:44px;transform:translateY(-50%)}
  :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select){min-height:44px}
  :is(button,a[href]).w-full{min-height:44px}
}

/* Integrador (1-oct): el selector de país de A-02 ya se ve en móvil; sus opciones medían 36 px de alto → 44 px en táctil */
@media (pointer:coarse){.min-w-\[200px\].max-h-\[70vh\]>a.block{min-height:44px;display:flex;align-items:center}}
/* Integrador (1-oct): en móvil el desplegable del selector de país se salía 13 px por la derecha (left:0 desde x≈200) → anclado a la derecha */
@media (max-width:767px){.min-w-\[200px\].max-h-\[70vh\]{left:auto;right:0}}
