/* WhiteMoon Dental — capa holográfica (tema claro: cristal + luz azul/verde).
   Solo decorativa (aria-hidden). Animaciones solo con transform/opacity/background-position
   (sin top/left => CLS 0). Se pausan fuera de pantalla y con prefers-reduced-motion. */
.hl{display:none}
@media (min-width:980px){
.hl{display:block;position:absolute;z-index:3;right:max(2vw,calc((100vw - var(--maxw))/2 - 8px));top:50%;width:clamp(380px,36vw,540px);height:560px;margin-top:-250px;pointer-events:none;contain:layout}
.hl *{animation-play-state:paused}
.hl.hl-on *{animation-play-state:running}

/* suelo: elipses de luz bajo el teléfono */
.hl-suelo{position:absolute;left:50%;bottom:6px;width:340px;height:70px;margin-left:-170px;border-radius:50%;
  border:1px solid rgba(26,111,156,.32);background:radial-gradient(ellipse at center,rgba(124,196,232,.45),rgba(127,216,191,.16) 55%,transparent 72%);
  box-shadow:0 0 38px rgba(124,196,232,.45)}
.hl-suelo::after{content:"";position:absolute;inset:14px 46px;border-radius:50%;border:1px solid rgba(15,122,97,.32);animation:hl-pulso 3.6s ease-in-out infinite}

/* arcos de luz */
.hl-arco{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(26,111,156,.2)}
.hl-arco--a{width:500px;height:500px;margin:-250px 0 0 -250px;border-color:rgba(124,196,232,.55) transparent transparent rgba(127,216,191,.5);animation:hl-gira 22s linear infinite}
.hl-arco--b{width:410px;height:410px;margin:-205px 0 0 -205px;border-color:transparent rgba(26,111,156,.28) rgba(124,196,232,.42) transparent;animation:hl-gira 30s linear infinite reverse}

/* teléfono */
.hl-tel{position:absolute;right:6%;top:30px;width:236px;height:476px;border-radius:40px;padding:12px;
  background:linear-gradient(160deg,rgba(255,255,255,.92),rgba(232,243,250,.7) 55%,rgba(227,246,240,.78));
  border:1px solid rgba(26,111,156,.34);
  box-shadow:0 0 0 6px rgba(255,255,255,.55),0 30px 70px -22px rgba(26,111,156,.55),0 0 54px rgba(124,196,232,.4),inset 0 0 28px rgba(124,196,232,.25);
  animation:hl-flota 7s ease-in-out infinite;will-change:transform}
.hl-tel::before{content:"";position:absolute;left:50%;top:18px;width:74px;height:20px;margin-left:-37px;border-radius:12px;background:rgba(22,50,61,.86);z-index:2}
.hl-pant{position:relative;width:100%;height:100%;border-radius:30px;overflow:hidden;
  background:linear-gradient(180deg,rgba(244,249,251,.95),rgba(232,243,250,.75));border:1px solid rgba(26,111,156,.14);padding:52px 14px 14px;display:flex;flex-direction:column;gap:10px}
.hl-pant::before{content:"Marcos · Asistente IA";position:absolute;left:0;right:0;top:14px;padding-top:26px;text-align:center;font:700 .66rem/1 var(--display);letter-spacing:.06em;color:var(--blue);text-transform:uppercase}
.hl-pant::after{content:"";position:absolute;left:0;right:0;top:0;height:46%;background:linear-gradient(180deg,transparent,rgba(124,196,232,.32) 50%,transparent);transform:translateY(-100%);animation:hl-barre 5.6s ease-in-out infinite}
.hl-m{height:34px;border-radius:14px;border:1px solid rgba(26,111,156,.16);background:rgba(255,255,255,.88);width:78%;box-shadow:0 6px 16px -10px rgba(26,111,156,.4)}
.hl-m i{display:block;height:5px;border-radius:3px;background:rgba(26,111,156,.34);margin:9px 12px 0;width:62%}
.hl-m i+i{width:38%;margin-top:5px;background:rgba(26,111,156,.2)}
.hl-m--u{align-self:flex-end;background:linear-gradient(135deg,rgba(124,196,232,.55),rgba(127,216,191,.5));border-color:rgba(26,111,156,.22)}
.hl-m--u i{background:rgba(22,50,61,.42)}
.hl-m--t{height:24px;width:34%}
.hl-m--t b{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin:9px 0 0 12px;box-shadow:12px 0 0 rgba(15,122,97,.55),24px 0 0 rgba(15,122,97,.3);animation:hl-parp 1.6s ease-in-out infinite}
.hl-cita{margin-top:auto;height:62px;border-radius:16px;border:1px solid rgba(15,122,97,.4);background:linear-gradient(135deg,rgba(227,246,240,.95),rgba(255,255,255,.9));box-shadow:0 0 22px rgba(127,216,191,.5);position:relative}
.hl-cita::before{content:"";position:absolute;left:14px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--green);opacity:.9}
.hl-cita::after{content:"Cita";position:absolute;left:52px;top:14px;font:700 .72rem/1 var(--display);color:var(--green-deep);letter-spacing:.04em;text-transform:uppercase}
.hl-cita i{position:absolute;left:52px;top:34px;height:5px;width:46%;border-radius:3px;background:rgba(15,122,97,.3)}

/* panel de gráficas */
.hl-graf{position:absolute;z-index:2;left:0;bottom:78px;width:228px;height:196px;border-radius:18px;padding:14px;
  background:linear-gradient(150deg,rgba(255,255,255,.93),rgba(232,243,250,.74));border:1px solid rgba(26,111,156,.3);
  box-shadow:0 24px 54px -22px rgba(26,111,156,.55),0 0 42px rgba(124,196,232,.38),inset 0 0 22px rgba(124,196,232,.2);
  transform:rotate(-3deg);animation:hl-flota2 8s ease-in-out infinite;will-change:transform}
.hl-graf::before{content:"Más citas";position:absolute;left:14px;top:12px;font:700 .64rem/1 var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--blue)}
.hl-bars{position:absolute;left:14px;right:14px;top:56px;height:56px;display:flex;align-items:flex-end;gap:7px}
.hl-bars i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--green-lt),var(--blue-lt));border:1px solid rgba(26,111,156,.2);border-bottom:0;transform-origin:50% 100%;transform:scaleY(.2);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.hl-on .hl-bars i{transform:scaleY(1)}
.hl-bars i:nth-child(1){height:30%}.hl-bars i:nth-child(2){height:48%;transition-delay:.08s}.hl-bars i:nth-child(3){height:42%;transition-delay:.16s}.hl-bars i:nth-child(4){height:70%;transition-delay:.24s}.hl-bars i:nth-child(5){height:100%;transition-delay:.32s}
.hl-linea{position:absolute;left:14px;right:14px;bottom:12px;height:46px}
.hl-linea svg{width:100%;height:100%;overflow:visible}
.hl-linea path{fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s .4s ease}
.hl-on .hl-linea path{stroke-dashoffset:0}
.hl-linea circle{fill:#fff;stroke:var(--green);stroke-width:1.6}
.hl-don{position:absolute;right:14px;top:10px;width:30px;height:30px;border-radius:50%;
  background:conic-gradient(var(--green) 0 72%,rgba(26,111,156,.14) 0);-webkit-mask:radial-gradient(circle,transparent 9px,#000 10px);mask:radial-gradient(circle,transparent 9px,#000 10px);animation:hl-gira 14s linear infinite}

/* mini panel flotante derecha-superior */
.hl-mini{position:absolute;left:34px;top:34px;width:116px;height:54px;border-radius:14px;border:1px solid rgba(26,111,156,.26);
  background:linear-gradient(140deg,rgba(255,255,255,.92),rgba(227,246,240,.72));box-shadow:0 14px 34px -16px rgba(26,111,156,.5),0 0 26px rgba(127,216,191,.4);
  animation:hl-flota2 6.4s ease-in-out infinite reverse}
.hl-mini::before{content:"24/7";position:absolute;left:14px;top:11px;font:800 1.05rem/1 var(--display);color:var(--green-deep);letter-spacing:-.02em}
.hl-mini::after{content:"";position:absolute;left:14px;right:14px;bottom:11px;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--green-lt),var(--blue-lt))}

.hl-nota{position:absolute;left:0;bottom:-18px;width:228px;text-align:left;font:600 .62rem/1 var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);opacity:.85}
.hl-nota::before{content:"Ilustración, no datos reales"}
}

@keyframes hl-flota{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes hl-flota2{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(-3deg) translateY(10px)}}
@keyframes hl-gira{to{transform:rotate(360deg)}}
@keyframes hl-pulso{0%,100%{opacity:.35;transform:scale(.92)}50%{opacity:1;transform:scale(1.04)}}
@keyframes hl-barre{0%{transform:translateY(-100%)}60%,100%{transform:translateY(230%)}}
@keyframes hl-parp{0%,100%{opacity:.4}50%{opacity:1}}
@keyframes hl-hilo{from{background-position:-60% 0,0 0}to{background-position:160% 0,0 0}}
@media (prefers-reduced-motion:reduce){.hl *,.proc-grid::before{animation:none!important}.hl-bars i{transform:none!important;transition:none!important}.hl-linea path{stroke-dashoffset:0!important;transition:none!important}}

/* ======================= HOLOGRAFÍA EN EL RESTO DE BLOQUES ======================= */
/* Hover de tarjetas: borde y resplandor de luz */
.svc-card:hover,.area-c:hover,.why-c:hover,.proc-c:hover,.precio-card:hover{box-shadow:0 0 0 1px rgba(124,196,232,.55),0 22px 46px -22px rgba(26,111,156,.5),0 0 34px rgba(124,196,232,.3)}
.svc-media::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);transform:translateX(-120%);transition:transform .9s cubic-bezier(.16,1,.3,1)}
.svc-card:hover .svc-media::before{transform:translateX(120%)}

/* Foto de La clínica: marco HUD + barrido de escáner */
.framed .hl-sc{position:absolute;inset:0;z-index:2;pointer-events:none}
.hl-sc i{position:absolute;width:26px;height:26px;border:2px solid rgba(255,255,255,.92);filter:drop-shadow(0 0 6px rgba(124,196,232,.9))}
.hl-sc i:nth-child(1){left:16px;top:16px;border-right:0;border-bottom:0;border-radius:8px 0 0 0}
.hl-sc i:nth-child(2){right:16px;top:16px;border-left:0;border-bottom:0;border-radius:0 8px 0 0}
.hl-sc i:nth-child(3){left:16px;bottom:16px;border-right:0;border-top:0;border-radius:0 0 0 8px}
.hl-sc i:nth-child(4){right:16px;bottom:16px;border-left:0;border-top:0;border-radius:0 0 8px 0}
.hl-sc b{position:absolute;left:0;right:0;top:0;height:34%;background:linear-gradient(180deg,transparent,rgba(124,196,232,.0) 20%,rgba(124,196,232,.4) 92%,rgba(255,255,255,.85) 100%);border-bottom:1px solid rgba(255,255,255,.9);transform:translateY(-100%);animation:hl-barre 5.2s ease-in-out infinite;animation-play-state:paused}
.hl-sc em{display:none;position:absolute;left:18px;bottom:52px;padding:7px 12px;border-radius:100px;font:700 .64rem/1 var(--display);font-style:normal;letter-spacing:.07em;text-transform:uppercase;color:var(--blue);background:rgba(255,255,255,.86);backdrop-filter:blur(6px);border:1px solid rgba(124,196,232,.7);box-shadow:0 0 22px rgba(124,196,232,.55);animation:hl-flota 6s ease-in-out infinite;animation-play-state:paused}
.hl-sc em::before{content:"Imagen digital"}
.framed.hl-on .hl-sc b,.framed.hl-on .hl-sc em{animation-play-state:running}

/* Hilo de luz al pie de la web */
.foot{position:relative}
.foot::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:linear-gradient(90deg,transparent 0,rgba(124,196,232,.95) 50%,rgba(127,216,191,.9) 58%,transparent 100%) 0 0/40% 100% no-repeat;box-shadow:0 0 14px rgba(124,196,232,.7);animation:hl-hilo2 7s linear infinite;animation-play-state:paused}
.foot.hl-on::before{animation-play-state:running}
@keyframes hl-hilo2{from{background-position:-40% 0}to{background-position:140% 0}}

/* Mapa holográfico de Contacto (en flujo, todas las pantallas) */
.hl-map{position:relative;margin-top:30px;height:150px;border-radius:18px;overflow:hidden;border:1px solid rgba(26,111,156,.26);
  background:radial-gradient(circle at 62% 52%,rgba(124,196,232,.32),transparent 60%),repeating-linear-gradient(0deg,rgba(26,111,156,.12) 0 1px,transparent 1px 22px),repeating-linear-gradient(90deg,rgba(26,111,156,.12) 0 1px,transparent 1px 22px),linear-gradient(160deg,#fff,#e8f3fa);
  box-shadow:0 20px 44px -24px rgba(26,111,156,.5),inset 0 0 30px rgba(124,196,232,.22)}
.hl-map::before{content:"Madrid Oeste";position:absolute;left:16px;top:14px;font:700 .64rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.hl-map::after{content:"Ilustración, no es un mapa real";position:absolute;left:16px;bottom:12px;font:600 .58rem/1 var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.hl-pin{position:absolute;left:62%;top:52%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(255,255,255,.9),0 0 18px rgba(15,122,97,.7)}
.hl-pin::before,.hl-pin::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1.5px solid rgba(15,122,97,.55);animation:hl-radar 3s ease-out infinite;animation-play-state:paused}
.hl-pin::after{animation-delay:1.5s}
.hl-map.hl-on .hl-pin::before,.hl-map.hl-on .hl-pin::after{animation-play-state:running}
@keyframes hl-radar{0%{transform:scale(1);opacity:.9}100%{transform:scale(5.2);opacity:0}}

/* ===== Escenas holográficas por bloque (mismo lenguaje que el hero) ===== */
.hs{display:none}
@media (min-width:960px){
.sec .wrap{position:relative}
.hs{display:block;position:absolute;right:32px;top:-4px;width:400px;height:250px;pointer-events:none;z-index:0}
.hs *{animation-play-state:paused}.hs.hl-on *{animation-play-state:running}
.hs--faq{left:32px;right:32px;top:-26px;width:auto;height:170px}
.hs--c{top:-34px;transform:scale(.86);transform-origin:100% 0}
.hs-arco{position:absolute;left:50%;top:50%;border-radius:50%}
.hs-arco--a{width:330px;height:330px;margin:-165px 0 0 -165px;border:1px solid transparent;border-color:rgba(124,196,232,.55) transparent transparent rgba(127,216,191,.5);animation:hl-gira 24s linear infinite}
.hs-arco--b{width:262px;height:262px;margin:-131px 0 0 -131px;border:1px solid transparent;border-color:transparent rgba(26,111,156,.28) rgba(124,196,232,.42) transparent;animation:hl-gira 32s linear infinite reverse}
.hs-suelo{position:absolute;left:50%;bottom:-6px;width:300px;height:44px;margin-left:-150px;border-radius:50%;border:1px solid rgba(26,111,156,.3);background:radial-gradient(ellipse at center,rgba(124,196,232,.42),rgba(127,216,191,.14) 55%,transparent 72%);box-shadow:0 0 30px rgba(124,196,232,.4)}
.hs-suelo::after{content:"";position:absolute;inset:9px 40px;border-radius:50%;border:1px solid rgba(15,122,97,.3);animation:hl-pulso 3.6s ease-in-out infinite}

/* panel de cristal base */
.hs-p{position:absolute;border-radius:18px;border:1px solid rgba(26,111,156,.3);background:linear-gradient(150deg,rgba(255,255,255,.94),rgba(232,243,250,.76));box-shadow:0 24px 52px -22px rgba(26,111,156,.55),0 0 40px rgba(124,196,232,.36),inset 0 0 22px rgba(124,196,232,.2);animation:hs-f 8s ease-in-out infinite;will-change:transform}
.hs-p::before{content:attr(data-l);position:absolute;left:14px;top:12px;font:700 .62rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.hs-p--g::before{color:var(--green-deep)}
.hs-p--g{background:linear-gradient(150deg,rgba(255,255,255,.94),rgba(227,246,240,.78));box-shadow:0 24px 52px -22px rgba(26,111,156,.5),0 0 40px rgba(127,216,191,.38),inset 0 0 22px rgba(127,216,191,.2)}
@keyframes hs-f{0%,100%{transform:rotate(var(--r,0deg)) translateY(0)}50%{transform:rotate(var(--r,0deg)) translateY(-11px)}}
.hs-p.d2{animation-duration:6.6s;animation-delay:-2.4s}.hs-p.d3{animation-duration:9.2s;animation-delay:-4s}

/* filas (lista de tratamientos / tarifas) */
.hs-rows{position:absolute;left:14px;right:14px;top:38px}
.hs-r{position:relative;height:26px;border-radius:9px;border:1px solid rgba(26,111,156,.14);background:rgba(26,111,156,.06);margin-bottom:9px}
.hs-r::before{content:"";position:absolute;left:8px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--blue-lt);box-shadow:0 0 10px rgba(124,196,232,.8)}
.hs-r:nth-child(2n)::before{background:var(--green-lt);box-shadow:0 0 10px rgba(127,216,191,.8)}
.hs-r::after{content:"";position:absolute;left:28px;top:50%;width:46%;height:5px;margin-top:-2.5px;border-radius:3px;background:rgba(26,111,156,.3)}
.hs-r:nth-child(2)::after{width:36%}.hs-r:nth-child(3)::after{width:54%}.hs-r:nth-child(4)::after{width:30%}
.hs-r b{position:absolute;right:9px;top:50%;width:30px;height:9px;margin-top:-4.5px;border-radius:5px;background:linear-gradient(90deg,var(--green-lt),var(--blue-lt))}

/* móvil mini */
.hs-tel{position:absolute;border-radius:30px;padding:9px;width:140px;height:236px;background:linear-gradient(160deg,rgba(255,255,255,.93),rgba(232,243,250,.72) 55%,rgba(227,246,240,.78));border:1px solid rgba(26,111,156,.34);box-shadow:0 0 0 5px rgba(255,255,255,.55),0 26px 56px -22px rgba(26,111,156,.55),0 0 46px rgba(124,196,232,.4),inset 0 0 22px rgba(124,196,232,.25);animation:hl-flota 7s ease-in-out infinite}
.hs-tel::before{content:"";position:absolute;left:50%;top:14px;width:48px;height:13px;margin-left:-24px;border-radius:8px;background:rgba(22,50,61,.86);z-index:2}
.hs-pant{position:relative;height:100%;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,rgba(244,249,251,.95),rgba(232,243,250,.75));border:1px solid rgba(26,111,156,.14);padding:36px 9px 9px;display:flex;flex-direction:column;gap:7px}
.hs-pant::after{content:"";position:absolute;left:0;right:0;top:0;height:42%;background:linear-gradient(180deg,transparent,rgba(124,196,232,.32) 50%,transparent);transform:translateY(-100%);animation:hl-barre 5.6s ease-in-out infinite}
.hs-pant .hl-m{height:24px;border-radius:10px;width:80%}.hs-pant .hl-m i{margin:7px 9px 0;height:4px}.hs-pant .hl-m i+i{margin-top:4px}
.hs-pant .hl-m--t{height:18px;width:34%}.hs-pant .hl-m--t b{margin:6px 0 0 9px;width:5px;height:5px;box-shadow:10px 0 0 rgba(15,122,97,.55),20px 0 0 rgba(15,122,97,.3)}
.hs-pant .hl-cita{height:46px;border-radius:13px}.hs-pant .hl-cita::before{left:10px;width:20px;height:20px;margin-top:-10px}.hs-pant .hl-cita::after{left:38px;top:11px;font-size:.62rem}.hs-pant .hl-cita i{left:38px;top:27px}

/* pasos */
.hs-steps{position:absolute;left:16px;right:16px;top:40px;bottom:14px}
.hs-steps::before{content:"";position:absolute;left:6px;top:10px;bottom:10px;width:2px;background:linear-gradient(180deg,rgba(26,111,156,.35),rgba(15,122,97,.35))}
.hs-st{position:relative;height:38px;padding-left:28px}
.hs-st::before{content:"";position:absolute;left:0;top:4px;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--blue-lt);box-shadow:0 0 12px rgba(124,196,232,.7)}
.hs-st::after{content:"";position:absolute;left:28px;top:9px;width:56%;height:5px;border-radius:3px;background:rgba(26,111,156,.26)}
.hs-st:nth-child(2)::before{border-color:var(--green);background:var(--green-lt);animation:hl-pulso 2.6s ease-in-out infinite}
.hs-st:nth-child(3)::after{width:44%}.hs-st:nth-child(4)::after{width:62%}

/* calendario */
.hs-cal{position:absolute;left:16px;right:16px;top:40px;bottom:16px;background:radial-gradient(circle,rgba(26,111,156,.34) 1.8px,transparent 2.4px) 4px 4px/24px 24px}
.hs-cal i{position:absolute;left:52px;top:28px;width:22px;height:22px;border-radius:50%;background:var(--green-lt);border:2px solid var(--green);box-shadow:0 0 18px rgba(15,122,97,.7);animation:hl-pulso 3s ease-in-out infinite}

/* anillo con escudo */
.hs-ring{position:absolute;left:50%;top:60px;width:92px;height:92px;margin-left:-46px;border-radius:50%;background:conic-gradient(var(--green) 0 78%,rgba(26,111,156,.14) 0);-webkit-mask:radial-gradient(circle,transparent 36px,#000 37px);mask:radial-gradient(circle,transparent 36px,#000 37px);animation:hl-gira 16s linear infinite}
.hs-sh{position:absolute;left:50%;top:84px;width:34px;height:42px;margin-left:-17px;background:linear-gradient(160deg,var(--green-lt),var(--blue-lt));clip-path:polygon(50% 0,100% 16%,100% 56%,50% 100%,0 56%,0 16%);filter:drop-shadow(0 0 8px rgba(15,122,97,.6))}
.hs-sh::after{content:"";position:absolute;left:11px;top:11px;width:10px;height:17px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(40deg)}

/* pulso */
.hs-pul{position:absolute;left:12px;right:12px;bottom:12px;height:70px}
.hs-pul svg{width:100%;height:100%;overflow:visible}
.hs-pul path{fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:hl-trazo 4.6s ease-in-out infinite;filter:drop-shadow(0 0 5px rgba(15,122,97,.55))}
@keyframes hl-trazo{0%{stroke-dashoffset:1}55%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}

/* órbita + chips (especialidades) */
.hs-orb{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(26,111,156,.26)}
.hs-orb--1{width:232px;height:232px;margin:-116px 0 0 -116px;animation:hl-gira 20s linear infinite}
.hs-orb--2{width:164px;height:164px;margin:-82px 0 0 -82px;border-color:rgba(15,122,97,.32);animation:hl-gira 14s linear infinite reverse}
.hs-orb--3{width:96px;height:96px;margin:-48px 0 0 -48px;border-style:dashed;animation:hl-gira 28s linear infinite}
.hs-orb i{position:absolute;left:50%;top:-6px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--blue-lt);box-shadow:0 0 0 3px #fff,0 0 16px rgba(26,111,156,.7)}
.hs-orb--2 i{background:var(--green-lt);box-shadow:0 0 0 3px #fff,0 0 16px rgba(15,122,97,.7)}.hs-orb--3 i{top:auto;bottom:-6px}
.hs-nucleo{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:radial-gradient(circle,#fff,var(--blue-lt) 70%);box-shadow:0 0 34px rgba(124,196,232,.95);animation:hl-pulso 3.6s ease-in-out infinite}
.hs-chip{position:absolute;padding:11px 16px 11px 30px;border-radius:100px;border:1px solid rgba(124,196,232,.7);background:rgba(255,255,255,.9);backdrop-filter:blur(6px);box-shadow:0 0 26px rgba(124,196,232,.5),0 14px 30px -16px rgba(26,111,156,.5);font:700 .66rem/1 var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--blue);animation:hs-f 7s ease-in-out infinite}
.hs-chip::before{content:"";position:absolute;left:12px;top:50%;width:9px;height:9px;margin-top:-4.5px;border-radius:50%;background:var(--blue-lt);box-shadow:0 0 10px rgba(124,196,232,.9)}
.hs-chip::after{content:attr(data-l)}
.hs-chip--g{color:var(--green-deep);border-color:rgba(127,216,191,.8)}.hs-chip--g::before{background:var(--green-lt);box-shadow:0 0 10px rgba(127,216,191,.9)}

/* hoja de presupuesto + sello */
.hs-doc i{position:absolute;left:16px;height:6px;border-radius:3px;background:rgba(26,111,156,.22)}
.hs-doc i:nth-of-type(1){top:42px;right:16px}.hs-doc i:nth-of-type(2){top:60px;right:46px}.hs-doc i:nth-of-type(3){top:78px;right:24px}.hs-doc i:nth-of-type(4){top:96px;right:84px}
.hs-doc u{position:absolute;left:16px;bottom:18px;width:84px;height:7px;border-radius:4px;background:linear-gradient(90deg,var(--green-lt),var(--blue-lt))}
.hs-doc b{position:absolute;right:16px;bottom:14px;width:50px;height:50px;border-radius:50%;border:2px solid var(--green);box-shadow:0 0 24px rgba(127,216,191,.8),inset 0 0 12px rgba(127,216,191,.5);animation:hl-pulso 3.4s ease-in-out infinite}
.hs-doc b::before{content:"";position:absolute;left:15px;top:10px;width:11px;height:20px;border:solid var(--green);border-width:0 3px 3px 0;transform:rotate(40deg)}

/* ventana de chat (FAQ) */
.hs-chat{position:absolute;width:214px;height:150px;border-radius:18px;padding:40px 14px 12px;display:flex;flex-direction:column;gap:9px;border:1px solid rgba(26,111,156,.3);background:linear-gradient(150deg,rgba(255,255,255,.94),rgba(232,243,250,.76));box-shadow:0 24px 52px -22px rgba(26,111,156,.55),0 0 40px rgba(124,196,232,.36),inset 0 0 22px rgba(124,196,232,.2);animation:hs-f 8s ease-in-out infinite}
.hs-chat::before{content:attr(data-l);position:absolute;left:14px;top:13px;font:700 .62rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.hs-chat::after{content:"";position:absolute;right:14px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(15,122,97,.8);animation:hl-parp 1.8s ease-in-out infinite}
.hs-chat .hl-m{height:28px;border-radius:12px;width:74%}.hs-chat .hl-m i{margin:8px 11px 0}.hs-chat .hl-m--t{height:20px;width:30%}.hs-chat .hl-m--t b{margin:7px 0 0 11px}
.hs-chat--1{left:0;top:8px;--r:-3deg;transform:rotate(-3deg)}.hs-chat--2{right:0;top:20px;--r:3deg;transform:rotate(3deg);animation-delay:-3s}
}
@media (prefers-reduced-motion:reduce){.hl-sc b,.hl-sc em,.foot::before,.hl-pin::before,.hl-pin::after,.hs *,.hs-chat{animation:none!important}.hs-pul path{stroke-dashoffset:0!important}.svc-media::before{transition:none}}

/* La clínica: paneles flotando junto a la foto */
.hs-fo{display:none}
@media (min-width:960px){
.hs-fo{display:block;position:absolute;z-index:3;pointer-events:none}
.hs-fo *{animation-play-state:paused}.about-media.hl-on .hs-fo *,.about-media.hl-on .hs-fo{animation-play-state:running}
.hs-fo--a{right:-36px;bottom:96px;width:156px;height:104px;--r:3deg;transform:rotate(3deg)}
.hs-fo--b{left:-40px;top:46px;width:164px;height:104px;--r:-3deg;transform:rotate(-3deg);animation-delay:-3s}
.hs-fo .hs-pul{height:44px;bottom:10px}.hs-fo--b .hl-bars{position:absolute;left:14px;right:14px;top:34px;height:56px;display:flex;align-items:flex-end;gap:7px}
.hs-fo--b .hl-bars i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--green-lt),var(--blue-lt));border:1px solid rgba(26,111,156,.2);border-bottom:0}
.hs-fo--b .hl-bars i:nth-child(1){height:34%}.hs-fo--b .hl-bars i:nth-child(2){height:60%}.hs-fo--b .hl-bars i:nth-child(3){height:46%}.hs-fo--b .hl-bars i:nth-child(4){height:82%}.hs-fo--b .hl-bars i:nth-child(5){height:100%}
}
.hl-map .hl-orbita{position:absolute;left:62%;top:52%;width:110px;height:110px;margin:-55px 0 0 -55px;border-radius:50%;border:1px dashed rgba(26,111,156,.36);animation:hl-gira 18s linear infinite;animation-play-state:paused}
.hl-map .hl-orbita::after{content:"";position:absolute;left:50%;top:-5px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--blue-lt);box-shadow:0 0 0 3px #fff,0 0 14px rgba(26,111,156,.7)}
.hl-map.hl-on .hl-orbita{animation-play-state:running}
.hl-map .hs-chip{right:16px;top:14px;padding:9px 13px 9px 26px;font-size:.6rem}
@media (prefers-reduced-motion:reduce){.hl-map .hl-orbita,.hs-fo,.hs-fo *{animation:none!important}}

/* Escenas de cabecera en pantallas medias (zoom de Windows): se reducen */
@media (min-width:960px) and (max-width:1239px){
.hs{transform:scale(.8);transform-origin:100% 0}.hs--c{transform:scale(.7)}
.hs--faq{transform:none}.hs--faq .hs-chat{width:164px;height:126px;padding-top:36px}
.hl{transform:scale(.88);transform-origin:100% 50%}
}

/* ===== Holografía DENTRO de cada tarjeta (sin nada entre bloques) ===== */
.why-c,.area-c{position:relative}
.proc-c .n{top:auto;bottom:14px}
.hc{position:absolute;right:14px;top:14px;width:122px;height:76px;border-radius:14px;overflow:hidden;pointer-events:none;
  border:1px solid rgba(26,111,156,.3);background:radial-gradient(circle,rgba(26,111,156,.22) 1px,transparent 1.6px) 0 0/12px 12px,linear-gradient(150deg,rgba(255,255,255,.96),rgba(232,243,250,.8));
  box-shadow:0 14px 30px -16px rgba(26,111,156,.55),0 0 26px rgba(124,196,232,.4),inset 0 0 16px rgba(124,196,232,.24);
  animation:hc-f 6s ease-in-out infinite;animation-play-state:paused}
.hc.hl-on,.hc.hl-on *,.hc.hl-on::after{animation-play-state:running!important}
.hc *,.hc::after{animation-play-state:paused}
.hc::after{content:"";position:absolute;top:0;bottom:0;left:0;width:38%;background:linear-gradient(90deg,transparent,rgba(124,196,232,.45),transparent);transform:translateX(-120%);animation:hc-s 4.6s ease-in-out infinite}
.area-c .hc,.why-c .hc{right:16px;top:18px}.area-c .hc{width:132px;height:82px;top:20px;right:18px}
@keyframes hc-f{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes hc-s{0%{transform:translateX(-120%)}60%,100%{transform:translateX(320%)}}
.proc-c:nth-child(2n) .hc,.why-c:nth-child(2n) .hc{border-color:rgba(15,122,97,.32);box-shadow:0 14px 30px -16px rgba(15,122,97,.5),0 0 26px rgba(127,216,191,.42),inset 0 0 16px rgba(127,216,191,.24)}
/* calendario */
.hc-cal i{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--green-lt);border:2px solid var(--green);box-shadow:0 0 16px rgba(15,122,97,.7);animation:hl-pulso 3s ease-in-out infinite}
/* barras */
.hc-bars{position:absolute;left:12px;right:12px;bottom:10px;top:12px;display:flex;align-items:flex-end;gap:6px}
.hc-bars i{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--green-lt),var(--blue-lt));border:1px solid rgba(26,111,156,.2);border-bottom:0}
.hc-bars i:nth-child(1){height:36%}.hc-bars i:nth-child(2){height:62%}.hc-bars i:nth-child(3){height:48%}.hc-bars i:nth-child(4){height:84%}.hc-bars i:nth-child(5){height:100%}
/* hoja con sello */
.hc-doc i{position:absolute;left:12px;height:5px;border-radius:3px;background:rgba(26,111,156,.28)}
.hc-doc i:nth-child(1){top:12px;width:56%}.hc-doc i:nth-child(2){top:23px;width:42%}.hc-doc i:nth-child(3){top:34px;width:50%}
.hc-doc u{position:absolute;left:12px;bottom:9px;width:34px;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--green-lt),var(--blue-lt))}
.hc-doc b{position:absolute;right:10px;bottom:8px;width:24px;height:24px;border-radius:50%;border:2px solid var(--green);box-shadow:0 0 14px rgba(127,216,191,.8);animation:hl-pulso 3.4s ease-in-out infinite}
.hc-doc b::before{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid var(--green);border-width:0 2px 2px 0;transform:rotate(40deg)}
/* anillo / sello / escudo / ecg */
.hc-ring i,.hc-seal i{position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:conic-gradient(var(--green) 0 74%,rgba(26,111,156,.16) 0);-webkit-mask:radial-gradient(circle,transparent 15px,#000 16px);mask:radial-gradient(circle,transparent 15px,#000 16px);animation:hl-gira 12s linear infinite}
.hc-ring b,.hc-seal u{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:radial-gradient(circle,#fff,var(--blue-lt) 75%);box-shadow:0 0 14px rgba(124,196,232,.95)}
.hc-seal b{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;border:1px dashed rgba(26,111,156,.45);animation:hl-gira 18s linear infinite reverse}
.hc-shield i{position:absolute;left:50%;top:50%;width:34px;height:42px;margin:-21px 0 0 -17px;background:linear-gradient(160deg,var(--green-lt),var(--blue-lt));clip-path:polygon(50% 0,100% 16%,100% 56%,50% 100%,0 56%,0 16%);filter:drop-shadow(0 0 8px rgba(15,122,97,.6));animation:hl-pulso 3.6s ease-in-out infinite}
.hc-ecg svg{position:absolute;inset:6px 0;width:100%;height:calc(100% - 12px);overflow:visible}
.hc-ecg path{fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:hl-trazo 4.6s ease-in-out infinite;filter:drop-shadow(0 0 5px rgba(15,122,97,.55))}
/* órbitas / arco / familia */
.hc-orb i,.hc-orb b,.hc-orb u,.hc-fam i,.hc-fam b,.hc-fam u{position:absolute;left:50%;top:50%;border-radius:50%}
.hc-orb i{width:56px;height:56px;margin:-28px 0 0 -28px;border:1px solid rgba(26,111,156,.34);animation:hl-gira 14s linear infinite}
.hc-orb i::after{content:"";position:absolute;left:50%;top:-5px;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:var(--blue-lt);box-shadow:0 0 0 2px #fff,0 0 12px rgba(26,111,156,.7)}
.hc-orb b{width:34px;height:34px;margin:-17px 0 0 -17px;border:1px dashed rgba(15,122,97,.4);animation:hl-gira 20s linear infinite reverse}
.hc-orb u{width:12px;height:12px;margin:-6px 0 0 -6px;background:radial-gradient(circle,#fff,var(--blue-lt) 75%);box-shadow:0 0 16px rgba(124,196,232,.95)}
.hc-arco i{position:absolute;left:50%;bottom:10px;width:84px;height:42px;margin-left:-42px;border:2px dotted rgba(26,111,156,.55);border-bottom:0;border-radius:84px 84px 0 0}
.hc-arco b{position:absolute;left:50%;bottom:6px;width:70px;height:6px;margin-left:-35px;border-radius:3px;background:linear-gradient(90deg,var(--green-lt),var(--blue-lt));box-shadow:0 0 12px rgba(124,196,232,.7);animation:hl-pulso 3.6s ease-in-out infinite}
.hc-fam i{width:44px;height:44px;margin:-22px 0 0 -22px;border:1px solid rgba(26,111,156,.3);animation:hl-gira 16s linear infinite}
.hc-fam i::before,.hc-fam i::after{content:"";position:absolute;width:10px;height:10px;border-radius:50%}
.hc-fam i::before{left:50%;top:-5px;margin-left:-5px;background:var(--blue-lt);box-shadow:0 0 0 2px #fff,0 0 12px rgba(26,111,156,.7)}
.hc-fam i::after{left:50%;bottom:-5px;margin-left:-5px;background:var(--green-lt);box-shadow:0 0 0 2px #fff,0 0 12px rgba(15,122,97,.7)}
.hc-fam b{width:66px;height:66px;margin:-33px 0 0 -33px;border:1px dashed rgba(15,122,97,.4);animation:hl-gira 22s linear infinite reverse}
.hc-fam u{width:12px;height:12px;margin:-6px 0 0 -6px;background:radial-gradient(circle,#fff,var(--green-lt) 75%);box-shadow:0 0 16px rgba(127,216,191,.95)}
@media (prefers-reduced-motion:reduce){.hc,.hc *,.hc::after{animation:none!important}.hc-ecg path{stroke-dashoffset:0!important}}
