/* =========================================================
   Radiance v5 — header + hero (propuesta C, la que usa la home)
   Se carga después de v5.css y se activa con la clase hv-c en <body>.
   Las propuestas A, B, D y las tarjetas de la C están en hero-legado.css.
   ========================================================= */

/* Dos logos en el header: la propuesta decide cuál se ve */
.nav__logo .logo-claro { display: none; }

/* =========================================================
   C · INMERSIVA (estilo DepilZone): foto a pantalla completa,
   header integrado y tarjetas de cristal dentro del hero
   ========================================================= */
.hv-c .nav { position: fixed; left: 0; right: 0; background: transparent; transition: background-color .35s var(--curva-hover); }
.hv-c .nav__logo .logo-color { display: none; }
.hv-c .nav__logo .logo-claro { display: block; }
.hv-c .nav__links { position: absolute; left: 50%; transform: translateX(-50%); gap: 4px; margin: 0; padding: 5px; border-radius: var(--r-pildora); background: rgba(255, 255, 255, .14); color: var(--blanco); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); transition: background-color .35s var(--curva-hover), color .35s var(--curva-hover); }
.hv-c .nav__links a { padding: 8px 16px; border-radius: var(--r-pildora); transition: background-color .2s var(--curva-hover), color .2s var(--curva-hover); }
.hv-c .nav__links a:hover { background: var(--blanco); color: var(--texto); }
.hv-c .nav__resumen { background: rgba(255, 255, 255, .14); color: var(--blanco); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.hv-c .nav__cta { background: var(--blanco); color: var(--texto); }
.hv-c .nav__cta:hover { background: var(--acento); color: var(--blanco); }
.hv-c.con-scroll .nav { background: var(--blanco); }
.hv-c.con-scroll .nav__logo .logo-color { display: block; }
.hv-c.con-scroll .nav__logo .logo-claro { display: none; }
.hv-c.con-scroll .nav__links { background: var(--crema); color: var(--texto-60); }
.hv-c.con-scroll .nav__resumen { background: var(--crema); color: var(--texto); }
.hv-c.con-scroll .nav__cta { background: var(--acento); color: var(--blanco); }

.hv-c .hero { height: clamp(660px, 100svh, 940px); margin-bottom: 0; background: #1A130D; color: var(--blanco); }
.hv-c .promo { display: block; max-width: none; padding: 0; }
.hv-c .promo__circulo { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; margin: 0; }
.hv-c .promo__circulo::before { display: none; }
.hv-c .promo__circulo img { border-radius: 0; object-position: var(--foco, 50% 40%); transform: scale(1.05); transition: transform 7s linear; }
.hv-c .promo.activa .promo__circulo img { transform: scale(1); }
/* Velo: garantiza contraste del texto blanco (≥ 4.5:1) */
.hv-c .promo::after { content: ""; position: absolute; inset: 0; background:
  linear-gradient(180deg, rgba(20, 14, 8, .6) 0%, rgba(20, 14, 8, 0) 24%),
  linear-gradient(90deg, rgba(20, 14, 8, .82) 0%, rgba(20, 14, 8, .55) 38%, rgba(20, 14, 8, .08) 70%),
  linear-gradient(0deg, rgba(20, 14, 8, .78) 0%, rgba(20, 14, 8, 0) 38%); }
.hv-c .promo__texto { position: absolute; z-index: 2; left: max(var(--pad-x), calc((100% - var(--contenedor)) / 2)); bottom: 190px; max-width: 620px; }
.hv-c .promo__eti { background: rgba(255, 255, 255, .14); color: var(--blanco); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.hv-c .promo__titulo em { color: #F0C38A; }
.hv-c .promo__sub, .hv-c .promo__nota { color: rgba(255, 255, 255, .8); }
.hv-c .promo__beneficios .lucide { color: #F0C38A; box-shadow: inset 0 0 0 1.5px rgba(240, 195, 138, .7); }
.hv-c .promo__ctas .boton--secundario { background: rgba(255, 255, 255, .16); color: var(--blanco); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.hv-c .promo__ctas .boton--secundario:hover { background: var(--blanco); color: var(--texto); }
.hv-c .tratamientos { padding-top: var(--esp-seccion); }

/* ---------- Puntos con cargador (hero inmersivo sin tarjetas) ---------- */
.hero__control { position: absolute; z-index: 5; right: max(var(--pad-x), calc((100% - var(--contenedor)) / 2)); bottom: 48px; display: flex; align-items: center; gap: 14px; padding: 6px 18px 6px 6px; border-radius: var(--r-pildora); background: rgba(255, 255, 255, .12); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.hero__play { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(255, 255, 255, .12); color: var(--blanco); transition: background-color .2s var(--curva-hover), color .2s var(--curva-hover); }
.hero__play:hover { background: rgba(255, 255, 255, .24); }
/* Deja libre la esquina del botón flotante de WhatsApp (solo escritorio) */
@media (min-width: 900px) { .hero__control { right: calc(max(var(--pad-x), (100% - var(--contenedor)) / 2) + 72px); } }
.hero__play .lucide { width: 15px; height: 15px; fill: currentColor; stroke-width: 0; }
.hero__icono-play, .hero.pausa .hero__icono-pausa { display: none; }
.hero.pausa .hero__icono-play { display: block; margin-left: 2px; }
.hero__puntos { position: relative; display: flex; align-items: center; gap: 10px; }
.hero__punto { position: relative; width: 10px; height: 10px; padding: 0; border-radius: var(--r-pildora); background: rgba(255, 255, 255, .42); overflow: hidden; transition: width .5s var(--curva), background-color .3s var(--curva-hover); }
.hero__punto:hover { background: rgba(255, 255, 255, .7); }
.hero__punto::before { content: ""; position: absolute; inset: -10px; }
.hero__punto i { position: absolute; left: 0; top: 0; bottom: 0; width: 0; border-radius: inherit; background: var(--blanco); }
.hero__punto.activa { width: 64px; background: rgba(255, 255, 255, .28); }
.hero__punto.activa i { animation: llenar var(--duracion, 7s) linear forwards; }
.hero.pausa .hero__punto.activa i, .hero.fuera .hero__punto.activa i { animation-play-state: paused; }
.hero.sin-autoplay .hero__punto.activa i { animation: none; width: 100%; }
.hv-c .hero:has(.hero__puntos) .promo__texto { bottom: 96px; }
.hv-c .hero:has(.hero__puntos) .promo::after { background:
  linear-gradient(180deg, rgba(20, 14, 8, .6) 0%, rgba(20, 14, 8, 0) 24%),
  linear-gradient(90deg, rgba(20, 14, 8, .82) 0%, rgba(20, 14, 8, .55) 38%, rgba(20, 14, 8, .08) 70%),
  linear-gradient(0deg, rgba(20, 14, 8, .6) 0%, rgba(20, 14, 8, 0) 30%); }

/* =========================================================
   Móvil
   ========================================================= */
@media (max-width: 900px) {
  .hv-c .nav__links { display: none; }
  .hv-c .hero { height: auto; min-height: 100svh; display: flex; flex-direction: column; justify-content: flex-end; }
  .hv-c .hero__pista { position: absolute; inset: 0; display: block; }
  .hv-c .promo { position: absolute; inset: 0; display: block; padding: 0; }
  .hv-c .promo__circulo { margin: 0; width: 100%; }
  .hv-c .promo::after { background: linear-gradient(180deg, rgba(20, 14, 8, .55) 0%, rgba(20, 14, 8, 0) 18%), linear-gradient(0deg, rgba(20, 14, 8, .9) 0%, rgba(20, 14, 8, .65) 48%, rgba(20, 14, 8, .1) 80%); }
  .hv-c .promo__texto { left: var(--pad-x); right: var(--pad-x); bottom: 128px; }
  .hv-c .hero:has(.hero__puntos) .promo__texto { bottom: 92px; }
  .hero__control { right: var(--pad-x); bottom: 28px; padding: 5px 14px 5px 5px; gap: 12px; }
  .hero__play { width: 32px; height: 32px; }
  .hv-c .hero:has(.hero__puntos) { min-height: 92svh; }
  /* Móvil: la foto ocupa la parte superior y se funde con el fondo donde va el texto */
  .hv-c .hero:has(.hero__puntos) .promo__circulo { inset: 0 0 auto; height: 60%; }
  .hv-c .hero:has(.hero__puntos) .promo__circulo img { object-position: var(--foco-movil, var(--foco, 50% 40%)); }
  .hv-c .hero:has(.hero__puntos) .promo::after { background: linear-gradient(180deg, rgba(20, 14, 8, .55) 0%, rgba(20, 14, 8, 0) 16%, rgba(20, 14, 8, 0) 34%, #1A130D 60%); }
}

/* ---------- Texto solo para lectores de pantalla y buscadores (H1 del slide 1) ---------- */
.visualmente-oculto { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* Video de fondo del slide 1 (js/hero-video.js): solo escritorio. Cubre el slide como la foto (object-fit: cover)
   y aparece con un fundido cuando ya se reproduce; mientras tanto se ve la foto. La capa oscura (.promo::after)
   sigue por encima, así el texto se lee igual. */
.promo__video { display: none; }
@media (min-width: 901px) {
  .promo__video { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; pointer-events: none; opacity: 0; transition: opacity .9s var(--curva); }
  .promo__circulo--video .promo__video { opacity: 1; }
}
