        :root {
            --primary-orange: #ff7b29;
            --brand-green: #2d5a27;
            --brand-navy: #1a252f;
            --brand-gold: #d4af37;
            --text-dark: #1e293b;
            --text-light: #64748b;
            --white: #ffffff;
            --bg-light: #f8fafc;
            --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Poppins', sans-serif;
        }

        body {
            color: var(--text-dark);
            line-height: 1.6;
            overflow-x: hidden;
            background: var(--white);
        }

        h1,
        h2,
        h3,
        h4 {
            font-family: 'Montserrat', sans-serif;
            font-weight: 700;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        ul {
            list-style: none;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 20px;
        }

        section {
            padding: 80px 0 10px;
        }

        .btn {
            display: inline-block;
            padding: 12px 30px;
            border-radius: 50px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            transition: var(--transition);
            cursor: pointer;
            border: none;
            font-size: 14px;
        }

        .btn-primary {
            background: var(--primary-orange);
            color: var(--white);
            box-shadow: 0 4px 15px rgba(255, 123, 41, 0.3);
        }

        .btn-primary:hover {
            background: var(--secondary-orange);
            transform: translateY(-3px);
            box-shadow: 0 6px 20px rgba(255, 123, 41, 0.4);
        }

        .btn-outline {
            border: 2px solid var(--white);
            color: var(--white);
        }

        .btn-outline:hover {
            background: var(--white);
            color: var(--primary-orange);
        }

        /* --- NEW PREMIUM HEADER STYLES --- */
        .main-header {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            z-index: 9999;
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            transition: all 0.3s ease;
        }

        .main-header.scrolled {
            background: #fff;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }

        .header-lower {
            padding: 0;
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            transition: all 0.3s ease;
            max-height: 150px;
            /* Large enough for full content */
            opacity: 1;
            overflow: visible;
        }

        .main-header.scrolled .header-lower {
            max-height: 0;
            opacity: 0;
            padding: 0;
            overflow: hidden;
            border-bottom: none;
            pointer-events: none;
        }

        .outer-box {
            max-width: 1300px;
            margin: 0 auto;
            padding: 0 20px;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .logo a {
            display: flex;
            align-items: center;
            justify-content: center;
            background: #fff;
            width: 55px;
            /* Reduced from 65px */
            height: 55px;
            /* Reduced from 65px */
            border-radius: 50%;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
            margin: 3px 0;
            /* Reduced margin */
        }

        .main-header.scrolled .logo a {
            width: 50px;
            height: 50px;
        }

        .logo img {
            width: 100%;
            height: auto;
            max-height: 100%;
            object-fit: contain;
            transition: all 0.3s ease;
            display: block;
        }

        /* Navigation */
        .main-menu .navigation {
            display: flex;
            gap: 5px;
        }

        .main-menu .navigation>li {
            position: relative;
            padding: 10px 15px;
            /* Reduced from 15px */
        }

        .main-menu .navigation>li>a {
            font-size: 15px;
            font-weight: 700;
            color: #fff;
            text-transform: uppercase;
            transition: all 0.3s ease;
            letter-spacing: 0.5px;
        }

        .main-header.scrolled .main-menu .navigation>li>a {
            color: var(--brand-navy);
        }

        .main-menu .navigation>li:hover>a {
            color: var(--primary-orange);
        }

        /* Dropdowns */
        .main-menu .navigation>li>ul {
            position: absolute;
            top: 100%;
            left: 0;
            width: 230px;
            background: #fff;
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
            border-radius: 0 0 12px 12px;
            opacity: 0;
            visibility: hidden;
            transform: translateY(15px);
            transition: all 0.3s ease;
            padding: 10px 0;
            z-index: 100;
            border-top: 3px solid var(--primary-orange);
        }

        .main-menu .navigation>li:hover>ul {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        .main-menu .navigation>li>ul>li>a {
            display: block;
            padding: 10px 25px;
            font-size: 14px;
            font-weight: 600;
            color: var(--brand-navy);
            transition: all 0.3s ease;
        }

        .main-menu .navigation>li>ul>li>a:hover {
            color: var(--primary-orange);
            background: #f8fafc;
            padding-left: 30px;
        }

        /* Support Box */
        .menu-right-content {
            display: flex;
            align-items: center;
        }

        .support-box {
            display: flex;
            flex-direction: column;
            text-align: right;
            border-left: 1px solid rgba(255, 255, 255, 0.2);
            padding-left: 25px;
            margin-left: 25px;
        }

        .main-header.scrolled .support-box {
            border-left-color: #eee;
        }

        .support-box a {
            font-size: 15px;
            font-weight: 800;
            color: #fff;
            line-height: 1.2;
        }

        .main-header.scrolled .support-box a {
            color: var(--brand-navy);
        }

        /* Header Line (Ticker) */
        .header-line-hideaway {
            background: #fff;
            display: flex;
            justify-content: center;
            overflow-x: auto;
            white-space: nowrap;
            padding: 5px 0;
            /* Reduced from 10px */
            border-bottom: 1px solid #eee;
            scrollbar-width: none;
            transition: all 0.3s ease;
        }

        .main-header.scrolled .header-line-hideaway {
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
        }

        .header-line-hideaway::-webkit-scrollbar {
            display: none;
        }

        .keyword-box-hideaway {
            padding: 0 20px;
            font-size: 13px;
            font-weight: 700;
            text-transform: uppercase;
            color: #333 !important;
            border-right: 1px solid #eee;
            transition: all 0.3s ease;
        }

        .keyword-box-hideaway:last-child {
            border-right: none;
        }

        .keyword-box-hideaway:hover {
            color: var(--primary-orange) !important;
        }

        /* Mobile Nav Toggler */
        .mobile-nav-toggler {
            display: none;
            cursor: pointer;
            padding: 10px;
        }

        .mobile-nav-toggler .icon-bar {
            width: 30px;
            height: 3px;
            background: #fff;
            margin: 5px 0;
            display: block;
            transition: all 0.3s ease;
        }

        .main-header.scrolled .mobile-nav-toggler .icon-bar {
            background: var(--brand-navy);
        }

        /* Mobile Menu */
        .mobile-menu {
            position: fixed;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            z-index: 10000;
            transition: all 0.6s ease;
        }

        .mobile-menu.active {
            left: 0;
        }

        .menu-backdrop {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.9);
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
        }

        .mobile-menu.active .menu-backdrop {
            opacity: 1;
            visibility: visible;
        }

        .menu-box {
            position: absolute;
            top: 0;
            left: -320px;
            width: 320px;
            height: 100%;
            background: #fff;
            transition: all 0.4s ease;
            padding: 30px;
            overflow-y: auto;
        }

        .mobile-menu.active .menu-box {
            left: 0;
        }

        .close-btn {
            position: absolute;
            top: 20px;
            right: 20px;
            font-size: 24px;
            color: var(--brand-navy);
            cursor: pointer;
            z-index: 10;
        }

        .nav-logo {
            margin-bottom: 40px;
            display: flex;
            justify-content: center;
        }

        .nav-logo a {
            display: flex;
            align-items: center;
            justify-content: center;
            background: #fff;
            width: 80px;
            height: 80px;
            border-radius: 50%;
            padding: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }

        .nav-logo img {
            width: 100%;
            height: auto;
            object-fit: contain;
        }

        .mobile-menu .navigation li {
            border-bottom: 1px solid #eee;
        }

        .mobile-menu .navigation li a {
            display: block;
            padding: 15px 0;
            font-size: 16px;
            font-weight: 700;
            color: var(--brand-navy);
        }

        .mobile-menu .navigation li.dropdown>a::after {
            content: 'â–¾';
            float: right;
        }

        .mobile-menu .navigation li ul {
            display: none;
            padding-left: 20px;
            background: #f8fafc;
        }

        .mobile-menu .contact-info {
            margin-top: 40px;
        }

        .mobile-menu .contact-info .mobile-menu-heading {
            font-size: 18px;
            margin-bottom: 15px;
            font-weight: bold;
        }

        .mobile-menu .contact-info li {
            margin-bottom: 10px;
            font-size: 14px;
            color: #666;
        }

        .mobile-menu .social-links {
            display: flex;
            gap: 15px;
            margin-top: 30px;
        }

        .mobile-menu .social-links a {
            width: 40px;
            height: 40px;
            background: #f1f5f9;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            color: var(--brand-navy);
        }

        @media (max-width: 1024px) {
            .main-menu .navigation {
                display: none;
            }

            .mobile-nav-toggler {
                display: block;
            }

            .support-box {
                display: none;
            }
        }

        /* --- HERO SECTION --- */
        .hero {
            height: 100vh;
            min-height: 700px;
            background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.5) 100%), url('../images/banner/hideaway-riverside-camp-in-rishikesh.jpg');
            background-size: cover;
            background-position: center;
            background-attachment: fixed;
            display: flex;
            align-items: center;
            position: relative;
        }

        .hero-container {
            width: 100%;
            display: flex;
            align-items: center;
            padding-top: 80px;
            z-index: 2;
        }

        .hero-content {
            display: flex;
            justify-content: space-between;
            align-items: center;
            width: 100%;
            gap: 50px;
        }

        .hero-left {
            max-width: 650px;
        }

        .hero h1 {
            font-size: clamp(2.5rem, 3.1vw, 4rem);
            line-height: 1.15;
            font-weight: 700;
            letter-spacing: -1px;
            margin-bottom: 25px;
            font-family: 'Montserrat', sans-serif;
            color: #ffffff;
        }

        .hero h1 span.highlight {
            color: var(--primary-orange);
        }

        .hero-left p {
            font-size: 1.15rem;
            margin-bottom: 35px;
            font-weight: 400;
            line-height: 1.6;
            color: rgba(255, 255, 255, 0.9);
        }

        /* --- TRUST STRIP --- */
        .trust-strip {
            display: flex;
            flex-wrap: wrap;
            gap: 15px;
            align-items: center;
        }

        .trust-item {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 0.7rem;
            font-weight: 500;
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            padding: 8px 10px;
            border-radius: 30px;
            border: 1px solid rgba(255, 255, 255, 0.2);
            color: #fff;
        }

        .trust-item i {
            color: var(--primary-orange);
        }

        /* --- ABOUT SECTION --- */
        .about-section {
            padding: 100px 0;
            background: linear-gradient(135deg, #fff 0%, #fff7ed 50%, #fef3c7 100%);
            position: relative;
            overflow: hidden;
        }

        .about-section::before {
            content: '';
            position: absolute;
            top: -10%;
            left: -10%;
            width: 40%;
            height: 40%;
            background: radial-gradient(circle, rgba(255, 123, 41, 0.08) 0%, transparent 70%);
            z-index: 1;
        }

        .about-section::after {
            content: '';
            position: absolute;
            bottom: -10%;
            right: -10%;
            width: 50%;
            height: 50%;
            background: radial-gradient(circle, rgba(45, 90, 39, 0.05) 0%, transparent 70%);
            z-index: 1;
        }

        .about-grid {
            display: grid;
            grid-template-columns: min-content 1fr;
            gap: 40px;
            align-items: center;
            position: relative;
            z-index: 2;
        }

        .about-images {
            position: relative;
            padding-top: 20px;
        }

        .featured-video {
            width: 340px;
            /* Reduced width to bring text closer */
            aspect-ratio: 9 / 16;
            height: auto;
            background: #000;
            border-radius: 32px;
            overflow: hidden;
            position: relative;
            box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.3);
            border: 8px solid rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(10px);
        }

        .featured-video video {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .video-volume-btn {
            position: absolute;
            top: 20px;
            right: 20px;
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(5px);
            border: 1px solid rgba(255, 255, 255, 0.3);
            color: #fff;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            z-index: 10;
            transition: 0.3s;
        }

        .video-volume-btn:hover {
            background: var(--primary-orange);
            transform: scale(1.1);
        }

        .about-img-box {
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
        }

        .about-img-box img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }

        .about-img-box:hover img {
            transform: scale(1.1);
        }

        .img-large {
            grid-row: span 2;
            height: 480px;
        }

        .img-small {
            height: 232px;
        }

        .exp-badge {
            position: absolute;
            top: -15px;
            left: -15px;
            background: var(--brand-navy);
            color: #fff;
            padding: 15px 25px;
            border-radius: 20px;
            text-align: center;
            z-index: 5;
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
            border: 4px solid #fff;
            animation: float 3s ease-in-out infinite;
        }

        @keyframes float {

            0%,
            100% {
                transform: translateY(0);
            }

            50% {
                transform: translateY(-10px);
            }
        }

        .exp-badge .stat-number {
            font-size: 1.8rem;
            margin: 0;
            color: var(--primary-orange);
            line-height: 1;
            font-weight: bold;
        }

        .exp-badge p {
            margin: 0;
            font-size: 0.7rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            line-height: 1.2;
        }

        .about-content-label {
            color: var(--primary-orange);
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
            display: block;
            margin-bottom: 15px;
        }

        .about-title {
            font-size: 2.2rem;
            color: var(--brand-navy);
            line-height: 1.2;
            margin-bottom: 25px;
            font-weight: 800;
        }

        .about-desc {
            color: #555;
            font-size: 1.05rem;
            line-height: 1.8;
            margin-bottom: 35px;
            position: relative;
        }

        .about-desc strong {
            color: var(--primary-orange);
            font-weight: 700;
        }

        .about-features {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 15px;
            margin-bottom: 40px;
        }

        .feature-item {
            display: flex;
            align-items: center;
            gap: 12px;
            font-weight: 600;
            color: var(--brand-navy);
        }

        .feature-item i {
            color: #43a047;
            font-size: 1.2rem;
        }

        .about-stats {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 15px;
            padding: 20px;
            background: rgba(255, 255, 255, 0.6);
            backdrop-filter: blur(10px);
            border-radius: 20px;
            margin-top: 35px;
            border: 1px solid rgba(255, 255, 255, 0.5);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
        }

        .stat-item {
            text-align: center;
        }

        .stat-item i {
            font-size: 1.5rem;
            color: var(--primary-orange);
            margin-bottom: 10px;
            display: block;
        }

        .stat-item h4 {
            font-size: 1.2rem;
            color: var(--brand-navy);
            margin-bottom: 5px;
            font-weight: 800;
        }

        .stat-item p {
            font-size: 0.75rem;
            color: #777;
            text-transform: uppercase;
            font-weight: 700;
            letter-spacing: 1px;
            margin: 0;
        }

        .about-footer-text {
            margin-top: 25px;
            font-size: 0.95rem;
            color: #666;
            line-height: 1.6;
            border-left: 3px solid var(--primary-orange);
            padding-left: 20px;
        }

        .read-more-btn {
            display: none;
            background: none;
            border: none;
            color: var(--primary-orange);
            font-weight: 700;
            padding: 0;
            cursor: pointer;
            font-size: 0.95rem;
            align-items: center;
            gap: 5px;
            margin-top: 15px;
        }

        @media (max-width: 768px) {
            .about-desc {
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
                transition: all 0.3s ease;
            }

            .about-desc.expanded {
                -webkit-line-clamp: unset;
                display: block;
            }

            .about-features {
                display: none;
            }

            .about-features.expanded {
                display: grid;
                margin-top: 20px;
            }

            .read-more-btn {
                display: flex;
            }
        }

        @media (max-width: 992px) {
            .about-grid {
                grid-template-columns: 1fr;
                gap: 40px;
            }

            .about-images {
                order: 2;
            }

            .about-content {
                order: 1;
                text-align: center;
            }

            .about-title {
                font-size: 1.7rem;
                line-height: 1.3;
                margin-bottom: 20px;
            }

            .about-features {
                justify-items: start;
                text-align: left;
            }

            .img-large {
                height: 350px;
            }

            .img-small {
                height: 165px;
            }

            .stat-item i {
                font-size: 1.2rem;
                margin-bottom: 5px;
            }

            .stat-item h4 {
                font-size: 1rem;
            }

            .stat-item p {
                font-size: 0.6rem;
                letter-spacing: 0.5px;
            }

            .featured-video {
                height: auto;
                aspect-ratio: 9 / 16;
                max-width: 280px;
                margin: 0 auto 30px;
            }
        }

        /* --- SECTION 2: HIGHLIGHTS --- */
        .highlights {
            background: #fdfdfd;
        }

        .section-title {
            margin-bottom: 50px;
        }

        .section-title h2 {
            font-size: 2rem;
            color: var(--text-dark);
            position: relative;
            padding-bottom: 15px;
            display: inline-block;
        }

        .section-title h2::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 80px;
            height: 3px;
            background: var(--primary-orange);
        }

        .highlights-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            grid-auto-rows: 240px;
            gap: 20px;
        }

        .highlight-card {
            position: relative;
            border-radius: 24px;
            overflow: hidden;
            text-decoration: none;
            transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
            display: flex;
            padding: 30px;
            z-index: 1;
        }

        .highlight-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
        }

        .hc-span-2 {
            grid-column: span 2;
        }

        /* Card Themes */
        .hc-1 {
            background: linear-gradient(135deg, #e0f7fa 0%, #b2ebf2 100%);
            color: #006064;
        }

        .hc-2 {
            background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%);
            color: #e65100;
        }

        .hc-3 {
            background: linear-gradient(135deg, #f3e5f5 0%, #e1bee7 100%);
            color: #4a148c;
        }

        .hc-4 {
            background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
            color: #0d47a1;
        }

        .hc-5 {
            background: linear-gradient(135deg, #fffde7 0%, #fff9c4 100%);
            color: #f57f17;
        }

        .hc-6 {
            background: linear-gradient(135deg, #f1f8e9 0%, #dcedc8 100%);
            color: #33691e;
        }

        .hc-7 {
            background: linear-gradient(135deg, #e8eaf6 0%, #c5cae9 100%);
            color: #1a237e;
        }

        .hc-8 {
            background: linear-gradient(135deg, #fbe9e7 0%, #ffccbc 100%);
            color: #bf360c;
        }

        .hc-content {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            z-index: 2;
        }

        .highlight-tag {
            font-size: 0.7rem;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            font-weight: 800;
            opacity: 0.6;
            margin-bottom: 4px;
            display: block;
        }

        .highlight-title {
            font-size: 1.4rem;
            font-weight: 800;
            color: inherit;
            line-height: 1.2;
            margin: 0;
        }

        .highlight-btn {
            background: #fff;
            color: #333;
            padding: 8px 18px;
            border-radius: 12px;
            font-size: 0.75rem;
            font-weight: 700;
            display: inline-block;
            width: fit-content;
            margin-top: 20px;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
            transition: 0.3s;
        }

        .highlight-card:hover .highlight-btn {
            background: #ff7043;
            color: #fff;
        }

        .hc-img {
            position: absolute;
            right: -15px;
            bottom: -10px;
            width: 170px;
            height: 170px;
            object-fit: cover;
            border-radius: 50%;
            border: 6px solid #fff;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
            transition: all 0.5s ease;
            z-index: 0;
        }

        .hc-span-2 .hc-img {
            width: 220px;
            height: 220px;
        }

        .highlight-card:hover .hc-img {
            transform: scale(1.08) rotate(-3deg);
            right: 0;
            bottom: 0;
        }

        /* --- HIGHLIGHT MODAL STYLES --- */
        .hc-modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.85);
            backdrop-filter: blur(8px);
            z-index: 10001;
            display: none;
            align-items: center;
            justify-content: center;
            padding: 20px;
            opacity: 0;
            transition: 0.4s ease;
        }

        .hc-modal.active {
            display: flex;
            opacity: 1;
        }

        .hc-modal-content {
            background: #fff;
            width: 100%;
            max-width: 950px;
            max-height: 85vh;
            border-radius: 32px;
            overflow: hidden;
            position: relative;
            display: grid;
            grid-template-columns: 1fr 1.1fr;
            box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4);
            animation: modalSlide 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
        }

        @keyframes modalSlide {
            from {
                transform: translateY(40px);
                opacity: 0;
            }

            to {
                transform: translateY(0);
                opacity: 1;
            }
        }

        .hc-modal-close {
            position: absolute;
            top: 15px;
            right: 15px;
            width: 38px;
            height: 38px;
            background: #fff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            z-index: 10;
            font-size: 1.2rem;
            color: #333;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            transition: 0.3s;
        }

        .hc-modal-close:hover {
            background: #ff7043;
            color: #fff;
            transform: rotate(90deg);
        }

        .hc-modal-gallery {
            height: 100%;
            background: #f0f0f0;
        }

        .hc-modal-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .hc-modal-info {
            padding: 50px;
            overflow-y: auto;
            background: linear-gradient(to bottom, #fff, #fafafa);
            scrollbar-width: none;
            /* Firefox */
            -ms-overflow-style: none;
            /* IE and Edge */
        }

        .hc-modal-info::-webkit-scrollbar {
            display: none;
            /* Chrome, Safari, Opera */
        }

        .hc-modal-tag {
            display: inline-block;
            padding: 6px 14px;
            background: #fff3e0;
            color: #e65100;
            border-radius: 8px;
            font-size: 0.75rem;
            font-weight: 800;
            letter-spacing: 1px;
            margin-bottom: 20px;
        }

        .hc-modal-title {
            font-size: 2.2rem;
            font-weight: 800;
            margin-bottom: 20px;
            color: #1a1a1a;
            line-height: 1.2;
        }

        .hc-modal-para {
            font-size: 0.95rem;
            line-height: 1.7;
            color: #666;
            margin-bottom: 25px;
        }

        .hc-modal-sub-gallery {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 12px;
            margin-bottom: 30px;
        }

        .hc-modal-sub-img {
            width: 100%;
            height: 70px;
            object-fit: cover;
            border-radius: 12px;
            cursor: pointer;
            transition: 0.3s;
            border: 2px solid transparent;
        }

        .hc-modal-sub-img:hover {
            transform: translateY(-3px);
            border-color: #ff7043;
        }

        .hc-modal-list {
            padding: 0;
            list-style: none;
            margin-bottom: 30px;
        }

        .hc-modal-list li {
            margin-bottom: 12px;
            font-size: 0.9rem;
            color: #444;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 12px;
        }

        .hc-modal-list li i {
            color: #43a047;
            font-size: 1rem;
        }

        @media (max-width: 768px) {
            .hc-modal {
                padding: 10px;
            }

            .hc-modal-content {
                grid-template-columns: 1fr;
                max-height: 95vh;
                border-radius: 20px;
            }

            .hc-modal-gallery {
                height: 200px;
            }

            .hc-modal-info {
                padding: 20px;
            }

            .hc-modal-title {
                font-size: 1.5rem;
                margin-bottom: 10px;
            }

            .hc-modal-para {
                font-size: 0.85rem;
                margin-bottom: 15px;
            }

            .hc-modal-sub-gallery {
                gap: 8px;
                margin-bottom: 20px;
            }

            .hc-modal-sub-img {
                height: 60px;
            }

            .hc-modal-close {
                top: 10px;
                right: 10px;
                width: 32px;
                height: 32px;
                font-size: 1rem;
            }
        }

        /* --- SECTION 3: INTERACTIVE SERVICES --- */
        /* --- SECTION 3: NATURAL THEME MAGAZINE SHOWCASE --- */
        .interactive-services {
            padding: 60px 0;
            background: #fff;
            overflow: hidden;
        }

        .showcase-header {
            text-align: center;
            margin-bottom: 60px;
        }

        .showcase-header h3 {
            font-family: 'Playfair Display', serif;
            font-size: 3rem;
            font-weight: 900;
            color: var(--brand-navy);
            text-transform: uppercase;
            letter-spacing: 5px;
            margin-bottom: 10px;
        }

        .showcase-header p {
            font-size: 0.9rem;
            text-transform: uppercase;
            letter-spacing: 3px;
            color: var(--primary-orange);
            font-weight: 700;
        }

        .magazine-row {
            display: flex;
            gap: 40px;
            max-width: 1700px;
            margin: 0 auto;
            padding: 0 15px;
        }

        .magazine-block {
            flex: 1;
            display: flex;
            flex-direction: column;
            padding: 25px;
            border-radius: 8px;
            position: relative;
        }

        /* Resort Themed Background - Nature Mint */
        .block-resort {
            background: #f4f9f4;
            border: 1px solid #e0eee0;
        }

        /* Wedding Themed Background - Sunset Peach */
        .block-wedding {
            background: #fff9f6;
            border: 1px solid #fdeee7;
        }

        /* Vertical Representing Labels */
        .mag-label-vert {
            position: absolute;
            top: 50%;
            left: -10px;
            transform: translateY(-50%) rotate(-90deg);
            font-family: 'Montserrat', sans-serif;
            font-weight: 900;
            font-size: 3rem;
            color: rgba(0, 0, 0, 0.02);
            pointer-events: none;
            letter-spacing: 12px;
            white-space: nowrap;
        }

        /* Ultra-Compact Interlocked Grid */
        .magazine-collage {
            display: grid;
            grid-template-columns: repeat(12, 1fr);
            grid-template-rows: repeat(16, 1fr);
            height: 500px;
            position: relative;
            padding: 0;
        }

        .mag-item {
            position: relative;
            overflow: hidden;
            transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
        }

        .mag-item:hover {
            z-index: 20 !important;
            transform: scale(1.05);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
        }

        .mag-item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* Soothing Natural Boxes */
        .mag-box-natural {
            grid-area: 1 / 1 / 8 / 6;
            padding: 25px 15px;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            z-index: 5;
            box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.08);
            border-radius: 4px;
        }

        .block-resort .mag-box-natural {
            background: #7fa68b;
            /* Sage Green */
            color: #fff;
        }

        .block-wedding .mag-box-natural {
            background: #ffb38a;
            /* Apricot/Sunset Orange */
            color: #fff;
        }

        .mag-box-natural h2 {
            font-family: 'Playfair Display', serif;
            font-size: 3rem;
            margin: 0;
            line-height: 1;
            opacity: 0.95;
        }

        .mag-box-natural p {
            font-size: 0.68rem;
            line-height: 1.5;
            margin-bottom: 15px;
            opacity: 0.9;
            letter-spacing: 0.3px;
            font-weight: 500;
        }

        /* High Density Mosaic Mapping */
        .mag-img-1 {
            grid-area: 1 / 4 / 11 / 13;
            z-index: 2;
        }

        .mag-img-2 {
            grid-area: 9 / 1 / 15 / 6;
            z-index: 6;
            border: 4px solid #fff;
        }

        .mag-img-3 {
            grid-area: 10 / 5 / 17 / 11;
            z-index: 4;
            border: 6px solid #fff;
        }

        .mag-img-4 {
            grid-area: 12 / 1 / 17 / 6;
            z-index: 3;
        }

        .mag-img-5 {
            grid-area: 6 / 7 / 13 / 13;
            z-index: 7;
            border: 3px solid #fff;
        }

        .mag-img-6 {
            grid-area: 1 / 6 / 8 / 12;
            z-index: 1;
            opacity: 0.85;
        }

        .mag-script-box {
            grid-area: 14 / 7 / 17 / 13;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: flex-end;
            padding-right: 10px;
            z-index: 8;
        }

        .mag-script {
            font-family: 'Great Vibes', cursive;
            font-size: 1.8rem;
            color: var(--brand-navy);
            margin-bottom: -8px;
            transform: rotate(-5deg);
        }

        .mag-title-main {
            font-family: 'Playfair Display', serif;
            font-size: 1.8rem;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: 2px;
            color: var(--brand-navy);
        }

        .mag-cta {
            margin-top: 8px;
            padding: 10px 25px;
            background: var(--brand-navy);
            color: #fff;
            text-decoration: none;
            text-transform: uppercase;
            font-weight: 900;
            font-size: 0.7rem;
            letter-spacing: 2px;
            display: inline-block;
            transition: 0.4s;
        }

        .mag-cta:hover {
            background: var(--primary-orange);
            transform: translateY(-3px);
        }

        @media (max-width: 1200px) {
            .magazine-row {
                flex-direction: column;
                gap: 40px;
                padding: 0 15px;
            }

            .magazine-block {
                padding: 20px;
            }

            .magazine-collage {
                height: 500px;
            }

            .mag-box-natural h2 {
                font-size: 2.5rem;
            }

            .mag-title-main {
                font-size: 1.5rem;
            }

            .mag-label-vert {
                display: none;
            }
        }

        @media (max-width: 768px) {

            .interactive-services,
            .final-cta {
                display: none;
            }

            section {
                padding: 40px 0 !important;
            }

            .hero {
                padding: 40px 0 !important;
            }

            .about-section {
                padding: 40px 0 !important;
            }

            .highlights {
                margin-top: 20px !important;
                padding: 40px 0 !important;
                position: relative;
                z-index: 5;
                clear: both;
            }

            .section-title {
                margin-bottom: 30px !important;
            }

            /* Responsive Headings */
            .reviews-title-area h2,
            .gallery-title,
            .l-seo-left h2,
            .faq-header-top h2 {
                font-size: 1.6rem !important;
                line-height: 1.3 !important;
            }

            /* Trust Widgets Row Fix */
            .trust-widgets {
                flex-wrap: nowrap !important;
                gap: 10px !important;
                justify-content: center !important;
                margin-top: 15px;
            }

            .rating-card {
                padding: 8px 12px !important;
                gap: 8px !important;
                border-radius: 30px !important;
            }

            .rating-card img {
                height: 18px !important;
            }

            .rating-card .rating-info strong {
                font-size: 0.85rem !important;
            }

            .rating-card .stars {
                font-size: 0.6rem !important;
                margin-top: 2px !important;
            }

            /* One Line Gallery Filters */
            .gallery-filters {
                display: flex !important;
                overflow-x: auto !important;
                white-space: nowrap !important;
                padding-bottom: 10px !important;
                gap: 10px !important;
                justify-content: flex-start !important;
                -ms-overflow-style: none;
                /* IE and Edge */
                scrollbar-width: none;
                /* Firefox */
            }

            .gallery-filters::-webkit-scrollbar {
                display: none;
                /* Chrome, Safari and Opera */
            }

            .filter-btn {
                flex: 0 0 auto !important;
                font-size: 0.8rem !important;
                padding: 8px 15px !important;
            }

            /* Header Mobile Alignment */
            .header-lower .outer-box {
                justify-content: space-between !important;
            }

            .menu-area {
                margin-left: auto !important;
                display: flex;
                align-items: center;
            }

            .mobile-nav-toggler {
                margin-left: auto !important;
                padding-right: 0 !important;
            }

            .mag-box-natural {
                grid-area: 1 / 1 / 4 / 7;
                padding: 20px;
                z-index: 5;
                box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
            }

            .mag-box-natural h2 {
                font-size: 2rem;
            }

            .mag-box-natural p {
                font-size: 0.75rem;
            }

            .mag-img-1 {
                grid-area: 3 / 2 / 7 / 7;
                z-index: 2;
                border: 5px solid #fff;
            }

            .mag-img-2 {
                grid-area: 6 / 1 / 9 / 4;
                z-index: 4;
                border: 5px solid #fff;
                display: block;
            }

            .mag-img-3 {
                grid-area: 8 / 3 / 11 / 7;
                z-index: 3;
                border: 5px solid #fff;
                display: block;
            }

            .mag-img-4 {
                display: none;
            }

            .mag-img-5 {
                grid-area: 5 / 1 / 7 / 3;
                z-index: 1;
                display: block;
            }

            .mag-img-6 {
                display: none;
            }

            .mag-script-box {
                grid-area: 10 / 1 / 13 / 7;
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                z-index: 10;
                padding-top: 10px;
            }

            .mag-script {
                font-size: 1.8rem;
                margin-bottom: -5px;
                transform: rotate(-3deg);
            }

            .mag-title-main {
                font-size: 1.6rem;
                letter-spacing: 2px;
            }

            .mag-cta {
                width: 90%;
                margin-top: 10px;
                padding: 12px;
            }
        }



        .is-card-content {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            padding: 12px 10px;
            z-index: 2;
            color: #fff;
            background: linear-gradient(135deg, #ff7043 0%, #f4511e 100%);
            text-align: center;
        }



        .is-card-title {
            font-size: 0.95rem;
            font-weight: 900;
            line-height: 1;
            margin: 0;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            color: #fff;
        }



        /* --- SECTION 4: NEW FILTERED GALLERY --- */
        .gallery {
            background: #fdfdfd;
            padding: 80px 0 40px;
            /* Reduced bottom padding */
            color: #111;
        }

        .gallery-header {
            text-align: center;
            margin-bottom: 60px;
        }

        .gallery-badge {
            display: inline-block;
            background: rgba(255, 123, 41, 0.1);
            color: var(--primary-orange);
            font-size: 0.85rem;
            font-weight: 700;
            padding: 8px 20px;
            border-radius: 50px;
            margin-bottom: 20px;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .gallery-title {
            font-size: 2rem;
            font-weight: 700;
            letter-spacing: -1.5px;
            margin-bottom: 20px;
            color: var(--brand-navy);
        }

        /* Gallery Filter Tabs */
        .gallery-filters {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 12px;
            margin-bottom: 50px;
        }

        .filter-btn {
            background: #fff;
            border: 1px solid #e2e8f0;
            padding: 10px 24px;
            border-radius: 50px;
            font-size: 0.95rem;
            font-weight: 600;
            color: var(--text-light);
            cursor: pointer;
            transition: var(--transition);
        }

        .filter-btn:hover,
        .filter-btn.active {
            background: var(--primary-orange);
            color: #fff;
            border-color: var(--primary-orange);
            box-shadow: 0 4px 15px rgba(255, 123, 41, 0.3);
        }

        .gallery-grid {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
        }

        .gallery-item {
            flex: 1 1 300px;
            /* Adjust base width */
            height: 300px;
            /* Base height for all rows */
            position: relative;
            border-radius: 15px;
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
            transition: var(--transition);
            display: none;
            /* Controlled by JS */
            opacity: 0;
            transform: translateY(20px);
            cursor: zoom-in;
        }

        /* Prevent last row items from stretching too much */
        .gallery-grid::after {
            content: "";
            flex-grow: 999999;
        }

        .gallery-item.hide {
            display: none;
        }

        .gallery-item img,
        .gallery-item video {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .gallery-item:hover img,
        .gallery-item:hover video {
            transform: scale(1.1);
        }

        @media (max-width: 768px) {
            .gallery-grid {
                gap: 8px;
                /* Slightly smaller gap on mobile */
            }

            .gallery-item {
                flex: 1 1 calc(50% - 8px);
                /* 2 columns */
                height: 180px;
                /* Adjusted height for 2-column mobile layout */
            }
        }

        .gallery-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 60%);
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 25px;
            opacity: 0;
            transition: var(--transition);
        }

        .gallery-item:hover .gallery-overlay {
            opacity: 1;
        }

        .gallery-category {
            font-size: 0.75rem;
            text-transform: uppercase;
            color: var(--primary-orange);
            font-weight: 700;
            margin-bottom: 5px;
        }

        .gallery-item-title {
            color: #fff;
            font-size: 1.2rem;
            font-weight: 700;
        }

        /* --- LIGHTBOX --- */
        .lightbox-modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.95);
            z-index: 5000;
            display: none;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transition: opacity 0.4s ease;
            backdrop-filter: blur(10px);
            cursor: zoom-out;
        }

        .lightbox-modal.active {
            display: flex;
            opacity: 1;
        }

        .lightbox-content {
            max-width: 90%;
            max-height: 85%;
            position: relative;
            transform: scale(0.8);
            transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .lightbox-modal.active .lightbox-content {
            transform: scale(1);
        }

        .lightbox-image {
            width: 100%;
            height: 100%;
            max-height: 85vh;
            object-fit: contain;
            border-radius: 8px;
            box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
        }

        .lightbox-close {
            position: absolute;
            top: -50px;
            right: -50px;
            color: #fff;
            font-size: 30px;
            cursor: pointer;
            width: 50px;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 50%;
            transition: var(--transition);
        }

        .lightbox-close:hover {
            background: var(--primary-orange);
            transform: rotate(90deg);
        }

        @media (max-width: 768px) {
            .lightbox-close {
                top: -60px;
                right: 0;
            }

            .lightbox-content {
                max-width: 95%;
            }
        }

        /* --- SECTION 5: REVIEWS --- */
        .reviews {
            background: #f4f6f8;
            padding: 100px 0;
            color: #111;
            overflow: hidden;
        }

        .reviews-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
            margin-bottom: 80px;
            flex-wrap: wrap;
            gap: 30px;
        }

        .reviews-title-area .badge {
            display: inline-block;
            background: rgba(255, 123, 41, 0.1);
            color: var(--primary-orange);
            font-size: 0.8rem;
            font-weight: 700;
            padding: 6px 16px;
            border-radius: 20px;
            margin-bottom: 15px;
            text-transform: uppercase;
        }

        .reviews-title-area h2 {
            font-size: 2rem;
            letter-spacing: -1.5px;
            margin: 0;
            line-height: 1.1;
        }

        .trust-widgets {
            display: flex;
            gap: 20px;
            flex-wrap: wrap;
        }

        .rating-card {
            background: #fff;
            padding: 15px 30px;
            border-radius: 50px;
            display: flex;
            align-items: center;
            gap: 15px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        }

        .rating-card img {
            height: 30px;
            width: auto;
        }

        .rating-card .rating-info strong {
            font-size: 1.2rem;
            font-weight: 800;
            display: block;
            line-height: 1;
        }

        .rating-card .stars {
            color: #fbbc05;
            font-size: 0.9rem;
            letter-spacing: 2px;
            margin-top: 5px;
        }

        .reviews-masonry-container {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 25px;
        }

        @media (min-width: 1200px) {
            .reviews-masonry-container {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        @media (max-width: 768px) {
            .reviews-masonry-container {
                grid-template-columns: 1fr;
            }
        }

        .platform-card {
            background: #fff;
            border-radius: 16px;
            padding: 30px;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.04);
            border: 1px solid #eaeaea;
            display: flex;
            flex-direction: column;
            gap: 15px;
            break-inside: avoid;
            margin-bottom: 30px;
            transition: transform 0.3s ease;
        }

        .platform-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
        }

        .platform-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
        }

        .platform-user {
            display: flex;
            gap: 15px;
            align-items: center;
        }

        .platform-user img {
            width: 45px;
            height: 45px;
            border-radius: 50%;
            object-fit: cover;
        }

        .platform-user-info .review-author {
            margin: 0 0 3px 0;
            font-size: 1rem;
            font-weight: 700;
            font-family: 'Roboto', Arial, sans-serif;
            color: #202124;
        }

        .platform-user-info span {
            font-size: 0.8rem;
            color: #70757a;
            display: block;
        }

        .platform-logo img {
            width: 24px;
            height: 24px;
        }

        .platform-stars {
            display: flex;
            align-items: center;
            color: #fbbc04;
            font-size: 1.1rem;
            line-height: 1;
        }

        .tripadvisor-stars {
            color: #34e0a1;
            display: flex;
            align-items: center;
            line-height: 1;
            font-size: 1.1rem;
        }

        .platform-content {
            font-size: 0.95rem;
            line-height: 1.6;
            color: #3c4043;
            font-family: 'Roboto', Arial, sans-serif;
        }

        .platform-content strong {
            color: #202124;
            font-weight: 700;
        }

        .ta-title {
            font-weight: 700;
            font-size: 1.05rem;
            margin-bottom: 8px;
            color: #000;
            font-family: 'Roboto', Arial, sans-serif;
        }

        .ta-date {
            font-size: 0.8rem;
            color: #666;
            margin-top: 15px;
            font-weight: 500;
            font-family: 'Roboto', Arial, sans-serif;
        }

        .reviews-tabs {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-bottom: 40px;
        }

        .tab-btn {
            padding: 12px 30px;
            border-radius: 50px;
            border: 1px solid #ddd;
            background: #fff;
            font-weight: 700;
            cursor: pointer;
            transition: var(--transition);
            display: flex;
            align-items: center;
            gap: 10px;
            color: var(--text-light);
        }

        .tab-btn img {
            width: 20px;
            height: 20px;
        }

        .tab-btn.active {
            background: var(--brand-navy);
            color: #fff;
            border-color: var(--brand-navy);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        }

        .reviews-content-pane {
            display: none;
        }

        .reviews-content-pane.active {
            display: block;
        }

        .platform-highlight-cta {
            margin-top: 40px;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
        }

        .p-cta-card {
            background: #fff;
            border-radius: 16px;
            padding: 25px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            border: 1px solid #eaeaea;
            transition: var(--transition);
            text-decoration: none;
            color: inherit;
        }

        .p-cta-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
            border-color: var(--primary-orange);
        }

        .p-cta-left {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .p-cta-left img {
            width: 50px;
            height: 50px;
        }

        .p-cta-text h4 {
            font-size: 1.1rem;
            margin-bottom: 3px;
            color: var(--brand-navy);
        }

        .p-cta-text p {
            font-size: 0.85rem;
            color: var(--text-light);
            margin: 0;
        }

        .p-cta-btn {
            width: 40px;
            height: 40px;
            background: var(--accent-soft);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--brand-navy);
            transition: var(--transition);
        }

        .p-cta-card:hover .p-cta-btn {
            background: var(--primary-orange);
            color: #fff;
        }

        @media (max-width: 768px) {
            .platform-highlight-cta {
                grid-template-columns: 1fr 1fr;
                gap: 10px;
                margin-top: 30px;
            }

            .p-cta-card {
                padding: 15px 10px !important;
                flex-direction: column;
                text-align: center;
                justify-content: center;
            }

            .p-cta-left {
                flex-direction: column;
                gap: 8px !important;
            }

            .p-cta-left img {
                width: 35px !important;
                height: 35px !important;
            }

            .p-cta-text h4 {
                font-size: 0.85rem !important;
            }

            .p-cta-text p {
                font-size: 0.65rem !important;
            }

            .p-cta-btn {
                display: none;
            }

            .reviews-tabs {
                gap: 10px;
            }

            .tab-btn {
                padding: 10px 15px;
                font-size: 0.85rem;
            }
        }

        /* --- SECTION 6: EVENTS SNAPSHOT --- */
        .events-snapshot {
            background: var(--bg-light);
        }

        .events-grid {
            display: flex;
            gap: 15px;
            overflow-x: auto;
            padding-bottom: 20px;
            scroll-snap-type: x mandatory;
        }

        .event-tile {
            min-width: 250px;
            height: 350px;
            border-radius: 15px;
            overflow: hidden;
            position: relative;
            flex: 1;
            scroll-snap-align: start;
        }

        .event-tile img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .event-tile-overlay {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            padding: 20px;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
            color: var(--white);
            text-align: center;
        }

        /* --- SECTION 7: AMENITIES --- */
        .amenities {
            display: grid;
            grid-template-columns: 1fr 1fr;
            align-items: center;
            gap: 60px;
        }

        .amenities-content h2 {
            margin-bottom: 30px;
        }

        .amenities-list {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
        }

        .amenity-item {
            display: flex;
            align-items: center;
            gap: 12px;
            font-weight: 500;
        }

        .amenity-item i {
            color: var(--primary-green);
        }

        .amenities-image {
            height: 500px;
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
        }

        .amenities-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* --- SECTION 6: EVENTS SNAPSHOT --- */
        .events-snapshot {
            padding: 100px 0;
            /* Reduced top padding */
            background: #fff;
            text-align: center;
        }

        .events-badge {
            display: inline-block;
            background: #f4e8fc;
            color: #7c4dff;
            padding: 8px 20px;
            border-radius: 20px;
            font-size: 0.85rem;
            font-weight: 600;
            margin-bottom: 20px;
        }

        .events-snapshot h2 {
            font-size: 2rem;
            font-weight: 700;
            line-height: 1.2;
            max-width: 900px;
            margin: 0 auto 20px;
            letter-spacing: -1px;
        }

        .events-snapshot p {
            font-size: 1.05rem;
            color: #666;
            max-width: 800px;
            margin: 0 auto 50px;
            line-height: 1.6;
        }

        .dribbble-events-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            max-width: 1200px;
            margin: 0 auto;
        }

        .d-event-card {
            border-radius: 24px;
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: flex-end;
            text-align: left;
            text-decoration: none;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
            transition: transform 0.3s ease;
        }

        .d-event-card:hover {
            transform: translateY(-5px);
        }

        .d-event-card img,
        .d-event-card video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: 1;
        }

        /* Landscape rotation for Destination Wedding video - No Cropping */
        .d-event-card.wedding-video video {
            width: 180%;
            height: 180%;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%) rotate(-90deg);
            object-fit: cover;
        }

        .d-event-card::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 70%;
            background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
            z-index: 2;
        }

        .d-event-content {
            position: relative;
            z-index: 3;
            padding: 30px;
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
        }

        .video-volume-btn {
            position: absolute;
            top: 25px;
            right: 25px;
            z-index: 10;
            width: 45px;
            height: 45px;
            background: rgba(255, 123, 41, 0.9);
            /* More prominent brand orange */
            backdrop-filter: blur(8px);
            border: 2px solid rgba(255, 255, 255, 0.8);
            border-radius: 50%;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            box-shadow: 0 4px 15px rgba(255, 123, 41, 0.4);
        }

        .video-volume-btn:hover {
            transform: scale(1.1);
            background: #fff;
            color: var(--primary-orange);
            border-color: var(--primary-orange);
        }

        .video-volume-btn i {
            font-size: 1.2rem;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        }

        .d-event-text {
            color: #fff;
        }

        .d-event-date {
            font-size: 0.8rem;
            font-weight: 500;
            margin-bottom: 5px;
            opacity: 0.8;
            letter-spacing: 0.5px;
        }

        .d-event-title {
            font-size: 1.25rem;
            font-weight: 700;
            margin: 0;
            line-height: 1.3;
        }

        .d-event-info-btn {
            width: 42px;
            height: 42px;
            background: var(--primary-orange);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            flex-shrink: 0;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0 0 0 0 rgba(255, 123, 41, 0.4);
            animation: pulse-info 2s infinite;
        }

        .d-event-info-btn:hover {
            transform: scale(1.1) rotate(15deg);
            background: #fff;
            color: var(--primary-orange);
        }

        @keyframes pulse-info {
            0% {
                box-shadow: 0 0 0 0 rgba(255, 123, 41, 0.7);
            }

            70% {
                box-shadow: 0 0 0 15px rgba(255, 123, 41, 0);
            }

            100% {
                box-shadow: 0 0 0 0 rgba(255, 123, 41, 0);
            }
        }

        .d-card-wide {
            grid-column: span 2;
            height: 350px;
        }

        .d-card-normal {
            grid-column: span 1;
            height: 350px;
        }

        /* --- ADVENTURE MINI SECTION --- */
        .adventure-mini-section {
            padding: 80px 0;
            background: #fafafa;
        }

        .adv-mini-heading {
            text-align: center;
            margin-bottom: 50px;
        }

        .adv-mini-heading h2 {
            font-size: 2rem;
            font-weight: 700;
            color: #1a1a1a;
            margin-bottom: 10px;
        }

        .adv-mini-heading p {
            color: #666;
            font-size: 1rem;
        }

        .adv-mini-grid {
            display: grid;
            grid-template-columns: 2.2fr repeat(5, 1fr);
            /* More space for Rafting */
            gap: 15px;
            max-width: 1400px;
            margin: 0 auto;
        }

        .adv-mini-item {
            display: flex;
            flex-direction: column;
            background: #fff;
            border-radius: 20px;
            padding: 15px;
            text-decoration: none;
            color: #333;
            transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02);
            border: 1px solid #f0f0f0;
            height: 100%;
            position: relative;
            overflow: hidden;
        }

        .adv-mini-item.featured {
            background: #000;
            border: none;
            padding: 0;
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            height: 280px;
            /* Increased height for better visibility */
        }

        .adv-mini-item.featured video {
            position: absolute;
            width: 180%;
            /* Adjusted zoom to fit the wider container after rotation */
            height: 110%;
            transform: rotate(-90deg);
            object-fit: cover;
            pointer-events: none;
        }

        .adv-mini-item.featured .adv-content-overlay {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            padding: 20px;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
            z-index: 2;
        }

        .adv-mini-item.featured h3 {
            color: #fff;
            font-size: 1.2rem;
            margin: 0;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
            font-family: inherit;
        }

        .adv-mini-item.featured .adv-mini-btn {
            margin-top: 10px;
            background: var(--primary-orange);
            color: #fff;
            border: none;
        }

        .adv-mini-item.featured .adv-mini-icon {
            display: none;
        }

        /* Hide icon if image background */

        .adv-mini-item:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06);
            border-color: #e5e7eb;
        }

        .adv-mini-icon {
            width: 45px;
            height: 45px;
            background: #fff8f1;
            color: var(--primary-orange);
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            margin-bottom: 15px;
            transition: all 0.3s ease;
        }

        .adv-mini-item:hover .adv-mini-icon {
            background: var(--primary-orange);
            color: #fff;
        }

        .adv-mini-item h3 {
            font-size: 1rem;
            font-weight: 700;
            margin-bottom: 8px;
            color: #111;
        }

        .adv-mini-item p {
            font-size: 0.8rem;
            color: #6b7280;
            line-height: 1.5;
            margin-bottom: 20px;
            flex-grow: 1;
        }

        .adv-mini-btn {
            font-size: 0.75rem;
            font-weight: 600;
            color: var(--primary-orange);
            display: flex;
            align-items: center;
            gap: 5px;
            margin-top: auto;
            padding: 8px 12px;
            background: #fffcf8;
            border-radius: 10px;
            width: fit-content;
            transition: all 0.3s ease;
        }

        .adv-mini-item:hover .adv-mini-btn {
            background: var(--primary-orange);
            color: #fff;
        }

        @media (max-width: 1200px) {
            .adv-mini-grid {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        @media (max-width: 768px) {
            .adventure-mini-section {
                padding: 40px 0;
            }

            .adv-mini-grid {
                grid-template-columns: repeat(5, 1fr);
                gap: 8px;
            }

            .adv-mini-item.featured {
                grid-column: span 5;
                height: 200px;
                margin-bottom: 5px;
            }

            .adv-mini-item:not(.featured) {
                padding: 10px 4px;
                border-radius: 12px;
            }

            .adv-mini-icon {
                width: 32px;
                height: 32px;
                font-size: 0.9rem;
                margin-bottom: 5px;
                border-radius: 8px;
            }

            .adv-mini-item h3 {
                font-size: 0.6rem;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                margin-bottom: 0;
            }

            .adv-mini-item p,
            .adv-mini-btn {
                display: none;
            }

            .adv-mini-heading h2 {
                font-size: 1.5rem;
            }

            .adv-mini-heading {
                margin-bottom: 25px;
            }
        }

        @media (max-width: 768px) {
            .dribbble-events-grid {
                grid-template-columns: repeat(6, 1fr);
                /* 6 columns to allow 2 and 3 spans */
                gap: 10px;
            }

            .d-card-wide,
            .d-card-normal {
                grid-column: span 6;
                /* Default full width */
                height: 250px;
            }

            /* Row 1: Wedding (Full) */
            .d-event-card.wedding-video {
                grid-column: span 6;
                height: 300px;
            }

            /* Row 2: Next 3 cards (2 columns each) */
            .d-event-card:nth-child(2),
            .d-event-card:nth-child(3),
            .d-event-card:nth-child(4) {
                grid-column: span 2;
                height: 180px;
            }

            /* Row 3: Last 2 cards (3 columns each) */
            .d-event-card:nth-child(5),
            .d-event-card:nth-child(6) {
                grid-column: span 3;
                height: 180px;
            }

            /* Adjust text for small cards - Shrink to fit */
            .d-event-card:nth-child(n+2) .d-event-title {
                font-size: 0.72rem;
                line-height: 1.2;
                font-weight: 700;
            }

            .d-event-card:nth-child(n+2) .d-event-date {
                font-size: 0.55rem;
                margin-bottom: 3px;
                opacity: 0.85;
            }

            .d-event-card:nth-child(n+2) .d-event-content {
                padding: 8px 10px;
            }

            /* Shrink Info Icon for all mobile cards to prevent cutting off */
            .d-event-info-btn {
                width: 25px !important;
                height: 25px !important;
                font-size: 0.65rem !important;
            }

            .d-event-card.wedding-video .d-event-title {
                font-size: 1rem;
            }

            .events-snapshot h2 {
                font-size: 1.5rem;
            }
        }

        /* --- SECTION 7: AMENITIES & EXPERIENCE --- */
        .amenities-section {
            padding: 40px 0;
            background: #fbfbfb;
        }

        .amenities-header {
            text-align: center;
            margin-bottom: 50px;
        }

        .amenities-header h2 {
            font-size: 2rem;
            font-weight: 800;
            color: var(--brand-navy);
        }

        .amenities-grid-container {
            max-width: 1200px;
            margin: 0 auto;
        }

        .amenities-grid-table {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 25px;
        }

        .amenity-cell {
            background: #fff;
            padding: 30px 25px;
            text-align: center;
            border-radius: 16px;
            border: 1px solid #eee;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            position: relative;
            overflow: hidden;
        }

        .amenity-cell::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 4px;
            background: var(--primary-orange);
            transform: scaleX(0);
            transition: transform 0.4s ease;
            transform-origin: left;
        }

        .amenity-cell:hover {
            background: #fff;
            transform: translateY(-12px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
            border-color: var(--primary-orange);
        }

        .amenity-cell:hover::before {
            transform: scaleX(1);
        }

        .amenity-icon {
            font-size: 2.8rem;
            color: var(--primary-orange);
            margin-bottom: 10px;
            display: inline-block;
            transition: all 0.4s ease;
        }

        .amenity-cell:hover .amenity-icon {
            transform: scale(1.1) rotate(5deg);
        }

        .amenity-title {
            font-size: 1.15rem;
            font-weight: 800;
            color: var(--brand-navy);
            margin-bottom: 12px;
            letter-spacing: -0.02em;
        }

        .amenity-desc {
            font-size: 0.88rem;
            color: #64748b;
            line-height: 1.6;
            margin: 0;
        }

        @media (max-width: 992px) {
            .amenities-grid-table {
                grid-template-columns: repeat(2, 1fr);
                gap: 20px;
                padding: 0 15px;
            }
        }

        @media (max-width: 576px) {
            .amenities-header h2 {
                font-size: 1.5rem;
                /* Smaller font to fit in 1 row */
                white-space: nowrap;
            }

            .amenities-grid-table {
                grid-template-columns: repeat(3, 1fr);
                gap: 15px;
            }

            .amenity-cell {
                padding: 20px 10px;
                border-radius: 12px;
            }

            .amenity-icon {
                font-size: 1.5rem;
                margin-bottom: 10px;
            }

            .amenity-title {
                font-size: 0.85rem;
            }

            .amenity-desc {
                font-size: 0.65rem;
                display: none;
                /* Hide desc on mobile for 3-col fit */
            }

            .camping-package-details {
                padding: 20px !important;
                border-radius: 16px !important;
            }

            .camping-package-details h2 {
                font-size: 1.25rem !important;
                margin-bottom: 20px !important;
            }

            .package-details-grid {
                grid-template-columns: 1fr !important;
                gap: 15px !important;
            }

            .pkg-item {
                font-size: 0.85rem;
            }

            .amenity-cell:nth-child(3n) {
                border-right: none !important;
            }

            .amenity-cell:nth-last-child(-n+2) {
                border-bottom: none !important;
            }

            .amenity-icon {
                font-size: 1.5rem;
                margin-bottom: 10px;
            }

            .amenity-title {
                font-size: 0.7rem;
                margin-bottom: 5px;
                line-height: 1.2;
            }

            .amenity-desc {
                display: none;
                /* Hide descriptions to save space and fit 3 rows */
            }
        }

        /* --- SECTION 8: LOCATION SEO BLOCK --- */
        .location-seo-block {
            padding: 40px 0;
            background: #fff;
        }

        .l-seo-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 60px;
            align-items: center;
        }

        .l-seo-left h2 {
            font-size: 2rem;
            font-weight: 700;
            color: var(--brand-navy);
            margin-bottom: 20px;
            line-height: 1.3;
        }

        .l-seo-left p {
            font-size: 1rem;
            color: var(--text-light);
            line-height: 1.6;
            margin-bottom: 30px;
            max-width: 90%;
        }

        .l-seo-socials {
            display: flex;
            gap: 15px;
            margin-bottom: 50px;
        }

        .l-seo-socials i {
            font-size: 1.5rem;
            color: var(--brand-navy);
            cursor: pointer;
            transition: var(--transition);
        }

        .l-seo-socials i:hover {
            color: var(--primary-orange);
        }

        .l-seo-stats {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            text-align: center;
        }

        .l-stat-icon {
            width: 50px;
            height: 50px;
            background: var(--brand-green);
            color: #fff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            margin: 0 auto 10px;
        }

        .l-stat .l-stat-title {
            font-size: 1rem;
            font-weight: 700;
            margin: 0 0 5px 0;
            color: var(--brand-navy);
        }

        .l-stat span {
            font-size: 0.75rem;
            color: var(--text-light);
            display: block;
        }

        .l-seo-right {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .l-seo-card {
            background: var(--brand-navy);
            border-radius: 16px;
            padding: 20px;
            display: flex;
            align-items: flex-start;
            gap: 20px;
            color: #fff;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        }

        .l-seo-card-icon {
            width: 70px;
            height: 70px;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }

        .l-seo-card-icon i {
            font-size: 2rem;
            color: var(--primary-orange);
        }

        .l-seo-card-text h3 {
            font-size: 1.2rem;
            font-weight: 700;
            margin: 5px 0 10px 0;
            color: #fff;
        }

        .l-seo-card-text p {
            font-size: 0.9rem;
            line-height: 1.5;
            margin: 0;
            opacity: 0.9;
        }

        .l-seo-map-card {
            padding: 0;
            height: 180px;
            overflow: hidden;
            display: block;
        }

        .l-seo-map-card iframe {
            width: 100%;
            height: 100%;
            border: none;
        }

        @media (max-width: 992px) {
            .l-seo-grid {
                grid-template-columns: 1fr;
            }

            .l-seo-stats {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        /* --- SECTION 9: FAQ --- */
        .faq-section {
            padding: 60px 0;
            background: var(--bg-light);
            display: flex;
            justify-content: center;
        }

        .faq-section {
            padding: 60px 0;
            background: #f8fafc;
        }

        .faq-container-box {
            margin: 0 auto;
            background: #fff;
            padding: 60px 20px;
            border-radius: 30px;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.05);
        }

        .faq-header-top {
            text-align: center;
            max-width: 700px;
            margin: 0 auto 60px;
        }

        .faq-header-top h2 {
            font-size: 2rem;
            color: var(--brand-navy);
            margin-bottom: 20px;
            font-weight: 700;
        }

        .faq-header-top h2 span {
            color: var(--primary-orange);
        }

        .faq-grid {
            display: grid;
            grid-template-columns: 320px 1fr;
            gap: 50px;
            align-items: start;
        }

        /* Sidebar Styling */
        .faq-sidebar {
            position: sticky;
            top: 100px;
        }

        .faq-sidebar h3 {
            font-size: 1.2rem;
            margin-bottom: 25px;
            color: var(--brand-navy);
            font-weight: 700;
        }

        .faq-category-btn {
            display: flex;
            align-items: center;
            gap: 15px;
            padding: 15px 20px;
            border-radius: 12px;
            cursor: pointer;
            transition: all 0.3s ease;
            margin-bottom: 12px;
            border: 1px solid #eee;
            background: #fff;
        }

        .faq-category-btn:hover {
            border-color: var(--brand-green);
            background: #f8fafc;
        }

        .faq-category-btn.active {
            background: rgba(45, 90, 39, 0.05);
            border-color: var(--brand-green);
            color: var(--brand-green);
        }

        .faq-cat-icon {
            width: 40px;
            height: 40px;
            background: #f1f5f9;
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.1rem;
            color: var(--brand-navy);
        }

        .faq-category-btn.active .faq-cat-icon {
            background: var(--brand-green);
            color: #fff;
        }

        .faq-cat-content span {
            display: block;
            font-weight: 700;
            font-size: 0.95rem;
        }

        .faq-cat-content small {
            color: #64748b;
            font-size: 0.8rem;
        }

        .faq-support-box {
            background: var(--brand-navy);
            border-radius: 16px;
            padding: 25px;
            color: #fff;
            margin-top: 30px;
            text-align: left;
        }

        .faq-support-btn {
            display: block;
            background: var(--primary-orange);
            color: #fff;
            text-align: center;
            padding: 12px;
            border-radius: 8px;
            font-weight: 700;
            text-decoration: none;
            margin-top: 15px;
        }

        /* Accordion Styling */
        .faq-accordion-list {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .faq-accordion-item {
            background: #fff;
            border-radius: 12px;
            border: 1px solid #eee;
            overflow: hidden;
            transition: all 0.3s ease;
            display: none;
            /* Hidden by default for filtering */
            opacity: 0;
            transform: translateY(10px);
        }

        .faq-accordion-item.visible {
            display: block;
            opacity: 1;
            transform: translateY(0);
        }

        .faq-accordion-header {
            padding: 20px 25px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 20px;
            cursor: pointer;
            font-weight: 700;
            color: var(--brand-navy);
            font-size: 1rem;
            text-align: left;
            transition: var(--transition);
        }

        .faq-accordion-header span {
            flex: 1;
        }

        .faq-accordion-header i {
            color: var(--brand-green);
            font-size: 1.1rem;
            transition: all 0.3s ease;
            flex-shrink: 0;
        }

        .faq-accordion-body {
            max-height: 0;
            overflow: hidden;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            background: #fff;
        }

        .faq-accordion-body-inner {
            padding: 0 25px 25px;
            color: #64748b;
            font-size: 0.95rem;
            line-height: 1.7;
        }

        .faq-accordion-item.active {
            border-color: var(--brand-green);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        }

        .faq-accordion-item.active .faq-accordion-body {
            max-height: 500px;
        }

        .faq-accordion-item.active .faq-accordion-header {
            color: var(--brand-green);
        }

        .faq-accordion-item.active .faq-accordion-header i {
            transform: rotate(135deg);
        }

        /* Responsive Fixes */
        @media (max-width: 992px) {
            .faq-grid {
                grid-template-columns: 1fr;
                gap: 40px;
            }

            .faq-sidebar {
                position: relative;
                top: 0;
            }

            .faq-category-btn {
                margin-bottom: 10px;
            }
        }

        @media (max-width: 480px) {
            .faq-header-top h2 {
                font-size: 1.7rem !important;
            }

            .faq-header-top p {
                font-size: 0.9rem !important;
            }
        }

        /* --- FINAL CTA SECTION --- */
        .final-cta {
            padding: 100px 0;
            background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('https://hideawaycampresort.com/assets/images/resource/hideaway-riverside-resort.png');
            background-size: cover;
            background-position: center;
            background-attachment: fixed;
            text-align: center;
            color: #fff;
        }

        .final-cta h2 {
            font-size: 3rem;
            margin-bottom: 20px;
            font-weight: 800;
        }

        .final-cta p {
            font-size: 1.2rem;
            margin-bottom: 40px;
            opacity: 0.9;
        }

        .cta-btns {
            display: flex;
            justify-content: center;
            gap: 20px;
            flex-wrap: wrap;
        }

        .cta-btn {
            padding: 15px 40px;
            border-radius: 50px;
            font-weight: 700;
            text-decoration: none;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 1.1rem;
        }

        .cta-book {
            background: var(--primary-orange);
            color: #fff;
        }

        .cta-book:hover {
            background: #e67e22;
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
        }

        .cta-call {
            background: #fff;
            color: #333;
        }

        .cta-call:hover {
            background: #f0f0f0;
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
        }

        .cta-whatsapp {
            background: #25d366;
            color: #fff;
        }

        .cta-whatsapp:hover {
            background: #128c7e;
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
        }

        @media (max-width: 768px) {
            .final-cta h2 {
                font-size: 2.2rem;
            }

            .cta-btn {
                width: 100%;
                justify-content: center;
            }
        }



        /* --- SECTION 10: LINK HUB --- */
        footer {
            background: #1a252f;
            color: var(--white);
            padding: 80px 0 30px;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1fr;
            gap: 40px;
            margin-bottom: 60px;
        }

        .footer-logo h2 {
            margin-bottom: 20px;
            font-size: 28px;
        }

        .footer-logo p {
            opacity: 0.7;
            margin-bottom: 25px;
        }

        .social-links {
            display: flex;
            gap: 15px;
        }

        .social-links a {
            width: 40px;
            height: 40px;
            background: rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            transition: var(--transition);
        }

        .social-links a:hover {
            background: var(--primary-orange);
            transform: translateY(-3px);
        }

        .footer-col h3 {
            margin-bottom: 25px;
            font-size: 1.2rem;
            position: relative;
        }

        .footer-col h3::after {
            content: '';
            position: absolute;
            bottom: -8px;
            left: 0;
            width: 40px;
            height: 2px;
            background: var(--primary-orange);
        }

        .footer-col ul li {
            margin-bottom: 12px;
        }

        .footer-col ul li a {
            opacity: 0.8;
            transition: var(--transition);
        }

        .footer-col ul li a:hover {
            opacity: 1;
            color: var(--primary-orange);
            padding-left: 5px;
        }

        .footer-bottom {
            border-top: 1px solid rgba(255, 255, 255, 0.1);
            padding-top: 30px;
            text-align: center;
            opacity: 0.6;
            font-size: 0.9rem;
        }

        /* --- FLOATING BUTTONS --- */
        .floating-ctas {
            position: fixed;
            bottom: 30px;
            right: 30px;
            display: flex;
            flex-direction: column;
            gap: 15px;
            z-index: 1001;
        }

        .float-btn {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--white);
            font-size: 1.8rem;
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
            transition: var(--transition);
        }

        .float-btn:hover {
            transform: scale(1.1);
        }

        .float-wa {
            background: #25d366;
        }

        .float-call {
            background: var(--primary-orange);
        }

        /* --- MOBILE RESPONSIVENESS --- */
        @media (max-width: 992px) {
            .hero-content {
                flex-direction: column;
                align-items: center;
                text-align: center;
                gap: 40px;
                padding-top: 40px;
            }

            .highlights-grid {
                grid-template-columns: repeat(2, 1fr);
                /* 2 columns for mobile */
            }

            .hc-large {
                grid-column: span 2;
                /* Full width on row 1 */
            }

            .highlight-card:not(.hc-large) {
                grid-column: span 1;
                /* Half width on row 2 */
            }

            .interactive-services {
                height: 650px;
                padding: 30px 0;
            }

            .is-container {
                flex-direction: column-reverse;
                padding: 0 30px;
            }

            .is-left {
                width: 100%;
                margin-top: 0px;
            }

            .is-right {
                width: 100%;
                flex-direction: column-reverse;
            }



            .is-title {
                font-size: 2.5rem;
            }

            .amenities {
                grid-template-columns: 1fr;
            }

            .gallery-grid {
                grid-template-columns: repeat(2, 1fr);
                grid-auto-rows: 250px;
            }

            .reviews-masonry-container {
                column-count: 2;
            }

            .footer-grid {
                grid-template-columns: 1fr 1fr;
            }

            .location-grid {
                grid-template-columns: 1fr;
            }

            /* Highlights Mobile Fix */
            .highlights-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                grid-auto-rows: auto !important;
                /* Let rows adapt to card height */
                gap: 15px !important;
            }

            .hc-span-2 {
                grid-column: span 2 !important;
                height: 210px !important;
                /* Specific height for Row 1 */
                margin-bottom: 5px;
            }

            .highlight-card:not(.hc-span-2) {
                height: 165px !important;
                /* Specific height for Row 2, 3, etc. */
            }

            .hc-img {
                width: 110px !important;
                height: 110px !important;
                right: -10px !important;
                bottom: -5px !important;
            }

            .hc-span-2 .hc-img {
                width: 160px !important;
                height: 160px !important;
            }

            .highlight-card {
                padding: 15px !important;
                /* Less padding to fit text */
            }

            .highlight-title {
                font-size: 0.95rem !important;
                line-height: 1.2 !important;
            }

            .highlight-tag {
                font-size: 0.6rem !important;
            }

            .highlight-btn {
                padding: 4px 12px !important;
                font-size: 0.6rem !important;
            }
        }

        @media (max-width: 768px) {
            .nav-links {
                display: none;
            }

            .hero {
                align-items: flex-end;
            }

            .hero-content {
                align-items: flex-start;
                text-align: left;
            }

            .hero-container {
                padding-top: 100px;
                padding-bottom: 15px;
            }

            .hero h1 {
                font-size: clamp(1.5rem, 6.5vw, 3.5rem);
                margin-bottom: 20px;
            }

            .hero h2 {
                font-size: 1rem;
            }

            .hero p {
                display: none;
            }

            .gallery-title-row {
                flex-direction: column;
                align-items: flex-start;
            }

            .gallery-desc {
                text-align: left;
            }

            .gallery-title {
                font-size: 2rem;
                letter-spacing: -1px;
            }

            .gallery-grid {
                grid-template-columns: 1fr;
                grid-auto-rows: 250px;
            }

            .reviews-masonry-container {
                display: grid;
                grid-template-rows: repeat(2, auto);
                grid-auto-flow: column;
                grid-auto-columns: 85%;
                overflow-x: auto;
                gap: 15px;
                padding: 10px 15px 30px;
                scroll-snap-type: x mandatory;
                -webkit-overflow-scrolling: touch;
            }

            .platform-card {
                min-width: unset;
                width: 100%;
                padding: 20px;
                margin-bottom: 0;
                scroll-snap-align: center;
                flex-shrink: 0;
                gap: 12px;
                border-radius: 16px;
                height: 100%;
            }

            .platform-user img {
                width: 40px;
                height: 40px;
            }

            .platform-user {
                gap: 12px;
            }

            .platform-user-info .review-author {
                font-size: 0.95rem;
            }

            .platform-content {
                font-size: 0.85rem;
                line-height: 1.5;
            }

            .ta-title {
                font-size: 1rem;
            }

            .platform-logo img {
                width: 22px;
                height: 22px;
            }

            .reviews-title-area h2 {
                font-size: 2.5rem;
            }

            .g-span-2 {
                grid-column: span 1;
            }

            .footer-grid {
                grid-template-columns: 1fr;
            }

            .interactive-services {
                margin: 0;
                border-radius: 0;
            }

            .is-overlay {
                background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.85) 100%);
            }

            .is-title {
                display: none;
            }

            .is-card {
                min-width: 140px;
                height: 160px;
            }

            .is-container {
                padding: 0 20px;
            }

            header {
                background: var(--white);
                padding: 10px 0;
            }

            .logo h2,
            .nav-link {
                color: var(--text-dark);
            }

            .trust-strip {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 10px;
                justify-content: center;
                width: 100%;
            }

            .trust-item {
                width: 100%;
                justify-content: flex-start;
            }

            .highlights .section-title {
                margin-bottom: 20px !important;
            }

            .highlights .section-title h2 {
                font-size: 1.8rem;
                letter-spacing: 1px;
                margin-bottom: 15px;
            }

            .highlights .section-title h2::after {
                width: 50px;
                height: 4px;
                border-radius: 2px;
            }

            .highlights-grid {
                grid-template-columns: repeat(2, 1fr);
                grid-auto-rows: 160px;
                gap: 10px;
            }

            .hc-img {
                width: 110px;
                height: 110px;
                right: -15px;
                bottom: -15px;
                border-radius: 50%;
                border: 4px solid #fff;
            }

            .highlight-card {
                padding: 15px;
            }

            .highlight-title {
                font-size: 1rem;
            }

            .highlight-btn {
                padding: 6px 12px;
                font-size: 0.7rem;
            }

            .hc-span-2 {
                grid-column: span 1;
            }
        }

        /* --- NEW: PACKAGES & RATES SECTION --- */
        .packages-section {
            padding: 100px 0;
            background: #fff;
        }

        .package-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 30px;
            margin-top: 50px;
        }

        .package-card {
            background: #fff;
            border-radius: 24px;
            overflow: hidden;
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
            border: 1px solid #f1f5f9;
            transition: var(--transition);
            display: flex;
            flex-direction: column;
        }

        .package-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1);
        }

        .package-header {
            padding: 20px 15px;
            background: linear-gradient(135deg, #0b1c39 0%, #1e40af 100%);
            color: #fff;
            text-align: center;
            position: relative;
        }

        .package-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: var(--transition);
        }

        .package-carousel {
            position: relative;
            width: 100%;
            height: 180px;
            overflow: hidden;
        }

        .carousel-track {
            display: flex;
            height: 100%;
            transition: transform 0.5s ease-in-out;
        }

        .carousel-slide {
            min-width: 100%;
            height: 100%;
        }

        .carousel-nav-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(255, 255, 255, 0.8);
            border: none;
            width: 30px;
            height: 30px;
            border-radius: 50%;
            cursor: pointer;
            z-index: 10;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            color: var(--brand-navy);
            transition: var(--transition);
            opacity: 0;
        }

        .package-carousel:hover .carousel-nav-btn {
            opacity: 1;
        }

        .carousel-nav-btn:hover {
            background: #fff;
            color: var(--primary-orange);
        }

        .carousel-prev {
            left: 10px;
        }

        .carousel-next {
            right: 10px;
        }

        .carousel-dots {
            position: absolute;
            bottom: 10px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 5px;
            z-index: 10;
        }

        .carousel-dot {
            width: 6px;
            height: 6px;
            background: rgba(255, 255, 255, 0.5);
            border-radius: 50%;
            transition: var(--transition);
        }

        .carousel-dot.active {
            background: #fff;
            width: 12px;
            border-radius: 10px;
        }

        .package-header.alt {
            background: linear-gradient(135deg, #14532d 0%, #3f6212 100%);
        }

        .package-header.inclusive {
            background: linear-gradient(135deg, #c2410c 0%, #f97316 100%);
        }

        .package-header h3 {
            font-size: 1.8rem;
            margin-bottom: 10px;
            letter-spacing: 1px;
        }

        .package-header .price-tag {
            font-size: 0.9rem;
            opacity: 0.9;
            text-transform: uppercase;
            letter-spacing: 2px;
        }

        .package-body {
            padding: 15px 20px;
            flex-grow: 1;
        }

        .pricing-list {
            list-style: none;
            padding: 0;
            margin-bottom: 20px;
        }

        .pricing-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 8px 0;
            border-bottom: 1px dashed #e2e8f0;
        }

        .pricing-item:last-child {
            border-bottom: none;
        }

        .pricing-label {
            font-weight: 600;
            color: var(--text-dark);
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .pricing-label i {
            color: var(--primary-orange);
            font-size: 0.9rem;
        }

        .pricing-value {
            font-size: 1.2rem;
            font-weight: 800;
            color: var(--brand-navy);
        }

        .package-card.cottage .pricing-value {
            color: #1e40af;
        }

        .package-card.tents .pricing-value {
            color: #166534;
        }

        .package-card.pack .pricing-value {
            color: #c2410c;
        }

        .pricing-value span {
            font-size: 0.8rem;
            font-weight: 600;
            color: var(--text-light);
        }

        .package-features-mini {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
            margin-bottom: 15px;
        }

        .feat-mini {
            font-size: 0.85rem;
            color: var(--text-light);
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .feat-mini i {
            color: #43a047;
        }

        /* --- FOOD MENU SHOWCASE --- */
        .food-menu-section {
            padding: 80px 0;
            background: #f8fafc;
        }

        .menu-tabs {
            display: flex;
            justify-content: center;
            gap: 15px;
            margin-bottom: 50px;
            flex-wrap: wrap;
        }

        .menu-tab-btn {
            padding: 12px 25px;
            border-radius: 12px;
            background: #fff;
            border: 1px solid #e2e8f0;
            font-weight: 700;
            cursor: pointer;
            transition: var(--transition);
            display: flex;
            align-items: center;
            gap: 10px;
            color: var(--text-light);
        }

        .menu-tab-btn.active {
            background: var(--primary-orange);
            color: #fff;
            border-color: var(--primary-orange);
            box-shadow: 0 10px 20px rgba(255, 123, 41, 0.2);
        }

        .menu-content {
            display: none;
            animation: fadeIn 0.5s ease;
        }

        .menu-content.active {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
        }

        .menu-item-box {
            background: #fff;
            padding: 20px;
            border-radius: 16px;
            border-left: 4px solid var(--primary-orange);
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.02);
        }

        .menu-item-box h4 {
            font-size: 1.1rem;
            margin-bottom: 5px;
            color: var(--brand-navy);
        }

        .menu-item-box p {
            font-size: 0.9rem;
            color: var(--text-light);
            margin: 0;
        }

        /* --- ADVENTURE RATES --- */
        .adventure-rates {
            padding: 80px 0;
        }

        .rates-table-container {
            overflow-x: auto;
            background: #fff;
            border-radius: 24px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
            padding: 20px;
        }

        .rates-table {
            width: 100%;
            border-collapse: collapse;
            min-width: 600px;
        }

        .rates-table th {
            text-align: left;
            padding: 20px;
            background: #f8fafc;
            color: var(--brand-navy);
            font-weight: 800;
            text-transform: uppercase;
            font-size: 0.85rem;
            letter-spacing: 1px;
        }

        .rates-table td {
            padding: 20px;
            border-bottom: 1px solid #f1f5f9;
            color: var(--text-dark);
            font-weight: 500;
        }

        .rates-table tr:last-child td {
            border-bottom: none;
        }

        .price-badge {
            display: inline-block;
            padding: 6px 15px;
            background: rgba(255, 123, 41, 0.1);
            color: var(--primary-orange);
            border-radius: 50px;
            font-weight: 800;
        }

        /* --- POLICIES SECTION --- */
        .policies-section {
            padding: 60px 0;
            background: var(--brand-navy);
            color: #fff;
        }

        .policy-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 40px;
        }

        .policy-box h4 {
            color: var(--primary-orange);
            margin-bottom: 20px;
            font-size: 1.2rem;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .policy-list {
            list-style: none;
            padding: 0;
        }

        .policy-list li {
            margin-bottom: 12px;
            font-size: 0.9rem;
            display: flex;
            gap: 10px;
            opacity: 0.9;
        }

        .policy-list li i {
            margin-top: 4px;
            font-size: 0.8rem;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(10px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @media (max-width: 768px) {

            .packages-section,
            .food-menu-section,
            .adventure-rates {
                padding: 60px 0;
            }

            .menu-tabs {
                gap: 8px;
            }

            .menu-tab-btn {
                padding: 10px 15px;
                font-size: 0.85rem;
            }

            /* Horizontal Scroll for Packages on Mobile */
            .packages-section .package-grid {
                display: flex;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                gap: 20px;
                padding: 10px 20px 30px;
                margin-left: -20px;
                margin-right: -20px;
                scrollbar-width: none;
                /* Firefox */
            }

            .packages-section .package-grid::-webkit-scrollbar {
                display: none;
                /* Chrome/Safari */
            }

            .packages-section .package-card {
                min-width: 280px;
                max-width: 280px;
                height: 230px !important;
                scroll-snap-align: center;
                flex-shrink: 0;
                display: flex;
                flex-direction: column;
                overflow: hidden;
            }

            /* Font Size Reductions for Compact Mobile View */
            .packages-section .package-carousel {
                height: 150px;
            }

            .packages-section .package-header {
                padding: 12px 10px !important;
            }

            .packages-section .package-header h3 {
                font-size: 1.1rem !important;
                margin-bottom: 2px !important;
            }

            .packages-section .package-header .price-tag {
                font-size: 0.7rem !important;
            }

            .packages-section .package-body {
                padding: 10px 15px !important;
                overflow-y: auto;
                flex-grow: 1;
                display: flex;
                flex-direction: column;
                justify-content: center;
            }

            .packages-section .package-features-mini {
                display: none !important;
                /* Hide features to save height, making it compact */
            }

            .packages-section .pricing-item {
                padding: 5px 0 !important;
                font-size: 0.8rem !important;
            }

            .packages-section .pricing-value {
                font-size: 0.95rem !important;
            }

            .packages-section .pricing-value span {
                font-size: 0.7rem;
            }

            .packages-section .policy-list li {
                font-size: 0.8rem;
                margin-bottom: 8px;
            }

            /* Section Title Reduction */
            .packages-section .section-title h2 {
                font-size: 1.1rem;
                margin-bottom: 5px;
                overflow-wrap: break-word;
                text-align: center;
            }

            .packages-section .section-title p {
                font-size: 0.8rem;
                line-height: 1.4;
            }

            .packages-section .section-title .badge {
                font-size: 0.65rem;
                padding: 4px 12px;
            }

            /* Food Menu Title Reduction */
            .food-menu-section .section-title h2 {
                font-size: 1.1rem;
                margin-bottom: 5px;
                overflow-wrap: break-word;
                text-align: center;
            }

            .food-menu-section .section-title p {
                font-size: 0.8rem;
            }

            .adventure-rates {
                padding: 25px 0;
            }

            .adventure-rates .section-title h2 {
                font-size: 1.2rem;
                margin-bottom: 2px;
            }

            .adventure-rates .section-title p {
                font-size: 0.65rem;
                line-height: 1.2;
            }

            /* Ultra-Compact Table */
            .rates-table {
                width: 100%;
                border-collapse: collapse;
                margin-top: 5px;
            }

            .rates-table th {
                padding: 5px 4px;
                font-size: 0.6rem;
                background: #f8fafc;
                border-bottom: 1px solid #e2e8f0;
            }

            .rates-table td {
                padding: 5px 4px;
                font-size: 0.55rem;
                border-bottom: 1px solid #f1f5f9;
            }

            .price-badge {
                font-size: 0.65rem !important;
                padding: 2px 6px !important;
                border-radius: 4px !important;
            }

            /* One line Filter Buttons */
            .menu-tabs {
                flex-wrap: nowrap;
                justify-content: flex-start;
                overflow-x: auto;
                padding-bottom: 10px;
                scrollbar-width: none;
                gap: 5px;
            }

            .menu-tabs::-webkit-scrollbar {
                display: none;
            }

            .menu-tab-btn {
                padding: 8px 12px;
                font-size: 0.75rem;
                white-space: nowrap;
                flex-shrink: 0;
            }

            /* 3 Column Grid for Menu Items */
            .menu-content.active {
                grid-template-columns: repeat(3, 1fr);
                gap: 8px;
            }

            .menu-item-box {
                padding: 10px 8px;
                text-align: left;
                border-left: none;
                border-top: 3px solid var(--primary-orange);
                height: 100%;
                display: flex;
                flex-direction: column;
                justify-content: flex-start;
            }

            .menu-item-box h4 {
                font-size: 0.75rem;
                margin-bottom: 3px;
                line-height: 1.2;
            }

            .menu-item-box p {
                font-size: 0.6rem;
                line-height: 1.1;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
            }

            /* Policies Section Compression */
            .policies-section {
                padding: 30px 0;
            }

            .policy-grid {
                grid-template-columns: 1fr 1fr;
                gap: 15px;
            }

            .policy-box h4 {
                font-size: 0.85rem;
                margin-bottom: 10px;
                gap: 5px;
            }

            .policy-list li {
                font-size: 0.65rem;
                margin-bottom: 5px;
                gap: 5px;
            }

            .policy-list li i {
                font-size: 0.6rem;
            }

            .policy-box:last-child {
                grid-column: span 2;
                text-align: center;
                margin-top: 10px;
            }

            .policy-box:last-child div {
                flex-direction: row !important;
                justify-content: center;
                gap: 15px !important;
            }

            .policy-box:last-child a {
                font-size: 0.95rem !important;
            }

            .policy-box:last-child p {
                font-size: 0.7rem;
                margin-bottom: 8px !important;
            }

            /* Quick Highlights - 3 Column Grid Mobile */
            .highlights {
                padding: 25px 0;
            }

            .highlights .section-title {
                margin-bottom: 15px;
            }

            .highlights .section-title h2 {
                font-size: 1.4rem;
            }

            .highlights-grid {
                display: grid !important;
                grid-template-columns: repeat(3, 1fr) !important;
                grid-auto-rows: 100px;
                gap: 8px;
            }

            .highlight-card {
                padding: 8px;
                border-radius: 12px;
                display: flex;
                flex-direction: column;
                justify-content: flex-start;
                align-items: flex-start;
                text-align: left;
                min-width: 0;
                /* Allow cards to shrink */
            }

            .highlight-title {
                font-size: 0.6rem !important;
                line-height: 1.1;
                font-weight: 700;
                margin-top: 1px;
            }

            .highlight-tag {
                font-size: 0.4rem !important;
                letter-spacing: 0.5px;
            }

            .highlight-btn {
                display: none;
            }

            .hc-img {
                width: 40px;
                height: 40px;
                bottom: 5px;
                right: 5px;
                border: 1px solid #fff;
            }

            /* Reset specific spans for 3-col layout */
            .hc-span-2 {
                grid-column: span 1 !important;
            }

            /* First card full width but slim */
            .highlights-grid a:first-child {
                grid-column: span 3 !important;
                height: 70px;
                flex-direction: row;
                align-items: center;
                justify-content: space-between;
            }

            .highlights-grid a:first-child .hc-img {
                width: 50px;
                height: 50px;
                position: relative;
                bottom: 0;
                right: 0;
            }

            .highlights-grid a:first-child .highlight-title {
                font-size: 1.1rem !important;
            }

            /* Reviews Section - Ultra Compact Half-Page */
            .reviews {
                padding: 25px 0;
                background: #fff;
            }

            .reviews-header {
                margin-bottom: 15px;
                flex-direction: column;
                align-items: center;
                text-align: center;
            }

            .reviews-title-area .badge {
                display: none;
            }

            .reviews-title-area h2 {
                font-size: 1.3rem !important;
                margin-bottom: 10px;
            }

            .trust-widgets {
                gap: 10px;
                justify-content: center;
            }

            .rating-card {
                padding: 5px 12px;
                font-size: 0.7rem;
                border-radius: 20px;
            }

            .rating-card img {
                height: 15px;
            }

            .reviews-tabs {
                margin-bottom: 15px;
                gap: 8px;
            }

            .tab-btn {
                padding: 8px 15px;
                font-size: 0.75rem;
            }

            .tab-btn img {
                width: 14px;
                height: 14px;
            }

            .reviews-masonry-container {
                display: flex !important;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                gap: 12px;
                padding: 5px 20px 20px;
                margin-left: -20px;
                margin-right: -20px;
                scrollbar-width: none;
            }

            .reviews-masonry-container::-webkit-scrollbar {
                display: none;
            }

            .platform-card {
                min-width: 260px;
                max-width: 260px;
                height: 160px !important;
                padding: 12px !important;
                margin-bottom: 0;
                scroll-snap-align: center;
                flex-shrink: 0;
                justify-content: flex-start;
            }

            .platform-user img {
                width: 30px;
                height: 30px;
            }

            .platform-user-info .review-author {
                font-size: 0.8rem !important;
            }

            .platform-stars {
                font-size: 0.75rem !important;
            }

            .platform-content {
                font-size: 0.7rem !important;
                line-height: 1.3;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden;
                margin-top: 5px;
            }

            .ta-date,
            .ta-title {
                display: none;
            }

            /* Hide extra meta on mobile cards */

            /* Bottom CTA Cards - Even Smaller */
            .platform-highlight-cta {
                gap: 8px !important;
                margin-top: 20px;
            }

            .p-cta-card {
                padding: 10px 5px !important;
            }

            .p-cta-text h4 {
                font-size: 0.75rem !important;
                line-height: 1.1;
            }

            .p-cta-text p {
                font-size: 0.55rem !important;
            }

            .p-cta-left img {
                width: 25px !important;
                height: 25px !important;
            }

            /* Experience Gallery - Ultra Compact Grid */
            .gallery {
                padding: 30px 0;
            }

            .gallery-header {
                margin-bottom: 20px;
            }

            .gallery-title {
                font-size: 1.4rem !important;
            }

            .gallery-badge {
                font-size: 0.65rem !important;
                padding: 4px 12px !important;
            }

            .gallery-filters {
                display: flex !important;
                flex-wrap: nowrap !important;
                overflow-x: auto !important;
                gap: 8px !important;
                margin-bottom: 20px;
                scrollbar-width: none;
                padding-bottom: 5px;
            }

            .gallery-filters::-webkit-scrollbar {
                display: none;
            }

            .filter-btn {
                padding: 8px 16px !important;
                font-size: 0.7rem !important;
                white-space: nowrap !important;
                flex-shrink: 0 !important;
            }

            .gallery-grid {
                display: grid !important;
                grid-template-columns: repeat(3, 1fr) !important;
                grid-auto-rows: 110px !important;
                gap: 5px !important;
                padding: 10px 0 !important;
            }

            .gallery-item {
                height: 100% !important;
                border-radius: 8px !important;
            }

            .gallery-overlay {
                display: none !important;
            }

            /* About Section - Balanced Compact */
            .about-section {
                padding: 40px 0 !important;
            }

            .about-content-label {
                font-size: 0.7rem !important;
                margin-bottom: 8px !important;
            }

            .about-title {
                font-size: 1.1rem !important;
                margin-bottom: 15px !important;
                overflow-wrap: break-word;
                text-align: center;
            }

            .about-desc {
                font-size: 0.85rem !important;
                line-height: 1.4 !important;
            }

            .about-stats {
                gap: 12px !important;
                margin-top: 20px !important;
            }

            .stat-item {
                padding: 12px 8px !important;
            }

            .stat-item i {
                font-size: 1rem !important;
                margin-bottom: 4px !important;
            }

            .stat-item h4 {
                font-size: 0.9rem !important;
            }

            .stat-item p {
                font-size: 0.6rem !important;
            }

            .featured-video {
                max-width: 100% !important;
                height: auto !important;
                margin-bottom: 25px !important;
                border-radius: 16px !important;
            }

            .exp-badge {
                width: 80px !important;
                height: 80px !important;
                top: -15px !important;
                right: -10px !important;
                padding: 10px !important;
                display: flex !important;
                flex-direction: column !important;
                justify-content: center !important;
                align-items: center !important;
                text-align: center !important;
            }

            .exp-badge .stat-number {
                font-size: 1.2rem !important;
                margin: 0 !important;
                line-height: 1 !important;
            }

            .exp-badge p {
                font-size: 0.55rem !important;
                line-height: 1.1 !important;
                margin: 0 !important;
            }

            /* Amenities Section Ultra Compact */
            .amenities-section {
                padding: 30px 0 !important;
            }

            .amenities-header h2 {
                font-size: 1rem !important;
                margin-bottom: 20px !important;
                line-height: 1.4 !important;
                overflow-wrap: break-word !important;
                text-align: center !important;
                width: 100% !important;
                padding: 0 10px !important;
            }

            .amenities-grid-table {
                display: grid !important;
                grid-template-columns: repeat(3, 1fr) !important;
                gap: 8px !important;
            }

            .amenity-cell {
                padding: 12px 5px !important;
            }

            .amenity-icon {
                font-size: 1.2rem !important;
                margin-bottom: 5px !important;
            }

            .amenity-title {
                font-size: 0.65rem !important;
                line-height: 1.2 !important;
            }

            .amenity-desc {
                display: none !important;
            }

            /* Hide descriptions on mobile to save space */

            #toggleAmenitiesBtn {
                padding: 8px 16px !important;
                font-size: 0.75rem !important;
            }

            /* Location Section Ultra Compact */
            .location-seo-block {
                padding: 20px 0 !important;
            }

            .l-seo-grid {
                grid-template-columns: 1fr !important;
                gap: 10px !important;
            }

            .l-seo-left h2 {
                font-size: 1.3rem !important;
                margin-bottom: 5px !important;
                text-align: center;
            }

            .l-seo-left p,
            .l-seo-socials {
                display: none !important;
            }

            .l-seo-stats {
                grid-template-columns: repeat(4, 1fr) !important;
                gap: 5px !important;
                margin-bottom: 10px !important;
                padding: 0 5px !important;
            }

            .l-stat-icon {
                width: 30px !important;
                height: 30px !important;
                font-size: 0.8rem !important;
                margin-bottom: 4px !important;
            }

            .l-stat .l-stat-title {
                font-size: 0.55rem !important;
                margin-bottom: 2px !important;
            }

            .l-stat span {
                font-size: 0.45rem !important;
            }

            .l-seo-right {
                display: grid !important;
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 8px !important;
                padding: 0 10px !important;
            }

            .l-seo-card {
                padding: 10px 5px !important;
                gap: 5px !important;
                flex-direction: column !important;
                text-align: center !important;
                align-items: center !important;
                height: auto !important;
                margin-bottom: 0 !important;
            }

            .l-seo-card-icon {
                width: 35px !important;
                height: 35px !important;
            }

            .l-seo-card-icon i {
                font-size: 1.1rem !important;
            }

            .l-seo-card-text h3 {
                font-size: 0.75rem !important;
                margin-bottom: 2px !important;
            }

            .l-seo-card-text p {
                font-size: 0.6rem !important;
                line-height: 1.2 !important;
            }

            .l-seo-map-card {
                grid-column: span 2 !important;
                height: 140px !important;
                border-radius: 12px !important;
                overflow: hidden !important;
            }

            /* FAQ / Policies Section Ultra Compact */
            .faq-section {
                padding: 20px 0 !important;
            }

            .faq-header-top {
                text-align: center !important;
                margin-bottom: 15px !important;
            }

            .faq-header-top h2 {
                font-size: 1.2rem !important;
                margin-bottom: 5px !important;
                line-height: 1.3 !important;
                overflow-wrap: break-word !important;
            }

            .faq-header-top p,
            .faq-pill,
            .faq-sidebar h3,
            .faq-support-box {
                display: none !important;
            }

            .faq-grid {
                grid-template-columns: 1fr !important;
                gap: 10px !important;
            }

            .faq-sidebar {
                display: flex !important;
                flex-direction: row !important;
                overflow-x: auto !important;
                gap: 8px !important;
                padding: 5px !important;
                margin-bottom: 10px !important;
                scrollbar-width: none;
            }

            .faq-sidebar::-webkit-scrollbar {
                display: none;
            }

            .faq-category-btn {
                padding: 8px 12px !important;
                min-width: max-content !important;
                margin-bottom: 0 !important;
                border-radius: 20px !important;
            }

            .faq-cat-icon,
            .faq-cat-content small,
            .faq-category-btn i {
                display: none !important;
            }

            .faq-cat-content span {
                font-size: 0.75rem !important;
            }

            .faq-accordion-header {
                padding: 10px 15px !important;
                font-size: 0.8rem !important;
            }

            .faq-accordion-header i {
                font-size: 0.7rem !important;
            }

            .faq-accordion-body-inner {
                padding: 10px 15px !important;
                font-size: 0.75rem !important;
                line-height: 1.4 !important;
            }

            .faq-accordion-item {
                margin-bottom: 5px !important;
            }

            /* Footer Ultra Compact */
            footer {
                padding: 30px 0 10px !important;
            }

            .footer-grid {
                grid-template-columns: 1fr 1fr !important;
                gap: 20px !important;
            }

            .footer-logo h2 {
                font-size: 1.2rem !important;
            }

            .footer-logo p {
                display: none !important;
            }

            .social-links {
                gap: 8px !important;
                margin-top: 10px !important;
            }

            .social-links a {
                width: 30px !important;
                height: 30px !important;
                font-size: 0.8rem !important;
            }

            .footer-col h3 {
                font-size: 0.85rem !important;
                margin-bottom: 10px !important;
                color: var(--primary-orange);
            }

            .footer-col ul li {
                margin-bottom: 5px !important;
            }

            .footer-col ul li a {
                font-size: 0.7rem !important;
            }

            .footer-bottom {
                margin-top: 20px !important;
                padding-top: 10px !important;
            }

            .footer-bottom p {
                font-size: 0.55rem !important;
            }

            /* Advantage Section Compact */
            .authority-depth-section {
                padding: 30px 0 !important;
            }

            .authority-depth-section .section-title h2 {
                font-size: 1.2rem !important;
                margin-bottom: 5px !important;
                overflow-wrap: break-word;
            }

            .authority-depth-section .section-title p {
                font-size: 0.75rem !important;
                line-height: 1.3 !important;
            }

            .authority-grid {
                display: grid !important;
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 12px !important;
                padding: 0 15px !important;
            }

            .authority-grid .auth-card:last-child {
                grid-column: span 2 !important;
            }

            .auth-card {
                padding: 12px 5px !important;
                border-radius: 12px !important;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
                text-align: center !important;
                display: flex !important;
                flex-direction: column !important;
                align-items: center !important;
                transition: all 0.3s ease;
            }

            .auth-card i {
                font-size: 1.2rem !important;
                margin-bottom: 5px !important;
            }

            .auth-card h3 {
                font-size: 0.75rem !important;
                margin-bottom: 2px !important;
                line-height: 1.1 !important;
                height: auto;
                display: block;
            }

            .auth-card p {
                font-size: 0.65rem !important;
                display: -webkit-box !important;
                -webkit-line-clamp: 2 !important;
                -webkit-box-orient: vertical !important;
                overflow: hidden !important;
                margin: 5px 0 !important;
                text-align: center !important;
                line-height: 1.3 !important;
            }

            .auth-card p.expanded {
                display: block !important;
                -webkit-line-clamp: initial !important;
                overflow: visible !important;
                background: rgba(255, 255, 255, 0.7);
                padding: 10px;
                border-radius: 8px;
                border-top: 1px solid rgba(0, 0, 0, 0.05);
                margin-top: 8px !important;
            }

            .authority-grid {
                position: relative;
            }

            .auth-read-more {
                background: none !important;
                color: var(--primary-orange) !important;
                border: none !important;
                font-size: 0.65rem !important;
                font-weight: 700;
                padding: 0 !important;
                cursor: pointer;
                display: inline-block !important;
                margin-top: 2px !important;
                text-decoration: underline !important;
            }

            .card-blue {
                background: #f0f9ff !important;
                border: 1px solid #e0f2fe;
            }

            .card-green {
                background: #f0fdf4 !important;
                border: 1px solid #dcfce7;
            }

            .card-orange {
                background: #fff7ed !important;
                border: 1px solid #ffedd5;
            }

            /* Local Authority Guide Mobile Compression */
            .local-authority-guide-section {
                padding: 30px 0 !important;
            }

            .local-authority-guide-section .section-title {
                margin-bottom: 20px !important;
            }

            .local-authority-guide-section .section-title h2 {
                font-size: 1.4rem !important;
                margin-bottom: 8px !important;
                line-height: 1.3 !important;
            }

            .local-authority-guide-section .section-title p {
                font-size: 0.8rem !important;
                line-height: 1.4 !important;
            }

            .local-authority-guide-section .guide-content-grid {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
                margin-bottom: 20px !important;
            }

            .local-authority-guide-section .guide-col-left,
            .local-authority-guide-section .guide-col-right {
                font-size: 0.8rem !important;
                line-height: 1.5 !important;
            }

            .local-authority-guide-section .guide-col-left h3,
            .local-authority-guide-section .guide-col-right h3 {
                font-size: 1.05rem !important;
                margin-bottom: 8px !important;
                margin-top: 15px !important;
            }

            .local-authority-guide-section p {
                margin-bottom: 10px !important;
            }

            .local-authority-guide-section .guide-accordion-depth {
                padding: 15px !important;
                font-size: 0.8rem !important;
                line-height: 1.5 !important;
            }

            .local-authority-guide-section .guide-accordion-depth h3 {
                font-size: 1.05rem !important;
                margin-bottom: 10px !important;
            }

            .local-authority-guide-section .guide-accordion-depth div {
                grid-template-columns: 1fr !important;
                gap: 15px !important;
                margin-top: 15px !important;
            }

            .local-authority-guide-section .guide-accordion-depth h4 {
                font-size: 0.85rem !important;
                margin-bottom: 4px !important;
            }

            /* Collapsible guide container constraints on mobile */
            .local-authority-guide-section .guide-scroll-wrapper {
                max-height: 280px;
                overflow: hidden;
                position: relative;
                transition: max-height 0.4s ease;
            }

            .local-authority-guide-section .guide-fade-overlay {
                display: block !important;
            }

            .local-authority-guide-section .guide-toggle-btn {
                display: inline-block !important;
            }
        }
        .hero-subtitle {
            font-size: 1.25rem;
            font-weight: 500;
            margin-bottom: 25px;
        }
        .hero-cta-btn {
            margin-bottom: 30px;
        }

/* ==========================================================================
   Extracted Inline Styles for Performance Optimization
   ========================================================================== */

/* Why Choose Camping Section */
.why-choose-camping .section-title {
    text-align: center;
    margin-bottom: 50px;
}
.why-choose-camping .badge {
    background: rgba(255, 123, 41, 0.1);
    color: var(--primary-orange);
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: inline-block;
    margin-bottom: 15px;
}
.why-choose-camping h2 {
    font-size: 2.5rem;
    color: var(--brand-navy);
    font-family: 'Playfair Display', serif;
    font-weight: 800;
    margin-bottom: 15px;
}
.why-choose-camping p {
    max-width: 650px;
    margin: 0 auto;
    color: var(--text-light);
    font-size: 1rem;
    line-height: 1.6;
}

/* Authority Depth Section */
.authority-depth-section {
    padding: 80px 0;
    background: #f8fafc;
}
.authority-depth-section .section-title {
    text-align: center;
    margin-bottom: 50px;
}
.authority-depth-section .section-title p {
    max-width: 800px;
    margin: 0 auto;
    color: #64748b;
}
.authority-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}
.authority-grid .auth-card {
    background: #fff;
    padding: 30px;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}
.authority-grid .auth-card h3 {
    color: var(--secondary-blue);
    margin-bottom: 15px;
}
.authority-grid .auth-card p {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.6;
}

/* Packages Section & Rates */
.packages-section .section-title {
    text-align: center;
}
.packages-section .section-title p {
    max-width: 700px;
    margin: 0 auto;
    color: #64748b;
}
.package-card.tents .package-header {
    background: linear-gradient(135deg, #0b2518 0%, #15803d 100%);
}
.pricing-item.disabled {
    opacity: 0.5;
}
.package-card.pack {
    border: 2px solid var(--primary-orange);
}
.package-header.inclusive {
    padding-top: 40px;
    padding-bottom: 40px;
}
.package-card.pack .policy-list {
    color: var(--text-dark);
}
.package-card.pack .notice-box {
    margin-top: 20px;
    font-size: 0.85rem;
    background: #fff7ed;
    padding: 10px;
    border-radius: 8px;
    color: #c2410c;
}
.package-card.pack .notice-box a {
    color: var(--primary-orange);
    font-weight: bold;
    text-decoration: underline;
}

/* Resort Showcase Section */
.resort-showcase-section {
    padding: 60px 0;
    background: #fafafa;
}
.resort-showcase-section .section-title {
    text-align: center;
    margin-bottom: 40px;
}
.resort-showcase-section .section-title p {
    color: #64748b;
    max-width: 600px;
    margin: 0 auto;
}

/* Review date helper */
.review-date {
    color: #70757a;
    font-size: 0.85rem;
    margin-left: 8px;
}

/* Trekking Expeditions Section */
.trekking-expeditions-section {
    padding: 80px 0;
    background: var(--bg-light);
}
.trekking-expeditions-section .section-title {
    text-align: center;
    margin-bottom: 50px;
}
.trekking-expeditions-section .badge {
    background: rgba(45, 90, 39, 0.1);
    color: var(--brand-green);
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: inline-block;
    margin-bottom: 15px;
}
.trekking-expeditions-section h2 {
    font-size: 2.5rem;
    color: var(--brand-navy);
    font-family: 'Playfair Display', serif;
    font-weight: 800;
    margin-bottom: 15px;
}
.trekking-expeditions-section p {
    max-width: 650px;
    margin: 0 auto;
    color: var(--text-light);
    font-size: 1rem;
    line-height: 1.6;
}
.trekking-grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}
.trek-card {
    background: var(--white);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.04);
    transition: var(--transition);
    border: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
}
.trek-img {
    height: 200px;
    overflow: hidden;
    position: relative;
}
.trek-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.trek-img span {
    position: absolute;
    bottom: 15px;
    left: 20px;
    background: var(--primary-orange);
    color: var(--white);
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
}
.trek-info {
    padding: 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
}
.trek-info h3 {
    font-size: 1.3rem;
    color: var(--brand-navy);
    font-weight: 700;
    margin-bottom: 10px;
    font-family: 'Playfair Display', serif;
}
.trek-info p {
    font-size: 0.9rem;
    color: var(--text-light);
    line-height: 1.5;
    margin-bottom: 20px;
}
.trek-info a {
    color: var(--primary-orange);
    font-weight: 700;
    font-size: 0.9rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* Local Authority Guide Section */
.local-authority-guide-section {
    padding: 80px 0;
    background: var(--bg-light);
    border-top: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
}
.local-authority-guide-section .section-title {
    text-align: center;
    margin-bottom: 50px;
}
.local-authority-guide-section .badge {
    background: rgba(45, 90, 39, 0.1);
    color: var(--brand-green);
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: inline-block;
    margin-bottom: 15px;
}
.local-authority-guide-section h2 {
    font-size: 2.5rem;
    color: var(--brand-navy);
    font-family: 'Playfair Display', serif;
    font-weight: 800;
    margin-bottom: 15px;
}
.local-authority-guide-section p {
    max-width: 800px;
    margin: 0 auto;
    color: #64748b;
    line-height: 1.6;
}
.guide-content-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    margin-bottom: 40px;
    align-items: start;
}
.guide-col-left, .guide-col-right {
    color: #475569;
    font-size: 0.95rem;
    line-height: 1.8;
}
.guide-col-left h3, .guide-col-right h3 {
    color: var(--brand-navy);
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    font-size: 1.5rem;
    margin-bottom: 15px;
}
.guide-col-left h3.mt-30, .guide-col-right h3.mt-30 {
    margin-top: 30px;
}
.guide-col-left p, .guide-col-right p {
    margin-bottom: 15px;
}
.guide-accordion-depth {
    background: #fff;
    border-radius: 15px;
    padding: 35px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    border: 1px solid #f1f5f9;
    color: #475569;
    font-size: 0.95rem;
    line-height: 1.8;
}
.guide-accordion-depth h3 {
    color: var(--brand-navy);
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    font-size: 1.5rem;
    margin-bottom: 15px;
    text-align: center;
}
.guide-accordion-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-top: 25px;
}
.guide-accordion-grid h4 {
    color: var(--primary-orange);
    font-weight: 700;
    margin-bottom: 8px;
}
.guide-accordion-grid p {
    margin-bottom: 15px;
}
.guide-fade-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100px;
    background: linear-gradient(to top, var(--bg-light), transparent);
    pointer-events: none;
    display: none;
    z-index: 10;
}
.guide-toggle-btn {
    background: var(--primary-orange);
    color: #fff;
    border: none;
    padding: 12px 28px;
    border-radius: 50px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: none;
    outline: none;
    box-shadow: 0 4px 15px rgba(255, 123, 41, 0.2);
}
.guide-toggle-btn i {
    margin-left: 8px;
}

/* Local SEO Map Card */
.l-seo-map-card {
    padding: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}
.l-seo-map-card a.map-link {
    display: block !important;
    width: 100% !important;
    height: 280px !important;
    position: relative !important;
    background: url('../images/resource/dream-wedding-at-hideaway-camp.jpg') center/cover no-repeat !important;
    text-decoration: none !important;
}
.l-seo-map-card .map-overlay {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(26, 37, 47, 0.7) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 20px !important;
    color: #fff !important;
    transition: background 0.3s ease !important;
}
.l-seo-map-card .map-overlay i {
    font-size: 3rem !important;
    color: #ff7b29 !important;
    margin-bottom: 15px !important;
}
.l-seo-map-card .map-overlay h4 {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    font-family: 'Montserrat', sans-serif !important;
}
.l-seo-map-card .map-overlay p {
    font-size: 0.9rem !important;
    color: #cbd5e1 !important;
    max-width: 320px !important;
}

/* Footer Link list class */
.footer-links-list {
    list-style: none !important;
    padding: 0 !important;
}
.footer-links-list li {
    margin-bottom: 12px !important;
}
.footer-links-list a {
    color: var(--text-dark) !important;
    text-decoration: none !important;
    font-size: 0.95rem !important;
    transition: var(--transition) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.footer-links-list a i {
    color: var(--primary-orange) !important;
    font-size: 0.8rem !important;
}

.footer-links-list.small a {
    font-size: 0.85rem !important;
    gap: 6px !important;
}
.footer-links-list.small a i {
    font-size: inherit !important;
}

/* Camping Package Details */
.camping-package-details {
    background: #f8fafc !important;
    padding: 40px !important;
    border-radius: 24px !important;
    border: 1px solid #e2e8f0 !important;
}
.camping-package-details h2 {
    color: var(--brand-navy) !important;
    margin-bottom: 30px !important;
    font-size: 1.8rem !important;
    text-align: center !important;
}
.camping-package-details .package-details-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
    gap: 25px !important;
}
.camping-package-details .pkg-item {
    display: flex !important;
    gap: 15px !important;
}
.camping-package-details .pkg-item i {
    color: var(--primary-orange) !important;
    margin-top: 5px !important;
}

/* SEO Link Clusters */
.cluster-box.camping {
    border-top: 3px solid var(--primary-orange) !important;
}
.cluster-box.camping i {
    color: var(--primary-orange) !important;
    margin-right: 10px !important;
}
.cluster-box.wedding {
    border-top: 3px solid var(--brand-gold) !important;
}
.cluster-box.wedding i {
    color: var(--brand-gold) !important;
    margin-right: 10px !important;
}

.footer-links-list a.font-weight-bold {
    font-weight: bold !important;
}

.rates-table a {
    color: var(--brand-navy) !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

/* --- TRAVEL DIRECTORY SECTION --- */
.travel-directory-section {
    padding: 80px 0;
    background: #fdfdfd;
    border-top: 1px solid #f0f0f0;
}

.directory-tabs {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 45px;
    flex-wrap: wrap;
}

.dir-tab-btn {
    background: #fff;
    border: 1px solid #e0e0e0;
    padding: 12px 24px;
    border-radius: 50px;
    font-size: 0.95rem;
    font-weight: 600;
    color: #555;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02);
}

.dir-tab-btn i {
    color: #888;
    transition: color 0.3s ease;
}

.dir-tab-btn:hover {
    border-color: var(--primary-orange);
    color: var(--primary-orange);
    box-shadow: 0 6px 12px rgba(255, 123, 41, 0.15);
    transform: translateY(-2px);
}

.dir-tab-btn:hover i {
    color: var(--primary-orange);
}

.dir-tab-btn.active {
    background: var(--primary-orange);
    border-color: var(--primary-orange);
    color: #fff;
    box-shadow: 0 8px 16px rgba(255, 123, 41, 0.25);
}

.dir-tab-btn.active i {
    color: #fff;
}

.directory-panes {
    background: #fff;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    border: 1px solid #f0f0f0;
    min-height: 200px;
}

.dir-pane {
    display: none;
    animation: fadeIn 0.5s ease;
}

.dir-pane.active {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.dir-pane ul.footer-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dir-pane ul.footer-links-list li {
    margin-bottom: 12px;
}

.dir-pane ul.footer-links-list li a {
    color: #555;
    font-size: 0.95rem;
    line-height: 1.5;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.dir-pane ul.footer-links-list li a i {
    font-size: 0.8rem;
    color: #aaa;
    transition: transform 0.3s ease, color 0.3s ease;
}

.dir-pane ul.footer-links-list li a:hover {
    color: var(--primary-orange);
}

.dir-pane ul.footer-links-list li a:hover i {
    transform: translateX(4px);
    color: var(--primary-orange);
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 992px) {
    .dir-pane.active {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
}

@media (max-width: 768px) {
    .directory-panes {
        padding: 25px;
    }
    .dir-pane.active {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .dir-tab-btn {
        padding: 10px 18px;
        font-size: 0.85rem;
    }
}
