
        :root {
            --primary: #191970; /* Midnight Blue */
            --accent: #00ACC1;  /* Cyan */
            --grey: #E0E0E0;
            --white: #ffffff;
            --dark: #0a0a2e;
        }

        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; transition: 0.3s; }
        .navbar-brand { font-size: 1.6rem; color: var(--primary) !important; display: flex; align-items: center; }
        .navbar-brand i { color: var(--accent); margin-right: 10px; }
        .nav-link { color: var(--primary) !important; font-weight: 700; margin: 0 12px; transition: 0.3s; font-size: 0.95rem; }
        .nav-link:hover { color: var(--accent) !important; }
        .btn-cta-nav { background: var(--primary); color: white !important; padding: 12px 25px; border-radius: 4px; font-weight: 700; border: none; }
        .btn-cta-nav:hover { background: var(--accent); transform: translateY(-2px); }

        /* Hero */
        .hero {
            background: linear-gradient(rgba(25, 25, 112, 0.8), rgba(10, 10, 46, 0.6)), url('https://images.pexels.com/photos/164531/pexels-photo-164531.jpeg?auto=compress&cs=tinysrgb&w=1920');
            height: 90vh; display: flex; align-items: center; background-size: cover; background-position: center; color: white;
        }

        /* Section Styling */
        section { padding: 100px 0; }
        .section-title h2 { font-size: 2.8rem; color: var(--primary); position: relative; padding-bottom: 20px; text-transform: uppercase; }
        .section-title h2::after { content: ''; position: absolute; width: 80px; height: 5px; background: var(--accent); bottom: 0; left: 0; }
        .section-title.center h2::after { left: 50%; transform: translateX(-50%); }

        /* About Text Block - 15 Lines */
        .about-text { text-align: justify; line-height: 2.1; font-size: 1.05rem; color: #444; }

        /* Counter Section */
        .counter-section { background: var(--primary); color: var(--white); padding: 80px 0; }
        .counter-box h2 { font-size: 3.5rem; color: var(--accent); margin-bottom: 0; font-weight: 800; }

        /* Services Cards - 7 Lines */
        .service-card { border: none; transition: 0.4s; height: 100%; border-radius: 0; box-shadow: 0 20px 40px rgba(0,0,0,0.05); }
        .service-card:hover { transform: translateY(-10px); }
        .service-img { height: 250px; object-fit: cover; }
        .service-desc { 
            background-color: var(--grey); padding: 30px; 
            height:275px; /* Forced depth for ~7 lines */
            overflow: hidden; font-size: 0.95rem; line-height: 1.6; color: #555;
        }

        /* Forms */
        .booking-img { height: 100%; min-height: 500px; object-fit: cover; border-radius: 8px; }
        .form-control { padding: 15px; border-radius: 0; border: 1px solid #ccc; background: #f9f9f9; }
        .form-control:focus { border-color: var(--accent); box-shadow: none; background: #fff; }

        /* FAQ */
        .accordion-button:not(.collapsed) { background-color: var(--grey); color: var(--primary); font-weight: bold; }

        /* Footer */
        footer { background: var(--dark); color: #b0b0b0; padding: 100px 0 30px; }
        footer h5 { color: white; margin-bottom: 25px; border-left: 4px solid var(--accent); padding-left: 15px; }
        footer a { color: #d1d1d1; text-decoration: none; transition: 0.3s; }
        footer a:hover { color: var(--accent); padding-left: 5px; }
