/* Regent's Park FC — public site (from rpfc-prototype-single(5).html). Photo variables (--bg-*) are set in site/layout.blade.php. */
:root{
}


  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}




  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}



  .breadcrumb{background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.08);}
  .breadcrumb .wrap{padding:14px 28px; font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em; color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--shirt-red);}

  .page-hero{
    position:relative; color:var(--chalk); overflow:hidden;
    background-size:cover; background-position:center;
    padding:88px 0 80px;
  }
  .page-hero .wrap{position:relative; max-width:720px;}
  .page-hero h1{font-size:clamp(30px,4vw,48px); line-height:1.1; margin:10px 0 16px; text-shadow:0 2px 20px rgba(0,0,0,0.8), 0 1px 6px rgba(0,0,0,0.85);}
  .page-hero p{font-size:16px; color:rgba(246,244,236,0.95); max-width:52ch; text-shadow:0 1px 12px rgba(0,0,0,0.7);}
  .page-hero .eyebrow{text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .page-hero .btn{margin-top:22px;}

  .benefits-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px 32px;}
  .benefit-item{display:flex; gap:12px; align-items:flex-start; font-size:15px; line-height:1.5;}
  .benefit-item .tick{color:var(--grass); font-weight:700; flex-shrink:0; margin-top:2px;}
  @media(max-width:760px){.benefits-grid{grid-template-columns:1fr;}}

  .video-section{background:var(--chalk);}
  .video-frame{
    aspect-ratio:16/9; border-radius:var(--radius); overflow:hidden;
    background:linear-gradient(160deg,#1c3b25,#10231a);
  }
  .video-frame iframe{width:100%; height:100%; border:0; display:block;}

  .alumni-compact{background:var(--ink); color:var(--chalk);}
  .alumni-compact .grid{display:grid; grid-template-columns:1fr 1.2fr; gap:36px; align-items:center;}
  .alumni-compact .photo-slug{
    aspect-ratio:4/3; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center; border-radius:var(--radius);
    font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.45); text-align:center; padding:14px;
  }
  .alumni-compact h3{font-size:22px; margin:8px 0 10px;}
  .alumni-compact p{font-size:14.5px; color:rgba(246,244,236,0.8); max-width:44ch;}
  .alumni-compact a.readmore{font-family:var(--mono); font-size:12px; text-transform:uppercase; letter-spacing:0.04em; color:var(--gold); display:inline-block; margin-top:10px;}
  @media(max-width:820px){.alumni-compact .grid{grid-template-columns:1fr;}}

  .finder-inline{background:var(--grass); color:var(--chalk);}
  .finder-inline .wrap{padding:34px 28px;}
  .finder-inline h3{font-size:19px; margin-bottom:4px;}
  .finder-inline p{font-family:var(--mono); font-size:12px; opacity:0.85; margin-bottom:18px;}
  .finder-row{display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
  .finder-gender{display:flex; gap:8px;}
  .finder-gender button{
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    padding:11px 18px; border-radius:var(--radius); border:1px solid rgba(246,244,236,0.4);
    background:rgba(19,42,27,0.25); color:var(--chalk); cursor:pointer;
  }
  .finder-gender button.active{background:var(--gold); color:var(--pitch); border-color:var(--gold);}
  .finder-row input[type=date]{
    font-family:var(--body); font-size:14px; padding:11px 14px;
    border:1px solid rgba(246,244,236,0.4); background:rgba(19,42,27,0.25); color:var(--chalk);
    border-radius:var(--radius);
  }

  .single-testi{max-width:640px;}

  .other-groups ul{display:flex; flex-wrap:wrap; gap:14px;}
  .other-groups a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.03em; text-transform:uppercase;
    padding:10px 18px; border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius); color:var(--ink);
  }
  .other-groups a:hover{border-color:var(--shirt-red); color:var(--shirt-red);}

  /* ===== OUR STORY PAGE ===== */
  .credentials-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px 32px;}
  .founder-block{display:grid; grid-template-columns:1fr 1.3fr; gap:44px; align-items:start;}
  .founder-block .photo-slug{
    aspect-ratio:3/4; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center; border-radius:var(--radius);
    font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.45); text-align:center; padding:16px;
    position:sticky; top:90px;
  }
  .founder-block .story-text p{margin-bottom:16px; font-size:15px; line-height:1.7; color:var(--ink);}
  .founder-block .story-text a.readmore{font-family:var(--mono); font-size:12px; text-transform:uppercase; letter-spacing:0.04em; color:var(--shirt-red); display:inline-block; margin-top:6px;}
  @media(max-width:820px){.founder-block{grid-template-columns:1fr;} .founder-block .photo-slug{position:static;}}

  .tahuichi-strip{background:var(--pitch); color:var(--chalk);}
  .tahuichi-strip .wrap{padding:32px 28px;}
  .tahuichi-strip ul{display:flex; flex-wrap:wrap; gap:24px; justify-content:center;}
  .tahuichi-strip li{font-family:var(--mono); font-size:12.5px; display:flex; align-items:center; gap:8px;}
  .tahuichi-strip li::before{content:"✔"; color:var(--gold); font-weight:700;}

  .values-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
  .value-item{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:24px 20px;
  }
  .value-item .letter{
    width:38px; height:38px; border-radius:50%; background:var(--pitch); color:var(--gold);
    display:flex; align-items:center; justify-content:center; font-family:var(--display); font-size:16px;
    margin-bottom:14px;
  }
  .value-item h4{font-size:16px; margin-bottom:6px;}
  .value-item p{font-size:13px; color:var(--ink-soft); line-height:1.5;}
  @media(max-width:820px){.values-grid{grid-template-columns:1fr 1fr;}}

  .gothia-section{background:var(--ink); color:var(--chalk);}
  .gothia-section .grid{display:grid; grid-template-columns:1.2fr 1fr; gap:44px; align-items:center;}
  .gothia-section h3{font-size:24px; margin:8px 0 12px;}
  .gothia-section p{font-size:15px; color:rgba(246,244,236,0.85); max-width:48ch; margin-bottom:22px;}
  .gothia-stats{display:flex; gap:32px; margin-bottom:22px;}
  .gothia-stats .num{font-family:var(--display); font-size:44px; color:var(--gold); line-height:1;}
  .gothia-stats .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; color:rgba(246,244,236,0.7); margin-top:6px;}
  .gothia-section .photo-slug{
    aspect-ratio:4/3; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center; border-radius:var(--radius);
    font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.45); text-align:center; padding:14px;
  }
  @media(max-width:820px){.gothia-section .grid{grid-template-columns:1fr;}}




  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}



  .breadcrumb{background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.08);}
  .breadcrumb .wrap{padding:14px 28px; font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em; color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--shirt-red);}

  .simple-hero{background:var(--pitch); color:var(--chalk); padding:60px 0 52px; text-align:center;}
  .simple-hero .wrap{max-width:640px;}
  .simple-hero h1{font-size:clamp(30px,4vw,46px); margin:10px 0 0;}

  /* Why we group by age */
  .why-grouping{display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:center;}
  .why-grouping .copy p{font-size:15px; color:var(--ink-soft); line-height:1.7; margin-bottom:16px;}
  .why-grouping .copy ul{list-style:none; display:flex; flex-direction:column; gap:10px; margin:18px 0;}
  .why-grouping .copy ul li{font-size:14.5px; color:var(--ink); display:flex; gap:10px; align-items:flex-start;}
  .why-grouping .copy ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .why-grouping .photo-frame{
    aspect-ratio:4/3; border-radius:var(--radius); overflow:hidden;
    background-size:cover; background-position:center;
  }
  @media(max-width:820px){.why-grouping{grid-template-columns:1fr;}}

  /* Age group rows (alternating, click-through) */
  .group-rows{display:flex; flex-direction:column; gap:0;}
  .group-row{
    display:grid; grid-template-columns:1fr 1fr; gap:0;
    text-decoration:none; color:var(--ink);
    border-bottom:1px solid rgba(21,32,24,0.1);
  }
  .group-row:first-child{border-top:1px solid rgba(21,32,24,0.1);}
  .group-row .photo{
    aspect-ratio:4/3; background-size:cover; background-position:center;
  }
  .group-row .content{
    padding:44px 48px; display:flex; flex-direction:column; justify-content:center; gap:12px;
  }
  .group-row .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red);}
  .group-row h3{font-family:var(--display); font-size:26px; letter-spacing:0.01em;}
  .group-row p{font-size:14.5px; color:var(--ink-soft); line-height:1.6; max-width:44ch;}
  .group-row .learn-more-btn{
    font-family:var(--mono); font-size:12px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--grass); font-weight:600; margin-top:6px; display:inline-flex; align-items:center; gap:6px;
    transition:gap .15s;
  }
  .group-row:hover .learn-more-btn{gap:10px;}
  .group-row:hover .content{background:rgba(46,107,62,0.03);}
  .group-row.reverse{grid-template-columns:1fr 1fr;}
  .group-row.reverse .photo{order:2;}
  .group-row.reverse .content{order:1;}
  @media(max-width:760px){
    .group-row, .group-row.reverse{grid-template-columns:1fr;}
    .group-row.reverse .photo{order:0;}
    .group-row.reverse .content{order:0;}
    .group-row .content{padding:28px 24px;}
  }

  .single-testi{max-width:640px;}
  .testi-grid-page{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  @media(max-width:900px){.testi-grid-page{grid-template-columns:1fr;}}

  .finder-inline{background:var(--grass); color:var(--chalk);}
  .finder-inline .wrap{padding:34px 28px;}
  .finder-inline h3{font-size:19px; margin-bottom:4px;}
  .finder-inline p{font-family:var(--mono); font-size:12px; opacity:0.85; margin-bottom:18px;}
  .finder-row{display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
  .finder-gender{display:flex; gap:8px;}
  .finder-gender button{
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    padding:11px 18px; border-radius:var(--radius); border:1px solid rgba(246,244,236,0.4);
    background:rgba(19,42,27,0.25); color:var(--chalk); cursor:pointer;
  }
  .finder-gender button.active{background:var(--gold); color:var(--pitch); border-color:var(--gold);}
  .finder-row input[type=date]{
    font-family:var(--body); font-size:14px; padding:11px 14px;
    border:1px solid rgba(246,244,236,0.4); background:rgba(19,42,27,0.25); color:var(--chalk);
    border-radius:var(--radius);
  }




  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}



  .breadcrumb{background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.08);}
  .breadcrumb .wrap{padding:14px 28px; font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em; color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--shirt-red);}

  .simple-hero{background:var(--pitch); color:var(--chalk); padding:60px 0 52px; text-align:center;}
  .simple-hero .wrap{max-width:640px;}
  .simple-hero h1{font-size:clamp(30px,4vw,46px); margin:10px 0 0;}

  .shop-choice-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
  .shop-choice-card{
    position:relative; border-radius:var(--radius); overflow:hidden;
    min-height:420px; display:flex; flex-direction:column; justify-content:flex-end;
    padding:40px 36px; color:var(--chalk); text-decoration:none;
    background-size:cover; background-position:center;
  }
  .shop-choice-card::before{
    content:""; position:absolute; inset:0;
  }
  .shop-choice-card.kit::before{background:linear-gradient(180deg, rgba(19,42,27,0.15) 0%, rgba(19,42,27,0.92) 85%);}
  .shop-choice-card.merch::before{background:linear-gradient(180deg, rgba(58,20,26,0.15) 0%, rgba(58,20,26,0.92) 85%);}
  .shop-choice-card > *{position:relative; z-index:1;}
  .shop-choice-card .eyebrow{margin-bottom:8px;}
  .shop-choice-card h2{font-size:30px; margin-bottom:12px;}
  .shop-choice-card p{font-size:14.5px; color:rgba(246,244,236,0.9); max-width:36ch; margin-bottom:20px;}
  .shop-choice-card .go{
    font-family:var(--mono); font-size:12px; text-transform:uppercase; letter-spacing:0.05em; font-weight:600;
    display:inline-flex; align-items:center; gap:6px; transition:gap .15s;
    width:max-content; padding:13px 24px; border-radius:var(--radius);
  }
  .shop-choice-card.kit .go{background:var(--gold); color:var(--pitch);}
  .shop-choice-card.merch .go{background:var(--chalk); color:var(--shirt-red);}
  .shop-choice-card:hover .go{gap:10px;}
  @media(max-width:760px){.shop-choice-grid{grid-template-columns:1fr;}}




  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}



  .breadcrumb{background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.08);}
  .breadcrumb .wrap{padding:14px 28px; font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em; color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--shirt-red);}

  .shop-hero{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(100deg, rgba(19,42,27,0.75) 0%, rgba(19,42,27,0.55) 100%), var(--bg-shopkit);
    background-size:cover; background-position:center;
    padding:64px 0 52px; text-align:center;
  }
  .shop-hero .wrap{max-width:640px;}
  .shop-hero h1{font-size:clamp(30px,4vw,46px); margin:10px 0 0; text-shadow:0 2px 18px rgba(0,0,0,0.6);}

  .filter-bar{
    position:sticky; top:65px; z-index:30;
    background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.1);
  }
  .filter-bar .wrap{padding:14px 28px; display:flex; gap:10px; flex-wrap:wrap;}
  .filter-btn{
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.04em; text-transform:uppercase;
    padding:9px 16px; border-radius:999px; border:1px solid rgba(21,32,24,0.15);
    background:#fff; color:var(--ink); cursor:pointer; transition:all .15s;
  }
  .filter-btn:hover{border-color:var(--grass);}
  .filter-btn.active{background:var(--pitch); color:var(--chalk); border-color:var(--pitch);}

  .category-block{margin-bottom:56px;}
  .category-block:last-child{margin-bottom:0;}
  .category-head{margin-bottom:22px;}
  .category-head h3{font-family:var(--display); font-size:20px; letter-spacing:0.01em;}
  .category-head .count{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); margin-left:8px;}

  .product-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
  .product-card{
    border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius); overflow:hidden;
    display:flex; flex-direction:column; background:#fff;
    text-decoration:none; color:var(--ink); cursor:pointer; transition:border-color .15s, transform .15s;
  }
  .product-card:hover{border-color:var(--grass); transform:translateY(-2px);}
  .product-card .photo-slug{
    aspect-ratio:1/1; background:linear-gradient(160deg,#f0eee5,#e2dfd2);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10px; color:var(--ink-soft); text-align:center; padding:10px;
  }
  .product-card .info{padding:14px 14px 16px; display:flex; flex-direction:column; gap:6px; flex:1;}
  .product-card .name{font-size:13.5px; font-weight:600; line-height:1.35; min-height:36px;}
  .product-card .price{font-family:var(--mono); font-size:13px; color:var(--shirt-red); font-weight:600;}
  .product-card .add-btn{
    margin-top:auto; font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.04em;
    padding:10px; text-align:center; border:1px solid var(--pitch); border-radius:var(--radius);
    color:var(--pitch); background:transparent; cursor:pointer; transition:all .15s; display:block;
  }
  .product-card:hover .add-btn{background:var(--pitch); color:var(--chalk);}
  @media(max-width:980px){.product-grid{grid-template-columns:repeat(3,1fr);}}
  @media(max-width:700px){.product-grid{grid-template-columns:repeat(2,1fr);}}




  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}



  .breadcrumb{background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.08);}
  .breadcrumb .wrap{padding:14px 28px; font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em; color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--shirt-red);}

  .simple-hero{background:var(--pitch); color:var(--chalk); padding:60px 0 52px; text-align:center;}
  .simple-hero .wrap{max-width:640px;}
  .simple-hero h1{font-size:clamp(30px,4vw,46px); margin:10px 0 14px;}
  .simple-hero p{color:rgba(246,244,236,0.9); font-size:15.5px;}

  .contact-grid{display:grid; grid-template-columns:1fr 1.2fr; gap:56px; align-items:start;}
  @media(max-width:820px){.contact-grid{grid-template-columns:1fr;}}

  .contact-list{display:flex; flex-direction:column; gap:20px; margin-top:8px;}
  .contact-item{display:flex; gap:14px; align-items:flex-start;}
  .contact-item .ico{
    width:38px; height:38px; border-radius:50%; background:var(--pitch); color:var(--gold);
    display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:16px;
  }
  .contact-item .label{font-family:var(--mono); font-size:10.5px; text-transform:uppercase; letter-spacing:0.05em; color:var(--ink-soft); margin-bottom:3px;}
  .contact-item .value{font-size:14.5px; color:var(--ink); font-style:italic;}

  .safeguard-box{
    margin-top:26px; padding:20px 22px; border:1px solid var(--shirt-red); border-radius:var(--radius);
    background:rgba(174,32,50,0.05);
  }
  .safeguard-box .label{font-family:var(--mono); font-size:10.5px; text-transform:uppercase; letter-spacing:0.05em; color:var(--shirt-red); margin-bottom:6px; font-weight:600;}
  .safeguard-box .value{font-size:14.5px; color:var(--ink); font-style:italic;}

  .contact-form{display:flex; flex-direction:column; gap:16px;}
  .form-row{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
  .contact-form label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink-soft); margin-bottom:6px; display:block;}
  .contact-form input, .contact-form select, .contact-form textarea{
    width:100%; font-family:var(--body); font-size:14.5px; padding:12px 14px;
    border:1px solid rgba(21,32,24,0.18); border-radius:var(--radius); color:var(--ink); background:#fff;
  }
  .contact-form textarea{min-height:130px; resize:vertical;}
  .contact-form .field{display:flex; flex-direction:column;}
  @media(max-width:600px){.form-row{grid-template-columns:1fr;}}
  #formConfirm{display:none; padding:16px 18px; background:rgba(46,107,62,0.08); border:1px solid var(--grass); border-radius:var(--radius); font-size:14px; color:var(--ink);}




  :root{
    --pitch:#132A1B;
    --grass:#2E6B3E;
    --grass-light:#4C8F5B;
    --shirt-red:#AE2032;
    --chalk:#F6F4EC;
    --gold:#C9A227;
    --ink:#152018;
    --ink-soft:#4A574C;
    --line: rgba(246,244,236,0.22);
    --radius: 2px;
    --display: 'Anton', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --body: 'Work Sans', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--body);
    color:var(--ink);
    background:var(--chalk);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:1160px; margin:0 auto; padding:0 28px;}

  /* Pitch-line divider: dashed halfway line, used between sections */
  .pitch-divider{
    height:1px;
    background-image: repeating-linear-gradient(90deg, var(--ink-soft) 0 14px, transparent 14px 26px);
    opacity:0.35;
    max-width:1160px;
    margin:0 auto;
  }
  .eyebrow{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--grass);
    font-weight:600;
  }
  .eyebrow.on-dark{color:var(--gold);}
  h1,h2,h3{font-family:var(--display); text-transform:uppercase; letter-spacing:0.01em; line-height:1.02;}

  /* ===== HEADER ===== */
  header.site{
    position:sticky; top:0; z-index:50;
    background:var(--pitch);
    border-bottom:1px solid var(--line);
  }
  .nav-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px;
    max-width:1160px; margin:0 auto;
  }
  .brand{display:flex; align-items:center; gap:12px;}
  .badge{
    width:44px; height:auto;
    flex-shrink:0;
  }
  .brand-text .club-name{font-family:var(--display); color:var(--chalk); font-size:17px; letter-spacing:0.02em;}
  .brand-text .school-tag{font-family:var(--mono); color:var(--gold); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase;}
  nav.primary{display:flex; gap:28px;}
  nav.primary a{
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:var(--chalk); opacity:0.85; transition:opacity .15s;
  }
  nav.primary a:hover{opacity:1; color:var(--gold);}
  .btn{
    display:inline-block; padding:11px 22px;
    font-family:var(--mono); font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer;
  }
  .btn-primary{background:var(--shirt-red); color:var(--chalk);}
  .btn-primary:hover{background:#8f1a28;}
  .btn-ghost{background:transparent; color:var(--chalk); border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-dark{background:var(--pitch); color:var(--chalk);}
  .btn-dark:hover{background:#0c1c12;}
  @media(max-width:900px){ nav.primary{display:none;} }

  /* ===== HERO: full-width pitch photo, split colour treatment ===== */
  .hero{
    position:relative;
    color:var(--chalk);
    overflow:hidden;
    background-image:
      linear-gradient(180deg, rgba(19,42,27,0.12) 0%, rgba(0,0,0,0.05) 50%, rgba(58,20,26,0.12) 100%),
      var(--bg-pitch);
    background-size:cover;
    background-position:center;
  }
  .hero-split{
    display:grid; grid-template-columns:1fr 1fr;
    min-height:600px;
    position:relative;
  }
  .hero-half{
    position:relative;
    padding:64px 56px 100px;
    display:flex; flex-direction:column; justify-content:center;
    gap:18px;
  }
  .hero-half h1{font-size:clamp(28px,3.2vw,40px); color:var(--chalk); max-width:18ch; line-height:1.12; text-shadow:0 2px 22px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);}
  .hero-half p{max-width:40ch; color:rgba(246,244,236,0.98); font-size:15.5px; text-shadow:0 1px 14px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.85);}
  .hero-half .eyebrow{margin-bottom:4px; text-shadow:0 1px 14px rgba(0,0,0,0.85), 0 1px 4px rgba(0,0,0,0.9);}
  .hero-half .btn{width:max-content; margin-top:6px;}
  .hero-half.junior .btn{background:var(--gold); color:var(--pitch);}
  .hero-half.junior .btn:hover{background:#e0bc3f;}
  .hero-half.pathway{align-items:flex-end; text-align:right;}
  .hero-half.pathway h1, .hero-half.pathway p{margin-left:auto;}
  .hero-half.pathway .btn{background:var(--chalk); color:var(--shirt-red);}
  .hero-half.pathway .btn:hover{background:#e6e2d3;}

  @media(max-width:820px){
    .hero-split{grid-template-columns:1fr;}
    .hero-half{padding:56px 24px;}
    .hero-half.pathway{align-items:flex-start; text-align:left;}
    .hero-half.pathway h1, .hero-half.pathway p{margin-left:0;}
  }

  /* ===== TRACK RECORD (statement stats) ===== */
  .track-record{
    background:var(--ink);
    color:var(--chalk);
    border-top:1px solid var(--line);
    padding:40px 0;
  }
  .track-record .section-head{max-width:640px; margin-bottom:18px;}
  .track-record .section-head h2{color:var(--chalk); white-space:nowrap; font-size:clamp(20px,2.6vw,36px);}
  .track-record .section-head .sub{color:rgba(246,244,236,0.65); margin-top:6px;}
  .track-record .eyebrow{color:var(--gold);}
  .stat-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:28px;
    border-top:1px solid var(--line); padding-top:24px;
  }
  .stat-big .num{font-family:var(--display); font-size:clamp(48px,5vw,72px); color:var(--gold); line-height:1;}
  .stat-big .label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.02em; color:rgba(246,244,236,0.8); margin-top:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  @media(max-width:820px){ .stat-grid{grid-template-columns:1fr 1fr;} .track-record .section-head h2{white-space:normal;} }

  /* ===== SECTION SCAFFOLD ===== */
  section{padding:76px 0;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:8px;}
  .section-head .sub{color:var(--ink-soft); margin-top:10px; font-size:15.5px;}

  /* ===== TRIAL BOOKING MODAL ===== */
  .modal-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(19,42,27,0.72);
    display:none; align-items:center; justify-content:center;
    padding:24px;
  }
  .modal-overlay.open{display:flex;}
  .modal-box{
    background:var(--chalk); color:var(--ink);
    max-width:460px; width:100%;
    border-radius:var(--radius);
    border-top:4px solid var(--shirt-red);
    padding:32px 30px 28px;
    position:relative;
    max-height:86vh; overflow-y:auto;
  }
  .modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:none; font-size:20px; line-height:1; cursor:pointer;
    color:var(--ink-soft); font-family:var(--mono);
  }
  .modal-close:hover{color:var(--shirt-red);}
  .modal-box .eyebrow{margin-bottom:6px;}
  .modal-box h3{font-size:22px; margin-bottom:6px;}
  .modal-box .sub{color:var(--ink-soft); font-size:13.5px; margin-bottom:20px;}
  .trial-dates{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
  .trial-date-option{
    display:flex; align-items:center; justify-content:space-between;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    padding:12px 14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .trial-date-option:hover{border-color:var(--grass);}
  .trial-date-option.selected{border-color:var(--shirt-red); background:rgba(174,32,50,0.06);}
  .trial-date-option .when{font-family:var(--body); font-weight:600; font-size:14px;}
  .trial-date-option .where{font-family:var(--mono); font-size:11px; color:var(--ink-soft); margin-top:2px;}
  .trial-date-option input{accent-color:var(--shirt-red);}
  .modal-box .btn{width:100%; text-align:center;}
  .gender-options{display:flex; gap:12px;}
  .gender-option{
    flex:1; padding:22px 12px; text-align:center;
    font-family:var(--display); font-size:18px; letter-spacing:0.02em; text-transform:uppercase;
    border:1px solid rgba(21,32,24,0.15); border-radius:var(--radius);
    background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s;
  }
  .gender-option:hover{border-color:var(--shirt-red); background:rgba(174,32,50,0.05);}
  .dob-input{
    width:100%; font-family:var(--body); font-size:15px; padding:13px 14px;
    border:1px solid rgba(21,32,24,0.2); border-radius:var(--radius); color:var(--ink);
  }
  .btn-back{
    display:block; text-align:center; margin-top:14px;
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-soft);
  }
  .btn-back:hover{color:var(--shirt-red);}

  /* ===== TRUST STRIP ===== */
  .trust-strip{background:var(--chalk); border-top:1px solid rgba(21,32,24,0.1); border-bottom:1px solid rgba(21,32,24,0.1);}
  .trust-strip ul{display:flex; flex-wrap:wrap; gap:26px; justify-content:center; padding:18px 28px;}
  .trust-strip li{font-family:var(--mono); font-size:12px; letter-spacing:0.03em; color:var(--ink-soft); display:flex; align-items:center; gap:7px;}
  .trust-strip li::before{content:"✔"; color:var(--grass); font-weight:700;}

  /* ===== AGE GROUPS GRID (squad-card style) ===== */
  .squad-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:16px;
  }
  .squad-card{
    background:var(--pitch); color:var(--chalk);
    aspect-ratio:3/4; position:relative; overflow:hidden;
    border-radius:var(--radius);
  }
  .squad-card .photo-slug{
    position:absolute; inset:0;
    background:linear-gradient(160deg,#1c3b25, #10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:10.5px; color:rgba(246,244,236,0.4); text-align:center; padding:12px;
  }
  .squad-card .no{
    position:absolute; top:12px; left:12px;
    font-family:var(--display); font-size:15px; color:var(--gold);
  }
  .squad-card .name{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 14px;
    background:linear-gradient(180deg, transparent, rgba(19,42,27,0.92) 60%);
    font-family:var(--display); font-size:15px; letter-spacing:0.01em;
  }
  @media(max-width:900px){ .squad-grid{grid-template-columns:repeat(2,1fr);} }
  @media(max-width:520px){ .squad-grid{grid-template-columns:1fr 1fr;} }

  /* ===== SHOP ===== */
  .shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .shop-card{
    padding:38px 32px; border-radius:var(--radius);
    display:flex; flex-direction:column; gap:12px; justify-content:flex-end; min-height:280px;
  }
  .shop-card.kit{
    background-image: linear-gradient(150deg, rgba(46,107,62,0.82), rgba(19,42,27,0.88)), var(--bg-shopkit);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card.merch{
    background-image: linear-gradient(150deg, rgba(174,32,50,0.82), rgba(58,20,26,0.88)), var(--bg-shopmerch);
    background-size:cover; background-position:center;
    color:var(--chalk);
  }
  .shop-card h3{font-size:24px;}
  .shop-card p{font-size:14px; opacity:0.85; max-width:36ch;}
  .shop-card .btn{width:max-content; margin-top:6px; background:var(--chalk); color:var(--ink);}
  @media(max-width:760px){.shop-grid{grid-template-columns:1fr;}}

  /* ===== ALUMNI PROOF POINT ===== */
  .alumni{background:var(--ink); color:var(--chalk);}
  .alumni .grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .alumni .video-slug{
    aspect-ratio:16/9; background:linear-gradient(160deg,#1c3b25,#10231a);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.45); border-radius:var(--radius);
  }
  .alumni h3{font-size:26px; margin:10px 0 12px;}
  .alumni p{color:rgba(246,244,236,0.8); font-size:15px; max-width:44ch;}
  @media(max-width:820px){.alumni .grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIALS ===== */
  .testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .testi-card{
    background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius);
    padding:26px 24px; display:flex; flex-direction:column; gap:14px;
  }
  .testi-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px;}
  .testi-card blockquote{font-size:14.5px; color:var(--ink); line-height:1.6;}
  .testi-card cite{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); font-style:normal; text-transform:uppercase; letter-spacing:0.04em;}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FOOTER ===== */
  footer{background:var(--pitch); color:rgba(246,244,236,0.85); padding:60px 0 26px;}
  .foot-grid{display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:24px;}
  footer h4{font-family:var(--mono); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
  footer li{margin-bottom:9px; font-size:13.5px;}
  footer li a:hover{color:var(--gold);}
  .foot-brand .club-name{font-family:var(--display); font-size:18px; color:var(--chalk);}
  .foot-brand p{font-size:13px; margin-top:10px; max-width:32ch; color:rgba(246,244,236,0.6);}
  .foot-legal{
    margin-top:44px; padding-top:20px; border-top:1px solid var(--line);
    font-family:var(--mono); font-size:11px; color:rgba(246,244,236,0.5);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}

  /* ===== TOP TRUST BAR (WMF-style) ===== */
  .trust-bar{
    background:var(--ink); color:rgba(246,244,236,0.85);
    font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em;
  }
  .trust-bar .wrap{
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 28px; flex-wrap:wrap; gap:6px;
  }
  .trust-bar .stars-inline{color:var(--gold); margin-right:6px;}
  .trust-bar a{color:rgba(246,244,236,0.85);}
  .trust-bar a:hover{color:var(--gold);}

  /* ===== UNIFIED HERO (single strong CTA hero, WMF pattern) ===== */
  .hero-unified{
    position:relative; color:var(--chalk); overflow:hidden;
    background-image: linear-gradient(180deg, rgba(19,42,27,0.55) 0%, rgba(10,20,14,0.72) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
    padding:96px 0 64px;
    text-align:center;
  }
  .hero-unified .wrap{max-width:760px;}
  .hero-unified .eyebrow{justify-content:center; display:flex; text-shadow:0 1px 10px rgba(0,0,0,0.8);}
  .hero-unified h1{
    font-size:clamp(34px,5.5vw,60px); line-height:1.05; margin:14px 0 18px;
    text-shadow:0 2px 24px rgba(0,0,0,0.85), 0 1px 6px rgba(0,0,0,0.9);
  }
  .hero-unified p.lead{
    font-size:16.5px; color:rgba(246,244,236,0.95); max-width:52ch; margin:0 auto 30px;
    text-shadow:0 1px 12px rgba(0,0,0,0.75);
  }
  .hero-cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
  .hero-cta-row .btn{font-size:13.5px; padding:15px 28px;}
  .hero-trust-row{
    margin-top:38px; display:flex; align-items:center; justify-content:center; gap:14px;
    font-family:var(--mono); font-size:12px; color:rgba(246,244,236,0.85); flex-wrap:wrap;
    text-shadow:0 1px 8px rgba(0,0,0,0.7);
  }
  .hero-trust-row .stars{color:var(--gold); letter-spacing:2px;}

  /* ===== PATHWAY CARDS (instant self-select, WMF pattern) ===== */
  .pathways{background:var(--chalk); padding:56px 0;}
  .pathway-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .pathway-card{
    display:block; text-decoration:none; color:var(--ink);
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius);
    padding:28px 24px; transition:border-color .15s, transform .15s;
    background:#fff;
  }
  .pathway-card:hover{border-color:var(--grass); transform:translateY(-3px);}
  .pathway-card .tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--shirt-red); margin-bottom:10px; display:block;}
  .pathway-card h3{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin-bottom:8px;}
  .pathway-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin-bottom:12px;}
  .pathway-card .go{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; color:var(--grass); font-weight:600;}
  .pathway-card.dark{background:var(--pitch); color:var(--chalk); border-color:transparent;}
  .pathway-card.dark p{color:rgba(246,244,236,0.75);}
  .pathway-card.dark .go{color:var(--gold);}
  @media(max-width:820px){.pathway-grid{grid-template-columns:1fr;}}

  /* ===== TRUST & SAFETY (icon grid, replaces thin strip) ===== */
  .safety-section{background:var(--ink); color:var(--chalk); padding:64px 0;}
  .safety-section .section-head h2{color:var(--chalk);}
  .safety-section .section-head .sub{color:rgba(246,244,236,0.65);}
  .safety-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:36px;}
  .safety-item{
    border:1px solid var(--line); border-radius:var(--radius); padding:22px 18px;
    text-align:center;
  }
  .safety-item .ico{font-family:var(--display); font-size:22px; color:var(--gold); margin-bottom:10px;}
  .safety-item h4{font-size:14px; font-family:var(--body); font-weight:700; margin-bottom:6px;}
  .safety-item p{font-size:12.5px; color:rgba(246,244,236,0.7); line-height:1.5;}
  @media(max-width:820px){.safety-grid{grid-template-columns:1fr 1fr;}}

  /* ===== PROGRAMS (Everything to Make It, WMF pattern) ===== */
  .programs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .program-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; gap:12px;
  }
  .program-card h3{font-size:18px;}
  .program-card ul{list-style:none; display:flex; flex-direction:column; gap:8px; margin:4px 0;}
  .program-card ul li{font-size:13.5px; color:var(--ink-soft); display:flex; gap:8px; align-items:flex-start;}
  .program-card ul li::before{content:"✔"; color:var(--grass); font-weight:700; flex-shrink:0;}
  .program-card .btn{width:max-content; margin-top:6px; background:var(--pitch); color:var(--chalk); padding:11px 20px; font-size:12px;}
  @media(max-width:820px){.programs-grid{grid-template-columns:1fr;}}

  /* ===== FINAL CTA BANNER ===== */
  .final-cta{
    background:linear-gradient(120deg, var(--grass), var(--pitch));
    color:var(--chalk); text-align:center; padding:64px 0;
  }
  .final-cta h2{color:var(--chalk); font-size:clamp(26px,3.4vw,40px); margin-bottom:12px;}
  .final-cta p{max-width:52ch; margin:0 auto 26px; font-size:15.5px; color:rgba(246,244,236,0.92);}
  .final-cta .hero-cta-row .btn-primary{background:var(--gold); color:var(--pitch);}
  .final-cta .hero-cta-row .btn-primary:hover{background:#e0bc3f;}
  .final-cta .hero-cta-row .btn-ghost{border-color:rgba(246,244,236,0.5);}
  .final-cta .sub-trust{margin-top:22px; font-family:var(--mono); font-size:11.5px; color:rgba(246,244,236,0.75);}

  /* ===== SQUAD CARD AS LINK (Learn more overlay) ===== */
  a.squad-card{cursor:pointer; display:block; text-decoration:none;}
  .squad-card .learn-more{
    position:absolute; left:14px; bottom:14px;
    font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--gold); opacity:0; transform:translateY(4px);
    transition:opacity .15s, transform .15s;
  }
  .squad-card:hover .learn-more{opacity:1; transform:translateY(0);}
  .squad-card:hover .name{padding-bottom:26px;}



  .breadcrumb{background:var(--chalk); border-bottom:1px solid rgba(21,32,24,0.08);}
  .breadcrumb .wrap{padding:14px 28px; font-family:var(--mono); font-size:11.5px; letter-spacing:0.03em; color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--shirt-red);}

  .simple-hero{background:var(--pitch); color:var(--chalk); padding:56px 0 46px; text-align:center;}
  .simple-hero .wrap{max-width:640px;}
  .simple-hero h1{font-size:clamp(28px,3.6vw,42px); margin:10px 0 0;}

  .coach-tier{padding:52px 0;}
  .coach-tier.dark{background:var(--pitch); color:var(--chalk);}
  .coach-tier .eyebrow{margin-bottom:6px;}
  .coach-tier.dark .eyebrow{color:var(--gold);}
  .coach-tier h2{font-size:clamp(22px,2.6vw,30px); margin-bottom:24px;}
  .coach-tier.dark h2{color:var(--chalk);}

  .coach-carousel-wrap{position:relative; padding-left:28px;}
  .coach-carousel{
    display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory;
    padding-bottom:6px; padding-right:28px; scrollbar-width:none;
  }
  .coach-carousel::-webkit-scrollbar{display:none;}
  .coach-card{
    flex:0 0 auto; width:380px; aspect-ratio:0.58; position:relative; scroll-snap-align:start;
    border-radius:var(--radius); overflow:hidden;
    background:linear-gradient(160deg,#2E6B3E,#132A1B);
  }
  .coach-card .plate{
    position:absolute; left:14px; bottom:14px; right:14px;
    background:var(--shirt-red); color:var(--chalk);
    border-radius:var(--radius); padding:12px 16px;
    display:flex; align-items:center; justify-content:space-between; gap:8px;
  }
  .coach-card .plate .names{line-height:1.25;}
  .coach-card .plate .first{display:block; font-size:12px; font-family:var(--mono); opacity:0.85;}
  .coach-card .plate .last{display:block; font-family:var(--display); font-size:17px; letter-spacing:0.01em;}
  .coach-card .plate .arrow{
    width:28px; height:28px; border-radius:50%; background:var(--chalk); color:var(--shirt-red);
    display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:13px;
  }

  .carousel-nav{display:flex; align-items:center; justify-content:space-between; margin-top:14px; padding:0 28px;}
  .carousel-dots{display:flex; gap:7px;}
  .carousel-dots button{
    width:7px; height:7px; border-radius:50%; border:none; padding:0; cursor:pointer;
    background:rgba(21,32,24,0.2);
  }
  .coach-tier.dark .carousel-dots button{background:rgba(246,244,236,0.3);}
  .carousel-dots button.active{background:var(--shirt-red); width:20px; border-radius:4px;}
  .coach-tier.dark .carousel-dots button.active{background:var(--gold);}
  .carousel-arrows{display:flex; gap:8px;}
  .carousel-arrows button{
    width:34px; height:34px; border-radius:50%; border:1px solid rgba(21,32,24,0.15);
    background:#fff; cursor:pointer; font-size:14px; color:var(--ink);
  }
  .coach-tier.dark .carousel-arrows button{border-color:var(--line); background:transparent; color:var(--chalk);}
  .carousel-arrows button:hover{background:var(--pitch); color:var(--chalk); border-color:var(--pitch);}



  .page{display:none;}
  .page.active{display:block;}

  /* ===== CART ICON (header) ===== */
  .cart-icon{
    position:relative; font-size:20px; line-height:1; margin-right:6px;
    display:inline-flex; align-items:center; justify-content:center;
    width:38px; height:38px; text-decoration:none;
  }
  .cart-badge{
    position:absolute; top:-2px; right:-2px;
    background:var(--shirt-red); color:var(--chalk);
    font-family:var(--mono); font-size:10px; font-weight:700;
    width:17px; height:17px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
  }

  /* ===== PRODUCT DETAIL PAGE ===== */
  .product-detail{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start;}
  .product-detail .photo-slug{
    aspect-ratio:1/1; background:linear-gradient(160deg,#f0eee5,#e2dfd2);
    display:flex; align-items:center; justify-content:center; border-radius:var(--radius);
    font-family:var(--mono); font-size:12px; color:var(--ink-soft); text-align:center; padding:20px;
  }
  .product-detail h1{font-size:clamp(24px,3vw,32px); margin-bottom:10px;}
  .product-detail .price{font-family:var(--mono); font-size:20px; color:var(--shirt-red); font-weight:700; margin-bottom:18px;}
  .product-detail .blurb{font-size:14.5px; color:var(--ink-soft); line-height:1.6; margin-bottom:26px;}
  .product-detail .field-label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink-soft); margin-bottom:8px; display:block;}
  .product-detail select{
    width:100%; font-family:var(--body); font-size:14.5px; padding:12px 14px;
    border:1px solid rgba(21,32,24,0.18); border-radius:var(--radius); color:var(--ink); background:#fff;
    margin-bottom:22px;
  }
  .qty-stepper{display:flex; align-items:center; gap:0; width:max-content; margin-bottom:24px; border:1px solid rgba(21,32,24,0.18); border-radius:var(--radius); overflow:hidden;}
  .qty-stepper button{
    width:40px; height:40px; border:none; background:var(--chalk); font-family:var(--display); font-size:16px; cursor:pointer;
  }
  .qty-stepper button:hover{background:var(--pitch); color:var(--chalk);}
  .qty-stepper input{
    width:52px; height:40px; text-align:center; border:none; border-left:1px solid rgba(21,32,24,0.18); border-right:1px solid rgba(21,32,24,0.18);
    font-family:var(--body); font-size:15px;
  }
  #addToCartConfirm{
    display:none; margin-top:16px; padding:14px 16px; background:rgba(46,107,62,0.08);
    border:1px solid var(--grass); border-radius:var(--radius); font-size:13.5px;
  }
  #addToCartConfirm a{color:var(--grass); font-weight:600;}

  /* ===== CART PAGE ===== */
  .cart-row{
    display:grid; grid-template-columns:2fr auto auto auto; gap:20px; align-items:center;
    padding:18px 0; border-bottom:1px solid rgba(21,32,24,0.1);
  }
  .cart-row-name{font-size:14.5px; font-weight:600;}
  .cart-row-qty{display:flex; align-items:center; gap:0; border:1px solid rgba(21,32,24,0.18); border-radius:var(--radius); overflow:hidden;}
  .cart-row-qty button{width:30px; height:30px; border:none; background:var(--chalk); cursor:pointer; font-family:var(--display);}
  .cart-row-qty span{width:32px; text-align:center; font-size:13.5px;}
  .cart-row-price{font-family:var(--mono); font-size:14px; color:var(--shirt-red); font-weight:600; min-width:70px; text-align:right;}
  .cart-row-remove{font-family:var(--mono); font-size:11px; text-transform:uppercase; color:var(--ink-soft); background:none; border:none; cursor:pointer;}
  .cart-row-remove:hover{color:var(--shirt-red);}
  .cart-summary{
    margin-top:24px; padding-top:20px; border-top:2px solid var(--pitch);
    display:flex; justify-content:space-between; align-items:center;
  }
  .cart-summary .label{font-family:var(--display); font-size:18px;}
  .cart-summary .amount{font-family:var(--display); font-size:22px; color:var(--shirt-red);}
  .cart-empty{padding:40px 0; text-align:center; color:var(--ink-soft);}

  /* ===== CHECKOUT PAGE ===== */
  .checkout-grid{display:grid; grid-template-columns:1.3fr 1fr; gap:48px; align-items:start;}
  .checkout-row{display:flex; justify-content:space-between; padding:10px 0; font-size:14px; border-bottom:1px solid rgba(21,32,24,0.08);}
  .checkout-summary-box{border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:22px;}
  .checkout-total{display:flex; justify-content:space-between; margin-top:16px; padding-top:16px; border-top:2px solid var(--pitch); font-family:var(--display); font-size:18px;}
  #orderConfirm{display:none; text-align:center; padding:60px 20px;}
  #orderConfirm .big-tick{width:64px; height:64px; border-radius:50%; background:var(--grass); color:var(--chalk); font-size:28px; display:flex; align-items:center; justify-content:center; margin:0 auto 20px;}
  @media(max-width:820px){.product-detail, .checkout-grid{grid-template-columns:1fr;}}

  /* ===== HEADER: PARENT LOGIN / ACCOUNT ===== */
  .parent-login-link{
    font-family:var(--mono); font-size:12px; letter-spacing:0.04em; color:var(--ink); margin-right:4px;
    display:flex; align-items:center; gap:4px; white-space:nowrap;
  }
  .parent-login-link:hover{color:var(--shirt-red);}
  .btn-account{background:var(--shirt-red); color:var(--chalk); margin-right:4px; white-space:nowrap;}
  .btn-account:hover{background:#8f1a28;}
  .btn-logout{background:var(--pitch); color:var(--chalk); margin-right:4px; white-space:nowrap;}
  .btn-logout:hover{background:#0c1c12;}

  /* Group nav links + account/cart/trial controls into one non-wrapping row */
  .nav-right{display:flex; align-items:center; gap:18px; flex-wrap:nowrap;}
  .nav-right nav.primary{gap:20px;}
  .nav-right nav.primary a{white-space:nowrap;}
  .nav-right .btn{white-space:nowrap;}
  @media(max-width:1180px){ .nav-right{gap:12px;} .nav-right nav.primary{gap:14px;} }

  /* ===== AUTH PAGES (login / forgot password) ===== */
  .auth-wrap{max-width:420px; margin:0 auto;}
  .auth-card{border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:36px 32px;}
  .auth-card .field{display:flex; flex-direction:column; margin-bottom:18px;}
  .auth-card label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink-soft); margin-bottom:8px;}
  .auth-card input{
    font-family:var(--body); font-size:14.5px; padding:12px 14px;
    border:1px solid rgba(21,32,24,0.18); border-radius:var(--radius); color:var(--ink);
  }
  .auth-card .btn{width:100%; text-align:center; margin-top:8px;}
  .auth-links{text-align:center; margin-top:20px; font-family:var(--mono); font-size:12.5px;}
  .auth-links a{color:var(--shirt-red);}
  .auth-links p{margin-bottom:8px; color:var(--ink-soft);}
  #forgotConfirm, #loginError{display:none; margin-top:16px; padding:14px 16px; border-radius:var(--radius); font-size:13.5px;}
  #forgotConfirm{background:rgba(46,107,62,0.08); border:1px solid var(--grass);}
  #loginError{background:rgba(174,32,50,0.08); border:1px solid var(--shirt-red); color:var(--shirt-red);}

  /* ===== ACCOUNT PORTAL SHELL ===== */
  .account-hero{
    position:relative; color:var(--chalk); overflow:hidden; padding:56px 0 90px;
    background-image: linear-gradient(100deg, rgba(58,20,26,0.72) 0%, rgba(58,20,26,0.55) 100%), var(--bg-pitch);
    background-size:cover; background-position:center;
  }
  .account-hero h1{font-size:clamp(26px,3.4vw,38px);}
  .account-shell{display:grid; grid-template-columns:220px 1fr; gap:32px; margin-top:-56px; position:relative; z-index:2;}
  .account-sidebar{background:#fff; border-radius:var(--radius); border:1px solid rgba(21,32,24,0.1); padding:24px 20px; height:max-content;}
  .account-avatar{
    width:76px; height:76px; border-radius:50%; margin:0 auto 12px; overflow:hidden;
    background:var(--pitch); color:var(--gold); display:flex; align-items:center; justify-content:center;
    font-family:var(--display); font-size:24px; border:3px solid var(--chalk); box-shadow:0 0 0 1px rgba(21,32,24,0.1);
  }
  .account-sidebar .child-name{text-align:center; font-family:var(--display); font-size:16px; margin-bottom:2px;}
  .account-sidebar .dash-label{text-align:center; font-family:var(--mono); font-size:10.5px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:0.04em; margin-bottom:20px;}
  .account-nav{display:flex; flex-direction:column; gap:2px;}
  .account-nav a{
    display:flex; align-items:center; gap:10px; padding:11px 12px; border-radius:var(--radius);
    font-size:13.5px; color:var(--ink); text-decoration:none;
  }
  .account-nav a:hover{background:rgba(46,107,62,0.06);}
  .account-nav a.active{background:var(--pitch); color:var(--chalk); font-weight:600;}
  .account-main{padding-bottom:20px;}
  .account-card{background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius); padding:22px 24px; margin-bottom:20px;}
  .account-card h3{font-size:16px; margin-bottom:14px;}

  .welcome-banner{
    background:var(--grass); color:var(--chalk); border-radius:var(--radius);
    padding:14px 20px; display:flex; align-items:center; gap:12px; font-size:14px; margin-bottom:20px;
  }
  .team-card-hero{
    background-size:cover; background-position:center; border-radius:var(--radius); overflow:hidden;
    position:relative; padding:26px 24px; color:var(--chalk); min-height:150px; display:flex; flex-direction:column; justify-content:flex-end;
  }
  .team-card-hero::before{content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(19,42,27,0.85) 40%, rgba(19,42,27,0.15) 100%);}
  .team-card-hero > *{position:relative; z-index:1;}
  .team-card-hero h3{color:var(--chalk); margin-bottom:6px;}
  .team-card-hero .meta{font-size:13px; color:rgba(246,244,236,0.85); margin-bottom:14px;}

  .account-grid-2{display:grid; grid-template-columns:1.6fr 1fr; gap:20px; align-items:start;}
  @media(max-width:900px){.account-grid-2{grid-template-columns:1fr;}}

  .team-members-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  .team-member{text-align:center;}
  .team-member .avatar-circle{
    width:64px; height:64px; border-radius:50%; margin:0 auto 8px;
    background:var(--grass); color:var(--chalk); display:flex; align-items:center; justify-content:center;
    font-family:var(--display); font-size:18px;
  }
  .team-member .name{font-size:13px; font-weight:600;}

  .coach-row{display:flex; align-items:center; gap:12px; margin-bottom:14px;}
  .coach-avatar{width:48px; height:48px; border-radius:50%; background:var(--shirt-red); color:var(--chalk); display:flex; align-items:center; justify-content:center; font-family:var(--display); font-size:15px; flex-shrink:0;}
  .coach-row .coach-name{font-weight:600; font-size:14px;}
  .coach-row .coach-sub{font-size:12px; color:var(--ink-soft);}

  .emergency-card{background:var(--ink); color:var(--chalk); border-color:transparent;}
  .emergency-card h3{color:var(--chalk);}
  .emergency-row{display:flex; justify-content:space-between; font-size:13.5px; padding:8px 0; border-bottom:1px solid var(--line);}
  .emergency-row:last-of-type{border-bottom:none;}

  /* ===== SESSIONS TABS + CARDS ===== */
  .account-tabs{display:flex; gap:0; border-bottom:1px solid rgba(21,32,24,0.12); margin-bottom:20px;}
  .account-tab{
    padding:12px 20px; font-family:var(--body); font-size:14px; font-weight:600; color:var(--ink-soft);
    border-bottom:2px solid transparent; cursor:pointer; background:none; border-top:none; border-left:none; border-right:none;
  }
  .account-tab.active{color:var(--grass); border-bottom-color:var(--grass);}
  .filter-row{display:flex; justify-content:space-between; align-items:center; margin-bottom:18px; flex-wrap:wrap; gap:10px;}
  .filter-row select{
    font-family:var(--body); font-size:13px; padding:9px 12px; border:1px solid rgba(21,32,24,0.18); border-radius:var(--radius); background:#fff;
  }
  .session-card{background:#fff; border:1px solid rgba(21,32,24,0.1); border-radius:var(--radius); margin-bottom:14px; overflow:hidden;}
  .session-card-top{display:flex; align-items:center; gap:16px; padding:18px 20px;}
  .session-date-badge{
    background:var(--pitch); color:var(--chalk); border-radius:var(--radius); text-align:center;
    padding:6px 12px; min-width:56px; flex-shrink:0;
  }
  .session-date-badge .dow{font-family:var(--mono); font-size:10px; text-transform:uppercase;}
  .session-date-badge .num{font-family:var(--display); font-size:20px; line-height:1;}
  .session-date-badge .mon{font-family:var(--mono); font-size:10px; text-transform:uppercase;}
  .session-card-info{flex:1;}
  .session-card-info .team{font-weight:700; font-size:14.5px; margin-bottom:4px;}
  .session-card-info .datetime{font-size:13px; color:var(--ink-soft);}
  .session-card-info .loc{font-size:13px; color:var(--ink-soft);}
  .session-week{font-family:var(--mono); font-size:11.5px; color:var(--ink-soft);}
  .session-card-bottom{
    display:flex; justify-content:space-between; align-items:center;
    padding:12px 20px; background:var(--chalk); border-top:1px solid rgba(21,32,24,0.08); font-size:13px;
  }
  .respond-btns{display:flex; gap:8px;}
  .respond-btns button{
    font-family:var(--mono); font-size:11.5px; text-transform:uppercase; padding:8px 16px; border-radius:var(--radius); border:none; cursor:pointer;
  }
  .respond-yes{background:var(--grass); color:var(--chalk);}
  .respond-no{background:var(--shirt-red); color:var(--chalk);}
  .respond-yes.selected, .respond-no.selected{outline:2px solid var(--gold); outline-offset:2px;}
  .status-pill{font-family:var(--mono); font-size:11px; text-transform:uppercase; padding:7px 16px; border-radius:var(--radius);}
  .status-pill.attended{background:var(--grass); color:var(--chalk);}
  .status-pill.missed{background:var(--shirt-red); color:var(--chalk);}

  /* ===== BILLING ===== */
  .billing-line{display:flex; justify-content:space-between; align-items:center; padding:14px 0; border-bottom:1px solid rgba(21,32,24,0.08);}
  .billing-line:last-child{border-bottom:none;}
  .billing-line .desc-title{font-weight:600; font-size:14px;}
  .billing-line .desc-sub{font-size:12.5px; color:var(--ink-soft);}
  .billing-line .amount{font-family:var(--display); font-size:18px; text-align:right;}
  .billing-line .paid-tag{font-family:var(--mono); font-size:10.5px; text-transform:uppercase; color:var(--grass); display:block; text-align:right; margin-top:2px;}
  .billing-table{width:100%; border-collapse:collapse; margin-bottom:28px;}
  .billing-table th{
    background:rgba(46,107,62,0.06); text-align:left; font-family:var(--mono); font-size:11px; text-transform:uppercase;
    padding:10px 14px; color:var(--ink-soft);
  }
  .billing-table td{padding:12px 14px; border-bottom:1px solid rgba(21,32,24,0.06); font-size:13.5px;}
  .billing-table .receipt-link{color:var(--grass); font-family:var(--mono); font-size:12px; text-transform:uppercase;}

  /* ===== MULTI-CHILD SWITCHER ===== */
  .switch-child-link{
    display:block; text-align:center; font-family:var(--mono); font-size:10.5px; text-transform:uppercase;
    letter-spacing:0.04em; color:var(--grass); margin-bottom:18px;
  }
  .switch-child-link:hover{color:var(--shirt-red);}
  .child-select-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
  .child-select-card{
    border:1px solid rgba(21,32,24,0.12); border-radius:var(--radius); padding:28px 24px;
    text-align:center; cursor:pointer; background:#fff; transition:border-color .15s, transform .15s;
  }
  .child-select-card:hover{border-color:var(--grass); transform:translateY(-2px);}
  .child-select-card .avatar-big{
    width:72px; height:72px; border-radius:50%; margin:0 auto 14px;
    background:var(--pitch); color:var(--gold); display:flex; align-items:center; justify-content:center;
    font-family:var(--display); font-size:24px;
  }
  .child-select-card h3{font-size:17px; margin-bottom:4px;}
  .child-select-card .team{font-family:var(--mono); font-size:12px; color:var(--ink-soft);}
  @media(max-width:600px){.child-select-grid{grid-template-columns:1fr;}}

  /* ===== RECEIPT MODAL ===== */
  .receipt-box{max-width:420px;}
  .receipt-header{display:flex; align-items:center; gap:12px; margin-bottom:18px;}
  .receipt-logo{width:40px; height:auto;}
  .receipt-club-name{font-family:var(--display); font-size:16px;}
  .receipt-club-sub{font-family:var(--mono); font-size:10px; color:var(--gold); text-transform:uppercase; letter-spacing:0.08em;}
  .receipt-title{font-family:var(--display); font-size:20px; margin-bottom:10px;}
  .receipt-meta{display:flex; justify-content:space-between; font-family:var(--mono); font-size:11.5px; color:var(--ink-soft); margin-bottom:14px;}
  .receipt-divider{border-top:1px dashed rgba(21,32,24,0.2); margin:14px 0;}
  .receipt-row{display:flex; justify-content:space-between; gap:16px; font-size:13.5px; padding:6px 0;}
  .receipt-row span{color:var(--ink-soft);}
  .receipt-row strong{text-align:right;}
  .receipt-total{display:flex; justify-content:space-between; align-items:center; margin-top:4px;}
  .receipt-total span{font-family:var(--mono); font-size:12px; text-transform:uppercase; color:var(--ink-soft);}
  .receipt-total strong{font-family:var(--display); font-size:24px; color:var(--shirt-red);}
  .receipt-status{
    display:inline-block; margin-top:10px; padding:6px 14px; border-radius:999px;
    background:rgba(46,107,62,0.1); color:var(--grass); font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:0.04em;
  }
  .receipt-footer{font-size:12px; color:var(--ink-soft); margin-top:18px; line-height:1.5;}
  .receipt-actions{display:flex; gap:10px; margin-top:20px;}
  .receipt-actions .btn{flex:1; text-align:center;}

  @media print {
    body.printing-receipt > *:not(#receiptModal){display:none !important;}
    body.printing-receipt #receiptModal{position:static; background:none; display:block !important; padding:0;}
    body.printing-receipt #receiptModal .modal-box{box-shadow:none; border:none; margin:0; max-width:none;}
    body.printing-receipt .modal-close, body.printing-receipt .receipt-actions{display:none !important;}
  }


  .legal-doc{max-width:760px;}
  .legal-doc .updated{font-family:var(--mono); font-size:12px; color:var(--ink-soft); margin-bottom:36px;}
  .legal-doc h2{font-family:var(--display); font-size:19px; letter-spacing:0.01em; margin:36px 0 14px;}
  .legal-doc h2:first-of-type{margin-top:0;}
  .legal-doc p{font-size:14.5px; line-height:1.7; color:var(--ink); margin-bottom:12px;}
  .legal-doc p.clause{padding-left:0;}
  .legal-doc strong{font-weight:700;}

/* ---- Track record: 5 stats + honours archive ---- */
.track-record .stat-grid.stat-grid-5{grid-template-columns:repeat(5,1fr); gap:20px;}
.track-record .stat-grid-5 .stat-big .label{white-space:normal; overflow:visible; text-overflow:clip; line-height:1.35;}
@media (max-width:820px){
  .track-record .stat-grid.stat-grid-5{grid-template-columns:1fr 1fr; gap:22px 16px;}
  .track-record .stat-grid-5 .stat-big:last-child{grid-column:1 / -1;}
}
.archive{margin-top:36px; border-top:1px solid var(--line); padding-top:28px;}
.archive-head{display:flex; flex-wrap:wrap; gap:16px; justify-content:space-between; align-items:flex-end;}
.archive-head h3{font-family:var(--display); font-size:clamp(22px,3vw,32px); color:var(--chalk); margin:0;}
.archive-sub{color:rgba(246,244,236,0.65); margin:4px 0 0; font-size:14px;}
.archive-tools{display:flex; flex-wrap:wrap; gap:10px; align-items:center;}
.archive-filters{display:flex; flex-wrap:wrap; gap:8px;}
.archive .chip,.archive .archive-toggle{
  font-family:var(--mono); font-size:12px; text-transform:uppercase; letter-spacing:.03em;
  min-height:44px; padding:0 16px; border-radius:999px; cursor:pointer;
  background:transparent; color:var(--chalk); border:1px solid rgba(246,244,236,.35);}
.archive .chip.is-on{background:var(--gold); color:var(--ink); border-color:var(--gold);}
.archive .archive-toggle{border-style:dashed;}
.archive button:focus-visible,.archive summary:focus-visible{outline:2px solid var(--gold); outline-offset:2px;}
.archive-note{font-size:12px; color:rgba(246,244,236,.55); margin:14px 0 0;}
.archive-note code{font-family:var(--mono); color:var(--gold);}
.archive-list{margin-top:16px; border-top:1px solid var(--line);}
.season{border-bottom:1px solid var(--line);}
.season summary{
  list-style:none; cursor:pointer; display:flex; align-items:center; gap:12px;
  min-height:56px; padding:10px 4px;}
.season summary::-webkit-details-marker{display:none;}
.season .s-year{font-family:var(--display); font-size:22px; color:var(--gold); min-width:92px;}
.season .s-count{font-family:var(--mono); font-size:12px; color:rgba(246,244,236,.75); text-transform:uppercase; flex:1;}
.season .s-caret{width:10px; height:10px; border-right:2px solid var(--chalk); border-bottom:2px solid var(--chalk); transform:rotate(45deg); transition:transform .2s; margin-right:6px;}
.season[open] .s-caret{transform:rotate(-135deg);}
.honours{list-style:none; margin:0; padding:0 4px 14px;}
.honour{display:grid; grid-template-columns:1.2fr 1.4fr 1.4fr; gap:6px 20px; padding:12px 0; border-top:1px dashed rgba(246,244,236,.15);}
.honour .h-lbl{display:none; font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:.04em; color:rgba(246,244,236,.5);}
.honour .h-team{font-weight:600; color:var(--chalk);}
.honour .h-comp{color:rgba(246,244,236,.8);}
.honour .h-won{color:var(--gold);}
.honour .tag{display:inline-block; font-family:var(--mono); font-size:10px; text-transform:uppercase; border:1px solid currentColor; border-radius:4px; padding:1px 6px; margin-left:8px; color:rgba(246,244,236,.7);}
@media (max-width:640px){
  .archive-tools{width:100%;}
  .archive-toggle{width:100%;}
  .season .s-year{min-width:84px; font-size:20px;}
  .honour{grid-template-columns:1fr; gap:2px; padding:14px 0;}
  .honour .h-lbl{display:block; margin-top:6px;}
  .honour .h-team{font-size:16px;}
}
.archive-empty{padding:20px 0; color:rgba(246,244,236,.7);}

.honours-teaser{margin-top:32px; border-top:1px solid var(--line); padding-top:28px; display:flex; flex-wrap:wrap; gap:20px 32px; align-items:center; justify-content:space-between;}
.honours-teaser h3{font-family:var(--display); font-size:clamp(22px,3vw,32px); color:var(--chalk); margin:0 0 6px;}
.honours-teaser p{color:rgba(246,244,236,.75); margin:0; max-width:620px;}
@media (max-width:640px){.honours-teaser .btn{width:100%; text-align:center;}}
.honours-page{padding:48px 0 64px;}
.honours-page .honours-intro{color:rgba(246,244,236,.75); margin:0 0 24px; max-width:640px;}
.honours-page .stat-grid{border-top:0; padding-top:0;}
.honours-page .archive{margin-top:40px;}

header.site .btn-login, header.site .btn-login:visited{background:transparent; color:var(--chalk); border:1.5px solid var(--shirt-red); padding:11px 22px; font-size:12.5px; margin:0; width:auto;}
header.site .btn-login:hover{background:var(--shirt-red); color:var(--chalk);}

header.site .account-link{font-family:var(--mono); font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase; color:var(--gold); white-space:nowrap; font-weight:600;}
header.site .account-link:hover{color:var(--chalk);}
@media(max-width:1360px){ header.site .nav-right{gap:12px;} header.site .nav-right nav.primary{gap:13px;} header.site .nav-row{gap:20px;} }
