.calendar-intro{padding-bottom:45px}.calendar-intro h1{font-size:clamp(75px,9.4vw,150px);line-height:.88;letter-spacing:-.035em}.calendar-intro h1 span{color:var(--pink-dark)}.calendar-intro .intro-bottom{align-items:flex-end}.calendar-intro .intro-bottom p{max-width:570px}.calendar-season{font-size:10px;letter-spacing:.1em;border:1px solid var(--line);padding:13px 17px;white-space:nowrap}
.next-meetup{background:var(--navy);color:var(--paper);padding:32px var(--pad);display:grid;grid-template-columns:150px 1fr auto;gap:30px;align-items:center}.meetup-label{color:var(--pink);font-size:10px;line-height:1.7;letter-spacing:.1em}.meetup-label strong{display:block;font-family:Display;font-size:37px;line-height:1.1;font-weight:700;letter-spacing:0}.next-meetup h2{font-size:34px;line-height:1.1}.next-meetup p:not(.meetup-label){font-size:12px;line-height:1.6;margin-top:8px}.next-meetup #meetup-location{color:#bfc9d1;margin-top:3px}.next-meetup .outline-button{border-color:#7e8993;color:var(--paper);font-size:11px}.next-meetup .outline-button:hover{background:var(--paper);color:var(--navy)}
.calendar-section{padding-top:45px;padding-bottom:65px}.calendar-section .section-top{margin-bottom:24px}.calendar-section .section-top>span{font-size:10px;color:var(--muted)}.calendar-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.cal-filter{display:flex;align-items:center;gap:10px;background:transparent;border:1px solid var(--line);border-radius:30px;padding:12px 17px;font-size:12px}.cal-filter[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.filter-count{font-size:9px;opacity:.65}.event-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--category-color,var(--navy));flex:none}.category-course{--category-color:#a42c52;--category-light:#fae6ec}.category-sport{--category-color:#2a6b58;--category-light:#e4efe9}.category-rencontre{--category-color:#7454a0;--category-light:#eee7f6}
.calendar-shell{background:white;border:1px solid var(--line)}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 25px;border-bottom:1px solid var(--line)}.calendar-toolbar h2{font-family:Display;font-size:34px;text-transform:uppercase;line-height:1}.month-navigation,.calendar-controls{display:flex;align-items:center;gap:10px}.month-arrow{background:var(--paper);width:36px;height:36px;font-size:20px;border:1px solid var(--line);display:grid;place-items:center}.month-arrow:hover{background:var(--navy);color:white}.calendar-controls>button{background:transparent;border:1px solid var(--line);padding:9px 12px;font-size:11px;min-height:36px}.calendar-controls label{font-size:0}.calendar-controls input{background:var(--paper);border:1px solid var(--line);padding:8px;font:11px Sans,Arial;max-width:160px;color:var(--navy);min-height:36px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{background:#f9f8f4;border-bottom:1px solid var(--line)}.calendar-weekdays span{text-align:center;padding:14px 3px;font-size:9px;font-weight:700;letter-spacing:.08em}.calendar-day{background:white;min-height:105px;padding:11px;text-align:left;border:0;border-right:1px solid #e7e7e0;border-bottom:1px solid #e7e7e0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;color:var(--navy);min-width:0}.calendar-day:nth-child(7n){border-right:0}.calendar-day:not(.empty):hover{background:#f8f6f0}.calendar-day.empty{background:#faf9f6}.day-number{font-size:13px;line-height:1;display:grid;place-items:center;width:26px;height:26px;border-radius:50%}.calendar-day.is-today .day-number{outline:1px solid var(--pink-dark);color:var(--pink-dark);font-weight:700}.calendar-day.is-selected{background:#f7e8ed;box-shadow:inset 0 0 0 2px var(--pink-dark)}.day-events{display:grid;gap:4px;width:100%}.day-event{background:var(--category-light);color:var(--category-color);padding:5px 6px;display:flex;gap:5px;align-items:center;min-width:0}.day-event .event-dot{width:5px;height:5px}.day-event-title{font-size:9px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.calendar-note{font-size:10px;color:var(--muted);line-height:1.6;margin-top:12px}.agenda-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:40px 0 22px}.agenda-heading h2{font-size:32px;line-height:1.1}.agenda-heading p{font-size:10px;color:var(--muted);margin-top:7px}.agenda-heading-actions{display:flex;gap:18px;align-items:center}.agenda-heading-actions .text-link{font-size:10px}.agenda-heading-actions .outline-button{font-size:10px}.agenda-list{display:grid;gap:18px}.agenda-card{display:grid;grid-template-columns:105px 1fr;gap:27px;background:white;border:1px solid var(--line);border-left:4px solid var(--category-color);padding:27px}.agenda-date{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;border-right:1px solid var(--line);padding-right:25px;color:var(--category-color);text-transform:uppercase}.agenda-date strong{font-family:Display;font-size:61px;line-height:1}.agenda-date>span{font-size:12px;font-weight:700;margin-top:5px}.agenda-date>small{font-size:10px;color:var(--muted);margin-top:4px}.agenda-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.category-tag{color:var(--category-color);background:var(--category-light);border:1px solid var(--category-light);border-radius:18px;padding:6px 10px;font-size:9px;font-weight:700}.open-tag{font-size:9px;color:#2a6b58;border:1px solid #b6d3c6;border-radius:18px;padding:6px 10px}.agenda-body h3{font-size:35px;line-height:1.1;margin:15px 0}.agenda-time{font-size:12px;font-weight:700;text-transform:capitalize}.agenda-place{font-size:12px;color:var(--muted);line-height:1.5;margin-top:7px}.agenda-description{font-size:15px;line-height:1.6;max-width:760px;margin-top:17px;white-space:pre-line}.agenda-actions{display:flex;flex-wrap:wrap;gap:25px;margin-top:22px}.agenda-actions .text-link{font-size:11px;background:transparent;padding:0;gap:10px}.agenda-empty{border:1px dashed var(--line);padding:45px;text-align:center}.empty-star{font-size:45px;color:var(--pink-dark)}.agenda-empty h3{font-size:34px;margin:12px 0}.agenda-empty p{font-size:14px;line-height:1.6;max-width:450px;margin:auto}.calendar-status{font-size:14px;line-height:1.7}.calendar-status:empty{display:none}.calendar-management{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:40px}.calendar-management p{font-size:12px;color:var(--muted);line-height:1.6;max-width:580px}.calendar-management a{font-size:10px;white-space:nowrap}
.calendar-home{background:var(--pink);display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:center}.calendar-home h2{font-size:clamp(55px,6vw,95px);line-height:.9;margin-top:20px}.calendar-home p:not(.eyebrow){font-size:17px;line-height:1.6;margin-bottom:25px;max-width:460px}.calendar-home .calendar-home-categories{font-size:10px;letter-spacing:.04em;margin:0 0 23px}
.admin-intro h1{font-size:clamp(60px,7.5vw,115px)}.admin-gate{border:1px solid var(--line);padding:35px;background:white;max-width:800px}.admin-gate h2{font-size:38px;margin-bottom:20px}.admin-gate p{font-size:16px;line-height:1.6;margin-bottom:24px}.admin-grid{display:grid;grid-template-columns:1fr .85fr;gap:35px;align-items:start}.editor-panel{background:white;border:1px solid var(--line);padding:30px;scroll-margin-top:105px}.editor-panel h2{font-size:35px;margin-bottom:24px}.event-form{display:grid;gap:18px}.event-form label:not(.checkbox-label){display:grid;gap:8px;font-size:10px;letter-spacing:.04em;font-weight:700}.event-form input:not([type=checkbox]),.event-form textarea,.event-form select{width:100%;min-width:0;background:#f9f8f4;border:1px solid #c9cdc5;border-radius:0;padding:12px;color:var(--navy);font:14px Sans,Arial;min-height:45px}.event-form textarea{resize:vertical;line-height:1.5}.event-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkbox-label{display:flex;gap:10px;align-items:center;font-size:12px;line-height:1.5}.checkbox-label input{width:17px;height:17px;accent-color:var(--pink-dark);flex:none}.event-form-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:5px}.event-form-actions .button{font-size:11px;min-height:45px}.event-form-actions .text-link{font-size:11px;background:transparent}.event-form-note{font-size:11px;line-height:1.6;color:var(--muted);font-weight:400}.admin-status{font-size:13px;line-height:1.6;margin:20px 0;color:#2a6b58}.admin-status:empty{display:none}.admin-status.is-error{color:#a42c52}.admin-list-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.admin-list-heading h2{font-size:30px}.admin-list-heading p{font-size:10px;color:var(--muted);margin-top:5px}.admin-list-heading button{font-size:10px}.admin-event-list{display:grid;gap:14px;margin-top:20px}.admin-event{border:1px solid var(--line);border-left:3px solid var(--category-color);background:white;padding:22px}.admin-event h3{font-size:26px;line-height:1.2;margin:14px 0 8px}.admin-event-copy>p{font-size:11px;line-height:1.6;color:var(--muted)}.admin-event-actions{display:flex;gap:20px;align-items:center;margin-top:18px}.admin-event-actions .outline-button{font-size:10px;padding:9px 13px}.archive-button{font-size:10px;background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.admin-empty{font-size:13px;line-height:1.5;color:var(--muted)}
.news-press-art{background:var(--pink);color:var(--navy);position:relative;min-height:300px;padding:45px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.news-press-art>span{font-size:10px;letter-spacing:.14em}.news-press-art strong{font-family:Display;font-size:clamp(60px,7vw,100px);line-height:.85;letter-spacing:-.025em}.news-press-art small{font-size:12px;line-height:1.6;margin-top:25px}.news-press-art i{position:absolute;right:25px;top:40px;font-size:60px;font-style:normal}
@media(min-width:1051px){.header nav{gap:clamp(12px,1.4vw,22px)}.header nav>a{font-size:11px}}
@media(max-width:900px){.calendar-toolbar{padding:20px}.calendar-toolbar h2{font-size:29px}.calendar-controls{gap:6px}.calendar-day{min-height:85px;padding:7px}.day-event-title{font-size:8px}.next-meetup{grid-template-columns:120px 1fr;gap:20px}.next-meetup>button{grid-column:2;justify-self:start}.next-meetup h2{font-size:30px}.calendar-home{gap:30px}.admin-grid{grid-template-columns:1fr}.admin-list-panel{margin-top:10px}}
@media(max-width:640px){.calendar-intro h1{font-size:clamp(62px,14vw,90px)}.calendar-intro .intro-bottom{display:block}.calendar-season{display:inline-block;margin-top:22px;font-size:9px}.calendar-section{padding-top:30px}.calendar-section .section-top{display:block;line-height:1.6}.calendar-section .section-top>span{display:block;margin-top:8px;font-size:9px}.calendar-filters{gap:7px}.cal-filter{padding:10px 12px;font-size:10px;gap:7px}.filter-count{font-size:8px}.calendar-toolbar{padding:16px 12px;display:block}.calendar-toolbar h2{font-size:28px}.month-navigation{justify-content:space-between}.calendar-controls{margin-top:15px;justify-content:space-between}.calendar-controls input{font-size:11px;max-width:170px}.calendar-weekdays span{font-size:8px;padding:11px 0}.calendar-day{min-height:61px;padding:5px 3px;gap:6px}.day-number{font-size:11px;width:22px;height:22px}.day-event{background:transparent;padding:0;justify-content:center}.day-event .event-dot{width:6px;height:6px}.day-event-title{display:none}.day-events{display:flex;justify-content:center;gap:3px;flex-wrap:wrap}.agenda-heading{align-items:flex-start;gap:16px;flex-direction:column;margin-top:30px}.agenda-heading h2{font-size:29px}.agenda-heading-actions{width:100%;justify-content:space-between}.agenda-heading-actions .outline-button{padding:10px 12px}.agenda-card{grid-template-columns:50px 1fr;gap:16px;padding:20px 16px}.agenda-date{padding-right:13px}.agenda-date strong{font-size:39px}.agenda-date>span{font-size:10px}.agenda-date>small{font-size:8px}.category-tag,.open-tag{font-size:8px;padding:5px 8px}.agenda-body h3{font-size:28px;margin-top:14px}.agenda-time,.agenda-place{font-size:11px;line-height:1.6}.agenda-description{font-size:14px}.agenda-actions{gap:17px}.agenda-actions .text-link{font-size:10px}.agenda-empty{padding:30px 20px}.calendar-management{display:block}.calendar-management a{display:inline-flex;margin-top:18px}.calendar-note{font-size:9px}.next-meetup{padding:25px var(--pad);grid-template-columns:1fr;gap:15px}.meetup-label{display:flex;gap:12px;align-items:center;font-size:8px}.meetup-label strong{font-size:30px}.next-meetup>button{grid-column:1}.next-meetup h2{font-size:32px}.next-meetup p:not(.meetup-label){font-size:11px}.calendar-home{grid-template-columns:1fr;gap:28px}.calendar-home h2{font-size:65px}.calendar-home p:not(.eyebrow){font-size:16px}.calendar-home .button{font-size:11px}.admin-intro h1{font-size:clamp(52px,12vw,75px)}.editor-panel{padding:23px 18px}.editor-panel h2{font-size:31px}.event-form-row{gap:12px}.event-form-actions .button{width:100%}.admin-gate{padding:25px}.admin-gate h2{font-size:32px}.admin-gate .button{font-size:11px}.news-press-art{min-height:280px;padding:30px}.news-press-art strong{font-size:75px}.news-press-art i{font-size:45px;top:30px}.news-press-art small{font-size:10px}}
