
        :root {
            --plum: #8E4585;
            --rose: #B76E79;
            --white: #FFFFFF;
            --dark: #2d3436;
        }

        body { font-family: 'Outfit', sans-serif; color: var(--dark); background-color: var(--white); overflow-x: hidden; }
        h1, h2, h3, .navbar-brand { font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 800; }

        /* Navbar */
        .navbar { padding: 1.5rem 0; background: transparent !important; }
        .navbar-brand { font-size: 1.6rem; color: var(--plum) !important; display: flex; align-items: center; }
        .nav-link { color: var(--dark) !important; font-weight: 600; margin: 0 12px; transition: 0.3s; }
        .nav-link:hover { color: var(--rose) !important; }
        .btn-cta-nav { background: var(--plum); color: white !important; padding: 12px 25px; border-radius: 8px; font-weight: 700; border: none; }

        /* Hero */
        .hero {
            background: linear-gradient(rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.6)), url('https://images.pexels.com/photos/13105349/pexels-photo-13105349.jpeg');
            height: 85vh; display: flex; align-items: center; background-size: cover; background-position: center;
        }

        /* Generic Section Styling */
        section { padding: 100px 0; }
        .section-title { margin-bottom: 60px; }
        .section-title h2 { font-size: 2.8rem; color: var(--plum); position: relative; padding-bottom: 20px; }
        .section-title h2::after { content: ''; position: absolute; width: 70px; height: 5px; background: var(--rose); bottom: 0; left: 0; }
        .section-title.center h2::after { left: 50%; transform: translateX(-50%); }

        /* About Text - Exact 15 Line Logic */
        .about-text-content { text-align: justify; line-height: 1.95; font-size: 1rem; color: #555; }

        /* Counter */
        .counter-section { background: var(--plum); color: white; padding: 70px 0; }
        .counter-box h2 { font-size: 3.5rem; color: var(--rose); margin-bottom: 0; }

        /* Why Choose Us */
        .feature-box i { color: var(--plum); margin-bottom: 20px; transition: 0.3s; }
        .feature-box:hover i { transform: scale(1.2); color: var(--rose); }

        /* Services Cards - 7 Lines Logic */
        .service-card { border: none; transition: 0.4s; height: 100%; border-radius: 15px; overflow: hidden; box-shadow: 0 15px 35px rgba(0,0,0,0.05); }
        .service-card:hover { transform: translateY(-10px); }
        .service-img { height: 240px; object-fit: cover; }
        .service-desc { 
            background: #fdfdfd; padding: 25px; 
            height: 270px; /* Forced depth for ~7 lines */
            overflow: hidden; font-size: 0.95rem; line-height: 1.6; color: #666;
        }

        /* Booking Form */
        .booking-img { height: 100%; min-height: 500px; object-fit: cover; border-radius: 20px; }
        .form-control { padding: 15px; border-radius: 10px; border: 1px solid #eee; background: #f9f9f9; }
        .form-control:focus { border-color: var(--plum); box-shadow: none; background: #fff; }

        /* FAQ */
        .accordion-button:not(.collapsed) { background-color: #fceef8; color: var(--plum); font-weight: bold; }

        /* Footer */
        footer { background: #1a1a1a; color: #b0b0b0; padding: 90px 0 30px; }
        footer a { color: #d0d0d0; text-decoration: none; transition: 0.3s; }
        footer a:hover { color: var(--rose); padding-left: 5px; }
        footer h5 { color: white; margin-bottom: 25px; border-left: 4px solid var(--rose); padding-left: 15px; }
