/* =====================================================================
   Étoiles du Verdon — charte « L'affiche coopérative » (docs/charte-graphique.md)
   Blanc papier · Papier · Nuit · jaune = signal · Albert Sans / Source Sans 3 · Phosphor
   ===================================================================== */

/* ===== Tokens ===== */
:root{
  --c-blanc:#FFFFFF; --c-papier:#F4F1EA; --c-encre:#14212B; --c-nuit:#0B2A3D; --c-nuit-hover:#123B55;
  --c-verdon:#0099E0; --c-action:#0F6B99; --c-action-fonce:#0B5578; --c-givre:#E5F3FB;
  --c-prairie:#8CC63F; --c-vert-texte:#3D6B12; --c-etoile:#FBD91E; --c-etoile-hover:#EACB12; --c-etoile-active:#DDB900;
  --c-gris:#4A5966; --c-filet:#DDD8CC; --c-champ:#6F7F8C; --c-blanc-70:#B6BFC5; --c-alerte:#B42318;
  --line:1px solid var(--c-filet); --line-nuit:1px solid rgba(255,255,255,.15);
  --ff-titre:"Albert Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --ff-texte:"Source Sans 3", "Segoe UI", system-ui, sans-serif;
  --fs-caption:.8125rem; --fs-small:.9375rem;
  --fs-body:clamp(1.0625rem, 1.04rem + .11vw, 1.125rem);
  --fs-lead:clamp(1.1875rem, 1.14rem + .22vw, 1.3125rem);
  --fs-h4:clamp(1.125rem, 1.1rem + .11vw, 1.1875rem);
  --fs-h3:clamp(1.3125rem, 1.24rem + .33vw, 1.5rem);
  --fs-h2:clamp(1.75rem, 1.5rem + 1.09vw, 2.375rem);
  --fs-h1:clamp(2rem, 1.66rem + 1.52vw, 2.875rem);
  --fs-display:clamp(2.25rem, 1.76rem + 2.17vw, 3.5rem);
  --fs-figure:clamp(2.5rem, 2.11rem + 1.74vw, 3.5rem);
  --sp-4:.25rem; --sp-8:.5rem; --sp-12:.75rem; --sp-16:1rem; --sp-24:1.5rem; --sp-32:2rem; --sp-48:3rem; --sp-64:4rem;
  --sp-section:clamp(3.5rem, 2.52rem + 4.35vw, 6rem); --sp-section-compact:clamp(2.5rem, 1.91rem + 2.61vw, 4rem);
  --r-1:4px; --r-2:6px;
  --shadow-header:0 1px 0 var(--c-filet); --shadow-float:0 12px 32px -12px rgba(11,42,61,.25);
  --t:150ms ease-out; --t-open:180ms ease-out;
  --focus:2px solid var(--c-action); --focus-offset:2px;
  --measure:66ch; --gutter:1.5rem; --wide:75rem; --content:42rem;
  --header-h:76px; --header-h-compact:60px;
  --root-pad:clamp(1.25rem,.5rem + 3vw,3rem);
}
@media (max-width:767.98px){ :root{ --gutter:1rem; --header-h:60px; } }

/* ===== Base ===== */
*,*::before,*::after{ box-sizing:border-box; }
[hidden]{ display:none !important; }
html{ -webkit-text-size-adjust:100%; hyphens:auto; scroll-padding-top:calc(var(--header-h) + 1rem); }
body{ font-family:var(--ff-texte); font-size:var(--fs-body); line-height:1.6; color:var(--c-encre); background:var(--c-blanc); text-wrap:pretty; }
h1,h2,h3,h4{ font-family:var(--ff-titre); color:currentColor; text-wrap:balance; }
p,li{ max-inline-size:var(--measure); }
a{ color:var(--c-action); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.2em; transition:color var(--t); }
a:hover{ color:var(--c-action-fonce); }
:focus-visible{ outline:var(--focus); outline-offset:var(--focus-offset); }
.is-nuit :focus-visible{ outline-color:var(--c-etoile); }
strong,b{ font-weight:600; }
img{ max-width:100%; height:auto; }
.edv-icon{ display:inline-block; vertical-align:middle; flex:none; fill:currentColor; }
.tabular{ font-variant-numeric:tabular-nums lining-nums; }
mark{ background:var(--c-etoile); color:var(--c-encre); padding:0 .12em; box-decoration-break:clone; -webkit-box-decoration-break:clone; border-radius:0; }
.edv-skip-link{ position:absolute; left:-999px; top:0; padding:.75rem 1rem; z-index:1000; background:var(--c-nuit); color:#fff; }
.edv-skip-link:focus{ left:1rem; top:1rem; }
::selection{ background:var(--c-etoile); color:var(--c-encre); }
@media (prefers-reduced-motion:reduce){ *,*::before,*::after{ transition-duration:0ms !important; animation:none !important; scroll-behavior:auto !important; } }

/* Prose (contenu éditorial) */
.entry-content h2, .wp-block-post-content h2{ margin-block:2.5rem .75rem; }
.entry-content h3, .wp-block-post-content h3{ margin-block:2rem .5rem; }
.entry-content > h2:first-child, .entry-content > h3:first-child{ margin-top:0; }
.entry-content li+li{ margin-top:.375rem; }
.entry-content hr{ border:0; border-top:var(--line); margin-block:3rem; }
.entry-content ul:not([class]) li, .wp-block-list.is-style-etoiles li{ list-style:none; position:relative; padding-left:1.125rem; }
.entry-content ul:not([class]) li::before, .wp-block-list.is-style-etoiles li::before{ content:""; position:absolute; left:0; top:.65em; width:6px; height:6px; border-radius:50%; background:var(--c-prairie); }
.wp-block-list.is-style-etoiles, .wp-block-list.is-style-coches{ padding-left:0; list-style:none; }
.wp-block-list.is-style-coches li{ position:relative; padding-left:1.6rem; }
.wp-block-list.is-style-coches li::before{ content:""; position:absolute; left:0; top:.28em; width:16px; height:16px; background:var(--c-vert-texte); -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/></svg>") center/contain no-repeat; mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/></svg>") center/contain no-repeat; }
.wp-block-image img, .wp-block-gallery.has-nested-images figure.wp-block-image img{ border-radius:var(--r-1); }
.wp-block-media-text__media img{ border-radius:var(--r-1); }
.wp-block-table table{ border-collapse:collapse; width:100%; font-variant-numeric:tabular-nums; }
.wp-block-table th, .wp-block-table td{ border:0; border-bottom:var(--line); padding:.75rem 1rem; text-align:left; vertical-align:top; }
.wp-block-table thead th{ font-family:var(--ff-titre); font-weight:600; border-bottom:2px solid var(--c-nuit); }
.wp-block-details{ border-top:var(--line); border-radius:0; padding:0; background:transparent; }
.wp-block-details:last-of-type{ border-bottom:var(--line); }
.wp-block-details summary{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.25rem 0; font:600 var(--fs-h4)/1.35 var(--ff-titre); cursor:pointer; list-style:none; }
.wp-block-details summary::-webkit-details-marker{ display:none; }
.wp-block-details summary::after{ content:""; width:20px; height:20px; flex:none; background:currentColor; -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z'/></svg>") center/contain no-repeat; mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z'/></svg>") center/contain no-repeat; transition:transform var(--t); }
.wp-block-details[open] summary::after{ transform:rotate(180deg); }
.wp-block-details > :not(summary){ max-inline-size:none; }
.wp-block-details > *:last-child{ padding-bottom:1.5rem; }
.wp-block-buttons .wp-block-button__link{ font:600 1rem/1 var(--ff-titre); height:48px; display:inline-flex; align-items:center; padding:0 22px; border-radius:var(--r-2); text-decoration:none; transition:background-color var(--t),color var(--t),border-color var(--t); }
.wp-block-button.is-style-outline .wp-block-button__link{ background:var(--c-blanc); color:var(--c-encre); border:1.5px solid var(--c-encre); }
.wp-block-button.is-style-outline .wp-block-button__link:hover{ background:var(--c-papier); }
.wp-block-button.is-style-signal .wp-block-button__link{ background:var(--c-etoile); color:var(--c-encre); }
.wp-block-button.is-style-signal .wp-block-button__link:hover{ background:var(--c-etoile-hover); color:var(--c-encre); }
.wp-block-quote{ font:italic 400 var(--fs-lead)/1.5 var(--ff-texte); }
.wp-block-quote p{ font-size:inherit; }

/* ===== Échelle typographique (classes) ===== */
.display{ font:700 var(--fs-display)/1.08 var(--ff-titre); letter-spacing:-.015em; max-inline-size:20ch; }
.h1{ font:700 var(--fs-h1)/1.1 var(--ff-titre); letter-spacing:-.015em; }
.h2{ font:700 var(--fs-h2)/1.15 var(--ff-titre); letter-spacing:-.01em; }
.h3{ font:600 var(--fs-h3)/1.25 var(--ff-titre); letter-spacing:-.01em; }
.h4{ font:600 var(--fs-h4)/1.35 var(--ff-titre); }
.lead, .has-lead-font-size{ font:400 var(--fs-lead)/1.5 var(--ff-texte) !important; color:var(--c-encre); max-inline-size:52ch; }
.small{ font-size:var(--fs-small); line-height:1.5; color:var(--c-gris); }
.caption{ font-size:var(--fs-caption); line-height:1.45; letter-spacing:.01em; color:var(--c-gris); }
.eyebrow, .edv-kicker, .edv-surtitre{ display:inline-flex; align-items:center; gap:10px; margin:0 0 var(--sp-12); font:600 var(--fs-caption)/1.2 var(--ff-titre) !important; letter-spacing:.12em; text-transform:uppercase; color:var(--c-gris); }
.eyebrow::before, .edv-kicker::before, .edv-surtitre::before{ content:""; width:24px; height:2px; background:var(--c-prairie); flex:none; }
.eyebrow--plain::before{ display:none; }
.is-nuit .eyebrow, .is-nuit .edv-kicker{ color:var(--c-prairie); }
.has-text-align-center.edv-kicker{ display:flex; justify-content:center; }
.has-text-align-center.edv-kicker::before{ display:none; }
.figure{ font:700 var(--fs-figure)/1 var(--ff-titre); letter-spacing:-.02em; font-variant-numeric:tabular-nums lining-nums; white-space:nowrap; }
.figure__label{ display:block; margin-top:var(--sp-8); font:500 var(--fs-small)/1.5 var(--ff-titre); }
.has-gris-color, .has-muted-color{ color:var(--c-gris) !important; }
.has-large-font-size{ font-size:var(--fs-lead) !important; line-height:1.5; }
.has-small-font-size{ font-size:var(--fs-small) !important; }

/* ===== Sections & en-têtes ===== */
.edv-section, .section{ background:var(--c-blanc); color:var(--c-encre); border-radius:0 !important; }
.edv-section--papier, .section--papier, .edv-section--sky, .edv-section--meadow, .edv-section--sun, .edv-section--surface{ background:var(--c-papier); }
.edv-section--nuit, .section--nuit, .is-nuit, .edv-section--contrast{ background:var(--c-nuit); color:var(--c-blanc); }
.is-nuit .small, .is-nuit .caption, .edv-section--nuit .small{ color:var(--c-blanc-70); }
.is-nuit a, .edv-section--nuit a{ color:var(--c-blanc); }
.is-nuit h2, .is-nuit h3, .edv-section--nuit h2, .edv-section--nuit h3{ color:var(--c-blanc); }
.section--flush{ padding-top:0 !important; }
.edv-section-head{ margin-bottom:clamp(2rem,1.5rem + 1.5vw,2.5rem); max-width:var(--content); }
.edv-section-head--center{ margin-inline:auto; text-align:center; }
.edv-section-head--row{ max-width:none; display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:1rem; }
.edv-section-head__titre{ margin:0; font:700 var(--fs-h2)/1.15 var(--ff-titre); letter-spacing:-.01em; }
.edv-section-head__intro{ margin:var(--sp-16) 0 0; font-size:var(--fs-lead); line-height:1.5; max-inline-size:52ch; }
.edv-link-arrow, .link-arrow{ display:inline-flex; align-items:center; gap:var(--sp-8); font:600 1rem/1.4 var(--ff-titre); color:var(--c-action); text-decoration:none; }
.edv-link-arrow::after, .link-arrow::after{ content:""; width:16px; height:16px; background:currentColor; -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M224.49,136.49l-72,72a12,12,0,0,1-17-17L187,140H40a12,12,0,0,1,0-24H187L135.51,64.49a12,12,0,0,1,17-17l72,72A12,12,0,0,1,224.49,136.49Z'/></svg>") center/contain no-repeat; mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M224.49,136.49l-72,72a12,12,0,0,1-17-17L187,140H40a12,12,0,0,1,0-24H187L135.51,64.49a12,12,0,0,1,17-17l72,72A12,12,0,0,1,224.49,136.49Z'/></svg>") center/contain no-repeat; transition:transform var(--t); }
.edv-link-arrow:hover::after, .link-arrow:hover::after{ transform:translateX(3px); }
.edv-link-arrow:hover, .link-arrow:hover{ color:var(--c-action-fonce); text-decoration:underline; }

/* ===== Boutons ===== */
.btn, .edv-btn{ display:inline-flex; align-items:center; justify-content:center; gap:var(--sp-8); height:48px; padding:0 22px; border-radius:var(--r-2);
  font:600 1rem/1 var(--ff-titre); text-decoration:none; border:1.5px solid transparent; cursor:pointer; white-space:nowrap;
  transition:background-color var(--t),color var(--t),border-color var(--t); }
.btn--l, .edv-btn--l{ height:52px; padding:0 24px; } .btn--s, .edv-btn--s{ height:40px; padding:0 16px; font-size:.9375rem; }
.btn--signal, .edv-btn--accent{ background:var(--c-etoile); color:var(--c-encre); }
.btn--signal:hover, .edv-btn--accent:hover{ background:var(--c-etoile-hover); color:var(--c-encre); }
.btn--signal:active, .edv-btn--accent:active{ background:var(--c-etoile-active); }
.btn--primary, .edv-btn--primary{ background:var(--c-nuit); color:var(--c-blanc); }
.btn--primary:hover, .edv-btn--primary:hover{ background:var(--c-nuit-hover); color:var(--c-blanc); }
.is-nuit .btn--primary, .is-nuit .edv-btn--primary{ background:var(--c-blanc); color:var(--c-nuit); }
.btn--secondary, .edv-btn--outline, .edv-btn--ghost, .edv-btn--ghost-dark{ background:var(--c-blanc); color:var(--c-encre); border-color:var(--c-encre); }
.btn--secondary:hover, .edv-btn--outline:hover, .edv-btn--ghost:hover, .edv-btn--ghost-dark:hover{ background:var(--c-papier); color:var(--c-encre); }
.is-nuit .btn--secondary, .is-nuit .edv-btn--outline{ background:transparent; color:var(--c-blanc); border-color:var(--c-blanc); }
.is-nuit .btn--secondary:hover, .is-nuit .edv-btn--outline:hover{ background:rgba(255,255,255,.08); }
.btn[disabled], .btn[aria-disabled="true"], .edv-btn[disabled]{ background:var(--c-filet); color:var(--c-gris); border-color:transparent; cursor:not-allowed; }
.edv-btn.is-loading{ opacity:.6; pointer-events:none; }

/* ===== Cartes, tuiles ===== */
.card, .edv-card{ position:relative; display:flex; flex-direction:column; background:var(--c-blanc); border:var(--line); border-radius:var(--r-2); overflow:hidden; box-shadow:none; transition:border-color var(--t); }
.edv-section--papier .card, .edv-section--papier .edv-card, .section--papier .card{ border-color:transparent; }
.card__media, .edv-card__media{ aspect-ratio:3/2; overflow:hidden; margin:0; background:var(--c-papier); }
.card__media img, .edv-card__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.card__body, .edv-card__body{ padding:var(--sp-24); display:flex; flex-direction:column; gap:var(--sp-8); flex:1; }
.edv-card__link{ display:flex; flex-direction:column; height:100%; color:inherit; text-decoration:none; }
.card__title, .edv-card__titre{ margin:0; font:600 var(--fs-h3)/1.25 var(--ff-titre); letter-spacing:-.01em; color:var(--c-encre); }
.card__meta, .edv-card__meta{ margin:0; font-size:var(--fs-small); line-height:1.5; color:var(--c-gris); font-variant-numeric:tabular-nums; display:flex; flex-wrap:wrap; gap:.25rem .5rem; }
.edv-card__excerpt{ margin:0; font-size:1rem; line-height:1.5; }
.edv-card__cta{ margin-top:auto; padding-top:var(--sp-8); }
.card:hover, .edv-card:hover, .edv-card:focus-within{ border-color:var(--c-verdon); }
.card:hover .card__title, .edv-card:hover .edv-card__titre{ color:var(--c-action); }
.badge, .edv-badge{ display:inline-flex; align-items:center; gap:6px; padding:4px 8px; border-radius:var(--r-1); background:var(--c-papier); position:static; box-shadow:none;
  font:600 var(--fs-caption)/1.2 var(--ff-titre); letter-spacing:.12em; text-transform:uppercase; color:var(--c-vert-texte); }
.edv-tag{ display:inline-block; padding:2px 6px; border-radius:var(--r-1); background:var(--c-papier); color:var(--c-gris); font:600 var(--fs-caption)/1.2 var(--ff-titre); letter-spacing:.06em; text-transform:uppercase; }
.edv-notice{ padding:1rem 1.25rem; border:var(--line); border-radius:var(--r-2); color:var(--c-gris); }

/* Tuiles « Vous êtes ? » (columns core) */
.edv-publics{ gap:var(--sp-24) !important; }
.edv-publics .wp-block-column{ position:relative; display:flex; flex-direction:column; gap:var(--sp-12); padding:var(--sp-24); background:var(--c-blanc); border:var(--line); border-radius:var(--r-2); transition:box-shadow var(--t); }
.edv-section--papier .edv-publics .wp-block-column{ border-color:transparent; }
.edv-publics .wp-block-column:hover, .edv-publics .wp-block-column:focus-within{ box-shadow:inset 0 0 0 2px var(--c-nuit); }
.edv-publics .edv-emoji{ margin:0; color:var(--c-nuit); line-height:1; }
.edv-publics h3{ margin:0; font:600 var(--fs-h4)/1.35 var(--ff-titre); }
.edv-publics p{ margin:0; font-size:var(--fs-small); line-height:1.5; color:var(--c-gris); }
.edv-publics p:last-child{ margin-top:auto; padding-top:var(--sp-8); }
.edv-publics p:last-child a{ font:600 1rem/1.4 var(--ff-titre); text-decoration:none; }
.edv-publics p:last-child a::after{ content:""; position:absolute; inset:0; }

/* Réassurance 4 (columns core) */
.edv-reassurance .wp-block-columns{ gap:0 !important; }
.edv-reassurance .wp-block-column{ display:grid; grid-template-columns:auto 1fr; gap:var(--sp-16); align-items:start; padding:0 var(--sp-24); border-left:var(--line); }
.edv-reassurance .wp-block-column:first-child{ border-left:0; padding-left:0; }
.edv-reassurance .edv-emoji{ margin:0; color:var(--c-verdon); line-height:1; width:auto; height:auto; background:transparent; }
.edv-reassurance h3{ margin:0 0 var(--sp-4); font:600 1.0625rem/1.35 var(--ff-titre); }
.edv-reassurance p{ margin:0; font-size:var(--fs-small); line-height:1.5; color:var(--c-gris); }
@media (max-width:781px){ .edv-reassurance .wp-block-column{ border-left:0; border-top:var(--line); padding:var(--sp-16) 0 0; margin-top:var(--sp-16); } .edv-reassurance .wp-block-column:first-child{ border-top:0; margin-top:0; padding-top:0; } }

/* Pictos 4 (columns core, titres + texte) */
.edv-pictos-4 .wp-block-column{ padding:0; background:transparent; border-radius:0; border-top:2px solid var(--c-filet); padding-top:var(--sp-16); }
.edv-pictos-4 h3{ margin:0 0 var(--sp-8); font:600 var(--fs-h4)/1.35 var(--ff-titre); display:flex; align-items:center; gap:var(--sp-8); }
.edv-pictos-4 h3 .edv-icon{ color:var(--c-verdon); }
.edv-pictos-4 p{ margin:0; font-size:1rem; line-height:1.5; }
.edv-section--papier .edv-pictos-4 h3 .edv-icon{ color:var(--c-action); }

/* Compteurs (fiche centre) */
.edv-compteurs{ gap:0 !important; }
.edv-compteurs .wp-block-column{ text-align:left; padding:0 var(--sp-24); background:transparent; border-radius:0; border-left:var(--line); }
.edv-compteurs .wp-block-column:first-child{ border-left:0; padding-left:0; }
.edv-compteurs p:first-child{ margin:0; font:700 var(--fs-figure)/1 var(--ff-titre); letter-spacing:-.02em; color:var(--c-nuit); font-variant-numeric:tabular-nums; }
.edv-compteurs p:last-child{ margin:var(--sp-8) 0 0; font:500 var(--fs-small)/1.5 var(--ff-titre); color:var(--c-gris); }

/* Onglets saisons (segmented) */
.edv-tabs{ display:inline-flex; border:var(--line); border-radius:var(--r-2); overflow:hidden; margin:0 0 var(--sp-32); }
.edv-tabs__btn{ display:inline-flex; align-items:center; gap:var(--sp-8); height:40px; padding:0 18px; border:0; background:var(--c-blanc); color:var(--c-encre); font:600 .9375rem/1 var(--ff-titre); cursor:pointer; transition:background-color var(--t),color var(--t); }
.edv-tabs__btn + .edv-tabs__btn{ border-left:var(--line); }
.edv-tabs__btn[aria-selected="true"]{ background:var(--c-nuit); color:var(--c-blanc); }
.edv-tabs__btn[aria-selected="true"] .edv-icon{ color:var(--c-etoile); }
.edv-tab-panel[hidden]{ display:none; }
.edv-activites{ display:grid; gap:var(--sp-24) var(--gutter); grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:1023.98px){ .edv-activites{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:639.98px){ .edv-activites{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
.edv-activites figure{ margin:0; }
.edv-activites img{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block; border-radius:var(--r-1); }
.edv-activites figcaption{ margin-top:var(--sp-8); font:600 .9375rem/1.4 var(--ff-texte); color:var(--c-encre); }

/* Timeline (histoire) */
.edv-timeline{ gap:var(--sp-24) !important; }
.edv-timeline .wp-block-column{ padding:var(--sp-16) 0 0; background:transparent; border-radius:0; box-shadow:none; border-left:0; border-top:2px solid var(--c-nuit); }
.edv-timeline p:first-child{ margin:0; font:700 var(--fs-h2)/1 var(--ff-titre); letter-spacing:-.02em; color:var(--c-nuit); font-variant-numeric:tabular-nums; }
.edv-timeline p:last-child{ margin:var(--sp-8) 0 0; font-size:1rem; line-height:1.5; }

/* Partenaires */
.edv-partenaires{ border-top:var(--line); }
.edv-partenaires .wp-block-gallery.has-nested-images{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:var(--sp-24) var(--sp-48) !important; }
.edv-partenaires .wp-block-gallery.has-nested-images figure.wp-block-image{ flex:0 0 auto !important; width:auto !important; margin:0; }
.edv-partenaires .wp-block-gallery.has-nested-images figure.wp-block-image img{ height:40px !important; width:auto !important; max-width:160px; object-fit:contain; filter:grayscale(1) opacity(.75); transition:filter var(--t); border-radius:0; }
.edv-partenaires figure:hover img, .edv-partenaires figure:focus-within img{ filter:none; }
/* Grilles HTML (activités, alentours) : occupent toute la largeur du conteneur wide */
.wp-block-group.alignwide > .wp-block-html, .wp-block-group.alignwide > .edv-tabs, .wp-block-group.alignwide > .edv-tab-panel, .wp-block-group.alignwide > .edv-activites{ max-width:none !important; }

/* Comparatif */
.edv-comparatif table{ background:var(--c-blanc); }
.edv-comparatif tbody th{ font-weight:600; color:var(--c-gris); white-space:nowrap; font-family:var(--ff-titre); font-size:var(--fs-small); }

/* Tarifs */
.edv-tarifs{ gap:var(--sp-24) !important; }
.edv-tarifs .wp-block-column{ background:var(--c-blanc); border:var(--line); border-radius:var(--r-2); padding:var(--sp-24); box-shadow:none; text-align:left; }
.edv-tarifs h3{ margin:0 0 var(--sp-8); font:600 var(--fs-h4)/1.35 var(--ff-titre); }
.edv-tarifs .edv-prix{ margin:0; font:600 1.625rem/1.2 var(--ff-titre); font-variant-numeric:tabular-nums; color:var(--c-nuit); }
.edv-tarifs p{ margin:var(--sp-4) 0 0; font-size:var(--fs-small); color:var(--c-gris); }

/* Media-text */
.edv-media-text{ align-items:center; }
.edv-media-text .wp-block-media-text__media img{ border-radius:var(--r-1); }
.wp-block-media-text.is-image-fill .wp-block-media-text__media{ border-radius:var(--r-1); }

/* Fil d'Ariane */
.edv-breadcrumb{ font-size:var(--fs-small); color:var(--c-gris); }
.edv-breadcrumb a{ text-decoration:none; color:var(--c-gris); }

/* ===== Footer ===== */
.edv-footer{ background:var(--c-nuit); color:var(--c-blanc); }
.edv-footer a{ color:var(--c-blanc); text-decoration:none; }
.edv-footer a:hover{ text-decoration:underline; }
.edv-footer .wp-block-heading{ color:var(--c-blanc-70); font:600 var(--fs-caption)/1.2 var(--ff-titre); letter-spacing:.12em; text-transform:uppercase; margin:0 0 var(--sp-16); }
.edv-footer .wp-block-list{ list-style:none; padding:0; margin:0; }
.edv-footer .wp-block-list li{ margin:0 0 .625rem; padding:0; }
.edv-footer .wp-block-list li::before{ display:none; }
.edv-footer p{ font-size:1rem; line-height:1.5; }
.edv-footer__legal{ font-size:var(--fs-caption); color:var(--c-blanc-70); }
.edv-footer__legal a{ color:var(--c-blanc-70); }
.edv-footer__logo img{ height:40px; width:auto; background:transparent; border-radius:0; padding:0; }
.edv-footer .wp-block-separator{ border:0; border-top:var(--line-nuit); background:transparent !important; opacity:1; }
.edv-footer .wp-block-button__link{ background:var(--c-blanc); color:var(--c-nuit); }
.edv-footer .wp-block-social-links .wp-social-link{ background:transparent; }

/* ===== Formulaires (bases partagées) ===== */
.field, .edv-field{ display:flex; flex-direction:column; gap:6px; font:600 .9375rem/1.4 var(--ff-titre); color:var(--c-encre); }
.field__help, .edv-field__help{ font:400 .875rem/1.4 var(--ff-texte); color:var(--c-gris); }
.edv-field input:not([type=checkbox]):not([type=radio]), .edv-field select, .edv-field textarea, .field__input{ height:48px; width:100%; padding:0 14px; font:400 1rem/1.4 var(--ff-texte); color:var(--c-encre); background:var(--c-blanc);
  border:1px solid var(--c-champ); border-radius:var(--r-1); transition:border-color var(--t); box-shadow:none; }
.edv-field textarea, .field textarea{ height:auto; min-height:120px; padding:12px 14px; }
.edv-field input:focus-visible, .edv-field select:focus-visible, .edv-field textarea:focus-visible{ border-color:var(--c-action); outline:var(--focus); outline-offset:var(--focus-offset); box-shadow:none; }
.edv-field .is-invalid, .edv-choices.is-invalid{ border-color:var(--c-alerte) !important; box-shadow:none !important; }
input[type="checkbox"], input[type="radio"]{ width:20px; height:20px; accent-color:var(--c-action); }
.edv-form__error{ display:flex; gap:6px; align-items:center; margin:1rem 0 0; padding:0; background:transparent; font-size:.875rem; color:var(--c-alerte); font-weight:600; }
