
*{
    font-family: 'Courier New', Courier, monospace;
}
:root{

    --primary:#0F4C81;
    --secondary:#1F6FEB;
    --accent:#18C29C;
    --white:#ffffff;

}

.top-header{

    background:linear-gradient(90deg,#0F4C81,#1F6FEB);
    padding:12px 0;

}

.top-tag{

    color:#ffffff;
    font-size:15px;
    font-weight:600;
    letter-spacing:.5px;

}

.top-tag i{

    color:#18C29C;
    margin-right:8px;
    font-size:18px;

}

.top-call{

    display:flex;
    align-items:center;
    gap:15px;

    text-decoration:none;

    color:#fff;

    transition:.35s;

}

.call-text{

    background:#18C29C;

    color:#fff;

    padding:10px 20px;

    border-radius:50px;

    font-size:15px;

    font-weight:700;

    letter-spacing:.5px;

    transition:.35s;

}

.call-text i{

    margin-right:8px;

}

.phone-number{

    font-size:28px;

    font-weight:800;

    letter-spacing:1px;

    transition:.35s;

}

.top-call:hover{

    transform:translateY(-2px);

    color:#fff;

}

.top-call:hover .call-text{

    background:#ffffff;

    color:#0F4C81;

}

.top-call:hover .phone-number{

    color:#18C29C;

}
/*==============================
        Premium Navbar
==============================*/

.custom-navbar{

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    box-shadow:0 10px 30px rgba(0,0,0,.06);

    padding:18px 0;

    transition:.35s;

    z-index:999;

}

/* Logo */

.navbar-brand{

    display:flex;

    align-items:center;

    gap:14px;

    text-decoration:none;

}

.logo-icon{

    width:55px;

    height:55px;

    border-radius:18px;

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:24px;

    box-shadow:0 10px 25px rgba(31,111,235,.35);

}

.logo-text{

    display:flex;

    flex-direction:column;

    line-height:1;

    color:#0F172A;

    font-size:30px;

    font-weight:800;

}

.logo-text small{

    font-size:13px;

    color:#18C29C;

    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-top:6px;

}

/* Menu */

.navbar-nav{

    gap:15px;

}

.nav-link{

    position:relative;

    color:#334155 !important;

    font-size:17px;

    font-weight:600;

    padding:10px 8px !important;

    transition:.35s;

}

.nav-link:hover{

    color:#1F6FEB !important;

}

.nav-link.active{

    color:#0F4C81 !important;

}

/* Animated Underline */

.nav-link::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:0;

    width:0;

    height:3px;

    background:#18C29C;

    border-radius:20px;

    transform:translateX(-50%);

    transition:.35s;

}

.nav-link:hover::after,

.nav-link.active::after{

    width:75%;

}

/* CTA Button */

.quote-btn{

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    color:#fff;

    text-decoration:none;

    padding:14px 28px;

    border-radius:50px;

    font-weight:700;

    transition:.35s;

    box-shadow:0 12px 25px rgba(31,111,235,.25);

}

.quote-btn i{

    margin-right:8px;

}

.quote-btn:hover{

    transform:translateY(-4px);

    color:#fff;

    background:linear-gradient(135deg,#18C29C,#0F4C81);

    box-shadow:0 20px 35px rgba(24,194,156,.35);

}

/* Mobile */

.navbar-toggler{

    font-size:32px;

    color:#0F4C81;

}
/*==================================
            Hero Section
===================================*/

.hero-section{

    position:relative;

    overflow:hidden;

    background:linear-gradient(135deg,#F8FBFF 0%,#EDF5FF 100%);

    padding:70px 0;

}

.hero-overlay{

    position:absolute;

    top:-250px;

    right:-250px;

    width:650px;

    height:650px;

    background:rgba(31,111,235,.08);

    border-radius:50%;

}

.hero-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:#E8F7F4;

    color:#18C29C;

    padding:12px 22px;

    border-radius:50px;

    font-weight:700;

    font-size:15px;

}

.hero-title{

    font-size:62px;

    font-weight:800;

    color:#0F172A;

    line-height:1.15;

}

.hero-title span{

    color:#1F6FEB;

}

.hero-text{

    margin-top:25px;

    color:#64748B;

    font-size:20px;

    line-height:1.8;

    max-width:580px;

}

.hero-buttons{

    display:flex;

    gap:20px;

    margin-top:40px;

    flex-wrap:wrap;

}

.hero-btn{

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    color:#fff;

    padding:16px 34px;

    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    transition:.35s;

    box-shadow:0 18px 35px rgba(31,111,235,.25);

}

.hero-btn:hover{

    color:#fff;

    transform:translateY(-5px);

}

.hero-outline-btn{

    padding:16px 34px;

    border-radius:50px;

    border:2px solid #1F6FEB;

    color:#1F6FEB;

    font-weight:700;

    text-decoration:none;

    transition:.35s;

}

.hero-outline-btn:hover{

    background:#1F6FEB;

    color:#fff;

}

.hero-features{

    display:flex;

    gap:35px;

    flex-wrap:wrap;

}

.feature{

    display:flex;

    align-items:center;

    gap:8px;

    color:#334155;

    font-weight:600;

}

.feature i{

    color:#18C29C;

}

.hero-image{

    max-width:540px;

    animation:float 4s ease-in-out infinite;

}

.hero-image-wrapper{

    position:relative;

}

.floating-card{

    position:absolute;

    bottom:20px;

    left:0;

    background:#fff;

    border-radius:20px;

    padding:20px;

    display:flex;

    align-items:center;

    gap:15px;

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

.icon-box{

    width:60px;

    height:60px;

    border-radius:15px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    color:#fff;

    font-size:26px;

}

.floating-card h5{

    margin:0;

    font-weight:800;

    color:#0F172A;

}

.floating-card p{

    margin:0;

    color:#64748B;

}

@keyframes float{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-12px);

    }

}
/*==================================
            About Section
===================================*/

.about-section{

    background:#ffffff;

}

.about-subtitle{

    color:#18C29C;

    font-size:15px;

    font-weight:700;

    letter-spacing:3px;

}

.about-title{

    font-size:46px;

    font-weight:800;

    color:#0F172A;

    line-height:1.2;

}

.about-text{

    color:#64748B;

    line-height:1.9;

    font-size:17px;

    margin-top:18px;

}

/* Image */

.about-image-wrapper{

    position:relative;

}

.about-image{

    width:100%;

    border-radius:28px;

    box-shadow:0 25px 60px rgba(15,23,42,.10);

}

/* Floating Box */

.experience-box{

    position:absolute;

    right:-20px;

    bottom:35px;

    background:#ffffff;

    padding:22px 30px;

    border-radius:22px;

    box-shadow:0 20px 45px rgba(0,0,0,.12);

    text-align:center;

}

.experience-box h2{

    font-size:42px;

    font-weight:800;

    color:#1F6FEB;

    margin:0;

}

.experience-box span{

    color:#64748B;

    font-weight:600;

    line-height:1.5;

}

/* Features */

.about-feature{

    display:flex;

    align-items:center;

    gap:15px;

    background:#F8FBFF;

    padding:18px;

    border-radius:18px;

    transition:.35s;

    border:1px solid #E2E8F0;

}

.about-feature:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 35px rgba(31,111,235,.12);

}

.about-feature i{

    color:#18C29C;

    font-size:24px;

}

.about-feature span{

    font-weight:700;

    color:#334155;

}

/* Stats */

.about-stat h3{

    color:#1F6FEB;

    font-size:34px;

    font-weight:800;

}

.about-stat p{

    color:#64748B;

    margin:0;

}

/* Button */

.about-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    color:#fff;

    text-decoration:none;

    padding:16px 34px;

    border-radius:50px;

    font-weight:700;

    transition:.35s;

    box-shadow:0 18px 35px rgba(31,111,235,.25);

}

.about-btn:hover{

    color:#fff;

    transform:translateY(-5px);

    background:linear-gradient(135deg,#18C29C,#0F4C81);

}

/*=================================
        Services Section
==================================*/

.services-section{

    background:#F8FBFF;

}

.section-subtitle{

    color:#18C29C;

    font-weight:700;

    letter-spacing:3px;

    font-size:14px;

}

.section-title{

    font-size:44px;

    font-weight:800;

    color:#0F172A;

}

.section-description{

    max-width:700px;

    margin:auto;

    color:#64748B;

    font-size:18px;

    line-height:1.8;

}

/* Card */

.service-card{

    background:#fff;

    padding:40px 30px;

    border-radius:22px;

    transition:.35s;

    text-align:center;

    box-shadow:0 10px 35px rgba(15,23,42,.05);

    border:1px solid #E5E7EB;

    height:100%;

}

.service-card:hover{

    transform:translateY(-12px);

    box-shadow:0 20px 45px rgba(31,111,235,.18);

    border-color:#1F6FEB;

}

/* Icon */

.service-icon{

    width:90px;

    height:90px;

    margin:auto;

    border-radius:20px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    color:#fff;

    font-size:38px;

    margin-bottom:25px;

    transition:.35s;

}

.service-card:hover .service-icon{

    transform:rotate(-8deg) scale(1.08);

    background:linear-gradient(135deg,#18C29C,#0F4C81);

}

.service-card h4{

    font-size:26px;

    font-weight:700;

    color:#0F172A;

    margin-bottom:18px;

}

.service-card p{

    color:#64748B;

    line-height:1.8;

    margin-bottom:30px;

}

/* Button */

.service-btn{

    display:inline-flex;

    align-items:center;

    gap:8px;

    text-decoration:none;

    color:#0F4C81;

    font-weight:700;

    transition:.35s;

}

.service-btn i{

    transition:.35s;

}

.service-btn:hover{

    color:#18C29C;

}

.service-btn:hover i{

    transform:translateX(6px);

}
/*==================================
        Contact Section
===================================*/

.contact-section{

    background:#F8FBFF;

}

.contact-subtitle{

    color:#18C29C;

    font-weight:700;

    letter-spacing:3px;

    font-size:14px;

}

.contact-title{

    font-size:44px;

    font-weight:800;

    color:#0F172A;

}

.contact-description{

    max-width:720px;

    margin:auto;

    color:#64748B;

    font-size:18px;

    line-height:1.8;

}

/* Card */

.contact-card{

    background:#fff;

    border-radius:22px;

    padding:45px 30px;

    text-align:center;

    height:100%;

    transition:.35s;

    border:1px solid #E2E8F0;

    box-shadow:0 12px 35px rgba(15,23,42,.05);

}

.contact-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 50px rgba(31,111,235,.15);

    border-color:#1F6FEB;

}

/* Icon */

.contact-icon{

    width:90px;

    height:90px;

    margin:auto;

    margin-bottom:25px;

    border-radius:22px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#0F4C81,#1F6FEB);

    color:#fff;

    font-size:36px;

    transition:.35s;

}

.contact-card:hover .contact-icon{

    transform:rotate(-8deg) scale(1.08);

    background:linear-gradient(135deg,#18C29C,#0F4C81);

}

/* Text */

.contact-card h4{

    font-size:26px;

    font-weight:700;

    color:#0F172A;

    margin-bottom:15px;

}

.contact-card p{

    color:#64748B;

    line-height:1.8;

    margin-bottom:20px;

}

.contact-card a{

    text-decoration:none;

    color:#1F6FEB;

    font-size:18px;

    font-weight:700;

    transition:.3s;

}

.contact-card a:hover{

    color:#18C29C;

}
/*==================================
            Footer
===================================*/

.footer-section{

    background:#0F172A;

    color:#CBD5E1;

    padding:80px 0 25px;

}

.footer-logo{

    display:inline-flex;

    align-items:center;

    gap:12px;

    font-size:32px;

    font-weight:800;

    color:#ffffff;

    text-decoration:none;

    margin-bottom:25px;

}

.footer-logo i{

    color:#18C29C;

    font-size:34px;

}

.footer-text{

    color:#94A3B8;

    line-height:1.9;

    margin-top:20px;

    margin-bottom:30px;

}

/* Heading */

.footer-section h5{

    color:#ffffff;

    font-size:22px;

    font-weight:700;

    margin-bottom:25px;

}

/* Links */

.footer-section ul{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-section ul li{

    margin-bottom:15px;

}

.footer-section ul li a{

    color:#94A3B8;

    text-decoration:none;

    transition:.35s;

}

.footer-section ul li a:hover{

    color:#18C29C;

    padding-left:8px;

}

/* Contact */

.footer-contact p{

    color:#94A3B8;

    margin-bottom:18px;

    line-height:1.8;

}

.footer-contact i{

    color:#18C29C;

    margin-right:10px;

}

.footer-contact a{

    color:#94A3B8;

    text-decoration:none;

}

.footer-contact a:hover{

    color:#18C29C;

}

/* Social */

.footer-social{

    display:flex;

    gap:15px;

}

.footer-social a{

    width:48px;

    height:48px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    color:#ffffff;

    text-decoration:none;

    transition:.35s;

}

.footer-social a:hover{

    background:#18C29C;

    transform:translateY(-6px);

}

/* Divider */

.footer-divider{

    border-color:rgba(255,255,255,.12);

    margin:55px 0 25px;

}

/* Bottom */

.copyright{

    margin:0;

    color:#94A3B8;

}

.footer-bottom-link{

    text-decoration:none;

    color:#94A3B8;

    margin-left:25px;

    transition:.35s;

}

.footer-bottom-link:hover{

    color:#18C29C;

}

@media (max-width:768px){

    .top-header{

        padding:15px 0;

    }

    .top-call{

        flex-direction:column;

        gap:8px;

    }

    .phone-number{

        font-size:24px;

    }

    .call-text{

        font-size:14px;

        padding:8px 18px;

    }

}
@media(max-width:991px){

    .navbar-collapse{

        background:#fff;

        margin-top:20px;

        padding:25px;

        border-radius:20px;

        box-shadow:0 15px 40px rgba(0,0,0,.08);

    }

    .navbar-nav{

        gap:5px;

    }

    .quote-btn{

        width:100%;

        text-align:center;

        margin-top:20px;

    }

}
/* Responsive */

@media(max-width:991px){

    .about-title{

        font-size:38px;

    }

    .experience-box{

        right:15px;

        bottom:15px;

    }

}

@media(max-width:768px){

    .about-title{

        font-size:30px;

    }

    .about-text{

        font-size:16px;

    }

    .experience-box{

        position:relative;

        right:0;

        bottom:0;

        margin-top:20px;

        display:inline-block;

    }

}
/* Responsive */

@media(max-width:991px){

    .section-title{

        font-size:36px;

    }

}

@media(max-width:768px){

    .section-title{

        font-size:30px;

    }

    .section-description{

        font-size:16px;

    }

    .service-card{

        padding:35px 25px;

    }

}
@media(max-width:992px){

    .hero-title{

        font-size:48px;

    }

}

@media(max-width:768px){

    .hero-title{

        font-size:38px;

    }

    .hero-text{

        font-size:17px;

    }

    .hero-buttons{

        flex-direction:column;

    }

    .hero-btn,
    .hero-outline-btn{

        width:100%;

        text-align:center;

    }

    .floating-card{

        position:static;

        margin-top:25px;

    }

}
/* Responsive */

@media(max-width:991px){

    .contact-title{

        font-size:36px;

    }

}

@media(max-width:768px){

    .contact-title{

        font-size:30px;

    }

    .contact-description{

        font-size:16px;

    }

    .contact-card{

        padding:35px 25px;

    }

}
/* Responsive */

@media(max-width:768px){

    .footer-logo{

        font-size:28px;

    }

    .footer-section{

        text-align:center;

    }

    .footer-social{

        justify-content:center;

    }

    .footer-bottom-link{

        display:block;

        margin:10px 0;

    }

}