@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@500;600;700&family=Literata:opsz,wght@7..72,400;7..72,600;7..72,700&display=swap');
:root{--primary: #1F2B36;--primary-hover:#2E3F4E;--on-primary:#FFFFFF;--secondary:#3A4B59;--secondary-hover:#2C3B47;--bg:#F2F0EA;--surface:#FAF9F5;--text:#1F2B36;--text-secondary:#3B4752;--text-strong:#121A21;--text-muted:#59636C;--text-faint:#A7A49B;--fill:#E6E3DA;--border:#D3CFC4;--accent:#D2561F;--callout-bg:#FBEDE4;--callout-text:#8A3410;--callout-border:#D2561F;--blue:var(--primary);--blue-dark:var(--primary-hover);--cyan:var(--fill);--ink:var(--text);--muted:var(--text-muted);--paper:var(--bg);--white:#fff;--line:var(--border);--pale:var(--fill);--orange:var(--accent);--serif:'Literata',Georgia,'Times New Roman',serif;--sans:'Literata',Georgia,serif;--display:'Work Sans',sans-serif;--font-heading:var(--display);--font-body:var(--sans);--radius:22px;--shadow:0 20px 55px rgba(31,43,54,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:12px;background:#fff;padding:12px;z-index:50}.skip-link:focus{top:12px}.site-header{height:82px;border-bottom:1px solid rgba(31,43,54,.08);background:rgba(242,240,234,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--blue-dark);font-family:var(--display);font-size:16px;font-weight:800;line-height:1.05;letter-spacing:-.7px}.brand-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--blue);color:white}.brand-icon svg{width:29px;height:29px}.brand-name small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.9px;margin-top:5px;color:#59636C}.primary-nav{display:flex;gap:27px;align-items:center;font-size:13px;font-weight:700;color:#3B4752}.primary-nav>a{transition:color .2s}.primary-nav>a:hover,.primary-nav .is-active{color:var(--blue)}.primary-nav .nav-about{background:#E6E3DA;padding:11px 15px;border-radius:99px;color:var(--blue-dark)}.nav-about span{margin-left:4px}.menu-toggle{display:none;background:none;border:0}.hero{display:grid;grid-template-columns:1.02fr .98fr;gap:58px;align-items:center;padding-top:68px;padding-bottom:80px;min-height:590px}.hero-copy{padding:10px 0 0 12px}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:11px;line-height:1.3;text-transform:uppercase;letter-spacing:1.65px;font-weight:700}.dot{width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(210,86,31,.13)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);letter-spacing:-1.5px}h1{font-size:clamp(48px,6.2vw,76px);line-height:1.05;margin:20px 0 21px;font-weight:800;max-width:590px}h1 em{font-family:var(--serif);font-weight:400;color:var(--blue);letter-spacing:-3px}.lead{max-width:540px;font-size:18px;line-height:1.65;color:#59636C}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:31px}.button{display:inline-flex;gap:16px;align-items:center;justify-content:center;background:var(--blue);color:white;border-radius:9px;padding:15px 20px;font-weight:700;font-size:14px;box-shadow:0 9px 19px rgba(31,43,54,.16);transition:transform .2s,background .2s}.button:hover{background:var(--blue-dark);transform:translateY(-2px)}.text-link{font-size:14px;font-weight:700;color:var(--blue-dark);border-bottom:1px solid #A7A49B;padding-bottom:3px}.text-link span{margin-left:6px}.trust-line{display:flex;flex-wrap:wrap;gap:18px;margin-top:32px;color:#59636C;font-size:11px;font-weight:600}.trust-line span:first-letter{color:var(--blue)}.hero-visual{height:460px;position:relative;margin-right:4px}.hero-visual:before{content:'';position:absolute;inset:25px -17px -15px 38px;border:1px solid #D3CFC4;border-radius:48% 48% 15px 15px;transform:rotate(3deg)}.hero-visual>img{width:100%;height:100%;object-fit:cover;border-radius:48% 48% 16px 16px;position:relative;z-index:1;filter:saturate(.76)}.visual-note{position:absolute;z-index:2;bottom:25px;left:-35px;width:210px;padding:18px 20px;background:#fff;border-radius:4px 16px 16px 16px;box-shadow:var(--shadow);transform:rotate(-2deg)}.note-kicker{font-size:9px;text-transform:uppercase;letter-spacing:1.4px;color:var(--blue);font-weight:700;display:block;margin-bottom:8px}.visual-note strong{font:700 19px/1.2 var(--display);letter-spacing:-.6px;display:block}.visual-note small{font-size:10px;color:var(--muted);display:block;margin-top:10px}.round-stamp{position:absolute;z-index:2;right:-17px;top:36px;width:83px;height:83px;border:1px solid #fff;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-content:center;text-align:center;font:700 9px/1.3 var(--display);letter-spacing:1px;transform:rotate(9deg);box-shadow:0 8px 18px #1F2B362b}.round-stamp b{font-size:12px}.ticker{background:var(--blue-dark);color:white;overflow:hidden}.ticker-inner{min-height:53px;display:flex;justify-content:center;align-items:center;gap:33px;white-space:nowrap;font-size:10px;letter-spacing:1.5px;font-weight:700}.ticker i{color:var(--cyan);font-style:normal;font-size:14px}.section{padding-top:104px;padding-bottom:104px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}.section-heading h2,.source-note h2{font-size:clamp(31px,4vw,45px);line-height:1.15;margin:12px 0 0}.section-heading>p{max-width:385px;color:var(--muted);font-size:14px;margin:0 0 4px}.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.guide-card{min-height:306px;padding:22px 21px 20px;border:1px solid var(--line);background:#fff;border-radius:16px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.guide-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.card-number{font-size:10px;letter-spacing:1.1px;font-weight:700;color:#59636C}.card-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#E6E3DA;color:var(--blue);font-family:var(--display);font-size:20px;font-weight:700}.card-cost .card-icon{background:#FBEDE4;color:#8A3410}.card-tax .card-icon{background:#E6E3DA;color:#3A4B59}.guide-card h3{font-size:20px;line-height:1.26;letter-spacing:-.65px;margin-bottom:13px}.guide-card p{color:var(--muted);font-size:13px;line-height:1.6;margin-bottom:22px}.card-link{margin-top:auto;border-top:1px solid #E6E3DA;padding-top:14px;font-size:12px;font-weight:700;color:var(--blue-dark);display:flex;justify-content:space-between}.card-link span{font-size:16px}.feature-band{background:#1F2B36;color:#fff;overflow:hidden;position:relative}.feature-layout{min-height:390px;display:grid;grid-template-columns:1fr .8fr;align-items:center;position:relative}.feature-copy{padding:64px 0;max-width:550px;position:relative;z-index:2}.eyebrow-light{color:var(--cyan)}.feature-copy h2{font-size:clamp(34px,4.5vw,52px);line-height:1.1;max-width:540px;margin:16px 0}.feature-copy p{color:#E6E3DA;max-width:525px;font-size:15px;margin-bottom:26px}.button-light{background:var(--cyan);color:#1F2B36;box-shadow:none}.button-light:hover{background:white}.feature-art{height:360px;position:relative;display:grid;place-items:center}.art-ring{position:absolute;border:1px solid rgba(230,227,218,.33);border-radius:50%;width:370px;height:370px}.ring-two{width:290px;height:290px;border-style:dashed;transform:rotate(24deg)}.meter{width:205px;height:205px;border-radius:50%;background:#F2F0EA;color:var(--ink);box-shadow:0 20px 55px #121A2177;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:2;transform:rotate(4deg)}.meter span{font-size:9px;letter-spacing:1.4px;color:var(--blue);font-weight:700}.meter strong{font:800 58px/.98 var(--display);letter-spacing:-4px;margin:7px}.meter small{font-size:10px;color:var(--muted)}.art-spark{position:absolute;color:var(--orange);font-size:34px;top:30px;right:60px}.art-line{width:130px;height:1px;background:var(--cyan);transform:rotate(-48deg);position:absolute;bottom:57px;right:35px}.source-section{padding-top:88px;padding-bottom:88px}.source-note{display:grid;grid-template-columns:72px 1fr 235px;gap:24px;align-items:center}.source-mark{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#E6E3DA;color:var(--blue);font:italic 36px var(--serif)}.source-note h2{font-size:35px;margin:11px 0}.source-note p{max-width:690px;color:var(--muted);font-size:14px;line-height:1.75}.source-aside{padding:19px 20px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--muted)}.source-aside strong{font:700 17px var(--display);color:var(--ink)}.date-chip{display:inline-block;background:#E6E3DA;color:#3B4752;border-radius:5px;padding:7px 9px;font-size:10px;margin-top:7px}.date-chip b{color:var(--blue-dark)}.disclaimer{margin-bottom:85px;padding:22px 24px;background:#FAF9F5;border:1px solid #D3CFC4;border-radius:13px;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:16px}.disclaimer-icon{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#fff;font:700 17px var(--serif)}.disclaimer strong{font:700 14px var(--display)}.disclaimer p{margin:4px 0 0;font-size:12px;line-height:1.55;color:#3B4752;max-width:850px}.disclaimer>a{color:#1F2B36;font-size:11px;font-weight:700;white-space:nowrap}.site-footer{background:#121A21;color:#E6E3DA;padding:54px 0 19px}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:56px;padding-bottom:42px}.brand-invert{color:white}.brand-invert .brand-name small{color:#D3CFC4}.footer-brand p{max-width:300px;margin-top:17px;font-size:13px;color:#D3CFC4}.footer-col{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#D3CFC4}.footer-col strong{color:#fff;font:700 14px var(--display);margin-bottom:4px}.footer-col a:hover{color:var(--cyan)}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #ffffff21;padding-top:18px;color:#A7A49B;font-size:10px}.footer-bottom a{color:#E6E3DA}.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}
/* Guide article templates */
.article-hero{padding:66px 0 46px;max-width:890px}.breadcrumb{font-size:11px;color:var(--muted);margin-bottom:25px}.breadcrumb a{color:var(--blue-dark)}.article-hero h1{font-size:clamp(40px,5.4vw,64px);max-width:850px}.article-hero .lead{max-width:760px}.article-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:#59636C;margin-top:23px}.article-meta strong{color:var(--blue-dark)}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:62px;align-items:start;padding-bottom:90px}.article-body{font-size:16px;line-height:1.8;color:#3B4752}.article-body h2{font-size:30px;line-height:1.2;color:var(--ink);margin:46px 0 14px}.article-body h3{font-size:20px;color:var(--ink);margin:27px 0 9px}.article-body p{margin:0 0 18px}.article-body ul,.article-body ol{padding-left:22px}.article-body li{padding-left:5px;margin-bottom:8px}.article-aside{position:sticky;top:108px;background:white;border:1px solid var(--line);padding:20px;border-radius:14px;font-size:12px;color:var(--muted)}.article-aside strong{font:700 14px var(--display);display:block;color:var(--ink);margin-bottom:9px}.article-aside a{display:block;margin:8px 0;color:var(--blue-dark);font-weight:600}.callout{background:#E6E3DA;border-left:4px solid var(--blue);padding:19px 21px;border-radius:0 10px 10px 0;margin:25px 0;color:#3B4752}.callout strong{display:block;color:var(--blue-dark);margin-bottom:5px}.warning{background:#FBEDE4;border-color:var(--orange)}.data-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:13px;line-height:1.5}.data-table th,.data-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.data-table th{color:var(--blue-dark);background:#E6E3DA;font-weight:700}.calculator{background:#FAF9F5;padding:24px;border:1px solid var(--line);border-radius:14px;margin:25px 0}.calculator h3{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-grid label{font-size:12px;font-weight:700;color:#3B4752}.form-grid input,.form-grid select{width:100%;border:1px solid #A7A49B;background:#fff;border-radius:7px;padding:12px;margin-top:6px;font:inherit;color:var(--ink)}.calc-result{background:#fff;border-radius:9px;padding:16px;margin-top:15px;font-weight:700;color:var(--blue-dark)}.source-list li{margin-bottom:11px}.source-list a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.faq-list details{border-top:1px solid var(--line);padding:15px 0}.faq-list summary{font-weight:700;color:var(--ink);cursor:pointer}.faq-list details p{margin:12px 0 0}.article-end{border-top:1px solid var(--line);margin-top:42px;padding-top:22px;font-size:12px;color:var(--muted)}
@media(max-width:980px){.primary-nav{gap:15px;font-size:12px}.hero{gap:35px;padding-top:48px}.hero-visual{height:410px}.guide-grid{grid-template-columns:repeat(2,1fr)}.guide-card{min-height:270px}.source-note{grid-template-columns:55px 1fr}.source-aside{grid-column:2;border-left:0;border-top:1px solid var(--line);padding:16px 0 0}.article-layout{gap:32px;grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:720px){.wrap{width:min(100% - 36px,560px)}.site-header{height:70px}.brand-icon{width:38px;height:38px}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:10px}.menu-toggle span:not(.sr-only){width:22px;height:2px;background:var(--blue-dark);border-radius:4px}.primary-nav{display:none;position:absolute;top:69px;left:0;right:0;padding:15px 20px 21px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 20px #1F2B3612;flex-direction:column;align-items:stretch;gap:0}.primary-nav.nav-open{display:flex}.primary-nav>a{padding:12px 7px;border-bottom:1px solid #E6E3DA}.primary-nav .nav-about{border:0;margin-top:10px;text-align:center}.hero{grid-template-columns:1fr;gap:32px;padding-top:47px;padding-bottom:55px}.hero-copy{padding:0}.hero h1{font-size:53px;max-width:520px}.lead{font-size:16px}.hero-visual{width:calc(100% - 30px);height:390px;margin:0 0 0 24px}.visual-note{left:-22px;bottom:16px}.round-stamp{right:-14px}.trust-line{gap:10px 15px;margin-top:24px}.ticker-inner{justify-content:flex-start;gap:20px;padding-left:18px;min-height:45px;font-size:9px}.section{padding-top:70px;padding-bottom:70px}.section-heading{display:block}.section-heading>p{margin-top:14px}.guide-grid{gap:10px}.guide-card{padding:17px;min-height:286px}.guide-card h3{font-size:18px}.guide-card p{font-size:12px}.card-top{margin-bottom:22px}.feature-layout{grid-template-columns:1fr}.feature-copy{padding:55px 0 0}.feature-art{height:270px}.art-ring{width:270px;height:270px}.ring-two{width:215px;height:215px}.meter{width:160px;height:160px}.meter strong{font-size:46px}.feature-copy h2{font-size:39px}.source-note{grid-template-columns:44px 1fr;gap:14px}.source-mark{width:42px;height:42px;font-size:28px}.source-note h2{font-size:28px}.source-note p{font-size:13px}.source-aside{grid-column:1/-1;margin-left:58px}.disclaimer{grid-template-columns:32px 1fr;margin-bottom:60px;padding:17px;gap:10px}.disclaimer>a{grid-column:2}.footer-main{grid-template-columns:1fr 1fr;gap:28px 22px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;line-height:1.5}.article-hero{padding-top:43px}.article-layout{display:block;padding-bottom:65px}.article-aside{position:static;margin-bottom:30px}.article-body{font-size:15px}.article-body h2{font-size:26px;margin-top:36px}.form-grid{grid-template-columns:1fr}.data-table{font-size:11px}.data-table th,.data-table td{padding:8px}}
@media(max-width:390px){.wrap{width:calc(100% - 28px)}.hero h1{font-size:46px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-visual{height:330px}.guide-grid{grid-template-columns:1fr}.guide-card{min-height:235px}.card-top{margin-bottom:16px}.disclaimer{margin-bottom:45px}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.reveal-on-scroll{opacity:1;transform:none}}

/* ===== 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:850px){
.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 05b ALIGNEMENT BUILDER — nav du builder repliée à 720 px, pas à 850 ===== */
.primary-nav .nav-item>a{transition:color .2s}
.primary-nav .nav-item>a:hover{color:var(--blue)}
@media(max-width:720px){.primary-nav .nav-item{display:block;border-bottom:1px solid #E6E3DA}.primary-nav .nav-item>a{display:block;padding:12px 7px}}

/* ===== 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 --- */
h1{max-width:none!important}   /* styles.css : 590px */
.lead{max-width:none!important}   /* styles.css : 540px */
.section-heading>p{max-width:none!important}   /* styles.css : 385px */
.feature-copy{max-width:none!important}   /* styles.css : 550px */
.feature-copy h2{max-width:none!important}   /* styles.css : 540px */
.feature-copy p{max-width:none!important}   /* styles.css : 525px */
.source-note p{max-width:none!important}   /* styles.css : 690px */
.disclaimer p{max-width:none!important}   /* styles.css : 850px */
.footer-brand p{max-width:none!important}   /* styles.css : 300px */
.article-hero{max-width:none!important}   /* styles.css : 890px */
.article-hero h1{max-width:none!important}   /* styles.css : 850px */
.article-hero .lead{max-width:none!important}   /* styles.css : 760px */
.hero h1{max-width:none!important}   /* styles.css : 520px */
.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.02fr .98fr }  (styles.css) */
/*   .feature-layout { grid-template-columns: 1fr .8fr }  (styles.css) */
/*   .footer-main { 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)}

/* ===== 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)}
/* ===== BLOC 06a NAV REPLIEE 980 — 9 entrées : tiroir sous 980 px (le builder repliait à 720) ===== */
@media(max-width:980px){.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:10px}.menu-toggle span:not(.sr-only){width:22px;height:2px;background:var(--blue-dark);border-radius:4px}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:15px 20px 21px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 20px #1F2B3612;flex-direction:column;align-items:stretch;gap:0;font-size:13px}.primary-nav.nav-open{display:flex}.primary-nav>a{padding:12px 7px;border-bottom:1px solid #E6E3DA}.primary-nav .nav-about{border:0;margin-top:10px;text-align:center}.primary-nav .nav-item{display:block;border-bottom:1px solid #E6E3DA}.primary-nav .nav-item>a{display:block;padding:12px 7px}.has-sub::after{display:none}.sub-nav{position:static;display:flex;min-width:0;margin:0 0 8px 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;border-left:0}.sub-nav a small{display:none}.sub-nav a:hover,.sub-nav a:focus{background:transparent}}
/* ===== BLOC CONTRASTES — corrections mesurées au navigateur (24/10/2026) ===== */
/* Bandeau d'indépendance : encadré clair posé dans le footer sombre, il héritait du texte clair du footer. */
.disclaimer{color:var(--text)}.disclaimer strong{color:var(--text-strong)}
/* Tampon et pastille : blanc sur veilleuse #D2561F = 4,12:1 en 9 px → teinte foncée de la veilleuse (5,99:1). */
.round-stamp,.disclaimer-icon{background:#A8441A}
/* ===== BLOC HERO PLEINE SECTION — la photo couvre toute la section, voile bleu fumée, texte clair ===== */
html,body{overflow-x:clip}
.hero{position:relative;isolation:isolate;grid-template-columns:minmax(0,640px) 1fr;min-height:620px}
.hero-visual{position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;height:auto;margin:0;transform:translateX(-50%)}
.hero-visual:before{display:none}
.hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0;filter:saturate(.7)}
.hero-visual:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(18,26,33,.92) 0%,rgba(31,43,54,.82) 45%,rgba(31,43,54,.45) 100%)}
.hero-visual .visual-note{left:auto;right:max(24px,calc((100vw - 1160px)/2 + 24px));bottom:56px;color:var(--text)}
.hero-visual .round-stamp{right:max(40px,calc((100vw - 1160px)/2 + 40px));top:48px}
.hero .hero-copy{color:#FAF9F5}
.hero h1{color:#FFFFFF}.hero h1 em{color:#F2C3A8}
.hero .lead{color:#E6E3DA}
.hero .eyebrow{color:#FAF9F5}
.hero .button{background:var(--bg);color:var(--primary);box-shadow:none}.hero .button:hover{background:#FFFFFF}
.hero .text-link{color:#FFFFFF;border-bottom-color:rgba(255,255,255,.55)}
.hero .trust-line{color:#E6E3DA}.hero .trust-line span:first-letter{color:#F2C3A8}
@media(max-width:720px){
.hero{grid-template-columns:1fr;min-height:0;padding-top:56px;padding-bottom:64px}
.hero-visual:after{background:rgba(18,26,33,.82)}
.hero-visual .visual-note,.hero-visual .round-stamp{display:none}
}

/* 07c — visuels générés : lockup de marque, hero de dossier, illustrations de section */
.brand .brand-logo{display:block;width:192px;max-width:52vw;height:auto}
.footer-brand .brand-logo{width:211px}
.dossier-hero{margin:0 0 38px}
.dossier-hero img{display:block;width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--fill)}
.article-figure{margin:4px 0 24px}
.article-figure img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--fill)}
@media(max-width:720px){.brand .brand-logo{width:163px}.dossier-hero{margin-bottom:26px}.dossier-hero img{border-radius:14px}}
