/*!
 * LD Elementor · home · hero nativo, LD · Slider y cifras nativas
 * El hero y las cifras son contenedores y widgets NATIVOS de Elementor (clases lh-…): aquí solo va lo que el
 * panel no expresa (pastilla de los chips, punto decorativo, recorte de la imagen, entrada animada).
 */
/* ---------------------------------------------------------------- Hero (nativo) *//* Pastillas: fondo, borde, radio, relleno y borde en hover son controles del widget (Avanzado › Fondo / Borde /
   Relleno). Aquí solo la altura mínima (sin control nativo) y la alineación interna del icono y el texto. */
.elementor .e-con>.elementor-widget.lh-chip{display:flex;align-items:center;min-height:36px}
.elementor .lh-chip .elementor-heading-title{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.elementor .lh-chip .elementor-heading-title a{display:inline-flex;align-items:center;gap:8px;color:inherit}
.elementor .lh-chip b{color:var(--lh-tx);font-weight:600}
.elementor .lh-stars{color:var(--e-global-color-text,#FFD953);letter-spacing:1px}
.elementor .lh-chip .lh-gmark{width:18px;height:18px;border-radius:50%;background:#fff;color:#141A1F;font:700 11px/1 var(--lh-f-ui,inherit);display:inline-flex;align-items:center;justify-content:center;flex:none;margin-right:-2px}
.elementor .lh-hero__loc p{display:flex;gap:8px;align-items:center;margin:0}
.elementor .lh-hero__loc p::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lh-acc);box-shadow:0 0 12px var(--lh-acc);flex:none}
.elementor .lh-h1 em{font-style:normal;color:var(--lh-acc)}
.elementor .lh-hero__sub p{margin:0}
.elementor .lh-hero__sub span{color:var(--lh-tx)}
/* Marco de la imagen: el contenedor (borde, radio, fondo, alto mínimo) es nativo; la imagen lo cubre */
.elementor .lh-hero__fig{isolation:isolate}
.elementor .e-con.lh-hero__fig::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(20,26,31,.72),rgba(20,26,31,0) 42%),radial-gradient(120% 80% at 50% 0,rgba(16,207,201,.10),transparent 60%);pointer-events:none}
.elementor .lh-hero__img{position:absolute!important;inset:0;width:100%!important;max-width:none!important;margin:0!important}
.elementor .lh-hero__img .elementor-widget-container{height:100%}
.elementor .lh-hero__img img{display:block}
/* Ancho y alto 100 % y «cubrir» son controles del widget Imagen; el encuadre 50 % 45 % no está entre las opciones
   del panel: queda como respaldo de especificidad 0 (si se elige una posición en el panel, manda el panel). */
.elementor :where(.lh-hero__img) img{object-position:50% 45%}
.elementor .lh-hero__lb{z-index:2}
.elementor .lh-hero__lb p{display:flex;align-items:center;gap:8px;margin:0}
.elementor .lh-hero__lb p::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lh-acc);box-shadow:0 0 10px var(--lh-acc);flex:none}
.elementor .lh-hero__lb{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
/* Entrada (0.4.10): el texto del hero no se oculta nunca (visible desde el primer pintado, sin JS). Solo la imagen
   principal se acerca de 1,06 a 1 con una animación CSS: no oculta nada, no mueve el layout (transform) y no se
   aplica con «reducir movimiento» ni en el editor. */
@media (prefers-reduced-motion:no-preference){body:not(.elementor-editor-active) .elementor .lh-lcp img{animation:lh-zoom 1.6s var(--lh-ease-out) both}}
@keyframes lh-zoom{from{transform:scale(1.06)}to{transform:none}}
@media (max-width:767px){.elementor .e-con>.elementor-widget.lh-chip{min-height:32px}}
/* ---------------------------------------------------------------- LD · Slider */
.elementor .lh-vid{position:relative;margin-top:calc(-1 * var(--lh-vid-up,72px));height:var(--lh-vid-h,clamp(300px,29.9vw,430px));border-radius:var(--lh-vid-r,24px);overflow:hidden;background:var(--lh-vid-bg,#0B0F12);box-shadow:0 40px 80px rgba(0,0,0,.45);isolation:isolate}
.elementor .lh-vid__slides{position:absolute;inset:0}
.elementor .lh-vid__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1s var(--lh-ease),transform 7s linear}
.elementor .lh-vid__img.is-on{opacity:1;transform:scale(1)}
/* Diapositivas 2…n fuera del render hasta el evento load (el JS añade .is-full); sin JS no cambia nada */
.lh-js .elementor .lh-vid:not(.is-full) .lh-vid__img:not(.is-on){display:none}
.elementor .lh-vid__sh{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(20,26,31,.92),rgba(20,26,31,.05) 62%);pointer-events:none}
.elementor .lh-vid__hit{position:absolute;inset:0;z-index:1;cursor:pointer}
.elementor .lh-vid__tabs{position:absolute;left:32px;top:28px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.elementor .lh-vid__tab{position:relative;overflow:hidden;font:inherit;font-size:13px;line-height:1.2;min-height:34px;padding:0 14px;border-radius:999px;background:rgba(20,26,31,.65);border:1px solid rgba(255,255,255,.14);color:var(--lh-tab-tx,#DADADA);cursor:pointer;transition:background-color .2s,color .2s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.elementor .lh-vid__tab[aria-selected=true]{background:var(--lh-tab-on,#fff);color:var(--lh-tab-on-tx,#141A1F);border-color:var(--lh-tab-on,#fff);font-weight:500}
.elementor .lh-vid__tab[aria-selected=true]::after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;border-radius:2px;background:var(--lh-acc);transform-origin:left;transform:scaleX(0)}
.elementor .lh-vid.is-auto .lh-vid__tab[aria-selected=true]::after{animation:lh-run var(--slide,6s) linear forwards}
.elementor .lh-vid.is-paused .lh-vid__tab[aria-selected=true]::after{animation-play-state:paused}
@keyframes lh-run{to{transform:scaleX(1)}}
@media (hover:hover){.elementor .lh-vid__tab:not([aria-selected=true]):hover{color:#fff;border-color:rgba(255,255,255,.4);background:rgba(20,26,31,.65)}}
.elementor .lh-vid__tx{position:absolute;left:32px;right:32px;bottom:30px;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;pointer-events:none}
.elementor .lh-vid__caps{display:grid}
.elementor .lh-vid__cap{grid-area:1/1;opacity:0;transform:translate3d(0,12px,0);transition:opacity .6s var(--lh-ease),transform .7s var(--lh-ease-out)}
.elementor .lh-vid__cap.is-on{opacity:1;transform:none;transition-delay:.15s}
.elementor .lh-vid__t{margin:0;font-size:clamp(26px,3.2vw,46px);font-weight:500;letter-spacing:-.035em;line-height:1.02;color:var(--lh-tx)}
.elementor .lh-vid__s{margin:10px 0 0;color:var(--lh-acc);font-weight:500}
.elementor .lh-vid__pl{pointer-events:auto;position:relative;width:var(--lh-play-s,96px);height:var(--lh-play-s,96px);border-radius:999px;background:var(--lh-play,#fff);color:var(--lh-play-tx,#141A1F);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:700 12px/1 var(--lh-f-ui);flex:none;text-decoration:none;transition:transform .45s var(--lh-ease-out)}
.elementor .lh-vid__pl:visited{color:var(--lh-play-tx,#141A1F)}
.elementor .lh-vid__pl .lh-ico{width:24px;height:24px}
.elementor .lh-vid__pl::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);animation:lh-ring 2.6s var(--lh-ease) infinite}
@keyframes lh-ring{0%{transform:scale(.86);opacity:.9}100%{transform:scale(1.28);opacity:0}}
@media (hover:hover){.elementor .lh-vid__pl:hover{transform:scale(1.06)}
.elementor .lh-vid__hit:hover~.lh-vid__tx .lh-vid__pl{transform:scale(1.06)}}
/* Entrada del bloque al aparecer en pantalla */
.lh-js .elementor .lh-vid.lh-rv{transform:translate3d(0,72px,0) scale(.965)}
.lh-js .elementor .lh-vid.lh-rv.is-in{transform:none;transition:transform 1.3s var(--lh-ease-out) .2s,opacity .9s var(--lh-ease) .2s}
@media (max-width:1023px){.elementor .lh-vid{margin-top:calc(-1 * var(--lh-vid-up,56px))}}
/* Pestañas numeradas (≤1024): el título completo sigue siendo el nombre accesible de cada pestaña */
.elementor .lh-vid__tn{display:none}
@media (max-width:1024px){.elementor .lh-vid__tabs{flex-wrap:nowrap}
.elementor .lh-vid__tab{flex:none;width:36px;min-width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}
.elementor .lh-vid__tt{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.elementor .lh-vid__tn{display:inline}
.elementor .lh-vid__tab[aria-selected=true]::after{left:10px;right:10px;bottom:4px}}
@media (max-width:767px){.elementor .lh-vid{margin-top:calc(-1 * var(--lh-vid-up,48px));height:var(--lh-vid-h,clamp(300px,92vw,380px));border-radius:var(--lh-vid-r,18px)}
.elementor .lh-vid__tabs{left:14px;top:14px}
.elementor .lh-vid__tx{left:16px;right:16px;bottom:16px;gap:12px}
.elementor .lh-vid__t{font-size:24px}
.elementor .lh-vid__s{font-size:13.5px}
.elementor .lh-vid__pl{width:var(--lh-play-s,72px);height:var(--lh-play-s,72px);font-size:11px}}
/* ---------------------------------------------------------------- Cifras (nativas) */
.elementor .lh-fc .elementor-heading-title,.elementor .lh-fc p{margin:0}
.elementor .lh-claim__tg p{display:flex;align-items:center;gap:10px;margin:0}
.elementor .lh-claim__tg p::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lh-acc);flex:none}
.elementor .lh-claim__tg b{color:var(--lh-acc);font-weight:600}
.elementor .lh-claim__p p{margin:0}
@media (prefers-reduced-motion:reduce){.elementor .lh-vid__pl::before{animation:none}
.elementor .lh-vid__img{transition:opacity .2s}
.lh-js .elementor .lh-vid.lh-rv{transform:none}}
