/* Polices auto-hébergées (Google Fonts, API CSS2, téléchargées le 10/10/2026) — variables, woff2. */
@font-face{ font-family:'Teko'; font-style:normal; font-weight:300 700; font-display:swap; src:url(../fonts/teko-var-latin-ext.woff2) format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face{ font-family:'Teko'; font-style:normal; font-weight:300 700; font-display:swap; src:url(../fonts/teko-var-latin.woff2) format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face{ font-family:'Labrada'; font-style:normal; font-weight:100 900; font-display:swap; src:url(../fonts/labrada-var-latin-ext.woff2) format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face{ font-family:'Labrada'; font-style:normal; font-weight:100 900; font-display:swap; src:url(../fonts/labrada-var-latin.woff2) format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/*
Theme Name: a66-plaque
Theme URI: https://asac66.fr/
Description: Thème d'Asac66 — rouler, entretenir et transporter sa voiture ancienne. La plaque noire du 66, la corniche, le jaune phare. Feuille assemblée : assets/css/tout.css.
Author: Asac66
Version: 1.0.0
Requires PHP: 7.4
Text Domain: a66-plaque
*/

/*
 * BLOC FIGÉ — ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-article*` /
 * `.cdw-fil-ariane` / `.cdw-a-lire` / `.cdw-carte*` (renommées `.sbt-*` ici).
 * Couleurs/polices/espacements uniquement en `var(--sb-*, repli)` : un site neuf peut
 * utiliser ce fichier tel quel sans avoir encore défini ses propres variables.
 *
 * INTERDIT DE MODIFIER : voir single-article.php (un seul <article>, « à lire aussi »
 * en <div>). LIBRE DE MODIFIER : toutes les valeurs des var() ci-dessous.
 */

.sbt-conteneur{ max-width: var(--sb-conteneur, 1240px); margin-inline: auto; padding-inline: var(--sb-gouttiere, 24px); }

.sbt-fil-ariane{ font-size: .8125rem; color: var(--sb-doux, #55607a); display: flex; gap: 6px; flex-wrap: wrap; padding-block: 16px; }
.sbt-fil-ariane a{ color: var(--sb-doux, #55607a); text-decoration: none; }
.sbt-fil-ariane a:hover{ color: var(--sb-encre, #0f172a); }

.sbt-article-entete{ max-width: var(--sb-lecture, 720px); margin-inline: auto; padding-block: 8px 24px; }
.sbt-article-pastille{
	display: inline-block; background: var(--sb-surf, #f4f5fa); color: var(--sb-encre, #0f172a);
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	text-transform: uppercase; letter-spacing: .04em; padding: 6px 12px; border-radius: 999px; margin-bottom: 16px;
	text-decoration: none;
}
.sbt-article-entete h1{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); line-height: 1.15; margin: 0; }
.sbt-article-chapo{ font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); font-style: italic; font-size: clamp(1.0625rem,1rem + .3vw,1.3125rem); color: var(--sb-doux, #55607a); margin-top: 16px; }
.sbt-article-meta{ display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 20px; font-size: .875rem; color: var(--sb-doux, #55607a); }
.sbt-article-meta img{ width: 32px; height: 32px; border-radius: 50%; object-fit: cover; }
.sbt-article-meta-auteur{ color: inherit; font-weight: 600; text-decoration: none; }

.sbt-article-une{ max-width: var(--sb-conteneur, 1240px); margin: 28px auto 32px; padding-inline: var(--sb-gouttiere, 24px); }
.sbt-article-une-cadre{ aspect-ratio: 2.4 / 1; max-height: min(520px, 46vh); overflow: hidden; /* 01/10 : à 1440×900 le texte passait sous la ligne de flottaison (B-ART-09) */ border-radius: var(--sb-rayon, 14px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-article-une-cadre img{ width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 640px){ .sbt-article-une-cadre{ aspect-ratio: auto; height: 220px; max-height: 220px; } }

/* Grille corps + rail — align-items:start obligatoire pour que le rail sticky
   (cf. partial-sidebar.css) tienne sur toute la hauteur du contenu. */
.sbt-article-mise-en-page{
	display: grid; grid-template-columns: minmax(0, var(--sb-lecture, 720px)) var(--sb-rail, 340px);
	column-gap: var(--sb-gouttiere, 24px); row-gap: var(--sb-gouttiere, 24px);
	max-width: var(--sb-conteneur, 1240px); margin-inline: auto;
	padding: 32px var(--sb-gouttiere, 24px) 64px; align-items: start; justify-content: center;
}
@media (max-width: 1080px){ .sbt-article-mise-en-page{ grid-template-columns: minmax(0,1fr); } .sbt-article-principal, .sbt-rail{ min-width: 0; } }
.sbt-article-mise-en-page--suite{ padding-top: 0; }

.sbt-article-corps{ font-size: 1.0625rem; line-height: 1.7; color: var(--sb-encre, #0f172a); font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); }
.sbt-article-corps h2{ margin-top: 2.2em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps h3{ margin-top: 1.8em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps p{ margin-bottom: 1.3em; }
.sbt-article-corps img{ border-radius: var(--sb-rayon, 14px); margin-block: 1.6em; width: 100%; height: auto; }
.sbt-article-corps blockquote{
	margin: 1.8em 0; padding: 18px 24px; border-left: 4px solid var(--sb-accent, #2563eb);
	background: var(--sb-surf, #f4f5fa); border-radius: 8px; font-style: italic;
}

/* Sommaire replié en accordéon sur mobile uniquement (en desktop, il vit dans le rail —
   cf. partial-sidebar.php / partial-sommaire.php). */
.sbt-sommaire-mobile{ display: none; }
@media (max-width: 1080px){ .sbt-sommaire-mobile{ display: block; margin-bottom: 24px; } }
/* 01/10/2026 (baliturismo, juge visuel) : sous 1080px le rail passe SOUS l'article ; sa carte sommaire
   faisait doublon avec le sommaire mobile de tête (erreur n°6 « sommaire en double »). */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }

/* « À lire aussi » (toujours un <div>, jamais un <article> — cf. single-article.php) */
.sbt-a-lire{ margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-kicker{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .9375rem; font-weight: 700; margin-bottom: 12px; }
.sbt-grille{ display: grid; gap: var(--sb-gouttiere, 24px); }
.sbt-grille--3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 760px){ .sbt-grille--3{ grid-template-columns: 1fr; } }
.sbt-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); overflow: hidden; box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-carte:hover{ transform: translateY(-4px); box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); }
.sbt-carte a{ display: block; color: inherit; text-decoration: none; }
.sbt-carte img{ width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.sbt-carte-corps{ padding: 18px; }
.sbt-carte-corps h3{ margin: 0; font-size: 1.0625rem; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }

.sbt-article-commentaires{ margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--sb-filet, #e2e5ef); }

/* 01/10 (accessoiriste.net) : un seul sommaire visible par largeur — la carte du rail se masque quand l'accordéon mobile s'affiche. */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }
/* 05/10 (operations-digestives, juge visuel) : sous-titres collés au paragraphe suivant (marge basse 0 px mesurée) */
.sbt-article-corps h2{ margin-bottom: .6em; }
.sbt-article-corps h3{ margin-bottom: .45em; }

/*
 * BLOC FIGÉ — BARRE LATÉRALE D'ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-rail` / `.cdw-rail-carte`
 * (lignes ~854-861, renommées `.sbt-rail*` ici) — commentaire garde-fou d'origine
 * CONSERVÉ TEL QUEL ci-dessous (règle la plus importante de ce bloc).
 *
 * Inspiration secondaire documentée (pas copiée en entier) : amatauto.fr fait basculer
 * sa colonne latérale en bloc STATIQUE empilé sous le texte à partir de 1100px
 * (assets/css/v2.css, `.a2-art__cote { position: sticky; ... }` +
 * `@media (max-width: 1100px) { .a2-art__cote { position: static; } }`) — repris ici en
 * option mobile (media query 1080px, cohérente avec le point de rupture de
 * `.sbt-article-mise-en-page` dans single-article.css).
 */

/* Rail sticky — collé à la colonne de texte, séparation par un filet interne, jamais un
   gap blanc entre les deux colonnes. */
.sbt-rail{
	position: sticky; top: 96px; align-self: start;
	display: flex; flex-direction: column; gap: 20px;
	border-left: 1px solid var(--sb-filet, #e2e5ef); padding-left: 20px;
}
/* ⛔ GARDE-FOU (conservé tel quel depuis curieux-du-web.com, retour Mathias ×3) : jamais
   de overflow-y ni de max-height ici — la colonne reste collante et accompagne TOUTE la
   lecture de l'article jusqu'en bas, sans sa propre barre de défilement interne. */
.sbt-rail-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); padding: 18px;
}
.sbt-rail-carte .sbt-t4, .sbt-rail-carte h4{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .875rem;
	text-transform: uppercase; letter-spacing: .04em; color: var(--sb-doux, #55607a); margin: 0 0 10px;
}

/* Option mobile (inspirée d'amatauto.fr, cf. en-tête) : sous 1080px, la grille parente
   passe déjà en une colonne (cf. .sbt-article-mise-en-page dans single-article.css) — le
   rail redevient donc naturellement un bloc statique empilé sous le texte. */
@media (max-width: 1080px){
	.sbt-rail{ position: static; border-left: 0; padding-left: 0; border-top: 1px solid var(--sb-filet, #e2e5ef); padding-top: 20px; }
}

/* Sommaire tel qu'affiché dans le rail (cf. partial-sommaire.css pour le détail des
   classes `.sbt-sommaire*`) : pas de style supplémentaire ici, la carte du rail suffit. */

/*
 * BLOC FIGÉ — SOMMAIRE (thématique) — CSS
 * CSS volontairement simple (voir partial-sommaire.php : la robustesse de ce bloc est
 * dans le PHP — ids séquentiels, exclusion FAQ/Sources, seuil de 3 titres — pas dans son
 * habillage). Inspiré du rendu `<details>` natif de health-nutrition-cambrai.fr
 * (« Bien Vivre Santé »), classes renommées `.sbt-sommaire*`.
 */

.sbt-sommaire{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-left: 4px solid var(--sb-accent, #2563eb); border-radius: var(--sb-rayon, 14px);
	padding: 16px 20px;
}
.sbt-sommaire-titre{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700;
	font-size: .9375rem; cursor: pointer; list-style: none;
}
.sbt-sommaire-titre::-webkit-details-marker{ display: none; }
.sbt-sommaire ol{ list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-sommaire li a{
	display: flex; align-items: baseline; gap: 10px; font-size: .9375rem;
	color: var(--sb-encre, #0f172a); text-decoration: none;
}
.sbt-sommaire li a:hover{ color: var(--sb-accent, #2563eb); text-decoration: underline; }
.sbt-sommaire-num{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	color: var(--sb-encre, #0f172a); background: var(--sb-surf, #f4f5fa); border-radius: 50%;
	width: 20px; height: 20px; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
}

/*
 * BLOC FIGÉ — ENCADRÉS « LE SAVIEZ-VOUS » / « POINTS À RETENIR » (thématique) — CSS
 * Origine : amatauto.fr, assets/css/v2.css, règles `.amat-encadre--retenir` / `.a2-saviez`
 * (renommées `.sbt-encadre--retenir` / `.sbt-encadre--saviez` ici). Habillage simplifié
 * (gradients/decorations ::before retirés pour rester générique et léger), la structure
 * (grille icône + texte pour « le saviez-vous », liste à puces pour « points à retenir »)
 * est conservée.
 */

.sbt-encadre{ margin-block: 2em; border-radius: var(--sb-rayon-grand, 22px); }

.sbt-encadre-titre{
	margin: 0 0 12px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif);
	font-weight: 700; font-size: .8125rem; text-transform: uppercase; letter-spacing: .08em;
}

/* « Points à retenir » — fond foncé, liste à puces check. */
.sbt-encadre--retenir{
	background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff);
	padding: 28px 30px;
}
.sbt-encadre--retenir .sbt-encadre-titre{ color: var(--sb-accent-clair, #93c5fd); }
.sbt-retenir-liste{ list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.sbt-retenir-liste li{
	position: relative; padding-left: 32px; font-size: 1rem; line-height: 1.55;
}
.sbt-retenir-liste li::before{
	content: ""; position: absolute; left: 0; top: .15em; width: 20px; height: 20px; border-radius: 50%;
	background: var(--sb-accent, #2563eb)
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")
		center / 12px no-repeat;
}

/* « Le saviez-vous ? » — encadré clair, icône ampoule. */
.sbt-encadre--saviez{
	display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start;
	padding: 22px 24px; background: var(--sb-surf, #f4f5fa);
}
.sbt-encadre--saviez::before{
	content: "?"; grid-row: 1 / span 2; width: 48px; height: 48px; border-radius: 14px;
	background: var(--sb-accent, #2563eb); color: #fff; display: flex; align-items: center; justify-content: center;
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.375rem;
}
.sbt-encadre--saviez .sbt-encadre-titre{ grid-column: 2; margin: 0; color: var(--sb-encre, #0f172a); }
.sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 2; margin: 0; font-size: 1rem; line-height: 1.6; color: var(--sb-encre, #0f172a); }

@media (max-width: 620px){
	.sbt-encadre--saviez{ grid-template-columns: 1fr; }
	.sbt-encadre--saviez::before{ grid-row: 1; }
	.sbt-encadre--saviez .sbt-encadre-titre, .sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 1; }
}
/* 04/10/2026 (invalidcast.com) : la règle de liste du corps d'article écrasait le retrait → la coche mangeait la 1re lettre. */
.sbt-article-corps .sbt-retenir-liste{ padding: 0; margin: 0; list-style: none; }
.sbt-article-corps .sbt-retenir-liste li{ padding-left: 34px; margin: 0; text-indent: 0; }

/*
 * BLOC FIGÉ — FAQ EN ACCORDÉON (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-faq*` récupérées par
 * un unique curl en lecture seule sur
 * `https://solutionminceur.fr/wp-content/themes/solutionminceur-v2/roxane.css`
 * (fichier CSS distant, absent du mirroir local du chantier — ce curl a RÉUSSI, voir
 * README). Classes renommées `.sbt-faq*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 *
 * Mécanisme accordéon (natif <details>/<summary>, sans JS) : cf. partial-faq.php, origine
 * health-nutrition-cambrai.fr.
 */

.sbt-faq{ margin: 56px 0; padding: 30px; border-radius: var(--sb-rayon-grand, 22px); background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-faq-liste{ display: grid; gap: 10px; }
.sbt-faq-liste details{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef) !important;
	border-radius: 14px; padding: 0 !important; transition: box-shadow .25s ease, border-color .25s ease;
}
.sbt-faq-liste details[open]{ box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); border-color: var(--sb-accent, #2563eb) !important; }
.sbt-faq-liste summary{
	list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center;
	gap: 18px; padding: 18px 20px; font-size: 1.03rem; font-weight: 600; line-height: 1.45; color: var(--sb-encre, #0f172a);
}
.sbt-faq-liste summary::-webkit-details-marker{ display: none; }
.sbt-faq-liste summary::after{
	content: ""; width: 30px; height: 30px; flex: none; border-radius: 50%;
	background: var(--sb-surf, #f4f5fa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 15px no-repeat;
	transition: transform .3s ease;
}
.sbt-faq-liste details[open] summary::after{ transform: rotate(135deg); }
.sbt-faq-liste summary:hover{ color: var(--sb-accent, #2563eb); }
.sbt-faq-reponse{ padding: 0 20px 18px; font-size: .96875rem; line-height: 1.75; color: var(--sb-doux, #55607a); }
.sbt-faq-reponse p{ margin: 0 0 14px; }
.sbt-faq-reponse p:last-child{ margin-bottom: 0; }

@media (max-width: 760px){
	.sbt-faq{ padding: 20px; }
}

/*
 * BLOC FIGÉ — SIGNATURE / BOÎTE AUTEUR (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-auteur*` récupérées
 * par le même curl en lecture seule que partial-faq.css (roxane.css, voir README).
 * Classes renommées `.sbt-auteur*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 */

.sbt-auteur{
	display: grid; grid-template-columns: 120px 1fr; gap: 26px; margin: 54px 0 10px;
	padding: 30px; border-radius: var(--sb-rayon-grand, 22px);
	background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef);
}
.sbt-auteur-photo img{
	width: 120px; height: 120px; border-radius: 50%; object-fit: cover;
	box-shadow: 0 0 0 5px var(--sb-fond-carte, #ffffff), var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
}
.sbt-auteur-sur{ margin: 0 0 2px; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--sb-doux, #55607a); }
.sbt-auteur-nom{ font-size: 1.5rem; margin: 0 0 4px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-auteur-nom a{ color: var(--sb-encre, #0f172a); text-decoration: none; }
.sbt-auteur-nom a:hover{ text-decoration: underline; }
.sbt-auteur-role{ margin: 0 0 12px; font-size: .8125rem; font-weight: 600; color: var(--sb-accent, #2563eb); text-transform: uppercase; letter-spacing: .05em; }
.sbt-auteur-bio{ font-size: .96875rem; line-height: 1.7; color: var(--sb-encre, #0f172a); margin: 0 0 16px; }
.sbt-auteur-chiffres{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.sbt-auteur-chiffres span{ background: var(--sb-fond-carte, #ffffff); border-radius: 12px; padding: 8px 12px; font-size: .78125rem; color: var(--sb-doux, #55607a); }
.sbt-auteur-chiffres b{ color: var(--sb-encre, #0f172a); margin-right: 4px; }
.sbt-auteur-der{ margin-bottom: 18px; }
.sbt-auteur-der p{ margin: 0 0 6px; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--sb-doux, #55607a); }
.sbt-auteur-der a{ display: block; font-size: .9375rem; font-weight: 500; padding: 6px 0; color: var(--sb-encre, #0f172a); text-decoration: none; border-bottom: 1px dashed var(--sb-filet, #e2e5ef); }
.sbt-auteur-der a:hover{ color: var(--sb-accent, #2563eb); }
.sbt-auteur-actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.sbt-auteur-actions .sbt-btn{
	display: inline-block; padding: 10px 18px; border-radius: 999px; font-size: .875rem; font-weight: 600;
	text-decoration: none; background: var(--sb-accent, #2563eb); color: #fff;
}
.sbt-auteur-actions .sbt-btn--fantome{ background: transparent; border: 1.5px solid var(--sb-filet, #e2e5ef); color: var(--sb-encre, #0f172a); }

@media (max-width: 700px){
	.sbt-auteur{ grid-template-columns: 1fr; padding: 22px; }
	.sbt-auteur-photo img{ width: 88px; height: 88px; }
}

/*
 * BLOC FIGÉ — PIED DE PAGE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-footer*` / `.cdw-cookies*` /
 * `.cdw-popup-sortie*` / `.cdw-btn*` (renommées `.sbt-footer*` / `.sbt-cookies*` /
 * `.sbt-popup-sortie*` / `.sbt-btn*` ici).
 */

.sbt-btn{
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 13px 24px; border-radius: 999px; font-weight: 700; font-size: 1rem;
	background: var(--sb-accent, #2563eb); color: #fff; text-decoration: none; border: 0; cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-btn:hover{ transform: translateY(-2px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-btn--petit{ padding: 10px 18px; font-size: .875rem; }
.sbt-btn--fantome{ background: transparent; border: 1.5px solid rgba(255,255,255,.5); color: inherit; }

.sbt-footer{ background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff); padding-block: clamp(40px,6vw,64px) 24px; }
.sbt-footer a{ color: #c4c7e4; text-decoration: none; }
.sbt-footer a:hover{ color: #fff; }

.sbt-footer-cta{
	display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
	padding: 24px 28px; margin-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12);
}
@media (max-width: 600px){ .sbt-footer-cta{ padding: 20px; } } /* 04/10/2026 (invalidcast.com) : texte collé au bord dès qu'un thème donne un fond de carte au bandeau */
.sbt-footer-cta .sbt-t3{ color: #fff; margin: 0 0 4px; font-size: 1.25rem; }
.sbt-footer-cta p{ color: #a9acd0; margin: 0; max-width: 46ch; }

.sbt-footer-grille{ display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 32px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12); }
@media (max-width: 980px){ .sbt-footer-grille{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 560px){ .sbt-footer-grille{ grid-template-columns: 1fr; } }
.sbt-footer-colonne .sbt-t4{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .8125rem; text-transform: uppercase; letter-spacing: .06em; color: #8b8fb5; margin: 0 0 14px; }
.sbt-footer-colonne ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-footer-colonne ul a{ font-size: .875rem; }
.sbt-footer-logo{ display: block; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.125rem; color: #fff; margin-bottom: 14px; }
.sbt-footer-desc{ color: #a9acd0; font-size: .9375rem; margin: 0; max-width: 32ch; }
.sbt-footer-contact{ display: flex; flex-direction: column; gap: 8px; font-size: .875rem; }

.sbt-footer-bas{ padding-top: 20px; font-size: .8125rem; color: #8b8fb5; }

/* Bandeau cookies — deux boutons de MÊME poids (même classe .sbt-btn/.sbt-btn--petit),
   jamais un seul « J'ai compris » qui vaudrait acceptation forcée. */
.sbt-cookies{
	position: fixed; left: 8px; right: 8px; bottom: 8px; z-index: 80;
	background: var(--sb-fonce, #141733); color: #fff; border-radius: 12px;
	padding: 10px 14px; display: none; align-items: center; gap: 12px;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 64px; overflow: hidden;
}
.sbt-cookies.est-visible{ display: flex; }
.sbt-cookies p{ margin: 0; flex: 1; min-width: 0; font-size: .75rem; line-height: 1.3; }
.sbt-cookies-actions{ display: flex; gap: 8px; flex-shrink: 0; }
.sbt-cookies .sbt-btn{ flex-shrink: 0; padding: 8px 14px; min-height: 32px; font-size: .8125rem; }

/* Popup de sortie — jamais de colonne image vide : si pas d'image, la boîte bascule sur
   une seule colonne (cf. .sbt-popup-sortie-boite--sans-image). */
.sbt-popup-sortie{ position: fixed; inset: 0; z-index: 90; display: none; align-items: center; justify-content: center; padding: 20px; }
.sbt-popup-sortie.est-ouvert{ display: flex; }
.sbt-popup-sortie-fond{ position: absolute; inset: 0; background: rgba(15,23,42,.7); }
.sbt-popup-sortie-boite{
	position: relative; z-index: 1; background: var(--sb-fond-carte, #ffffff); border-radius: var(--sb-rayon, 14px);
	max-width: 720px; width: 100%; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 90vh;
}
.sbt-popup-sortie-boite--sans-image{ grid-template-columns: 1fr; max-width: 480px; }
@media (max-width: 640px){ .sbt-popup-sortie-boite{ grid-template-columns: 1fr; max-height: 85vh; overflow-y: auto; } }
.sbt-popup-sortie-image{ min-height: 220px; }
.sbt-popup-sortie-image img{ width: 100%; height: 100%; object-fit: cover; }
.sbt-popup-sortie-texte{ padding: 28px; color: var(--sb-encre, #0f172a); }
.sbt-popup-sortie-fermer{
	position: absolute; top: 12px; right: 12px; z-index: 2; width: 40px; height: 40px; border-radius: 50%;
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	display: flex; align-items: center; justify-content: center; cursor: pointer;
}
.sbt-popup-sortie-fermer svg{ width: 20px; height: 20px; }

/* =====================================================================
   a66-plaque — habillage d'asac66.fr (10/10/2026)
   DA : la plaque noire du 66 (caractères alu, liseré, rivets) · Tramontane / noir plaque /
   jaune phare (l'action) / rouge Vermeille (liens, 2e ton) · Teko + Labrada · mode clair.
   Rayons hiérarchisés : 10 plaques · 18 cartes · 22 formulaire · 32 grands blocs.
   Ombres longues teintées d'encre. Jamais de jaune en texte sur fond clair.
   ===================================================================== */

:root{
	--a66-tramontane:#EEF1F2; --a66-blanc:#FFFFFF; --a66-noir:#17191F; --a66-schiste:#4A5262;
	--a66-jaune:#F2B300; --a66-jaune-fonce:#D99F00; --a66-vermeille:#A3361F; --a66-alu:#C9CED4;
	--a66-jaune-pale:#FFF3CC; --a66-filet:#D9DEE2;
	--a66-titre:'Teko','Arial Narrow',sans-serif; --a66-texte:'Labrada',Georgia,serif;
	--a66-ombre:0 10px 30px rgba(23,25,31,.10); --a66-ombre-longue:0 24px 60px rgba(23,25,31,.28);
	--a66-r-s:10px; --a66-r-m:18px; --a66-r-l:22px; --a66-r-xl:32px;
	--a66-espace:64px; --a66-cont:1240px; --a66-gout:24px; --a66-entete-h:72px;

	/* Jetons des blocs figés (habillage seulement) */
	--sb-fond:#EEF1F2; --sb-carte:#FFFFFF; --sb-encre:#17191F; --sb-encre-2:#4A5262; --sb-accent:#F2B300;
	--sb-accent-encre:#17191F; --sb-lien:#A3361F; --sb-plaque:#17191F; --sb-alu:#C9CED4; --sb-encadre:#FFF3CC; --sb-filet:#D9DEE2;
	--sb-rayon-s:10px; --sb-rayon-m:18px; --sb-rayon-l:22px; --sb-rayon-xl:32px; --sb-espace-section:96px;
	--sb-conteneur:1240px; --sb-lecture:740px; --sb-rail:360px; --sb-gouttiere:24px;
	--sb-doux:#4A5262; --sb-fond-carte:#FFFFFF; --sb-surf:#EEF1F2; --sb-rayon:18px; --sb-rayon-grand:22px;
	--sb-ombre:0 10px 30px rgba(23,25,31,.10); --sb-ombre-forte:0 24px 60px rgba(23,25,31,.28);
	--sb-titre:'Teko','Arial Narrow',sans-serif; --sb-texte:'Labrada',Georgia,serif;
	--sb-fonce:#17191F; --sb-sur-fonce:#FFFFFF; --sb-accent-clair:#F2B300;
}
@media (max-width:760px){ :root{ --a66-espace:56px; --sb-espace-section:56px; --a66-gout:16px; --sb-gouttiere:16px; --a66-entete-h:64px; } }

/* ---------- Base ---------- */
*,*::before,*::after{ box-sizing:border-box; }
[hidden]{ display:none!important; }
html{ -webkit-text-size-adjust:100%; scroll-padding-top:96px; }
html{ background:var(--a66-noir); }
/* 16/10 (retour Mathias, colonne latérale d'article qui ne suit plus) : overflow-x seul (sans overflow-y
   explicite) peut, selon le moteur, faire de body un conteneur de défilement et désarmer position:sticky
   dans la colonne (cf. mémoire overflow-x-hidden-tue-le-collant). overflow-y:visible lève l'ambiguïté. */
body{ margin:0; min-height:100vh; display:flex; flex-direction:column; background:var(--a66-tramontane); color:var(--a66-noir); font-family:var(--a66-texte); font-size:18px; line-height:1.7; font-weight:400; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; overflow-x:clip; overflow-y:visible; }
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--a66-vermeille); text-decoration-thickness:2px; text-underline-offset:3px; }
a:hover{ color:var(--a66-noir); }
:focus-visible{ outline:3px solid var(--a66-jaune); outline-offset:3px; border-radius:4px; }
button,input,select,textarea{ font:inherit; color:inherit; }
h1,h2,h3,h4{ color:var(--a66-noir); margin:0; }
h1,h2{ font-family:var(--a66-titre); font-weight:600; letter-spacing:0; }
h3,h4{ font-family:var(--a66-texte); font-weight:700; }
p{ margin:0 0 1em; }
.screen-reader-text,.a66-sr{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.a66-evitement{ position:absolute; left:16px; top:-60px; z-index:200; background:var(--a66-jaune); color:var(--a66-noir); padding:10px 16px; border-radius:var(--a66-r-s); font-weight:700; }
.a66-evitement:focus{ top:12px; }
.a66-main{ display:block; flex:1 0 auto; }
.sbt-footer{ flex:none; }
.a66-conteneur{ max-width:calc(var(--a66-cont) + 2 * var(--a66-gout)); margin-inline:auto; padding-inline:var(--a66-gout); }

/* ---------- La plaque noire du 66 ---------- */
.a66-plaque{
	position:relative; display:inline-flex; align-items:center; justify-content:center; gap:.42em; margin:0;
	background:var(--a66-noir); color:var(--a66-alu); border-radius:var(--a66-r-s);
	font-family:var(--a66-titre); font-weight:600; line-height:1; letter-spacing:.035em; white-space:nowrap;
	padding:.34em 1.05em .16em; font-variant-numeric:tabular-nums lining-nums;
	box-shadow:inset 0 0 0 4px var(--a66-noir), inset 0 0 0 6px var(--a66-alu), 0 6px 16px rgba(23,25,31,.25);
	text-shadow:0 -1px 0 rgba(0,0,0,.65), 0 1px 0 rgba(255,255,255,.28);
}
.a66-plaque::before,.a66-plaque::after{
	content:""; position:absolute; top:50%; width:5px; height:5px; margin-top:-2.5px; border-radius:50%;
	background:radial-gradient(circle at 35% 35%, #F3F5F7 0 30%, #8E959E 70%); box-shadow:0 1px 1px rgba(0,0,0,.6);
}
.a66-plaque::before{ left:9px; } .a66-plaque::after{ right:9px; }
.a66-plaque-num{ margin-left:.18em; }
.a66-plaque--xs{ font-size:15px; padding:.36em .95em .18em; box-shadow:inset 0 0 0 3px var(--a66-noir), inset 0 0 0 4px var(--a66-alu), 0 4px 10px rgba(23,25,31,.3); }
.a66-plaque--xs::before,.a66-plaque--xs::after{ width:3px; height:3px; margin-top:-1.5px; }
.a66-plaque--xs::before{ left:6px; } .a66-plaque--xs::after{ right:6px; }
.a66-plaque--s{ font-size:20px; }
.a66-plaque--m{ font-size:30px; }
.a66-plaque--l{ font-size:44px; padding:.32em 1em .14em; }
.a66-plaque--xl{ font-size:clamp(84px,9vw,128px); padding:.26em .9em .1em; border-radius:16px; box-shadow:inset 0 0 0 7px var(--a66-noir), inset 0 0 0 10px var(--a66-alu), 0 18px 40px rgba(0,0,0,.45); }
.a66-plaque--xl::before,.a66-plaque--xl::after{ width:10px; height:10px; margin-top:-5px; }
.a66-plaque--xl::before{ left:18px; } .a66-plaque--xl::after{ right:18px; }
.a66-plaque--logo{ font-size:21px; padding:.34em .85em .14em; box-shadow:inset 0 0 0 3px var(--a66-noir), inset 0 0 0 4.5px var(--a66-alu); }
.a66-plaque--logo::before,.a66-plaque--logo::after{ width:3px; height:3px; margin-top:-1.5px; }
.a66-plaque--logo::before{ left:6px; } .a66-plaque--logo::after{ right:6px; }
.a66-plaque--repere{ font-size:46px; min-width:4.6em; padding:.3em .9em .12em; }

/* ---------- Boutons : le jaune phare est l'action ---------- */
.a66-btn,.sbt-btn{
	display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:56px; padding:14px 28px;
	border-radius:14px; border:0; cursor:pointer; text-decoration:none; text-align:center; line-height:1.2;
	font-family:var(--a66-texte); font-weight:700; font-size:18px; letter-spacing:.005em;
	background:var(--a66-jaune); color:var(--a66-noir); box-shadow:0 2px 0 var(--a66-jaune-fonce), 0 10px 22px rgba(242,179,0,.28);
	transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.a66-btn:hover,.sbt-btn:hover{ background:#FFC21A; color:var(--a66-noir); transform:translateY(-2px); box-shadow:0 2px 0 var(--a66-jaune-fonce), 0 14px 28px rgba(242,179,0,.36); }
.a66-btn:active{ transform:translateY(0); }
.a66-btn--plein{ width:100%; }
.a66-btn--large{ min-height:60px; font-size:19px; padding:16px 32px; }
.a66-btn--noir{ background:var(--a66-noir); color:#fff; box-shadow:var(--a66-ombre); }
.a66-btn--noir:hover{ background:#2A2E37; color:#fff; box-shadow:var(--a66-ombre); }
.a66-btn[disabled]{ opacity:.6; cursor:progress; transform:none; }
.sbt-btn--petit{ min-height:48px; padding:12px 22px; font-size:16px; }
.sbt-btn--fantome{ background:transparent; color:inherit; box-shadow:inset 0 0 0 2px currentColor; }
.a66-lien-fort{ font-weight:700; color:var(--a66-vermeille); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:5px; white-space:nowrap; }
.a66-lien-fort--clair{ color:#fff; }
.a66-lien-fort--clair:hover{ color:var(--a66-jaune); }

/* ---------- En-tête du site (collant) + double filet sang et or ---------- */
.a66-entete{ position:sticky; top:0; z-index:60; background:#fff; margin-bottom:4px; box-shadow:0 2px 0 var(--a66-vermeille), 0 4px 0 var(--a66-jaune), 0 10px 24px rgba(23,25,31,.08); }
.admin-bar .a66-entete{ top:32px; }
.a66-entete-barre{ max-width:calc(var(--a66-cont) + 2 * var(--a66-gout)); margin-inline:auto; padding-inline:var(--a66-gout); height:var(--a66-entete-h); display:flex; align-items:center; gap:28px; }
.a66-entete-logo{ text-decoration:none; flex:none; }
.a66-logo{ display:inline-flex; align-items:center; gap:12px; }
.a66-logo-mot{ font-family:var(--a66-titre); font-weight:600; font-size:30px; line-height:1; color:var(--a66-noir); padding-top:4px; }
.a66-logo--sombre .a66-logo-mot{ color:#fff; }
.a66-nav{ flex:1; min-width:0; }
.a66-nav ul{ list-style:none; margin:0; padding:0; display:flex; gap:4px; justify-content:center; flex-wrap:nowrap; }
.a66-nav a{ display:block; padding:10px 12px; font-weight:600; font-size:16px; color:var(--a66-noir); text-decoration:none; border-radius:8px; white-space:nowrap; position:relative; }
.a66-nav a::after{ content:""; position:absolute; left:12px; right:12px; bottom:4px; height:3px; border-radius:2px; background:var(--a66-jaune); transform:scaleX(0); transform-origin:left; transition:transform .2s ease; }
.a66-nav a:hover::after,.a66-nav a[aria-current]::after{ transform:scaleX(1); }
.a66-entete-projet{ min-height:46px; padding:10px 22px; font-size:16px; flex:none; }
.a66-entete-burger{ display:none; align-items:center; gap:8px; min-height:48px; padding:8px 14px; background:var(--a66-noir); color:#fff; border:0; border-radius:12px; font-weight:700; cursor:pointer; }
.a66-nav-mobile{ border-top:1px solid var(--a66-filet); background:#fff; padding:16px var(--a66-gout) 24px; }
.a66-nav-mobile ul{ list-style:none; margin:0 0 16px; padding:0; display:grid; gap:4px; }
.a66-nav-mobile a{ display:flex; justify-content:space-between; align-items:center; min-height:52px; padding:10px 14px; border-radius:12px; background:var(--a66-tramontane); color:var(--a66-noir); font-weight:700; text-decoration:none; }
.a66-nav-mobile-n{ font-family:var(--a66-titre); font-size:20px; color:var(--a66-schiste); }
.a66-nav-mobile .a66-btn{ width:100%; }
@media (max-width:1180px){ .a66-nav a{ padding:10px 8px; font-size:15px; } .a66-nav a::after{ left:8px; right:8px; } .a66-entete-barre{ gap:16px; } }
@media (max-width:1060px){ .a66-nav{ display:none; } .a66-entete-burger{ display:inline-flex; } .a66-entete-barre{ justify-content:space-between; } }
@media (min-width:1061px){ .a66-nav-mobile{ display:none!important; } }
@media (max-width:520px){ .a66-entete-projet{ display:none; } .a66-logo-mot{ font-size:26px; } }

/* ---------- Titres de section ---------- */
.a66-h2{ font-family:var(--a66-titre); font-weight:500; font-size:clamp(36px,3.4vw,46px); line-height:.98; color:var(--a66-noir); padding-top:.08em; }
.a66-h2 .a66-ligne,.a66-h2 .a66-ton2{ display:block; }
.a66-ton2{ color:var(--a66-vermeille); }
.a66-h2--sombre,.a66-h2--photo{ color:#fff; }
.a66-h2--sombre .a66-ton2,.a66-h2--photo .a66-ton2,.a66-h2--photo .a66-ligne--2{ color:var(--a66-jaune); }
.a66-section-tete{ margin-bottom:28px; max-width:760px; }
.a66-section-tete--ligne{ max-width:none; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.a66-section-chapo{ margin:10px 0 0; color:var(--a66-schiste); font-size:18px; }

/* ---------- Sections de l'accueil (4 fonds qui alternent) ---------- */
.a66-section{ position:relative; padding-block:var(--a66-espace); }
.a66-section--tramontane{ background:var(--a66-tramontane); }
.a66-section--blanc{ background:#fff; }
.a66-js .a66-apparait{ opacity:0; transform:translateY(16px); transition:opacity .3s ease, transform .3s ease; }
.a66-js .a66-apparait.est-vu{ opacity:1; transform:none; }

/* ---------- 1. HERO ---------- */
.a66-hero{ padding:0 0 84px; background:var(--a66-tramontane); --a66-hero-h:clamp(520px, calc(100vh - 180px), 620px); }
.a66-hero-photo{ position:relative; height:var(--a66-hero-h); overflow:hidden; border-radius:0 0 40px 40px; background:var(--a66-noir); }
.a66-hero-photo picture,.a66-hero-img{ display:block; width:100%; height:100%; }
.a66-hero-img{ object-fit:cover; object-position:60% 62%; transform-origin:100% 62%; transform:scale(1.1); animation:a66-entree-photo 1.2s ease-out both; }
@keyframes a66-entree-photo{ from{ transform:scale(1.14); } to{ transform:scale(1.1); } }
.a66-hero-voile{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(23,25,31,.62) 0%, rgba(23,25,31,.42) 34%, rgba(23,25,31,0) 62%), linear-gradient(0deg, rgba(23,25,31,.25), rgba(23,25,31,0) 30%); pointer-events:none; }
.a66-hero-grille{
	position:absolute; top:0; left:0; right:0; height:calc(var(--a66-hero-h) + 56px);
	max-width:calc(var(--a66-cont) + 2 * var(--a66-gout)); margin-inline:auto; padding-inline:var(--a66-gout);
	display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:24px;
}
.a66-hero-texte{ grid-column:1 / 8; align-self:center; padding:0 24px 96px 0; color:#fff; }
.a66-hero-titre{ font-family:var(--a66-titre); font-weight:600; font-size:clamp(60px,5.5vw,86px); line-height:.92; color:#fff; margin:0 0 18px; padding-top:.06em; text-shadow:0 2px 24px rgba(0,0,0,.35); }
.a66-hero-titre .a66-ligne{ display:block; }
.a66-hero-titre .a66-ligne--2{ color:var(--a66-jaune); }
.a66-hero-chapo{ font-size:19px; line-height:1.55; max-width:30em; margin:0 0 18px; color:#fff; text-shadow:0 1px 12px rgba(0,0,0,.45); }
.a66-hero-preuves{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px 18px; font-size:15px; font-weight:600; color:#fff; text-shadow:0 1px 10px rgba(0,0,0,.5); }
.a66-hero-preuves li{ display:flex; align-items:center; gap:6px; }
.a66-hero-preuves svg{ width:18px; height:18px; color:var(--a66-jaune); flex:none; }
.a66-hero-mobile-btn{ display:none; }
.a66-hero-form{ grid-column:8 / 13; align-self:end; }
.a66-hero-preuve{ position:absolute; left:var(--a66-gout); bottom:calc(56px - .73em); animation:a66-entree-plaque .5s .1s ease-out both; }
@keyframes a66-entree-plaque{ from{ transform:translateY(12px); opacity:0; } to{ transform:none; opacity:1; } }
.a66-carnet{ position:absolute; z-index:2; right:12px; bottom:12px; max-width:calc(100% - 24px); padding:4px 10px; border-radius:8px; background:rgba(255,255,255,.88); color:var(--a66-noir); font-family:var(--a66-texte); font-weight:500; font-size:13px; line-height:1.35; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; pointer-events:none; }
.a66-carnet--hero{ top:18px; bottom:auto; right:max(18px, calc((100vw - var(--a66-cont)) / 2)); }
.a66-carnet--haut{ top:16px; bottom:auto; }

@media (max-width:1100px){
	.a66-hero-texte{ grid-column:1 / 7; padding-right:0; }
	.a66-hero-form{ grid-column:7 / 13; }
}
@media (max-width:759px){
	.a66-hero{ padding:0 0 8px; }
	.a66-hero-photo{ height:300px; border-radius:0 0 28px 28px; }
	.a66-hero-img{ transform:none; animation:none; object-position:35% 50%; }
	.a66-hero-voile{ background:linear-gradient(0deg, rgba(23,25,31,.3), rgba(23,25,31,0) 40%); }
	.a66-hero-grille{ position:static; height:auto; display:block; padding-top:34px; }
	.a66-hero-texte{ padding:0; color:var(--a66-noir); }
	.a66-hero-titre{ font-size:46px; color:var(--a66-noir); text-shadow:none; margin-bottom:16px; }
	.a66-hero-titre .a66-ligne--2{ color:var(--a66-vermeille); }
	.a66-hero-mobile-btn{ display:flex; width:100%; margin-bottom:18px; }
	.a66-hero-chapo{ color:var(--a66-schiste); text-shadow:none; font-size:17px; }
	.a66-hero-preuves{ color:var(--a66-noir); text-shadow:none; font-size:14px; margin-bottom:24px; }
	.a66-hero-preuves svg{ color:var(--a66-vermeille); }
	.a66-hero-preuve{ position:absolute; top:calc(300px - .73em); bottom:auto; left:16px; font-size:26px; }
	.a66-hero{ position:relative; }
	.a66-carnet--hero{ top:12px; right:12px; }
}
@media (prefers-reduced-motion:reduce){ .a66-hero-img,.a66-hero-preuve{ animation:none!important; } .a66-js .a66-apparait{ opacity:1; transform:none; transition:none; } *{ scroll-behavior:auto!important; } }

/* ---------- Le formulaire « Votre projet » ---------- */
.a66-form-carte{ position:relative; background:#fff; border-radius:var(--a66-r-l); box-shadow:var(--a66-ombre-longue); padding:22px 24px 24px; color:var(--a66-noir); }
.a66-form-carte--hero{ height:min(476px, calc(var(--a66-hero-h, 600px) - 24px)); display:flex; flex-direction:column; }
.a66-form-carte--hero .a66-form{ flex:1; display:flex; flex-direction:column; min-height:0; }
.a66-form-carte--hero .a66-form-etape.est-active{ flex:1; }
.a66-form-carte--hero .a66-form-etape[data-a66-etape="1"] .a66-tuile{ min-height:104px; }
.a66-form-rassure{ display:flex; align-items:center; gap:8px; margin:2px 0 0; font-size:14.5px; font-weight:600; color:var(--a66-schiste); }
.a66-form-rassure svg{ width:18px; height:18px; color:var(--a66-vermeille); flex:none; }
.a66-form-carte--page{ max-width:540px; min-height:476px; display:flex; flex-direction:column; }
.a66-form-carte--page .a66-form{ flex:1; display:flex; flex-direction:column; }
.a66-form-carte--page .a66-form-etape.est-active{ flex:1; }
.a66-form-tete{ display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.a66-form-titre{ flex:1; margin:0; font-family:var(--a66-titre); font-weight:500; font-size:27px; line-height:1; padding-top:4px; }
.a66-form-retour{ flex:none; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; border-radius:12px; border:0; background:var(--a66-tramontane); cursor:pointer; }
.a66-form-retour:hover{ background:var(--a66-filet); }
.a66-form-retour[hidden]{ display:none; }
.a66-form-plaques{ list-style:none; margin:0; padding:0; display:flex; gap:5px; flex:none; }
.a66-form-plaques li{ min-width:30px; height:26px; display:inline-flex; align-items:center; justify-content:center; padding-top:3px; border-radius:6px; background:var(--a66-noir); color:var(--a66-alu); font-family:var(--a66-titre); font-weight:600; font-size:18px; line-height:1; box-shadow:inset 0 0 0 2px var(--a66-noir), inset 0 0 0 3px var(--a66-alu); }
.a66-form-plaques li.est-active,.a66-form-plaques li.est-faite{ background:var(--a66-jaune); color:var(--a66-noir); box-shadow:inset 0 0 0 2px var(--a66-jaune), inset 0 0 0 3px var(--a66-noir); }
.a66-form-plaques li.est-faite{ opacity:.55; }
.a66-form-etape{ border:0; margin:0; padding:0; min-width:0; display:none; flex-direction:column; gap:12px; }
.a66-form-etape.est-active{ display:flex; animation:a66-etape .22s ease-out; }
@keyframes a66-etape{ from{ opacity:0; transform:translateX(10px); } to{ opacity:1; transform:none; } }
.a66-form-etape > .a66-btn{ margin-top:auto; }
.a66-form-question{ padding:0; margin:0 0 2px; font-family:var(--a66-texte); font-weight:700; font-size:19px; line-height:1.3; float:none; width:100%; }
/* 16/10 (retour Mathias, mobile) : 1fr plein (sans minmax) laissait la piste de grille grandir avec le
   mot le plus long (« Transport », « Hivernage ») et déborder du cadre blanc — minmax(0,…) + min-width:0
   en cascade jusqu'au libellé pour que le texte repasse à la ligne au lieu de pousser le cadre. */
.a66-tuiles{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; }
.a66-tuile{ display:flex; align-items:center; gap:12px; min-height:84px; min-width:0; padding:10px 12px 10px 10px; text-align:left; background:var(--a66-tramontane); border:2px solid transparent; border-radius:14px; cursor:pointer; font-weight:700; font-size:15.5px; line-height:1.25; transition:border-color .15s ease, background-color .15s ease, transform .15s ease; }
.a66-tuile:hover{ border-color:var(--a66-noir); transform:translateY(-1px); }
.a66-tuile.est-choisie{ background:#fff; border-color:var(--a66-jaune); box-shadow:0 0 0 2px var(--a66-jaune); }
.a66-tuile-vignette{ flex:none; width:64px; height:64px; border-radius:10px; background:var(--a66-noir) center/cover no-repeat; }
.a66-tuile-nom{ min-width:0; overflow-wrap:break-word; }
.a66-champs{ display:grid; gap:10px; }
.a66-champs--2{ grid-template-columns:1.5fr 1fr; }
.a66-form-etape[data-a66-etape="3"] .a66-champs--2{ grid-template-columns:1fr 1fr; }
.a66-champ{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.a66-champ label{ font-size:14.5px; font-weight:700; line-height:1.2; }
.a66-facultatif{ font-weight:500; color:var(--a66-schiste); font-size:13px; }
.a66-champ input,.a66-champ select,.a66-champ textarea{ width:100%; min-height:52px; padding:12px 14px; border:2px solid var(--a66-filet); border-radius:12px; background:#fff; font-size:17px; line-height:1.3; }
.a66-champ textarea{ min-height:130px; resize:vertical; }
.a66-champ select{ appearance:none; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317191F' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/18px no-repeat; padding-right:42px; }
.a66-champ input:focus,.a66-champ select:focus,.a66-champ textarea:focus{ outline:none; border-color:var(--a66-noir); box-shadow:0 0 0 3px var(--a66-jaune); }
.a66-champ .est-erreur{ border-color:var(--a66-vermeille); }
.a66-champ-unite{ position:relative; display:block; }
.a66-champ-unite span{ position:absolute; right:14px; top:50%; transform:translateY(-50%); font-weight:700; color:var(--a66-schiste); pointer-events:none; }
.a66-champ-unite input{ padding-right:46px; }
.a66-consentement{ display:flex; align-items:flex-start; gap:10px; font-size:15px; line-height:1.35; cursor:pointer; }
.a66-consentement input{ flex:none; width:22px; height:22px; margin:0; accent-color:var(--a66-noir); }
.a66-form-mention{ margin:0; font-size:12.5px; line-height:1.4; color:var(--a66-schiste); }
.a66-form-mention a{ color:var(--a66-vermeille); }
.a66-form-erreur{ margin:10px 0 0; padding:10px 12px; border-radius:10px; background:#FBE9E5; color:var(--a66-vermeille); font-weight:700; font-size:15px; line-height:1.35; }
.a66-form-merci{ text-align:center; padding:28px 8px; display:flex; flex-direction:column; align-items:center; gap:14px; justify-content:center; flex:1; }
.a66-form-merci .a66-form-question{ font-size:24px; }
.a66-form-merci p{ margin:0; }
.a66-form-carte.est-envoye .a66-form{ display:none; }
/* Étape 3 compacte dans le hero : tout tient au-dessus du pli */
.a66-form-carte--hero .a66-form-etape[data-a66-etape="3"]{ gap:10px; }
.a66-form-carte--hero .a66-form-etape[data-a66-etape="3"] .a66-champ input{ min-height:48px; padding:10px 12px; }

/* Mode « rail » (barre latérale d'article) : compact */
.a66-form-carte--rail{ box-shadow:none; padding:0; border-radius:0; background:transparent; }
.a66-form-carte--rail .a66-form-titre{ font-size:24px; }
.a66-form-carte--rail .a66-tuile{ min-height:62px; padding:8px; gap:8px; font-size:14px; }
.a66-form-carte--rail .a66-tuile-vignette{ width:44px; height:44px; }
.a66-form-carte--rail .a66-form-question{ font-size:17px; }
.a66-form-carte--rail .a66-champs--2{ grid-template-columns:1fr 1fr; }
.a66-form-carte--rail .a66-btn{ min-height:54px; }

/* Mode « bande » (bas des rubriques) : 4 tuiles en ligne */
.a66-form-carte--bande{ max-width:980px; margin-inline:auto; }
.a66-form-carte--bande .a66-tuiles{ grid-template-columns:repeat(4, minmax(0,1fr)); }
.a66-form-carte--bande .a66-form-etape > .a66-btn{ align-self:flex-end; width:auto; min-width:260px; }
@media (max-width:860px){ .a66-form-carte--bande .a66-tuiles{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); } .a66-form-carte--bande .a66-form-etape > .a66-btn{ width:100%; } }
@media (max-width:759px){
	.a66-form-carte{ padding:18px 16px 18px; }
	.a66-form-carte--hero,.a66-form-carte--page{ height:auto; min-height:0; }
	.a66-tuile{ min-height:76px; font-size:14.5px; gap:10px; padding:8px; }
	.a66-tuile-vignette{ width:52px; height:52px; }
	.a66-form-titre{ font-size:24px; }
}
@media (max-width:420px){ .a66-champs--2{ grid-template-columns:1fr; } .a66-form-etape[data-a66-etape="3"] .a66-champs--2{ grid-template-columns:1fr; } }

/* ---------- 2. Rubriques en gros plans ---------- */
.a66-bande{ display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); grid-auto-rows:196px; gap:16px; grid-auto-flow:dense; }
.a66-tuile-rub{ position:relative; display:block; overflow:hidden; border-radius:var(--a66-r-m); background:var(--a66-noir); color:#fff; text-decoration:none; box-shadow:var(--a66-ombre); isolation:isolate; }
.a66-tuile-rub--double{ grid-column:span 2; }
.a66-tuile-rub-img,.a66-tuile-rub .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.a66-tuile-rub::after{ content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(23,25,31,.78) 0%, rgba(23,25,31,.1) 55%, rgba(23,25,31,0) 100%); z-index:0; }
.a66-tuile-rub:hover .a66-tuile-rub-img{ transform:scale(1.05); }
.a66-tuile-rub-pied{ position:absolute; z-index:1; left:14px; right:14px; bottom:14px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.a66-tuile-rub-nom{ font-weight:700; font-size:17px; line-height:1.25; text-shadow:0 1px 8px rgba(0,0,0,.5); }
.a66-tuile-rub--double .a66-tuile-rub-nom{ font-family:var(--a66-titre); font-weight:500; font-size:32px; line-height:1; }
.a66-pastille-neuve{ position:absolute; z-index:1; top:14px; left:14px; padding:6px 12px; border-radius:999px; background:var(--a66-jaune); color:var(--a66-noir); font-weight:700; font-size:14px; line-height:1.2; }
@media (max-width:1060px){ .a66-bande{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:759px){ .a66-bande{ grid-template-columns:repeat(2, minmax(0,1fr)); grid-auto-rows:156px; gap:12px; } .a66-tuile-rub-nom{ font-size:15px; } .a66-tuile-rub--double .a66-tuile-rub-nom{ font-size:26px; } }

/* ---------- Cartes d'article ---------- */
.a66-carte{ position:relative; background:#fff; border-radius:var(--a66-r-m); box-shadow:var(--a66-ombre); transition:transform .2s ease, box-shadow .2s ease; min-width:0; }
.a66-carte:hover{ transform:translateY(-3px); box-shadow:0 18px 40px rgba(23,25,31,.16); }
.a66-carte-lien{ display:flex; flex-direction:column; height:100%; color:inherit; text-decoration:none; }
.a66-carte-photo{ position:relative; display:block; aspect-ratio:3 / 2; border-radius:var(--a66-r-m) var(--a66-r-m) 0 0; background:var(--a66-noir); }
.a66-carte-photo > img,.a66-carte-photo > .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.a66-carte-plaque{ position:absolute; z-index:2; left:16px; bottom:0; transform:translateY(50%); }
.a66-carte-photo .a66-carnet{ bottom:auto; top:10px; right:10px; font-size:12.5px; }
.a66-carte-corps{ display:flex; flex-direction:column; gap:8px; padding:24px 18px 16px; flex:1; }
.a66-carte-titre{ font-weight:700; font-size:19px; line-height:1.3; color:var(--a66-noir); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.a66-carte:hover .a66-carte-titre{ text-decoration:underline; text-decoration-color:var(--a66-jaune); text-decoration-thickness:3px; text-underline-offset:4px; }
.a66-carte-extrait{ color:var(--a66-schiste); font-size:16px; line-height:1.5; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.a66-carte-meta{ display:flex; flex-wrap:wrap; gap:4px 14px; margin-top:auto; padding-top:4px; font-size:14px; font-weight:500; color:var(--a66-schiste); }
/* Grande carte (une) : la photo prend la place, jamais de vide */
.a66-carte--une .a66-carte-photo{ aspect-ratio:auto; flex:1; min-height:220px; }
.a66-carte--une .a66-carte-titre{ font-family:var(--a66-titre); font-weight:500; font-size:34px; line-height:1; padding-top:4px; -webkit-line-clamp:2; }
.a66-carte--une .a66-carte-corps{ flex:none; padding:28px 24px 22px; }
/* Carte horizontale */
.a66-carte--horiz .a66-carte-lien{ flex-direction:row; }
.a66-carte--horiz .a66-carte-photo{ aspect-ratio:auto; flex:0 0 42%; border-radius:var(--a66-r-m) 0 0 var(--a66-r-m); min-height:120px; }
.a66-carte--horiz .a66-carte-plaque{ bottom:10px; left:10px; transform:none; }
.a66-carte--horiz .a66-carte-photo .a66-carnet{ display:none; }
.a66-carte--horiz .a66-carte-corps{ padding:16px 18px; justify-content:center; }
.a66-carte--horiz .a66-carte-titre{ font-size:17.5px; }
.a66-carte--horiz .a66-carte-meta{ margin-top:6px; }
/* Carte large (première d'une rubrique) */
.a66-carte--large .a66-carte-lien{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); }
.a66-carte--large .a66-carte-photo{ aspect-ratio:auto; height:clamp(320px, 42vw, 440px); border-radius:var(--a66-r-m) 0 0 var(--a66-r-m); }
.a66-carte--large .a66-carte-plaque{ left:auto; right:0; bottom:28px; transform:translateX(50%); }
.a66-carte--large .a66-carte-corps{ padding:40px 36px 32px 48px; justify-content:center; gap:14px; }
.a66-carte--large .a66-carte-titre{ font-family:var(--a66-titre); font-weight:500; font-size:clamp(32px,3vw,42px); line-height:1; -webkit-line-clamp:3; padding-top:4px; }
.a66-carte--large .a66-carte-meta{ margin-top:8px; }
@media (max-width:860px){
	.a66-carte--large .a66-carte-lien{ grid-template-columns:1fr; }
	.a66-carte--large .a66-carte-photo{ height:auto; aspect-ratio:3 / 2; border-radius:var(--a66-r-m) var(--a66-r-m) 0 0; }
	.a66-carte--large .a66-carte-plaque{ right:auto; left:16px; bottom:0; transform:translateY(50%); }
	.a66-carte--large .a66-carte-corps{ padding:28px 18px 20px; }
}

/* Grilles de cartes */
.a66-grille-cartes{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:24px; }
.a66-grille-cartes--3{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.a66-grille-cartes--2{ grid-template-columns:repeat(2, minmax(0,1fr)); max-width:820px; }
.a66-grille-cartes--1{ grid-template-columns:minmax(0,420px); }
.a66-liste-cartes{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:28px 24px; }
.a66-liste-cartes .est-masquee{ display:none; }
@media (max-width:1060px){ .a66-grille-cartes,.a66-grille-cartes--3{ grid-template-columns:repeat(2, minmax(0,1fr)); } .a66-liste-cartes{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:620px){ .a66-grille-cartes,.a66-grille-cartes--3,.a66-grille-cartes--2,.a66-liste-cartes{ grid-template-columns:1fr; } }
.a66-voir-plus{ display:flex; justify-content:center; margin-top:36px; }

/* ---------- 3. Actualités ---------- */
.a66-actus-grille{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); grid-template-rows:440px; gap:24px; }
.a66-actus-grille--0{ grid-template-columns:1fr; }
.a66-actus-grille--0 .a66-carte--une .a66-carte-lien{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); }
.a66-actus-grille--0 .a66-carte--une .a66-carte-photo{ border-radius:var(--a66-r-m) 0 0 var(--a66-r-m); }
.a66-actus-grille--0 .a66-carte--une .a66-carte-corps{ justify-content:center; }
.a66-actus-pile{ display:flex; flex-direction:column; gap:16px; min-height:0; }
.a66-actus-pile .a66-carte{ flex:1; min-height:0; }
@media (max-width:860px){
	.a66-actus-grille,.a66-actus-grille--0{ grid-template-columns:1fr; grid-template-rows:auto; }
	.a66-actus-grille .a66-carte--une .a66-carte-photo{ flex:none; aspect-ratio:3 / 2; min-height:0; }
	.a66-actus-grille--0 .a66-carte--une .a66-carte-lien{ display:flex; }
	.a66-actus-grille--0 .a66-carte--une .a66-carte-photo{ border-radius:var(--a66-r-m) var(--a66-r-m) 0 0; }
	.a66-carte--une .a66-carte-titre{ font-size:28px; }
}
@media (max-width:480px){ .a66-carte--horiz .a66-carte-photo{ flex-basis:38%; } .a66-carte--horiz .a66-carte-titre{ font-size:16px; } .a66-carte--horiz .a66-carte-min{ display:none; } }

/* ---------- 4. Outil « Permis B, B96 ou BE ? » ---------- */
.a66-outil{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:48px; align-items:center; padding:48px 56px; border-radius:var(--a66-r-xl); background:var(--a66-noir); color:#fff; box-shadow:var(--a66-ombre-longue); }
.a66-outil-chapo{ color:#D5D9DE; margin:14px 0 22px; font-size:17px; line-height:1.6; max-width:38em; }
.a66-outil-champs{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; }
.a66-champ--sombre label{ color:#fff; font-size:14.5px; min-height:2.4em; display:flex; align-items:flex-end; }
.a66-champ--sombre .a66-facultatif{ color:var(--a66-alu); margin-left:4px; }
.a66-champ--sombre input{ background:#fff; border-color:#fff; font-size:20px; font-weight:700; }
.a66-outil-prudence{ margin:14px 0 0; font-size:14.5px; color:var(--a66-alu); }
.a66-outil-resultat{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:16px; }
.a66-outil-resultat-tete{ margin:0; font-weight:700; color:var(--a66-alu); font-size:16px; }
.a66-outil-plaque{ min-width:3.1em; }
.a66-outil-plaque .a66-plaque-num{ font-size:.42em; margin-left:.3em; align-self:flex-end; margin-bottom:.12em; }
.a66-outil-plaque.est-calcule{ background:var(--a66-jaune); color:var(--a66-noir); text-shadow:0 1px 0 rgba(255,255,255,.4); box-shadow:inset 0 0 0 7px var(--a66-jaune), inset 0 0 0 10px var(--a66-noir), 0 18px 40px rgba(242,179,0,.25); }
.a66-outil-plaque.est-long{ font-size:clamp(48px,5vw,64px); }
.a66-outil-phrase{ margin:0; font-size:17px; line-height:1.5; max-width:26em; color:#fff; min-height:3em; }
.a66-outil-aide{ margin:0; font-size:15px; color:var(--a66-alu); max-width:26em; }
.a66-outil-actions{ display:flex; flex-direction:column; align-items:center; gap:12px; }
@media (max-width:1060px){ .a66-outil{ grid-template-columns:1fr; gap:32px; padding:36px 28px; } .a66-outil-champs{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:640px){ .a66-outil{ padding:28px 18px; border-radius:24px; } .a66-outil-champs{ grid-template-columns:1fr; } .a66-champ--sombre label{ min-height:0; } .a66-outil .a66-btn{ width:100%; } }

/* ---------- 5. La corniche ---------- */
.a66-corniche{ padding:0 0 var(--a66-espace); background:var(--a66-tramontane); }
.a66-corniche-photo{ position:relative; height:400px; overflow:hidden; background:var(--a66-noir); }
.a66-corniche-img,.a66-corniche-photo > .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 45%; }
.a66-corniche-voile{ position:absolute; inset:0; background:linear-gradient(100deg, rgba(23,25,31,.66) 0%, rgba(23,25,31,.3) 40%, rgba(23,25,31,0) 64%); }
.a66-corniche-texte{ position:relative; z-index:1; padding-top:56px; display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.a66-corniche-texte .a66-h2{ font-size:clamp(40px,4vw,56px); text-shadow:0 2px 20px rgba(0,0,0,.4); }
.a66-corniche-cartes{ position:relative; z-index:2; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; margin-top:-176px; }
.a66-corniche-cartes .a66-carte{ box-shadow:var(--a66-ombre-longue); }
.a66-corniche-cartes--1{ grid-template-columns:minmax(0,420px); }
.a66-corniche-cartes--2{ grid-template-columns:repeat(2, minmax(0,1fr)); max-width:840px; }
@media (max-width:860px){ .a66-corniche-photo{ height:340px; } .a66-corniche-cartes{ grid-template-columns:1fr; margin-top:-90px; } .a66-corniche-cartes--2{ grid-template-columns:1fr; } }

/* ---------- 6. Entretien + repères chiffrés au format plaque ---------- */
.a66-reperes{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; margin-top:32px; }
.a66-repere{ display:flex; align-items:center; gap:16px; min-width:0; }
.a66-repere .a66-plaque--repere{ flex:none; font-size:38px; min-width:4.2em; }
.a66-repere-txt{ margin:0; font-size:15px; line-height:1.45; }
.a66-repere-src{ display:block; color:var(--a66-schiste); font-size:13.5px; margin-top:2px; }
@media (max-width:1180px){ .a66-reperes{ grid-template-columns:1fr; max-width:640px; gap:16px; } }
@media (max-width:480px){ .a66-repere{ flex-direction:column; align-items:flex-start; gap:10px; } }

/* ---------- 7. Youngtimers ---------- */
.a66-yt-grille{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:48px; align-items:center; }
.a66-yt-texte .a66-plaque{ margin-bottom:18px; }
.a66-yt-texte .a66-h2{ margin-bottom:18px; }
.a66-yt-texte p{ color:var(--a66-schiste); margin-bottom:24px; }
.a66-yt-cartes{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:24px; }
.a66-yt-grille--3{ grid-template-columns:minmax(0,4fr) minmax(0,8fr); }
.a66-yt-grille--3 .a66-yt-cartes{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.a66-yt-grille--1 .a66-yt-cartes{ grid-template-columns:minmax(0,420px); }
@media (max-width:960px){ .a66-yt-grille,.a66-yt-grille--3{ grid-template-columns:1fr; gap:32px; } }
@media (max-width:620px){ .a66-yt-cartes,.a66-yt-grille--3 .a66-yt-cartes{ grid-template-columns:1fr; } }

/* ---------- 8. Votre projet (grande carte jaune pâle) ---------- */
.a66-projet-carte{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:0; background:var(--a66-jaune-pale); border-radius:var(--a66-r-xl); overflow:hidden; box-shadow:var(--a66-ombre); }
.a66-projet-photo{ position:relative; min-height:420px; background:var(--a66-noir); }
.a66-projet-img,.a66-projet-photo > .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.a66-projet-plaque{ position:absolute; left:20px; bottom:20px; }
.a66-projet-corps{ padding:44px 48px; display:flex; flex-direction:column; justify-content:center; }
.a66-projet-chapo{ margin:14px 0 22px; font-size:17.5px; color:var(--a66-noir); }
.a66-projet-tuiles{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.a66-projet-tuile{ display:flex; align-items:center; gap:14px; min-height:84px; padding:10px 16px 10px 10px; border-radius:16px; background:#fff; color:var(--a66-noir); text-decoration:none; font-weight:700; font-size:16.5px; line-height:1.25; box-shadow:0 2px 0 rgba(23,25,31,.06); border:2px solid transparent; transition:border-color .15s ease, transform .15s ease; }
.a66-projet-tuile:hover{ border-color:var(--a66-noir); transform:translateY(-2px); color:var(--a66-noir); }
.a66-projet-tuile svg{ margin-left:auto; flex:none; width:22px; height:22px; color:var(--a66-vermeille); }
.a66-projet-vignette{ flex:none; width:64px; height:64px; border-radius:12px; background:var(--a66-noir) center/cover no-repeat; }
.a66-projet-preuve{ margin:18px 0 0; font-size:15px; color:var(--a66-schiste); font-weight:600; }
.a66-projet{ padding-bottom:calc(var(--a66-espace) + 24px); }
@media (max-width:960px){ .a66-projet-carte{ grid-template-columns:1fr; } .a66-projet-photo{ min-height:240px; } .a66-projet-corps{ padding:32px 24px; } }
@media (max-width:560px){ .a66-projet-tuiles{ grid-template-columns:1fr; } }

/* ---------- Repli d'une photo manquante (noir plaque + plaque) ---------- */
.a66-repli{ display:flex; align-items:center; justify-content:center; background:radial-gradient(circle at 30% 20%, #2A2E37, var(--a66-noir) 70%); }

/* =====================================================================
   PAGES INTÉRIEURES
   ===================================================================== */

/* Fil d'Ariane */
.a66-ariane,.sbt-fil-ariane{ display:flex; flex-wrap:wrap; gap:6px; font-size:14px; color:var(--a66-schiste); padding:0; margin:0 0 18px; }
.a66-ariane a,.sbt-fil-ariane a{ color:var(--a66-schiste); text-decoration:none; }
.a66-ariane a:hover,.sbt-fil-ariane a:hover{ color:var(--a66-noir); text-decoration:underline; }
.sbt-fil-ariane > span:last-child{ max-width:40ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* ---------- Rubrique : bandeau photo + grande plaque compteur ---------- */
.a66-rub-bandeau{ position:relative; height:420px; background:var(--a66-noir); }
.a66-rub-bandeau-img,.a66-rub-bandeau > .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.a66-rub-bandeau::after{ content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(23,25,31,.35), rgba(23,25,31,0) 45%), linear-gradient(180deg, rgba(23,25,31,.35), rgba(23,25,31,0) 30%); pointer-events:none; }
.a66-rub-bandeau .a66-conteneur{ position:relative; height:100%; z-index:2; }
.a66-rub-bandeau .a66-ariane{ position:absolute; top:22px; left:var(--a66-gout); color:#fff; margin:0; }
.a66-rub-bandeau .a66-ariane a{ color:#fff; }
.a66-rub-plaque{ position:absolute; left:var(--a66-gout); bottom:0; transform:translateY(50%); font-size:clamp(40px,5vw,70px); max-width:calc(100% - 2 * var(--a66-gout)); white-space:normal; text-align:left; }
.a66-rub-plaque .a66-plaque-num{ color:var(--a66-jaune); }
.a66-rub-intro{ padding-top:calc(var(--a66-espace) + 8px); }
.a66-rub-intro h1{ font-family:var(--a66-titre); font-weight:600; font-size:clamp(40px,4.4vw,60px); line-height:.95; padding-top:.06em; margin:0 0 12px; }
.a66-rub-chapo{ max-width:46em; color:var(--a66-schiste); font-size:18px; margin:0 0 20px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.a66-pastilles{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 32px; padding:0; list-style:none; }
.a66-pastilles a{ display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 16px; border-radius:999px; background:#fff; color:var(--a66-noir); text-decoration:none; font-weight:600; font-size:15.5px; box-shadow:inset 0 0 0 1.5px var(--a66-filet); }
.a66-pastilles a:hover{ box-shadow:inset 0 0 0 2px var(--a66-noir); }
.a66-pastilles a[aria-current]{ background:var(--a66-noir); color:#fff; box-shadow:none; }
.a66-pastilles .a66-pastille-n{ font-family:var(--a66-titre); font-size:18px; line-height:1; padding-top:2px; color:inherit; opacity:.7; }
.a66-rub-liste{ padding-bottom:var(--a66-espace); }
.a66-rub-liste .a66-carte--large{ margin-bottom:36px; }
.a66-bande-projet{ background:var(--a66-tramontane); padding:0 0 calc(var(--a66-espace) + 16px); }
.a66-bande-projet-bloc{ background:var(--a66-noir); border-radius:var(--a66-r-xl); padding:48px clamp(18px,4vw,56px); box-shadow:var(--a66-ombre-longue); }
.a66-bande-projet-tete{ text-align:center; margin:0 auto 28px; max-width:720px; }
.a66-bande-projet-tete p{ color:#D5D9DE; margin:12px 0 0; }
.a66-bande-projet + .a66-fin-espace{ display:none; }
@media (max-width:759px){ .a66-rub-bandeau{ height:260px; } .a66-rub-plaque{ font-size:30px; } }

/* En-tête simple (archives, recherche, auteur, pages) */
.a66-page-tete{ background:var(--a66-tramontane); padding:40px 0 36px; }
.a66-page-tete h1{ font-family:var(--a66-titre); font-weight:600; font-size:clamp(40px,4.6vw,64px); line-height:.95; padding-top:.06em; margin:14px 0 10px; }
.a66-page-tete h1 .a66-ligne--2{ display:block; color:var(--a66-vermeille); }
.a66-page-tete p{ color:var(--a66-schiste); max-width:46em; margin:0; }
.a66-page-liste{ padding:12px 0 var(--a66-espace); }
.a66-vide{ background:#fff; border-radius:var(--a66-r-l); padding:40px; text-align:center; box-shadow:var(--a66-ombre); }

/* ---------- Article : en-tête bande Tramontane + photo qui tient sa moitié ---------- */
.a66-art-bande{ position:relative; background:var(--a66-tramontane); padding:28px 0 36px; box-shadow:0 2px 0 var(--a66-vermeille), 0 4px 0 var(--a66-jaune); }
.a66-art-grille{ display:grid; grid-template-columns:minmax(0, var(--sb-lecture)) var(--sb-rail); column-gap:56px; max-width:var(--sb-conteneur); margin-inline:auto; padding-inline:var(--a66-gout); justify-content:center; align-items:start; }
.a66-art-entete{ grid-column:1; min-width:0; }
.a66-art-entete .a66-plaque{ margin-bottom:18px; text-decoration:none; }
.a66-art-entete h1{ font-family:var(--a66-titre); font-weight:600; font-size:clamp(40px,4.4vw,64px); line-height:.96; padding-top:.06em; margin:0 0 16px; text-wrap:balance; }
.a66-art-chapo{ font-size:20px; line-height:1.55; color:var(--a66-schiste); margin:0 0 20px; max-width:38em; }
.a66-art-auteur{ display:flex; align-items:center; gap:14px; }
.a66-art-auteur img{ flex:none; }
.a66-art-auteur-txt{ min-width:0; }
.a66-art-auteur img{ width:44px; height:44px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 3px var(--a66-jaune); background:#fff; }
.a66-art-auteur-txt{ display:flex; flex-direction:column; font-size:15px; line-height:1.4; }
.a66-art-auteur-nom{ font-weight:700; color:var(--a66-noir); text-decoration:none; }
.a66-art-auteur-nom:hover{ text-decoration:underline; }
.a66-art-auteur-dates{ color:var(--a66-schiste); }
.a66-art-fond{ background:#fff; }
.a66-article .sbt-article-mise-en-page{ grid-template-columns:minmax(0, var(--sb-lecture)) var(--sb-rail); column-gap:56px; padding:0 var(--a66-gout) 72px; position:relative; z-index:2; }
.a66-une{ position:relative; margin:0 0 40px; }
.a66-une-cadre{ position:relative; aspect-ratio:16 / 9; max-height:min(470px, 56vh); width:100%; border-radius:20px; overflow:hidden; box-shadow:var(--a66-ombre-longue); background:var(--a66-noir); }
.a66-une-cadre img,.a66-une-cadre .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.a66-une .a66-carnet{ right:14px; bottom:14px; }
.a66-une-plaque{ position:absolute; z-index:3; left:20px; bottom:0; transform:translateY(50%); text-decoration:none; }
.a66-article .sbt-rail{ margin-top:0; }
/* 16/10 (retour Mathias, hero déséquilibré) : la photo occupe la colonne 2 de la bande, à côté du titre —
   recadrage portrait pour que sa hauteur tienne la comparaison avec le bloc de texte, au lieu d'un format
   16:9 large et court qui aurait laissé un reste de bande grise vide sous elle. */
.a66-art-photo{ grid-column:2; grid-row:1; margin:0; }
@media (min-width:1081px){ .a66-art-photo .a66-une-cadre{ aspect-ratio:3 / 4; max-height:460px; } }
@media (max-width:1080px){
	.a66-art-grille,.a66-article .sbt-article-mise-en-page{ grid-template-columns:minmax(0,1fr); }
	.a66-article .sbt-rail{ max-width:560px; }
	.a66-art-bande{ padding-bottom:28px; }
	/* grille à 1 colonne : la photo s'empile simplement après le titre (format repris du bloc figé, 640px plus bas). */
	.a66-art-photo{ grid-column:1; margin:8px 0 0; }
}
@media (max-width:640px){
	.a66-art-bande{ padding-top:18px; }
	.a66-art-entete h1{ font-size:40px; }
	.a66-art-chapo{ font-size:18px; }
	.a66-une-cadre{ aspect-ratio:4 / 3; border-radius:16px; }
	.a66-une-plaque{ left:12px; }
	/* 16/10 (retour Mathias) : le fil d'Ariane colle au texte qui suit sur mobile (le libellé de page
	   renvoyé à la ligne par le flex-wrap touche presque la plaque/h1 en dessous) — marge dédiée. */
	.a66-ariane,.sbt-fil-ariane{ margin-bottom:26px; row-gap:4px; }
}

/* Corps d'article (bloc figé, habillage) */
.sbt-article-corps{ font-family:var(--a66-texte); font-size:18px; line-height:1.7; color:var(--a66-noir); overflow-wrap:break-word; }
.sbt-article-corps > p:first-child::first-letter{ float:none; font-size:inherit; }
.sbt-article-corps a{ color:var(--a66-vermeille); text-decoration:underline; text-decoration-thickness:2px; }
.sbt-article-corps h2{ font-family:var(--a66-titre); font-weight:500; font-size:40px; line-height:1; margin:1.6em 0 .55em; padding-top:.06em; }
.sbt-article-corps h2::before{ content:""; display:block; width:32px; height:4px; margin-bottom:14px; border-radius:2px; background:var(--a66-jaune); }
.sbt-article-corps h3{ font-family:var(--a66-texte); font-weight:700; font-size:22px; line-height:1.3; margin:1.5em 0 .45em; }
.sbt-article-corps img{ border-radius:var(--a66-r-m); }
.sbt-article-corps figure{ margin:1.8em 0; }
.sbt-article-corps figcaption{ font-size:14px; color:var(--a66-schiste); margin-top:8px; }
.sbt-article-corps blockquote{ margin:1.8em 0; padding:20px 24px; border-left:4px solid var(--a66-vermeille); background:var(--a66-tramontane); border-radius:0 var(--a66-r-m) var(--a66-r-m) 0; font-style:normal; }
.sbt-article-corps strong{ font-weight:700; }
@media (max-width:640px){ .sbt-article-corps h2{ font-size:34px; } .sbt-article-corps{ font-size:17.5px; } }

/* Listes du contenu → cartes / étapes (jamais de puces) */
.sbt-article-corps .a66-cartes-liste,.a66-page-corps .a66-cartes-liste{ list-style:none; margin:1.4em 0 1.8em; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; }
.a66-cartes-liste--2{ grid-template-columns:repeat(2, minmax(0,1fr))!important; }
.a66-cartes-liste--1{ grid-template-columns:1fr!important; }
.a66-cartes-liste li{ position:relative; margin:0; padding:16px 16px 16px 46px; background:var(--a66-tramontane); border-radius:14px; font-size:16.5px; line-height:1.5; }
.a66-cartes-liste li::before{ content:""; position:absolute; left:16px; top:20px; width:16px; height:10px; border-radius:3px; background:var(--a66-noir); box-shadow:inset 0 0 0 1.5px var(--a66-noir), inset 0 0 0 2.5px var(--a66-alu); }
.sbt-article-corps .a66-etapes,.a66-page-corps .a66-etapes{ list-style:none; counter-reset:a66e; margin:1.4em 0 1.8em; padding:0; display:grid; gap:12px; }
.a66-etapes > li{ counter-increment:a66e; position:relative; margin:0; padding:16px 18px 16px 74px; min-height:64px; background:#fff; border:1.5px solid var(--a66-filet); border-radius:14px; line-height:1.55; }
.a66-etapes > li::before{ content:counter(a66e); position:absolute; left:14px; top:14px; width:44px; height:34px; display:flex; align-items:center; justify-content:center; padding-top:4px; border-radius:7px; background:var(--a66-noir); color:var(--a66-alu); font-family:var(--a66-titre); font-weight:600; font-size:24px; line-height:1; box-shadow:inset 0 0 0 2px var(--a66-noir), inset 0 0 0 3px var(--a66-alu); }
.a66-liste-imbriquee{ padding-left:1.2em; }
.a66-liste-imbriquee li{ margin:.3em 0; }
@media (max-width:760px){ .sbt-article-corps .a66-cartes-liste,.a66-page-corps .a66-cartes-liste{ grid-template-columns:1fr; } .a66-cartes-liste--2{ grid-template-columns:1fr!important; } }

/* Tableaux → fiches */
.a66-fiche{ margin:1.6em 0 2em; }
.a66-fiche-titre{ font-weight:700; margin:0 0 10px; }
.a66-fiche--simple .a66-fiche-lignes{ background:var(--a66-tramontane); border-radius:var(--a66-r-m); padding:6px 18px; }
.a66-fiche-ligne{ display:flex; justify-content:space-between; gap:16px; padding:12px 0; border-bottom:1px dashed #BFC6CD; font-size:16.5px; line-height:1.45; }
.a66-fiche-ligne:last-child{ border-bottom:0; }
.a66-fiche-l{ color:var(--a66-schiste); flex:1 1 45%; }
.a66-fiche-v{ font-weight:700; text-align:right; flex:1 1 55%; }
.a66-fiche-nr{ font-weight:500; color:var(--a66-schiste); }
.a66-fiche-section{ margin:12px 0 4px; font-weight:700; font-family:var(--a66-titre); font-size:22px; }
.a66-fiche-grille{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
.a66-fiche-grille--une{ grid-template-columns:1fr; }
.a66-fiche-carte{ background:#fff; border:1.5px solid var(--a66-filet); border-radius:var(--a66-r-m); padding:16px 18px 6px; }
.a66-fiche-tete{ margin:0 0 6px; font-weight:700; font-size:18px; line-height:1.3; }
.a66-fiche-tete small{ display:block; font-size:13px; font-weight:500; color:var(--a66-schiste); }
.a66-tableau,.sbs_tableau{ overflow-x:auto; max-width:100%; }
@media (max-width:640px){ .a66-fiche-grille{ grid-template-columns:1fr; } .a66-fiche-ligne{ flex-direction:column; gap:2px; } .a66-fiche-v{ text-align:left; } }

/* Sources : encadré repliable */
.a66-sources{ margin:2.4em 0 1em; background:var(--a66-tramontane); border-radius:var(--a66-r-m); border-left:4px solid var(--a66-noir); }
.a66-sources summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; min-height:56px; }
.a66-sources summary::-webkit-details-marker{ display:none; }
.a66-sources-titre{ font-family:var(--a66-titre); font-weight:500; font-size:26px; line-height:1; padding-top:4px; }
.a66-sources-compte{ display:inline-flex; align-items:center; gap:8px; font-size:14.5px; font-weight:700; color:var(--a66-vermeille); }
.a66-sources-compte::after{ content:""; width:12px; height:12px; border-right:2.5px solid currentColor; border-bottom:2.5px solid currentColor; transform:rotate(45deg) translate(-2px,-2px); transition:transform .2s ease; }
.a66-sources[open] .a66-sources-compte::after{ transform:rotate(-135deg) translate(-2px,-2px); }
.a66-sources-corps{ padding:0 20px 18px; font-size:15.5px; line-height:1.55; }
.a66-sources-liste{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.a66-sources-liste li{ padding-left:18px; position:relative; }
.a66-sources-liste li::before{ content:""; position:absolute; left:0; top:.6em; width:8px; height:3px; background:var(--a66-vermeille); border-radius:2px; }

/* Encadrés (bloc figé) — habillage DA */
.sbt-encadre{ border-radius:var(--a66-r-m); }
.sbt-encadre-titre{ font-family:var(--a66-titre); font-weight:500; font-size:24px; letter-spacing:0; text-transform:none; line-height:1; padding-top:4px; }
.sbt-encadre--retenir{ background:var(--a66-noir); color:#fff; padding:26px 28px; }
.sbt-encadre--retenir .sbt-encadre-titre{ color:var(--a66-jaune); }
.sbt-encadre--retenir p:not(.sbt-encadre-titre){ color:#E7EAED; margin:0; }
.sbt-retenir-liste li{ color:#E7EAED; }
.sbt-retenir-liste li::before{ background:var(--a66-jaune) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317191F' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 12px no-repeat; }
.sbt-encadre--saviez{ background:var(--a66-jaune-pale); border-left:4px solid var(--a66-vermeille); border-radius:0 var(--a66-r-m) var(--a66-r-m) 0; }
.sbt-encadre--saviez::before{ background:var(--a66-noir); color:var(--a66-jaune); font-family:var(--a66-titre); border-radius:10px; padding-top:4px; }
.sbt-encadre--saviez .sbt-encadre-titre{ color:var(--a66-vermeille); }
.a66-encadre--attention{ background:#fff; border:1.5px solid var(--a66-filet); border-left:4px solid var(--a66-vermeille); border-radius:0 var(--a66-r-m) var(--a66-r-m) 0; padding:20px 24px; margin-block:2em; }
.a66-encadre--attention .sbt-encadre-titre{ color:var(--a66-vermeille); margin:0 0 8px; }
.a66-encadre--attention p:not(.sbt-encadre-titre){ margin:0; }

/* FAQ (bloc figé) — accordéon, rond jaune 28 px */
.sbt-faq{ background:#fff; border:0; padding:0; margin:20px 0 48px; }
.sbt-faq-liste{ gap:0; border-top:1.5px solid var(--a66-filet); }
.sbt-faq-liste details{ border:0!important; border-bottom:1.5px solid var(--a66-filet)!important; border-radius:0; background:#fff; }
.sbt-faq-liste details[open]{ box-shadow:none; border-color:var(--a66-filet)!important; }
.sbt-faq-liste summary{ padding:18px 4px; min-height:60px; font-size:18px; font-weight:700; color:var(--a66-noir); }
.sbt-faq-liste summary:hover{ color:var(--a66-vermeille); }
.sbt-faq-liste summary::after{ width:28px; height:28px; background:var(--a66-jaune) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317191F' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 14px no-repeat; }
.sbt-faq-reponse{ padding:0 44px 20px 4px; color:var(--a66-noir); font-size:17px; }

/* Sommaire + rail (blocs figés) : UN bloc collant, plus court que l'écran, sans défilement interne */
.a66-article .sbt-rail{ top:calc(var(--a66-entete-h) + 20px); border-left:0; padding:22px; gap:0; background:#fff; border-radius:var(--a66-r-l); box-shadow:var(--a66-ombre); }
.admin-bar .a66-article .sbt-rail{ top:calc(var(--a66-entete-h) + 52px); }
.sbt-rail-carte{ border:0; padding:0; background:transparent; border-radius:0; }
.sbt-rail-carte--sommaire{ padding-bottom:18px; margin-bottom:18px; border-bottom:1.5px solid var(--a66-filet); }
.sbt-sommaire{ border:0; padding:0; background:transparent; border-radius:0; }
.sbt-sommaire-titre{ display:inline-flex; align-items:center; gap:.4em; padding:.32em .9em .14em; border-radius:8px; background:var(--a66-noir); color:var(--a66-alu); font-family:var(--a66-titre); font-weight:600; font-size:18px; line-height:1; letter-spacing:.05em; text-transform:uppercase; box-shadow:inset 0 0 0 3px var(--a66-noir), inset 0 0 0 4px var(--a66-alu); }
.sbt-sommaire ol{ margin-top:12px; gap:2px; }
.sbt-sommaire li a{ align-items:flex-start; padding:5px 6px; border-radius:8px; font-size:15px; line-height:1.35; color:var(--a66-noir); }
.sbt-sommaire li a:hover{ color:var(--a66-vermeille); text-decoration:none; background:var(--a66-tramontane); }
.sbt-sommaire-num{ font-family:var(--a66-titre); font-size:15px; width:24px; height:22px; border-radius:5px; padding-top:2px; background:var(--a66-tramontane); }
.sbt-sommaire-libelle{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.sbt-sommaire li a.est-actif{ background:var(--a66-tramontane); box-shadow:inset 0 -3px 0 var(--a66-jaune); }
.sbt-sommaire li a.est-actif .sbt-sommaire-num{ background:var(--a66-jaune); }
.a66-rail-serre .sbt-sommaire-libelle{ -webkit-line-clamp:1; }
.a66-rail-serre .sbt-sommaire li.a66-loin{ display:none; }
.sbt-sommaire-mobile .sbt-sommaire{ background:#fff; border:1.5px solid var(--a66-filet); border-radius:var(--a66-r-m); padding:16px 18px; }
@media (max-width:1080px){ .a66-article .sbt-rail{ position:static; margin-top:8px; } }

/* Boîte auteur (bloc figé) */
.sbt-auteur{ background:var(--a66-tramontane); border:0; border-radius:var(--a66-r-l); grid-template-columns:96px 1fr; gap:24px; padding:28px; }
.sbt-auteur-photo img{ width:72px; height:72px; box-shadow:0 0 0 4px var(--a66-jaune); background:#fff; }
.sbt-auteur-sur{ display:inline-flex; gap:.35em; padding:.32em .8em .14em; border-radius:7px; background:var(--a66-noir); color:var(--a66-alu); font-family:var(--a66-titre); font-weight:600; font-size:16px; line-height:1; letter-spacing:.05em; box-shadow:inset 0 0 0 2px var(--a66-noir), inset 0 0 0 3px var(--a66-alu); margin-bottom:10px; }
.sbt-auteur-sur::after{ content:"66"; }
.sbt-auteur-nom{ font-family:var(--a66-titre); font-weight:500; font-size:30px; line-height:1; }
.sbt-auteur-role{ color:var(--a66-vermeille); text-transform:none; letter-spacing:0; font-size:15px; }
.sbt-auteur-bio{ font-size:16.5px; }
.sbt-auteur-chiffres span{ background:#fff; font-size:14px; color:var(--a66-schiste); }
.sbt-auteur-der p{ text-transform:none; letter-spacing:0; font-size:14px; font-weight:700; }
.sbt-auteur-der a:hover{ color:var(--a66-vermeille); }
.sbt-auteur-actions .sbt-btn{ background:var(--a66-jaune); color:var(--a66-noir); border-radius:12px; padding:12px 20px; font-size:15.5px; min-height:48px; display:inline-flex; }
.sbt-auteur-actions .sbt-btn--fantome{ background:transparent; color:var(--a66-noir); box-shadow:inset 0 0 0 2px var(--a66-noir); }
@media (max-width:700px){ .sbt-auteur{ grid-template-columns:1fr; } }

/* « À lire aussi » : section pleine largeur avant le pied, marge franche et centrée */
.a66-suite{ background:var(--a66-tramontane); padding:56px 0 calc(var(--a66-espace) + 16px); }
.a66-suite .a66-h2{ margin-bottom:24px; }
.a66-suite.sbt-a-lire{ margin-top:0; border-top:0; }
.a66-suite .a66-grille-cartes{ max-width:none; }

/* Infographies du socle ([sbs_frise], [sbs_jauges], [sbs_tarifs], [sbs_lieu]) */
sbs-frise,sbs-jauges,sbs-tarifs,sbs-lieu,sbs-etape,sbs-jauge,sbs-tarif{ display:block; }
.sbs_frise,.sbs_jauges,.sbs_tarifs,.sbs_lieu{ margin:1.8em 0; padding:22px 24px; border-radius:var(--a66-r-m); background:var(--a66-tramontane); }
.sbs_frise_titre,.sbs_jauges_titre,.sbs_tarifs_titre{ display:block; font-family:var(--a66-titre); font-weight:500; font-size:26px; line-height:1; padding-top:4px; margin-bottom:16px; }
.sbs_source{ display:block; margin-top:14px; font-size:13.5px; color:var(--a66-schiste); }
.sbs_frise{ position:relative; }
.sbs_etape{ position:relative; padding:0 0 18px 34px; border-left:3px solid var(--a66-noir); margin-left:8px; }
.sbs_etape:last-of-type{ border-left-color:transparent; padding-bottom:0; }
.sbs_etape::before{ content:""; position:absolute; left:-10px; top:2px; width:17px; height:17px; border-radius:50%; background:var(--a66-jaune); box-shadow:0 0 0 3px var(--a66-tramontane), 0 0 0 5px var(--a66-noir); }
.sbs_etape_date{ display:inline-block; font-family:var(--a66-titre); font-weight:600; font-size:22px; line-height:1; padding:.25em .6em .1em; border-radius:6px; background:var(--a66-noir); color:var(--a66-alu); margin-bottom:6px; }
.sbs_etape_titre{ display:block; font-weight:700; font-size:17.5px; line-height:1.35; }
.sbs_etape_desc{ display:block; font-size:15.5px; color:var(--a66-schiste); line-height:1.5; }
.sbs_jauges{ display:grid; grid-template-columns:repeat(auto-fit, minmax(128px, 1fr)); gap:12px; }
.sbs_jauges_titre,.sbs_jauges .sbs_source{ grid-column:1 / -1; }
.sbs_jauge{ background:var(--a66-noir); color:#fff; border-radius:var(--a66-r-s); padding:14px 16px 12px; box-shadow:inset 0 0 0 4px var(--a66-noir), inset 0 0 0 6px var(--a66-alu); }
.sbs_jauge_valeur{ display:block; font-family:var(--a66-titre); font-weight:500; font-size:44px; line-height:1; color:var(--a66-alu); font-variant-numeric:tabular-nums lining-nums; padding-top:4px; }
.sbs_jauge_unite{ display:block; color:var(--a66-jaune); font-weight:700; font-size:14px; }
.sbs_jauge_libelle{ display:block; font-size:14px; line-height:1.35; color:#E7EAED; margin-bottom:6px; }
.sbs_tarif{ display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto; gap:12px; align-items:center; padding:10px 0; border-bottom:1px dashed #BFC6CD; }
.sbs_tarif:last-of-type{ border-bottom:0; }
.sbs_tarif_libelle{ font-size:15.5px; line-height:1.35; }
.sbs_tarif_barre{ width:100%; height:12px; border-radius:6px; }
.sbs_tarif_barre::-webkit-meter-bar{ background:#fff; border:0; border-radius:6px; height:12px; }
.sbs_tarif_barre::-webkit-meter-optimum-value{ background:var(--a66-noir); border-radius:6px; }
.sbs_tarif_barre::-moz-meter-bar{ background:var(--a66-noir); border-radius:6px; }
.sbs_tarif_prix{ font-weight:700; white-space:nowrap; }
.sbs_tarifs_notes{ display:block; margin-top:10px; font-size:14px; color:var(--a66-schiste); }
.sbs_lieu{ display:flex; flex-direction:column; gap:6px; border-left:4px solid var(--a66-noir); }
.sbs_lieu_nom{ font-family:var(--a66-titre); font-weight:500; font-size:26px; line-height:1; padding-top:4px; }
.sbs_lieu_adresse{ font-style:normal; }
.sbs_lieu_acces{ color:var(--a66-schiste); }
.sbs_lieu_carte{ display:inline-flex; align-items:center; gap:6px; font-weight:700; }
.sbs_icone_repere{ width:20px; height:20px; fill:currentColor; }
@media (max-width:560px){ .sbs_tarif{ grid-template-columns:1fr auto; } .sbs_tarif_barre{ grid-column:1 / -1; grid-row:2; } }

/* ---------- Pages : sobre et soigné ---------- */
.a66-page-corps-fond{ background:#fff; padding:48px 0 var(--a66-espace); }
.a66-page-corps{ max-width:760px; margin-inline:auto; padding-inline:var(--a66-gout); font-size:18px; }
.a66-page-corps h2{ font-family:var(--a66-titre); font-weight:500; font-size:36px; line-height:1; margin:1.5em 0 .5em; padding-top:.06em; }
.a66-page-corps h2::before{ content:""; display:block; width:32px; height:4px; margin-bottom:12px; border-radius:2px; background:var(--a66-jaune); }
.a66-page-corps h3{ font-size:21px; margin:1.3em 0 .4em; }
.a66-editeur{ font-weight:700; }

/* Pages « marque » (contact, à propos, mon projet) */
.a66-marque{ position:relative; background:var(--a66-tramontane); padding:40px 0 var(--a66-espace); }
.a66-marque-grille{ display:grid; grid-template-columns:minmax(0,6fr) minmax(0,6fr); gap:48px; align-items:center; }
.a66-marque-texte h1{ font-family:var(--a66-titre); font-weight:600; font-size:clamp(46px,5vw,76px); line-height:.94; padding-top:.06em; margin:16px 0 18px; }
.a66-marque-texte h1 .a66-ligne{ display:block; }
.a66-marque-texte h1 .a66-ligne--2{ color:var(--a66-vermeille); }
.a66-marque-chapo{ font-size:19px; color:var(--a66-schiste); max-width:32em; }
.a66-marque-photo{ position:relative; border-radius:var(--a66-r-xl); overflow:visible; }
.a66-marque-photo-cadre{ position:relative; aspect-ratio:5 / 4; max-height:520px; border-radius:var(--a66-r-xl); overflow:hidden; box-shadow:var(--a66-ombre-longue); background:var(--a66-noir); }
.a66-marque-photo-cadre img,.a66-marque-photo-cadre .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.a66-marque-plaque{ position:absolute; z-index:3; left:24px; bottom:0; transform:translateY(50%); }
.a66-marque-chiffres{ display:flex; flex-wrap:wrap; gap:14px; margin-top:24px; }
.a66-marque-chiffres .a66-plaque{ font-size:30px; }
.a66-contact-grille{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:48px; align-items:start; }
.a66-contact-form{ position:relative; }
.a66-contact-form .a66-plaque{ position:absolute; top:0; left:24px; transform:translateY(-50%); }
.a66-contact-form .a66-form-carte{ padding-top:36px; }
.a66-contact-form form{ display:flex; flex-direction:column; gap:12px; }
.a66-piege{ position:absolute!important; left:-9999px; width:1px; height:1px; overflow:hidden; }
.a66-ok{ padding:14px 16px; border-radius:12px; background:var(--a66-jaune-pale); font-weight:700; }
.a66-rubriques-mini{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; margin:24px 0; }
.a66-rubriques-mini a{ position:relative; display:flex; align-items:flex-end; min-height:120px; padding:12px; border-radius:14px; overflow:hidden; color:#fff; text-decoration:none; font-weight:700; background:var(--a66-noir); }
.a66-rubriques-mini a img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.7; }
.a66-rubriques-mini a span{ position:relative; text-shadow:0 1px 8px rgba(0,0,0,.6); overflow-wrap:break-word; text-wrap:pretty; }
.a66-credits{ font-size:14px; color:var(--a66-schiste); }
.a66-credits li{ margin:.2em 0; }
.a66-projet-page .a66-marque-grille{ grid-template-columns:minmax(0,6fr) minmax(0,5fr); }
/* 16/10 (retour Mathias) : équipe réelle (photo + nom + rôle) à la place des plaques « ÉQUIPE 66 » muettes. */
.a66-equipe{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; margin:24px 0; }
.a66-equipe-carte{ display:flex; flex-direction:column; align-items:flex-start; gap:4px; padding:20px; background:var(--a66-tramontane); border-radius:var(--a66-r-l); text-decoration:none; color:inherit; transition:transform .15s ease, box-shadow .15s ease; }
.a66-equipe-carte:hover{ transform:translateY(-2px); box-shadow:var(--a66-ombre); }
.a66-equipe-photo{ width:72px; height:72px; border-radius:50%; object-fit:cover; margin-bottom:8px; box-shadow:0 0 0 3px var(--a66-jaune); background:#fff; }
.a66-equipe-nom{ font-family:var(--a66-titre); font-weight:600; font-size:19px; line-height:1.2; color:var(--a66-noir); }
.a66-equipe-role{ font-size:14px; font-weight:700; color:var(--a66-vermeille); }
.a66-equipe-spec{ font-size:14.5px; color:var(--a66-schiste); line-height:1.4; }
@media (max-width:960px){ .a66-marque-grille,.a66-contact-grille,.a66-projet-page .a66-marque-grille{ grid-template-columns:1fr; gap:40px; } .a66-rubriques-mini{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:560px){ .a66-equipe{ grid-template-columns:1fr; } }

/* Recherche */
.a66-recherche{ display:flex; gap:8px; max-width:520px; }
.a66-recherche input{ flex:1; min-width:0; min-height:52px; padding:12px 16px; border-radius:12px; border:2px solid var(--a66-filet); background:#fff; font-size:17px; }
.a66-recherche input:focus{ outline:none; border-color:var(--a66-noir); box-shadow:0 0 0 3px var(--a66-jaune); }
.a66-recherche .a66-btn{ min-height:52px; padding:10px 20px; }

/* 404 : la plaque sur le bas-côté */
.a66-404{ position:relative; min-height:clamp(480px, 70vh, 640px); display:flex; align-items:center; background:var(--a66-noir); overflow:hidden; }
.a66-404-img,.a66-404 > .a66-repli{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.a66-404::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(23,25,31,.82), rgba(23,25,31,.35) 70%); }
.a66-404 .a66-conteneur{ position:relative; z-index:1; width:100%; color:#fff; padding-block:56px; }
.a66-404 h1{ color:#fff; font-size:clamp(44px,5vw,72px); line-height:.95; margin:28px 0 12px; padding-top:.06em; }
.a66-404 p{ max-width:34em; color:#E7EAED; }
.a66-404 .a66-recherche{ margin:20px 0 22px; }
.a66-404-liens{ display:flex; flex-wrap:wrap; gap:10px; }
.a66-404-liens a{ display:inline-flex; align-items:center; min-height:48px; padding:10px 16px; border-radius:999px; background:rgba(255,255,255,.12); color:#fff; text-decoration:none; font-weight:600; }
.a66-404-liens a:hover{ background:var(--a66-jaune); color:var(--a66-noir); }

/* ---------- Pied de page (bloc figé, habillé) ---------- */
.sbt-footer{ position:relative; background:var(--a66-noir); color:#fff; padding-block:56px 28px; margin:4px 0 0; box-shadow:0 -2px 0 var(--a66-jaune), 0 -4px 0 var(--a66-vermeille); }
.sbt-footer .sbt-conteneur{ max-width:calc(var(--a66-cont) + 2 * var(--a66-gout)); padding-inline:var(--a66-gout); }
.sbt-footer a{ color:#D5D9DE; }
.sbt-footer a:hover{ color:var(--a66-jaune); }
.sbt-footer-cta{ background:#22252D; border-radius:var(--a66-r-l); border:0; padding:22px 28px; margin-bottom:40px; }
.sbt-footer-cta .sbt-t3{ font-family:var(--a66-titre); font-weight:500; font-size:30px; line-height:1; padding-top:4px; color:#fff; }
.sbt-footer-cta p{ color:var(--a66-alu); }
.sbt-footer-cta .sbt-btn{ color:var(--a66-noir); }
.sbt-footer-grille{ grid-template-columns:repeat(5, minmax(0,1fr)); gap:36px 28px; border-bottom-color:rgba(201,206,212,.18); padding-bottom:36px; }
.sbt-footer-grille > .sbt-footer-colonne:first-child{ grid-column:1 / span 3; display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.a66-pied-recherche{ grid-column:4 / span 2; }
/* 16/10 (retour Mathias) : padding en `em` sur un conteneur à `font-size:0` vaut 0 — le texte du logo
   (taille réglée sur les pseudo-éléments) débordait donc de sa plaque. Padding fixe, immunisé contre la
   taille de police du conteneur. */
.sbt-footer-logo{
	position:relative; display:inline-flex; align-items:center; gap:.4em; margin:0; font-size:0; line-height:1; color:var(--a66-alu);
	padding:16px 44px 7px; border-radius:12px; background:var(--a66-noir);
	box-shadow:inset 0 0 0 5px var(--a66-noir), inset 0 0 0 7px var(--a66-alu), 0 10px 26px rgba(0,0,0,.5);
}
.sbt-footer-logo::before{ content:"ASAC"; font-family:var(--a66-titre); font-weight:600; font-size:52px; letter-spacing:.035em; text-shadow:0 -1px 0 rgba(0,0,0,.65), 0 1px 0 rgba(255,255,255,.28); }
.sbt-footer-logo::after{ content:"66"; font-family:var(--a66-titre); font-weight:600; font-size:52px; letter-spacing:.035em; margin-left:.2em; text-shadow:0 -1px 0 rgba(0,0,0,.65), 0 1px 0 rgba(255,255,255,.28); }
.sbt-footer-desc{ color:#D5D9DE; font-size:17px; max-width:22em; min-width:0; flex:1 1 220px; }
.sbt-footer-colonne .sbt-t4{ font-family:var(--a66-titre); font-weight:500; font-size:22px; line-height:1; text-transform:none; letter-spacing:0; color:#fff; margin:0 0 14px; padding-top:3px; }
.a66-pied-t4-2{ margin-top:22px!important; }
.sbt-footer-colonne ul{ gap:9px; }
.sbt-footer-colonne ul a{ font-size:15px; line-height:1.4; }
.a66-pied-rubriques li{ display:flex; justify-content:space-between; gap:10px; }
.a66-pied-compte{ font-family:var(--a66-titre); font-size:18px; line-height:1; color:var(--a66-alu); padding-top:3px; }
.a66-pied-derniers li{ display:flex; flex-direction:column; gap:2px; }
.a66-pied-derniers time{ font-size:13px; color:var(--a66-alu); }
.a66-pied-recherche .a66-recherche input{ background:#22252D; border-color:#22252D; color:#fff; }
.a66-pied-recherche .a66-recherche input::placeholder{ color:#9BA2AB; }
.sbt-footer-bas{ color:var(--a66-alu); font-size:14px; padding-top:22px; }
@media (max-width:1060px){ .sbt-footer-grille{ grid-template-columns:repeat(3, minmax(0,1fr)); } .sbt-footer-grille > .sbt-footer-colonne:first-child{ grid-column:1 / -1; } .a66-pied-recherche{ grid-column:1 / -1; } }
@media (max-width:640px){ .sbt-footer-grille{ grid-template-columns:repeat(2, minmax(0,1fr)); } .sbt-footer-grille > .sbt-footer-colonne:first-child{ flex-direction:column; align-items:flex-start; } .sbt-footer-logo{ padding:13px 34px 6px; } .sbt-footer-logo::before,.sbt-footer-logo::after{ font-size:40px; } /* 16/10 (retour Mathias) : flex-basis:220px de .sbt-footer-desc visait une LARGEUR en ligne (desktop) ; une fois le conteneur passé en colonne ici, ce même flex-basis force une HAUTEUR de 220px pour 2 lignes de texte → ~180px de vide noir avant « Chercher un guide ». */ .sbt-footer-desc{ flex:1 1 auto; } }
@media (max-width:420px){ .sbt-footer-grille{ grid-template-columns:minmax(0,1fr); } }

/* Le bas du pied = le bas de la page (aucune bande blanche dessous) */
body > *:last-child{ margin-bottom:0; }
#wpadminbar ~ *:last-child{ margin-bottom:0; }

/* Page auteur */
.a66-auteur-grille{ display:grid; grid-template-columns:120px minmax(0,1fr); gap:32px; align-items:center; }
.a66-auteur-photo img{ width:120px; height:120px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 5px var(--a66-jaune); background:#fff; }
.a66-auteur-role{ color:var(--a66-vermeille)!important; font-weight:700; margin-bottom:8px!important; }
.a66-auteur-compte{ margin-top:10px!important; font-weight:700; color:var(--a66-noir)!important; }
@media (max-width:640px){ .a66-auteur-grille{ grid-template-columns:1fr; gap:20px; } }
.a66-projet-page-photo{ margin-top:28px; }
.a66-projet-page-photo .a66-marque-photo-cadre{ aspect-ratio:16 / 9; max-height:300px; }
.a66-contact-corps{ padding:0; margin:0; }
.a66-contact-form .a66-form-titre{ margin-bottom:14px; }
.a66-contact-form .a66-champs--2{ grid-template-columns:1fr 1fr; }
@media (max-width:420px){ .a66-contact-form .a66-champs--2{ grid-template-columns:1fr; } }
.a66-vide .a66-recherche{ margin:18px auto 0; }
.a66-vide > p{ margin-top:18px; }

/* =====================================================================
   CORRECTIONS n°1 (10/10/2026) — sortie n°1 : étiquettes dans leur cadre, rythme vertical,
   logo-fichier, fiche « en bref », dernières rangées de cartes complètes.
   ===================================================================== */
:root{ --a66-cheval-xs:13px; --a66-cheval-s:16px; --a66-cheval-m:23px; }

/* Logo : le fichier logo-asac66.svg (même fichier que l'icône d'onglet) */
.a66-logo-img{ display:block; width:52px; height:52px; margin:-4px -4px -4px -2px; flex:none; }
@media (max-width:520px){ .a66-logo-img{ width:46px; height:46px; } }

/* Plaque d'une carte à cheval sur le bas de la photo, mais DANS la carte-photo :
   la photo réserve sous l'image une bande blanche égale à la demi-hauteur de la plaque. */
.a66-carte-photo{ background:linear-gradient(var(--a66-noir), var(--a66-noir)) top / 100% calc(100% - var(--a66-cheval-xs)) no-repeat; }
.a66-carte-photo > img,.a66-carte-photo > .a66-repli{ bottom:auto; height:calc(100% - var(--a66-cheval-xs)); border-radius:var(--a66-r-m) var(--a66-r-m) 0 0; }
.a66-carte-plaque{ bottom:var(--a66-cheval-xs); }
.a66-carte-corps{ padding-top:calc(24px - var(--a66-cheval-xs)); }
.a66-carte--une .a66-carte-corps{ padding-top:calc(28px - var(--a66-cheval-xs)); }
/* Variantes où la photo occupe toute une colonne : pas de bande, plaque posée dans le coin de la photo */
.a66-carte--horiz .a66-carte-photo,.a66-carte--pleine .a66-carte-photo{ background:var(--a66-noir); }
.a66-carte--horiz .a66-carte-photo > img,.a66-carte--horiz .a66-carte-photo > .a66-repli,
.a66-carte--pleine .a66-carte-photo > img,.a66-carte--pleine .a66-carte-photo > .a66-repli{ height:100%; border-radius:inherit; }
.a66-carte--horiz .a66-carte-plaque{ bottom:10px; }
@media (min-width:861px){
	.a66-carte--large .a66-carte-photo{ background:var(--a66-noir); }
	.a66-carte--large .a66-carte-photo > img,.a66-carte--large .a66-carte-photo > .a66-repli{ height:100%; border-radius:inherit; }
	.a66-carte--large .a66-carte-plaque{ left:20px; right:auto; bottom:20px; transform:none; }
}
@media (min-width:861px){
	.a66-actus-grille--0 .a66-carte--une .a66-carte-photo{ background:var(--a66-noir); }
	.a66-actus-grille--0 .a66-carte--une .a66-carte-photo > img,.a66-actus-grille--0 .a66-carte--une .a66-carte-photo > .a66-repli{ height:100%; border-radius:inherit; }
	.a66-actus-grille--0 .a66-carte--une .a66-carte-plaque{ bottom:16px; transform:none; }
}
@media (max-width:860px){
	.a66-carte--large .a66-carte-plaque{ bottom:var(--a66-cheval-xs); }
	.a66-carte--large .a66-carte-corps{ padding-top:calc(28px - var(--a66-cheval-xs)); }
}

/* Plaque de la photo à la une (article) et des photos de page : dans leur cadre */
.a66-une{ padding-bottom:var(--a66-cheval-m); margin-bottom:28px; }
.a66-une-plaque{ bottom:var(--a66-cheval-m); }
.a66-marque-photo{ padding-bottom:var(--a66-cheval-m); }
.a66-marque-plaque{ bottom:var(--a66-cheval-m); }

/* Contact : la plaque « MESSAGE 66 » passe DEVANT la carte, à cheval sur son bord haut */
.a66-contact-form{ padding-top:var(--a66-cheval-s); }
.a66-contact-form > .a66-plaque{ top:0; transform:none; z-index:3; }

/* Rythme vertical (RE-0240) : aucune section à marge haute nulle — l'espace est déplacé, pas ajouté */
.a66-corniche{ padding-top:12px; padding-bottom:calc(var(--a66-espace) - 12px); }
.a66-corniche + .a66-section{ padding-top:calc(var(--a66-espace) - 16px); }
.a66-pastilles{ margin-bottom:16px; }
.a66-rub-liste{ padding-top:16px; padding-bottom:0; }
.a66-bande-projet{ padding-top:var(--a66-espace); }

/* Fiche « l'article en bref » : quatre cadrans de tableau de bord */
.a66-encadre-bref{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); margin:0 0 36px; padding:8px; background:var(--a66-tramontane); border-radius:var(--a66-r-m); }
.a66-bref-case{ display:flex; align-items:center; gap:12px; padding:12px 14px; min-width:0; }
.a66-bref-case + .a66-bref-case{ box-shadow:-1px 0 0 var(--a66-filet); }
.a66-bref-cadran{ flex:none; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:var(--a66-noir); color:var(--a66-jaune); box-shadow:inset 0 0 0 2px var(--a66-noir), inset 0 0 0 3.5px var(--a66-alu); }
.a66-bref-cadran svg{ width:21px; height:21px; }
.a66-bref-txt{ display:flex; flex-direction:column; min-width:0; }
/* 16/10 (retour Mathias, pavé « en bref ») : plus de nowrap+ellipsis qui coupait un mot en plein milieu
   (« Remorqu… ») — une valeur longue repasse à la ligne plutôt que d'être tronquée. */
.a66-bref-val{ font-family:var(--a66-titre); font-weight:500; font-size:25px; line-height:1.05; padding-top:4px; color:var(--a66-noir); overflow-wrap:break-word; }
.a66-bref-lib{ font-size:14px; line-height:1.3; color:var(--a66-schiste); }
@media (max-width:860px){
	.a66-encadre-bref{ grid-template-columns:repeat(2, minmax(0,1fr)); }
	.a66-bref-case:nth-child(3){ box-shadow:none; }
	.a66-bref-case:nth-child(n+3){ border-top:1px solid var(--a66-filet); }
}
@media (max-width:400px){ .a66-bref-case{ gap:10px; padding:10px 8px; } .a66-bref-cadran{ width:38px; height:38px; } .a66-bref-val{ font-size:22px; } }

/* Dernière rangée de cartes jamais incomplète (app.js : a66-equilibre) — grille fine à 6 colonnes */
.a66-equilibre--3{ grid-template-columns:repeat(6, minmax(0,1fr))!important; max-width:none; }
.a66-equilibre--3 > .a66-carte{ grid-column:span 2; }
.a66-equilibre--2{ grid-template-columns:repeat(2, minmax(0,1fr))!important; max-width:none; }
.a66-equilibre > .a66-carte--demi{ grid-column:span 3; }
.a66-equilibre > .a66-carte--pleine{ grid-column:1 / -1; }
.a66-carte--pleine .a66-carte-lien{ flex-direction:row; }
.a66-carte--pleine .a66-carte-photo{ aspect-ratio:auto; flex:0 0 50%; min-height:260px; border-radius:var(--a66-r-m) 0 0 var(--a66-r-m); }
.a66-carte--pleine .a66-carte-plaque{ bottom:16px; left:16px; transform:none; }
.a66-carte--pleine .a66-carte-corps{ padding:28px 32px; justify-content:center; }
.a66-carte--pleine .a66-carte-titre{ font-family:var(--a66-titre); font-weight:500; font-size:clamp(28px,2.6vw,36px); line-height:1.02; padding-top:4px; }

/* Contact (10/10, sortie n°2) : le formulaire monte dans l'en-tête (bouton au-dessus du pli), la photo descend à côté du texte */
.a66-contact-form--entete{ align-self:start; position:relative; }
.a66-contact-form--entete .a66-form-carte{ margin-top:14px; }
.a66-contact-photo .a66-marque-photo{ position:relative; }
.a66-contact-photo .a66-marque-photo-cadre img{ width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; display:block; }
@media (max-width:960px){ .a66-contact-photo{ margin-top:32px; } }

/* Rangées équilibrées : jamais sur une seule colonne (mobile) — évite tout débordement si le recalcul arrive après la mesure */
@media (max-width:700px){
	.a66-equilibre, .a66-equilibre--2, .a66-equilibre--3{ grid-template-columns:minmax(0,1fr)!important; }
	.a66-equilibre > .a66-carte{ grid-column:auto!important; }
	.a66-carte--pleine .a66-carte-lien{ flex-direction:column; }
	.a66-carte--pleine .a66-carte-photo{ flex:none; aspect-ratio:3/2; min-height:0; border-radius:var(--a66-r-m) var(--a66-r-m) 0 0; }
}

/* Contact mobile (sortie n°3) : le bouton d'envoi tient dans le premier écran à 390 (le chapô et le renvoi « Mon projet » restent dans le corps et le menu) */
@media (max-width:700px){
	.a66-marque--contact{ padding-top:12px; }
	.a66-marque--contact .a66-ariane,
	.a66-marque--contact .a66-marque-texte > .a66-plaque,
	.a66-marque--contact .a66-marque-chapo,
	.a66-marque--contact .a66-marque-texte > p:last-child{ display:none; }
	.a66-marque--contact .a66-marque-grille{ gap:12px; }
	.a66-marque--contact h1{ margin-bottom:0; }
	.a66-marque--contact .a66-champs--2{ grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important; gap:10px; }
	.a66-marque--contact .a66-champ{ margin-bottom:10px; }
	.a66-marque--contact textarea{ min-height:84px; height:84px; }
	.a66-marque--contact .a66-form-carte{ padding:18px 16px; }
	.a66-marque--contact .a66-form-titre{ margin-bottom:8px; }
}

/* Juge visuel n°1 (10/10) ------------------------------------------------------------- */
/* D5 : la plaque EST le titre de la rubrique (plus de doublon plaque + titre) */
h1.a66-rub-plaque{ margin:0; line-height:1; font-weight:inherit; }
.a66-rub-plaque .a66-plaque-txt{ text-transform:uppercase; }
.a66-rub-intro{ padding-top:clamp(56px,6vw,88px); }
/* D4 : maillage « À découvrir également » en pastilles-plaques, jamais en liste à puces */
.sb-maillage{ margin:48px 0 8px; padding:24px 24px 20px; background:var(--a66-tramontane,#eef1f3); border-radius:var(--a66-r-l,22px); }
.sb-maillage h2{ font-size:24px!important; margin:0 0 14px!important; }
.sb-maillage h2::before{ display:none!important; }
.sb-maillage ul{ list-style:none!important; margin:0!important; padding:0!important; display:flex; flex-wrap:wrap; gap:10px; }
.sb-maillage li{ margin:0!important; padding:0!important; }
.sb-maillage li::before{ display:none!important; content:none!important; }
.sb-maillage a{ display:inline-flex; align-items:center; gap:8px; padding:10px 16px; background:#fff; border-radius:999px; box-shadow:0 6px 18px rgba(23,25,31,.08); color:var(--a66-noir); text-decoration:none!important; font-weight:600; font-size:15px; line-height:1.3; }
.sb-maillage a::after{ content:"→"; color:var(--a66-vermeille,#b5311f); }
.sb-maillage a:hover{ box-shadow:0 8px 22px rgba(23,25,31,.16); }
/* D7 : sur mobile, les cartes Entretien et Balades de l'accueil défilent en ligne (page moins longue) */
@media (max-width:700px){
	.a66-entretien .a66-grille-cartes, .a66-corniche-cartes{ display:flex!important; overflow-x:auto; scroll-snap-type:x mandatory; gap:14px; margin-right:-16px; padding-right:16px; padding-bottom:8px; }
	.a66-entretien .a66-grille-cartes > .a66-carte, .a66-corniche-cartes > .a66-carte{ flex:0 0 78%; scroll-snap-align:start; }
}

/* 16/10 (juge visuel) : aucun mot des choix du formulaire ne se coupe, dans la colonne d'article comme sur mobile. */
.a66-tuile-nom{ overflow-wrap:normal; word-break:normal; hyphens:manual; }
.a66-form-carte--rail .a66-tuile{ padding:8px; gap:8px; font-size:13.5px; }
.a66-form-carte--rail .a66-tuile-vignette{ width:32px; height:32px; border-radius:8px; }
@media (max-width:480px){
	.a66-tuile{ gap:8px; padding:8px; font-size:14px; }
	.a66-tuile-vignette{ width:34px; height:34px; border-radius:8px; }
}

/* 16/10 : la barre latérale collante tient dans la fenêtre (sommaire sur une ligne par entrée) — bouton du formulaire toujours visible. */
@media (min-width:1081px){
	.sbt-rail .sbt-sommaire li a{ padding:3px 6px; font-size:14px; line-height:1.3; align-items:center; }
	.sbt-rail .sbt-sommaire li a span:not(.sbt-sommaire-num){ display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
	.sbt-rail{ max-height:calc(100vh - 108px); }
}
