
        :root { --brand: #e1ff00; --forest: #071a07; --earth: #3d2b1a; }
        [x-cloak] { display: none !important; }

        body { font-family: 'Inter', sans-serif; background: var(--forest); color: #d4e8c2; overflow-x: hidden; }
        h1,h2,h3,h4,h5 { font-family: 'Oswald', sans-serif; }
        .text-brand { color: var(--brand); }
        .bg-brand   { background: var(--brand); }

        /* ===== WILD TOPOGRAPHIC DESIGN LANGUAGE ===== */

        /* HERO: Topographic contour grid + horizontal wavy lines */
        .topo-bg {
            background: var(--forest);
            background-image:
                repeating-linear-gradient(
                    rgba(225,255,0,0.035) 0px, transparent 1px, transparent 38px
                ),
                repeating-linear-gradient(
                    90deg, rgba(225,255,0,0.025) 0px, transparent 1px, transparent 38px
                ),
                radial-gradient(ellipse 80% 50% at 60% 60%, rgba(225,255,0,0.04), transparent);
        }

        /* Wavy SVG divider — organic section break */
        .wave-divider { display: block; width: 100%; }

        /* Distance badge (circular) */
        .dist-badge {
            border-radius: 50%;
            background: var(--brand);
            color: #000;
            font-family: 'Oswald', sans-serif;
            font-weight: 700;
            display: flex; flex-direction: column;
            align-items: center; justify-content: center;
            flex-shrink: 0;
        }

        /* Terrain type pill */
        .terrain-pill {
            border: 1px solid rgba(225,255,0,0.2);
            color: rgba(212,232,194,0.6);
            font-family: 'Oswald', sans-serif;
            font-weight: 700;
            font-size: 10px;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            padding: 6px 14px;
            border-radius: 2px;
            cursor: pointer;
            transition: all 0.2s;
        }
        .terrain-pill:hover, .terrain-pill.active {
            background: var(--brand);
            color: #000;
            border-color: var(--brand);
        }

        /* Event row */
        .event-row {
            border-left: 2px solid transparent;
            transition: border-color 0.2s, background 0.25s, transform 0.2s;
        }
        .event-row:hover {
            border-left-color: var(--brand);
            background: rgba(225,255,0,0.04);
            transform: translateX(4px);
        }

        /* Stagger text size for hero WOW */
        .stagger-hero h1 { line-height: 0.87; }

        /* Marquee */
        .mwrap  { overflow: hidden; display: flex; white-space: nowrap; }
        .mtrack { display: flex; animation: tick 32s linear infinite; }
        .mtrack-rev { display: flex; animation: tickrev 28s linear infinite; }
        @keyframes tick    { 0%{transform:translateX(0)}    100%{transform:translateX(-50%)} }
        @keyframes tickrev { 0%{transform:translateX(-50%)} 100%{transform:translateX(0)} }

        /* Swiper */
        .swiper-pagination-bullet        { background: rgba(212,232,194,0.2) !important; }
        .swiper-pagination-bullet-active { background: var(--brand) !important; }
        .swiper-button-next,.swiper-button-prev { color: var(--brand) !important; }
        .swiper-button-next::after,.swiper-button-prev::after { font-size: 1rem !important; font-weight: 900; }

        /* Header scrolled */
        .hdr-scrolled { background: rgba(7,26,7,0.97) !important; border-bottom: 1px solid rgba(225,255,0,0.06) !important; backdrop-filter: blur(14px); }

        /* Mob overlay */
        .mob-overlay { opacity: 0; pointer-events: none; transition: opacity 0.3s; }
        .mob-overlay.open { opacity: 1; pointer-events: auto; }

        /* Photo card with overlay */
        .photo-card { position: relative; overflow: hidden; }
        .photo-card img { transition: transform 0.6s ease; }
        .photo-card:hover img { transform: scale(1.05); }
        .photo-card-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(7,26,7,0.85), transparent 50%); }

        /* Elevation bar */
        .elev-bar { height: 4px; background: rgba(225,255,0,0.12); }
        .elev-fill { height: 100%; background: var(--brand); transition: width 1s ease; }

        /* Brand outline */
        .brand-outline { -webkit-text-stroke: 2px var(--brand); color: transparent; }
        .white-outline  { -webkit-text-stroke: 1.5px rgba(212,232,194,0.3); color: transparent; }

        /* Organic blurred shape behind CTA */
        .cta-blob {
            position: absolute;
            width: 600px; height: 400px;
            border-radius: 50%;
            background: radial-gradient(ellipse, rgba(225,255,0,0.08), transparent 70%);
            filter: blur(40px);
        }

        /* Member avatar stack */
        .avatar-ring { border: 2px solid var(--forest); border-radius: 50%; }
    