/* ===== Page « Notre accompagnement » (/accompagnement/) — première version du 2026-10-12 =====
   Couleurs du site (marine, bleu #1d4f8a, bleus clairs, orange doux), compositions variées d'une partie à l'autre,
   effet commun des boutons à flèche (composants.css), apparition douce au défilement (accompagnement.js). */

.agte-acc { --acc-marine: #0f2c4c; --acc-bleu: #1d4f8a; --acc-clair: #dbe6f3; --acc-tres-clair: #eef3f9; --acc-orange: #e8913a; --acc-orange-fonce: #9a3412; --acc-doux: #4a5a6e; color: var(--agte-texte, #13202f); }
.agte-acc h2 { color: var(--acc-marine); font-size: clamp(1.5rem, 1.2rem + 1.1vw, 2.1rem); line-height: 1.2; margin: 0 0 1rem; }
.agte-acc h3 { color: var(--acc-marine); font-size: 1.15rem; line-height: 1.3; margin: 0 0 0.45rem; }
.agte-acc p { line-height: 1.65; }
.agte-acc strong { color: var(--acc-marine); font-weight: 500; } /* 2026-10-12 : un cran au-dessus du gras précédent (400) */
.agte-acc__illu { display: block; height: auto; max-width: 100%; }
.agte-acc__section { margin-block: clamp(3.2rem, 2rem + 4vw, 5.5rem); scroll-margin-top: 1rem; }
.agte-acc__num { color: #9fb6d3; font-size: 0.95rem; font-weight: 800; letter-spacing: 0.12em; margin: 0 0 0.35rem; }
.agte-acc__num::after { background: var(--acc-orange); border-radius: 2px; content: ""; display: inline-block; height: 3px; margin-left: 0.6rem; vertical-align: middle; width: 2.2rem; }
.agte-acc__intro-section { color: var(--acc-doux); font-size: 1.08rem; margin: 0 0 2rem; max-width: 62rem; }
.agte-acc__actions { display: flex; flex-wrap: wrap; gap: 0.75rem 1rem; margin: 1.5rem 0 0; }
.agte-acc__actions--centre { justify-content: center; }
.agte-acc__btn { align-items: center; box-sizing: border-box; display: inline-flex; gap: 0.55rem; justify-content: center; min-height: 2.9rem; text-decoration: none; }
.agte-acc__btn.agte-bouton--contact { color: #fff; }
.agte-acc .agte-icone { fill: none; height: 1.4rem; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; width: 1.4rem; }

/* Introduction */
.agte-acc__intro { align-items: center; background: linear-gradient(135deg, #f4f8fc 0%, #e4edf7 100%); border-radius: 24px; display: grid; gap: 1.5rem 2.5rem; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); margin-top: 0.5rem; overflow: hidden; padding: clamp(1.6rem, 1rem + 2.5vw, 3rem); }
.agte-acc__surtitre { align-items: center; background: #fff; border: 1px solid #c9d9ec; border-radius: 999px; color: var(--acc-marine); display: inline-flex; font-size: 0.95rem; font-weight: 600; gap: 0.5rem; line-height: 1.3; margin: 0 0 1.1rem; padding: 0.35rem 0.9rem 0.35rem 0.7rem; } /* 2026-10-12 : pastille blanche, poignée de main orange */
.agte-acc .agte-acc__surtitre-picto { color: var(--acc-orange); display: inline-flex; flex: none; }
.agte-acc .agte-acc__surtitre-picto .agte-icone { height: 1.15rem; width: 1.15rem; }
.agte-acc__h1 { color: var(--acc-marine); font-size: clamp(1.85rem, 1.3rem + 2.1vw, 2.85rem); letter-spacing: -0.01em; line-height: 1.12; margin: 0 0 1rem; }
.agte-acc__chapo { color: #2c3d52; font-size: 1.12rem; margin: 0; max-width: 40rem; }
.agte-acc__reperes { display: flex; flex-wrap: wrap; gap: 0.6rem 2rem; list-style: none; margin: 1.6rem 0 0; padding: 0; }
.agte-acc__reperes li { align-items: center; color: var(--acc-marine); display: flex; font-size: 0.95rem; font-weight: 600; gap: 0.45rem; }
.agte-acc__reperes .agte-icone { color: var(--acc-bleu); height: 1.25rem; width: 1.25rem; }
.agte-acc__intro-illu .agte-acc__illu { margin-inline: auto; max-width: 440px; width: 100%; }

/* Sommaire (2026-10-12, intitulé « Sommaire ») : liens bleus soulignés finement, sans numéro ni contour ni mouvement ;
   trait renforcé sous la rubrique active (aria-current, posé par accompagnement.js), au survol et au toucher. */
.agte-acc__sommaire { align-items: baseline; border-bottom: 1px solid var(--agte-bordure, #d4dce6); display: flex; flex-wrap: wrap; gap: 0.5rem 1.6rem; margin: 1.8rem 0 0; padding: 0 0 1.1rem; }
.agte-acc .agte-acc__sommaire-titre { color: var(--acc-doux); flex: none; font-size: 0.9rem; font-weight: 600; margin: 0; }
.agte-acc__sommaire ul { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; list-style: none; margin: 0; padding: 0; }
.agte-acc__sommaire a { color: var(--acc-bleu); font-size: 0.98rem; font-weight: 500; text-decoration: underline; text-decoration-color: rgba(29, 79, 138, 0.55); text-decoration-thickness: 1px; text-underline-offset: 0.28em; transition: color 0.15s ease, text-decoration-color 0.15s ease; }
.agte-acc__sommaire a:focus-visible, .agte-acc__sommaire a:active { color: var(--acc-marine); text-decoration-color: currentColor; text-decoration-thickness: 2px !important; } /* !important : le thème parent impose 1px à tous les liens */
@media (hover: hover) and (pointer: fine) {
	.agte-acc__sommaire a:hover { color: var(--acc-marine); text-decoration-color: currentColor; text-decoration-thickness: 2px !important; }
}
.agte-acc__sommaire a[aria-current] { color: var(--acc-marine); text-decoration-color: var(--acc-orange); text-decoration-thickness: 2px !important; } /* !important : le thème parent impose 1px à tous les liens */
.agte-acc__sommaire a:focus-visible { border-radius: 3px; outline: var(--agte-focus); outline-offset: 3px; }
.agte-acc__sommaire + .agte-acc__section { margin-top: clamp(2.25rem, 1.6rem + 1.8vw, 3.25rem); } /* écart réduit entre le sommaire et la première section */

/* « Mini-route » (2026-10-12) : visible seulement après le sommaire (classe is-visible posée par accompagnement.js).
   Grand écran (≥ 1440 px) : « ↑ Sommaire » et route verticale bleu clair dans la marge gauche ; le camion avance avec le défilement.
   Ailleurs : petit bouton camion « Sommaire » en bas à gauche, sans route. Au clic seulement : le camion remonte, deux bouffées s'effacent. */
#sommaire:focus, .agte-acc__h1:focus { outline: none; } /* focus placé par le script (retour en haut de page) */
.agte-acc__route { bottom: 20px; left: 20px; opacity: 0; position: fixed; transition: opacity 0.25s ease, visibility 0.25s ease; visibility: hidden; z-index: 50; }
.agte-acc__route.is-visible { opacity: 1; visibility: visible; }
.agte-acc__route-lien, .agte-acc__route-voie { display: none; }
.agte-acc__route-mobile { align-items: center; background: #fff; border: 1px solid #c9d9ec; border-radius: 999px; box-shadow: 0 6px 18px rgba(15, 44, 76, 0.16); box-sizing: border-box; color: var(--acc-marine); display: inline-flex; font-size: 0.88rem; font-weight: 600; gap: 0.45rem; height: 44px; padding: 0 0.95rem 0 0.7rem; text-decoration: none; transition: border-color 0.15s ease, background-color 0.15s ease; }
.agte-acc__route-mobile:hover, .agte-acc__route-mobile:active { background: #f4f8fc; border-color: var(--acc-bleu); }
.agte-acc__route-mobile:focus-visible, .agte-acc__route-lien:focus-visible { outline: var(--agte-focus); outline-offset: 3px; }
.agte-acc__route-mobile-camion { display: block; height: 18px; position: relative; width: 27px; }
.agte-acc__route-mobile-camion svg { display: block; height: 18px; width: 27px; }
.agte-acc__bouffee { background: #9fb6d3; border-radius: 50%; opacity: 0; pointer-events: none; position: absolute; }
.agte-acc__route-mobile .agte-acc__bouffee--1 { bottom: 1px; height: 6px; left: -3px; width: 6px; }
.agte-acc__route-mobile .agte-acc__bouffee--2 { bottom: 1px; height: 8px; left: -8px; width: 8px; }
.agte-acc__route.is-retour .agte-acc__route-mobile-camion svg { animation: agte-acc-camion 0.55s ease-out; }
.agte-acc__route.is-retour .agte-acc__route-mobile .agte-acc__bouffee--1 { animation: agte-acc-bouffee-g 0.45s ease-out; }
.agte-acc__route.is-retour .agte-acc__route-mobile .agte-acc__bouffee--2 { animation: agte-acc-bouffee-g 0.45s ease-out 0.09s; }
@keyframes agte-acc-camion { 0% { transform: none; } 40% { transform: translateY(-5px); } 100% { transform: none; } }
@keyframes agte-acc-bouffee-g { 0% { opacity: 0.9; transform: scale(0.5); } 100% { opacity: 0; transform: translate(-6px, 4px) scale(1.25); } }
@keyframes agte-acc-bouffee-b { 0% { opacity: 0.9; transform: scale(0.5); } 100% { opacity: 0; transform: translateY(8px) scale(1.3); } }
@media (min-width: 1440px) {
	.agte-acc__route { align-items: center; bottom: auto; display: flex; flex-direction: column; gap: 0.7rem; left: 24px; top: 50%; transform: translateY(-50%); } /* près du bord de l'écran, indépendamment du contenu (2026-10-12) */
	.agte-acc__route[hidden] { display: none; }
	.agte-acc__route-mobile { display: none; }
	.agte-acc__route-lien { background: #fff; border: 1px solid #c9d9ec; border-radius: 8px; color: var(--acc-marine); display: block; font-size: 0.8rem; font-weight: 600; line-height: 1.2; padding: 0.3rem 0.45rem; text-decoration: none; transition: border-color 0.15s ease, color 0.15s ease; white-space: nowrap; }
	.agte-acc__route-lien:hover { border-color: var(--acc-bleu); color: var(--acc-bleu); }
	.agte-acc__route-voie { background: #dbe6f3; border-radius: 10px; display: block; height: min(330px, 50vh); position: relative; width: 20px; }
	.agte-acc__route-voie::before { background: repeating-linear-gradient(to bottom, #fff 0 7px, transparent 7px 15px); bottom: 8px; content: ""; left: 9px; position: absolute; top: 8px; width: 2px; }
	.agte-acc__route-camion { display: block; left: 2px; position: absolute; top: 4px; width: 16px; }
	.agte-acc__route-camion svg { display: block; height: 30px; transition: transform 0.2s ease; width: 16px; }
	.agte-acc__route-camion.is-montee svg, .agte-acc__route.is-retour .agte-acc__route-camion svg { transform: rotate(180deg); } /* cabine vers le haut quand il remonte */
	.agte-acc__route-camion .agte-acc__bouffee--1 { height: 6px; left: 1px; top: 31px; width: 6px; }
	.agte-acc__route-camion .agte-acc__bouffee--2 { height: 8px; left: 8px; top: 33px; width: 8px; }
	.agte-acc__route.is-retour .agte-acc__route-camion { transition: transform 0.6s ease-out; }
	.agte-acc__route.is-retour .agte-acc__route-camion .agte-acc__bouffee--1 { animation: agte-acc-bouffee-b 0.45s ease-out; }
	.agte-acc__route.is-retour .agte-acc__route-camion .agte-acc__bouffee--2 { animation: agte-acc-bouffee-b 0.45s ease-out 0.09s; }
}
@media (max-width: 600px) {
	.agte-acc__route { bottom: 14px; left: 14px; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-acc__route, .agte-acc__route-mobile { transition: none; }
	.agte-acc__route.is-retour .agte-acc__route-camion, .agte-acc__route-camion svg, .agte-acc__route-lien { transition: none; }
	.agte-acc__route.is-retour svg, .agte-acc__route.is-retour .agte-acc__bouffee { animation: none !important; }
}

/* Deux colonnes texte / illustration */
.agte-acc__duo { align-items: center; display: grid; gap: 2rem 3.5rem; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); }
.agte-acc__duo--inverse { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); }
.agte-acc__duo-illu .agte-acc__illu { margin-inline: auto; max-width: 400px; width: 100%; }

/* 1. Gestionnaire adapté */
.agte-acc__criteres { display: grid; gap: 0.9rem; list-style: none; margin: 1.2rem 0 0; padding: 0; }
.agte-acc__criteres li { align-items: flex-start; display: flex; gap: 0.85rem; line-height: 1.55; }
.agte-acc__puce { align-items: center; background: var(--acc-clair); border-radius: 12px; color: var(--acc-bleu); display: inline-flex; flex: none; height: 2.5rem; justify-content: center; width: 2.5rem; }
.agte-acc__reseau { border-left: 4px solid var(--acc-orange); margin-top: 2.6rem; max-width: 60rem; padding: 0.2rem 0 0.2rem 1.6rem; }
.agte-acc__reseau p { margin: 0; }
.agte-acc__reseau .agte-acc__actions { margin-top: 1.2rem; }

/* 2. Vérifications : trois colonnes sans cadre, séparées par des filets */
.agte-acc__niveaux { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.agte-acc__niveau { padding: 0.3rem 2rem; }
.agte-acc__niveau:first-child { padding-left: 0; }
.agte-acc__niveau:last-child { padding-right: 0; }
.agte-acc__niveau + .agte-acc__niveau { border-left: 1px solid var(--agte-bordure, #d4dce6); }
.agte-acc__niveau p { color: #2c3d52; margin: 0; }
.agte-acc__niveau-picto { align-items: center; display: flex; height: 2.8rem; margin-bottom: 0.8rem; }
.agte-acc__niveau-picto--dossier { color: var(--acc-bleu); }
.agte-acc__niveau-picto--dossier .agte-icone { height: 2.3rem; width: 2.3rem; }
.agte-acc__ecusson .agte-ecusson__svg { height: 2.6rem; width: 2.4rem; }
.agte-acc__note { color: var(--acc-doux); font-size: 0.95rem; margin: 1.6rem 0 0; }
.agte-acc__note a { color: var(--acc-bleu); font-weight: 600; }
.agte-acc__dispo { align-items: center; background: #fff4e8; border-radius: 20px; display: grid; gap: 1rem 2rem; grid-template-columns: auto minmax(0, 1fr); margin-top: 2.4rem; padding: 1.6rem 2rem; }
.agte-acc__dispo-illu .agte-acc__illu { width: 140px; }
.agte-acc__dispo p { margin: 0; }

/* 3. Dossier et démarrage */
.agte-acc__etapes-dossier { display: grid; gap: 1.2rem; margin-top: 1.4rem; }
.agte-acc__etapes-dossier h3 { align-items: center; display: flex; gap: 0.55rem; margin-bottom: 0.25rem; }
.agte-acc__etapes-dossier h3 .agte-icone { color: var(--acc-orange-fonce); }
.agte-acc__etapes-dossier p { margin: 0; padding-left: 1.95rem; }
.agte-acc__mention { color: var(--acc-doux); font-size: 0.93rem; font-style: italic; margin: 1.4rem 0 0; }
.agte-acc__benefices { background: var(--acc-tres-clair); border-radius: 24px; margin-top: 3rem; padding: 2rem clamp(1.2rem, 0.5rem + 3vw, 3rem) 2.2rem; }
.agte-acc__benefices-titre { text-align: center; }
.agte-acc__benefices ul { display: grid; gap: 1.5rem 2rem; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; margin: 1.3rem 0 0; padding: 0; }
.agte-acc__benefices li { align-items: center; display: flex; flex-direction: column; gap: 0.35rem; text-align: center; }
.agte-acc__benefices li strong { font-size: 1.05rem; }
.agte-acc__benefices li > span:last-child { color: #2c3d52; line-height: 1.5; max-width: 19rem; }
.agte-acc__benefice-picto { align-items: center; background: #fff; border-radius: 50%; box-shadow: 0 6px 16px -10px rgba(15, 44, 76, 0.45); color: var(--acc-bleu); display: inline-flex; height: 3.4rem; justify-content: center; margin-bottom: 0.3rem; width: 3.4rem; }
.agte-acc__benefice-picto .agte-icone { height: 1.6rem; width: 1.6rem; }

/* 4. De A à Z : frise horizontale numérotée (verticale sur mobile) */
.agte-acc__frise { counter-reset: none; display: grid; gap: 1.2rem; grid-template-columns: repeat(6, minmax(0, 1fr)); list-style: none; margin: 0; padding: 2.2rem 0 0; position: relative; }
.agte-acc__frise::before { background: repeating-linear-gradient(90deg, #9fb6d3 0 6px, transparent 6px 12px); content: ""; height: 2px; left: 8%; position: absolute; right: 8%; top: calc(2.2rem + 1.6rem); }
.agte-acc__etape { position: relative; text-align: center; }
.agte-acc__etape-num { align-items: center; background: #fff; border: 2px solid var(--acc-bleu); border-radius: 50%; color: var(--acc-bleu); display: flex; height: 3.2rem; justify-content: center; margin: 0 auto 0.8rem; position: relative; transition: background-color 0.2s ease, color 0.2s ease; width: 3.2rem; }
.agte-acc__etape h3 { font-size: 1.02rem; margin-bottom: 0.3rem; }
.agte-acc__etape-rang { color: var(--acc-bleu); }
.agte-acc__etape p { color: #2c3d52; font-size: 0.93rem; line-height: 1.5; margin: 0; }
.agte-acc__etape--accord .agte-acc__etape-num { background: var(--acc-orange); border-color: var(--acc-orange); color: #fff; }
.agte-acc__etape-marque { color: var(--acc-orange-fonce); font-size: 0.78rem; font-weight: 700; left: 50%; line-height: 1.2; margin: 0; position: absolute; top: -1.9rem; transform: translateX(-50%); white-space: nowrap; }
@media (hover: hover) and (pointer: fine) {
	.agte-acc__etape:hover .agte-acc__etape-num { background: var(--acc-bleu); color: #fff; }
	.agte-acc__etape--accord:hover .agte-acc__etape-num { background: #d9782a; }
}

.agte-acc__roles { align-items: center; display: grid; gap: 2rem 3rem; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); margin-top: 3.2rem; }
.agte-acc__media { margin: 0; }
.agte-acc__media .agte-acc__illu { width: 100%; }
.agte-acc__media video { aspect-ratio: 16 / 9; background: var(--acc-marine); border-radius: 18px; display: block; width: 100%; }
.agte-acc__legende { color: var(--acc-doux); font-size: 0.92rem; line-height: 1.5; margin-top: 0.7rem; text-align: center; }
.agte-acc__qui-bloc { border-left: 4px solid var(--acc-bleu); margin-top: 1rem; padding: 0.15rem 0 0.15rem 1.2rem; }
.agte-acc__qui-bloc--gte { border-left-color: #d9a72c; }
.agte-acc__qui-bloc h4 { color: var(--acc-marine); font-size: 1.02rem; margin: 0 0 0.3rem; }
.agte-acc__qui-bloc p { color: #2c3d52; margin: 0; }

/* 5. Premier échange et frais : bandeau bleu clair, texte et suite d'engagement */
.agte-acc__echange { align-items: center; background: var(--acc-clair) radial-gradient(rgba(29, 79, 138, 0.09) 1.2px, transparent 1.4px) 0 0 / 18px 18px; border-radius: 24px; display: grid; gap: 1.6rem 3rem; grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); padding: clamp(1.6rem, 1rem + 2.5vw, 3rem); }
.agte-acc__echange p { margin: 0 0 0.8rem; }
.agte-acc__echange-texte p:last-child { margin-bottom: 0; }
.agte-acc__num--clair { color: var(--acc-bleu); }
.agte-acc__engagement { display: grid; gap: 0; list-style: none; margin: 0; padding: 0; }
.agte-acc__engagement li { align-items: center; background: #fff; border-radius: 14px; color: #2c3d52; display: grid; font-size: 0.93rem; gap: 0 0.8rem; grid-template-columns: auto 1fr; padding: 0.75rem 1rem; position: relative; }
.agte-acc__engagement li + li { margin-top: 1.4rem; }
.agte-acc__engagement li + li::before { border-left: 2px dashed var(--acc-bleu); content: ""; height: 1.4rem; left: 2.15rem; opacity: 0.55; position: absolute; top: -1.4rem; }
.agte-acc__engagement li > span { align-items: center; background: var(--acc-tres-clair); border-radius: 50%; color: var(--acc-bleu); display: inline-flex; grid-row: span 2; height: 2.4rem; justify-content: center; width: 2.4rem; }
.agte-acc__engagement li:last-child > span { background: var(--acc-orange); color: #fff; }
.agte-acc__engagement li strong { display: block; font-size: 1rem; }

/* Avis Google (affichés seulement lorsqu'une sélection réelle est renseignée) */
.agte-acc__avis-liste { display: grid; gap: 1.2rem; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); list-style: none; margin: 0; padding: 0; }
.agte-acc__avis-item { border-top: 3px solid var(--acc-orange); padding-top: 1rem; }
.agte-acc__avis-note { display: flex; gap: 2px; margin: 0 0 0.5rem; }
.agte-acc__etoile { fill: #d4dce6; height: 1.1rem; width: 1.1rem; }
.agte-acc__etoile.is-pleine { fill: #e8a317; }
.agte-acc__avis-texte { margin: 0; }
.agte-acc__avis-texte p { margin: 0; }
.agte-acc__avis-auteur { color: var(--acc-doux); font-size: 0.9rem; margin: 0.6rem 0 0; }
.agte-acc__avis-lien { margin: 1.4rem 0 0; }

/* Bandeau final (même famille que le bandeau des pages géographiques) */
.agte-acc__fin { background: #173f6b; border-radius: 22px; color: #fff; margin: clamp(3.2rem, 2rem + 4vw, 5rem) 0 1rem; padding: 2rem 1.5rem 2.2rem; text-align: center; }
.agte-acc__fin-picto { display: block; margin: 0 auto 0.85rem; width: 2rem; }
.agte-acc__fin-picto .agte-icone { color: #fff; height: 2rem; width: 2rem; }
.agte-acc__fin-picto::after { background: #f0a04b; border-radius: 2px; content: ""; display: block; height: 3px; margin: 0.45rem auto 0; width: 2.4rem; }
.agte-acc .agte-acc__fin-titre { color: #fff; margin-bottom: 0.5rem; }
.agte-acc__fin-texte { color: #e6eef8; font-size: 1.05rem; margin: 0 auto 1.3rem; max-width: 44rem; }
.agte-acc__fin-actions { display: flex; flex-wrap: wrap; gap: 0.8rem 1.2rem; justify-content: center; margin: 0; }
.agte-acc__fin-btn { align-items: center; border-radius: 8px; box-sizing: border-box; display: inline-flex; font-weight: 600; gap: 0.55rem; justify-content: center; line-height: 1.2; min-height: 2.9rem; min-width: 13rem; padding: 0.65rem 1.3rem; text-decoration: none; transition: transform 0.15s ease, box-shadow 0.25s ease, background-color 0.2s ease; }
.agte-acc a.agte-acc__fin-btn--rappel { --agte-reflet: rgba(240, 160, 75, 0.55); background: #e8913a; color: #13202f; }
.agte-acc a.agte-acc__fin-btn--rappel:hover, .agte-acc a.agte-acc__fin-btn--rappel:focus-visible { background: #f0a04b; color: #13202f; }
.agte-acc a.agte-acc__fin-btn--faq { --agte-reflet: rgba(255, 255, 255, 0.45); background: transparent; border: 1px solid rgba(255, 255, 255, 0.75); color: #fff; font-weight: 500; }
.agte-acc a.agte-acc__fin-btn--faq:hover, .agte-acc a.agte-acc__fin-btn--faq:focus-visible { background: rgba(255, 255, 255, 0.1); color: #fff; }
.agte-acc a.agte-acc__fin-btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.agte-acc__fin-btn .agte-fleche { height: 1.1rem; transition: transform 0.2s ease; width: 1.1rem; }
@media (hover: hover) and (pointer: fine) {
	.agte-acc a.agte-acc__fin-btn:hover, .agte-acc a.agte-acc__fin-btn:focus-visible { box-shadow: 0 14px 12px -12px var(--agte-reflet); transform: translateY(-2px); }
	.agte-acc a.agte-acc__fin-btn:hover .agte-fleche, .agte-acc a.agte-acc__fin-btn:focus-visible .agte-fleche { transform: translateX(3px); }
	.agte-acc a.agte-acc__fin-btn:active { transform: translateY(0); }
}
@media (hover: none) and (pointer: coarse) {
	.agte-acc a.agte-acc__fin-btn:active { transform: scale(0.97); transition-duration: 0.08s; }
}

/* Apparition au défilement (classe posée par accompagnement.js ; rien n'est masqué sans script) */
.agte-acc-anim .agte-acc .agte-acc-r { opacity: 0; transform: translateY(14px); transition: opacity 0.6s ease, transform 0.6s ease; }
.agte-acc-anim .agte-acc .agte-acc-r.is-visible { opacity: 1; transform: none; }
.agte-acc-anim .agte-acc .agte-acc__etape.agte-acc-r { transition-delay: calc(var(--i, 0) * 90ms); }

@media (prefers-reduced-motion: reduce) {
	.agte-acc-anim .agte-acc .agte-acc-r { opacity: 1; transform: none; transition: none; }
	.agte-acc__sommaire a, .agte-acc__etape-num, .agte-acc__fin-btn, .agte-acc__fin-btn .agte-fleche { transition: none; }
	.agte-acc a.agte-acc__fin-btn:hover, .agte-acc a.agte-acc__fin-btn:focus-visible, .agte-acc a.agte-acc__fin-btn:active { transform: none; }
	.agte-acc a.agte-acc__fin-btn:hover .agte-fleche { transform: none; }
}

/* Tablette */
@media (max-width: 960px) {
	.agte-acc__frise { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 2.6rem; }
	.agte-acc__frise::before { display: none; }
	.agte-acc__roles { grid-template-columns: minmax(0, 1fr); }
	.agte-acc__media { margin-inline: auto; max-width: 520px; }
}

/* Mobile */
@media (max-width: 760px) {
	.agte-acc__intro { grid-template-columns: minmax(0, 1fr); }
	.agte-acc__intro-illu { order: -1; }
	.agte-acc__surtitre { font-size: 0.875rem; gap: 0.4rem; padding: 0.3rem 0.75rem 0.3rem 0.6rem; white-space: nowrap; }
	.agte-acc__intro-illu .agte-acc__illu { max-width: 260px; }
	.agte-acc__actions { flex-direction: column; }
	.agte-acc__actions .agte-acc__btn { width: 100%; }
	.agte-acc__sommaire { display: block; padding-bottom: 0.4rem; }
	.agte-acc .agte-acc__sommaire-titre { margin-bottom: 0.2rem; }
	.agte-acc__sommaire ul { display: grid; gap: 0 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.agte-acc__sommaire li { min-width: 0; }
	.agte-acc__sommaire li:last-child { grid-column: 1 / -1; }
	.agte-acc__sommaire a { display: inline-block; padding: 0.55rem 0; }
	.agte-acc__duo, .agte-acc__duo--inverse { grid-template-columns: minmax(0, 1fr); }
	.agte-acc__duo-illu .agte-acc__illu { max-width: 300px; }
	.agte-acc__duo--inverse .agte-acc__duo-illu { order: 2; }
	.agte-acc__niveaux { gap: 1.6rem; grid-template-columns: minmax(0, 1fr); }
	.agte-acc__niveau, .agte-acc__niveau:first-child, .agte-acc__niveau:last-child { padding: 0; }
	.agte-acc__niveau + .agte-acc__niveau { border-left: 0; border-top: 1px solid var(--agte-bordure, #d4dce6); padding-top: 1.4rem; }
	.agte-acc__dispo { grid-template-columns: minmax(0, 1fr); padding: 1.4rem 1.2rem; }
	.agte-acc__dispo-illu .agte-acc__illu { width: 110px; }
	.agte-acc__benefices ul { grid-template-columns: minmax(0, 1fr); }
	.agte-acc__benefices li { align-items: start; column-gap: 0.9rem; display: grid; grid-template-columns: auto minmax(0, 1fr); row-gap: 0.15rem; text-align: left; }
	.agte-acc__benefice-picto { grid-row: span 2; margin: 0; }
	.agte-acc__benefices li > span:last-child { max-width: none; }
	.agte-acc__frise { gap: 0; grid-template-columns: minmax(0, 1fr); padding-top: 0; }
	.agte-acc__frise::before { background: repeating-linear-gradient(180deg, #9fb6d3 0 6px, transparent 6px 12px); bottom: 1.5rem; display: block; height: auto; left: 1.35rem; right: auto; top: 1.5rem; width: 2px; }
	.agte-acc__etape { display: grid; gap: 0 1rem; grid-template-columns: 2.7rem minmax(0, 1fr); padding-bottom: 1.4rem; text-align: left; }
	.agte-acc__etape-num { grid-row: span 3; height: 2.7rem; margin: 0; width: 2.7rem; }
	.agte-acc__etape-num .agte-icone { height: 1.2rem; width: 1.2rem; }
	.agte-acc__etape-marque { grid-column: 2; margin-bottom: 0.2rem; position: static; transform: none; white-space: normal; }
	.agte-acc__etape--accord .agte-acc__etape-num { grid-row: 1 / span 3; }
	.agte-acc__echange { grid-template-columns: minmax(0, 1fr); }
	.agte-acc__fin { border-radius: 16px; padding: 1.5rem 1.1rem 1.6rem; }
	.agte-acc__fin-actions { flex-direction: column; }
	.agte-acc__fin-btn { width: 100%; }
}
@media (max-width: 380px) {
	.agte-acc__surtitre { font-size: 0.8125rem; padding-inline: 0.5rem 0.65rem; }
}

/* ===== 2026-10-14 — « Parlons de votre projet » : photo réelle sous voile bleu (textes, boutons, dimensions inchangés) ===== */
.agte-acc__fin--photo { isolation: isolate; overflow: hidden; position: relative; }
.agte-acc__fin-photo { inset: 0; position: absolute; z-index: -1; }
.agte-acc__fin-photo img { display: block; height: 100%; object-fit: cover; object-position: 50% 60%; width: 100%; }
.agte-acc__fin-photo::after { background: radial-gradient(ellipse at 50% 50%, rgba(23, 63, 107, 0.93) 0%, rgba(23, 63, 107, 0.88) 45%, rgba(23, 63, 107, 0.72) 100%); content: ""; inset: 0; position: absolute; }
/* ===== 2026-10-14 — Emplacement de la future vidéo de présentation (encadré d'introduction, à la place du dessin) =====
   Cadre 16:9, arrondis et bleus du site. En attente : présentation sobre, sans faux bouton de lecture.
   Mobile : sous le texte et les boutons, pleine largeur (prêt pour le lecteur vidéo). */
.agte-acc__video { aspect-ratio: 16 / 9; border-radius: 18px; box-shadow: 0 14px 30px rgba(15, 44, 76, 0.16); margin: 0; overflow: hidden; width: 100%; }
.agte-acc__video video { background: #0f2c4c; display: block; height: 100%; object-fit: cover; width: 100%; }
.agte-acc__video--attente { background: linear-gradient(135deg, #1d4f8a 0%, #173f6b 100%); border: 1px solid rgba(29, 79, 138, 0.25); position: relative; }
.agte-acc__video--attente::before { background: radial-gradient(circle at 85% 15%, rgba(255, 255, 255, 0.10) 0, rgba(255, 255, 255, 0) 45%); content: ""; inset: 0; position: absolute; }
.agte-acc__video-attente { align-items: center; color: #fff; display: flex; flex-direction: column; gap: 0.8rem; height: 100%; justify-content: center; padding: 1rem; position: relative; text-align: center; }
.agte-acc__video-picto { align-items: center; background: rgba(255, 255, 255, 0.12); border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 50%; display: inline-flex; height: 3.4rem; justify-content: center; width: 3.4rem; }
.agte-acc .agte-acc__video-texte { color: #fff; font-size: 1.05rem; font-weight: 600; letter-spacing: 0.01em; margin: 0; }
.agte-acc .agte-acc__video-texte::after { background: #f0a04b; border-radius: 2px; content: ""; display: block; height: 3px; margin: 0.6rem auto 0; width: 2.2rem; }
.agte-acc__intro-video { align-self: center; width: 100%; }
@media (max-width: 760px) {
	.agte-acc__intro-illu.agte-acc__intro-video { order: 0; }
}
/* 2026-10-15 — Vidéo de présentation : bouton « Agrandir la vidéo » (ordinateur) et fenêtre limitée à 960 px (au lieu du plein écran flou) */
.agte-acc__video-agrandir { align-items: center; background: #fff; border: 1px solid #c9d8ea; border-radius: 999px; color: var(--agte-marine, #0f2c4c); cursor: pointer; display: inline-flex; font: inherit; font-size: 0.92rem; font-weight: 600; gap: 0.45rem; margin: 0.85rem auto 0; padding: 0.45rem 1rem; }
.agte-acc__video-agrandir[hidden] { display: none; }
.agte-acc__intro-video { text-align: center; }
.agte-acc__video-agrandir:hover { background: #eef4fb; border-color: var(--agte-bleu, #1d4f8a); }
.agte-acc__video-agrandir:focus-visible, .agte-acc__video-fermer:focus-visible { outline: 3px solid #f0a04b; outline-offset: 2px; }
.agte-acc__video-fenetre { background: transparent; border: 0; box-sizing: border-box; max-height: 92vh; max-width: none; overflow: visible; padding: 3rem 0 0; width: min(92vw, 960px); }
.agte-acc__video-fenetre::backdrop { background: rgba(10, 25, 45, 0.82); }
.agte-acc__video-cadre { aspect-ratio: 16 / 9; background: #0f2c4c; border-radius: 14px; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45); max-height: calc(92vh - 3rem); overflow: hidden; }
.agte-acc__video-cadre video { display: block; height: 100%; object-fit: contain; width: 100%; }
.agte-acc__video-fermer { align-items: center; background: #fff; border: 0; border-radius: 50%; color: var(--agte-marine, #0f2c4c); cursor: pointer; display: inline-flex; height: 2.4rem; justify-content: center; position: absolute; right: 0; top: 0; width: 2.4rem; }
.agte-acc__video-fermer:hover { background: #eef4fb; }