#event-detail{max-height:90svh;width:min(760px,92vw);max-width:760px;padding:0;border:1px solid #ffffff35;color:#f3f1ea;background:#10110f;overscroll-behavior:contain}#event-detail::backdrop{background:#000a;backdrop-filter:blur(7px)}.event-detail-top{display:flex;position:sticky;top:0;z-index:1;justify-content:space-between;align-items:center;padding:13px 28px;background:#10110f;font-size:14px}.event-detail-top button{min-height:44px}.event-detail-heading{padding:35px 40px}.event-detail-heading h2{font:500 clamp(34px,4vw,55px)/1.08 'Space Grotesk',sans-serif;letter-spacing:-.055em;margin:24px 0;overflow-wrap:anywhere}.event-detail-heading p{font-size:18px;margin:0}.event-detail-body{padding:30px 40px 40px}.event-detail-body dl{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding-bottom:30px;border-bottom:1px solid #ffffff25}.event-detail-body dt{font-size:12px;color:#aeb2a5;margin-bottom:6px}.event-detail-body dd{font-size:16px;margin:0;overflow-wrap:anywhere}.event-description{white-space:pre-line;color:#c9cbbe;line-height:1.8}.event-detail-body h3{font:500 26px/1.25 'Space Grotesk';letter-spacing:-.03em;margin-top:30px}.event-book{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;background:#f3f1ea;color:#10110f;margin-top:20px;min-height:48px}.event-book-note{border-top:1px solid #ffffff25;padding-top:25px;font-size:14px;color:#c6c9bc}.event-example{font-size:12px;color:#c4b591}
#events-gallery{--poster-width:min(57vw,730px);width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:0;border:0;background:#090b0bea;color:#f3f1ea;overflow-y:auto;overflow-x:hidden;display:none;overscroll-behavior:contain}#events-gallery[open]{display:flex;flex-direction:column;justify-content:center;animation:events-enter .5s ease both}#events-gallery::backdrop{background:#08090888;backdrop-filter:blur(10px)}.event-gallery-heading{width:88%;max-width:1400px;margin:0 auto 20px;display:flex;align-items:center;justify-content:space-between;gap:25px}.event-gallery-heading p{font-size:11px;letter-spacing:.16em;color:#b7b9ad;margin:0 0 8px}.event-gallery-heading h1{font:500 clamp(32px,3.5vw,48px)/1.1 'Space Grotesk',sans-serif;letter-spacing:-.06em;margin:0}.event-gallery-close{display:flex;align-items:center;gap:20px;font-size:14px;padding:12px 0;min-height:44px}.event-gallery-close span{font-size:28px;font-weight:400}.event-gallery-window{position:relative;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x proximity;overscroll-behavior-x:contain;perspective:1400px;touch-action:pan-x pan-y pinch-zoom;padding:18px 0 25px;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.event-gallery-window::-webkit-scrollbar{display:none}.event-gallery-track{display:flex;align-items:center;width:max-content;gap:36px;padding-inline:calc((100vw - var(--poster-width))/2);transform-style:preserve-3d}.event-poster{position:relative;flex:0 0 var(--poster-width);width:var(--poster-width);height:clamp(390px,61svh,640px);padding:0;display:flex;flex-direction:column;text-align:left;overflow:hidden;background:var(--event-color);color:var(--event-ink);scroll-snap-align:center;transform:translateZ(var(--depth,0px)) rotateY(var(--turn,0deg)) scale(var(--scale,1));filter:brightness(var(--dim,1));transform-origin:center;backface-visibility:hidden;transition:filter .12s linear;box-shadow:0 30px 55px #0005;border-radius:2px}.event-poster-image{position:relative;display:block;flex:1;min-height:140px;overflow:hidden;background:var(--event-color)}.event-poster-image:after{content:'';position:absolute;inset:0;background:linear-gradient(#0007,transparent 55%,#0002);pointer-events:none}.event-poster-image img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.7);transition:transform .8s}.event-poster:hover .event-poster-image img{transform:scale(1.03)}.event-poster-type,.event-poster-status{position:absolute;z-index:1;top:24px;color:white;font-size:13px;text-shadow:0 1px 8px #000}.event-poster-type{left:28px;text-transform:uppercase;letter-spacing:.1em}.event-poster-status{right:28px;border:1px solid #ffffffb3;border-radius:30px;padding:4px 12px;top:19px;background:#1114;backdrop-filter:blur(6px)}.event-poster-copy{display:flex;flex-direction:column;padding:25px 30px 27px;min-height:205px}.event-poster-date{font-size:14px;margin-bottom:13px}.event-poster-copy strong{font:500 clamp(30px,3.25vw,46px)/1.07 'Space Grotesk',sans-serif;letter-spacing:-.06em;max-width:620px;text-wrap:balance;overflow-wrap:anywhere}.event-poster-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:auto;padding-top:23px;font-size:14px}.event-discover{border-bottom:1px solid currentColor;padding-bottom:3px;white-space:nowrap}.event-gallery-controls{width:88%;max-width:1400px;margin:2px auto 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;font-size:13px;color:#aaa;line-height:1.5}.event-gallery-pagination{display:flex;align-items:center;gap:26px}.event-gallery-pagination button{min-height:44px;padding:5px 0;font-size:13px;color:#f3f1ea}.event-gallery-pagination button:disabled{opacity:.3;cursor:default}.event-gallery-count{font-variant-numeric:tabular-nums;min-width:54px;text-align:center;color:#f3f1ea;letter-spacing:.08em;font-size:12px}.event-gallery-month{text-align:right;text-transform:capitalize}.event-gallery-demo{text-align:center;font-size:11px;color:#a6a99b;margin:12px 5% 0}.events-empty,.events-loading{padding:80px 6%;text-align:center}.events-empty h2{font:500 38px 'Space Grotesk';letter-spacing:-.05em}.events-empty p{font-size:16px;color:#b9b9af}#events-gallery :focus-visible{outline:2px solid #f3f1ea;outline-offset:5px}.event-poster:focus-visible{outline-offset:-5px!important}.event-gallery-window:focus-visible{outline-offset:-3px!important}
@keyframes events-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(max-width:800px){#events-gallery{--poster-width:76vw}.event-gallery-heading{margin-bottom:18px}.event-poster-copy{padding:22px 24px;min-height:220px}.event-poster-copy strong{font-size:36px}.event-poster-type{left:22px}.event-poster-status{right:22px}.event-gallery-instruction{display:none}.event-gallery-controls{grid-template-columns:1fr auto}.event-gallery-pagination{gap:20px}.event-gallery-track{gap:24px}}
@media(max-width:500px){#events-gallery{--poster-width:84vw}#events-gallery[open]{justify-content:flex-start;padding:30px 0 20px}.event-gallery-heading h1{font-size:34px}.event-gallery-heading p{font-size:10px}.event-gallery-close{font-size:13px;gap:12px}.event-poster{height:clamp(400px,62svh,570px)}.event-poster-copy{padding:22px;min-height:225px}.event-poster-copy strong{font-size:33px}.event-poster-date{font-size:13px;line-height:1.5}.event-poster-type,.event-poster-status{font-size:11px}.event-poster-type{top:22px}.event-poster-status{top:16px;right:15px;padding:4px 9px}.event-poster-bottom{font-size:13px;gap:16px}.event-gallery-controls{display:flex;flex-direction:column;gap:5px}.event-gallery-pagination{gap:32px}.event-gallery-month{text-align:center;font-size:12px}.event-gallery-demo{font-size:11px;margin-top:12px}.event-detail-heading,.event-detail-body{padding:25px}.event-detail-body dl{gap:20px}.event-detail-top{padding:10px 22px}.event-detail-body dd{font-size:15px}}
@media(max-height:650px) and (min-width:801px){#events-gallery[open]{justify-content:flex-start;padding-top:25px}.event-poster{height:390px}.event-poster-copy{min-height:180px;padding:20px 30px}.event-poster-copy strong{font-size:34px}}
@media(prefers-reduced-motion:reduce){#events-gallery[open]{animation:none}.event-poster{transform:none!important;filter:none;transition:none}.event-poster-image img{transition:none}.event-poster:hover img{transform:none}}
/* Keep transformed posters above their track for reliable pointer targeting. */
.event-gallery-track{pointer-events:none}.event-poster{pointer-events:auto;transform:rotateY(var(--turn,0deg)) scale(var(--scale,1))}
.event-detail-heading p{color:inherit}.event-detail-heading{color:var(--event-ink,#171915)}
/* Photo-led posters, continuous with the dark editorial art direction. */
.event-poster{background:#171916;color:#f3f1ea;isolation:isolate;justify-content:flex-end}
.event-poster-image{position:absolute;inset:0;min-height:0;z-index:-2;background:#242821}
.event-poster-image img{filter:saturate(.6) brightness(.82)}
.event-poster-image:after{background:linear-gradient(180deg,#0006,transparent 38%,#07090760 65%,#070907dc)}
.event-poster-copy{position:relative;min-height:205px;padding:30px 34px;background:linear-gradient(0deg,#0d100ff5,#0d100fbb 60%,transparent)}
.event-poster-date{color:#d4d5cc}.event-poster-bottom{color:#d4d5cc}.event-discover{color:#f3f1ea;border-color:#b4b9ab}
.event-poster-copy strong{text-shadow:0 2px 22px #0008}.event-poster-status{background:#12161066;border-color:#ffffff60}
.event-gallery-window{scroll-snap-type:none}
@media(max-width:500px){.event-poster-copy{padding:25px;min-height:220px}.event-gallery-window{scroll-snap-type:x proximity}}
.event-poster-summary{display:block;font:400 16px/1.5 'DM Sans',sans-serif;color:#d1d2c9;margin-top:15px;max-width:530px;text-wrap:pretty}
.event-poster-practical{display:flex;flex-direction:column;gap:4px}.event-poster-places{color:#f3f1ea;font-size:13px}.event-poster-copy{min-height:260px}.event-poster-bottom{padding-top:20px}.event-poster-copy strong{font-size:clamp(30px,3.1vw,44px)}
@media(max-width:800px){.event-poster-copy{min-height:280px}.event-poster-summary{font-size:15px}.event-poster-copy strong{font-size:34px}}
@media(max-width:500px){.event-poster-copy{min-height:300px;padding:23px}.event-poster-summary{font-size:15px;margin-top:13px}.event-poster-copy strong{font-size:32px}.event-poster-bottom{font-size:12px;gap:12px}.event-poster-places{font-size:12px}.event-poster{min-height:470px}.event-gallery-demo{margin-bottom:10px}}
/* Event details use one quiet photographic treatment, without color banners. */
#event-detail{width:min(820px,94vw);max-width:820px;background:#111310;border-color:#ffffff24;box-shadow:0 35px 120px #0009}
.event-detail-top{padding:12px 35px;background:#111310f7;border-bottom:1px solid #ffffff14;color:#c9cbbf;backdrop-filter:blur(15px)}
.event-detail-top>span{font-size:12px;letter-spacing:.1em;text-transform:uppercase}.event-detail-top button{font-size:13px;color:#f3f1ea;padding:10px 0}
.event-detail-heading{position:relative;isolation:isolate;background:#161a15;color:#f3f1ea;min-height:295px;display:flex;flex-direction:column;justify-content:flex-end;padding:40px}
.event-detail-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.5) brightness(.55)}
.event-detail-heading:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111310, #11131050 75%,#11131035);z-index:-1;pointer-events:none}
.event-detail-heading .event-status{font-size:12px;border-color:#ffffff55;color:#e0e2d5;background:#11131033;padding:5px 12px;backdrop-filter:blur(7px)}
.event-detail-heading h2{font-size:clamp(35px,4vw,54px);line-height:1.08;margin:24px 0 17px;max-width:620px;letter-spacing:-.055em}
.event-detail-heading p{color:#d4d6ca;font-size:16px;line-height:1.5;margin:0}
.event-detail-body{padding:20px 40px 40px}.event-detail-body dl{margin:18px 0 30px;gap:25px 40px;padding-bottom:28px}.event-detail-body dt{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#8e9585}.event-detail-body dd{font-size:16px;color:#e8e9de}.event-detail-body .event-description{font-size:16px;line-height:1.85;max-width:640px;color:#bec3b3;margin:0 0 22px}.event-detail-body .event-example{font-size:12px;color:#969d89;margin:0 0 25px}.event-detail-body .event-book-note{font-size:14px;color:#aeb6a0;line-height:1.6;padding-top:25px;margin:28px 0 0;border-color:#ffffff20}.event-detail-body .event-book{background:#eceee2;color:#161a13;margin:10px 0 0;min-height:48px;font-size:14px}.event-detail-body h3{font-size:25px;color:#ecede4;margin:32px 0 15px}
@media(max-width:500px){#event-detail{max-height:92svh}.event-detail-top{padding:10px 24px}.event-detail-heading{padding:32px 25px 25px;min-height:280px}.event-detail-heading h2{font-size:38px}.event-detail-heading p{font-size:15px}.event-detail-body{padding:15px 25px 30px}.event-detail-body dl{gap:22px}.event-detail-body dd{font-size:15px}.event-detail-body .event-description{font-size:16px}}
.event-detail-heading .event-status{align-self:flex-start;width:fit-content;border:1px solid #ffffff55;border-radius:24px;line-height:1.5}
.event-program{padding:0}.event-program-content{padding-left:20px;border-left:1px solid #ffffff25}.event-program .event-description{padding:0;border:0;margin:0 0 24px!important;line-height:1.9!important}.event-program .event-description:last-child{margin-bottom:0!important}
.event-sharing{margin-top:35px;padding-top:30px;border-top:1px solid #ffffff20}.event-detail-body .event-sharing h3{font-size:22px;margin:0 0 10px}.event-sharing p{font-size:14px;color:#aeb6a0;margin-bottom:20px}.event-share-buttons{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center}.event-share-buttons button,.event-share-buttons a{font-size:13px;padding:10px 0;min-height:44px;border-bottom:1px solid #ffffff40}.event-share-buttons button:disabled{opacity:.45;cursor:default}.event-share-unavailable{font-size:12px;color:#8d9484}.event-sharing .event-share-status{font-size:13px;margin:16px 0 0}.event-share-manual{font-size:13px;margin-top:14px}.event-share-manual[hidden]{display:none}
.event-booking-top{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px}.event-booking-top .event-book{margin:0;background:#eceee2;color:#161a13;font-size:14px}.event-booking-top>span{font-size:12px;color:#c2c7b7}.event-book:disabled{opacity:.7;cursor:not-allowed}.event-booking-end{margin:35px 0 0;padding-top:25px;border-top:1px solid #ffffff20}.event-detail-body .event-booking-end .event-book-note{border:0;margin:14px 0 0;padding:0;font-size:13px}.event-detail-body .event-booking-end .event-book{margin:0}.event-detail-heading{min-height:340px}

.event-share-buttons [data-share]{display:inline-flex;align-items:center;gap:9px}.event-share-icon{width:18px;height:18px;flex:none}

#event-detail .event-book-deadline{font-size:13px;line-height:1.6;color:#c8c9bf;margin:16px 0}.event-booking-end .event-book-deadline{flex-basis:100%}

#events-gallery-title:focus{outline:none}

/* Fiches activités : accès direct, programme dans la fiche. */
.event-poster-image img,.event-detail-cover{object-position:center center;background-position:center center}
.event-detail-heading{min-height:0;padding-bottom:30px}.event-detail-heading h2{margin-bottom:16px}.event-booking-top{margin-top:20px}.event-detail-body{padding-top:30px}.event-program{margin-top:30px}.event-program h3{margin:0 0 16px}.event-program p:last-child{margin-bottom:0}
@media(max-width:650px){.event-detail-heading{padding-bottom:24px}.event-detail-body{padding-top:24px}.event-program{margin-top:26px}}

/* Balanced editorial activity cards and explicit focal point. */
#events-gallery{--poster-width:min(76vw,720px)}
.event-poster{height:auto!important;min-height:0!important;max-height:none;display:flex;flex-direction:column;background:#111!important;color:#f3f1ea!important}
.event-poster-image{position:relative!important;inset:auto;z-index:0;flex:none;aspect-ratio:16/9;width:100%;min-height:0;max-height:300px}
.event-poster-copy{min-height:0!important;padding:24px 28px!important;background:#111}.event-poster-copy strong{font-size:clamp(26px,3vw,38px)}
.event-poster-summary{margin:12px 0 0;font-size:15px;line-height:1.6}.event-poster-bottom{padding-top:20px;margin-top:0}
.event-poster[data-position=top] img,.event-detail-cover[data-position=top]{object-position:center top!important}
.event-poster[data-position=bottom] img,.event-detail-cover[data-position=bottom]{object-position:center bottom!important}
.event-poster[data-position=left] img,.event-detail-cover[data-position=left]{object-position:left center!important}
.event-poster[data-position=right] img,.event-detail-cover[data-position=right]{object-position:right center!important}
.event-booking-top,.event-booking-end{display:block;margin-top:28px}.event-booking-end{padding-top:28px}
#event-detail .event-book{width:auto;min-height:48px;padding:14px 24px;display:inline-flex;align-items:center;justify-content:center}
#event-detail .event-book-deadline{font-size:13px;line-height:1.6;color:#bdbdb7;margin:12px 0 0}
@media(max-width:650px){#events-gallery{--poster-width:88vw}#events-gallery[open]{justify-content:flex-start;padding-top:24px}.event-poster-image{aspect-ratio:3/2;max-height:240px}.event-poster-copy{padding:22px!important}.event-poster-type{left:18px}.event-poster-status{right:16px;font-size:11px}.event-poster-copy strong{font-size:29px}}
/* Photographies en couleurs naturelles ; contraste réservé aux badges. */
.event-poster-image img{filter:none!important}.event-poster-image:after{background:linear-gradient(180deg,#0005 0,transparent 95px)!important}.event-poster-type,.event-poster-status{text-shadow:0 1px 4px #0008}.event-poster-type{background:#1117;border-radius:20px;padding:5px 10px;top:19px}.event-poster-status{background:#1118}

/* Explicit, consistent navigation and a restrained image expansion. */
.event-gallery-heading{position:relative;padding-top:74px!important}.events-back{position:absolute;top:12px;left:0;min-height:46px;font-size:15px;border:0;border-bottom:1px solid #555;padding:8px 0;color:#f3f1ea;background:none}.events-music{position:absolute;top:12px;right:0;width:44px;height:44px;padding:10px}.events-music svg{width:22px;height:22px}.event-detail-top button{font-size:14px;border:0;border-bottom:1px solid #555;padding:8px 0}.event-detail-cover{animation:tongaw-image-enter 460ms cubic-bezier(.2,.7,.2,1)}
@keyframes tongaw-image-enter{from{clip-path:inset(7% 0 0 0);opacity:.4}to{clip-path:inset(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.event-detail-cover{animation:none}}

#event-detail,.event-detail-top,.event-detail-body{background:#101010}.event-detail-heading{background:#161616}.event-detail-cover{filter:brightness(.82)}.event-detail-heading:after{background:linear-gradient(0deg,#101010, #10101085 65%,#10101045)}.event-detail-body .event-description{color:#c1c0ba}.event-detail-body dt{color:#aaa}.event-detail-body dd{color:#eeece5}

/* Light photograph; contrast is limited to the lower text area. */
#event-detail .event-detail-cover{filter:none}#event-detail .event-detail-heading{min-height:300px;justify-content:center;padding-top:40px;padding-bottom:40px}#event-detail .event-detail-heading:after{background:linear-gradient(0deg,rgba(16,16,16,.94),rgba(16,16,16,.65) 32%,rgba(16,16,16,.08) 72%,transparent)}#event-detail .event-detail-heading h2{text-shadow:0 2px 15px #0005}#event-detail .event-detail-body dl{margin-bottom:0;padding-bottom:0;border-bottom:0}#event-detail .event-booking-top{margin:26px 0 32px}#event-detail .event-booking-top .event-book{margin:0}#event-detail .event-book-deadline{margin:12px 0 0}#events-gallery>.event-gallery-window{flex-shrink:0}
@media(max-width:500px){#event-detail .event-detail-heading{min-height:280px}}

/* Practical information, programme, reservation, then sharing. */
#event-detail .event-detail-body dl{border-bottom:1px solid #ffffff25;padding-bottom:26px;margin-bottom:28px}#event-detail .event-sharing{border:0;margin:20px 0 0;padding:0}#event-detail .event-share-buttons button{border-bottom:0}#event-detail .event-booking-top{margin:28px 0 0}#event-detail .event-book-deadline{margin:10px 0 0}#event-detail .event-share-status:empty{display:none}

/* Equal breathing room above and below the practical information. */
#event-detail{--event-info-space:32px}#event-detail .event-detail-body{padding-top:var(--event-info-space)}#event-detail .event-detail-body dl{margin-top:0;padding-bottom:var(--event-info-space)}
@media(max-width:650px){#event-detail{--event-info-space:24px}#event-detail .event-detail-heading{padding-top:32px;padding-bottom:32px}}

/* A spacious reading section followed by one coherent action group. */
#event-detail .event-program h3{margin-bottom:24px}
#event-detail .event-program-content{padding-left:24px}
#event-detail .event-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-top:44px}
#event-detail .event-actions .event-booking-top{margin:0;flex:1;min-width:0}
#event-detail .event-actions .event-sharing{margin:0;flex:0 0 auto;max-width:160px}
#event-detail .event-actions .event-share-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 16px;border:1px solid #ffffff30;border-radius:3px;color:#c1c0ba;transition:color .2s,border-color .2s,background .2s}
#event-detail .event-actions .event-share-buttons button:hover{color:#f3f1ea;border-color:#ffffff60;background:#ffffff08}
#event-detail .event-actions .event-book-deadline{margin-top:14px}
#event-detail .event-actions .event-share-manual{max-width:100%}
@media(max-width:500px){#event-detail .event-program-content{padding-left:18px}#event-detail .event-actions{margin-top:36px;gap:18px;flex-wrap:wrap}#event-detail .event-actions .event-booking-top{flex-basis:100%}#event-detail .event-actions .event-sharing{max-width:100%}}
