/* =========================================================
   V26 FIXES
   1) Home: el video es el único fondo visible.
   2) Tarifas siempre centradas.
   3) Ubicación con imagen real de Ibiza, mapa universal y textos visibles.
   ========================================================= */

/* HOME: elimina cualquier fondo detrás del video SOLO en inicio */
html body[data-active-view="inicio"],
html body[data-active-view="inicio"] .site-header,
html body[data-active-view="inicio"] .hero,
html body:not([data-active-view]) .site-header,
html body:not([data-active-view]) .hero {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* El video ocupa el 100% y queda como único fondo del home */
html body[data-active-view="inicio"] .home-video-bg,
html body:not([data-active-view]) .home-video-bg,
html body .site-header .hero .home-video-bg {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  opacity: 1 !important;
  z-index: -5 !important;
  background: transparent !important;
}

/* Desactiva el fondo anterior del hero SOLO en home */
html body[data-active-view="inicio"] .hero-bg,
html body[data-active-view="inicio"] .hero-bg::before,
html body[data-active-view="inicio"] .hero-bg::after,
html body:not([data-active-view]) .hero-bg,
html body:not([data-active-view]) .hero-bg::before,
html body:not([data-active-view]) .hero-bg::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-color: transparent !important;
  background-image: none !important;
  animation: none !important;
  transform: none !important;
}

/* Si había overlay oscuro, lo dejamos transparente para que no parezca otro background detrás */
html body[data-active-view="inicio"] .hero-shade,
html body:not([data-active-view]) .hero-shade {
  background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.34)) !important;
}

/* Evita franjas blancas alrededor del home */
html body[data-active-view="inicio"] main,
html body:not([data-active-view]) main {
  background: transparent !important;
}

/* Tarifas: siempre centradas aunque haya una sola tarjeta */
#tarifas,
#tarifas .section-heading {
  text-align: center !important;
}

#tarifas .pricing-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: clamp(16px, 3vw, 28px) !important;
  width: 100% !important;
  margin-inline: auto !important;
}

#tarifas .price-card {
  width: min(420px, 100%) !important;
  margin-inline: auto !important;
  text-align: center !important;
}

#tarifas .price-card ul {
  padding-left: 0 !important;
}

#tarifas .price-card li {
  text-align: center !important;
}

/* Ubicación: textos visibles y mapa unificado */
.location-ibiza-section,
.location-ibiza-section .section-heading,
.location-ibiza-section .map-card,
.location-ibiza-section .ibiza-map-card {
  color: #061525 !important;
}

.location-ibiza-section .section-heading h2,
.location-ibiza-section .section-heading p,
.location-ibiza-section .map-card strong,
.location-ibiza-section .map-card p,
#locationLabel,
#locationNote,
#locationIntro {
  color: #061525 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.location-card-grid {
  align-items: stretch !important;
}

.ibiza-visual-card {
  background: #ffffff !important;
}

.ibiza-visual-card img {
  width: 100% !important;
  height: clamp(260px, 46vw, 480px) !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.ibiza-map-card {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(6,21,37,.16) !important;
}

.single-map-action {
  grid-template-columns: 1fr !important;
}

#universalMapBtn {
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
}

.ibiza-map-frame {
  min-height: 340px !important;
  border: 1px solid rgba(6,21,37,.10) !important;
}

/* Ticket: estado y botones más claros */
.ticket-status {
  white-space: nowrap;
}

@media (max-width: 760px) {
  #tarifas .price-card {
    width: min(360px, 100%) !important;
  }

  .ibiza-map-frame {
    min-height: 280px !important;
  }
}
