 
        /* ----- GLOBAL STYLES ----- */
        :root {
            --primary-blue: #0d6efd;
            --primary-dark: #0b5ed7;
            --gray-bg: #f8f9fa;
            --dark-gray: #2c3e50;
            --shadow-sm: 0 0.5rem 1rem rgba(0, 0, 0, 0.08);
            --shadow-hover: 0 1rem 2rem rgba(0, 0, 0, 0.12);
        }

        body {
            font-family: 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        /* custom scroll & back to top */
        .back-to-top {
            position: fixed;
            bottom: 80px;
            right: 20px;
            background: var(--primary-blue);
            color: white;
            width: 45px;
            height: 45px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            z-index: 1040;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
            transition: 0.3s;
            opacity: 0;
            visibility: hidden;
        }

        .back-to-top.show {
            opacity: 1;
            visibility: visible;
        }

        .back-to-top:hover {
            background: #0b5ed7;
            color: white;
            transform: translateY(-3px);
        }

        /* WhatsApp floating button */
        .whatsapp-float {
            position: fixed;
            bottom: 20px;
            left: 20px;
            background-color: #25D366;
            color: white;
            border-radius: 50px;
            padding: 12px 20px;
            font-weight: bold;
            z-index: 1040;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
            text-decoration: none;
            display: flex;
            align-items: center;
            gap: 10px;
            transition: 0.2s;
        }

        .whatsapp-float i {
            font-size: 1.6rem;
        }

        .whatsapp-float:hover {
            background-color: #128C7E;
            color: white;
            transform: scale(1.02);
        }

        /* sticky call mobile */
        .sticky-call-mobile {
            display: none;
            position: fixed;
            bottom: 20px;
            right: 20px;
            background: var(--primary-blue);
            color: white;
            border-radius: 50px;
            padding: 12px 18px;
            z-index: 1040;
            font-weight: bold;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
            text-decoration: none;
            align-items: center;
            gap: 8px;
        }

        @media (max-width: 576px) {
            .sticky-call-mobile {
                display: flex;
            }

            .whatsapp-float {
                bottom: 20px;
                left: 15px;
                padding: 8px 15px;
                font-size: 0.85rem;
            }

            .back-to-top {
                bottom: 90px;
            }
        }

        /* navbar sticky */
        .navbar-sticky {
            transition: all 0.3s;
            background: white;
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05);
        }

        .navbar {
            padding: 0.8rem 0;
        }

        .nav-link {
            font-weight: 500;
            transition: 0.2s;
        }

        .nav-link:hover {
            color: var(--primary-blue) !important;
            transform: translateY(-2px);
        }

        /* Hero section */
        .hero-section {
            background: linear-gradient(135deg, #f5f7fc 0%, #eef2f9 100%);
            padding: 80px 0;
        }

        .hero-img {
            border-radius: 24px;
            box-shadow: var(--shadow-hover);
            transition: 0.4s;
        }
        /* section headings */
        section{
            overflow: hidden;
        }

        /* service cards, gallery, why choose */
        .service-card,
        .choose-card,
        .process-card {
            transition: all 0.3s ease;
            border: none;
            border-radius: 20px;
            box-shadow: var(--shadow-sm);
            background: white;
            overflow: hidden;
        }

        .service-card:hover,
        .choose-card:hover,
        .process-card:hover {
            transform: translateY(-8px);
            box-shadow: var(--shadow-hover);
        }

        .gallery-item {
            overflow: hidden;
            border-radius: 18px;
            cursor: pointer;
        }

        .gallery-img {
            transition: transform 0.4s ease;
            width: 100%;
            height: 220px;
            object-fit: cover;
            border-radius: 18px;
        }

        .gallery-item:hover .gallery-img {
            transform: scale(1.08);
        }

        
.gallery-section {
    background: #f8f9fa;
}

.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.gallery-item img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    transition: .5s;
}

.gallery-item:hover img {
    transform: scale(1.1);
}

.gallery-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.6);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: .4s;
}

.gallery-item:hover .gallery-overlay {
    opacity: 1;
}

/* Lightbox */

#lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.95);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 99999;
}

#lightbox img {
    max-width: 90%;
    max-height: 85vh;
    border-radius: 10px;
    animation: zoomIn .4s ease;
}

.close-btn {
    position: absolute;
    top: 20px;
    right: 35px;
    color: #fff;
    font-size: 45px;
    cursor: pointer;
    transition: .3s;
}

.close-btn:hover {
    color: #ffc107;
}

@keyframes zoomIn {
    from{
        transform: scale(.7);
        opacity:0;
    }
    to{
        transform: scale(1);
        opacity:1;
    }
}

/* Responsive */

@media(max-width:768px){

    .gallery-item img{
        height:220px;
    }

    .close-btn{
        font-size:35px;
        right:20px;
    }

    #lightbox img{
        max-width:95%;
    }
}

        /* buttons & call now */
        .btn-call,
        .btn-primary-custom {
            background: var(--primary-blue);
            color: white;
            border-radius: 40px;
            padding: 10px 24px;
            font-weight: 600;
            transition: 0.2s;
        }

        .btn-call:hover,
        .btn-primary-custom:hover {
            background: var(--primary-dark);
            transform: translateY(-2px);
            box-shadow: 0 6px 14px rgba(13, 110, 253, 0.3);
            color: white;
        }

        .btn-outline-custom {
            border: 2px solid var(--primary-blue);
            color: var(--primary-blue);
            border-radius: 40px;
            font-weight: 600;
            transition: 0.2s;
        }

        .btn-outline-custom:hover {
            background: var(--primary-blue);
            color: white;
            transform: translateY(-2px);
        }

        /* top header */
        .top-header {
            background: #1e2a36;
            color: #eef2f9;
            padding: 9px 0;
            font-size: 0.85rem;
        }

        .top-header a {
            color: #fff;
            text-decoration: none;
            margin-right: 18px;
        }

        .top-header a:hover {
            color: #0d6efd;
        }

        .social-icons a {
            color: white;
            margin-left: 12px;
            font-size: 1rem;
            transition: 0.2s;
        }

        .social-icons a:hover {
            color: #0d6efd;
            transform: translateY(-2px);
        }

        /* footer */
        footer {
            background: #0b1a2a;
            color: #ccc;
        }

        footer a {
            color: #ddd;
            text-decoration: none;
        }

        footer a:hover {
            color: #0d6efd;
        }

        /* FAQ */
        .accordion-button:not(.collapsed) {
            background: #e9f0ff;
            color: #0d6efd;
        }

        /* testimonial slider dummy (bootstrap carousel) */
        .testimonial-card {
            background: white;
            border-radius: 24px;
            padding: 1.5rem;
            box-shadow: var(--shadow-sm);
            margin: 1rem;
        }

        /* responsive spacing */
        section {
            padding: 70px 0;
        }

        @media (max-width: 768px) {
            section {
                padding: 50px 0;
            }

            .hero-section {
                padding: 50px 0;
            }
        }