/*
 * Composants de l'annuaire (réutilisables dans la Factory).
 * Les couleurs viennent de la palette du thème (variables --wp--preset--color--*), avec des valeurs de repli.
 */
:root {
	--agte-marine: var(--wp--preset--color--marine, #0f2c4c);
	--agte-bleu: var(--wp--preset--color--bleu, #1d4f8a);
	--agte-bleu-clair: var(--wp--preset--color--bleu-clair, #dbe6f3);
	--agte-fond: var(--wp--preset--color--fond, #f5f7fa);
	--agte-surface: var(--wp--preset--color--surface, #ffffff);
	--agte-texte: var(--wp--preset--color--texte, #13202f);
	--agte-texte-doux: var(--wp--preset--color--texte-doux, #4a5a6e);
	--agte-bordure: var(--wp--preset--color--bordure, #d4dce6);
	--agte-accent: var(--wp--preset--color--accent, #c2410c);
	--agte-accent-fonce: var(--wp--preset--color--accent-fonce, #9a3412);
	--agte-rayon: 10px;
	--agte-focus: 3px solid var(--agte-accent);
}

/* Bandeau de prévisualisation */
.agte-bandeau-preview {
	background: #fff4e5;
	border-bottom: 1px solid #f0c48a;
	color: #5a3200;
	font-size: 0.875rem;
	padding: 0.5rem 1rem;
	text-align: center;
}

/* Conteneur des pages de l'annuaire */
.agte-conteneur {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: var(--wp--style--global--wide-size, 1200px);
	padding: 1.5rem clamp(1rem, 4vw, 2rem) 3rem;
}
.agte-page__titre { margin-block: 0.5rem 1rem; }
.agte-chapo { color: var(--agte-texte-doux); font-size: 1.125rem; max-width: 60ch; }
.agte-sous-titre { font-size: 1.25rem; margin-block: 1.75rem 0.75rem; }
.agte-provisoire {
	background: var(--agte-fond);
	border-left: 4px solid var(--agte-accent);
	border-radius: 4px;
	padding: 0.75rem 1rem;
}

/* Fil d'Ariane */
.agte-ariane ol {
	display: flex;
	flex-wrap: wrap;
	font-size: 0.875rem;
	gap: 0.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.agte-ariane li + li::before { color: var(--agte-texte-doux); content: "›"; margin-right: 0.25rem; }
.agte-ariane a { color: var(--agte-bleu); }
.agte-ariane [aria-current] { color: var(--agte-texte-doux); }

/* Bouton et liens */
.agte-bouton {
	background: var(--agte-accent);
	border: 0;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	padding: 0.7rem 1.1rem;
}
.agte-bouton:hover { background: var(--agte-accent-fonce); }
.agte-bouton:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-lien-fleche { color: var(--agte-bleu); font-weight: 600; text-decoration: none; }
.agte-lien-fleche::after { content: " →"; }
.agte-lien-fleche:hover, .agte-lien-fleche:focus-visible { text-decoration: underline; }

/* Carte */
.agte-carte { margin: 0; }
.agte-carte__svg { display: block; height: auto; max-width: 100%; width: 100%; }
.agte-carte__zone path {
	fill: #e3eaf2;
	stroke: var(--agte-surface);
	stroke-linejoin: round;
	stroke-width: 1.5;
	transition: fill 0.15s ease;
}
.agte-carte__zone--pourvue path { fill: #a9c4e4; }
.agte-carte__zone:hover path,
.agte-carte__zone:focus path { fill: var(--agte-bleu); }
.agte-carte__zone:focus { outline: none; }
.agte-carte__zone:focus-visible path { fill: var(--agte-marine); stroke: var(--agte-accent); stroke-width: 3; }
.agte-carte__info {
	color: var(--agte-texte-doux);
	font-size: 0.95rem;
	margin: 0.5rem 0 0;
	min-height: 1.5em;
}
.agte-carte__info.is-actif { color: var(--agte-marine); font-weight: 600; }
.agte-carte__legende { color: var(--agte-texte-doux); font-size: 0.85rem; margin-top: 0.5rem; }
.agte-carte__legende small { display: inline-block; margin-top: 0.25rem; }
.agte-pastille {
	background: #e3eaf2;
	border: 1px solid var(--agte-bordure);
	border-radius: 3px;
	display: inline-block;
	height: 0.8em;
	margin-left: 0.5rem;
	vertical-align: middle;
	width: 0.8em;
}
.agte-legende__item { display: inline-flex; align-items: center; gap: 0.4rem; margin-right: 1rem; }
.agte-legende__item .agte-pastille { margin-left: 0; }
.agte-carte__legende small { display: block; }
.agte-pastille--pourvue { background: #a9c4e4; }

/* Recherche */
.agte-recherche {
	background: var(--agte-surface);
	border: 1px solid var(--agte-bordure);
	border-radius: var(--agte-rayon);
	padding: 1rem 1.25rem;
}
.agte-recherche__label { display: block; font-weight: 700; margin-bottom: 0.5rem; }
.agte-recherche__ligne { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.agte-recherche__champ {
	border: 1px solid #8a9aad;
	border-radius: 6px;
	flex: 1 1 14rem;
	font: inherit;
	min-width: 0;
	padding: 0.65rem 0.75rem;
}
.agte-recherche__champ:focus-visible { outline: var(--agte-focus); outline-offset: 1px; }
.agte-recherche__champ[aria-invalid="true"] { border-color: #b42318; }
.agte-recherche__aide { color: var(--agte-texte-doux); font-size: 0.85rem; margin: 0.5rem 0 0; }
.agte-recherche__erreur { color: #b42318; font-weight: 600; margin: 0.5rem 0 0; }

/* Liste des régions */
.agte-regions { columns: 2 14rem; gap: 1.5rem; list-style: none; margin: 0; padding: 0; }
.agte-regions li { break-inside: avoid; margin-bottom: 0.5rem; }
.agte-regions a { color: var(--agte-bleu); font-weight: 600; }
.agte-regions__effectif { color: var(--agte-texte-doux); display: block; font-size: 0.8rem; }
.agte-regions--pied { columns: 2 10rem; }
.agte-regions--pied li { margin-bottom: 0.35rem; }
.agte-regions--pied a { color: inherit; font-weight: 400; }
.agte-liste-liens { columns: 2 14rem; gap: 1.5rem; padding-left: 1.2rem; }

/* Annuaire : carte + outils */
.agte-annuaire { align-items: start; display: grid; gap: 2rem; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
@media (max-width: 880px) { .agte-annuaire { grid-template-columns: 1fr; } }

/* Cartes de profil */
.agte-profils {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}
.agte-profil {
	background: var(--agte-surface);
	border: 1px solid var(--agte-bordure);
	border-radius: var(--agte-rayon);
	display: flex;
	flex-direction: column;
	padding: 1.25rem;
}
.agte-profil__fictif {
	align-self: flex-start;
	background: #fff4e5;
	border-radius: 999px;
	color: #5a3200;
	font-size: 0.75rem;
	font-weight: 700;
	margin: 0 0 0.75rem;
	padding: 0.15rem 0.6rem;
}
.agte-profil__entete { align-items: center; display: flex; gap: 0.75rem; }
.agte-profil__avatar { fill: var(--agte-bleu-clair); flex: none; height: 48px; width: 48px; }
.agte-profil__avatar-forme { fill: var(--agte-bleu); }
.agte-profil__prenom { font-size: 1.25rem; margin: 0; }
.agte-profil__infos { font-size: 0.925rem; margin: 1rem 0; }
.agte-profil__infos dt { color: var(--agte-texte-doux); font-size: 0.8rem; font-weight: 600; margin-top: 0.6rem; text-transform: uppercase; letter-spacing: 0.02em; }
.agte-profil__infos dd { margin: 0.15rem 0 0; }
.agte-profil .agte-lien-fleche { margin-top: auto; }

/* ===== V0.2 ===== */
.agte-icone { flex: none; height: 1.15em; width: 1.15em; }

/* Logo */
.agte-logo { align-items: center; color: var(--agte-marine); display: inline-flex; gap: 0.65rem; text-decoration: none; }
.agte-logo__embleme { flex: none; height: 44px; width: 44px; }
.agte-logo__texte { display: flex; flex-direction: column; line-height: 1.15; }
.agte-logo__nom { font-size: 1.3rem; font-weight: 800; letter-spacing: -0.01em; }
.agte-logo__gte { color: var(--agte-accent); }
.agte-logo__signature { color: var(--agte-texte-doux); font-size: 0.78rem; font-weight: 500; }
.agte-logo:focus-visible { outline: var(--agte-focus); outline-offset: 4px; border-radius: 6px; }
@media (max-width: 480px) { .agte-logo__signature { font-size: 0.7rem; } .agte-logo__embleme { height: 38px; width: 38px; } }

/* Badges */
.agte-badges { display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; margin: 0 0 1.25rem; padding: 0; }
.agte-badge {
	align-items: center;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 0.85rem;
	font-weight: 600;
	gap: 0.4rem;
	padding: 0.3rem 0.75rem;
}
.agte-badge:first-child { background: #fff; border-color: #fff; color: var(--agte-marine); }

/* Repères chiffrés : bande « tableau de bord » */
.agte-reperes {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	list-style: none;
	margin: 2rem 0 0;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 12px;
	overflow: hidden;
}
.agte-repere {
	background: rgba(9, 25, 45, 0.35);
	display: grid;
	gap: 0.1rem 0.6rem;
	grid-template-columns: auto 1fr;
	padding: 0.9rem 1rem;
}
.agte-repere + .agte-repere { border-left: 1px solid rgba(255, 255, 255, 0.2); }
.agte-repere__icone { color: #fdba74; grid-row: span 3; height: 1.6rem; width: 1.6rem; }
.agte-repere__chiffre { color: #fff; font-size: 1.6rem; font-weight: 800; line-height: 1.1; }
.agte-repere__libelle { color: #fff; font-size: 0.875rem; font-weight: 600; }
.agte-repere__precision { color: #c9d6e6; font-size: 0.75rem; }
@media (max-width: 760px) {
	.agte-reperes { grid-template-columns: 1fr; }
	.agte-repere + .agte-repere { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.2); }
}

/* Emplacement des avis */
.agte-avis {
	background: rgba(255, 255, 255, 0.08);
	border: 2px dashed rgba(255, 255, 255, 0.55);
	border-radius: 12px;
	color: #e8eef6;
	padding: 1.25rem;
}
.agte-avis__titre { align-items: center; color: #fff; display: flex; font-weight: 700; gap: 0.4rem; margin: 0; }
.agte-avis__etat {
	background: #fdba74;
	border-radius: 999px;
	color: #3b1d06;
	display: inline-block;
	font-size: 0.8rem;
	font-weight: 700;
	margin: 0.75rem 0 0.5rem;
	padding: 0.15rem 0.6rem;
}
.agte-avis__texte { font-size: 0.85rem; margin: 0; }

/* Carte : invitation animée, zone sélectionnée, outre-mer */
.agte-carte__invitation {
	align-items: center;
	color: var(--agte-bleu);
	display: inline-flex;
	font-weight: 600;
	gap: 0.4rem;
	margin: 0 0 0.5rem;
}
.agte-carte__invitation-icone { height: 1.4rem; width: 1.4rem; animation: agte-invitation 1.8s ease-in-out infinite; }
.agte-carte.is-utilisee .agte-carte__invitation-icone { animation: none; }
@keyframes agte-invitation {
	0%, 100% { transform: translate(0, 0) scale(1); }
	50% { transform: translate(3px, 3px) scale(0.92); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-carte__invitation-icone { animation: none; }
	.agte-carte__zone path { transition: none; }
}
.agte-carte__zone.is-selectionnee path { fill: var(--agte-accent); }
.agte-carte__om {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: 0.75rem 0 0;
	padding: 0.75rem 0 0;
	border-top: 1px dashed var(--agte-bordure);
}

/* Panneau à côté de la carte */
.agte-panneau { display: flex; flex-direction: column; gap: 1rem; }
.agte-bouton--secondaire {
	align-items: center;
	background: var(--agte-surface);
	border: 1px solid var(--agte-bleu);
	color: var(--agte-bleu);
	display: inline-flex;
	gap: 0.5rem;
	justify-content: center;
}
.agte-bouton--secondaire:hover { background: var(--agte-bleu-clair); }
.agte-panneau__resultats { border-top: 1px solid var(--agte-bordure); padding-top: 1rem; }
.agte-panneau__titre { font-size: 1.15rem; margin: 0; }
.agte-panneau__titre:focus { outline: none; }
.agte-panneau__titre:focus-visible { outline: var(--agte-focus); outline-offset: 3px; }
.agte-panneau__sous-titre { color: var(--agte-texte-doux); font-size: 0.85rem; margin: 0.25rem 0 0.75rem; }
.agte-panneau__vide { background: var(--agte-fond); border-radius: 8px; padding: 0.75rem 1rem; }
.agte-panneau__vide .agte-lien-fleche { display: inline-block; margin-top: 0.5rem; }
.agte-profils--panneau { grid-template-columns: 1fr; max-height: 34rem; overflow-y: auto; padding-right: 0.25rem; }
.agte-profil--compact { padding: 0.9rem 1rem; }
.agte-profil--compact .agte-profil__infos { margin: 0.5rem 0; }
.agte-profil[hidden] { display: none; }

/* Cartes de profil : référence, avatars, distance */
.agte-profil__ref { color: var(--agte-texte-doux); font-size: 0.85rem; font-weight: 500; white-space: nowrap; }
.agte-profil__avatar-fond { fill: var(--agte-bleu-clair); }
.agte-profil__avatar--2 .agte-profil__avatar-fond { fill: #fde3cf; }
.agte-profil__avatar--2 .agte-profil__avatar-forme { fill: var(--agte-accent-fonce); }
.agte-profil__avatar--3 .agte-profil__avatar-fond { fill: #d8efe6; }
.agte-profil__avatar--3 .agte-profil__avatar-forme { fill: #146c50; }
.agte-profil__avatar--4 .agte-profil__avatar-fond { fill: #e6e1f5; }
.agte-profil__avatar--4 .agte-profil__avatar-forme { fill: #4b3b8f; }
.agte-profil__distance { align-items: center; display: flex; gap: 0.35rem; }

/* ===== V0.3 ===== */
/* Outre-mer : toute la carte rectangulaire est un lien ; le dessin s'allume dès l'entrée de la souris ou au clavier. */
.agte-carte__om-lien {
	align-items: center;
	background: var(--agte-fond);
	border: 1px solid var(--agte-bordure);
	border-radius: 8px;
	box-sizing: border-box;
	color: var(--agte-texte-doux);
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	height: 100%;
	padding: 0.55rem 0.35rem 0.5rem;
	text-decoration: none;
	transition: border-color 0.15s ease, background-color 0.15s ease;
}
.agte-carte__om li { display: flex; }
.agte-carte__om-lien { width: 100%; }
.agte-carte__om-svg { display: block; height: 58px; width: 100%; }
.agte-carte__om-lien path { fill: #c9d6e6; stroke: #7f95ad; stroke-width: 0.6; transition: fill 0.15s ease; }
.agte-carte__om-lien.agte-carte__zone--pourvue path { fill: #a9c4e4; }
.agte-carte__om-nom { font-size: 0.8rem; text-align: center; }
.agte-carte__om-lien:hover,
.agte-carte__om-lien:focus-visible { background: var(--agte-bleu-clair); border-color: var(--agte-bleu); color: var(--agte-marine); }
.agte-carte__om-lien:hover path,
.agte-carte__om-lien:focus-visible path { fill: var(--agte-bleu); stroke: var(--agte-bleu); }
.agte-carte__om-lien:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-carte__om-lien.is-selectionnee { border-color: var(--agte-accent); }
.agte-carte__om-lien.is-selectionnee path { fill: var(--agte-accent); stroke: var(--agte-accent); }
@media (prefers-reduced-motion: reduce) { .agte-carte__om-lien, .agte-carte__om-lien path { transition: none; } }

/* Logo sobre : couleur d'accent réservée à l'emblème */
.agte-logo__gte { color: var(--agte-marine); }
.agte-logo__nom { font-weight: 700; }
.agte-logo__gte { font-weight: 800; letter-spacing: 0.02em; }

/* Avis : bloc agrandi */
.agte-avis { min-height: 15rem; padding: 1.75rem 1.6rem; display: flex; flex-direction: column; justify-content: center; }
.agte-avis__titre { font-size: 1.15rem; }
.agte-avis__titre .agte-icone { height: 1.35em; width: 1.35em; }
.agte-avis__etat { align-self: flex-start; font-size: 0.875rem; margin: 1rem 0 0.75rem; }
.agte-avis__texte { font-size: 0.925rem; line-height: 1.55; }

/* Badges : une ligne sous les repères sur ordinateur, retour à la ligne sur mobile */
.agte-badges { margin: 1.5rem 0 0; }
@media (min-width: 1100px) { .agte-badges { flex-wrap: nowrap; justify-content: space-between; } .agte-badge { white-space: nowrap; } }

/* Liste des zones : plus d'air */
.agte-regions { row-gap: 0; }
.agte-regions li { margin-bottom: 1rem; padding: 0.15rem 0; }
.agte-regions__effectif { margin-top: 0.15rem; }
/* Badges : sous les chiffres dans les deux cas ; ligne pleine largeur sur ordinateur, dans la colonne sur mobile */
.agte-badges--mobile { display: none; }
@media (max-width: 781px) {
	.agte-badges--mobile { display: flex; }
	.agte-badges--bureau { display: none; }
}
.agte-profil__capacites { list-style: none; margin: 0; padding: 0; }
.agte-profil__capacites li + li { margin-top: 0.15rem; }

/* Sur ordinateur, le bloc de recherche descend à hauteur de des Hauts-de-France (haut de la carte, révisé le 2026-10-03).
   Le retrait en % se calcule sur la largeur de la colonne : il suit donc la taille de la carte.
   (padding plutôt que margin : WordPress annule la marge haute du premier bloc d'une colonne.) */
@media (min-width: 782px) {
	.agte-panneau { padding-top: 16%; }
}
/* Espacements resserrés autour de la carte (V0.3.5) */
.agte-carte__invitation { margin-bottom: 0.25rem; }
.agte-carte__om { margin-top: 0.5rem; padding-top: 0.6rem; }
.agte-carte__info { margin-top: 0.4rem; }
/* Bandeau de la carte : zone sélectionnée bien visible */
.agte-carte__invitation.is-selection {
	background: var(--agte-bleu-clair);
	border-left: 4px solid var(--agte-accent);
	border-radius: 6px;
	color: var(--agte-marine);
	font-weight: 700;
	padding: 0.35rem 0.75rem;
}

/* Encadré d'aide sous la recherche */
.agte-aide-recherche {
	align-items: flex-start;
	background: #fff8f1;
	border: 1px solid #f6dcc3;
	border-left: 4px solid var(--agte-accent);
	border-radius: var(--agte-rayon);
	display: flex;
	gap: 0.9rem;
	padding: 1.1rem 1.25rem;
}
.agte-aide-recherche__icone {
	align-items: center;
	background: #fde3cf;
	border-radius: 50%;
	color: var(--agte-accent-fonce);
	display: inline-flex;
	flex: none;
	height: 2.6rem;
	justify-content: center;
	width: 2.6rem;
}
.agte-aide-recherche__icone .agte-icone { height: 1.4rem; width: 1.4rem; }
.agte-aide-recherche__titre { color: var(--agte-marine); font-size: 1.05rem; font-weight: 700; margin: 0 0 0.35rem; }
.agte-aide-recherche__texte { color: var(--agte-texte); font-size: 0.95rem; margin: 0 0 0.9rem; }
.agte-aide-recherche__bouton { display: inline-flex; text-decoration: none; }
.agte-aide-recherche__bouton:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
@media (max-width: 480px) {
	.agte-aide-recherche { flex-direction: column; }
	.agte-aide-recherche__bouton { justify-content: center; width: 100%; box-sizing: border-box; }
}
/* Encadré sous la recherche : bleu doux (V0.3.7) */
.agte-aide-recherche {
	background: #eef4fb;
	border: 1px solid #cfdcec;
	border-left: 4px solid var(--agte-bleu);
}
.agte-aide-recherche__icone { background: var(--agte-bleu-clair); color: var(--agte-bleu); }
.agte-aide-recherche__titre, .agte-aide-recherche__texte { color: var(--agte-marine); }
.agte-carte { scroll-margin-top: 1.5rem; }

/* Carte (V0.3.8) : sélection en bleu foncé (plus d'orange), survol en bleu moyen bien distinct */
.agte-carte__zone:hover path,
.agte-carte__zone:focus path { fill: #5f8cc4; }
.agte-carte__zone.is-selectionnee path,
.agte-carte__zone.is-selectionnee:hover path { fill: var(--agte-marine); }
.agte-carte__om-lien:hover path,
.agte-carte__om-lien:focus-visible path { fill: #5f8cc4; stroke: #5f8cc4; }
.agte-carte__om-lien.is-selectionnee { border-color: var(--agte-marine); }
.agte-carte__om-lien.is-selectionnee path,
.agte-carte__om-lien.is-selectionnee:hover path { fill: var(--agte-marine); stroke: var(--agte-marine); }

/* Badges (V0.3.9) : groupe centré, écarts courts et réguliers ; retour à la ligne centré sur mobile */
.agte-badges { flex-wrap: wrap; gap: 0.5rem; justify-content: center; }
@media (min-width: 1100px) { .agte-badges { flex-wrap: nowrap; justify-content: center; } }

/* Carte (V0.3.10) : la zone sélectionnée garde exactement le bleu du survol, sans assombrissement */
.agte-carte__zone.is-selectionnee path,
.agte-carte__zone.is-selectionnee:hover path { fill: #5f8cc4; }
.agte-carte__om-lien.is-selectionnee { border-color: #5f8cc4; }
.agte-carte__om-lien.is-selectionnee path,
.agte-carte__om-lien.is-selectionnee:hover path { fill: #5f8cc4; stroke: #5f8cc4; }

/* ===== V0.3.11 ===== */
/* Encadré « Une demande spécifique ? » (remplace le premier bouton « Voir tous ») */
.agte-demande-specifique {
	background: var(--agte-surface);
	border: 1px solid var(--agte-bordure);
	border-radius: var(--agte-rayon);
	padding: 1rem 1.25rem;
}
.agte-demande-specifique__titre { color: var(--agte-marine); font-size: 1.05rem; font-weight: 700; margin: 0 0 0.35rem; }
.agte-demande-specifique__texte { color: var(--agte-texte); font-size: 0.95rem; margin: 0 0 0.9rem; }
.agte-demande-specifique__bouton { display: inline-flex; text-decoration: none; }
.agte-demande-specifique__bouton:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
@media (max-width: 480px) { .agte-demande-specifique__bouton { box-sizing: border-box; justify-content: center; width: 100%; } }

/* Touche d'orange doux (même teinte que « Profil fictif » : #fff4e5) sur l'ampoule, fond bleu clair conservé */
.agte-aide-recherche__icone { background: #fff4e5; box-shadow: 0 0 0 1px #f0c48a; color: var(--agte-bleu); }

/* Logo typographique « Annuaire GTE » (variante A1 retenue, conservée pour « Annuaire GTE Connect ») */
.agte-logo-typo { color: var(--agte-marine); display: inline-flex; flex-direction: column; font-size: 1rem; gap: 0.1em; line-height: 1.1; text-decoration: none; }
.agte-logo-typo__ligne { align-items: flex-end; display: inline-flex; gap: 0.3em; }
.agte-logo-typo__annuaire { color: var(--agte-bleu); font-size: 1.45em; font-weight: 800; letter-spacing: -0.025em; }
.agte-logo-typo__gte { display: block; height: 1.7em; margin-bottom: 0.05em; width: auto; }
.agte-logo-typo__signature { color: var(--agte-texte-doux); font-size: 0.78em; font-weight: 500; }
.agte-logo-typo:focus-visible { border-radius: 6px; outline: var(--agte-focus); outline-offset: 4px; }
.agte-entete .agte-logo-typo__signature { white-space: nowrap; }
.agte-entete .agte-logo-typo { flex-shrink: 0; }

/* Encadré « Vous ne trouvez pas de GTE… » : remontée, ombre, bordure et trait supérieur au survol (V0.4.1).
   Seul le bouton est cliquable ; l'effet s'applique aussi quand le bouton reçoit le focus clavier. */
.agte-aide-recherche {
	overflow: hidden;
	position: relative;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.agte-aide-recherche::before {
	background: var(--agte-bleu);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.35s ease;
}
.agte-aide-recherche:focus-within {
	border-color: #9fb8d6;
	box-shadow: 0 10px 24px rgba(15, 44, 76, 0.12);
	transform: translateY(-3px);
}
.agte-aide-recherche:focus-within::before { transform: scaleX(1); }
@media (hover: hover) and (pointer: fine) {
	.agte-aide-recherche:hover {
		border-color: #9fb8d6;
		box-shadow: 0 10px 24px rgba(15, 44, 76, 0.12);
		transform: translateY(-3px);
	}
	.agte-aide-recherche:hover::before { transform: scaleX(1); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-aide-recherche, .agte-aide-recherche::before { transition: none; }
	.agte-aide-recherche:hover, .agte-aide-recherche:focus-within { transform: none; }
}

/* ===== V0.4.2 ===== */
/* Bloc de confiance « Avis Google » (bandeau) */
.agte-avis__etoiles { display: flex; gap: 0.2rem; margin: 0.9rem 0 0.35rem; }
.agte-avis__etoile { fill: none; height: 1.35rem; stroke: rgba(255, 255, 255, 0.55); stroke-linejoin: round; stroke-width: 1.4; width: 1.35rem; }
.agte-avis__etoile.is-pleine { fill: #fdba74; stroke: #fdba74; }
.agte-avis__note { color: #fff; font-size: 0.95rem; margin: 0; }
.agte-avis__note strong { font-size: 1.6rem; }
.agte-avis--a-integrer .agte-avis__etat { margin: 0.75rem 0 0.4rem; }
.agte-avis__lien { align-self: flex-start; margin-top: 1rem; text-decoration: none; }
.agte-avis__lien.is-inactif { cursor: not-allowed; opacity: 0.6; }

/* Badge de disponibilité de NOTRE ÉQUIPE (pas des gestionnaires) — engagement à confirmer avant publication */
.agte-badge-equipe {
	align-items: center;
	background: #e9f6ef;
	border: 1px solid #b9e0c9;
	border-radius: 999px;
	color: #14532d;
	display: inline-flex;
	font-size: 0.8rem;
	font-weight: 600;
	gap: 0.45rem;
	margin: 0 0 0.6rem;
	padding: 0.2rem 0.7rem;
}
.agte-badge-equipe__point {
	background: #22a35a;
	border-radius: 50%;
	flex: none;
	height: 0.55rem;
	position: relative;
	width: 0.55rem;
}
.agte-badge-equipe__point::after {
	animation: agte-pulse 2s ease-out infinite;
	border: 2px solid #22a35a;
	border-radius: 50%;
	content: "";
	inset: -4px;
	opacity: 0;
	position: absolute;
}
@keyframes agte-pulse {
	0% { opacity: 0.6; transform: scale(0.6); }
	100% { opacity: 0; transform: scale(1.6); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-badge-equipe__point::after { animation: none; }
}

/* ===== V0.4.3 ===== */
/* Flèche animée des liens et boutons */
.agte-fleche { height: 1em; margin-left: 0.4em; transition: transform 0.2s ease; vertical-align: -0.12em; width: 1em; }
a:hover > .agte-fleche, a:focus-visible > .agte-fleche { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) { .agte-fleche { transition: none; } a:hover > .agte-fleche, a:focus-visible > .agte-fleche { transform: none; } }

/* Section « Avis Google » */
.agte-avis-section { text-align: center; }
.agte-avis-section__titre { margin: 0 0 1.5rem; }
.agte-carrousel { margin: 0 auto; max-width: 46rem; }
.agte-carrousel__piste { list-style: none; margin: 0; padding: 0; }
.agte-carrousel__avis,
.agte-carrousel__vide {
	background: var(--agte-surface);
	border: 1px solid var(--agte-bordure);
	border-radius: var(--agte-rayon);
	padding: 1.5rem clamp(1rem, 4vw, 2rem);
}
.agte-carrousel__vide { border-style: dashed; color: var(--agte-texte-doux); }
.agte-carrousel__vide p { margin: 0.4rem 0 0; }
.agte-avis-section__etat {
	background: #fff4e5;
	border-radius: 999px;
	color: #5a3200;
	display: inline-block;
	font-size: 0.8rem;
	font-weight: 700;
	margin: 0 !important;
	padding: 0.15rem 0.7rem;
}
.agte-carrousel__texte { font-size: 1.05rem; margin: 0.75rem 0; }
.agte-carrousel__auteur { color: var(--agte-texte-doux); font-size: 0.9rem; margin: 0; }
.agte-carrousel__commandes { display: flex; gap: 0.6rem; justify-content: center; margin-top: 1rem; }
.agte-carrousel__bouton {
	align-items: center;
	background: var(--agte-surface);
	border: 1px solid var(--agte-bleu);
	border-radius: 50%;
	color: var(--agte-bleu);
	cursor: pointer;
	display: inline-flex;
	height: 2.6rem;
	justify-content: center;
	width: 2.6rem;
}
.agte-carrousel__bouton svg { fill: none; height: 1.2rem; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; width: 1.2rem; }
.agte-carrousel__bouton [data-agte-icone-lecture] path { fill: currentColor; }
.agte-carrousel__bouton:hover:not(:disabled) { background: var(--agte-bleu-clair); }
.agte-carrousel__bouton:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-carrousel__bouton:disabled { border-color: var(--agte-bordure); color: #9aa8b8; cursor: not-allowed; }
.agte-etoile { fill: none; height: 1.3rem; stroke: #c3cfde; stroke-linejoin: round; stroke-width: 1.4; width: 1.3rem; }
.agte-etoile.is-pleine { fill: #f5a623; stroke: #f5a623; }
.agte-avis-section__resume { margin-top: 1.75rem; }
.agte-avis-section__etoiles { display: inline-flex; gap: 0.2rem; margin: 0; }
.agte-avis-section__note { margin: 0.35rem 0 0.9rem; }
.agte-avis-section__note strong { color: var(--agte-marine); font-size: 1.4rem; }
.agte-avis-section__liens { align-items: center; display: flex; flex-wrap: wrap; gap: 0.75rem 1.5rem; justify-content: center; margin: 0; }
.agte-lien-anime { color: var(--agte-bleu); font-weight: 700; text-decoration: none; }
.agte-lien-anime:hover { text-decoration: underline; }
.agte-lien-secondaire { color: var(--agte-bleu); }
.agte-lien-anime.is-inactif, .agte-lien-secondaire.is-inactif { color: #9aa8b8; cursor: not-allowed; text-decoration: none; }

/* Bloc de rappel avant le pied de page */
.agte-rappel { text-align: center; }
.agte-rappel .agte-badge-equipe { margin-bottom: 0.9rem; }
.agte-rappel__titre { margin: 0 0 0.6rem; }
.agte-rappel__texte { font-size: 1.05rem; margin: 0 auto 0.4rem; max-width: 40rem; }
.agte-rappel__frais { color: var(--agte-texte-doux); font-size: 0.9rem; margin: 0 auto 1.25rem; max-width: 40rem; }
.agte-rappel__bouton { align-items: center; display: inline-flex; text-decoration: none; }
.agte-rappel__bouton:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
@media (max-width: 480px) { .agte-rappel__bouton { justify-content: center; width: 100%; box-sizing: border-box; } }
.agte-carrousel__bouton svg[hidden] { display: none; }

/* ===== V0.4.5 ===== */
/* « Voir les avis » (bloc du haut de page) : flèche à droite ; au survol, le bouton bouge légèrement et la flèche glisse */
.agte-avis__lien { align-items: center; display: inline-flex; transition: transform 0.2s ease, background-color 0.2s ease; }
.agte-avis__lien .agte-fleche { transition: transform 0.2s ease; }
.agte-avis__lien:hover, .agte-avis__lien:focus-visible { transform: translateY(-2px); }
.agte-avis__lien:hover .agte-fleche, .agte-avis__lien:focus-visible .agte-fleche { transform: translateX(4px); }
/* Emplacement « à intégrer » : effet visible pour la maquette, lien encore inactif */
.agte-avis__lien.is-inactif { cursor: default; }
@media (prefers-reduced-motion: reduce) {
	.agte-avis__lien, .agte-avis__lien .agte-fleche { transition: none; }
	.agte-avis__lien:hover, .agte-avis__lien:focus-visible, .agte-avis__lien:hover .agte-fleche, .agte-avis__lien:focus-visible .agte-fleche { transform: none; }
}

/* Carrousel d'avis : avis superposés, fondu enchaîné doux ; tous lisibles si réduction des animations */
.agte-carrousel__piste { display: grid; }
.agte-carrousel__avis {
	grid-area: 1 / 1;
	opacity: 0;
	transition: opacity 0.8s ease, visibility 0.8s;
	visibility: hidden;
}
.agte-carrousel__avis.is-actif { opacity: 1; visibility: visible; }
@media (prefers-reduced-motion: reduce) {
	.agte-carrousel__piste { display: flex; flex-direction: column; gap: 1rem; }
	.agte-carrousel__avis { opacity: 1; transition: none; visibility: visible; }
}

/* Badge cliquable sous les profils (même style que le badge de l'équipe, point pulsant) — V0.4.6 */
.agte-badge-centre { margin: 1.75rem 0 0; text-align: center; }
.agte-badge-lien { font-size: 0.9rem; padding: 0.35rem 0.9rem; text-decoration: none; transition: border-color 0.2s ease, background-color 0.2s ease; }
.agte-badge-lien:hover { background: #dcf1e5; border-color: #22a35a; text-decoration: underline; text-underline-offset: 3px; }
.agte-badge-lien:focus-visible { outline: var(--agte-focus); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .agte-badge-lien { transition: none; } }

/* Badge « Pourquoi nous recommandons notre annuaire ? » (V0.4.7) : point fixe, aucun surlignage,
   léger zoom uniquement au survol de la souris, transition douce. */
.agte-badge-lien .agte-badge-equipe__point::after { animation: none; display: none; }
.agte-badge-lien { transition: transform 0.25s ease; }
.agte-badge-lien:hover { background: #e9f6ef; border-color: #b9e0c9; text-decoration: none; }
@media (hover: hover) and (pointer: fine) {
	.agte-badge-lien:hover { transform: scale(1.05); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-badge-lien { transition: none; }
	.agte-badge-lien:hover { transform: none; }
}

/* Badge « Pourquoi nous recommandons… » (V0.4.8) : point qui clignote doucement rétabli, zoom au survol plus discret */
.agte-badge-lien .agte-badge-equipe__point::after { animation: agte-pulse 2s ease-out infinite; display: block; }
@media (hover: hover) and (pointer: fine) {
	.agte-badge-lien:hover { transform: scale(1.03); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-badge-lien .agte-badge-equipe__point::after { animation: none; }
	.agte-badge-lien:hover { transform: none; }
}

/* Badges harmonisés (V0.4.9) : même taille de texte, même hauteur, mêmes marges intérieures ; largeur selon le texte */
.agte-badge-equipe,
.agte-badge-lien {
	box-sizing: border-box;
	font-size: 0.85rem;
	line-height: 1.3;
	min-height: 2rem;
	padding: 0.3rem 0.85rem;
}

/* ===== V0.5.0 — première version des effets inspirés de Kaply (dessin original) ===== */
/* France en points (bandeau, colonne de droite au-dessus des avis ; masquée sur mobile) */
.agte-france-points { margin: 0 auto 1.25rem; max-width: 300px; position: relative; }
.agte-france-points__svg { display: block; height: auto; width: 100%; }
.agte-france-points__svg circle { fill: #b9cde6; opacity: 0.45; }
.agte-france-points__svg circle.is-orange { animation: agte-scintille 4.5s ease-in-out infinite; fill: #fdba74; opacity: 0.8; }
.agte-france-points__svg .agte-france-points__repere { fill: #fdba74; opacity: 1; stroke: rgba(253, 186, 116, 0.35); stroke-width: 5; }
@keyframes agte-scintille { 0%, 100% { opacity: 0.35; } 50% { opacity: 0.95; } }
.agte-france-points__carte {
	align-items: center;
	animation: agte-flotte 6s ease-in-out infinite alternate;
	background: #ffffff;
	border-radius: 999px;
	box-shadow: 0 6px 16px rgba(9, 25, 45, 0.25);
	color: var(--agte-marine);
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 600;
	gap: 0.35rem;
	left: 0;
	padding: 0.2rem 0.6rem 0.2rem 0.25rem;
	position: absolute;
	top: 0;
	transform: translate(-50%, calc(-100% - 10px));
	white-space: nowrap;
}
.agte-france-points__carte em {
	background: #fff4e5;
	border-radius: 999px;
	color: #5a3200;
	font-size: 0.62rem;
	font-style: normal;
	font-weight: 700;
	padding: 0 0.35rem;
}
.agte-france-points__avatar { flex: none; height: 1.4rem; width: 1.4rem; }
@keyframes agte-flotte {
	from { transform: translate(-50%, calc(-100% - 10px)); }
	to { transform: translate(-50%, calc(-100% - 15px)); }
}
@media (max-width: 781px) { .agte-france-points { display: none; } }
@media (min-width: 782px) { .agte-hero .agte-france-points { margin-left: calc(1.75rem + (100% - 1.75rem - 300px) / 2); margin-right: auto; } }

/* Camion lié au défilement : ligne discrète dans la marge droite ; masqué si la marge est trop étroite */
.agte-camion-piste { display: none; }
@media (min-width: 1360px) {
	.agte-camion-piste {
		border-left: 2px dashed rgba(127, 149, 173, 0.35);
		bottom: 48px;
		display: block;
		pointer-events: none;
		position: fixed;
		right: 34px;
		top: 130px;
		width: 0;
		z-index: 40;
	}
	.agte-camion {
		height: 52px;
		left: -15px;
		position: absolute;
		top: 0;
		width: 28px;
		will-change: transform;
	}
	.agte-camion svg { display: block; filter: drop-shadow(0 0 1.5px rgba(255, 255, 255, 0.9)); height: 100%; transition: transform 0.25s ease; width: 100%; }
	.agte-camion.is-montee svg { transform: rotate(180deg); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-france-points__svg circle.is-orange, .agte-france-points__carte { animation: none; }
	.agte-camion-piste { display: none !important; }
}
/* Réglages V0.5.1 : silhouette plus lisible, carte plus compacte, cartes de profils à côté de leur point */
.agte-france-points { margin-bottom: 0.9rem; max-width: 250px; }
@media (min-width: 782px) { .agte-hero .agte-france-points { margin-left: calc(1.75rem + (100% - 1.75rem - 250px) / 2); } }
.agte-france-points__svg circle { fill: #c7d8ee; opacity: 0.62; }
.agte-france-points__svg circle.is-orange { opacity: 0.9; }
.agte-france-points__carte { font-size: 0.66rem; padding: 0.15rem 0.5rem 0.15rem 0.2rem; }
.agte-france-points__avatar { height: 1.2rem; width: 1.2rem; }
/* À gauche du point (régions de l'ouest), ou à droite (régions de l'est) */
.agte-france-points__carte--gauche { animation-name: agte-flotte-g; transform: translate(calc(-100% - 9px), -50%); }
.agte-france-points__carte--droite { animation-name: agte-flotte-d; transform: translate(9px, -50%); }
@keyframes agte-flotte-g { from { transform: translate(calc(-100% - 9px), -50%); } to { transform: translate(calc(-100% - 9px), calc(-50% - 4px)); } }
@keyframes agte-flotte-d { from { transform: translate(9px, -50%); } to { transform: translate(9px, calc(-50% - 4px)); } }
@media (prefers-reduced-motion: reduce) { .agte-france-points__carte--gauche, .agte-france-points__carte--droite { animation: none; } }
/* France en points réservée aux écrans larges (évite le chevauchement avec le texte du bandeau) */
@media (max-width: 1099px) { .agte-france-points { display: none; } }

/* ===== V0.5.4 — haut de page : avis compacts, silhouette agrandie, tarif sur les cartes de profils ===== */
.agte-hero .agte-avis { min-height: 0; padding: 1rem 1.25rem; }
.agte-hero .agte-avis__titre { font-size: 1.05rem; }
.agte-hero .agte-avis__etoiles { margin: 0.55rem 0 0.2rem; }
.agte-hero .agte-avis__etoile { height: 1.15rem; width: 1.15rem; }
.agte-hero .agte-avis__note strong { font-size: 1.35rem; }
.agte-hero .agte-avis--a-integrer .agte-avis__etat { font-size: 0.8rem; margin: 0.5rem 0 0; }
.agte-hero .agte-avis__lien { margin-top: 0.75rem; }
/* Silhouette plus grande */
.agte-france-points { margin-bottom: 1rem; max-width: 340px; }
@media (min-width: 782px) { .agte-hero .agte-france-points { margin-left: calc(1.75rem + (100% - 1.75rem - 340px) / 2); } }
/* Carte de profil : nom, catégorie et tarif de base (forfait 1 véhicule) */
.agte-france-points__carte { align-items: center; border-radius: 12px; gap: 0.45rem; padding: 0.35rem 0.6rem 0.4rem 0.35rem; }
.agte-france-points__avatar { align-self: flex-start; height: 1.5rem; width: 1.5rem; }
.agte-france-points__corps { display: flex; flex-direction: column; gap: 0.05rem; line-height: 1.25; }
.agte-france-points__nom { align-items: center; display: flex; gap: 0.3rem; font-size: 0.7rem; font-weight: 700; }
.agte-france-points__cat { color: #4a5d73; font-size: 0.6rem; font-weight: 500; }
.agte-france-points__tarif { align-items: baseline; border-top: 1px dashed #f0c48a; color: #4a5d73; display: flex; font-size: 0.6rem; font-weight: 500; gap: 0.2rem; margin-top: 0.2rem; padding-top: 0.2rem; }
.agte-france-points__tarif strong { color: var(--agte-marine); font-size: 0.85rem; font-weight: 800; }
.agte-france-points__tarif em { margin-left: 0.15rem; }
/* V0.5.5 — avis compacts sur deux lignes ; silhouette sur toute la largeur de la colonne ; cartes plus petites */
.agte-hero .agte-avis--a-integrer,
.agte-hero .agte-avis--fourni { align-items: center; column-gap: 0.75rem; display: grid; grid-template-areas: "titre titre etat" "etoiles note lien"; grid-template-columns: auto 1fr auto; row-gap: 0.5rem; padding: 0.9rem 1.1rem; }
.agte-hero .agte-avis__titre { grid-area: titre; }
.agte-hero .agte-avis--a-integrer .agte-avis__etat { grid-area: etat; justify-self: end; margin: 0; }
.agte-hero .agte-avis__etoiles { grid-area: etoiles; margin: 0; }
.agte-hero .agte-avis__note { grid-area: note; white-space: nowrap; }
.agte-hero .agte-avis__note strong { font-size: 1.15rem; }
.agte-hero .agte-avis__lien { font-size: 0.875rem; grid-area: lien; margin: 0; padding: 0.45rem 0.8rem; white-space: nowrap; }
.agte-france-points { max-width: none; }
@media (min-width: 782px) { .agte-hero .agte-france-points { margin-left: 1.75rem; } }
.agte-france-points__carte { gap: 0.35rem; padding: 0.25rem 0.5rem 0.3rem 0.3rem; }
.agte-france-points__avatar { height: 1.3rem; width: 1.3rem; }
.agte-france-points__nom { font-size: 0.66rem; }
.agte-france-points__cat { font-size: 0.57rem; }
.agte-france-points__tarif { font-size: 0.57rem; margin-top: 0.15rem; padding-top: 0.15rem; }
.agte-france-points__tarif strong { font-size: 0.8rem; }

/* Camion : déplacé dans la marge gauche (toujours lié au défilement, non cliquable) */
@media (min-width: 1360px) { .agte-camion-piste { left: 34px; right: auto; } }
/* Avis sur deux lignes seulement quand la colonne est assez large ; sinon empilés (compacts) */
@media (max-width: 1279px) {
	.agte-hero .agte-avis--a-integrer,
	.agte-hero .agte-avis--fourni { display: flex; flex-direction: column; align-items: flex-start; gap: 0.4rem; }
}

/* ===== V0.5.8 — étiquettes « ● Ville · tarif » ; avis alignés sur les repères ===== */
.agte-france-points__carte { border-radius: 999px; padding: 0.2rem 0.55rem 0.2rem 0.2rem; }
.agte-france-points__avatar { align-self: center; height: 1.35rem; width: 1.35rem; }
.agte-france-points__corps { align-items: center; color: #4a5d73; flex-direction: row; font-size: 0.68rem; font-weight: 600; gap: 0.3rem; line-height: 1.2; }
.agte-france-points__corps strong { color: var(--agte-marine); font-size: 0.78rem; font-weight: 800; }
/* Point vert décoratif (aucune disponibilité indiquée) */
.agte-france-points__puce { background: #22a565; border-radius: 50%; flex: none; height: 0.45rem; width: 0.45rem; }
/* Ordinateur et tablette : la colonne de droite occupe toute la hauteur ; la silhouette se centre dans l'espace libre,
   le cadre des avis descend au niveau des blocs « Profils », « Régions » et « Gratuit » (bas aligné, même hauteur). */
@media (min-width: 782px) {
	.agte-hero .agte-hero__colonnes > .wp-block-column.is-vertically-aligned-center:last-child { align-self: stretch; display: flex; flex-direction: column; }
	.agte-hero__colonnes > .wp-block-column:last-child > .agte-france-points { margin-bottom: auto; margin-right: 0; margin-top: auto; }
	.agte-hero__colonnes > .wp-block-column:last-child > .agte-avis { box-sizing: border-box; flex: none; height: var(--agte-hauteur-reperes, auto); justify-content: center; margin-top: auto; }
}

/* ===== V0.5.11 — prénom · ville · prix ; mention de démonstration unique ; carte agrandie ; badges ; route du camion ===== */
/* Carte en points légèrement agrandie (empiète un peu sur la marge gauche de la colonne) */
@media (min-width: 782px) { .agte-hero .agte-hero__colonnes > .wp-block-column:last-child > .agte-france-points { margin-left: 0.25rem; } }
/* Une seule indication discrète de démonstration pour tout le visuel */
.agte-france-points__demo { bottom: 0; color: rgba(255, 255, 255, 0.55); font-size: 0.66rem; font-style: italic; left: 0; position: absolute; }
/* Badges du bandeau (ordinateur) : un peu plus d'espace sous le cadre des avis */
.agte-badges--bureau { margin-top: 2.5rem; }
/* Route du camion : chaussée discrète avec pointillés, dévoilée jusqu'au camion (hauteur pilotée par le défilement) */
@media (min-width: 1360px) {
	.agte-camion-piste { border-left: 0; }
	.agte-camion-route {
		background: rgba(110, 130, 155, 0.3) repeating-linear-gradient(to bottom, transparent 0 7px, rgba(255, 255, 255, 0.9) 7px 15px) center top / 2px 100% no-repeat;
		border-radius: 0 0 9px 9px;
		height: 0;
		left: -9px;
		-webkit-mask-image: linear-gradient(to bottom, transparent, #000 60px);
		mask-image: linear-gradient(to bottom, transparent, #000 60px);
		position: absolute;
		top: 0;
		width: 18px;
	}
}

/* ===== V0.6.0 — filtre par activité ===== */
.agte-filtre { margin: 1.25rem 0 1.5rem; }
.agte-filtre__groupe { border: 0; margin: 0; min-width: 0; padding: 0; }
.agte-filtre__titre { color: var(--agte-marine); font-size: 0.95rem; font-weight: 700; margin-bottom: 0.6rem; padding: 0; }
.agte-filtre__options { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.agte-filtre__option { cursor: pointer; position: relative; }
.agte-filtre__option input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.agte-filtre__option span {
	background: #fff;
	border: 1px solid #c5d3e3;
	border-radius: 999px;
	color: var(--agte-marine);
	display: inline-block;
	font-size: 0.9rem;
	font-weight: 600;
	padding: 0.45rem 0.95rem;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.agte-filtre__option:hover span { border-color: #1d4f8a; }
.agte-filtre__option input:checked + span { background: #1d4f8a; border-color: #1d4f8a; color: #fff; }
.agte-filtre__option input:focus-visible + span { outline: 3px solid #fdba74; outline-offset: 2px; }
.agte-filtre__etat { color: var(--wp--preset--color--texte-doux, #4a5a6e); font-size: 0.875rem; margin: 0.6rem 0 0; min-height: 1.3em; }
@media (max-width: 600px) {
	/* Mobile : choix sur plusieurs lignes, plus compacts (tous visibles) */
	.agte-filtre__options { gap: 0.4rem; }
	.agte-filtre__option span { font-size: 0.85rem; padding: 0.4rem 0.8rem; }
}
@media (prefers-reduced-motion: reduce) { .agte-filtre__option span { transition: none; } }

/* ===== V0.6.0 — discussion « Contactez-nous » (maquette) ===== */
.agte-chat__bulle {
	align-items: center;
	background: #1d4f8a;
	border-radius: 999px;
	bottom: 20px;
	box-shadow: 0 8px 24px rgba(15, 44, 76, 0.3);
	color: #fff;
	display: inline-flex;
	font-weight: 700;
	gap: 0.5rem;
	padding: 0.75rem 1.1rem 0.75rem 0.9rem;
	position: fixed;
	right: 20px;
	text-decoration: none;
	transition: transform 0.2s ease, background-color 0.2s ease;
	z-index: 60;
}
.agte-chat__bulle:hover, .agte-chat__bulle:focus-visible { background: #0f2c4c; color: #fff; transform: translateY(-2px); }
.agte-chat__bulle:focus-visible { outline: 3px solid #fdba74; outline-offset: 3px; }
.agte-chat__bulle svg { fill: none; height: 1.35rem; stroke: #fdba74; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 1.35rem; }
.agte-chat.is-ouverte .agte-chat__bulle { display: none; }
.agte-chat__fenetre {
	background: #fff;
	border: 1px solid #d4dce6;
	border-radius: 16px;
	bottom: 20px;
	box-shadow: 0 18px 48px rgba(15, 44, 76, 0.28);
	display: flex;
	flex-direction: column;
	height: min(600px, calc(100vh - 40px));
	overflow: hidden;
	position: fixed;
	right: 20px;
	width: 380px;
	z-index: 61;
}
.agte-chat__fenetre[hidden] { display: none; }
.agte-chat__entete { align-items: center; background: #0f2c4c; color: #fff; display: flex; gap: 0.7rem; padding: 0.85rem 0.9rem; }
.agte-chat__avatar { align-items: center; background: #fff4e5; border-radius: 50%; display: inline-flex; flex: none; height: 2.3rem; justify-content: center; width: 2.3rem; }
.agte-chat__avatar svg { fill: none; height: 1.4rem; stroke: #1d4f8a; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; width: 1.4rem; }
.agte-chat__titre { color: #fff; font-size: 1rem; line-height: 1.2; margin: 0; }
.agte-chat__sous-titre { color: #c9d6e6; font-size: 0.75rem; margin: 0.1rem 0 0; }
.agte-chat__fermer { background: transparent; border: 0; border-radius: 8px; color: #fff; cursor: pointer; margin-left: auto; padding: 0.35rem; }
.agte-chat__fermer:hover, .agte-chat__fermer:focus-visible { background: rgba(255, 255, 255, 0.12); }
.agte-chat__fermer:focus-visible { outline: 2px solid #fdba74; }
.agte-chat__fermer svg { display: block; fill: none; height: 1.25rem; stroke: currentColor; stroke-linecap: round; stroke-width: 2; width: 1.25rem; }
.agte-chat__demo { background: #fff4e5; color: #5a3200; font-size: 0.75rem; margin: 0; padding: 0.35rem 0.9rem; }
.agte-chat__fil { background: #f5f7fa; display: flex; flex: 1; flex-direction: column; gap: 0.5rem; overflow-y: auto; padding: 0.9rem; }
.agte-chat__msg { border-radius: 14px; font-size: 0.9rem; line-height: 1.45; margin: 0; max-width: 85%; padding: 0.55rem 0.8rem; }
.agte-chat__msg--assistant { align-self: flex-start; background: #fff; border: 1px solid #dbe6f3; border-bottom-left-radius: 4px; color: #13202f; }
.agte-chat__msg--visiteur { align-self: flex-end; background: #1d4f8a; border-bottom-right-radius: 4px; color: #fff; }
.agte-chat__msg--resume { align-self: stretch; background: #eaf1fa; border-left: 4px solid #1d4f8a; border-radius: 8px; color: #13202f; font-size: 0.82rem; max-width: none; }
.agte-chat__msg a { color: inherit; font-weight: 700; }
.agte-chat__ecrit { display: inline-flex; gap: 0.25rem; padding: 0.7rem 0.8rem; }
.agte-chat__ecrit span { animation: agte-ecrit 1s ease-in-out infinite; background: #9fb3c8; border-radius: 50%; height: 0.4rem; width: 0.4rem; }
.agte-chat__ecrit span:nth-child(2) { animation-delay: 0.15s; }
.agte-chat__ecrit span:nth-child(3) { animation-delay: 0.3s; }
@keyframes agte-ecrit { 0%, 100% { opacity: 0.35; } 50% { opacity: 1; } }
.agte-chat__choix { background: #f5f7fa; display: flex; flex-wrap: wrap; gap: 0.4rem; padding: 0 0.9rem; }
.agte-chat__choix:not(:empty) { padding-bottom: 0.7rem; }
.agte-chat__choix-bouton { background: #fff; border: 1px solid #1d4f8a; border-radius: 999px; color: #1d4f8a; cursor: pointer; font: inherit; font-size: 0.84rem; font-weight: 600; padding: 0.35rem 0.75rem; }
.agte-chat__choix-bouton:hover, .agte-chat__choix-bouton:focus-visible { background: #1d4f8a; color: #fff; }
.agte-chat__choix-bouton:focus-visible { outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-chat__saisie { border-top: 1px solid #d4dce6; display: flex; gap: 0.4rem; padding: 0.6rem; }
.agte-chat__saisie input { border: 1px solid #c5d3e3; border-radius: 999px; flex: 1; font: inherit; font-size: 1rem; min-width: 0; padding: 0.55rem 0.9rem; }
.agte-chat__saisie input:focus-visible { border-color: #1d4f8a; outline: 2px solid #fdba74; outline-offset: 1px; }
.agte-chat__envoyer { background: #c2410c; border: 0; border-radius: 50%; color: #fff; cursor: pointer; flex: none; height: 2.6rem; width: 2.6rem; }
.agte-chat__envoyer:hover { background: #9a3412; }
.agte-chat__envoyer:focus-visible { outline: 3px solid #fdba74; outline-offset: 2px; }
.agte-chat__envoyer svg { display: block; fill: none; height: 1.2rem; margin: auto; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.2; width: 1.2rem; }
.agte-chat__form { background: #fff; border: 1px solid #dbe6f3; border-radius: 12px; display: flex; flex: none; flex-direction: column; font-size: 0.85rem; gap: 0.3rem; padding: 0.8rem; }
.agte-chat__form label { color: #13202f; font-weight: 600; }
.agte-chat__form label span { color: #4a5a6e; font-weight: 400; }
.agte-chat__form input:not([type="checkbox"]) { border: 1px solid #c5d3e3; border-radius: 6px; font: inherit; font-size: 1rem; margin-bottom: 0.35rem; padding: 0.45rem 0.6rem; }
.agte-chat__consentement { align-items: flex-start; display: flex; font-weight: 400 !important; gap: 0.45rem; margin: 0.2rem 0 0.4rem; }
.agte-chat__consentement input { margin-top: 0.2rem; }
.agte-chat__erreur { color: #9a3412; font-weight: 600; margin: 0 0 0.3rem; }
.agte-chat__form .agte-bouton { align-self: flex-start; }
/* Mobile : discussion plein écran, bulle réduite à l'icône (libellé conservé pour les lecteurs d'écran) */
@media (max-width: 600px) {
	.agte-chat__bulle { bottom: 14px; padding: 0.8rem; right: 14px; }
	.agte-chat__bulle span { clip: rect(0 0 0 0); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
	.agte-chat__fenetre { border: 0; border-radius: 0; bottom: 0; height: 100%; height: 100dvh; left: 0; right: 0; top: 0; width: auto; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-chat__bulle { transition: none; }
	.agte-chat__bulle:hover, .agte-chat__bulle:focus-visible { transform: none; }
	.agte-chat__ecrit span { animation: none; }
}

/* ===== V0.7.0 — page département (modèle V1, Haute-Garonne) ===== */
.agte-dept { align-items: start; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1fr) 20rem; margin-top: 1.75rem; }
@media (max-width: 999px) { .agte-dept { gap: 2rem; grid-template-columns: 1fr; } }
.agte-dept .agte-filtre { margin-top: 0; }
.agte-dept__compte { color: var(--agte-marine); font-weight: 600; margin: 0 0 1.25rem; }
.agte-dept__niveau + .agte-dept__niveau { margin-top: 2rem; }
.agte-dept__titre-niveau { font-size: 1.3rem; margin: 0 0 0.9rem; }
.agte-dept__note { color: var(--agte-texte-doux); font-size: 0.925rem; margin: -0.4rem 0 1rem; }
.agte-dept__vide { background: #eaf1fa; border-left: 4px solid var(--agte-bleu); border-radius: 8px; margin: 0 0 1.5rem; padding: 0.9rem 1.1rem; }
.agte-dept__vide p { margin: 0; }
.agte-dept__vide strong { color: var(--agte-marine); display: block; margin-bottom: 0.25rem; }
.agte-profils--dept { grid-template-columns: repeat(auto-fill, minmax(min(100%, 19rem), 1fr)); }
.agte-profil--detaille .agte-profil__infos { margin-bottom: 1rem; }

/* Volet « Voir les tarifs » */
.agte-tarifs { border: 1px solid var(--agte-bordure); border-radius: 8px; margin-bottom: 1rem; }
.agte-tarifs__bouton {
	align-items: center;
	color: var(--agte-bleu);
	cursor: pointer;
	display: flex;
	font-weight: 700;
	justify-content: space-between;
	list-style: none;
	padding: 0.65rem 0.9rem;
}
.agte-tarifs__bouton::-webkit-details-marker { display: none; }
.agte-tarifs__bouton::after {
	border-bottom: 2px solid currentColor;
	border-right: 2px solid currentColor;
	content: "";
	height: 0.45rem;
	margin-right: 0.2rem;
	transform: translateY(-2px) rotate(45deg);
	transition: transform 0.2s ease;
	width: 0.45rem;
}
.agte-tarifs[open] .agte-tarifs__bouton::after { transform: translateY(2px) rotate(-135deg); }
.agte-tarifs__bouton:hover { background: #f3f7fc; }
.agte-tarifs__bouton:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-tarifs__contenu { border-top: 1px solid var(--agte-bordure); padding: 0.8rem 0.9rem 0.9rem; }
.agte-tarifs__titre { color: var(--agte-marine); font-size: 0.925rem; font-weight: 700; margin: 0 0 0.6rem; }
.agte-tarifs__categorie + .agte-tarifs__categorie { border-top: 1px dashed var(--agte-bordure); margin-top: 0.6rem; padding-top: 0.6rem; }
.agte-tarifs__libelle { font-size: 0.9rem; font-weight: 600; margin: 0 0 0.3rem; }
.agte-tarifs__lignes { font-size: 0.875rem; margin: 0; }
.agte-tarifs__lignes > div { display: flex; flex-wrap: wrap; gap: 0.15rem 0.75rem; justify-content: space-between; }
.agte-tarifs__lignes dt { color: var(--agte-texte-doux); }
.agte-tarifs__lignes dd { color: var(--agte-marine); font-weight: 700; margin: 0; white-space: nowrap; }
.agte-tarifs__fictif { color: #5a3200; font-size: 0.75rem; margin: 0.7rem 0 0; }
/* Sous-onglets (actifs seulement avec JavaScript ; sinon les deux groupes s'affichent) */
.agte-onglets__liste { border-bottom: 1px solid var(--agte-bordure); display: flex; gap: 0.25rem; margin-bottom: 0.7rem; }
.agte-onglets__onglet {
	background: none;
	border: 1px solid transparent;
	border-bottom: 0;
	border-radius: 6px 6px 0 0;
	color: var(--agte-texte-doux);
	cursor: pointer;
	font: inherit;
	font-size: 0.85rem;
	font-weight: 600;
	margin-bottom: -1px;
	padding: 0.4rem 0.65rem;
}
.agte-onglets__onglet[aria-selected="true"] { background: var(--agte-surface); border-color: var(--agte-bordure); color: var(--agte-bleu); }
.agte-onglets__onglet:focus-visible { outline: var(--agte-focus); outline-offset: 1px; }
.agte-onglets__titre-sans-js { color: var(--agte-bleu); font-size: 0.85rem; font-weight: 700; margin: 0.4rem 0 0.4rem; }
.agte-onglets.is-actif .agte-onglets__titre-sans-js { display: none; }
.agte-onglets__panneau + .agte-onglets__panneau { margin-top: 0.8rem; }
.agte-onglets.is-actif .agte-onglets__panneau + .agte-onglets__panneau { margin-top: 0; }

/* Actions de la carte : mise en relation et fiche */
.agte-profil__actions { align-items: flex-start; display: flex; flex-direction: column; gap: 0.75rem; margin-top: auto; }
.agte-profil__mer { box-sizing: border-box; text-align: center; text-decoration: none; width: 100%; }
.agte-profil--detaille .agte-lien-fleche { margin-top: 0; }

/* Recherche personnalisée */
.agte-dept__perso { background: #e9f0f8; border-radius: var(--agte-rayon); margin-top: 2rem; padding: 1.25rem 1.4rem; }
.agte-dept__perso-titre { font-size: 1.2rem; margin: 0 0 0.4rem; }
.agte-dept__perso p { margin: 0 0 0.9rem; }
.agte-dept__perso .agte-bouton { display: inline-block; text-decoration: none; }

/* Colonne latérale : accompagnement et liens utiles */
.agte-dept__aside { display: flex; flex-direction: column; gap: 1.25rem; }
@media (min-width: 1000px) { .agte-dept__aside { position: sticky; top: 1.5rem; } }
.agte-dept__rassurant, .agte-dept__liens { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); padding: 1.1rem 1.2rem; }
.agte-dept__rassurant { background: #eaf1fa; border-color: #c9d8ea; }
.agte-dept__aside-titre { color: var(--agte-marine); font-size: 1.05rem; font-weight: 700; margin: 0 0 0.6rem; }
.agte-dept__rassurant ul { font-size: 0.9rem; margin: 0 0 0.8rem; padding-left: 1.1rem; }
.agte-dept__rassurant li + li { margin-top: 0.4rem; }
.agte-dept__liens-groupe { color: var(--agte-texte-doux); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.03em; margin: 0.9rem 0 0.3rem; text-transform: uppercase; }
.agte-dept__liens-groupe:first-of-type { margin-top: 0; }
.agte-dept__liens ul { list-style: none; margin: 0; padding: 0; }
.agte-dept__liens li + li { margin-top: 0.3rem; }
.agte-dept__liens a { color: var(--agte-bleu); }
.agte-dept__limitrophes { columns: 2; column-gap: 1rem; }
@media (max-width: 999px) and (min-width: 600px) { .agte-dept__aside { display: grid; grid-template-columns: 1fr 1fr; } }

/* Emplacement du contenu local (à rédiger) */
.agte-dept__local { border: 2px dashed var(--agte-bordure); border-radius: var(--agte-rayon); color: var(--agte-texte-doux); margin-top: 2.5rem; padding: 1rem 1.2rem; }
.agte-dept__local p { margin: 0; }
@media (prefers-reduced-motion: reduce) { .agte-tarifs__bouton::after { transition: none; } }
/* V0.7.2 — ajustements : onglets sur une ligne, limitrophes en une colonne */
.agte-onglets__onglet { flex: 1 1 auto; font-size: 0.8rem; padding: 0.4rem 0.45rem; white-space: nowrap; }
.agte-dept__limitrophes { columns: auto; }
.agte-dept__vide strong { font-weight: 700; }
.agte-tarifs__lignes > div { align-items: baseline; flex-wrap: nowrap; }
.agte-tarifs__lignes dt { flex: 1 1 auto; min-width: 0; }
.agte-dept .agte-filtre__etat { display: none; } /* le décompte est donné sous le filtre par la page département */

/* ===== V0.8.0 — profil vérifié, boutons de contact, pictogrammes, bulle de contact ===== */
/* Badge « Profil vérifié » (statut « verifie » enregistré par l'équipe) */
.agte-verifie {
	align-items: center;
	align-self: flex-start;
	background: #eaf1fa;
	border: 1px solid #c9d8ea;
	border-radius: 999px;
	color: var(--agte-bleu);
	display: inline-flex;
	font-size: 0.8rem;
	font-weight: 700;
	gap: 0.3rem;
	margin: 0.7rem 0 0;
	padding: 0.2rem 0.65rem 0.2rem 0.45rem;
}
.agte-verifie__icone { flex: none; height: 1rem; width: 1rem; }
.agte-route--fiche .agte-verifie { margin: 0 0 1rem; }

/* Boutons de contact : orange légèrement adouci (contraste 4,55:1 avec le blanc), flèche qui glisse au survol */
.agte-bouton--contact { align-items: center; background: #c94f17; display: inline-flex; justify-content: center; transition: background-color 0.2s ease; }
.agte-bouton--contact:hover, .agte-bouton--contact:focus-visible { background: #a8400f; color: #fff; }
.agte-bouton--contact .agte-fleche { flex: none; transition: transform 0.25s ease; }
.agte-bouton--contact:hover > .agte-fleche, .agte-bouton--contact:focus-visible > .agte-fleche { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) {
	.agte-bouton--contact, .agte-bouton--contact .agte-fleche { transition: none; }
	.agte-bouton--contact:hover > .agte-fleche, .agte-bouton--contact:focus-visible > .agte-fleche { transform: none; }
}

/* Cadre « Notre accompagnement » : pictogrammes orange doux devant chaque élément */
.agte-dept__rassurant ul { list-style: none; padding-left: 0; }
.agte-dept__rassurant li { align-items: flex-start; display: flex; gap: 0.6rem; }
.agte-dept__picto {
	align-items: center;
	background: #fff4e5;
	border: 1px solid #f0c48a;
	border-radius: 50%;
	box-sizing: border-box;
	color: #d9762f;
	display: inline-flex;
	flex: none;
	height: 1.85rem;
	justify-content: center;
	width: 1.85rem;
}
.agte-dept__picto .agte-icone { height: 1.05rem; width: 1.05rem; }

/* Bulle « Contactez-nous » : libellé visible aussi sur mobile, en format compact */
@media (max-width: 600px) {
	.agte-chat__bulle { font-size: 0.9rem; gap: 0.4rem; padding: 0.6rem 0.9rem 0.6rem 0.75rem; }
	.agte-chat__bulle span { clip: auto; height: auto; overflow: visible; position: static; white-space: nowrap; width: auto; }
	.agte-chat__bulle svg { height: 1.2rem; width: 1.2rem; }
}

/* V0.8.1 — corrections demandées */
/* Pictogrammes du cadre « Notre accompagnement » en bleu doux */
.agte-dept__picto { background: #dbe6f3; border-color: #bccfe6; color: #2c64a6; }
/* « Profil vérifié » en doré discret (texte brun doré : contraste élevé sur fond crème) */
.agte-verifie { background: #fbf4df; border-color: #e2c873; color: #6b4e0e; }
.agte-verifie__icone { color: #b08a1e; }
/* Flèche du bouton de mise en relation alignée sur la dernière ligne (« relation ») ; mouvement au survol conservé */
.agte-profil__mer > .agte-fleche { align-self: flex-end; margin-bottom: var(--agte-fleche-decalage, 0.3em); }

/* V0.8.2 — flèche collée au mot « relation » (même ligne) ; doré du badge renforcé */
.agte-profil__mer { display: block; text-align: center; }
.agte-insecable { white-space: nowrap; }
.agte-profil__mer .agte-fleche { display: inline-block; margin-bottom: 0; transition: transform 0.25s ease; vertical-align: -0.12em; }
.agte-profil__mer:hover .agte-fleche, .agte-profil__mer:focus-visible .agte-fleche { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) {
	.agte-profil__mer .agte-fleche { transition: none; }
	.agte-profil__mer:hover .agte-fleche, .agte-profil__mer:focus-visible .agte-fleche { transform: none; }
}
/* Fiche publique (2026-10-10) : bouton « Être recontacté… » — flèche 1 px et zoom 0,75 % au survol (un cran sous 1,5 px et 1 %), souris uniquement pour le zoom */
.agte-route--fiche .agte-profil__mer:hover .agte-fleche, .agte-route--fiche .agte-profil__mer:focus-visible .agte-fleche { transform: translateX(1px); }
@media (hover: hover) and (pointer: fine) {
	.agte-route--fiche .agte-profil__mer:hover, .agte-route--fiche .agte-profil__mer:focus-visible { transform: scale(1.0075); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-route--fiche .agte-profil__mer:hover, .agte-route--fiche .agte-profil__mer:focus-visible, .agte-route--fiche .agte-profil__mer:hover .agte-fleche, .agte-route--fiche .agte-profil__mer:focus-visible .agte-fleche { transform: none; }
}
.agte-verifie {
	background: linear-gradient(180deg, #fff3c9, #f8e19a);
	border: 1px solid #c9971c;
	box-shadow: 0 1px 3px rgba(150, 105, 10, 0.25);
	color: #4f3703;
}
.agte-verifie__icone { color: #a8770a; }

/* V0.8.3 — badge « Profil vérifié » : doré affirmé (teintes or antique #C9A84C, or soutenu #B8860B, crème #FFF8E8) */
.agte-verifie {
	background: linear-gradient(135deg, #fff8e8 0%, #fbeabb 100%);
	border: 1px solid #c9a84c;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), 0 1px 4px rgba(201, 168, 76, 0.35);
	color: #4a3400;
	gap: 0.35rem;
	letter-spacing: 0.01em;
	padding: 0.22rem 0.7rem 0.22rem 0.3rem;
}
.agte-verifie__icone { height: 1.15rem; width: 1.15rem; }
.agte-verifie__disque { fill: #b8860b; stroke: #f0cc6e; stroke-width: 1; }

/* ===== V0.8.4 — repères « Départ » et « Arrivée » du parcours du camion (marge gauche, ≥ 1360 px) ===== */
.agte-camion-repere {
	border-radius: 999px;
	box-sizing: border-box;
	font-size: 0.6rem;
	font-weight: 700;
	left: 0;
	letter-spacing: 0.06em;
	line-height: 1;
	padding: 0.3rem 0.5rem;
	position: absolute;
	text-transform: uppercase;
	transform: translateX(-50%);
	white-space: nowrap;
}
.agte-camion-repere--depart { background: #ffffff; border: 1px solid #b9cde6; color: var(--agte-bleu); top: 0; }
.agte-camion-repere--arrivee {
	background: var(--agte-bleu);
	border: 1px solid var(--agte-bleu);
	bottom: 0;
	color: #ffffff;
	transition: box-shadow 0.3s ease, background-color 0.3s ease;
}
/* Arrivée atteinte : léger halo orange doux */
.agte-camion-piste.is-arrive .agte-camion-repere--arrivee { background: var(--agte-marine); box-shadow: 0 0 0 3px rgba(253, 186, 116, 0.55); }
/* La route se raccorde au repère « Départ » : fondu d'entrée raccourci */
.agte-camion-route { -webkit-mask-image: linear-gradient(to bottom, transparent, #000 18px); mask-image: linear-gradient(to bottom, transparent, #000 18px); }

/* ===== V0.8.5 — route en léger virage (tracé SVG), suivie par le camion ===== */
@media (min-width: 1360px) {
	.agte-camion-route {
		background: none;
		border-radius: 0;
		height: 100%;
		left: -30px;
		-webkit-mask-image: linear-gradient(to bottom, transparent 20px, #000 46px);
		mask-image: linear-gradient(to bottom, transparent 20px, #000 46px);
		overflow: visible;
		top: 0;
		width: 60px;
	}
	.agte-camion { left: -14px; transform-origin: 50% 50%; }
}
.agte-camion-route__chaussee { fill: none; stroke: rgba(110, 130, 155, 0.3); stroke-linecap: round; stroke-linejoin: round; stroke-width: 18; }
.agte-camion-route__pointilles { fill: none; stroke: rgba(255, 255, 255, 0.9); stroke-dasharray: 8 7; stroke-width: 2; }

/* ===== V0.8.6 — points des profils (carte en points) : clignotement doux, purement décoratif (aucune disponibilité) ===== */
.agte-france-points__svg .agte-france-points__repere { animation: agte-repere-clignote 2.6s ease-in-out infinite; }
.agte-france-points__svg .agte-france-points__repere:nth-of-type(3n+1) { animation-delay: 0.9s; }
.agte-france-points__svg .agte-france-points__repere:nth-of-type(3n+2) { animation-delay: 1.7s; }
@keyframes agte-repere-clignote { 0%, 100% { opacity: 1; } 50% { opacity: 0.35; } }
@media (prefers-reduced-motion: reduce) { .agte-france-points__svg .agte-france-points__repere { animation: none; opacity: 1; } }

/* V0.8.8 — correction de l'inversion : points des profils clignotants (comme en V0.8.6),
   petits points de la silhouette fixes, sans scintillement ni halo */
.agte-france-points__svg circle.is-orange { animation: none; filter: none; opacity: 0.9; stroke: none; }

/* ===== V0.9.0 — filtre à deux niveaux (activité, puis tonnage ou places) ===== */
.agte-filtre__sous { align-items: center; display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.55rem; }
.agte-filtre__sous[hidden] { display: none; }
.agte-filtre__sous::before { color: var(--agte-texte-doux); content: "↳"; font-size: 0.9rem; margin: 0 0.15rem 0 0.4rem; }
.agte-filtre__sous-option {
	background: #f3f7fc;
	border: 1px solid #c5d3e3;
	border-radius: 999px;
	color: var(--agte-marine);
	cursor: pointer;
	font: inherit;
	font-size: 0.85rem;
	font-weight: 600;
	padding: 0.35rem 0.8rem;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.agte-filtre__sous-option:hover { border-color: var(--agte-bleu); }
.agte-filtre__sous-option[aria-pressed="true"] { background: var(--agte-bleu-clair); border-color: var(--agte-bleu); color: var(--agte-bleu); }
.agte-filtre__sous-option:focus-visible { outline: 3px solid #fdba74; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .agte-filtre__sous-option { transition: none; } }

/* ===== V0.9.1 / V0.9.3 — badge « Profil vérifié » : version retenue « médaille » (petit écusson doré) ===== */
/* B « médaille » : écusson doré en relief qui déborde à gauche, pastille allongée, casse normale */
.agte-verifie--b {
	font-size: 0.8rem;
	font-weight: 600;
	gap: 0.35rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
	margin-left: 0.45rem;
	padding: 0.2rem 0.75rem 0.2rem 0;
}
.agte-verifie--b .agte-verifie__icone {
	filter: drop-shadow(0 1px 1.5px rgba(120, 85, 5, 0.35));
	height: 1.5rem;
	margin: -0.3rem 0 -0.3rem -0.55rem;
	width: 1.4rem;
}
.agte-verifie--b .agte-verifie__texte { border-left: 1px solid rgba(201, 168, 76, 0.55); padding-left: 0.45rem; }

/* V0.9.2 — badge « Profil vérifié » compact (icône seule) pour les petites étiquettes de la carte en points */
.agte-verifie.agte-verifie--compact {
	align-self: center;
	background: none;
	border: 0;
	box-shadow: none;
	display: inline-flex;
	margin: 0 0 0 0.1rem;
	padding: 0;
}
.agte-verifie--compact .agte-verifie__icone { filter: none; height: 0.95rem; margin: 0; width: 0.95rem; }

/* ===== V0.9.4 — effet d'appui sur écrans tactiles : légère réduction pendant le toucher, retour en douceur =====
   Limité aux appareils sans survol (mobiles, tablettes) : les effets de survol sur ordinateur restent inchangés.
   La réduction ne modifie ni la taille réservée ni la zone cliquable : l'action part dès le premier appui. */
@media (hover: none) and (pointer: coarse) {
	.agte-bouton,
	.wp-block-button__link,
	.agte-chat__bulle,
	.agte-chat__envoyer,
	.agte-chat__choix-bouton,
	.agte-filtre__option span,
	.agte-filtre__sous-option {
		-webkit-tap-highlight-color: transparent;
		transition: transform 0.18s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
	}
	.agte-bouton:active,
	.wp-block-button__link:active,
	.agte-chat__bulle:active,
	.agte-chat__envoyer:active,
	.agte-chat__choix-bouton:active,
	.agte-filtre__option:active span,
	.agte-filtre__sous-option:active {
		transform: scale(0.97);
		transition-duration: 0.08s;
	}
	/* Pas de « survol collant » après un toucher sur la bulle de contact */
	.agte-chat__bulle:hover { transform: none; }
}
@media (hover: none) and (pointer: coarse) and (prefers-reduced-motion: reduce) {
	.agte-bouton:active,
	.wp-block-button__link:active,
	.agte-chat__bulle:active,
	.agte-chat__envoyer:active,
	.agte-chat__choix-bouton:active,
	.agte-filtre__option:active span,
	.agte-filtre__sous-option:active { transform: none; }
}
/* V0.9.4 (suite) — même effet via la classe « is-appui » posée au toucher (plus fiable que :active selon les navigateurs) */
@media (hover: none) and (pointer: coarse) {
	.agte-bouton.is-appui,
	.wp-block-button__link.is-appui,
	.agte-chat__bulle.is-appui,
	.agte-chat__envoyer.is-appui,
	.agte-chat__choix-bouton.is-appui,
	.agte-filtre__option.is-appui span,
	.agte-filtre__sous-option.is-appui { transform: scale(0.97); transition-duration: 0.08s; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-bouton.is-appui,
	.wp-block-button__link.is-appui,
	.agte-chat__bulle.is-appui,
	.agte-chat__envoyer.is-appui,
	.agte-chat__choix-bouton.is-appui,
	.agte-filtre__option.is-appui span,
	.agte-filtre__sous-option.is-appui { transform: none; }
}

/* ===== V1.1.0 — page département : effets discrets (retour du filtre, volet tarifaire, relief des cartes) ===== */
/* 1. Après un changement de filtre : cartes en fondu court, phrase de résultat brièvement éclairée */
.agte-dept .agte-profil.is-maj { animation: agte-carte-entree 0.22s ease-out; }
@keyframes agte-carte-entree { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.agte-dept__compte.is-maj, .agte-dept__vide.is-maj { animation: agte-resultat-eclaire 0.9s ease-out; border-radius: 6px; }
@keyframes agte-resultat-eclaire { 0% { background-color: #dbe6f3; } 100% { background-color: transparent; } }
.agte-dept__vide.is-maj { animation-name: agte-vide-eclaire; }
@keyframes agte-vide-eclaire { 0% { background-color: #cfdef0; } 100% { background-color: #eaf1fa; } }
/* 2. Volet « Voir les tarifs » : le contenu ne déborde pas pendant l'ouverture ou la fermeture */
.agte-tarifs.is-anime .agte-tarifs__contenu { box-sizing: border-box; overflow: hidden; }
/* 3. Léger relief des cartes au survol (souris uniquement) */
.agte-profil--detaille { transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-profil--detaille:hover { border-color: #bfd0e4; box-shadow: 0 10px 24px rgba(15, 44, 76, 0.1); transform: translateY(-2px); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-dept .agte-profil.is-maj, .agte-dept__compte.is-maj, .agte-dept__vide.is-maj { animation: none; }
	.agte-profil--detaille { transition: none; }
	.agte-profil--detaille:hover { transform: none; }
}

/* ===== V1.3.0 — fiche détaillée d'un gestionnaire (démonstration à valider) ===== */
.agte-fiche { align-items: start; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1fr) 20rem; margin-top: 0.5rem; }
@media (max-width: 999px) { .agte-fiche { gap: 2rem; grid-template-columns: 1fr; } }
.agte-fiche__principal { display: flex; flex-direction: column; gap: 1.25rem; min-width: 0; }
.agte-fiche__entete, .agte-fiche__bloc { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); padding: 1.25rem 1.4rem; }
.agte-fiche__identite { align-items: center; display: flex; gap: 0.9rem; }
.agte-fiche__identite .agte-profil__avatar { height: 64px; width: 64px; }
.agte-fiche__nom { color: var(--agte-marine); font-size: 1.5rem; font-weight: 800; line-height: 1.2; margin: 0; }
.agte-fiche__statut { color: var(--agte-texte-doux); font-size: 0.95rem; margin: 0.15rem 0 0; }
.agte-fiche__entete .agte-verifie { margin-top: 0.9rem; }
.agte-fiche__titre { color: var(--agte-marine); font-size: 1.15rem; margin: 0 0 0.75rem; }
.agte-fiche__entete .agte-fiche__titre { font-size: 1rem; margin-top: 1.1rem; }
.agte-fiche__capacites { display: flex; flex-wrap: wrap; gap: 0.45rem; list-style: none; margin: 0; padding: 0; }
.agte-fiche__capacites li { background: #eaf1fa; border: 1px solid #c9d8ea; border-radius: 999px; color: var(--agte-bleu); font-size: 0.875rem; font-weight: 600; padding: 0.3rem 0.8rem; }
.agte-fiche__infos { display: grid; gap: 0.75rem; margin: 0; }
.agte-fiche__infos dt { color: var(--agte-texte-doux); font-size: 0.8rem; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase; }
.agte-fiche__infos dd { margin: 0.15rem 0 0; }
.agte-fiche__infos a { color: var(--agte-bleu); }
.agte-fiche .agte-tarifs { margin-bottom: 0; }
.agte-fiche__intro { color: var(--agte-texte-doux); margin: 0 0 0.5rem; }
.agte-fiche__liste { margin: 0; padding-left: 1.2rem; }
.agte-fiche__liste li + li { margin-top: 0.4rem; }
.agte-fiche__savoir { background: #f5f7fa; }
.agte-fiche__aside { display: flex; flex-direction: column; gap: 1.25rem; }
@media (min-width: 1000px) { .agte-fiche__aside { position: sticky; top: 1.5rem; } }
.agte-fiche__contact { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); padding: 1.1rem 1.2rem; }
.agte-fiche__contact-titre { color: var(--agte-marine); font-size: 1.1rem; font-weight: 700; margin: 0 0 0.4rem; }
.agte-fiche__contact p:not(.agte-fiche__contact-titre) { font-size: 0.925rem; margin: 0 0 0.9rem; }
.agte-fiche__methode { display: block; margin-top: 0.4rem; }
.agte-fiche__entete .agte-profil__fictif { display: inline-block; }

/* V1.3.2 — bouton « Être recontacté pour ma mise en relation » : très léger zoom au survol (souris uniquement),
   aucune animation permanente ; sur écran tactile, l'effet d'appui existant (97 %) sert de retour ; rien si animations réduites. */
.agte-profil__mer { transition: transform 0.2s ease, background-color 0.2s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-profil__mer:hover, .agte-profil__mer:focus-visible { transform: scale(1.025); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-profil__mer { transition: none; }
	.agte-profil__mer:hover, .agte-profil__mer:focus-visible { transform: none; }
}

/* V1.3.3 — accroche de la fiche : poignée de main discrète (bleu doux), précision sur les frais ; zoom du bouton limité à 1 % */
.agte-fiche__contact-titre { align-items: center; display: flex; gap: 0.6rem; line-height: 1.3; }
.agte-fiche__contact-icone { align-items: center; background: #dbe6f3; border: 1px solid #bccfe6; border-radius: 50%; box-sizing: border-box; color: #2c64a6; display: inline-flex; flex: none; height: 2.3rem; justify-content: center; width: 2.3rem; }
.agte-fiche__contact-icone .agte-icone { height: 1.3rem; width: 1.3rem; }
.agte-fiche__contact { border-top: 3px solid #bccfe6; }
.agte-fiche__contact .agte-fiche__contact-precision { color: var(--agte-texte-doux); font-size: 0.85rem; }
@media (hover: hover) and (pointer: fine) {
	.agte-profil__mer:hover, .agte-profil__mer:focus-visible { transform: scale(1.01); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-profil__mer:hover, .agte-profil__mer:focus-visible { transform: none; }
}

/* ===== V1.4.0 — fiche : mini-carte de la zone d'intervention (à droite des informations ; dessous sur mobile) ===== */
.agte-fiche__exp { align-items: start; display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr) 15rem; }
@media (max-width: 699px) { .agte-fiche__exp { grid-template-columns: 1fr; } }
.agte-minicarte { margin: 0; }
.agte-minicarte__svg { display: block; height: auto; max-width: 15rem; width: 100%; }
@media (max-width: 699px) { .agte-minicarte__svg { margin: 0 auto; } }
.agte-minicarte__fond path { fill: #eef2f7; stroke: #ffffff; stroke-width: 0.6; }
.agte-minicarte__zone path { fill: #b9cfe9; stroke: #9fbbdc; stroke-width: 0.6; }
.agte-minicarte__contour path { fill: none; stroke: #1d4f8a; stroke-linejoin: round; stroke-width: 1.4; }
.agte-minicarte__repere rect { fill: #ffffff; stroke: #c94f17; stroke-width: 1; }
.agte-minicarte__repere text { fill: #13202f; font-family: inherit; font-size: 10.5px; font-weight: 700; }
.agte-minicarte__repere circle { fill: #c94f17; stroke: #ffffff; stroke-width: 2; }
.agte-minicarte__legende { color: var(--agte-texte-doux); display: flex; flex-direction: column; font-size: 0.8rem; gap: 0.3rem; margin-top: 0.6rem; }
@media (max-width: 699px) { .agte-minicarte__legende { align-items: center; } }
.agte-minicarte__cle { align-items: center; display: inline-flex; gap: 0.45rem; }
.agte-minicarte__pastille { display: inline-block; flex: none; height: 0.8rem; width: 0.8rem; }
.agte-minicarte__pastille--zone { background: #b9cfe9; border: 1.5px solid #1d4f8a; border-radius: 2px; }
.agte-minicarte__pastille--loc { background: #c94f17; border: 2px solid #ffffff; border-radius: 50%; box-shadow: 0 0 0 1px #c94f17; }
.agte-minicarte__national { color: var(--agte-marine); font-weight: 700; }

/* ===== V1.4.1 — mini-carte redessinée dans le style de la carte en points de l'accueil ===== */
.agte-minicarte { background: #f5f8fc; border: 1px solid #e3ebf5; border-radius: 10px; padding: 0.75rem 0.75rem 0.65rem; }
.agte-minicarte__aplat path { fill: rgba(95, 140, 196, 0.14); stroke: none; }
.agte-minicarte__fond circle { fill: #c7d8ee; }
.agte-minicarte__zone circle { fill: #5f8cc4; }
.agte-minicarte__contour path { fill: none; stroke: #1d4f8a; stroke-linejoin: round; stroke-opacity: 0.85; stroke-width: 1; }
.agte-minicarte__repere rect { fill: #ffffff; stroke: #d4dce6; stroke-width: 0.8; }
.agte-minicarte__repere text { fill: #0f2c4c; font-size: 10.5px; font-weight: 700; }
.agte-minicarte__repere circle { fill: #c94f17; stroke: #ffffff; stroke-width: 1.5; }
.agte-minicarte__legende { font-size: 0.78rem; gap: 0.25rem; margin-top: 0.5rem; }
.agte-minicarte__pastille { height: 0.65rem; width: 0.65rem; }
.agte-minicarte__pastille--zone { background: #5f8cc4; border: 1px solid #1d4f8a; border-radius: 50%; }
.agte-minicarte__pastille--loc { background: #c94f17; border: 1.5px solid #ffffff; border-radius: 50%; box-shadow: 0 0 0 1px #c94f17; height: 0.55rem; width: 0.55rem; }
.agte-minicarte__repere text { font-size: 12.5px; }
/* V1.4.2 — silhouette plus lisible : points un peu plus grands, teintes de la carte d'accueil */
.agte-minicarte__fond circle { fill: #b9cde6; }
.agte-minicarte__zone circle { fill: #2c64a6; }
.agte-minicarte__aplat path { fill: rgba(44, 100, 166, 0.2); }
.agte-minicarte__contour path { stroke-width: 1.2; }
.agte-minicarte__repere rect { stroke: #b9cde6; }
.agte-minicarte__pastille--zone { background: #2c64a6; }

/* ===== V1.4.3 — mini-carte : zone mieux mise en valeur, contours soignés, léger relief ; point jaune de localisation ===== */
.agte-minicarte { background: linear-gradient(180deg, #f7faff 0%, #eef3fa 100%); border-color: #dfe8f3; }
.agte-minicarte__aplat path { stroke: none; } /* remplissage : dégradé bleu doux ; relief : ombre portée légère (définis dans le SVG) */
.agte-minicarte__fond circle { fill: #c3d4ea; }
.agte-minicarte__zone circle { fill: #1d4f8a; }
.agte-minicarte__lisere path { fill: none; stroke: #ffffff; stroke-linejoin: round; stroke-width: 3; }
.agte-minicarte__contour path { stroke: #1d4f8a; stroke-opacity: 1; stroke-width: 1.3; }
/* Point jaune de localisation : clignotement doux ; halo fixe pour rester visible sur fond clair */
.agte-minicarte__halo { fill: rgba(242, 194, 48, 0.28); stroke: none; }
.agte-minicarte__repere .agte-minicarte__point { animation: agte-loc-clignote 2.4s ease-in-out infinite; fill: #f2c230; stroke: #9a6f08; stroke-width: 1.1; }
@keyframes agte-loc-clignote { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }
@media (prefers-reduced-motion: reduce) { .agte-minicarte__repere .agte-minicarte__point { animation: none; opacity: 1; } }
.agte-minicarte__pastille--zone { background: #1d4f8a; border-color: #1d4f8a; }
.agte-minicarte__pastille--loc { background: #f2c230; border: 1px solid #9a6f08; box-shadow: 0 0 0 2px rgba(242, 194, 48, 0.3); }

/* ===== V1.4.4 — variante du point de localisation « jaune doux » (?point=doux) : fin, doré, halo léger, clignotement lent ===== */
.agte-minicarte--point-doux .agte-minicarte__repere circle.agte-minicarte__halo { animation: none; fill: rgba(240, 204, 110, 0.22); stroke: none; }
.agte-minicarte--point-doux .agte-minicarte__repere circle.agte-minicarte__point { animation: agte-loc-doux 4s ease-in-out infinite; fill: #f3d36b; stroke: #c9a84c; stroke-width: 0.8; }
@keyframes agte-loc-doux { 0%, 100% { opacity: 1; } 50% { opacity: 0.55; } }
.agte-minicarte--point-doux .agte-minicarte__pastille--loc { background: #f3d36b; border: 1px solid #c9a84c; box-shadow: 0 0 0 2px rgba(240, 204, 110, 0.25); }
@media (prefers-reduced-motion: reduce) { .agte-minicarte--point-doux .agte-minicarte__repere circle.agte-minicarte__point { animation: none; opacity: 1; } }

/* V1.4.5 — point de localisation retenu : jaune doux plus soutenu, un peu plus gros, clignotement doux bien visible */
.agte-minicarte--point-doux .agte-minicarte__repere circle.agte-minicarte__halo { fill: rgba(240, 190, 40, 0.24); }
.agte-minicarte--point-doux .agte-minicarte__repere circle.agte-minicarte__point { animation: agte-loc-visible 2.8s ease-in-out infinite; fill: #f2c12e; stroke: #b8901f; stroke-width: 0.9; }
@keyframes agte-loc-visible { 0%, 100% { opacity: 1; } 50% { opacity: 0.25; } }
.agte-minicarte--point-doux .agte-minicarte__pastille--loc { background: #f2c12e; border-color: #b8901f; }
@media (prefers-reduced-motion: reduce) { .agte-minicarte--point-doux .agte-minicarte__repere circle.agte-minicarte__point { animation: none; opacity: 1; } }

/* ===== V1.5.0 — formulaire de mise en relation ===== */
.agte-mer { align-items: start; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1fr) 20rem; margin-top: 0.5rem; }
@media (max-width: 999px) { .agte-mer { gap: 2rem; grid-template-columns: 1fr; } }
.agte-mer__recap { background: #eaf1fa; border-left: 4px solid var(--agte-bleu); border-radius: 8px; margin: 0 0 1.25rem; padding: 0.9rem 1.1rem; }
.agte-mer__modifier { color: var(--agte-bleu); font-weight: 600; margin-left: 0.25rem; }
.agte-mer__form { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); padding: 1.4rem 1.5rem; }
.agte-mer__intro { color: var(--agte-texte-doux); font-size: 0.9rem; margin: 0 0 1rem; }
.agte-mer__champ { display: flex; flex-direction: column; gap: 0.3rem; margin: 0 0 1.05rem; }
.agte-mer__champ label { color: var(--agte-marine); font-weight: 700; }
.agte-mer__facultatif { color: var(--agte-texte-doux); font-weight: 400; }
.agte-mer__champ input, .agte-mer__champ select, .agte-mer__champ textarea {
	background: #fff;
	border: 1px solid #b9c7d8;
	border-radius: 6px;
	box-sizing: border-box;
	color: var(--agte-texte);
	font: inherit;
	font-size: 1rem;
	padding: 0.6rem 0.75rem;
	width: 100%;
}
.agte-mer__champ input:focus-visible, .agte-mer__champ select:focus-visible, .agte-mer__champ textarea:focus-visible { border-color: var(--agte-bleu); outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-mer__champ.has-erreur input, .agte-mer__champ.has-erreur select, .agte-mer__champ.has-erreur textarea { border-color: #b42318; }
.agte-mer__aide { color: var(--agte-texte-doux); font-size: 0.85rem; }
.agte-mer__erreur { color: #b42318; font-size: 0.875rem; font-weight: 600; }
.agte-mer__resume-erreurs { background: #fdecea; border-left: 4px solid #b42318; border-radius: 8px; margin: 0 0 1.25rem; padding: 0.8rem 1.1rem; }
.agte-mer__resume-erreurs p { margin: 0 0 0.3rem; }
.agte-mer__resume-erreurs ul { margin: 0; padding-left: 1.2rem; }
.agte-mer__resume-erreurs a { color: #8a1c12; }
.agte-mer__piege { height: 1px; left: -9999px; overflow: hidden; position: absolute; width: 1px; }
.agte-mer__envoi { margin: 1.25rem 0 0.9rem; }
.agte-mer__envoi .agte-bouton { font-size: 1rem; padding: 0.75rem 1.4rem; }
.agte-mer__info { color: var(--agte-texte-doux); font-size: 0.8rem; line-height: 1.5; margin: 0; }
.agte-mer__a-preciser { background: #fff4e5; border-radius: 4px; color: #5a3200; padding: 0 0.25rem; }
.agte-mer__aside { display: flex; flex-direction: column; gap: 1.25rem; }
@media (min-width: 1000px) { .agte-mer__aside { position: sticky; top: 1.5rem; } }
.agte-mer--confirmation { background: #eaf6ef; border: 1px solid #b7dfc6; border-radius: var(--agte-rayon); display: block; max-width: 44rem; padding: 1.25rem 1.4rem; }
.agte-mer__confirmation-titre { align-items: center; color: #14532d; display: flex; font-size: 1.15rem; font-weight: 700; gap: 0.5rem; margin: 0 0 0.6rem; }
.agte-mer__confirmation-titre .agte-icone { height: 1.4rem; width: 1.4rem; }

/* ===== V1.6.0 — page « Nous contacter » ===== */
.agte-contact__parcours { display: grid; gap: 1.25rem; grid-template-columns: 1fr 1fr; margin: 1.5rem 0 2.25rem; }
@media (max-width: 799px) { .agte-contact__parcours { grid-template-columns: 1fr; } }
.agte-contact__carte { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); display: flex; flex-direction: column; gap: 0.6rem; padding: 1.25rem 1.4rem; }
.agte-contact__carte--mer { background: #eaf1fa; border-color: #c9d8ea; }
.agte-contact__carte h2 { color: var(--agte-marine); font-size: 1.15rem; margin: 0; }
.agte-contact__carte p { margin: 0; }
.agte-contact__carte .agte-bouton { align-self: flex-start; margin-top: 0.3rem; text-decoration: none; }
.agte-contact__icone { align-items: center; background: #dbe6f3; border: 1px solid #bccfe6; border-radius: 50%; box-sizing: border-box; color: #2c64a6; display: inline-flex; height: 2.4rem; justify-content: center; width: 2.4rem; }
.agte-contact__icone .agte-icone { height: 1.3rem; width: 1.3rem; }
.agte-contact__formulaire h2, .agte-contact__coordonnees h2 { color: var(--agte-marine); font-size: 1.25rem; margin: 0 0 0.9rem; }
.agte-contact__profils { border: 0; margin: 0 0 1.05rem; min-width: 0; padding: 0; }
.agte-contact__profils legend { color: var(--agte-marine); font-weight: 700; margin-bottom: 0.4rem; padding: 0; }
.agte-contact__ligne { display: grid; gap: 0 1rem; grid-template-columns: 1fr 1fr; }
@media (max-width: 599px) { .agte-contact__ligne { grid-template-columns: 1fr; } }
.agte-contact__coordonnees { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); padding: 1.1rem 1.2rem; }
.agte-contact__coordonnees ul { list-style: none; margin: 0; padding: 0; }
.agte-contact__coordonnees li { align-items: flex-start; display: flex; gap: 0.6rem; }
.agte-contact__coordonnees li + li { margin-top: 0.8rem; }
.agte-contact__coordonnees li > span:last-child { display: flex; flex-direction: column; font-size: 0.9rem; gap: 0.1rem; }
.agte-contact__coordonnees strong { color: var(--agte-marine); }
.agte-contact__coordonnees .agte-mer__a-preciser { align-self: flex-start; font-size: 0.8rem; }

/* ===== V1.7.0 — page « Nous contacter » : présentation aérée et accueillante ===== */
/* Orientation : deux liens en bandeau discret */
.agte-contact__orientation { display: grid; gap: 0.9rem; grid-template-columns: 1fr 1fr; margin: 1.4rem 0 2.2rem; }
@media (max-width: 799px) { .agte-contact__orientation { grid-template-columns: 1fr; } }
.agte-contact__parcours-lien {
	align-items: center;
	background: var(--agte-surface);
	border: 1px solid var(--agte-bordure);
	border-radius: 12px;
	color: var(--agte-texte);
	display: flex;
	gap: 0.85rem;
	padding: 0.85rem 1rem;
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.agte-contact__parcours-lien--mer { background: #f3f7fc; border-color: #c9d8ea; }
.agte-contact__parcours-lien > span:nth-child(2) { display: flex; flex: 1; flex-direction: column; font-size: 0.875rem; gap: 0.1rem; line-height: 1.4; }
.agte-contact__parcours-lien strong { color: var(--agte-marine); font-size: 0.95rem; }
.agte-contact__parcours-lien .agte-fleche { color: var(--agte-bleu); flex: none; }
.agte-contact__parcours-lien:hover, .agte-contact__parcours-lien:focus-visible { border-color: var(--agte-bleu); box-shadow: 0 6px 18px rgba(15, 44, 76, 0.08); }
.agte-contact__parcours-lien:focus-visible { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-contact__parcours-icone, .agte-contact__encart-icone, .agte-contact__entete-icone {
	align-items: center;
	background: #eaf1fa;
	border-radius: 50%;
	color: #2c64a6;
	display: inline-flex;
	flex: none;
	height: 2.4rem;
	justify-content: center;
	width: 2.4rem;
}
.agte-contact__parcours-icone .agte-icone, .agte-contact__encart-icone .agte-icone, .agte-contact__entete-icone .agte-icone { height: 1.2rem; width: 1.2rem; }

/* Mise en page : formulaire + colonne */
.agte-contact { align-items: start; display: grid; gap: 2rem; grid-template-columns: minmax(0, 1fr) 18rem; }
@media (max-width: 899px) { .agte-contact { grid-template-columns: 1fr; } }
.agte-contact__carte-form { background: var(--agte-surface); border: 1px solid #e1e8f0; border-radius: 16px; box-shadow: 0 10px 30px rgba(15, 44, 76, 0.06); padding: 1.8rem 2rem 1.6rem; }
@media (max-width: 599px) { .agte-contact__carte-form { padding: 1.3rem 1.1rem 1.2rem; } }
.agte-contact__entete { align-items: flex-start; border-bottom: 1px solid #edf1f6; display: flex; gap: 0.9rem; margin-bottom: 1.4rem; padding-bottom: 1.2rem; }
.agte-contact__entete h2 { color: var(--agte-marine); font-size: 1.3rem; margin: 0 0 0.25rem; }
.agte-contact__entete p { color: var(--agte-texte-doux); font-size: 0.925rem; margin: 0; }

/* Champs : proportions, bordures légères, focus doux */
.agte-contact__form { display: flex; flex-direction: column; gap: 1.1rem; }
.agte-contact__grille { display: grid; gap: 1.1rem 1.2rem; grid-template-columns: 1fr 1fr; }
@media (max-width: 599px) { .agte-contact__grille { grid-template-columns: 1fr; } }
.agte-contact__champ { display: flex; flex-direction: column; gap: 0.35rem; margin: 0; }
.agte-contact__champ label, .agte-contact__profils legend { color: var(--agte-marine); font-size: 0.875rem; font-weight: 600; }
.agte-contact__option { color: var(--agte-texte-doux); font-size: 0.8rem; font-weight: 400; margin-left: 0.25rem; }
.agte-contact__champ input, .agte-contact__champ select, .agte-contact__champ textarea {
	background: #fbfcfe;
	border: 1px solid #d4dce6;
	border-radius: 9px;
	box-sizing: border-box;
	color: var(--agte-texte);
	font: inherit;
	font-size: 0.975rem;
	min-height: 2.75rem;
	padding: 0.55rem 0.8rem;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
	width: 100%;
}
.agte-contact__champ textarea { line-height: 1.5; min-height: 8rem; resize: vertical; }
.agte-contact__champ input:hover, .agte-contact__champ select:hover, .agte-contact__champ textarea:hover { border-color: #b9c7d8; }
.agte-contact__champ input:focus, .agte-contact__champ select:focus, .agte-contact__champ textarea:focus { background: #fff; border-color: #2c64a6; box-shadow: 0 0 0 3px rgba(44, 100, 166, 0.16); outline: none; }
.agte-contact__champ.has-erreur input, .agte-contact__champ.has-erreur select, .agte-contact__champ.has-erreur textarea { border-color: #b42318; }
.agte-contact__champ ::placeholder { color: #94a3b8; }

/* « Vous êtes » : choix en pastilles fines */
.agte-contact__profils { border: 0; margin: 0; min-width: 0; padding: 0; }
.agte-contact__profils legend { margin-bottom: 0.45rem; padding: 0; }
.agte-contact__choix-liste { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.agte-contact__choix { cursor: pointer; position: relative; }
.agte-contact__choix input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.agte-contact__choix span { background: #fbfcfe; border: 1px solid #d4dce6; border-radius: 999px; color: var(--agte-texte); display: inline-block; font-size: 0.9rem; padding: 0.45rem 0.95rem; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.agte-contact__choix:hover span { border-color: #2c64a6; }
.agte-contact__choix input:checked + span { background: #eaf1fa; border-color: #2c64a6; color: var(--agte-bleu); font-weight: 600; }
.agte-contact__choix input:focus-visible + span { outline: 2px solid #2c64a6; outline-offset: 2px; }

/* Pied du formulaire */
.agte-contact__pied { align-items: center; border-top: 1px solid #edf1f6; display: flex; flex-wrap: wrap; gap: 0.8rem 1.4rem; margin-top: 0.3rem; padding-top: 1.2rem; }
.agte-contact__pied .agte-bouton { font-size: 1rem; padding: 0.75rem 1.4rem; }
@media (max-width: 599px) { .agte-contact__pied .agte-bouton { justify-content: center; width: 100%; } }
.agte-contact__info { color: var(--agte-texte-doux); flex: 1 1 16rem; font-size: 0.8rem; line-height: 1.5; margin: 0; }

/* Colonne : e-mail direct, avis Google */
.agte-contact__aside { display: flex; flex-direction: column; gap: 1rem; }
@media (min-width: 900px) { .agte-contact__aside { position: sticky; top: 1.5rem; } }
.agte-contact__encart { align-items: flex-start; background: var(--agte-surface); border: 1px solid #e1e8f0; border-radius: 14px; display: flex; gap: 0.8rem; padding: 1rem 1.1rem; }
.agte-contact__encart > div { display: flex; flex-direction: column; gap: 0.3rem; min-width: 0; }
.agte-contact__encart-titre { color: var(--agte-marine); font-size: 0.95rem; font-weight: 700; margin: 0; }
.agte-contact__email { color: var(--agte-bleu); font-weight: 600; overflow-wrap: anywhere; }
.agte-contact__email:hover { text-decoration: none; }
.agte-contact__encart-icone--avis { background: #fbf4df; color: #b8901f; }
.agte-contact__encart-icone--avis .agte-icone { fill: #f2c12e; stroke: #b8901f; }
.agte-contact__lien-inactif { color: var(--agte-texte-doux); font-weight: 600; opacity: 0.7; }
.agte-contact__encart .agte-mer__a-preciser { align-self: flex-start; font-size: 0.78rem; }
.agte-contact .agte-mer--confirmation { margin: 0; }
@media (prefers-reduced-motion: reduce) {
	.agte-contact__parcours-lien, .agte-contact__champ input, .agte-contact__champ select, .agte-contact__champ textarea, .agte-contact__choix span { transition: none; }
}
/* V1.7.1 — finitions : titres des liens d'orientation en gras ; adresse e-mail sur une seule ligne */
.agte-contact__parcours-lien strong { font-weight: 700; }
.agte-contact { grid-template-columns: minmax(0, 1fr) 19.5rem; }
@media (max-width: 899px) { .agte-contact { grid-template-columns: 1fr; } }
.agte-contact__email { font-size: 0.9rem; overflow-wrap: normal; white-space: nowrap; }

/* ===== V1.7.2 — contact : encadré Avis Google (logo G), icônes en couleur des choix « Vous êtes » ===== */
.agte-avis-g { align-items: stretch; flex-direction: column; gap: 0.55rem; }
.agte-avis-g__tete { align-items: center; display: flex; gap: 0.6rem; }
.agte-avis-g__logo { flex: none; height: 1.5rem; width: 1.5rem; }
.agte-avis-g__note { align-items: center; color: var(--agte-texte); display: flex; flex-wrap: wrap; font-size: 0.875rem; gap: 0.4rem; margin: 0; }
.agte-avis-g__etoiles { display: inline-flex; gap: 0.1rem; }
.agte-avis-g__etoile { fill: none; height: 1rem; stroke: #f2c12e; stroke-width: 1.5; width: 1rem; }
.agte-avis-g__etoile.is-pleine { fill: #f2c12e; }
.agte-avis-g__liens { display: flex; flex-wrap: wrap; gap: 0.35rem 1.1rem; margin: 0; }
/* Choix « Vous êtes » : camion (entreprise), carnet et stylo (gestionnaire), comme dans le menu */
.agte-contact__choix input[value="entreprise"] + span, .agte-contact__choix input[value="gestionnaire"] + span { align-items: center; display: inline-flex; gap: 0.45rem; }
.agte-contact__choix input[value="entreprise"] + span::before, .agte-contact__choix input[value="gestionnaire"] + span::before { background: center / contain no-repeat; content: ""; flex: none; height: 1.15rem; width: 1.15rem; }
.agte-contact__choix input[value="entreprise"] + span::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='1' y='6' width='13' height='10' rx='1.5' fill='%232c64a6'/%3E%3Crect x='1' y='11' width='13' height='1.6' fill='%23fdba74'/%3E%3Cpath d='M14 9h4.2l2.8 3.4V16H14z' fill='%231d4f8a'/%3E%3Cpath d='M15.4 10.3h2.3l1.7 2.1h-4z' fill='%23dbe6f3'/%3E%3Ccircle cx='6' cy='17' r='2.1' fill='%230f2c4c' stroke='%23fff' stroke-width='1'/%3E%3Ccircle cx='17.5' cy='17' r='2.1' fill='%230f2c4c' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E"); }
.agte-contact__choix input[value="gestionnaire"] + span::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2.5' y='2.5' width='12.5' height='19' rx='1.6' fill='%232c64a6'/%3E%3Crect x='5' y='4.5' width='8' height='15' rx='0.6' fill='%23fff'/%3E%3Cpath d='M6.5 8.5h5M6.5 11.5h5M6.5 14.5h3' stroke='%23b9cfe9' stroke-width='1.1' stroke-linecap='round'/%3E%3Crect x='1.3' y='5.5' width='2.6' height='1.5' rx='0.75' fill='%23fdba74'/%3E%3Crect x='1.3' y='10.5' width='2.6' height='1.5' rx='0.75' fill='%23fdba74'/%3E%3Crect x='1.3' y='15.5' width='2.6' height='1.5' rx='0.75' fill='%23fdba74'/%3E%3Cpath d='M21.4 3.6l-7.6 11' stroke='%23fff' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M21.4 3.6l-7.6 11' stroke='%231d4f8a' stroke-width='3.2' stroke-linecap='round'/%3E%3Cpath d='M16.4 10.9l-1.6 2.3' stroke='%23dbe6f3' stroke-width='3.2'/%3E%3Cpath d='M12.6 14.2l-1.1 4.4 3.6-2.7z' fill='%23fdba74' stroke='%23fff' stroke-width='0.6' stroke-linejoin='round'/%3E%3C/svg%3E"); }

/* ===== V1.7.3 — contact : « Réponse sous 24 h » près du titre ; boutons de l'encadré Google ===== */
.agte-contact__titre-ligne { align-items: center; display: flex; flex-wrap: wrap; gap: 0.35rem 1.25rem; margin-bottom: 0.25rem; }
.agte-contact__titre-ligne h2 { margin: 0; }
.agte-contact__delai { align-items: center; background: #ecf7f0; border: 1px solid #c3e6d0; border-radius: 999px; color: #1c6b3c; display: inline-flex; font-size: 0.8rem; font-weight: 600; gap: 0.4rem; padding: 0.2rem 0.65rem; white-space: nowrap; }
.agte-contact__delai-point { background: #22a565; border-radius: 50%; box-shadow: 0 0 0 3px rgba(34, 165, 101, 0.18); height: 0.5rem; width: 0.5rem; }
@media (max-width: 599px) { .agte-contact__titre-ligne { align-items: flex-start; flex-direction: column; } }
/* Boutons « Voir les avis » / « Laisser un avis » */
.agte-avis-g__liens { display: grid; gap: 0.5rem; grid-template-columns: 1fr 1fr; margin-top: 0.15rem; }
.agte-avis-g__btn {
	align-items: center;
	background: #ffffff;
	border: 1px solid #d4dce6;
	border-radius: 9px;
	box-sizing: border-box;
	color: var(--agte-bleu);
	display: inline-flex;
	font-size: 0.83rem;
	font-weight: 600;
	gap: 0.4rem;
	justify-content: center;
	min-height: 2.3rem;
	padding: 0.4rem 0.6rem;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	white-space: nowrap;
}
.agte-avis-g__btn-icone { flex: none; height: 1rem; width: 1rem; }
a.agte-avis-g__btn:hover, a.agte-avis-g__btn:focus-visible { background: #f3f7fc; border-color: var(--agte-bleu); box-shadow: 0 4px 12px rgba(15, 44, 76, 0.08); transform: translateY(-1px); }
a.agte-avis-g__btn:focus-visible { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-avis-g__btn.is-inactif { background: #f7f9fc; color: #8a9ab0; cursor: not-allowed; }
@media (prefers-reduced-motion: reduce) { .agte-avis-g__btn { transition: none; } a.agte-avis-g__btn:hover, a.agte-avis-g__btn:focus-visible { transform: none; } }

/* ===== V1.7.4 — formulaires : bouton pendant l'envoi (double clic sans effet) ===== */
.agte-bouton--contact.is-envoi, .agte-bouton--contact.is-envoi:hover { background: #a8400f; cursor: progress; opacity: 0.85; }
.agte-mer__resume-erreurs:focus:not(:focus-visible) { outline: none; }
.agte-mer__resume-erreurs:focus-visible { outline: 2px solid #b42318; outline-offset: 2px; }

/* ===== V1.8.0 — inscription des gestionnaires : formulaire par étapes ===== */
.agte-insc { align-items: start; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1fr) 19rem; margin-top: 0.5rem; }
@media (max-width: 999px) { .agte-insc { gap: 2rem; grid-template-columns: 1fr; } }
@media (min-width: 1000px) { .agte-insc__aside { position: sticky; top: 1.5rem; } }
.agte-insc__form { display: flex; flex-direction: column; min-width: 0; }

/* Progression (affichée seulement avec JavaScript) : numéros reliés ; sur mobile, seul le nom de l'étape en cours */
.agte-insc__progression { display: none; gap: 0.25rem; list-style: none; margin: 0 0 1.6rem; padding: 0; }
.agte-insc__progression.is-actif { display: flex; }
.agte-insc__progression li { align-items: center; color: var(--agte-texte-doux); display: flex; flex: 1 1 0; flex-direction: column; font-size: 0.75rem; gap: 0.35rem; min-width: 0; position: relative; text-align: center; }
.agte-insc__progression li + li::before { background: #dbe3ed; content: ""; height: 2px; left: calc(-50% + 1rem); position: absolute; right: calc(50% + 1rem); top: 0.85rem; }
.agte-insc__num { align-items: center; background: #fff; border: 2px solid #c9d4e2; border-radius: 50%; box-sizing: border-box; color: var(--agte-texte-doux); display: inline-flex; font-weight: 700; height: 1.75rem; justify-content: center; position: relative; width: 1.75rem; z-index: 1; }
.agte-insc__nom { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.agte-insc__progression li.is-fait .agte-insc__num { background: #eaf1fa; border-color: var(--agte-bleu); color: var(--agte-bleu); }
.agte-insc__progression li.is-fait + li::before { background: var(--agte-bleu); }
.agte-insc__progression li.is-actuel { color: var(--agte-marine); font-weight: 700; }
.agte-insc__progression li.is-actuel .agte-insc__num { background: var(--agte-bleu); border-color: var(--agte-bleu); color: #fff; }
@media (max-width: 599px) {
	.agte-insc__nom { display: none; }
}

/* Étapes : à la suite sans JavaScript, une seule visible avec */
.agte-insc__etape + .agte-insc__etape { border-top: 1px solid #edf1f6; margin-top: 1.8rem; padding-top: 1.6rem; }
.agte-insc__form.is-etapes .agte-insc__etape + .agte-insc__etape { border-top: 0; margin-top: 0; padding-top: 0; }
.agte-insc__etape[hidden] { display: none; }
.agte-insc__titre { color: var(--agte-marine); display: flex; flex-direction: column; font-size: 1.3rem; gap: 0.2rem; margin: 0 0 1.1rem; }
.agte-insc__titre:focus { outline: none; }
.agte-insc__compteur { color: var(--agte-bleu); font-size: 0.8rem; font-weight: 600; letter-spacing: 0.02em; }
.agte-insc__etape > * + * { margin-top: 1rem; }

/* Notes */
.agte-insc__note { align-items: flex-start; background: #f3f7fc; border: 1px solid #dbe5f1; border-radius: 10px; color: var(--agte-texte); display: flex; font-size: 0.875rem; gap: 0.6rem; line-height: 1.5; margin-bottom: 0; padding: 0.7rem 0.9rem; }
.agte-insc__note .agte-icone { color: #2c64a6; flex: none; height: 1.15rem; margin-top: 0.1rem; width: 1.15rem; }
.agte-insc__note--prive { background: #f1f8f4; border-color: #cfe6d8; }
.agte-insc__note--prive .agte-icone { color: #1c6b3c; }
.agte-insc__rappel-fichiers { background: #fff4e5; border-radius: 8px; font-size: 0.85rem; padding: 0.55rem 0.8rem; }

/* Cases à cocher en cartes */
.agte-insc__groupe { border: 0; margin-bottom: 0; margin-left: 0; margin-right: 0; min-width: 0; padding: 0; }
.agte-insc__groupe legend { color: var(--agte-marine); font-size: 0.9rem; font-weight: 600; margin-bottom: 0.6rem; padding: 0; }
.agte-insc__cases { display: grid; gap: 0.55rem; grid-template-columns: 1fr 1fr; }
@media (max-width: 599px) { .agte-insc__cases { grid-template-columns: 1fr; } }
.agte-insc__case { align-items: flex-start; background: #fbfcfe; border: 1px solid #d4dce6; border-radius: 10px; cursor: pointer; display: flex; font-size: 0.9rem; gap: 0.6rem; line-height: 1.4; padding: 0.65rem 0.8rem; transition: border-color 0.15s ease, background-color 0.15s ease; }
.agte-insc__case strong { color: var(--agte-marine); display: block; font-size: 0.8rem; }
.agte-insc__case input { accent-color: var(--agte-bleu); flex: none; height: 1.05rem; margin: 0.1rem 0 0; width: 1.05rem; }
.agte-insc__case:hover { border-color: #2c64a6; }
.agte-insc__case:has(input:checked) { background: #eaf1fa; border-color: #2c64a6; }
.agte-insc__case:has(input:focus-visible) { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__case--zone { border-radius: 8px; font-size: 0.85rem; padding: 0.45rem 0.65rem; }

/* Zones : régions dépliables */
.agte-insc__regions { display: flex; flex-direction: column; gap: 0.45rem; }
.agte-insc__region { border: 1px solid #dbe3ed; border-radius: 10px; }
.agte-insc__region summary { align-items: center; color: var(--agte-marine); cursor: pointer; display: flex; font-size: 0.925rem; font-weight: 600; gap: 0.6rem; list-style: none; padding: 0.65rem 0.9rem; }
.agte-insc__region summary::-webkit-details-marker { display: none; }
.agte-insc__region summary::before { border-bottom: 2px solid currentColor; border-right: 2px solid currentColor; content: ""; flex: none; height: 0.4rem; transform: rotate(-45deg); transition: transform 0.15s ease; width: 0.4rem; }
.agte-insc__region[open] summary::before { transform: rotate(45deg); }
.agte-insc__region summary:focus-visible { border-radius: 10px; outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__compte { background: #eaf1fa; border-radius: 999px; color: var(--agte-bleu); font-size: 0.75rem; margin-left: auto; padding: 0.05rem 0.55rem; }
.agte-insc__compte:empty { display: none; }
.agte-insc__region-corps { padding: 0 0.9rem 0.9rem; }
.agte-insc__case--toute { margin-bottom: 0.5rem; }
.agte-insc__depts { display: grid; gap: 0.4rem; grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); }
.agte-insc__sous-titre { color: var(--agte-marine); font-size: 0.9rem; font-weight: 600; margin: 1.1rem 0 0.5rem; }
.agte-insc__cases--uniques { grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr)); }

/* Honoraires */
.agte-insc__tarifs { display: flex; flex-direction: column; gap: 0.8rem; }
.agte-insc__tarif { background: #fbfcfe; border: 1px solid #dbe3ed; border-radius: 10px; margin: 0; min-width: 0; padding: 0.4rem 1rem 1rem; }
.agte-insc__tarif legend { color: var(--agte-marine); font-size: 0.9rem; font-weight: 700; padding: 0 0.35rem; }
.agte-insc__tarif[hidden] { display: none; }
.agte-insc__montant { align-items: center; display: flex; gap: 0.5rem; }
.agte-insc__montant input { max-width: 9rem; }
.agte-insc__montant span { color: var(--agte-texte-doux); font-size: 0.85rem; white-space: nowrap; }
.agte-insc__vide { background: #f3f7fc; border-radius: 8px; font-size: 0.9rem; padding: 0.7rem 0.9rem; }

/* Dépôt de fichiers */
.agte-insc__depot input[type="file"] { background: #fbfcfe; border: 1px dashed #b9c7d8; border-radius: 9px; cursor: pointer; font-size: 0.875rem; padding: 0.7rem; }
.agte-insc__depot input[type="file"]::file-selector-button { background: #eaf1fa; border: 1px solid #c9d8ea; border-radius: 7px; color: var(--agte-bleu); cursor: pointer; font: inherit; font-weight: 600; margin-right: 0.7rem; padding: 0.35rem 0.75rem; }
.agte-insc__depot[hidden] { display: none; }

/* Récapitulatif public et accords */
.agte-insc__public { background: #f7f9fc; border: 1px solid #e1e8f0; border-radius: 10px; font-size: 0.9rem; padding: 0.1rem 1rem 0.8rem; }
.agte-insc__public ul { margin: 0 0 0.6rem; padding-left: 1.2rem; }
.agte-insc__public p:last-child { color: var(--agte-texte-doux); margin: 0; }
.agte-insc__accord { align-items: flex-start; cursor: pointer; display: flex; font-size: 0.925rem; gap: 0.6rem; line-height: 1.45; }
.agte-insc__accord input { accent-color: var(--agte-bleu); flex: none; height: 1.1rem; margin: 0.15rem 0 0; width: 1.1rem; }
.agte-insc__accord.has-erreur span { color: #b42318; }

/* Navigation entre étapes */
.agte-insc__nav { align-items: center; border-top: 1px solid #edf1f6; display: flex; gap: 1rem; justify-content: space-between; margin-top: 1.6rem !important; padding-top: 1.2rem; }
.agte-insc__nav .agte-bouton { font-size: 1rem; padding: 0.75rem 1.4rem; }
.agte-insc__suivant { align-items: center; display: inline-flex; }
.agte-insc__precedent { align-items: center; background: none; border: 1px solid transparent; border-radius: 9px; color: var(--agte-bleu); cursor: pointer; display: inline-flex; font: inherit; font-weight: 600; gap: 0.4rem; padding: 0.6rem 0.8rem; }
.agte-insc__precedent .agte-icone { height: 1rem; width: 1rem; }
.agte-insc__precedent:hover { background: #f3f7fc; border-color: #dbe3ed; }
.agte-insc__precedent:focus-visible { outline: 2px solid #2c64a6; outline-offset: 2px; }
@media (max-width: 599px) { .agte-insc__nav .agte-bouton { flex: 1; justify-content: center; } }
.agte-insc .agte-mer__erreur { display: block; margin-top: 0.4rem; }
@media (prefers-reduced-motion: reduce) {
	.agte-insc__case, .agte-insc__region summary::before { transition: none; }
}

/* ===== V1.8.1 — pages départementales et fiche (2026-10-06) ===== */
/* Département : la carte du gestionnaire ne bouge plus (ni montée au survol, ni glissement après un filtre) ;
   seuls les deux boutons orange gardent un zoom léger au survol, sans pulsation. */
@media (hover: hover) and (pointer: fine) {
	.agte-profil--detaille:hover { transform: none; }
}
.agte-profil--detaille:active { transform: none; }
@keyframes agte-carte-fondu { from { opacity: 0; } to { opacity: 1; } }
.agte-dept .agte-profil.is-maj { animation: agte-carte-fondu 0.22s ease-out; }
.agte-dept__perso .agte-bouton--contact { transition: transform 0.2s ease, background-color 0.2s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-dept__perso .agte-bouton--contact:hover, .agte-dept__perso .agte-bouton--contact:focus-visible { transform: scale(1.01); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-dept .agte-profil.is-maj { animation: none; }
	.agte-dept__perso .agte-bouton--contact { transition: none; }
	.agte-dept__perso .agte-bouton--contact:hover, .agte-dept__perso .agte-bouton--contact:focus-visible { transform: none; }
}
/* Filtre des pages départementales : camion, bus, avion (dessins des badges de l'accueil) */
[data-agte-filtre-departement] .agte-filtre__option span { align-items: center; display: inline-flex; gap: 0.4rem; }
.agte-filtre__icone { flex: none; height: 1.05rem; width: 1.05rem; }

/* Carte détaillée (pages départementales) : un peu plus large — colonne latérale 18rem, écarts 2rem et 1rem ; mobile inchangé */
@media (min-width: 1000px) { .agte-dept { gap: 2rem; grid-template-columns: minmax(0, 1fr) 18rem; } }
.agte-profils--dept { gap: 1rem; }
/* Icônes devant « Type de capacité », « Expérience », « Zones d'intervention » : même taille, bleu doux ; valeurs alignées sur le texte des intitulés */
.agte-profil__dt-icone { align-items: center; display: flex; gap: 0.45rem; }
.agte-profil__icone { color: #2c64a6; flex: none; height: 1.1rem; width: 1.1rem; }
.agte-profil--detaille .agte-profil__infos dd { padding-left: 1.55rem; }

/* ===== V1.8.2 (2026-10-06) ===== */
/* Pages départementales : carte détaillée élargie de 10 % (400 → 440 px), centrée dans la colonne ; pleine largeur sur mobile */
.agte-profils--dept { grid-template-columns: repeat(auto-fill, minmax(min(100%, 440px), 440px)); justify-content: center; }
/* « Notre accompagnement » : badge « Gratuit » sobre à la place du pictogramme (vert doux, comme « Réponse sous 24 h ») */
.agte-gratuit { background: #ecf7f0; border: 1px solid #c3e6d0; border-radius: 999px; color: #1c6b3c; flex: none; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.02em; line-height: 1; margin-top: 0.2rem; padding: 0.3rem 0.55rem; white-space: nowrap; }
/* Cadre « Notre accompagnement » : icônes retravaillées — tracé bleu, intérieur bleu très clair, détail orange doux ; pastilles éclaircies. Le cadre lui-même est inchangé. */
.agte-dept__rassurant--accompagnement .agte-dept__picto { background: #fff; border-color: #c9d8ea; box-shadow: 0 1px 2px rgba(15, 44, 76, 0.06); color: #2c64a6; height: 1.95rem; width: 1.95rem; }
.agte-dept__rassurant--accompagnement .agte-dept__picto .agte-icone { height: 1.2rem; stroke-width: 1.6; width: 1.2rem; }
.agte-dept__rassurant--accompagnement .agte-acc-teinte { fill: #e3edf9; }
.agte-dept__rassurant--accompagnement .agte-acc-accent { stroke: #e8803a; stroke-width: 2.1; }

/* ===== V1.9.2 (2026-10-07) — mini-carte : point jaune fixe, étiquette avec avatar hors de la zone, points partagés ===== */
.agte-minicarte__fond use { fill: #c3d4ea; }
.agte-minicarte__zone use { fill: #1d4f8a; }
.agte-minicarte .agte-minicarte__repere circle.agte-minicarte__point { animation: none !important; fill: #f2c12e; opacity: 1; stroke: #b8901f; stroke-width: 1.1; }
.agte-minicarte__repere line { stroke: #7f9cc2; stroke-dasharray: 2 2; stroke-linecap: round; stroke-width: 1; }
.agte-minicarte--point-doux .agte-minicarte__pastille--loc { box-shadow: none; }
.agte-insc__case--france { margin-bottom: 0.6rem; }

/* ===== V1.9.4 (2026-10-07) — zones par régions (mention « à revoir » réservée aux anciennes données par département) ===== */
.agte-zones-a-revoir { display: block; font-size: 0.875rem; margin-top: 0.3rem; }
.agte-zones-a-revoir .agte-mer__a-preciser { margin-right: 0.3rem; }
.agte-insc__cases--regions { grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); }

/* ===== V1.9.5 (2026-10-07) — mini-carte : régions déclarées en bleu doux, contours nets ===== */
.agte-minicarte__zone use, .agte-minicarte__zone circle { fill: #4f7fbd; }
.agte-minicarte__fond use, .agte-minicarte__fond circle { fill: #cfdcee; }
.agte-minicarte__lisere path { stroke: #ffffff; stroke-width: 2.4; }
.agte-minicarte__contour path { stroke: #2c64a6; stroke-linejoin: round; stroke-opacity: 0.9; stroke-width: 1.1; }
.agte-minicarte__pastille--zone { background: #4f7fbd; border-color: #2c64a6; }

/* ===== 2026-10-07 — APERÇU : badges « Profil vérifié » (doré) et « Connaissances validées » (violet) ===== */
.agte-badge2 { align-items: center; border: 1px solid; border-radius: 999px; display: inline-flex; font-size: 0.8rem; font-weight: 700; gap: 0.4rem; letter-spacing: 0.01em; line-height: 1.2; padding: 0.22rem 0.75rem 0.22rem 0.45rem; vertical-align: middle; white-space: nowrap; }
.agte-badge2__icone { flex: none; height: 1.05rem; width: 0.95rem; }
.agte-badge2--verifie { background: #fdf8ea; border-color: #e8cf86; color: #6b4e0e; }
.agte-badge2--connaissances { background: #f5f1fd; border-color: #d4c6f3; color: #4b2f8f; }
.agte-apercu__note { background: #f3f7fc; border-left: 3px solid #9bb6d6; border-radius: 6px; color: var(--agte-texte-doux); font-size: 0.9rem; max-width: 60rem; padding: 0.6rem 0.9rem; }
.agte-apercu__bloc { border-top: 1px solid #e6ecf3; margin-top: 2rem; padding-top: 1.4rem; }
.agte-apercu__bloc h2 { color: var(--agte-marine); font-size: 1.1rem; margin: 0 0 1rem; }
.agte-apercu__duo { display: grid; gap: 1rem 2rem; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); }
.agte-apercu__badge-seul p { color: var(--agte-texte-doux); font-size: 0.875rem; margin: 0.5rem 0 0; }
.agte-apercu__badge-seul .agte-badge2 { font-size: 0.95rem; }
.agte-apercu__aide { color: var(--agte-texte-doux); font-size: 0.85rem; margin: 0.8rem 0 0; }
.agte-apercu__grille { display: grid; gap: 1.2rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 31rem), 1fr)); }
.agte-apercu__cas { background: linear-gradient(135deg, #f4f8fd 0%, #e8f0fa 100%); border-radius: 18px; margin: 0; padding: 1rem 1.2rem 1.2rem; }
.agte-apercu__cas figcaption { color: var(--agte-texte-doux); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.05em; margin-bottom: 0.6rem; text-transform: uppercase; }
.agte-apercu__entete { align-items: center; display: flex; gap: 1rem; }
.agte-apercu__portrait { background: #fff; border-radius: 50%; box-shadow: 0 0 0 3px #fff, 0 0 0 4px #c9d8ea; flex: none; height: 4rem; position: relative; width: 4rem; }
.agte-apercu__avatar { border-radius: 50%; display: block; height: 100%; width: 100%; }
.agte-apercu__nom { align-items: center; color: var(--agte-marine); display: flex; flex-wrap: wrap; font-size: 1.6rem; font-weight: 800; gap: 0.35rem 0.6rem; line-height: 1.1; margin: 0; }
.agte-apercu__nom > span:not(.agte-apercu__badges) { color: var(--agte-bleu); font-size: 0.8rem; font-weight: 700; letter-spacing: 0.04em; }
.agte-apercu__badges { display: inline-flex; flex-wrap: wrap; gap: 0.35rem; }
.agte-apercu__metier { color: var(--agte-texte-doux); font-size: 0.95rem; margin: 0.25rem 0 0; }
/* Placement B : écussons posés contre l'avatar, libellés en dessous du métier sur une seule ligne */
.agte-apercu__pastilles { bottom: -0.35rem; display: flex; gap: 0.1rem; position: absolute; right: -0.55rem; }
.agte-apercu__pastille .agte-badge2 { background: #fff; border-radius: 50%; box-shadow: 0 1px 3px rgba(15, 44, 76, 0.18); height: 1.6rem; justify-content: center; padding: 0; width: 1.6rem; }
.agte-apercu__legende-b { display: flex; flex-wrap: wrap; gap: 0.35rem; margin: 0.45rem 0 0; }
.agte-apercu__carte { background: var(--agte-surface); border: 1px solid var(--agte-bordure); border-radius: var(--agte-rayon); max-width: 25rem; padding: 1rem 1.1rem; }
.agte-apercu__carte .agte-apercu__nom { font-size: 1.15rem; }

/* ===== V1.9.7 (2026-10-07) — badges « Profil vérifié » (doré) et « Connaissances validées » (violet), côte à côte sous le prénom ===== */
.agte-badges-profil { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.55rem 0 0.2rem; }
.agte-profil .agte-badges-profil .agte-badge2 { font-size: 0.75rem; padding: 0.18rem 0.6rem 0.18rem 0.4rem; }
.agte-badges-profil--compact { display: inline-flex; gap: 0.15rem; margin: 0 0 0 0.25rem; vertical-align: middle; }
.agte-badges-profil--compact .agte-badge2 { background: none; border: 0; padding: 0; }
.agte-badges-profil--compact .agte-badge2__icone { height: 0.95rem; width: 0.9rem; }

/* ===== V2.2.0 (2026-10-07) — inscription : justificatifs (liste des documents, blocs, remise à niveau, bilan) ===== */
.agte-insc__requis { background: #f7f9fc; border-radius: 12px; margin-top: 1rem; padding: 0.4rem 1rem 0.9rem; }
.agte-insc__requis ul { display: grid; gap: 0.4rem; list-style: none; margin: 0 0 0.7rem; padding: 0; }
.agte-insc__requis li { align-items: flex-start; display: flex; font-size: 0.9rem; gap: 0.55rem; line-height: 1.45; }
.agte-insc__requis li[hidden] { display: none; }
.agte-insc__etat { border: 1.5px solid #9fb3c8; border-radius: 50%; flex: none; height: 1rem; margin-top: 0.15rem; width: 1rem; box-sizing: border-box; }
.agte-insc__requis li.is-joint .agte-insc__etat { background: #2f7a4f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center / 0.7rem no-repeat; border-color: #2f7a4f; }
.agte-insc__requis li[data-etat]::after { color: var(--agte-texte-doux); content: attr(data-etat); font-size: 0.75rem; font-weight: 700; margin-left: auto; white-space: nowrap; }
.agte-insc__requis li.is-joint::after { color: #2f7a4f; }
.agte-insc__piece { border: 0; border-top: 1px solid #edf1f6; margin: 1.2rem 0 0; min-width: 0; padding: 1rem 0 0; }
.agte-insc__piece[hidden] { display: none; }
.agte-insc__piece legend { color: var(--agte-marine); font-size: 0.95rem; font-weight: 700; padding: 0 0 0.3rem; }
.agte-insc__piece > * + * { margin-top: 0.8rem; }
.agte-insc__date input { max-width: 12rem; }
.agte-insc__remise { background: #fff4e5; border-radius: 10px; padding: 0.7rem 0.9rem; }
.agte-insc__remise[hidden] { display: none; }
.agte-insc__remise-note { color: #5a3200; font-size: 0.875rem; line-height: 1.5; margin: 0 0 0.6rem; }
.agte-insc__bilan { background: #f7f9fc; border-radius: 10px; font-size: 0.9rem; padding: 0.2rem 1rem 0.8rem; }
.agte-insc__bilan ul { margin: 0 0 0.5rem; padding-left: 1.2rem; }
.agte-insc__bilan ul[hidden] { display: none; }
.agte-insc__manquantes { margin: 0 0 0.8rem; padding-left: 1.2rem; }

/* ===== V2.3.0 (2026-10-07) — inscription : présentation plus soignée et aérée (étape 1 d'abord, style commun ensuite) ===== */
.agte-insc .agte-insc__form { border: 1px solid #e3eaf3; border-radius: 20px; box-shadow: 0 12px 32px rgba(15, 44, 76, 0.06); padding: 2rem 2.3rem 1.8rem; }
@media (max-width: 599px) { .agte-insc .agte-insc__form { padding: 1.4rem 1.1rem 1.3rem; } }
/* Progression : numéros reliés par un filet fin ; étape en cours mise en avant par un halo doux */
.agte-insc__progression { margin-bottom: 2rem; }
.agte-insc__progression li + li::before { background: #e1e8f1; height: 2px; top: 0.95rem; }
.agte-insc__num { border-width: 1.5px; font-size: 0.85rem; height: 2rem; width: 2rem; }
.agte-insc__progression li.is-actuel .agte-insc__num { box-shadow: 0 0 0 4px #e3edf9; }
.agte-insc__progression li.is-fait .agte-insc__num { background: #eef4fb; }
.agte-insc__nom { font-size: 0.78rem; }
/* Titre d'étape et introduction */
.agte-insc__titre { font-size: 1.5rem; gap: 0.35rem; margin-bottom: 0.6rem; }
.agte-insc__compteur { font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; }
.agte-insc__intro { color: var(--agte-texte-doux); font-size: 0.975rem; line-height: 1.6; margin: 0 0 1.5rem; max-width: 40rem; }
.agte-insc__intro strong { color: var(--agte-marine); }
/* Champs */
.agte-insc__grille { gap: 1.3rem 1.5rem; }
.agte-insc__pleine { grid-column: 1 / -1; }
.agte-insc__pleine select { max-width: 26rem; }
.agte-insc__prive { align-items: center; background: #f1f5fa; border-radius: 999px; color: var(--agte-texte-doux); display: inline-flex; font-size: 0.72rem; font-weight: 600; gap: 0.25rem; margin-left: 0.45rem; padding: 0.1rem 0.5rem 0.1rem 0.4rem; vertical-align: 0.1em; }
.agte-insc__prive .agte-icone { height: 0.8rem; width: 0.8rem; }
/* Ce qui est visible / ce qui reste privé */
.agte-insc__visibilite { display: grid; gap: 1rem 1.5rem; grid-template-columns: 1fr 1fr; margin-top: 1.6rem !important; }
@media (max-width: 599px) { .agte-insc__visibilite { grid-template-columns: 1fr; } }
.agte-insc__visibilite > div { border-left: 3px solid #c9d8ea; padding: 0.15rem 0 0.15rem 0.9rem; }
.agte-insc__visibilite > div + div { border-left-color: #b9c4d0; }
.agte-insc__visibilite p { color: var(--agte-texte-doux); font-size: 0.9rem; margin: 0; }
.agte-insc__visibilite .agte-insc__visibilite-titre { align-items: center; color: var(--agte-marine); display: flex; font-weight: 700; gap: 0.4rem; margin-bottom: 0.2rem; }
.agte-insc__visibilite-titre .agte-icone { color: #2c64a6; height: 1rem; width: 1rem; }
/* Navigation */
.agte-insc__nav { border-top-color: #edf1f6; margin-top: 2rem !important; padding-top: 1.4rem; }
.agte-insc__nav .agte-bouton { min-width: 10.5rem; justify-content: center; }
/* Encadré « Publication et vérification » : informatif, pictogrammes neutres (aucun écusson ni coche) */
.agte-insc__encadre { background: #f7f9fc; border: 1px solid #e3eaf3; border-radius: 16px; padding: 1.3rem 1.3rem 1.1rem; }
.agte-insc__encadre-titre { color: var(--agte-marine); font-size: 1.05rem; font-weight: 700; margin: 0 0 0.9rem; }
.agte-insc__encadre-bloc + .agte-insc__encadre-bloc { border-top: 1px solid #e3eaf3; margin-top: 0.9rem; padding-top: 0.9rem; }
.agte-insc__encadre-bloc p { color: var(--agte-texte); font-size: 0.875rem; line-height: 1.55; margin: 0 0 0.4rem; }
.agte-insc__encadre-bloc ul { color: var(--agte-texte); font-size: 0.85rem; line-height: 1.5; margin: 0 0 0.4rem; padding-left: 1.1rem; }
.agte-insc__encadre-bloc li + li { margin-top: 0.2rem; }
.agte-insc__encadre .agte-insc__encadre-sous { align-items: center; color: var(--agte-marine); display: flex; font-size: 0.9rem; font-weight: 700; gap: 0.45rem; margin-bottom: 0.35rem; }
.agte-insc__encadre-sous .agte-icone { color: #2c64a6; flex: none; height: 1.05rem; width: 1.05rem; }
.agte-insc__encadre .agte-insc__encadre-note { color: var(--agte-texte-doux); font-size: 0.8rem; margin: 0; }
.agte-insc__grille .agte-contact__champ > label { align-items: center; display: flex; flex-wrap: wrap; gap: 0 0.1rem; min-height: 1.55rem; }

/* ===== V2.4.0 (2026-10-07) — inscription : style de l'étape 1 décliné sur les étapes 2 à 7 ===== */
.agte-insc__groupe legend, .agte-insc__question legend { color: var(--agte-marine); font-size: 0.925rem; font-weight: 700; margin-bottom: 0.7rem; }
.agte-insc__etape > .agte-mer__aide, .agte-insc__groupe > .agte-mer__aide { color: var(--agte-texte-doux); font-size: 0.875rem; line-height: 1.55; }
/* Cases à cocher en cartes (activités, régions) */
.agte-insc__case { background: #fff; border-color: #dbe3ed; border-radius: 12px; padding: 0.8rem 0.95rem; transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease; }
.agte-insc__case strong { color: var(--agte-texte-doux); font-size: 0.72rem; letter-spacing: 0.05em; margin-bottom: 0.1rem; text-transform: uppercase; }
.agte-insc__case:has(input:checked) { background: #f3f7fc; border-color: #2c64a6; box-shadow: 0 0 0 3px #e3edf9; }
.agte-insc__case:has(input:checked) strong { color: var(--agte-bleu); }
.agte-insc__case--zone { padding: 0.6rem 0.8rem; }
.agte-insc__cases { gap: 0.65rem; }
.agte-insc__sous-titre { color: var(--agte-marine); font-size: 0.9rem; font-weight: 700; margin: 1.5rem 0 0.6rem; }
.agte-insc__case--france { margin: 0.2rem 0 0.4rem; }
/* Honoraires : blocs clairs, légende en pastille */
.agte-insc__tarifs { gap: 1rem; }
.agte-insc__tarif { background: #f7f9fc; border: 0; border-radius: 14px; padding: 0.6rem 1.2rem 1.2rem; }
.agte-insc__tarif legend { background: #fff; border: 1px solid #dbe3ed; border-radius: 999px; color: var(--agte-marine); font-size: 0.85rem; padding: 0.25rem 0.8rem; }
.agte-insc__montant input { background: #fff; }
/* Justificatifs */
.agte-insc__requis { background: #f7f9fc; border-radius: 14px; padding: 0.6rem 1.2rem 1rem; }
.agte-insc__piece { border-top-color: #edf1f6; margin-top: 1.5rem; padding-top: 1.2rem; }
.agte-insc__depot input[type="file"] { background: #fff; border-color: #c9d4e2; border-radius: 12px; }
.agte-insc__question { border: 0; margin: 0; min-width: 0; padding: 0; }
.agte-insc__question legend { font-size: 0.875rem; margin-bottom: 0.5rem; }
.agte-insc__oui-non { display: flex; gap: 0.5rem; }
.agte-insc__oui-non label { cursor: pointer; position: relative; }
.agte-insc__oui-non input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.agte-insc__oui-non span { background: #fff; border: 1px solid #c9d4e2; border-radius: 999px; display: inline-block; font-size: 0.875rem; font-weight: 600; min-width: 4.5rem; padding: 0.4rem 1rem; text-align: center; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.agte-insc__oui-non label:hover span { border-color: #2c64a6; }
.agte-insc__oui-non input:checked + span { background: #eaf1fa; border-color: #2c64a6; color: var(--agte-bleu); }
.agte-insc__oui-non input:focus-visible + span { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__remise { border-radius: 12px; padding: 0.9rem 1rem; }
/* Envoi : ce qui est visible, bilan, accords */
.agte-insc__public { background: #fff; border: 0; border-left: 3px solid #c9d8ea; border-radius: 0; padding: 0.1rem 0 0.1rem 1rem; }
.agte-insc__public .agte-insc__sous-titre { margin-top: 0.4rem; }
.agte-insc__bilan { background: #f7f9fc; border-radius: 14px; padding: 0.4rem 1.2rem 0.9rem; }
.agte-insc__accord { background: #fff; border: 1px solid #dbe3ed; border-radius: 12px; padding: 0.8rem 0.95rem; }
.agte-insc__accord:has(input:checked) { background: #f3f7fc; border-color: #2c64a6; }
.agte-insc__piece .agte-insc__accord { border: 0; padding: 0.2rem 0; background: none; }
@media (prefers-reduced-motion: reduce) { .agte-insc__case, .agte-insc__oui-non span { transition: none; } }
.agte-insc__piece .agte-insc__question { margin-top: 1.1rem; }

/* ===== V2.4.2 (2026-10-07) — inscription : zoom léger du bouton « Continuer », icônes des activités ===== */
/* « Continuer » : zoom 1 % au survol (souris), comme les boutons orange validés ; appui discret au toucher (règles existantes) ; rien si animations réduites */
.agte-insc__suivant { transition: transform 0.2s ease, background-color 0.2s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-insc__suivant:hover, .agte-insc__suivant:focus-visible { transform: scale(1.01); }
}
@media (prefers-reduced-motion: reduce) {
	.agte-insc__suivant { transition: none; }
	.agte-insc__suivant:hover, .agte-insc__suivant:focus-visible { transform: none; }
}
/* Activités : case, icône en couleur et texte alignés ; sélection nettement visible */
.agte-insc__case--activite { align-items: center; gap: 0.75rem; min-height: 3.6rem; padding: 0.75rem 1rem; }
.agte-insc__case--activite input { margin: 0; }
.agte-insc__case-icone { align-items: center; background: #e3edf9; border-radius: 10px; color: #1d4f8a; display: inline-flex; flex: none; height: 2.3rem; justify-content: center; width: 2.3rem; }
.agte-insc__case-icone .agte-icone { height: 1.25rem; width: 1.25rem; }
.agte-insc__case-icone--voyageurs { background: #e5f3ea; color: #2f7a4f; }
.agte-insc__case-icone--commission { background: #f1ecfb; color: #5b3fb0; }
.agte-insc__case--activite > span:last-child { line-height: 1.35; }
.agte-insc__case--activite:has(input:checked) { background: #f3f7fc; border-color: #2c64a6; box-shadow: 0 0 0 3px #e3edf9; }
.agte-insc__case--activite:has(input:checked) > span:last-child { color: var(--agte-marine); font-weight: 600; }
/* V2.4.3 — encadrés des activités : espacements légèrement rééquilibrés */
.agte-insc__case--activite { gap: 0.85rem; padding: 0.85rem 1.05rem; }
.agte-insc__cases { gap: 0.75rem; }
.agte-insc__case-icone .agte-icone { height: 1.3rem; width: 1.3rem; }
/* V2.4.5 — étape « Zones d'intervention » : « Toute la France » ou régions, sans départements */
.agte-insc__case--france strong { color: var(--agte-marine); font-size: 0.95rem; font-weight: 700; letter-spacing: 0; margin-bottom: 0.1rem; text-transform: none; }
.agte-insc__case--france > span:last-child { color: var(--agte-texte-doux); font-size: 0.85rem; }
.agte-insc__case--france:has(input:checked) > span:last-child { color: var(--agte-texte-doux); font-weight: 400; }
.agte-insc__cases .agte-insc__case--zone.is-inclus { background: #f3f7fc; border-color: #c9d8ea; box-shadow: none; color: var(--agte-texte-doux); cursor: default; }
.agte-insc__cases .agte-insc__case--zone.is-inclus:hover { border-color: #c9d8ea; }
.agte-insc__inclus { color: var(--agte-texte-doux); font-size: 0.85rem; font-weight: 400; }
.agte-insc__compte-zones { color: var(--agte-texte-doux); font-size: 0.875rem; margin: 1rem 0 0; }
.agte-insc__compte-zones:empty { display: none; }
.agte-insc__distinct { align-items: flex-start; border-left: 3px solid #c9d8ea; color: var(--agte-texte-doux); display: flex; font-size: 0.9rem; gap: 0.5rem; line-height: 1.5; margin-top: 1.4rem !important; padding: 0.15rem 0 0.15rem 0.9rem; }
.agte-insc__distinct .agte-icone { color: #2c64a6; flex: none; height: 1rem; margin-top: 0.2rem; width: 1rem; }
.agte-insc__distinct strong { color: var(--agte-marine); }
/* V2.4.6 — étape « Expérience » : icône au titre, conseil discret, compteur de caractères */
.agte-insc__titre-ligne { align-items: center; display: flex; gap: 0.65rem; }
.agte-insc__titre-icone { align-items: center; background: #e3edf9; border-radius: 10px; color: #1d4f8a; display: inline-flex; flex: none; height: 2.3rem; justify-content: center; width: 2.3rem; }
.agte-insc__titre-icone .agte-icone { height: 1.3rem; width: 1.3rem; }
.agte-insc__conseil { align-items: flex-start; background: #fbf7ec; border-radius: 10px; color: var(--agte-texte); display: flex; font-size: 0.9rem; gap: 0.6rem; line-height: 1.55; margin: -0.4rem 0 1.6rem !important; max-width: 40rem; padding: 0.75rem 1rem; }
.agte-insc__conseil .agte-icone { color: #b8901f; flex: none; height: 1.15rem; margin-top: 0.1rem; width: 1.15rem; }
.agte-insc__conseil strong { color: #8a6a12; display: block; font-size: 0.72rem; letter-spacing: 0.06em; margin-bottom: 0.1rem; text-transform: uppercase; }
.agte-insc__grille-experience { grid-template-columns: minmax(0, 24rem); }
.agte-insc__caracteres { align-self: flex-end; color: var(--agte-texte-doux); display: block; font-size: 0.78rem; font-variant-numeric: tabular-nums; margin-top: 0.3rem; text-align: right; }
/* V2.4.8 — étape « Honoraires » : encadré « démarche », seuils de l'annuaire, aide sous chaque montant */
.agte-insc__demarche { align-items: flex-start; border-left: 3px solid #2c64a6; display: flex; gap: 0.75rem; margin: -0.4rem 0 1.6rem !important; max-width: 42rem; padding: 0.2rem 0 0.2rem 1rem; }
.agte-insc__demarche > .agte-icone { color: #2c64a6; flex: none; height: 1.35rem; margin-top: 0.1rem; width: 1.35rem; }
.agte-insc__demarche p { color: var(--agte-texte-doux); font-size: 0.9rem; line-height: 1.6; margin: 0 0 0.45rem; }
.agte-insc__demarche p:last-child { margin-bottom: 0; }
.agte-insc__demarche .agte-insc__demarche-titre { color: var(--agte-marine); font-size: 0.975rem; font-weight: 700; margin-bottom: 0.25rem; }
.agte-insc__demarche-seuils strong { color: var(--agte-marine); white-space: nowrap; }
.agte-insc__tarif .agte-mer__aide { display: block; font-size: 0.8rem; margin-top: 0.35rem; }
/* V2.4.9 — étape « Honoraires » : onglets Marchandises / Voyageurs, une ligne compacte par catégorie */
.agte-insc__onglets { background: #eef3f9; border-radius: 12px; display: flex; gap: 0.25rem; margin: 0 0 0.9rem; max-width: 30rem; padding: 0.25rem; }
.agte-insc__onglets[hidden] { display: none; }
.agte-insc__onglet { align-items: center; background: transparent; border: 0; border-radius: 9px; color: var(--agte-texte-doux); column-gap: 0.55rem; cursor: pointer; display: grid; flex: 1; font: inherit; grid-template-columns: auto 1fr; padding: 0.5rem 0.9rem; position: relative; text-align: left; transition: background-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease; }
.agte-insc__onglet[hidden] { display: none; }
.agte-insc__onglet .agte-icone { color: #1d4f8a; grid-row: span 2; height: 1.3rem; width: 1.3rem; }
.agte-insc__onglet[data-agte-onglet="voyageurs"] .agte-icone { color: #2f7a4f; }
.agte-insc__onglet > span:nth-of-type(1) { font-size: 0.925rem; font-weight: 700; line-height: 1.25; }
.agte-insc__onglet-nb { font-size: 0.75rem; line-height: 1.3; }
.agte-insc__onglet:hover { color: var(--agte-marine); }
.agte-insc__onglet[aria-selected="true"] { background: #fff; box-shadow: 0 1px 3px rgba(16, 42, 77, 0.14); color: var(--agte-marine); }
.agte-insc__onglet:focus-visible { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__onglet-alerte { background: #c0392b; border-radius: 50%; display: none; height: 0.45rem; position: absolute; right: 0.6rem; top: 0.55rem; width: 0.45rem; }
.agte-insc__onglet.has-erreur .agte-insc__onglet-alerte { display: block; }
.agte-insc__tarifs { display: flex; flex-direction: column; gap: 1rem; }
.agte-insc__tarifs.is-onglets { display: block; }
.agte-insc__panneau { background: #fff; border: 1px solid #dbe3ed; border-radius: 14px; }
.agte-insc__panneau[hidden] { display: none; }
.agte-insc__panneau-titre { color: var(--agte-marine); font-size: 0.925rem; font-weight: 700; margin: 0; padding: 0.9rem 1.15rem 0; }
.agte-insc__tarifs.is-onglets .agte-insc__panneau-titre { display: none; }
.agte-insc__ligne-tarif { align-items: start; display: grid; gap: 0.75rem 1.25rem; grid-template-columns: 11.5rem 1fr; padding: 1rem 1.15rem 1.05rem; }
.agte-insc__ligne-tarif[hidden] { display: none; }
.agte-insc__ligne-tarif:not([hidden]) ~ .agte-insc__ligne-tarif:not([hidden]) { border-top: 1px solid #e8edf3; }
.agte-insc__ligne-nom { align-items: center; color: var(--agte-marine); display: flex; font-size: 0.925rem; font-weight: 600; gap: 0.65rem; line-height: 1.3; margin: 0; padding-top: 1.45rem; }
.agte-insc__ligne-nom .agte-insc__case-icone { height: 2.1rem; width: 2.1rem; }
.agte-insc__ligne-champs { display: grid; gap: 0.75rem 1rem; grid-template-columns: 1fr 1fr; }
.agte-insc__prix { margin: 0 !important; min-width: 0; }
.agte-insc__prix label { color: var(--agte-texte-doux); font-size: 0.8rem; font-weight: 600; }
.agte-insc__prix .agte-insc__montant { display: block; position: relative; }
.agte-insc__prix .agte-insc__montant input { background: #fff; max-width: none; padding-right: 5.4rem; width: 100%; }
.agte-insc__prix .agte-insc__unite { color: var(--agte-texte-doux); font-size: 0.8rem; pointer-events: none; position: absolute; right: 0.8rem; top: 50%; transform: translateY(-50%); }
.agte-insc__prix .agte-mer__aide { display: block; font-size: 0.78rem; line-height: 1.4; margin-top: 0.3rem; }
.agte-insc__prix .agte-mer__erreur { font-size: 0.82rem; }
@media (max-width: 640px) {
	.agte-insc__ligne-tarif { grid-template-columns: 1fr; padding: 0.95rem 1rem 1rem; }
	.agte-insc__ligne-nom { padding-top: 0; }
	.agte-insc__onglets { max-width: none; }
	.agte-insc__onglet { padding: 0.5rem 0.7rem; }
}
@media (max-width: 440px) { .agte-insc__ligne-champs { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .agte-insc__onglet { transition: none; } }
/* V2.5.0 — étape « Justificatifs » : pièces du badge distinguées de l'inscription incomplète */
.agte-insc__requis-titre { align-items: center; display: flex; gap: 0.45rem; }
.agte-insc__requis-titre .agte-icone { color: #b8901f; flex: none; height: 1.05rem; width: 1.05rem; }
.agte-insc__incomplet { margin: 1.1rem 0 0.4rem !important; }
.agte-insc__incomplet strong { display: block; font-weight: 700; margin-bottom: 0.1rem; }
/* V2.6.0 — capacités dans l'étape 1 ; justificatifs allégés en dépliants ; remise à niveau sur fond bleu très clair */
.agte-insc__capacites { margin-top: 1.8rem; }
.agte-insc__capacites-aide { margin: -0.3rem 0 0.8rem; }
.agte-insc__requis--court { padding: 0.6rem 1.2rem 0.9rem; }
.agte-insc__requis--court ul { display: grid; gap: 0.3rem; list-style: none; margin: 0 0 0.6rem; padding: 0; }
.agte-insc__requis--court li { color: var(--agte-texte); font-size: 0.9rem; padding-left: 1.1rem; position: relative; }
.agte-insc__requis--court li::before { background: #2c64a6; border-radius: 50%; content: ""; height: 0.4rem; left: 0.15rem; position: absolute; top: 0.55rem; width: 0.4rem; }
.agte-insc__requis--court .agte-mer__aide strong { color: var(--agte-marine); }
.agte-insc__deplis { display: flex; flex-direction: column; gap: 0.6rem; margin-top: 1.4rem; }
.agte-insc__depli { background: #fff; border: 1px solid #dbe3ed; border-radius: 12px; }
.agte-insc__depli[hidden] { display: none; }
.agte-insc__depli > summary { align-items: center; cursor: pointer; display: flex; gap: 0.75rem; list-style: none; padding: 0.7rem 1rem; }
.agte-insc__depli > summary::-webkit-details-marker { display: none; }
.agte-insc__depli > summary::after { border-bottom: 2px solid #5b7290; border-right: 2px solid #5b7290; content: ""; flex: none; height: 0.45rem; margin: 0 0.2rem 0 0.4rem; transform: rotate(45deg); transition: transform 0.15s ease; width: 0.45rem; }
.agte-insc__depli[open] > summary::after { transform: rotate(-135deg); }
.agte-insc__depli > summary:focus-visible { border-radius: 12px; outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__depli > summary .agte-insc__case-icone { height: 2.1rem; width: 2.1rem; }
.agte-insc__depli-titre { color: var(--agte-marine); flex: 1; font-size: 0.95rem; font-weight: 700; line-height: 1.3; }
.agte-insc__depli-etat { background: #f1f5fa; border-radius: 999px; color: var(--agte-texte-doux); flex: none; font-size: 0.75rem; font-weight: 600; padding: 0.15rem 0.6rem; white-space: nowrap; }
.agte-insc__depli-etat:empty { display: none; }
.agte-insc__depli.is-complet .agte-insc__depli-etat { background: #e5f3ea; color: #2f7a4f; }
.agte-insc__depli-corps { border-top: 1px solid #edf1f6; padding: 0.4rem 1rem 1.1rem; }
.agte-insc__depli-corps > * + * { margin-top: 0.8rem; }
.agte-insc__depli .agte-insc__accord { background: none; border: 0; padding: 0.2rem 0; }
.agte-insc__depli .agte-insc__question { margin-top: 1rem; }
.agte-insc__remise { background: #f1f6fc; border: 0; border-left: 3px solid #9dbbe0; border-radius: 10px; padding: 0.85rem 1rem; }
.agte-insc__remise-note { color: var(--agte-texte); }
.agte-insc__remise-note strong { color: var(--agte-marine); }
@media (prefers-reduced-motion: reduce) { .agte-insc__depli > summary::after { transition: none; } }
.agte-insc__remise-note strong, .agte-insc__requis--court .agte-mer__aide strong { font-weight: 700; }
.agte-insc__requis--court .agte-insc__sous-titre { margin-top: 0.5rem; }
/* V2.7.0 — étape « Envoi » : récapitulatif par rubrique, « Modifier », « Après l'envoi », confirmation */
.agte-insc__recap { border: 1px solid #dbe3ed; border-radius: 14px; margin-top: 0.4rem; overflow: hidden; }
.agte-insc__recap[hidden] { display: none; }
.agte-insc__recap-rubrique { padding: 0.95rem 1.15rem 1rem; }
.agte-insc__recap-rubrique + .agte-insc__recap-rubrique { border-top: 1px solid #edf1f6; }
.agte-insc__recap-tete { align-items: center; display: flex; gap: 1rem; justify-content: space-between; margin-bottom: 0.45rem; }
.agte-insc__recap-titre { color: var(--agte-marine); font-size: 0.95rem; font-weight: 700; margin: 0; }
.agte-insc__modifier { background: none; border: 0; border-radius: 6px; color: #2c64a6; cursor: pointer; flex: none; font: inherit; font-size: 0.85rem; font-weight: 600; padding: 0.2rem 0.4rem; text-decoration: underline; text-underline-offset: 3px; }
.agte-insc__modifier:hover { color: var(--agte-marine); }
.agte-insc__modifier:focus-visible { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__recap-liste { display: grid; gap: 0.35rem; margin: 0; }
.agte-insc__recap-ligne { display: grid; gap: 0.15rem 1rem; grid-template-columns: 13rem 1fr; }
.agte-insc__recap-ligne dt { color: var(--agte-texte-doux); font-size: 0.85rem; }
.agte-insc__recap-ligne dd { color: var(--agte-texte); font-size: 0.9rem; margin: 0; overflow-wrap: anywhere; }
.agte-insc__recap-ligne.is-joint dd { color: #2f7a4f; }
.agte-insc__recap-ligne.is-manquant dd { color: #8a5a00; }
.agte-insc__recap-note { background: #f7f9fc; color: var(--agte-texte-doux); font-size: 0.85rem; margin: 0; padding: 0.7rem 1.15rem; }
@media (max-width: 599px) { .agte-insc__recap-ligne { grid-template-columns: 1fr; } .agte-insc__recap-rubrique { padding: 0.9rem 1rem; } }
.agte-insc__visible-note { align-items: flex-start; color: var(--agte-texte-doux); display: flex; font-size: 0.85rem; gap: 0.5rem; line-height: 1.5; margin: 1rem 0 0 !important; }
.agte-insc__visible-note .agte-icone { color: #2c64a6; flex: none; height: 1rem; margin-top: 0.15rem; width: 1rem; }
.agte-insc__apres { margin-top: 1.6rem; }
.agte-insc__apres .agte-insc__sous-titre { margin-top: 0; }
.agte-insc__apres ol { display: grid; gap: 0.75rem; list-style: none; margin: 0 0 0.6rem; padding: 0; }
.agte-insc__apres li { align-items: flex-start; display: flex; gap: 0.75rem; }
.agte-insc__apres-num { align-items: center; background: #e3edf9; border-radius: 50%; color: #1d4f8a; display: inline-flex; flex: none; font-size: 0.8rem; font-weight: 700; height: 1.6rem; justify-content: center; width: 1.6rem; }
.agte-insc__apres li p { color: var(--agte-texte-doux); font-size: 0.875rem; line-height: 1.5; margin: 0; }
.agte-insc__apres .agte-insc__apres-titre { align-items: center; color: var(--agte-marine); display: flex; font-size: 0.925rem; font-weight: 700; gap: 0.4rem; margin-bottom: 0.1rem; }
.agte-insc__apres-titre .agte-icone { color: #2c64a6; height: 1rem; width: 1rem; }
.agte-insc__retour { margin: 0.8rem 0 0 !important; text-align: right; }
.agte-insc__retour[hidden] { display: none; }
.agte-insc__retour-bouton { align-items: center; background: none; border: 0; color: #2c64a6; cursor: pointer; display: inline-flex; font: inherit; font-size: 0.9rem; font-weight: 600; gap: 0.35rem; padding: 0.2rem; text-decoration: underline; text-underline-offset: 3px; }
.agte-insc__retour-bouton .agte-icone { height: 0.95rem; width: 0.95rem; }
.agte-insc__retour-bouton:focus-visible { border-radius: 6px; outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-insc__confirmation .agte-insc__apres { border-top: 1px solid #e2eadf; margin: 1.2rem 0; padding-top: 1.1rem; }
/* V2.7.1 — récapitulatif : petites icônes légèrement colorées devant les titres, pictogramme devant chaque capacité */
.agte-insc__recap-titre { align-items: center; display: flex; gap: 0.55rem; }
.agte-insc__recap-icone { align-items: center; background: #eef3f9; border-radius: 8px; color: #2c64a6; display: inline-flex; flex: none; height: 1.75rem; justify-content: center; width: 1.75rem; }
.agte-insc__recap-icone .agte-icone { height: 1.05rem; width: 1.05rem; }
.agte-insc__recap-icone--departement { background: #fdeeee; color: #c94040; }
.agte-insc__recap-icone--capacites { background: #eef3f9; color: #1d4f8a; }
.agte-insc__recap-icone--regions { background: #e9f4ee; color: #2f7a4f; }
.agte-insc__recap-icone--experience { background: #eef3f9; color: #2c64a6; }
.agte-insc__recap-icone--honoraires { background: #fbf4e4; color: #a07a16; }
.agte-insc__recap-icone--justificatifs { background: #f3effb; color: #5b3fb0; }
.agte-insc__recap-ligne dt { align-items: center; display: flex; gap: 0.45rem; }
.agte-insc__recap-picto.agte-insc__recap-icone { background: none; border-radius: 0; height: 1.1rem; width: 1.1rem; }
.agte-insc__recap-picto .agte-icone { height: 1.1rem; width: 1.1rem; }
.agte-insc__recap-icone--m-leger, .agte-insc__recap-icone--m-lourd { color: #1d4f8a; }
.agte-insc__recap-icone--v-9, .agte-insc__recap-icone--v-plus-9 { color: #2f7a4f; }
.agte-insc__recap-icone--commission { color: #5b3fb0; }

/* ===== V2.8.0 (2026-10-07) — FAQ de l'accueil (dépliants) et widget « Contactez-nous » (questions + formulaire court) ===== */
.agte-faq { border-top: 1px solid #e3e9f1; margin-top: 1.2rem; }
.agte-faq__item { border-bottom: 1px solid #e3e9f1; }
.agte-faq__question { align-items: center; cursor: pointer; display: flex; gap: 0.85rem; list-style: none; padding: 1.05rem 0.25rem; }
.agte-faq__question::-webkit-details-marker { display: none; }
.agte-faq__question:focus-visible { border-radius: 8px; outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-faq__icone { align-items: center; background: #eef3f9; border-radius: 10px; color: #2c64a6; display: inline-flex; flex: none; height: 2.2rem; justify-content: center; width: 2.2rem; }
.agte-faq__icone .agte-icone { height: 1.15rem; width: 1.15rem; }
.agte-faq__titre { color: var(--agte-marine); flex: 1; font-size: 1.02rem; font-weight: 700; line-height: 1.4; margin: 0; }
.agte-faq__fleche { border-bottom: 2px solid #7f95b0; border-right: 2px solid #7f95b0; flex: none; height: 0.5rem; margin: 0 0.45rem 0.2rem 0.5rem; transform: rotate(45deg); transition: transform 0.2s ease; width: 0.5rem; }
.agte-faq__item[open] .agte-faq__fleche { margin-bottom: -0.2rem; transform: rotate(-135deg); }
.agte-faq__question:hover .agte-faq__titre { color: #2c64a6; }
.agte-faq__reponse { color: var(--agte-texte); font-size: 0.95rem; line-height: 1.65; padding: 0 0.25rem 1.2rem 3.05rem; }
.agte-faq__reponse p { margin: 0 0 0.7rem; }
.agte-faq__reponse p:last-child { margin-bottom: 0; }
.agte-faq__reponse ul { margin: 0 0 0.7rem; padding-left: 1.2rem; }
.agte-faq__reponse li { margin-bottom: 0.3rem; }
@media (max-width: 600px) { .agte-faq__reponse { padding-left: 0.25rem; } .agte-faq__titre { font-size: 0.98rem; } }
@media (prefers-reduced-motion: reduce) { .agte-faq__fleche { transition: none; } }
/* Widget : questions en liste, réponse validée, accès « Écrire à notre équipe », formulaire court */
.agte-chat__choix-titre { color: #4a5a6e; flex-basis: 100%; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.04em; margin: 0.2rem 0 0; text-transform: uppercase; }
.agte-chat__choix { max-height: 45%; overflow-y: auto; }
.agte-chat__choix[hidden] { display: none; }
.agte-chat__choix-bouton--question { border-color: #c5d3e3; border-radius: 10px; color: #13202f; font-weight: 600; line-height: 1.35; padding: 0.5rem 0.75rem; text-align: left; width: 100%; }
.agte-chat__choix-bouton--question:hover, .agte-chat__choix-bouton--question:focus-visible { background: #eaf1fa; border-color: #1d4f8a; color: #0f2c4c; }
.agte-chat__reponse { max-width: 92%; }
.agte-chat__reponse p, .agte-chat__reponse ul { margin: 0 0 0.45rem; }
.agte-chat__reponse > :last-child { margin-bottom: 0; }
.agte-chat__reponse ul { padding-left: 1.1rem; }
.agte-chat__reponse-titre { color: #0f2c4c; font-weight: 700; }
.agte-chat__equipe { background: #f5f7fa; border-top: 1px solid #e3e9f1; margin: 0; padding: 0.55rem 0.9rem; }
.agte-chat__equipe[hidden] { display: none; }
.agte-chat__equipe-bouton { align-items: center; background: none; border: 0; border-radius: 6px; color: #1d4f8a; cursor: pointer; display: inline-flex; font: inherit; font-size: 0.86rem; font-weight: 700; gap: 0.45rem; padding: 0.2rem; text-decoration: underline; text-underline-offset: 3px; }
.agte-chat__equipe-bouton:hover { color: #0f2c4c; }
.agte-chat__equipe-bouton:focus-visible { outline: 2px solid #fdba74; outline-offset: 2px; }
.agte-chat__equipe-bouton svg { fill: none; flex: none; height: 1.1rem; stroke: #c2410c; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 1.1rem; }
.agte-chat__form-titre { color: #0f2c4c; font-size: 0.95rem; font-weight: 700; margin: 0 0 0.2rem; }
.agte-chat__champ { border: 0; display: flex; flex-direction: column; gap: 0.25rem; margin: 0 0 0.45rem; min-width: 0; padding: 0; }
.agte-chat__champ legend { color: #13202f; font-weight: 600; margin-bottom: 0.3rem; padding: 0; }
.agte-chat__form select, .agte-chat__form textarea { background: #fff; border: 1px solid #c5d3e3; border-radius: 6px; font: inherit; font-size: 1rem; padding: 0.45rem 0.6rem; }
.agte-chat__form textarea { resize: vertical; }
.agte-chat__form .agte-chat__champ input:not([type="radio"]) { margin-bottom: 0; }
.agte-chat__form select:focus-visible, .agte-chat__form textarea:focus-visible, .agte-chat__form input:focus-visible { border-color: #1d4f8a; outline: 2px solid #fdba74; outline-offset: 1px; }
.agte-chat__option { color: #4a5a6e; font-weight: 400; }
.agte-chat__puces > label { display: inline-flex; margin: 0 0.3rem 0.3rem 0; }
.agte-chat__puces input { opacity: 0; position: absolute; }
.agte-chat__puces label span { border: 1px solid #c5d3e3; border-radius: 999px; color: #13202f !important; cursor: pointer; font-weight: 600 !important; padding: 0.3rem 0.7rem; }
.agte-chat__puces input:checked + span { background: #eaf1fa; border-color: #1d4f8a; color: #0f2c4c !important; }
.agte-chat__puces input:focus-visible + span { outline: 2px solid #fdba74; outline-offset: 1px; }
.agte-chat__champ.has-erreur select, .agte-chat__champ.has-erreur input, .agte-chat__champ.has-erreur textarea, .agte-chat__champ.has-erreur label span { border-color: #b42318; }
.agte-chat__champ .agte-chat__erreur { font-size: 0.8rem; margin: 0; }
.agte-chat__piege { height: 1px; left: -9999px; overflow: hidden; position: absolute; width: 1px; }
.agte-chat__info { color: #4a5a6e; font-size: 0.78rem; margin: 0.1rem 0 0.4rem; }
.agte-chat__form-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 0.6rem; justify-content: space-between; }
.agte-chat__annuler { background: none; border: 0; color: #1d4f8a; cursor: pointer; font: inherit; font-size: 0.84rem; font-weight: 600; padding: 0.2rem; text-decoration: underline; text-underline-offset: 3px; }
.agte-chat__form .agte-chat__form-envoyer { align-self: auto; font-size: 0.95rem; padding: 0.6rem 1.2rem; }
/* V2.9.0 — FAQ générale (/faq/) et rubriques dans le widget */
.agte-faq__toutes { margin: 1.2rem 0 0; }
.agte-faq__item { scroll-margin-top: 1.5rem; }
.agte-insc__conservation { align-items: flex-start; background: #f1f6fc; border-left: 3px solid #2c64a6; border-radius: 10px; display: flex; gap: 0.7rem; margin: 1.4rem 0 0.4rem !important; padding: 0.9rem 1.1rem; }
.agte-insc__conservation > .agte-icone { color: #2c64a6; flex: none; height: 1.2rem; margin-top: 0.15rem; width: 1.2rem; }
.agte-insc__conservation p { color: var(--agte-texte); font-size: 0.875rem; line-height: 1.55; margin: 0 0 0.4rem; }
.agte-insc__conservation p:last-child { margin-bottom: 0; }
.agte-insc__conservation .agte-insc__conservation-titre { color: var(--agte-marine); font-size: 0.925rem; font-weight: 700; }
.agte-chat__choix-bouton--theme { background: #f5f7fa; border-color: #c5d3e3; border-radius: 10px; font-weight: 600; text-align: left; width: 100%; } /* « Par thème » : une seule colonne (2026-10-09) */
@media (max-width: 600px) { .agte-chat__choix { max-height: 62%; } }
.agte-chat__choix-lien { align-self: center; color: #1d4f8a; flex-basis: 100%; font-size: 0.84rem; font-weight: 700; margin-top: 0.2rem; }

/* ===== V3.0.0 (2026-10-07) — questionnaire « Connaissances validées » (style du formulaire d'inscription) ===== */
.agte-quiz { max-width: 46rem; }
.agte-quiz__retour { font-size: 0.92rem; margin: 1.2rem 0 0; } /* lien discret après le résultat (2026-10-10) */
.agte-quiz__retour a { color: var(--agte-bleu); font-weight: 600; text-underline-offset: 3px; }
.agte-quiz__retour a:hover { color: var(--agte-marine); }
.agte-quiz__carte { background: #fff; border: 1px solid #dbe3ed; border-radius: 18px; box-shadow: 0 10px 30px rgba(15, 44, 76, 0.06); margin-top: 1.4rem; padding: 1.6rem 1.8rem; }
.agte-quiz__carte--reussite { border-color: #c9b8ef; }
.agte-quiz__regles { display: grid; gap: 0.75rem; list-style: none; margin: 0 0 1rem; padding: 0; }
.agte-quiz__regles li { align-items: flex-start; display: flex; font-size: 0.95rem; gap: 0.7rem; line-height: 1.5; }
.agte-quiz__regles .agte-icone { background: #eef3f9; border-radius: 8px; color: #2c64a6; flex: none; height: 1.9rem; padding: 0.35rem; width: 1.9rem; }
.agte-quiz__regles strong { color: var(--agte-marine); }
.agte-quiz__commencer { border-top: 1px solid #edf1f6; margin-top: 1.2rem; padding-top: 1.2rem; text-align: right; }
.agte-quiz__info { align-items: flex-start; background: #f7f9fc; border-radius: 12px; display: flex; gap: 0.6rem; padding: 1rem 1.2rem; }
.agte-quiz__info .agte-icone { color: #2c64a6; flex: none; height: 1.2rem; width: 1.2rem; }
.agte-quiz__form { background: #fff; border: 1px solid #dbe3ed; border-radius: 18px; box-shadow: 0 10px 30px rgba(15, 44, 76, 0.06); margin-top: 1rem; padding: 1.4rem 1.8rem 1.6rem; }
.agte-quiz__entete { align-items: center; display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; justify-content: space-between; }
.agte-quiz__progression { color: var(--agte-bleu); font-size: 0.8rem; font-weight: 700; letter-spacing: 0.04em; margin: 0; text-transform: uppercase; }
.agte-quiz__chrono { background: #eef3f9; border-radius: 999px; color: var(--agte-marine); font-size: 0.875rem; font-variant-numeric: tabular-nums; font-weight: 700; margin: 0; padding: 0.3rem 0.85rem; }
.agte-quiz__chrono.is-bientot { background: #fdeeee; color: #b42318; }
.agte-quiz__barre { background: #edf1f6; border-radius: 999px; height: 6px; margin: 0.8rem 0 1.4rem; overflow: hidden; }
.agte-quiz__barre span { background: #2c64a6; border-radius: 999px; display: block; height: 100%; transition: width 0.25s ease; width: 0; }
.agte-quiz__question { border: 0; margin: 0 0 1.6rem; min-width: 0; padding: 0; }
.agte-quiz__question[hidden] { display: none; }
.agte-quiz__question legend { display: block; margin-bottom: 1rem; padding: 0; }
.agte-quiz__question legend:focus { outline: none; }
.agte-quiz__numero { color: var(--agte-texte-doux); display: block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; margin-bottom: 0.35rem; text-transform: uppercase; }
.agte-quiz__enonce { color: var(--agte-marine); display: block; font-size: 1.15rem; font-weight: 700; line-height: 1.45; }
.agte-quiz__choix { display: grid; gap: 0.65rem; }
.agte-quiz__option { align-items: flex-start; background: #fff; border: 1px solid #dbe3ed; border-radius: 12px; cursor: pointer; display: flex; font-size: 0.975rem; gap: 0.75rem; line-height: 1.45; padding: 0.85rem 1rem; transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease; }
.agte-quiz__option input { accent-color: var(--agte-bleu); flex: none; height: 1.1rem; margin: 0.15rem 0 0; width: 1.1rem; }
@media (hover: hover) and (pointer: fine) { .agte-quiz__option:hover { border-color: #2c64a6; } }
.agte-quiz__option:has(input:checked) { background: #f3f7fc; border-color: #2c64a6; box-shadow: 0 0 0 3px #e3edf9; }
.agte-quiz__option:has(input:focus-visible) { outline: 2px solid #2c64a6; outline-offset: 2px; }
.agte-quiz__nav, .agte-quiz__conf-actions { align-items: center; border-top: 1px solid #edf1f6; display: flex; gap: 1rem; justify-content: space-between; padding-top: 1.1rem; }
.agte-quiz__nav[hidden] { display: none; }
.agte-quiz__form:not(.is-pas-a-pas) .agte-quiz__nav { justify-content: flex-end; }
.agte-quiz__nav .agte-insc__precedent:disabled { opacity: 0.4; cursor: default; }
.agte-quiz__nav [hidden] { display: none; }
.agte-quiz__confirmation { background: #f1f6fc; border-left: 3px solid #2c64a6; border-radius: 12px; margin-top: 0.5rem; padding: 1.1rem 1.3rem; }
.agte-quiz__confirmation[hidden] { display: none; }
.agte-quiz__conf-titre { color: var(--agte-marine); font-size: 1.05rem; font-weight: 700; margin: 0 0 0.4rem; }
.agte-quiz__conf-titre:focus { outline: none; }
.agte-quiz__conf-actions { border-top: 0; margin-top: 0.8rem; padding-top: 0; }
.agte-quiz__resultat { text-align: center; }
.agte-quiz__score { color: var(--agte-marine); font-size: 1.4rem; font-weight: 700; margin: 0 0 0.4rem; }
.agte-quiz__score span { font-size: 3.2rem; line-height: 1; }
.agte-quiz__decision { font-size: 1.05rem; }
.agte-quiz__resultat .agte-badges-profil { justify-content: center; }
@media (max-width: 600px) {
	.agte-quiz__form, .agte-quiz__carte { border-radius: 14px; padding: 1.1rem 1rem 1.2rem; }
	.agte-quiz__enonce { font-size: 1.05rem; }
	.agte-quiz__nav .agte-bouton, .agte-quiz__conf-actions .agte-bouton { flex: 1; justify-content: center; }
	.agte-quiz__conf-actions { flex-direction: column-reverse; align-items: stretch; }
	.agte-quiz__commencer .agte-bouton { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .agte-quiz__barre span, .agte-quiz__option { transition: none; } }
/* V3.1.0 (2026-10-08) — questionnaire : 20 secondes par question, compte à rebours et jauge de temps */
.agte-quiz__chrono { align-items: center; display: inline-flex; gap: 0.35rem; min-width: 4.6rem; justify-content: center; }
.agte-quiz__chrono .agte-icone { height: 1rem; width: 1rem; }
.agte-quiz__chrono span { font-size: 1.05rem; }
.agte-quiz__barre { margin-bottom: 0.5rem; }
.agte-quiz__temps { background: #f3f5f8; border-radius: 999px; height: 4px; margin: 0 0 1.4rem; overflow: hidden; }
.agte-quiz__temps span { background: #9dbbe0; border-radius: 999px; display: block; height: 100%; transition: width 0.25s linear; }
.agte-quiz__form:has(.is-bientot) .agte-quiz__temps span { background: #e07b6f; }
.agte-quiz__consigne { color: #b42318; font-size: 0.9rem; font-weight: 600; margin: -0.6rem 0 0.8rem; min-height: 1.2em; }
.agte-quiz__form .agte-quiz__nav { justify-content: flex-end; }
@media (prefers-reduced-motion: reduce) { .agte-quiz__temps span { transition: none; } }
/* Mobile : compte à rebours toujours visible pendant le défilement */
@media (max-width: 600px) { .agte-quiz__form .agte-quiz__entete { background: #fff; margin: -0.4rem -0.4rem 0; padding: 0.55rem 0.4rem; position: sticky; top: 0; z-index: 3; } }

/* ===== V3.2.0 (2026-10-09) — widget « Contactez-nous » affiné =====
   Remplace l'apparence des blocs « V0.6.0 — discussion » et « Widget : questions en liste… » ci-dessus
   (mêmes classes, même fonctionnement). Fond blanc, filets fins, ombres légères ; recherche sous le titre ;
   thèmes sur une seule colonne ; plein écran sur mobile avec un bouton « Fermer » visible. */
.agte-chat { --chat-trait: #e6ebf1; --chat-doux: #556579; --chat-fond: #f4f7fb; }

/* Bouton d'ouverture : compact, icône fine, libellé lisible */
.agte-chat__bulle { background: var(--agte-marine); border: 1px solid rgba(255, 255, 255, 0.28); box-shadow: 0 4px 14px rgba(15, 44, 76, 0.18); font-size: 0.93rem; font-weight: 600; gap: 0.5rem; letter-spacing: 0.01em; padding: 0.6rem 1.05rem 0.6rem 0.85rem; transition: background-color 0.2s ease, box-shadow 0.2s ease; }
.agte-chat__bulle:hover, .agte-chat__bulle:focus-visible { background: var(--agte-bleu); box-shadow: 0 6px 18px rgba(15, 44, 76, 0.22); transform: none; }
.agte-chat__bulle svg { height: 1.15rem; stroke: #fff; stroke-width: 1.6; width: 1.15rem; }

/* Fenêtre */
.agte-chat__fenetre { border: 1px solid var(--chat-trait); border-radius: 14px; box-shadow: 0 12px 32px rgba(15, 44, 76, 0.14); height: min(640px, calc(100vh - 40px)); width: 392px; }
.agte-chat__entete { background: #fff; border-bottom: 1px solid var(--chat-trait); color: var(--agte-texte); gap: 0.75rem; padding: 0.95rem 0.9rem 0.95rem 1.15rem; }
.agte-chat__avatar { background: var(--agte-bleu-clair); height: 2.1rem; width: 2.1rem; }
.agte-chat__avatar svg { height: 1.2rem; stroke: var(--agte-bleu); stroke-width: 1.6; width: 1.2rem; }
.agte-chat__titre { color: var(--agte-marine); font-size: 1.02rem; font-weight: 700; }
.agte-chat__sous-titre { color: var(--chat-doux); font-size: 0.78rem; line-height: 1.35; margin-top: 0.15rem; }
.agte-chat__fermer { align-items: center; align-self: flex-start; background: var(--chat-fond); border-radius: 999px; color: var(--agte-marine); display: inline-flex; flex: none; gap: 0.3rem; justify-content: center; min-height: 2.25rem; min-width: 2.25rem; padding: 0.3rem; }
.agte-chat__fermer:hover, .agte-chat__fermer:focus-visible { background: var(--agte-bleu-clair); }
.agte-chat__fermer:focus-visible { outline: 3px solid var(--agte-accent); outline-offset: 2px; }
.agte-chat__fermer svg { height: 1.1rem; stroke-width: 1.9; width: 1.1rem; }
.agte-chat__fermer-texte { display: none; font-size: 0.88rem; font-weight: 600; }

/* Recherche, juste sous le titre */
.agte-chat__saisie { background: #fff; border-top: 0; gap: 0.45rem; padding: 0.8rem 1.15rem 0.7rem; }
.agte-chat__saisie input { background: var(--chat-fond); border: 1px solid transparent; box-sizing: border-box; color: var(--agte-texte); font-size: 0.95rem; height: 2.6rem; line-height: 1.2; min-height: 0; padding: 0 1rem; }
.agte-chat__saisie input::placeholder { color: #6b7a8c; }
.agte-chat__saisie input:focus-visible { background: #fff; border-color: var(--agte-bleu); outline: 3px solid rgba(29, 79, 138, 0.18); outline-offset: 0; }
.agte-chat__envoyer { background: var(--agte-accent); height: 2.6rem; width: 2.6rem; }
.agte-chat__envoyer svg { height: 1.1rem; stroke-width: 2; width: 1.1rem; }

/* Fil des messages et réponses */
.agte-chat__fil { background: #fff; gap: 0.7rem; min-height: 7.5rem; padding: 0.4rem 1.15rem 0.9rem; scrollbar-color: #c9d4e1 transparent; scrollbar-width: thin; }
.agte-chat__msg { border-radius: 12px; font-size: 0.92rem; line-height: 1.55; padding: 0.6rem 0.85rem; }
.agte-chat__msg--assistant { background: var(--chat-fond); border: 0; border-bottom-left-radius: 4px; color: var(--agte-texte); }
.agte-chat__msg--visiteur { background: var(--agte-bleu); }
.agte-chat__msg--resume { background: var(--chat-fond); border-left: 3px solid var(--agte-bleu); font-size: 0.85rem; }
.agte-chat__reponse { max-width: 100%; padding: 0.8rem 0.95rem; }
.agte-chat__reponse-titre { color: var(--agte-marine); font-size: 0.95rem; line-height: 1.4; margin-bottom: 0.45rem !important; }
.agte-chat__reponse p, .agte-chat__reponse ul { margin-bottom: 0.55rem; }

/* Questions et thèmes : listes légères, une seule colonne */
.agte-chat__choix { background: #fff; border-top: 1px solid var(--chat-trait); flex-direction: column; max-height: 42%; flex-wrap: nowrap; gap: 0.15rem; padding: 0.35rem 1.15rem 0; scrollbar-color: #c9d4e1 transparent; scrollbar-width: thin; }
.agte-chat__choix:not(:empty) { padding-bottom: 0.8rem; }
.agte-chat__choix-titre { color: var(--chat-doux); font-size: 0.72rem; letter-spacing: 0.07em; margin: 0.65rem 0 0.25rem; }
.agte-chat__choix-bouton { align-self: flex-start; background: #fff; border: 1px solid #cbd6e3; color: var(--agte-bleu); font-size: 0.86rem; padding: 0.4rem 0.85rem; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.agte-chat__choix-bouton:hover, .agte-chat__choix-bouton:focus-visible { background: var(--agte-bleu-clair); border-color: var(--agte-bleu-clair); color: var(--agte-marine); }
.agte-chat__choix-bouton:focus-visible { outline: 3px solid var(--agte-accent); outline-offset: 1px; }
.agte-chat__choix-bouton--question,
.agte-chat__choix-bouton--theme { align-self: stretch; border: 0; border-radius: 8px; font-size: 0.9rem; line-height: 1.4; padding: 0.55rem 0.7rem; text-align: left; width: 100%; }
.agte-chat__choix-bouton--question { background: transparent; color: var(--agte-texte); font-weight: 500; }
.agte-chat__choix-bouton--question:hover, .agte-chat__choix-bouton--question:focus-visible { background: var(--agte-bleu-clair); color: var(--agte-marine); }
.agte-chat__choix-bouton--theme { align-items: center; background: transparent; color: var(--agte-bleu); display: flex; font-weight: 600; gap: 0.5rem; justify-content: space-between; }
.agte-chat__choix-bouton--theme::after { border-right: 1.8px solid currentColor; border-top: 1.8px solid currentColor; content: ""; flex: none; height: 0.42rem; transform: rotate(45deg); width: 0.42rem; }
.agte-chat__choix-bouton--theme:hover, .agte-chat__choix-bouton--theme:focus-visible { background: var(--agte-bleu-clair); color: var(--agte-marine); }
.agte-chat__choix-lien { align-self: flex-start; font-size: 0.86rem; font-weight: 600; margin: 0.45rem 0 0 0.7rem; text-underline-offset: 3px; }

/* Accès « Écrire à notre équipe » */
.agte-chat__equipe { background: var(--chat-fond); border-top: 1px solid var(--chat-trait); padding: 0.7rem 1.15rem; }
.agte-chat__equipe-bouton { font-size: 0.88rem; font-weight: 600; text-align: left; text-decoration-thickness: 1px; }

/* Formulaire court (contenu inchangé) */
.agte-chat__form { background: var(--chat-fond); border: 0; border-radius: 12px; font-size: 0.88rem; gap: 0.35rem; padding: 0.95rem 1rem; }
.agte-chat__form-titre { font-size: 1rem; margin-bottom: 0.35rem; }
.agte-chat__form input:not([type="checkbox"]):not([type="radio"]), .agte-chat__form select, .agte-chat__form textarea { background: #fff; border: 1px solid #cbd6e3; border-radius: 8px; }
.agte-chat__puces label span { background: #fff; border-color: #cbd6e3; }
.agte-chat__info { color: var(--chat-doux); }

/* Mobile : plein écran, bouton « Fermer » évident */
@media (max-width: 600px) {
	.agte-chat__bulle { font-size: 0.9rem; padding: 0.55rem 0.95rem 0.55rem 0.8rem; }
	.agte-chat__fenetre { border: 0; border-radius: 0; box-shadow: none; height: 100%; height: 100dvh; width: auto; }
	.agte-chat__entete { padding: 0.8rem 0.75rem 0.8rem 1rem; }
	.agte-chat__fermer { align-self: center; background: #fff; border: 1px solid #cbd6e3; min-height: 2.6rem; padding: 0.35rem 0.85rem 0.35rem 0.95rem; }
	.agte-chat__fermer-texte { display: inline; }
	.agte-chat__saisie, .agte-chat__fil, .agte-chat__choix, .agte-chat__equipe { padding-left: 1rem; padding-right: 1rem; }
	.agte-chat__saisie input { font-size: 1rem; } /* pas de zoom automatique sur iPhone */
	.agte-chat__choix { max-height: 58%; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-chat__bulle, .agte-chat__choix-bouton { transition: none; }
}

/* V3.2.3 (2026-10-09) - widget : bouton d'envoi (rond orange). Survol : très léger zoom du bouton entier et petit zoom
   supplémentaire de la flèche, en même temps, sans déplacement. Mobile : bref retour à l'appui, action dès le premier toucher.
   Aucune animation permanente ; rien ne bouge si les animations sont réduites. */
.agte-chat__envoyer { transition: transform 0.15s ease, background-color 0.15s ease; }
.agte-chat__envoyer svg { transition: transform 0.15s ease; }
@media (hover: hover) {
	.agte-chat__envoyer:hover { transform: scale(1.03); }
	.agte-chat__envoyer:hover svg { transform: scale(1.04); }
}
@media (hover: none) and (pointer: coarse) {
	.agte-chat__envoyer:hover, .agte-chat__envoyer:hover svg { transform: none; }
	.agte-chat__envoyer:active, .agte-chat__envoyer.is-appui { transform: scale(1.03); transition-duration: 0.08s; }
	.agte-chat__envoyer:active svg, .agte-chat__envoyer.is-appui svg { transform: scale(1.04); transition-duration: 0.08s; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-chat__envoyer, .agte-chat__envoyer svg { transition: none; }
	.agte-chat__envoyer:hover, .agte-chat__envoyer:active, .agte-chat__envoyer.is-appui,
	.agte-chat__envoyer:hover svg, .agte-chat__envoyer:active svg, .agte-chat__envoyer.is-appui svg { transform: none; }
}

/* V3.2.4 (2026-10-09) - widget : thèmes repliables (un seul ouvert à la fois). Flèche vers le bas fermé, vers le haut ouvert ;
   le titre du thème ouvert reste visible en haut de la liste pendant le défilement de ses questions. */
.agte-chat__theme { display: flex; flex-direction: column; gap: 0.1rem; }
.agte-chat__choix-bouton--theme::after { margin-top: -0.2rem; transform: rotate(135deg); transition: transform 0.15s ease; }
.agte-chat__choix-bouton--theme[aria-expanded="true"]::after { margin-top: 0.2rem; transform: rotate(-45deg); }
.agte-chat__theme-titre { flex: 1; }
.agte-chat__theme.is-ouvert > .agte-chat__choix-bouton--theme { background: var(--agte-bleu-clair); box-shadow: 0 -0.5rem 0 #fff; color: var(--agte-marine); position: sticky; top: 0; z-index: 1; }
.agte-chat__theme-questions { border-left: 2px solid var(--agte-bleu-clair); display: flex; flex-direction: column; gap: 0.1rem; margin: 0.15rem 0 0.4rem 0.7rem; padding-left: 0.35rem; }
.agte-chat__theme-questions[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) {
	.agte-chat__choix-bouton--theme::after { transition: none; }
}

/* V3.2.6 (2026-10-09) - widget, formulaire « Écrire à notre équipe » : bouton « Envoyer », très léger zoom au survol,
   bref retour discret à l'appui sur mobile ; aucune animation permanente ; rien pendant l'envoi (bouton désactivé). */
.agte-chat__form .agte-chat__form-envoyer { transition: transform 0.15s ease, background-color 0.15s ease; }
@media (hover: hover) {
	.agte-chat__form .agte-chat__form-envoyer:hover:not(:disabled) { transform: scale(1.0075); }
}
@media (hover: none) and (pointer: coarse) {
	.agte-chat__form .agte-chat__form-envoyer:hover { transform: none; }
	.agte-chat__form .agte-chat__form-envoyer:active:not(:disabled), .agte-chat__form .agte-chat__form-envoyer.is-appui:not(:disabled) { background: var(--agte-accent-fonce); transform: scale(1.0075); transition-duration: 0.08s; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-chat__form .agte-chat__form-envoyer { transition: none; }
	.agte-chat__form .agte-chat__form-envoyer:hover, .agte-chat__form .agte-chat__form-envoyer:active, .agte-chat__form .agte-chat__form-envoyer.is-appui { transform: none; }
}

/* ===== V3.3.0 (2026-10-09) — espace personnel des gestionnaires (/espace-gestionnaire/) =====
   Même langage que la FAQ et l'inscription : blocs aérés séparés par des filets, icônes orange, pastilles de statut,
   champs et cases du formulaire d'inscription. */
.agte-espace { --esp-trait: #e4e9f0; --esp-doux: #5b6b7f; margin-top: 1rem; max-width: 58rem; }
.agte-espace__flash { align-items: center; background: #eef6f1; border-radius: 10px; color: #14532d; display: flex; font-weight: 600; gap: 0.6rem; margin: 0 0 1.4rem; padding: 0.8rem 1rem; }
.agte-espace__flash .agte-icone { color: #15803d; flex: none; height: 1.2rem; width: 1.2rem; }
.agte-espace__flash--erreur { background: #fdf0ec; color: #8a2c0d; }

/* En-tête */
.agte-espace__tete { align-items: center; background: var(--agte-marine); border-radius: 18px; color: #fff; display: grid; gap: 0.4rem 1.4rem; grid-template-columns: auto minmax(0, 1fr) auto; padding: clamp(1.2rem, 0.8rem + 2vw, 2rem); }
.agte-espace__avatar { height: 4rem; width: 4rem; }
.agte-espace__bonjour { font-size: clamp(1.35rem, 1.1rem + 1vw, 1.75rem); font-weight: 700; line-height: 1.2; margin: 0; }
.agte-espace__ref { color: #c9d6e6; font-size: 0.9rem; margin: 0.2rem 0 0.55rem; }
.agte-espace__demo { color: #fdba74; }
.agte-espace__etat { align-items: center; border-radius: 999px; display: inline-flex; font-size: 0.85rem; font-weight: 600; gap: 0.45rem; margin: 0; padding: 0.3rem 0.8rem; }
.agte-espace__etat::before { border-radius: 50%; content: ""; height: 0.5rem; width: 0.5rem; }
.agte-espace__etat--publiee { background: rgba(255, 255, 255, 0.12); color: #fff; }
.agte-espace__etat--publiee::before { background: #4ade80; }
.agte-espace__etat--retiree { background: #fff4e5; color: #9a3412; }
.agte-espace__etat--retiree::before { background: #c2410c; }
.agte-espace__actions { align-items: flex-end; display: flex; flex-direction: column; gap: 0.6rem; }
.agte-espace__actions .agte-lien-fleche { color: #fff; }
.agte-espace__deconnexion { color: #c9d6e6; font-size: 0.88rem; }
.agte-espace__deconnexion:hover { color: #fff; }

/* Sommaire */
.agte-espace__sommaire { margin: 1.6rem 0 0.4rem; }
.agte-espace__sommaire ul { display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; margin: 0; padding: 0; }
.agte-espace__sommaire a { background: var(--agte-fond); border-radius: 999px; color: var(--agte-marine); display: inline-block; font-size: 0.9rem; font-weight: 600; padding: 0.45rem 0.95rem; text-decoration: none; transition: background-color 0.15s ease; }
.agte-espace__sommaire a:hover { background: var(--agte-bleu-clair); }
.agte-espace__sommaire a:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }

/* Blocs */
.agte-espace__bloc { border-top: 1px solid var(--esp-trait); padding: 2.2rem 0 0.6rem; scroll-margin-top: 1.5rem; }
.agte-espace__sommaire + .agte-espace__bloc { border-top: 0; }
.agte-espace__titre { align-items: center; color: var(--agte-marine); display: flex; font-size: clamp(1.25rem, 1.1rem + 0.5vw, 1.5rem); gap: 0.65rem; margin: 0 0 0.5rem; }
.agte-espace__titre .agte-icone { color: var(--agte-accent); flex: none; height: 1.5rem; width: 1.5rem; }
.agte-espace__intro { color: var(--esp-doux); line-height: 1.6; margin: 0 0 1.3rem; max-width: 68ch; }
.agte-espace__sous-titre { color: var(--agte-marine); font-size: 1.02rem; margin: 1.2rem 0 0.6rem; }
.agte-espace__form { display: flex; flex-direction: column; gap: 1.1rem; }
.agte-espace__form .agte-insc__groupe { border: 0; margin: 0; min-width: 0; padding: 0; }
.agte-espace__form .agte-insc__groupe legend { color: var(--agte-marine); font-weight: 600; margin-bottom: 0.6rem; padding: 0; }
.agte-espace__valider { margin: 0.2rem 0 0; }
.agte-espace__valider .agte-bouton { font-size: 1rem; padding: 0.75rem 1.4rem; }

/* Profil */
.agte-espace__profil { display: grid; gap: 0; grid-template-columns: 1fr; margin: 0; }
.agte-espace__profil > div { border-bottom: 1px solid var(--esp-trait); display: grid; gap: 0.2rem 1.5rem; grid-template-columns: 15rem minmax(0, 1fr); padding: 0.8rem 0; }
.agte-espace__profil dt { color: var(--esp-doux); font-size: 0.92rem; }
.agte-espace__profil dd { color: var(--agte-texte); font-weight: 600; margin: 0; }

/* Demandes, badges : pastilles de statut */
.agte-espace__demandes, .agte-espace__badges { border-top: 1px solid var(--esp-trait); list-style: none; margin: 0 0 1.4rem; padding: 0; }
.agte-espace__demandes li, .agte-espace__badges li { align-items: center; border-bottom: 1px solid var(--esp-trait); display: grid; gap: 0.3rem 1rem; grid-template-columns: minmax(0, 1fr) auto; padding: 0.85rem 0; }
.agte-espace__demande-quoi, .agte-espace__badge-nom { color: var(--agte-marine); font-weight: 600; }
.agte-espace__demande-date, .agte-espace__badge-aide { color: var(--esp-doux); font-size: 0.88rem; grid-column: 1 / -1; line-height: 1.5; }
.agte-espace__badge-acces { color: var(--esp-doux); font-size: 0.9rem; grid-column: 1 / -1; } /* accès au questionnaire, discret (2026-10-10) */
.agte-espace__prochaine { align-items: center; display: inline-flex; gap: 0.4rem; } /* délai après un échec : icône calendrier, date en gras (2026-10-10) */
.agte-espace__prochaine .agte-icone { color: var(--agte-bleu); flex: none; height: 1.05rem; width: 1.05rem; }
.agte-espace__prochaine strong { color: var(--agte-bleu); font-weight: 700; }
.agte-espace__lien-quiz { color: var(--agte-bleu); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.agte-espace__lien-quiz:hover { color: var(--agte-marine); }
.agte-espace__lien-fleche { display: inline-block; margin-right: 0.35rem; transition: transform 0.15s ease; } /* petite flèche, léger glissement au survol (2026-10-10) */
.agte-espace__lien-quiz:hover .agte-espace__lien-fleche, .agte-espace__lien-quiz:focus-visible .agte-espace__lien-fleche { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) { .agte-espace__lien-fleche { transition: none; } .agte-espace__lien-quiz:hover .agte-espace__lien-fleche, .agte-espace__lien-quiz:focus-visible .agte-espace__lien-fleche { transform: none; } }
.agte-espace__lien-quiz { -webkit-tap-highlight-color: transparent; }
.agte-espace__lien-quiz:focus:not(:focus-visible) { outline: none; } /* pas de cadre au clic ni au toucher (2026-10-10) */
.agte-espace__lien-quiz:focus-visible { border-radius: 3px; outline: 2px solid var(--agte-bleu); outline-offset: 3px; } /* clavier : indicateur discret */
.agte-espace__pastille { border-radius: 999px; font-size: 0.8rem; font-weight: 600; padding: 0.25rem 0.7rem; white-space: nowrap; }
.agte-espace__pastille--en_attente { background: var(--agte-fond); color: var(--agte-texte-doux); }
.agte-espace__pastille--acceptee { background: #e7f5ec; color: #166534; }
.agte-espace__pastille--refusee { background: #fdf0ec; color: #9a3412; }
.agte-espace__pastille--non-obtenu { background: #fdecec; color: #b42318; } /* badge non obtenu, en rouge (2026-10-10) */
.agte-espace__types { display: grid; gap: 0.6rem; }
.agte-espace__type span strong { color: var(--agte-marine); display: block; font-size: 0.95rem; letter-spacing: 0; text-transform: none; }
.agte-espace__form input[type="file"] { font: inherit; font-size: 0.92rem; }
.agte-espace__quiz { background: var(--agte-fond); border-radius: 14px; padding: 1.2rem 1.3rem; }
.agte-espace__quiz .agte-espace__sous-titre { margin-top: 0; }
.agte-espace__regles { color: var(--esp-doux); font-size: 0.92rem; margin: 0 0 1rem; }
.agte-espace__quiz .agte-bouton { display: inline-flex; gap: 0.4rem; text-decoration: none; }

/* Retrait (2026-10-09) : présentation légère, bouton discret mais identifiable (contour), retrait en un clic */
.agte-espace__retrait p { color: var(--agte-texte); line-height: 1.6; margin: 0 0 1rem; max-width: 64ch; }
.agte-espace__bouton-retrait { background: #fff; border: 1px solid #cbd6e3; border-radius: 8px; color: var(--agte-accent-fonce); cursor: pointer; font: inherit; font-size: 0.93rem; font-weight: 600; padding: 0.55rem 1.05rem; transition: border-color 0.15s ease, background-color 0.15s ease; }
.agte-espace__bouton-retrait:hover { background: #fff7f2; border-color: var(--agte-accent); }
.agte-espace__bouton-retrait:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-espace__retrait .agte-espace__suppression { color: var(--esp-doux); font-size: 0.86rem; margin: 1rem 0 0; }
.agte-espace__retrait .agte-espace__retiree { align-items: center; color: var(--agte-marine); display: flex; font-weight: 600; gap: 0.5rem; margin: 0; }
.agte-espace__retiree .agte-icone { color: #15803d; flex: none; height: 1.15rem; width: 1.15rem; }
.agte-espace__bouton-retrait { display: inline-block; line-height: 1.4; text-decoration: none; } /* aussi utilisé comme lien (premier clic) */
.agte-espace__confirmation { background: var(--agte-fond); border-radius: 12px; max-width: 40rem; padding: 1.1rem 1.25rem; }
.agte-espace__confirmation:focus { outline: none; }
.agte-espace__confirmation:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-espace__confirmation p { margin: 0 0 1rem; }
.agte-espace__confirmation strong { color: var(--agte-marine); }
.agte-espace__choix { align-items: center; display: flex; flex-wrap: wrap; gap: 0.6rem; }
.agte-espace__annuler { background: #fff; border: 1px solid #cbd6e3; border-radius: 8px; color: var(--agte-marine); font-size: 0.93rem; font-weight: 600; padding: 0.55rem 1.05rem; text-decoration: none; }
.agte-espace__annuler:hover { border-color: var(--agte-bleu); }
.agte-espace__annuler:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
.agte-espace__bouton-retrait--confirmer { background: var(--agte-accent); border-color: var(--agte-accent); color: #fff; }
.agte-espace__bouton-retrait--confirmer:hover { background: var(--agte-accent-fonce); border-color: var(--agte-accent-fonce); color: #fff; }
@media (prefers-reduced-motion: reduce) { .agte-espace__bouton-retrait { transition: none; } }

/* Connexion */
.agte-espace--connexion { max-width: 30rem; }
.agte-espace--connexion .agte-espace__bloc { border: 1px solid var(--esp-trait); border-radius: 16px; padding: 1.8rem; }
.agte-espace--connexion form p { display: flex; flex-direction: column; gap: 0.35rem; margin: 0 0 1rem; }
.agte-espace--connexion label { color: var(--agte-marine); font-size: 0.9rem; font-weight: 600; }
.agte-espace--connexion input[type="text"], .agte-espace--connexion input[type="password"] { background: var(--agte-fond); border: 1px solid #d4dce6; border-radius: 8px; font: inherit; font-size: 1rem; padding: 0.65rem 0.8rem; }
.agte-espace--connexion input[type="text"]:focus, .agte-espace--connexion input[type="password"]:focus { background: #fff; border-color: var(--agte-bleu); outline: 3px solid rgba(29, 79, 138, 0.18); }
.agte-espace--connexion .login-remember label { align-items: center; display: flex; font-weight: 400; gap: 0.5rem; }
.agte-espace--connexion #agte-espace-connexion { background: var(--agte-accent); border: 0; border-radius: 6px; color: #fff; cursor: pointer; font: inherit; font-weight: 600; padding: 0.75rem 1.4rem; }
.agte-espace--connexion #agte-espace-connexion:hover { background: var(--agte-accent-fonce); }
.agte-espace__liens { font-size: 0.92rem; margin: 0.4rem 0 0; }
.agte-espace__vide { max-width: 40rem; }

@media (max-width: 700px) {
	.agte-espace__tete { grid-template-columns: auto minmax(0, 1fr); }
	.agte-espace__actions { align-items: flex-start; flex-direction: row; flex-wrap: wrap; gap: 0.5rem 1.2rem; grid-column: 1 / -1; }
	.agte-espace__avatar { height: 3.2rem; width: 3.2rem; }
	.agte-espace__profil > div { grid-template-columns: 1fr; }
	.agte-espace__sommaire ul { flex-wrap: nowrap; margin: 0 -16px; overflow-x: auto; padding: 0 16px; scrollbar-width: none; }
	.agte-espace__sommaire a { white-space: nowrap; }
	.agte-espace__valider .agte-bouton { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-espace__sommaire a { transition: none; }
}

/* ===== V3.4.0 (2026-10-10) — « Comment fonctionne la mise en relation ? » (inscription, espace personnel) ===== */
.agte-mer-etapes { counter-reset: none; display: grid; gap: 0.9rem; list-style: none; margin: 0 0 1rem; padding: 0; }
.agte-mer-etapes li { align-items: flex-start; display: grid; gap: 0.8rem; grid-template-columns: auto minmax(0, 1fr); }
.agte-mer-etapes__num { align-items: center; background: var(--agte-bleu-clair); border-radius: 50%; color: var(--agte-marine); display: inline-flex; flex: none; font-size: 0.85rem; font-weight: 700; height: 1.7rem; justify-content: center; width: 1.7rem; }
.agte-mer-etapes p { line-height: 1.55; margin: 0; }
.agte-mer-etapes__titre { color: var(--agte-marine); font-weight: 700; }
.agte-mer-etapes li > div > p:last-child { color: var(--agte-texte-doux); font-size: 0.93rem; }
.agte-espace .agte-mer-etapes { max-width: 46rem; }
.agte-espace__mer-note { color: var(--agte-texte-doux); font-size: 0.9rem; line-height: 1.6; margin: 0; max-width: 60ch; }
.agte-espace__mer-note a { color: var(--agte-bleu); font-weight: 600; }
/* Colonne de l'inscription : version compacte */
.agte-insc__encadre--mer { margin-top: 1rem; }
.agte-mer-etapes--compact { gap: 0.7rem; margin-bottom: 0.8rem; }
.agte-mer-etapes--compact li { gap: 0.6rem; }
.agte-mer-etapes--compact .agte-mer-etapes__num { font-size: 0.75rem; height: 1.4rem; width: 1.4rem; }
.agte-mer-etapes--compact p { font-size: 0.85rem; line-height: 1.45; }
.agte-mer-etapes--compact li > div > p:last-child { font-size: 0.82rem; }
.agte-insc__encadre--mer .agte-insc__encadre-note a { color: var(--agte-bleu); font-weight: 600; }

/* ===== V3.5.0 (2026-10-10) — complément de dossier (pièces manquantes, lien privé et espace personnel) ===== */
.agte-complement { max-width: 44rem; }
.agte-complement__form { display: flex; flex-direction: column; gap: 1.1rem; margin-top: 1.2rem; }
.agte-complement__piece { border-bottom: 1px solid #e4e9f0; padding-bottom: 1rem; }
.agte-complement__piece input[type="file"] { font: inherit; font-size: 0.92rem; }
.agte-complement__date { display: flex; flex-direction: column; gap: 0.3rem; margin-top: 0.6rem; max-width: 14rem; }
.agte-complement__date label { color: var(--agte-texte-doux); font-size: 0.85rem; }
.agte-complement__limite { align-items: center; background: var(--agte-fond); border-radius: 10px; display: flex; gap: 0.5rem; margin: 0 0 1rem; padding: 0.7rem 0.9rem; }
.agte-complement__limite .agte-icone { color: var(--agte-bleu); flex: none; height: 1.1rem; width: 1.1rem; }
.agte-complement__limite strong { color: var(--agte-bleu); }
.agte-complement__ok { align-items: center; background: #eef6f1; border-radius: 10px; color: #14532d; display: flex; font-weight: 600; gap: 0.6rem; padding: 0.8rem 1rem; }
.agte-complement__ok .agte-icone { color: #15803d; flex: none; height: 1.2rem; width: 1.2rem; }

/* V3.5.1 (2026-10-10) — carte de la fiche : mention discrète « Localisation indicative au niveau du département » */
.agte-minicarte__indicatif { color: var(--agte-texte-doux); flex-basis: 100%; font-size: 0.78rem; font-style: italic; }

/* V3.6.0 (2026-10-10) — photo validée (sinon avatar par défaut), présentation, champs ajoutés aux formulaires */
img.agte-avatar-photo { background: var(--agte-bleu-clair); border-radius: 50%; display: block; object-fit: cover; }
.agte-cvc__puce-avatar img { height: 100%; width: 100%; }
.agte-cv__presentation { line-height: 1.65; margin: 0; max-width: 62ch; }
.agte-insc__photo input[type="file"] { max-width: 100%; }
/* Mise en relation : activités et véhicules, démarrage, entreprise */
.agte-mer__groupe { border: 0; margin: 0 0 1.05rem; min-width: 0; padding: 0; }
.agte-mer__groupe legend { color: var(--agte-marine); font-weight: 700; margin-bottom: 0.3rem; padding: 0; }
.agte-mer__groupe > .agte-mer__aide { display: block; margin: 0 0 0.45rem; }
.agte-mer__cases { display: grid; gap: 0.45rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .agte-mer__cases { grid-template-columns: 1fr 1fr; } }
.agte-mer__case { align-items: flex-start; background: #fff; border: 1px solid var(--agte-bordure); border-radius: 8px; cursor: pointer; display: flex; gap: 0.55rem; line-height: 1.4; padding: 0.6rem 0.75rem; }
.agte-mer__case input { accent-color: var(--agte-bleu); flex: none; height: 1.05rem; margin: 0.12rem 0 0; width: 1.05rem; }
.agte-mer__case:hover { border-color: #9fb7d4; }
.agte-mer__case:has(input:checked) { background: #eef4fb; border-color: var(--agte-bleu); }
.agte-mer__case:has(input:focus-visible) { outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-mer__case--inconnu { grid-column: 1 / -1; }
.agte-mer__case--seule { display: inline-flex; margin-top: 0.45rem; }
.agte-mer__champ--date { margin-bottom: 0; }
.agte-mer__champ--date input { max-width: 14rem; }
.agte-mer__champ input:disabled { background: #f1f4f8; color: var(--agte-texte-doux); }
.agte-mer__groupe.has-erreur .agte-mer__case { border-color: #b42318; }
.agte-mer__groupe .agte-mer__erreur { display: block; margin-top: 0.35rem; }
.agte-mer__champ[hidden] { display: none; }
/* V3.6.0 — champ « Photo » : même apparence que les dépôts de justificatifs */
.agte-insc__photo input[type="file"] { background: #fbfcfe; border: 1px dashed #b9c7d8; border-radius: 9px; cursor: pointer; font-size: 0.875rem; padding: 0.7rem; }
.agte-insc__photo input[type="file"]::file-selector-button { background: #eaf1fa; border: 1px solid #c9d8ea; border-radius: 7px; color: var(--agte-bleu); cursor: pointer; font: inherit; font-weight: 600; margin-right: 0.7rem; padding: 0.35rem 0.75rem; }
.agte-insc__photo input[type="file"] { background: #fff; border-color: #c9d4e2; border-radius: 12px; }

/* V3.7.0 (2026-10-10) — espace : « Ma photo et ma présentation » (validation par l'équipe avant affichage) */
.agte-espace__pp { align-items: flex-start; display: flex; flex-wrap: wrap; gap: 1.25rem; margin-bottom: 1.25rem; }
.agte-espace__pp-actuel { margin: 0; text-align: center; width: 9rem; }
.agte-espace__pp-actuel .agte-espace__pp-image { border-radius: 50%; box-shadow: 0 0 0 3px #fff, 0 0 0 4px #c9d8ea; height: 7rem; margin: 0 auto 0.5rem; width: 7rem; }
.agte-espace__pp-actuel figcaption { color: var(--agte-texte-doux); font-size: 0.82rem; }
.agte-espace__pp-texte { flex: 1 1 16rem; min-width: 0; }
.agte-espace__pp-citation { border-left: 3px solid #c9d8ea; line-height: 1.6; margin: 0 0 0.75rem; padding-left: 0.8rem; }
.agte-espace__pp-etat { align-items: baseline; display: flex; flex-wrap: wrap; font-size: 0.9rem; gap: 0.45rem; margin: 0.4rem 0; }
img.agte-espace__avatar { border-radius: 50%; object-fit: cover; }

/* ===== V3.10.0 (2026-10-10) — effet unique des boutons à flèche (validé par Yoann sur « Envoyer ma demande ») =====
   Tous les boutons comportant la petite flèche, hors widget « Contactez-nous » (comportement inchangé) ; boutons sans flèche
   non concernés. Réglages relevés sur le bouton du formulaire de gestionnairetransport.fr/contact/ (réglages seulement) :
   - bouton remonté de 2 px (0,15 s) ; flèche décalée de 3 px vers la droite (0,2 s) ; retour en place à l'appui ;
   - reflet sous le bouton seulement (0,25 s) : 0 14px 12px -12px — l'étalement négatif contient le flou dans la largeur,
     rien sur les côtés ni au-dessus ; couleur du reflet = couleur propre du bouton (--agte-reflet) ;
   - courbe « ease » ; aucune animation permanente.
   Tactile : pas de survol collant ; appui discret existant (97 %). Animations réduites : aucun déplacement ; reflet sans transition.
   Remplace le zoom de la V3.8.0 et l'essai de la V3.9.0 (zoom 0,75 %, flèche 4 px ou 1 px selon les boutons). */
.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton) { --agte-reflet: rgba(194, 65, 12, 0.46); transition: transform 0.15s ease, box-shadow 0.25s ease, background-color 0.2s ease; }
.agte-bouton--contact.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton) { --agte-reflet: rgba(201, 79, 23, 0.46); }   /* orange des boutons de contact (#c94f17) */
.agte-bouton--secondaire.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton) { --agte-reflet: rgba(255, 255, 255, 0.75); } /* boutons secondaires (fond blanc, flèche bleue, « Voir les avis » sur fond bleu foncé) : reflet blanc, intensité mesurée au niveau des autres */
.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton) .agte-fleche { transform: none; transition: transform 0.2s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):hover,
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):focus-visible { box-shadow: 0 14px 12px -12px var(--agte-reflet); transform: translateY(-2px); }
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):hover .agte-fleche,
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):focus-visible .agte-fleche { transform: translateX(3px); }
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):active { transform: translateY(0); }
}
@media (hover: none) and (pointer: coarse) {
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):hover { box-shadow: none; transform: none; }
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):active,
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton).is-appui { transform: scale(0.97); transition-duration: 0.08s; }
}
@media (prefers-reduced-motion: reduce) {
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton) { transition: background-color 0.2s ease; }
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton) .agte-fleche { transition: none; }
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):hover, .agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):focus-visible, .agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):active, .agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton).is-appui { transform: none; }
	.agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):hover .agte-fleche, .agte-bouton:is(:has(> .agte-fleche), :has(> .agte-insecable > .agte-fleche)):not(.agte-chat .agte-bouton):focus-visible .agte-fleche { transform: none; }
}

/* ===== V3.11.0 (2026-10-10) — formulaire de mise en relation, présentation V2 (aérée, sans cadres empilés) =====
   Quatre étapes numérotées avec pictogramme ; choix du gestionnaire en deux options ; recherche avec suggestions ; aperçu. */
.agte-mer--v2 .agte-mer__form { background: none; border: 0; border-radius: 0; padding: 0; }
.agte-mer__chapo { color: var(--agte-texte, #13202f); font-size: 1.08rem; line-height: 1.6; margin: 0 0 0.35rem; max-width: 46rem; }
.agte-mer--v2 .agte-mer__intro { margin: 0 0 0.5rem; }
.agte-mer__etape { border-top: 1px solid #e6ecf3; padding: 1.9rem 0 0.6rem; }
.agte-mer__etape:first-of-type { border-top: 0; padding-top: 1.2rem; }
.agte-mer__etape-titre { align-items: center; color: var(--agte-marine); display: flex; font-size: 1.3rem; gap: 0.85rem; line-height: 1.25; margin: 0 0 1.15rem; }
.agte-mer__etape-icone { align-items: center; background: #eaf1fa; border-radius: 50%; color: var(--agte-bleu); display: inline-flex; flex: none; height: 2.75rem; justify-content: center; width: 2.75rem; }
.agte-mer__etape-icone .agte-icone { height: 1.35rem; width: 1.35rem; }
.agte-mer__etape-num { color: var(--agte-texte-doux); display: block; font-size: 0.74rem; font-weight: 700; letter-spacing: 0.06em; margin-bottom: 0.1rem; text-transform: uppercase; }
.agte-mer__etape-intro { color: var(--agte-texte-doux); font-size: 0.92rem; margin: -0.6rem 0 1rem; }
/* Étape 1 : deux options */
.agte-mer__options { display: grid; gap: 0.75rem; grid-template-columns: 1fr; }
@media (min-width: 680px) { .agte-mer__options { grid-template-columns: 1fr 1fr; } }
.agte-mer__option { align-items: flex-start; background: #fff; border: 1.5px solid #dbe3ed; border-radius: 14px; cursor: pointer; display: grid; gap: 0.8rem; grid-template-columns: auto auto minmax(0, 1fr); padding: 1rem 1.1rem; transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease; }
.agte-mer__option input { accent-color: var(--agte-bleu); height: 1.1rem; margin: 0.65rem 0 0; width: 1.1rem; }
.agte-mer__option:hover { border-color: #9fb7d4; }
.agte-mer__option:has(input:checked) { background: #f3f7fc; border-color: var(--agte-bleu); box-shadow: 0 0 0 3px rgba(29, 79, 138, 0.08); }
.agte-mer__option:has(input:focus-visible) { outline: 3px solid #fdba74; outline-offset: 2px; }
.agte-mer__option-icone { align-items: center; background: #eaf1fa; border-radius: 50%; color: var(--agte-bleu); display: inline-flex; height: 2.3rem; justify-content: center; width: 2.3rem; }
.agte-mer__option-icone .agte-icone { height: 1.2rem; width: 1.2rem; }
.agte-mer__option-texte strong { color: var(--agte-marine); display: block; font-weight: 700; line-height: 1.35; margin-bottom: 0.2rem; }
.agte-mer__option-texte span { color: var(--agte-texte-doux); display: block; font-size: 0.88rem; line-height: 1.45; }
.agte-mer__groupe.has-erreur .agte-mer__option { border-color: #b42318; }
/* Recherche du gestionnaire */
.agte-mer__profil { margin-top: 1.1rem; }
.agte-mer__profil[hidden], .agte-mer__recherche[hidden], .agte-mer__suggestions[hidden], .agte-mer__non-reconnu[hidden] { display: none; }
.agte-mer__recherche > label { color: var(--agte-marine); display: block; font-weight: 700; margin-bottom: 0.35rem; }
.agte-mer__combo { position: relative; }
.agte-mer__combo-icone { color: var(--agte-texte-doux); height: 1.15rem; left: 0.9rem; pointer-events: none; position: absolute; top: 1.5rem; transform: translateY(-50%); width: 1.15rem; }
.agte-mer__combo input { background: #fff; border: 1.5px solid #c9d4e2; border-radius: 12px; box-sizing: border-box; font: inherit; min-height: 3rem; padding: 0.7rem 0.9rem 0.7rem 2.7rem; width: 100%; }
.agte-mer__combo input:focus-visible { border-color: var(--agte-bleu); outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-mer__combo input[aria-invalid="true"] { border-color: #b42318; }
.agte-mer__suggestions { background: #fff; border: 1px solid #dbe3ed; border-radius: 14px; box-shadow: 0 14px 30px rgba(15, 44, 76, 0.14); left: 0; list-style: none; margin: 0; max-height: 21rem; overflow-y: auto; padding: 0.35rem; position: absolute; right: 0; top: calc(100% + 6px); z-index: 30; }
.agte-mer__suggestion { align-items: center; border-radius: 10px; cursor: pointer; display: flex; gap: 0.75rem; padding: 0.55rem 0.65rem; }
.agte-mer__suggestion:hover, .agte-mer__suggestion.is-actif { background: #eef4fb; }
.agte-mer__suggestion-nom { color: var(--agte-texte, #13202f); display: block; }
.agte-mer__suggestion-nom strong { color: var(--agte-marine); }
.agte-mer__suggestion-infos { color: var(--agte-texte-doux); display: block; font-size: 0.85rem; }
.agte-mer__avatar { border-radius: 50%; flex: none; height: 2.5rem; width: 2.5rem; }
.agte-mer__fictif { background: #fff4e5; border-radius: 999px; color: #7a4a00; font-size: 0.7rem; font-weight: 600; padding: 0.05rem 0.45rem; white-space: nowrap; }
.agte-mer__non-reconnu { background: #fdf0ee; border-radius: 10px; color: #8a1c12; font-size: 0.9rem; line-height: 1.45; margin: 0.6rem 0 0; padding: 0.6rem 0.8rem; }
.agte-mer__non-reconnu:empty { display: none; }
.agte-mer__apercu-carte { align-items: center; background: #f3f7fc; border: 1px solid #c9d8ea; border-radius: 14px; display: flex; flex-wrap: wrap; gap: 0.9rem; padding: 0.9rem 1rem; }
.agte-mer__apercu-carte .agte-mer__avatar { height: 3rem; width: 3rem; }
.agte-mer__apercu-texte { flex: 1 1 12rem; min-width: 0; }
.agte-mer__apercu-texte p { margin: 0; }
.agte-mer__apercu-nom strong { color: var(--agte-marine); font-size: 1.05rem; }
.agte-mer__apercu-nom > span:not(.agte-mer__fictif) { color: var(--agte-texte-doux); font-weight: 600; }
.agte-mer__apercu-infos { color: var(--agte-texte-doux); font-size: 0.88rem; }
.agte-mer__apercu-liens a { color: var(--agte-bleu); font-size: 0.88rem; font-weight: 600; }
.agte-mer__changer { background: #fff; border: 1px solid #c9d8ea; border-radius: 999px; color: var(--agte-bleu); cursor: pointer; font: inherit; font-size: 0.88rem; font-weight: 600; padding: 0.4rem 0.95rem; }
.agte-mer__changer[hidden] { display: none; }
.agte-mer__changer:hover { background: #eaf1fa; }
.agte-mer__changer:focus-visible { outline: 3px solid #fdba74; outline-offset: 2px; }
.agte-mer__preference { align-items: flex-start; color: var(--agte-texte-doux); display: flex; font-size: 0.88rem; gap: 0.55rem; line-height: 1.5; margin: 0.9rem 0 0; }
.agte-mer__preference .agte-icone { color: var(--agte-bleu); flex: none; height: 1.15rem; margin-top: 0.1rem; width: 1.15rem; }
.agte-mer__profil .agte-mer__erreur { display: block; margin-top: 0.5rem; }
/* Champs et choix plus aérés */
.agte-mer--v2 .agte-mer__champ input, .agte-mer--v2 .agte-mer__champ select, .agte-mer--v2 .agte-mer__champ textarea { border-radius: 12px; min-height: 3rem; }
.agte-mer--v2 .agte-mer__case { border: 1.5px solid #e1e8f0; border-radius: 12px; padding: 0.75rem 0.9rem; }
.agte-mer--v2 .agte-mer__case--icone { align-items: center; }
.agte-mer__case-icone { align-items: center; background: #f1f5fa; border-radius: 50%; color: var(--agte-bleu); display: inline-flex; flex: none; height: 2rem; justify-content: center; width: 2rem; }
.agte-mer__case-icone .agte-icone { height: 1.1rem; width: 1.1rem; }
.agte-mer--v2 .agte-mer__case:has(input:checked) .agte-mer__case-icone { background: #fff; }
.agte-mer__duo { display: grid; gap: 0.5rem 1.5rem; grid-template-columns: 1fr; margin-top: 0.5rem; }
@media (min-width: 760px) { .agte-mer__duo { align-items: start; grid-template-columns: 1fr 1fr; } }
.agte-mer__grille { display: grid; gap: 0 1.25rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .agte-mer__grille { grid-template-columns: 1fr 1fr; } .agte-mer__champ--large { grid-column: 1 / -1; } }
.agte-mer__fin { border-top: 1px solid #e6ecf3; margin-top: 0.8rem; padding-top: 1.4rem; }
.agte-mer--v2 .agte-mer__envoi { margin-top: 0; }
/* Colonne « Après votre demande » : un seul panneau doux */
.agte-mer__apres { background: #f5f8fc; border-radius: 18px; padding: 1.4rem 1.4rem 1.2rem; }
.agte-mer__apres-titre { color: var(--agte-marine); font-size: 1.05rem; font-weight: 800; margin: 0 0 0.9rem; }
.agte-mer__apres ol { display: grid; gap: 0.9rem; list-style: none; margin: 0; padding: 0; }
.agte-mer__apres li { align-items: flex-start; display: flex; font-size: 0.92rem; gap: 0.7rem; line-height: 1.5; }
.agte-mer__apres-icone { align-items: center; background: #fff; border-radius: 50%; box-shadow: 0 1px 2px rgba(15, 44, 76, 0.08); color: var(--agte-bleu); display: inline-flex; flex: none; height: 2.1rem; justify-content: center; width: 2.1rem; }
.agte-mer__apres-icone .agte-icone { height: 1.05rem; width: 1.05rem; }
@media (prefers-reduced-motion: reduce) { .agte-mer__option { transition: none; } }
/* « Copier le profil » : action discrète (cartes, lignes de profils, fiche) */
.agte-copier { align-items: center; background: none; border: 0; border-radius: 6px; color: var(--agte-texte-doux); cursor: pointer; display: inline-flex; font: inherit; font-size: 0.85rem; font-weight: 600; gap: 0.35rem; padding: 0.25rem 0.35rem; }
.agte-copier .agte-icone { height: 1rem; width: 1rem; }
.agte-copier:hover { color: var(--agte-bleu); text-decoration: underline; text-underline-offset: 3px; }
.agte-copier:focus-visible { outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-copier.is-copie { color: #15803d; text-decoration: none; }

/* ===== 2026-10-10 — MAQUETTE V2 de la page d'inscription visiteur (/apercu-inscription-visiteur/), non fonctionnelle ===== */
.agte-vis { align-items: start; display: grid; gap: 2.2rem; grid-template-columns: 1fr; margin-top: 1.4rem; }
@media (min-width: 960px) { .agte-vis { gap: 4rem; grid-template-columns: minmax(0, 1fr) minmax(0, 27rem); } }
.agte-vis__sur-titre { color: var(--agte-accent, #c2410c); font-size: 0.86rem; /* 2026-10-10 : un cran plus grand (0,78 → 0,86 rem) */ font-weight: 800; letter-spacing: 0.08em; margin: 0 0 0.5rem; text-transform: uppercase; }
.agte-vis__titre { color: var(--agte-marine); font-size: clamp(1.55rem, 1.2rem + 1.2vw, 2.2rem); line-height: 1.2; margin: 0 0 0.8rem; max-width: 30rem; }
.agte-vis__chapo { color: var(--agte-texte-doux); font-size: 1.05rem; line-height: 1.6; margin: 0 0 1.6rem; max-width: 34rem; }
.agte-vis__atouts { display: grid; gap: 1.05rem; list-style: none; margin: 0 0 1.6rem; padding: 0; }
.agte-vis__atouts li { align-items: flex-start; display: flex; gap: 0.85rem; line-height: 1.5; }
.agte-vis__atouts strong { color: var(--agte-marine); display: block; }
.agte-vis__atouts li > span:last-child { color: var(--agte-texte-doux); font-size: 0.95rem; }
.agte-vis__atout-icone { align-items: center; background: #eaf1fa; border-radius: 50%; color: var(--agte-bleu); display: inline-flex; flex: none; height: 2.4rem; justify-content: center; width: 2.4rem; }
.agte-vis__atout-icone .agte-icone { height: 1.2rem; width: 1.2rem; }
.agte-vis__confiance { align-items: center; color: var(--agte-texte-doux); display: flex; font-size: 0.88rem; gap: 0.5rem; margin: 0 0 0.6rem; }
.agte-vis__confiance .agte-icone { color: var(--agte-bleu); flex: none; height: 1rem; width: 1rem; }
.agte-vis__pro { color: var(--agte-texte-doux); font-size: 0.88rem; margin: 0; }
.agte-vis__lien { color: var(--agte-bleu); cursor: pointer; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
/* Panneau du formulaire : fond très léger, sans bordure */
.agte-vis__panneau { background: #f6f8fb; border-radius: 22px; padding: 0.5rem 1.5rem 1.5rem; }
@media (max-width: 480px) { .agte-vis__panneau { margin: 0 -0.25rem; padding: 0.4rem 1.1rem 1.3rem; } }
.agte-vis__onglet-radio { height: 1px; opacity: 0; position: absolute; width: 1px; }
.agte-vis__onglets { background: #e9eef5; border-radius: 999px; display: grid; gap: 0.25rem; grid-template-columns: 1fr 1fr; margin: 1rem 0 1.4rem; padding: 0.25rem; }
.agte-vis__onglet { border-radius: 999px; color: var(--agte-marine); cursor: pointer; font-size: 0.92rem; font-weight: 700; padding: 0.6rem 0.5rem; text-align: center; transition: background-color 0.2s ease, box-shadow 0.2s ease; }
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion { background: #fff; box-shadow: 0 1px 3px rgba(15, 44, 76, 0.12); color: var(--agte-bleu); }
#agte-vis-onglet-inscription:focus-visible ~ .agte-vis__onglets .agte-vis__onglet--inscription,
#agte-vis-onglet-connexion:focus-visible ~ .agte-vis__onglets .agte-vis__onglet--connexion { outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-vis__form--connexion { display: none; }
#agte-vis-onglet-connexion:checked ~ .agte-vis__form--inscription { display: none; }
#agte-vis-onglet-connexion:checked ~ .agte-vis__form--connexion { display: block; }
.agte-vis__duo { display: grid; gap: 0 0.8rem; grid-template-columns: 1fr 1fr; }
.agte-vis__champ { display: flex; flex-direction: column; gap: 0.3rem; margin: 0 0 0.95rem; }
.agte-vis__champ label, .agte-vis__groupe legend { color: var(--agte-marine); font-size: 0.88rem; font-weight: 700; }
.agte-vis__champ input { background: #fff; border: 1px solid #d3dce8; border-radius: 12px; box-sizing: border-box; font: inherit; min-height: 2.9rem; padding: 0.6rem 0.85rem; width: 100%; }
.agte-vis__champ input:focus-visible { border-color: var(--agte-bleu); outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-vis__mdp { display: block; position: relative; }
.agte-vis__mdp input { padding-right: 5.2rem; }
.agte-vis__afficher { color: var(--agte-bleu); font-size: 0.82rem; font-weight: 700; position: absolute; right: 0.85rem; top: 50%; transform: translateY(-50%); }
.agte-vis__aide { color: var(--agte-texte-doux); font-size: 0.8rem; }
.agte-vis__groupe { border: 0; margin: 0 0 0.95rem; min-width: 0; padding: 0; }
.agte-vis__groupe legend { margin-bottom: 0.4rem; padding: 0; }
.agte-vis__puces { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.agte-vis__puce { cursor: pointer; }
.agte-vis__puce input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.agte-vis__puce span { background: #fff; border: 1px solid #d3dce8; border-radius: 999px; color: var(--agte-texte, #13202f); display: inline-block; font-size: 0.88rem; padding: 0.45rem 0.9rem; transition: background-color 0.2s ease, border-color 0.2s ease; }
.agte-vis__puce input:checked + span { background: #eaf1fa; border-color: var(--agte-bleu); color: var(--agte-bleu); font-weight: 600; }
.agte-vis__puce input:focus-visible + span { outline: 3px solid #fdba74; outline-offset: 1px; }
.agte-vis__accord { align-items: flex-start; display: flex; font-size: 0.86rem; gap: 0.55rem; line-height: 1.5; margin: 0.2rem 0 1.1rem; }
.agte-vis__accord input { accent-color: var(--agte-bleu); flex: none; height: 1.05rem; margin: 0.15rem 0 0; width: 1.05rem; }
.agte-vis__envoyer { box-sizing: border-box; font-size: 1rem; justify-content: center; padding: 0.8rem 1.2rem; width: 100%; }
.agte-vis__note { color: var(--agte-texte-doux); font-size: 0.82rem; margin: 0.7rem 0 0; text-align: center; }
.agte-vis__oubli { font-size: 0.88rem; margin: -0.3rem 0 1.1rem; text-align: right; }
/* Écrans complémentaires */
.agte-vis__suite { border-top: 1px solid #e6ecf3; margin-top: 2.6rem; padding-top: 1.6rem; }
.agte-vis__suite-titre { color: var(--agte-texte-doux); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; margin: 0 0 1rem; text-transform: uppercase; }
.agte-vis__ecrans { display: grid; gap: 1.4rem 3rem; grid-template-columns: 1fr; }
@media (min-width: 900px) { .agte-vis__ecrans { grid-template-columns: 1fr 1fr; } }
.agte-vis__ecran { align-items: flex-start; display: flex; gap: 0.85rem; }
.agte-vis__ecran p { color: var(--agte-texte-doux); font-size: 0.9rem; line-height: 1.55; margin: 0 0 0.4rem; }
.agte-vis__ecran .agte-vis__ecran-titre { color: var(--agte-marine); font-size: 0.98rem; font-weight: 700; margin-bottom: 0.25rem; }
.agte-vis__bandeau { background: #f6f8fb; border-radius: 12px; color: var(--agte-texte, #13202f) !important; padding: 0.6rem 0.85rem; }
@media (prefers-reduced-motion: reduce) { .agte-vis__onglet, .agte-vis__puce span { transition: none; } }
/* Maquette V2 — ajustements : mobile, formulaire juste après le titre ; titres des atouts en gras ; onglets sur une ligne */
.agte-vis { grid-template-areas: "tete" "form" "plus"; }
.agte-vis__tete { grid-area: tete; }
.agte-vis__panneau { grid-area: form; }
.agte-vis__plus { grid-area: plus; }
@media (min-width: 960px) { .agte-vis { grid-template-areas: "tete form" "plus form"; grid-template-rows: auto 1fr; row-gap: 0; } }
.agte-vis__atouts strong { font-weight: 700; }
.agte-vis__onglets { grid-template-columns: auto auto; justify-content: stretch; }
.agte-vis__onglet { padding: 0.6rem 0.9rem; white-space: nowrap; }
@media (max-width: 480px) { .agte-vis__onglet { font-size: 0.82rem; padding: 0.55rem 0.55rem; } }
/* Maquette V2 — interactions (2026-10-10) : survol = teinte discrète, appui = teinte plus marquée (souris :active, toucher .is-appui),
   sélection = fond blanc et ombre (onglets) ou fond bleu clair et bordure (puces). Survol réservé aux souris (pas de survol collant). */
.agte-vis__lien { background: transparent; border-radius: 4px; box-decoration-break: clone; -webkit-box-decoration-break: clone; transition: background-color 0.15s ease, color 0.15s ease; }
.agte-vis__lien:focus-visible { outline: 3px solid #fdba74; outline-offset: 2px; }
.agte-vis__onglet { -webkit-tap-highlight-color: transparent; }
.agte-vis__puce span { transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.agte-vis__lien, .agte-vis__puce { -webkit-tap-highlight-color: transparent; }
@media (hover: hover) and (pointer: fine) {
	.agte-vis__lien:hover { background: rgba(29, 79, 138, 0.08); color: #163f70; }
	#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:hover,
	#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:hover { background: rgba(255, 255, 255, 0.6); color: var(--agte-bleu); }
	.agte-vis__puce:hover input:not(:checked) + span { background: #f4f8fc; border-color: #9fb7d4; }
}
.agte-vis__lien:active, .agte-vis__lien.is-appui { background: rgba(29, 79, 138, 0.16); color: #163f70; }
.agte-vis__onglet:active, .agte-vis__onglet.is-appui { background: rgba(255, 255, 255, 0.85); }
.agte-vis__puce:active input:not(:checked) + span, .agte-vis__puce.is-appui input:not(:checked) + span { background: #e3ecf7; border-color: var(--agte-bleu); }
.agte-vis__puce:active span, .agte-vis__puce.is-appui span { transform: scale(0.97); }
@media (prefers-reduced-motion: reduce) {
	.agte-vis__lien, .agte-vis__puce span { transition: none; }
	.agte-vis__puce:active span, .agte-vis__puce.is-appui span { transform: none; }
}
/* Maquette V2 — 2026-10-10 (demande de Yoann) : « Présentez votre profil », « Créer un compte » et « Se connecter » (liens du bas)
   et onglets : effet uniquement sur le fond surligné, plus soutenu au survol et au toucher, transition douce ; aucun zoom ni
   déplacement, texte inchangé. Onglet sélectionné : fond blanc et ombre (inchangé), toujours distinct du survol. */
.agte-vis__pro .agte-vis__lien, .agte-vis__bandeau .agte-vis__lien { background: rgba(29, 79, 138, 0.07); color: var(--agte-bleu); padding: 0.05rem 0.3rem; text-decoration: none; transition: background-color 0.25s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-vis__pro .agte-vis__lien:hover, .agte-vis__bandeau .agte-vis__lien:hover { background: rgba(29, 79, 138, 0.15); color: var(--agte-bleu); }
	#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:hover,
	#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:hover { background: rgba(29, 79, 138, 0.08); color: var(--agte-marine); }
}
.agte-vis__pro .agte-vis__lien:active, .agte-vis__pro .agte-vis__lien.is-appui,
.agte-vis__bandeau .agte-vis__lien:active, .agte-vis__bandeau .agte-vis__lien.is-appui { background: rgba(29, 79, 138, 0.15); color: var(--agte-bleu); }
.agte-vis__onglet { transition: background-color 0.25s ease, box-shadow 0.2s ease; }
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:active,
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription.is-appui,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:active,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion.is-appui { background: rgba(29, 79, 138, 0.08); }
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription:active,
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription.is-appui,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion:active,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion.is-appui { background: #fff; }
@media (prefers-reduced-motion: reduce) { .agte-vis__pro .agte-vis__lien, .agte-vis__bandeau .agte-vis__lien, .agte-vis__onglet { transition: none; } }
/* Maquette V2 — 2026-10-10 (demande de Yoann) : « Présentez votre profil », « Créer un compte » / « Se connecter » (liens du bas et
   onglets) : ni fond ni contour, seulement un trait sous le texte qui s'allonge légèrement au survol et au toucher (transition
   douce) ; aucun zoom, déplacement ni pulsation. Onglets : trait plein et bleu = onglet sélectionné ; trait court et pâle sinon.
   Repère clavier conservé (contour orange au focus clavier uniquement). */
.agte-vis__pro .agte-vis__lien, .agte-vis__bandeau .agte-vis__lien,
.agte-vis__pro .agte-vis__lien:hover, .agte-vis__bandeau .agte-vis__lien:hover,
.agte-vis__pro .agte-vis__lien:active, .agte-vis__bandeau .agte-vis__lien:active,
.agte-vis__pro .agte-vis__lien.is-appui, .agte-vis__bandeau .agte-vis__lien.is-appui {
	background: linear-gradient(currentColor, currentColor) no-repeat left bottom / 70% 2px;
	border-radius: 0; color: var(--agte-bleu); padding: 0 0 0.15rem; text-decoration: none;
	transition: background-size 0.25s ease;
}
@media (hover: hover) and (pointer: fine) { .agte-vis__pro .agte-vis__lien:hover, .agte-vis__bandeau .agte-vis__lien:hover { background-size: 100% 2px; } }
.agte-vis__pro .agte-vis__lien:active, .agte-vis__bandeau .agte-vis__lien:active, .agte-vis__pro .agte-vis__lien.is-appui, .agte-vis__bandeau .agte-vis__lien.is-appui { background-size: 100% 2px; }
/* Onglets : plus de piste colorée ni de pastille blanche */
.agte-vis__onglets { background: none; gap: 1.4rem; grid-template-columns: auto auto; justify-content: start; padding: 0; }
.agte-vis__onglet, .agte-vis__onglet:hover, .agte-vis__onglet:active, .agte-vis__onglet.is-appui,
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion,
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:hover,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:hover,
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:active,
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription.is-appui,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:active,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion.is-appui,
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription:active,
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription.is-appui,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion:active,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion.is-appui { background: none; box-shadow: none; padding: 0.35rem 0; }
.agte-vis__onglet { color: var(--agte-texte-doux); }
.agte-vis__onglet-texte { background: linear-gradient(#b9c8db, #b9c8db) no-repeat left bottom / 35% 2px; display: inline-block; padding-bottom: 0.35rem; transition: background-size 0.25s ease, color 0.25s ease; }
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion { color: var(--agte-bleu); }
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription .agte-vis__onglet-texte,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion .agte-vis__onglet-texte { background-image: linear-gradient(currentColor, currentColor); background-size: 100% 2px; }
@media (hover: hover) and (pointer: fine) {
	#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:hover .agte-vis__onglet-texte,
	#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:hover .agte-vis__onglet-texte { background-size: 55% 2px; }
}
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:active .agte-vis__onglet-texte,
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription.is-appui .agte-vis__onglet-texte,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:active .agte-vis__onglet-texte,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion.is-appui .agte-vis__onglet-texte { background-size: 55% 2px; }
#agte-vis-onglet-inscription:focus-visible ~ .agte-vis__onglets .agte-vis__onglet--inscription,
#agte-vis-onglet-connexion:focus-visible ~ .agte-vis__onglets .agte-vis__onglet--connexion { border-radius: 4px; outline: 3px solid #fdba74; outline-offset: 2px; }
@media (max-width: 480px) { .agte-vis__onglets { gap: 1rem; } .agte-vis__onglet { padding: 0.35rem 0; } }
@media (prefers-reduced-motion: reduce) { .agte-vis__pro .agte-vis__lien, .agte-vis__bandeau .agte-vis__lien, .agte-vis__onglet-texte { transition: none; } }
/* Maquette V2 — 2026-10-10 (suite) : même trait pour TOUS les liens soulignés de la page (conditions d'utilisation, politique de
   confidentialité, mot de passe oublié…) ; ni fond ni contour ; cases à cocher inchangées ; repère clavier conservé. */
.agte-page .agte-vis__lien, .agte-page .agte-vis__lien:hover, .agte-page .agte-vis__lien:active, .agte-page .agte-vis__lien.is-appui {
	background: linear-gradient(currentColor, currentColor) no-repeat left bottom / 70% 2px;
	border-radius: 0; box-decoration-break: clone; -webkit-box-decoration-break: clone; color: var(--agte-bleu); padding: 0 0 0.15rem; text-decoration: none;
	transition: background-size 0.25s ease;
}
@media (hover: hover) and (pointer: fine) { .agte-page .agte-vis__lien:hover { background-size: 100% 2px; } }
.agte-page .agte-vis__lien:active, .agte-page .agte-vis__lien.is-appui { background-size: 100% 2px; }
.agte-page .agte-vis__lien:focus-visible { border-radius: 3px; outline: 3px solid #fdba74; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .agte-page .agte-vis__lien { transition: none; } }
/* Pas de contour après un clic à la souris ou un toucher ; repère orange réservé au clavier (:focus-visible ci-dessus). */
.agte-page .agte-vis__lien:focus:not(:focus-visible), .agte-vis__onglet-radio:focus:not(:focus-visible) ~ .agte-vis__onglets .agte-vis__onglet { outline: none; }
/* Maquette V2 — 2026-10-10 : sur-titre « Compte visiteur gratuit » plus élégant (taille augmentée conservée : 0,86 rem) —
   fin filet orange devant le texte, orange légèrement adouci, graisse plus légère, lettres plus espacées. */
.agte-vis__sur-titre { align-items: center; color: #b4531b; display: inline-flex; font-size: 0.86rem; font-weight: 700; gap: 0.6rem; letter-spacing: 0.14em; margin: 0 0 0.7rem; }
.agte-vis__sur-titre::before { background: linear-gradient(90deg, #e2733a, #c2410c); border-radius: 2px; content: ""; display: inline-block; flex: none; height: 2px; width: 1.8rem; }
/* Maquette V2 — 2026-10-10 : trait des liens soulignés repris de la référence gtefrance.com (thème Kadence, observé le 2026-10-10 :
   a { text-underline-offset: .1em; transition: all .1s linear } a:hover, a:focus, a:active { text-underline-offset: .25em } +
   changement de couleur). Repris ici sur le TRAIT seulement : le trait descend de 0,1 em à 0,25 em en 0,1 s linéaire et passe
   au bleu foncé du site ; texte, fond et taille inchangés. Remplace l'effet « trait qui s'allonge ». */
.agte-page .agte-vis__lien, .agte-page .agte-vis__lien:hover, .agte-page .agte-vis__lien:active, .agte-page .agte-vis__lien.is-appui, .agte-page .agte-vis__lien:focus {
	background: none; color: var(--agte-bleu); padding: 0;
	text-decoration: underline; text-decoration-color: var(--agte-bleu); text-decoration-thickness: from-font; text-underline-offset: 0.1em;
	transition: text-underline-offset 0.1s linear, text-decoration-color 0.1s linear;
}
@media (hover: hover) and (pointer: fine) { .agte-page .agte-vis__lien:hover { text-decoration-color: var(--agte-marine); text-underline-offset: 0.25em; } }
.agte-page .agte-vis__lien:focus, .agte-page .agte-vis__lien:active, .agte-page .agte-vis__lien.is-appui { text-decoration-color: var(--agte-marine); text-underline-offset: 0.25em; }
/* Onglets : même trait ; l'onglet sélectionné garde un trait bleu plus épais, l'autre un trait pâle */
.agte-vis__onglet-texte, .agte-vis__onglet:hover .agte-vis__onglet-texte, .agte-vis__onglet.is-appui .agte-vis__onglet-texte {
	background: none !important; padding-bottom: 0;
	text-decoration: underline; text-decoration-color: #b9c8db; text-decoration-thickness: 1px; text-underline-offset: 0.1em;
	transition: text-underline-offset 0.1s linear, text-decoration-color 0.1s linear;
}
@media (hover: hover) and (pointer: fine) { .agte-vis__onglet:hover .agte-vis__onglet-texte { text-decoration-color: var(--agte-marine); text-underline-offset: 0.25em; } }
.agte-vis__onglet:active .agte-vis__onglet-texte, .agte-vis__onglet.is-appui .agte-vis__onglet-texte { text-decoration-color: var(--agte-marine); text-underline-offset: 0.25em; }
#agte-vis-onglet-inscription:checked ~ .agte-vis__onglets .agte-vis__onglet--inscription .agte-vis__onglet-texte,
#agte-vis-onglet-connexion:checked ~ .agte-vis__onglets .agte-vis__onglet--connexion .agte-vis__onglet-texte { text-decoration-color: var(--agte-bleu); text-decoration-thickness: 2px; }
@media (prefers-reduced-motion: reduce) { .agte-page .agte-vis__lien, .agte-vis__onglet-texte { transition: none; } }
/* Sur-titre « Compte visiteur gratuit » : pastille sobre dans le style des badges du site (pictogramme, bleu marine sur bleu très clair) */
.agte-vis__sur-titre { align-items: center; background: #eaf1fa; border-radius: 999px; color: var(--agte-marine); display: inline-flex; font-size: 0.86rem; font-weight: 700; gap: 0.45rem; letter-spacing: 0.01em; margin: 0 0 0.9rem; padding: 0.35rem 0.85rem 0.35rem 0.65rem; text-transform: none; }
.agte-vis__sur-titre::before { content: none; }
.agte-vis__sur-titre .agte-icone { color: var(--agte-bleu); flex: none; height: 1rem; width: 1rem; }
/* Onglet non sélectionné : au survol ou au toucher, seul le trait change (texte inchangé). */
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription:hover,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion:hover,
#agte-vis-onglet-inscription:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--inscription.is-appui,
#agte-vis-onglet-connexion:not(:checked) ~ .agte-vis__onglets .agte-vis__onglet--connexion.is-appui { color: var(--agte-texte-doux); }
/* Maquette V2 — 2026-10-10 : badge « Compte visiteur gratuit » en vert doux (vert du site) ; animation du trait réduite d'un cran
   (descente au survol 0,25 em → 0,2 em ; même effet, 0,1 s linéaire, couleur du trait inchangée). */
.agte-vis__sur-titre { background: #e5f3ea; color: #2f7a4f; }
.agte-vis__sur-titre .agte-icone { color: #2f7a4f; }
@media (hover: hover) and (pointer: fine) { .agte-page .agte-vis__lien:hover, .agte-vis__onglet:hover .agte-vis__onglet-texte { text-underline-offset: 0.2em; } }
.agte-page .agte-vis__lien:focus, .agte-page .agte-vis__lien:active, .agte-page .agte-vis__lien.is-appui,
.agte-vis__onglet:active .agte-vis__onglet-texte, .agte-vis__onglet.is-appui .agte-vis__onglet-texte { text-underline-offset: 0.2em; }
/* Maquette V2 — 2026-10-10 : « Accès gratuit à l'annuaire » (remplace « Compte visiteur gratuit ») — petit titre sobre bleu foncé,
   sans badge, fond ni contour ; typographie et espacement accordés au grand titre. */
.agte-vis__sur-titre { background: none; border: 0; border-radius: 0; color: var(--agte-marine); display: block; font-size: 1rem; font-weight: 700; letter-spacing: 0.005em; line-height: 1.3; margin: 0 0 0.55rem; padding: 0; text-transform: none; }
.agte-vis__sur-titre::before { content: none; }
/* Maquette V2 — 2026-10-10 : « Accès gratuit à l'annuaire » en petit cartouche bleu foncé (même famille que le badge
   « Gestionnaire de transport externe » des pages géographiques) : texte blanc, cadenas ouvert discret à gauche, angles
   légèrement arrondis, sans relief ni halo. */
.agte-vis__sur-titre { align-items: center; background: var(--agte-marine); border-radius: 7px; box-shadow: none; color: #fff; display: inline-flex; font-size: 0.84rem; font-weight: 600; gap: 0.5rem; letter-spacing: 0.02em; line-height: 1.2; margin: 0 0 0.85rem; padding: 0.42rem 0.8rem 0.42rem 0.65rem; }
.agte-vis__sur-titre .agte-icone { color: rgba(255, 255, 255, 0.8); flex: none; height: 0.95rem; width: 0.95rem; }
/* 2026-10-10 — Commissionnaire de transport : « Sur devis », note et liens (page dédiée prévue, étude personnalisée) */
.agte-commission__note { border-left: 3px solid #b9a6ea; margin: 0.4rem 0 1rem; max-width: 52rem; padding: 0.35rem 0 0.35rem 0.9rem; }
.agte-commission__note[hidden] { display: none; }
.agte-commission__note p { color: var(--agte-texte); font-size: 0.92rem; line-height: 1.6; margin: 0 0 0.35rem; }
.agte-commission__note strong { color: #5b3fb0; }
.agte-commission__liens { display: flex; flex-wrap: wrap; gap: 0.3rem 1.2rem; margin: 0; }
.agte-commission__liens a { color: var(--agte-bleu); font-size: 0.9rem; font-weight: 600; }
.agte-tarifs__commission { border-top: 1px solid #e6ecf3; margin-top: 0.9rem; padding-top: 0.8rem; }
.agte-tarifs__devis { font-size: 0.92rem; margin: 0.2rem 0 0.4rem; }
.agte-tarifs__devis strong { color: var(--agte-marine); }

/* 2026-10-10 — page fonctionnelle /inscription-visiteur/ (visiteurs.php) : champ piège invisible, erreurs lisibles */
.agte-vis__piege { height: 1px; left: -9999px; overflow: hidden; position: absolute; width: 1px; }
.agte-vis__erreurs { background: #fdf1f0; border-left: 3px solid #b42318; border-radius: 8px; color: #7a1a12; font-size: 0.9rem; margin: 0 0 1.1rem; padding: 0.7rem 0.9rem; }
.agte-vis__erreurs ul { margin: 0; padding-left: 1.1rem; }
.agte-vis button.agte-vis__afficher { background: none; border: 0; cursor: pointer; padding: 0.3rem; }
.agte-vis--connecte { display: block; }

/* 2026-10-11 — sous-filtres d'activité (marchandises : jusqu'à / plus de 3,5 tonnes ; voyageurs : jusqu'à / plus de 9 places),
   style validé sur la Haute-Garonne appliqué PARTOUT (accueil, régions, départements) : options textuelles légères, sans bordure,
   espacées, trait bleu sous l'option sélectionnée, trait bleu doux au survol et au toucher. Fonctionnement inchangé. */
.agte-filtre__sous { gap: 0 1.6rem; margin-top: 0.9rem; padding-left: 0.2rem; }
.agte-filtre__sous::before { content: none; }
.agte-filtre__sous-option,
.agte-filtre__sous-option:hover,
.agte-filtre__sous-option[aria-pressed="true"] {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	color: #5b6b7f;
	cursor: pointer;
	font-size: 0.9rem;
	font-weight: 600;
	padding: 0.35rem 0 0.4rem;
	position: relative;
	transform: none;
}
.agte-filtre__sous-option::after {
	background: var(--agte-bleu);
	border-radius: 2px;
	bottom: 0;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	right: 0;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.2s ease, background-color 0.2s ease;
}
.agte-filtre__sous-option[aria-pressed="true"] { color: var(--agte-bleu); }
.agte-filtre__sous-option[aria-pressed="true"]::after { transform: scaleX(1); }
@media (hover: hover) and (pointer: fine) {
	.agte-filtre__sous-option:hover { color: var(--agte-marine); }
	.agte-filtre__sous-option:not([aria-pressed="true"]):hover::after { background: #c5d6ea; transform: scaleX(1); }
}
.agte-filtre__sous-option.is-appui { color: var(--agte-marine); transform: none; }
.agte-filtre__sous-option.is-appui:not([aria-pressed="true"])::after { background: #c5d6ea; transform: scaleX(1); }
.agte-filtre__sous-option:focus-visible { border-radius: 4px; outline: 3px solid #fdba74; outline-offset: 3px; }
.agte-filtre__sous-option:focus:not(:focus-visible) { outline: none; }
.agte-filtre__sous-option:active { background: transparent; transform: none; }
@media (prefers-reduced-motion: reduce) { .agte-filtre__sous-option::after { transition: none; } }

/* 2026-10-11 — liens « Commissionnaire » : petit pictogramme devant le texte (livre ouvert / bulle de discussion), violet doux de l'activité */
.agte-commission__picto { color: #6b4fc4; display: inline-block; height: 1.05em; margin-right: 0.42em; text-decoration: none; vertical-align: -0.17em; width: 1.05em; }
.agte-commission__picto .agte-icone { display: block; height: 100%; width: 100%; }

/* 2026-10-11 — « Découvrir notre accompagnement » : petite poignée de main devant le texte, partout (accueil, pages
   géographiques, fiches). Même tracé que le pictogramme « poignee » du site (trait 1,8), bleu doux ; lien et effets inchangés. */
a.agte-lien-fleche[href$="/accompagnement/"]::before {
	background: #2c64a6;
	content: "";
	display: inline-block;
	height: 1.1em;
	margin-right: 0.45em;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 17l2 2a1 1 0 1 0 3-3'/%3E%3Cpath d='M14 14l2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'/%3E%3Cpath d='M21 3l1 11h-2'/%3E%3Cpath d='M3 3L2 14l6.5 6.5a1 1 0 1 0 3-3'/%3E%3Cpath d='M3 4h8'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 17l2 2a1 1 0 1 0 3-3'/%3E%3Cpath d='M14 14l2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'/%3E%3Cpath d='M21 3l1 11h-2'/%3E%3Cpath d='M3 3L2 14l6.5 6.5a1 1 0 1 0 3-3'/%3E%3Cpath d='M3 4h8'/%3E%3C/svg%3E") center / contain no-repeat;
	vertical-align: -0.2em;
	width: 1.1em;
}

/* 2026-10-11 — badge « Pourquoi nous recommandons notre annuaire ? » descendu très légèrement : espace au-dessus 1,75 → 2,25 rem (28 → 36 px) */
.agte-badge-centre { margin-top: 2.25rem; }

/* 2026-10-11 — Accueil : encadré « Une demande spécifique ? » sous le badge « Pourquoi nous recommandons notre annuaire ? »,
   avant les avis Google ; centré, largeur de lecture ; style, lien et effets inchangés */
.agte-demande-specifique--accueil { box-sizing: border-box; margin: 1.75rem auto 0; max-width: 40rem; text-align: center; }
.agte-demande-specifique--accueil .agte-demande-specifique__texte { margin-left: auto; margin-right: auto; max-width: 34rem; }
@media (max-width: 480px) { .agte-demande-specifique--accueil { margin-top: 1.4rem; text-align: left; } }

/* 2026-10-11 — Accueil : « Gestionnaires de transport par région et territoire » — liste aérée sur filets fins, nom à gauche,
   compteur discret à droite (chiffres alignés), ligne entière cliquable, teinte bleu très clair au survol ; métropole puis outre-mer
   (intitulés discrets). Sans encadré, flèche ni badge ; couleurs du site. */
.agte-zones { display: grid; gap: 1.6rem; }
.agte-zones__titre { color: var(--agte-texte-doux); font-size: 0.74rem; font-weight: 700; letter-spacing: 0.08em; margin: 0 0 0.35rem; text-transform: uppercase; }
.agte-zones__liste { column-gap: 2.4rem; display: grid; grid-template-columns: 1fr; list-style: none; margin: 0; padding: 0; }
.agte-zones__liste li { border-bottom: 1px solid #e8eef5; margin: 0; }
.agte-zones__lien { align-items: baseline; border-radius: 8px; color: var(--agte-marine); display: flex; gap: 1rem; justify-content: space-between; margin: 0 -0.6rem; padding: 0.72rem 0.6rem; text-decoration: none; transition: background-color 0.2s ease, color 0.2s ease; }
.agte-zones__nom { font-weight: 600; min-width: 0; overflow-wrap: anywhere; }
.agte-zones__nombre { color: var(--agte-texte-doux); flex: none; font-size: 0.82rem; font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
@media (hover: hover) and (pointer: fine) {
	.agte-zones__lien:hover { background: #f3f7fc; color: var(--agte-bleu); }
}
.agte-zones__lien:active { background: #f3f7fc; }
.agte-zones__lien:focus-visible { outline: var(--agte-focus); outline-offset: 2px; }
@media (min-width: 700px) { .agte-zones__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .agte-zones__liste { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (prefers-reduced-motion: reduce) { .agte-zones__lien { transition: none; } }

/* 2026-10-11 — Accueil : « Une demande spécifique ? » allégé — sans encadré ni fond, pictogramme discret (bulle) dans une pastille
   bleu très clair, plus d’air ; texte, bouton « Contactez-nous » et effets du bouton inchangés */
.agte-demande-specifique.agte-demande-specifique--accueil { background: none; border: 0; border-radius: 0; box-shadow: none; margin: 2.4rem auto 0; max-width: 36rem; padding: 0; position: relative; text-align: center; }
.agte-demande-specifique--accueil .agte-demande-specifique__picto { align-items: center; background: #eaf1fa; border-radius: 50%; color: #1d4f8a; display: inline-flex; height: 2.6rem; justify-content: center; margin-bottom: 0.8rem; width: 2.6rem; }
.agte-demande-specifique--accueil .agte-demande-specifique__picto svg { fill: none; height: 1.25rem; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 1.25rem; }
.agte-demande-specifique--accueil .agte-demande-specifique__titre { font-size: 1.15rem; margin-bottom: 0.45rem; }
.agte-demande-specifique--accueil .agte-demande-specifique__texte { color: var(--agte-texte-doux); line-height: 1.65; margin: 0 auto 1.25rem; max-width: 30rem; }
@media (max-width: 480px) {
	.agte-demande-specifique.agte-demande-specifique--accueil { margin-top: 2rem; text-align: center; }
	.agte-demande-specifique--accueil .agte-demande-specifique__bouton { width: auto; }
}
/* 2026-10-11 — illustration « personne au téléphone » à la place de la pastille (même emplacement, au-dessus du titre) */
.agte-demande-specifique--accueil .agte-demande-specifique__illu { display: block; height: auto; margin: 0 auto 0.6rem; width: 6.5rem; }
@media (max-width: 480px) { .agte-demande-specifique--accueil .agte-demande-specifique__illu { width: 5.8rem; } }

/* 2026-10-11 — Accueil, régions et territoires en petites cartes compactes (inspiration : cartes de zones à repère numéroté),
   couleurs de l'annuaire : carte blanche à contour fin, repère en pastille bleu doux, compteur discret à droite, nom en dessous ;
   carte entière cliquable, teinte et contour bleutés au survol ; sans flèche. Métropole puis outre-mer. */
.agte-zones__liste { gap: 0.7rem; grid-template-columns: repeat(auto-fill, minmax(14.5rem, 1fr)); }
@media (min-width: 700px) { .agte-zones__liste { grid-template-columns: repeat(auto-fill, minmax(14.5rem, 1fr)); } }
@media (min-width: 1000px) { .agte-zones__liste { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.agte-zones__liste li { border: 0; }
.agte-zones__lien { background: #fff; border: 1px solid #e5eaf0; border-radius: 12px; box-sizing: border-box; display: flex; flex-direction: column; gap: 0.45rem; height: 100%; justify-content: flex-start; margin: 0; padding: 0.75rem 0.95rem 0.85rem; transition: background-color 0.2s ease, border-color 0.2s ease; }
.agte-zones__tete { align-items: center; display: flex; gap: 0.6rem; justify-content: space-between; }
.agte-zones__repere { background: #eaf1fa; border-radius: 999px; color: #1d4f8a; flex: none; font-size: 0.72rem; font-variant-numeric: tabular-nums; font-weight: 700; letter-spacing: 0.02em; padding: 0.16rem 0.55rem; }
.agte-zones__nombre { font-size: 0.74rem; letter-spacing: 0.01em; }
.agte-zones__nom { font-size: 1rem; line-height: 1.3; }
@media (hover: hover) and (pointer: fine) {
	.agte-zones__lien:hover { background: #f8fbfe; border-color: #9fbbdc; color: var(--agte-bleu); }
}
.agte-zones__lien:active { background: #f8fbfe; border-color: #9fbbdc; }
.agte-zones__lien { align-items: stretch; }
.agte-zones__tete { flex-wrap: wrap; row-gap: 0.3rem; }
@media (max-width: 699px) {
	.agte-zones__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; }
	.agte-zones__lien { padding: 0.65rem 0.75rem 0.75rem; }
	.agte-zones__nom { font-size: 0.92rem; }
	.agte-zones__nombre { font-size: 0.7rem; text-align: left; white-space: normal; }
}

/* 2026-10-11 — Cartes des régions (accueil) : au survol, très léger zoom (1,5 %) et trait bleu de 3 px qui se dessine sur le bord
   supérieur de gauche à droite (0,3 s, comme la référence) ; transitions douces, aucune animation permanente ;
   même trait au clavier ; réduction des animations : ni zoom ni transition. */
.agte-zones__lien { overflow: hidden; position: relative; transition: background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease; }
.agte-zones__lien::before { background: #1d4f8a; content: ""; height: 3px; left: 0; position: absolute; right: 0; top: 0; transform: scaleX(0); transform-origin: left center; transition: transform 0.3s ease; }
@media (hover: hover) and (pointer: fine) {
	.agte-zones__lien:hover { box-shadow: 0 8px 20px rgba(15, 44, 76, 0.07); transform: scale(1.015); }
	.agte-zones__lien:hover::before { transform: scaleX(1); }
}
.agte-zones__lien:focus-visible::before,
.agte-zones__lien:active::before { transform: scaleX(1); }
@media (prefers-reduced-motion: reduce) {
	.agte-zones__lien, .agte-zones__lien::before { transition: none; }
	.agte-zones__lien:hover { transform: none; }
}

/* 2026-10-11 — badges de profil, proposition A retenue par Yoann (/apercu-ecussons/) : pastille teintée compacte sans bordure,
   écusson plein à étoile blanche, libellé court « Vérifié » (doré) / « Connaissances » (violet). Critères inchangés. */
.agte-badge2 { border: 0; border-radius: 999px; gap: 0.3rem; line-height: 1; padding: 0.22rem 0.55rem 0.22rem 0.3rem; white-space: nowrap; }
.agte-badge2--verifie { background: #fbf1d6; color: #8a6410; }
.agte-badge2--connaissances { background: #f1ecfb; color: #5b3fb0; }
.agte-badge2 .agte-ecusson__svg { display: block; flex: none; height: 1.05rem; width: 0.96rem; }
.agte-profil .agte-badges-profil .agte-badge2 { padding: 0.22rem 0.55rem 0.22rem 0.3rem; }
.agte-badges-profil--compact .agte-badge2 { background: none; padding: 0; }
.agte-badges-profil--compact .agte-ecusson__svg { height: 0.95rem; width: 0.87rem; }

/* 2026-10-12 — Menu fixe : les éléments fixés pendant le défilement se placent sous le menu */
@media (min-width: 1000px) { .agte-dept__aside, .agte-fiche__aside, .agte-mer__aside, .agte-insc__aside { top: calc(var(--agte-entete-h, 72px) + 1.5rem); } }
@media (min-width: 900px) { .agte-contact__aside { top: calc(var(--agte-entete-h, 72px) + 1.5rem); } }
@media (max-width: 600px) { .agte-quiz__form .agte-quiz__entete { top: var(--agte-entete-h, 72px); } }

/* 2026-10-12 — Inscription des gestionnaires : la colonne de droite a la même hauteur que le formulaire (ordinateur) */
@media (min-width: 1000px) {
	.agte-insc__aside { align-self: stretch; display: flex; flex-direction: column; }
	.agte-insc__aside > .agte-insc__encadre--mer { flex: 1 1 auto; }
}

/* 2026-10-12 — Formulaire de mise en relation : petit triangle d'attention orange-jaune devant « Tous les champs sont obligatoires, sauf le message. » (sans encadré). */
.agte-mer__intro--attention { align-items: center; display: flex; gap: 0.45rem; }
.agte-mer__attention { flex: none; height: 1rem; width: 1rem; }

/* ===== 2026-10-14 — Repère « Départ » : bouton de retour en haut de page (accueil, mini-route ≥ 1360 px) =====
   Flèche ↑, mention « Haut de page », contour et couleur au survol, sans zoom. Route, camion et style inchangés. */
.agte-camion-repere.agte-haut { align-items: center; cursor: pointer; display: flex; flex-direction: column; font-family: inherit; gap: 0.12rem; line-height: 1.05; padding: 0.3rem 0.45rem 0.28rem; pointer-events: auto; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease; }
.agte-haut__ligne { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.06em; }
.agte-haut__mention { color: var(--agte-texte-doux); font-size: 0.5rem; font-weight: 600; letter-spacing: 0.02em; text-transform: none; }
.agte-camion-repere.agte-haut:hover { background: #eef4fb; border-color: var(--agte-bleu); box-shadow: 0 2px 6px rgba(15, 44, 76, 0.15); color: var(--agte-marine); }
.agte-camion-repere.agte-haut:hover .agte-haut__mention { color: var(--agte-bleu); }
.agte-camion-repere.agte-haut:focus-visible { outline: var(--agte-focus); outline-offset: 3px; }
/* Bouton de secours : mobile, tablette, ou animations réduites (la mini-route n'est alors pas affichée) */
.agte-haut-secours { align-items: center; background: #fff; border: 1px solid #b9cde6; border-radius: 999px; bottom: 16px; box-shadow: 0 4px 12px rgba(15, 44, 76, 0.16); color: var(--agte-bleu); cursor: pointer; display: inline-flex; font-family: inherit; font-size: 0.85rem; font-weight: 600; gap: 0.35rem; left: 16px; min-height: 2.75rem; padding: 0.45rem 0.95rem; position: fixed; transition: background-color 0.15s ease, border-color 0.15s ease; z-index: 45; }
.agte-haut-secours[hidden] { display: none; }
.agte-haut-secours:hover { background: #eef4fb; border-color: var(--agte-bleu); color: var(--agte-marine); }
.agte-haut-secours:focus-visible { outline: var(--agte-focus); outline-offset: 3px; }
@media (min-width: 1360px) and (prefers-reduced-motion: no-preference) { .agte-haut-secours { display: none !important; } }
@media (prefers-reduced-motion: reduce) { .agte-camion-repere.agte-haut, .agte-haut-secours { transition: none; } }/* Ajustement : bouton « Départ » sur deux lignes, coins arrondis, mention lisible, entièrement dans l'écran */
.agte-camion-repere.agte-haut { border-radius: 10px; padding: 0.32rem 0.38rem 0.3rem; transform: translateX(calc(-50% + 5px)); }
.agte-haut__ligne { font-size: 0.62rem; letter-spacing: 0.04em; }
.agte-haut__mention { font-size: 0.6rem; letter-spacing: 0; }

/* 2026-10-14 — Inscription : champ « Photo de profil — facultative » mis en évidence (encadré bleu très clair, recommandation). */
.agte-insc__photo { background: #f3f7fc; border: 1px solid #d6e3f1; border-left: 4px solid var(--agte-bleu); border-radius: 12px; box-sizing: border-box; padding: 0.9rem 1rem 1rem; }
.agte-insc__photo label { color: var(--agte-marine); font-weight: 700; }
.agte-insc__photo-reco { color: var(--agte-marine); display: block; font-size: 0.92rem; line-height: 1.5; margin: 0.2rem 0 0.6rem; }
/* 2026-10-15 — Inscription : petit lien vers les conditions d'utilisation, sous les cases d'accord */
.agte-insc__cgu { color: var(--agte-texte-doux, #4a5a6e); font-size: 0.9rem; margin: 0.3rem 0 0.6rem; }
.agte-insc__cgu a { color: var(--agte-bleu, #1d4f8a); }

/* 2026-10-15 — « Voir tous les GTE » : la liste du panneau ressort au clic (halo orange qui s'estompe), sous le menu fixe */
.agte-panneau__resultats { scroll-margin-top: 6rem; }
.agte-panneau__resultats.is-mise-en-avant { animation: agte-mise-en-avant 2.4s ease-out; border-radius: 12px; }
@keyframes agte-mise-en-avant {
	0%, 35% { background: #fff6ec; box-shadow: 0 0 0 12px #fff6ec, 0 0 0 15px rgba(240, 160, 75, 0.6); }
	100% { background: transparent; box-shadow: 0 0 0 12px rgba(255, 246, 236, 0), 0 0 0 15px rgba(240, 160, 75, 0); }
}
@media (prefers-reduced-motion: reduce) { .agte-panneau__resultats.is-mise-en-avant { animation: none; } }

/* 2026-10-18 (Yoann) — Gratuité de l'inscription des gestionnaires : encadré en haut de la page d'inscription (badge du menu écarté) */
.agte-insc__gratuit { align-items: center; background: #f1f9f4; border: 1px solid #c3e6d0; border-radius: 12px; color: var(--agte-marine, #0f2c4c); display: flex; flex-wrap: wrap; gap: 0.55rem 0.75rem; margin: 0 0 1rem; max-width: 46rem; padding: 0.7rem 1rem; }
.agte-insc__gratuit strong { color: #1c6b3c; }
.agte-insc__gratuit-badge { background: #1c6b3c; border-radius: 999px; color: #fff; flex: none; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.03em; line-height: 1; padding: 0.35rem 0.65rem; text-transform: uppercase; }

/* 2026-10-18 (Yoann) — Accueil : bouton « Pourquoi nous recommandons notre annuaire ? » légèrement plus grand et plus haut */
.home .agte-badge-centre .agte-badge-lien { font-size: 1rem; padding: 0.6rem 1.2rem; }
@media (max-width: 480px) { .home .agte-badge-centre .agte-badge-lien { font-size: 0.88rem; padding: 0.55rem 0.95rem; } }
@media (max-width: 374px) { .home .agte-badge-centre .agte-badge-lien { font-size: 0.82rem; padding: 0.5rem 0.75rem; } }
