/* ============================================
           TRAVEL CLUB PAGE SPECIFIC STYLES
           ============================================ */

        /* Hero section for club page */
        .club-hero {
            background: linear-gradient(rgba(65, 105, 225, 0.85), rgba(30, 60, 160, 0.95)),
                        url('https://images.unsplash.com/photo-1530521954074-e64f6810b32d?ixlib=rb-4.0.3&auto=format&fit=crop&w=1200&q=80');
            background-size: cover;
            background-position: center;
            color: white;
            padding: 120px 0 80px;
            text-align: center;
        }

        .club-hero .hero-content {
            max-width: 900px;
            margin: 0 auto;
        }

        .club-hero h1 {
            font-family: 'Playfair Display', serif;
            font-size: 48px;
            margin-bottom: 20px;
            line-height: 1.2;
        }

        .club-hero p {
            font-size: 20px;
            margin-bottom: 30px;
            max-width: 800px;
            margin-left: auto;
            margin-right: auto;
            opacity: 0.9;
        }

/* ===== ATLAS HERO — appended override, delete to revert ===== */
.club-hero {
    position: relative;
    overflow: hidden;
    padding: 150px 0 110px;
    background-image:
        radial-gradient(ellipse 60% 55% at 78% 90%, rgba(232,178,74,.18), transparent 60%),
        radial-gradient(ellipse 70% 60% at 20% 10%, rgba(40,80,200,.30), transparent 65%),
        linear-gradient(180deg, rgba(8,16,42,.62) 0%, rgba(8,14,34,.78) 55%, rgba(6,11,28,.92) 100%),
        url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?q=80&w=1900&auto=format&fit=crop');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.club-hero::before {
    content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .45; mix-blend-mode: soft-light;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='760' height='760'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.5'%3E%3Ccircle cx='380' cy='380' r='90'/%3E%3Ccircle cx='380' cy='380' r='170'/%3E%3Ccircle cx='380' cy='380' r='250'/%3E%3Ccircle cx='380' cy='380' r='330'/%3E%3Ccircle cx='130' cy='120' r='60'/%3E%3Ccircle cx='130' cy='120' r='130'/%3E%3Ccircle cx='650' cy='640' r='70'/%3E%3Ccircle cx='650' cy='640' r='150'/%3E%3C/g%3E%3C/svg%3E");
    background-size: 680px 680px;
}
.club-hero::after {
    content: ''; position: absolute; left: 8%; right: 8%; bottom: 0; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(232,182,58,.45) 30%, rgba(80,130,255,.5) 60%, transparent);
}
.club-hero .hero-content { position: relative; z-index: 2; max-width: 860px; }
.club-hero h1 {
    font-family: 'Playfair Display', serif; font-weight: 900; font-size: clamp(38px, 6vw, 64px);
    line-height: 1.06; letter-spacing: -.02em; margin-bottom: 0; text-shadow: 0 2px 24px rgba(0,0,0,.35);
    animation: heroReveal .85s cubic-bezier(.4,0,.2,1) .3s both;
}
.club-hero h1 em { font-style: italic; font-weight: 500; color: #e8b24a; }
.club-hero p {
    font-size: clamp(16px, 2.1vw, 20px); line-height: 1.7; color: rgba(255,255,255,.9); opacity: 1;
    animation: heroReveal .85s cubic-bezier(.4,0,.2,1) .6s both;
}
.club-hero .hero-buttons { animation: heroReveal .85s cubic-bezier(.4,0,.2,1) .78s both; }

.hero-eyebrow {
    display: inline-flex; align-items: center; gap: 16px;
    font-size: 13px; font-weight: 700; letter-spacing: .4em; text-transform: uppercase; color: #e8b24a; margin-bottom: 22px;
    animation: heroReveal .85s cubic-bezier(.4,0,.2,1) .15s both;
}
.hero-eyebrow::before, .hero-eyebrow::after { content: ''; width: 44px; height: 1px; background: linear-gradient(90deg, transparent, #e8b24a); }
.hero-eyebrow::after { background: linear-gradient(90deg, #e8b24a, transparent); }
.hero-rule {
    width: 70px; height: 3px; border-radius: 2px; margin: 24px auto;
    background: linear-gradient(90deg, transparent, #e8b24a, #b8842a, transparent);
    animation: heroReveal .85s cubic-bezier(.4,0,.2,1) .45s both;
}
.hero-scroll {
    position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); z-index: 3;
    width: 26px; height: 42px; border: 2px solid rgba(255,255,255,.45); border-radius: 14px; display: flex; justify-content: center; padding-top: 8px;
}
.hero-scroll::before { content: ''; width: 4px; height: 8px; border-radius: 3px; background: #e8b24a; animation: heroScroll 1.6s ease-in-out infinite; }
@keyframes heroReveal { from { opacity: 0; transform: translateY(30px); filter: blur(6px); } to { opacity: 1; transform: none; filter: none; } }
@keyframes heroScroll { 0% { opacity: 0; transform: translateY(-4px); } 40% { opacity: 1; } 100% { opacity: 0; transform: translateY(12px); } }
@media (prefers-reduced-motion: reduce) {
    .club-hero h1, .club-hero p, .club-hero .hero-buttons, .hero-eyebrow, .hero-rule { animation: none; }
    .hero-scroll::before { animation: none; }
}

        /* Club Model Section */
        .club-model {
            padding: 80px 0;
            background-color: #f9f7f2;
        }

        .model-cards {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 30px;
            margin-top: 50px;
        }

        .model-card {
            background-color: white;
            border-radius: 12px;
            padding: 40px 30px;
            text-align: center;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
            transition: all 0.3s ease;
            border-left: 4px solid #f5b63a;
        }

        .model-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.12);
        }

        .model-icon {
            font-size: 48px;
            margin-bottom: 25px;
            color: #1E3EA1;
        }

        .model-card h3 {
            color: #1E3EA1;
            margin-bottom: 15px;
            font-size: 1.4rem;
        }

        .model-card p {
            color: #666;
            line-height: 1.6;
        }

        /* Partnership CTA Section */
        .partnership-cta-section {
            padding: 90px 0;
            background: linear-gradient(135deg, #f4f6ff 0%, #ffffff 100%);
        }

        .partner-cta-card {
            max-width: 680px;
            margin: 0 auto;
            text-align: center;
            background: white;
            border-radius: 24px;
            padding: 60px 50px;
            box-shadow: 0 20px 60px rgba(30, 62, 161, 0.12);
            border-top: 5px solid #f5b63a;
        }

        .partner-cta-icon {
            width: 80px;
            height: 80px;
            background: linear-gradient(135deg, #1E3EA1, #2b7afc);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 28px;
            box-shadow: 0 10px 25px rgba(30, 62, 161, 0.3);
        }

        .partner-cta-icon i {
            font-size: 34px;
            color: white;
        }

        .partner-cta-card h2 {
            font-family: 'Playfair Display', serif;
            font-size: 28px;
            color: #1E3EA1;
            margin-bottom: 18px;
            line-height: 1.3;
        }

        .partner-cta-card > p {
            color: #555;
            font-size: 16px;
            line-height: 1.7;
            margin-bottom: 36px;
            max-width: 520px;
            margin-left: auto;
            margin-right: auto;
        }

        .btn-partner-cta {
            font-size: 16px !important;
            padding: 14px 36px !important;
            border-radius: 50px !important;
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        .partner-cta-note {
            margin-top: 20px !important;
            font-size: 13px !important;
            color: #999 !important;
            font-style: italic;
        }

        @media (max-width: 768px) {
            .partner-cta-card {
                padding: 40px 24px;
            }
            .partner-cta-card h2 {
                font-size: 22px;
            }
        }

        /* Principles Section */
        .principles-section {
            padding: 80px 0;
            background-color: #f9f7f2;
        }

        .principles-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 30px;
            margin-top: 50px;
        }

        .principle-card {
            background-color: white;
            border-radius: 12px;
            padding: 30px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
            border-left: 4px solid #f5b63a;
            transition: all 0.3s ease;
        }

        .principle-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
        }

        .principle-card h3 {
            color: #1E3EA1;
            margin-bottom: 15px;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .principle-card h3 i {
            color: #f5b63a;
        }

        .principle-card p {
            color: #666;
            line-height: 1.6;
        }

        /* CTA Section */
        .club-cta {
            padding: 100px 0;
            background: linear-gradient(135deg, #3655b4 0%, #f5b63a 100%);
            color: white;
            text-align: center;
        }

        .club-cta h2 {
            font-family: 'Playfair Display', serif;
            font-size: 36px;
            margin-bottom: 20px;
            color: white;
        }

        .club-cta p {
            font-size: 18px;
            max-width: 700px;
            margin: 0 auto 40px;
            color: #C4D0F5;
        }

        .cta-buttons {
            display: flex;
            justify-content: center;
            gap: 30px;
            flex-wrap: wrap;
        }

        /* International Section */
        .international-section {
            padding: 80px 0;
            background-color: white;
            text-align: center;
        }

        .nl-badge {
            display: inline-block;
            background-color: #EEF2FE;
            color: #f5b63a;
            padding: 15px 30px;
            border-radius: 30px;
            font-weight: 700;
            font-size: 18px;
            margin: 30px 0;
        }

        .benefits-container {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 30px;
            margin-top: 40px;
        }

        .benefit-item {
            padding: 30px;
            background-color: #f8f9fa;
            border-radius: 12px;
            transition: all 0.3s ease;
        }

        .benefit-item:hover {
            background-color: #EEF2FE;
            transform: translateY(-5px);
        }

        .benefit-item h4 {
            color: #1E3EA1;
            margin-bottom: 15px;
        }

        .benefit-item p {
            color: #666;
            line-height: 1.6;
        }

        /* Responsive Design */
        @media (max-width: 992px) {
            .club-hero h1 {
                font-size: 36px;
            }

            .club-hero p {
                font-size: 18px;
            }

            .cta-buttons {
                flex-direction: column;
                align-items: center;
            }

            .cta-buttons .btn {
                width: 100%;
                max-width: 300px;
            }
        }

        @media (max-width: 768px) {
            .club-hero {
                padding: 100px 0 60px;
            }

            .club-hero h1 {
                font-size: 32px;
            }

            .club-hero p {
                font-size: 16px;
            }

            .model-cards, .principles-grid {
                grid-template-columns: 1fr;
            }

            .nl-badge {
                font-size: 16px;
                padding: 12px 24px;
            }

            /* ===== MOBILE IMPROVEMENTS ===== */
            .club-cta .btn {
                padding: 16px 20px;
                font-size: 16px;
            }
        }

        /* ============================================
           ACCESSIBILITY — respect OS reduced-motion preference
           ============================================ */
        @media (prefers-reduced-motion: reduce) {
            *, *::before, *::after {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
                scroll-behavior: auto !important;
            }
        }
