:root{--ink:#10231a;--muted:#40584d;--paper:#fffdf5;--white:#fff;--green:#075f3d;--on-green:#fff;--on-green-muted:#d7e7df;--on-lime:#16251e;--lime:#d9ee5f;--mint:#e2f1e7;--orange:#b83d12;--line:#aabbb1;--soft:#f1f5ef;--callout:#fff0e8;--pitch:#17704c;--topbar:rgba(255,253,245,.96);--shadow:0 12px 35px rgba(16,35,26,.1);font-family:"Bricolage Grotesque",system-ui,sans-serif;font-optical-sizing:auto;color:var(--ink);background:var(--paper)}
:root[data-theme="dark"]{--ink:#f4f8f2;--muted:#c5d3ca;--paper:#07120e;--white:#102019;--green:#8be0b5;--on-green:#07120e;--on-green-muted:#244b39;--on-lime:#16251e;--lime:#d9ee5f;--mint:#193b2c;--orange:#ff9b70;--line:#486155;--soft:#15271f;--callout:#351f18;--pitch:#115d3e;--topbar:rgba(7,18,14,.96);--shadow:0 12px 35px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-size:17px}button,input,select,textarea,code{font-family:inherit}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));background:var(--topbar);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{font:800 20px "Bricolage Grotesque",system-ui,sans-serif;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:10px}.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--green);color:var(--on-green);font:800 18px "Bricolage Grotesque",system-ui,sans-serif;transform:rotate(-4deg)}.brand-mark.small{width:25px;height:25px;font-size:13px;border-radius:7px}.topbar nav{display:flex;gap:6px}.topbar nav a{padding:9px 12px;border-radius:9px;text-decoration:none;color:var(--muted);font-weight:600;font-size:14px}.topbar nav a:hover,.topbar nav a.active{background:var(--mint);color:var(--green)}.menu-button{display:none}.page{max-width:1180px;margin:auto;padding:46px 24px 80px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:var(--green)}h1,h2,h3{font-family:"Bricolage Grotesque",system-ui,sans-serif;margin-top:0;letter-spacing:-.03em}h1{font-size:clamp(40px,6vw,72px);line-height:1.02;max-width:850px;margin-bottom:22px}h2{font-size:clamp(28px,4vw,42px)}h3{font-size:19px}.lead{font-size:19px;line-height:1.65;color:var(--muted);max-width:740px}.hero{padding:38px 0 24px;position:relative}.hero-tag{display:inline-flex;gap:8px;align-items:center;background:var(--lime);padding:8px 12px;border-radius:999px;font-weight:700;color:var(--on-lime);font-size:13px}.hero-grid,.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}.panel,.card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}.panel.green{background:var(--green);color:var(--on-green);border:0}.panel.green .muted{color:var(--on-green-muted)}.kicker{font-size:13px;color:var(--muted);font-weight:700}.metric{font:800 38px "Bricolage Grotesque",system-ui,sans-serif}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;gap:8px;text-decoration:none;border:0;border-radius:10px;padding:11px 15px;background:var(--green);color:var(--on-green);font:700 14px "Bricolage Grotesque",system-ui,sans-serif;cursor:pointer}.button.secondary{background:var(--mint);color:var(--green)}.button.ghost{background:transparent;border:1px solid var(--on-green-muted)}.section-head{display:flex;justify-content:space-between;align-items:end;margin:48px 0 18px}.section-head h2{margin-bottom:0}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card p{line-height:1.55;color:var(--muted)}.number{font:800 13px "Bricolage Grotesque",system-ui,sans-serif;color:var(--on-lime);background:var(--lime);display:inline-grid;place-items:center;width:29px;height:29px;border-radius:9px;margin-bottom:16px}.timeline{display:grid;gap:10px}.timeline-row{display:grid;grid-template-columns:76px 1fr auto;gap:16px;align-items:start;border-left:4px solid var(--mint);padding:12px 15px;background:var(--white);border-radius:0 12px 12px 0}.timeline-row strong{color:var(--green)}.timeline-row p{margin:4px 0;color:var(--muted)}.pill{font-size:12px;font-weight:700;background:var(--mint);color:var(--green);padding:5px 9px;border-radius:999px}.callout{border-left:5px solid var(--orange);padding:18px 20px;background:var(--callout);border-radius:0 14px 14px 0}.pitch{background:var(--pitch);border-radius:16px;padding:18px;min-height:280px;display:grid;place-items:center}.pitch svg{width:100%;max-height:290px}.activity-list{display:grid;gap:12px}.activity{background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden}.activity summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:max-content 1fr auto;gap:14px;align-items:center;padding:18px}.activity .icon{width:auto;min-width:38px;padding-inline:10px}.activity summary::-webkit-details-marker{display:none}.activity summary:after{content:"+";font-size:24px}.activity[open] summary:after{content:"–"}.activity-body{border-top:1px solid var(--line);padding:20px 24px;display:grid;grid-template-columns:1.3fr 1fr;gap:28px}.activity-body ul{padding-left:20px;line-height:1.7}.week-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.week{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--white);min-height:132px}.week.current{background:var(--green);color:var(--on-green)}.week .week-no{font:800 12px "Bricolage Grotesque",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.1em;opacity:.65}.week h3{margin:12px 0 6px}.checklist{display:grid;gap:8px}.check{display:flex;gap:10px;padding:11px;background:var(--soft);border-radius:10px}.check input{accent-color:var(--green);width:18px}.notes{width:100%;background:var(--white);color:var(--ink);min-height:170px;border:1px solid var(--line);border-radius:12px;padding:14px;font:inherit;resize:vertical}.resource{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--line)}.resource:last-child{border:0}.resource a{color:var(--green);font-weight:700}.icon{width:38px;height:38px;flex:0 0 auto;border-radius:10px;background:var(--mint);display:grid;place-items:center}.tabs{display:flex;gap:8px;overflow:auto;margin:18px 0}.tabs button{white-space:nowrap;border:1px solid var(--line);background:var(--white);border-radius:999px;padding:9px 14px;font:600 14px inherit;cursor:pointer}.tabs button.active{background:var(--green);color:var(--on-green);border-color:var(--green)}footer{border-top:1px solid var(--line);padding:28px max(24px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}footer p{max-width:500px;text-align:right}@media(max-width:800px){.menu-button{display:block;border:1px solid var(--line);background:var(--white);padding:8px 11px;border-radius:8px}.topbar nav{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;background:var(--paper);padding:14px 24px;border-bottom:1px solid var(--line)}.topbar nav.open{display:flex}.hero-grid,.two-col,.activity-body{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(2,1fr)}.timeline-row{grid-template-columns:60px 1fr}.timeline-row .pill{display:none}footer{align-items:flex-start;gap:16px;flex-direction:column}footer p{text-align:left}.page{padding-top:28px}}
@media print{.topbar,footer,.button,.tabs{display:none!important}.page{max-width:none;padding:10px}.panel,.card{box-shadow:none;break-inside:avoid}.activity:not([open]){display:none}}
.match{display:flex;align-items:center;justify-content:space-between;gap:24px}.match h3{margin:10px 0 4px}.match>div:last-child{text-align:right}.reflection-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.reflection-form label,.reflection-form fieldset{font-weight:700}.reflection-form input[type=date],.reflection-form select,.reflection-form textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:var(--white);padding:11px;font:inherit}.reflection-form textarea{min-height:95px;resize:vertical}.reflection-form .wide{grid-column:1/-1}.reflection-form fieldset{border:1px solid var(--line);border-radius:12px;padding:14px}.check-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:8px}.check-row label{font-weight:500}@media(max-width:600px){.match{align-items:flex-start;flex-direction:column}.match>div:last-child{text-align:left}.reflection-form{grid-template-columns:1fr}.reflection-form .wide{grid-column:auto}.check-row{grid-template-columns:1fr}}
.rule-table{display:grid;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--white)}.rule-row{display:grid;grid-template-columns:130px 1fr 1.2fr;gap:18px;padding:16px 20px;border-bottom:1px solid var(--line);align-items:start}.rule-row:last-child{border:0}.rule-row small{color:var(--muted);line-height:1.5}.catalogue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.catalogue-card{box-shadow:none}.catalogue-card .pill{display:inline-block;margin-bottom:8px}.catalogue-card a{color:var(--green);font-weight:700}.checklist-static ul{columns:2;line-height:1.8}@media(max-width:800px){.rule-row{grid-template-columns:1fr}.catalogue-grid{grid-template-columns:1fr 1fr}.checklist-static ul{columns:1}}@media(max-width:560px){.catalogue-grid{grid-template-columns:1fr}}.theme-toggle{min-height:44px;border:1px solid var(--line);border-radius:10px;padding:8px 12px;background:var(--white);color:var(--ink);font:700 14px inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.theme-toggle:hover,.theme-toggle:focus-visible{background:var(--mint);color:var(--green)}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media(prefers-contrast:more){:root{--line:#687b70}.muted,.lead,.card p{color:var(--ink)}}@media(max-width:800px){.topbar nav a,.theme-toggle{min-height:44px}.theme-toggle{justify-content:flex-start}}
.activity-facts{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.activity-diagram{margin:0 0 18px}.activity-diagram img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid var(--line);background:var(--pitch)}.adapt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.adapt-grid>div,.safety-note,.activity-source{padding:14px;border-radius:12px;background:var(--soft)}.adapt-grid ul,.safety-note ul{margin:7px 0 0;padding-left:18px;line-height:1.45}.safety-note{margin-top:12px;border-left:4px solid var(--orange)}.activity-source{margin-top:12px}.activity-source p{margin:7px 0 0}.activity-source a{color:var(--green);font-weight:700}.session-tabs{margin-top:0;margin-bottom:24px}@media(max-width:600px){.adapt-grid{grid-template-columns:1fr}.activity-body{padding:18px}.activity summary{grid-template-columns:max-content 1fr auto;padding:15px}.activity .icon{width:34px;height:34px;font-size:11px}}
.activity-filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:14px;align-items:end;margin:24px 0}.activity-filters label{display:grid;gap:7px;font-size:14px;font-weight:700}.activity-filters input[type=search],.activity-filters input[type=number],.activity-filters select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);padding:9px 11px;font:600 16px inherit}.activity-filters .filter-check{display:flex;min-height:44px;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.activity-filters .filter-check input{width:20px;height:20px;accent-color:var(--green)}.activity-filters .button{min-height:44px;justify-content:center}.activity-results-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:28px 0 14px}.empty-state{text-align:center;padding-block:40px}.empty-state p{color:var(--muted)}@media(max-width:950px){.activity-filters{grid-template-columns:repeat(3,1fr)}.filter-search{grid-column:span 2}}@media(max-width:600px){.activity-filters{grid-template-columns:1fr 1fr;padding:18px;gap:12px}.filter-search{grid-column:1/-1}.activity-filters .filter-check,.activity-filters .button{grid-column:1/-1}.activity-results-head{align-items:flex-start;flex-direction:column;gap:4px}}@media print{.activity-filters,.activity-results-head{display:none!important}}

.hero + .hero-grid{margin-top:-32px}.hero-aside{display:grid;gap:18px;position:relative}.home-schedule{margin-top:30px}.hero-illustration{display:grid;place-items:center;min-height:218px;margin:0;padding:12px;background:var(--mint);border:1px solid var(--line);border-radius:18px;overflow:hidden}.hero-illustration img{display:block;width:100%;max-height:270px;object-fit:contain}.team-crest{position:absolute;right:14px;bottom:14px;width:112px;margin:0;padding:6px;background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);line-height:0}.team-crest img{display:block;width:100%;height:auto;border-radius:10px}.schedule-status{margin:18px 0 0;font-size:14px}.week-session{display:block;margin-top:10px;color:inherit;font-size:12px;font-weight:700;line-height:1.35;text-decoration:underline;text-underline-offset:3px}.week.current .week-session{color:var(--on-green)}.week-variation{display:block;margin-top:3px;font-weight:500;line-height:1.35}

@media(max-width:800px){.team-crest{width:88px;right:12px;bottom:12px}}

.brand-logo{display:inline-block;width:38px;height:38px;flex:0 0 auto;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--white);vertical-align:middle}.brand-logo img{display:block;width:78px;max-width:none;height:auto;transform:translate(-20px,-10px)}.brand-logo.small{width:25px;height:25px;border-radius:7px}.brand-logo.small img{width:52px;transform:translate(-14px,-7px)}

.calendar-team-summary{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.calendar-team-summary h2{margin-bottom:12px}.calendar-team-summary p{margin:8px 0}.calendar-team-crest{width:156px;margin:0;padding:8px;background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);line-height:0}.calendar-team-crest img{display:block;width:100%;height:auto;border-radius:10px}
@media(max-width:600px){.calendar-team-summary{grid-template-columns:1fr}.calendar-team-crest{width:128px;justify-self:start}}

.coach-about-page h1{font-size:clamp(34px,5vw,58px)}.coach-about-page h2{font-size:clamp(23px,3vw,34px)}.coach-about-page h3{font-size:18px}.coach-about .panel h2{margin-top:28px;font-size:21px;letter-spacing:-.02em}.coach-about .panel h2:first-of-type{margin-top:24px}.coach-club-experience{margin-top:18px;font-weight:600}.coach-plan{margin:28px 0 0}.coach-about-crest{width:132px;margin:18px 0 0;padding:7px;background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);line-height:0}.coach-about-crest img{display:block;width:100%;height:auto;border-radius:9px}.coach-about-photo{width:min(100%,330px);margin:0 auto;padding:10px;background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.coach-about-photo img{display:block;width:100%;height:auto;border-radius:12px}.coach-about-photo figcaption{padding:10px 4px 0;color:var(--muted);font-size:14px}.coach-approach{margin-top:52px}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
