@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;500;600;700;800&family=Teko:wght@500;600;700&display=swap');
body{font-family:'Nunito Sans',Arial,sans-serif}.hero:after{background:linear-gradient(90deg,rgba(0,0,0,.2),transparent 60%),url('../assets/images/hero-course.jpg') center/cover}.activity-running{background-image:linear-gradient(150deg,transparent 50%,#4c1c46),url('../assets/images/course-a-pied.jpg')}.activity-cycling{background-image:linear-gradient(150deg,transparent 50%,#4c1c46),url('../assets/images/velo-vtt.jpg')}.activity-team{background-image:linear-gradient(150deg,transparent 50%,#4c1c46),url('../assets/images/unihockey.jpg')}.activity-image{background-color:#772b6f}
.calendar-loading{grid-column:1/-1;padding:25px 0;color:#777;font-size:13px}
.site-header>.brand{width:220px;height:54px;background:url('../assets/logo/logo-principal.svg') center/contain no-repeat;font-size:0}.site-header>.brand>*{display:none}
.site-header{height:92px}.main-nav{gap:23px}.main-nav a{white-space:nowrap}.activities .section-heading>p,.rhythm .section-heading>p{font-size:15px;line-height:1.6}.activity-body{padding:22px 24px 28px}.activity-body p{font-size:15px;line-height:1.55}.activity-body h3{font-size:42px}.tag{font-size:11px}.training-heading{margin-bottom:35px}.training-note{margin-top:26px;font-size:15px;color:#e6cfe3}.training-note span{font-weight:800;color:#fff;margin-right:6px}.agenda-heading{margin-bottom:42px}.agenda-heading .button{margin-bottom:5px}.upcoming .mini-events>div{min-height:145px}.upcoming .mini-events strong{font-size:32px}.event-links{display:flex;align-items:center;gap:25px}.race-text-link{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#f2dced}.race-text-link span{font-size:18px;margin-left:8px}.footer{grid-template-columns:1fr 1fr 1fr}.footer-brand{display:none}.footer-contact{display:flex;flex-direction:column;gap:14px;font-size:12px;line-height:1.5}.footer-contact strong{font:600 27px/.8 'Teko';letter-spacing:.04em}.footer-note{font-size:12px}.agenda-page{background:var(--paper);min-height:70vh}.agenda-hero{background:var(--violet);color:#fff;padding:115px 10vw 95px;position:relative;overflow:hidden}.agenda-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(0,0,0,.35),transparent 70%),url('../assets/images/hero-course.jpg') center/cover;opacity:.2}.agenda-hero>*{position:relative;z-index:1}.agenda-hero .section-label{color:#e8cce5}.agenda-hero h1{font:600 clamp(82px,12vw,150px)/.76 'Teko';margin:0 0 30px}.agenda-hero h1 em{color:var(--lilac);font-style:normal}.agenda-hero p{font-size:16px;max-width:430px;line-height:1.6}.agenda-list-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:48px}.agenda-list-head h2{font:600 clamp(62px,8vw,100px)/.8 'Teko';margin:0}.all-calendar-events{border-top:1px solid #bdb5bd}.all-calendar-events>div{min-height:125px;border-bottom:1px solid #bdb5bd;display:grid;grid-template-columns:80px 80px 1fr 240px;gap:18px;align-items:center}.all-calendar-events b{font:600 64px/.75 'Teko';color:var(--magenta);text-align:right}.all-calendar-events span{font-size:11px;font-weight:800;color:var(--magenta);letter-spacing:.12em}.all-calendar-events strong{font:600 34px/1 'Teko'}.all-calendar-events small{font-size:13px;color:#777}.calendar-loading{grid-column:1/-1;padding:25px 0;color:#777;font-size:14px}
@media(max-width:800px){.site-header{height:70px}.site-header>.brand{width:190px;height:45px}.event-links{display:block}.race-text-link{display:inline-block;margin-top:22px}.footer{grid-template-columns:1fr;gap:30px}.footer-note{text-align:left}.agenda-hero{padding:80px 7vw 70px}.agenda-hero h1{font-size:100px}.agenda-list-head{display:block}.agenda-list-head .text-link{display:inline-block;margin-top:28px}.all-calendar-events>div{grid-template-columns:55px 55px 1fr;gap:8px;min-height:120px}.all-calendar-events b{font-size:52px}.all-calendar-events strong{font-size:29px}.all-calendar-events small{grid-column:3;font-size:11px}.upcoming .mini-events>div{min-height:125px}}
.rhythm-card.tuesday{background:#160b19;border:2px solid var(--lilac);box-shadow:0 18px 40px rgba(0,0,0,.2);transform:translateY(-8px)}
.rhythm-card.tuesday .rhythm-day{color:#f0bfe9}.rhythm-card.tuesday h3{font-size:58px}.rhythm-card.tuesday p{max-width:560px;font-size:16px;min-height:0}.rhythm-card.tuesday p strong{display:inline;font-size:inherit;margin:0}.rhythm-card.thursday{background:#9f4c9c}.training-actions{display:flex;align-items:center;gap:22px;margin-top:20px}.training-actions .button{font-size:11px;padding:14px 17px}.place-link{margin-top:0!important}.button-outline{border:1px solid #fff;color:#fff}.join-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.join-actions .text-link{margin-top:0}.join-grid p{font-size:17px;line-height:1.55}
@media(max-width:800px){.rhythm-card.tuesday{transform:none}.rhythm-card.tuesday h3{font-size:49px}.rhythm-card.tuesday p{font-size:15px}.training-actions{align-items:flex-start;flex-direction:column;gap:15px}.join-actions{align-items:flex-start;flex-direction:column;gap:18px}}
.activities{background:var(--ink);color:#fff}.activities .section-label{color:var(--lilac)}.activities .section-heading>p{max-width:450px}.activity-grid{grid-template-columns:repeat(6,1fr);gap:20px}.activity-card{grid-column:span 2;background:transparent;border-radius:18px;overflow:hidden}.activity-card.wide{grid-column:span 3}.activity-image{height:312px;border:1px solid #fff;border-radius:18px;overflow:hidden;background-position:center}.activity-card.wide .activity-image{height:270px}.activity-image:after{background:linear-gradient(180deg,transparent 26%,rgba(15,7,17,.88) 100%);opacity:1}.activity-image span{top:14px;right:18px;font-size:42px}.activity-overlay{position:absolute;left:18px;right:18px;bottom:18px;z-index:2}.activity-overlay .tag{display:inline-block;background:#7d477f;color:#f7dff2;border-radius:999px;padding:7px 11px;font-size:10px;margin-bottom:14px}.activity-overlay h3{font-size:39px;color:#fff;margin:0 0 12px;text-transform:uppercase}.activity-overlay p{font-size:14px;line-height:1.55;margin:0;max-width:420px;color:#fff}.activity-trophy{background-image:url('../assets/images/course-a-pied.jpg')}.activity-cup{background-image:linear-gradient(135deg,rgba(0,0,0,.1),rgba(0,0,0,.4)),url('../assets/images/unihockey.jpg')}.card-link{display:inline-block;margin-top:15px;background:#fff;color:#19101a!important;border-radius:999px;padding:11px 15px;font-size:10px!important;text-transform:uppercase;letter-spacing:.06em}
.rhythm-grid{align-items:stretch}.rhythm-card{min-height:380px}.rhythm-card.thursday{background:#9f4c9c;border:2px solid var(--lilac)}.rhythm-card.tuesday{transform:none}.rhythm-day{display:block;font:600 70px/.8 'Teko';letter-spacing:.02em;color:#f0bfe9}.rhythm-card h3{margin:22px 0 18px}.rhythm-card p{font-size:15px;line-height:1.6;min-height:108px}.rhythm-card strong{font-size:14px}.training-actions .button{border-radius:999px}.join-actions .text-link{color:var(--plum)}
@media(max-width:800px){.activity-grid{display:block}.activity-card,.activity-card.wide{margin-bottom:18px}.activity-image,.activity-card.wide .activity-image{height:310px}.activity-overlay h3{font-size:35px}.rhythm-day{font-size:58px}.rhythm-card{min-height:0}.rhythm-card p{min-height:0}.rhythm-card.thursday{margin-bottom:0}}

/* Activity badges: keep the category visible at the top-left of each card. */
.activity-image > .tag{position:absolute;top:18px;left:18px;right:auto;z-index:3;display:inline-block;background:#7d477f;color:#f7dff2;border-radius:999px;padding:7px 11px;font-size:10px;line-height:1.1;font-weight:800;letter-spacing:.08em;white-space:nowrap}
