*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior: smooth;
}

body{
    font-family:'Poppins',sans-serif;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

/* ============TOPBAR====================== */

/* email */
.email-icon{
    display: inline-block;
}

.email-icon:hover{
    animation: bounceMail .5s ease;
}

@keyframes bounceMail{

    0%{
        transform: translateY(0);
    }

    30%{
        transform: translateY(-6px);
    }

    60%{
        transform: translateY(2px);
    }

    100%{
        transform: translateY(0);
    }

}

/* phone and icons */
 .social-ic{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:0px 10px;
    
}
 

.social-ic i{

    margin: auto;

}



.social-ic a{
    height: 42px;
    width: 42px;
    padding:0px 7px;
    /* border: 1px solid white; */
    border-radius: 50%;
    display: inline-block;
    justify-content:center;
    align-items:center;
    text-align: center;
    margin-right: 10px;
    line-height: 42px;
    background:#0d6efd;
    color:white;

    transition:.3s;

    
}

.social-ic a:hover{

    background:white;

    color:#0d6efd;

}

.shake:hover{
    animation: shake 0.5s;
}

@keyframes shake{

    0%{
        transform: translateX(0);
    }

    25%{
        transform: translateX(-4px);
    }

    50%{
        transform: translateX(4px);
    }

    75%{
        transform: translateX(-4px);
    }

    100%{
        transform: translateX(0);
    }

}

/* ================= NAVBAR ================= */

.navbar{
    padding:15px 0;
    background:#fff;
    transition:0.4s;
    z-index:999;
}

.navbar-nav{
    gap:20px;
}

.logo{
    max-height:75px;
    width:auto;
    object-fit:contain;
}

.navbar-nav .nav-link{
    position:relative;
    color:rgb(30,98,126) !important;
    font-weight:500;
    padding-bottom:6px;
}

.navbar-nav .nav-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:0;
    height:3px;
    background:#0d6efd;
    border-radius:10px;
    transition:width .35s ease;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
    width:100%;
}

.btn-primary{
    border-radius:40px;
    padding:12px 28px;
    margin-left:30px;
}

/* ================= HERO SECTION ================= */

.hero{
    min-height:110vh;
    background-image:url("../images/hero-bg.jpg");
    background-size:cover;
    background-position:center 25%;
    background-repeat:no-repeat;
    position:relative;
}

.hero-overlay{
    width:100%;
    height:100%;
    background: linear-gradient(
    90deg,
    rgba(5,18,55,0.75) 0%,
    rgba(5,18,55,0.55) 35%,
    rgba(5,18,55,0.15) 70%,
    rgba(5,18,55,0.05) 100%
    );
    display:flex;
    align-items:center;
}

.hero-content{
    max-width:600px;
    padding-top:140px;
}

.hero h1{
    font-size:clamp(2.2rem, 6vw, 4.5rem);
    font-weight:700;
    color:white;
    line-height:1.05;
    
    opacity:0;
    transform:translateX(-80px);
    animation:slideLeft 1s ease forwards;
}

.hero span{
    color:rgb(13, 110, 253);
    text-shadow: -4px 0px 0px rgba(8, 11, 99, 0.5);
}

.hero p{
    font-size:20px;
    color: #f5f5f5;;
    margin:30px 0;

    opacity:0;
    transform:translateX(-80px);
    animation:slideLeft 1s ease forwards;
    animation-delay:.4s;
}

.hero-btns{
    display:flex;
    gap:20px;

    opacity:0;
    transform:translateX(-80px);
    animation:slideLeft 1s ease forwards;
    animation-delay:.8s;
}

@keyframes slideLeft{

    from{
        opacity:0;
        transform:translateX(-80px);
    }

    to{
        opacity:1;
        transform:translateX(0);
    }

}

.hero-btns .btn{
    padding:10px 38px;
    border-radius:50px;
    font-size: 18px;
    margin: 0px 10px;
}

/* ================= SERVICES ================= */

.services{
    margin-top:-60px;
    position:relative;
    z-index:10;
}

.service-card{
    background:#fff;
    border-radius:18px;
    padding:40px 25px;
    text-align:center;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:all .4s ease;
    height:100%;
    border-top:4px solid transparent;
}

.service-card:hover{
    transform:translateY(-12px);
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;
}

.service-card i{
    font-size:45px;
    color:#0d6efd;
    margin-bottom:25px;
    transition:all .4s ease;
}

.service-card:hover i{
    transform:scale(1.15);
}

.service-card h4,
.service-card h5{
    font-weight:700;
    margin-bottom:15px;
}

.service-card p{
    color:#666;
    font-size:15px;
    line-height:1.7;
}

.service-details
.service-box i{
    font-size:20px;
    color:#0d6efd;
    margin-bottom:20px;
    text-align:start;
}

.service-details
.service-box{
    background:#fff;
    border-radius:18px;
    padding:40px 30px;
    text-align:start;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.4s;
    height:100%;
}

/* .service-image{
    width:100%;
    height:450px;
    object-fit:cover;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
} */

/* .service-image-card{
    margin: 100px 0 0 auto;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
} */

/* .service-image{
    max-width:100%;
    border-radius:12px;
} */

.service-images{
    position: relative;
    width: 100%;
    height: 700px;   /* Adjust as needed */
}

.img-main{
    height: 400px;
    /* width: 500px; */
    max-width: 100%;
    border-radius: 15px;
    position: absolute;
    top: 107px;
    left: 0;
    z-index: 1;
    box-shadow: 0 10px 30px #0d6efd;
}

.img-small{
    height: 400px;
    width: 100%;
    position: absolute;
    bottom: -70px;
    right: 195px;
    border-radius: 15px;
    /* border: 8px solid #fff; */
    z-index: 2;
    box-shadow: 0 10px 30px #0d6efd;
}

/*===========ABOUT SECTION==================*/

.about-section{
    padding:100px 0;
    background:#fff;
    
}

.section-subtitle{
    color:#0d6efd;
    font-weight:600;
    letter-spacing:1px;
}

.section-title{
    font-size:42px;
    font-weight:700;
    margin:15px 0;
}

.section-text{
    color:#666;
    line-height:1.8;
    margin-bottom:30px;
}

.about-feature{
    display:flex;
    align-items:center;
    margin-bottom:18px;
    font-size:17px;
}

.about-feature i{
    color:#0d6efd;
    margin-right:15px;
    font-size:22px;
}



.about-img{
    /* max-width: 800px; */
    width: 100%;
    /* height: 600px; */
    display: block;
    margin: auto;
    transition: .5s;
    
    
}

.about-img:hover{
    transform: scale(1.03);
}


/* ================= WHY CHOOSE ================= */

.why-choose{

    padding:100px 0;

}

.feature-box{

    display:flex;

    align-items:flex-start;

    gap:25px;

    background:white;

    padding:25px;

    border-radius:18px;

    margin-bottom:25px;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    transition:.3s;

}

.feature-box:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 35px rgba(0,0,0,.12);

    /* transform:translateY(-12px); */
    /* box-shadow:0 20px 35px rgba(13,110,253,.18); */
    border-top:4px solid #0d6efd;

}

.feature-box i{

    width:70px;

    height:70px;

    background:#eef5ff;

    color:#0d6efd;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:28px;

    flex-shrink:0;

}

.feature-box h5{

    font-weight:600;

}

.feature-box p{

    color:#666;

    margin-bottom:0;

}


/* ==============STATISTICS=====================*/

.stats-section{

    padding-bottom:90px;

}

.stats-card{

    background:#0d2d63;

    border-radius:25px;

    padding:60px 20px;

    color:white;

    box-shadow:0 20px 45px rgba(0,0,0,.15);

}

.stat-item i{

    width:70px;

    height:70px;

    line-height:70px;

    border-radius:50%;

    background:rgba(255,255,255,.15);

    font-size:30px;

    margin-bottom:20px;

}

.stat-item h2{

    font-size:48px;

    font-weight:700;

    margin-bottom:10px;

}

.stat-item p{

    margin:0;

    font-size:18px;

    color:#d8e7ff;

}

/*===============PARTNERS==================*/

.partners{

    padding:80px 0;

    background:#fff;

}

.partner-logo{

    width:120px;

    filter:grayscale(100%);

    opacity:1;

    transition:.4s;

}

.partner-logo:hover{

    filter:none;

    opacity:1;

    transform:scale(1.08);

}



/*============PAGE BANNER=============*/

.page-banner{
    background:
        linear-gradient(
            to right,
            rgba(13,45,99,.85) 0%,
            rgba(13,45,99,.70) 30%,
            rgba(13,45,99,.40) 60%,
            rgba(13,45,99,.15) 100%
        ),
        url("../images/ab1.jpeg");

    background-size: cover;
    background-position:center center;
    background-repeat: no-repeat;

    min-height: 500px;
    display: flex;
    align-items: center;
    color: #fff;
}

.page-banner h1{
    font-size:52px;
    font-weight:700;
    text-align: start;
}

.page-banner p{
    font-size:18px;
    margin-top:10px;
    text-align: start;
}

/* ============vision_mission================= */
.vm-card{

    background:#fff;

    padding:40px;

    border-radius:20px;

    text-align:center;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

    transition:.3s;
}

.vm-card:hover{

    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;

}

.vm-card i{

    font-size:50px;

    color:#0d6efd;

    margin-bottom:20px;

}

.vm-card h3{

    font-weight:700;

    margin-bottom:20px;

}

.vm-card p{
    color:#666;
    line-height:1.8;
    margin:0;
}

/* =================core_value=========================== */
.value-card{
    background:#fff;
    padding:35px 30px;
    border-radius:18px;
    text-align:center;
    height:100%;
    transition:.35s;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.value-card:hover{
    transform:translateY(-10px);
    /* box-shadow:0 18px 40px rgba(13,110,253,.15); */
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;
}

.value-card i{
    /* width:75px;
    height:75px;
    margin:0 auto 20px;
    border-radius:50%;
    background:#eef5ff;
    color:#0d6efd;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:32px; */

    font-size:50px;

    color:#0d6efd;

    margin-bottom:20px;
}

.value-card h4{
    /* color:#082c6c;
    font-weight:600;
    margin-bottom:15px; */

    font-weight:700;

    margin-bottom:20px;
}

.value-card p{
    color:#666;
    line-height:1.8;
    margin:0;
}


/*==========================
      WHAT WE DO
==========================*/

.what-we-do{
    padding:100px 0;
    background:#ffffff;
}

.service-box{
    background:#fff;
    border-radius:18px;
    padding:40px 30px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.4s;
    height:100%;
}

.service-box:hover{
    transform:translateY(-10px);
    /* box-shadow:0 20px 40px rgba(13,110,253,.18); */
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;
}

.service-box i{
    font-size:48px;
    color:#0d6efd;
    margin-bottom:20px;
}

.service-box h4{
    /* font-size:24px; */
    font-weight:700;
    margin-bottom:15px;
}

.service-box p{
    color:#666;
    line-height:1.7;
    margin-bottom:0;
}

/*==========================
    WHY CHOOSE ABOUT
==========================*/

.why-about{
    padding:100px 0;
    background:#f8f9fa;
}

.feature-card{
    background:#fff;
    padding:35px 25px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.feature-card:hover{
    transform:translateY(-10px);
    /* box-shadow:0 20px 40px rgba(13,110,253,.18); */
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;
}

.feature-card i{
    font-size:45px;
    color:#0d6efd;
    margin-bottom:20px;
}

.feature-card h5{
    font-size:22px;
    font-weight:700;
    margin-bottom:15px;
}

.feature-card p{
    color:#666;
    line-height:1.7;
}


/*==========================
      INDUSTRIES
==========================*/

.industries{
    padding:100px 0;
    background:#ffffff;
}

.industry-card{
    background:#fff;
    padding:35px 20px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.industry-card:hover{
    transform:translateY(-10px);
    /* box-shadow:0 20px 40px rgba(13,110,253,.18); */
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;
}

.industry-card i{
    font-size:45px;
    color:#0d6efd;
    margin-bottom:18px;
}

.industry-card h6{
    font-size:18px;
    font-weight:600;
    margin:0;
}

/*==========================
   COMPANY HIGHLIGHTS
==========================*/

.company-highlights{
    padding:100px 0;
    background:#f8f9fa;
}

.highlight-card{
    background:#fff;
    padding:35px 20px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.highlight-card:hover{
    transform:translateY(-10px);
    /* box-shadow:0 20px 40px rgba(13,110,253,.18); */
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;
}

.highlight-card i{
    font-size:45px;
    color:#0d6efd;
    margin-bottom:20px;
}

.highlight-card h2{
    font-size:36px;
    font-weight:700;
    color:#082c6c;
    margin-bottom:10px;
}

.highlight-card p{
    color:#666;
    margin:0;
    font-size:15px;
    font-weight:500;
}


/*==========================
        CTA SECTION
==========================*/

.cta-section{

    padding:90px 0;

    background:linear-gradient(
        rgba(8,44,108,.95),
        rgba(13,110,253,.92)
    );

    color:#fff;

}

.cta-subtitle{

    color:#cbdfff;

    letter-spacing:2px;

    font-weight:600;

}

.cta-section h2{

    font-size:42px;

    font-weight:700;

    margin:15px 0;

}

.cta-section p{

    font-size:18px;

    color:#f1f1f1;

    line-height:1.8;

}

.cta-btn{

    padding:14px 34px;

    border-radius:50px;

    margin:10px;

    font-weight:600;

    transition:.35s;

}

.cta-btn:hover{

    transform:translateY(-5px);

}


/*==========================
      CONTACT INFO
==========================*/

.contact-info{
    padding:100px 0;
    background:#fff;
}

.contact-card{

    background:#fff;

    padding:40px 25px;

    text-align:center;

    border-radius:18px;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

    height:100%;
}

.contact-card:hover{

    transform:translateY(-10px);

    /* box-shadow:0 20px 40px rgba(13,110,253,.18); */
    box-shadow:0 20px 40px rgba(13, 110, 253, 0.18);
    border-top:4px solid #0d6efd;

}

.contact-card i{

    font-size:45px;

    color:#0d6efd;

    margin-bottom:20px;

}

.contact-card h4{

    margin-bottom:15px;

    font-weight:700;

}

.contact-card p{

    color:#666;

    margin:0;

    line-height:1.8;

}


/*==========================
      CONTACT FORM
==========================*/

.contact-form-section{
    background:#f8f9fa;
    padding:100px 0;
}

.contact-form-box{
    background:#fff;
    padding:50px;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.contact-form-box .form-control,
.contact-form-box .form-select{
    height:55px;
    border-radius:10px;
    border:1px solid #ddd;
}

.contact-form-box textarea.form-control{
    height:auto;
}

.contact-form-box .form-control:focus,
.contact-form-box .form-select:focus{
    border-color:#0d6efd;
    box-shadow:none;
}

.contact-form-box button{
    border-radius:50px;
    font-weight:600;
}

/*==========================
        GOOGLE MAP
==========================*/

.google-map{

    width:100%;

    overflow:hidden;

}

.google-map iframe{

    width:100%;

    height:450px;

    border:none;

    display:block;

}


/*==========================
      QUOTE FORM
==========================*/

.quote-section{
    padding:100px 0;
    background:#f8f9fa;
}

.quote-box{
    background:#fff;
    padding:50px;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.quote-box .form-control,
.quote-box .form-select{
    height:55px;
    border-radius:10px;
}

.quote-box textarea{
    height:auto;
}

.quote-box button{
    border-radius:50px;
    font-weight:600;
}


/*==========================
         FOOTER
==========================*/

.footer{

    background:#082c6c;

    color:white;

    padding:70px 0 20px;

}

.footer-logo{

    width:80px;

    margin-bottom:20px;

}

.footer h5{

    margin-bottom:25px;

    font-weight:700;

}

.footer ul{

    list-style:none;

    padding:0;

}

.footer ul li{

    margin-bottom:12px;

}

.footer ul li a{

    color:#ddd;

    text-decoration:none;

}

.footer ul li a:hover{

    color:white;

}

.footer p{

    color:#ddd;

}

.footer i{

    margin-right:10px;
    margin-left:10px;

}

.social-icons{

    margin-top:25px;


}

.social-icons a{

    width:42px;

    height:42px;
    line-height: 42px;
    display:inline-block;
    text-align: center;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#0d6efd;

    color:white;

    margin-right:10px;

    transition:.3s;

    
}

.social-icons a:hover{

    background:white;

    color:#0d6efd;

}

.footer hr{

    margin:40px 0 20px;

    border-color:rgba(255,255,255,.2);

}













































































/*====================================================
        RESPONSIVE DESIGN - CARGONOVA
====================================================*/

/*==============================
      Large Desktop
===============================*/
@media (min-width:1400px){

    .container{
        max-width:1320px;
    }

    .hero-content{
        max-width:700px;
    }

    .hero h1{
        font-size:78px;
    }

    .section-title{
        font-size:46px;
    }

}


/*==============================
      Laptop (1200px)
===============================*/
@media (max-width:1200px){

    .hero-content{
        padding-top:150px;
    }

    .hero h1{
        font-size:60px;
    }

    .section-title{
        font-size:38px;
    }

}


/*==============================
      Tablet (992px)
===============================*/
@media (max-width:992px){

    body{
        overflow-x:hidden;
    }

    /* Navbar */

    .navbar{
        padding:12px 0;
        margin-left:0;
    }

    .navbar-brand img{
        width:55px;
        height:auto;
    }

    .navbar-collapse{

        background:#fff;

        padding:20px;

        margin-top:15px;

        border-radius:15px;

        box-shadow:0 10px 25px rgba(0,0,0,.08);

    }

    .navbar-nav{

        gap:12px;

        text-align:center;

    }

    .navbar .btn-primary{

        width:220px;

        margin:20px auto 0;

        display:block;

    }

    /* Hero */

    .hero{

        min-height:90vh;

        background-position:center;

    }

    .hero-content{

        padding-top:130px;

        text-align:center;

        margin:auto;

    }

    .hero h1{

        font-size:52px;

    }

    .hero p{

        font-size:18px;

    }

    .hero-btns{

        justify-content:center;

        flex-wrap:wrap;

    }

    /* Services */

    .services{

        margin-top:0;

    }

    .service-card{

        margin-bottom:25px;

    }

    /* About */

    .about-section{

        text-align:center;
        

    }

    .about-img{

        width:100%;

        max-width:450px;

        height:auto;

        margin:40px auto 0;

        display:block;

    }

    .about-feature{

        justify-content:center;

    }

    /* General */

    .section-title{

        font-size:34px;

    }

    /* Vision */

    .vision-card{

        margin-bottom:25px;

    }

    /* Core Values */

    .core-card{

        margin-bottom:25px;

    }

    /* Why Choose */

    .why-card{

        margin-bottom:25px;

    }

    /* Industries */

    .industry-card{

        margin-bottom:20px;

    }

    /* Highlights */

    .highlight-card{

        margin-bottom:20px;

    }

    /* Contact */

    .contact-card{

        margin-bottom:20px;

    }

    .contact-form-box{

        padding:40px 30px;

    }

    /* Quote */

    .quote-box{

        padding:40px 30px;

    }

    /* CTA */

    .cta-section{

        text-align:center;

    }

    .cta-btn{

        margin-top:15px;

    }

    /* Footer */

    .footer{

        text-align:center;

    }

    .social-icons{

        justify-content:center;

    }

}


/*==============================
      Mobile (768px)
===============================*/
@media (max-width:768px){

    body{

        overflow-x:hidden;

    }

    /* Hide Top Bar */

    .topbar{

        display:none;

    }

    /* Navbar */

    .navbar-brand h4{

        font-size:22px;

    }

    .navbar-brand small{

        font-size:12px;

    }

    /* Hero */

    .hero{

        min-height:700px;

        background-position:70% center;

    }

    .hero-content{

        padding-top:100px;

    }

    .hero h1{

        font-size:40px;

        line-height:1.2;

    }

    .hero p{

        font-size:16px;

    }

    .hero-btns{

        flex-direction:column;

        align-items:center;

    }

    .hero-btns .btn{

        width:220px;

        margin:10px 0;

    }

    /* Sections */

    .section-title{

        font-size:30px;

    }

    .section-text{

        font-size:16px;

    }

    /* About */

    .about-img{

        max-width:350px;
        margin-top: 30px;
    }

    /* Contact */

    .contact-form-box{

        padding:30px 20px;

    }

    /* Quote */

    .quote-box{

        padding:30px 20px;

    }

    /* Google Map */

    .google-map iframe{

        height:350px;

    }

}


/*==============================
      Small Mobile (576px)
===============================*/
@media (max-width:576px){

    /* Logo */

    .navbar-brand img{

        width:45px;

    }

    .navbar-brand h4{

        font-size:18px;

    }

    .navbar-brand small{

        font-size:10px;

    }

    /* Hero */

    .hero{

        min-height:650px;

    }

    .hero-content{

        padding-top:90px;

    }

    .hero h1{

        font-size:30px;

    }

    .hero p{

        font-size:15px;

    }

    /* Titles */

    .section-title{

        font-size:26px;

    }

    .section-subtitle{

        font-size:14px;

    }

    /* Cards */

    .service-card,
    .vision-card,
    .core-card,
    .why-card,
    .industry-card,
    .highlight-card,
    .contact-card{

        padding:25px 18px;

    }

    /* Forms */

    .contact-form-box,
    .quote-box{

        padding:20px 15px;

    }

    .form-control,
    .form-select{

        font-size:14px;

    }

    /* Buttons */

    .hero-btns .btn,
    .cta-btn{

        width:100%;

        max-width:260px;

    }

    /* Google Map */

    .google-map iframe{

        height:300px;

    }

    /* Footer */

    .footer{

        padding:50px 0 20px;

    }

    .footer-logo{

        width:60px;

    }

    .footer h5{

        margin-top:20px;

    }

}