@import url('https://fonts.googleapis.com/css2?family=Exo+2:ital,wght@0,100..900;1,100..900&family=Lora:ital,wght@0,400..700;1,400..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

  @import url("https://use.typekit.net/cmj6jec.css");

@font-face {
    font-family: 'TTAutonomous-DemiBoldItalic';
    src: url('../fonts/TTAutonomous-DemiBoldItalic.ttf') format('truetype');
    font-display: swap;
}

@font-face {
    font-family: 'TTAutonomous-Regular';
    src: url('../fonts/TTAutonomous-Regular.ttf') format('truetype');
    font-display: swap;
}

@font-face {
    font-family: 'TTAutonomous';
    src: url('../fonts/TTAutonomous-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTAutonomousBold';
    src: url('../fonts/TTAutonomous-DemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Cocogoose-Pro-Light-trial.ttf') format('truetype');
    unicode-range: U+0041-005A, U+0061-007A, U+00C0-00FF; /* Letras A-Z, a-z, caracteres latinos adicionales */
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Absender';
    src: url('../fonts/absender.ttf') format('truetype');
    unicode-range: U+0041-005A, U+0061-007A, U+00C0-00FF; /* Letras A-Z, a-z, caracteres latinos adicionales */
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Regular.ttf') format('truetype');
    unicode-range: U+0041-005A, U+0061-007A, U+00C0-00FF; /* Letras A-Z, a-z, caracteres latinos adicionales */
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'F25Bank';
    src: url('../fonts/F25_Bank_Printer.ttf') format('truetype');
    unicode-range: U+0041-005A, U+0061-007A, U+00C0-00FF; /* Letras A-Z, a-z, caracteres latinos adicionales */
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* Usar Exo 2 para números y Gilroy para letras */
body {
    font-family:'Gilroy', sans-serif;
}

body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

ul#menu-menu-princiapl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
}

ul#menu-menu-princiapl li {
    list-style: none;
}

ul#menu-menu-princiapl li a {
    text-decoration: none;
    color: black;
}
ul#menu-menu-princiapl .current-menu-item a {
    text-decoration: none;
    color: white;
}

img.img-fluid.img-banner {
    height: 567px;
    width: 100%;
}

.banner-home {
    position: relative;
    width: 100%;
    /* margin-top: -120px; */
}

.banner-background {
    position: relative;
    width: 100%;
    height: 559px;
}

.background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 567px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

nav.navbar.navbar-expand-lg.navbar-light {
    z-index: 9999;
    
}

.contenedor-contenido {
    /* padding-top: 180px; */
}

.ultimo-titulo {
    color: #0A1A2F;
    font-size: 20px;
    font-weight: 700;
    font-family: 'F25Bank';
}

.contenido-card {
    background-color: #4B0082;
    color: #fff;
    border-radius: 20px;
    padding: 15px;
}

p.titulo-card {
    font-weight: bold;
}

section.somos {
    padding: 30px;
    background: #F5F5F5;
    /* padding-top: 280px; */
    /*padding-bottom: 100px;*/

}

.servicios {
    padding: 60px 0;
}

.servicios-titulo {
    
    font-family: 'F25Bank';
    font-weight: 400;
    /*font-style: italic;*/
    font-size: 32px;
    text-align: center;
    color: #A020F0;
    margin-bottom: 20px;
}

.servicios-subtitulo {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    text-align: center;
    color: #666666;
    margin-bottom: 40px;
}

.servicio-item {
    border-radius: 15px;
    overflow: hidden;
    height: 400px;
    position: relative;
}

.servicio-imagen {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    position: relative;
    transition: transform 0.3s ease;
    border-radius: 20px;
}

.servicio-contenido {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
    color: white;
    transform: translateY(0);
    transition: transform 0.3s ease;
}

.servicio-titulo {
    font-size: 18px;
    margin-bottom: 10px;
    font-family: 'F25Bank';
    font-weight: bold;
}

.servicio-descripcion {
    font-size: 15px;
    margin-bottom: 15px;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease;
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
}

img.card-img-top {
    height: 263px;
    object-fit: cover;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.servicio-link {
    display: inline-block;
    padding: 8px 20px;
    background-color: transparent;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease;
    border: 1px solid white;
}

/* Efectos hover */
.servicio-item:hover .servicio-imagen {
    transform: scale(1.05);
}

.servicio-item:hover .servicio-contenido {
    background: #420082cc;
    transform: translate;
    height: 100%;
    

}

.servicio-item:hover .servicio-descripcion,
.servicio-item:hover .servicio-link {
    opacity: 1;
    transform: translateY(0);
}

.servicio-link:hover {
    background-color: #FF66CC;
    color: white;
    border: none;
}

.bg-negro {
    background-color: #000;
}

.texto-regular {
    font-family: "Gilroy", sans-serif;
    font-weight: normal;
}

.texto-somos {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    /*font-style: italic;*/
    font-size: 25px;
    line-height: 36px;
}

a.btn-quienes-somos {
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    padding: 10px 20px;
    border-radius: 999px;
    text-decoration: none;
    font-family: "Gilroy", sans-serif;
    color: #fff;
}

.card-destacado-imagen {
    margin-top: 20px;
    position: relative;
    width: 100%;
    height: 342px;
    background-size: cover;
    background-position: center;
    border-radius: 8px;
    overflow: hidden;
}

.card-destacado-contenido {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
    color: white;
}

.fecha {
    font-size: 14px;
    margin-bottom: 10px;
}

.texto-principal {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 15px;
}

.texto-secundario {
    font-size: 16px;
    margin-bottom: 10px;
    color: white;
    /* font-weight: bold; */
    font-family: "Gilroy", sans-serif;
}


.fecha-destacada {
    font-size: 19px;
    opacity: 0.8;
    /* font-weight: bold; */
    font-family: "Gilroy", sans-serif;
}

.card {
    background: transparent;
    height: 520px;
    border-style: none;
}

.card-body {
    background: #fff;
    height: 180px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
}

a.ver-estudio {
    display: flex;
    justify-content: end;
    color: #0A1A2F;
}

section.somos .container {
    max-width: 1200px;
    width: 100%;
}

h5.card-title {
    font-size: 14px;
    color: #A020F0;
    /* font-weight: bold; */
    font-family: "Gilroy", sans-serif;
}

p.card-text {
    color: #0A1A2F;
    font-size: 19px;
    font-weight: bold;
    font-family: "Gilroy", sans-serif;
}

.fecha-card {
    font-size: 14px;
    color: white;
    /* font-weight: bold; */
    font-family: "Gilroy", sans-serif;
}

p.titulo-card {
    font-weight: bold;
    font-family: 'Gilroy';
    font-size: 16px;
}

footer {
    height: 280px;
    display: flex;
    align-items: center;
}

.footer-contacto {
    display: flex;
    align-items: center;
    color: #fff;
}

section.newsletter {
    background: #F5F5F5;
    padding-bottom: 30px;
}

.contenedor-newsletter {
    position: absolute;
    width: 100%;
    margin: 0 auto;
    max-width: 98%;
    height: 182px;
    right: 0;
    z-index: 9999;
    background: #fff;
    display: flex;
    align-items: center;
    margin-top: -70px;
    border-bottom-left-radius: 20px;
    border-top-left-radius: 20px;
}

.siguenos {
    background: #F5F5F5;
    padding-bottom: 190px !important;
}

.servicio-contenido {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
}

p.servicio-descripcion {
    display: none;
}

.servicio-item:hover p.servicio-descripcion {
    display: block;
}

section.banner-como-lohacemos {
    padding: 100px 0px;
}

h2.servicios-titulo.aos-init.aos-animate {
    padding-top: 40px;
}

section.marcas {
    padding-bottom: 50px;
}

.contenedor-texto-como {
    background: #3C52DE;
    height: 100% !important;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 50px;
}

.descripcion-como {
    color: #FFFFFF;
    font-size: 18px;
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
}

.titulo-como {
    color: white;
    font-size: 32px;
    font-family: 'F25Bank';
    font-weight: 400;
    margin-bottom: 25px;
}

.btn-como {
    background: #FF66CC;
    padding: 10px 20px;
    border-radius: 999px;
    text-decoration: none;
    color: #fff;
    margin-top: 40px;
}

.contenedor-texto-como {
    background: #4B0082;
    height: 100%;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 50px;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
}

.contenedor-texto-como {
    margin-left: 80px;
}


.contenedor-imagenes-comentarios {
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 400px;
}

.imagen-fondo {
    width: 100%;
    height: 100%;
}

.imagen-fondo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.comentario {
    position: absolute;
    z-index: 2;
    /* max-width: 300px; */
}

.comentario img {
    width: 450px;
    height: auto;
    border-radius: 10px;

}

.comentario-uno {
    top: -7%;
    right: 50px;
}
.texto_imagen_2 {
    text-align: justify;
    padding: 40px;
    margin-right: 60px;
}

.texto_imagen_1 {
    text-align: justify;
    padding: 40px;
    margin-left: 60px;
}

.comentario-dos {
    bottom: 20%;
    left: -70px;
}
.footer-contacto div a {
    color: black;
    text-decoration: none;
    font-family: "Gilroy", sans-serif;
}
.texto-newsletter {
    color: #3C52DE;
    font-size: 20px;
    font-weight: bold;
    font-family: "Gilroy", sans-serif;
}



.imagen-contenedor > div {
    width: 450px;
    height: 140px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
}
.imagen-interna{
    position: absolute;
    top: 75%;
    right: 70px;
    z-index: 9;
}
.mobil{
    display: none;
}
.desktop{
    display: block;
}

.btn-panel {
    background: #56D8C4;
    border-radius: 8px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    font-weight: bold;
    border-radius: 999px;
    padding: 0.1rem 20px;
}
.navbar .container {
    padding: 0;
}
.navbar .container .row {
    padding: 0;
}
.navbar .container .row .col-md-9{
    padding: 0;
}

ul#menu-menu-princiapl li a{
    padding: 10px 20px;
}
ul#menu-menu-princiapl li a:hover:not(.btn-panel) {
    color:#3AB79D;
    scale: 1.02;
    transition: all 0.3s ease;
}


img.icon-flecha.img-fluid {
    margin: 0 auto;
    width: 30px;
}
img.icon-flecha-azul.img-fluid {
    position: absolute;
    right: 25px;
    bottom: 7%;
}
.footer-contacto {
    justify-content: end;
}
section.marcas {
    padding-bottom: 50px;
    background: #F5F5F5;
}
section.banner-como-lohacemos {
    background: #F5F5F5;
    padding-top: 300px;
    margin-top: -200px;
}
.spacer.gfield {
    display: none;
}
h2.gform_title {
    display: none;
}
div#field_1_1 {
    width: 450px;
}
input#gform_submit_button_1 {
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    color: #fff;
    border-style: none;
}
input#gform_submit_button_1 {
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    color: #fff;
    border-style: none;
    height: 42px;
    width: 300px;
    border-radius: 8px;
}
input#input_1_1 {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 2px solid #ccc;
}


a.contacto-link.panel {
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    padding: 10px 20px;
    border-radius: 8px;
    font-family: "Gilroy", sans-serif;
    color: white;
    width: fit-content;
    border-radius: 999px;
}
.contacto-item a {
    margin: 0px 10px;
}
a.red-social-link i {
    font-size: 24px;
    color: #56D8C4;
    margin-left: 10px;
}
.titulo-pagina {
    color: #56D8C4;
    font-size: 53px;
    font-family: 'F25Bank';
    font-weight: 500;
    /*font-style: italic;*/
    line-height: 60px;
}

.texto-interno {
    color: #212121;
    font-size: 18px;
    font-family: "Gilroy", sans-serif;
}

.titulo-interno {
    font-size: 21px;
    font-family: 'F25Bank';
    font-weight: 400;
    /*font-style: italic;*/
}
.current-menu-item{
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    color: #fff;
    padding: 0.1rem 20px;
    font-family: "Gilroy", sans-serif;
    font-weight: bold;
    border-radius: 999px;
}

.whatsapp-float {
    position: fixed;
    bottom: 3%;
    right: 5%;
    background-color: #25D366;
    color: #FFF;
    width: 60px;
    height: 60px;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 3px #999;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    text-decoration: none;
}

.whatsapp-float:hover {
    background-color: #128C7E;
    color: #FFF;
    transform: scale(1.1);
}

.whatsapp-float i {
    margin-top: 2px;
}

/* Estilos para la página de estudios */
.banner-interna {
    padding: 120px 0 60px;
    background: #F5F5F5;
}

.listado-estudios {
    padding: 60px 0;
    background: #fff;
}

.card-estudio {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    height: 100%;
    transition: transform 0.3s ease;
}
.card-estudio a{
    text-decoration: none;
}

.card-estudio:hover {
    transform: translateY(-5px);
}

.imagen-estudio {
    height: 250px;
    overflow: hidden;
}

.imagen-estudio img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contenido-estudio {
    padding: 20px;
}

.fecha-estudio {
    color: #56D8C4;
    font-size: 14px;
    font-weight: bold;
    font-family: "Gilroy", sans-serif;
    margin-bottom: 10px;
}

.titulo-estudio {
    color: #212121;
    font-size: 19px;
    font-weight: bold;
    font-family: 'F25Bank';
    margin-bottom: 15px;
}

.extracto-estudio {
    color: #666666;
    font-size: 16px;
    font-family: "Gilroy", sans-serif;
    margin-bottom: 20px;
}

.btn-ver-mas {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    color: #212121;
    font-family: "Gilroy", sans-serif;
    font-weight: bold;
    padding: 10px 0;
}

.paginacion {
    text-align: center;
    margin-top: 40px;
}

.paginacion .page-numbers {
    display: inline-block;
    padding: 8px 16px;
    margin: 0 4px;
    border-radius: 8px;
    color: #212121;
    text-decoration: none;
    font-family: "Gilroy", sans-serif;
}

.paginacion .current {
    background: #3C52DE;
    color: #fff;
}

.paginacion .prev,
.paginacion .next {
    background: #56D8C4;
    color: #fff;
}section.banner-interna {
    padding-top: 80px;
}

/* Estilos para la página de contacto */
.contacto-page {
    padding: 60px 0;
}

.contacto-page .page-title {
    margin-bottom: 40px;
    text-align: center;
}

.info-contacto {
    background: #f8f9fa;
    padding: 30px;
    border-radius: 8px;
}


.contacto-item h3 {
    font-size: 18px;
    margin-bottom: 10px;
    color: #333;
}

.contacto-item p {
    color: #666;
    line-height: 1.6;
}

.formulario-contacto {
    padding: 20px;
}
.contacto-page {
    margin-bottom: 100px;
}
.featured-image.mb-4 img {
    width: 100% !important;
}
.post-content {
    text-align: justify;
}

.url-titulo{
    text-decoration: none;
    color: #fff;
}
@media (max-width: 768px) {
    .info-contacto {
        margin-bottom: 30px;
    }
    .titulo-pagina {
        margin-top: 0px !important;
        text-align: center;
        font-size: 45px;
    }
}

input#gform_submit_button_2 {
    background: #56D8C4;
    color: #fff;
    border-style: none;
    width: fit-content;
    padding: 5px 20px;
    margin: 0 auto;
    border-radius: 999px;
}

div#gform_fields_2 {
    font-family: "Gilroy", sans-serif;
}

/* Contenedor */
#banner-home-slider { position: relative; overflow: hidden; }
#banner-home-slider .banner-slide { position: relative; width: 100%; min-height: 420px; }
@media (min-width: 768px){ #banner-home-slider .banner-slide { min-height: 520px; } }
@media (min-width: 992px){ #banner-home-slider .banner-slide { min-height: 620px; } }

/* Imagen */
#banner-home-slider .banner-media,
#banner-home-slider .banner-img { display: block; width: 100%; height: 100%; }
#banner-home-slider .banner-media { position: absolute; inset: 0; }
#banner-home-slider .banner-img { object-fit: cover; }

/* Overlay sutil para legibilidad de texto */
#banner-home-slider .banner-slide-overlay{
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,.35));
  pointer-events: none;
}

/* Caption */
#banner-home-slider .banner-slide-caption{
  position: absolute; inset: 0; display: flex; padding: 20px;
}
#banner-home-slider .banner-slide-caption.align-left{
    justify-content: flex-start;
    text-align: left;
}
#banner-home-slider .banner-slide-caption.align-center{
    justify-content: center;
    text-align: center;
}
#banner-home-slider .banner-slide-caption.align-right{
    justify-content: flex-end;
    text-align: right;
}

#banner-home-slider .banner-slide-caption.valign-top{
    align-items: flex-start;
}
#banner-home-slider .banner-slide-caption.valign-middle{
    align-items: center;
}
#banner-home-slider .banner-slide-caption.valign-bottom{
    align-items: flex-end;
}

#banner-home-slider .banner-caption-inner{ 
    max-width: 980px; 
    padding: 10px;
}
#banner-home-slider .theme-dark { 
    color: #fff;
}

#banner-home-slider .banner-title{
  /* font-size: clamp(24px, 3.2vw, 44px); */
  line-height: 1.15; margin: 0 0 10px;
  font-family: 'F25Bank';
}
#banner-home-slider .banner-text{
  font-size: clamp(14px, 1.4vw, 26px);
  margin-bottom: 16px;
}

/* Controles Owl */
#banner-home-slider .owl-nav{
  position:absolute; top:50%; left:0; right:0;
  display:flex; justify-content:space-between; transform:translateY(-50%);
  padding:0 5%; pointer-events:none;
}
#banner-home-slider .owl-nav button{
  pointer-events:auto;
  /* background: rgba(0,0,0,0.4); */
  border: 0; color: #fff; font-size: 24px;
  padding: 6px 12px; border-radius: 50%;
}
#banner-home-slider .owl-nav button:hover{ scale: 1.2; }
#banner-home-slider .owl-dots{ position:absolute; bottom:15px; left:0; right:0; }

/* Título como WYSIWYG: controla márgenes y tipografía */
#banner-home-slider .banner-title-rich p {
    margin: 0 0 8px;
    /* font-size: clamp(24px, 5.2vw, 60px); */
    line-height: 1.15;
    font-weight: 700; /* opcional */
  }
  #banner-home-slider .banner-title a {
    color: #fff;
    text-decoration: none;
  }
  #banner-home-slider .banner-title a p:hover {
    scale: 1.02;
    transition: all 0.3s ease;
  }
  #banner-home-slider .banner-title-rich p:last-child { margin-bottom: 0; }
  
  /* Si usas <br> en vez de <p>, no necesitas cambios extra */
  
  #banner-home-slider .btn-primary{
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    color: #fff;
    border-style: none;
    width: 30%;
    padding: 15px 0px;
    margin: 0 auto;
    border-radius: 0px;
  }


/* Contenedor */
#banner-interno-slider { position: relative; overflow: hidden; pointer-events: none;}
#banner-interno-slider .banner-slide { position: relative; width: 100%; min-height: 420px; }
@media (min-width: 768px){ #banner-interno-slider .banner-slide { min-height: 520px; } }
@media (min-width: 992px){ #banner-interno-slider .banner-slide { min-height: 620px; } }

/* Imagen */
#banner-interno-slider .banner-media,
#banner-interno-slider .banner-img { display: block; width: 100%; height: 100%; }
#banner-interno-slider .banner-media { position: absolute; inset: 0; }
#banner-interno-slider .banner-img { object-fit: cover; }

/* Overlay sutil para legibilidad de texto */
#banner-interno-slider .banner-slide-overlay{
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, #dddddd, rgba(0,0,0,.35));
  pointer-events: none;
}

/* Caption */
#banner-interno-slider .banner-slide-caption{
  position: absolute; inset: 0; display: flex; padding: 20px;
}
#banner-interno-slider .banner-slide-caption.align-left{
    justify-content: flex-start;
    text-align: left;
}
#banner-interno-slider .banner-slide-caption.align-center{
    justify-content: center;
    text-align: center;
}
#banner-interno-slider .banner-slide-caption.align-right{
    justify-content: flex-end;
    text-align: right;
}

#banner-interno-slider .banner-slide-caption.valign-top{
    align-items: flex-start;
}
#banner-interno-slider .banner-slide-caption.valign-middle{
    align-items: center;
}
#banner-interno-slider .banner-slide-caption.valign-bottom{
    align-items: flex-end;
}

#banner-interno-slider .banner-caption-inner{ 
    max-width: 980px; 
    padding: 10px;
}
#banner-interno-slider .theme-dark { 
    color: #0A1A2F;
}

#banner-interno-slider .banner-title{
  font-size: clamp(24px, 3.2vw, 44px);
  line-height: 1.15; margin: 0 0 10px;
  font-family: 'F25Bank';
}
#banner-interno-slider .banner-text{
  font-size: clamp(14px, 1.4vw, 26px);
  margin-bottom: 16px;
}

/* Controles Owl */
#banner-interno-slider .owl-nav{
  position:absolute; top:50%; left:0; right:0;
  display:flex; justify-content:space-between; transform:translateY(-50%);
  padding:0 50px; pointer-events:none;display: none;
}
#banner-interno-slider .owl-nav button{
  pointer-events:auto;
  /* background: rgba(0,0,0,0.4); */
  border: 0; color: #fff; font-size: 24px;
  padding: 6px 12px; border-radius: 50%;
}
#banner-interno-slider .owl-nav button:hover{ scale: 1.2; }
#banner-interno-slider .owl-dots{ position:absolute; bottom:15px; left:0; right:0; }

/* Título como WYSIWYG: controla márgenes y tipografía */
#banner-interno-slider .banner-title-rich p {
    margin: 0 0 8px;
    font-size: clamp(24px, 5.2vw, 60px);
    line-height: 1.15;
    font-weight: 700; /* opcional */
  }
  #banner-interno-slider .banner-title a {
    color: #fff;
    text-decoration: none;
  }
  #banner-interno-slider .banner-title a p:hover {
    scale: 1.02;
    transition: all 0.3s ease;
  }
  #banner-interno-slider .banner-title-rich p:last-child{ 
    margin-bottom: 0;
    color: #0A1A2F;
}
  
  /* Si usas <br> en vez de <p>, no necesitas cambios extra */
  
    #panel-digital-steps .btn-primary, #banner-interno-slider .btn-primary{
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    color: #fff;
    border-style: none;
    width: 20%;
    padding: 15px 0px;
    margin: 0 auto;
    border-radius: 999px;
  }
  #banner-interno-slider .banner-caption-inner{
    margin-left: 10%;
  }

#rewards-showcase .btn-primary, .t-owl.btn-primary{
    background: linear-gradient(45deg, #7457E5, #4B4BDD);
    color: #fff;
    border-style: none;
    width: fit-content;
    padding: 15px 15px;
    margin: 0 auto;
    border-radius: 999px;
    font-weight: bold;
  }




/* Scope */
#panel-digital-steps { padding: 24px 0 8px; }
#panel-digital-steps .step-card{ position:relative; text-align:center; padding-top:30px; }

/* Número */
#panel-digital-steps .step-number{
  position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:56px;height:56px;border-radius:50%;background:linear-gradient(45deg, #7457E5, #4B4BDD);color:#fff;
  font-weight:900;display:flex;align-items:center;justify-content:center;
  font-size:22px; box-shadow:0 6px 14px rgba(0,0,0,.08);
}

/* Figura */
#panel-digital-steps .step-figure{ position:relative; padding:24px 12px 8px; min-height:200px; }
@media (min-width:992px){ #panel-digital-steps .step-figure{ min-height:240px; } }
#panel-digital-steps .step-bg{ max-width:260px;width:100%;display:inline-block;filter:drop-shadow(0 8px 18px rgba(0,0,0,.06)); }

/* Píldora */
#panel-digital-steps .step-pill{
  position:absolute; left:70%; top:50%; transform:translate(-50%,-50%);
  background:#FF66CC; color:#fff; font-weight:700; padding:12px 18px;
  border-radius:999px; box-shadow:0 10px 20px rgba(91,59,224,.25);
  white-space:nowrap; max-width:90%; border:0; cursor:pointer;
}

/* Tooltip (oculto por defecto) */
#panel-digital-steps .step-tooltip{
  position:absolute; left:50%; top:calc(50% + 56px); transform:translate(-50%, 8px);
  min-width:220px; max-width:280px; background:#fff; color:#222; border-radius:12px;
  box-shadow:0 16px 34px rgba(0,0,0,.15);
  opacity:0; visibility:hidden; pointer-events:none; transition:opacity .2s, transform .2s, visibility .2s;
  z-index:3; padding:0;
}
#panel-digital-steps .step-tooltip-inner{ padding:14px 16px; font-size:14px; line-height:1.4; }
#panel-digital-steps .step-tooltip::after{
  content:""; position:absolute; top:-8px; left:50%; transform:translateX(-50%);
  border-left:8px solid transparent; border-right:8px solid transparent; border-bottom:8px solid #fff;
}

/* Hover/focus abre el tooltip en desktop */
#panel-digital-steps .step-figure:hover .step-tooltip,
#panel-digital-steps .step-pill:focus + .step-tooltip,
#panel-digital-steps .step-figure.is-open .step-tooltip{
  opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%, 0);
}


.container .titulo-paneldigital {
    color: #4B0082;
}
 .container .titulo-paneldigital::after{
  content:""; display:block; height:3px; width:50%; background:#5B3BE0; opacity:.6; margin-top:20px;
}


/* Hover solo en dispositivos con hover (desktop/tablet con mouse) */
@media (hover:hover) and (min-width: 768px){
    #panel-digital-steps .step-figure:hover .step-tooltip,
    #panel-digital-steps .step-pill:focus + .step-tooltip,
    #panel-digital-steps .step-figure.is-open .step-tooltip{
      opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%, 0);
    }
  }
  
  /* MOBILE: tooltip empuja contenido (flujo normal) */
  @media (max-width: 767.98px){
    #panel-digital-steps .step-figure{
      min-height: unset;
      padding-bottom: 0;
    }
    #panel-digital-steps .step-tooltip{
      position: relative;          /* ya no absoluto */
      top: auto; bottom: 15px; transform: none;
      width: 100%; max-width: 100%;
      margin-top: 12px;
      opacity: 1; visibility: visible; pointer-events: auto;
      display: none;               /* se muestra con JS (slide) */
    }
    #panel-digital-steps .step-tooltip::after{
      position: absolute;
      top: -8px; left: 50%; transform: translateX(-50%);
      border-left: 8px solid transparent;
      border-right: 8px solid transparent;
      border-bottom: 8px solid #fff;
    }
  }
  

  /* Scope */
#rewards-showcase { padding: 24px 0 16px; }
#rewards-showcase .rewards-title{
  font-weight: 800;
  font-size: clamp(28px, 3.6vw, 44px);
  color: #0A1A2F;
  margin-bottom: 8px;
  font-family: 'F25Bank';
}
#rewards-showcase .rewards-subtitle{
  max-width: 720px;
  color: #5a6b80;
  font-size: clamp(14px, 1.6vw, 18px);
}

/* Item */
#rewards-showcase .reward-item{
  text-align: center;
}

/* Puntos */
#rewards-showcase .reward-points{
  display: block; align-items: center; gap: 8px;
  font-weight: 800; font-size: 20px; color: #0b2340;
  margin-bottom: 10px;
}
#rewards-showcase .reward-points .fa-star{
  color: #F49B21;
}

/* Tarjeta con sombra elíptica y ligera rotación */
#rewards-showcase .reward-card{
  display: inline-block;
  background: #fff;
  border-radius: 12px;
  padding: 10px;
  transform: rotate(-8deg);
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
#rewards-showcase .reward-card img{
  display: block; width: 200px; max-width: 65vw; height: auto; border-radius: 8px;
}
#rewards-showcase .reward-card::after{
  content:""; display:block; height:12px; margin:14px auto 0;
  width: 140px; max-width: 60%;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.18), rgba(0,0,0,0) 70%);
  transform: translateY(6px);
}
#rewards-showcase .reward-item:hover .reward-card{
  transform: rotate(-4deg) translateY(-2px);
  box-shadow: 0 14px 30px rgba(0,0,0,.12);
}

/* Link inferior */
#rewards-showcase .reward-link{
  margin-top: 10px;
  color: #8b98a8;
  font-size: 14px;
}
#rewards-showcase .reward-link a{
  color: #8b98a8; text-decoration: none;
}
#rewards-showcase .reward-link a:hover{
  text-decoration: underline;
}
/* Para alinear alturas aunque no haya link */
#rewards-showcase .reward-link.placeholder{ visibility: hidden; }

/* Espaciado del carrusel */
#rewards-showcase .owl-stage{ display:flex; align-items:flex-start; }


#uso-info{ position:relative; overflow:hidden; }

/* Capas de fondo */
#uso-info .uso-info__bg{
  position:absolute; inset:0; background-size:cover; background-position:center;
}
#uso-info .uso-info__bg::before{ content:""; position:absolute; inset:0; background: rgba(0,0,0,0); }
#uso-info .uso-info__bg::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:240px;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, #fff 85%); }

/* Mostrar/ocultar según viewport */
#uso-info .uso-info__bg--desk{ display:block; }
#uso-info .uso-info__bg--mob { display:none; }
@media (max-width: 767.98px){
  #uso-info .uso-info__bg--desk{ display:none; }
  #uso-info .uso-info__bg--mob { display:block; }
}

/* Contenido */
#uso-info .uso-info__content{ position:relative; z-index:1; /*padding: clamp(40px,9vw,120px) 0 clamp(24px,6vw,48px)*/;min-height: auto; }
#uso-info .uso-info__title{ margin:0 0 8px; line-height:1.05; font-size:clamp(32px,7vw,64px); color:#0A1A2F;font-family: 'F25Bank'; }
#uso-info .uso-info__subtitle{ color:#4a4f57; font-size:clamp(16px,2.2vw,22px); }
#uso-info .uso-info__body{ position:relative; z-index:2; padding:16px 0 40px; }
#uso-info .uso-info__text{ font-size:clamp(15px,1.8vw,18px); color:#111; line-height:1.65; }
#uso-info .uso-info__text p{ margin-bottom:12px; } 
#uso-info .uso-info__text p:last-child{ margin-bottom:0; }


/* ===== Scope ===== */
#testimonials { padding: 32px 0 24px; }
#testimonials .t-title{
  font-size: clamp(28px, 3.6vw, 44px);
  color: #0A1A2F;
  margin-bottom: 8px;
  font-family: 'F25Bank';
}
#testimonials .t-subtitle{
  max-width: 760px;
  color: #5a6b80;
  font-size: clamp(14px, 1.6vw, 18px);
}

/* ===== Card ===== */
#testimonials .t-card{
  background: #fff;
  border-radius: 14px;
  padding: 18px;
  box-shadow: 0 12px 24px rgba(0,0,0,.06);
  height: 100%;
}
#testimonials .t-stars{
  color: #19a463; /* verde “rating” */
  font-size: 16px;
  margin-bottom: 10px;
}
#testimonials .t-card-title{
  font-size: 18px; font-weight: 800; color:#0b2340; margin: 0 0 8px;
  overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
#testimonials .t-card-text{
  color:#3c4a5c; font-size: 14px; line-height: 1.55; margin-bottom: 12px;
  overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
}

/* Autor */
#testimonials .t-author{ display:flex; align-items:center; gap:10px; }
#testimonials .t-avatar{
  width:40px; height:40px; border-radius:50%; object-fit:cover;
}
#testimonials .t-name{ font-weight:700; color:#0b2340; font-size:14px; }
#testimonials .t-date{ color:#8b98a8; font-size:12px; }

/* Owl arrows scoped */
#testimonials .owl-nav{
  margin-top: 8px;
  display:flex; justify-content: flex-end; gap:8px;
}
#testimonials .owl-nav button{
  width:36px; height:36px; border-radius:50%; border:0;
  background:#eef2f7; color:#0b2340;
}
#testimonials .owl-nav button:hover{ background:#e1e7ef; }
#testimonials .owl-stage{ display:flex; }

/* Mejoras responsivas */
@media (max-width: 575.98px){
  #testimonials .t-card-text{ -webkit-line-clamp: 4; }
}

#t-owl .owl-item {
    margin: 24px;
}

/* ========== Scope ========== */
#validacion-consultora{ position:relative; overflow:hidden; }

/* Fondos */
#validacion-consultora .vc-bg{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
}
#validacion-consultora .vc-bg::before{
  content:""; position:absolute; inset:0;
  /* velo opcional para contraste */
  background: rgba(0,0,0,0); /* súbelo a .15 si hace falta */
}
#validacion-consultora .vc-bg::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:240px;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, #fff 85%);
}

/* Mostrar/ocultar por viewport */
#validacion-consultora .vc-bg--desk{ display:block; }
#validacion-consultora .vc-bg--mob { display:none; }
@media (max-width: 767.98px){
  #validacion-consultora .vc-bg--desk{ display:none; }
  #validacion-consultora .vc-bg--mob { display:block; }
}

/* Cabecera (sobre el fondo) */
#validacion-consultora .vc-head{
  position:relative; z-index:1;
  padding: clamp(40px, 9vw, 120px) 0 0;
  color:#111;
}
#validacion-consultora .vc-title{
  margin:0 0 8px;
  line-height:1.05;
  font-size:clamp(32px, 7vw, 64px);
  color:#0A1A2F; /* morado del título */
  font-family: 'F25Bank';
}
#validacion-consultora .vc-subtitle{
  color:#4a4f57;
  font-size:clamp(16px, 2.2vw, 22px);
}

/* Cuerpo blanco inferior */
#validacion-consultora .vc-body{
  position:relative;
  z-index:2;
  padding:0px 0 clamp(40px, 9vw, 120px);
}
#validacion-consultora .vc-text{
  font-size:clamp(15px, 1.8vw, 18px);
  color:#111; line-height:1.65;
}
#validacion-consultora .vc-text p{ margin-bottom:12px; }
#validacion-consultora .vc-text p:last-child{ margin-bottom:0; }

/* Entrevistas Responsive */
#validacion-consultora .vc-entrevistas {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
}
@media (max-width: 767.98px) {
    #validacion-consultora .vc-entrevistas {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    #validacion-consultora .vc-entrevistas .vc-text {
        font-size: 15px; /* Asegurar legibilidad en móvil */
        text-align: left; /* Opcional: forzar alineación izquierda si es preferible */
    }
    /* Ajustes para imágenes dentro del WYSIWYG en móvil */
    #validacion-consultora .vc-entrevistas img {
        max-width: 100%;
        height: auto;
    }
    #validacion-consultora .vc-entrevistas iframe {
        max-width: 100%;
    }
}


/* ===== Scope general (fondo blanco) ===== */
#info-security{ background:#fff; padding: 32px 0 28px; }

/* Ícono principal en badge redondo */
#info-security .is-badge{
  width:72px; height:72px; border-radius:50%;
  background:#eaf3ef; display:flex; align-items:center; justify-content:center;
}
#info-security .is-badge img{ width:40px; height:40px; object-fit:contain; }

/* Títulos */
#info-security .is-title{
  font-size: clamp(26px, 3.4vw, 40px);
  color:#0A1A2F; margin: 10px 0 6px;
  font-family: 'F25Bank';
}
#info-security .is-subtitle{
  max-width: 820px; color:#5a6b80;
  font-size: clamp(14px, 1.6vw, 18px);
}

/* Cards */
#info-security .is-card{
  background:#fff; border:1px solid #e8edf3; border-radius:14px;
  padding:18px 18px 16px; text-align:center;
  transition: box-shadow .2s ease, transform .2s ease;
}
#info-security .is-card:hover{
  box-shadow:0 12px 28px rgba(0,0,0,.06); transform: translateY(-2px);
}
#info-security .is-card-icon{
  width:48px; height:48px; border-radius:12px; margin:0 auto 10px;
  background:#eaf3ef; display:flex; align-items:center; justify-content:center;
}
#info-security .is-card-icon img{ width:26px; height:26px; object-fit:contain; }

#info-security .is-card-title{
  font-size:18px; font-weight:800; color:#A020F0; margin: 6px 0 8px;
}
#info-security .is-card-text{
  color:#3c4a5c; font-size:14px; line-height:1.55;
}
#info-security .is-card-text p{ margin-bottom:10px; }
#info-security .is-card-text p:last-child{ margin-bottom:0; }

/* Ajustes responsive */
@media (max-width: 575.98px){
  #info-security{ padding: 28px 0 20px; }
  #info-security .is-card{ padding:16px; }
}

.navbar>.container, .navbar>.container-fluid, .navbar>.container-lg, .navbar>.container-md, .navbar>.container-sm, .navbar>.container-xl, .navbar>.container-xxl {
    max-width: 100%;
}

/* Fallback de color cuando no hay imagen */
#banner-interno-slider .banner-fallback{
    position: absolute;
    inset: 0;
  }



  /* ===== Carrusel: permitir que un item se ensanche SIN romper layout ===== */
#equipo-seccion .team-owl .owl-stage{ display:flex; }
#equipo-seccion .team-owl .owl-item{
  display:flex;                 /* para que su hijo estire alto */
  align-items:stretch;
  /* NO forzamos width:auto !important, dejamos el width que pone Owl */
}

/* Altura consistente del slide */
#equipo-seccion .eqp-item{
  position:relative; display:flex; width:100%;
  height: 420px;                 /* desktop base */
  background:#fff; overflow:hidden; cursor:pointer;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  transition: box-shadow .2s ease, transform .2s ease;
}
@media (min-width:1200px){ #equipo-seccion .eqp-item{ height: 480px; } }
@media (max-width:991.98px){ #equipo-seccion .eqp-item{ height: 380px; } }
@media (max-width:767.98px){ #equipo-seccion .eqp-item{ height: fit-content; flex-direction: column; } }

#equipo-seccion .eqp-item:hover{ transform: translateY(-2px); }

/* Columna foto */
#equipo-seccion .eqp-photo-wrap{ position:relative; flex:1 1 auto; min-width:0; }
#equipo-seccion .eqp-photo-wrap img,
#equipo-seccion .eqp-item--placeholder{
  width:100%; height:100%; object-fit:cover; display:block; transition: transform .25s ease;
}

/* VELO gris por defecto (colapsado) sobre la foto */
#equipo-seccion .eqp-photo-wrap::before{
  content:""; position:absolute; inset:0; z-index:1;
  background: #4b4bdd38; opacity:1; transition: opacity .22s ease;
}
/* Sin velo al abrir */
#equipo-seccion .eqp-item:hover .eqp-photo-wrap::before,
#equipo-seccion .eqp-item:focus .eqp-photo-wrap::before,
#equipo-seccion .eqp-item.is-open .eqp-photo-wrap::before{ opacity:0; }

/* Ligero zoom al abrir */
#equipo-seccion .eqp-item:hover .eqp-photo-wrap img,
#equipo-seccion .eqp-item:focus .eqp-photo-wrap img,
#equipo-seccion .eqp-item.is-open .eqp-photo-wrap img{
  transform: scale(1.03) translateX(-2%);
}

/* Columna texto (colapsable dentro del slide) */
#equipo-seccion .eqp-fly{
  flex: 0 0 0;                   /* colapsado */
  opacity: 0; overflow:hidden;
  background:#fff; border-left:1px solid #eef2f7;
  display:flex; flex-direction:column; gap:8px;
  padding:0; transition: flex-basis .25s ease, opacity .2s ease, padding .25s ease;
}
/* Abierto (hover/focus/is-open) */
#equipo-seccion .eqp-item:hover .eqp-fly,
#equipo-seccion .eqp-item:focus .eqp-fly,
#equipo-seccion .eqp-item.is-open .eqp-fly{
  flex-basis: 50%;
  opacity: 1;
  padding: 12px;
}

/* Mobile: el panel baja y empuja contenido, sin altura fija */
@media (max-width: 767.98px){
  #equipo-seccion .eqp-fly{
    flex-basis: 100%; opacity:0; max-height:0; padding:0; border-left:0;
  }
  #equipo-seccion .eqp-item:hover .eqp-fly,
  #equipo-seccion .eqp-item:focus .eqp-fly,
  #equipo-seccion .eqp-item.is-open .eqp-fly{
    opacity:1; max-height: 70vh; padding:12px 14px;
  }
}

/* Tipos de texto */
#equipo-seccion .eqp-fly-name{
      color: #A020F0;
    font-weight: 700;
    font-size: 1.5rem;
    margin: 0;
    text-decoration: underline;
    text-underline-position: under;
}
#equipo-seccion .eqp-fly-desc{
  color:#223046; font-size:14px; line-height:1.1;
  display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;
  position:relative; padding-bottom:8px; color: #4B4BDD;
}
#equipo-seccion .eqp-fly-desc::after{
  content:""; position:absolute; left:0; right:0; bottom:0;
  pointer-events:none;
}
#equipo-seccion .eqp-fly.expanded .eqp-fly-desc{ -webkit-line-clamp: initial; overflow:visible; }
#equipo-seccion .eqp-fly.expanded .eqp-fly-desc::after{ display:none; }

/* Botón LinkedIn */
#equipo-seccion .eqp-fly-link.btn{
  align-self:flex-start; display:inline-flex; align-items:center; gap:8px;
  background:#eef2f7; border:0; color:#0b2340; font-weight:700;
  padding:6px 10px; border-radius:8px; margin-top:auto;
}

/* ===== “Push” del vecino sin tocar widths inline de Owl ===== */
@media (min-width: 768px){
  /* Al expandir un item, marcamos su .owl-item para darle “peso visual”
     usando padding interno del stage-outer (hack suave sin romper cálculos).
     Esto evita pelear con los widths inline de Owl. */
  #equipo-seccion .team-owl .owl-item.is-expanded .eqp-item{ transform: translateY(-2px); }
}
h3.eqp-group-title {
    font-size: 2.75rem;
    color: #4B4BDD;
    /*font-style: italic;*/
    font-weight: 200;
}
h2.eqp-page-title {
    font-size: 3.0rem;
    color: #A020F0;
    font-weight: 700;
    font-family: 'F25Bank';
}
a.eqp-fly-link {
    color: #A020F0;
    text-decoration: unset;
    position: relative;
}
a.eqp-fly-link svg{
    vertical-align: text-bottom;
}







/* ===== Scope base ===== */
#lo-que-hacemos.lqh-simple-section.lqh-v2{
    padding: 60px 0 54px;
    background-color: #e6f7ff;
    overflow: hidden;
  }
  #lo-que-hacemos .lqh-head{ opacity:.95; }
  #lo-que-hacemos .lqh-simple-title{
    color: #0A1A2F;
    font-size: clamp(28px, 3.6vw, 44px);
    margin-bottom: 10px;
    font-family: 'F25Bank';
  }
  #lo-que-hacemos .lqh-simple-subtitle{
    color: var(--c-ink, #0A1A2F);
    font-size: clamp(16px, 2vw, 20px);
    margin-bottom: 10px;
  }
  #lo-que-hacemos .lqh-simple-body{ color: var(--c-ink, #0A1A2F); line-height: 1.65; }
  
  /* decor lines solo desktop */
  #lo-que-hacemos .lqh-simple-network{ position:relative; margin-top: 6px; }
  #lo-que-hacemos .lqh-simple-lines{ position:absolute; inset:0; width:100%; height:auto; pointer-events:none; display:none; }
  @media (min-width: 992px){ #lo-que-hacemos .lqh-simple-lines{ display:block; } }
  
  /* ===== Grid protagonista ===== */
  #lo-que-hacemos .lqh-grid{
    position:relative; z-index:1;
    display:grid; gap:18px; list-style:none; margin:0; padding:0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  @media (min-width: 576px){
    #lo-que-hacemos .lqh-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (min-width: 992px){
    #lo-que-hacemos .lqh-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
  }
  
  /* ===== Ítem cuadrado, grande y con movimiento ===== */
  #lo-que-hacemos .lqh-item{
    --radius: 18px;
    position:relative; overflow:hidden;
    background:#fff;
    border:1px solid rgba(10,26,47,.06);
    border-radius: var(--radius);
    box-shadow: 0 16px 34px rgba(10,26,47,.10);
    isolation:isolate;
    aspect-ratio: 1 / 1; /* cuadrado */
    padding: 18px;
    display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
  
    transform: translateY(14px) scale(.96) rotateX(0) rotateY(0);
    opacity:0;
    transition:
      transform .5s cubic-bezier(.2,.7,.2,1),
      opacity .45s ease,
      box-shadow .25s ease,
      border-color .25s ease;
    will-change: transform, opacity;
  }
  
  /* Reveal protagonista */
  #lo-que-hacemos .lqh-item.in-view{
    opacity:1;
    transform: translateY(0) scale(1.02);
    transition-delay: calc(var(--d, 0ms) * 1ms);
    box-shadow: 0 24px 60px rgba(10,26,47,.14);
    border-color: #A020F0;
  }
  
  /* Velo/shine sutil */
  #lo-que-hacemos .lqh-item::after{
    content:""; position:absolute; inset:0;
    background:
      radial-gradient(100% 100% at 0% 0%, rgba(160,32,240,.10), transparent 60%),
      radial-gradient(100% 100% at 100% 100%, rgba(0,191,255,.08), transparent 50%);
    z-index:0; pointer-events:none;
  }
  
  /* Hover tilt + pop (desktop) */
  @media (hover:hover){
    #lo-que-hacemos .lqh-item:hover{
      transform: translateY(-4px) scale(1.04);
      box-shadow: 0 28px 70px rgba(10,26,47,.18);
      border-color: rgba(160,32,240,.28);
    }
  }
  
  /* Ícono protagonista (tamaños responsivos) */
  #lo-que-hacemos .lqh-ico{
    position:relative; z-index:1;
    width:96px; height:96px; border-radius:22px;
    display:grid; place-items:center; margin: 6px auto 12px;
    background: linear-gradient(135deg, rgba(160,32,240,.14), rgba(0,191,255,.14));
    box-shadow:
      inset 0 0 0 2px rgba(160,32,240,.18),
      0 10px 26px rgba(10,26,47,.10);
    animation: lqh-breathe 5.2s ease-in-out infinite;
  }
  #lo-que-hacemos .lqh-ico i{
    font-size: 38px; color: var(--c-purple, #A020F0);
    text-shadow: 0 4px 20px rgba(160,32,240,.25);
  }
  @media (min-width: 1200px){
    #lo-que-hacemos .lqh-ico{ width:110px; height:110px; }
    #lo-que-hacemos .lqh-ico i{ font-size:44px; }
  }
  @keyframes lqh-breathe{
    0%,100%{ transform: translateY(0) scale(1); }
    50%{ transform: translateY(-6px) scale(1.03); }
  }
  
  /* Título de ítem */
  #lo-que-hacemos .lqh-item h3{
    position:relative; z-index:1;
    margin:0; margin-top: 4px;
    font-size: clamp(15px, 1.6vw, 18px);
    font-weight: 500;
    color: var(--c-ink, #0A1A2F);
    letter-spacing:.2px;
  }
  
  /* Focus accesible */
  #lo-que-hacemos .lqh-item:focus-within{ outline: 3px solid rgba(160,32,240,.35); outline-offset: 2px; }
  
  /* Ajustes móviles */
  @media (max-width: 575.98px){
    #lo-que-hacemos .lqh-ico{ width:82px; height:82px; border-radius:18px; }
    #lo-que-hacemos .lqh-ico i{ font-size:32px; }
  }
/* ===== Mobile: 2 por fila y tamaños más contenidos ===== */
@media (max-width: 575.98px){
    #lo-que-hacemos .lqh-grid{
      grid-template-columns: repeat(2, minmax(0, 1fr)); /* 2 por fila */
      gap: 12px;                                    /* menos separación */
      padding: 3px;
    }
    #lo-que-hacemos .lqh-item{
      aspect-ratio: 1 / 1;   /* mantiene cuadrado, pero... */
      padding: 12px;         /* menos padding */
      border-radius: 14px;
      transform: translateY(8px) scale(.98); /* entrada más discreta */
    }
    #lo-que-hacemos .lqh-item.in-view{
      transform: translateY(0) scale(1.01);
      box-shadow: 0 18px 40px rgba(10,26,47,.12);
    }
  
    /* Ícono más pequeño en mobile */
    #lo-que-hacemos .lqh-ico{ width:72px; height:72px; border-radius:16px; }
    #lo-que-hacemos .lqh-ico i{ font-size:28px; }
  
    /* Título más compacto */
    #lo-que-hacemos .lqh-item h3{
      font-size: 14px;
      margin-top: 6px;
    }
  }
  
  /* Extra-chico: una columna si la pantalla es muy angosta */
  @media (max-width: 360px){
    #lo-que-hacemos .lqh-grid{ grid-template-columns: 1fr; }
  }

.banner-slide-caption.align-left.valign-middle.theme-dark.inicio {
  margin-left: 10%;
  margin-top: 15%;
}

input#gform_submit_button_1 {
    padding: 0px 20px;
    border-radius: 999px;
}

.texto-titulos-f25bank-azulado {
  font-family: 'F25Bank';
  color: #0A1A2F;
}

.texto-parrafos-f25bank-azulado {
  font-family: 'Gilroy';
  color: #0A1A2F;
}

h2.servicios-titulo.aos-init.aos-animate{
  color: #0A1A2F;
  font-family: 'F25Bank';
}

p.servicios-subtitulo.aos-init.aos-animate {
    font-family: 'Gilroy';
}

img.imagen-interna.img-fluid.aos-init.aos-animate {
    width: 190px;
}

.btn-panel a {
    color: white !important;
}