.elementor-kit-852{--e-global-color-primary:#CD0D2C;--e-global-color-secondary:#47071A;--e-global-color-text:#000000;--e-global-color-accent:#FF9721;--e-global-color-2b66546:#EDF0F8;--e-global-color-2026eed:#FFFFFF;--e-global-color-09764a4:#FFFFFFB8;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-size:20px;--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-size:20px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-size:20px;--e-global-typography-accent-font-weight:700;background-color:var( --e-global-color-2026eed );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-852 e-page-transition{background-color:#FFBC7D;}.elementor-kit-852 h1{font-family:"Outfit", Sans-serif;font-size:60px;font-weight:800;}.elementor-kit-852 h2{font-family:"Outfit", Sans-serif;font-size:40px;font-weight:800;}.elementor-kit-852 h3{font-family:"Outfit", Sans-serif;font-size:30px;font-weight:800;}.elementor-kit-852 h4{font-family:"Orbitron", Sans-serif;font-size:25px;font-weight:900;}.elementor-kit-852 h5{font-family:"Orbitron", Sans-serif;font-size:20px;font-weight:900;}.elementor-kit-852 button,.elementor-kit-852 input[type="button"],.elementor-kit-852 input[type="submit"],.elementor-kit-852 .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );border-radius:15px 15px 15px 15px;padding:12px 12px 12px 12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-kit-852{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-852 button,.elementor-kit-852 input[type="button"],.elementor-kit-852 input[type="submit"],.elementor-kit-852 .elementor-button{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:1024px){.elementor-kit-852{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-852 button,.elementor-kit-852 input[type="button"],.elementor-kit-852 input[type="submit"],.elementor-kit-852 .elementor-button{font-size:var( --e-global-typography-primary-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-852{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-852 button,.elementor-kit-852 input[type="button"],.elementor-kit-852 input[type="submit"],.elementor-kit-852 .elementor-button{font-size:var( --e-global-typography-primary-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}@media(min-width:2400px){.elementor-kit-852{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-852 button,.elementor-kit-852 input[type="button"],.elementor-kit-852 input[type="submit"],.elementor-kit-852 .elementor-button{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS */@media (max-width: 767px) {
    h2 {
        font-size: 35px !important;
    }
}

@media (max-width: 767px) {
    h5 {
        font-size: 18px !important;
    }
}

.tarjeta-blur {
    position: relative;
    z-index: 0;
    overflow: hidden; /* mantiene el efecto dentro del contenedor */
}

.tarjeta-blur::before {
    content: "";
    position: absolute;
    inset: 0;
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    transition: backdrop-filter 0.3s ease, -webkit-backdrop-filter 0.3s ease;
    z-index: -1;
}

.tarjeta-blur:hover::before {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}



.seccion-servicios {
    position: relative;
    z-index: 0;
    overflow: hidden; /* mantiene el efecto dentro del contenedor */
}

.seccion-servicios::before {
    content: "";
    position: absolute;
    inset: 0;
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    background: rgba(255, 255, 255, 0); /* sin color inicial */
    transition: backdrop-filter 0.3s ease, -webkit-backdrop-filter 0.3s ease, background 0.3s ease;
    z-index: -1;
}

.seccion-servicios:hover::before {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.75); /* blanco intenso y translúcido */
}

/* Asegura que el contenido quede siempre por encima */
.seccion-servicios > * {
    position: relative;
    z-index: 1;
    transition: color 0.3s ease;
}

/* Fuerza todos los textos e iconos a negro en hover */
.seccion-servicios:hover,
.seccion-servicios:hover * {
    color: #000 !important;
    fill: #000 !important; /* aplica también a iconos SVG */
}


/* =========================================
   BLOQUE “PASO” (texto izquierda + número/svg derecha)
   Objetivo:
   - Desktop/tablet: texto a la izquierda y número (SVG) a la derecha en la misma línea.
   - Móvil: el número (SVG) pasa arriba, antes del texto, para que no se corte.
   ========================================= */

/* 1) Aplica esta clase al contenedor de cada línea (el <div> que envuelve <p> + <img>) */
.puersur-step {
  display: flex;                 /* pone texto e icono en la misma fila */
  align-items: center;           /* centra verticalmente */
  justify-content: ;/* empuja el svg a la derecha */
  gap: 12px;                     /* separación entre texto y svg */
}

/* 2) El texto ocupa el espacio disponible y puede partir sin empujar el SVG fuera */
.puersur-step p {
  margin: 0;
  flex: 1;                       /* el texto “manda” en ancho */
  min-width: 0;                  /* permite que el texto haga wrap en flex */
}

/* 3) El SVG mantiene su tamaño y no se deforma */

.puersur-step img{
    align-self:flex-start;     /* asegura el SVG a la izquierda */
    margin-left:0;
  }

/* =========================================
   MÓVIL: número (svg) arriba y antes del texto
   - Evita cortes: imagen -> salto -> texto
   ========================================= */
@media (max-width: 767px) {
  .puersur-step {
    flex-direction: column;      /* apila en vertical */
    align-items: flex-start;     /* alinea todo a la izquierda */
  }

  .puersur-step img {
    order: -1;                   /* el número/SVG pasa antes del texto */
    margin-bottom: 8px;          /* espacio entre svg y texto */
  }

  .puersur-step p {
    order: 1;
    width: 100%;
  }
}



/* Solo PC (>=1025px) */
.br-pc{ display:none; }
@media (min-width:1025px){
  .br-pc{ display:block; }
}


/* Bullets */

.swiper-pagination-bullet {
  width: 60px !important;
  height: 16px !important;
  border-radius: 8px !important;
  background: transparent !important;
  border: 2px solid #FFA726 !important;
  margin: 0 8px !important;
  transition: background 0.3s, border 0.3s !important;
  box-sizing: border-box !important;
  opacity: 1 !important;
}

.swiper-pagination-bullet-active {
  background: #FFA726 !important;
  border: 2px solid #FFA726 !important;
}


/* Tamaño reducido de bullets en móviles */
@media (max-width: 767px) {
  .swiper-pagination-bullet {
    width: 40px !important;  /* Mitad del tamaño original */
    height: 12px !important;
    border-radius: 5px !important;
    margin: 0 5px !important;
  }
}


/* Navegacion blog y trabajos*/

/* Botones Anterior / Siguiente (incluye hover y visited) */
.pagination a,
.nav-links a,
.post-navigation a,
.page-numbers.prev,
.page-numbers.next,
.page-numbers {
  display: inline-block;
  background: #FF9721;
  border: 2px solid #FF9721;
  border-radius: 15px;
  padding: 10px 16px;
  text-decoration: none;

  color: #000 !important;           /* <- texto negro SIEMPRE */
  font-weight: 400;
  line-height: 1;

  transition: transform .15s ease, box-shadow .15s ease;
}

/* Mantener negro también en enlaces visitados */
.pagination a:visited,
.nav-links a:visited,
.post-navigation a:visited,
.page-numbers:visited {
  color: #000 !important;
}

/* Hover: crece levemente, texto negro */
.pagination a:hover,
.nav-links a:hover,
.post-navigation a:hover,
.page-numbers:hover {
  transform: scale(1.06);
  box-shadow: 0 6px 16px rgba(0,0,0,.15);
  color: #000 !important;
}/* End custom CSS */