:root{--primary:#005dff;--dark:#101116;--muted:#68707c;--soft:#f3f6fb}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--dark);overflow-x:hidden}.fw-black{font-weight:900}.navbar{transition:.25s ease;background:rgba(255,255,255,.82);backdrop-filter:blur(14px)}.navbar.scrolled{box-shadow:0 10px 30px rgba(16,17,22,.08)}.logo{height:50px;max-width:180px}.nav-link{font-weight:700;color:#1d2430}.hero-section{background:radial-gradient(circle at top left,#eaf1ff 0,#fff 40%,#f7f8fb 100%);position:relative}.hero-section:after{content:"";position:absolute;inset:auto -10% 5% auto;width:420px;height:420px;background:rgba(0,93,255,.09);border-radius:50%;filter:blur(15px)}.eyebrow,.section-tag{display:inline-flex;align-items:center;padding:.45rem .9rem;border-radius:999px;background:#eaf1ff;color:var(--primary);font-weight:800;letter-spacing:.05em;text-transform:uppercase;font-size:.78rem}.btn-primary{background:var(--primary);border-color:var(--primary);box-shadow:0 14px 28px rgba(0,93,255,.22)}.hero-carousel img{height:640px;object-fit:cover}.hero-carousel .carousel-inner{background:#111}.hero-stats{display:flex;gap:1rem;flex-wrap:wrap}.hero-stats div{background:white;border:1px solid #e7e9ee;border-radius:22px;padding:1rem 1.25rem;min-width:140px;box-shadow:0 14px 30px rgba(17,24,39,.06)}.hero-stats strong{display:block;font-size:1.15rem}.hero-stats span{color:var(--muted);font-size:.92rem}.section-padding{padding:110px 0}.section-title{font-size:clamp(2.2rem,4vw,4.5rem);line-height:.98;font-weight:900;letter-spacing:-.05em}.service-card,.process-card,.contact-card{height:100%;background:white;border:1px solid #e7e9ee;border-radius:30px;padding:2rem;box-shadow:0 18px 45px rgba(16,17,22,.06);transition:.25s ease}.service-card:hover,.process-card:hover{transform:translateY(-8px)}.service-card i{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--dark);color:white;font-size:1.7rem;margin-bottom:1.5rem}.service-card h3,.process-card h3{font-size:1.35rem;font-weight:850}.service-card p,.process-card p{color:var(--muted);margin-bottom:0}.image-band{padding:110px 0;background:linear-gradient(90deg,rgba(5,8,13,.9),rgba(5,8,13,.72)),url('../images/solution-background.webp') center/cover no-repeat}.solution-list{display:grid;gap:1rem}.solution-list div{display:flex;gap:1.25rem;align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:24px;padding:1.2rem;color:white;backdrop-filter:blur(8px)}.solution-list span{font-weight:900;color:#8eb6ff}.solution-list p{margin:0;font-size:1.08rem}.bg-light{background:var(--soft)!important}.process-card span{width:64px;height:64px;border-radius:50%;background:var(--primary);color:white;font-weight:900;font-size:1.4rem;display:grid;place-items:center;margin-bottom:1.5rem}.trust-section{background:white}.mini-feature{border:1px solid #e7e9ee;border-radius:18px;padding:1rem;font-weight:800;background:#fff}.contact-section{background:linear-gradient(180deg,#f8faff,#fff)}.form-control{border-radius:16px;border-color:#dfe4ee}.form-control:focus{box-shadow:0 0 0 .25rem rgba(0,93,255,.12);border-color:var(--primary)}.footer-logo{height:28px}@media(max-width:991px){.hero-carousel img{height:430px}.display-2{font-size:3.25rem}.section-padding{padding:80px 0}}@media(max-width:575px){.hero-carousel img{height:300px}.display-2{font-size:2.65rem}.hero-stats div{width:100%}.service-card,.process-card,.contact-card{padding:1.45rem}.navbar .logo{height:28px}}


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

.hero-section {
    position: relative;
    overflow: hidden;

    background-image: url('../images/geometric_bg1.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    min-height: 80vh;

    display: flex;
    align-items: center;

    padding: 120px 0;
}

/* Dark overlay */
.hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(0,0,0,.70),
            rgba(0,0,0,.45)
        );

    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
}

.hero-row {
    min-height: calc(100vh - 120px);
}

/* ====================================
   TYPOGRAPHY
==================================== */

.eyebrow {
    display: inline-block;

    padding: 8px 18px;

    border-radius: 50px;

    background: rgba(255,255,255,.12);
    backdrop-filter: blur(10px);

    color: #ffffff;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hero-title {
    font-size: clamp(2.75rem, 4vw, 5rem);
    line-height: 1.05;
    font-weight: 800;
    color: #fff;

    margin-bottom: 25px;
}

.hero-description {
    color: rgba(255,255,255,.85);
    font-size: 1.2rem;
    line-height: 1.8;

    margin-bottom: 35px;

    max-width: 650px;
}

/* ====================================
   BUTTONS
==================================== */

.btn-outline-light {
    border-width: 2px;
}

/* ====================================
   HERO STATS
==================================== */

.hero-stats {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}

.hero-stats div {
    display: flex;
    flex-direction: column;
}

.hero-stats strong {
    color: #fff;
    font-size: 1.3rem;
}

.hero-stats span {
    color: rgba(255,255,255,.75);
}

/* ====================================
   CAROUSEL
==================================== */

.hero-carousel {
    position: relative;
}

.hero-carousel .carousel-inner {
    overflow: hidden;

    border-radius: 30px;

    box-shadow:
        0 25px 80px rgba(0,0,0,.35);
}

.hero-carousel img {
    height: 650px;
    object-fit: cover;
}

/* ====================================
   TABLET
==================================== */

@media (max-width: 991px) {

    .hero-section {
        text-align: center;
        padding: 100px 0 80px;
    }

    .hero-stats {
        justify-content: center;
    }

    .hero-carousel img {
        height: 500px;
    }
}

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

@media (max-width: 767px) {

    .hero-section {
        min-height: auto;
        padding: 90px 0 60px;
    }

    .hero-title {
        font-size: 2.5rem;
    }

    .hero-description {
        font-size: 1rem;
    }

    .hero-carousel img {
        height: 320px;
    }

    .hero-stats {
        gap: 20px;
    }

    .hero-stats strong {
        font-size: 1rem;
    }
}

/* Floating Navbar */
.floating-navbar {
    top: 24px;
    left: 50%;
    transform: translateX(-50%);
	border:2px solid white;
    width: calc(100% - 48px);
    max-width: 1320px;

    background: rgba(0, 0, 0, 0.92);
    backdrop-filter: blur(14px);

    border-radius: 999px;
    padding: 14px 24px;

    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.35);

    z-index: 9999;
}

/* Logo */
.floating-navbar .logo {
    max-height: 44px;
    width: auto;
}

/* Nav links */
.floating-navbar .nav-link {
    color: rgba(255, 255, 255, 0.82);
    font-weight: 600;
    font-size: 0.95rem;
    padding: 10px 4px;
}

.floating-navbar .nav-link:hover,
.floating-navbar .nav-link:focus {
    color: #ffffff;
}

/* CTA Button */
.floating-navbar .nav-cta {
    background: #ffffff;
    color: #000000;
    font-weight: 700;
    border: 2px solid #ffffff;
}

.floating-navbar .nav-cta:hover {
    background: transparent;
    color: #ffffff;
}

/* Bootstrap toggler for dark navbar */
.floating-navbar .navbar-toggler {
    border: 1px solid rgba(255, 255, 255, 0.35);
    box-shadow: none;
}

.floating-navbar .navbar-toggler-icon {
    filter: invert(1);
}

/* Make sure hero sits behind navbar */
.hero-section {
    padding-top: 160px;
}

/* Mobile Navbar */
@media (max-width: 991px) {

    .floating-navbar {
        top: 16px;
        width: calc(100% - 24px);
        border-radius: 28px;
        padding: 12px 18px;
    }

    .floating-navbar .logo {
        max-height: 38px;
    }

    .floating-navbar .navbar-collapse {
        margin-top: 18px;
        padding-top: 14px;
        border-top: 1px solid rgba(255, 255, 255, 0.15);
    }

    .floating-navbar .navbar-nav {
        align-items: flex-start !important;
        gap: 6px;
    }

    .floating-navbar .nav-link {
        padding: 10px 0;
        width: 100%;
    }

    .floating-navbar .nav-cta {
        margin-top: 10px;
        width: 100%;
        text-align: center;
    }

    .hero-section {
        padding-top: 140px;
    }
}

/* Landscape Hero Carousel */
.hero-carousel-landscape {
    width: 100%;
}

.hero-carousel-landscape .carousel-inner {
    aspect-ratio: 1920 / 1020;
    overflow: hidden;
    border-radius: 30px;
}

.hero-carousel-landscape .carousel-item {
    height: 100%;
}

.hero-carousel-landscape .carousel-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Tablet */
@media (max-width: 991px) {
    .hero-carousel-landscape .carousel-inner {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .hero-carousel-landscape .carousel-inner {
        aspect-ratio: 16 / 10;
        border-radius: 22px;
    }
}