:root {
  --agenda-ink: #07172b;
  --agenda-muted: #64748b;
  --agenda-blue: #0d6efd;
  --agenda-cyan: #06b6d4;
  --agenda-gold: #f59e0b;
  --agenda-line: rgba(15, 23, 42, .1);
  --agenda-card: #fff;
  --agenda-soft: #f4f8fc;
  --agenda-radius: 24px;
}

.agenda-shell, .agenda-detail, .agenda-form-page, .agenda-success {
  color: var(--agenda-ink);
  background:
    radial-gradient(circle at 5% 18%, rgba(14, 165, 233, .08), transparent 24rem),
    radial-gradient(circle at 92% 75%, rgba(245, 158, 11, .07), transparent 24rem),
    #f8fafc;
}

.agenda-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(4rem, 9vw, 8rem) 0;
  color: #fff;
  background:
    linear-gradient(105deg, rgba(4, 20, 38, .97), rgba(9, 52, 88, .92)),
    repeating-linear-gradient(90deg, transparent 0 80px, rgba(255,255,255,.03) 81px);
}
.agenda-hero::before {
  position: absolute; inset: 0; content: "";
  background: radial-gradient(circle at 75% 30%, rgba(6,182,212,.27), transparent 25rem);
}
.agenda-hero__grid { position: relative; display: grid; grid-template-columns: 1.25fr .75fr; align-items: center; gap: 4rem; }
.agenda-hero h1 { max-width: 850px; margin: 1rem 0; font: 900 clamp(2.7rem, 6vw, 5.7rem)/.96 "Playfair Display", Georgia, serif; letter-spacing: -.055em; }
.agenda-hero h1 em { display: block; color: #67e8f9; font-style: normal; }
.agenda-hero p { max-width: 700px; color: #d6e6f4; font-size: clamp(1rem, 1.5vw, 1.25rem); line-height: 1.75; }
.agenda-kicker { display: inline-flex; align-items: center; gap: .45rem; color: #0891b2; font-size: .74rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.agenda-hero .agenda-kicker { color: #67e8f9; }
.agenda-hero__actions, .agenda-detail__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.agenda-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 48px; padding: .75rem 1.2rem; border: 1px solid transparent; border-radius: 14px; font-weight: 850; text-decoration: none; transition: .2s ease; }
.agenda-btn:hover { transform: translateY(-2px); }
.agenda-btn--primary { color: #fff; background: linear-gradient(135deg, #0d6efd, #4338ca); box-shadow: 0 15px 34px -18px #0d6efd; }
.agenda-btn--primary:hover { color: #fff; filter: brightness(1.07); }
.agenda-btn--glass { color: #fff; border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.09); backdrop-filter: blur(12px); }
.agenda-btn--outline { color: #17324d; border-color: var(--agenda-line); background: #fff; }
.agenda-hero__visual { position: relative; min-height: 280px; }
.agenda-calendar-mark { position: absolute; inset: 8% 10%; display: grid; place-content: center; border: 1px solid rgba(255,255,255,.18); border-radius: 35px; text-align: center; background: linear-gradient(145deg, rgba(255,255,255,.15), rgba(255,255,255,.04)); box-shadow: 0 40px 80px -35px #000; backdrop-filter: blur(18px); transform: rotate(3deg); }
.agenda-calendar-mark span { font-weight: 800; text-transform: uppercase; letter-spacing: .15em; }
.agenda-calendar-mark strong { color: #fbbf24; font: 900 5rem/1 "Playfair Display", serif; }
.agenda-calendar-mark small { color: #dbeafe; }
.agenda-orbit { position: absolute; z-index: 2; display: grid; width: 62px; aspect-ratio: 1; place-items: center; border-radius: 20px; font-size: 1.7rem; box-shadow: 0 20px 40px -20px #000; }
.agenda-orbit--one { top: 0; right: 4%; color: #0e7490; background: #cffafe; transform: rotate(9deg); }
.agenda-orbit--two { bottom: 0; left: 4%; color: #b45309; background: #fef3c7; transform: rotate(-8deg); }

.agenda-filters { position: relative; z-index: 5; display: grid; grid-template-columns: 2fr repeat(5, minmax(120px, 1fr)) auto; gap: .65rem; margin: -34px 0 4rem; padding: 1rem; border: 1px solid var(--agenda-line); border-radius: 20px; background: rgba(255,255,255,.96); box-shadow: 0 24px 60px -36px rgba(15,23,42,.5); }
.agenda-filters input, .agenda-filters select, .agenda-filters button { min-width: 0; height: 48px; border: 1px solid #dce5ee; border-radius: 12px; background: #f8fafc; color: #20344b; padding: 0 .8rem; }
.agenda-filters button { border: 0; color: #fff; font-weight: 800; background: #0d6efd; }
.agenda-search { position: relative; }
.agenda-search i { position: absolute; top: 50%; left: .9rem; color: #64748b; transform: translateY(-50%); }
.agenda-search input { width: 100%; padding-left: 2.5rem; }
.agenda-filter-reset { align-self: center; color: #64748b; font-size: .8rem; font-weight: 700; }

.agenda-featured { display: grid; overflow: hidden; grid-template-columns: 1.05fr .95fr; min-height: 460px; margin-bottom: 5rem; border: 1px solid var(--agenda-line); border-radius: 32px; background: #071d33; box-shadow: 0 35px 80px -50px #07172b; }
.agenda-featured__media { position: relative; display: grid; place-items: center; overflow: hidden; color: #67e8f9; font-size: 6rem; background: linear-gradient(145deg, #0e3a5e, #07172b); }
.agenda-featured__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, transparent 70%, #071d33); }
.agenda-featured__media img { width: 100%; height: 100%; object-fit: cover; }
.agenda-featured__content { align-self: center; padding: clamp(2rem, 5vw, 4.5rem); color: #fff; }
.agenda-featured__content h2 { margin: .8rem 0 1rem; font: 800 clamp(2rem, 4vw, 3.5rem)/1.05 "Playfair Display", serif; }
.agenda-featured__content > p:not(.agenda-featured__date) { color: #cbd5e1; line-height: 1.7; }
.agenda-featured__date { color: #fbbf24; font-weight: 800; }
.agenda-featured__meta { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1.5rem 0; color: #dbeafe; font-size: .88rem; }

.agenda-section-head { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin: 0 0 1.8rem; }
.agenda-section-head h2 { margin: .25rem 0 0; font: 850 clamp(1.8rem, 4vw, 3rem)/1.1 "Playfair Display", serif; }
.agenda-section-head > strong { color: #64748b; font-size: .85rem; }
.agenda-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; padding-bottom: 4rem; }
.agenda-card { overflow: hidden; border: 1px solid var(--agenda-line); border-radius: var(--agenda-radius); background: var(--agenda-card); box-shadow: 0 22px 50px -38px rgba(15,23,42,.55); transition: transform .22s ease, box-shadow .22s ease; }
.agenda-card:hover { transform: translateY(-6px); box-shadow: 0 30px 60px -38px rgba(15,23,42,.65); }
.agenda-card__cover { position: relative; display: block; height: 210px; overflow: hidden; text-decoration: none; background: #e8f1f8; }
.agenda-card__cover img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.agenda-card:hover .agenda-card__cover img { transform: scale(1.04); }
.agenda-card__placeholder { display: grid; height: 100%; place-items: center; color: var(--event-color); font-size: 4rem; background: radial-gradient(circle, color-mix(in srgb, var(--event-color) 16%, #fff), #eef4f8); }
.agenda-card__type, .agenda-card__verified { position: absolute; top: 1rem; left: 1rem; padding: .35rem .65rem; border-radius: 999px; color: #fff; font-size: .65rem; font-weight: 900; text-transform: uppercase; background: rgba(6,21,39,.84); backdrop-filter: blur(7px); }
.agenda-card__verified { right: 1rem; left: auto; background: #047857; }
.agenda-card__body { display: grid; grid-template-columns: 58px 1fr; gap: 1rem; padding: 1.35rem; }
.agenda-card__date { text-align: center; }
.agenda-card__date strong { display: block; color: #0d6efd; font: 900 2rem/1 "Playfair Display", serif; }
.agenda-card__date span { display: block; margin-top: .25rem; color: #64748b; font-size: .63rem; font-weight: 800; text-transform: uppercase; }
.agenda-card__eyebrow { display: flex; justify-content: space-between; gap: .5rem; color: #64748b; font-size: .61rem; font-weight: 850; text-transform: uppercase; }
.agenda-card__eyebrow span:first-child { color: var(--event-color); }
.agenda-card h2 { margin: .65rem 0; font: 800 1.27rem/1.22 "Playfair Display", serif; }
.agenda-card h2 a { color: var(--agenda-ink); text-decoration: none; }
.agenda-card__content > p { color: var(--agenda-muted); font-size: .86rem; line-height: 1.6; }
.agenda-card__meta { display: flex; flex-wrap: wrap; gap: .65rem; color: #526477; font-size: .72rem; font-weight: 700; }
.agenda-card__meta i { color: #0d6efd; }
.agenda-empty { margin-bottom: 5rem; padding: 5rem 1rem; border: 1px dashed #bfd0df; border-radius: 28px; text-align: center; background: #fff; }
.agenda-empty > i { color: #94a3b8; font-size: 4rem; }
.agenda-pagination { display: flex; justify-content: center; align-items: center; gap: 1rem; padding-bottom: 5rem; }
.agenda-pagination a, .agenda-pagination span { padding: .65rem 1rem; border: 1px solid var(--agenda-line); border-radius: 10px; background: #fff; text-decoration: none; }

.agenda-detail { padding: 2rem 0 6rem; }
.agenda-breadcrumb { display: flex; align-items: center; gap: .5rem; overflow: hidden; margin-bottom: 2rem; color: #64748b; font-size: .8rem; white-space: nowrap; }
.agenda-breadcrumb a { color: #475569; text-decoration: none; }
.agenda-detail__hero { display: grid; overflow: hidden; grid-template-columns: 1.05fr .95fr; min-height: 540px; border-radius: 34px; color: #fff; background: #071d33; box-shadow: 0 40px 90px -55px #07172b; }
.agenda-detail__cover { display: grid; place-items: center; overflow: hidden; background: #0c304e; }
.agenda-detail__cover img { width: 100%; height: 100%; object-fit: cover; }
.agenda-detail__cover > span { display: grid; width: 100%; height: 100%; place-items: center; color: var(--event-color); font-size: 7rem; background: radial-gradient(circle, rgba(255,255,255,.12), transparent); }
.agenda-detail__intro { align-self: center; padding: clamp(2rem, 5vw, 4.5rem); }
.agenda-detail__badges { display: flex; flex-wrap: wrap; gap: .45rem; }
.agenda-detail__badges span { padding: .35rem .65rem; border: 1px solid rgba(255,255,255,.15); border-radius: 999px; color: #dbeafe; font-size: .65rem; font-weight: 850; background: rgba(255,255,255,.07); }
.agenda-detail__badges .is-verified { color: #d1fae5; background: rgba(16,185,129,.17); }
.agenda-detail__category { margin: 1.5rem 0 .6rem; color: #67e8f9; font-weight: 850; text-transform: uppercase; }
.agenda-detail__intro h1 { font: 900 clamp(2.1rem, 4vw, 4rem)/1 "Playfair Display", serif; letter-spacing: -.035em; }
.agenda-detail__lead { color: #cbd5e1; line-height: 1.7; }
.agenda-detail__layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 2rem; margin-top: 2rem; }
.agenda-panel, .agenda-factbox, .agenda-reminder { padding: clamp(1.5rem, 4vw, 2.5rem); border: 1px solid var(--agenda-line); border-radius: 24px; background: #fff; }
.agenda-panel h2, .agenda-factbox h2, .agenda-reminder h2 { margin: .35rem 0 1rem; font: 850 1.7rem "Playfair Display", serif; }
.agenda-prose { color: #334155; font-size: 1.03rem; line-height: 1.85; }
.agenda-detail__aside { display: grid; align-content: start; gap: 1rem; }
.agenda-factbox dl { margin: 0; }
.agenda-factbox dl > div { padding: .8rem 0; border-bottom: 1px solid #edf2f7; }
.agenda-factbox dt { display: flex; align-items: center; gap: .45rem; color: #64748b; font-size: .72rem; text-transform: uppercase; }
.agenda-factbox dd { margin: .25rem 0 0 1.35rem; color: #172b41; font-weight: 750; }
.agenda-reminder { color: #fff; background: linear-gradient(145deg, #0b3153, #071d33); }
.agenda-reminder > i { color: #fbbf24; font-size: 1.8rem; }
.agenda-reminder p { color: #cbd5e1; font-size: .86rem; }
.agenda-reminder input[type=email] { border: 0; min-height: 46px; }
.agenda-reminder label { display: flex; align-items: start; gap: .5rem; margin: .75rem 0; color: #cbd5e1; font-size: .72rem; }
.agenda-reminder button, .agenda-favorite { width: 100%; min-height: 46px; border: 0; border-radius: 11px; color: #082f49; font-weight: 850; background: #67e8f9; }
.agenda-favorite { color: #334155; border: 1px solid var(--agenda-line); background: #fff; }
.agenda-share { display: flex; align-items: center; justify-content: space-between; margin-top: 1rem; }
.agenda-share > div:last-child { display: flex; gap: .6rem; }
.agenda-share a, .agenda-share button { display: grid; width: 45px; height: 45px; place-items: center; border: 1px solid var(--agenda-line); border-radius: 12px; color: #0d6efd; background: #f8fafc; }
.agenda-related { margin-top: 5rem; }

.agenda-form-page { padding: clamp(3rem, 7vw, 6rem) 0; }
.agenda-form-layout { display: grid; grid-template-columns: .65fr 1.35fr; gap: 2rem; align-items: start; }
.agenda-form-intro { position: sticky; top: 150px; padding: 2.5rem; border-radius: 28px; color: #fff; background: linear-gradient(145deg, #071d33, #0d4774); }
.agenda-form-intro h1 { font: 900 3rem/1 "Playfair Display", serif; }
.agenda-form-intro > p, .agenda-moderation-note p { color: #d6e6f4; line-height: 1.7; }
.agenda-form-intro ul { padding: 0; list-style: none; }
.agenda-form-intro li { margin: .8rem 0; }
.agenda-form-intro li i { margin-right: .4rem; color: #67e8f9; }
.agenda-moderation-note { display: flex; gap: .8rem; margin-top: 2rem; padding: 1rem; border: 1px solid rgba(255,255,255,.15); border-radius: 15px; background: rgba(255,255,255,.06); }
.agenda-form-card { padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid var(--agenda-line); border-radius: 28px; background: #fff; box-shadow: 0 30px 70px -50px #07172b; }
.agenda-form-card > h2 { margin-bottom: 2rem; font: 850 2rem "Playfair Display", serif; }
.agenda-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; }
.agenda-field--wide { grid-column: 1/-1; }
.agenda-field label { display: block; margin-bottom: .4rem; color: #334155; font-size: .78rem; font-weight: 800; }
.agenda-field sup { color: #dc2626; }
.agenda-field input:not([type=checkbox]), .agenda-field select, .agenda-field textarea { width: 100%; min-height: 48px; border: 1px solid #d9e3ec; border-radius: 11px; background: #f8fafc; padding: .75rem; }
.agenda-field input:focus, .agenda-field select:focus, .agenda-field textarea:focus { border-color: #0d6efd; outline: 3px solid rgba(13,110,253,.12); background: #fff; }
.agenda-field__error, .agenda-form-errors { display: block; margin-top: .35rem; color: #b91c1c; font-size: .76rem; }
.agenda-submit-btn { margin-top: 1.5rem; }
.agenda-success { display: grid; min-height: 70vh; place-items: center; padding: 3rem 1rem; }
.agenda-success__card { max-width: 700px; padding: 4rem; border: 1px solid var(--agenda-line); border-radius: 32px; text-align: center; background: #fff; box-shadow: 0 35px 80px -55px #07172b; }
.agenda-success__card > span { display: grid; width: 80px; aspect-ratio: 1; margin: 0 auto 1.5rem; place-items: center; border-radius: 25px; color: #fff; font-size: 2.5rem; background: linear-gradient(135deg, #10b981, #047857); }
.agenda-success h1 { font: 900 3rem/1 "Playfair Display", serif; }
.agenda-success__card > div { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; margin-top: 2rem; }

[data-bs-theme="dark"] .agenda-shell, [data-bs-theme="dark"] .agenda-detail, [data-bs-theme="dark"] .agenda-form-page, [data-bs-theme="dark"] .agenda-success { --agenda-ink: #e7f0f8; --agenda-muted: #a8b8c8; --agenda-card: #0d2134; --agenda-line: rgba(148,163,184,.18); background: #071522; }
[data-bs-theme="dark"] .agenda-filters, [data-bs-theme="dark"] .agenda-panel, [data-bs-theme="dark"] .agenda-factbox, [data-bs-theme="dark"] .agenda-form-card, [data-bs-theme="dark"] .agenda-success__card, [data-bs-theme="dark"] .agenda-empty, [data-bs-theme="dark"] .agenda-favorite { color: #e7f0f8; background: #0d2134; }
[data-bs-theme="dark"] .agenda-card h2 a, [data-bs-theme="dark"] .agenda-prose, [data-bs-theme="dark"] .agenda-factbox dd { color: #e7f0f8; }
[data-bs-theme="dark"] .agenda-filters input, [data-bs-theme="dark"] .agenda-filters select, [data-bs-theme="dark"] .agenda-field input:not([type=checkbox]), [data-bs-theme="dark"] .agenda-field select, [data-bs-theme="dark"] .agenda-field textarea { color: #e7f0f8; border-color: #2b4158; background: #091a2b; }

@media (max-width: 1199.98px) {
  .agenda-filters { grid-template-columns: repeat(3, 1fr); }
  .agenda-search { grid-column: span 2; }
}
@media (max-width: 991.98px) {
  .agenda-hero__grid, .agenda-featured, .agenda-detail__hero, .agenda-form-layout { grid-template-columns: 1fr; }
  .agenda-hero__visual { display: none; }
  .agenda-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .agenda-detail__layout { grid-template-columns: 1fr; }
  .agenda-form-intro { position: static; }
  .agenda-featured__media, .agenda-detail__cover { min-height: 340px; }
}
@media (max-width: 575.98px) {
  .agenda-hero { padding: 3.5rem 0 5rem; }
  .agenda-hero h1 { font-size: 2.65rem; }
  .agenda-filters { grid-template-columns: 1fr; margin-top: -26px; }
  .agenda-search { grid-column: auto; }
  .agenda-grid, .agenda-form-grid { grid-template-columns: 1fr; }
  .agenda-featured, .agenda-detail__hero { border-radius: 22px; }
  .agenda-featured__media, .agenda-detail__cover { min-height: 240px; }
  .agenda-card__body { grid-template-columns: 48px 1fr; padding: 1rem; }
  .agenda-detail__intro { padding: 1.5rem; }
  .agenda-detail__actions .agenda-btn { width: 100%; }
  .agenda-share { align-items: flex-start; flex-direction: column; }
  .agenda-form-intro, .agenda-form-card, .agenda-success__card { padding: 1.5rem; border-radius: 20px; }
  .agenda-success h1 { font-size: 2.2rem; }
}
@media (prefers-reduced-motion: reduce) {
  .agenda-card, .agenda-btn, .agenda-card__cover img { transition: none; }
}

/* ==========================================================================
   AGENDA BNTIC — PRESTIGE 2026
   Couche de finition à forte lisibilité, isolée des styles éditoriaux globaux
   ========================================================================== */
.agenda-v2 {
  --ag-night: #061525;
  --ag-navy: #0a2945;
  --ag-blue: #1469ff;
  --ag-cyan: #10b9d6;
  --ag-amber: #f59e0b;
  --ag-paper: #f6f9fc;
  --ag-white: #fff;
  --ag-text: #10243b;
  --ag-muted: #62758a;
  --ag-border: rgba(15, 38, 63, .1);
  --ag-shadow: 0 28px 70px -45px rgba(7, 28, 49, .55);
  overflow: clip;
  color: var(--ag-text);
  background:
    radial-gradient(circle at 0 28%, rgba(20, 105, 255, .065), transparent 25rem),
    radial-gradient(circle at 100% 72%, rgba(245, 158, 11, .06), transparent 27rem),
    var(--ag-paper);
}
.agenda-v2 :where(h1,h2,h3,p) { overflow-wrap: anywhere; }
.agenda-v2 .container { position: relative; }

/* Hero */
.agenda-v2 .agenda-hero {
  min-height: 650px;
  display: flex;
  align-items: center;
  padding: clamp(4.5rem, 8vw, 8rem) 0 clamp(6.5rem, 10vw, 9rem);
  background:
    radial-gradient(circle at 75% 42%, rgba(16, 185, 214, .21), transparent 25rem),
    radial-gradient(circle at 28% 110%, rgba(20, 105, 255, .22), transparent 30rem),
    linear-gradient(120deg, #04111f 0%, #082944 58%, #07354e 100%);
}
.agenda-v2 .agenda-hero::after {
  position: absolute;
  inset: auto 0 0;
  height: 100px;
  content: "";
  background: linear-gradient(to bottom, transparent, rgba(4,17,31,.35));
  pointer-events: none;
}
.agenda-v2 .agenda-hero__grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  gap: clamp(2.5rem, 7vw, 7rem);
}
.agenda-v2 .agenda-hero__copy { position: relative; z-index: 2; }
.agenda-v2 .agenda-hero__topline {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .8rem 1.2rem;
}
.agenda-live-pill {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .4rem .7rem;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  color: #cce9f7;
  font-size: .68rem;
  font-weight: 750;
  background: rgba(255,255,255,.07);
}
.agenda-live-pill i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #34d399;
  box-shadow: 0 0 0 5px rgba(52,211,153,.13);
}
.agenda-v2 .agenda-hero h1 {
  max-width: 900px;
  margin: 1.25rem 0 1.35rem;
  font: 900 clamp(3.15rem, 6.2vw, 6.3rem)/.92 "Playfair Display", Georgia, serif;
  letter-spacing: -.065em;
  text-wrap: balance;
}
.agenda-v2 .agenda-hero h1 em {
  display: inline;
  color: transparent;
  font-style: normal;
  background: linear-gradient(90deg, #67e8f9, #fbbf24);
  -webkit-background-clip: text;
  background-clip: text;
}
.agenda-v2 .agenda-hero__lead {
  max-width: 720px;
  margin: 0;
  color: #c8dae9;
  font-size: clamp(1.02rem, 1.45vw, 1.24rem);
  line-height: 1.75;
}
.agenda-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem 1.25rem;
  margin-top: 1.8rem;
  color: #b9d1e2;
  font-size: .72rem;
  font-weight: 700;
}
.agenda-hero__trust span { display: inline-flex; align-items: center; gap: .42rem; }
.agenda-hero__trust i { color: #67e8f9; }
.agenda-v2 .agenda-hero__visual { min-height: 390px; }
.agenda-visual-grid {
  position: absolute;
  inset: -10%;
  opacity: .18;
  background-image:
    linear-gradient(rgba(255,255,255,.22) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.22) 1px, transparent 1px);
  background-size: 36px 36px;
  -webkit-mask-image: radial-gradient(circle, #000 15%, transparent 70%);
  mask-image: radial-gradient(circle, #000 15%, transparent 70%);
}
.agenda-v2 .agenda-calendar-mark {
  inset: 4% 7%;
  overflow: hidden;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-direction: column;
  border-color: rgba(255,255,255,.22);
  border-radius: 36px;
  text-align: left;
  transform: rotate(2.5deg);
}
.agenda-calendar-mark__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.2rem 1.4rem;
  border-bottom: 1px solid rgba(255,255,255,.13);
  color: #d8eff9;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.agenda-calendar-mark__head i { color: #67e8f9; font-size: 1.25rem; }
.agenda-calendar-mark__body { display: grid; flex: 1; place-content: center; text-align: center; }
.agenda-calendar-mark__body strong {
  color: #fff;
  font: 900 clamp(5rem, 8vw, 8rem)/.8 "Playfair Display", serif;
  letter-spacing: -.06em;
}
.agenda-calendar-mark__body span { margin-top: 1rem; color: #fbbf24; font-weight: 850; text-transform: uppercase; letter-spacing: .12em; }
.agenda-calendar-mark__foot {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid rgba(255,255,255,.13);
}
.agenda-calendar-mark__foot span { padding: 1rem; color: #c7dceb; font-size: .7rem; text-align: center; }
.agenda-calendar-mark__foot span + span { border-left: 1px solid rgba(255,255,255,.13); }
.agenda-calendar-mark__foot b { display: block; color: #fff; font-size: 1.15rem; }

/* Rail de catégories */
.agenda-category-rail {
  position: relative;
  z-index: 6;
  display: flex;
  gap: .7rem;
  overflow-x: auto;
  margin: -52px 0 1.25rem;
  padding: .8rem;
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 22px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 24px 65px -42px rgba(5,23,41,.65);
  backdrop-filter: blur(18px);
  scrollbar-width: thin;
}
.agenda-category-rail a {
  --event-color: #1469ff;
  display: grid;
  grid-template-columns: 32px minmax(max-content,1fr) auto;
  align-items: center;
  gap: .55rem;
  min-height: 52px;
  padding: .55rem .7rem;
  border: 1px solid #e3eaf1;
  border-radius: 14px;
  color: #43576d;
  font-size: .73rem;
  font-weight: 800;
  text-decoration: none;
  background: #fbfdff;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.agenda-category-rail a:hover { border-color: var(--event-color); transform: translateY(-2px); box-shadow: 0 12px 24px -18px var(--event-color); }
.agenda-category-rail a > i { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 10px; color: var(--event-color); background: color-mix(in srgb, var(--event-color) 10%, #fff); }
.agenda-category-rail a > b { display: grid; min-width: 24px; height: 24px; place-items: center; border-radius: 8px; color: #64748b; font-size: .65rem; background: #eef3f7; }
.agenda-category-rail a.is-active { color: #fff; border-color: #1469ff; background: linear-gradient(135deg,#1469ff,#3346c8); box-shadow: 0 14px 26px -17px #1469ff; }
.agenda-category-rail a.is-active > i { color: #fff; background: rgba(255,255,255,.15); }
.agenda-category-rail a.is-active > b { color: #fff; background: rgba(255,255,255,.16); }

/* Filtres */
.agenda-v2 .agenda-filters {
  position: relative;
  z-index: 5;
  grid-template-columns: minmax(230px,1.8fr) repeat(5,minmax(115px,1fr)) auto;
  margin: 0 0 4.5rem;
  padding: 1.15rem;
  border-color: var(--ag-border);
  border-radius: 22px;
  box-shadow: var(--ag-shadow);
}
.agenda-filters__heading {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: 0 .15rem .85rem;
  border-bottom: 1px solid #edf2f7;
}
.agenda-filters__heading > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(135deg,#1469ff,#3346c8); }
.agenda-filters__heading strong, .agenda-filters__heading small { display: block; }
.agenda-filters__heading strong { color: #183047; font-size: .9rem; }
.agenda-filters__heading small { margin-top: .1rem; color: #7b8b9c; font-size: .68rem; }
.agenda-v2 .agenda-filters input,
.agenda-v2 .agenda-filters select {
  border-color: #dfe7ef;
  color: #2d4359;
  background-color: #f8fbfd;
}
.agenda-v2 .agenda-filters input:focus,
.agenda-v2 .agenda-filters select:focus { border-color: #1469ff; outline: 3px solid rgba(20,105,255,.1); background: #fff; }

/* Vedette */
.agenda-v2 .agenda-featured {
  position: relative;
  min-height: 500px;
  border: 0;
  border-radius: 34px;
  background:
    radial-gradient(circle at 90% 10%, rgba(16,185,214,.16), transparent 22rem),
    linear-gradient(135deg,#061525,#0a2945);
  box-shadow: 0 42px 90px -52px rgba(4,18,32,.85);
}
.agenda-v2 .agenda-featured::before {
  position: absolute;
  z-index: 2;
  inset: 18px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 24px;
  content: "";
  pointer-events: none;
}
.agenda-v2 .agenda-featured__media { min-height: 500px; }
.agenda-featured__datecard {
  position: absolute;
  z-index: 3;
  top: 1.5rem;
  left: 1.5rem;
  display: grid;
  width: 78px;
  height: 86px;
  place-content: center;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 20px;
  color: #09243b;
  text-align: center;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 34px -20px #000;
  backdrop-filter: blur(12px);
}
.agenda-featured__datecard strong { font: 900 2.4rem/.85 "Playfair Display",serif; }
.agenda-featured__datecard span { margin-top: .35rem; color: #1469ff; font-size: .68rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.agenda-v2 .agenda-featured__content { position: relative; z-index: 3; }
.agenda-v2 .agenda-featured__content h2 { text-wrap: balance; }
.agenda-featured__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; }
.agenda-featured__actions > span { display: inline-flex; align-items: center; gap: .35rem; color: #a7f3d0; font-size: .72rem; font-weight: 750; }

/* Titres et cartes */
.agenda-v2 .agenda-section-head { align-items: center; margin-bottom: 2rem; }
.agenda-v2 .agenda-section-head > div > p { margin: .55rem 0 0; color: var(--ag-muted); font-size: .9rem; }
.agenda-v2 .agenda-section-head > strong { display: inline-flex; align-items: center; gap: .45rem; padding: .55rem .75rem; border: 1px solid #dce5ed; border-radius: 12px; color: #486079; background: #fff; }
.agenda-v2 .agenda-grid { gap: 1.65rem; }
.agenda-v2 .agenda-card {
  position: relative;
  border-color: var(--ag-border);
  border-radius: 26px;
  box-shadow: 0 24px 58px -43px rgba(9,37,62,.65);
  isolation: isolate;
}
.agenda-v2 .agenda-card::before {
  position: absolute;
  z-index: 3;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: 26px 0 0 26px;
  background: linear-gradient(#1469ff,#10b9d6,#f59e0b);
  content: "";
  opacity: 0;
  transition: opacity .2s ease;
}
.agenda-v2 .agenda-card:hover::before { opacity: 1; }
.agenda-v2 .agenda-card__cover { height: 225px; }
.agenda-v2 .agenda-card__cover::after { position: absolute; inset: 50% 0 0; content: ""; background: linear-gradient(transparent,rgba(4,18,32,.35)); }
.agenda-v2 .agenda-card__type, .agenda-v2 .agenda-card__verified { z-index: 2; }
.agenda-v2 .agenda-card__body { grid-template-columns: 62px 1fr; padding: 1.4rem 1.35rem 1.25rem; }
.agenda-v2 .agenda-card__date { padding-right: .8rem; border-right: 1px solid #e6edf3; }
.agenda-v2 .agenda-card h2 { min-height: 2.45em; font-size: 1.35rem; }
.agenda-v2 .agenda-card__content > p { min-height: 4.7em; }
.agenda-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  margin: 1rem -1.35rem -1.25rem -4.4rem;
  padding: .85rem 1.35rem;
  border-top: 1px solid #edf2f6;
  color: #708194;
  font-size: .68rem;
  font-weight: 700;
  background: #fbfdff;
}
.agenda-card__footer > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.agenda-card__footer > a { flex: 0 0 auto; color: #1469ff; font-weight: 850; text-decoration: none; }
.agenda-card__footer > a i { transition: transform .18s ease; }
.agenda-card:hover .agenda-card__footer > a i { transform: translate(2px,-2px); }
.agenda-v2 .agenda-empty { padding: clamp(3rem,7vw,6rem) 1rem; box-shadow: var(--ag-shadow); }
.agenda-v2 .agenda-empty > span { display: grid; width: 84px; height: 84px; margin: 0 auto 1.4rem; place-items: center; border-radius: 26px; color: #1469ff; font-size: 2.5rem; background: linear-gradient(145deg,#e4efff,#e7fbff); }
.agenda-v2 .agenda-empty > div { display: flex; flex-wrap: wrap; justify-content: center; gap: .7rem; margin-top: 1.5rem; }

/* Page détail */
.agenda-detail.agenda-v2 { padding-top: 0; }
.agenda-v2 .agenda-breadcrumb { padding-top: 1.5rem; }
.agenda-v2 .agenda-detail__hero { position: relative; min-height: 610px; border-radius: 36px; box-shadow: 0 45px 95px -58px #020b13; }
.agenda-v2 .agenda-detail__intro { position: relative; padding-top: 7rem; }
.agenda-detail__date {
  position: absolute;
  top: 2rem;
  right: 2rem;
  display: grid;
  width: 86px;
  height: 96px;
  place-content: center;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 22px;
  text-align: center;
  background: rgba(255,255,255,.08);
}
.agenda-detail__date strong { color: #fff; font: 900 2.8rem/.8 "Playfair Display",serif; }
.agenda-detail__date span, .agenda-detail__date small { color: #fbbf24; font-size: .64rem; font-weight: 900; text-transform: uppercase; }
.agenda-detail__date small { color: #9eb8cb; }
.agenda-detail__quickfacts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: .55rem;
  margin-top: 1.3rem;
}
.agenda-detail__quickfacts span { padding: .7rem; border: 1px solid rgba(255,255,255,.11); border-radius: 12px; color: #aebfce; font-size: .6rem; line-height: 1.35; background: rgba(255,255,255,.045); }
.agenda-detail__quickfacts i, .agenda-detail__quickfacts b { display: block; }
.agenda-detail__quickfacts i { margin-bottom: .3rem; color: #67e8f9; }
.agenda-detail__quickfacts b { overflow: hidden; color: #fff; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.agenda-v2 .agenda-panel { position: relative; padding: clamp(2rem,5vw,3.4rem); box-shadow: var(--ag-shadow); }
.agenda-panel__icon { position: absolute; top: 2rem; right: 2rem; display: grid; width: 54px; height: 54px; place-items: center; border-radius: 17px; color: #1469ff; font-size: 1.35rem; background: #edf4ff; }
.agenda-factbox__head { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
.agenda-factbox__head > span { display: grid; flex: 0 0 auto; width: 44px; height: 44px; place-items: center; border-radius: 14px; color: #fff; background: linear-gradient(135deg,#1469ff,#3346c8); }
.agenda-factbox__head small { color: #718398; font-size: .62rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.agenda-v2 .agenda-factbox__head h2 { margin: .1rem 0 0; font-size: 1.35rem; }
.agenda-reminder__icon { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 15px; color: #7c4a03; font-size: 1.2rem; background: #fbbf24; box-shadow: 0 14px 28px -16px #000; }
.agenda-v2 .agenda-favorite { min-height: 52px; border-radius: 14px; }

/* Formulaire */
.agenda-v2 .agenda-form-layout { grid-template-columns: minmax(300px,.7fr) minmax(0,1.3fr); gap: 2.5rem; }
.agenda-v2 .agenda-form-intro { overflow: hidden; padding: 3rem; border: 1px solid rgba(255,255,255,.1); border-radius: 32px; background: radial-gradient(circle at 100% 0,rgba(16,185,214,.2),transparent 17rem),linear-gradient(145deg,#061525,#0a3558); box-shadow: 0 35px 80px -52px #061525; }
.agenda-v2 .agenda-form-intro::after { position: absolute; right: -60px; bottom: -70px; width: 220px; aspect-ratio: 1; border: 35px solid rgba(255,255,255,.04); border-radius: 50%; content: ""; }
.agenda-v2 .agenda-form-intro h1 { font-size: clamp(2.7rem,4vw,4.2rem); letter-spacing: -.05em; }
.agenda-v2 .agenda-form-intro h1 em { color: #67e8f9; font-style: normal; }
.agenda-v2 .agenda-form-card { padding: clamp(1.7rem,4vw,3.3rem); border-radius: 32px; box-shadow: 0 35px 80px -54px #061525; }
.agenda-form-card__head { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1.5rem; }
.agenda-form-card__head > span { display: grid; flex: 0 0 auto; width: 54px; height: 54px; place-items: center; border-radius: 17px; color: #fff; font-size: 1.3rem; background: linear-gradient(135deg,#1469ff,#3346c8); box-shadow: 0 15px 28px -17px #1469ff; }
.agenda-form-card__head small { color: #1469ff; font-size: .62rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.agenda-v2 .agenda-form-card__head h2 { margin: .15rem 0 .25rem; font: 850 2rem "Playfair Display",serif; }
.agenda-form-card__head p { margin: 0; color: #718398; font-size: .75rem; }
.agenda-form-steps { display: grid; grid-template-columns: repeat(3,1fr); margin-bottom: 2rem; border: 1px solid #e2eaf1; border-radius: 15px; background: #f7fafc; }
.agenda-form-steps span { position: relative; display: flex; align-items: center; justify-content: center; gap: .4rem; padding: .75rem .4rem; color: #8290a0; font-size: .68rem; font-weight: 800; }
.agenda-form-steps span + span { border-left: 1px solid #e2eaf1; }
.agenda-form-steps b { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 8px; color: #65768a; background: #e5ebf1; }
.agenda-form-steps .is-active { color: #1469ff; background: #edf4ff; }
.agenda-form-steps .is-active b { color: #fff; background: #1469ff; }
.agenda-v2 .agenda-field label { font-size: .75rem; letter-spacing: .015em; }
.agenda-v2 .agenda-field input:not([type=checkbox]),
.agenda-v2 .agenda-field select,
.agenda-v2 .agenda-field textarea { min-height: 52px; border-color: #dce5ed; border-radius: 13px; background: #f8fbfd; }
.agenda-v2 .agenda-field textarea { min-height: 115px; }
.agenda-form-submit { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1.8rem; padding-top: 1.3rem; border-top: 1px solid #e8eef3; }
.agenda-form-submit p { max-width: 330px; margin: 0; color: #74869a; font-size: .68rem; line-height: 1.5; }
.agenda-form-submit p i { color: #10a37f; }
.agenda-v2 .agenda-submit-btn { flex: 0 0 auto; margin: 0; }

/* Mode sombre prestige */
[data-bs-theme="dark"] .agenda-v2 {
  --ag-paper: #06131f;
  --ag-text: #e8f2f9;
  --ag-muted: #a4b6c6;
  --ag-border: rgba(148,163,184,.18);
}
[data-bs-theme="dark"] .agenda-category-rail,
[data-bs-theme="dark"] .agenda-v2 .agenda-filters,
[data-bs-theme="dark"] .agenda-v2 .agenda-card,
[data-bs-theme="dark"] .agenda-v2 .agenda-panel,
[data-bs-theme="dark"] .agenda-v2 .agenda-factbox,
[data-bs-theme="dark"] .agenda-v2 .agenda-form-card,
[data-bs-theme="dark"] .agenda-v2 .agenda-empty { color: #e8f2f9; border-color: rgba(148,163,184,.18); background: #0b2032; }
[data-bs-theme="dark"] .agenda-category-rail a { color: #c6d5e1; border-color: #294156; background: #0d263a; }
[data-bs-theme="dark"] .agenda-category-rail a > b { color: #cbd5e1; background: #1a354b; }
[data-bs-theme="dark"] .agenda-filters__heading { border-color: #294156; }
[data-bs-theme="dark"] .agenda-filters__heading strong,
[data-bs-theme="dark"] .agenda-v2 .agenda-card h2 a,
[data-bs-theme="dark"] .agenda-v2 .agenda-form-card__head h2 { color: #eef7fc; }
[data-bs-theme="dark"] .agenda-card__footer { border-color: #294156; color: #a8bac8; background: #0a1b2b; }
[data-bs-theme="dark"] .agenda-v2 .agenda-card__date { border-color: #294156; }
[data-bs-theme="dark"] .agenda-form-steps { border-color: #294156; background: #0a1b2b; }
[data-bs-theme="dark"] .agenda-form-steps span + span { border-color: #294156; }
[data-bs-theme="dark"] .agenda-form-submit { border-color: #294156; }

/* Responsive prestige */
@media (max-width:1199.98px) {
  .agenda-v2 .agenda-filters { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .agenda-v2 .agenda-filters__heading { grid-column:1/-1; }
  .agenda-v2 .agenda-search { grid-column:span 2; }
}
@media (max-width:991.98px) {
  .agenda-v2 .agenda-hero { min-height:auto; }
  .agenda-v2 .agenda-hero__grid,
  .agenda-v2 .agenda-featured,
  .agenda-v2 .agenda-detail__hero,
  .agenda-v2 .agenda-form-layout { grid-template-columns:1fr; }
  .agenda-v2 .agenda-hero__visual { display:none; }
  .agenda-v2 .agenda-featured__media { min-height:330px; }
  .agenda-v2 .agenda-detail__intro { padding-top:7rem; }
  .agenda-v2 .agenda-form-intro { position:relative; top:auto; }
}
@media (max-width:767.98px) {
  .agenda-v2 .agenda-hero h1 { font-size:clamp(2.7rem,12vw,4.2rem); }
  .agenda-v2 .agenda-grid { grid-template-columns:1fr; }
  .agenda-v2 .agenda-card__content > p,
  .agenda-v2 .agenda-card h2 { min-height:0; }
  .agenda-detail__quickfacts { grid-template-columns:1fr; }
  .agenda-detail__quickfacts span { display:grid; grid-template-columns:22px 1fr; align-items:center; column-gap:.35rem; }
  .agenda-detail__quickfacts i { grid-row:1/3; margin:0; }
  .agenda-form-submit { align-items:stretch; flex-direction:column; }
  .agenda-v2 .agenda-submit-btn { width:100%; }
}
@media (max-width:575.98px) {
  .agenda-category-rail { margin-top:-38px; border-radius:17px; }
  .agenda-v2 .agenda-filters { grid-template-columns:1fr; margin-bottom:3rem; padding:.9rem; }
  .agenda-v2 .agenda-search { grid-column:auto; }
  .agenda-v2 .agenda-featured { min-height:0; border-radius:24px; }
  .agenda-v2 .agenda-featured__media { min-height:240px; }
  .agenda-v2 .agenda-featured__content { padding:1.6rem; }
  .agenda-v2 .agenda-section-head { align-items:flex-start; flex-direction:column; }
  .agenda-v2 .agenda-card__body { grid-template-columns:52px 1fr; padding:1.15rem 1rem 1rem; }
  .agenda-card__footer { margin:1rem -1rem -1rem -3.75rem; padding:.8rem 1rem; }
  .agenda-card__footer > span { display:none; }
  .agenda-card__footer { justify-content:flex-end; }
  .agenda-v2 .agenda-detail__hero { border-radius:24px; }
  .agenda-detail__date { top:1.25rem; right:1.25rem; width:74px; height:84px; }
  .agenda-v2 .agenda-detail__intro { padding:6.6rem 1.35rem 1.5rem; }
  .agenda-panel__icon { display:none; }
  .agenda-form-steps span { font-size:0; }
  .agenda-form-steps b { font-size:.68rem; }
}

/* Correctif de contraste — neutralise les couleurs sombres héritées de base.html */
.agenda-v2 .agenda-hero,
.agenda-v2 .agenda-hero h1,
.agenda-v2 .agenda-hero h2,
.agenda-v2 .agenda-hero p {
  color:#fff !important;
}
.agenda-v2 .agenda-hero .agenda-hero__lead { color:#c8dae9 !important; }
.agenda-v2 .agenda-featured__content,
.agenda-v2 .agenda-featured__content h2,
.agenda-v2 .agenda-featured__content p {
  color:#fff !important;
}
.agenda-v2 .agenda-featured__content > p:not(.agenda-featured__date) {
  color:#cbd5e1 !important;
}
.agenda-v2 .agenda-featured__date { color:#fbbf24 !important; }
.agenda-v2 .agenda-featured__meta,
.agenda-v2 .agenda-featured__meta span { color:#dbeafe !important; }
.agenda-v2 .agenda-detail__intro,
.agenda-v2 .agenda-detail__intro h1,
.agenda-v2 .agenda-detail__intro p { color:#fff !important; }
.agenda-v2 .agenda-detail__intro .agenda-detail__lead { color:#cbd5e1 !important; }
.agenda-v2 .agenda-detail__intro .agenda-detail__category { color:#67e8f9 !important; }
.agenda-v2 .agenda-form-intro,
.agenda-v2 .agenda-form-intro h1,
.agenda-v2 .agenda-form-intro p,
.agenda-v2 .agenda-form-intro li { color:#fff !important; }
.agenda-v2 .agenda-form-intro > p,
.agenda-v2 .agenda-moderation-note p { color:#d6e6f4 !important; }
.agenda-v2 .agenda-reminder,
.agenda-v2 .agenda-reminder h2 { color:#fff !important; }
.agenda-v2 .agenda-reminder p,
.agenda-v2 .agenda-reminder label,
.agenda-v2 .agenda-reminder label span { color:#cbd5e1 !important; }
.agenda-v2 .agenda-category-rail a.is-active,
.agenda-v2 .agenda-category-rail a.is-active span,
.agenda-v2 .agenda-category-rail a.is-active b,
.agenda-v2 .agenda-category-rail a.is-active i { color:#fff !important; }
.agenda-v2 .agenda-btn--primary,
.agenda-v2 .agenda-btn--glass { color:#fff !important; }

/* Partage natif de l’événement */
.agenda-v2 .agenda-share__actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.6rem;
}
.agenda-v2 .agenda-share__actions .agenda-share__native {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.48rem;
  width:auto;
  min-width:118px;
  padding:0 .9rem;
  border-color:#1469ff;
  color:#fff;
  font-size:.76rem;
  font-weight:850;
  background:linear-gradient(135deg,#1469ff,#3346c8);
  box-shadow:0 12px 24px -16px #1469ff;
}
.agenda-v2 .agenda-share__actions .agenda-share__native:hover {
  color:#fff;
  filter:brightness(1.08);
  transform:translateY(-2px);
}
.agenda-v2 .agenda-share__actions .agenda-share__native i { color:inherit; }
@media (max-width:575.98px) {
  .agenda-v2 .agenda-share__actions { width:100%; }
  .agenda-v2 .agenda-share__actions .agenda-share__native {
    flex:1 1 auto;
  }
}

/* Contenu riche saisi dans l’éditeur Agenda */
.agenda-v2 .agenda-rich-content {
  color:#334155;
  font-size:1.02rem;
  line-height:1.85;
}
.agenda-v2 .agenda-rich-content > :first-child { margin-top:0; }
.agenda-v2 .agenda-rich-content > :last-child { margin-bottom:0; }
.agenda-v2 .agenda-rich-content h2,
.agenda-v2 .agenda-rich-content h3,
.agenda-v2 .agenda-rich-content h4 {
  margin:1.8em 0 .65em;
  color:#10243b;
  font-family:"Playfair Display",Georgia,serif;
  font-weight:850;
  line-height:1.18;
}
.agenda-v2 .agenda-rich-content h2 {
  padding-bottom:.55rem;
  border-bottom:1px solid #dfe8ef;
  font-size:clamp(1.55rem,3vw,2.05rem);
}
.agenda-v2 .agenda-rich-content h3 { font-size:1.45rem; }
.agenda-v2 .agenda-rich-content h4 { font-size:1.18rem; }
.agenda-v2 .agenda-rich-content p { margin:0 0 1.15rem; }
.agenda-v2 .agenda-rich-content ul,
.agenda-v2 .agenda-rich-content ol {
  margin:1rem 0 1.4rem;
  padding-left:1.5rem;
}
.agenda-v2 .agenda-rich-content li { margin:.4rem 0; padding-left:.25rem; }
.agenda-v2 .agenda-rich-content li::marker { color:#1469ff; font-weight:800; }
.agenda-v2 .agenda-rich-content blockquote {
  position:relative;
  margin:1.6rem 0;
  padding:1.25rem 1.4rem 1.25rem 3.4rem;
  border:1px solid #dbeafe;
  border-left:4px solid #1469ff;
  border-radius:0 16px 16px 0;
  color:#294661;
  font-style:italic;
  background:#f4f8ff;
}
.agenda-v2 .agenda-rich-content blockquote::before {
  position:absolute;
  top:.5rem;
  left:1rem;
  color:#1469ff;
  content:"“";
  font:900 2.8rem/1 Georgia,serif;
}
.agenda-v2 .agenda-rich-content a {
  color:#0d6efd;
  font-weight:700;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.agenda-v2 .agenda-rich-content img {
  max-width:100% !important;
  height:auto !important;
  margin:1rem auto;
  border-radius:16px;
  box-shadow:0 18px 45px -30px rgba(6,21,37,.55);
}
.agenda-v2 .agenda-rich-content figure { max-width:100%; margin:1.5rem 0; }
.agenda-v2 .agenda-rich-content figcaption {
  margin-top:.45rem;
  color:#718398;
  font-size:.75rem;
  text-align:center;
}
.agenda-v2 .agenda-rich-content table {
  display:table;
  width:100% !important;
  margin:1.5rem 0;
  border:1px solid #dce5ed;
  border-collapse:separate;
  border-spacing:0;
  border-radius:14px;
  overflow:hidden;
}
.agenda-v2 .agenda-rich-content th,
.agenda-v2 .agenda-rich-content td {
  padding:.75rem .85rem;
  border-right:1px solid #e3eaf0;
  border-bottom:1px solid #e3eaf0;
  text-align:left;
  vertical-align:top;
}
.agenda-v2 .agenda-rich-content th { color:#fff; font-weight:800; background:#0a3558; }
.agenda-v2 .agenda-rich-content tr:nth-child(even) td { background:#f7fafc; }
.agenda-v2 .agenda-rich-content pre {
  overflow-x:auto;
  padding:1rem;
  border-radius:13px;
  color:#e2e8f0;
  background:#071827;
}
.agenda-v2 .agenda-rich-content hr {
  margin:2rem 0;
  border:0;
  border-top:1px solid #dce5ed;
}
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content,
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content h2,
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content h3,
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content h4 { color:#dceaf4; }
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content h2,
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content hr { border-color:#294156; }
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content blockquote {
  color:#c5d8e6;
  border-color:#294e70;
  border-left-color:#38bdf8;
  background:#0b2940;
}
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content td { border-color:#294156; }
[data-bs-theme="dark"] .agenda-v2 .agenda-rich-content tr:nth-child(even) td { background:#0b2032; }
@media (max-width:767.98px) {
  .agenda-v2 .agenda-rich-content { font-size:.96rem; }
  .agenda-v2 .agenda-rich-content table {
    display:block;
    overflow-x:auto;
    white-space:nowrap;
  }
}

/* =========================================================================
   Cartes d'événements — refonte : pastille de date FLOTTANTE sur le visuel,
   corps pleine largeur, plus compact et plus élégant.
   (surcharge scoping .agenda-v2 ; placée en fin de feuille pour primer)
   ========================================================================= */
.agenda-v2 .agenda-grid {
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
  gap: 1.15rem;
  padding-bottom: 2.5rem;
}
.agenda-v2 .agenda-card {
  position: relative;
  border: 1px solid color-mix(in srgb, var(--agenda-line) 80%, transparent);
  border-radius: 18px;
  box-shadow: 0 12px 28px -22px rgba(15,23,42,.5);
}
.agenda-v2 .agenda-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px -26px rgba(15,23,42,.6);
}
.agenda-v2 .agenda-card::before { display: none; }

/* Visuel plus fin, coins hauts arrondis */
.agenda-v2 .agenda-card__cover { height: 150px; border-radius: 18px 18px 0 0; }
.agenda-v2 .agenda-card__cover::after {
  position: absolute; inset: 0; content: "";
  background: linear-gradient(180deg, rgba(4,18,32,.28) 0%, transparent 34%, transparent 62%, rgba(4,18,32,.34) 100%);
}
.agenda-v2 .agenda-card__placeholder { font-size: 2.7rem; }

/* Pastille de DATE flottante (en haut-gauche du visuel) */
.agenda-v2 .agenda-card__date {
  position: absolute; z-index: 3; top: .65rem; left: .65rem;
  display: block; min-width: 3rem; padding: .3rem .5rem .34rem;
  text-align: center; background: var(--agenda-card, #fff);
  border: 1px solid color-mix(in srgb, var(--agenda-line) 75%, transparent);
  border-radius: 12px; box-shadow: 0 8px 18px -10px rgba(4,18,32,.5);
}
.agenda-v2 .agenda-card__date strong {
  font-family: "Playfair Display", serif; font-size: 1.4rem; line-height: 1;
  color: #0d6efd;
}
.agenda-v2 .agenda-card__date span {
  margin-top: .1rem; font-size: .56rem; letter-spacing: .06em; color: #64748b;
}
/* Badges : type en bas-gauche du visuel, « vérifié » en haut-droite */
.agenda-v2 .agenda-card__type {
  top: auto; bottom: .65rem; left: .65rem; z-index: 3;
  padding: .28rem .6rem; font-size: .57rem; letter-spacing: .05em; border-radius: 999px;
}
.agenda-v2 .agenda-card__verified {
  top: .65rem; left: auto; right: .65rem; z-index: 3;
  padding: .28rem .6rem; font-size: .57rem; letter-spacing: .05em; border-radius: 999px;
}

/* Corps PLEINE LARGEUR (plus de colonne date), compact */
.agenda-v2 .agenda-card__body {
  display: block; padding: .9rem 1.1rem 1.05rem;
}
.agenda-v2 .agenda-card__eyebrow {
  font-size: .58rem; letter-spacing: .06em; margin-bottom: .1rem;
}
.agenda-v2 .agenda-card__eyebrow span:first-child {
  padding: .12rem .5rem; border-radius: 999px;
  background: color-mix(in srgb, var(--event-color, #0d6efd) 12%, transparent);
  color: var(--event-color, #0d6efd);
}
.agenda-v2 .agenda-card h2 {
  margin: .5rem 0 .4rem; min-height: 0;
  font-size: 1.08rem; line-height: 1.28; letter-spacing: -.01em;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.agenda-v2 .agenda-card__content > p {
  min-height: 0; margin: 0 0 .6rem;
  font-size: .82rem; line-height: 1.5;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.agenda-v2 .agenda-card__meta { gap: .4rem .8rem; font-size: .69rem; }
.agenda-v2 .agenda-card__meta i { font-size: .82rem; }
.agenda-v2 .agenda-card__footer {
  margin: .7rem 0 0; padding: .6rem 0 0;
  border-top: 1px solid color-mix(in srgb, var(--agenda-line) 65%, transparent);
  font-size: .72rem; background: transparent;
}
.agenda-v2 .agenda-card__footer > a { font-size: .74rem; }

@media (max-width:575.98px) {
  .agenda-v2 .agenda-grid { gap: .9rem; }
  .agenda-v2 .agenda-card__cover { height: 140px; }
  .agenda-v2 .agenda-card__body { padding: .8rem .9rem .9rem; }
  .agenda-v2 .agenda-card__footer { margin: .7rem 0 0; padding: .6rem 0 0; }
  .agenda-v2 .agenda-card__footer > span { display: inline; }
  .agenda-v2 .agenda-card h2 { font-size: 1rem; }
}
