:root {
            --primary-orange: #d96a27;
            --text-dark: #222;
            --text-muted: #666;
            --bg-light: #f9f9f9;
        }

       /* --- Moments to Be Captured Section --- */
.gallery-section {
    padding: 50px 20px;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
}
.gallery-section h2 {
    font-size: 2.5rem;
    color: var(--text-dark);
    margin-bottom: 10px;
    font-family: serif; /* Matches the editorial serif font look */
}
.gallery-section p {
    color: var(--text-muted);
    margin-bottom: 40px;
    font-size: 1rem;
}

/* YAHAN CHANGE KIYA HAI */
.gallery-grid {
    display: grid;
    /* auto-fit se images total 3 rows me divide ho jayengi jab aapke paas 12 images hongi (4 columns × 3 rows) */
    grid-template-columns: repeat(4, 1fr); 
    grid-template-rows: repeat(3, auto); /* Strict 3 rows template define karne ke liye */
    gap: 20px;
}

.gallery-item {
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
}
.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.gallery-item img:hover {
    transform: scale(1.05);
}

.gallery-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:30px;
}

.gallery-grid video{
    width:100%;
    height:600px;
    object-fit:cover;
    border-radius:15px;
}



/* Mobile responsive ke liye extra code (taki mobile par design kharab na ho) */
@media (max-width: 768px) {
    .gallery-grid {
        grid-template-columns: repeat(2, 1fr); /* Mobile par 2 columns */
    }
}
        /* --- Upcoming Trips Section --- */
        .trips-section {
            padding: 50px 20px;
            background-color: var(--bg-light);
        }
        .trips-container {
            max-width: 1200px;
            margin: 0 auto;
        }
        .trips-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 30px;
            border-bottom: 2px solid #ddd;
            padding-bottom: 10px;
        }
        .trips-header h2 {
            font-size: 2rem;
            position: relative;
            padding-bottom: 10px;
        }
        .trips-header h2::after {
            content: '';
            position: absolute;
            bottom: -12px;
            left: 0;
            width: 60px;
            height: 3px;
            background-color: var(--primary-orange);
        }
        .view-all-btn {
            color: var(--primary-orange);
            text-decoration: none;
            font-weight: 600;
        }
        .trips-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
        }
        .trip-card {
            position: relative;
            border-radius: 16px;
            overflow: hidden;
            height: 350px;
            box-shadow: 0 4px 15px rgba(0,0,0,0.1);
            color: #fff;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 20px;
            background-size: cover;
            background-position: center;
        }
        /* Dark overlay gradient to make text legible over images */
        .trip-card::before {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.2) 60%, rgba(0,0,0,0.4) 100%);
            z-index: 1;
        }
        .trip-content {
            position: relative;
            z-index: 2;
            width: 100%;
        }
        .trip-badge {
            position: absolute;
            top: 20px;
            left: 20px;
            background-color: var(--primary-orange);
            color: white;
            padding: 4px 12px;
            font-size: 0.75rem;
            font-weight: bold;
            border-radius: 6px;
            text-transform: uppercase;
            z-index: 2;
        }
        .trip-title {
            font-size: 1.25rem;
            margin-bottom: 8px;
            font-weight: 600;
        }
        .trip-meta {
            font-size: 0.85rem;
            margin-bottom: 5px;
            display: flex;
            align-items: center;
            gap: 5px;
            opacity: 0.9;
        }
        .trip-price {
            font-size: 1.3rem;
            font-weight: bold;
            margin: 15px 0 10px 0;
        }
        .trip-btn {
            width: 100%;
            padding: 10px;
            border: none;
            border-radius: 8px;
            font-weight: bold;
            cursor: pointer;
            text-align: center;
            text-decoration: none;
            display: inline-block;
            box-sizing: border-box;
            font-size: 0.9rem;
        }
        .btn-active {
            background-color: var(--primary-orange);
            color: white;
        }
        .btn-soldout {
            background-color: rgba(255, 255, 255, 0.35);
            color: #fff;
            backdrop-filter: blur(5px);
            cursor: not-allowed;
        }

      
        
        
        /* --- Responsive Viewport adjustments --- */
        @media (max-width: 1024px) {
            .gallery-grid, .trips-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        @media (max-width: 600px) {
            .gallery-grid, .trips-grid {
                grid-template-columns: 1fr;
            }
        }