:root{

    --primary:#00B7F0;
    --primary-dark:#003554;

    --secondary:#04ABE2;
    --tertiary:#93DBF2;

    --orange:#F9B400;

    --dark:#07263B;

    --light:#F7F7F7;

    --white:#FFFFFF;

    --text:#1E1E1E;

    --radius:20px;

    --shadow:
        0px 10px 30px rgba(0,0,0,.10);

}
html{
    scroll-behavior:smooth;
    scroll-padding-top:100px;
}

body{
    font-family:'Montserrat', sans-serif;
}

html,
body{
    overflow-x:hidden;
}

/* ===================================
   HEADER
=================================== */

.site-header{

    position: fixed;
    top:0;
    left:0;

    width:100%;
    z-index:9999;

    transition:.3s ease;

}

.site-header.scrolled{

    background:#FFFFFF;

    box-shadow:
        0 10px 30px rgba(0,0,0,.08);

}

.navbar{

    padding:20px 0px 15px 0px;

}

.logo{

    height:55px;
    width:auto;

}

.nav-link{

    font-size:.95rem;
    font-weight:600;

    color:var(--dark);

    margin-left:10px;

    padding:10px 18px !important;

    border-radius:50px;

    transition:all .3s ease;

}

/* Hover */

.nav-link:hover{

    background:var(--dark);

    color:#ffffff;

}

/* Activo */

.nav-link.active{

    background:#E9ECEF;

    color:var(--dark);

}

.btn-primary-custom{

    background:var(--primary);

    color:#FFF;

    border:none;

    padding:12px 28px;

    border-radius:50px;

    font-weight:700;

    text-decoration:none;

    transition:.3s;

}

.btn-primary-custom:hover{

    background:var(--primary-dark);

    color:#FFF;

}

.navbar-toggler i{

    font-size:2rem;

    color:var(--dark);

}

/* ===================================
   DECORATIVE LINES
=================================== */

.section-lines{

    display:flex;
    justify-content:flex-end;
    gap:12px;

    margin-top:5px;
    position: absolute;
    right: 0;

}

.line-small{

    width:50px;
    height:10px;

    background:var(--tertiary);

    border-radius:50px;

}

.line-medium{

    width:100px;
    height:10px;

    background:var(--secondary);

    border-radius:50px;

}

.line-large{

    width:150px;
    height:10px;

    background:var(--dark);

    border-radius:50px 0 0 50px;

}

.section-lines-left{
    display:flex;
    justify-content:flex-start;
    gap:12px;
}

.section-lines-center{
    display:flex;
    justify-content:center;
    gap:12px;
}

/* ===================================
   HERO
=================================== */

.hero-section{
    position:relative;
    min-height:754px;
    padding-top:95px;
    overflow:hidden;
    background:#ffffff;
}

.min-vh-hero{
    min-height:610px;
}

/* Carrusel como fondo */
.hero-swiper{
    position:absolute;
    top:95px;
    right:0;
    bottom:0;

    width:72%;
    height:calc(100% - 110px);

    z-index:1;

    border-top-right-radius:0px;
    border-bottom-right-radius:0px;

    overflow:hidden;
}

.hero-swiper .swiper-wrapper,
.hero-swiper .swiper-slide{
    width:100%;
    height:100%;
}

.hero-slide{
    width:100%;
    height:100%;

    background-size:cover;
    background-position:center right;
    background-repeat:no-repeat;
}

/* Degradado */
.hero-bg-overlay{
    position:absolute;
    top:95px;
    right:0;
    bottom:0;

    width:72%;
    height:calc(100% - 110px);

    background:linear-gradient(
        90deg,
        rgba(255,255,255,1) 0%,
        rgba(255,255,255,.95) 15%,
        rgba(255,255,255,.70) 25%,
        rgba(255,255,255,.20) 35%,
        rgba(255,255,255,0) 45%
    );

    border-top-right-radius:0px;
    border-bottom-right-radius:0px;

    z-index:2;

    pointer-events:none;
}

.hero-content{
    position:relative;
    z-index:3;
}

.hero-badge{
    display:inline-block;
    background:#EAF8FF;
    color:var(--primary);
    padding:10px 20px;
    border-radius:50px;
    font-size:.85rem;
    font-weight:600;
    margin-bottom:25px;
}

.hero-title{
    font-size:3rem;
    font-weight:800;
    line-height:1.1;
    color:var(--dark);
    margin-bottom:25px;
}

.hero-description{
    font-size:1.1rem;
    line-height:1.8;
    color:#5f6874;
    margin-bottom:35px;
}

.hero-buttons{
    display:flex;
    gap:15px;
    flex-wrap:wrap;
}








/* ===================================
   TECNOLOGÍA DE CÓMPUTO
=================================== */

.computo-section{

    background:
        linear-gradient(
            90deg,
            #041826 0%,
            #07263B 45%,
            #0A3149 100%
        );

    padding:90px 0 70px;

    overflow:hidden;
        margin-top: -15px;
    position: relative;

}

.computo-title{
    text-align:center;
    color:#fff;
    font-size:42px;
    font-weight:900;
    letter-spacing:1px;
    margin-bottom:45px;
}

.computo-slider-wrapper{
    width:100vw;
    overflow:hidden;
}

.computoSwiper{
    width:100vw;
    overflow:hidden;
    padding-bottom:0px;
}

.computoSwiper .swiper-wrapper{
    display:flex;
    align-items:flex-start;
    transition:transform .6s ease;
}

/* Cada slide mide 60% */
.computoSwiper .swiper-slide{
    width:50vw !important;
    flex-shrink:0;
    opacity:.55;
    cursor:pointer;
    transition:
        opacity .45s ease,
        transform .45s ease;
}

/* Slide activo */
.computoSwiper .swiper-slide.is-active{
    opacity:1;
    z-index:3;
}

/* Card */
.computo-card{
    width:96%; /* 92% */
    margin:0 auto;
    padding:0;
}

.computo-img{
    position:relative;
    width:100%;
    height:340px;
    border-radius:42px;
    overflow:hidden;
}

.computo-img::before{
    content:'';
    position:absolute;
    inset:0;
    /*background:rgba(0,45,65,.55);*/
    z-index:1;
}

.computo-img img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.computo-label{
    position:absolute;
    left:25%;
    top:50%;
    transform:translate(-50%, -50%);
    z-index:2;

    color:rgba(255,255,255,.68);
    font-size:52px;
    font-weight:900;
    white-space:nowrap;
}

.computoSwiper .swiper-slide.is-active .computo-label{
    font-size:70px;
}

.computo-content{
    color:#fff;
    padding:28px 35px 0;
}

.computo-content h3{
    font-size:24px;
    font-weight:800;
    text-transform:uppercase;
    line-height:1.18;
    margin-bottom:18px;
}

.computo-content p{
    font-size:16px;
    line-height:1.5;
    color:rgba(255,255,255,.85);
    margin-bottom:28px;
}

.btn-computo{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:260px;
    height:44px;

    background:#E6E6E6;
    color:#222;

    border-radius:50px;
    text-decoration:none;
    font-weight:500;

    transition:.3s ease;
}

.btn-computo:hover{
    background:#00B7F0;
    color:#fff;
}

/* Paginación manual */
.computo-pagination{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:35px;
}

.computo-dot{
    width:42px;
    height:10px;
    border-radius:20px;
    background:#8EDFF2;
    border:0;
    opacity:1;
    cursor:pointer;
    transition:.3s ease;
}

.computo-dot.is-active{
    width:95px;
    background:#00B7F0;
}









/* ===================================
   04. SEGURIDAD ELECTRÓNICA
=================================== */

.security-section{
    position:relative;
    overflow:hidden;
    background:#12add6;
    min-height:700px;
}

.min-vh-security{
    min-height:700px;
}

.security-content{
    max-width:700px;
    padding-left:70px;
    position:relative;
    z-index:3;
}

.security-content h2{
    margin:0 0 35px;
    font-size:48px;
    line-height:1.15;
    font-weight:900;
    color:#030b18;
    letter-spacing:.5px;
}

.security-content p{
    margin:0 0 38px;
    font-size:18px;
    line-height:1.45;
    max-width:520px;
    font-weight:500;
    color:#ffffff;
}

.security-list{
    list-style:none;
    padding:0;
    margin:0 0 62px;
}

.security-list li{
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:13px;
     font-size:18px;
    line-height:1.4;
    font-weight:500;
    color:#ffffff;
}

.security-list li span{
    width:0;
    height:0;
    flex:0 0 auto;
    border-top:13px solid transparent;
    border-bottom:13px solid transparent;
    border-left:20px solid #062942;
    border-radius:4px;
}

.btn-security{
        display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 298px;
    height: 55px;
    padding: 0 0px;
    border: 2px solid #ffffff;
    border-radius: 50px;
    color: #071a2e;
    font-size: 20px;
    font-weight: 500;
    text-decoration: none;
    transition: .25s ease;
}

.btn-security:hover{
    background:#ffffff;
    color:#062942;
    transform:translateY(-2px);
}

/* Imagen derecha */
.security-image-wrap{
    position:relative;
    min-height:620px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.security-blob{
    position:absolute;
    border-radius:42% 58% 58% 42% / 48% 45% 55% 52%;
    pointer-events:none;
}

.security-blob-one{
    width:760px;
    height:760px;
    right:-100px;
    top:-110px;
    background:rgba(164,224,239,.55);
    z-index:1;
}

.security-blob-two{
    width:555px;
    height:555px;
    right:20px;
    top:58px;
    background:rgba(203,239,247,.65);
    z-index:2;
}

.security-shield{
    display: none;
    position:absolute;
    width:380px;
    height:400px;
    right:160px;
    top:165px;
    background:rgba(220,247,252,.85);
    clip-path:polygon(
        50% 0%,
        100% 18%,
        93% 62%,
        72% 88%,
        50% 100%,
        28% 88%,
        7% 62%,
        0% 18%
    );
    z-index:3;
}

.security-camera{
    position:relative;
    z-index:4;
    width:270px;
    max-width:90%;
    height:auto;
    transform:translate(15px, 45px);
    filter:drop-shadow(0 20px 25px rgba(0,0,0,.18));
}













/* ===================================
REDES Y TELECOMUNICACIONES
=================================== */

/* ===================================
REDES Y TELECOMUNICACIONES
=================================== */

.network-section{
    background:#EAF5FA;
    padding:110px 0;
}

.section-badge{
    display:inline-block;
    padding:12px 30px;
    border:2px solid var(--primary);
    border-radius:50px;
    color:var(--primary);
    font-weight:700;
    margin-bottom:20px;
}

.section-title{
    font-size:3rem;
    font-weight:800;
    color:var(--primary-dark);
}

.section-subtitle{
    max-width:850px;
    margin:auto;
    font-size:1.1rem;
}

.network-card{
    position:relative;
    background:#fff;
    border-radius:25px;
    padding:50px;
    height:100%;
    overflow:visible;
    box-shadow:0 15px 35px rgba(0,0,0,.06);
}

.network-header{
    position:relative;
    min-height:115px;
    padding-left:115px;
    margin-bottom:15px;
}

.network-icon{
    position:absolute;
    top:-85px;
    left:-60px;

    width:120px;
    height:120px;
    border-radius:50%;
    background:#F8B300;

    display:flex;
    align-items:center;
    justify-content:center;
}

.network-icon img{
    width:70px;
}

.network-title h3{
    font-size:2rem;
    font-weight:800;
    line-height:1.1;
    color:#091F34;
    margin:0;
}

.title-line{
    width:80px;
    height:5px;
    background:#00B8F1;
    border-radius:20px;
    margin:20px 0 0;
}

.network-card p{
    color:#444;
    line-height:1.8;
}

.network-list{
    list-style:none;
    padding:0;
    margin:30px 0;
}

.network-list li{
    display:flex;
    gap:15px;
    margin-bottom:18px;
}

.network-list i{
    color:#00B8F1;
    font-size:1.3rem;
}

.btn-network{
    display:inline-block;
    background:#062D4B;
    color:#fff;
    text-decoration:none;
    font-weight:700;
    padding:14px 35px;
    border-radius:50px;
    transition:.3s;
}

.btn-network:hover{
    background:#00B8F1;
    color:#fff;
}

.network-features{
    margin-top:50px;
    background:#8EDAF6;
    border-radius:25px;
    padding:25px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.feature-item{
    display:flex;
    align-items:center;
    gap:15px;
}

.feature-item i{
    font-size:2rem;
    color:#062D4B;
}

.feature-item span{
    font-weight:700;
    color:#062D4B;
}









/* ===================================
   07. EQUIPOS Y SUMINISTROS
=================================== */

.equipment-section{
    padding:90px 0 100px;
    background:#ffffff;
}

.equipment-section .section-heading{
    margin-bottom:45px;
}

.equipment-section .section-heading h2{
    font-size:42px;
    line-height:1.18;
    font-weight:900;
    color:#0b2f4a;
    letter-spacing:.5px;
    margin:0;
}

.equipment-wrapper{
    max-width:1120px;
    margin:0 auto;
}

.equipment-left{
    height:100%;
}

.equipment-intro{
    background:#f1f1f1;
    border-radius:18px;
    padding:26px 30px;
    margin-bottom:22px;
}

.equipment-intro h3{
    font-size:26px;
    font-weight:900;
    color:#050505;
    margin-bottom:10px;
}

.equipment-intro p{
    font-size:20px;
    line-height:1.35;
    color:#111111;
    margin:0;
}

.equipment-menu{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.equipment-item{
    width:100%;
    border:0;
    background:transparent;
    padding:12px 26px;
    min-height:52px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    font-size:23px;
    font-weight:900;
    line-height:1.15;
    color:#050505;
    text-align:left;

    border-radius:16px;
    transition:.25s ease;
    cursor:pointer;
}

.equipment-item i{
    color:#777777;
    font-size:24px;
    font-weight:700;
    transition:.25s ease;
}

.equipment-item:hover{
    background:#f5fbff;
}

.equipment-item.active{
    background:#eefaff;
    border:2px solid #ded7d7;
    box-shadow:0 2px 0 rgba(0,0,0,.02);
}

.equipment-item.active i{
    color:#6b6b6b;
}

.equipment-detail{
    height:100%;
    border:2px solid #ded7d7;
    border-radius:20px;
    padding:42px 42px 28px;
    background:#ffffff;

    display:flex;
    flex-direction:column;
    justify-content:center;
}

.equipment-detail h3{
    font-size:25px;
    line-height:1.2;
    font-weight:900;
    color:#050505;
    margin-bottom:26px;
}

.equipment-detail p{
    font-size:21px;
    line-height:1.45;
    color:#101010;
    margin-bottom:26px;
}

.equipment-image{
    border-radius:16px;
    overflow:hidden;
    margin-bottom:22px;
}

.equipment-image img{
    width:100%;
    height:190px;
    object-fit:cover;
    display:block;
}

.btn-equipment{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:230px;
    height:50px;

    background:#f5a400;
    color:#081f33;

    border-radius:50px;
    border:2px solid #d8d8d8;

    font-size:18px;
    font-weight:500;
    text-decoration:none;

    transition:.25s ease;
}

.btn-equipment:hover{
    background:#0b2f4a;
    color:#ffffff;
    transform:translateY(-2px);
}

/* Responsive */
@media(max-width:991px){

    .equipment-section{
        padding:70px 0;
    }

    .equipment-section .section-heading h2{
        font-size:32px;
    }

    .equipment-item{
        font-size:19px;
    }

    .equipment-detail{
        padding:32px 28px;
    }

    .equipment-detail h3{
        font-size:23px;
    }

    .equipment-detail p{
        font-size:18px;
    }

}

@media(max-width:575px){

    .equipment-section .section-heading h2{
        font-size:26px;
    }

    .equipment-intro{
        padding:22px;
    }

    .equipment-intro h3{
        font-size:22px;
    }

    .equipment-intro p{
        font-size:17px;
    }

    .equipment-item{
        font-size:16px;
        padding:12px 16px;
    }

    .equipment-detail{
        padding:26px 20px;
    }

    .equipment-detail p{
        font-size:16px;
    }

    .btn-equipment{
        min-width:200px;
        font-size:16px;
    }

}







/* ===================================
Proyectos
==================================== */
/* ===================================
   FORMULARIO DE PROYECTOS
=================================== */

.project-section{

    padding:100px 0;

    background:#f7fbfe;

    position:relative;

    overflow:hidden;

}

.section-title{

    font-size:2.5rem;

    font-weight:800;

    color:#0c2d48;

}

.section-subtitle{

    font-size:1.1rem;

    color:#666;

    margin-top:10px;

}

/* ===================================
   CATEGORIAS
=================================== */

.solution-card{

    width:100%;

    height:100%;

    border:1px solid #cfe7f5;

    border-radius:18px;

    background:#fff;

    padding:30px 20px;

    cursor:pointer;

    transition:.3s;

    text-align:center;

}

.solution-card:hover{

    transform:translateY(-5px);

    box-shadow:
        0 15px 30px rgba(0,0,0,.08);

}

.solution-card.active{

    border:2px solid #f3b021;

    background:#fff7e5;

}

.solution-card i{

    font-size:3rem;

    color:#0c2d48;

    margin-bottom:15px;

}

.solution-card h5{

    font-weight:700;

    color:#0c2d48;

    margin-bottom:10px;

}

.solution-card p{

    font-size:.9rem;

    line-height:1.4;

    color:#666;

    margin:0;

}

/* ===================================
   CONTENEDOR FORMULARIO
=================================== */

.project-form-box{

    position:relative;

    margin-top:50px;

    padding:40px;

    background:#f5fbff;

    border:1px solid #bde2f7;

    border-radius:25px;

    overflow:hidden;

}

/* CIRCULOS DECORATIVOS */

.project-form-bg{

    position:absolute;

    border-radius:50%;

    background:rgba(100,200,255,.15);

    z-index:1;

}

.project-form-bg-1{

    width:220px;
    height:220px;

    top:-60px;
    right:-60px;

}

.project-form-bg-2{

    width:180px;
    height:180px;

    bottom:-50px;
    right:-50px;

}

/* ===================================
   TITULO
=================================== */

.project-form-title{

    display:flex;

    align-items:center;

    gap:20px;

    margin-bottom:30px;

    position:relative;

    z-index:2;

}

.project-title-icon{

    width:70px;
    height:70px;

    border-radius:12px;

    background:#8fd8ff;

    display:flex;

    align-items:center;

    justify-content:center;

}

.project-title-icon i{

    font-size:2rem;

    color:#0c2d48;

}

.project-form-title h3{

    font-size:2rem;

    font-weight:800;

    color:#000;

    margin-bottom:5px;

}

.project-form-title p{

    margin:0;

    color:#666;

}

.project-question{

    position:absolute;

    right:-140px;
    top:-60px;

    font-size:800px;

    font-weight:900;

    color:#b9e6f8;

    opacity:.35;

    z-index:1;

    line-height:.8;

}
.catego{width: 20% !important;}

/* ===================================
   FORMULARIOS
=================================== */

#projectForm{

    position:relative;

    z-index:2;

}

.form-label{

    font-weight:600;

    color:#1d1d1d;

    margin-bottom:8px;

}

.form-label i{

    color:#555;

    margin-right:6px;

}

.form-control,
.form-select{

    height:55px;

    border-radius:12px;

    border:1px solid #d8e3ec;

    font-size:.95rem;

}

.form-control:focus,
.form-select:focus{

    border-color:#00b7f0;

    box-shadow:none;

}

textarea.form-control{

    height:auto;

    min-height:130px;

    resize:none;

    padding-top:15px;

}

/* ===================================
   TELEFONO
=================================== */

.phone-group{

    display:flex;

    gap:10px;

}

.phone-code{

    width:110px;

    flex-shrink:0;

}

/* ===================================
   TEXTO SEGURIDAD
=================================== */

.project-secure-text{

    text-align:center;

    margin-top:25px;

    color:#8a8a8a;

    font-size:.9rem;

}

.project-secure-text i{

    margin-right:6px;

}

/* ===================================
   BOTON
=================================== */

.btn-project-submit{

    background:#0b2d49;

    color:#fff;

    border:none;

    border-radius:40px;

    padding:14px 35px;

    font-size:1rem;

    font-weight:600;

    transition:.3s;

}

.btn-project-submit:hover{

    background:#144a74;

    transform:translateY(-2px);

}

.btn-project-submit i{

    margin-right:8px;

}

/* ===================================
   RESPONSIVE
=================================== */

@media (max-width:991px){

    .project-form-title{

        flex-direction:column;

        text-align:center;

    }

    .project-form-title h3{

        font-size:1.6rem;

    }

}

@media (max-width:768px){

    .project-section{

        padding:70px 0;

    }

    .project-form-box{

        padding:25px;

    }

    .section-title{

        font-size:2rem;

    }

    .phone-group{

        flex-direction:column;

    }

    .phone-code{

        width:100%;

    }

}



/* ===================================
   11. NOSOTROS + CONTACTO
=================================== */

.about-contact-section{
    position:relative;
    overflow:hidden;
    background:#90d8ea;
    padding:105px 0 95px;
}

.about-bg-text{
    position:absolute;
    left:35px;
    bottom:45px;
    z-index:1;
    user-select:none;
    pointer-events:none;
}

.about-bg-text img{
    width:670px;
    height:auto;
    opacity:.20;
}

.about-contact-section .container{
    position:relative;
    z-index:2;
}

.about-title,
.contact-title{
    color:#0b3554;
    font-size:2.55rem;
    font-weight:900;
    letter-spacing:.5px;
    margin-bottom:35px;
}

.about-box,
.contact-form-wrap{
    position:relative;
    padding-left:48px;
}

.vertical-line{
    position:absolute;
    left:0;
    top:0;
    width:9px;
    height:100%;
    background:#0bb6e4;
}

.about-box p{
    color:#0c2535;
    font-size:1.42rem;
    line-height:1.23;
    font-weight:400;
    max-width:720px;
    margin:0;
}

.pm-contact-form{
    width:100%;
}

.pm-contact-form .form-control{
    height:58px;
    border:none;
    border-radius:12px;
    background:#ffffff;
    color:#0b3554;
    padding:0 28px;
    font-size:1rem;
    font-weight:500;
    box-shadow:none;
}

.pm-contact-form .form-control::placeholder{
    color:#36566c;
    opacity:1;
}

.pm-contact-form textarea.form-control{
    height:122px;
    padding-top:20px;
    resize:none;
}

.pm-contact-form .form-control:focus{
    outline:none;
    box-shadow:0 0 0 4px rgba(11,182,228,.20);
}

.contact-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:18px;
}

.recaptcha-placeholder{
    width:80px;
    height:62px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.recaptcha-placeholder img{
    max-width:100%;
    height:auto;
    border-radius: 15px;
    opacity: 0.5;
}

.btn-contact-submit{
    min-width:300px;
    height:50px;
    border:none;
    border-radius:35px;
    background:#0b3554;
    color:#ffffff;
    font-size:1.05rem;
    font-weight:normal;
    letter-spacing:.4px;
    transition:.3s ease;
}

.btn-contact-submit:hover{
    background:#06263d;
    transform:translateY(-2px);
}

.form-response{
    display:none;
    padding:12px 16px;
    border-radius:10px;
    font-weight:600;
}

.form-response.success{
    display:block;
    background:#e8f8ef;
    color:#16794c;
}

.form-response.error{
    display:block;
    background:#fdecec;
    color:#b42318;
}



/* ===================================
   FOOTER
=================================== */

.footer{

    background:#07263B;
    color:#FFF;

    padding:80px 0 0;

}

.footer-logo{

    height:65px;
    width:auto;

}

.footer-text{

    color:rgba(255,255,255,.75);
    line-height:1.8;

}

.footer-title{

    font-size:1.1rem;
    font-weight:700;

    margin-bottom:20px;

}

.footer-links{

    list-style:none;
    padding:0;
    margin:0;

}

.footer-links li{

    margin-bottom:12px;

}

.footer-links a{

    text-decoration:none;
    color:rgba(255,255,255,.75);

    transition:.3s;

}

.footer-links a:hover{

    color:var(--primary);

}

.footer-contact{

    list-style:none;
    padding:0;
    margin:0;

}

.footer-contact li{

    margin-bottom:15px;

    display:flex;
    align-items:flex-start;
    gap:10px;

}

.footer-contact i{

    color:var(--primary);

}

.footer-social{

    display:flex;
    gap:15px;

}

.footer-social a{

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    color:#FFF;

    text-decoration:none;

    transition:.3s;

}

.footer-social a:hover{

    background:var(--primary);

}

.footer-bottom{

    margin-top:60px;

    border-top:
        1px solid rgba(255,255,255,.1);

    padding:25px 0;

    color:rgba(255,255,255,.60);

    font-size:.9rem;

}


@media(max-width:991px){

    .hero-section{

        text-align:center;

        padding-top:120px;

    }

    .hero-title{

        font-size:2.3rem;

    }

    .hero-buttons{

        justify-content:center;

    }

    .hero-image-wrapper{

        margin-top:40px;

    }

}