    /* ── HERO RESPONSIVE FIXES ── */
    @media (max-width: 576px) {
        .carousel-item {
            height: 580px;
        }
    }

    @media (max-width: 380px) {
        .carousel-item {
            height: 620px;
        }
    }

    .carousel-caption-custom {
        padding: 0 1.25rem 72px;
    }

    @media (max-width: 576px) {
        .carousel-caption-custom {
            padding: 0 14px 68px;
            justify-content: center;
        }
    }

    @media (max-width: 380px) {
        .hero-btns {
            flex-direction: column;
            align-items: center;
            width: 100%;
        }

        .btn-hero-primary,
        .btn-hero-outline {
            width: 100%;
            justify-content: center;
        }
    }

    @media (max-width: 400px) {
        .hero-pills {
            gap: 6px;
        }

        .hero-pill {
            font-size: .62rem;
            padding: 5px 9px;
        }
    }

    /* ── MARQUEE ── */
    .marquee-wrap {
        background: linear-gradient(135deg, #1a56db 0%, #1e429f 100%);
        overflow: hidden;
        padding: 12px 0;
        position: relative;
        z-index: 10;
    }

    .marquee-wrap::before,
    .marquee-wrap::after {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        width: 80px;
        z-index: 2;
    }

    .marquee-wrap::before {
        left: 0;
        background: linear-gradient(90deg, #1a56db, transparent);
    }

    .marquee-wrap::after {
        right: 0;
        background: linear-gradient(270deg, #1e429f, transparent);
    }

    .marquee {
        display: flex;
        gap: 0;
        animation: marqueeScroll 30s linear infinite;
        width: max-content;
    }

    .marquee-wrap:hover .marquee {
        animation-play-state: paused;
    }

    @keyframes marqueeScroll {
        from {
            transform: translateX(0);
        }

        to {
            transform: translateX(-50%);
        }
    }

    .marquee-item {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 4px 24px;
        color: #fff;
        font-family: 'Nunito', sans-serif;
        font-weight: 700;
        font-size: .85rem;
        letter-spacing: .03em;
        white-space: nowrap;
        border-right: 1px solid rgba(255, 255, 255, .25);
    }

    .marquee-item::before {
        content: '✦';
        font-size: .65rem;
        opacity: .75;
    }

    /* ── SOCIAL MEDIA ICONS (Navbar) ── */
    .nav-social-icons {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-left: 10px;
    }

    .nav-social-icons a {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: .85rem;
        transition: transform .2s, opacity .2s;
        text-decoration: none;
        color: #fff;
    }

    .nav-social-icons a:hover {
        transform: scale(1.15);
        opacity: .85;
    }

    .nav-social-fb {
        background: #1877f2;
    }

    .nav-social-insta {
        background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    }

    .nav-social-yt {
        background: #ff0000;
    }

    .nav-social-wa {
        background: #25d366;
    }

    @media (max-width: 991px) {
        .nav-social-icons {
            margin: 8px 0 4px;
            justify-content: flex-start;
        }
    }

    /* ── REVIEWS SECTION ── */
    #reviews {
        padding: 70px 0;
        background: #f8faff;
    }

    .review-card {
        background: #fff;
        border-radius: 16px;
        padding: 24px;
        box-shadow: 0 4px 20px rgba(26, 86, 219, .07);
        border: 1px solid #e8effd;
        height: 100%;
        transition: transform .25s, box-shadow .25s;
        position: relative;
    }

    .review-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 10px 30px rgba(26, 86, 219, .13);
    }

    .review-card::before {
        content: '\201C';
        font-size: 5rem;
        line-height: 1;
        color: #1a56db;
        opacity: .12;
        position: absolute;
        top: 10px;
        left: 16px;
        font-family: Georgia, serif;
    }

    .review-stars {
        color: #f59e0b;
        font-size: .95rem;
        margin-bottom: 10px;
    }

    .review-text {
        font-size: .92rem;
        color: #444;
        line-height: 1.65;
        margin-bottom: 16px;
        font-family: 'Inter', sans-serif;
    }

    .review-author {
        display: flex;
        align-items: center;
        gap: 12px;
    }

    .review-avatar {
        width: 44px;
        height: 44px;
        border-radius: 50%;
        background: linear-gradient(135deg, #1a56db, #1e429f);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-weight: 800;
        font-size: 1rem;
        font-family: 'Nunito', sans-serif;
        flex-shrink: 0;
    }

    .review-name {
        font-family: 'Nunito', sans-serif;
        font-weight: 800;
        font-size: .92rem;
        color: #1a202c;
    }

    .review-city {
        font-size: .78rem;
        color: #888;
        margin-top: 1px;
    }

    .review-service-tag {
        display: inline-block;
        background: #eef2ff;
        color: #1a56db;
        font-size: .72rem;
        font-weight: 700;
        padding: 3px 10px;
        border-radius: 99px;
        margin-bottom: 10px;
        font-family: 'Nunito', sans-serif;
    }

    /* Hidden extra reviews */
    .review-extra {
        display: none;
    }

    .review-extra.show {
        display: block;
    }

    /* Show More button */
    .btn-show-more {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 12px 32px;
        background: linear-gradient(135deg, #1a56db, #1e429f);
        color: #fff;
        border: none;
        border-radius: 50px;
        font-family: 'Nunito', sans-serif;
        font-weight: 800;
        font-size: .95rem;
        cursor: pointer;
        transition: opacity .2s, transform .2s;
        text-decoration: none;
    }

    .btn-show-more:hover {
        opacity: .88;
        transform: translateY(-2px);
        color: #fff;
    }

    .btn-show-more i {
        transition: transform .3s;
    }

    .btn-show-more.open i {
        transform: rotate(180deg);
    }

    /* Reviews overall rating bar */
    .reviews-summary {
        background: linear-gradient(135deg, #1a56db 0%, #1e429f 100%);
        border-radius: 16px;
        padding: 28px 32px;
        color: #fff;
        margin-bottom: 40px;
        display: flex;
        align-items: center;
        gap: 32px;
        flex-wrap: wrap;
    }

    .reviews-big-score {
        font-size: 3.5rem;
        font-weight: 900;
        font-family: 'Nunito', sans-serif;
        line-height: 1;
    }

    .reviews-big-stars {
        color: #fbbf24;
        font-size: 1.2rem;
        margin: 4px 0;
    }

    .reviews-total {
        font-size: .85rem;
        opacity: .85;
    }

    .reviews-bars {
        flex: 1;
        min-width: 180px;
    }

    .rbar-row {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 6px;
        font-size: .82rem;
    }

    .rbar-label {
        width: 40px;
        text-align: right;
        opacity: .9;
    }

    .rbar-track {
        flex: 1;
        height: 6px;
        background: rgba(255, 255, 255, .25);
        border-radius: 99px;
        overflow: hidden;
    }

    .rbar-fill {
        height: 100%;
        background: #fbbf24;
        border-radius: 99px;
    }

    .rbar-count {
        width: 24px;
        opacity: .8;
    }

    /* Footer social icons */
    .footer-social {
        display: flex;
        gap: 10px;
        margin-top: 14px;
        flex-wrap: wrap;
    }

    .footer-social a {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: .95rem;
        color: #fff;
        transition: transform .2s, opacity .2s;
        text-decoration: none;
    }

    .footer-social a:hover {
        transform: scale(1.12);
        opacity: .85;
    }

    .fsoc-fb {
        background: #1877f2;
    }

    .fsoc-insta {
        background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    }

    .fsoc-yt {
        background: #ff0000;
    }

    .fsoc-wa {
        background: #25d366;
    }

    .fsoc-tw {
        background: #1da1f2;
    }