/* ===================================== */
/* CONFIGURACIÓN GLOBAL */
/* ===================================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;
background:#ffffff;
color:#222;
overflow-x:hidden;

}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
}

section{
padding:100px 8%;
}

/* ===================================== */
/* COLORES */
/* ===================================== */

:root{

--azul:#0B1E3F;
--azul2:#12386B;
--naranja:#F58220;
--blanco:#ffffff;
--gris:#f5f7fb;
--texto:#333333;

}

/* ===================================== */
/* HEADER */
/* ===================================== */

header{

position:fixed;
top:0;
left:0;
width:100%;
z-index:9999;
transition:.4s;

}

header.scrolled{

background:rgba(11,30,63,.95);
backdrop-filter:blur(10px);

}

.contenedor-menu{

display:flex;
justify-content:space-between;
align-items:center;
padding:20px 8%;

}

.logo{

height:70px;

}

nav{

display:flex;
gap:35px;

}

nav a{

color:white;
font-weight:500;
transition:.3s;

}

nav a:hover{

color:var(--naranja);

}

.menu-mobile{

display:none;
color:white;
font-size:28px;
cursor:pointer;

}

/* ===================================== */
/* HERO */
/* ===================================== */

.hero{

position:relative;
min-height:900px;

background-image:url("FOTOS/Fondo.webp");
background-size:cover;
background-position:center;

display:flex;
align-items:flex-end;

padding-top:120px;

}

.overlay{

position:absolute;
top:0;
left:0;

width:100%;
height:100%;

background:linear-gradient(
90deg,
rgba(11,30,63,.90),
rgba(11,30,63,.70),
rgba(11,30,63,.45)
);

}

.hero-contenedor{

position:relative;
z-index:2;

display:grid;
grid-template-columns:1.2fr .8fr .9fr;

gap:40px;
align-items:center;

width:100%;

}

.badge{

display:inline-block;

background:rgba(255,255,255,.15);

padding:10px 20px;

border-radius:50px;

color:white;

margin-bottom:25px;

font-size:14px;

backdrop-filter:blur(10px);

}

.hero-texto h1{

font-size:60px;
line-height:1.1;
color:white;

margin-bottom:25px;

font-weight:800;

}

.hero-texto p{

color:white;

font-size:18px;
line-height:1.8;

margin-bottom:30px;

}

.hero-beneficios{

display:grid;
grid-template-columns:1fr 1fr;
gap:15px;

margin-bottom:30px;

}

.beneficio{

display:flex;
align-items:center;
gap:10px;

color:white;

}

.beneficio i{

color:var(--naranja);

}

.hero-botones{

display:flex;
gap:15px;
flex-wrap:wrap;

}

/* ===================================== */
/* BOTONES */
/* ===================================== */

.btn-principal{

background:var(--naranja);

color:white;

padding:16px 30px;

border-radius:50px;

font-weight:600;

transition:.3s;

display:inline-block;

}

.btn-principal:hover{

transform:translateY(-4px);

}

.btn-secundario{

border:2px solid white;

color:white;

padding:16px 30px;

border-radius:50px;

font-weight:600;

transition:.3s;

}

.btn-secundario:hover{

background:white;
color:var(--azul);

}

/* ===================================== */
/* ASESOR */
/* ===================================== */

.hero-asesor{

display:flex;
justify-content:center;
align-items:flex-end;

margin-bottom:-40px;

}

.hero-asesor img{

max-height:1550px;

filter:drop-shadow(
0 20px 40px rgba(0,0,0,.25)
);

}

/* ===================================== */
/* FORMULARIO */
/* ===================================== */

.hero-formulario{

background:white;

padding:35px;

border-radius:25px;

box-shadow:0 20px 60px rgba(0,0,0,.15);

}

.hero-formulario h3{

font-size:28px;

color:var(--azul);

margin-bottom:10px;

}

.hero-formulario p{

margin-bottom:20px;
color:#666;

}

.hero-formulario form{

display:flex;
flex-direction:column;
gap:15px;

}

.hero-formulario input,
.hero-formulario select,
.hero-formulario textarea{

padding:15px;

border:1px solid #ddd;

border-radius:12px;

font-family:'Poppins',sans-serif;

outline:none;

}

.hero-formulario button{

background:var(--naranja);

border:none;

color:white;

padding:16px;

border-radius:12px;

font-weight:700;

cursor:pointer;

transition:.3s;

}

.hero-formulario button:hover{

transform:translateY(-3px);

}

/* ===================================== */
/* PROMOCIÓN VIGENTE */
/* ===================================== */

.promo-vigente{

    padding:100px 8%;

    background:#F7F9FC;

}

.promo-container{

    max-width:1400px;

    margin:auto;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:70px;

    background:white;

    padding:60px;

    border-radius:35px;

    box-shadow:
    0 20px 60px rgba(0,0,0,.08);

}

.promo-info{

    flex:1;

}

.promo-badge{

    display:inline-block;

    background:#F57C00;

    color:white;

    padding:12px 22px;

    border-radius:50px;

    font-size:15px;

    font-weight:700;

    margin-bottom:20px;

    letter-spacing:.5px;

}

.promo-info h2{

    font-size:60px;

    line-height:1.05;

    color:#0B1E3F;

    margin-bottom:20px;

    font-weight:800;

}

.promo-info p{

    font-size:18px;

    line-height:1.8;

    color:#555;

    margin-bottom:25px;

}

/* ALERTA */

.promo-alerta{

    display:inline-block;

    background:#FFF3E0;

    color:#F57C00;

    padding:12px 20px;

    border-radius:50px;

    font-weight:700;

    margin-bottom:30px;

}

/* BENEFICIOS */

.promo-beneficios{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:15px;

    margin-bottom:30px;

}

.beneficio-promo{

    background:#F7F9FC;

    padding:16px;

    border-radius:15px;

    font-weight:600;

    color:#0B1E3F;

    transition:.3s;

    border:1px solid #EDF1F7;

}

.beneficio-promo:hover{

    transform:translateY(-3px);

}

/* INCLUYE */

.promo-incluye{

    margin-bottom:35px;

}

.promo-incluye h4{

    font-size:22px;

    color:#0B1E3F;

    margin-bottom:15px;

    font-weight:700;

}

.promo-incluye ul{

    list-style:none;

    padding:0;

    margin:0;

}

.promo-incluye li{

    margin-bottom:12px;

    color:#555;

    font-size:16px;

    font-weight:500;

}

/* BOTÓN */

.btn-promo-video{

    display:inline-block;

    background:#F57C00;

    color:white;

    text-decoration:none;

    padding:18px 35px;

    border-radius:14px;

    font-weight:700;

    transition:.3s;

    box-shadow:
    0 10px 25px rgba(245,124,0,.30);

}

.btn-promo-video:hover{

    transform:translateY(-4px);

    box-shadow:
    0 15px 35px rgba(245,124,0,.40);

}

/* VIDEO */

.promo-video{

    flex:1;

    display:flex;

    justify-content:center;

    align-items:center;

}

.promo-video video{

    width:100%;

    max-width:430px;

    border-radius:25px;

    overflow:hidden;

    background:#000;

    box-shadow:
    0 25px 60px rgba(0,0,0,.15);

}

/* ===================================== */
/* RESPONSIVE PROMOCIÓN */
/* ===================================== */

@media(max-width:992px){

    .promo-container{

        flex-direction:column;

        text-align:center;

        gap:40px;

    }

    .promo-video{

        order:1;

    }

    .promo-info{

        order:2;

        width:100%;

    }

    .promo-badge{

        display:block;

        width:max-content;

        margin:0 auto 20px;

    }

    .promo-alerta{

        display:block;

        width:max-content;

        margin:0 auto 25px;

    }

    .promo-info h2{

        font-size:38px;

    }

    .promo-beneficios{

        grid-template-columns:1fr;

    }

    .promo-incluye{

        text-align:left;

    }

    .btn-promo-video{

        width:100%;

        text-align:center;

    }

}

/* ===================================== */
/* CELULARES */
/* ===================================== */

@media(max-width:768px){

    .promo-vigente{

        padding:60px 5%;

    }

    .promo-container{

        padding:30px 20px;

        border-radius:25px;

        gap:25px;

    }

    /* VIDEO PRIMERO */

    .promo-video{

        order:1;

    }

    .promo-info{

        order:2;

    }

    /* VIDEO MÁS PEQUEÑO */

    .promo-video video{

        width:100%;

        max-width:260px;

        border-radius:20px;

    }

    /* TÍTULO MÁS LIMPIO */

    .promo-info h2{

        font-size:28px;

        line-height:1.1;

        margin-bottom:15px;

    }

    /* OCULTAR PÁRRAFO */

    .promo-info p{

        display:none;

    }

    /* BENEFICIOS EN UNA COLUMNA */

    .promo-beneficios{

        grid-template-columns:1fr;

        gap:12px;

    }

    .beneficio-promo{

        padding:14px;

        font-size:15px;

    }

    /* OCULTAR INCLUYE */

    .promo-incluye{

        display:none;

    }

    .promo-alerta{

        font-size:14px;

        padding:10px 15px;

    }

    .btn-promo-video{

        width:100%;

        padding:16px 20px;

        font-size:15px;

    }

}

/* ===================================== */
/* CELULARES PEQUEÑOS */
/* ===================================== */

@media(max-width:480px){

    .promo-info h2{

        font-size:24px;

    }

    .promo-badge{

        font-size:12px;

    }

    .promo-alerta{

        font-size:13px;

    }

    .promo-video video{

        max-width:230px;

    }

}

/* ===================================== */
/* TÍTULOS GENERALES */
/* ===================================== */

.titulo-seccion{

text-align:center;
margin-bottom:70px;

}

.titulo-seccion span{

color:var(--naranja);
font-weight:600;
text-transform:uppercase;
letter-spacing:2px;

}

.titulo-seccion h2{

font-size:42px;
color:var(--azul);

margin-top:15px;
margin-bottom:15px;

}

.titulo-seccion p{

max-width:700px;
margin:auto;

color:#666;
line-height:1.8;

}

/* ===================================== */
/* ESTADÍSTICAS */
/* ===================================== */

.estadisticas{

background:white;

display:grid;
grid-template-columns:repeat(4,1fr);

gap:30px;

padding:80px 8%;

}

.estadistica{

background:white;

padding:40px;

text-align:center;

border-radius:20px;

box-shadow:0 10px 35px rgba(0,0,0,.08);

transition:.3s;

}

.estadistica:hover{

transform:translateY(-8px);

}

.icono-estadistica{

width:80px;
height:80px;

margin:auto;
margin-bottom:20px;

background:rgba(245,130,32,.10);

display:flex;
align-items:center;
justify-content:center;

border-radius:50%;

}

.icono-estadistica i{

font-size:30px;
color:var(--naranja);

}

.estadistica h3{

font-size:42px;
color:var(--azul);

margin-bottom:10px;

font-weight:800;

}

.estadistica p{

color:#666;

}

/* ===================================== */
/* SERVICIOS */
/* ===================================== */

.servicios{

background:var(--gris);

}

.grid-servicios{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(320px,1fr));

gap:35px;

}

.card-servicio{

background:white;

border-radius:25px;

overflow:hidden;

box-shadow:0 10px 35px rgba(0,0,0,.08);

transition:.4s;

}

.card-servicio:hover{

transform:translateY(-10px);

}

.card-servicio img{

width:100%;
height:250px;

object-fit:cover;

}

.contenido-servicio{

padding:30px;

}

.contenido-servicio h3{

color:var(--azul);

margin-bottom:15px;

font-size:24px;

}

.contenido-servicio p{

line-height:1.8;
color:#666;

}

/* ===================================== */
/* ELEGIRNOS */
/* ===================================== */

.elegirnos{

background:white;

}

.grid-elegirnos{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:30px;

}

.item-elegirnos{

text-align:center;

padding:40px 30px;

border-radius:20px;

box-shadow:0 10px 35px rgba(0,0,0,.08);

transition:.3s;

}

.item-elegirnos:hover{

transform:translateY(-8px);

}

.icono-elegirnos{

width:90px;
height:90px;

margin:auto;
margin-bottom:20px;

border-radius:50%;

background:rgba(245,130,32,.10);

display:flex;
align-items:center;
justify-content:center;

}

.icono-elegirnos i{

font-size:35px;
color:var(--naranja);

}

.item-elegirnos h3{

margin-bottom:15px;

color:var(--azul);

}

.item-elegirnos p{

line-height:1.8;
color:#666;

}

/* ===================================== */
/* PROCESO */
/* ===================================== */

.proceso{

background:linear-gradient(
135deg,
#0B1E3F,
#12386B
);

}

.proceso .titulo-seccion h2,
.proceso .titulo-seccion span{

color:white;

}

.pasos-proceso{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:25px;

}

.paso{

background:white;

padding:35px;

border-radius:20px;

text-align:center;

position:relative;

transition:.3s;

}

.paso:hover{

transform:translateY(-8px);

}

.numero-paso{

width:70px;
height:70px;

background:var(--naranja);

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

margin:auto;
margin-bottom:20px;

color:white;

font-weight:700;
font-size:22px;

}

.paso h3{

color:var(--azul);

margin-bottom:15px;

}

.paso p{

color:#666;
line-height:1.7;

}

/* ===================================== */
/* OFERTAS ESPECIALES DEL MES */
/* ===================================== */

.promocion-mes{

    padding:100px 8%;

    background:#F7F9FC;

}

.contenedor-promocion{

    margin-top:40px;

}

.imagen-promocion{

    width:100%;

    max-width:1300px;

    display:block;

    margin:auto;

    border-radius:30px;

    box-shadow:
    0 20px 60px rgba(0,0,0,.12);

    transition:.4s ease;

}

.imagen-promocion:hover{

    transform:translateY(-5px);

}

/* ===================================== */
/* BOTÓN */
/* ===================================== */

.cta-promocion{

    text-align:center;

    margin-top:40px;

}

.btn-promocion{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    background:#F57C00;

    color:#ffffff !important;

    text-decoration:none;

    padding:18px 38px;

    border-radius:12px;

    font-size:18px;

    font-weight:700;

    line-height:1.2;

    transition:.3s ease;

    box-shadow:
    0 10px 25px rgba(245,124,0,.30);

}

.btn-promocion:hover{

    transform:translateY(-3px);

    box-shadow:
    0 15px 35px rgba(245,124,0,.40);

}

/* ===================================== */
/* RESPONSIVE */
/* ===================================== */

@media(max-width:768px){

    .promocion-mes{

        padding:80px 5%;

    }

    .imagen-promocion{

        border-radius:20px;

    }

    .btn-promocion{

        display:inline-flex;

        width:auto;

        max-width:none;

        padding:16px 26px;

        font-size:16px;

        text-align:center;

    }

}

/* ===================================== */
/* CEO */
/* ===================================== */

.ceo{

    background:white;

}

.ceo-contenedor{

    max-width:1400px;

    margin:auto;

    display:grid;

    grid-template-columns:55% 45%;

    gap:80px;

    align-items:center;

}

.ceo-imagen{

    width:100%;

}

.ceo-imagen img{

    width:100%;

    display:block;

    border-radius:25px;

    box-shadow:0 20px 50px rgba(0,0,0,.12);

}

.ceo-texto{

    max-width:650px;

}

.ceo-texto span{

    display:inline-block;

    background:rgba(245,124,0,.12);

    color:var(--naranja);

    padding:10px 18px;

    border-radius:50px;

    font-size:14px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:20px;

}

.ceo-texto h2{

    font-size:56px;

    line-height:1.1;

    color:var(--azul);

    margin-bottom:25px;

}

.ceo-texto p{

    color:#666;

    font-size:18px;

    line-height:1.9;

    margin-bottom:20px;

}

/* ===================================== */
/* TABLET */
/* ===================================== */

@media(max-width:1200px){

    .ceo-contenedor{

        grid-template-columns:1fr;

        gap:50px;

        text-align:center;

    }

    .ceo-imagen{

        max-width:650px;

        margin:auto;

    }

    .ceo-texto{

        max-width:800px;

        margin:auto;

    }

    .ceo-texto h2{

        font-size:46px;

    }

}

/* ===================================== */
/* MÓVIL */
/* ===================================== */

@media(max-width:768px){

    .ceo{

        padding:80px 5%;

    }

    .ceo-contenedor{

        gap:35px;

    }

    .ceo-imagen{

        max-width:100%;

    }

    .ceo-imagen img{

        border-radius:20px;

    }

    .ceo-texto h2{

        font-size:34px;

        line-height:1.2;

    }

    .ceo-texto p{

        font-size:16px;

        line-height:1.8;

    }

}

@media(max-width:480px){

    .ceo-texto h2{

        font-size:30px;

    }

    .ceo-texto p{

        font-size:15px;

    }

}

/* ===================================== */
/* INSTALACIONES */
/* ===================================== */

.instalaciones{

background:white;

}

.instalaciones-contenedor{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:center;

}

.texto-instalaciones span{

color:var(--naranja);

font-weight:600;

text-transform:uppercase;

}

.texto-instalaciones h2{

font-size:42px;

color:var(--azul);

margin:20px 0;

}

.texto-instalaciones p{

line-height:1.9;

color:#666;

margin-bottom:25px;

}

.texto-instalaciones ul{

list-style:none;

margin-bottom:35px;

}

.texto-instalaciones li{

margin-bottom:15px;

display:flex;
align-items:center;

gap:10px;

font-weight:500;

}

.texto-instalaciones i{

color:var(--naranja);

}

.imagen-instalaciones img{

border-radius:25px;

box-shadow:0 20px 60px rgba(0,0,0,.15);

}

/* ===================================== */
/* TESTIMONIOS */
/* ===================================== */

.testimonios{
    padding:100px 8%;
    background:#F7F9FC;
}

.titulo-seccion{
    text-align:center;
    margin-bottom:60px;
}

.titulo-seccion h2{
    font-size:42px;
    color:#0B1E3F;
    margin-bottom:15px;
}

.titulo-seccion p{
    max-width:750px;
    margin:auto;
    color:#555;
    line-height:1.8;
}

/* CONTENEDOR */

.carrusel-wrapper{
    position:relative;
    display:flex;
    align-items:center;
    gap:20px;
}

/* CARRUSEL */

.carrusel-videos{
    display:flex;
    gap:25px;
    overflow-x:auto;
    scroll-behavior:smooth;

    scrollbar-width:none;
}

.carrusel-videos::-webkit-scrollbar{
    display:none;
}

/* TARJETAS */

.video-card{
    min-width:350px;
    border-radius:20px;
    overflow:hidden;
    position:relative;
    cursor:pointer;

    box-shadow:
    0 10px 30px rgba(0,0,0,0.10);

    transition:.35s;
}

.video-card:hover{
    transform:translateY(-8px);
}

.video-card img{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block;
}

/* PLAY */

.play-overlay{
    position:absolute;
    inset:0;

    display:flex;
    justify-content:center;
    align-items:center;

    background:rgba(0,0,0,.25);
}

.play-overlay i{
    width:80px;
    height:80px;

    background:white;
    color:#0B1E3F;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:28px;

    transition:.3s;
}

.video-card:hover .play-overlay i{
    transform:scale(1.1);
}

/* FLECHAS */

.btn-carrusel{
    width:55px;
    height:55px;

    border:none;
    border-radius:50%;

    background:#0B1E3F;
    color:white;

    cursor:pointer;

    font-size:18px;

    transition:.3s;
}

.btn-carrusel:hover{
    background:#1F3C88;
}

/* ===================================== */
/* MODAL VIDEO */
/* ===================================== */

.video-modal{
    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.85);

    display:none;

    justify-content:center;
    align-items:center;

    z-index:9999;
}

.video-modal.active{
    display:flex;
}

.modal-content{
    width:90%;
    max-width:1000px;
    position:relative;
}

.modal-content video{
    width:100%;
    border-radius:15px;
}

.cerrar-video{
    position:absolute;

    right:-10px;
    top:-50px;

    color:white;
    font-size:40px;

    cursor:pointer;
}

/* ===================================== */
/* RESPONSIVE */
/* ===================================== */

@media(max-width:768px){

    .testimonios{
        padding:80px 5%;
    }

    .titulo-seccion h2{
        font-size:32px;
    }

    .video-card{
        min-width:280px;
    }

    .video-card img{
        height:190px;
    }

    .btn-carrusel{
        display:none;
    }

}

/* ===================================== */
/* FAQ */
/* ===================================== */

.faq{

    background:var(--gris);

}

.faq-contenedor{

    max-width:1000px;

    margin:auto;

}

.faq-item{

    background:white;

    margin-bottom:20px;

    border-radius:18px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

    transition:.3s;

}

.faq-item:hover{

    transform:translateY(-3px);

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.faq-pregunta{

    width:100%;

    background:white;

    border:none;

    padding:25px;

    cursor:pointer;

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:18px;

    font-weight:600;

    color:var(--azul);

    text-align:left;

    transition:.3s;

}

.faq-pregunta span{

    font-size:28px;

    font-weight:700;

    color:#F57C00;

    transition:.3s;

}

.faq-item.active .faq-pregunta span{

    transform:rotate(45deg);

}

.faq-respuesta{

    max-height:0;

    overflow:hidden;

    transition:.4s ease;

}

.faq-respuesta p{

    padding:0 25px 25px;

    line-height:1.8;

    color:#666;

    font-size:16px;

}

.faq-item.active{

    border-left:5px solid #F57C00;

}

.faq-item.active .faq-respuesta{

    max-height:1000px;

}

/* ===================================== */
/* RESPONSIVE */
/* ===================================== */

@media(max-width:768px){

    .faq-pregunta{

        font-size:16px;

        padding:20px;

    }

    .faq-respuesta p{

        font-size:15px;

        padding:0 20px 20px;

    }

}

/* ===================================== */
/* CTA FINAL */
/* ===================================== */

.cta-final{

background:linear-gradient(
135deg,
#0B1E3F,
#12386B
);

text-align:center;

}

.cta-contenido{

max-width:900px;

margin:auto;

}

.cta-contenido h2{

font-size:48px;

color:white;

margin-bottom:20px;

}

.cta-contenido p{

color:white;

font-size:18px;

line-height:1.8;

margin-bottom:30px;

}

/* ===================================== */
/* FOOTER */
/* ===================================== */

footer{

background:#07142b;

color:white;

padding-top:80px;

}

.footer-contenedor{

display:grid;

grid-template-columns:
1.3fr 1fr 1fr;

gap:50px;

padding:0 8% 50px;

}

.footer-logo img{

height:80px;

margin-bottom:20px;

}

.footer-logo p{

line-height:1.8;

color:#d9d9d9;

}

.footer-contacto h3,
.footer-redes h3{

margin-bottom:20px;

}

.footer-contacto p{

display:flex;

gap:10px;

align-items:flex-start;

margin-bottom:15px;

line-height:1.8;

color:#d9d9d9;

}

.redes{

display:flex;

gap:15px;

}

.redes a{

width:50px;
height:50px;

border-radius:50%;

background:rgba(255,255,255,.10);

display:flex;
align-items:center;
justify-content:center;

color:white;

font-size:20px;

transition:.3s;

}

.redes a:hover{

background:var(--naranja);

}

.footer-copy{

border-top:1px solid rgba(255,255,255,.10);

padding:25px;

text-align:center;

color:#d9d9d9;

}

/* ===================================== */
/* WHATSAPP */
/* ===================================== */

.whatsapp-float{

position:fixed;

right:25px;
bottom:25px;

width:65px;
height:65px;

border-radius:50%;

background:#25D366;

display:flex;
align-items:center;
justify-content:center;

font-size:34px;

color:white;

z-index:9999;

box-shadow:0 10px 30px rgba(0,0,0,.25);

}

/* ===================================== */
/* BOTÓN SUBIR */
/* ===================================== */

.scroll-top{

position:fixed;

right:25px;
bottom:105px;

width:55px;
height:55px;

border:none;

border-radius:50%;

background:var(--naranja);

color:white;

font-size:18px;

cursor:pointer;

display:none;

z-index:9999;

}

/* ===================================== */
/* RESPONSIVE */
/* ===================================== */

@media(max-width:1200px){

.hero-contenedor{

grid-template-columns:1fr;

text-align:center;

}

.hero-beneficios{

grid-template-columns:1fr;

}

.hero-botones{

justify-content:center;

}

.hero-asesor{

order:2;

}

.hero-formulario{

order:3;

max-width:700px;

margin:auto;

}

.instalaciones-contenedor{

grid-template-columns:1fr;

}

.ceo-contenedor{

grid-template-columns:1fr;

text-align:center;

}

.ceo-imagen{

max-width:450px;

margin:auto;

}

}

@media(max-width:992px){

.estadisticas{

grid-template-columns:repeat(2,1fr);

}

.footer-contenedor{

grid-template-columns:1fr;

text-align:center;

}

.footer-contacto p{

justify-content:center;

}

.redes{

justify-content:center;

}

}

@media(max-width:768px){

section{

padding:80px 5%;

}

.hero-texto h1{

font-size:40px;

}

.titulo-seccion h2{

font-size:32px;

}

.texto-instalaciones h2,
.ceo-texto h2,
.cta-contenido h2{

font-size:34px;

}

.estadisticas{

grid-template-columns:1fr;

}

nav{

display:none;

}

.menu-mobile{

display:block;

}

.logo{

height:60px;

}

.hero-formulario{

padding:25px;

}

.whatsapp-float{

width:60px;
height:60px;

font-size:30px;

}

}

/* ===================================== */
/* CTA Y FOOTER FULL WIDTH */
/* ===================================== */

.cta-final{
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
}

footer{
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
}

/* ===================================== */
/* POPUP PROMOCIONAL 2X1 */
/* ===================================== */

.promo-modal{

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.75);

    display:none;

    align-items:center;
    justify-content:center;

    padding:20px;

    box-sizing:border-box;

    z-index:10000;

    backdrop-filter:blur(4px);

}


/* ===================================== */
/* MODAL ACTIVO */
/* ===================================== */

.promo-modal.active{

    display:flex;

    animation:promoFadeIn .35s ease;

}


/* ===================================== */
/* CONTENEDOR */
/* ===================================== */

.promo-modal-contenido{

    position:relative;

    width:100%;

    max-width:520px;

    max-height:94vh;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    animation:promoZoomIn .35s ease;

}


/* ===================================== */
/* IMAGEN */
/* ===================================== */

.promo-imagen-modal{

    display:block;

    width:100%;

    max-width:520px;

    max-height:78vh;

    height:auto;

    object-fit:contain;

    border-radius:18px;

    box-shadow:
        0 25px 80px rgba(0,0,0,.45);

}


/* ===================================== */
/* BOTÓN WHATSAPP */
/* ===================================== */

.promo-boton-whatsapp{

    width:100%;

    max-width:520px;

    box-sizing:border-box;

    margin-top:14px;

    padding:16px 25px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    /* NARANJA CORPORATIVO */

    background:#F59E0B;

    color:#ffffff !important;

    text-decoration:none;

    border-radius:12px;

    font-family:'Poppins',sans-serif;

    font-size:18px;

    font-weight:700;

    line-height:1.2;

    box-shadow:
        0 8px 25px rgba(245,158,11,.30);

    transition:.3s ease;

}


/* ICONO WHATSAPP */

.promo-boton-whatsapp i{

    font-size:24px;

}


/* EFECTO HOVER */

.promo-boton-whatsapp:hover{

    transform:translateY(-3px);

    background:#D97706;

    color:#ffffff;

    box-shadow:
        0 12px 30px rgba(245,158,11,.45);

}


/* ===================================== */
/* BOTÓN CERRAR */
/* ===================================== */

.promo-cerrar{

    position:absolute;

    top:-16px;

    right:-16px;

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

    background:#ffffff;

    color:#0B1E3F;

    font-size:30px;

    line-height:1;

    font-weight:400;

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    z-index:2;

    box-shadow:
        0 5px 20px rgba(0,0,0,.30);

    transition:.25s ease;

}


.promo-cerrar:hover{

    transform:scale(1.08);

    background:#F59E0B;

    color:#ffffff;

}


/* ===================================== */
/* ANIMACIÓN DE ENTRADA */
/* ===================================== */

@keyframes promoFadeIn{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}


@keyframes promoZoomIn{

    from{

        opacity:0;

        transform:scale(.92);

    }

    to{

        opacity:1;

        transform:scale(1);

    }

}


/* ===================================== */
/* TABLET Y CELULAR */
/* ===================================== */

@media(max-width:768px){

    .promo-modal{

        padding:15px;

    }


    .promo-modal-contenido{

        max-width:92vw;

        max-height:94vh;

    }


    .promo-imagen-modal{

        max-width:92vw;

        max-height:75vh;

        border-radius:14px;

    }


    .promo-boton-whatsapp{

        max-width:92vw;

        padding:15px 20px;

        font-size:17px;

        border-radius:11px;

    }


    .promo-boton-whatsapp i{

        font-size:22px;

    }


    .promo-cerrar{

        top:-10px;

        right:-8px;

        width:38px;

        height:38px;

        font-size:27px;

    }

}


/* ===================================== */
/* CELULARES PEQUEÑOS */
/* ===================================== */

@media(max-width:400px){

    .promo-modal{

        padding:10px;

    }


    .promo-modal-contenido{

        max-width:94vw;

    }


    .promo-imagen-modal{

        max-width:94vw;

        max-height:72vh;

        border-radius:12px;

    }


    .promo-boton-whatsapp{

        max-width:94vw;

        margin-top:10px;

        padding:13px 15px;

        font-size:16px;

    }


    .promo-boton-whatsapp i{

        font-size:21px;

    }


    .promo-cerrar{

        width:36px;

        height:36px;

        font-size:25px;

    }

}