*{box-sizing:border-box;margin:0;padding:0}
    :root{
      --navy:#011E41;--navy2:#0a2548;--navy3:#143560;--navy4:#00132f;
      --red:#AA182C;--red2:#c52638;--red3:#7a0f1d;
      --gold:#d4a02a;--gold2:#f0bc4a;--gold3:#f5d28a;
      --cream:#f6f2ec;--white:#ffffff;--text:#0a1530;--mid:#3a4258;
      --l1:rgba(255,255,255,0.08);--l2:rgba(255,255,255,0.14);--lg:rgba(212,160,42,0.18);
      --soft:rgba(255,255,255,0.7);--faint:rgba(255,255,255,0.42);
      /* Five Discipline Colors */
      --c-mtb:#d4583a;--c-gravel:#c89a3a;--c-fondo:#b070b8;--c-stage:#4a8a5a;--c-monument:#c8506a;
      --shadow:0 28px 90px rgba(0,0,0,0.32);--max:1240px;
    }
    html{scroll-behavior:smooth;font-size:16px}
    body{font-family:'Barlow',sans-serif;background:var(--navy);color:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased}
    a{text-decoration:none;color:inherit}
    button{font:inherit;border:none;background:none;cursor:pointer}
    .container{width:min(calc(100% - 40px),var(--max));margin:0 auto}
    img{display:block;max-width:100%}

    /* NAV */
    nav{position:sticky;top:0;z-index:1000;background:rgba(1,30,65,0.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(212,160,42,0.14)}
    .nav-inner{height:64px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 20px}
    .nav-logo{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:900;color:var(--white);letter-spacing:.5px;display:flex;align-items:center;gap:10px;white-space:nowrap}
    .nav-logo .badge{background:var(--red);color:var(--white);font-weight:900;font-size:13px;letter-spacing:.5px;padding:5px 9px 4px;line-height:1;border-radius:1px}
    .nav-logo .light{color:var(--gold);font-weight:600;font-size:13px;letter-spacing:2px;text-transform:uppercase}
    .nav-links{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
    .nav-links a{font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:rgba(255,255,255,.68);transition:color .2s}
    .nav-links a:hover{color:var(--gold)}
    .nav-btn{background:var(--red);color:var(--white);padding:9px 18px;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;border-radius:2px;transition:.2s;cursor:pointer}
    .nav-btn:hover{background:var(--red2);transform:translateY(-1px)}

    /* HERO */
    .hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:88px 0 72px;background:
      radial-gradient(circle at 14% 22%, rgba(212,160,42,0.16), transparent 28%),
      radial-gradient(circle at 86% 18%, rgba(170,24,44,0.14), transparent 26%),
      linear-gradient(180deg,#011E41 0%,#0a2548 52%,#011E41 100%)}
    .hero::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(1,30,65,0.18) 60%,rgba(1,30,65,0.5) 100%)}
    .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.14fr .86fr;gap:40px;align-items:center}
    .hero-tag{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:22px;opacity:0.95;display:inline-flex;align-items:center;gap:14px}
    .hero-tag::before{content:'';display:inline-block;width:32px;height:1px;background:var(--gold);opacity:.6}
    .hero-title{font-family:'Playfair Display',serif;font-size:clamp(54px,8vw,108px);font-weight:900;line-height:.92;letter-spacing:-3px;max-width:880px}
    .hero-title em{font-style:normal;color:var(--gold)}
    .hero-title .accent{color:var(--red2)}
    .hero-sub{margin-top:26px;max-width:720px;font-size:clamp(16px,1.8vw,20px);font-weight:300;line-height:1.8;color:var(--soft)}
    .hero-detail{margin-top:16px;max-width:690px;font-size:14px;line-height:1.9;color:var(--faint)}
    .hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
    .btn-r,.btn-g,.btn-o{display:inline-flex;align-items:center;justify-content:center;padding:15px 32px;font-size:12px;letter-spacing:2px;text-transform:uppercase;border-radius:2px;transition:.2s;cursor:pointer}
    .btn-r{background:var(--red);color:var(--white);font-weight:700}
    .btn-r:hover{background:var(--red2);transform:translateY(-2px)}
    .btn-g{background:var(--gold);color:var(--navy);font-weight:700}
    .btn-g:hover{background:var(--gold2);transform:translateY(-2px)}
    .btn-o{border:1px solid rgba(255,255,255,0.22);color:var(--white);font-weight:600}
    .btn-o:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
    .hero-stats{display:inline-flex;flex-wrap:wrap;border:1px solid rgba(212,160,42,0.24);border-radius:3px;overflow:hidden;margin-top:38px}
    .hs{padding:18px 28px;border-right:1px solid rgba(212,160,42,0.14);text-align:center;min-width:118px}
    .hs:last-child{border-right:none}
    .hs-n{font-family:'Playfair Display',serif;font-size:34px;font-weight:900;color:var(--gold);line-height:1}
    .hs-l{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,0.42);margin-top:4px}

    .hero-card{border:1px solid rgba(212,160,42,0.22);background:linear-gradient(180deg,rgba(255,255,255,0.06),rgba(255,255,255,0.03));padding:34px 32px;box-shadow:var(--shadow);position:relative;overflow:hidden;border-radius:3px}
    .hero-card::before{content:'';position:absolute;top:-40px;right:-40px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle, rgba(212,160,42,0.18), transparent 70%)}
    .hero-card::after{content:'28';position:absolute;bottom:-40px;left:-22px;font-family:'Playfair Display',serif;font-weight:900;font-size:240px;color:rgba(170,24,44,0.07);line-height:.8;letter-spacing:-12px;pointer-events:none}
    .card-kicker{font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;position:relative;z-index:1}
    .card-amount{font-family:'Playfair Display',serif;font-size:62px;font-weight:900;line-height:.95;letter-spacing:-2px;position:relative;z-index:1}
    .card-copy{margin-top:12px;max-width:360px;font-size:14px;line-height:1.8;color:var(--soft);position:relative;z-index:1}
    .progress-wrap{margin-top:28px;padding-top:24px;border-top:1px solid var(--l1);position:relative;z-index:1}
    .progress-head,.progress-foot{display:flex;justify-content:space-between;gap:12px;align-items:center}
    .progress-head{font-size:13px;color:var(--soft)}
    .progress-bar{margin-top:14px;height:10px;background:rgba(255,255,255,0.08);border-radius:2px;overflow:hidden}
    .progress-bar span{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--gold),var(--gold3))}
    .progress-foot{margin-top:10px;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--faint)}
    .impact-list{display:grid;gap:14px;margin-top:24px;position:relative;z-index:1}
    .impact-item{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;color:var(--soft);line-height:1.75}
    .impact-dot{width:8px;height:8px;border-radius:50%;background:var(--red);margin-top:7px;flex-shrink:0}

    /* SECTIONS */
    section{padding:88px 0}
    .s-tag{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;display:inline-flex;align-items:center;gap:12px;opacity:0.9}
    .s-tag::before{content:'';display:inline-block;width:24px;height:1px;background:var(--gold);opacity:.5}
    .s-heading{font-family:'Playfair Display',serif;font-size:clamp(32px,4vw,50px);font-weight:900;line-height:1.04;letter-spacing:-1px}
    .s-heading.dark{color:var(--navy)}
    .s-heading em{font-style:normal;color:var(--gold)}
    .s-heading .accent{color:var(--red2)}
    .copy{margin-top:18px;max-width:760px;font-size:16px;line-height:1.9}
    .copy.dark{color:var(--mid)}
    .copy.light{color:rgba(255,255,255,.82)!important;background:transparent!important}

    .light{background:var(--cream);color:var(--text)}
    .light-card{background:var(--white);border:1px solid rgba(1,30,65,0.08);box-shadow:0 18px 40px rgba(1,30,65,0.06);border-radius:3px}

    /* STORY */
    .story-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:44px;align-items:start}
    .story-points{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:38px}
    .story-point{padding:24px 26px;background:var(--white);border:1px solid rgba(1,30,65,0.08);border-left:3px solid var(--gold);border-radius:2px}
    .sp-num{font-family:'Playfair Display',serif;font-size:34px;font-weight:900;color:var(--red);line-height:1;margin-bottom:8px}
    .sp-l{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--mid);margin-bottom:8px;font-weight:700}
    .sp-t{font-size:15px;line-height:1.6;color:var(--text);font-weight:500}

    /* PROGRAMS */

    /* ATHLETES */
    .athletes{background:var(--navy3)}
    .ath-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
    .ath-card{display:grid;grid-template-columns:.7fr 1.3fr;align-items:start;background:rgba(255,255,255,0.04);border:1px solid rgba(212,160,42,0.16);border-radius:3px;overflow:hidden}
    .ath-photo{background:linear-gradient(135deg,rgba(212,160,42,0.2),rgba(170,24,44,0.16));aspect-ratio:2/3;position:relative;display:flex;align-items:flex-end;padding:18px;overflow:hidden}
    .ath-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;display:block;z-index:1}
    .ath-photo .ath-badge{position:relative;z-index:2}
    .ath-badge{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;background:rgba(0,0,0,0.5);padding:6px 12px;color:var(--gold);border-radius:1px}
    .ath-body{padding:28px}
    .ath-name{font-family:'Playfair Display',serif;font-size:24px;font-weight:900;color:var(--white);line-height:1.1;margin-bottom:4px}
    .ath-title{font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
    .ath-bio{font-size:14px;line-height:1.75;color:var(--soft)}
    .ath-loc{font-size:11px;color:rgba(255,255,255,0.4);margin-top:14px;letter-spacing:.5px}
    .friends-bar{text-align:center;padding:30px;border-top:1px solid rgba(212,160,42,0.15);max-width:980px;margin:50px auto 0}
    .friends-bar p{font-family:'Playfair Display',serif;font-size:18px;font-style:italic;color:rgba(255,255,255,0.72);line-height:1.6}

    /* DISCIPLINES (was Crowns) */
    .disciplines{background:var(--navy);position:relative;overflow:hidden}
    .disciplines::before{content:'5';position:absolute;top:60px;right:-30px;font-family:'Playfair Display',serif;font-weight:900;font-size:380px;color:rgba(255,255,255,0.025);line-height:.8;pointer-events:none}
    .disc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
    .disc-card{position:relative;padding:26px 22px;border:1px solid rgba(212,160,42,0.18);background:rgba(255,255,255,0.025);min-height:340px;border-radius:2px;transition:all .25s;overflow:hidden}
    .disc-card:hover{border-color:var(--gold);transform:translateY(-3px);background:rgba(255,255,255,0.04)}
    .disc-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--c-grav);opacity:.85}
    .disc-card[data-d="mtb"]::before{background:var(--c-mtb)}
    .disc-card[data-d="gravel"]::before{background:var(--c-gravel)}
    .disc-card[data-d="fondo"]::before{background:var(--c-fondo)}
    .disc-card[data-d="stage"]::before{background:var(--c-stage)}
    .disc-card[data-d="monument"]::before{background:var(--c-monument)}
    .disc-num{position:absolute;top:8px;right:14px;font-family:'Barlow Condensed',sans-serif;font-size:78px;font-weight:900;color:rgba(255,255,255,0.05);line-height:1;pointer-events:none}
    .disc-icon{font-size:28px;margin-bottom:14px;opacity:.85}
    .disc-label{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:6px;color:var(--gold)}
    .disc-card[data-d="mtb"] .disc-label{color:var(--c-mtb)}
    .disc-card[data-d="gravel"] .disc-label{color:var(--c-gravel)}
    .disc-card[data-d="fondo"] .disc-label{color:var(--c-fondo)}
    .disc-card[data-d="stage"] .disc-label{color:var(--c-stage)}
    .disc-card[data-d="monument"] .disc-label{color:var(--c-monument)}
    .disc-name{font-family:'Playfair Display',serif;font-size:20px;font-weight:900;color:var(--white);margin-bottom:10px;line-height:1.15}
    .disc-count{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-bottom:14px}
    .disc-desc{font-size:12.5px;color:rgba(255,255,255,0.58);line-height:1.7;margin-bottom:14px}
    .disc-events{display:grid;gap:6px;font-size:11.5px;color:rgba(255,255,255,0.52)}
    .disc-events li{margin-left:14px;line-height:1.55;list-style:disc}
    .disc-events li.star{color:var(--gold)}

    /* TRACKER */
    .tracker{background:var(--cream)}
    .tracker-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:32px;align-items:start}
    .tracker-card{padding:30px;background:var(--white);border:1px solid rgba(1,30,65,0.08);box-shadow:0 18px 40px rgba(1,30,65,0.06);border-radius:3px}
    .tracker-count{font-family:'Playfair Display',serif;font-size:64px;font-weight:900;color:var(--navy);line-height:.95;letter-spacing:-2px}
    .tracker-count em{font-style:normal;color:var(--red)}
    .tracker-sub{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#9a6b20;margin-top:6px}
    .donate-progress{margin-top:24px;padding:24px;background:rgba(170,24,44,0.04);border:1px solid rgba(170,24,44,0.18);border-radius:2px}
    .dp-amount{font-family:'Playfair Display',serif;font-size:30px;font-weight:900;color:var(--red);line-height:1}
    .dp-goal{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:rgba(1,30,65,0.5);margin-top:6px}
    .dp-bar{height:8px;background:rgba(1,30,65,0.08);margin:16px 0 10px;overflow:hidden;border-radius:2px}
    .dp-bar span{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--red),var(--gold))}
    .dp-labels{display:flex;justify-content:space-between;font-size:11px;color:rgba(1,30,65,0.5)}
    .track-list{display:grid;gap:10px;max-height:640px;overflow-y:auto;padding-right:6px}
    .evt-card{display:flex;gap:14px;align-items:flex-start;padding:16px 16px;background:#fff;border:1px solid rgba(1,30,65,0.08);transition:.2s;border-radius:2px;cursor:pointer}
    .evt-card:hover{background:#f9f8f6;border-color:rgba(1,30,65,0.18)}
    .evt-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1.5px solid rgba(1,30,65,0.22);flex-shrink:0;cursor:pointer;transition:.2s;margin-top:2px;border-radius:2px;font-size:11px}
    .evt-content{flex:1;min-width:0}
    .evt-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
    .evt-name{font-size:15px;font-weight:700;color:var(--navy);line-height:1.4}
    .evt-name .star{color:var(--gold);margin-right:4px}
    .evt-date{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(1,30,65,0.45);white-space:nowrap}
    .evt-meta{font-size:12px;color:rgba(1,30,65,0.6);margin-top:4px;line-height:1.6}
    .evt-stats{font-size:11.5px;font-weight:600;letter-spacing:.3px;color:rgba(1,30,65,0.5);margin-top:3px}.evt-chip{display:inline-flex;margin-top:8px;padding:3px 8px;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-radius:1px}

    /* DISPATCHES */
    .dispatches{background:#03132c;border-top:1px solid rgba(212,160,42,0.08)}
    .road{background:var(--navy);padding:88px 24px;border-top:1px solid rgba(212,160,42,0.08)}
    .road-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:16px;margin-top:34px}
    .road-col{display:grid;gap:16px}
    .road-fig{margin:0;position:relative;border-radius:3px;overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.42)}
    .road-fig img{display:block;width:100%;height:100%;object-fit:cover}
    .road-fig.tall img{aspect-ratio:3/4;object-position:center 28%}
    .road-fig.wide img{aspect-ratio:3/2}
    .road-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;background:linear-gradient(transparent,rgba(1,30,65,.85));color:#fff;font:700 10.5px/1 'Barlow Condensed',sans-serif;letter-spacing:1.5px;text-transform:uppercase;padding:30px 14px 12px}
    .road-credit{margin-top:20px;font:600 10px/1 'Barlow Condensed',sans-serif;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.42)}
    @media(max-width:780px){.road-grid{grid-template-columns:1fr}}
    .dispatch-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:40px}
    .dispatch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .dispatch-card{border:1px solid rgba(212,160,42,0.14);background:rgba(255,255,255,0.025);overflow:hidden;border-radius:2px;cursor:default}.dispatch-card.live{cursor:pointer;transition:border-color .2s,transform .2s}.dispatch-card.live:hover{border-color:var(--gold);transform:translateY(-2px)}
    
    .dispatch-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:1}.dispatch-media:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(to top,rgba(1,30,65,.78) 0%,rgba(1,30,65,.12) 46%,transparent 70%)}.dispatch-media span{z-index:3}.dispatch-media{height:160px;background:linear-gradient(135deg,rgba(212,160,42,0.22),rgba(170,24,44,0.18));position:relative}
    .dispatch-media span{position:absolute;bottom:14px;left:16px;font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:rgba(255,255,255,0.85)}
    .dispatch-body{padding:24px}
    .dispatch-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--white);line-height:1.2;margin-bottom:10px}
    .dispatch-copy{font-size:14px;line-height:1.8;color:rgba(255,255,255,0.6);margin-bottom:16px}
    .dispatch-link{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold)}

    /* MISSION / GIVING */
    .mission{background:var(--navy)}
    .mission-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:start}
    .mission-text{font-size:15px;line-height:1.9;color:rgba(255,255,255,0.66);margin-top:16px}
    .mission-pull{border-left:4px solid var(--red);padding:18px 22px;background:rgba(170,24,44,0.08);margin-top:28px;margin-bottom:28px;border-radius:2px}
    .mission-pull p{font-family:'Playfair Display',serif;font-size:15px;font-style:italic;color:rgba(255,255,255,0.78);line-height:1.7}
    .si{display:grid;gap:14px}
    .si-item{display:flex;gap:14px;align-items:flex-start;font-size:14px;line-height:1.75;color:rgba(255,255,255,0.66)}
    .si-icon{color:var(--gold);font-size:18px;flex-shrink:0;margin-top:1px}
    .support-box{background:rgba(212,160,42,0.08);border:1px solid rgba(212,160,42,0.22);padding:32px;margin-bottom:18px;border-radius:2px}
    .support-box h3{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--white);margin-bottom:12px}
    .support-box p{font-size:14px;line-height:1.8;color:rgba(255,255,255,0.6);margin-bottom:18px}
    .support-note{font-size:12px;color:rgba(255,255,255,0.34);line-height:1.7;margin-top:12px}
    .tier-grid{display:grid;gap:12px;margin-top:18px}
    .tier-row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid rgba(255,255,255,0.08);font-size:14px;color:rgba(255,255,255,0.78)}
    .tier-row strong{color:var(--gold3);font-family:'Playfair Display',serif;font-size:19px;font-weight:700;white-space:nowrap}

    /* FAQ */
    .faq{background:var(--cream);color:var(--text)}
    .faq-wrap{max-width:920px;margin:44px auto 0;display:grid;gap:14px}
    details{background:var(--white);border:1px solid rgba(1,30,65,0.08);padding:0 22px;box-shadow:0 12px 28px rgba(1,30,65,0.04);border-radius:2px}
    summary{list-style:none;cursor:pointer;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:17px;font-weight:700;color:var(--navy)}
    summary::-webkit-details-marker{display:none}
    summary::after{content:'+';width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(1,30,65,0.1);font-size:20px;color:#9a6b20;border-radius:2px}
    details[open] summary::after{content:'–'}
    details p{padding:0 0 22px;font-size:15px;line-height:1.85;color:var(--mid)}

    /* FINAL CTA */
    .final{background:var(--navy);position:relative;overflow:hidden}
    .final::before{content:'28';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Playfair Display',serif;font-weight:900;font-size:600px;color:rgba(170,24,44,0.04);line-height:.8;letter-spacing:-30px;pointer-events:none}
    .final-box{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:34px;border:1px solid rgba(212,160,42,0.18);background:rgba(255,255,255,0.04);box-shadow:var(--shadow);border-radius:2px;position:relative;z-index:1}
    .final-box h2{font-family:'Playfair Display',serif;font-size:clamp(32px,4vw,48px);font-weight:900;line-height:1.02;letter-spacing:-1px}
    .final-box h2 em{font-style:normal;color:var(--red2)}
    .final-box p{margin-top:12px;font-size:16px;line-height:1.85;color:var(--soft);max-width:760px}

    /* FOOTER */
    footer{background:#000a1a;border-top:1px solid rgba(212,160,42,0.08);padding:36px 0 46px}
    .footer-row{display:flex;justify-content:space-between;gap:24px;align-items:center;color:rgba(255,255,255,0.36);font-size:12px;line-height:1.8}
    .footer-logo{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:var(--white);letter-spacing:.5px}
    .footer-logo span{background:var(--red);color:var(--white);padding:2px 8px 1px;font-size:14px;letter-spacing:.5px;border-radius:1px;margin-right:6px}

    /* RESPONSIVE */
    @media (max-width:1180px){
      .disc-grid{grid-template-columns:repeat(3,1fr)}
    }
    @media (max-width:1100px){
      .hero-grid,.story-grid,.tracker-grid,.mission-grid,.final-box,.dispatch-grid{grid-template-columns:1fr}
      .ath-grid,.story-points{grid-template-columns:1fr 1fr}
      .hero-card{max-width:760px}
      .hero-stats{display:grid;grid-template-columns:repeat(2,1fr);border:none;gap:12px}
      .hs{border:1px solid rgba(212,160,42,0.16)}
    }
    @media (max-width:860px){
      .container{width:min(calc(100% - 28px),var(--max))}
      .nav-links{display:none}
      .hero{min-height:auto;padding:76px 0 56px}
      section{padding:72px 0}
      .ath-grid,.story-points{grid-template-columns:1fr}
      .ath-card{grid-template-columns:1fr}
      .ath-photo{aspect-ratio:2/3}
      .card-amount,.tracker-count{font-size:50px}
      .disc-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media (max-width:560px){
      .hero-title{font-size:clamp(40px,12vw,68px);letter-spacing:-2px}
      .hero-sub{font-size:17px}
      .hero-btns{flex-direction:column;align-items:stretch}
      .btn-r,.btn-g,.btn-o,.nav-btn{width:100%;text-align:center}
      .hero-stats{grid-template-columns:1fr 1fr}
      .hs{min-width:0;padding:16px 14px}
      .disc-grid{grid-template-columns:1fr}
      .dispatch-body,.support-box,.tracker-card,.light-card,.story-point{padding-left:20px;padding-right:20px}
      .footer-row{flex-direction:column;align-items:flex-start}
    }

    /* MAP SECTION */
    .map-section{background:var(--navy2);padding:88px 24px}
    .map-header{text-align:center;margin-bottom:32px}
    .map-header .s-heading{color:var(--white)}
    .map-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px;max-width:1200px;margin-left:auto;margin-right:auto}
    .mstat{background:rgba(255,255,255,0.04);border:1px solid rgba(212,160,42,0.14);border-radius:3px;padding:12px 18px}
    .mstat-l{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,0.42);margin-bottom:3px}
    .mstat-v{font-size:22px;font-weight:700;color:var(--gold);line-height:1;font-family:'Playfair Display',serif}
    .map-filters{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;max-width:1200px;margin-left:auto;margin-right:auto}
    .mf-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
    .mf-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,0.45);min-width:80px;line-height:24px;font-weight:700}
    .mfb{font-size:10px;padding:4px 12px;border:1px solid rgba(255,255,255,0.14);border-radius:99px;background:transparent;cursor:pointer;color:rgba(255,255,255,0.5);transition:all .15s;white-space:nowrap;font-family:'Barlow',sans-serif;font-weight:600;letter-spacing:.5px}
    .mfb:hover{background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.78)}
    .mfb.on{background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.92);border-color:rgba(255,255,255,0.22)}
    #mapwrap{position:relative;width:100%;max-width:1200px;margin:0 auto;border:1px solid rgba(212,160,42,0.18);border-radius:3px;overflow:hidden}
    .zoom-btns{position:absolute;top:10px;right:10px;z-index:30;display:flex;flex-direction:column;gap:4px}
    .zoom-btn{width:30px;height:30px;background:rgba(1,30,65,0.92);border:1px solid rgba(212,160,42,0.3);border-radius:3px;color:rgba(255,255,255,0.78);font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;font-family:'Barlow',sans-serif;user-select:none}
    .zoom-btn:hover{background:rgba(212,160,42,0.18);color:#fff;border-color:rgba(212,160,42,0.55)}
    .zoom-hint{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,0.22);pointer-events:none;white-space:nowrap}
    #mtt{position:absolute;display:none;background:rgba(1,30,65,0.97);border:1px solid rgba(212,160,42,0.32);border-radius:3px;padding:12px 16px;font-size:12px;pointer-events:none;max-width:260px;z-index:20;line-height:1.65}
    .map-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:11.5px;color:rgba(255,255,255,0.52);align-items:center;max-width:1200px;margin-left:auto;margin-right:auto}
    .leg-i{display:flex;align-items:center;gap:6px}
    .leg-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
    .evt-list{border:1px solid rgba(212,160,42,0.14);border-radius:3px;overflow:hidden;margin-top:22px;max-width:1200px;margin-left:auto;margin-right:auto}
    .evt-hdr,.evt-r{display:grid;grid-template-columns:1.4fr 130px 1fr 200px;font-size:12px;padding:10px 16px;border-bottom:1px solid rgba(212,160,42,0.08);align-items:center}
    .evt-hdr{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,0.4);background:rgba(0,0,0,0.22);font-weight:700}
    .evt-r{background:rgba(255,255,255,0.01);transition:background .12s}
    .evt-r:hover{background:rgba(255,255,255,0.04)}
    .evt-r:last-child{border-bottom:none}
    .ebadge{font-size:9px;padding:2px 8px;border-radius:99px;display:inline-block;font-weight:600;letter-spacing:.5px;text-transform:uppercase}
    @media (max-width:760px){
      .evt-hdr,.evt-r{grid-template-columns:1fr 90px;gap:8px;font-size:11px}
      .evt-hdr div:nth-child(3),.evt-hdr div:nth-child(4),.evt-r div:nth-child(3),.evt-r div:nth-child(4){display:none}
    }

    /* CANVAS HERO */
    #hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
    #hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 42%;z-index:0}
    .hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(1,30,65,.58) 0%,rgba(1,30,65,.34) 42%,rgba(1,30,65,.82) 100%)}
    .hero-credit{position:absolute;right:18px;bottom:14px;z-index:3;font:600 10px/1 'Barlow Condensed',sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.6)}
    .story-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .story-photo-pair .service-photo-slot{aspect-ratio:3/4}
    .photo-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;background:linear-gradient(transparent,rgba(1,30,65,.86));color:#fff;font:700 9.5px/1.1 'Barlow Condensed',sans-serif;letter-spacing:1.5px;text-transform:uppercase;padding:16px 6px 6px;text-align:center}

    /* PILLARS GRID */
    .pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px;max-width:1100px;margin-left:auto;margin-right:auto}
    .pillar{background:rgba(255,255,255,0.04);border:1px solid rgba(212,160,42,0.16);padding:24px;border-radius:2px}
    .pillar-num{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-weight:700}
    .pillar-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--white);margin-bottom:10px;line-height:1.25}
    .pillar-copy{font-size:12.5px;line-height:1.7;color:rgba(255,255,255,0.62)}
    .pillar-amt{margin-top:14px;padding-top:12px;border-top:1px solid rgba(212,160,42,0.18);font-size:11px;color:var(--gold);font-weight:700;letter-spacing:.8px}
    .pillar-cap{background:linear-gradient(135deg,rgba(170,24,44,0.18),rgba(212,160,42,0.06));border:2px solid rgba(170,24,44,0.34);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
    .pillar-cap .cap-line{font-family:'Playfair Display',serif;font-size:32px;font-weight:900;color:var(--gold);line-height:1}
    .pillar-cap .sub{font-size:12px;color:rgba(255,255,255,0.65);margin-top:8px;line-height:1.6}
    .pillar-cap .lbl{font-size:11px;color:var(--red2);margin-top:10px;font-weight:700;letter-spacing:1px}

    /* QUOTE CARDS */
    .quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:1100px;margin:0 auto}
    .quote-card{background:rgba(255,255,255,0.04);border:1px solid rgba(212,160,42,0.16);padding:32px;border-radius:2px}
    .quote-name{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
    .quote-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--white);margin-bottom:14px}
    .quote-body{font-size:14px;line-height:1.85;color:rgba(255,255,255,0.78);font-style:italic;margin-bottom:14px}
    .quote-creds{font-size:12px;color:rgba(255,255,255,0.52);border-top:1px solid rgba(212,160,42,0.18);padding-top:12px}
    @media (max-width:860px){
      .pillars-grid,.quote-grid{grid-template-columns:1fr}
    }
  
    /* Meet the Athletes callout */
    .meet-athletes{margin-top:48px;border-radius:8px;background:linear-gradient(135deg,var(--navy) 0%,var(--navy3,#01294e) 100%);padding:48px 36px;position:relative;overflow:hidden;border:1px solid rgba(212,160,42,.18)}
    .meet-athletes::before{content:"";position:absolute;top:-40px;right:-40px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(212,160,42,.08) 0%,transparent 70%);pointer-events:none}
    .ma-inner{position:relative;max-width:680px;margin:0 auto;text-align:center}
    .ma-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--gold);padding:6px 14px;border:1px solid rgba(212,160,42,.4);border-radius:2px;margin-bottom:18px}
    .ma-heading{font-family:'Playfair Display',serif;font-size:clamp(28px,3.6vw,40px);font-weight:600;color:var(--white);line-height:1.15;letter-spacing:-.5px;margin-bottom:18px}
    .ma-heading em{color:var(--gold);font-style:italic;font-weight:500}
    .ma-copy{font-size:15px;line-height:1.65;color:rgba(255,255,255,.78);margin-bottom:28px;font-family:'Barlow',sans-serif}
    .ma-cta{display:inline-flex;align-items:center;gap:10px;background:var(--red);color:var(--white);padding:14px 28px;font-size:13px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;border-radius:2px;text-decoration:none;transition:.2s;font-family:'Barlow Condensed','Barlow',sans-serif}
    .ma-cta:hover{background:#c01e35;transform:translateY(-1px)}
    .ma-arrow{display:inline-block;transition:transform .2s}
    .ma-cta:hover .ma-arrow{transform:translateX(3px)}
    .ma-note{margin-top:14px;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.42);font-weight:600}
    @media (max-width:640px){.meet-athletes{padding:36px 24px}}

    /* Hero social media icons */
    .hero-social{display:flex;gap:14px;margin-top:36px;align-items:center}
    .hero-social a{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.06);color:var(--gold);transition:.2s ease;border:1px solid rgba(212,160,42,.22)}
    .hero-social a:hover{background:var(--gold);color:var(--navy);border-color:var(--gold);transform:translateY(-2px)}


    /* Proof of Impact — 4 athlete cards with name>creds sizing */
    .quote-grid-4{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:1100px;margin:0 auto}
    .quote-card-pro{background:rgba(255,255,255,.04);border:1px solid rgba(212,160,42,.16);border-radius:3px;overflow:hidden;display:grid;grid-template-columns:120px 1fr}
    .qcp-photo{background:linear-gradient(135deg,rgba(212,160,42,.22),rgba(170,24,44,.18));position:relative;min-height:180px;display:flex;align-items:flex-end;justify-content:center;padding:12px}
    .qcp-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:1}
    .qcp-photo-tag{position:relative;z-index:2;font-size:9px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.55);background:rgba(0,0,0,.4);padding:4px 9px;border-radius:2px}
    .qcp-body{padding:22px}
    .qcp-name{font-family:'Playfair Display',serif;font-size:24px;font-weight:600;color:var(--white);line-height:1.15;letter-spacing:-.3px;margin-bottom:6px}
    .qcp-creds{font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold);margin-bottom:14px;line-height:1.5}
    .qcp-quote{font-size:14px;line-height:1.65;color:rgba(255,255,255,.78);font-family:'Barlow',sans-serif;font-style:italic;margin:0}
    @media (max-width:720px){.quote-grid-4{grid-template-columns:1fr}.quote-card-pro{grid-template-columns:1fr}.qcp-photo{min-height:140px}}

    /* Foundation Background — "How We Win" section */
    .found-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:980px;margin:0 auto 56px}
    .found-pillar{background:#fff;border:1px solid rgba(170,24,44,.10);border-top:3px solid var(--red);padding:28px 26px;border-radius:2px}
    .found-num{font-family:'Playfair Display',serif;font-size:32px;font-weight:600;color:var(--red);line-height:1;margin-bottom:10px;letter-spacing:-1px}
    .found-name{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--navy);margin-bottom:10px;letter-spacing:-.3px}
    .found-copy{font-size:14px;line-height:1.65;color:#3a4a5e;font-family:'Barlow',sans-serif}
    .found-quote{max-width:820px;margin:0 auto 52px;text-align:center;padding:32px 28px;background:#fff;border-left:4px solid var(--gold);border-right:4px solid var(--gold);border-radius:2px}
    .found-quote p{font-family:'Playfair Display',serif;font-size:clamp(22px,2.8vw,32px);font-weight:500;color:var(--navy);line-height:1.25;letter-spacing:-.4px;margin:0}
    .found-quote em{color:var(--red);font-style:italic;font-weight:600}
    .found-quote-attr{margin-top:14px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--red);font-weight:700}
    .found-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1000px;margin:0 auto}
    .found-fact{text-align:center;padding:24px 16px;background:rgba(1,30,65,.04);border-radius:2px}
    .found-fact-n{font-family:'Playfair Display',serif;font-size:34px;font-weight:600;color:var(--navy);line-height:1;margin-bottom:8px;letter-spacing:-.5px}
    .found-fact-l{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#3a4a5e;font-weight:600;line-height:1.4}
    @media (max-width:720px){.found-grid,.found-facts{grid-template-columns:1fr 1fr}}
    @media (max-width:480px){.found-grid,.found-facts{grid-template-columns:1fr}}

    /* Story section with service-era Panama Canal 5K race photo */
    .story-photo-grid{display:grid;grid-template-columns:340px 1fr;gap:48px;align-items:center;max-width:1100px;margin:0 auto}
    .service-photo-slot{position:relative;aspect-ratio:3/4;border-radius:3px;overflow:hidden;box-shadow:0 24px 60px rgba(1,30,65,.18);background:#0d1a30}
    .service-photo-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
    @media (max-width:780px){.story-photo-grid{grid-template-columns:1fr;gap:32px}.service-photo-slot{max-width:280px;margin:0 auto}}

    /* Friendship block — Eric & Michael */
    .friendship-block{display:grid;grid-template-columns:280px 1fr;gap:40px;align-items:center;margin:48px 0;padding:36px;background:rgba(255,255,255,.025);border:1px solid rgba(212,160,42,.18);border-radius:3px}
    .fb-photo-slot{position:relative;aspect-ratio:1/1;background:linear-gradient(135deg,rgba(212,160,42,.22),rgba(170,24,44,.18));border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:18px;overflow:hidden}
    .fb-photo-slot::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.02) 0,rgba(255,255,255,.02) 8px,transparent 8px,transparent 16px);pointer-events:none}
    .fb-photo-tag{position:relative;z-index:2;font-family:'Playfair Display',serif;font-size:18px;font-weight:600;color:var(--white);letter-spacing:-.2px;margin-bottom:4px}
    .fb-photo-note{position:relative;z-index:2;font-size:10px;color:rgba(255,255,255,.55);letter-spacing:1.2px;text-transform:uppercase;font-weight:600}
    .fb-text{padding:8px 0}
    .fb-heading{font-family:'Playfair Display',serif;font-size:clamp(24px,3vw,32px);font-weight:700;line-height:1.15;color:var(--white);margin:8px 0 16px;letter-spacing:-.3px}
    .fb-heading em{font-style:italic;color:var(--gold);font-weight:500}
    .fb-anecdote{font-size:15px;line-height:1.85;color:var(--soft);font-family:'Barlow',sans-serif;margin:0 0 15px}.fb-anecdote:last-child{margin-bottom:0}
    @media (max-width:780px){.friendship-block{grid-template-columns:1fr;gap:24px;padding:24px}.fb-photo-slot{max-width:220px;margin:0 auto;aspect-ratio:1/1}}

/* ===== MOBILE PORTRAIT REFINEMENTS (appended last so these win) ===== */
@media (max-width:720px){
  html,body{overflow-x:hidden}
  img{max-width:100%;height:auto}
  /* collapse every grid that stayed multi-column on phones */
  .pillars-grid,.quote-grid,.quote-grid-4,.found-grid,
  .story-photo-grid,.story-photo-pair,.friendship-block{grid-template-columns:1fr}
  .quote-card-pro{grid-template-columns:1fr}
  .qcp-photo{min-height:210px}
  .found-facts,.map-stats{grid-template-columns:repeat(2,1fr)}
  .fb-photo-slot{max-width:260px;margin:0 auto}
  .service-photo-slot{max-width:300px;margin:0 auto}
  /* map: taller frame + a rotate hint, since a world map is inherently wide */
  #mapwrap{min-height:300px}
  .map-rotate{display:block}
  .map-filters{gap:6px}
  .mfb{font-size:10px;padding:6px 10px}
  .hs{min-width:0}
}
@media (max-width:480px){
  .found-facts,.map-stats{grid-template-columns:1fr 1fr}
  
}
.map-rotate{display:none;margin-top:12px;font:600 11px/1.5 'Barlow Condensed',sans-serif;
  letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.42);text-align:center}