:root{--primary: #B4522F;--primary-hover: #9A4527;--on-primary: #FFFFFF;--secondary: #2B3440;--secondary-hover: #3A4553;--bg: #EFE9DF;--surface: #F8F4EC;--text: #2B3440;--text-secondary: #4D5866;--text-strong: #1A2029;--text-muted: #5A6672;--text-faint: #9AA3AE;--fill: #E4DCCF;--border: #D8CFC0;--white: #FFFFFF;--callout-bg: #F6E9E2;--callout-text: #7A3418;--callout-border: #E0C4B4;--font-heading: Archivo,'Helvetica Neue',Arial,sans-serif;--font-body: 'Source Serif 4',Georgia,'Times New Roman',serif;--font-mono: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--blue:var(--primary);--sky:var(--fill);--ink:var(--secondary);--muted:var(--text-muted);--paper:var(--surface);--line:var(--border);--yellow:var(--callout-text);--radius:18px;--shadow:0 18px 55px rgba(43,52,64,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--bg);font-family:var(--font-body);font-size:16px;line-height:1.65}h1,h2,h3,h4,h5,h6,.brand,.button,.main-nav,.text-link,th{font-family:var(--font-heading)}.shell{width:min(1140px,calc(100% - 40px));margin:auto}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:12px;top:-60px;background:var(--ink);color:#fff;padding:9px 16px;z-index:9;border-radius:8px}.skip-link:focus{top:12px}.site-header{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;background:rgba(255,255,255,.95);position:sticky;top:0;z-index:5;backdrop-filter:blur(14px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:9px;font-size:21px;font-weight:800;letter-spacing:-1.4px;white-space:nowrap}.brand>span>span{color:var(--blue)}.brand b{color:var(--text-faint);font-size:14px}.brand-mark{width:32px;height:32px;border-radius:10px;background:var(--blue);color:#fff;display:grid;place-items:center}.brand-mark svg{width:18px}.main-nav{display:flex;gap:27px;align-items:center;font-size:13px;font-weight:700}.main-nav a{transition:color .2s}.main-nav a:hover{color:var(--blue)}.menu-button{display:none;background:0;border:0;color:var(--ink)}.hero{overflow:hidden;background:linear-gradient(115deg,var(--surface) 0%,#fff 57%,var(--fill) 100%);padding:85px 0 76px}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}.eyebrow{margin:0 0 13px;color:var(--blue);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:1.3px;font-weight:500}.eyebrow span{display:inline-block;width:21px;border-top:2px solid var(--blue);vertical-align:middle;margin-right:8px}.hero h1,.page-hero h1{font-size:clamp(38px,5vw,67px);line-height:1.06;letter-spacing:-3.3px;margin:0;font-weight:800}.hero h1 em{color:var(--blue);font-style:normal}.hero-lead,.page-hero p{font-size:18px;color:var(--muted);max-width:650px;margin:25px 0 30px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{border-radius:10px;padding:13px 19px;display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button svg{width:17px}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:var(--primary-hover)}.button-dark{background:var(--ink);color:white}.text-link{font-size:13px;font-weight:800;display:inline-flex;gap:8px;align-items:center;color:var(--blue)}.text-link svg,.data-teaser>svg{width:16px}.hero-panel{padding:25px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-label{font-family:var(--font-mono);font-size:11px;color:var(--muted);margin-bottom:12px}.data-teaser{padding:18px 0;display:flex;gap:12px;align-items:center;border-top:1px solid var(--line)}.data-teaser>svg{margin-left:auto}.data-teaser b{display:block;font-size:14px}.data-teaser small{font-size:12px;color:var(--muted)}.teaser-icon{width:39px;height:39px;border-radius:10px;display:grid;place-items:center}.teaser-icon svg{width:19px}.teaser-icon.blue{color:var(--blue);background:var(--callout-bg)}.teaser-icon.yellow{color:var(--callout-text);background:var(--fill)}.panel-note{margin-top:8px;padding:13px;background:var(--surface);border-radius:10px;font-size:12px;color:var(--muted);line-height:1.5}.panel-note svg{height:15px;vertical-align:middle;color:var(--blue)}.trust-strip{background:var(--ink);color:var(--border);font-size:12px;font-weight:700}.trust-strip .shell{min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:10px}.trust-strip b{color:var(--sky)}.section{padding:104px 0}.section-heading{max-width:620px;margin-bottom:42px}.section-heading h2,.local-block h2,.cta-band h2{font-size:clamp(30px,3.7vw,47px);letter-spacing:-2px;line-height:1.13;margin:0 0 14px}.section-heading>p:last-child{color:var(--muted);margin:0}.split-heading{display:flex;max-width:none;justify-content:space-between;align-items:end}.decision-grid,.lot-grid,.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.decision-card{border:1px solid var(--line);border-radius:var(--radius);padding:25px;position:relative;transition:transform .25s,box-shadow .25s}.decision-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.decision-card>span{font-family:var(--font-mono);font-size:11px;color:var(--text-faint)}.decision-card>svg{display:block;width:27px;height:27px;color:var(--blue);margin:28px 0 18px}.decision-card h3{margin:0 0 8px;font-size:19px;letter-spacing:-.7px}.decision-card p{margin:0 0 18px;font-size:13px;color:var(--muted)}.decision-card a{font-size:12px;color:var(--blue);font-weight:800}.decision-card a svg{height:14px;vertical-align:middle}.local-block{background:var(--sky);padding:91px 0}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.local-block h2{max-width:520px}.local-block p:not(.eyebrow){color:var(--text-secondary);margin:0 0 26px}.local-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.local-stats>div{background:rgba(255,255,255,.66);padding:24px;border-radius:15px}.local-stats strong{display:block;font-size:26px;letter-spacing:-1px}.local-stats span{display:block;color:var(--text-secondary);font-size:12px}.lot-grid{grid-template-columns:repeat(3,1fr)}.lot-grid a{background:var(--paper);padding:22px;border-radius:13px;transition:.2s}.lot-grid a:hover{background:var(--fill);transform:translateY(-3px)}.lot-grid svg{height:23px;color:var(--blue);margin-bottom:25px}.lot-grid b,.lot-grid span{display:block}.lot-grid b{font-size:14px}.lot-grid span{font-size:12px;color:var(--muted);margin-top:3px}.cta-band{background:var(--ink);color:#fff;padding:65px 0}.cta-band .shell{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band .eyebrow{color:var(--sky)}.cta-band h2{margin-bottom:8px}.cta-band p:not(.eyebrow){margin:0;color:var(--border)}.page-hero{padding:80px 0 64px;background:var(--paper);border-bottom:1px solid var(--line)}.page-hero h1{max-width:900px;font-size:clamp(36px,4.8vw,61px)}.page-hero p{max-width:700px}.page-hero.compact{padding:55px 0}.crumb{font-size:12px;font-weight:800;color:var(--blue);display:inline-flex;gap:7px;align-items:center;margin-bottom:24px}.crumb svg{width:15px}.data-layout{padding:55px 0 80px;display:grid;grid-template-columns:255px 1fr;gap:40px}.data-side{align-self:start;background:var(--callout-bg);padding:22px;border-radius:14px;font-size:13px}.data-side b{font-size:15px}.data-side p{color:var(--text-secondary);line-height:1.6}.data-side a{font-size:12px;color:var(--blue);font-weight:800}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.table-top{padding:23px;display:flex;gap:20px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.table-top h2{font-size:19px;margin:0;letter-spacing:-.6px}.table-top small{font-size:11px;color:var(--muted)}.search{border:1px solid var(--line);border-radius:8px;padding:7px 9px;display:flex;align-items:center;gap:7px}.search svg{height:15px;color:var(--blue)}input,select{border:0;background:transparent;outline:0;font-family:inherit;font-size:12px;color:var(--ink);min-width:120px}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;background:var(--surface);color:var(--text-muted);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.6px}th,td{padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}td b{font-size:13px}.price{font-weight:800;color:var(--blue);white-space:nowrap}.table-disclaimer{font-size:11px;color:var(--muted);padding:0 20px 12px}.price-intro{padding:26px 0;display:flex;align-items:center;gap:45px}.metric{display:flex;gap:9px;align-items:center}.metric b{font-size:22px;letter-spacing:-1px}.metric span{font-size:11px;color:var(--muted);max-width:75px;line-height:1.2}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.steps>div{padding-left:15px;border-left:2px solid var(--sky)}.steps span{font-family:var(--font-mono);font-size:11px;color:var(--blue)}.steps h3,.steps h2{font-size:18px;line-height:1.25;margin:13px 0 8px;letter-spacing:-.5px}.steps p{font-size:13px;color:var(--muted);margin:0}.guide-list{border-top:1px solid var(--line)}.guide-list>a{display:grid;grid-template-columns:80px 1fr 30px;align-items:center;gap:22px;padding:26px 10px;border-bottom:1px solid var(--line);transition:.2s}.guide-list>a:hover{background:var(--callout-bg);padding-left:18px}.guide-list span{font-family:var(--font-mono);color:var(--blue);font-size:12px}.guide-list h2{font-size:22px;margin:0;letter-spacing:-.8px}.guide-list p{font-size:13px;color:var(--muted);margin:3px 0 0}.guide-list svg{color:var(--blue)}.guide-content{display:grid;grid-template-columns:1fr 1fr 240px;gap:45px}.guide-content article h2{font-size:27px;line-height:1.2;letter-spacing:-1px;margin:0 0 13px}.guide-content article>p:not(.eyebrow){color:var(--muted);font-size:14px}.check-callout{display:flex;gap:12px;background:var(--callout-bg);padding:15px;border-radius:11px;margin-top:24px}.check-callout svg{color:var(--blue);width:19px;flex-shrink:0}.check-callout b{font-size:13px}.check-callout p{font-size:12px;margin:3px 0 0;color:var(--muted);line-height:1.5}.guide-aside{border-left:1px solid var(--line);padding-left:23px}.guide-aside b{display:block;font-size:13px;margin-bottom:13px}.guide-aside a{display:block;font-size:12px;color:var(--blue);font-weight:700;padding:10px 0;border-bottom:1px solid var(--line)}.tool-grid{grid-template-columns:repeat(2,1fr)}.tool-grid>a{border:1px solid var(--line);padding:30px;border-radius:var(--radius);transition:.2s}.tool-grid>a:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.tool-grid svg{color:var(--blue)}.tool-grid h2{font-size:23px;margin:28px 0 6px;letter-spacing:-.8px}.tool-grid p{color:var(--muted);font-size:13px;margin:0 0 20px}.tool-grid span{font-size:12px;font-weight:800;color:var(--blue)}.tool-grid span svg{height:14px;vertical-align:middle}.interactive-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.tool-copy h2{font-size:34px;line-height:1.2;letter-spacing:-1.3px;margin:0 0 15px}.tool-copy p{color:var(--muted)}.calculator,.checklist{padding:27px;background:var(--callout-bg);border-radius:var(--radius)}.calculator{display:grid;grid-template-columns:1fr 1fr;gap:14px}.calculator label{font-size:12px;font-weight:800}.calculator input,.calculator select{display:block;background:#fff;border:1px solid var(--line);padding:12px;width:100%;margin-top:5px;border-radius:8px}.calc-result{grid-column:1/-1;background:var(--ink);border-radius:11px;padding:20px;color:#fff}.calc-result span,.calc-result small{display:block;font-size:11px;color:var(--border)}.calc-result strong{display:block;font-size:31px;letter-spacing:-1px;margin:3px 0}.checklist label{display:flex;gap:11px;align-items:center;background:#fff;padding:14px;margin-bottom:8px;border-radius:8px;font-size:13px;font-weight:700}.checklist input{min-width:auto;width:17px;height:17px;accent-color:var(--blue)}.prose{max-width:760px}.prose h2{font-size:35px;letter-spacing:-1.3px}.prose p{color:var(--muted);margin-bottom:28px}.site-footer{background:var(--bg);padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}.brand-footer{margin-bottom:13px}.footer-grid p{color:var(--muted);font-size:13px;max-width:360px}.footer-grid small{font-size:10px;color:var(--text-faint);line-height:1.5;display:block;max-width:370px}.footer-grid h2{font-size:12px;text-transform:uppercase;letter-spacing:.6px;margin:0 0 12px}.footer-grid a:not(.brand){display:block;font-size:12px;margin:8px 0;color:var(--muted)}.footer-grid a:hover{color:var(--blue)}.footer-bottom{border-top:1px solid var(--line);font-size:10px;color:var(--text-faint);margin-top:43px;padding-top:17px;display:flex;justify-content:space-between}.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal-on-scroll.revealed{opacity:1;transform:none}@media(max-width:780px){.site-header{height:68px}.main-nav{display:none;position:absolute;top:67px;left:0;width:100%;background:#fff;padding:14px 20px 20px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(0,0,0,.05)}.main-nav.open{display:grid;gap:12px}.menu-button{display:block}.hero{padding:57px 0}.hero-grid,.local-grid,.interactive-card{grid-template-columns:1fr;gap:32px}.hero h1{letter-spacing:-2.2px}.hero-panel{max-width:510px}.trust-strip .shell{font-size:10px;justify-content:center}.trust-strip b{display:none}.section{padding:70px 0}.decision-grid,.lot-grid,.steps{grid-template-columns:1fr}.local-block{padding:65px 0}.split-heading{display:block}.split-heading .text-link{margin-top:14px}.data-layout{grid-template-columns:1fr;padding:35px 0 55px}.data-side{order:2}.table-wrap{overflow:auto}.table-top{min-width:620px}.table-wrap table{min-width:680px}.price-intro{gap:17px;flex-wrap:wrap}.price-intro .text-link{width:100%}.guide-list>a{grid-template-columns:35px 1fr 20px;gap:12px}.guide-list h2{font-size:18px}.guide-list p{font-size:12px}.guide-content{grid-template-columns:1fr;gap:28px}.guide-aside{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.tool-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:27px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:5px}.page-hero{padding:58px 0 45px}.page-hero p,.hero-lead{font-size:16px}.calculator{grid-template-columns:1fr}.cta-band .shell{display:block}.cta-band .button{margin-top:20px}}

/* ===== BLOC SOUS-MENU OUTILS — sans JavaScript (hover + focus-within) ===== */
.nav-item{position:relative;display:inline-flex;align-items:center}
.has-sub>a::after{content:"";display:inline-block;width:5px;height:5px;margin-left:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.has-sub::after{content:"";position:absolute;top:100%;left:0;right:0;height:18px}
.sub-nav{position:absolute;top:calc(100% + 18px);left:-16px;z-index:30;min-width:296px;flex-direction:column;gap:1px;padding:8px;background:var(--surface);border:1px solid var(--line);box-shadow:0 18px 34px rgba(31,58,77,.14);display:none}
.has-sub:hover>.sub-nav,.has-sub:focus-within>.sub-nav{display:flex}
.sub-nav a{display:block;padding:9px 12px;font-size:13px;font-weight:700;line-height:1.25;white-space:nowrap;border-left:2px solid transparent}
.sub-nav a small{display:block;margin-top:2px;font-family:var(--font-body);font-size:11px;font-weight:400;color:var(--text-muted)}
.sub-nav a:hover,.sub-nav a:focus{background:var(--fill);color:var(--primary);border-left-color:var(--primary)}
.sub-nav a:hover small,.sub-nav a:focus small{color:var(--text-secondary)}
.sub-nav-all{margin-top:5px;border-top:1px solid var(--line);padding-top:11px!important;color:var(--primary)}
@media(max-width:780px){
.nav-item{display:block}
.has-sub::after{display:none}
.has-sub>a::after{transform:rotate(45deg) translateY(-2px)}
.sub-nav{position:static;display:flex;min-width:0;margin:9px 0 4px 2px;padding:2px 0 2px 14px;border:0;border-left:2px solid var(--line);box-shadow:none;background:transparent;gap:0}
.sub-nav a{white-space:normal;padding:7px 0;font-size:13px;border-left:0}
.sub-nav a small{display:none}
.sub-nav a:hover,.sub-nav a:focus{background:transparent}
.sub-nav-all{padding-top:8px!important}
}

/* Liens du bandeau bas : lisibles (le gris du builder tombait sous le seuil AA). */
.footer-bottom a{color:var(--text-muted)}.footer-bottom a:hover{color:var(--primary)}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:4px 14px}

/* ===== BLOC LARGEUR UNIFIÉE — toutes les pages à la largeur de la home ===== */
/*
 * Posé par 06a2-largeur-contenu. Les sélecteurs ci-dessous ont été RELEVÉS
 * dans les feuilles réellement chargées par le front, pas devinés : c'est la
 * correction du défaut d'origine, où une liste de classes supposées rendait
 * le bloc inerte sans que rien ne le signale.
 *
 * Largeur de référence relevée sur `.container` : la largeur de `.container`.
 *
 * `!important` est délibéré. Une contrainte peut être déclarée dans une
 * feuille chargée APRÈS celle-ci, ou plus bas dans ce même fichier par un
 * bloc appendu ultérieurement : à spécificité égale elle gagnerait, et le
 * bloc serait posé, validé, et sans effet.
 *
 * Les contrôles de formulaire, les images et les cartes sont épargnés.
 *
 * Ce qui suit la borne « relevé automatique : fin » est CONSERVÉ au rejeu :
 * c'est là que vivent les règles tranchées à la main. N'écris rien au-dessus.
 */

/* --- relevé automatique : début --- */
.section-heading{max-width:none!important}   /* styles.css : 620px */
.local-block h2{max-width:none!important}   /* styles.css : 520px */
.page-hero h1{max-width:none!important}   /* styles.css : 900px */
.page-hero p{max-width:none!important}   /* styles.css : 700px */
.metric span{max-width:none!important}   /* styles.css : 75px */
.prose{max-width:none!important}   /* styles.css : 760px */
.footer-grid p{max-width:none!important}   /* styles.css : 360px */
.footer-grid small{max-width:none!important}   /* styles.css : 370px */
.hero-panel{max-width:none!important}   /* styles.css : 510px */
.source-list{max-width:none!important}   /* styles.css : 820px */

/* Grilles à deux colonnes relevées, NON collapsées d'office : une grille de
   cartes se collapserait à tort. À trancher au brief 06a2, puis à écrire
   SOUS la borne de fin ci-dessous. */
/*   .hero-grid { grid-template-columns: 1.25fr .75fr }  (styles.css) */
/*   .local-grid { grid-template-columns: 1fr 1fr }  (styles.css) */
/*   .local-stats { grid-template-columns: 1fr 1fr }  (styles.css) */
/*   .guide-content { grid-template-columns: 1fr 1fr 240px }  (styles.css) */
/*   .calculator { grid-template-columns: 1fr 1fr }  (styles.css) */
/* --- relevé automatique : fin --- */

/* Règles tranchées à la main, conservées au rejeu de 06a2. */
/* Règles tranchées à la main, conservées au rejeu de 06a2. */
/*
 * Arbitrage 06a2 du 14/09/2026 — les cinq grilles relevées sont CONSERVÉES.
 * Aucune n'est une grille de texte (intitulé à gauche, corps à droite) :
 *   .hero-grid      copy + panneau de données autonome, deux blocs distincts.
 *   .local-grid     copy + tuiles chiffrées, deux blocs distincts.
 *   .local-stats    quatre tuiles en 2x2 — grille de cartes.
 *   .guide-content  deux <article> + un <aside>, trois blocs autonomes.
 *   .calculator     contrôles de formulaire — épargnés par principe (un select
 *                   étiré sur toute la largeur est une régression d'usage).
 * Les collapser empilerait des blocs qui se lisent bien côte à côte, sans
 * gagner un caractère de largeur utile. La contrainte qui bridait réellement
 * le corps de texte était .prose{max-width:760px}, neutralisée par le relevé
 * automatique ci-dessus : les pages de contenu occupent désormais la largeur
 * de .shell, celle de la home.
 */
.content-narrow{max-width:none!important}
.content-narrow select,.content-narrow input[type=number],.content-narrow input[type=text]{max-width:520px}
.article-layout{width:min(1140px,calc(100% - 40px));margin-inline:auto}
.article-body{max-width:72ch}
.article-layout{width:min(100% - 28px,1140px)}

/* ===== BLOC OUTILS — ancre de resultat + FAQ depliable (05c) ===== */
#resultat{display:block;height:0;scroll-margin-top:96px;outline:0}
html:has(#resultat[autofocus]){scroll-behavior:auto}
details{background:var(--surface,#F8F4EC);border:1px solid var(--border,#D8CFC0);border-radius:11px;margin-bottom:9px;padding:0}
details>summary{cursor:pointer;padding:15px 18px;font-family:var(--font-heading);font-size:15px;font-weight:700;color:var(--text-strong,#1A2029);list-style:none}
details>summary::-webkit-details-marker{display:none}
details>summary::after{content:"+";float:right;color:var(--primary,#B4522F);font-size:19px;line-height:1}
details[open]>summary::after{content:"−"}
details>summary:hover,details>summary:focus{color:var(--primary,#B4522F)}
details .faq-reponse{padding:0 18px 16px;font-size:14px;color:var(--text-secondary,#4D5866);line-height:1.65}
details .faq-reponse p{margin:0 0 10px}
.outil-note{background:var(--callout-bg,#F6E9E2);border:1px solid var(--callout-border,#E0C4B4);color:var(--callout-text,#7A3418);border-radius:11px;padding:14px 17px;font-size:13px;line-height:1.6;margin:0 0 22px}
.actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
@media(max-width:780px){.actions-grid{grid-template-columns:1fr}}
.breadcrumb{font-size:12px;font-weight:800;color:var(--primary);display:inline-flex;flex-wrap:wrap;gap:7px;align-items:center;margin-bottom:24px}
.breadcrumb svg{width:15px}
.breadcrumb a{color:var(--primary)}
.breadcrumb a:hover{color:var(--primary-hover)}
.breadcrumb [aria-current]{color:var(--text-muted)}

/* ===== BLOC PILIERS — sommaire, signature, blocs de renvoi (06) ===== */
.pilier-signature{font-size:12px;color:var(--text-muted);margin:22px 0 0}
.pilier-signature a{color:var(--primary);font-weight:700}
.pilier-sommaire{margin:38px auto 0;padding:22px 25px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.pilier-sommaire b{display:block;font-family:var(--font-heading);font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:var(--text-muted);margin-bottom:11px}
.pilier-sommaire ol{margin:0;padding-left:19px;columns:2;column-gap:38px}
.pilier-sommaire li{margin-bottom:7px;font-size:14px}
.pilier-sommaire a{color:var(--text)}
.pilier-sommaire a:hover{color:var(--primary)}
@media(max-width:780px){.pilier-sommaire ol{columns:1}}
.lire-ensuite{background:var(--fill);border-radius:var(--radius);padding:32px}
.lire-ensuite h2{font-size:27px;letter-spacing:-1px;margin:0 0 6px}
.lire-ensuite>p{color:var(--text-secondary);margin:0 0 20px;font-size:14px}
.lire-ensuite ul{margin:0 0 22px;padding-left:19px}
.lire-ensuite li{margin-bottom:9px;font-size:14px;color:var(--text)}
.prose h2{scroll-margin-top:96px}

/* ===== ENVELOPPE + OUVERTURE NORMÉE (couches 1 et 2 du gabarit) ===== */
.author-card{display:flex;gap:18px;align-items:flex-start;margin:0 0 22px;padding:20px 22px;background:var(--fill);border-left:3px solid var(--primary)}
.author-card .author-avatar{flex:0 0 auto;line-height:0}
.author-card .author-img{object-fit:cover}
.author-footer .author-card .author-img{width:88px;height:88px;object-fit:cover;border-radius:var(--radius-round, 50%)}
.author-footer .author-card .author-monogram{width:88px;height:88px;font-size:30px}
.author-name{margin:0;font-family:var(--font-heading);font-size:16px;font-weight:700;line-height:1.3}
.author-name a{color:var(--text-strong)}
.author-name a:hover{color:var(--primary)}
.author-job{display:block;margin-top:3px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1.1px;color:var(--text-muted)}
.author-legit{margin:11px 0 0;font-size:14.5px;line-height:1.5;font-weight:600;color:var(--text-strong)}
.author-bio{margin:7px 0 0;font-size:13.5px;line-height:1.55;color:var(--text-secondary)}
.author-links{margin:10px 0 0;font-size:13px}
.author-links a{color:var(--primary);font-weight:700;border-bottom:1px solid currentColor}
.page-dates{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 0 22px;font-size:12px;color:var(--text-muted)}
.page-dates time{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-secondary)}
.method-note{margin:0 0 26px;padding:17px 19px;background:var(--callout-bg);border:1px solid var(--callout-border);border-left:3px solid var(--primary)}
.method-note-title{margin:0 0 6px;font-family:var(--font-heading);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--callout-text)}
.method-note p:last-child{margin:0;font-size:14px;line-height:1.6;color:var(--callout-text)}
.opening{margin:0 0 34px}
.opening .answer{margin:0;padding:22px 24px;background:var(--secondary);color:var(--white);font-family:var(--font-heading);font-size:clamp(17px,1.9vw,20px);line-height:1.45;letter-spacing:-.2px}
.essentials{margin:0;padding:20px 24px;background:var(--surface);border:1px solid var(--border);border-top:0}
.essentials-title{margin:0 0 10px;font-family:var(--font-heading);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted)}
.essentials ul{margin:0;padding:0;list-style:none}
.essentials li{position:relative;padding:7px 0 7px 22px;font-size:15px;line-height:1.5;color:var(--text)}
.essentials li::before{content:"";position:absolute;left:0;top:15px;width:8px;height:2px;background:var(--primary)}
.scope{margin:0;padding:14px 24px;background:var(--fill);border:1px solid var(--border);border-top:0;font-size:13.5px;line-height:1.55;color:var(--text-secondary)}
.scope span{font-family:var(--font-heading);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.1px;color:var(--text-muted);margin-right:6px}
.scope a{color:var(--secondary);font-weight:700;border-bottom:1px solid currentColor}
.scope a:hover{color:var(--primary)}
.update-log{margin:0;padding:20px 22px;border-top:2px solid var(--secondary);background:var(--fill)}
.update-log-title{margin:0 0 9px;font-family:var(--font-heading);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted)}
.update-log ul{margin:0;padding:0;list-style:none}
.update-log li{padding:6px 0;font-size:13.5px;line-height:1.5;color:var(--text-secondary);border-bottom:1px solid var(--border)}
.update-log li:last-child{border-bottom:0}
.update-log time{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:500;color:var(--text-strong)}
@media(max-width:640px){.author-card{padding:16px}.opening .answer{padding:18px}.essentials,.scope{padding:16px 18px}}

/* Signature de tête — identité et dates sur une seule ligne. Le parcours de
   l'auteur n'est pas ici : il se lit en pied, via .author-footer. */
.author-byline{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin:0 0 26px;padding-bottom:14px;border-bottom:1px solid var(--border,#D3CEC1);font-size:13px;color:var(--text-secondary,#4A554D)}
.byline-author a{color:var(--secondary,#3A4A3F);font-weight:700;border-bottom:1px solid currentColor}
.byline-author a:hover{color:var(--primary,#A65E2E)}
.author-byline .page-dates{margin:0;gap:6px 18px}

/* Pied d'article — la carte auteur complète, détachée du corps du texte. */
.author-footer{margin:38px 0 22px;border-top:2px solid var(--secondary,#3A4A3F)}
.author-footer .author-card{margin:0}

/* Signature dans le hero d'article (blog) : le hero est un aplat sombre, la
   signature doit y passer en blanc. Sans cette règle, elle hérite des couleurs
   pensées pour un fond clair et devient illisible (contraste ~1,1:1). */
.guide-hero .author-byline,
.guide-hero .author-byline .page-dates,
.guide-hero .byline-author a,
.guide-hero .page-dates time{color:#FFFFFF}
.guide-hero .author-byline{border-bottom-color:rgba(255,255,255,.28)}

/* ===== SOURCES — liens sortants cités près de l'affirmation ===== */
.source-note a[rel~="nofollow"]{color:var(--secondary);font-weight:600;border-bottom:1px solid var(--text-faint)}
.source-note a[rel~="nofollow"]:hover{color:var(--primary);border-bottom-color:var(--primary)}
.tool-table a[rel~="nofollow"]{font-weight:600;text-decoration:none;border-bottom:1px solid var(--text-faint)}
.tool-table a[rel~="nofollow"]:hover{color:var(--primary);border-bottom-color:var(--primary)}
.source-list{list-style:none;margin:0;padding:0;max-width:820px}
.source-list li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.source-list li:last-child{border-bottom:0}
.source-list span{display:block;margin-top:2px;font-size:11px;color:var(--text-muted)}


/* ── [07c] Visuels : lockup de marque et illustrations de dossier ───────────
   Le logo remplace le wordmark textuel : hauteur fixée, largeur libre, pour
   qu'il tienne la même ligne de base que l'ancien lettrage (21px/82px de header).
   Les figures des piliers sortent en pleine largeur de la colonne .prose. */
.brand-logo{display:block;height:34px;width:auto;max-width:100%}
.brand-footer .brand-logo{height:30px}
@media(max-width:780px){.brand-logo{height:28px}}

.pilier-hero,.pilier-figure{margin:0;padding:0}
.pilier-hero img,.pilier-figure img{display:block;width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface)}
.pilier-hero{margin:34px auto 0}
.pilier-figure{margin:26px 0 30px}
.pilier-hero figcaption,.pilier-figure figcaption{margin-top:9px;font-family:var(--font-heading);font-size:12px;line-height:1.45;color:var(--text-muted)}
@media(max-width:780px){.pilier-hero{margin-top:26px}.pilier-figure{margin:20px 0 24px}}
