/* Six identités, une structure. Variables limitées à ces pages/cartes. */
.event-theme-lanternes { --event-dark: #122942; --event-accent: #f0ce8b; --event-soft: #f6f2e9; --event-mark: #96713a; }
.event-theme-noel { --event-dark: #183e35; --event-accent: #f3d6aa; --event-soft: #f6f1e9; --event-mark: #963e48; }
.event-theme-galette { --event-dark: #4c3823; --event-surface: #fbf4e6; --event-heading: #4c3823; --event-caption: #665b4e; --event-accent: #80602c; --event-soft: #fbf4e6; --event-mark: #916728; }
.event-theme-valentin { --event-dark: #562736; --event-accent: #f2cad5; --event-soft: #fbf1f3; --event-mark: #a55672; }
.event-theme-meres { --event-dark: #3f5147; --event-surface: #f4e9f0; --event-heading: #3f5147; --event-caption: #5c665f; --event-accent: #8b4b70; --event-soft: #f8f4f7; --event-mark: #995c7c; }
.event-theme-musique { --event-dark: #302454; --event-accent: #c8d8ff; --event-soft: #f3f1fb; --event-mark: #584fd0; }
.event-page .event-breadcrumb { margin-block: 25px; }
.event-banner { overflow: hidden; background: var(--event-surface,var(--event-dark)); color: var(--event-heading,#fff); }
.event-banner-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 64px; align-items: center; min-height: 430px; padding-block: 58px; }
.event-banner-copy { position: relative; z-index: 1; }
.event-signature { color: var(--event-accent); text-transform: uppercase; letter-spacing: .15em; font-size: .75rem; font-weight: 650; margin-bottom: 24px; }
.event-banner h1 { max-width: 760px; font-size: clamp(2.8rem, 5.4vw, 4.8rem); overflow-wrap: anywhere; }
.event-banner-note { max-width: 450px; color: var(--event-caption,#ffffffd9); margin: 24px 0 0; }
.event-banner-art { position: relative; display: grid; place-items: center; min-width: 0; aspect-ratio: 1; color: var(--event-accent); }
.event-banner-art > svg { position: relative; width: 65%; height: auto; }
.event-art-orbit { position: absolute; inset: 3%; border: 1px solid currentColor; opacity: .35; border-radius: 50%; }
.event-art-orbit::before, .event-art-orbit::after { content: ''; position: absolute; border: 1px solid currentColor; border-radius: 50%; inset: 12%; }
.event-art-orbit::after { inset: -8%; opacity: .45; }
.event-theme-noel .event-art-orbit { border-color: #e2a3a6; opacity: .8; }
.event-theme-musique .event-art-orbit { border-color: #799cff; opacity: .8; }
.event-banner-art > img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }
.event-validation-note { border-left: 3px solid var(--event-mark); background: var(--event-soft); padding: 20px 24px; margin-top: 32px; font-size: .88rem; }
.event-validation-note strong { color: var(--ink); }
.event-validation-note p { margin: 5px 0 0; color: var(--muted); }
.event-page .event-presentation .eyebrow { color: var(--event-mark); }
.event-page .event-presentation .eyebrow::before { background: var(--event-mark); }
.event-page .event-presentation h2 { font-size: clamp(2rem, 3.4vw, 3rem); }
.event-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin: 0; }
.event-facts > div { padding: 24px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.event-facts dt { font-weight: 650; margin-bottom: 8px; }
.event-facts dd { margin: 0; color: var(--muted); white-space: normal; overflow-wrap: anywhere; }
.event-page .intro-copy { overflow-wrap: anywhere; }
.event-return { padding-bottom: 56px; }
.event-page .event-photo-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.event-page .event-photo-grid figure { margin: 0; min-width: 0; border-radius: 10px; overflow: hidden; background: #fff; }
.event-page .event-photo-grid img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.event-page .event-photo-grid figcaption { padding: 14px 18px; overflow-wrap: anywhere; }
.event-preview-list { padding-top: 20px; }
.event-preview-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.event-draft-card { min-width: 0; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; background: #fff; }
.event-draft-art { display: grid; place-items: center; height: 165px; background: var(--event-surface,var(--event-dark)); color: var(--event-accent); }
.event-draft-art svg { width: 110px; height: 110px; }
.event-draft-copy { padding: 28px; }
.event-draft-copy h3 { font-size: 1.65rem; margin-bottom: 14px; }
.event-draft-copy > p:not(.event-draft-label) { color: var(--muted); font-size: .9rem; }
.event-draft-label { color: var(--muted); font-size: .72rem; margin-bottom: 14px; }
@media (max-width: 800px) {
  .event-banner-grid { gap: 28px; min-height: 0; padding-block: 45px; grid-template-columns: 1fr; }
  .event-banner-art { width: min(230px,70%); justify-self: center; }
  .event-banner h1 { max-width: 650px; }
  .event-page .event-photo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 540px) {
  .event-banner h1 { font-size: clamp(2.25rem,10vw,3rem); }
  .event-banner-grid { gap: 24px; }
  .event-banner-art { width: 170px; }
  .event-facts, .event-preview-grid, .event-page .event-photo-grid { grid-template-columns: 1fr; }
  .event-validation-note { padding: 18px; }
  .event-draft-copy { padding: 24px; }
}
