/* Propositions C et D : le dessin est calcule dans le navigateur, les mots restent en HTML. */
.arrival-drawn canvas{display:block;width:100%;height:auto}
.arrival-drawn .drawn-fallback{display:none;width:100%;height:auto}
html:not(.js) .arrival-drawn canvas{display:none}
html:not(.js) .arrival-drawn .drawn-fallback{display:block}
.arrival-drawn .art-caption{position:absolute}
.mark{display:inline-block;vertical-align:middle;width:1em;height:1em}
canvas[data-mark]{display:block;pointer-events:none}
.h2-marked{position:relative;display:inline-block}
.h2-marked canvas[data-mark=underline]{position:absolute;left:0;bottom:-8px;width:min(100%,220px);height:14px}
html:not(.js) canvas[data-mark]{display:none}

/* Section allegee : deux images, une phrase chacune. */
.examples-light .editorial-heading{margin-bottom:26px}.examples-light .example-art{min-height:220px}
.example-line{display:flex;gap:12px;align-items:flex-start;margin-top:16px;font-size:16px;line-height:1.6;color:var(--dir-ink);max-width:520px}.example-line>span{color:var(--dir-blue);font-size:24px;line-height:1}
.examples-light .examples-caption{margin-top:14px}
/* Une seule ligne entre le detail depliable et l'appel qui le suit. */
.examples-details .section-contact{border-top:0;margin-top:4px}
/* Plus d'air a partir des offres : sections, cartes et formulaire. */
.v1-section:has(.offers-preview),.v1-section:has(.offers-preview)~.v1-section,.v1-section:has(.offers-preview)~.contact-section{padding-block:104px!important}
.v1-section:has(.offers-preview) .audience-intro{margin-bottom:48px}.offers-preview{gap:32px}.offer-preview{padding:38px 34px}.offer-preview h3{margin-top:22px}.offer-preview .price{margin-block:26px 14px}.catalogue-link{padding-top:40px}
.team-story{gap:80px}.person-card{margin-top:8px}.preparation{gap:80px}.faq details summary{padding-block:22px}.home-faq .faq details summary{padding-block:24px}
.contact-layout{gap:90px}.contact-layout form{padding:40px}.contact-layout .form-grid{gap:24px}.contact-options.pills{margin-bottom:26px}
.cta-band{padding-block:38px}
/* Panneau de rendez-vous : creneaux fictifs, dialogue natif. */
#rdv-panel{width:min(860px,calc(100% - 32px));max-height:calc(100% - 48px);border:0;padding:0;background:#fff;color:var(--dir-ink);box-shadow:12px 12px 0 var(--dir-blue)}#rdv-panel::backdrop{background:rgba(17,24,39,.55)}
.rdv-inner{padding:34px 38px 38px}.rdv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.rdv-head h2{font-size:30px;margin:0 0 8px}.rdv-head p{margin:0;font-size:15px}
.rdv-close{flex-shrink:0;min-width:44px;min-height:44px;border:1px solid var(--dir-ink);background:#fff;font:inherit;font-size:14px;font-weight:700;padding:8px 14px;cursor:pointer}.rdv-close:hover{background:var(--dir-soft)}
.rdv-slots{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:28px}.rdv-day h3{font-size:14px;line-height:1.3;margin:0 0 10px;min-height:34px;text-transform:capitalize}
.rdv-slot{display:block;width:100%;min-height:44px;margin-bottom:8px;border:1px solid #718198;border-radius:3px;background:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;color:var(--dir-ink)}.rdv-slot:hover{border-color:var(--dir-blue);background:var(--dir-soft)}.rdv-slot[aria-pressed=true]{background:var(--dir-blue);border-color:var(--dir-blue);color:#fff}.rdv-slot:disabled{color:#8ba0be;border-style:dashed;cursor:not-allowed;text-decoration:line-through}
.rdv-step-2{margin-top:30px;border-top:1px solid var(--dir-line);padding-top:24px}.rdv-step-2 p{margin:0 0 16px;font-weight:600}.rdv-step-2 .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rdv-step-2 label{display:block;font-size:14px;font-weight:700;margin-bottom:6px}.rdv-step-2 input{font:inherit;font-size:16px;min-height:46px;width:100%;border:1px solid #718198;border-radius:3px;padding:10px;box-sizing:border-box}.rdv-step-2 .button{margin-top:20px}
.rdv-note{margin-top:22px;font-size:14px;color:var(--dir-muted)}#rdv-error,#rdv-status{margin-top:14px;font-size:14px}#rdv-error{color:#b3261e;font-weight:600}
.direction-encre #rdv-panel{background:var(--dir-paper);box-shadow:12px 12px 0 #1b2433}
@media (max-width:820px){.rdv-slots{grid-template-columns:1fr 1fr}.rdv-step-2 .form-grid{grid-template-columns:1fr}.rdv-inner{padding:24px 20px 28px}.v1-section:has(.offers-preview),.v1-section:has(.offers-preview)~.v1-section,.v1-section:has(.offers-preview)~.contact-section{padding-block:72px!important}.contact-layout{gap:40px}.contact-layout form{padding:26px 20px}}
@media (max-width:540px){.rdv-slots{grid-template-columns:1fr}}
/* Appels a rendez-vous : bande entre deux sections, encart dans les articles, formulaire court. */
.cta-band{margin-top:0;border-top:1px solid var(--dir-line);border-bottom:1px solid var(--dir-line);padding-block:26px}.cta-band p{font-size:18px}
.cta-inline{margin:34px 0;padding:24px 28px;background:var(--dir-soft);display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}.cta-inline p{margin:0;flex:1 1 320px;font-size:16px;line-height:1.6;color:var(--dir-ink)}.cta-inline .button{flex-shrink:0}.cta-inline .text-link{flex-shrink:0}
.contact-options.pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;position:relative}.contact-options.pills legend{width:100%;margin-bottom:8px}.contact-options.pills label{border:1px solid #718198;border-radius:3px;padding:8px 14px;min-height:44px;background:#fff}.contact-options.pills label:has(:checked){border-color:#164bd1;background:#eaf2ff;box-shadow:inset 0 0 0 1px #164bd1}.contact-options.pills .field-error{width:100%;margin:0}.contact-options.pills .field-error:empty{display:none}
.contact-layout button[type=submit]{text-align:center;justify-content:center;font-size:16px}.contact-details{margin-top:24px}.contact-layout .privacy-note{margin-top:14px}
.direction-relief .cta-inline{box-shadow:6px 6px 0 #1e5eff}.direction-encre .cta-inline{background:var(--dir-paper);border:1px solid #1b2433;box-shadow:6px 6px 0 #e4e2d8}
@media (max-width:820px){.cta-inline{padding:20px}}
/* Exemples avant / apres. */
.model-compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.model-before,.model-after{background:#fff;padding:14px 16px;min-height:96px;border:1px solid var(--dir-line)}.model-after{border:2px solid var(--dir-blue)}.model-tag{display:block;font-size:14px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--dir-muted);margin-bottom:10px}.model-after .model-tag{color:#1445b3}
.model-before svg{display:block;width:100%;height:auto;max-width:220px}.model-after p{margin:0;font-size:17px;line-height:1.4;font-weight:600;color:var(--dir-ink)}
.tiny-row,.big-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.tiny-row b{font-size:14px;font-weight:600;color:#5c6577}.tiny-row i{font-style:normal;display:grid;place-items:center;width:16px;height:16px;border:1px solid #b6bec9;font-size:14px;color:#5c6577;flex-shrink:0}.big-row{flex-direction:column;align-items:stretch;gap:8px}.big-row b{font-size:15px;font-weight:700;color:var(--dir-ink)}.model-button{display:grid;place-items:center;min-height:48px;background:var(--dir-blue);color:#fff;font-weight:700;font-size:15px;border-radius:4px}
.direction-dessin .model-before,.direction-dessin .model-after{background:var(--dir-paper)}
@media (max-width:540px){.model-compare{grid-template-columns:1fr}}
/* Blog : illustrations et vignettes. */
.blog-figure{margin:28px 0 8px}.blog-art{display:block;width:100%;height:auto}.blog-thumb{display:block;margin-bottom:16px;line-height:0}.blog-thumb svg{width:100%;height:auto}.breadcrumb{font-size:14px;margin-bottom:18px}.breadcrumb a{color:var(--dir-muted)}
.direction-relief .blog-figure{box-shadow:10px 10px 0 #1d1a2b}.direction-encre .blog-figure svg,.direction-encre .blog-thumb svg{mix-blend-mode:multiply}
/* Equipe a trois, et la section « ce que nous faisons deja » de la page Mairies. */
.people-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px}.person-card img{width:96px;height:112px;object-fit:cover;object-position:top}
.team-grid-large{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.team-grid-large .person{display:flex;flex-direction:column;gap:14px}.team-grid-large .person img{width:120px;height:140px;object-fit:cover;object-position:top}
.rx-body .team-story{grid-template-columns:1fr!important;gap:24px}
.deja-section{padding-block:80px!important}.deja-head{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:end;margin-bottom:36px}.deja-head h2{max-width:640px}.deja-head .section-lead{margin:0}
.deja-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.deja-card{background:#fff;border:1px solid var(--dir-line);padding:30px 30px 26px;display:flex;flex-direction:column;gap:12px;color:var(--dir-blue)}.deja-card svg{width:48px;height:48px}.deja-card h3{font-size:22px;line-height:1.25;color:var(--dir-ink);margin:6px 0 0}.deja-card p{margin:0;color:var(--dir-muted);font-size:15px;line-height:1.7}.deja-card a{margin-top:auto;padding-top:10px;font-weight:700;font-size:14px;color:var(--dir-blue);min-height:44px;display:inline-flex;align-items:center;gap:8px}
.direction-relief .deja-card{box-shadow:8px 8px 0 #eaf2ff}.direction-relief .deja-card:first-child{box-shadow:8px 8px 0 #1e5eff}.direction-dessin .deja-card{background:var(--dir-paper);border-color:#c7c7bd}.direction-encre .deja-card{border-color:#1b2433;box-shadow:6px 6px 0 #e4e2d8}.direction-encre .deja-card h3{font-family:Georgia,serif}
@media (max-width:820px){.people-compact,.team-grid-large,.deja-grid,.deja-head{grid-template-columns:1fr!important}.deja-section{padding-block:56px!important}.deja-head{gap:16px;margin-bottom:24px}}
/* Blog : liste et articles. */
.blog-list{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:34px}
.blog-card{border-top:2px solid var(--dir-ink);padding-top:18px}.blog-card h2{font-size:24px;margin:10px 0 8px;padding:0;line-height:1.25}.blog-card h2 a{text-decoration:none;color:var(--dir-ink)}.blog-card h2 a:hover,.blog-card h2 a:focus-visible{text-decoration:underline;color:var(--dir-blue)}.blog-card p{font-size:15px;margin:0}.blog-meta{margin-top:12px!important;font-size:14px}
.blog-article .lead{font-size:20px}.blog-article h2{font-size:26px}.blog-article h3{font-size:19px;margin-top:22px}.blog-article ul,.blog-article ol{line-height:1.75}.blog-article li{margin:8px 0}.sources{font-size:14px}.blog-next{margin-top:36px;padding-top:18px;border-top:1px solid var(--dir-line);font-weight:600}
.blog-dl div{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:12px 0;border-top:1px solid var(--dir-line)}.blog-dl dt{font-weight:700}.blog-dl dd{margin:0}
.direction-relief .blog-card{border-top-color:var(--dir-blue)}.direction-encre .blog-card h2{font-family:Georgia,serif;letter-spacing:-.02em}
@media (max-width:820px){.blog-list{grid-template-columns:1fr}.blog-dl div{grid-template-columns:1fr;gap:4px}}
/* Six entrees dans la barre : un peu plus serrees entre 1121 et 1300 px. */
@media (min-width:1121px) and (max-width:1300px){.site-header nav{gap:18px}.site-header nav a{font-size:14px}}

/* C · Encre vive : papier, encre, un stylo bleu qui annote. */
.direction-encre .arrival{grid-template-columns:41% 59%;min-height:600px}
.direction-encre .arrival-drawn{width:108%;margin-left:-4%}
.direction-encre .arrival-drawn .art-caption{top:8px;left:52%;background:transparent;box-shadow:none;font-family:Georgia,serif;font-style:italic;font-size:15px;transform:rotate(-4deg);padding:0;color:#1e5eff}
.direction-encre .arrival-drawn figcaption{margin-left:22%;font-size:14px}
.direction-encre h1{font-family:Georgia,serif;letter-spacing:-.03em;font-weight:700}
.direction-encre .arrival-label{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:0;font-size:16px;text-transform:none}
.direction-encre h2,.direction-encre .contact-layout h2{font-family:Georgia,serif;letter-spacing:-.03em}
.direction-encre .section-kicker{font-family:Georgia,serif;font-style:italic;text-transform:none;letter-spacing:0;font-size:15px;color:#1445b3;white-space:normal}
.direction-encre .v1-section.dark .section-kicker,.direction-encre .ticket-card .section-kicker,.direction-encre .offer-preview.featured .section-kicker,.direction-encre .resource-card-v1:nth-child(3) .section-kicker{color:#bcd3ff}
.direction-encre .orientation h2{font-size:31px}
.direction-encre .orientation ul li{position:relative;padding-left:26px}
.direction-encre .orientation ul li canvas{position:absolute;left:0;top:.35em;width:18px;height:14px}
.direction-encre .button{border-radius:3px;box-shadow:3px 3px 0 #1b2433}
.direction-encre .button:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 #1b2433}
.direction-encre .ticket-card{box-shadow:7px 7px 0 #d5d3c7;border:1px solid #1b2433}
.direction-encre .offer-preview{border-color:#1b2433}
.direction-encre .offer-preview .price{font-family:Georgia,serif;letter-spacing:-.02em}
.direction-encre .faq details,.direction-encre .inline-details{border-color:#c7c7bd}
.direction-encre .site-header{border-bottom:1px solid #1b2433}
.direction-encre .example-art{background:var(--dir-paper);border:1px solid #1b2433;box-shadow:6px 6px 0 #e4e2d8}

/* D · Relief bleu : aplats, ombres decalees, la scene a de la profondeur. */
.direction-relief .arrival{min-height:600px}
.direction-relief .arrival-drawn{width:104%;margin-left:-2%}
.direction-relief .arrival-drawn .art-caption{bottom:26px;left:24px;background:#fff;box-shadow:6px 6px 0 #1e5eff;padding:10px 14px;font-weight:700;font-size:14px}
.direction-relief .arrival-drawn figcaption{margin-left:24px}
.direction-relief .orientation{box-shadow:10px 10px 0 #131833;transition:transform .18s ease-out,box-shadow .18s ease-out}
.direction-relief .commerce-choice{box-shadow:10px 10px 0 #1e5eff}
.direction-relief .orientation:hover{transform:translate(-2px,-2px);box-shadow:14px 14px 0 #131833}
.direction-relief .commerce-choice:hover{box-shadow:14px 14px 0 #1e5eff}
.direction-relief .button{border-radius:3px;box-shadow:4px 4px 0 #131833}
.direction-relief .button:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 #131833}
.direction-relief .example-card{box-shadow:8px 8px 0 #c9deff}
.direction-relief .ticket-card{box-shadow:10px 10px 0 #00d8dc}
.direction-relief .offer-preview{box-shadow:8px 8px 0 #eaf2ff}
.direction-relief .offer-preview.featured{box-shadow:8px 8px 0 #1e5eff}
.direction-relief .method-step{border-left:3px solid #1e5eff;padding-left:18px}
.direction-relief .contact-layout form{box-shadow:10px 10px 0 #1e5eff}
.direction-relief .section-kicker{padding:4px 8px;background:#131833;color:#fff;display:inline-block}
.direction-relief .v1-section.dark .section-kicker{background:#00d8dc;color:#131833}
.direction-relief .v1-section.soft .section-kicker{background:#1e5eff}
.direction-relief .v1-section .offer-preview .section-kicker,.direction-relief .v1-section .ticket-card .section-kicker,.direction-relief .v1-section .audience-card .section-kicker,.direction-relief .v1-section .resource-card-v1 .section-kicker,.direction-relief .v1-section .example-card .section-kicker,.direction-relief .example-card .section-kicker{padding:0;background:transparent;color:#1249d2;display:block}
.direction-relief .v1-section .offer-preview.featured .section-kicker,.direction-relief .v1-section .ticket-card .section-kicker,.direction-relief .v1-section .audience-card.dark .section-kicker,.direction-relief .v1-section .resource-card-v1:nth-child(3) .section-kicker{color:#9bc0ff}
@media (prefers-reduced-motion:reduce){.direction-relief .orientation,.direction-relief .button,.direction-encre .button{transition:none}.direction-relief .orientation:hover,.direction-relief .button:hover,.direction-encre .button:hover{transform:none}}
.direction-encre .v1-section .container>div{min-width:0}
@media (max-width:540px){.direction-encre h2{font-size:28px;hyphens:auto}.direction-encre .arrival h1{font-size:46px}.direction-encre .arrival-lead{font-size:19px}}
@media (max-width:820px){.direction-encre .arrival,.direction-relief .arrival{min-height:0;grid-template-columns:1fr}.direction-encre .arrival-drawn,.direction-relief .arrival-drawn{width:100%;margin-left:0}.direction-encre .arrival-drawn .art-caption{left:auto;right:0;top:-6px;font-size:14px}.direction-relief .orientation,.direction-relief .commerce-choice{box-shadow:6px 6px 0 #131833}.direction-relief .commerce-choice{box-shadow:6px 6px 0 #1e5eff}}

/* DX · Relief aere : trois sections en poupee russe, un grand appel en quatrieme. */
.direction-relief-x .rx-section{padding-block:88px!important;max-width:1100px}
.direction-relief-x .rx-section h2{font-size:42px;max-width:720px;margin-top:14px}
.direction-relief-x .rx-lead{font-size:20px;line-height:1.55;max-width:680px;margin:20px 0 36px;color:var(--dir-ink)}
.direction-relief-x .rx-note{font-size:16px;margin:0 0 20px;color:var(--dir-muted)}
.direction-relief-x .rx-section .example-columns{margin-top:0}.direction-relief-x .rx-section .ticket-card{max-width:720px}
.rx-more{margin-top:28px;background:#fff;border:2px solid var(--dir-ink);box-shadow:8px 8px 0 var(--dir-blue)}.rx-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:16px 22px;font-size:20px;font-weight:700;color:var(--dir-ink)}.rx-more>summary::-webkit-details-marker{display:none}.rx-more>summary::after{content:"+";flex-shrink:0;display:grid;place-items:center;width:40px;height:40px;background:var(--dir-blue);color:#fff;font-size:26px;font-weight:400}.rx-more[open]>summary::after{content:"−"}.rx-more[open]>summary{border-bottom:2px solid var(--dir-ink)}.rx-more>summary:hover{background:var(--dir-soft)}.rx-more>summary:focus-visible{outline:3px solid var(--dir-blue);outline-offset:-6px}
.rx-body{padding:26px 22px 30px}
.rx-body .rx-more{margin-top:28px;border:1px solid var(--dir-line);box-shadow:none;background:var(--dir-soft)}.rx-body .rx-more>summary{font-size:17px;min-height:60px;padding:12px 18px}.rx-body .rx-more>summary::after{width:34px;height:34px;font-size:22px;background:#131833}.rx-body .rx-more[open]>summary{border-bottom:1px solid var(--dir-line)}.rx-body .rx-more>summary:hover{background:#dfe9fb}.rx-body .rx-body{padding:22px 18px 26px;background:#fff}
.rx-body .obstacle-list{margin:0}.rx-body .method-steps{margin-top:8px;background:#131833;padding:28px;color:#fff}.rx-body .method-step h3{color:#fff}.rx-body .method-step p{color:#d1ddf0}.rx-body .method-step{border-left-color:#00d8dc}
.rx-body .offers-preview{margin-top:8px}.rx-body .faq{margin-top:8px}.rx-body .team-story{display:grid;grid-template-columns:1fr 1fr;gap:36px}.rx-body .catalogue-link{padding-top:22px}
.rx-prices{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.rx-prices li{display:flex;flex-direction:column;gap:8px;padding:26px;background:#fff;border:1px solid var(--dir-line);box-shadow:8px 8px 0 #eaf2ff}.rx-prices li:first-child{background:#131833;color:#fff;box-shadow:8px 8px 0 var(--dir-blue)}.rx-prices span{font-size:14px;font-weight:750;letter-spacing:.1em;color:var(--dir-blue)}.rx-prices li:first-child span{color:#9bc0ff}.rx-prices strong{font-size:18px;line-height:1.3}.rx-prices b{font-size:28px;font-weight:800;letter-spacing:-.02em;margin-top:8px}
.rx-cta{background:#131833;color:#fff;padding-block:96px}.rx-cta .section-kicker{background:#00d8dc;color:#131833;display:inline-block;padding:4px 8px}.rx-cta h2{font-size:60px;line-height:1.02;letter-spacing:-.04em;margin:18px 0 20px;color:#fff;max-width:820px}.rx-cta p{font-size:20px;color:#d1ddf0;max-width:640px}.rx-cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px 34px;margin-top:36px}.rx-big{min-height:72px;padding:18px 38px;font-size:19px;box-shadow:8px 8px 0 #00d8dc;border-color:var(--dir-blue)}.rx-big:hover{box-shadow:4px 4px 0 #00d8dc}.rx-cta .text-link{color:#fff;font-size:16px}.rx-cta .text-link:hover{color:#00d8dc}
.direction-relief-x .contact-section{padding-block:96px!important}
@media (max-width:820px){.direction-relief-x .rx-section,.rx-cta,.direction-relief-x .contact-section{padding-block:64px!important}.direction-relief-x .rx-section h2{font-size:32px}.rx-cta h2{font-size:40px}.rx-prices{grid-template-columns:1fr}.rx-body{padding:18px 14px 22px}.rx-body .rx-body{padding:16px 12px 20px}.rx-body .team-story{grid-template-columns:1fr}.rx-more>summary{font-size:17px;padding:12px 14px}.rx-big{width:100%;justify-content:center}}

/* 21/09 · Trois interlocuteurs : la grille des pages sectorielles passe de deux a trois colonnes. */
.team-inline .team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.team-inline .person{grid-template-columns:76px 1fr;gap:16px}
.team-inline .person h3{font-size:19px}
.team-inline .person p:not(.eyebrow){font-size:14px}
@media (max-width:1000px){.team-inline .team-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.team-inline .team-grid{grid-template-columns:1fr}}

/* ===== 21/09 · Cadre legal et 106 points de controle ===================== */

/* Bandeau sous le hero : deux regimes, une ligne chacun. */
.legal-strip{background:var(--ink);color:#fff;padding-block:18px}
.legal-strip .container{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 40px}
.legal-strip p{margin:0;color:#d8e2f2;font-size:14px;line-height:1.6;flex:1 1 320px}
.legal-strip p span{display:inline-block;font-size:14px;font-weight:750;letter-spacing:.12em;color:#9fc0ff;margin-right:9px}
.legal-strip .text-link{color:#fff;font-size:14px;white-space:nowrap}
.legal-strip .text-link:hover{color:#9fc0ff}

/* Rappel rapide en tete des pages sectorielles. */
.legal-30{background:var(--surface);padding-block:64px}
.legal-30 h2{font-size:clamp(28px,3vw,38px);margin-bottom:26px}
.legal-facts{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:940px}
.legal-facts li{border-top:1px solid var(--line);padding:16px 0 16px 34px;position:relative;font-size:15.5px;line-height:1.7;color:var(--ink)}
.legal-facts li:last-child{border-bottom:1px solid var(--line)}
.legal-facts li:before{content:'';position:absolute;left:4px;top:25px;width:14px;height:2px;background:var(--blue)}
.legal-30-more{margin-top:24px}

/* La section des 106 points, sur les pages sectorielles. */
.section-106{padding-block:80px}
.section-106 .section-lead{max-width:760px;margin-top:16px;font-size:16px;line-height:1.8}
.section-106 .blocages{margin-top:34px}

/* Le depliant des familles de blocages. */
.blocages-intro{font-size:15px;line-height:1.75;max-width:720px;margin-bottom:22px}
.blocage-theme{border-top:1px solid var(--line)}
.blocage-theme:last-of-type{border-bottom:1px solid var(--line)}
.blocage-theme>summary{display:flex;align-items:baseline;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:17px 34px 17px 0;position:relative}
.blocage-theme>summary::-webkit-details-marker{display:none}
.blocage-theme>summary:after{content:'+';position:absolute;right:4px;top:13px;font-size:20px;color:var(--blue)}
.blocage-theme[open]>summary:after{content:'\2212'}
.blocage-theme>summary:hover .blocage-titre{color:var(--blue)}
.blocage-titre{font-size:16.5px;font-weight:650;color:var(--ink);line-height:1.5}
.blocage-compte{font-size:14px;font-weight:650;letter-spacing:.06em;color:#3a4657;white-space:nowrap;background:var(--soft);border-radius:3px;padding:5px 9px}
.blocage-corps{padding:2px 0 26px}
.blocage-effet{font-size:15.5px;line-height:1.8;color:var(--ink);max-width:700px;margin:0 0 16px}
.blocage-source{font-size:14px;color:var(--muted);margin:0 0 14px}
.blocage-citation{margin:0}
.blocage-criteres{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.blocage-criteres .critere{font-size:14px;line-height:1.7;color:#3a4657;padding-left:52px;position:relative}
.blocage-criteres .critere b{position:absolute;left:0;top:0;font-size:14px;font-weight:700;color:var(--blue);font-variant-numeric:tabular-nums}
.blocages-source{font-size:14px;line-height:1.75;color:var(--muted);margin-top:22px;max-width:760px}

/* Page « cadre legal » : les deux regimes cote a cote. */
.regimes{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:28px 0 18px}
.regime{border:1px solid var(--line);border-radius:var(--radius,6px);padding:28px;background:#fff}
.regime-qui{font-size:14px;font-weight:750;letter-spacing:.14em;color:var(--blue);margin:0 0 12px}
.regime h3{font-size:20px;margin-bottom:18px;line-height:1.3}
.regime dl{margin:0}
.regime dl>div{grid-template-columns:1fr;gap:4px;padding:12px 0;border-bottom:1px solid var(--line);display:grid}
.regime dl>div:last-child{border-bottom:0;padding-bottom:0}
.regime dt{font-size:14px;font-weight:700;letter-spacing:.05em;color:var(--muted);text-transform:uppercase}
.regime dd{margin:0;font-size:14px;line-height:1.7;color:var(--ink)}
.regimes-note{background:var(--soft);padding:18px 22px;font-size:14px;line-height:1.75;border-left:3px solid var(--blue)}
.obligations{padding-left:22px}
.obligations li{margin-bottom:12px;line-height:1.8}
.montants{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px}
.montants caption{text-align:left;font-size:14px;color:var(--muted);padding-bottom:10px}
.montants th,.montants td{text-align:left;padding:13px 14px 13px 0;border-bottom:1px solid var(--line);vertical-align:top}
.montants th{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom-width:2px}
.montants th[scope="row"]{font-size:inherit;letter-spacing:normal;text-transform:none;color:inherit;border-bottom-width:1px}
.montants td:nth-child(2){font-weight:700;white-space:nowrap;color:var(--ink)}
/* 26/09 : tableaux de texte des articles (criteres, dispositifs, etapes) : aucune colonne n'est un montant. */
.montants.texte td:nth-child(2){font-weight:inherit;white-space:normal;color:inherit}
/* Coût sur trois ans de la page Mairies (09/10/2026) : séparé des repères au-dessus, totaux sur une ligne. */
.cout-trois-ans{margin-top:56px;padding-top:32px;border-top:1px solid var(--line)}
.cout-trois-ans .montants td:nth-child(4),.cout-trois-ans .montants td:nth-child(5){white-space:nowrap;font-weight:700;color:var(--ink)}
.verites{list-style:none;padding:0;margin:20px 0}
.verites li{border-top:1px solid var(--line);padding:15px 0;font-size:15px;line-height:1.8}
.verites li:last-child{border-bottom:1px solid var(--line)}
.sources-liste{padding-left:22px;font-size:14px}
.sources-liste li{margin-bottom:8px;line-height:1.7}

@media (max-width:820px){
 .legal-strip .container{gap:12px}
 .legal-strip p{flex:1 1 100%}
 .legal-30{padding-block:48px}
 .section-106{padding-block:56px}
 .regimes{grid-template-columns:1fr;gap:18px}
 .regime{padding:22px}
 .blocage-theme>summary{flex-wrap:wrap;gap:6px}
 .blocage-criteres .critere{padding-left:44px}
 .montants{font-size:14px}
}

/* ===== 21/09 · Panneau de rendez-vous v2 ================================ */
.rdv-secteur{margin-top:24px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.rdv-secteur p{margin:0;font-size:14px;font-weight:700}
.rdv-secteur div{display:flex;gap:10px;flex-wrap:wrap}
.rdv-secteur button{font:inherit;font-size:14px;font-weight:600;min-height:44px;padding:10px 18px;border:1px solid #718198;border-radius:22px;background:#fff;cursor:pointer;color:var(--dir-ink)}
.rdv-secteur button:hover{border-color:var(--dir-blue);background:var(--dir-soft)}
.rdv-secteur button[aria-pressed=true]{background:var(--dir-blue);border-color:var(--dir-blue);color:#fff}

.rdv-semaine{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:26px;border-top:1px solid var(--dir-line);padding-top:20px}
.rdv-semaine p{margin:0;font-size:15px;font-weight:700;text-align:center;flex:1}
.rdv-semaine button{font:inherit;font-size:14px;font-weight:650;min-height:44px;padding:9px 15px;border:1px solid #718198;border-radius:3px;background:#fff;cursor:pointer;color:var(--dir-ink);white-space:nowrap}
.rdv-semaine button:hover:not(:disabled){border-color:var(--dir-blue);background:var(--dir-soft)}
.rdv-semaine button:disabled{color:#8ba0be;border-color:#c7d2e0;cursor:not-allowed}
.rdv-slots{margin-top:20px}
.rdv-vide{font-size:14px;color:#5c6577;margin:0;padding:12px 0;line-height:1.5}

.rdv-chosen-line{font-weight:600}
.rdv-site-field{position:relative}
.rdv-sites-compte{margin:6px 0 0!important;font-size:14px;font-weight:400!important;color:#3a4657}
.rdv-sites{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}
.rdv-suggestion{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;font:inherit;min-height:44px;padding:8px 12px;border:1px solid var(--dir-line);border-radius:3px;background:var(--dir-soft);cursor:pointer;color:var(--dir-ink)}
.rdv-suggestion:hover{border-color:var(--dir-blue);background:#fff}
.rdv-suggestion strong{font-size:14px;font-weight:650}
.rdv-suggestion span{font-size:14px;color:#3a4657}

@media (max-width:820px){
 .rdv-semaine{flex-wrap:wrap}
 .rdv-semaine p{order:-1;flex:1 1 100%}
 .rdv-semaine button{flex:1}
 .rdv-step-2 .form-grid{grid-template-columns:1fr}
}

/* Une carte « ce que nous faisons déjà » porte l'exemple d'abord, le guide ensuite. */
.deja-card .deja-second{font-size:14px;font-weight:500;color:#3a4657;text-decoration:underline;margin-top:6px}
.deja-card .deja-second:hover{color:var(--blue)}

/* Un tableau de données sur un téléphone : les lignes s'empilent, chaque cellule
   porte le libellé de sa colonne. Aucun défilement latéral imposé à la page.
   820 px et non 640 : entre les deux, le tableau gardait sa largeur fixe et
   débordait de 33 px à 768 px : /exemples/cahier-des-charges/, un tableau de
   780 px dans un conteneur de 728 px (mesuré le 21/09/2026). */
@media (max-width:820px),(pointer:coarse){
 .montants,.montants thead,.montants tbody,.montants tr,.montants td,.montants th[scope="row"]{display:block;width:100%}
 .montants thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .montants tr{border:1px solid var(--line);border-radius:5px;padding:4px 14px 10px;margin-bottom:12px}
 .montants td,.montants th[scope="row"]{border:0;padding:10px 0 0;text-align:left}
 .montants td:before,.montants th[scope="row"]:before{content:attr(data-libelle);display:block;font-size:14px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
 .montants td:nth-child(2){white-space:normal}
 .montants caption{padding-bottom:12px}
}

/* Trois entrées de métier : trois colonnes, pas deux et un orphelin. */
.regimes-trois{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.regimes-trois .regime{padding:24px}
.regimes-trois .regime h3{font-size:18px}
.regimes-trois .regime p{font-size:14px}
@media (max-width:980px){.regimes-trois{grid-template-columns:1fr}}

/* ===== 22/09 · Ce que le site doit tenir sur un téléphone ================== */
/* Mesuré le 22/09 sur claren.fr à 390 px : un menu déplié sans fond, des textes
   à 8 px, des cibles tactiles à 15 px. Aucun contrôle ne pouvait les voir, ils
   mesuraient le débordement horizontal, qui était correct.
   Les seuils : 12 px de texte (notre propre promesse, une page du site dit
   qu'un texte trop petit fait renoncer), 44 px de cible autonome (le critère
   2.5.8 des WCAG 2.2 en demande 24, on prend la marge). */

/* Le menu déplié couvre la page au lieu de la laisser transparaître. */
@media (max-width:1100px){
 .site-header #navigation.is-open{
  background:#fff;z-index:30;position:relative;
  width:calc(100% + 36px);margin-inline:-18px;padding:16px 18px 22px;
  border-top:1px solid var(--line);box-shadow:0 22px 34px rgba(17,24,39,.16)}
 .site-header #navigation.is-open a{width:100%;padding-block:11px;min-height:44px;display:flex;align-items:center}
 .site-header #navigation.is-open .nav-list>li+li{border-top:1px solid var(--line)}
 .site-header #navigation.is-open .button{width:100%;justify-content:center;margin-top:10px}
}

@media (max-width:820px){
 /* Plancher de lisibilité. Les surtitres gardent leur interlettrage, ils
    changent seulement de taille : à 8 px, « COFONDATEUR · DG / CTO » ne se lit
    pas, et c'est exactement ce que la page d'accueil reproche aux autres. */
 .eyebrow,.section-kicker,.offer-label,.mini-kicker,.graphic-kicker,.model-tag,
 .route-node,.arrival-label,.graphic-marker,.blocage-compte,.doc-tag,.regime-qui,
 .step-number,.large-number,.deliverable-for,.pill,.ticket-id,.tiny-row,
 .blog-card .section-kicker,.person .eyebrow,.person-card .eyebrow{font-size:14px!important;line-height:1.5}
 .blocage-criteres .critere b,.critere b{font-size:14px}
 .privacy-note,.micro,.demo-note,.field label,.footer-bottom,.footer-bottom a,
 .footer-top p,.footer-top a:not(.brand),figcaption,.montants caption,.blocages-source,
 .blocage-source,.rdv-note,.rdv-sites-compte,.scope-note p,.dark-note,.back-context,
 .pricing-note,.catalogue-link,.resource-date,.legal-strip p{font-size:14px!important}
 dt,th,.regime dt,.montants th{font-size:14px!important}
 .breadcrumb,.sector-trail,.breadcrumb a,.sector-trail a{font-size:14px}

 /* Cibles autonomes : ce qui se touche sans être au milieu d'une phrase.
    Les liens en ligne sont exemptés par le critère lui-même. */
 .footer-top a:not(.brand),.footer-bottom a,.article-summary a,.sector-trail a,
 .breadcrumb a,.offer-details,.resource-shortcuts a,.blog-card h2 a,.deja-card a,
 .catalogue-link a,.back-context a{min-height:44px;display:inline-flex;align-items:center}
 .footer-top>div:last-child{gap:0}
 .article-summary{gap:0 14px;flex-wrap:wrap}
 .brand{min-height:44px;display:inline-flex;align-items:center}
}

/* Trois textes lus qui restaient sous le plancher : le bandeau légal, les
   numéros d'étape de la méthode, et la légende des exemples. */
@media (max-width:820px){
 .legal-strip p span{font-size:14px}
 .process article>span,
 .process [role=listitem]>span,.method-step .step-number,.compact-home .process article>span,.compact-home .process [role=listitem]>span{font-size:14px!important}
 .examples-caption,.blog-meta,.resource-shortcuts span{font-size:14px!important}
}

/* Les deux derniers : l'étiquette de secteur dans la grille des prix, et les
   étapes du parcours d'achat. Deux vrais textes lus, pas du décor. */
@media (max-width:820px){
 .rx-prices li>span{font-size:14px!important}
 .route-labels span,.route-labels strong,.route-node,.route-caption{font-size:14px!important}
}

/* Illustration du parcours d'achat : deux textes lus restés sous le plancher. */
@media (max-width:820px){
 .cart-item span,.cart-item strong,.keyboard-trail p,.cart-sheet p{font-size:14px!important}
}

/* ===== 22/09 · Filtre du blog par public ================================== */
/* Le groupe part caché : sans JavaScript il n'apparaît pas, et les dix articles
   restent lisibles. Un filtre ne doit jamais être une condition pour lire. */
.blog-filtre{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;margin:40px 0 30px;padding-bottom:22px;border-bottom:1px solid var(--line);clear:both}
.blog-filtre>p{margin:0;font-size:14px;font-weight:700}
.blog-filtre>div{display:flex;flex-wrap:wrap;gap:10px}
.blog-filtre button{font:inherit;font-size:14px;font-weight:600;min-height:44px;padding:10px 18px;border:1px solid #718198;border-radius:22px;background:#fff;color:var(--ink);cursor:pointer}
.blog-filtre button:hover{border-color:var(--blue);background:var(--soft)}
.blog-filtre button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}
.blog-filtre-compte{margin:0!important;font-size:14px;color:var(--muted);margin-left:auto!important}
@media (max-width:820px){
 .blog-filtre{gap:10px}
 .blog-filtre>div{width:100%}
 .blog-filtre button{flex:1 1 auto}
 .blog-filtre-compte{margin-left:0!important;width:100%}
}
/* Barometre : « Verifier votre commune » (27/09/2026). Le statut se lit dans le texte ; le signe le double. */
.baro-recherche{border:1px solid var(--line);border-radius:var(--radius,6px);padding:24px;background:#fff;margin:32px 0}
.baro-recherche h2{margin-top:0}
.baro-form label{display:block;font-weight:650;margin-bottom:8px;color:var(--ink)}
.baro-champ{display:flex;gap:12px;flex-wrap:wrap}
.baro-champ input{flex:1 1 240px;min-height:48px;padding:10px 14px;font:inherit;border:2px solid var(--muted);border-radius:4px;background:#fff;color:var(--ink)}
.baro-champ input:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.baro-aide{font-size:14.5px;color:var(--muted);margin:8px 0 0}
.baro-resultat:not(:empty){margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.baro-resultat h3{margin:0 0 8px}
.baro-url{overflow-wrap:anywhere}
.baro-liste{list-style:none;padding:0;margin:12px 0}
.baro-liste li{padding:8px 0 8px 30px;position:relative;border-bottom:1px solid var(--line)}
.baro-liste li::before{position:absolute;left:0;top:8px;font-weight:800}
.baro-oui::before{content:"✓";content:"✓"/"";color:#1e6b52}
.baro-non::before{content:"✕";content:"✕"/"";color:#b3261e}
.baro-limite{font-size:14.5px;color:var(--muted)}

/* Lecture d'un article (27/09/2026). Avant : 15 px gris sur des lignes de 960 px,
   environ 130 signes par ligne. Une colonne de lecture de 68 signes environ, un
   corps de 18 px en encre, un sommaire à droite tiré des h2 (article-lecture.mjs).
   Sous 1 100 px, le sommaire passe avant le texte, replié. */
.blog-article{max-width:1180px}
.blog-article>h1{max-width:920px;font-size:clamp(34px,4.2vw,54px);line-height:1.08}
.blog-article .resource-date{font-size:14px;color:var(--dir-muted);margin-top:4px}
.blog-article .lecture-duree{white-space:nowrap}
.blog-article>.blog-figure{margin:34px 0 0}
.article-grille{display:grid;grid-template-columns:minmax(0,700px) 260px;justify-content:space-between;gap:56px;align-items:start;margin-top:48px}
.article-sommaire{display:block;grid-column:2;grid-row:1;position:sticky;top:28px;max-height:calc(100vh - 56px);overflow:auto;border-top:3px solid var(--dir-ink);padding-top:14px}
.article-corps{grid-column:1;grid-row:1;min-width:0}
.article-sommaire summary{font-size:14px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--dir-ink);padding:0 0 10px;cursor:default}
.article-sommaire summary:after{display:none}
.article-sommaire ol{list-style:none;margin:0;padding:0}
.article-sommaire li{margin:0;border-bottom:1px solid var(--dir-line)}
.article-sommaire a{display:block;padding:10px 0 10px 12px;border-left:3px solid transparent;font-size:14px;line-height:1.45;color:var(--dir-muted);text-decoration:none}
.article-sommaire a:hover{color:var(--dir-ink);text-decoration:underline}
.article-sommaire a[aria-current]{color:var(--dir-ink);font-weight:650}
.article-sommaire a[aria-current]{border-left-color:var(--dir-blue)}
.blog-article .article-corps>.lead{max-width:none;margin:0 0 8px;font-size:21px;line-height:1.6;color:var(--dir-ink);background:#f6f0e4;border-left:4px solid #e8a33d;padding:24px 28px 26px}
.blog-article .article-corps>.lead>.lead-etiquette{display:block;font-size:14px;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:#8a5a12;margin:0 0 8px}
.blog-article .article-corps p,.blog-article .article-corps li{font-size:18px;line-height:1.75;color:#273142}
.blog-article .article-corps p+p{margin-top:20px}
.blog-article .article-corps h2{font-size:30px;line-height:1.2;letter-spacing:-.03em;margin:64px 0 18px;padding-top:0;scroll-margin-top:24px}
.blog-article .article-corps h3{font-size:21px;line-height:1.3;margin:34px 0 10px}
.blog-article .article-corps ul,.blog-article .article-corps ol{padding-left:24px;margin:18px 0}
.blog-article .article-corps li{margin:10px 0;padding-left:4px}
.blog-article .article-corps ul>li::marker{color:var(--dir-blue)}
.blog-article .article-corps ol>li::marker{color:var(--dir-blue);font-weight:700}
.blog-article .article-corps a{color:#1846c8;text-decoration-thickness:1px;text-underline-offset:3px}
.blog-article .article-corps a:hover{text-decoration-thickness:2px}
.blog-article .article-corps .button,.blog-article .article-corps .button:hover{color:#fff}
.blog-article .article-corps strong{color:var(--dir-ink)}
.blog-article .article-corps .montants{margin:28px 0}
.blog-article .article-corps .montants caption{font-size:14px;text-align:left;color:var(--dir-muted);padding-bottom:10px}
.blog-article .article-corps .montants td,.blog-article .article-corps .montants th{font-size:15.5px;line-height:1.55}
.blog-article .article-corps blockquote{font-size:19px;border-left-color:#e8a33d;background:#faf7f0}
.blog-article .article-corps .obstacles tbody th{text-transform:none;letter-spacing:0;font-weight:700;color:var(--dir-ink)}
.blog-article .article-corps .glossaire{margin:24px 0;border-top:1px solid var(--dir-line)}
.blog-article .article-corps .glossaire dt{font-size:17px;font-weight:750;color:var(--dir-ink);padding-top:16px}
.blog-article .article-corps .glossaire dd{margin:4px 0 0;padding-bottom:16px;border-bottom:1px solid var(--dir-line);font-size:17px;line-height:1.65;color:#273142}
.blog-article .article-corps .cta-inline{margin:44px 0}
.blog-article .article-corps .cta-inline p{font-size:17px}
.blog-article .article-corps h2#sources{font-size:20px;margin-top:56px;padding-top:26px;border-top:1px solid var(--dir-line)}
.blog-article .article-corps h2#sources+ul li,.blog-article .article-corps .sources li{font-size:14.5px;line-height:1.6;color:var(--dir-muted)}
.blog-article .article-corps .blog-next{margin-top:40px;padding:22px 26px;border:1px solid var(--dir-ink);box-shadow:6px 6px 0 #1d1a2b;font-size:17px;font-weight:650;color:var(--dir-ink)}
.lecture-barre{display:none}
@supports (animation-timeline:scroll()){
 .lecture-barre{display:block;position:fixed;top:0;left:0;right:0;height:4px;background:#e8a33d;transform-origin:0 50%;transform:scaleX(0);z-index:60;animation:lecture-avance linear both;animation-timeline:scroll(root)}
 @keyframes lecture-avance{to{transform:scaleX(1)}}
}
@media (max-width:1099px){
 .article-grille{grid-template-columns:minmax(0,1fr);gap:0;margin-top:32px}
 .article-sommaire,.article-corps{grid-column:1;grid-row:auto}
 .article-sommaire{position:static;max-height:none;overflow:visible;border:1px solid var(--dir-line);border-top:3px solid var(--dir-ink);padding:0;margin-bottom:32px}
 .article-sommaire summary{padding:14px 18px;cursor:pointer;display:flex;justify-content:space-between}
 .article-sommaire summary:after{display:block;content:'+';position:static;font-size:18px;line-height:1;color:var(--dir-blue)}
 .article-sommaire details[open] summary:after{content:'−'}
 .article-sommaire ol{padding:0 18px 8px}
 .article-sommaire li:last-child{border-bottom:0}
}
@media (max-width:540px){
 .blog-article .article-corps>.lead{font-size:18px;padding:20px 20px 22px}
 .blog-article .article-corps p,.blog-article .article-corps li{font-size:17px;line-height:1.7}
 .blog-article .article-corps h2{font-size:25px;margin-top:48px}
 .blog-article .article-corps h3{font-size:19px}
}

/* Annonce du baromètre sur l'accueil et la page Mairies (27/09/2026). */
.baro-annonce{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center;padding-block:56px!important}
.baro-annonce-art{display:block;line-height:0;box-shadow:10px 10px 0 #1d1a2b}
.baro-annonce-art img{width:100%;height:auto}
.baro-annonce h2{font-size:clamp(28px,3vw,40px);margin:10px 0 16px}
.baro-annonce p:not(.section-kicker){font-size:18px;line-height:1.6;color:var(--dir-ink)}
.baro-annonce-liens{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;margin-top:24px!important}
@media (max-width:820px){.baro-annonce{grid-template-columns:1fr;gap:28px;padding-block:40px!important}.baro-annonce-art{margin-right:10px}}

/* Espace presse (27/09/2026). */
.presse-main{max-width:1080px}
.presse-main>.lead{font-size:21px;line-height:1.55;max-width:720px;color:var(--dir-ink)}
.presse-main>h2{font-size:28px;margin-top:48px}
.presse-main>p{font-size:17px;line-height:1.7;max-width:760px}
.presse-kit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:center;margin:40px 0 56px;padding:32px;background:#f6f0e4;border:1px solid #1d1a2b;box-shadow:8px 8px 0 #1d1a2b}
.presse-kit-art{display:block;line-height:0}.presse-kit-art img{width:100%;height:auto}
.presse-main .presse-kit h2{font-size:28px;margin:8px 0 14px}
.presse-main .presse-kit p:not(.section-kicker){font-size:17px;line-height:1.6;color:#273142}
.presse-kit-liens{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;margin-top:22px!important}
.presse-fichiers{list-style:none;padding:0!important;margin:20px 0 8px}
.presse-fichiers li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;padding:14px 0;border-bottom:1px solid var(--dir-line);font-size:16px}
.presse-fichiers a{font-weight:650;color:#1846c8}
.presse-fichiers span{color:var(--dir-muted);font-size:14px}
.presse-main blockquote p{font-size:18px;color:var(--dir-ink)}
@media (max-width:820px){.presse-kit{grid-template-columns:1fr;padding:22px;gap:24px;margin-right:8px}}

/* À 320 px, Fermer garde sa place sans comprimer tout le texte du dialogue. */
@media (max-width:540px){
 .rdv-head{flex-direction:column-reverse;gap:12px}
 .rdv-close{align-self:flex-end}
 .rdv-head h2{font-size:26px}
 .rdv-semaine button{white-space:normal;min-width:0}
}
.rdv-retry{font:inherit;min-height:44px;padding:10px 16px;background:#fff;color:var(--dir-ink);border:1px solid #718198;cursor:pointer}
