
:root{--blue:#1f5bd8;--navy:#0b1f44;--soft:#f5f8ff}body{font-family:Inter,system-ui,Arial,sans-serif;color:#17233b}.topbar{background:#071733;color:#fff;font-size:12px}.navbar{box-shadow:0 4px 20px #0b1f4412}.navbar-brand{font-weight:800;color:var(--navy)!important}.brand{width:38px;height:38px;border-radius:10px;background:var(--blue);color:#fff;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background:var(--blue);border-color:var(--blue)}.hero,.page-hero{background:linear-gradient(135deg,#f8fbff,#eaf2ff)}.hero{padding:75px 0}.hero h1{font-size:clamp(2.4rem,5vw,4.5rem);font-weight:800;line-height:1.04}.page-hero{padding:65px 0}.section{padding:80px 0}.soft{background:var(--soft)}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--blue)}.section-title{font-weight:800;font-size:clamp(2rem,4vw,3rem)}.hero-img,.round{border-radius:25px}.hero-img{box-shadow:0 25px 70px #1f5bd826}.cardx{border:1px solid #e4ebf7;border-radius:20px;overflow:hidden;background:#fff;height:100%;box-shadow:0 8px 25px #0b1f440c;transition:.25s}.cardx:hover{transform:translateY(-5px);box-shadow:0 18px 40px #0b1f4418}.cardx img{width:100%;height:185px;object-fit:cover}.cardx .inside{padding:22px}.icon{width:52px;height:52px;border-radius:15px;background:#eaf1ff;color:var(--blue);display:inline-flex;align-items:center;justify-content:center;font-weight:800}.feature{display:flex;gap:14px;margin:20px 0}.calculator,.cta{background:var(--navy);color:#fff;border-radius:24px;padding:35px}.statband{background:var(--navy);color:#fff;padding:35px 0}.stat strong{font-size:28px;display:block}.stat span{font-size:13px;opacity:.8}footer{background:#071733;color:#c7d5eb}.flink{display:block;color:#b8c8df;text-decoration:none;margin:7px 0}.flink:hover{color:#fff}.blog{border:1px solid #e3eaf6;border-radius:18px;height:100%}.form-control,.form-select{min-height:48px;border-radius:10px}@media(max-width:991px){.hero,.section{padding:55px 0}}/* =========================================
   NAVBAR RESPONSIVE FIX
   ========================================= */

/* Main Navbar */
.navbar {
    width: 100%;
    background: #ffffff !important;
    padding: 0;
}

/* Navbar Container */
.navbar-container {
    width: 100%;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Logo */
.site-logo {
    width: 220px;
    height: auto;
    max-width: 100%;
    display: block;
}

/* Remove old inline width issue */
#nav {
    width: auto !important;
}

/* Navigation Links */
#nav .nav-link {
    font-weight: 500;
    white-space: nowrap;
}

/* Contact Button */
#nav .btn {
    white-space: nowrap;
}

/* =========================================
   DESKTOP
   ========================================= */

@media (min-width: 992px) {

    .navbar-container {
        min-height: 80px;
    }

    .site-logo {
        width: 372px;
    }

    #nav {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
    }

    #nav .navbar-nav {
        align-items: center;
    }

    .navbar-toggler {
        display: none;
    }
}


/* =========================================
   TABLET + MOBILE
   ========================================= */

@media (max-width: 991.98px) {

    .navbar-container {
        min-height: 75px;
        padding-top: 8px;
        padding-bottom: 8px;
        padding-left: 15px;
        padding-right: 15px;
    }

    /* Logo */
    .site-logo {
        width: 190px;
        height: auto;
    }

    /* Hamburger */
    .navbar-toggler {
        display: block;
        margin-left: auto;
        padding: 7px 10px;
        border: 2px solid #555555;
        border-radius: 10px;
        box-shadow: none !important;
        outline: none !important;
    }

    .navbar-toggler:focus {
        box-shadow: none !important;
        outline: none !important;
    }

    /* Mobile Menu */
    #nav {
        width: 100% !important;
        margin-top: 10px;
        padding-bottom: 10px;
    }

    #nav .navbar-nav {
        width: 100%;
        display: flex;
        gap: 0 !important;
        align-items: flex-start !important;
    }

    #nav .nav-item {
        width: 100%;
    }

    #nav .nav-link {
        width: 100%;
        padding: 10px 5px;
    }

    /* Contact Button */
    #nav .btn {
        display: inline-block;
        margin-left: 0 !important;
        margin-top: 8px;
    }
}


/* =========================================
   SMALL MOBILE
   ========================================= */

@media (max-width: 575.98px) {

    .navbar-container {
        min-height: 70px;
        padding-left: 12px;
        padding-right: 12px;
    }

    .site-logo {
        width: 220px;
    }

    .navbar-toggler {
        padding: 6px 9px;
        border-radius: 9px;
    }

    #nav {
        margin-top: 8px;
    }

    #nav .nav-link {
        font-size: 15px;
        padding: 9px 4px;
    }
}


/* =========================================
   TOP BAR MOBILE FIX
   ========================================= */

@media (max-width: 575.98px) {

    .topbar .container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center;
        gap: 3px;
        font-size: 11px;
        line-height: 1.4;
    }

}
.topbar {
  background: #071733;
  color: #fff;
  font-size: 12px;
  display: none;
}
