
        :root {
            --primary: #1769ff;
            --primary-dark: #0b48c8;
            --dark: #07152e;
            --text: #1d2a3b;
            --muted: #657286;
            --light: #f5f8fc;
            --white: #ffffff;
            --border: #e5eaf2;
            --green: #16a05d;
            --shadow: 0 18px 50px rgba(7,21,46,.10);
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: 'Inter', Arial, sans-serif;
            color: var(--text);
            background: #fff;
            line-height: 1.6;
            overflow-x: hidden;
        }

        h1,h2,h3,h4 {
            font-family: 'Poppins', sans-serif;
            line-height: 1.2;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        .container {
            width: min(1160px, 92%);
            margin: auto;
        }

        /* ================= TOP BAR ================= */


* {
    box-sizing: border-box;
}

.topbar {
    background: var(--dark);
    color: #dce7f7;
    font-size: 13px;
}

.topbar-inner {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.topbar-contact {
    display: flex;
    align-items: center;
    gap: 18px;
}

.topbar a {
    color: #fff;
    text-decoration: none;
    transition: color .25s ease;
}

.topbar a:hover {
    color: #54a4ff;
}

.topbar i {
    margin-right: 4px;
}


/* =========================================================
   HEADER
========================================================= */

.header {
    position: sticky;
    top: 0;
    z-index: 1000;

    width: 100%;

    background: rgba(255,255,255,.98);

    border-bottom: 1px solid #edf0f5;

    box-shadow: 0 2px 12px rgba(0,0,0,.04);
}

.nav-wrap {
    height: 76px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    position: relative;
}

.logo {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;

    gap: 10px;

    height: 76px;

    text-decoration: none;
    flex-shrink: 0;

    white-space: nowrap;
}


.logo-image {
    width: 58px;
    height: 58px;

    object-fit: contain;
    object-position: center;

    display: block;

    flex-shrink: 0;

    border: 0;
}


.logo-text {
    display: flex;
    flex-direction: column;

    align-items: flex-start;
    justify-content: center;

    line-height: 1;
}


/* AB SMART */

.logo-text strong {
    display: block;

    margin: 0;
    padding: 0;

    font-family: 'Poppins', sans-serif;

    font-size: 19px;
    font-weight: 800;

    line-height: 1.15;

    color: var(--dark);

    white-space: nowrap;
}


/* SOLUTIONS */

.logo-text small {
    display: block;

    margin: 4px 0 0;
    padding: 0;

    font-family: 'Inter', sans-serif;

    font-size: 9px;
    font-weight: 600;

    line-height: 1;

    letter-spacing: 2px;

    text-transform: uppercase;

    color: var(--muted);

    white-space: nowrap;
}



@media (min-width: 769px) {

    .nav-wrap {
        height: 76px;

        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .logo {
        height: 76px;

        display: flex;
        flex-direction: row;
        align-items: center;

        gap: 10px;
    }

    .logo-image {
        width: 58px;
        height: 58px;
    }

    .logo-text strong {
        font-size: 19px;
    }

    .logo-text small {
        font-size: 9px;
    }
}


@media (max-width: 1000px) and (min-width: 769px) {

    .logo {
        gap: 8px;
    }

    .logo-image {
        width: 52px;
        height: 52px;
    }

    .logo-text strong {
        font-size: 17px;
    }

    .logo-text small {
        font-size: 8px;
        letter-spacing: 1.5px;
    }
}



@media (max-width: 768px) {

    .nav-wrap {
        height: 65px;
        min-height: 65px;

        padding-left: 12px;
        padding-right: 12px;

        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .logo {
        height: 65px;

        display: flex;
        flex-direction: row;
        align-items: center;

        gap: 8px;

        max-width: calc(100% - 55px);
    }

    .logo-image {
        width: 43px;
        height: 43px;

        flex-shrink: 0;
    }

    .logo-text {
        min-width: 0;
    }

    .logo-text strong {
        font-size: 16px;

        line-height: 1.1;
    }

    .logo-text small {
        margin-top: 3px;

        font-size: 7px;

        letter-spacing: 1.2px;
    }
}


@media (max-width: 480px) {

    .nav-wrap {
        height: 62px;
        min-height: 62px;

        padding-left: 10px;
        padding-right: 10px;
    }

    .logo {
        height: 62px;

        gap: 7px;

        max-width: calc(100% - 50px);
    }

    .logo-image {
        width: 38px;
        height: 38px;
    }

    .logo-text strong {
        font-size: 15px;
    }

    .logo-text small {
        margin-top: 3px;

        font-size: 6.5px;

        letter-spacing: 1px;
    }
}


@media (max-width: 360px) {

    .nav-wrap {
        height: 60px;
        min-height: 60px;

        padding-left: 8px;
        padding-right: 8px;
    }

    .logo {
        height: 60px;

        gap: 6px;

        max-width: calc(100% - 48px);
    }

    .logo-image {
        width: 34px;
        height: 34px;
    }

    .logo-text strong {
        font-size: 14px;
    }

    .logo-text small {
        font-size: 6px;
        letter-spacing: .8px;
    }
}


.logo-mark {
    display: none !important;
}
.nav {
    display: flex;

    align-items: center;

    gap: 18px;

    font-size: 14px;

    font-weight: 600;

    margin-left: auto;
}

.nav > a,
.nav-dropdown > .dropdown-toggle {

    position: relative;

    display: flex;

    align-items: center;

    gap: 6px;

    padding: 28px 5px;

    color: var(--dark);

    text-decoration: none;

    white-space: nowrap;

    cursor: pointer;

    transition: color .25s ease;
}

.nav > a:hover,
.nav-dropdown > .dropdown-toggle:hover {
    color: var(--primary);
}


/* Icons */

.nav > a > i,
.nav-dropdown > .dropdown-toggle > i:first-child {
    color: var(--primary);

    font-size: 13px;
}


/* =========================================================
   DROPDOWN
========================================================= */

.nav-dropdown {
    position: relative;
}


/* Arrow */

.dropdown-toggle .arrow {
    font-size: 9px !important;

    color: var(--muted) !important;

    margin-left: 2px;

    transition: transform .25s ease;
}


/* Dropdown menu */

.dropdown-menu {

    position: absolute;

    top: calc(100% - 1px);

    left: -15px;

    width: 285px;

    background: #fff;

    border: 1px solid #e7ebf1;

    border-radius: 10px;

    padding: 7px 0;

    box-shadow:
        0 18px 45px rgba(0,0,0,.14);

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform: translateY(10px);

    transition:
        opacity .25s ease,
        transform .25s ease,
        visibility .25s ease;

    z-index: 9999;
}


/* Dropdown links */

.dropdown-menu a {

    display: flex;

    align-items: center;

    gap: 11px;

    width: 100%;

    padding: 11px 17px;

    color: #344054;

    font-size: 13px;

    font-weight: 500;

    text-decoration: none;

    transition:
        background .2s ease,
        color .2s ease,
        padding-left .2s ease;
}

.dropdown-menu a i {

    width: 19px;

    min-width: 19px;

    text-align: center;

    color: var(--primary);
}

.dropdown-menu a:hover {

    background: #f3f7ff;

    color: var(--primary);

    padding-left: 23px;
}


/* =========================================================
   DESKTOP DROPDOWN HOVER
========================================================= */

@media (min-width: 769px) {

    .nav-dropdown:hover .dropdown-menu {

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform: translateY(0);
    }

    .nav-dropdown:hover .arrow {

        transform: rotate(180deg);
    }

}


/* =========================================================
   SERVICES DROPDOWN
========================================================= */

.services-dropdown .dropdown-menu {

    width: 300px;

    max-height: 600px;

    overflow-y: auto;
}


/* =========================================================
   GET QUOTE
========================================================= */

.nav-quote {

    background: var(--primary) !important;

    color: #fff !important;

    padding: 12px 18px !important;

    border-radius: 9px;

    display: flex !important;

    align-items: center;

    gap: 7px;

    box-shadow:
        0 5px 15px rgba(23,105,255,.18);

    transition:
        background .25s ease,
        transform .25s ease;
}

.nav-quote:hover {

    background: #0f56d6 !important;

    color: #fff !important;

    transform: translateY(-1px);
}


/* =========================================================
   HAMBURGER
========================================================= */

.menu-toggle {

    display: none;

    width: 42px;
    height: 42px;

    border: 1px solid #e1e6ee;

    border-radius: 8px;

    background: #fff;

    cursor: pointer;

    padding: 6px;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 4px;

    z-index: 10001;
}

.menu-toggle span {

    display: block;

    width: 24px;

    height: 3px;

    background: var(--dark);

    border-radius: 3px;

    transition: all .3s ease;
}


/* Hamburger → X */

.menu-toggle.active span:nth-child(1) {

    transform:
        translateY(7px)
        rotate(45deg);
}

.menu-toggle.active span:nth-child(2) {

    opacity: 0;
}

.menu-toggle.active span:nth-child(3) {

    transform:
        translateY(-7px)
        rotate(-45deg);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    /* -------------------------------
       TOPBAR
    -------------------------------- */

    .topbar-inner {

        min-height: auto;

        padding: 7px 10px;

        flex-direction: column;

        align-items: center;

        justify-content: center;

        gap: 5px;
    }

    .topbar {

        font-size: 10px;
    }

    .topbar-contact {

        width: 100%;

        display: flex;

        justify-content: center;

        align-items: center;

        flex-wrap: wrap;

        gap: 5px 12px;
    }

    .topbar a {

        font-size: 9px;
    }


    /* -------------------------------
       HEADER
    -------------------------------- */

    .nav-wrap {

        height: 65px;

        padding-left: 12px;

        padding-right: 12px;
    }


    /* -------------------------------
       LOGO
    -------------------------------- */

    .logo-mark {

        width: 39px;

        height: 39px;

        border-radius: 9px;

        font-size: 12px;
    }

    .logo strong {

        font-size: 16px;
    }

    .logo small {

        font-size: 8px;

        letter-spacing: 1.3px;
    }


    /* -------------------------------
       SHOW HAMBURGER
    -------------------------------- */

    .menu-toggle {

        display: flex;
    }


    /* -------------------------------
       MOBILE NAV
    -------------------------------- */

    .nav {

        position: absolute;

        top: 65px;

        left: 0;

        width: 100%;

        max-height:
            calc(100vh - 65px);

        overflow-y: auto;

        overflow-x: hidden;

        display: none;

        flex-direction: column;

        align-items: stretch;

        gap: 0;

        margin: 0;

        padding: 5px 0 15px;

        background: #fff;

        border-top: 1px solid #edf0f5;

        box-shadow:
            0 15px 35px rgba(0,0,0,.13);
    }


    /* OPEN MOBILE MENU */

    .nav.active {

        display: flex;
    }


    /* -------------------------------
       MOBILE NAV LINKS
    -------------------------------- */

    .nav > a,
    .nav-dropdown > .dropdown-toggle {

        width: 100%;

        min-height: 48px;

        padding: 13px 18px;

        display: flex;

        align-items: center;

        gap: 9px;

        border-bottom: 1px solid #edf0f5;

        font-size: 14px;

        box-sizing: border-box;
    }


    /* Remove desktop underline */

    .nav > a::after,
    .nav-dropdown > .dropdown-toggle::after {

        display: none !important;
    }


    /* -------------------------------
       DROPDOWN PARENT
    -------------------------------- */

    .nav-dropdown {

        width: 100%;

        display: block;
    }


    /* -------------------------------
       MOBILE ARROW
    -------------------------------- */

    .nav-dropdown .arrow {

        margin-left: auto;

        color: var(--muted) !important;

        font-size: 9px !important;
    }

    .nav-dropdown.active .arrow {

        transform: rotate(180deg);

        color: var(--primary) !important;
    }


    /* -------------------------------
       MOBILE DROPDOWN
    -------------------------------- */

    .dropdown-menu {

        position: static;

        width: 100%;

        max-height: 0;

        overflow: hidden;

        padding: 0;

        margin: 0;

        background: #f7f9fc;

        border: none;

        border-radius: 0;

        box-shadow: none;

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform: none;

        transition:
            max-height .35s ease;
    }


    /* OPEN DROPDOWN */

    .nav-dropdown.active .dropdown-menu {

        max-height: 700px;

        overflow-y: auto;
    }


    /* -------------------------------
       DROPDOWN LINKS
    -------------------------------- */

    .dropdown-menu a {

        width: 100%;

        min-height: 43px;

        padding: 11px 38px;

        background: #f7f9fc;

        border-bottom: 1px solid #e6eaf0;

        font-size: 12.5px;

        box-sizing: border-box;
    }

    .dropdown-menu a:hover {

        padding-left: 44px;

        background: #edf4ff;
    }


    /* -------------------------------
       SERVICES
    -------------------------------- */

    .services-dropdown .dropdown-menu {

        width: 100%;

        max-height: 0;
    }

    .services-dropdown.active .dropdown-menu {

        max-height: 650px;

        overflow-y: auto;
    }


    /* -------------------------------
       GET QUOTE
    -------------------------------- */

    .nav .nav-quote {

        width: calc(100% - 30px) !important;

        margin: 12px 15px 5px;

        min-height: 45px;

        padding: 12px 15px !important;

        display: flex !important;

        justify-content: center;

        align-items: center;

        border-radius: 8px;

        box-sizing: border-box;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .nav-wrap {

        height: 62px;
    }

    .nav {

        top: 62px;

        max-height:
            calc(100vh - 62px);
    }

    /* =========================================================
   LOGO
========================================================= */

.logo {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    flex-shrink: 0;
    height: 76px;
}

/* Logo Image */
.logo-image {
    width: 55px;
    height: 55px;
    object-fit: contain;
    object-position: center;
    display: block;
    flex-shrink: 0;
}

/* Logo Text */
.logo-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.logo-text strong {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.1;
    color: var(--dark);
    white-space: nowrap;
}

.logo-text small {
    display: block;
    margin-top: 4px;
    font-family: 'Inter', sans-serif;
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--muted);
    white-space: nowrap;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .logo {
        gap: 8px;
    }

    .logo-image {
        width: 50px;
        height: 50px;
    }

    .logo-text strong {
        font-size: 18px;
    }

    .logo-text small {
        font-size: 8px;
        letter-spacing: 1.6px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    .nav-wrap {
        height: 65px;
        min-height: 65px;
        padding-left: 12px;
        padding-right: 12px;
    }

    .logo {
        height: 65px;
        gap: 8px;
    }

    .logo-image {
        width: 43px;
        height: 43px;
    }

    .logo-text strong {
        font-size: 16px;
    }

    .logo-text small {
        margin-top: 3px;
        font-size: 7px;
        letter-spacing: 1.2px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .nav-wrap {
        height: 62px;
        min-height: 62px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .logo {
        height: 62px;
        gap: 7px;
    }

    .logo-image {
        width: 38px;
        height: 38px;
    }

    .logo-text strong {
        font-size: 15px;
    }

    .logo-text small {
        font-size: 6.5px;
        letter-spacing: 1px;
    }
}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 360px) {

    .nav-wrap {
        height: 60px;
        min-height: 60px;
        padding-left: 8px;
        padding-right: 8px;
    }

    .logo {
        height: 60px;
        gap: 6px;
    }

    .logo-image {
        width: 34px;
        height: 34px;
    }

    .logo-text strong {
        font-size: 14px;
    }

    .logo-text small {
        font-size: 6px;
        letter-spacing: .8px;
    }
}

    .menu-toggle {

        width: 39px;

        height: 39px;
    }

    .nav > a,
    .nav-dropdown > .dropdown-toggle {

        font-size: 13px;

        padding-left: 16px;

        padding-right: 16px;
    }

    .dropdown-menu a {

        font-size: 12px;

        padding-left: 32px;
    }

}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 360px) {

    .topbar a {

        font-size: 8px;
    }

    .topbar-contact {

        gap: 4px 8px;
    }

    .logo strong {

        font-size: 14px;
    }

    .nav > a,
    .nav-dropdown > .dropdown-toggle {

        font-size: 12px;
    }

    .dropdown-menu a {

        font-size: 11.5px;

        padding-left: 29px;
    }

}
        /* ================= HERO ================= */

        .hero {
            height: 680px;
            position: relative;
            overflow: hidden;
            background: var(--dark);
            color: white;
        }

        .hero-slide {
            position: absolute;
            inset: 0;
            opacity: 0;
            visibility: hidden;
            transition: opacity .8s ease;
        }

        .hero-slide.active {
            opacity: 1;
            visibility: visible;
        }

        .hero-bg {
            position: absolute;
            inset: 0;
            background-size: cover;
            background-position: center;
        }

        .bg-one {
            background-image:
                linear-gradient(90deg,
                rgba(4,18,43,.95),
                rgba(4,18,43,.70),
                rgba(4,18,43,.25)),
                url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1900&q=85');
        }

        .bg-two {
            background-image:
                linear-gradient(90deg,
                rgba(3,19,46,.95),
                rgba(3,19,46,.72),
                rgba(3,19,46,.25)),
                url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1900&q=85');
        }

        .bg-three {
            background-image:
                linear-gradient(90deg,
                rgba(5,20,43,.95),
                rgba(5,20,43,.72),
                rgba(5,20,43,.25)),
                url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?auto=format&fit=crop&w=1900&q=85');
        }

        .hero-content {
            position: relative;
            z-index: 2;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .hero-badge {
            width: fit-content;
            padding: 8px 15px;
            border: 1px solid rgba(255,255,255,.25);
            border-radius: 30px;
            background: rgba(255,255,255,.08);
            font-size: 11px;
            font-weight: 800;
            letter-spacing: 2px;
            margin-bottom: 20px;
        }

        .hero h1 {
            font-size: clamp(40px,5vw,68px);
            max-width: 820px;
            letter-spacing: -2px;
        }

        .hero h1 span {
            color: #67aaff;
        }

        .hero p {
            max-width: 680px;
            color: #dbe7f7;
            margin: 20px 0 28px;
            font-size: 17px;
        }

        .hero-actions {
            display: flex;
            gap: 12px;
            flex-wrap: wrap;
        }

        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 14px 22px;
            border-radius: 9px;
            font-weight: 700;
            font-size: 14px;
            transition: .3s;
        }

        .btn:hover {
            transform: translateY(-2px);
        }

        .btn-primary {
            background: var(--primary);
            color: white;
        }

        .btn-whatsapp {
            background: var(--green);
            color: white;
        }

        .hero-points {
            display: flex;
            gap: 22px;
            margin-top: 28px;
            flex-wrap: wrap;
            font-size: 13px;
        }

        .slider-arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            z-index: 10;
            width: 45px;
            height: 45px;
            border-radius: 50%;
            border: 1px solid rgba(255,255,255,.3);
            background: rgba(255,255,255,.1);
            color: white;
            font-size: 30px;
            cursor: pointer;
        }

        .prev {
            left: 25px;
        }

        .next {
            right: 25px;
        }

        .slider-dots {
            position: absolute;
            bottom: 25px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 8px;
        }

        .slider-dots button {
            width: 9px;
            height: 9px;
            border: none;
            border-radius: 50%;
            background: rgba(255,255,255,.5);
            cursor: pointer;
        }

        .slider-dots button.active {
            width: 28px;
            border-radius: 10px;
            background: white;
        }

        /* ================= TRUST ================= */

        .trust-strip {
            background: white;
            box-shadow: 0 12px 40px rgba(7,21,46,.08);
        }

        .trust-grid {
            display: grid;
            grid-template-columns: repeat(4,1fr);
        }

        .trust-grid div {
            padding: 25px;
            text-align: center;
            border-right: 1px solid var(--border);
        }

        .trust-grid strong {
            display: block;
            color: var(--primary);
            font-size: 25px;
            font-family: Poppins;
        }

        .trust-grid span {
            font-size: 12px;
            color: var(--muted);
        }

        /* ================= COMMON ================= */

        .section {
            padding: 100px 0;
        }

        .eyebrow {
            color: var(--primary);
            font-size: 12px;
            font-weight: 800;
            letter-spacing: 2px;
        }

        .section-heading {
            max-width: 720px;
            text-align: center;
            margin: 0 auto 50px;
        }

        .section-heading h2 {
            font-size: clamp(30px,4vw,46px);
            margin: 12px 0;
        }

        .section-heading h2 span,
        .section-copy h2 span {
            color: var(--primary);
        }

        .section-heading p {
            color: var(--muted);
        }

        /* ================= ABOUT ================= */

        .two-col {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 80px;
            align-items: center;
        }

        .about-visual {
            min-height: 420px;
            background: linear-gradient(135deg,#e9f2ff,#dceaff);
            border-radius: 24px;
            display: grid;
            place-items: center;
        }

        .about-card {
            background: white;
            padding: 40px;
            border-radius: 22px;
            text-align: center;
            box-shadow: var(--shadow);
        }

        .about-icon {
            width: 70px;
            height: 70px;
            border-radius: 20px;
            display: grid;
            place-items: center;
            background: var(--primary);
            color: white;
            font-weight: 800;
            margin: auto auto 18px;
        }

        .section-copy h2 {
            font-size: clamp(30px,4vw,46px);
            margin: 12px 0 20px;
        }

        .section-copy p {
            color: var(--muted);
            margin-bottom: 14px;
        }

        .check-list {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px;
            margin: 25px 0;
            font-size: 13px;
            font-weight: 600;
        }

        .text-btn {
            color: var(--primary);
            font-weight: 800;
        }
    /* =====================================================
   PREMIUM ABOUT SECTION
===================================================== */

.about-section{
    background:#fff;
    overflow:hidden;
}

.about-container{
    display:grid;
    grid-template-columns:0.95fr 1.05fr;
    gap:80px;
    align-items:center;
}


/* =====================================================
   IMAGE AREA
===================================================== */

.about-image-wrapper{
    position:relative;
    min-height:560px;
    display:flex;
    align-items:center;
}

.about-image{
    width:100%;
    height:520px;
    position:relative;
    overflow:hidden;
    border-radius:30px;
    box-shadow:0 25px 70px rgba(7,21,46,.16);
}

.about-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .7s ease;
}

.about-image:hover img{
    transform:scale(1.06);
}

.image-overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(3,18,42,.65)
        );
}


/* =====================================================
   IMAGE DECORATION
===================================================== */

.about-image-wrapper::before{
    content:"";
    position:absolute;

    width:150px;
    height:150px;

    left:-35px;
    top:-35px;

    border-radius:30px;

    border:12px solid #e8f1ff;

    z-index:0;
}

.about-image-wrapper::after{
    content:"";

    position:absolute;

    width:100px;
    height:100px;

    right:-25px;
    bottom:15px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            #1769ff 2px,
            transparent 3px
        );

    background-size:15px 15px;

    opacity:.35;

    z-index:0;
}


/* =====================================================
   EXPERIENCE CARD
===================================================== */

.experience-card{
    position:absolute;

    left:-30px;
    bottom:40px;

    z-index:5;

    display:flex;
    align-items:center;

    gap:15px;

    padding:18px 22px;

    min-width:225px;

    background:#fff;

    border-radius:18px;

    box-shadow:
        0 18px 50px rgba(7,21,46,.16);

    border:1px solid #edf1f7;
}

.experience-number{
    font-family:'Poppins',sans-serif;

    font-size:38px;

    font-weight:800;

    line-height:1;

    color:#1769ff;
}

.experience-text strong{
    display:block;

    color:#07152e;

    font-size:13px;

    line-height:1.3;
}

.experience-text span{
    display:block;

    color:#748096;

    font-size:10px;

    margin-top:4px;
}


/* =====================================================
   FLOATING SERVICE CARD
===================================================== */

.floating-service-card{
    position:absolute;

    right:-25px;
    top:55px;

    z-index:5;

    display:flex;
    align-items:center;

    gap:11px;

    padding:13px 18px;

    background:#fff;

    border-radius:15px;

    box-shadow:
        0 15px 40px rgba(7,21,46,.13);

    border:1px solid #edf1f7;

    animation:
        floatingCard 4s ease-in-out infinite;
}

@keyframes floatingCard{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-8px);
    }

}

.floating-icon{
    width:38px;
    height:38px;

    border-radius:11px;

    background:#eaf8f1;

    color:#16a05d;

    display:grid;
    place-items:center;

    font-weight:900;
}

.floating-service-card strong{
    display:block;

    color:#07152e;

    font-size:11px;
}

.floating-service-card span{
    display:block;

    color:#748096;

    font-size:9px;

    margin-top:2px;
}


/* =====================================================
   ABOUT CONTENT
===================================================== */

.about-section .section-copy{
    position:relative;
}

.about-section .eyebrow{
    display:inline-block;

    margin-bottom:8px;
}

.about-section .section-copy h2{
    font-size:clamp(32px,4vw,49px);

    line-height:1.15;

    letter-spacing:-1.5px;

    margin:10px 0 20px;
}

.about-section .section-copy h2 span{
    color:#1769ff;
}

.about-section .section-copy p{
    color:#68768b;

    font-size:14px;

    line-height:1.8;

    margin-bottom:15px;
}

.about-section .section-copy .about-intro{
    color:#39475c;

    font-size:16px;

    font-weight:500;

    line-height:1.8;
}


/* =====================================================
   HIGHLIGHTS
===================================================== */

.about-highlights{
    display:grid;

    grid-template-columns:1fr 1fr;

    gap:12px 18px;

    margin:25px 0;
}

.about-highlight{
    display:flex;

    gap:11px;

    align-items:flex-start;

    padding:13px;

    border:1px solid #e9eef5;

    border-radius:12px;

    background:#fbfcfe;

    transition:.3s;
}

.about-highlight:hover{
    background:#fff;

    border-color:#d7e5ff;

    transform:translateY(-3px);

    box-shadow:
        0 10px 30px rgba(7,21,46,.07);
}

.highlight-icon{
    flex-shrink:0;

    width:30px;
    height:30px;

    border-radius:9px;

    display:grid;
    place-items:center;

    background:#eaf2ff;

    color:#1769ff;

    font-size:12px;

    font-weight:900;
}

.about-highlight strong{
    display:block;

    color:#152238;

    font-size:12px;

    margin-bottom:3px;
}

.about-highlight span{
    display:block;

    color:#7a8799;

    font-size:10px;

    line-height:1.5;
}


/* =====================================================
   BUTTONS
===================================================== */

.about-buttons{
    display:flex;

    gap:11px;

    flex-wrap:wrap;

    margin-top:25px;
}

.about-primary-btn,
.about-whatsapp-btn{
    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:14px 20px;

    border-radius:10px;

    font-size:12px;

    font-weight:800;

    transition:.3s;
}

.about-primary-btn{
    color:#fff;

    background:#1769ff;

    box-shadow:
        0 12px 25px rgba(23,105,255,.20);
}

.about-whatsapp-btn{
    color:#fff;

    background:#16a05d;

    box-shadow:
        0 12px 25px rgba(22,160,93,.16);
}

.about-primary-btn:hover,
.about-whatsapp-btn:hover{
    transform:translateY(-3px);
}

.about-primary-btn span{
    font-size:17px;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:1000px){

    .about-container{
        grid-template-columns:1fr;

        gap:55px;
    }

    .about-image-wrapper{
        max-width:680px;

        width:100%;

        margin:auto;
    }

    .about-section .section-copy{
        max-width:720px;

        margin:auto;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .about-container{
        gap:45px;
    }

    .about-image-wrapper{
        min-height:390px;
    }

    .about-image{
        height:380px;

        border-radius:22px;
    }

    .about-image-wrapper::before{
        width:90px;
        height:90px;

        left:-15px;
        top:-15px;

        border-width:8px;

        border-radius:20px;
    }

    .about-image-wrapper::after{
        width:65px;
        height:65px;

        right:-12px;
        bottom:5px;
    }

    .experience-card{
        left:10px;
        bottom:20px;

        min-width:190px;

        padding:13px 15px;

        border-radius:14px;
    }

    .experience-number{
        font-size:30px;
    }

    .experience-text strong{
        font-size:11px;
    }

    .experience-text span{
        font-size:8px;
    }

    .floating-service-card{
        right:8px;
        top:20px;

        padding:10px 12px;

        border-radius:12px;
    }

    .floating-icon{
        width:32px;
        height:32px;
    }

    .floating-service-card strong{
        font-size:9px;
    }

    .floating-service-card span{
        font-size:8px;
    }

    .about-section .section-copy h2{
        font-size:32px;

        letter-spacing:-.8px;
    }

    .about-section .section-copy .about-intro{
        font-size:14px;
    }

    .about-highlights{
        grid-template-columns:1fr;

        gap:10px;
    }

    .about-buttons{
        flex-direction:column;
    }

    .about-primary-btn,
    .about-whatsapp-btn{
        width:100%;
    }

}
   /* =====================================================
   PREMIUM SERVICES
===================================================== */

.services{
    background:#f6f9fe;
    position:relative;
    overflow:hidden;
}


/* SERVICE GRID */

.service-grid{
    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:24px;
}


/* SERVICE CARD */

.service-card{
    position:relative;

    background:#fff;

    padding:25px 24px 27px;

    border-radius:22px;

    border:1px solid #e7edf6;

    text-align:center;

    overflow:hidden;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.service-card::before{
    content:"";

    position:absolute;

    width:160px;
    height:160px;

    border-radius:50%;

    background:#f0f6ff;

    top:-90px;
    right:-70px;

    transition:.4s;
}

.service-card:hover{
    transform:translateY(-9px);

    border-color:#d6e5ff;

    box-shadow:
        0 22px 55px
        rgba(7,21,46,.12);
}

.service-card:hover::before{
    transform:scale(1.3);

    background:#eaf3ff;
}


/* =====================================================
   ROUND SERVICE IMAGE
===================================================== */

.service-image{
    position:relative;

    width:135px;
    height:135px;

    margin:0 auto 25px;

    z-index:2;
}


/* OUTER RING */

.service-image::before{
    content:"";

    position:absolute;

    inset:-8px;

    border-radius:50%;

    border:1px solid #dce8fa;

    background:#fff;

    z-index:-1;

    transition:.4s;
}


/* IMAGE */

.service-image img{
    width:100%;
    height:100%;

    object-fit:cover;

    display:block;

    border-radius:50%;

    border:6px solid #fff;

    box-shadow:
        0 12px 30px
        rgba(7,21,46,.14);

    transition:
        transform .5s ease,
        filter .5s ease;
}


/* HOVER IMAGE */

.service-card:hover .service-image img{
    transform:scale(1.08);

    filter:saturate(1.12);
}

.service-card:hover .service-image::before{
    transform:scale(1.12);

    border-color:#bcd5ff;
}


/* =====================================================
   SERVICE ICON OVERLAY
===================================================== */

.service-icon{
    position:absolute;

    right:-8px;
    bottom:-5px;

    width:48px;
    height:48px;

    border-radius:50%;

    display:grid;
    place-items:center;

    background:
        linear-gradient(
            135deg,
            #1769ff,
            #54a4ff
        );

    color:#fff;

    border:4px solid #fff;

    box-shadow:
        0 9px 22px
        rgba(23,105,255,.28);

    font-size:10px;

    font-weight:900;

    z-index:4;

    transition:.3s;
}

.service-card:hover .service-icon{
    transform:
        rotate(8deg)
        scale(1.08);
}


/* =====================================================
   SERVICE CONTENT
===================================================== */

.service-card h3{
    position:relative;

    z-index:2;

    color:#07152e;

    font-family:'Poppins',sans-serif;

    font-size:18px;

    margin-bottom:10px;
}

.service-card p{
    position:relative;

    z-index:2;

    color:#68768b;

    font-size:13px;

    line-height:1.7;

    min-height:67px;

    margin-bottom:14px;
}


/* =====================================================
   SERVICE LINK
===================================================== */

.service-card > a{
    position:relative;

    z-index:3;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:5px;

    padding:10px 17px;

    border-radius:8px;

    background:#f0f6ff;

    color:#1769ff;

    font-size:11px;

    font-weight:800;

    transition:.3s;
}

.service-card > a:hover{
    background:#1769ff;

    color:#fff;

    transform:translateX(3px);
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:1000px){

    .service-grid{
        grid-template-columns:
            repeat(2,1fr);

        gap:20px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .service-grid{
        grid-template-columns:1fr;

        gap:18px;
    }

    .service-card{
        padding:24px 20px 25px;

        border-radius:19px;
    }

    .service-image{
        width:125px;
        height:125px;

        margin-bottom:23px;
    }

    .service-icon{
        width:45px;
        height:45px;

        right:-7px;
        bottom:-4px;
    }

    .service-card h3{
        font-size:17px;
    }

    .service-card p{
        min-height:auto;

        font-size:12px;

        max-width:320px;

        margin-left:auto;
        margin-right:auto;
    }

}
        /* ================= WHY ================= */

        .why {
            background: var(--light);
        }

        .why-grid {
            display: grid;
            grid-template-columns: repeat(4,1fr);
            gap: 18px;
        }

        .why-box {
            background: white;
            padding: 30px;
            border-radius: 16px;
            border: 1px solid var(--border);
        }

        .why-box span {
            color: var(--primary);
            font-weight: 800;
            font-size: 12px;
        }

        .why-box h3 {
            margin: 18px 0 10px;
            font-size: 18px;
        }

        .why-box p {
            color: var(--muted);
            font-size: 13px;
        }
/* =========================================================
   ADVANCED WHY CHOOSE US
========================================================= */

.why-advanced{

    position:relative;

    overflow:hidden;

    background:
        radial-gradient(
            circle at 5% 10%,
            rgba(23,105,255,.07),
            transparent 30%
        ),
        radial-gradient(
            circle at 95% 90%,
            rgba(0,184,148,.06),
            transparent 30%
        ),
        #f7f9fc;
}


/* TOP AREA */

.why-top{

    display:grid;

    grid-template-columns:
        1fr .8fr;

    align-items:end;

    gap:60px;

    margin-bottom:45px;
}

.why-heading .eyebrow{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:#1769ff;

    font-size:10px;

    font-weight:800;

    letter-spacing:1.3px;
}

.why-heading .eyebrow::before{

    content:"";

    width:28px;

    height:2px;

    border-radius:5px;

    background:#1769ff;
}

.why-heading h2{

    margin-top:12px;

    color:#07152e;

    font-family:Poppins,sans-serif;

    font-size:
        clamp(32px,4vw,48px);

    line-height:1.15;

    letter-spacing:-1.5px;
}

.why-heading h2 span{

    display:block;

    color:#1769ff;
}

.why-intro{

    max-width:500px;

    justify-self:end;

    color:#66758c;

    font-size:13px;

    line-height:1.9;

    padding-left:25px;

    border-left:3px solid #1769ff;
}


/* =========================================================
   GRID
========================================================= */

.why-grid-advanced{

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:20px;
}


/* =========================================================
   CARD
========================================================= */

.why-card-advanced{

    position:relative;

    overflow:hidden;

    min-height:300px;

    padding:27px;

    border:1px solid #e3e9f2;

    border-radius:22px;

    background:#fff;

    box-shadow:
        0 12px 40px rgba(7,21,46,.055);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.why-card-advanced::before{

    content:"";

    position:absolute;

    width:150px;

    height:150px;

    right:-80px;

    top:-80px;

    border-radius:50%;

    background:
        rgba(23,105,255,.06);

    transition:.4s;
}

.why-card-advanced::after{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:3px;

    background:
        linear-gradient(
            90deg,
            #1769ff,
            #00b894
        );

    transform:
        scaleX(0);

    transform-origin:left;

    transition:.4s;
}

.why-card-advanced:hover{

    transform:
        translateY(-9px);

    border-color:
        rgba(23,105,255,.18);

    box-shadow:
        0 25px 65px rgba(7,21,46,.12);
}

.why-card-advanced:hover::before{

    width:250px;

    height:250px;

    right:-120px;

    top:-120px;
}

.why-card-advanced:hover::after{

    transform:
        scaleX(1);
}


/* =========================================================
   CARD TOP
========================================================= */

.why-card-top{

    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    justify-content:space-between;
}

.why-number{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:43px;

    height:27px;

    border-radius:30px;

    color:#1769ff;

    background:#edf4ff;

    font-family:Poppins,sans-serif;

    font-size:10px;

    font-weight:800;

    letter-spacing:.5px;
}


/* =========================================================
   ICON
========================================================= */

.why-icon{

    position:relative;

    width:58px;

    height:58px;

    display:grid;

    place-items:center;

    border-radius:17px;

    color:#1769ff;

    background:
        linear-gradient(
            135deg,
            #edf4ff,
            #f5f8ff
        );

    border:1px solid #dce9ff;

    font-size:21px;

    box-shadow:
        0 10px 25px rgba(23,105,255,.08);

    transition:.35s;
}

.why-icon::before{

    content:"";

    position:absolute;

    inset:-5px;

    border-radius:20px;

    border:1px solid rgba(23,105,255,.08);

    transition:.35s;
}

.why-card-advanced:hover .why-icon{

    color:#fff;

    background:
        linear-gradient(
            135deg,
            #1769ff,
            #5c36f2
        );

    transform:
        rotate(-5deg)
        scale(1.05);

    box-shadow:
        0 12px 30px rgba(23,105,255,.28);
}

.why-card-advanced:hover .why-icon::before{

    inset:-9px;

    border-color:
        rgba(23,105,255,.16);
}


/* =========================================================
   LINE
========================================================= */

.why-line{

    width:38px;

    height:3px;

    margin-top:23px;

    margin-bottom:20px;

    border-radius:10px;

    background:
        linear-gradient(
            90deg,
            #1769ff,
            #00b894
        );
}


/* =========================================================
   CONTENT
========================================================= */

.why-card-advanced h3{

    position:relative;

    z-index:2;

    color:#07152e;

    font-family:Poppins,sans-serif;

    font-size:18px;

    line-height:1.35;

    margin-bottom:10px;
}

.why-card-advanced p{

    position:relative;

    z-index:2;

    max-width:340px;

    min-height:65px;

    color:#718096;

    font-size:11px;

    line-height:1.8;
}


/* =========================================================
   CARD BOTTOM
========================================================= */

.why-bottom{

    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    justify-content:space-between;

    margin-top:22px;

    padding-top:15px;

    border-top:1px solid #edf0f4;

    color:#1769ff;

    font-size:9px;

    font-weight:800;

    text-transform:uppercase;

    letter-spacing:.5px;
}

.why-bottom i{

    width:28px;

    height:28px;

    display:grid;

    place-items:center;

    border-radius:50%;

    background:#edf4ff;

    font-size:10px;

    transition:.3s;
}

.why-card-advanced:hover
.why-bottom i{

    color:#fff;

    background:#1769ff;

    transform:
        translateX(4px);
}


/* =========================================================
   CTA
========================================================= */

.why-cta{

    position:relative;

    overflow:hidden;

    display:flex;

    align-items:center;

    gap:20px;

    margin-top:28px;

    padding:25px 28px;

    border-radius:20px;

    color:#fff;

    background:
        linear-gradient(
            115deg,
            #07152e,
            #0c2450
        );

    box-shadow:
        0 20px 50px rgba(7,21,46,.13);
}

.why-cta::after{

    content:"";

    position:absolute;

    width:280px;

    height:280px;

    right:-100px;

    top:-170px;

    border-radius:50%;

    background:
        rgba(23,105,255,.18);
}

.why-cta-icon{

    position:relative;

    z-index:2;

    flex-shrink:0;

    width:58px;

    height:58px;

    display:grid;

    place-items:center;

    border-radius:16px;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            #1769ff,
            #653cf2
        );

    font-size:22px;
}

.why-cta-content{

    position:relative;

    z-index:2;

    flex:1;
}

.why-cta-content span{

    display:block;

    color:#72a5ff;

    font-size:8px;

    font-weight:800;

    letter-spacing:1px;

    margin-bottom:4px;
}

.why-cta-content h3{

    color:#fff;

    font-family:Poppins,sans-serif;

    font-size:17px;
}

.why-cta-buttons{

    position:relative;

    z-index:2;

    display:flex;

    gap:8px;
}

.why-btn,
.why-wa{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    min-height:42px;

    padding:0 16px;

    border-radius:9px;

    font-size:9px;

    font-weight:800;

    white-space:nowrap;

    transition:.3s;
}

.why-btn{

    color:#07152e;

    background:#fff;
}

.why-btn:hover{

    transform:
        translateY(-2px);
}

.why-wa{

    color:#fff;

    background:#12a85d;
}

.why-wa:hover{

    transform:
        translateY(-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1000px){

    .why-top{

        grid-template-columns:1fr;

        gap:18px;
    }

    .why-intro{

        justify-self:start;

        max-width:650px;
    }

    .why-grid-advanced{

        grid-template-columns:
            repeat(2,1fr);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:650px){

    .why-advanced{

        padding:
            65px 0;
    }

    .why-top{

        gap:15px;

        margin-bottom:30px;
    }

    .why-heading h2{

        font-size:32px;

        letter-spacing:-1px;
    }

    .why-intro{

        padding-left:15px;

        font-size:11px;

        line-height:1.8;
    }

    .why-grid-advanced{

        grid-template-columns:1fr;

        gap:15px;
    }

    .why-card-advanced{

        min-height:auto;

        padding:22px;

        border-radius:18px;
    }

    .why-card-advanced p{

        min-height:auto;

        font-size:10px;
    }

    .why-icon{

        width:52px;

        height:52px;

        border-radius:15px;

        font-size:19px;
    }

    .why-number{

        width:40px;

        height:25px;

        font-size:9px;
    }

    .why-line{

        margin-top:19px;

        margin-bottom:15px;
    }

    .why-card-advanced h3{

        font-size:16px;
    }

    .why-bottom{

        margin-top:18px;
    }

    .why-cta{

        flex-direction:column;

        align-items:flex-start;

        padding:22px;

        border-radius:18px;

        gap:14px;
    }

    .why-cta-icon{

        width:50px;

        height:50px;

        font-size:19px;
    }

    .why-cta-content h3{

        font-size:15px;

        line-height:1.4;
    }

    .why-cta-buttons{

        width:100%;

        display:grid;

        grid-template-columns:
            1fr 1fr;
    }

    .why-btn,
    .why-wa{

        width:100%;

        min-height:44px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:380px){

    .why-heading h2{
        font-size:28px;
    }

    .why-card-advanced{
        padding:19px;
    }

    .why-cta-buttons{

        grid-template-columns:1fr;

    }

}
        /* ================= CTA ================= */

        .cta-section {
            background: var(--dark);
            color: white;
            padding: 80px 0;
        }

        .cta-inner {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 40px;
        }

        .cta-inner h2 {
            font-size: clamp(30px,4vw,46px);
            max-width: 750px;
            margin-top: 12px;
        }

        .cta-inner h2 span {
            color: #67aaff;
        }

        .cta-actions {
            display: flex;
            gap: 12px;
            flex-wrap: wrap;
        }
        /* =========================================================
   PREMIUM FAQ SECTION
========================================================= */

.faq-advanced{

    position:relative;

    overflow:hidden;

    background:#ffffff;

    /* REDUCED SPACE BELOW */

    padding-top:65px !important;

    padding-bottom:30px !important;

    margin-bottom:0 !important;
}


/* Background Decorations */

.faq-advanced::before{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    left:-230px;

    top:80px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(23,105,255,.07),
            transparent 70%
        );

    pointer-events:none;
}


.faq-advanced::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    right:-180px;

    bottom:-120px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(0,184,148,.06),
            transparent 70%
        );

    pointer-events:none;
}


/* =========================================================
   HEADER
========================================================= */

.faq-header{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
        1fr .75fr;

    align-items:end;

    gap:55px;

    margin-bottom:38px;
}


.faq-heading .eyebrow{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:#1769ff;

    font-size:10px;

    font-weight:800;

    letter-spacing:1.3px;
}


.faq-heading .eyebrow::before{

    content:"";

    width:28px;

    height:2px;

    border-radius:10px;

    background:#1769ff;
}


.faq-heading h2{

    margin-top:12px;

    color:#07152e;

    font-family:Poppins,sans-serif;

    font-size:
        clamp(32px,4vw,48px);

    line-height:1.12;

    letter-spacing:-1.5px;
}


.faq-heading h2 span{

    display:block;

    color:#1769ff;
}


.faq-header > p{

    max-width:500px;

    justify-self:end;

    color:#6c7a90;

    font-size:15px;

    line-height:1.85;

    padding-left:20px;

    border-left:3px solid #1769ff;
}


/* =========================================================
   LAYOUT
========================================================= */

.faq-layout{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
        .75fr 1.25fr;

    gap:30px;

    align-items:start;

    margin-bottom:0;
}


/* =========================================================
   LEFT SIDE
========================================================= */

.faq-info{

    display:flex;

    flex-direction:column;

    gap:11px;
}


/* MAIN INFO CARD */

.faq-info-card{

    position:relative;

    overflow:hidden;

    padding:29px;

    border-radius:22px;

    color:#fff;

    background:
        linear-gradient(
            140deg,
            #07152e 0%,
            #0d2c5f 100%
        );

    box-shadow:
        0 18px 45px rgba(7,21,46,.14);
}


.faq-info-card::before{

    content:"";

    position:absolute;

    width:210px;

    height:210px;

    right:-90px;

    top:-100px;

    border-radius:50%;

    background:
        rgba(23,105,255,.23);
}


.faq-info-card::after{

    content:"";

    position:absolute;

    width:110px;

    height:110px;

    right:-30px;

    bottom:-45px;

    border-radius:50%;

    border:18px solid rgba(255,255,255,.035);
}


.faq-info-icon{

    position:relative;

    z-index:2;

    display:grid;

    place-items:center;

    width:53px;

    height:53px;

    margin-bottom:21px;

    border-radius:15px;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            #1769ff,
            #653cf2
        );

    font-size:19px;

    box-shadow:
        0 10px 25px rgba(23,105,255,.3);
}


.faq-info-card > span{

    position:relative;

    z-index:2;

    display:block;

    color:#72a5ff;

    font-size:8px;

    font-weight:800;

    letter-spacing:1.2px;

    margin-bottom:5px;
}


.faq-info-card h3{

    position:relative;

    z-index:2;

    margin-bottom:9px;

    color:#fff;

    font-size:20px;

    line-height:1.3;
}


.faq-info-card p{

    position:relative;

    z-index:2;

    color:#b8c5d9;

    font-size:10px;

    line-height:1.8;

    margin-bottom:20px;
}


/* CTA BUTTON */

.faq-contact-btn{

    position:relative;

    z-index:2;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:9px;

    min-height:41px;

    padding:0 15px;

    border-radius:9px;

    color:#07152e;

    background:#fff;

    font-size:9px;

    font-weight:800;

    transition:.3s;
}


.faq-contact-btn:hover{

    transform:
        translateY(-3px);

    box-shadow:
        0 9px 22px rgba(0,0,0,.2);
}


/* =========================================================
   MINI CARDS
========================================================= */

.faq-mini{

    display:flex;

    align-items:center;

    gap:13px;

    padding:14px;

    border:1px solid #e8edf4;

    border-radius:14px;

    background:#f9fbfe;

    transition:.3s;
}


.faq-mini:hover{

    transform:
        translateX(4px);

    border-color:#d5e3ff;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(7,21,46,.05);
}


.faq-mini-icon{

    flex-shrink:0;

    width:40px;

    height:40px;

    display:grid;

    place-items:center;

    border-radius:11px;

    color:#1769ff;

    background:#edf4ff;

    font-size:14px;
}


.faq-mini strong{

    display:block;

    color:#14233d;

    font-size:10px;

    margin-bottom:2px;
}


.faq-mini span{

    display:block;

    color:#7b8798;

    font-size:8px;
}


/* =========================================================
   FAQ LIST
========================================================= */

.faq-list{

    display:flex;

    flex-direction:column;

    gap:8px;

    margin-bottom:0;
}


.faq-item{

    overflow:hidden;

    border:1px solid #e5eaf1;

    border-radius:14px;

    background:#fff;

    transition:.3s;
}


.faq-item:hover{

    border-color:
        rgba(23,105,255,.25);

    box-shadow:
        0 8px 28px rgba(7,21,46,.05);
}


.faq-item.active{

    border-color:
        rgba(23,105,255,.25);

    box-shadow:
        0 10px 30px rgba(23,105,255,.06);
}


/* =========================================================
   QUESTION
========================================================= */

.faq-question{

    width:100%;

    display:grid;

    grid-template-columns:
        36px 1fr 32px;

    align-items:center;

    gap:12px;

    padding:15px 16px;

    border:0;

    outline:none;

    cursor:pointer;

    text-align:left;

    background:transparent;
}


.faq-q-number{

    display:grid;

    place-items:center;

    width:33px;

    height:26px;

    border-radius:7px;

    color:#1769ff;

    background:#edf4ff;

    font-size:8px;

    font-weight:800;
}


.faq-q-text{

    color:#17253d;

    font-family:Poppins,sans-serif;

    font-size:10px;

    font-weight:700;

    line-height:1.5;
}


.faq-toggle{

    display:grid;

    place-items:center;

    width:30px;

    height:30px;

    border-radius:50%;

    color:#1769ff;

    background:#f0f5ff;

    font-size:8px;

    transition:.3s;
}


.faq-item.active .faq-toggle{

    color:#fff;

    background:#1769ff;

    transform:
        rotate(180deg);
}


/* =========================================================
   ANSWER
========================================================= */

.faq-answer{

    display:grid;

    grid-template-rows:0fr;

    transition:
        grid-template-rows .35s ease;
}


.faq-answer > div{

    overflow:hidden;
}


.faq-answer p{

    margin:0;

    padding:
        0 17px 17px 82px;

    color:#6d7b8f;

    font-size:9.5px;

    line-height:1.8;
}


.faq-item.active .faq-answer{

    grid-template-rows:1fr;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:950px){

    .faq-header{

        grid-template-columns:1fr;

        gap:17px;

        margin-bottom:30px;
    }


    .faq-header > p{

        justify-self:start;

        max-width:650px;
    }


    .faq-layout{

        grid-template-columns:1fr;

        gap:22px;
    }


    .faq-info{

        display:grid;

        grid-template-columns:
            1fr 1fr;
    }


    .faq-info-card{

        grid-column:
            1 / -1;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:650px){

    .faq-advanced{

        padding-top:45px !important;

        padding-bottom:20px !important;

        margin-bottom:0 !important;
    }


    .faq-header{

        gap:13px;

        margin-bottom:25px;
    }


    .faq-heading h2{

        font-size:35px;

        letter-spacing:-1px;
    }


    .faq-header > p{

        padding-left:14px;

        font-size:12px;

        line-height:1.8;
    }


    .faq-layout{

        gap:16px;

        margin-bottom:0;
    }


    .faq-info{

        display:flex;

        gap:9px;
    }


    .faq-info-card{

        padding:22px;

        border-radius:18px;
    }


    .faq-info-icon{

        width:48px;

        height:48px;

        margin-bottom:18px;

        font-size:17px;
    }


    .faq-info-card h3{

        font-size:17px;
    }


    .faq-info-card p{

        font-size:9px;

        line-height:1.75;

        margin-bottom:17px;
    }


    .faq-mini{

        padding:12px;

        border-radius:12px;
    }


    .faq-mini-icon{

        width:36px;

        height:36px;

        border-radius:9px;

        font-size:13px;
    }


    .faq-mini strong{

        font-size:9px;
    }


    .faq-mini span{

        font-size:7.5px;
    }


    .faq-list{

        gap:7px;

        margin-bottom:0;
    }


    .faq-item{

        border-radius:12px;
    }


    .faq-question{

        grid-template-columns:
            29px 1fr 28px;

        gap:8px;

        padding:12px;
    }


    .faq-q-number{

        width:29px;

        height:23px;

        font-size:7px;
    }


    .faq-q-text{

        font-size:9px;
    }


    .faq-toggle{

        width:27px;

        height:27px;

        font-size:7px;
    }


    .faq-answer p{

        padding:
            0 13px 14px 49px;

        font-size:8.5px;

        line-height:1.75;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:390px){

    .faq-advanced{

        padding-top:38px !important;

        padding-bottom:15px !important;
    }


    .faq-heading h2{

        font-size:27px;
    }


    .faq-info-card{

        padding:19px;
    }


    .faq-question{

        grid-template-columns:
            27px 1fr 26px;

        gap:7px;

        padding:11px;
    }


    .faq-q-number{

        width:27px;

        height:22px;
    }


    .faq-toggle{

        width:26px;

        height:26px;
    }


    .faq-q-text{

        font-size:8.5px;
    }


    .faq-answer p{

        padding-left:46px;

        font-size:8px;
    }

}
        /* ================= CONTACT ================= */

        .contact-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 70px;
        }

        .contact h2 {
            font-size: clamp(30px,4vw,46px);
            margin: 12px 0;
        }

        .contact h2 span {
            color: var(--primary);
        }

        .contact p {
            color: var(--muted);
        }

        .contact-items {
            margin-top: 28px;
            display: grid;
            gap: 14px;
        }

        .contact-items div,
        .contact-items a {
            display: flex;
            gap: 13px;
            align-items: center;
        }

        .contact-items b {
            width: 42px;
            height: 42px;
            background: #edf4ff;
            color: var(--primary);
            border-radius: 12px;
            display: grid;
            place-items: center;
        }

        .contact-items small {
            display: block;
            font-size: 10px;
            color: var(--muted);
            text-transform: uppercase;
        }

        .contact-form {
            background: #f7f9fc;
            padding: 30px;
            border-radius: 20px;
            border: 1px solid var(--border);
        }

        .contact-form h3 {
            margin-bottom: 20px;
        }

        .contact-form input,
        .contact-form select,
        .contact-form textarea {
            width: 100%;
            padding: 14px;
            margin-bottom: 12px;
            border: 1px solid #dfe5ee;
            border-radius: 9px;
            outline: none;
        }

        .contact-form textarea {
            resize: vertical;
        }

      /* =========================================================
   AB SMART SOLUTIONS
   PREMIUM FOOTER CSS
========================================================= */

.footer {
    position: relative;
    overflow: hidden;
    color: #c8d2df;
    background:
        linear-gradient(
            135deg,
            #061329 0%,
            #081c3b 52%,
            #061329 100%
        );
    padding-top: 65px;
}


/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.footer::before {
    content: "";
    position: absolute;
    width: 430px;
    height: 430px;
    top: -240px;
    right: -150px;
    border-radius: 50%;
    background:
        radial-gradient(
            circle,
            rgba(23,105,255,0.18),
            transparent 70%
        );
    pointer-events: none;
}


.footer::after {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    left: -190px;
    bottom: -170px;
    border-radius: 50%;
    background:
        radial-gradient(
            circle,
            rgba(0,196,255,0.08),
            transparent 70%
        );
    pointer-events: none;
}


/* =========================================================
   FOOTER GRID
========================================================= */

.footer-grid {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        1.35fr
        .85fr
        1fr
        1fr;

    gap: 45px;

    padding-bottom: 50px;
}


/* =========================================================
   BRAND
========================================================= */

.footer-brand {
    min-width: 0;
}


.footer-logo {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: #ffffff;
    margin-bottom: 18px;
}


.footer-logo .logo-mark {
    box-shadow:
        0 10px 28px rgba(23,105,255,0.28);
}


.footer-description {
    max-width: 350px;

    color: #aebaca;

    font-size: 13px;
    line-height: 1.85;

    margin: 0 0 23px;
}


/* =========================================================
   SOCIAL MEDIA
========================================================= */

.footer-social {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}


.footer-social a {
    width: 41px;
    height: 41px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255,255,255,0.11);

    border-radius: 11px;

    color: #d5dfeb;

    background:
        rgba(255,255,255,0.045);

    text-decoration: none;

    font-size: 15px;

    transition:
        transform .3s ease,
        color .3s ease,
        background .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}


.footer-social a:hover {
    color: #ffffff;

    transform:
        translateY(-5px);

    border-color: transparent;

    box-shadow:
        0 10px 24px rgba(0,0,0,0.18);
}


/* FACEBOOK */

.social-facebook:hover {
    background: #1877f2;
}


/* INSTAGRAM */

.social-instagram:hover {
    background:
        linear-gradient(
            135deg,
            #833ab4,
            #fd1d1d,
            #fcb045
        );
}


/* LINKEDIN */

.social-linkedin:hover {
    background: #0a66c2;
}


/* YOUTUBE */

.social-youtube:hover {
    background: #ff0000;
}


/* X */

.social-twitter:hover {
    background: #000000;
}


/* WHATSAPP */

.social-whatsapp:hover {
    background: #25d366;
}


/* =========================================================
   FOOTER COLUMNS
========================================================= */

.footer-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}


.footer-column h4 {
    position: relative;

    margin: 2px 0 9px;

    color: #ffffff;

    font-family: Poppins, sans-serif;

    font-size: 15px;

    font-weight: 700;

    line-height: 1.4;
}


.footer-line {
    display: block;

    width: 30px;
    height: 2px;

    margin-bottom: 17px;

    border-radius: 10px;

    background: #1769ff;
}


/* =========================================================
   FOOTER LINKS
========================================================= */

.footer-column > a {
    display: flex;
    align-items: center;

    gap: 8px;

    width: max-content;

    margin-bottom: 10px;

    color: #aebaca;

    font-size: 12px;

    line-height: 1.6;

    text-decoration: none;

    transition:
        color .25s ease,
        transform .25s ease;
}


.footer-column > a i {
    color: #4d91ff;

    font-size: 10px;

    transition:
        transform .25s ease;
}


.footer-column > a:hover {
    color: #ffffff;

    transform:
        translateX(5px);
}


.footer-column > a:hover i {
    transform:
        translateX(2px);
}


/* =========================================================
   CONTACT
========================================================= */

.contact-item {
    display: flex;
    align-items: center;

    gap: 11px;

    margin-bottom: 14px;

    color: #b5c0ce;

    font-size: 12px;

    line-height: 1.55;

    text-decoration: none;
}


.contact-icon {
    flex-shrink: 0;

    width: 36px;
    height: 36px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: #69a2ff;

    background:
        rgba(23,105,255,0.11);

    border:
        1px solid rgba(23,105,255,0.14);

    font-size: 12px;
}


.contact-item small {
    display: block;

    margin-bottom: 3px;

    color: #71829a;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: .5px;

    line-height: 1.3;
}


/* Contact link hover */

.footer-contact > a.contact-item {
    width: auto;

    margin-bottom: 14px;

    transform: none;
}


.footer-contact > a.contact-item:hover {
    color: #ffffff;

    transform: none;
}


/* =========================================================
   WHATSAPP CONTACT BUTTON
========================================================= */

.footer-whatsapp {
    display: flex !important;
    align-items: center;
    justify-content: center;

    gap: 9px;

    width: 100% !important;

    min-height: 43px;

    margin-top: 3px;

    padding: 0 14px;

    border-radius: 10px;

    color: #ffffff !important;

    background: #25d366;

    font-size: 12px !important;

    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0 8px 24px rgba(37,211,102,0.16);

    transition:
        transform .3s ease,
        background .3s ease,
        box-shadow .3s ease !important;
}


.footer-whatsapp i:first-child {
    font-size: 16px;
}


.footer-whatsapp i:last-child {
    margin-left: auto;

    font-size: 9px;
}


.footer-whatsapp:hover {
    color: #ffffff !important;

    background: #20bd5a;

    transform:
        translateY(-3px) !important;

    box-shadow:
        0 13px 28px rgba(37,211,102,0.25);
}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.footer-bottom {
    position: relative;
    z-index: 3;

    border-top:
        1px solid rgba(255,255,255,0.08);

    background:
        rgba(0,0,0,0.16);
}


.footer-bottom-inner {
    min-height: 65px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;
}


.footer-bottom p {
    margin: 0;

    color: #7e8da2;

    font-size: 10px;

    line-height: 1.6;
}


.footer-bottom p strong {
    color: #c4cfdd;
}


.footer-bottom-links {
    display: flex;
    align-items: center;

    gap: 11px;
}


.footer-bottom-links a {
    color: #7e8da2;

    font-size: 10px;

    text-decoration: none;

    transition:
        color .25s ease;
}


.footer-bottom-links a:hover {
    color: #ffffff;
}


.footer-bottom-links span {
    color: #405067;

    font-size: 9px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .footer {
        padding-top: 55px;
    }


    .footer-grid {
        grid-template-columns:
            1fr 1fr;

        gap: 38px 35px;

        padding-bottom: 42px;
    }


    .footer-brand {
        grid-column: 1 / -1;
    }


    .footer-description {
        max-width: 650px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 650px) {

    .footer {
        padding-top: 48px;
    }


    .footer-grid {
        display: grid;

        grid-template-columns:
            1fr 1fr;

        gap: 32px 18px;

        padding-bottom: 34px;
    }


    /* BRAND FULL WIDTH */

    .footer-brand {
        grid-column: 1 / -1;
    }


    /* LOGO */

    .footer-logo {
        margin-bottom: 15px;
    }


    /* DESCRIPTION */

    .footer-description {
        max-width: 100%;

        font-size: 13px;

        line-height: 1.85;

        margin-bottom: 20px;
    }


    /* SOCIAL */

    .footer-social {
        gap: 8px;
    }


    .footer-social a {
        width: 40px;
        height: 40px;

        border-radius: 10px;

        font-size: 14px;
    }


    /* HEADINGS */

    .footer-column h4 {
        font-size: 15px;

        margin-bottom: 9px;
    }


    .footer-line {
        width: 28px;

        height: 2px;

        margin-bottom: 15px;
    }


    /* LINKS */

    .footer-column > a {
        font-size: 12px;

        line-height: 1.65;

        gap: 7px;

        margin-bottom: 10px;
    }


    .footer-column > a i {
        font-size: 10px;
    }


    /* CONTACT */

    .contact-item {
        gap: 10px;

        margin-bottom: 12px;

        font-size: 12px;

        line-height: 1.55;
    }


    .contact-item small {
        font-size: 9px;

        margin-bottom: 3px;
    }


    .contact-icon {
        width: 36px;
        height: 36px;

        border-radius: 9px;

        font-size: 11px;
    }


    /* WHATSAPP */

    .footer-whatsapp {
        min-height: 43px;

        padding: 0 11px;

        border-radius: 10px;

        font-size: 12px !important;
    }


    .footer-whatsapp i:first-child {
        font-size: 16px;
    }


    /* BOTTOM */

    .footer-bottom-inner {
        min-height: auto;

        padding:
            17px 10px;

        flex-direction: column;

        justify-content: center;

        text-align: center;

        gap: 9px;
    }


    .footer-bottom p {
        font-size: 10px;

        line-height: 1.6;
    }


    .footer-bottom-links {
        gap: 9px;

        flex-wrap: wrap;

        justify-content: center;
    }


    .footer-bottom-links a {
        font-size: 10px;
    }


    .footer-bottom-links span {
        font-size: 9px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .footer {
        padding-top: 42px;
    }


    .footer-grid {
        gap: 27px 14px;
    }


    .footer-description {
        font-size: 12px;

        line-height: 1.8;
    }


    .footer-social a {
        width: 38px;
        height: 38px;

        font-size: 13px;
    }


    .footer-column h4 {
        font-size: 14px;
    }


    .footer-column > a {
        font-size: 11px;

        gap: 6px;
    }


    .footer-column > a i {
        font-size: 9px;
    }


    .contact-item {
        font-size: 11px;

        gap: 8px;
    }


    .contact-item small {
        font-size: 8px;
    }


    .contact-icon {
        width: 33px;
        height: 33px;

        font-size: 10px;
    }


    .footer-whatsapp {
        min-height: 41px;

        font-size: 11px !important;
    }


    .footer-bottom p {
        font-size: 9px;
    }


    .footer-bottom-links a {
        font-size: 9px;
    }

}


/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media (max-width: 340px) {

    .footer-grid {
        grid-template-columns: 1fr;

        gap: 27px;
    }


    .footer-brand {
        grid-column: auto;
    }


    .footer-column {
        width: 100%;
    }


    .footer-description {
        font-size: 12px;
    }


    .footer-column h4 {
        font-size: 14px;
    }


    .footer-column > a {
        font-size: 11px;
    }


    .contact-item {
        font-size: 11px;
    }

}
        /* ================= FLOATING WHATSAPP ================= */

        .floating-wa {
            position: fixed;
            right: 22px;
            bottom: 22px;
            width: 56px;
            height: 56px;
            background: #16a05d;
            border-radius: 50%;
            display: grid;
            place-items: center;
            color: white;
            font-size: 25px;
            z-index: 100;
            box-shadow: 0 10px 25px rgba(0,0,0,.25);
        }

        /* ================= MOBILE ================= */

        @media(max-width:900px) {

            .menu-toggle {
                display: block;
            }

            .nav {
                display: none;
                position: absolute;
                top: 76px;
                left: 0;
                width: 100%;
                background: white;
                flex-direction: column;
                align-items: stretch;
                padding: 15px 5%;
                gap: 0;
                box-shadow: 0 15px 30px rgba(0,0,0,.1);
            }

            .nav.open {
                display: flex;
            }

            .nav a {
                padding: 14px 0;
                border-bottom: 1px solid #eee;
            }

            .trust-grid {
                grid-template-columns: repeat(2,1fr);
            }

            .two-col,
            .contact-grid {
                grid-template-columns: 1fr;
            }

            .service-grid {
                grid-template-columns: repeat(2,1fr);
            }

            .why-grid {
                grid-template-columns: repeat(2,1fr);
            }

            .footer-grid {
                grid-template-columns: 1fr 1fr;
            }

            .cta-inner {
                flex-direction: column;
                align-items: flex-start;
            }

        }

        @media(max-width:600px) {

            .topbar-inner {
                justify-content: center;
            }

            .topbar-inner div {
                display: none;
            }

            .hero {
                height: 620px;
            }

            .hero h1 {
                font-size: 36px;
            }

            .hero p {
                font-size: 14px;
            }

            .hero-actions {
                flex-direction: column;
                width: 100%;
            }

            .hero-actions .btn {
                width: 100%;
            }

            .slider-arrow {
                display: none;
            }

            .section {
                padding: 65px 0;
            }

            .service-grid,
            .why-grid {
                grid-template-columns: 1fr;
            }

            .check-list {
                grid-template-columns: 1fr;
            }

            .footer-grid {
                grid-template-columns: 1fr;
            }

            .footer-grid > div {
                width: 100%;
            }

            .trust-grid div {
                padding: 18px 8px;
            }

        }
        /* =========================================================
   PREMIUM TESTIMONIAL SECTION
========================================================= */

.testimonials-section {
    position: relative;
    padding: 110px 0;
    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(37, 99, 235, .07),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(14, 165, 233, .06),
            transparent 30%
        ),
        #f7f9fc;
    overflow: hidden;
}


/* Decorative background */

.testimonials-section::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(37, 99, 235, .08);
    border-radius: 50%;
    top: -180px;
    right: -160px;
}

.testimonials-section::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border: 1px solid rgba(37, 99, 235, .06);
    border-radius: 50%;
    bottom: -150px;
    left: -120px;
}


/* HEADER */

.testimonial-header {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 50px;

    margin-bottom: 45px;
}

.testimonial-heading {
    max-width: 650px;
}

.testimonial-heading h2 {
    margin: 12px 0 0;

    font-family: "Poppins", sans-serif;

    font-size: clamp(34px, 4vw, 52px);

    line-height: 1.12;

    letter-spacing: -1.5px;

    color: #101828;
}

.testimonial-heading h2 span {
    display: block;
    color: #2563eb;
}

.testimonial-header > p {
    max-width: 480px;

    margin: 0;

    color: #667085;

    font-size: 16px;

    line-height: 1.8;
}


/* TRUST BAR */

.testimonial-trust {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 18px;

    margin-bottom: 30px;
}

.trust-item {
    display: flex;
    align-items: center;

    gap: 16px;

    padding: 20px 22px;

    background: rgba(255, 255, 255, .85);

    border: 1px solid #e5eaf2;

    border-radius: 16px;

    box-shadow:
        0 10px 30px rgba(15, 23, 42, .04);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.trust-item:hover {
    transform: translateY(-4px);

    border-color: rgba(37, 99, 235, .25);

    box-shadow:
        0 18px 40px rgba(15, 23, 42, .08);
}

.trust-icon {
    width: 46px;
    height: 46px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 13px;

    background: #eff6ff;

    color: #2563eb;

    font-size: 17px;
}

.trust-item strong {
    display: block;

    color: #172033;

    font-size: 15px;

    margin-bottom: 3px;
}

.trust-item span {
    display: block;

    color: #7b8494;

    font-size: 12px;
}


/* TESTIMONIAL GRID */

.testimonial-grid {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 22px;
}


/* CARD */

.testimonial-card {
    position: relative;

    display: flex;

    flex-direction: column;

    min-height: 310px;

    padding: 30px;

    background: rgba(255, 255, 255, .96);

    border: 1px solid #e5eaf2;

    border-radius: 22px;

    box-shadow:
        0 14px 40px rgba(15, 23, 42, .055);

    overflow: hidden;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.testimonial-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 100%;
    height: 3px;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #38bdf8
        );

    transform: scaleX(0);

    transform-origin: left;

    transition: transform .35s ease;
}

.testimonial-card:hover {
    transform: translateY(-8px);

    border-color: rgba(37, 99, 235, .18);

    box-shadow:
        0 25px 55px rgba(15, 23, 42, .10);
}

.testimonial-card:hover::before {
    transform: scaleX(1);
}


/* FEATURED CARD */

.featured-testimonial {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f8fbff
        );
}


/* TOP */

.testimonial-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 22px;
}


/* QUOTE */

.quote-icon {
    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 14px;

    background: #eff6ff;

    color: #2563eb;

    font-size: 18px;
}


/* RATING */

.testimonial-rating {
    display: flex;

    gap: 4px;
}

.testimonial-rating i {
    font-size: 13px;

    color: #f59e0b;
}


/* TEXT */

.testimonial-text {
    margin: 0;

    color: #4b5565;

    font-size: 15px;

    line-height: 1.85;

    flex: 1;
}


/* AUTHOR */

.testimonial-author {
    display: flex;

    align-items: center;

    gap: 13px;

    margin-top: 28px;

    padding-top: 20px;

    border-top: 1px solid #edf0f5;
}

.author-avatar {
    width: 46px;
    height: 46px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    color: #ffffff;

    font-size: 13px;

    font-weight: 800;

    box-shadow:
        0 7px 18px rgba(37, 99, 235, .20);
}

.author-info {
    min-width: 0;
}

.author-info strong {
    display: block;

    color: #172033;

    font-size: 14px;

    margin-bottom: 3px;
}

.author-info span {
    display: block;

    color: #8a93a3;

    font-size: 12px;
}


/* VERIFIED */

.verified-client {
    margin-left: auto;

    display: flex;

    align-items: center;

    gap: 5px;

    color: #16a34a;

    font-size: 11px;

    font-weight: 700;
}

.verified-client i {
    width: 17px;
    height: 17px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #dcfce7;

    font-size: 8px;
}


/* CTA */

.testimonial-cta {
    position: relative;
    z-index: 2;

    display: flex;

    align-items: center;

    gap: 20px;

    margin-top: 35px;

    padding: 25px 28px;

    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            #0f172a,
            #172554
        );

    box-shadow:
        0 20px 50px rgba(15, 23, 42, .14);
}

.testimonial-cta-icon {
    width: 52px;
    height: 52px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 15px;

    background: rgba(255,255,255,.10);

    color: #60a5fa;

    font-size: 19px;
}

.testimonial-cta-content {
    flex: 1;
}

.testimonial-cta-content span {
    display: block;

    color: #93c5fd;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1.5px;

    margin-bottom: 4px;
}

.testimonial-cta-content h3 {
    margin: 0;

    color: #ffffff;

    font-family: "Poppins", sans-serif;

    font-size: 20px;
}


/* CTA BUTTONS */

.testimonial-cta-actions {
    display: flex;

    align-items: center;

    gap: 10px;
}

.testimonial-btn,
.testimonial-wa {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 46px;

    padding: 0 20px;

    border-radius: 11px;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    transition: .3s ease;
}

.testimonial-btn {
    background: #ffffff;

    color: #172033;
}

.testimonial-btn:hover {
    transform: translateY(-2px);

    background: #f8fafc;
}

.testimonial-wa {
    background: #16a34a;

    color: #ffffff;
}

.testimonial-wa:hover {
    transform: translateY(-2px);

    background: #15803d;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1000px) {

    .testimonial-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .testimonial-header {
        align-items: flex-start;

        flex-direction: column;

        gap: 18px;
    }

    .testimonial-header > p {
        max-width: 700px;
    }

}


@media (max-width: 700px) {

    .testimonials-section {
        padding: 75px 0;
    }

    .testimonial-heading h2 {
        font-size: 34px;
    }

    .testimonial-trust {
        grid-template-columns: 1fr;

        gap: 12px;
    }

    .testimonial-grid {
        grid-template-columns: 1fr;

        gap: 16px;
    }

    .testimonial-card {
        min-height: auto;

        padding: 24px;

        border-radius: 18px;
    }

    .testimonial-text {
        font-size: 14px;

        line-height: 1.75;
    }

    .testimonial-cta {
        flex-direction: column;

        align-items: flex-start;

        padding: 24px;

        gap: 16px;
    }

    .testimonial-cta-content h3 {
        font-size: 18px;
    }

    .testimonial-cta-actions {
        width: 100%;

        display: grid;

        grid-template-columns: 1fr 1fr;
    }

    .testimonial-btn,
    .testimonial-wa {
        width: 100%;

        padding: 0 10px;
    }

}


@media (max-width: 420px) {

    .testimonial-heading h2 {
        font-size: 30px;
    }

    .testimonial-card {
        padding: 21px;
    }

    .testimonial-author {
        gap: 9px;
    }

    .verified-client {
        font-size: 10px;
    }

    .testimonial-cta-actions {
        grid-template-columns: 1fr;
    }

}
