.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-e745f04:#0A1A2B;--e-global-color-7955fe5:#FAB300;--e-global-color-6a97f38:#D8EAFF;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-6304136-font-family:"Kumbh Sans";--e-global-typography-6304136-font-size:48px;--e-global-typography-6304136-font-weight:400;background-color:#06101C;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;gap:36px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root{
  --azul:#2e86ff; --rojo:#ff3b28; --ambar:#ffc23b;
  --ink:#06101c; --ink-2:#0a1726; --panel:#0f2336;
  --line:rgba(255,255,255,.08);
  --txt:#eaf1fb; --txt-dim:#9fb3cc;
}
/* capa de pintura, detrás de todo */
#paint{ position:fixed; inset:0; width:100%; height:100%; z-index:1; pointer-events:none; }
/* el contenido de Elementor SIEMPRE por encima de la pintura */
.e-con.e-parent{ position:relative; z-index:2; }

.glass{
  background: linear-gradient(150deg, rgba(12,26,42,.55), rgba(8,18,30,.34)) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 22px;
  backdrop-filter: blur(20px) saturate(135%);
  -webkit-backdrop-filter: blur(20px) saturate(135%);
  box-shadow: 0 40px 90px rgba(0,0,0,.45),
              inset 0 1px 0 rgba(255,255,255,.18);
}

.grad{
  background: linear-gradient(100deg, #2e86ff, #ff3b28 55%, #ffc23b);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.btn-grad .elementor-button{
  background-image: linear-gradient(100deg, #2e86ff, #ff3b28 60%, #ffc23b);
  box-shadow: 0 14px 40px rgba(255,59,40,.28);
  transition: transform .3s ease, box-shadow .3s ease;
}
.btn-grad .elementor-button:hover{
  transform: translateY(-3px);
  box-shadow: 0 22px 54px rgba(255,59,40,.4);
}

.separador .elementor-divider-separator{
  border: 0 !important;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(90deg,#2e86ff,#ff3b28,#ffc23b);
}

/* ===== Tarjeta de servicio ===== */
.idp-svc{
  position:relative;
  overflow:hidden;
  transition:transform .5s cubic-bezier(.2,.8,.2,1), box-shadow .5s;
}
.idp-svc:hover{
  transform:translateY(-8px);
  box-shadow:0 36px 70px rgba(0,0,0,.55);
}

/* Imagen a sangre como fondo + zoom al hover */
.idp-svc .elementor-widget-image{
  position:absolute; inset:0; margin:0; z-index:0;
}
.idp-svc .elementor-widget-image img{
  width:100%; height:100%;
  object-fit:cover;
  opacity:.55;
  transition:transform .8s ease, opacity .5s ease;
}
.idp-svc:hover .elementor-widget-image img{
  transform:scale(1.07);
  opacity:.7;
}

/* Degradado oscuro inferior para que se lea el texto */
.idp-svc::after{
  content:"";
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, transparent 30%, rgba(6,16,28,.92));
  pointer-events:none;
}

/* Tira arcoíris que se despliega arriba */
.idp-svc::before{
  content:"";
  position:absolute; top:0; left:0;
  height:3px; width:0; z-index:5;
  background:linear-gradient(90deg,#2e86ff,#ff3b28,#ffc23b);
  transition:width .5s ease;
}
.idp-svc:hover::before{ width:100%; }

/* Texto (título, número, descripción) por encima del fondo */
.idp-svc > .elementor-widget:not(.elementor-widget-image):not(.elementor-absolute){
  position:relative; z-index:2;
}
.idp-svc > .elementor-absolute{ z-index:5; }   /* el número /01 */

/* Descripción oculta que aparece y empuja el título hacia arriba */
.idp-svc-desc{
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  transition:
    grid-template-rows .5s cubic-bezier(.2,.8,.2,1),
    opacity .4s ease;
}
.idp-svc-desc > *{
  overflow:hidden;
  min-height:0;
}
.idp-svc:hover .idp-svc-desc{
  grid-template-rows:1fr;
  opacity:1;
}

/* Título: se eleva suave al hacer hover */
.idp-svc-title{
  transition: transform .5s cubic-bezier(.2,.8,.2,1);
}

.idp-chips .elementor-icon-list-items{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.idp-chips .elementor-icon-list-item{
  margin:0 !important;
  padding:7px 13px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.03);
}
.idp-chips .elementor-icon-list-text{
  font-family:'Space Mono', monospace;
  font-size:12px;
  letter-spacing:.03em;
  color:#f4efe6;
}
/* por si dejaste iconos, que no descuadren */
.idp-chips .elementor-icon-list-icon{ display:none; }

.idp-wa{
  position:fixed; right:40px; bottom:40px;
  z-index:99999; width:60px; line-height:0; display:block;
  transition:transform .3s;
}
.idp-wa:hover{ transform:scale(1.08); }
.idp-wa img{ width:100%; height:auto; display:block; }/* End custom CSS */