
        :root {
            --black: #1a1a1a;
            --soft-purple: #b39ddb;
            --dark-purple: #7e57c2;
            --gray-light: #f4f4f4;
            --gray-dark: #666666;
        }

        body { font-family: 'Open Sans', sans-serif; color: var(--black); }
        h1, h2, h3, h4, h5, .navbar-brand { font-family: 'Montserrat', sans-serif; font-weight: 700; }

        /* Navbar */
        .navbar { padding: 1.5rem 0; background: transparent !important; }
        .nav-link { color: var(--black) !important; font-weight: 600; margin: 0 10px; transition: 0.3s; }
        .nav-link:hover { color: var(--dark-purple) !important; }
        .btn-purple { background-color: var(--dark-purple); color: white !important; border-radius: 5px; padding: 10px 25px; transition: 0.3s; }
        .btn-purple:hover { background-color: var(--black); transform: translateY(-3px); }

        /* Hero */
        .hero {
            background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('https://images.pexels.com/photos/1571460/pexels-photo-1571460.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2') no-repeat center center/cover;
            height: 90vh;
            display: flex;
            align-items: center;
            color: white;
            text-align: center;
        }

        .nav-item{
            margin-left:25px !important;
        }

        /* General Sections */
        section { padding: 80px 0; }
        .bg-light-gray { background-color: var(--gray-light); }
        .section-title { margin-bottom: 50px; text-align: center; }
        .section-title h2 { color: var(--black); position: relative; padding-bottom: 15px; }
        .section-title h2::after { content: ''; position: absolute; width: 60px; height: 3px; background: var(--soft-purple); bottom: 0; left: 50%; transform: translateX(-50%); }

        /* About Section */
        .about-desc { line-height: 1.8; text-align: justify; }

        /* Counter */
        .counter-box { padding: 40px; background: var(--black); color: white; border-radius: 10px; border-bottom: 4px solid var(--soft-purple); }
        .counter-box i { font-size: 2.5rem; color: var(--soft-purple); margin-bottom: 15px; }

        /* Service Cards */
        .service-card { border: none; transition: 0.4s; height: 100%; border-radius: 12px; overflow: hidden; }
        .service-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0,0,0,0.1); }
        .service-img { height: 250px; object-fit: cover; }
        .service-desc { 
            height: 155px; /* Ensures approx 7 lines of text consistency */
            overflow: hidden; 
            font-size: 0.95rem;
            line-height: 1.5;
        }

        /* Process Steps */
        .process-box { position: relative; padding: 20px; text-align: center; }
        .process-number { font-size: 4rem; color: var(--soft-purple); opacity: 0.3; font-weight: 800; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); }

        /* FAQ */
        .accordion-button:not(.collapsed) { background-color: var(--soft-purple); color: var(--black); }

        /* Reviews */
        .review-box { background: white; padding: 30px; border-radius: 10px; border-left: 5px solid var(--soft-purple); height: 100%; }

        /* Footer */
        footer { background-color: var(--black); color: #ccc; padding: 70px 0 20px; }
        footer a { color: #ccc; text-decoration: none; transition: 0.3s; }
        footer a:hover { color: var(--soft-purple); }
        .footer-title { color: white; font-weight: 700; margin-bottom: 25px; text-transform: uppercase; }
