:root{--primary: #A46538;--primary-hover: #8F5730;--on-primary: #FFFFFF;--secondary: #3A342C;--secondary-hover: #4A4338;--bg: #F4F1EA;--surface: #FBF9F4;--text: #3A342C;--text-secondary: #5C5347;--text-strong: #24201A;--text-muted: #6E6558;--text-faint: #A79C8B;--fill: #EBE6DB;--border: #DCD5C7;--white: #FFFFFF;--callout-bg: #F0E7DA;--callout-text: #6B3F1C;--callout-border: #D9C4A7;--blue:var(--primary);--sky:var(--fill);--ink:var(--secondary);--paper:var(--bg);--sand:var(--fill);--line:var(--border);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter',Arial,sans-serif;--font-heading:var(--serif);--font-body:var(--sans)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.topline{background:var(--ink);color:var(--fill);padding:8px 5vw;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.topline p{margin:0}.site-header{border-bottom:1px solid var(--line)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{line-height:.86;display:inline-flex;flex-direction:column;letter-spacing:.14em;font-size:13px}.brand strong{font-size:23px;letter-spacing:.08em}.main-nav{display:flex;gap:30px;font-size:14px;font-weight:600}.main-nav a{border-bottom:2px solid transparent;padding:7px 0}.main-nav a:hover{border-color:var(--blue);color:var(--blue)}.menu-toggle{display:none;background:0;border:0}.hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:630px}.hero-copy{padding:105px 9vw 90px 11vw;display:flex;flex-direction:column;justify-content:center}.eyebrow,.tag{margin:0 0 14px;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.hero h1,h2,h3{font-family:var(--serif);line-height:1.16}.hero h1{font-size:clamp(38px,4.1vw,64px);margin:0 0 24px;letter-spacing:-.04em}.hero h1 em,.page-intro em{font-weight:400;color:var(--blue)}.lead{font-size:18px;max-width:530px;margin:0;color:var(--text-secondary)}.hero-image{margin:0;position:relative;min-height:450px}.hero-image img{height:100%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,52,44,.1),rgba(58,52,44,.35))}.hero-image figcaption{position:absolute;right:27px;bottom:20px;z-index:1;color:#fff;font:italic 13px var(--serif)}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:35px}.button{display:inline-flex;align-items:center;gap:10px;background:var(--blue);color:#fff;padding:13px 17px;font-weight:700;font-size:14px}.button:hover{background:var(--primary-hover)}.text-link{font-weight:700;font-size:14px;display:inline-flex;align-items:center;gap:8px}.text-link:hover{color:var(--blue)}.edition-bar{margin:-29px 5vw 0;background:var(--surface);border:1px solid var(--line);padding:18px 28px;position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:13px}.edition-bar span{font-size:11px;font-weight:700;letter-spacing:.1em}.edition-bar p{margin:0;color:var(--text-muted)}.edition-bar a{font-weight:700;display:flex;gap:8px;color:var(--blue)}.section{padding:110px 8vw}.section-head{margin-bottom:42px}.section-head h2,.statement h2{font-size:clamp(30px,3.4vw,48px);margin:0;letter-spacing:-.04em}.section-head.inline{display:flex;justify-content:space-between;align-items:end}.feature-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:7vw}.feature-main img{height:365px;margin-bottom:20px}.tag{font-size:10px;margin-bottom:9px}.feature-main h3{font-size:30px;margin:0 0 12px}.feature-main h3 a:hover,.story-list h3 a:hover{color:var(--blue)}.feature-main p:not(.tag),.story-list p:not(.tag){margin:0;color:var(--text-secondary)}.story-list{border-top:1px solid var(--line)}.story-list article{padding:23px 0;border-bottom:1px solid var(--line)}.story-list h3{font-size:20px;margin:0 0 8px}.paths{display:grid;grid-template-columns:1fr 1fr}.path-card{padding:76px max(8vw,30px);color:white}.path-card.blue{background:var(--blue)}.path-card.ink{background:var(--ink)}.path-card svg{width:34px;height:34px;margin-bottom:42px}.path-card .eyebrow{color:var(--white)}.path-card h2{font-size:42px;margin:0 0 15px}.path-card p:not(.eyebrow){max-width:430px;margin:0 0 28px;opacity:.88}.path-card a{font-weight:700;display:inline-flex;gap:8px;border-bottom:1px solid currentColor;padding-bottom:4px}.statement{background:var(--sand);padding:95px 12vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.statement p:last-child{font:18px/1.8 var(--serif);margin:34px 0 0}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.principles div{border-top:2px solid var(--blue);padding-top:17px}.principles span{color:var(--blue);font-weight:700;font-size:13px}.principles h3{font-size:21px;margin:15px 0 8px}.principles p{margin:0;color:var(--text-secondary)}.site-footer{background:var(--ink);color:var(--fill);padding:70px 8vw 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.1fr 1.1fr 1fr;gap:34px}.brand-footer{color:#fff}.footer-grid p{color:var(--text-faint);max-width:340px;font-size:14px}.footer-grid h3{font:700 13px var(--sans);letter-spacing:.1em;text-transform:uppercase}.footer-grid a:not(.brand){display:block;color:var(--text-faint);margin:8px 0;font-size:14px}.footer-grid a:hover{color:var(--sky)}.footer-bottom{border-top:1px solid var(--secondary-hover);margin-top:55px;padding-top:20px;color:var(--text-faint);font-size:12px;display:flex;justify-content:space-between}.article-page{min-height:60vh}.page-intro{max-width:950px;padding:110px 12vw 80px}.page-intro.narrow{max-width:850px}.page-intro h1{font:clamp(36px,5vw,65px)/1.13 var(--serif);letter-spacing:-.05em;margin:0 0 24px}.page-intro>p:last-child{font:20px/1.6 var(--serif);color:var(--text-secondary);max-width:720px}.topics{padding-top:25px}.topics article{display:grid;grid-template-columns:100px 1.1fr 1fr;gap:25px;padding:31px 0;border-top:1px solid var(--line)}.topics span{font:700 14px var(--sans);color:var(--blue)}.topics h2{font-size:25px;margin:0}.topics h2:hover{color:var(--blue)}.topics p{margin:0;color:var(--text-secondary)}.note{margin:0 8vw 100px;padding:44px;background:var(--ink);color:#fff;display:flex;gap:24px;max-width:900px}.note svg{color:var(--sky);flex:none}.note h2{margin:0 0 12px;font-size:26px}.note p{margin:0;color:var(--fill)}.object-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;background:var(--sand);align-items:center}.object-grid figure{margin:0}.object-grid img{height:440px}.object-grid h2{font-size:36px;margin:0 0 25px}.object-grid ol{padding:0;list-style:none;counter-reset:read}.object-grid li{counter-increment:read;padding:14px 0;border-top:1px solid var(--line);color:var(--text-secondary)}.object-grid li:before{content:'0' counter(read);color:var(--blue);font-size:11px;font-weight:bold;margin-right:13px}.long-copy{max-width:850px;padding-top:20px}.long-copy h2{font-size:31px;margin:45px 0 16px}.long-copy p,.reading p{color:var(--text-secondary);font:17px/1.85 var(--serif)}.quote{margin:45px 0;padding:32px 0;border-top:1px solid var(--blue);border-bottom:1px solid var(--blue);font:italic 23px/1.5 var(--serif);color:var(--blue)}.article-figure{margin:0}.article-figure img{height:480px}.reading{max-width:780px;margin:65px auto 110px}.reading .intro{font-size:21px;color:var(--ink)}.reading h2{font-size:30px;margin:45px 0 12px}.reading aside{background:var(--callout-bg);border-left:4px solid var(--callout-border);color:var(--callout-text);padding:24px 26px;margin:35px 0;font:16px/1.7 var(--sans)}.not-found{min-height:60vh;padding:130px 12vw}.not-found h1{font:clamp(42px,6vw,75px)/1.05 var(--serif);margin:0 0 18px}.not-found p:not(.eyebrow){font-size:19px;color:var(--text-secondary);margin-bottom:28px}.reveal-on-scroll{opacity:0;transform:translateY(18px);transition:.65s ease}.revealed{opacity:1;transform:none}
@media(max-width:760px){.topline p:last-child{display:none}.nav-wrap{height:72px}.menu-toggle{display:block;color:var(--ink)}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);z-index:5;padding:18px 5vw;flex-direction:column;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7vw 55px}.hero-image{height:380px}.edition-bar{margin:-20px 4vw 0;padding:15px;flex-wrap:wrap}.edition-bar p{display:none}.section{padding:70px 7vw}.feature-grid,.statement,.object-grid{grid-template-columns:1fr;gap:38px}.feature-main img{height:265px}.paths{grid-template-columns:1fr}.path-card{padding:55px 8vw}.principles{grid-template-columns:1fr;gap:24px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}.section-head.inline{align-items:flex-start;gap:18px;flex-direction:column}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.page-intro{padding:70px 7vw 45px}.page-intro>p:last-child{font-size:18px}.topics article{grid-template-columns:1fr;gap:10px;padding:25px 0}.note{margin:0 7vw 70px;padding:30px;flex-direction:column}.object-grid img{height:300px}.article-figure img{height:280px}.reading{margin:45px 7vw 70px}.reading .intro{font-size:19px}}/* === STRUMENTI INTERATTIVI (etape 05-tools) === */.breadcrumb{padding:22px 12vw 0;font-size:13px;color:var(--text-muted)}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}.breadcrumb li:not(:last-child):after{content:'/';margin-left:8px;color:var(--text-faint)}.breadcrumb a:hover{color:var(--primary)}.tool-lede{font:19px/1.65 var(--serif);color:var(--text);max-width:680px;margin:0 0 26px}.tool-key{max-width:680px;margin:0 0 26px;padding:0;list-style:none}.tool-key li{position:relative;padding:0 0 0 22px;margin:0 0 11px;color:var(--text-secondary)}.tool-key li:before{content:'';position:absolute;left:0;top:10px;width:9px;height:1px;background:var(--primary)}.tool-scope{max-width:680px;font-size:15px;color:var(--text-muted);border-left:2px solid var(--border);padding-left:18px;margin:0 0 10px}.tool-wrap{padding:10px 12vw 0}.tool-form{background:var(--surface);border:1px solid var(--border);padding:34px 36px;max-width:820px}.tool-form h2{font-size:25px;margin:0 0 6px}.tool-form>p{margin:0 0 24px;color:var(--text-muted);font-size:15px;max-width:620px}.tool-field{border:0;padding:0;margin:0 0 26px}.tool-field legend,.tool-field>label{display:block;font:600 14px var(--sans);color:var(--text-strong);margin:0 0 4px;padding:0}.tool-hint{display:block;font-size:13px;color:var(--text-muted);margin:0 0 12px;max-width:600px}.tool-choices{display:grid;gap:9px}.tool-choices label{display:flex;gap:11px;align-items:flex-start;background:var(--bg);border:1px solid var(--border);padding:12px 15px;font-size:15px;cursor:pointer}.tool-choices label:hover{border-color:var(--primary)}.tool-choices input{margin:4px 0 0;flex:none;accent-color:var(--primary)}.tool-select{width:100%;max-width:420px;font:15px var(--sans);color:var(--text);background:var(--bg);border:1px solid var(--border);padding:11px 13px}.tool-search{width:100%;max-width:420px;font:15px var(--sans);color:var(--text);background:var(--bg);border:1px solid var(--border);padding:11px 13px}.tool-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;border-top:1px solid var(--border);padding-top:22px}.tool-actions .button{border:0;font-family:var(--sans);cursor:pointer}.tool-reset{font-size:14px;font-weight:600;color:var(--text-muted)}.tool-reset:hover{color:var(--primary)}.tool-result{max-width:820px;margin:34px 0 0;border:1px solid var(--border);border-top:3px solid var(--primary);background:var(--surface);padding:32px 36px}.tool-result .eyebrow{margin-bottom:10px}.tool-result h2{font-size:28px;margin:0 0 14px}.tool-result p{color:var(--text-secondary);max-width:660px}.tool-verdict{font:19px/1.6 var(--serif);color:var(--text);margin:0 0 18px}.tool-readout{list-style:none;margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--border);display:grid;gap:12px}.tool-readout li{display:grid;grid-template-columns:190px 1fr;gap:16px;font-size:15px;color:var(--text-secondary)}.tool-readout span{font-weight:600;color:var(--text-strong)}.tool-note{background:var(--callout-bg);border:1px solid var(--callout-border);color:var(--callout-text);padding:20px 24px;margin:26px 0 0;max-width:820px;font-size:15px;line-height:1.7}.tool-note p{margin:0;color:inherit}.tool-note p+p{margin-top:11px}.tool-body{max-width:780px;padding:0 12vw 20px}.tool-body h2{font-size:29px;margin:52px 0 14px}.tool-body h3{font-size:21px;margin:32px 0 10px}.tool-body p{color:var(--text-secondary);font:17px/1.85 var(--serif)}.tool-body ul{color:var(--text-secondary);padding-left:20px}.tool-body li{margin:0 0 9px}.tool-table{width:100%;border-collapse:collapse;margin:26px 0;font-size:15px}.tool-table th,.tool-table td{border:1px solid var(--border);padding:11px 13px;text-align:left;vertical-align:top;color:var(--text-secondary)}.tool-table th{background:var(--fill);color:var(--text-strong);font:600 14px var(--sans)}.tool-scroll{overflow-x:auto;margin:26px 0}.tool-scroll .tool-table{margin:0;min-width:640px}.tool-faq{border-top:1px solid var(--border);margin-top:18px}.tool-faq div{border-bottom:1px solid var(--border);padding:22px 0}.tool-faq h3{margin:0 0 8px;font-size:19px}.tool-faq p{margin:0;font-size:16px}.tool-sources{font-size:14px;color:var(--text-muted);padding:0 12vw 90px;max-width:780px}.tool-sources h2{font-size:21px;margin:44px 0 12px;color:var(--text)}.tool-sources ul{padding-left:20px}.tool-sources li{margin:0 0 8px}.tool-sources a{border-bottom:1px solid var(--border)}.tool-sources a:hover{color:var(--primary);border-color:var(--primary)}.glossary-count{font-size:14px;color:var(--text-muted);margin:26px 0 0}.glossary-list{max-width:820px;margin:12px 0 0;border-top:1px solid var(--border)}.glossary-list dt{font:600 17px var(--sans);color:var(--text-strong);padding:20px 0 5px;border-top:1px solid var(--border)}.glossary-list dt:first-of-type{border-top:0}.glossary-list dd{margin:0 0 16px;color:var(--text-secondary);font-size:15px;line-height:1.7}.glossary-fam{display:inline-block;font:600 11px var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--primary);margin-left:10px;vertical-align:2px}.glossary-empty{padding:26px 0;color:var(--text-muted)}@media(max-width:760px){.breadcrumb,.tool-wrap,.tool-body,.tool-sources{padding-left:7vw;padding-right:7vw}.tool-form,.tool-result{padding:26px 20px}.tool-readout li{grid-template-columns:1fr;gap:3px}}

/* ===== 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:760px){
.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}
}

/* ===== 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 --- */
.lead{max-width:none!important}   /* styles.css : 530px */
.footer-grid p{max-width:none!important}   /* styles.css : 340px */
.page-intro{max-width:none!important}   /* styles.css : 950px */
.page-intro.narrow{max-width:none!important}   /* styles.css : 850px */
.page-intro>p:last-child{max-width:none!important}   /* styles.css : 720px */
.note{max-width:none!important}   /* styles.css : 900px */
.long-copy{max-width:none!important}   /* styles.css : 850px */
.reading{max-width:none!important}   /* styles.css : 780px */
.tool-lede{max-width:none!important}   /* styles.css : 680px */
.tool-key{max-width:none!important}   /* styles.css : 680px */
.tool-scope{max-width:none!important}   /* styles.css : 680px */
.tool-hint{max-width:none!important}   /* styles.css : 600px */
.tool-search{max-width:none!important}   /* styles.css : 420px */
.tool-result{max-width:none!important}   /* styles.css : 820px */
.tool-result p{max-width:none!important}   /* styles.css : 660px */
.tool-note{max-width:none!important}   /* styles.css : 820px */
.tool-body{max-width:none!important}   /* styles.css : 780px */
.tool-sources{max-width:none!important}   /* styles.css : 780px */
.glossary-list{max-width:none!important}   /* styles.css : 820px */
.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-template-columns: 1.05fr .95fr }  (styles.css) */
/*   .feature-grid { grid-template-columns: 1.2fr .8fr }  (styles.css) */
/*   .paths { grid-template-columns: 1fr 1fr }  (styles.css) */
/*   .statement { grid-template-columns: 1fr 1fr }  (styles.css) */
/*   .topics article { grid-template-columns: 100px 1.1fr 1fr }  (styles.css) */
/*   .object-grid { 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. */
.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)}
.tool-faq details{border-bottom:1px solid var(--border);padding:20px 0}

/* ===== 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)}

/* --- grilles tranchées à la main (06a2) — conservé au rejeu de l'étape ---
 * Deux grilles sur six brident la largeur du corps de texte : elles répartissent
 * un intitulé et son corps sur deux colonnes étroites. Elles passent en une seule.
 *   .statement      — un titre à gauche, le paragraphe à droite.
 *   .topics article — un numéro, un titre et son résumé sur trois colonnes.
 * Les quatre autres portent des blocs distincts côte à côte et restent en l'état :
 *   .hero et .object-grid composent un texte AVEC une image ;
 *   .feature-grid oppose un article vedette à une liste d'articles ;
 *   .paths aligne deux cartes pleine couleur.
 * Les collapser ferait perdre la composition sans élargir aucun corps de texte.
 *
 * Les deux règles sont bornées au desktop (min-width 761px) : sous le breakpoint
 * mobile du front ces grilles sont déjà en une colonne, et leurs gaps d’origine
 * (38px, 10px) restent seuls en vigueur : rien n’y est écrasé. */
@media(min-width:761px){
.statement{grid-template-columns:1fr!important;gap:26px!important}
.topics article{grid-template-columns:1fr!important;gap:14px!important}
}


/* === IMAGES (etape 07c) ===================================================
 * La regle globale img{width:100%;object-fit:cover} du builder est pensee pour
 * des photos de bandeau : un wordmark doit garder son ratio (width:auto), et une
 * figure d'article doit etre contenue, pas recadree.
 */
.brand-logo{display:block;width:auto;height:34px;object-fit:contain}
.page-figure{margin:38px 0 6px}
.page-figure img{width:100%;height:auto;object-fit:contain}
@media(max-width:760px){.brand-logo{height:26px}.page-figure{margin:26px 0 4px}}

/* La legende du hero est posee A MEME la photo : selon le visuel servi, elle peut
 * tomber sur une zone claire du bois et devenir illisible en blanc. Une ombre
 * portee la tient lisible sans cartouche ni aplat, que la charte proscrit. */
.hero-image figcaption{text-shadow:0 1px 4px rgba(36,32,26,.85),0 0 14px rgba(36,32,26,.55)}
