/* Source validée : style.css */
@font-face{font-family:Fraunces;src:url('/fonts/fraunces.woff2') format('woff2');font-weight:200 700;font-display:swap}@font-face{font-family:Fraunces;src:url('/fonts/frauncesi.woff2') format('woff2');font-weight:200 700;font-style:italic;font-display:swap}@font-face{font-family:Manrope;src:url('/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}@font-face{font-family:Domus;src:url('/fonts/domus-semibold.woff2') format('woff2');font-weight:600;font-display:swap}@font-face{font-family:Domus;src:url('/fonts/domus-titling-bold.woff2') format('woff2');font-weight:700;font-display:swap}:root{--navy:#122839;--deep:#0c1b27;--cream:#f6f1e7;--paper:#fcf9f3;--gold:#bda475;--gold-text:#806527;--muted:#3e5668;--line:#d8d1c2;--serif:Fraunces,Georgia,serif;--sans:Manrope,Arial,sans-serif;--label:Domus,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:112px}body{margin:0;background:var(--cream);color:var(--navy);font:1rem/1.7 var(--sans)}button{font:inherit;color:inherit}input{font:inherit;color:inherit}select{font:inherit;color:inherit}textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}a{-webkit-tap-highlight-color:transparent}input{-webkit-tap-highlight-color:transparent}textarea{-webkit-tap-highlight-color:transparent}summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;display:block}h1{margin:0}h2{margin:0}h3{margin:0}p{margin:0}figure{margin:0}h1{font-family:var(--serif);font-weight:350;line-height:1.12;letter-spacing:-.035em}h2{font-family:var(--serif);font-weight:350;line-height:1.12;letter-spacing:-.035em}h3{font-family:var(--serif);font-weight:350;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.625rem,4.7vw,4.25rem)}h2{font-size:clamp(2rem,3.1vw,2.75rem)}h3{font-size:1.75rem}em{color:var(--gold-text);font-weight:inherit}p{color:var(--muted)}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}main:focus{outline:none}.wrap{width:min(1224px,calc(100% - 112px));margin-inline:auto}.section{padding-block:76px}.eyebrow{display:block;font:600 .75rem/1.5 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text)}.small-label{display:block;font:600 .75rem/1.5 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text)}.eyebrow{margin-bottom:21px}.small-label{font-size:.6875rem;letter-spacing:.08em}.small{font-size:.8125rem!important;line-height:1.7!important}.small a{text-decoration:underline;text-underline-offset:3px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:14px 22px;min-height:52px;border:1px solid var(--navy);border-radius:2px;background:var(--navy);color:var(--cream);font:600 .9375rem/1.5 var(--label);transition:background .18s}.button:hover{background:#16465c}.button span[aria-hidden]{font:1.4375rem/1 var(--sans)}.text-link{display:inline-flex;align-items:center;padding:10px 0;background:none;font:600 .9375rem/1.5 var(--label);text-align:left}.text-link:hover{color:var(--gold-text)}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.serial{font:italic 1.25rem/1.4 var(--serif);color:var(--gold-text)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:36px}.section-heading>p{font-size:.9375rem;max-width:355px}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:var(--navy);color:var(--cream);padding:12px 20px}.skip:focus{top:10px}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:88px;padding:16px max(32px,calc((100vw - 1320px)/2));background:var(--cream)}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:44px;height:44px;object-fit:contain}.brand span{font:700 1.3125rem/1.1 var(--label);letter-spacing:.04em}.brand small{display:block;margin-top:6px;color:var(--gold-text);font:600 .5625rem/1.4 var(--label);letter-spacing:.16em}.desktop-nav{display:flex;gap:32px}.desktop-nav a{padding-block:12px;border-bottom:1px solid transparent;font:600 .875rem/1.4 var(--label)}.desktop-nav a:hover{border-color:var(--gold)}.desktop-nav [aria-current]{border-color:var(--gold)}.header-cta{font-size:.875rem;min-height:46px;padding:10px 18px;background:none;color:var(--navy)}.header-cta:hover{background:var(--navy);color:var(--cream)}.menu-toggle{display:none;min-height:44px;padding:8px 0 8px 8px;background:none;border:0;gap:12px;align-items:center;font:600 .875rem var(--label)}.hamburger{width:22px;height:13px;border-block:1px solid;display:block}.mobile-menu{position:fixed;inset:76px 0 0;z-index:19;background:var(--navy);color:var(--cream);padding:25px 24px;overflow:auto}.mobile-menu nav{display:grid}.mobile-menu a{font:350 1.8125rem/1.25 var(--serif);padding:20px 0;border-bottom:1px solid #365361}.mobile-menu p{margin-top:28px;color:#c9d6dd;font-size:.875rem}.menu-open{overflow:hidden}.signature-rule{display:inline-block;flex-shrink:0;width:34px;height:1px;background:var(--gold);margin-top:11px}.catalog-head{padding-block:53px 43px;display:grid;grid-template-columns:1fr 235px;gap:50px;align-items:end}.catalog-head h1{font-size:clamp(2.5rem,4.3vw,3.875rem)}.catalog-aside{padding-left:25px;}.catalog-aside p{font:350 1.4375rem/1.35 var(--serif);color:var(--navy)}.catalog-aside>span{display:block;font-size:.8125rem;color:var(--muted);margin-top:13px}.catalog-caption{font-size:.75rem;margin-top:20px}.formats{padding-block:65px}.orientation{padding:32px 0 55px;display:flex;align-items:center;justify-content:space-between;gap:40px}.orientation h2{font-size:1.875rem;max-width:650px}.orientation p{font-size:.875rem;margin-top:13px}.orientation .text-link{flex-shrink:0}.program-intro{padding-top:29px}.breadcrumb{display:flex;align-items:center;gap:13px;font-size:.75rem;color:var(--muted);margin-bottom:37px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.program-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:85px;align-items:center;padding-bottom:48px}.program-lead>.eyebrow{max-width:510px;font-size:.6875rem}.program-lead h1{font-size:clamp(3rem,5.3vw,4.75rem)}.program-lead h1>span{color:var(--gold)}.journal-head h1>span{color:var(--gold)}.program-lead .program-promise{font:350 2rem/1.3 var(--serif);color:var(--navy);margin:24px 0;max-width:660px}.program-lead>p:not(.program-promise){font-size:.9375rem;max-width:620px}.program-person{display:flex;gap:15px;font-size:.75rem;margin-top:27px;color:var(--muted)}.program-person .signature-rule{width:24px}.program-summary-card{padding:29px;position:relative;background:var(--paper)}.program-summary-card>img{width:118px;height:118px;object-fit:contain;margin:0 auto 20px}.program-summary-card>.small-label{margin-bottom:8px}.program-summary-card>p{font-size:.875rem}.program-price{padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}.program-price small{font-size:.75rem;color:var(--muted)}.program-price strong{display:block;font:350 2.1875rem/1.2 var(--serif);margin-top:4px}.program-summary-card .button{margin:22px 0 15px;width:100%;font-size:.875rem;gap:15px;padding-inline:14px}.program-nav{display:flex;gap:40px;padding-block:14px;font:600 .875rem var(--label)}.program-nav a{padding-block:10px}.program-nav a:hover{color:var(--gold-text)}.program-details{background:#eee8dc;padding-block:58px}.details-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.details-grid ul{padding:0;margin:0;list-style:none}.details-grid li{position:relative;padding:16px 0 16px 24px;font-size:.9375rem}.details-grid li:first-child{padding-top:0}.details-grid li:before{content:'›';position:absolute;left:0;color:var(--gold-text)}.question-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;font:350 1.4375rem/1.35 var(--serif);padding:19px 38px 19px 0;position:relative}.faq summary:after{content:'+';position:absolute;right:3px;top:17px;color:var(--gold-text)}.faq details[open] summary:after{content:'−'}.story-opening{display:grid;grid-template-columns:1.25fr 1fr;gap:95px;align-items:center;padding-block:55px}.story-opening h1{font-size:4.25rem}.story-opening .story-standfirst{font:350 1.8125rem/1.35 var(--serif);margin-top:28px;color:var(--navy)}.story-opening p{font-size:1rem;max-width:485px;margin-top:19px}.story-opening .text-link{margin-top:22px}.story-opening img{height:510px;width:100%;object-fit:cover;object-position:top}.story-opening figcaption{font-size:.75rem;color:var(--muted);padding-top:12px}.story-body{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-block:56px 75px;border-top:1px solid var(--line)}.story-body blockquote{font:350 2.6875rem/1.2 var(--serif);margin:0}.story-body p{margin-bottom:20px;font-size:1rem}.story-motto{background:var(--navy);color:var(--cream);padding-block:60px}.story-motto .eyebrow{color:#bda475}.story-motto em{color:#bda475}.story-motto h2{font-size:3rem}.story-motto .text-link{margin-top:25px;color:var(--cream)}.journal-head{padding-block:46px 30px}.journal-head h1{font-size:6.25rem;line-height:1.15;letter-spacing:-.05em}.journal-head>div{display:flex;justify-content:space-between;align-items:start;gap:50px;margin-top:25px;padding-top:24px;}.journal-head>div p{font:350 1.75rem/1.3 var(--serif);color:var(--navy)}.journal-head>div span{font-size:.8125rem;color:var(--muted)}.journal-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-block:5px 55px}.journal-image{display:grid;place-items:center;background:#eee8dc;padding:30px;margin-bottom:25px}.journal-image img{width:230px;height:220px;object-fit:contain}.journal-list h2{font-size:1.9375rem;line-height:1.2}.journal-list .eyebrow{margin-bottom:13px}.publication-state{font-size:.75rem;display:inline-block;color:var(--muted);border:1px solid var(--line);border-radius:2px;padding:4px 11px;margin-top:20px}.page-intro{padding-block:45px 34px}.page-intro h1{font-size:3.25rem;max-width:870px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-bottom:65px}.contact-side{padding-top:12px}.contact-side h2{font-size:2.1875rem}.contact-side>p{font-size:.9375rem;max-width:390px;margin-top:19px}.contact-price{font:350 2.3125rem/1.2 var(--serif);padding-top:24px;margin-top:25px}.contact-price small{display:block;font:.8125rem/1.6 var(--sans);color:var(--muted);margin-top:8px}.contact-steps{display:grid;gap:21px;margin-top:30px}.contact-step{display:grid;grid-template-columns:25px 1fr;gap:16px}.phase-num{font:italic 1.1875rem var(--serif);color:var(--gold-text)}.contact-step p{font-size:.8125rem}.contact-step strong{display:block;font-size:.875rem;color:var(--navy);margin-bottom:4px}.contact-box{background:var(--paper);padding:28px}.intent-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:27px}.intent-buttons button{padding:12px;min-height:48px;background:none;border:1px solid #b9bcb7;border-radius:2px;text-align:left;font:600 .875rem/1.4 var(--label)}.intent-buttons [aria-pressed=true]{background:var(--navy);color:var(--cream);border-color:var(--navy)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:block;font:600 .8125rem/1.6 var(--sans);margin-bottom:18px}.field input{display:block;margin-top:8px;width:100%;padding:12px;border:1px solid #a7afa9;background:#fffdf8;border-radius:2px;min-height:48px;font:400 1rem/1.5 var(--sans)}.field textarea{display:block;margin-top:8px;width:100%;padding:12px;border:1px solid #a7afa9;background:#fffdf8;border-radius:2px;min-height:48px;font:400 1rem/1.5 var(--sans)}.field textarea{resize:vertical;min-height:120px}.field small{font-size:.75rem;color:var(--muted);font-weight:400}.privacy-note{font-size:.75rem;line-height:1.65;margin:14px 0}.submit{width:100%}button:disabled{cursor:wait;opacity:.7}.sim-options{border-top:1px solid var(--line);margin-top:20px;padding-top:12px;font-size:.75rem}.sim-options summary{cursor:pointer;font:600 .8125rem var(--label);padding-block:10px}.sim-options>div{display:grid;gap:12px;padding-top:12px}.sim-options select{max-width:100%;padding:9px;border:1px solid var(--line);background:white}.sim-options button{padding:10px;background:none;border:1px solid var(--line);text-align:left}.form-result{padding:20px;margin-top:20px;border-left:3px solid var(--gold);background:#eee7da}.form-result[data-state=error]{border-color:#9d3630;background:#f4e6df}.form-result strong{display:block;margin-bottom:7px}.form-result p{font-size:.875rem}.simulation-stamp{margin-left:auto}dialog{width:min(550px,calc(100% - 36px));max-height:85vh;overflow:auto;padding:40px;border:1px solid var(--gold);background:var(--cream);color:var(--navy)}dialog::backdrop{background:#0c1b27aa}dialog h2{font-size:2.125rem;margin:20px 0}dialog p{margin-bottom:20px}.dialog-close{position:absolute;right:10px;top:10px;width:44px;height:44px;border:0;background:none;font-size:1.875rem;line-height:1}
@media(max-width:1150px){.wrap{width:calc(100% - 72px)}.site-header{gap:22px;padding-inline:30px}.desktop-nav{gap:22px}.program-hero{gap:45px}.program-promise{font-size:1.8125rem!important}.story-opening{gap:50px}.story-opening h1{font-size:3.5rem}.details-grid{gap:50px}.question-grid{gap:50px}}
@media(max-width:1000px){.site-header{min-height:76px;padding-block:12px}.desktop-nav{display:none}.header-cta{display:none}.menu-toggle{display:flex}.catalog-head{grid-template-columns:1fr;gap:24px;padding-block:40px 32px}.catalog-head h1{font-size:3.25rem}.catalog-aside{display:flex;align-items:center;gap:28px;padding-left:18px}.catalog-aside p{font-size:1.1875rem}.catalog-aside p br{display:none}.catalog-aside>span{margin:0;font-size:.75rem}.program-hero{grid-template-columns:1.2fr 1fr;gap:30px}.program-lead h1{font-size:3.375rem}.program-lead .eyebrow{font-size:.625rem}.program-summary-card{padding:24px}.story-opening img{height:460px}.story-body{gap:45px}.story-body blockquote{font-size:2.3125rem}.contact-layout{gap:40px}.contact-box{padding:24px}.contact-side h2{font-size:1.9375rem}.intent-buttons button{font-size:.8125rem}.journal-list{gap:25px}.journal-image{padding:20px}.journal-image img{height:170px}.journal-list h2{font-size:1.6875rem}}
@media(max-width:760px){.wrap{width:calc(100% - 48px)}.section-heading{gap:25px;align-items:start}.section-heading>p{font-size:.8125rem;max-width:240px}.section-heading h2{font-size:2.1875rem}.catalog-head h1{font-size:2.875rem}.formats{padding-block:45px}.orientation{align-items:start;flex-direction:column;gap:15px;padding-bottom:40px}.orientation h2{font-size:1.8125rem}.program-hero{grid-template-columns:1fr;gap:27px;padding-bottom:28px}.program-lead h1{font-size:3.6875rem}.program-lead>.eyebrow{font-size:.6875rem}.program-summary-card{padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:5px 25px}.program-summary-card>img{display:none}.program-summary-card>.small-label{grid-column:1;margin-bottom:7px}.program-summary-card>p:not(.small){grid-column:1}.program-price{grid-column:2;grid-row:1/3;margin:0;padding:0;border:0}.program-summary-card>.button{grid-column:1/-1;width:100%;margin:18px 0 8px}.program-summary-card>.small{grid-column:1/-1}.program-person{font-size:.75rem}.section{padding-block:50px}.details-grid{grid-template-columns:1fr;gap:28px}.question-grid{grid-template-columns:1fr;gap:28px}.program-details{padding-block:45px}.story-opening{gap:30px;padding-block:38px}.story-opening h1{font-size:2.9375rem}.story-opening .story-standfirst{font-size:1.5625rem}.story-opening p{font-size:.875rem}.story-opening img{height:410px}.story-body{grid-template-columns:1fr;gap:27px;padding-block:40px 50px}.story-body blockquote{font-size:2.375rem}.story-body p{font-size:.9375rem}.story-motto h2{font-size:2.5625rem}.story-motto{padding-block:45px}.contact-layout{grid-template-columns:1fr;gap:27px}.contact-side{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px;padding-top:0}.contact-side>p{grid-column:1;margin-top:0}.contact-price{grid-column:2;grid-row:1/3;margin:0;padding:0;align-self:center;font-size:2rem}.contact-steps{grid-column:1/-1;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-top:10px;padding-top:24px}.contact-step{display:block}.contact-step p{margin-top:8px}.page-intro h1{font-size:2.6875rem}.journal-head h1{font-size:5.1875rem}.journal-head>div{display:block}.journal-head>div span{display:block;margin-top:19px}.journal-list{grid-template-columns:1fr}.journal-list article{display:grid;grid-template-columns:180px 1fr;gap:30px;padding-bottom:23px}.journal-image{margin:0}.journal-image img{height:150px}.journal-list article>div:last-child{align-self:center}.journal-list h2{font-size:1.8125rem}.journal-list .eyebrow{font-size:.625rem}.simulation-stamp{width:100%;margin:0}}
@media(max-width:540px){html{scroll-padding-top:93px}.wrap{width:calc(100% - 40px)}.site-header{padding:12px 20px;gap:15px}.brand{gap:9px}.brand img{width:37px;height:37px}.brand span{font-size:1.125rem}.brand small{font-size:.5rem;letter-spacing:.12em}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:19px;max-width:330px;font-size:.875rem}.section-heading>p br{display:none}.eyebrow{font-size:.6875rem;margin-bottom:16px}.catalog-head{padding-block:31px 26px;gap:21px}.catalog-head h1{font-size:2.5rem;line-height:1.1}.catalog-aside{display:block;padding-left:15px}.catalog-aside p{font-size:1.25rem}.catalog-aside>span{margin-top:10px;font-size:.8125rem}.catalog-aside>span br{display:none}.formats{padding-block:43px 24px}.orientation h2{font-size:1.75rem;line-height:1.2}.orientation{padding-top:24px}.catalog-caption{font-size:.75rem;line-height:1.7}.program-intro{padding-top:22px}.breadcrumb{font-size:.75rem;margin-bottom:26px}.program-lead h1{font-size:clamp(2.4375rem,10.8vw,3.5625rem)}.program-lead>.eyebrow{font-size:.625rem;margin-bottom:18px;max-width:290px}.program-lead .program-promise{font-size:1.6875rem!important;margin:20px 0;line-height:1.3}.program-lead>p:not(.program-promise){font-size:.9375rem}.program-person{font-size:.6875rem;gap:11px;margin-top:22px}.program-summary-card{display:block;padding:24px}.program-price{border-top:1px solid var(--line);padding-top:18px;margin-top:19px}.program-price strong{font-size:2.0625rem}.program-summary-card>.button{font-size:.875rem;line-height:1.45;gap:12px}.program-nav{gap:22px;font-size:.8125rem;padding-block:9px;flex-wrap:wrap}.section{padding-block:40px}.section h2{font-size:2.1875rem}.details-grid h2{font-size:2.1875rem}.details-grid li{font-size:.875rem}.faq summary{font-size:1.4375rem}.story-opening{grid-template-columns:1fr;gap:30px;padding-top:30px}.story-opening h1{font-size:3.1875rem}.story-opening p{font-size:.9375rem}.story-opening img{height:420px}.story-body blockquote{font-size:2.1875rem}.story-motto h2{font-size:2.25rem}.story-motto .text-link{font-size:.875rem}.journal-head{padding-block:31px 26px}.journal-head>.eyebrow{font-size:.625rem}.journal-head h1{font-size:clamp(3.75rem,20vw,6.25rem)}.journal-head>div{padding-top:19px;margin-top:18px}.journal-head>div p{font-size:1.6875rem}.journal-head>div span{font-size:.8125rem}.journal-list{gap:27px;padding-bottom:20px}.journal-list article{grid-template-columns:1fr;gap:21px}.journal-image img{width:200px;height:175px}.journal-list h2{font-size:1.875rem}.publication-state{margin-top:15px}.page-intro{padding-block:30px 29px}.page-intro h1{font-size:2.375rem}.contact-side{display:block}.contact-side h2{font-size:1.875rem}.contact-side>p{margin-top:15px;font-size:.875rem}.contact-price{font-size:2.0625rem;margin-top:22px}.contact-steps{grid-template-columns:1fr;gap:14px;padding-top:20px;margin-top:23px}.contact-step{display:grid;grid-template-columns:22px 1fr;gap:12px}.contact-step p{margin:0;font-size:.8125rem}.contact-step strong{font-size:.8125rem}.contact-box{padding:22px 18px}.intent-buttons{gap:7px;margin-bottom:22px}.intent-buttons button{font-size:.8125rem;padding:10px;min-height:53px}.field-row{grid-template-columns:1fr;gap:0}.simulation-stamp{font-size:.6875rem}dialog{padding:35px 24px}dialog h2{font-size:1.9375rem}}
@media(max-width:350px){.wrap{width:calc(100% - 32px)}.site-header{padding-inline:16px;gap:10px}.brand img{width:32px;height:32px}.brand span{font-size:1rem}.brand small{font-size:.4375rem}.menu-toggle{font-size:.75rem;gap:8px}.catalog-head h1{font-size:2.125rem}.program-nav{gap:17px;font-size:.75rem}.program-summary-card{padding:21px}.program-summary-card .button{font-size:.8125rem}.contact-price{font-size:1.8125rem}.intent-buttons{grid-template-columns:1fr}.story-opening h1{font-size:2.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}*:before{transition:none!important;animation:none!important}*:after{transition:none!important;animation:none!important}}
@media(max-width:540px){.catalog-aside{display:none}.catalog-head h1{font-size:2.375rem}.catalog-head{padding-bottom:27px}}
@media(max-width:350px){.catalog-head h1{font-size:2.125rem}}

.catalog-aside p{font-size:1.3125rem}.catalog-aside p br{display:none}.intent-choice{margin:0 0 35px}.intent-choice>.small-label{margin-bottom:12px}.intent-choice .intent-buttons{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;gap:12px}.intent-choice button{font-size:.875rem;padding:14px 16px}.contact-box{padding-top:28px}@media(max-width:760px){.intent-choice .intent-buttons{grid-template-columns:1fr 1fr}.intent-choice{margin-bottom:27px}.intent-choice button{font-size:.8125rem;min-height:52px}}@media(max-width:350px){.intent-choice .intent-buttons{grid-template-columns:1fr}.intent-choice button{font-size:.875rem}}.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}.catalog-intro{max-width:620px;margin:22px 0;font-size:1rem}.catalog-head .actions{gap:14px 22px}.catalog-head .actions .button{font-size:.875rem}.catalog-head .actions .text-link{font-size:.875rem}.commercial-trust{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-block:60px;}.commercial-trust h2{font-size:2.25rem;margin-bottom:20px}.commercial-trust>div:last-child{align-self:center}.commercial-trust p{font-size:.9375rem}.commercial-trust .text-link{margin-top:18px}.commercial-method{padding-block:55px}.commercial-method ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:0;margin:0}.commercial-method li{padding-top:21px}.commercial-method h3{font-size:1.5625rem;margin:15px 0}.commercial-method li p{font-size:.875rem}.commercial-terms{background:#eee8dc;padding:25px 28px;margin-top:25px}.commercial-terms>strong{font:350 1.5rem/1.4 var(--serif)}.commercial-terms p{font-size:.875rem;margin-top:10px;max-width:900px}.format-specific{color:var(--navy);font-size:.875rem!important;margin-top:13px!important}.commercial-questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding-block:50px}.commercial-questions h2{font-size:2.25rem}.orientation .small{margin-top:15px}.program-value{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-block:25px 34px;}.program-value p{font-size:.875rem;margin-top:10px}.intent-choice .intent-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.commercial-method ol{grid-template-columns:1fr 1fr}.commercial-trust{gap:35px}.commercial-questions{gap:35px}.program-value{gap:20px}.program-value p{font-size:.8125rem}}
@media(max-width:760px){.commercial-trust{grid-template-columns:1fr;gap:25px;padding-block:40px}.commercial-questions{grid-template-columns:1fr;gap:25px;padding-block:40px}.commercial-trust h2{font-size:2rem}.commercial-questions h2{font-size:2rem}.commercial-method{padding-block:35px}.program-value{grid-template-columns:1fr;gap:22px}.program-value>div{padding-bottom:18px}.program-value>div:last-child{border:0;padding:0}.program-value p{font-size:.875rem}.intent-choice .intent-buttons{grid-template-columns:1fr 1fr}.catalog-intro{font-size:.9375rem}.commercial-questions .faq summary{font-size:1.5rem}}
@media(max-width:540px){.catalog-head h1{font-size:2.25rem}.catalog-head .actions{align-items:start;gap:8px}.catalog-head .actions .button{font-size:.8125rem}.commercial-method ol{grid-template-columns:1fr;gap:22px}.commercial-method li{display:grid;grid-template-columns:25px minmax(0,1fr);gap:6px 16px}.commercial-method .serial{grid-row:1/3}.commercial-method h3{margin:0;font-size:1.5625rem}.commercial-method li p{grid-column:2}.commercial-terms{padding:23px}.commercial-terms>strong{font-size:1.5rem}.orientation>div{width:100%}.orientation .button{width:100%;font-size:.875rem}.commercial-questions{padding-top:30px}}
@media(max-width:350px){.catalog-head h1{font-size:1.9375rem}.intent-choice .intent-buttons{grid-template-columns:1fr}.commercial-questions h2{font-size:1.8125rem}.commercial-trust h2{font-size:1.8125rem}}.offer-jumps{display:flex;flex-wrap:wrap;gap:8px 30px;padding-block:12px;margin-bottom:28px;}.offer-jumps a{font:600 .875rem/1.5 var(--label);padding-block:9px;text-underline-offset:5px}.offer-jumps a:hover{text-decoration:underline}
@media(max-width:540px){.offer-jumps{gap:5px 20px;margin-bottom:22px}.offer-jumps a{font-size:.8125rem;min-height:44px;display:flex;align-items:center}}.programme-choice{font:600 .9375rem/1.6 var(--label);color:var(--navy);border-bottom:1px solid var(--line);padding-bottom:17px;margin:0 0 22px}

/* Source validée : coherence.css */
:root{--rail-width:42px;--space-section:72px;--section-title:clamp(32px,3.1vw,44px)}body{padding-left:var(--rail-width)}.editorial-rail{position:fixed;inset:0 auto 0 0;width:var(--rail-width);z-index:30;background:var(--navy);pointer-events:none;border-right:1px solid #577078}.rail-mark{position:absolute;top:25px;left:8px;width:26px;height:26px;object-fit:contain}.rail-name{position:absolute;left:12px;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;white-space:nowrap;font:600 .625rem/1.5 var(--label);letter-spacing:.2em;text-transform:uppercase;color:#bda475}.rail-city{position:absolute;bottom:26px;left:14px;writing-mode:vertical-rl;transform:rotate(180deg);font:600 .5625rem/1.5 var(--label);letter-spacing:.17em;text-transform:uppercase;color:#bda475}.rail-progress{position:absolute;right:-1px;top:0;width:2px;height:100%;background:#bda475;transform:scaleY(0);transform-origin:top}.rail-progress::after{content:'';position:absolute;bottom:0;left:-2px;width:6px;height:6px;border-radius:50%;background:#bda475}.skip{left:calc(var(--rail-width) + 16px)}.site-header{padding-inline:max(36px,calc((100% - 1224px)/2));gap:24px}.mobile-menu{left:var(--rail-width)}.mobile-menu a[aria-current]{color:#bda475}.header-cta[aria-current]{background:var(--navy);color:var(--cream)}.wrap{width:min(1224px,calc(100% - 112px))}h1{text-wrap:balance}h2{text-wrap:balance}h3{text-wrap:balance}p{text-wrap:pretty}.eyebrow{letter-spacing:.1em;margin-bottom:18px}.section-heading{align-items:start;margin-bottom:36px}.section-heading h2{font-size:var(--section-title);line-height:1.15}.details-grid h2{font-size:var(--section-title);line-height:1.15}.question-grid h2{font-size:var(--section-title);line-height:1.15}.commercial-trust h2{font-size:var(--section-title);line-height:1.15}.commercial-questions h2{font-size:var(--section-title);line-height:1.15}.section-heading>p{padding-top:36px;max-width:340px;line-height:1.75}.section{padding-block:var(--space-section)}.formats{padding-block:var(--space-section)}.commercial-method{padding-block:var(--space-section)}.commercial-trust{padding-block:var(--space-section)}.commercial-questions{padding-block:var(--space-section)}.details-grid{gap:64px}.question-grid{gap:64px}.commercial-trust{gap:64px}.commercial-questions{gap:64px}.button{min-height:52px;letter-spacing:.015em}.text-link{min-height:44px;gap:9px}.button:focus-visible{outline-color:var(--gold-text)}.text-link:focus-visible{outline-color:var(--gold-text)}summary:focus-visible{outline-color:var(--gold-text)}.desktop-nav a{white-space:nowrap}.catalog-head{grid-template-columns:minmax(0,1fr) 225px;gap:50px;padding-block:48px 36px}.catalog-head h1{font-size:clamp(2.5rem,4.25vw,3.75rem)}.catalog-intro{max-width:640px;line-height:1.8}.catalog-aside{padding-block:6px}.offer-jumps{gap:10px 32px;padding-block:10px}.program-nav{gap:10px 32px;padding-block:10px}.offer-jumps a{min-height:44px;display:inline-flex;align-items:center}.program-nav a{min-height:44px;display:inline-flex;align-items:center}.catalog-caption{font-size:.8125rem;max-width:850px;margin-top:24px}.commercial-trust{grid-template-columns:1.15fr 1fr;margin-top:24px;}.commercial-trust h2{font-size:2.25rem}.commercial-trust p{max-width:570px;line-height:1.8}.commercial-method{}.commercial-method ol{gap:32px}.commercial-method li{position:relative;padding-top:24px}.commercial-method h3{font-size:1.6875rem;min-height:1.15em}.commercial-method li p{line-height:1.8}.formats{padding-bottom:48px}.commercial-terms{padding:25px 28px}.commercial-terms p{line-height:1.8}.commercial-questions{}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{font-size:1.5rem;padding-block:22px}.faq summary:after{top:20px}.faq details[open] summary{color:var(--gold-text)}.orientation{padding-block:36px 56px;}.orientation h2{font-size:2.25rem}.orientation>div:last-child{flex-shrink:0;max-width:100%}.program-hero{grid-template-columns:minmax(0,1.4fr) minmax(290px,.9fr);gap:64px;align-items:start}.program-lead{padding-top:22px}.program-lead .program-promise{font-size:2rem;line-height:1.35}.program-lead>p:not(.program-promise){line-height:1.85;max-width:58ch}.program-summary-card{padding:28px;}.program-summary-card>img{width:104px;height:104px}.program-value{gap:32px;padding-block:30px}.program-value>div+div{padding-left:28px}.program-value p{font-size:.9375rem;line-height:1.75}.program-details{padding-block:60px}.details-grid li{line-height:1.8;padding-block:19px}.story-opening{gap:64px;padding-block:48px 60px}.story-opening h1{font-size:clamp(3rem,4.8vw,4.25rem)}.story-opening figure{padding:10px;background:var(--navy)}.story-opening img{height:510px}.story-opening figcaption{color:#d3dfe4;padding:16px 8px 6px;font-size:.8125rem}.story-body{gap:64px;padding-block:64px}.story-body blockquote{font-size:2.75rem;line-height:1.25}.story-body p{line-height:1.85}.story-motto h2{font-size:var(--section-title)}.journal-head{padding-block:48px 36px}.journal-head h1{font-size:clamp(3.375rem,5.3vw,4.75rem)}.journal-head>div p{font-size:1.8125rem;max-width:460px}.journal-head>div span{line-height:1.8;max-width:390px}.journal-list{gap:28px;padding-bottom:56px}.journal-list article{padding-bottom:28px}.journal-image{aspect-ratio:4/3;overflow:hidden;padding:24px}.journal-image img{height:100%;max-height:200px;object-fit:contain}.journal-list h2{font-size:1.875rem;line-height:1.25}.publication-state{font-size:.8125rem}.page-intro{padding-block:48px 34px}.page-intro h1{font-size:clamp(2.625rem,4.25vw,3.75rem)}.intent-choice{margin-bottom:36px}.intent-buttons button{text-align:left;min-height:60px;line-height:1.45;border-color:#b9bdb7}.intent-buttons button[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--gold)}.contact-layout{gap:28px 64px;align-items:start;grid-template-rows:auto 1fr}.contact-side{grid-column:1;grid-row:1}.contact-side>p{line-height:1.8}.contact-box{grid-column:2;grid-row:1/3;padding:30px;}.contact-steps{grid-column:1;grid-row:2;margin-top:0;padding-top:0}.contact-step p{font-size:.875rem;line-height:1.75}.contact-step strong{font-size:.875rem}.field{font-size:.875rem}.field input{font-size:1rem}.field textarea{font-size:1rem}.privacy-note{font-size:.8125rem;line-height:1.7}dialog{border-top:3px solid var(--gold)}
@media(min-width:1001px){.site-header{padding-left:max(56px,calc((100% - 1224px)/2));padding-right:max(56px,calc((100% - 1224px)/2))}}
@media(max-width:1100px){.program-hero{gap:36px}.commercial-method ol{grid-template-columns:1fr 1fr}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.site-header{padding-inline:32px}.catalog-head{grid-template-columns:1fr}.catalog-aside{display:none}.commercial-trust{gap:40px}.commercial-questions{gap:40px}.details-grid{gap:40px}.question-grid{gap:40px}.commercial-trust h2{font-size:2.125rem}.program-value{gap:20px}.program-value>div+div{padding-left:20px}.program-value p{font-size:.875rem}}
@media(max-width:900px){:root{--rail-width:6px}.rail-mark{display:none}.rail-name{display:none}.rail-city{display:none}.rail-progress{display:none}.editorial-rail{border:0}.program-hero{grid-template-columns:1fr;gap:28px}.program-lead{padding-top:0}.program-summary-card{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}.program-summary-card>img{display:none}.program-summary-card>.small-label{grid-column:1}.program-summary-card>p:not(.small){grid-column:1}.program-summary-card>.program-price{grid-column:2;grid-row:1/3;border:0;padding:0;margin:0}.program-summary-card>.button{grid-column:1/-1}.program-summary-card>.small{grid-column:1/-1}.program-summary-card>.button{margin:15px 0 8px}.program-value{grid-template-columns:1fr;gap:20px}.program-value>div+div{padding-left:0;}.program-value>div{padding-bottom:20px;}.program-value>div:last-child{padding:0;border:0}.details-grid{grid-template-columns:1fr;gap:28px}.question-grid{grid-template-columns:1fr;gap:28px}.commercial-trust{grid-template-columns:1fr;gap:28px}.commercial-questions{grid-template-columns:1fr;gap:28px}.contact-layout{grid-template-columns:1fr;grid-template-rows:auto;gap:28px}.contact-side{grid-column:1;grid-row:auto}.contact-box{grid-column:1;grid-row:auto}.contact-steps{grid-column:1;grid-row:auto}.contact-side{display:block}.contact-side>p{margin-top:18px;max-width:600px}.contact-price{margin-top:22px;padding-top:22px;}.contact-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:26px}.contact-step{display:block}.contact-step p{margin-top:10px}.story-opening{gap:35px}.story-opening img{height:430px}.story-opening h1{font-size:3rem}}
@media(max-width:760px){:root{--space-section:48px;--section-title:35px}.wrap{width:calc(100% - 48px)}.site-header{padding-inline:24px}.section-heading>p{padding-top:0}.commercial-trust{margin-top:28px}.program-lead .program-promise{font-size:1.8125rem}.story-body{gap:30px;padding-block:48px}.story-body blockquote{font-size:2.25rem}.journal-image{aspect-ratio:1}.journal-list article{padding-bottom:24px}.page-intro{padding-top:36px}.page-intro h1{font-size:2.75rem}.contact-box{padding:26px}.orientation h2{font-size:2rem}}
@media(max-width:600px){.story-opening{grid-template-columns:1fr;gap:30px}.story-opening img{height:460px}.intent-choice .intent-buttons{grid-template-columns:1fr 1fr}.intent-choice button{font-size:.875rem;padding:12px}.commercial-method ol{grid-template-columns:1fr}.commercial-method li{min-height:0}.catalog-head h1{font-size:2.375rem}.contact-steps{grid-template-columns:1fr;gap:20px}.contact-step{display:grid;grid-template-columns:24px 1fr;gap:14px}.contact-step p{margin:0}.field-row{grid-template-columns:1fr}.orientation h2{font-size:2rem}.commercial-terms{padding:23px}.program-summary-card{display:block}.program-summary-card>.program-price{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.program-summary-card>.button{margin-top:22px}}
@media(max-width:540px){:root{--space-section:44px;--section-title:34px}.wrap{width:calc(100% - 40px)}.site-header{padding-inline:20px}.section-heading{margin-bottom:28px}.catalog-head{padding-block:32px 26px}.catalog-head h1{font-size:2.25rem}.catalog-head .actions{gap:12px}.catalog-head .actions .button{width:100%;justify-content:space-between;font-size:.875rem}.catalog-head .actions .text-link{font-size:.875rem}.catalog-intro{font-size:1rem}.commercial-trust h2{font-size:2.125rem}.commercial-method li{padding-top:20px}.commercial-method h3{min-height:0;font-size:1.625rem}.commercial-method .serial{margin-top:3px}.program-nav{gap:8px 20px}.program-nav a{font-size:.875rem}.program-lead h1{font-size:clamp(2.5rem,10.5vw,3.625rem)}.program-lead .program-promise{font-size:1.75rem!important}.program-details{padding-block:44px}.details-grid li{font-size:.9375rem}.faq summary{font-size:1.4375rem}.story-opening h1{font-size:3.0625rem}.story-opening img{height:410px}.story-opening .story-standfirst{font-size:1.6875rem}.story-body blockquote{font-size:2.1875rem}.journal-head{padding-block:32px}.journal-head h1{font-size:3.875rem}.journal-head>div p{font-size:1.6875rem}.journal-list{gap:28px}.journal-image{aspect-ratio:1.55}.journal-image img{height:175px}.journal-list h2{font-size:1.8125rem}.page-intro{padding-block:32px 28px}.page-intro h1{font-size:2.5625rem}.contact-box{padding:24px 20px}.contact-side>p{font-size:.9375rem}.contact-side h2{font-size:1.9375rem}.contact-layout{gap:26px;padding-bottom:48px}.intent-choice{margin-bottom:28px}.privacy-note{font-size:.8125rem}}
@media(max-width:350px){.wrap{width:calc(100% - 32px)}.site-header{padding-inline:16px;gap:10px}.brand span{font-size:.9375rem}.brand small{font-size:.4375rem}.menu-toggle{gap:6px;font-size:.75rem}.catalog-head h1{font-size:1.875rem}.intent-choice .intent-buttons{grid-template-columns:1fr}.story-opening h1{font-size:2.625rem}.commercial-trust h2{font-size:1.9375rem}.commercial-questions h2{font-size:1.9375rem}.contact-box{padding-inline:17px}.page-intro h1{font-size:2.25rem}.journal-head h1{font-size:3.5625rem}.journal-image{aspect-ratio:1.3}}


/* Source validée : identite.css */
:root{--space-section:80px;--ink-soft:#536672}.button{border-radius:30px;padding-inline:25px}.button:hover{background:#244658}.header-cta{background:var(--navy);color:var(--cream)}.eyebrow{font-size:.75rem;letter-spacing:.13em}.chapter{display:flex;align-items:center;gap:18px;margin-bottom:32px}.chapter>span:first-child{font:italic 1.25rem var(--serif);color:var(--gold-text)}.chapter>span:nth-child(2){font:600 .75rem var(--label);text-transform:uppercase;letter-spacing:.12em}.opening-engraving{position:absolute;right:0;top:32px;width:230px;height:230px;object-fit:contain;opacity:.17;pointer-events:none;z-index:0}.catalog-head{position:relative;isolation:isolate}.page-intro{position:relative;isolation:isolate}.journal-head{position:relative;isolation:isolate}.catalog-head>div{position:relative;z-index:1}.page-intro>*{position:relative;z-index:1}.journal-head>*{position:relative;z-index:1}.catalog-head>.opening-engraving{position:absolute;z-index:0}.page-intro>.opening-engraving{position:absolute;z-index:0}.journal-head>.opening-engraving{position:absolute;z-index:0}.catalog-head>.opening-engraving{right:275px;width:160px;height:160px;opacity:.065}.catalog-aside{background:var(--cream);position:relative}.catalog-head h1{max-width:850px}.catalog-intro{margin-top:24px}.catalog-head .actions{margin-top:26px}.catalogue{padding-top:34px}.commercial-trust{position:relative;margin-block:45px 0;padding:40px 36px;background:#ebe4d6;gap:50px}.commercial-trust h2{font-size:2.0625rem}.commercial-trust>div:first-child>p{margin-top:22px}.commercial-trust .text-link{margin-top:20px}.commercial-trust .eyebrow{color:#765c24}.commercial-method ol{margin-top:45px;gap:36px}.commercial-method li{}.commercial-method .serial{font-size:2.125rem;display:block;margin-bottom:20px}.commercial-method h3{font-size:1.625rem}.commercial-terms{margin-top:30px;background:transparent}.orientation{padding-block:44px 65px}.orientation .small{margin-top:15px}.program-hero{position:relative;padding-bottom:55px}.program-lead h1{font-size:clamp(3rem,5.8vw,5.1875rem);letter-spacing:-.05em}.program-summary-card{background:var(--paper);padding-top:20px}.program-summary-card>img{width:150px;height:150px;margin-bottom:22px}.program-value{padding-block:32px 42px}.program-nav{}.program-nav a:hover{text-decoration:underline;text-underline-offset:5px}.program-details{background:var(--navy);color:var(--cream);position:relative}.program-details .eyebrow{color:#bda475}.program-details em{color:#bda475}.program-details .chapter-inline{color:#bda475}.details-grid li{color:#d8e1e5;}.details-grid li::before{color:#bda475}.faq details{transition:background .18s}.faq summary{font-size:1.4375rem}.page-intro{padding-block:52px 36px}.page-intro h1{max-width:720px}.page-intro>.opening-engraving{top:15px;right:30px;width:220px;height:220px;opacity:.11}.intent-choice .small-label{font-size:.75rem;margin-bottom:16px}.intent-buttons{gap:10px}.intent-buttons button{border-radius:4px;background:var(--paper);padding:17px}.contact-box{padding:32px;background:var(--paper)}.contact-side h2{font-size:2.25rem}.contact-address{padding-block:24px 46px;display:flex;gap:30px;flex-wrap:wrap}.contact-address a{font:600 .9375rem var(--label);min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px}.form-result:focus{outline:2px solid var(--gold-text);outline-offset:3px}.field select{width:100%;max-width:100%;display:block;margin-top:8px;min-height:48px;padding:11px;background:#fffdf8;border:1px solid #a7afa9;border-radius:2px;font:400 1rem/1.5 var(--sans)}.reference-content{width:min(1224px,calc(100% - 112px));margin:auto}.reference-content>section{padding-block:66px;position:relative;}.reference-content>.stats-section{padding-block:66px;position:relative;}.reference-content>.vision-section{padding-block:66px;position:relative;border-bottom:1px solid var(--line)}.reference-content>.final-cta{padding-block:66px;position:relative;}.reference-content .hero{padding:56px 270px 54px 0;position:relative;isolation:isolate}.reference-content .hero h1{font-size:clamp(2.625rem,4.6vw,4.0625rem);max-width:880px}.reference-content .hero>div:not(.hero-actions){position:relative;z-index:1}.reference-content .hero>p{position:relative;z-index:1}.reference-content .hero-sub{max-width:650px;margin-top:25px;font-size:1.0625rem;line-height:1.8}.reference-content .hero-actions{display:flex;align-items:center;gap:23px;margin-top:28px;flex-wrap:wrap}.hero-cta-group{display:flex;align-items:center;gap:23px;margin-top:28px;flex-wrap:wrap}.reference-content .hero .opening-engraving{opacity:.28;top:65px;width:220px;height:220px}.reference-content .badge{display:block;font:600 .75rem/1.6 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:19px}.reference-content .over{display:block;font:600 .75rem/1.6 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:19px}.reference-content .hero-eyebrow{display:block;font:600 .75rem/1.6 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:19px}.reference-content .section-eyebrow{display:block;font:600 .75rem/1.6 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:19px}.reference-content .proof-eyebrow{display:block;font:600 .75rem/1.6 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:19px}.reference-content h2{font-size:clamp(2rem,3.2vw,2.6875rem);max-width:780px;margin-bottom:25px}.reference-content h3{font-size:1.8125rem;margin-bottom:15px}.reference-content p{font-size:1rem;line-height:1.85;}.reference-content .section-intro{max-width:780px;margin-bottom:30px}.reference-content .section-sub{max-width:780px;margin-bottom:30px}.reference-content .section-folio{color:var(--gold-text);font:italic 1.1875rem var(--serif);margin-bottom:19px}.reference-content .button{font-size:.875rem}.reference-content .btn-secondary{margin-top:25px}.reference-content ul{padding-left:22px;line-height:1.85;color:var(--muted)}.reference-content li+li{margin-top:12px}.reference-content a:not(.button):not(.text-link):not(.link-btn):not(.poste-carte):hover{text-decoration:underline;text-underline-offset:4px}.reference-content .hors-ecran{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.reference-content .stats-section{display:grid;grid-template-columns:1fr 1.2fr;gap:15px 60px;align-items:start}.stats-section>.section-folio{grid-column:1/-1}.reference-content .stats-section h2{font-size:2.125rem;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.stat{padding-left:24px}.stat-num{font:350 2.375rem var(--serif);white-space:nowrap}.stat-label{font:600 .75rem/1.6 var(--label);margin-top:10px;color:var(--muted)}.histoire-duo{display:grid;grid-template-columns:1.35fr .85fr;gap:70px;align-items:start}.editorial-text-wrapper{max-width:700px}.editorial-text-wrapper p+p{margin-top:24px}.editorial-text-wrapper p:first-child{font:350 1.5rem/1.5 var(--serif);color:var(--navy);margin-bottom:28px}.editorial-hero-photo{position:sticky;top:115px;padding-left:12px}.editorial-hero-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:top}.editorial-hero-photo-info{padding-block:18px;}.editorial-hero-photo-info .label{font:600 .6875rem/1.5 var(--label);color:var(--gold-text);letter-spacing:.08em}.editorial-hero-photo-info .name{font:350 1.6875rem var(--serif);margin-top:6px}.histoire-quote{margin:35px 0;padding-left:24px;font:italic 1.75rem/1.5 var(--serif);color:var(--gold-text)}.reference-content>.vision-section{background:var(--navy);color:var(--cream);padding:50px 45px;margin-block:40px;border:0}.reference-content>.signature-section{background:var(--navy);color:var(--cream);padding:50px 45px;margin-block:40px;border:0}.reference-content>.vision-section p{color:#d3dde2}.reference-content>.signature-section p{color:#d3dde2}.reference-content>.vision-section em{color:#bda475}.reference-content>.signature-section em{color:#bda475}.reference-content .vision-quote{font:350 2.125rem/1.4 var(--serif);max-width:940px}.reference-content .vision-author{margin-top:23px;font:600 .75rem var(--label);letter-spacing:.1em;color:#bda475}.reference-content .vision-text{max-width:850px;margin-top:27px}.reference-content .vision-section .section-folio{color:#bda475}.reference-content .signature-section .section-folio{color:#bda475}.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:34px}.ecosystem-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:34px}.signature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:34px}.culture-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:34px}.missions-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:34px}.values-section .values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.signature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.culture-grille{grid-template-columns:repeat(2,minmax(0,1fr))}.missions-grille{grid-template-columns:repeat(2,minmax(0,1fr))}.value-card{padding-top:25px}.ecosystem-card{padding-top:25px}.signature-card{padding-top:25px}.culture-item{padding-top:25px}.mission{padding-top:25px}.signature-card{}.value-num{font:italic 1.3125rem var(--serif);color:var(--gold-text);margin-bottom:20px}.signature-card-num{font:italic 1.3125rem var(--serif);color:var(--gold-text);margin-bottom:20px}.mission-num{font:italic 1.3125rem var(--serif);color:var(--gold-text);margin-bottom:20px}.signature-card-num{color:#bda475}.reference-content .signature-card h3{font-size:1.6875rem;max-width:440px}.ecosystem-brands{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:24px}.ecosystem-brand-logo{width:100px}.ecosystem-brand-logo img{max-height:80px;object-fit:contain}.ecosystem-brand-autres{font-size:.8125rem}.final-cta{display:grid;grid-template-columns:1.3fr 1fr;gap:15px 60px;align-items:center}.final-cta .section-folio{grid-column:1/-1}.reference-content .final-cta h2{grid-column:1;grid-row:1/4;margin:0}.final-cta .final-cta-intro{grid-column:2;margin-bottom:18px}.final-cta .button{grid-column:2;justify-self:start}.final-cta-price{grid-column:2;font:350 1.625rem var(--serif);margin-top:8px}.postes-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}.poste-carte{display:flex;flex-direction:column;padding:34px;background:var(--paper);transition:border-color .18s}.poste-carte:hover{border-color:var(--gold)}.poste-tag{font:600 .75rem/1.6 var(--label);text-transform:uppercase;letter-spacing:.1em;color:var(--gold-text);margin-bottom:20px}.profil-lab{font:600 .75rem/1.6 var(--label);text-transform:uppercase;letter-spacing:.1em;color:var(--gold-text);margin-bottom:20px}.poste-lire{margin-top:auto;padding-top:30px;font:600 .9375rem/1.5 var(--label);display:flex;justify-content:space-between}.poste-lire::after{content:'↗';font-size:1.4375rem}.culture-item strong{display:block;font:350 1.6875rem/1.3 var(--serif);margin-bottom:15px}.mission strong{display:block;font:350 1.6875rem/1.3 var(--serif);margin-bottom:15px}.etape strong{display:block;font:350 1.6875rem/1.3 var(--serif);margin-bottom:15px}.deroule-grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:40px}.etape{padding-top:24px}.etape-num{font:350 2.1875rem/1 var(--serif);color:var(--gold-text);margin-bottom:22px}.reference-content .etape p{font-size:.875rem}.poste-faits{margin-top:26px!important;font-size:.875rem;color:var(--muted)}.poste-faits strong{margin-right:15px;color:var(--navy)}.poste-texte{max-width:790px}.poste-texte p+p{margin-top:20px}.profil-duo{display:grid;grid-template-columns:1.2fr .8fr;gap:45px}.profil-col{padding-top:22px}.profil-col ul{margin:0}.cand-grille{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.cand-cadre{position:sticky;top:116px}.cand-note{margin-top:24px;font-size:.875rem!important}.aux-form{padding:30px;background:var(--paper);}.demo-note{padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--line);font:400 .8125rem/1.7 var(--sans)!important;color:var(--muted)}.file-demo{padding:19px;border:1px dashed #9f998a;margin-bottom:24px}.file-demo p{font-size:.8125rem!important;margin-block:10px}.file-demo small{font-size:.8125rem!important;margin-block:10px}.file-demo .field{margin-bottom:0}.aux-form .privacy-note{font-size:.8125rem}.aux-form .button{width:100%;margin-top:10px}.aux-form .sim-options{font-size:.8125rem}.aux-form .sim-options select{display:block;width:100%;margin-top:9px;font-size:.875rem}.aux-form .field textarea{min-height:155px}.journal-head{padding-bottom:45px}.journal-head h1{font-size:clamp(2.6875rem,4.7vw,4.125rem);max-width:850px}.journal-head .opening-engraving{right:15px;top:20px;opacity:.1}.journal-feature{padding-bottom:55px}.journal-feature-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:center;padding-block:35px}.feature-art{background:#eee7d9;display:grid;place-items:center;min-height:300px}.feature-art img{width:260px;height:260px;object-fit:contain}.journal-feature h2{font-size:2.25rem;line-height:1.25}.journal-feature p{margin-top:23px;max-width:650px}.journal-filters{display:flex;align-items:end;gap:22px;flex-wrap:wrap;margin-bottom:35px}.journal-filters label{font:600 .75rem/1.5 var(--label);text-transform:uppercase;letter-spacing:.06em}.journal-filters select{display:block;min-height:48px;padding:11px 35px 11px 14px;max-width:100%;background:var(--paper);border:1px solid #a7afa9;font:400 .875rem var(--sans);margin-top:10px}.journal-filters #journal-count{margin-left:auto;font-size:.8125rem;padding-bottom:10px}.journal-collection>.journal-list{width:100%;margin:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 32px;padding-bottom:45px}.journal-list article{padding-top:20px;display:block}.journal-list article>.serial{display:block;margin-bottom:23px;font-size:1.5625rem}.journal-list article h2{font-size:1.75rem;line-height:1.28}.journal-list article p{font-size:.875rem;line-height:1.8;margin-top:18px}.journal-list .eyebrow{font-size:.6875rem;margin-bottom:12px}.publication-state{border-radius:30px;font-size:.75rem;padding:5px 13px}.journal-empty{padding-block:10px 45px}.recruit-call{background:var(--navy);color:var(--cream);padding:35px 40px;margin-block:20px 55px}.recruit-call .chapter>span:first-child{color:#bda475}.recruit-call .chapter i{background:#49606c}.recruit-call>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px;align-items:center}.recruit-call h2{grid-row:1/3;font-size:2.5rem}.recruit-call em{color:#bda475}.recruit-call p{color:#d3dde2}.recruit-call .button{justify-self:start;border-color:#8b9da5}.newsletter-demo{padding-bottom:65px}.newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.newsletter-grid h2{font-size:2.625rem}.newsletter-grid>div>p{margin-top:23px}.consent-demo{display:flex;align-items:start;gap:12px;font-size:.8125rem;line-height:1.7;margin:20px 0}.consent-demo input{margin-top:4px;width:18px;height:18px;flex-shrink:0;accent-color:var(--navy)}.reference-content.legal-page .hero{padding-right:0;max-width:900px}.legal-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:75px;padding-block:48px 70px}.legal-toc{position:sticky;top:112px;align-self:start;max-height:calc(100vh - 140px);overflow:auto;padding-right:20px}.legal-toc a{display:block;font-size:.8125rem;line-height:1.5;padding-block:12px}.legal-text{max-width:760px;overflow-wrap:anywhere}.reference-content .legal-text h2{font-size:1.8125rem;margin-top:45px;margin-bottom:20px;padding-top:20px;}.reference-content .legal-text h2:first-child{margin-top:0}.reference-content .legal-text h3{font-size:1.4375rem;margin-top:28px}.legal-text p{font-size:.9375rem;line-height:1.9;margin-bottom:21px}.legal-text ul{font-size:.9375rem;margin-bottom:25px}.legal-text ol{font-size:.9375rem;margin-bottom:25px}.legal-text a{text-decoration:underline;text-underline-offset:4px}.legal-text table{width:100%;border-collapse:collapse}.legal-text td{padding:13px;border:1px solid var(--line);text-align:left}.legal-text th{padding:13px;border:1px solid var(--line);text-align:left}.legal-text .reglement-note{border-left:2px solid var(--gold);padding:20px;background:var(--paper);margin-block:20px}.content-landing-campagne .hero{padding-right:0;max-width:950px}.content-landing-campagne .hero h1{font-size:clamp(2.625rem,5vw,4.5rem)}.content-landing-campagne .hero .highlight{color:var(--gold-text);font-style:italic}.proof-section{display:grid;grid-template-columns:1fr 1fr;gap:24px 60px}.proof-section .section-folio{grid-column:1/-1}.proof-eyebrow{grid-column:1/-1}.proof-buttons{grid-column:2;display:flex;gap:18px;flex-wrap:wrap}.proof-btn{display:inline-flex;align-items:center;min-height:48px;border-bottom:1px solid var(--gold);font:600 .875rem/1.5 var(--label)}.empire-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.empire-card{padding-top:22px}.empire-brand{font:600 .8125rem/1.5 var(--label);color:var(--gold-text);margin-bottom:15px}.reference-content .empire-card h3{font-size:1.5625rem}.reference-content .empire-card p{font-size:.875rem}.empire-tagline{font:italic 1.0625rem/1.5 var(--serif)!important;margin-top:14px}.stats-bar{display:flex;gap:35px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}.stats-bar .stat-item{display:flex;align-items:center;gap:16px}.stats-bar .stat-label{margin:0}.phases-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}.phase-pill{padding-block:23px;border-block:1px solid var(--line)}.phase-pill-num{font:italic 1.3125rem var(--serif);color:var(--gold-text);margin-bottom:12px}.reference-content .phase-pill h3{font-size:1.5625rem;margin-bottom:0}.closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:35px;align-items:start}.closing-card{padding:32px;background:var(--paper)}.closing-badge{font:600 .75rem var(--label);color:var(--gold-text);margin-bottom:22px}.closing-card h2{font-size:2.125rem}.closing-card p{font-size:.9375rem;margin-top:20px}.closing-card .aux-form{padding:0;border:0;margin-top:25px}.closing-card .demo-note{margin-top:0}.closing-price{display:block;font:350 1.75rem/1.5 var(--serif);margin-block:20px}.closing-cta{margin-top:25px}.calendly-mock-label{font-size:.8125rem;color:var(--muted)}.reassurance{background:var(--navy);padding:38px;color:var(--cream);margin-bottom:45px}.reassurance-quote{font:italic 2rem/1.4 var(--serif)!important;color:var(--cream)}.reassurance-author{color:#bda475;font-size:.8125rem!important;margin-top:20px}.content-linktree{max-width:590px;padding-block:45px 65px}.links-identity{text-align:center;padding-block:12px 30px}.links-identity img{margin:0 auto 25px}.links-identity h1{font-size:2.875rem}.links-identity p{font:italic 1.4375rem var(--serif);margin-top:18px}.content-linktree .section{padding-block:24px}.content-linktree .section-label{font:600 .75rem/1.5 var(--label);letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px;color:var(--gold-text)}.link-btn{display:block;position:relative;padding:24px 50px 24px 24px;border:1px solid var(--line);background:var(--paper);margin-bottom:14px}.link-btn-title{display:block;font:600 1rem/1.5 var(--label)}.link-btn-sub{display:block;font-size:.875rem;margin-top:9px;color:var(--muted)}.link-btn-arrow{position:absolute;right:22px;top:24px;font-size:1.5rem}.link-btn.primary{background:var(--navy);color:var(--cream)}.link-btn.primary .link-btn-sub{color:#d2dde3}.link-btn:hover{border-color:var(--gold)}.socials{display:flex;justify-content:center;gap:15px;margin:18px 0}.socials a{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.socials svg{width:21px;height:21px}.verify-block{font-size:.875rem;text-align:center;margin-top:24px;line-height:1.9}.verify-block a{text-decoration:underline}.error-number{font:350 6.25rem/1 var(--serif);color:var(--gold-text);display:block;margin-bottom:25px}.reference-content.content-404 .hero{max-width:900px;padding-right:0}.content-404 .hero-actions{margin-top:35px}.content-404{min-height:65vh;padding-bottom:35px}.page-directory{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.page-directory a{display:flex;align-items:center;min-height:44px;border-bottom:1px solid var(--line);font-size:.875rem}.directory-dialog{width:min(740px,calc(100% - 36px))}
@media(max-width:1100px){.empire-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deroule-grille{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-layout{grid-template-columns:220px minmax(0,1fr);gap:40px}.reference-content .hero{padding-right:200px}.reference-content .hero .opening-engraving{width:180px;height:180px}.histoire-duo{gap:40px}.catalog-head>.opening-engraving{display:none}}
@media(max-width:1000px){.reference-content{width:calc(100% - 64px)}.commercial-trust{padding:34px;gap:35px}.reference-content .hero h1{font-size:3.0625rem}.values-grid{gap:28px}.ecosystem-grid{gap:28px}.reference-content .stats-section{grid-template-columns:1fr}.stats-grid{margin-top:20px}.reference-content .vision-quote{font-size:1.9375rem}.cand-grille{gap:35px}.closing-grid{gap:25px}.closing-card{padding:25px}.journal-list article h2{font-size:1.625rem}.journal-feature-grid{gap:32px}.journal-feature h2{font-size:1.9375rem}}
@media(max-width:900px){.program-summary-card{padding-top:26px}.program-value{padding-bottom:32px}.commercial-trust{grid-template-columns:1fr}.reference-content .hero{padding-right:145px}.reference-content .hero .opening-engraving{width:145px;height:145px;opacity:.17}.histoire-duo{grid-template-columns:1fr}.editorial-hero-photo{position:static;max-width:450px;justify-self:center;margin-top:15px}.reference-content .editorial-text-wrapper{max-width:none}.editorial-hero-photo img{height:470px;width:100%;object-fit:cover}.ecosystem-grid{grid-template-columns:1fr}.ecosystem-card{display:grid;grid-template-columns:1fr 2fr;gap:10px 30px}.ecosystem-brands{grid-column:2}.cand-grille{grid-template-columns:1fr;gap:30px}.cand-cadre{position:static;max-width:730px}.reference-content .candidature h2{max-width:570px}.cand-note{margin-top:15px}.profil-duo{gap:30px}.legal-layout{grid-template-columns:1fr;gap:30px;padding-top:32px}.legal-toc{position:static;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;border-bottom:1px solid var(--line);padding-bottom:25px}.legal-toc .eyebrow{grid-column:1/-1}.legal-toc a{font-size:.8125rem}.legal-text{max-width:none}.closing-grid{grid-template-columns:1fr}.proof-section{grid-template-columns:1fr}.proof-buttons{grid-column:1}.phases-row{grid-template-columns:repeat(3,minmax(0,1fr))}.reference-content .final-cta{grid-template-columns:1fr;gap:20px}.reference-content .final-cta h2{grid-column:1;grid-row:auto}.final-cta .final-cta-intro{grid-column:1;grid-row:auto}.final-cta .button{grid-column:1;grid-row:auto}.final-cta-price{grid-column:1;grid-row:auto}.final-cta-price{margin-top:0}.final-cta .final-cta-intro{margin-bottom:0}.journal-collection>.journal-list{grid-template-columns:1fr 1fr}.newsletter-grid{gap:35px}.recruit-call{padding:30px}.recruit-call h2{font-size:2.25rem}}
@media(max-width:760px){:root{--space-section:52px}.reference-content{width:calc(100% - 48px)}.reference-content>section{padding-block:46px}.reference-content>.stats-section{padding-block:46px}.reference-content>.final-cta{padding-block:46px}.reference-content .hero{padding:38px 0 42px}.reference-content .hero .opening-engraving{right:0;top:20px;opacity:.09;width:180px;height:180px}.reference-content .hero h1{font-size:2.875rem;max-width:600px;position:relative;z-index:1}.reference-content .hero-sub{font-size:1rem;max-width:600px}.reference-content h2{font-size:2.125rem}.reference-content h3{font-size:1.6875rem}.reference-content .vision-section{padding:32px;margin-block:25px}.reference-content .signature-section{padding:32px;margin-block:25px}.reference-content .vision-quote{font-size:1.8125rem}.values-grid{grid-template-columns:1fr}.values-section .values-grid{grid-template-columns:1fr 1fr}.reference-content .value-card{padding-top:22px}.histoire-quote{font-size:1.625rem}.stat-num{font-size:1.9375rem}.stat{padding-left:20px}.stat-label{font-size:.6875rem}.stats-grid{gap:20px}.postes-grille{gap:20px}.poste-carte{padding:25px}.missions-grille{gap:30px}.culture-grille{gap:30px}.profil-duo{grid-template-columns:1fr;gap:32px}.aux-form{padding:25px}.journal-feature-grid{grid-template-columns:.6fr 1fr;gap:28px}.feature-art{min-height:230px}.feature-art img{width:180px;height:180px}.journal-feature h2{font-size:1.75rem}.journal-head h1{font-size:2.8125rem}.journal-head>div{gap:25px}.newsletter-grid{grid-template-columns:1fr;gap:30px}.newsletter-grid h2{font-size:2.25rem}.recruit-call>div:last-child{grid-template-columns:1fr;gap:22px}.recruit-call h2{grid-row:auto}.journal-filters{gap:18px}.journal-filters #journal-count{margin-left:0}.page-intro>.opening-engraving{right:0;width:150px;height:150px;opacity:.08}.page-intro h1{max-width:540px}.contact-box{padding:26px}}
@media(max-width:600px){.program-lead h1{font-size:clamp(2.5rem,10.2vw,3.75rem)}.reference-content .hero h1{font-size:2.5rem}.reference-content .hero-actions{gap:15px}.reference-content .hero-actions .button{max-width:100%;font-size:.875rem}.reference-content .hero-actions .text-link{font-size:.875rem}.reference-content .hero-sub{font-size:.9375rem}.reference-content .stats-section h2{font-size:1.9375rem}.stat-num{font-size:1.6875rem}.stats-grid{gap:12px}.stat{padding-left:12px}.stat-label{font-size:.625rem}.reference-content .vision-section{padding:28px 23px}.reference-content .signature-section{padding:28px 23px}.reference-content .vision-quote{font-size:1.625rem}.signature-grid{grid-template-columns:1fr;gap:27px}.values-section .values-grid{grid-template-columns:1fr;gap:27px}.postes-grille{grid-template-columns:1fr;gap:27px}.culture-grille{grid-template-columns:1fr;gap:27px}.missions-grille{grid-template-columns:1fr;gap:27px}.ecosystem-card{display:block}.ecosystem-brands{margin-top:20px}.reference-content .signature-card h3{font-size:1.625rem}.reference-content .editorial-text-wrapper p:first-child{font-size:1.375rem}.reference-content p{font-size:.9375rem}.editorial-hero-photo img{height:420px}.legal-toc{grid-template-columns:1fr;gap:0}.reference-content .legal-text h2{font-size:1.6875rem}.legal-text p{font-size:.875rem}.legal-text li{font-size:.875rem}.legal-text td{padding:9px;font-size:.8125rem}.legal-text th{padding:9px;font-size:.8125rem}.empire-grid{grid-template-columns:1fr 1fr;gap:25px}.reference-content .empire-card h3{font-size:1.4375rem}.phases-row{grid-template-columns:1fr 1fr;gap:20px}.stats-bar{gap:25px;flex-wrap:wrap}.reassurance{padding:28px}.reassurance-quote{font-size:1.6875rem!important}.journal-feature-grid{grid-template-columns:1fr}.feature-art{min-height:200px}.feature-art img{width:180px;height:180px}.journal-feature h2{font-size:1.9375rem}.journal-collection>.journal-list{grid-template-columns:1fr;gap:28px}.journal-list article{display:grid;grid-template-columns:28px 1fr;gap:18px}.journal-list article h2{font-size:1.6875rem}.journal-list article>.serial{font-size:1.25rem}.journal-filters label{width:100%}.journal-filters select{width:100%}.journal-filters #journal-count{margin-left:auto}.journal-head h1{font-size:2.625rem}.journal-head .opening-engraving{width:150px;height:150px;opacity:.07}.recruit-call h2{font-size:2.1875rem}.deroule-grille{grid-template-columns:1fr 1fr;gap:25px}.etape strong{font-size:1.5rem}.contact-address{display:grid;gap:5px}.reference-content .final-cta h2{font-size:2.125rem}.content-linktree{max-width:500px}.links-identity h1{font-size:2.625rem}.reference-content .link-btn{padding:23px 42px 23px 22px}.link-btn-arrow{right:17px}.link-btn-title{font-size:.9375rem}.link-btn-sub{font-size:.8125rem}.page-directory{grid-template-columns:1fr}}
@media(max-width:540px){.reference-content{width:calc(100% - 40px)}.reference-content>section{padding-block:38px}.reference-content>.stats-section{padding-block:38px}.reference-content>.final-cta{padding-block:38px}.chapter{gap:13px;margin-bottom:25px}.chapter>span:nth-child(2){font-size:.6875rem}.commercial-trust{padding:28px 24px;margin-top:32px}.commercial-trust h2{font-size:1.9375rem}.program-details{padding-block:43px}.contact-box{padding:24px 20px}.aux-form{padding:23px 20px}.reference-content .hero h1{font-size:2.3125rem;line-height:1.13}.reference-content .hero h1 br{display:none}.reference-content .hero h1 br::after{content:' '}.reference-content .hero .opening-engraving{width:135px;height:135px;top:18px}.reference-content .hero{padding-top:34px}.reference-content .hero-sub{line-height:1.8}.reference-content .hero-actions .button{width:100%;text-align:center}.reference-content h2{font-size:1.9375rem}.histoire-quote{font-size:1.5625rem;padding-left:20px}.reference-content .vision-section{margin-inline:0}.reference-content .signature-section{margin-inline:0}.stat-num{font-size:1.5625rem}.stat-label{font-size:.625rem}.stats-grid{gap:8px}.stat{padding-left:10px}.deroule-grille{grid-template-columns:1fr}.empire-grid{grid-template-columns:1fr}.etape{display:grid;grid-template-columns:36px 1fr;gap:0 18px}.etape-num{grid-row:1/3;font-size:1.75rem}.etape p{grid-column:2}.etape strong{margin-bottom:12px}.reference-content .empire-card h3{font-size:1.6875rem}.reference-content .empire-card p{font-size:.875rem}.legal-layout{padding-top:26px}.reference-content .legal-text h2{margin-top:32px}.reference-content .legal-text h3{font-size:1.375rem}.closing-card{padding:23px}.closing-price{font-size:1.625rem}.reference-content .closing-card h2{font-size:1.9375rem}.reassurance{padding:26px 22px}.reassurance-quote{font-size:1.5625rem!important}.journal-feature h2{font-size:1.8125rem}.journal-head h1{font-size:2.375rem}.journal-head>div p{font-size:1.625rem}.journal-filters select{font-size:.875rem}.recruit-call{padding:26px 22px}.journal-feature{padding-bottom:40px}.newsletter-demo{padding-bottom:45px}.simulation-stamp{width:100%;margin-left:0}.links-identity p{font-size:1.3125rem}}
@media(max-width:350px){.reference-content{width:calc(100% - 32px)}.button{padding-inline:18px;gap:14px;font-size:.8125rem}.commercial-trust h2{font-size:1.8125rem}.reference-content .hero h1{font-size:2rem}.reference-content .hero h1 br{display:initial}.reference-content .hero-actions .button{font-size:.75rem}.reference-content h2{font-size:1.8125rem}.reference-content .stats-section h2{font-size:1.8125rem}.stats-grid{grid-template-columns:1fr;gap:17px}.stat{display:flex;gap:17px;align-items:center;padding-block:3px}.stat-label{margin:0;font-size:.6875rem;max-width:130px}.reference-content .vision-section{padding:24px 20px}.reference-content .signature-section{padding:24px 20px}.reference-content .vision-quote{font-size:1.5rem}.aux-form{padding:20px 16px}.reference-content .aux-form .button{font-size:.75rem}.page-intro h1{font-size:2.1875rem}.closing-card{padding:21px 17px}.journal-head h1{font-size:2.0625rem}.journal-list article{grid-template-columns:1fr;gap:0}.journal-list article h2{font-size:1.5625rem}.journal-filters #journal-count{margin-left:0}.recruit-call h2{font-size:1.9375rem}.links-identity h1{font-size:2.375rem}.link-btn-title{font-size:.875rem}.chapter>span:nth-child(2){font-size:.625rem}.reference-content .legal-text h2{font-size:1.5625rem}}
@media(prefers-reduced-motion:reduce){.faq details{transition:none}.poste-carte{transition:none}}.poste-faits b{margin-right:12px;font-weight:600;color:var(--navy)}.hero-cta-group .btn-ghost{background:transparent;color:var(--navy)}
@media(max-width:900px){}
@media(max-width:600px){}
@media(max-width:540px){.commercial-method .serial{font-size:1.5rem}}
/* Reprise du 30 septembre : composition de l'accueil{margin-bottom:24px;display:block}sans couches concurrentes. */
.chapter{margin-bottom:24px;display:block}.chapter>span:first-child{font:600 .75rem/1.5 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-text)}.text-link{border:0;gap:10px;text-decoration:none}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.site-header{box-shadow:0 6px 20px #12283904}.home-opening{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(40px,6vw,88px);align-items:center;padding-block:54px 76px}.home-copy h1{font-size:clamp(3.25rem,5.6vw,5rem);line-height:1.04;letter-spacing:-.05em}.home-copy .eyebrow{margin-bottom:28px}.home-copy>p{font-size:1rem;line-height:1.85;max-width:510px;margin:28px 0}.home-copy .actions{gap:12px 22px}.home-copy .button{font-size:.875rem}.home-copy .text-link{font-size:.875rem}.home-signature{margin-top:30px;font:italic 1.375rem/1.4 var(--serif);color:var(--navy)}.home-signature>.signature-rule{display:none}.home-signature small{display:block;font:.75rem/1.7 var(--sans);color:var(--muted);margin-top:8px}.home-photo{margin:0;width:100%;max-width:480px;justify-self:end}.home-photo>img{width:100%;height:520px;object-fit:cover;object-position:center 18%}.home-photo figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:17px;font:600 .6875rem/1.6 var(--label);color:var(--muted)}.home-photo figcaption>span:first-child{color:var(--gold-text)}.home-programmes{padding-block:76px;background:var(--paper)}.home-programmes>.wrap{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.5fr);column-gap:64px;grid-template-rows:min-content 1fr;align-items:start}.home-programmes .section-heading{display:block;grid-column:1;grid-row:1;margin:14px 0 0}.home-programmes .section-heading h2{font-size:clamp(2.25rem,3.3vw,2.9375rem)}.home-programmes .section-heading>p{padding:0;margin-top:27px;max-width:300px;font-size:.9375rem}.home-programmes .section-heading>p br{display:none}.home-links{display:grid;grid-column:2;grid-row:1/3;gap:10px}.home-links>a{display:grid;grid-template-columns:62px minmax(0,1fr) 140px;gap:20px;align-items:center;padding:24px;background:var(--cream);border-radius:4px;transition:background .18s}.home-links>a:hover{background:#ede5d6}.home-links>a:focus-visible{outline-offset:3px}.home-links .programme-symbol{width:62px;height:62px;object-fit:contain}.home-offer-copy .small-label{font-size:.625rem;letter-spacing:.07em;margin-bottom:6px}.home-links h3{font-size:1.875rem;line-height:1.1;margin:0 0 9px}.home-links p{font-size:.8125rem;line-height:1.65;max-width:340px}.home-link-budget{font:350 1.5rem/1.35 var(--serif);text-align:right;white-space:nowrap}.home-link-budget small{display:block;font:.75rem/1.6 var(--sans);color:var(--muted);margin-bottom:5px}.home-offer-arrow{display:block;font:1.5rem/1 var(--sans);margin-top:12px;color:var(--gold-text)}.section-tail{grid-column:1;grid-row:2;align-self:start;margin-top:30px;font-size:.8125rem;line-height:1.8;max-width:300px}.section-tail>span{display:block}.section-tail .text-link{margin-top:16px;font-size:.875rem}.approach-band{background:var(--navy);color:var(--cream)}.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding-block:80px}.approach-title h2{font-size:clamp(2.5rem,4vw,3.5rem);line-height:1.12}.approach-title .text-link{margin-top:24px;color:var(--cream)}.approach-band p{color:#d0dce2}.approach-band em{color:#bda475}.approach-band .eyebrow{color:#bda475}.approach-copy .lead{font:350 1.875rem/1.4 var(--serif);color:var(--cream);margin-bottom:25px}.approach-copy>p{font-size:.9375rem;line-height:1.85}.principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px;margin-top:36px}.principles span{font:600 .6875rem/1.6 var(--label);color:#bda475}.principles h3{font-size:1.5rem;margin:9px 0 13px;letter-spacing:-.025em}.principles p{font-size:.8125rem;line-height:1.8}.home-dual{padding-block:80px}.home-dual .section-heading{margin-bottom:40px}.dual-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.dual-grid h3{font-size:1.875rem;margin-bottom:18px}.dual-grid p{max-width:500px;font-size:1rem;line-height:1.85}.dual-grid .text-link{margin-top:16px}.first-step{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center;padding-block:64px 88px}.first-step h2{font-size:clamp(2.125rem,3.6vw,3.0625rem);line-height:1.14}.first-step>div>p{max-width:600px;font-size:1rem;line-height:1.85}.first-step-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:22px;margin:26px 0 18px}.first-step-meta strong{display:block;font:350 2.1875rem/1.2 var(--serif)}.first-step-meta small{display:block;font:.75rem/1.6 var(--sans);color:var(--muted);margin-top:7px}.first-step-meta .button{font-size:.875rem}
@media(max-width:1100px){.home-programmes>.wrap{column-gap:38px;grid-template-columns:.7fr 1.3fr}.home-links>a{grid-template-columns:48px minmax(0,1fr) 123px;padding:22px 19px;gap:15px}.home-links .programme-symbol{width:48px;height:48px}.home-links h3{font-size:1.6875rem}.home-link-budget{font-size:1.375rem}.home-opening{gap:36px}.home-copy h1{font-size:3.625rem}.home-photo>img{height:490px}.approach{gap:48px}.principles{grid-template-columns:1fr;gap:20px}.principles>div{display:grid;grid-template-columns:25px 1fr;gap:7px 15px}.principles h3{margin:0}.principles p{grid-column:2}
}
@media(max-width:900px){.home-opening{gap:30px;padding-block:40px 60px}.home-copy h1{font-size:3.1875rem}.home-photo>img{height:445px}.home-programmes>.wrap{grid-template-columns:1fr}.home-programmes .section-heading{grid-column:1;grid-row:1;display:flex;gap:32px;align-items:center;margin:0 0 30px}.home-programmes .section-heading>p{margin:0;max-width:290px}.home-links{grid-column:1;grid-row:2}.section-tail{grid-column:1;grid-row:3;max-width:none;display:flex;gap:25px;align-items:center;justify-content:space-between}.section-tail .text-link{margin:0}.home-links>a{grid-template-columns:64px minmax(0,1fr) 150px;gap:25px;padding:23px}.home-links .programme-symbol{width:64px;height:64px}.home-links h3{font-size:1.875rem}.home-link-budget{font-size:1.5rem}.approach{gap:35px}.approach-title h2{font-size:2.5rem}.approach-copy .lead{font-size:1.6875rem}.first-step{gap:35px}
}
@media(max-width:600px){.home-opening{grid-template-columns:1fr;gap:32px;padding-block:32px 48px}.home-copy h1{font-size:clamp(2.625rem,11.8vw,4.125rem)}.home-copy .eyebrow{font-size:.6875rem;margin-bottom:24px}.home-copy>p{font-size:.9375rem;margin-block:24px}.home-copy .button{width:100%;justify-content:space-between}.home-copy .actions{gap:8px}.home-signature{font-size:1.3125rem;margin-top:22px}.home-photo{max-width:none}.home-photo>img{height:380px;object-position:center 24%}.home-photo figcaption{font-size:.625rem;gap:10px;padding-top:14px}.home-programmes{padding-block:48px}.home-programmes .section-heading{display:block}.home-programmes .section-heading h2{font-size:2.25rem}.home-programmes .section-heading>p{max-width:380px;margin-top:22px}.home-links{gap:12px}.home-links>a{grid-template-columns:48px minmax(0,1fr);gap:12px 18px;padding:23px 20px}.home-links .programme-symbol{grid-column:1;grid-row:1/3;width:48px;height:48px;align-self:start;margin-top:5px}.home-offer-copy{grid-column:2}.home-links h3{font-size:1.8125rem}.home-links p{font-size:.8125rem}.home-link-budget{grid-column:2;display:flex;align-items:baseline;text-align:left;gap:9px;flex-wrap:wrap;font-size:1.4375rem}.home-link-budget small{margin:0;font-size:.6875rem}.home-offer-arrow{display:inline;margin:0 0 0 auto;font-size:1.3125rem}.section-tail{display:block;margin-top:25px}.section-tail .text-link{margin-top:10px}.approach{grid-template-columns:1fr;gap:36px;padding-block:54px}.approach-title h2{font-size:2.5rem}.approach-copy .lead{font-size:1.75rem}.principles{gap:25px}.principles h3{font-size:1.5625rem}.principles p{font-size:.875rem}.home-dual{padding-block:52px}.home-dual .section-heading{margin-bottom:32px}.dual-grid{grid-template-columns:1fr;gap:34px}.dual-grid p{font-size:.9375rem}.dual-grid h3{font-size:1.8125rem}.dual-grid .text-link{margin-top:10px}.first-step{grid-template-columns:1fr;gap:27px;padding-block:42px 58px}.first-step h2{font-size:2.25rem}.first-step-meta strong{font-size:2rem}.first-step-meta .button{width:100%;justify-content:space-between}
}
@media(max-width:350px){.home-copy h1{font-size:2.375rem}.home-copy .button{font-size:.75rem;padding-inline:16px}.home-photo>img{height:290px}.home-photo figcaption{font-size:.5625rem}.home-links>a{grid-template-columns:1fr;padding:22px}.home-links .programme-symbol{grid-row:auto;grid-column:1;width:45px;height:45px;margin:0}.home-offer-copy{grid-column:1}.home-link-budget{grid-column:1}.home-links h3{font-size:1.75rem}.home-programmes .section-heading h2{font-size:2rem}.first-step h2{font-size:2rem}.approach-title h2{font-size:2.1875rem}
}
@media(prefers-reduced-motion:reduce){.home-links>a{transition:none}}

/* Catalogue : cinq situations comparables, prix et prochain pas dans la même ligne. */
.catalogue-grid{display:grid;grid-template-columns:1fr;gap:20px}
.catalogue-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 230px;gap:40px;background:var(--paper);padding:36px;border-radius:5px;align-items:start}
.card-heading{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.card-heading img{width:75px;height:75px;object-fit:contain;flex:none}
.card-heading .small-label{font-size:.6875rem;margin-bottom:8px}
.catalogue-card h2{font-size:2.1875rem;line-height:1.12;letter-spacing:-.035em}
.card-objective{font:350 1.5rem/1.4 var(--serif);color:var(--navy);max-width:370px;text-wrap:pretty}
.card-public,.card-scope p,.card-support,.card-frame{font-size:.875rem;line-height:1.8}
.card-public{margin:0 0 24px}
.card-scope .small-label{font-size:.6875rem;margin-bottom:9px}
.card-support{margin-top:20px}
.card-budget small{display:block;font:.75rem/1.6 var(--sans);color:var(--muted);margin-bottom:5px}
.card-budget strong{display:block;font:350 1.9375rem/1.3 var(--serif);white-space:nowrap}
.card-frame{margin:20px 0 22px}
.card-price a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;background:var(--navy);color:var(--cream);padding:12px 18px;border-radius:28px;font:600 .875rem/1.5 var(--label)}
.card-price a>span{font:1.375rem/1 var(--sans)}
.card-price a:hover{background:#16465c}
.card-condition{font-size:.75rem;line-height:1.65;margin-top:15px}
.direction-card{background:var(--navy);color:var(--cream)}
.direction-card p,.direction-card .card-budget small{color:#d1dde2}
.direction-card .small-label{color:#bda475}
.direction-card .card-objective{color:var(--cream)}
.direction-card .card-heading img{background:var(--cream);padding:8px;border-radius:50%}
.direction-card .card-price a{background:var(--cream);color:var(--navy)}
.direction-card .card-price a:hover{background:#e8dec9}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 72px}
.work-grid article{padding:0;display:block}
.work-grid h3{font-size:1.8125rem;line-height:1.23;letter-spacing:-.025em;margin:0 0 16px}
.work-grid p{font-size:.9375rem;line-height:1.85;max-width:560px}
.program-value>div+div{padding-left:0}
.program-nav{gap:10px;padding-block:15px}
.program-nav a{background:#ebe5d9;border-radius:25px;padding:10px 22px}
.program-nav a:hover{background:#e2d8c6;text-decoration:none}
.program-summary-card{border-radius:5px}
.commercial-method .serial{font-size:1.6875rem}
.contact-box,.aux-form{border-radius:5px}
.intent-buttons button:not([aria-pressed=true]){border-color:transparent}
.intent-buttons button:hover{background:#eee7d9}
.intent-buttons button[aria-pressed=true]{box-shadow:none}.intent-buttons button[aria-pressed=true]:hover{background:#244658}
.value-num,.signature-card-num,.mission-num{display:none}
.journal-list article>.serial{display:none}
.journal-list article{display:block}
.legal-toc{background:#eee8dc;padding:20px 23px;border-radius:5px}
.legal-toc a{padding-block:9px}
.legal-toc a:hover{color:var(--gold-text)}
.reference-content .legal-text h2{padding-top:0}
@media(max-width:1200px){
 .catalogue-card{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px 40px;padding:30px}
 .card-decision{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 220px;gap:10px 28px;align-items:center}
 .card-frame{margin:0}.card-condition{grid-column:3;margin:0}.card-heading img{width:68px;height:68px}
}
@media(max-width:900px){
 .catalogue-card h2{font-size:2rem}.card-heading{gap:16px}.card-heading img{width:57px;height:57px}.card-objective{font-size:1.4375rem}
 .card-decision{grid-template-columns:1fr 1fr;gap:16px 28px}.card-budget{grid-column:1}.card-frame{grid-column:1;grid-row:2}.card-price{grid-column:2;grid-row:1/3;align-self:center}.card-condition{grid-column:2}.card-budget strong{font-size:1.8125rem}
 .work-grid{gap:34px 38px}.work-grid h3{font-size:1.6875rem}.program-value>div{padding-bottom:0}
}
@media(max-width:600px){
 .catalogue-card{grid-template-columns:1fr;gap:25px;padding:26px}
 .card-heading{margin-bottom:19px;gap:18px;flex-wrap:wrap}.card-heading img{width:62px;height:62px}.catalogue-card h2{font-size:2.0625rem}.card-heading .small-label{font-size:.625rem}.card-heading>div{min-width:0;flex:1 1 185px}
 .card-objective{font-size:1.5rem}.card-public{margin-bottom:20px}.card-support{margin-top:17px}
 .card-decision{display:flex;flex-direction:column;gap:17px;align-items:stretch}.card-budget{display:flex;gap:13px;flex-wrap:wrap;align-items:baseline}.card-budget strong{font-size:1.8125rem}.card-budget small{margin:0}.card-price{align-self:stretch}.card-price a{padding-inline:20px}.card-condition{margin:0}
 .work-grid{grid-template-columns:1fr;gap:30px}.work-grid h3{font-size:1.6875rem}.program-nav{gap:8px}.program-nav a{padding-inline:16px;font-size:.8125rem}.program-summary-card{padding:26px}
 .journal-list article{display:block}.legal-toc{padding:22px}.legal-toc a{font-size:.8125rem}
}
@media(max-width:350px){
 .catalogue-card{padding:22px}.card-heading{gap:13px;display:block}.card-heading img{margin-bottom:17px}.card-heading img{width:45px;height:45px}.catalogue-card h2{font-size:1.75rem}.card-objective{font-size:1.375rem}.card-price a{font-size:.8125rem;padding-inline:15px}.card-budget strong{font-size:1.6875rem}.work-grid h3{font-size:1.5625rem;hyphens:auto}.program-summary-card{padding:22px}
}

/* Le récit, les textes et les annonces gardent leur propre rythme de lecture. */
.reference-content .section-folio{display:none}
.reference-content .stats-section{background:var(--paper);padding:34px;margin-block:18px 28px;border-radius:5px}
.stat{padding-left:0}
.editorial-hero-photo{padding-left:0}
.histoire-quote{padding-left:0;max-width:640px}
.values-grid,.signature-grid,.culture-grille,.missions-grille{row-gap:40px}
.reference-content .value-card,.signature-card,.culture-item,.mission{padding-top:0}
.poste-carte{border-radius:5px}
.poste-carte:hover{background:#eee7d9}
.journal-feature-grid{padding-top:0;gap:55px}
.feature-art{border-radius:5px}
.journal-list article{padding-top:0}
.journal-list article h2{margin-bottom:14px}
.journal-collection>.journal-list{row-gap:48px}
.publication-state{background:#ece5d7;border:0;color:var(--muted)}
.reference-content .legal-text h2{margin-top:42px;max-width:100%}
.reference-content .legal-text h2:first-child{margin-top:0}
.reference-content .link-btn{border:0;border-radius:5px;background:var(--paper)}
.reference-content .link-btn:hover{background:#e9e0d0}
.reference-content .link-btn.primary{background:var(--navy);color:var(--cream)}.reference-content .link-btn.primary:hover{background:#244658}
@media(max-width:900px){.reference-content .stats-section{padding:30px}.journal-feature-grid{gap:30px}}
@media(max-width:600px){
 .reference-content .stats-section{padding:25px}.stats-grid{gap:18px;grid-template-columns:1fr}.stat{display:flex;align-items:center;gap:20px}.stat-num{min-width:72px;font-size:1.875rem}.stat-label{font-size:.75rem;margin:0}
 .editorial-hero-photo{position:static}.reference-content .vision-section,.reference-content .signature-section{padding-block:36px}
 .journal-collection>.journal-list{gap:34px}.journal-list article h2{font-size:1.75rem}
 .reference-content .legal-text p,.reference-content .legal-text li{font-size:.9375rem}
}

/* Formats ponctuels : trois choix lisibles, chaque action reste avec son cadre. */
.format-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.format-list article{display:flex;flex-direction:column;align-items:flex-start;background:var(--paper);padding:32px;min-width:0}
.format-list article>div:first-child{width:100%}
.format-list h3{font-size:1.875rem;line-height:1.18;min-height:0;margin:0 0 18px}
.format-list p{font-size:1rem;line-height:1.75;margin-top:12px}
.format-list .format-specific{color:var(--navy);font-weight:500}
.format-list .small{font-size:.875rem;line-height:1.75;color:var(--muted)}
.format-list article>div:nth-child(2){margin-top:auto;padding-top:30px}
.format-list strong{display:block;font:350 1.875rem/1.25 var(--serif);white-space:nowrap}
.format-list small{display:block;font-size:.8125rem;color:var(--muted);margin-top:5px}
.format-list .text-link{display:flex;justify-content:space-between;min-height:48px;width:100%;margin-top:20px;font-size:.9375rem;line-height:1.5}
.format-list .text-link:hover{color:var(--gold-text)}
/* Le bouton final conserve le motif du programme et rappelle le prochain pas. */
.program-end{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;background:var(--paper);padding:42px;margin-block:0 24px}
.program-end .eyebrow{margin-bottom:14px}
.program-end h2{font-size:clamp(2rem,3.2vw,2.625rem);line-height:1.2;max-width:21ch}
.program-end p{font-size:1rem;line-height:1.8;max-width:57ch;margin-top:18px;color:var(--muted)}
.program-end .button{white-space:normal;max-width:300px;justify-content:space-between}
.program-pagination{display:flex;justify-content:space-between;gap:24px;padding-block:0 40px;font:600 .875rem/1.6 var(--label)}
.program-pagination a{display:flex;align-items:center;min-height:48px;max-width:48%}
.program-pagination a:last-child{text-align:right;justify-content:flex-end}
/* Une réponse ouverte ne déplace plus horizontalement la question. */
.faq p{margin:0 0 22px;padding:20px 24px;background:var(--paper);font-size:1rem;line-height:1.8;max-width:65ch}
@media(max-width:1100px){
 .format-list{grid-template-columns:1fr;gap:16px}
 .format-list article{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.45fr);column-gap:32px;padding:28px}
 .format-list article>div:first-child{grid-row:1/3}
 .format-list h3{min-height:0;font-size:1.8125rem;margin-bottom:14px}
 .format-list strong{font-size:1.625rem}
 .format-list article>div:nth-child(2){margin:0;padding-top:0;align-self:center}
 .format-list .text-link{grid-column:2;margin-top:12px;align-self:start}
 .program-end{padding:32px;gap:28px}
}
@media(max-width:650px){
 .format-list article{display:flex;padding:28px;gap:0}
 .format-list strong{font-size:1.875rem}
 .format-list article>div:nth-child(2){align-self:flex-start;padding-top:24px}
 .format-list h3{font-size:1.8125rem}
 .format-list .text-link{align-self:stretch;margin-top:14px}
 .program-end{grid-template-columns:1fr;padding:28px;gap:26px}
 .program-end h2{font-size:2.125rem}
 .program-end .button{max-width:none;width:100%;font-size:.875rem}
 .program-pagination{font-size:.8125rem;gap:20px}
 .faq p{padding:18px;font-size:1rem;line-height:1.75}
}
@media(max-width:350px){
 .format-list article{padding:22px}
 .format-list h3{font-size:1.6875rem}
 .format-list strong{font-size:1.5rem}
 .program-end{padding:22px}
 .program-end h2{font-size:1.875rem}
 .program-end p{font-size:.9375rem}
}

/* Campagne : distinguer entretien et rappel, avec les mêmes repères de lecture. */
.reference-content .closing-badge{display:block;font:600 .75rem/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px}
.reference-content .closing-card h3{font-size:2rem;line-height:1.2;margin:0}
.reference-content .closing-card>p{font-size:1rem;line-height:1.8;margin-top:20px}
.reference-content .closing-card .closing-price{font:350 1.75rem/1.4 var(--serif);margin-block:26px}
.reference-content .calendly-mock{font-size:.875rem;line-height:1.8}
.reference-content .closing-card .closing-cta{display:inline-flex;margin-top:28px;min-height:52px;max-width:100%;white-space:normal;font-size:.9375rem}
@media(max-width:650px){.reference-content .closing-card h3{font-size:1.8125rem}.reference-content .closing-card .closing-price{font-size:1.625rem}.reference-content .closing-card .closing-cta{width:100%;justify-content:center}}

/* Finition Claude 06/10 · fiches programmes : situations, méthode propre, preuve et autres programmes (textes du lot 09). Pas de trait ajouté. */
.program-situations{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;padding-block:calc(var(--space-section) - 16px) 8px}
.program-situations h2{font-size:var(--section-title);line-height:1.15}
.situation-quotes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 44px;align-content:start}
.situation-quotes li{font:350 1.3125rem/1.5 var(--serif);color:var(--navy)}
.section-heading>.program-content-intro{max-width:440px}
.program-capacity{margin-top:26px;max-width:56ch;font-size:.875rem;line-height:1.8;color:#d0dce2}
.program-method{padding-bottom:calc(var(--space-section) - 24px)}
.program-proof{margin-top:0;background:var(--paper);padding:clamp(36px,5vw,60px) clamp(24px,4vw,56px)}
.program-end .program-end-note{margin-top:10px}
.program-others{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 40px;padding-block:4px 44px}
.program-others>div{display:flex;flex-wrap:wrap;gap:0 28px;font:600 .875rem/1.6 var(--label)}
.program-others a{display:inline-flex;align-items:center;min-height:44px}
.program-others a:hover{color:var(--gold-text);text-decoration:underline;text-underline-offset:5px}
.program-others .program-others-all{color:var(--gold-text)}
@media(max-width:900px){.program-situations{grid-template-columns:1fr;gap:28px}}
@media(max-width:600px){.situation-quotes{grid-template-columns:1fr;gap:18px}.situation-quotes li{font-size:1.1875rem}.program-proof{padding-inline:22px}.program-others{display:block}.program-others>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:6px;font-size:.8125rem}}
/* Finition Claude 06/10 · accueil : notes des situations, citation et preuve, leviers, engagements, Insights, difficulté, formats d’entrée (textes du lot 09). */
.section-tail .tail-note{display:block;margin-top:16px;font-size:.8125rem;line-height:1.8;color:var(--muted)}
.section-tail .tail-note .text-link{display:flex;margin-top:2px;font-size:.875rem;color:var(--navy)}
.approach-quote{margin:0 0 25px}
.approach-quote strong{font-weight:inherit;color:#bda475}
.approach-title .approach-proof{display:flex;margin-top:4px;font-size:.875rem;color:#d0dce2}
.dual-tail{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:48px;align-items:end}
.dual-tail .dual-phrase{font:350 1.5rem/1.4 var(--serif);color:var(--navy);margin-bottom:10px}
.dual-tail p{font-size:.9375rem;line-height:1.8}
.dual-tail p a{text-decoration:underline;text-underline-offset:4px}
.dual-tail .home-devise{font:italic 350 1.625rem/1.4 var(--serif);color:var(--gold-text);margin:0}
.home-devise strong{font-weight:inherit}
.home-devise small{display:block;margin-top:10px;font:600 .6875rem/1.5 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-style:normal}
.home-commitments{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;padding-block:0 var(--space-section)}
.home-commitments h2{font-size:clamp(1.75rem,2.6vw,2.25rem);line-height:1.2}
.home-commitments ul{list-style:none;margin:0;padding:0}
.home-commitments li{position:relative;padding:0 0 18px 24px;font-size:.9375rem;line-height:1.8}
.home-commitments li:last-child{padding-bottom:0}
.home-commitments li:before{content:'›';position:absolute;left:0;color:var(--gold-text)}
.home-commitments strong{font-weight:600;color:var(--navy)}
.home-insights{padding-block:0 8px}
.home-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-articles a{display:block;padding:26px 26px 30px;background:var(--paper)}
.home-articles h3{font-size:1.375rem;line-height:1.35;margin-top:12px}
.home-articles a:hover h3{color:var(--gold-text)}
.home-insights>.text-link{margin-top:16px}
.home-urgent{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;background:var(--paper);padding:34px 40px;margin-block:8px 0}
.home-urgent h3{font-size:1.75rem;line-height:1.25;margin:10px 0 10px}
.home-urgent p{font-size:.9375rem;line-height:1.8;max-width:62ch;color:var(--muted)}
.first-step.entry{align-items:start}
.entry-label{margin-top:30px}
.entry-formats{list-style:none;margin:12px 0 22px;padding:0}
.entry-formats a{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:15px 0;border-top:1px solid var(--line)}
.entry-formats li:last-child a{border-bottom:1px solid var(--line)}
.entry-formats strong{display:block;font:350 1.3125rem/1.3 var(--serif);color:var(--navy)}
.entry-formats small{display:block;margin-top:4px;font-size:.8125rem;line-height:1.6;color:var(--muted)}
.entry-price{flex-shrink:0;font:350 1.1875rem/1.3 var(--serif);color:var(--navy);text-align:right}
.entry-formats a:hover strong{color:var(--gold-text)}
.entry-terms{margin-top:12px}
@media(max-width:900px){.dual-tail,.home-commitments{grid-template-columns:1fr;gap:28px}.home-articles{grid-template-columns:1fr;gap:14px}.section-tail{flex-wrap:wrap}.section-tail .tail-note{flex-basis:100%}}
@media(max-width:600px){.home-urgent{grid-template-columns:1fr;gap:20px;padding:26px 22px}.home-urgent .button{width:100%;justify-content:space-between}.entry-formats a{display:block}.entry-price{display:block;text-align:left;margin-top:8px}.dual-tail .home-devise{font-size:1.4375rem}.dual-tail .dual-phrase{font-size:1.375rem}}
/* Finition Claude 06/10 · accompagnements : note de méthode et règle de choix (textes du lot 09). */
.method-note{margin-top:32px;max-width:72ch;font-size:.875rem;line-height:1.8;color:var(--muted)}
.choice-rule{margin-top:44px;padding:34px 40px;background:var(--paper)}
.choice-rule h3{font-size:clamp(1.625rem,2.4vw,2rem);line-height:1.2;margin-bottom:24px}
.choice-rule ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.choice-rule .serial{display:block;font-size:1.5rem;margin-bottom:8px}
.choice-rule strong{display:block;font:350 1.3125rem/1.3 var(--serif);color:var(--navy);margin-bottom:8px}
.choice-rule p{font-size:.875rem;line-height:1.75}
@media(max-width:900px){.choice-rule ol{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){.choice-rule{padding:26px 22px}}
/* Finition Claude 06/10 · contact : sept motifs, note de motif, engagement, délais et presse (textes du lot 09). */
@media(min-width:761px){.intent-choice .intent-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}}
.intent-note{margin-top:14px;max-width:390px;font-size:.8125rem;line-height:1.7;color:var(--muted)}
.intent-note a{text-decoration:underline;text-underline-offset:3px}
.contact-trust{margin-top:8px;padding:clamp(32px,4vw,52px) clamp(22px,4vw,48px);background:var(--paper)}
.contact-trust p+p{margin-top:14px}
.contact-trust strong{font-weight:600;color:var(--navy)}
.contact-notes{display:grid;grid-template-columns:1fr 1fr;gap:16px 64px;padding-top:36px;font-size:.875rem;line-height:1.8;color:var(--muted)}
.contact-notes a{text-decoration:underline;text-underline-offset:3px}
.contact-notes strong{font-weight:600;color:var(--navy)}
@media(max-width:760px){.contact-notes{grid-template-columns:1fr;padding-top:28px}}/* Finition Claude 06/10 · pied : réseaux sociaux en liens texte (adresses du pied préprod). */
/* Finition Claude 06/10 · contraste du bandeau de la devise (campagne) : or clair sur marine. */
.reassurance .section-eyebrow,.reassurance-quote em{color:#bda475}/* Finition Claude 06/10 · cibles tactiles d’au moins 24 px (WCAG 2.2, 2.5.8). */
.breadcrumb a{display:inline-flex;align-items:center;min-height:32px}
.consent-demo input[type=checkbox]{width:24px;height:24px;flex-shrink:0}

/* Recette totale · R0 : débordement de l'accueil à 601 px : le prix des formats ponctuels ne pouvait pas rétrécir */
.entry-price{flex-shrink:1;min-width:0;max-width:48%}
/* Liens intégrés aux notes des formulaires : repérables aussi sans survol. */
.privacy-note a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.privacy-note a:hover{text-decoration-thickness:2px}



/* 16/10/2026 · Pied commun : quatre colonnes, réseaux en icônes et hiérarchie éditoriale. */
.site-footer{position:relative;isolation:isolate;overflow:hidden;background:var(--deep);color:var(--cream);padding-top:clamp(48px,6vw,80px)}
.site-footer::after{content:'';position:absolute;right:3%;bottom:100px;width:250px;height:250px;background:url('/img/marque/logo-mrsamben-monogramme.png') center/contain no-repeat;opacity:.022;z-index:-1;pointer-events:none}
.footer-grid{display:grid;grid-template-columns:1.2fr .95fr .88fr 1.12fr;gap:clamp(24px,3vw,48px);align-items:start;padding-bottom:52px}
.footer-grid>*{min-width:0}
.site-footer .brand{max-width:100%;font-size:20px;letter-spacing:1.5px}
.site-footer .brand img{flex-shrink:0}
.site-footer .brand small{font-size:10px;letter-spacing:1.2px;color:#bda475}
.site-footer .eyebrow{display:block;color:#bda475;font-size:.75rem;line-height:1.5;letter-spacing:1.6px;margin:3px 0 21px}
.footer-identity p{font:italic 1.375rem/1.5 var(--serif);color:#bda475;margin:26px 0 24px;max-width:22ch}
.footer-contact{display:inline-flex;align-items:center;gap:12px;min-height:44px;max-width:100%;font:600 .875rem/1.5 var(--sans);color:#e3c58d;text-decoration:none}
.footer-contact span{transition:transform .2s ease}
.footer-contact:hover{color:var(--cream);text-decoration:underline;text-underline-offset:5px}
.footer-contact:hover span{transform:translate(2px,-2px)}
.footer-navigation>a,.footer-programmes>a{display:flex;align-items:center;min-height:44px;width:fit-content;max-width:100%;font-size:.875rem;line-height:1.6;color:#c9d6dd;padding-block:9px;text-decoration:none}
.footer-navigation>a:hover,.footer-programmes>a:hover{color:var(--cream);text-decoration:underline;text-underline-offset:5px}
.site-footer .footer-programmes{display:block;padding:0}
.footer-reach>a:not(.footer-contact){display:flex;align-items:center;gap:10px;min-height:44px;width:fit-content;max-width:100%;font-size:.875rem;line-height:1.6;color:#c9d6dd;text-decoration:none;overflow-wrap:anywhere}
.footer-reach>a:not(.footer-contact):hover{color:var(--cream);text-decoration:underline;text-underline-offset:4px}
.footer-reach>a>svg,.footer-location>svg{width:16px;height:16px;flex:0 0 16px;color:#bda475}
.footer-location{display:flex;align-items:flex-start;gap:10px;margin:17px 0 24px;font-size:.8125rem;line-height:1.7;color:#bacbd4}
.footer-location>svg{margin-top:3px}
.footer-social{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;color:#c9d6dd;border:1px solid #36505f;border-radius:50%;transition:color .18s,background-color .18s,border-color .18s,transform .18s}
.footer-social svg{display:block;width:20px;height:20px;flex:none}
.footer-social a:hover{color:#e3c58d;background:#143344;border-color:#b39863;transform:translateY(-2px)}
.site-footer :focus-visible{outline:2px solid #e3c58d;outline-offset:4px}
.footer-bottom{display:flex;flex-wrap:wrap;gap:4px 24px;align-items:center;border-top:1px solid #294452;padding-block:18px;color:#bacbd4;font-size:.75rem}
.footer-bottom>span:first-child{margin-right:auto}
.footer-bottom a,.footer-bottom button{display:inline-flex;align-items:center;min-height:44px;font:inherit;text-decoration:none}
.footer-bottom button{padding:0;background:none;border:0;color:inherit}
.footer-bottom a:hover,.footer-bottom button:hover{color:var(--cream);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){
 .footer-grid{grid-template-columns:1fr 1fr;gap:40px 64px;padding-bottom:40px}
 .footer-identity p{max-width:26ch}
 .site-footer::after{right:8%;bottom:100px}
}
@media(max-width:600px){
 .site-footer{padding-top:40px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px;padding-bottom:32px}
 .footer-identity,.footer-reach{grid-column:1/-1}
 .footer-identity p{margin:22px 0 10px;font-size:1.375rem}
 .site-footer .eyebrow{font-size:.6875rem;letter-spacing:1.25px;margin:0 0 12px}
 .footer-navigation>a,.footer-programmes>a{font-size:.8125rem;line-height:1.55;padding-block:9px}
 .footer-location{margin:15px 0 20px}
 .footer-social{gap:12px}
 .footer-bottom{gap:0 20px;padding-block:16px}
 .footer-bottom>span:first-child{width:100%;margin-right:0;margin-bottom:4px}
 .site-footer::after{width:200px;height:200px;right:-40px;bottom:140px}
}
@media(prefers-reduced-motion:reduce){.footer-social a,.footer-contact span{transition:none}.footer-social a:hover,.footer-contact:hover span{transform:none}}

/* Raccord de la V3 aux formulaires et pictogrammes existants. */
.form-court,.form-fields,.newsletter-form{max-width:100%;min-width:0;display:grid;gap:1.15rem}
.champ,.champ-duo{min-width:0}.champ{display:grid;gap:.45rem}.champ-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.champ label,.newsletter-form>label{font-family:var(--sans,Manrope,sans-serif);font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none;line-height:1.5}
.form-court :is(input,textarea,select),.form-fields :is(input,textarea,select),.newsletter-form>input[type=email]{display:block;width:100%;min-width:0;box-sizing:border-box;font:inherit;line-height:1.5;color:#122839;background:#fffefb;border:1px solid #9faeb5;border-radius:6px;padding:.85rem .9rem;min-height:48px}
.form-court textarea,.form-fields textarea{resize:vertical;min-height:155px}
.champ label i{font-size:.8rem;font-weight:400;font-style:normal;color:#526778}
.champ-aide,.champ-compteur,.form-rgpd{margin:0;font:400 .8rem/1.65 Manrope,sans-serif!important;color:#3e5668!important;letter-spacing:0!important;text-transform:none!important}
.form-rgpd a,.champ-aide a,.form-etat a,.lettre-etat a,.envoi-etat a{text-decoration:underline;text-underline-offset:.2em;color:inherit}
.form-court button[type=submit],.form-fields button[type=submit],.newsletter-form button[type=submit]{justify-self:start;min-height:48px;background:#122839;color:#fff;border:1px solid #122839;border-radius:5px;font:600 .82rem/1.5 Domus,Manrope,sans-serif;letter-spacing:.04em;padding:.9rem 1.35rem;cursor:pointer;text-decoration:none;max-width:100%}
.form-court button:disabled,.form-fields button:disabled,.newsletter-form button:disabled{opacity:.6;cursor:wait}
.form-etat:empty,.lettre-etat:empty{display:none}.form-etat,.lettre-etat,.form-merci,.envoi-etat{font-size:.92rem;line-height:1.7;padding:1rem 1.1rem;background:#edf3f1;border-radius:6px;color:#163e32;overflow-wrap:anywhere}
.form-etat.erreur,.lettre-etat.erreur{background:#fff1ea;color:#782e16}
.form-merci strong,.envoi-etat strong{display:block;font-size:1.1rem;margin-bottom:.4rem}.form-merci p,.envoi-etat p{margin:0;font-size:.95rem;color:inherit!important}
.envoi-etat{display:none}.envoi-etat:target{display:block!important}.envoi-ecarte .envoi-etat:target{display:none!important}
.champ-piege,.form-piege{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.consentement-lettre{display:flex;align-items:flex-start;gap:.75rem;min-height:44px;cursor:pointer}.consentement-lettre input{flex:0 0 24px;width:24px;height:24px;margin:.2rem 0;accent-color:#122839}.consentement-lettre span{font-size:.875rem;line-height:1.65;letter-spacing:0;text-transform:none}
.newsletter-form{width:100%;max-width:620px;text-align:left}.journal-newsletter .newsletter-form{margin-inline:auto}
.depot{position:relative;min-height:90px;padding:1rem;border:1px dashed #7f929e;border-radius:6px;background:#fffefb;display:flex;align-items:center;justify-content:center}.depot input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;height:100%;width:100%}.depot:focus-within{outline:3px solid #bda475;outline-offset:3px}.depot-txt{overflow-wrap:anywhere;font-size:.9rem;text-align:center}
.intentions-actives .motif-native{display:none}.contact-box{scroll-margin-top:110px}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bda475;outline-offset:3px}
[aria-invalid=true]{border-color:#9d361a!important}
@media(max-width:600px){.champ-duo{grid-template-columns:1fr}.form-court button[type=submit],.form-fields button[type=submit],.newsletter-form button[type=submit]{width:100%;justify-self:stretch}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* 09/10/2026 · Lot 12 · espacements utilisateur (WCAG 1.4.12) : adaptations limitées aux composants, sans règle globale. */
/* Numéros de méthode : colonne à la mesure du chiffre (ils débordaient de 4 à 8 px même au repos sous 540 px). */
@media(max-width:540px){.commercial-method li{grid-template-columns:auto minmax(0,1fr)}}
/* Titres d'un seul mot long : césure française seulement si la ligne ne suffit pas (aucun effet au repos). */
.program-lead h1,.catalogue-card h2,.commercial-method h3{hyphens:auto;-webkit-hyphens:auto}
/* Catalogue sous 480 px : gravure au-dessus du titre, qui garde toute la largeur de la carte. */
@media(max-width:480px){.card-heading{display:block}.card-heading img{margin-bottom:14px}}
/* Prix de l'accueil : la colonne garde sa largeur au repos et s'élargit seulement si le montant l'exige. */
.home-links>a{grid-template-columns:62px minmax(0,1fr) minmax(140px,auto)}
@media(max-width:1100px){.home-links>a{grid-template-columns:48px minmax(0,1fr) minmax(123px,auto)}}
@media(max-width:900px){.home-links>a{grid-template-columns:64px minmax(0,1fr) minmax(150px,auto)}}
@media(max-width:600px){.home-links>a{grid-template-columns:48px minmax(0,1fr)}}
@media(max-width:350px){.home-links>a{grid-template-columns:1fr}}
/* Montants insécables dans une boîte fixe : repli en dernier recours, invisible au repos. */
.card-budget strong,.format-list strong,.home-link-budget,.stat-num{white-space:normal;overflow-wrap:anywhere}
/* Numéros des étapes (contact, recrutement) : la colonne garde sa largeur au repos et s'élargit si le chiffre l'exige. */
.contact-step{grid-template-columns:minmax(25px,auto) minmax(0,1fr)}
@media(max-width:600px){.contact-step{grid-template-columns:minmax(24px,auto) minmax(0,1fr)}}
@media(max-width:540px){.etape{grid-template-columns:minmax(36px,auto) minmax(0,1fr)}}
/* Situations de la campagne : une colonne sous 360 px (reprise du lot 11, revue visuellement). */
@media(max-width:360px){.phases-row{grid-template-columns:1fr}}


/* 09/10/2026 · Réconciliation des 176 groupes de la recette : correctifs limités aux composants. */
/* R176 · groupe 29 · Grille de .card-decision désalignée entre 901 et 1200 px */
@media(min-width:901px) and (max-width:1200px){.card-decision{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);column-gap:40px}.card-budget{grid-column:1;grid-row:1}.card-frame{grid-column:1;grid-row:2}.card-price{grid-column:2;grid-row:1;justify-self:start;width:220px}.card-condition{grid-column:2;grid-row:2;margin:0}}
/* R176 · groupe 30 · Retraits intérieurs différents entre blocs empilés d’accompagnement */
body[data-page="accompagnement"] :is(.catalogue-card,.choice-rule,.commercial-trust,.format-list article){padding-inline:36px}
/* R176 · groupe 30 · Retraits intérieurs différents entre blocs empilés d’accompagnement */
@media(max-width:1200px){body[data-page="accompagnement"] :is(.catalogue-card,.choice-rule,.commercial-trust,.format-list article){padding-inline:30px}}
/* R176 · groupe 30 · Retraits intérieurs différents entre blocs empilés d’accompagnement */
@media(max-width:600px){body[data-page="accompagnement"] :is(.catalogue-card,.choice-rule,.commercial-trust,.format-list article){padding-inline:26px}}
/* R176 · groupe 30 · Retraits intérieurs différents entre blocs empilés d’accompagnement */
@media(max-width:350px){body[data-page="accompagnement"] :is(.catalogue-card,.choice-rule,.commercial-trust,.format-list article){padding-inline:22px}}
/* R176 · groupe 31 · Bloc .commercial-terms sans fond mais avec retrait */
.commercial-terms{padding:0;margin-top:40px}
/* R176 · groupe 37 · Liens d’ancre .offer-jumps sans signe de lien */
.offer-jumps a::after{content:'\00a0↓'}
/* R176 · groupe 37 · Liens d’ancre .offer-jumps sans signe de lien */
@media(max-width:540px){.offer-jumps{flex-direction:column;gap:0}}
/* R176 · groupe 39 · Règle de choix en h3 rangée sous le programme Direction */
.choice-rule .choice-rule-title{font-size:clamp(1.625rem,2.4vw,2rem);line-height:1.2;margin-bottom:24px}
/* R176 · groupe 40 · En-tête de section en flex écrasé entre 541 et 900 px */
@media(max-width:900px){body[data-page="accompagnement"] .section-heading,#livrables .section-heading{display:block}body[data-page="accompagnement"] .section-heading>p,#livrables .section-heading>.program-content-intro{padding-top:0;margin-top:19px;max-width:560px}}
/* R176 · groupe 42 · Chiffres elzéviriens de Domus dans les prix (« 5oo € HT ») */
.button,.text-link,.eyebrow,.small-label{font-variant-numeric:lining-nums}
/* R176 · groupe 44 · Bouton final des fiches rendu différemment du bouton du héros */
.program-end .button{justify-content:center;gap:15px;max-width:none}
/* R176 · groupe 44 · Bouton final des fiches rendu différemment du bouton du héros */
@media(min-width:651px){.program-end .button{white-space:nowrap}}
/* R176 · groupe 44 · Bouton final des fiches rendu différemment du bouton du héros */
@media(max-width:540px){.program-end .button{gap:12px}}
/* R176 · groupe 47 · Citations des situations hachées dans trois colonnes entre 901 et 1180 px */
@media(max-width:1200px){.program-situations{grid-template-columns:1fr;gap:28px}}
/* R176 · groupe 48 · Flèche de « Tout l’accompagnement ↗ » seule à la ligne */
@media(max-width:600px){.program-others .program-others-all{grid-column:1/-1}}
/* R176 · groupe 49 · Vide de 55 px entre titre et texte des cartes preuve en une colonne */
@media(max-width:900px){.program-proof{row-gap:18px}.program-proof h2{margin-bottom:0}}
/* R176 · groupe 50 · « Conduit personnellement par Samih Bentaha » en 11 px sur mobile */
.program-person{font-size:.8125rem}
/* R176 · groupe 50 · « Conduit personnellement par Samih Bentaha » en 11 px sur mobile */
@media(max-width:600px){.program-person{font-size:.8125rem;gap:12px}}
/* R176 · groupe 51 · Marges intérieures différentes entre les cartes « Pourquoi moi » et « Le premier pas » */
.program-end{padding:clamp(36px,5vw,60px) clamp(24px,4vw,56px)}
/* R176 · groupe 51 · Marges intérieures différentes entre les cartes « Pourquoi moi » et « Le premier pas » */
@media(max-width:600px){.program-end{padding-inline:22px}}
/* R176 · groupe 52 · Introduction de « Ce que vous construisez » hors des axes de colonnes */
@media(min-width:901px){#livrables .section-heading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:72px}}
/* R176 · groupe 55 · Étiquettes décalées dans la carte de synthèse en deux colonnes (tablette) */
@media(min-width:601px) and (max-width:900px){.program-summary-card{grid-template-rows:auto 1fr auto auto;align-items:start}.program-price small{display:block;line-height:1.5}}
/* R176 · groupe 56 · Césure automatique forcée dans les titres de cartes à 320 px */
@media(max-width:350px){.work-grid h3{hyphens:manual}}
/* R176 · groupe 57 · Carte « Pourquoi moi » collée à la dernière étape de la méthode */
.program-method{padding-bottom:var(--space-section)}
/* R176 · groupe 58 · Chapeau de la section Contenu plus petit que les textes des cartes (mobile) */
body[data-page="accompagnement"] .section-heading>p,.section-heading>.program-content-intro{font-size:.9375rem;line-height:1.75}
/* R176 · groupe 59 · Titre final de Croissance mal coupé */
.program-end h2 .insecable{white-space:nowrap}
/* R176 · groupe 59 · Titre final de Croissance mal coupé */
@media(max-width:400px){.program-end h2 .insecable{white-space:normal}}
/* R176 · groupe 60 · Descriptions de la grille des leviers désalignées à 768 px */
@media(min-width:601px){.work-grid article{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0}}
/* R176 · groupe 63 · Rangée des programmes du pied en flux libre sur mobile */
@media(max-width:600px){.footer-programmes{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}}
/* R176 · groupe 64 · Modalités Direction : mot seul en dernière ligne */
.details-grid li{text-wrap:pretty}
/* R176 · groupe 3 · Prix de Direction Day coupé (« / jour » isolé) */
@media(max-width:600px){.entry-price{max-width:none}}
/* R176 · groupe 5 · Bloc « Pour commencer » de l'accueil resté sur deux colonnes à 768 px */
@media(min-width:601px) and (max-width:900px){.first-step{grid-template-columns:1fr;gap:28px}}
/* R176 · groupe 6 · Colonne droite à trois abscisses différentes dans « L'entreprise et le dirigeant » */
@media(min-width:601px){.home-dual .section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:start}.home-dual .section-heading>p{justify-self:start}}
/* R176 · groupe 6 · Colonne droite à trois abscisses différentes dans « L'entreprise et le dirigeant » */
@media(min-width:901px){.home-commitments{grid-template-columns:1fr 1fr;gap:70px}}
/* R176 · groupe 9 · Mots composés coupés à leur trait d'union */
.home-commitments li{text-wrap:pretty}
/* R176 · groupe 10 · Légende du portrait en 9 à 10 px sur mobile */
.home-photo figcaption{font-size:.75rem}
/* R176 · groupe 11 · Liens légaux et copyright du pied en 11 px */
.footer-bottom{font-size:.75rem}.footer-bottom button{font-size:.75rem}.footer-bottom>span{min-height:44px;display:inline-flex;align-items:center}
/* R176 · groupe 11 · Liens légaux et copyright du pied en 11 px */
@media(max-width:540px){.footer-bottom{row-gap:0}}
/* R176 · groupe 12 · « À partir de » des prix en 11 px sur mobile */
@media(max-width:600px){.home-link-budget small{font-size:.75rem}}
/* R176 · groupe 13 · Signature du logo « COACHING & CONSULTING » en 7-8 px sur mobile */
@media(max-width:540px){.brand small{font-size:.5625rem}}
/* R176 · groupe 16 · Bouton du menu mobile inchangé une fois le menu ouvert */
.menu-toggle[aria-expanded="true"] .hamburger{border-block:0;position:relative}
/* R176 · groupe 16 · Bouton du menu mobile inchangé une fois le menu ouvert */
.menu-toggle[aria-expanded="true"] .hamburger::before,.menu-toggle[aria-expanded="true"] .hamburger::after{content:'';position:absolute;left:0;top:6px;width:22px;height:1px;background:currentColor;transform:rotate(45deg)}
/* R176 · groupe 16 · Bouton du menu mobile inchangé une fois le menu ouvert */
.menu-toggle[aria-expanded="true"] .hamburger::after{transform:rotate(-45deg)}
/* R176 · groupe 17 · Interlettrage trop serré des h1 en Fraunces */
.home-copy h1{letter-spacing:-.03em}
/* R176 · groupe 20 · Navigation du pied en deux colonnes trop étroites sous 375 px */
@media(max-width:374px){.footer-grid>nav{grid-template-columns:1fr}}
/* R176 · groupe 21 · Étiquettes .eyebrow et .badge : mot orphelin et corps trop petit */
.eyebrow{text-wrap:balance}
/* R176 · groupe 23 · Espacement irrégulier autour de « CGV » dans le bas de pied */
.footer-bottom a{justify-content:flex-start;min-width:0}
/* R176 · groupe 62 · Fond des réponses FAQ limité à 65ch et décalé du bord */
.faq p{max-width:none}
/* R176 · groupe 80 · Filets sous chaque entrée du menu mobile */
.mobile-menu a{border-bottom:0;padding:16px 0}
/* R176 · groupe 147 · scroll-padding-top plus grand que l'en-tête : saut au focus et bande parasite */
html{scroll-padding-top:88px}
/* R176 · groupe 147 · scroll-padding-top plus grand que l'en-tête : saut au focus et bande parasite */
@media(max-width:1000px){html{scroll-padding-top:76px}}
/* R176 · groupe 147 · scroll-padding-top plus grand que l'en-tête : saut au focus et bande parasite */
.site-header :is(a,button){scroll-margin-top:-120px}
/* R176 · groupe 149 · Bouton « Revenir à la maquette » collé à la liste du plan */
.directory-dialog .page-directory{margin-bottom:28px}
/* R176 · groupe 150 · Retrait du menu mobile non aligné sur l'en-tête */
.mobile-menu{padding-inline:32px}
/* R176 · groupe 150 · Retrait du menu mobile non aligné sur l'en-tête */
@media(max-width:760px){.mobile-menu{padding-inline:24px}}
/* R176 · groupe 150 · Retrait du menu mobile non aligné sur l'en-tête */
@media(max-width:540px){.mobile-menu{padding-inline:20px}}
/* R176 · groupe 150 · Retrait du menu mobile non aligné sur l'en-tête */
@media(max-width:350px){.mobile-menu{padding-inline:16px}}
/* R176 · groupe 164 · Anneau de focus or texte peu visible sur fond marine */
.approach-band :focus-visible{outline-color:#bda475}
/* R176 · groupe 167 · Encart « Activité en difficulté ? » en h3 sous la FAQ */
.home-urgent h2{font-size:1.75rem;line-height:1.25;margin:10px 0}
/* R176 · groupe 169 · Anneau de focus des liens au fil du texte qui chevauche les lignes */
p a:focus-visible{outline-width:2px;outline-offset:2px}
/* R176 · groupe 77 · Libellés des chiffres de l'agence en escalier sur mobile */
/* 09/10/2026 · réconciliation 176 · G77 : chiffres de l'agence sur mobile, libellés alignés sur une colonne commune. */
@media(max-width:600px){.stats-grid{grid-template-columns:max-content minmax(0,1fr);column-gap:16px;row-gap:18px;align-items:center}.stat{display:contents}.stat-num{min-width:0}}
@media(max-width:350px){.stat-num{font-size:1.625rem}.stat-label{font-size:.6875rem}}
/* R176 · groupe 79 · Portrait de l'agence décalé de 15 px à 390 px */
/* 09/10/2026 · réconciliation 176 · G79 : portrait de l'agence aligné sur la gouttière du texte sous 600 px (hauteur dérivée du ratio, borne 450 px et centrage du bloc ≤900 conservés). */
@media(max-width:600px){.editorial-hero-photo{width:100%}.editorial-hero-photo img{height:auto;aspect-ratio:3/4}}
/* R176 · groupe 83 · Logos des marques associées sans dimensions réservées */
/* 09/10/2026 · réconciliation 176 · G83 : logos des marques associées, boîte réservée avant chargement (attributs width/height posés dans agence.html). */
.ecosystem-brand-logo img{display:block;width:100%;height:auto;max-height:80px;object-fit:contain}
/* R176 · groupe 84 · Titres des cartes « Pourquoi MR. SAM BEN ? » coupés différemment */
/* 09/10/2026 · réconciliation 176 · G84 : cartes « Pourquoi MR. SAM BEN ? », paragraphes alignés par rangée quelle que soit la césure des titres. */
@media(min-width:601px){.signature-grid .signature-card{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0;align-content:start}}
/* R176 · groupe 85 · Premier libellé de chiffre sur deux lignes à 1024 px */
/* 09/10/2026 · réconciliation 176 · G85 : chiffres de l'agence entre 1001 et 1100 px, « FR + Int’l » sur une ligne et libellés alignés. */
@media(min-width:1001px) and (max-width:1100px){.stats-grid{gap:16px}.stat-num{font-size:1.75rem}}
/* R176 · groupe 86 · Citation en italique or finissant sur un mot seul */
/* 09/10/2026 · réconciliation 176 · G86 : citation du récit, lignes équilibrées (plus de « transmets. » seul à 320 px). */
.histoire-quote{text-wrap:balance}
/* R176 · groupe 89 · Bloc « Pour commencer » d'Insights centré verticalement */
/* 09/10/2026 · réconciliation 176 · G89 : bloc « Pour commencer » d'Insights aligné en haut comme sur l'accueil. */
.first-step{align-items:start}
/* R176 · groupe 92 · Filtres d'Insights de largeurs inégales et compteur flottant */
/* 09/10/2026 · réconciliation 176 · G92 : filtres d'Insights, selects de même largeur et compteur calé à droite. */
@media(min-width:901px){.journal-filters label{flex:0 0 240px}.journal-filters select{width:100%}}
@media(min-width:601px) and (max-width:900px){.journal-filters label{flex:1 1 45%}.journal-filters select{width:100%}.journal-filters #journal-count{margin-left:auto}}
@media(max-width:350px){.journal-filters #journal-count{margin-left:auto}}
/* R176 · groupe 95 · Mention de l'en-tête Insights finissant sur un mot seul à 768 */
/* 09/10/2026 · réconciliation 176 · G95 : en-tête d'Insights, la mention de droite n'est plus compressée entre 761 et 1000 px. */
@media(min-width:761px) and (max-width:1000px){.journal-head>div span{flex-shrink:0}}
/* R176 · groupe 96 · État « aucun sujet » d'Insights : compteur redondant et grand vide */
/* 09/10/2026 · réconciliation 176 · G96 : état « aucun sujet » d'Insights, encart papier et bouton en ligne dans la phrase. */
.journal-empty{margin:0 0 45px;padding:24px;background:var(--paper);border-radius:5px}
.journal-empty button{display:inline;margin:0;padding:0;border:0;background:none;font:inherit;color:var(--navy);font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.journal-empty button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
/* R176 · groupe C1 · Lien « CGV » du bas de pied : cible tactile de 24 px minimum (WCAG 2.2, 2.5.8) après le retrait de la largeur de 44 px (groupe 23) */
.footer-bottom a{min-width:24px}
/* R176 · groupe C2 · Pastilles de phases de la campagne : titre insécable sous espacements utilisateur (débordement de 12 px à 390 px) */
.phase-pill h3{hyphens:auto;overflow-wrap:anywhere}
/* R176 · groupe C3 · Étiquettes des chiffres clés ramenées à 11 px sous 350 px par le groupe 90 : plancher de 12 px rétabli */
@media(max-width:350px){.stat-label{font-size:.75rem}}
/* R176 · groupe C3 · Étiquettes des chiffres clés ramenées à 11 px sous 350 px par le groupe 90 : plancher de 12 px rétabli */
.stat-label{hyphens:auto;overflow-wrap:anywhere}
/* R176 · groupe C4 · Marque ® en exposant du chiffre clé « MSB® » sous 12 px quand le chiffre rétrécit */
.stats-bar .stat-num sup{font-size:max(.75rem,.4em)}
/* R176 · groupe 69 · Boutons de motif du contact mal répartis et libellés bancals */
/* 09/10/2026 · réconciliation 176 · groupe 69 · motifs du contact : rangées égales, dernier bouton sans case vide. */
.intent-choice .intent-buttons{grid-auto-rows:1fr}
@media(min-width:761px){.intent-choice .intent-buttons button:last-child{grid-column:span 2}}
@media(min-width:351px) and (max-width:760px){.intent-choice .intent-buttons button:last-child:nth-child(odd){grid-column:1/-1}}
/* R176 · groupe 71 · Légende du prix du contact avec mot seul à 320 px */
/* 09/10/2026 · réconciliation 176 · groupe 71 · légende du prix : pas de mot seul sur la seconde ligne. */
.contact-price small{text-wrap:balance}
/* R176 · groupe 73 · Contour des champs sous le contraste de 3:1 */
/* 09/10/2026 · réconciliation 176 · groupe 73 · contour des champs à 3:1 au moins sur papier, crème et fond de champ (WCAG 1.4.11). */
.form-court :is(input,textarea,select),.form-fields :is(input,textarea,select),.newsletter-form>input[type=email]{border-color:#6f8591}
.depot{border-color:#6f8591}
/* R176 · groupe 152 · État actif invisible sur « Premier échange » en page Contact */
/* 09/10/2026 · réconciliation 176 · groupe 152 · CTA de l’en-tête sur sa propre page : état courant visible. */
.header-cta[aria-current]{background:transparent;color:var(--navy);border-color:var(--navy)}
.header-cta[aria-current]:hover{background:var(--navy);color:var(--cream)}
/* R176 · groupe 154 · Libellé du premier champ invalide caché sous l’en-tête */
/* 09/10/2026 · réconciliation 176 · groupe 154 · champ focalisé après un refus : son libellé reste sous l’en-tête collant. */
.form-court :is(input,textarea,select),.form-fields :is(input,textarea,select),.newsletter-form>input[type=email]{scroll-margin-top:44px}
/* R176 · groupe 157 · Composants de formulaire différents d’une page à l’autre */
/* 09/10/2026 · réconciliation 176 · groupe 157 · libellés de la campagne et blocs d’état des pages de référence alignés sur les autres formulaires. */
.form-field{display:grid;gap:.45rem;min-width:0}
.form-field label{font-family:var(--sans,Manrope,sans-serif);font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none;line-height:1.5}
.reference-content .form-etat,.reference-content .lettre-etat{font-size:.92rem;line-height:1.7}
/* R176 · groupe 121 · Filet résiduel sous le sommaire des pages légales (≤900 px) */
@media(max-width:900px){.legal-toc{border-bottom:0}}
/* R176 · groupe 122 · Premier titre collé au sommaire (30 px) sur mobile */
@media(max-width:900px){.legal-layout{gap:42px}}
/* R176 · groupe 123 · Numéros de téléphone coupés ou de format hétérogène */
.legal-text a[href^="tel:"]{white-space:nowrap}
/* R176 · groupe 124 · Sommaire en deux colonnes lu dans le désordre à 768 */
@media(min-width:601px) and (max-width:900px){.legal-toc{display:block;columns:2;column-gap:28px}.legal-toc .eyebrow{column-span:all}.legal-toc a{break-inside:avoid}}
/* R176 · groupe 125 · Sommaire collant tronqué sur écrans peu hauts */
@media(min-width:901px) and (max-height:640px){.legal-toc{position:static;max-height:none;overflow:visible}}
/* R176 · groupe 128 · Formulaire type de rétractation sans style (marges de 40 px) */
.legal-text blockquote{margin:0 0 28px;padding:24px 26px;background:var(--paper);border-radius:5px}.legal-text blockquote p:last-child{margin-bottom:0}@media(max-width:600px){.legal-text blockquote{padding:20px 18px}}
/* R176 · groupe 129 · Liens des CGV et du bas de pied sans état de survol */
.legal-text a:hover{color:var(--gold-text);text-decoration-color:var(--gold)}
/* R176 · groupe 129 · Liens des CGV et du bas de pied sans état de survol */
.footer-bottom a:hover{color:var(--cream)}
/* R176 · groupe 130 · Filet or décoratif sur la note du formulaire CGV */
.legal-text .reglement-note{border-left:0;border-radius:5px}
/* R176 · groupe 131 · Entrées du sommaire CGV avec mot seul et retrait mal aligné */
.legal-toc a{text-wrap:balance}.content-cgv .legal-toc a{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.35em}
/* R176 · groupe 134 · Trou vide sous la carte « Demandez votre entretien » */
@media(min-width:901px){.closing-card.highlight{position:sticky;top:112px}}
/* R176 · groupe 135 · Phrase signature du groupe collée à la dernière carte */
.empire-tagline{margin-top:48px;text-wrap:balance}
/* R176 · groupe 136 · Doubles filets entre rangées de pastilles de phases */
.phase-pill{border:0;background:var(--paper);border-radius:5px;padding:23px 18px}@media(max-width:1150px){.phase-pill{padding-inline:12px}}@media(min-width:901px) and (max-width:1150px){.reference-content .phase-pill h3{font-size:1.3125rem}}
/* R176 · groupe 138 · Symbole ® en pleine hauteur de capitale */
.stat-num sup{font-size:.4em;line-height:0;vertical-align:super;margin-left:.05em}
/* R176 · groupe 142 · Liens de preuve du linktree en 11,67 px */
.verify-block small{font-size:.8125rem}.verify-block small a{display:inline-block;padding-block:4px}
/* R176 · groupe 143 · Flèche des cartes du linktree flottante */
.link-btn-arrow{top:24px;line-height:1.5rem}@media(max-width:600px){.link-btn-arrow{top:23px;line-height:1.4063rem}}@media(max-width:350px){.link-btn-arrow{line-height:1.3125rem}}
/* R176 · groupe 144 · Icônes de réseaux du linktree sans état de survol */
.socials a{transition:border-color .2s,background-color .2s,color .2s}.socials a:hover{border-color:var(--gold);background:var(--paper);color:var(--gold-text)}
/* R176 · groupe 145 · Liens de suggestion de la 404 indiscernables du texte */
.content-404 ul{list-style:none;padding-left:0}.content-404 li{position:relative;padding-left:18px}.content-404 li::before{content:'›';position:absolute;left:0;color:var(--gold-text)}.content-404 li a{color:var(--navy);font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}.content-404 li a:hover{color:var(--gold-text)}
/* R176 · groupe 146 · h1 et h2 de la 404 de taille quasi égale à 320 */
@media(max-width:540px){.content-404>h2{font-size:1.5625rem}}
/* R176 · groupe 99 · Intertitres des pages recrutement presque aussi grands que les h2 */
.reference-content :is(.mission,.culture-item,.etape) strong{font-size:clamp(1.3125rem,1.05rem + .7vw,1.6875rem);line-height:1.25}
/* R176 · groupe 102 · Flèche de « Voir l'annonce ↗ » sous la ligne de base */
.poste-lire{align-items:baseline}
/* R176 · groupe 103 · Colonnes des sections du recrutement sur des axes différents */
@media(min-width:761px){.profil-duo{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}}
/* R176 · groupe 104 · Lignes de texte trop longues (volet recrutement : .cand-cadre p / .cand-note) */
.cand-cadre p{max-width:560px}
/* R176 · groupe 106 · Paragraphes de « Pourquoi ce poste existe » collés */
.poste-texte+.poste-texte{margin-top:20px}
/* R176 · groupe 107 · Intertitres du recrutement avec mot orphelin */
.mission strong,.culture-item strong,.etape strong{text-wrap:balance}
/* R176 · groupe 108 · Puces natives grises dans les listes (volet .profil-col) */
.profil-col ul{list-style:none;padding-left:0}.profil-col li{position:relative;padding-left:24px}.profil-col li::before{content:'›';position:absolute;left:0;color:var(--gold-text)}
/* R176 · groupe 112 · Placeholders en gris système hors palette */
#formCandidature ::placeholder{color:var(--ink-soft);opacity:1}
/* R176 · groupe 113 · Écart titre/contenu variable entre sections du recrutement */
.reference-content .etape,.reference-content .profil-col{padding-top:0}.deroule-grille,.profil-duo{margin-top:34px}
/* R176 · groupe 114 · Une seule carte dans une grille à deux colonnes */
@media(min-width:601px){.content-recrutement-consultant .postes-grille,.content-recrutement-assistant-direction .postes-grille{grid-template-columns:minmax(0,720px)}}
/* R176 · groupe 115 · Boutons principaux réduits à 12 px sous 350 px (volet recrutement) */
@media(max-width:350px){.reference-content .hero-actions .button{font-size:.875rem}}
/* R176 · groupe 116 · Descriptions du déroulé en 14 px contre 16 px ailleurs */
.reference-content .etape p{font-size:.9375rem}

/* 09/10/2026 · Revue visuelle des 393 tranches (mandat d autonomie) : correctifs limités aux composants. */
/* RV · V2 · Numéros de méthode : colonne de largeur fixe sous 540 px, titres alignés entre étapes (29 à 33 px auparavant) ; 40 px pour que « 02 » et « 04 » tiennent sous espacements WCAG (36 px débordaient de 3 px) */
@media(max-width:540px){.commercial-method li{grid-template-columns:40px minmax(0,1fr)}}
/* RV · V3 · Titre « Avec Samih Bentaha, du premier échange à la mission. » : retour forcé levé sous 360 px (5 lignes avec « Avec » seul, 4 lignes sans) */
@media(max-width:360px){.commercial-trust h2 br{display:none}}
/* RV · V4 · Page parcours : lien « Découvrir la méthode et les programmes » collé à son paragraphe comme les autres liens texte (55 px d'écart avant, 30 après) */
.content-agence section>a.btn-secondary.text-link{margin-top:0}
/* RV · V5 · Page parcours à 1440 px : portrait qui suit le texte (colonne photo de 686 px pour un texte de 957 px) */
@media(min-width:901px){.histoire-duo .editorial-hero-photo{position:sticky;top:112px}}

/* 09/10/2026 · Revue visuelle, suite : constats des zones C1 et C2 et questions de FAQ. */
/* RV · V6 · Carte « Demandez un rappel » : paragraphe d introduction collé au premier libellé (0 px) */
.closing-card .demo-form-slot{margin-top:24px}
/* RV · V7 · Bouton « Demander un rappel » rectangulaire (5 px) à côté du bouton en pilule « Demander mon entretien » */
.reference-content .closing-card button.closing-cta{border-radius:30px}
/* RV · V8 · Lien « En savoir plus » de la mention RGPD coupé sur deux lignes à 390 px */
.form-rgpd a{white-space:nowrap}
/* RV · V9 · 404 : lien secondaire « Voir les accompagnements » sans signe de lien */
.content-404 .hero-actions a.line{text-decoration:underline;text-underline-offset:.25em}
/* RV · V10 · Questions de FAQ : dernière ligne équilibrée aux grandes largeurs */
summary{text-wrap:pretty}
/* RV · V14 · Pages légales : listes en puces rondes du navigateur, remplacées par le chevron « › » de la maison */
.legal-text ul{list-style:none;padding-left:0}.legal-text ul>li{position:relative;padding-left:1.15em}.legal-text ul>li::before{content:"›";position:absolute;left:0;color:var(--gold-text)}
/* RV · V15 · Annonces : ligne « Lieu » dont la suite repartait sous l étiquette à 320 et 390 px (étiquette et valeur en deux colonnes) */
.poste-faits>span{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.6em;align-items:baseline}

/* 10/10/2026 · Articles d Insights en relecture : bloc dépliable sous chaque carte. */
.article-lecture{margin:18px 0 6px;max-width:720px}.article-lecture>summary{cursor:pointer;min-height:24px;padding:4px 0;font:600 .875rem/1.5 var(--label,inherit);color:var(--navy);text-decoration:underline;text-underline-offset:.25em;list-style:none}.article-lecture>summary::-webkit-details-marker{display:none}.article-lecture[open]>summary{margin-bottom:18px}.article-corps{border-left:2px solid var(--gold-text);padding-left:22px}.article-corps p{font-size:1rem;line-height:1.8;margin:0 0 14px;max-width:none}.article-corps .article-chapeau{font-weight:600;color:var(--navy)}.article-corps h3{font:400 1.375rem/1.3 var(--serif);margin:26px 0 10px}.article-liste{list-style:none;padding:0;margin:0 0 14px}.article-liste li{position:relative;padding-left:1.15em;margin-bottom:8px;line-height:1.7}.article-liste li::before{content:"›";position:absolute;left:0;color:var(--gold-text)}.article-signature{font-style:italic;color:var(--gold-text)}@media(max-width:600px){.article-corps{padding-left:14px}.article-corps h3{font-size:1.25rem}}

/* 10/10/2026 · Finitions après relecture du lot éditorial. */
/* F6 · Lieu des cartes de poste coupé en laissant « À » en fin de ligne */
.poste-tag{text-wrap:balance}
/* F7 · Texte agrandi par le visiteur (taille de police du navigateur à 200 %) : grilles à deux colonnes repliées et liens coupables, seulement quand la fenêtre fait moins de 40 em (aucun effet à la taille normale) */
@media (max-width:1100px) and (max-width:40em){.home-opening,.work-grid{grid-template-columns:minmax(0,1fr)}.orientation{flex-wrap:wrap}.orientation>*{min-width:0}.orientation a{overflow-wrap:anywhere}}main,.reference-content{overflow-wrap:break-word}
/* 16 octobre 2026 · Harmonisation visuelle MR SAM BEN.
   Rôles communs aux 19 pages. Les montants, composants métier et protections
   restent dans leurs sources. Aucune animation autonome ou décor ajouté. */
:root {
  --type-display: clamp(2.5rem, 2rem + 2.3vw, 4rem);
  --type-section: clamp(1.875rem, 1.55rem + 1.2vw, 2.625rem);
  --type-card: clamp(1.5rem, 1.25rem + .6vw, 1.75rem);
  --type-reading: 1rem;
  --type-secondary: 1rem;
  --type-caption: .8125rem;
  --type-label: .75rem;
  --section-title: var(--type-section);
  --space-section: clamp(3.5rem, 6vw, 5.5rem);
  --space-columns: clamp(2rem, 5vw, 4.5rem);
  --space-heading: clamp(1.75rem, 3vw, 2.5rem);
  --motion-fast: 180ms;
  --motion-ease: cubic-bezier(.2,.65,.3,1);
}
/* Une famille par rôle, une hiérarchie reconnaissable entre les pages. */
main :is(h1,h2,h3) { font-family:var(--serif); font-weight:350; }
main :is(h1,h2) { letter-spacing:-.03em; text-wrap:balance; }
main h3 { letter-spacing:-.02em; text-wrap:pretty; }
.catalog-head h1,.page-intro h1,.journal-head h1,.reference-content .hero h1 {
  font-size:var(--type-display); line-height:1.12;
}
.catalog-head > div { min-width:0; }
@media (max-width:350px) {
  .catalog-head h1 { font-size:2.25rem; }
  .catalog-head .actions .button { max-width:100%; }
}
.home-copy h1 { line-height:1.08; }
.section-heading h2,.commercial-trust h2,.commercial-questions h2,
.program-situations h2,.program-end h2,.first-step h2,
.reference-content :is(h2.section-title,h2.stitle),.reference-content.legal-page h2 {
  font-size:var(--type-section); line-height:1.2;
}
.work-grid h3,.dual-grid h3,.home-links h3,.home-articles h3,
.commercial-method h3,.format-list h3,.reference-content .signature-card h3,
.reference-content .value-card h3,.reference-content .ecosystem-card h3 {
  font-size:var(--type-card); line-height:1.28;
}
main :is(.eyebrow,.small-label,.hero-eyebrow,.section-eyebrow,.proof-eyebrow) {
  font-family:var(--label); font-size:var(--type-label); font-weight:600;
  line-height:1.6; letter-spacing:.1em;
}
.home-copy>.eyebrow,.program-lead>.eyebrow { font-size:var(--type-label); }
.section-heading>p,.section-heading>.program-content-intro,
.home-programmes .section-heading>p,.work-grid p,.commercial-trust p,
.commercial-method li p,.program-value p,.format-list p,
.home-links p,.card-public,.card-support,.card-frame {
  font-family:var(--sans); font-size:var(--type-secondary); line-height:1.8;
}
.home-copy>p,.reference-content .hero-sub,.first-step>div>p {
  font-size:var(--type-reading); line-height:1.85; max-width:60ch;
}
.article-corps h3 { font-size:1.375rem; line-height:1.4; letter-spacing:-.015em; }
/* Les axes restent identiques d'une section à la suivante. */
.section-heading { gap:var(--space-columns); align-items:start; margin-bottom:var(--space-heading); }
.section-heading>p { padding-top:0; max-width:44ch; }
.home-dual .section-heading { column-gap:var(--space-columns); }
.dual-grid { column-gap:var(--space-columns); }
.work-grid { column-gap:var(--space-columns); row-gap:2.5rem; }
.program-situations { column-gap:var(--space-columns); }
.reference-content>section:not(.hero):not(.signature-section) { padding-block:var(--space-section); }
.section,.home-dual,.home-insights,.commercial-method,.commercial-questions {
  padding-block:var(--space-section);
}
.catalogue-card { column-gap:clamp(1.75rem,3vw,2.5rem); }
.catalogue-card h2 { line-height:1.2; }
.card-objective { line-height:1.45; }
.home-links>a { min-width:0; }
.home-links .home-offer-copy { min-width:0; }
/* Gravures : une présence de marque, derrière les contenus, sans capter le clic. */
.opening-engraving { pointer-events:none; user-select:none; }
.reference-content .hero .opening-engraving {
  width:clamp(9rem,16vw,13rem); height:auto; aspect-ratio:1; opacity:.13;
  top:3rem; right:0;
}
.page-intro>.opening-engraving,.journal-head>.opening-engraving {
  width:clamp(9rem,16vw,13rem); height:auto; aspect-ratio:1; opacity:.075;
  top:2rem; right:0;
}
.catalog-head>.opening-engraving { opacity:.055; }
/* Réactions cohérentes réservées aux éléments réellement interactifs. */
.button,.header-cta,.card-price a,.program-nav a,.intent-buttons button,
.poste-carte,.reference-content .link-btn,.home-links>a,.home-articles a,
.socials a,.footer-social a {
  transition:background-color var(--motion-fast) var(--motion-ease),
    border-color var(--motion-fast) var(--motion-ease),
    color var(--motion-fast) var(--motion-ease),
    box-shadow var(--motion-fast) var(--motion-ease);
}
.text-link,.footer-navigation>a,.footer-programmes a,.footer-bottom a,
.entry-formats a strong,.home-articles a h3 {
  transition:color var(--motion-fast) var(--motion-ease),
    text-decoration-color var(--motion-fast) var(--motion-ease);
  text-underline-offset:.25em;
}
.button>span[aria-hidden],.home-offer-arrow,.link-btn-arrow,.poste-lire::after {
  transition:transform var(--motion-fast) var(--motion-ease);
}
@media(hover:hover) and (pointer:fine) {
  .button:hover>span[aria-hidden],.home-links>a:hover .home-offer-arrow,
  .link-btn:hover .link-btn-arrow,.poste-carte:hover .poste-lire::after { transform:translate(2px,-2px); }
  .home-links>a:hover,.poste-carte:hover,.reference-content .link-btn:not(.primary):hover {
    box-shadow:inset 0 0 0 1px rgba(168,134,63,.32);
  }
  .home-articles a:hover { background:var(--paper); }
}
.button:focus-visible,.card-price a:focus-visible,.poste-carte:focus-visible,
.reference-content .link-btn:focus-visible,.home-links>a:focus-visible,
.home-articles a:focus-visible {
  outline:2px solid var(--gold-text); outline-offset:4px;
}
.direction-card .card-price a:focus-visible,.approach-band .text-link:focus-visible {
  outline-color:#bda475;
}
@media(min-width:901px) {
  #livrables .section-heading { column-gap:var(--space-columns); }
}
@media(max-width:900px) {
  .section-heading { gap:1.5rem; }
  .reference-content .hero .opening-engraving { opacity:.08; }
}
@media(max-width:600px) {
  .section-heading { margin-bottom:1.75rem; }
  .section-heading>p,.home-programmes .section-heading>p { margin-top:1.25rem; }
  .work-grid { row-gap:1.75rem; }
  .reference-content .hero .opening-engraving,
  .page-intro>.opening-engraving,.journal-head>.opening-engraving {
    width:8.5rem; top:1.25rem; opacity:.055;
  }
  .article-corps h3 { font-size:1.25rem; }
  .home-copy .button { font-size:.875rem; }
}
@media(prefers-reduced-motion:reduce) {
  .button,.header-cta,.card-price a,.program-nav a,.intent-buttons button,
  .poste-carte,.reference-content .link-btn,.home-links>a,.home-articles a,
  .socials a,.footer-social a,.text-link,.footer-navigation>a,.footer-programmes a,
  .footer-bottom a,.entry-formats a strong,.home-articles a h3,
  .button>span[aria-hidden],.home-offer-arrow,.link-btn-arrow,.poste-lire::after {
    transition:none;
  }
  .button:hover>span[aria-hidden],.home-links>a:hover .home-offer-arrow,
  .link-btn:hover .link-btn-arrow,.poste-carte:hover .poste-lire::after { transform:none; }
}

/* Credit de realisation restaure depuis les references MSB. */
.footer-bottom .footer-credit{display:flex;align-items:center;flex-wrap:wrap;gap:0 .35em;min-width:0}.footer-credit a{color:#bda475;font-weight:600}.footer-credit a:hover{color:var(--cream)}
@media(max-width:1100px){.footer-bottom .footer-credit{flex-basis:100%}}

/* Formats ponctuels : même axe de lecture, prix et actions explicites. */
.format-list .format-purpose{display:block;color:var(--gold-text);margin-bottom:1.1rem;letter-spacing:.09em}
.format-list .format-price{width:100%;border-top:1px solid var(--line);padding-top:1.3rem;margin-top:1.5rem}
.format-list .format-price strong{font-size:clamp(1.6rem,2.2vw,2rem);line-height:1.3}
.format-list .format-payment{font-family:var(--sans);font-size:.875rem;line-height:1.65;color:var(--muted);margin-top:.8rem}
.format-list .format-action{width:100%;margin-top:1.25rem;justify-content:space-between;gap:.7rem;white-space:normal;font-size:.9375rem;text-align:left}
.booking-availability{border-left:2px solid var(--gold);padding:.25rem 0 .25rem 1.25rem;margin:1.75rem 0 0;max-width:90ch;font-size:.875rem;color:var(--muted);line-height:1.8}
.footer-identity .footer-offer{display:block;color:#c2cfd5;font:400 .8125rem/1.7 var(--sans);margin-top:.5rem}
@media(min-width:901px){.format-list article{display:grid;grid-template-rows:1fr auto auto;align-items:stretch}.format-list .format-price{display:flex;flex-direction:column;min-height:10rem}.format-list .format-payment{margin-top:auto;padding-top:.8rem}.format-list .format-action{align-self:end}}
@media(min-width:601px) and (max-width:900px){.format-list .format-action{grid-column:2;align-self:end}.format-list .format-price{margin:0;padding:0;border:0}.format-list .format-price strong{font-size:1.625rem}}
@media(max-width:600px){.format-list .format-price{margin-top:1.25rem;padding-top:1.25rem}.format-list .format-price strong{font-size:1.75rem}.format-list .format-action{min-height:52px}.booking-availability{margin-top:1.5rem}}

/* Reservation Cal : bouton separe du texte de contexte. */
.intent-note .button{display:flex;width:fit-content;max-width:100%;margin:1.25rem 0 .75rem;text-decoration:none;white-space:normal;text-align:center;justify-content:center;line-height:1.5}

/* 16/10 · Porte d’entrée payante et orientation du contact. */
.header-cta{flex-wrap:wrap;align-items:center;justify-content:center;gap:.3rem .65rem;max-width:27rem}.cta-price{font-size:.82em;white-space:nowrap}.hero-offer-note{flex-basis:100%;max-width:34rem}.paid-entry{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2rem,5vw,6rem);padding:1rem 0 4rem;border-bottom:1px solid var(--line,#d7d0c4)}.paid-entry h2{font-size:clamp(2.5rem,4vw,4rem)}.paid-entry p{max-width:40rem}.paid-entry-action{align-self:center;background:#fffcf6;padding:clamp(1.4rem,3vw,3rem);border-top:2px solid #bda475}.paid-entry-price{font-family:Fraunces,serif;font-size:clamp(2.6rem,4vw,4rem);line-height:1.15;margin:0 0 1rem}.paid-entry-action .button{margin:1rem 0}.purchase-alternatives{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:4rem 0}.purchase-alternatives h2{font-size:2rem}.service-contact{padding:3rem 0;border-top:1px solid #d7d0c4}.service-contact .contact-box{max-width:48rem;margin:2rem 0}.service-contact .contact-box [data-motif-select]{display:block}.commercial-faq{padding-block:5rem}.faq-group{margin:0;padding:2rem 0;border-top:1px solid #d7d0c4}.faq-group h3{font-family:Fraunces,serif;font-size:1.6rem;font-weight:400}.faq-group .faq p{max-width:65ch}.contact-address{flex-wrap:wrap;overflow-wrap:anywhere}@media(max-width:760px){.paid-entry,.purchase-alternatives{grid-template-columns:1fr;gap:2rem}.purchase-alternatives{padding-block:2rem}.commercial-faq{padding-block:3rem}}

/* Insights : couvertures communes et lecture editoriale, 16 octobre 2026. */
.insight-cover{position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;aspect-ratio:16/11;background:#122839;color:#bda475;min-width:0}
.insight-cover::before{content:"";position:absolute;inset:18%;border:1px solid currentColor;border-radius:50%;opacity:.16;z-index:-1}
.insight-cover::after{content:"";position:absolute;inset:11%;border:1px solid currentColor;opacity:.1;z-index:-1}
.insight-cover--paper{background:#ede6d6;color:#796124}
.insight-cover img{width:65%;height:74%;object-fit:contain;filter:var(--gravure-creme);opacity:1;transition:transform .35s ease}
:root{--gravure-creme:brightness(0) saturate(100%) invert(43.925%) sepia(100%) saturate(230.002%) hue-rotate(2.430deg) drop-shadow(0 0 0 #bda475) drop-shadow(0 0 0 #bda475);--gravure-marine:brightness(0) saturate(100%) invert(54.254%) sepia(100%) saturate(143.215%) hue-rotate(-2.080deg) drop-shadow(0 0 0 #bda475) drop-shadow(0 0 0 #bda475)}
.insight-cover--navy img{filter:var(--gravure-marine)}
.cover-index,.cover-signature{position:absolute;font:500 .625rem/1.4 var(--sans);letter-spacing:.18em;z-index:1}
.cover-index{top:1.2rem;left:1.4rem}.cover-signature{bottom:1.2rem;right:1.4rem}.cover-rule{position:absolute;bottom:1.55rem;left:1.4rem;width:2.5rem;border-top:1px solid currentColor}
.insight-cover-link{display:block;min-width:0;text-decoration:none}.insight-cover-link:focus-visible{outline:2px solid var(--gold-text);outline-offset:5px}
.journal-feature-grid{grid-template-columns:1fr 1.18fr;gap:clamp(2rem,4vw,4.5rem);align-items:center}
.journal-feature-grid>.insight-feature-cover{align-self:stretch}.insight-feature-cover .insight-cover{height:100%;min-height:20rem;aspect-ratio:5/4}
.journal-feature-grid h2{font-size:clamp(2rem,3.3vw,3.2rem);line-height:1.14;margin-block:1.1rem 1.3rem}
.journal-collection>.journal-list{gap:3.5rem 2rem;align-items:stretch}
.journal-collection>.journal-list>.insight-card{display:flex;flex-direction:column;gap:0;padding:0;border:0;min-width:0}
.insight-card-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:1.65rem 0 .5rem}
.journal-list .insight-card h2{font-size:clamp(1.6rem,2.2vw,2rem);line-height:1.23;margin:.7rem 0 1rem}
.journal-list .insight-card-copy>p{font-size:.9375rem;line-height:1.8;margin:0 0 1.5rem;max-width:44ch}
.insight-card .article-lecture{margin-top:auto;padding:0}.insight-card .publication-state{margin-top:1rem;background:transparent;padding:0;color:var(--muted);font-size:.75rem}
.insight-card-copy>.publication-state:only-child{margin-top:auto}.insight-card:not(:has(.article-lecture)) .publication-state{margin-top:auto;border:1px solid var(--line);padding:.4rem .7rem}
.article-lecture summary{min-height:44px;display:flex;align-items:center;gap:.8rem;text-decoration-thickness:1px;text-underline-offset:.3em}
.article-lecture summary::after{content:"↗";display:inline-block;font-family:var(--sans);font-size:1.2em;text-decoration:none}
.home-articles>a{padding:0;background:transparent;display:flex;flex-direction:column;min-width:0}
.home-insight-copy{padding:1.5rem 0;display:flex;flex-direction:column;align-items:flex-start;flex:1}.home-articles h3{font-size:clamp(1.5rem,2.1vw,1.85rem);line-height:1.25;margin:.75rem 0 1.3rem}.home-insight-read{font-family:Domus,var(--sans);font-size:.9375rem;margin-top:auto;display:flex;justify-content:space-between;width:100%;border-top:1px solid var(--line);padding-top:1rem}
.article-reader{background:#f6f1e7;color:#122839;border:0;padding:0;width:min(68rem,calc(100% - 3rem));max-width:none;height:calc(100dvh - 3rem);max-height:calc(100dvh - 3rem);overflow:auto;overscroll-behavior:contain;box-shadow:0 1rem 5rem #0005}
.article-reader::backdrop{background:rgba(4,29,43,.8)}body.article-reader-open{overflow:hidden}
.reader-toolbar{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem clamp(1rem,4vw,3rem);background:#f6f1e7;border-bottom:1px solid var(--line)}
.reader-toolbar>span{font:500 .75rem/1.5 Domus,var(--sans);letter-spacing:.08em}.reader-close{display:flex;align-items:center;gap:.7rem;min-height:44px;padding:.4rem .7rem;background:transparent;color:#122839;border:1px solid transparent;font:500 .875rem/1.5 Domus,var(--sans);cursor:pointer}.reader-close:hover{border-color:var(--gold-text)}.reader-close:focus-visible{outline:2px solid var(--gold-text);outline-offset:1px}
.reader-heading{padding:clamp(1.5rem,5vw,4rem) clamp(1.3rem,5vw,5rem) 2.5rem;max-width:56rem;margin:auto}.reader-heading h2{font-family:Fraunces,serif;font-size:clamp(2rem,4vw,3.75rem);line-height:1.13;font-weight:400;letter-spacing:-.025em;margin:1rem 0 1.5rem}.reader-meta{display:flex;gap:.6rem 1.2rem;flex-wrap:wrap;font-size:.8125rem;color:var(--muted)}
.reader-cover{max-width:56rem;margin:0 auto}.reader-cover .insight-cover{aspect-ratio:3/1}.reader-cover .insight-cover img{width:42%;height:85%}.reader-content{padding:2.5rem clamp(1.3rem,5vw,5rem) 4rem;max-width:56rem;margin:auto}.reader-content .article-corps{border:0;padding:0;margin:0;max-width:none}.reader-content .article-corps p,.reader-content .article-corps li{font-size:1.0625rem;line-height:1.9;max-width:65ch}.reader-content .article-corps h3{font-family:Fraunces,serif;font-size:1.8rem;line-height:1.25;margin:2.5rem 0 1rem}.reader-content .article-corps .article-chapeau{font-size:1.25rem;line-height:1.7;color:#122839;margin-top:0}.reader-content .article-signature{border-top:1px solid var(--line);padding-top:1.5rem;font-family:Fraunces,serif;font-style:italic}.reader-content a{overflow-wrap:anywhere;text-underline-offset:.2em}.reader-content li{margin-bottom:.6rem}
@media(hover:hover) and (pointer:fine){.insight-cover-link:hover img,.home-articles>a:hover .insight-cover img{transform:scale(1.045)}.home-articles>a:hover{background:transparent}.home-articles>a:hover .home-insight-read{color:var(--gold-text)}}
@media(max-width:900px){.journal-feature-grid{grid-template-columns:1fr 1fr;gap:1.8rem}.insight-feature-cover .insight-cover{min-height:18rem}.home-articles{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem}.home-articles h3{font-size:1.4rem}.home-insight-copy .small-label{font-size:.625rem}}
@media(max-width:600px){.journal-feature-grid,.home-articles{grid-template-columns:1fr}.insight-feature-cover .insight-cover{aspect-ratio:16/11;min-height:0}.journal-feature-grid h2{font-size:2rem}.journal-collection>.journal-list{row-gap:2.5rem}.journal-list .insight-card h2{font-size:1.8rem}.home-articles{gap:1.5rem}.home-articles h3{font-size:1.75rem}.home-insight-copy .small-label{font-size:.75rem}.article-reader{width:100%;height:100dvh;max-height:100dvh;margin:0}.reader-heading{padding-top:2rem}.reader-cover .insight-cover{aspect-ratio:16/7}.reader-cover .insight-cover img{width:55%}.reader-content .article-corps p,.reader-content .article-corps li{font-size:1rem}.reader-content .article-corps .article-chapeau{font-size:1.125rem}.reader-content .article-corps h3{font-size:1.55rem}.cover-index,.cover-signature{font-size:.6rem}}
@media(prefers-reduced-motion:reduce){.insight-cover img{transition:none}.insight-cover-link:hover img,.home-articles>a:hover .insight-cover img{transform:none}}
/* Sans JavaScript, les details restent lisibles sur toute la largeur de la grille. */
.journal-list>.insight-card:has(.article-lecture[open]){grid-column:1/-1}.insight-card:has(.article-lecture[open])>.insight-cover-link{max-width:30rem}.insight-card:has(.article-lecture[open]) .insight-card-copy{max-width:48rem}.insight-card:has(.article-lecture[open]) .article-corps{max-width:65ch}

/* CHARTE-MSB-20261017 : rôles typographiques et hiérarchie commerciale.
   Source de décision : CHARTE.md. Les contenus et contrats restent inchangés. */
:root {
  --type-home:clamp(2.75rem,1.2rem + 4.5vw,4.75rem);
  --type-lead:clamp(1.125rem,1rem + .3vw,1.25rem);
  --type-body:clamp(1rem,.96rem + .12vw,1.0625rem);
  --type-faq:clamp(1.25rem,1.05rem + .5vw,1.5rem);
  --navy-raised:#1c3a4b;
}
.home-copy h1{font-size:var(--type-home);line-height:1.08}
.catalog-head h1,.page-intro h1,.journal-head h1,.program-lead h1,
.reference-content .hero h1{font-size:var(--type-display);line-height:1.12;letter-spacing:-.035em}
.section-heading h2,.approach-title h2,.home-commitments h2,
.commercial-trust h2,.commercial-method .section-heading h2,
.commercial-questions h2,.program-situations h2,.program-end h2,
.first-step h2,.paid-entry h2,.reference-content .section-title,
.reference-content .stitle{font-size:var(--type-section);line-height:1.2}
.work-grid h3,.dual-grid h3,.home-links h3,.home-articles h3,
.commercial-method h3,.format-list h3,.reference-content .signature-card h3,
.reference-content .value-card h3,.reference-content .ecosystem-card h3,
.journal-list .insight-card h2{font-size:var(--type-card);line-height:1.28}
.catalogue-card h2{font-size:clamp(1.75rem,1.5rem + .65vw,2rem);line-height:1.2}
.home-copy>p,.reference-content .hero-sub{font-size:var(--type-body);line-height:1.8}
.program-lead .program-promise{font-size:clamp(1.375rem,1.1rem + .7vw,1.75rem);line-height:1.45;max-width:30ch}
.program-lead>p:not(.program-promise),.reference-content .section p,
.reference-content .section li,.program-details li{font-size:var(--type-body);line-height:1.8}
.section-heading>p,.section-heading>.program-content-intro,
.home-programmes .section-heading>p,.work-grid p,.commercial-trust p,
.commercial-method li p,.program-value p,.format-list p,.home-links p,
.card-public,.card-support,.card-frame,.journal-list .insight-card-copy>p{
  font-size:1rem;line-height:1.8;
}
.home-copy .hero-offer-note,.booking-availability,.format-list .format-payment,
.program-summary-card .small,.card-price p,.card-price small{font-size:.8125rem;line-height:1.7}
.eyebrow,.small-label,.home-insight-copy .small-label{font-size:.75rem;line-height:1.5}
.button,.header-cta,.format-list .format-action,.text-link{font-family:var(--label);font-weight:600;font-size:.875rem;line-height:1.5}
.button,.format-list .format-action{min-height:52px}
.header-cta{min-height:48px}
.home-opening{padding-bottom:var(--space-section)}
.section-heading{align-items:start}
.section-heading h2{max-width:22ch}
.section-heading>p{max-width:42ch}
.home-dual .section-heading h2{max-width:20ch}
.home-commitments{padding-block:3rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-commitments ul{max-width:65ch}
.home-urgent{margin-top:1rem;margin-bottom:var(--space-section);padding:2rem 2.5rem;border:1px solid var(--line);background:transparent}
.home-urgent .text-link{white-space:normal;min-width:0;max-width:20rem;align-self:center}
.first-step{border-top:1px solid var(--line);padding-block:var(--space-section)}
.first-step>div>p{max-width:60ch}
.entry-formats a{gap:1rem;padding-block:1.25rem}
.paid-entry-action{background:var(--paper)}
.card-price a{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;padding:.5rem 0;border:0;border-radius:0;background:transparent;color:var(--navy);font:600 .875rem/1.5 var(--label);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em}
.card-price a:hover{background:transparent;color:var(--gold-text)}
.direction-card .card-price a{background:transparent;color:var(--cream)}
.direction-card .card-price a:hover{background:transparent;color:#bda475}
.format-list article{padding:clamp(1.5rem,2.4vw,2.25rem);background:var(--paper)}
.format-list article:nth-child(n+2) .format-action{background:transparent;color:var(--navy);border:1px solid var(--navy)}
.format-list article:nth-child(n+2) .format-action:hover{background:var(--navy);color:var(--cream)}
.faq summary{font-size:var(--type-faq);line-height:1.4;padding-block:1.25rem}
.faq details p{font-size:1rem;line-height:1.8;max-width:65ch;padding-bottom:1.25rem}
.faq-group h3{font-size:1.5rem;line-height:1.3}
.reference-content.legal-page h1{font-size:var(--type-display)}
.reference-content.legal-page h2{font-size:clamp(1.5rem,1.25rem + .6vw,1.75rem);line-height:1.3}
.reference-content.legal-page h3{font-size:1.25rem;line-height:1.4}
.reference-content.legal-page p,.reference-content.legal-page li{font-size:1rem;line-height:1.85;max-width:68ch}
.reference-content.legal-page section{max-width:68ch}
.reference-content .hero .opening-engraving,.catalog-head>.opening-engraving,
.page-intro>.opening-engraving,.journal-head>.opening-engraving{opacity:.06;right:0;max-width:17%;pointer-events:none}
.program-summary-card>img{width:104px;height:104px;margin-bottom:1.5rem}
.insight-cover::after{content:none}
.insight-cover::before{opacity:.09}
.home-insight-copy .small-label{letter-spacing:.06em}
.insight-card-copy .eyebrow{font-size:.75rem}
.reader-heading h2{font-size:var(--type-display);line-height:1.15}
.reader-content .article-corps h3{font-size:var(--type-card);line-height:1.3}
.reader-content .article-corps p,.reader-content .article-corps li{font-size:var(--type-body);line-height:1.85}
.reader-content .article-corps .article-chapeau{font-size:var(--type-lead);line-height:1.7}
.home-programmes .section-heading h2,.orientation h2{font-size:var(--type-section);line-height:1.2}
.paid-entry h2,.purchase-alternatives h2{margin-bottom:1.25rem}
.purchase-alternatives h2{font-size:var(--type-card);line-height:1.28}
.paid-entry-price,.format-list .format-price,.first-step-meta strong,
.card-budget strong,.program-summary-card .program-price{font-size:clamp(2rem,1.75rem + .6vw,2.5rem);line-height:1.2}
@media(min-width:1001px){
  .commercial-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4rem;align-items:start}
  .commercial-faq>.section-heading,.commercial-faq>p{grid-column:1/-1}
  .commercial-faq .faq-group{display:block;padding:2rem 0 0;margin:0}
  .commercial-faq .faq-group h3{margin-bottom:1rem}
  .commercial-faq .faq summary{font-size:1.25rem;line-height:1.4}
  .commercial-faq .faq details:last-child{border-bottom:0}
}
@media(max-width:1000px){
  .home-commitments h2{max-width:22ch}
  .commercial-method ol{row-gap:2.5rem}
}
@media(max-width:600px){
  .section-heading>p,.home-programmes .section-heading>p{margin-top:0}
  .home-urgent{padding:1.5rem;margin-bottom:3.5rem}
  .home-urgent .text-link{max-width:100%;min-height:44px}
  .home-commitments{padding-block:2rem}
  .first-step{padding-block:3.5rem}
  .reference-content .hero .opening-engraving,.catalog-head>.opening-engraving,
  .page-intro>.opening-engraving,.journal-head>.opening-engraving{display:none}
  .format-list article{padding:1.5rem}
  .program-summary-card{padding:1.5rem}
  .card-public,.card-support,.card-frame,.format-list p,.home-links p{font-size:.9375rem}
  .reader-heading h2{font-size:2.25rem}
  .home-insight-copy .small-label{font-size:.75rem}
}
@media(max-width:350px){
  .catalog-head h1,.page-intro h1,.journal-head h1,.program-lead h1,
  .reference-content .hero h1{font-size:2.25rem}
}
@media(hover:hover) and (pointer:fine){
  .button:hover,.header-cta:hover{background:var(--navy-raised)}
}
@media(prefers-reduced-motion:reduce){
  .card-price a,.format-list .format-action{transition:none}
}

/* Architecture commerciale, 17 octobre : choix progressif et valeur client. */
.action-arrow{display:inline-block;width:var(--action-icon-size);height:var(--action-icon-size);min-width:var(--action-icon-size);vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;transition:transform .2s ease}
a:hover>.action-arrow,a:focus-visible>.action-arrow{transform:translate(2px,-2px)}
.button .action-arrow,.text-link .action-arrow{margin-left:.45rem}
.article-lecture>summary::after{content:none}
.article-lecture>summary>.action-arrow{margin-left:.5rem}
.header-cta{gap:.65rem}
.commercial-architecture .catalog-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);gap:clamp(2rem,6vw,5.5rem);align-items:center;padding-block:4.5rem;min-height:0}
.catalog-hero h1{max-width:none;font-size:clamp(2.375rem,4.25vw,4rem)}
.catalog-hero .catalog-intro{max-width:55ch}
.catalog-hero .catalog-visual{position:relative;align-self:stretch;min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:var(--navy);padding:1.75rem 2rem;color:var(--cream);isolation:isolate;overflow:hidden}
.catalog-visual>.small-label{color:#bda475;align-self:flex-start;z-index:1}
.catalog-visual .catalog-illustration{display:block;position:relative;object-fit:contain;width:80%;max-width:280px;height:250px;opacity:.95;margin:1rem auto;filter:brightness(1.45)}
.catalog-hero .catalog-aside{display:block;position:static;text-align:center;color:var(--cream);background:none;border:0;padding:0;margin:0;max-width:none;z-index:1}
.catalog-aside p{color:var(--cream);font-family:var(--serif);font-size:1.5rem;margin:0 0 .6rem}
.catalog-aside span{color:#d5dfe4;font-size:.8125rem;line-height:1.65}
.client-value{border-top:1px solid var(--line);padding-block:3.5rem}
.programmes-choice{padding-block:3.5rem}
.value-triptych,.client-commitments ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;list-style:none;padding:0;margin:2.5rem 0 0;max-width:none}
.value-triptych article,.client-commitments li{padding:1.5rem 0 0;border-top:1px solid var(--line);margin:0;min-width:0}
.value-triptych h3,.client-commitments h3{font-family:var(--serif);font-weight:350;font-size:var(--type-card);line-height:1.3;margin:1rem 0}
.value-triptych p,.client-commitments li p{font-size:1rem;line-height:1.8;color:var(--muted);margin:0}
.client-commitments li strong{font:inherit;color:var(--navy)}
.home-architecture .client-commitments{display:block;padding-block:3.5rem;border-bottom:0}
.home-architecture .client-commitments li:before{content:none}
.home-architecture .client-commitments h2{max-width:20ch}
.home-architecture .first-step{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.first-step .entry-framework{margin-top:1.5rem}
.formats-choice .format-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;align-items:start}
.formats-choice .format-list .format-card{display:flex;flex-direction:column;gap:0;padding:2rem;min-width:0;height:auto;align-items:stretch}
.formats-choice .format-card>div:first-child{min-height:13.5rem}
.formats-choice .format-card h3{font-size:var(--type-card);line-height:1.22;min-height:2.44em;margin-block:0 1rem}
.formats-choice .format-price{margin-top:1.5rem;min-height:10.5rem;display:flex;flex-direction:column}
.formats-choice .format-price strong{font-size:clamp(1.65rem,2.45vw,2.25rem);line-height:1.3;white-space:normal}
.formats-choice .format-price small{font-size:.8125rem;margin-top:.5rem}
.formats-choice .format-price .format-payment{margin-top:auto;padding-top:.75rem;font-size:.8125rem}
.formats-choice .format-action{margin-top:1rem}
.format-notes{margin-top:1.25rem;border-top:1px solid var(--line)}
.format-notes>summary,.commercial-framework>summary,.entry-framework>summary,.editorial-developper>summary{font-family:var(--label);font-size:.9375rem;line-height:1.5;list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:1rem 0;color:var(--navy);font-weight:600}
details>summary::-webkit-details-marker{display:none}
.format-notes>summary:after,.commercial-framework>summary:after,.entry-framework>summary:after,.editorial-developper>summary:after{content:'+';font:400 1.4rem var(--sans);flex-shrink:0}
.format-notes[open]>summary:after,.commercial-framework[open]>summary:after,.entry-framework[open]>summary:after,.editorial-developper[open]>summary:after{content:'−'}
.disclosure-body{padding:.75rem 0 1.25rem}
.disclosure-body>p{margin:0 0 1rem}
.format-notes .faq{margin-top:1.25rem}
.format-notes .faq summary{font-family:var(--sans);font-size:.9375rem;line-height:1.6;padding-block:1rem}
.format-notes .faq p{font-size:.875rem;line-height:1.8}
.commercial-framework{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:2rem}
.commercial-framework .commercial-terms{margin:0;padding:0;background:none;border:0;max-width:75ch}
.commercial-framework .commercial-terms strong{display:none}
.commercial-framework .choice-rule{margin:0;padding:0;background:none;border:0}
.commercial-framework .choice-rule-title{font-size:1.75rem}
.commercial-framework .faq{margin-top:2rem;max-width:75ch}
.programme-choices{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.5rem;align-items:start;margin-top:2.5rem}
.programme-tile{grid-column:span 2;min-width:0;border:1px solid var(--line);background:var(--paper)}
.programme-tile:nth-child(n+4){grid-column:span 3}
.programme-tile>details>summary{cursor:pointer;list-style:none;display:block;padding:0}
.programme-art{display:flex;position:relative;align-items:center;justify-content:center;height:205px;background:var(--navy);overflow:hidden;border-bottom:1px solid var(--line)}
.programme-tile:nth-child(even) .programme-art{background:#EDE6D6}
.programme-art img{width:160px;height:160px;object-fit:contain;opacity:.9;transition:transform .25s ease}
.programme-tile:nth-child(odd) .programme-art img{filter:brightness(1.45)}
.programme-number{position:absolute;top:1.2rem;left:1.5rem;font-family:var(--label);font-size:.6875rem;letter-spacing:.14em;color:#bda475}
.programme-tile:nth-child(even) .programme-number{color:var(--gold-text)}
.programme-summary{display:block;padding:1.75rem}
.programme-summary>.small-label{font-size:.6875rem;color:var(--gold-text)}
.programme-summary h3{font-family:var(--serif);font-size:1.9rem;font-weight:350;line-height:1.25;margin:.6rem 0 1rem;color:var(--navy)}
.programme-summary .card-objective{font-size:1rem;font-family:var(--sans);line-height:1.75;min-height:5.25em;margin:0;color:var(--muted)}
.programme-summary .card-budget{display:flex;flex-direction:column;gap:.3rem;margin:1.5rem 0 0}
.programme-summary .card-budget small{font:400 .8125rem var(--sans);color:var(--muted)}
.programme-summary .card-budget strong{font:350 1.6rem/1.3 var(--serif);color:var(--navy)}
.programme-discover{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:1rem;margin-top:1.5rem;min-height:44px;font:600 .875rem/1.5 var(--label);color:var(--navy)}
.disclosure-sign{width:18px;height:18px;position:relative;flex-shrink:0}
.disclosure-sign:before,.disclosure-sign:after{content:'';position:absolute;background:currentColor;top:8px;left:2px;width:14px;height:1px}
.disclosure-sign:after{transform:rotate(90deg)}
details[open]>summary .disclosure-sign:after{transform:none}
.programme-tile>details[open]>summary{background:#F0EADB}
.programme-tile>details>summary:hover .programme-art img{transform:scale(1.035)}
.programme-expanded{padding:0 1.75rem 1.75rem}
.programme-expanded .card-detail{padding:1.5rem 0 0;border-top:1px solid var(--line)}
.programme-expanded p{font:400 .9375rem/1.8 var(--sans);margin:0 0 1rem;color:var(--muted)}
.programme-expanded .card-scope{margin-block:1.25rem}
.programme-expanded .card-scope .small-label{font-size:.6875rem;margin-bottom:.4rem;display:block}
.programme-expanded .card-frame{color:var(--navy)}
.programme-expanded .text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:.5rem}
.commercial-architecture .commercial-trust{grid-template-columns:1.3fr 1fr;gap:2rem 4rem}
.commercial-trust>.faq{grid-column:1/-1;margin-top:0;max-width:75ch;width:100%}
.commercial-architecture .commercial-faq>.faq{max-width:880px;margin:2rem 0 0 auto}
.commercial-architecture .commercial-faq>.small{margin-top:1.5rem;text-align:right}
.service-questions{padding-block:3rem}
.service-questions h2{font:350 var(--type-section)/1.2 var(--serif);margin-bottom:2rem}
.service-questions>.faq{max-width:880px}
.reference-content.story-architecture .signature-section{padding-top:3rem}
.reference-content.story-architecture .signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem}
.reference-content.story-architecture .signature-card{border-top:1px solid var(--line);background:none;padding:1.5rem 0}
.reference-content.story-architecture .signature-card-num{font:600 .75rem var(--label);color:var(--gold-text);margin-bottom:1rem}
.reference-content.story-architecture .signature-card h3{font-size:1.65rem}
.reference-content.story-architecture .signature-card p{font-size:1rem;line-height:1.8}
.reference-content.story-architecture .hero{padding-right:25%;position:relative}
.reference-content.story-architecture .hero .opening-engraving{display:block;right:0;top:50%;transform:translateY(-50%);width:24%;max-width:290px;height:auto;opacity:.48}
.story-architecture .editorial-developper{border-top:1px solid var(--line);margin-top:2rem}
.story-architecture .editorial-developper p{font-size:1rem;line-height:1.85}
.story-architecture .histoire-quote{margin-block:2rem}
.story-architecture .editorial-hero-photo{align-self:start}
.story-architecture .editorial-hero-photo .photo{max-height:650px;object-fit:cover}
summary:focus-visible{outline:2px solid var(--gold-text);outline-offset:5px}
[id]{scroll-margin-top:110px}
@media(max-width:1100px){
  .formats-choice .format-list{gap:1rem}
  .formats-choice .format-list .format-card{padding:1.5rem}
  .formats-choice .format-card>div:first-child{min-height:16rem}
  .programme-summary,.programme-expanded{padding-left:1.25rem;padding-right:1.25rem}
}
@media(max-width:900px){
  .commercial-architecture .catalog-hero{grid-template-columns:minmax(0,1.15fr) minmax(230px,.8fr);gap:2rem}
  .catalog-hero h1{font-size:2.75rem}
  .catalog-hero .catalog-visual{min-height:330px;padding:1.25rem}
  .catalog-visual .catalog-illustration{height:190px;width:100%}
  .value-triptych,.client-commitments ul{gap:1.5rem}
  .formats-choice .format-list{grid-template-columns:1fr}
  .formats-choice .format-list .format-card{display:grid;grid-template-columns:1.2fr 1fr;gap:0 2rem;padding:2rem}
  .formats-choice .format-card>div:first-child{grid-row:span 2;min-height:0}
  .formats-choice .format-card h3{min-height:0}
  .formats-choice .format-price{min-height:0;margin:0;padding:0;border:0}
  .formats-choice .format-price .format-payment{margin-top:1rem;padding:0}
  .formats-choice .format-action{grid-column:2;align-self:end;margin-top:1rem}
  .format-notes{grid-column:1/-1}
  .programme-tile,.programme-tile:nth-child(n+4){grid-column:span 3}
  .programme-tile:last-child{grid-column:span 6}
  .programme-summary .card-objective{min-height:3.5em}
}
@media(max-width:600px){
  .commercial-architecture .catalog-hero{grid-template-columns:1fr;gap:2rem;padding-block:2.5rem}
  .catalog-hero h1{font-size:2.375rem;max-width:16ch}
  .catalog-hero .catalog-visual{display:grid;grid-template-columns:1fr 1fr;min-height:200px;padding:1.25rem;gap:.5rem 1rem}
  .catalog-visual>.small-label{grid-column:1/-1;font-size:.625rem}
  .catalog-visual .catalog-illustration{width:100%;height:145px;margin:0}
  .catalog-hero .catalog-aside{align-self:center}
  .catalog-aside p{font-size:1.25rem}
  .catalog-aside span{font-size:.75rem}
  .value-triptych,.client-commitments ul{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}
  .value-triptych h3,.client-commitments h3{font-size:1.5rem;margin:.65rem 0}
  .value-triptych article,.client-commitments li{padding-top:1rem}
  .home-architecture .client-commitments{padding-block:2.5rem}
  .formats-choice .format-list .format-card{display:flex;padding:1.5rem}
  .formats-choice .format-price{padding-top:1.25rem;margin-top:1.25rem;border-top:1px solid var(--line)}
  .formats-choice .format-price strong{font-size:2rem}
  .formats-choice .format-price .format-payment{margin-top:.75rem}
  .formats-choice .format-card h3{font-size:1.75rem}
  .programme-choices{grid-template-columns:1fr;gap:1.5rem}
  .programme-tile,.programme-tile:nth-child(n+4){grid-column:auto}
  .programme-art{height:180px}
  .programme-art img{height:145px;width:145px}
  .programme-summary .card-objective{min-height:0}
  .programme-summary h3{font-size:1.75rem}
  .commercial-architecture .commercial-trust{grid-template-columns:1fr;gap:1.5rem}
  .commercial-architecture .commercial-faq>.small{text-align:left}
  .reference-content.story-architecture .signature-grid{grid-template-columns:1fr;gap:1rem}
  .reference-content.story-architecture .hero{padding-right:0}
  .reference-content.story-architecture .hero .opening-engraving{position:relative;top:auto;right:auto;transform:none;width:130px;height:130px;max-width:none;opacity:.65;margin:1.5rem 0 0}
  .story-architecture .editorial-hero-photo .photo{max-height:480px}
}
@media(prefers-reduced-motion:reduce){.action-arrow,.programme-art img{transition:none}a:hover>.action-arrow,a:focus-visible>.action-arrow,.programme-tile>details>summary:hover .programme-art img{transform:none}}

/* Audit global : bénéfices, détails progressifs et cohérence des familles. */
.global-program .program-value{gap:2rem;padding-block:2rem 3rem;border-bottom:1px solid var(--line)}
.global-program #livrables{padding-block:3.5rem}
.global-program .work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2.5rem}
.global-program .work-grid article{display:block;grid-row:auto;position:relative;background:var(--paper);padding:1.75rem;min-width:0;border-top:1px solid var(--line)}
.global-program .work-number{display:block;font:600 .75rem/1.5 var(--label);letter-spacing:.08em;color:var(--gold-text);margin-bottom:1.2rem}
.global-program .work-grid h3{font-size:1.6rem;line-height:1.3;margin:0 0 1rem}
.global-program .work-grid p{font-size:1rem;line-height:1.8;margin:0}
.program-practical{padding-block:0 3.5rem}
.program-disclosure{border-top:1px solid var(--line)}
.program-disclosure:last-child{border-bottom:1px solid var(--line)}
.program-disclosure>summary,.recruitment-culture-details>summary{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;list-style:none;cursor:pointer;padding:1.4rem 0;min-height:48px;font:600 1rem/1.6 var(--label);color:var(--navy)}
.program-disclosure>summary:after,.recruitment-culture-details>summary:after{content:'+';font:400 1.5rem var(--sans);flex-shrink:0}
.program-disclosure[open]>summary:after,.recruitment-culture-details[open]>summary:after{content:'−'}
.program-disclosure>section{margin:0;padding:1.5rem 0 2rem;background:none;border:0;color:var(--navy)}
.program-disclosure .details-grid{width:100%;margin:0;padding:0}
.program-disclosure h2{font-size:1.8rem;line-height:1.3}
.program-disclosure h2 em{color:var(--gold-text)}
.program-disclosure .eyebrow{display:none}
.program-disclosure .program-situations ul{gap:1.5rem 2rem}
.program-disclosure .program-situations li{font-size:1.2rem;line-height:1.6}
.program-disclosure .program-details li{color:var(--muted);font-size:1rem}
.program-approach{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:3rem;align-items:start;padding-block:3rem;border-block:1px solid var(--line)}
.global-program .program-approach .program-method{padding:0;border:0;margin:0}
.global-program .program-method h2,.global-program .program-proof h2{font-size:2rem;line-height:1.3}
.global-program .program-method ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:2rem}
.global-program .program-method h3{font-size:1.4rem}
.global-program .program-approach .program-proof{display:block;padding:2rem;background:var(--paper);border:0;margin:0}
.global-program .program-proof p{font-size:1rem;line-height:1.85;margin-top:1.5rem}
.global-program .program-proof a{margin-top:1.2rem}
.reference-content.recruitment-architecture .hero-sub{max-width:60ch}
.reference-content.recruitment-architecture .recruitment-section{padding-block:3rem;border-top:1px solid var(--line)}
.reference-content.recruitment-architecture .recruitment-section .stitle{margin-bottom:2rem}
.recruitment-culture-details{border-block:1px solid var(--line);margin-block:2rem}
.reference-content .recruitment-culture-details .culture{padding-block:1rem 2rem;margin:0}
.reference-content .recruitment-culture-details .culture h2{font-size:1.8rem}
.page-intro>.opening-engraving,.journal-head>.opening-engraving{opacity:.35;max-width:20%;width:220px;height:220px;object-fit:contain}
.content-landing-campagne .phases-grid a{min-height:44px}
.button .action-arrow,.btn .action-arrow{flex-shrink:0}
@media(max-width:1000px){
 .global-program .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .program-approach{grid-template-columns:1fr;gap:2.5rem}
 .global-program .program-approach .program-proof{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem}
 .global-program .program-proof>.eyebrow{grid-column:1/-1}
 .global-program .program-proof p{margin:0}
}
@media(max-width:600px){
 .global-program .program-value{grid-template-columns:1fr;gap:1.25rem;padding-block:1.5rem 2.5rem}
 .global-program #livrables{padding-block:2.5rem}
 .global-program .work-grid{grid-template-columns:1fr;gap:1rem;margin-top:1.75rem}
 .global-program .work-grid article{padding:1.5rem}
 .global-program .work-number{margin-bottom:.75rem}
 .global-program .work-grid h3{font-size:1.5rem}
 .program-disclosure>summary{font-size:.9375rem;padding-block:1.2rem}
 .program-disclosure .program-situations{display:block}
 .program-disclosure .program-situations ul{grid-template-columns:1fr;margin-top:1.5rem}
 .program-disclosure .details-grid{display:block}
 .program-disclosure .details-grid ul{margin-top:1.5rem}
 .program-approach{padding-block:2.5rem}
 .global-program .program-method ol{grid-template-columns:1fr;gap:1.5rem}
 .global-program .program-approach .program-proof{display:block;padding:1.5rem}
 .global-program .program-proof p{margin-top:1rem}
 .reference-content.recruitment-architecture .recruitment-section{padding-block:2.5rem}
 .page-intro>.opening-engraving,.journal-head>.opening-engraving{display:none}
}
@media(prefers-reduced-motion:reduce){.global-program .work-grid article{transition:none}}
@media print{.program-disclosure>section,.recruitment-culture-details>.culture{display:block!important}}

/* 17 octobre 2026 · Correctif technique (recette de reprise) : la couverture « À la une » d’Insights suivait sa hauteur
   (aspect-ratio 5/4 avec height:100 %) et débordait sur la colonne texte entre 601 et 900 px. Elle prend la largeur de sa colonne. */
.insight-feature-cover .insight-cover{width:100%}

/* 18 octobre 2026 : les colonnes suivent aussi l'agrandissement du texte.
   Aucun texte masqué, aucune hauteur fixe, aucune réduction de police. */
.home-opening>*,.purchase-alternatives>*,.catalog-visual>*,
.formats-choice .format-card>*{min-width:0}
.home-insight-copy h3{overflow-wrap:anywhere}
.catalog-visual>.small-label,.catalog-visual .catalog-aside{max-width:100%;overflow-wrap:anywhere}
.formats-choice .format-list{container-type:inline-size}
@media(min-width:601px) and (max-width:900px){
 .home-articles{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}
}
.orientation{flex-wrap:wrap}
.orientation>*{min-width:0;max-width:100%}
.commercial-trust>*{min-width:0}
.first-step>*,.paid-entry>*,.approach>*,.dual-tail>*,.home-urgent>*,.commercial-questions>*{min-width:0}
.home-photo figcaption{flex-wrap:wrap}
.principles>div,.principles>div>*{min-width:0}
.mobile-menu{inset-block-start:0;padding-top:calc(4.5rem + 25px);overflow-wrap:anywhere}
@media(max-width:600px){
 .site-header{flex-wrap:wrap}
 .site-header .brand{min-width:0;max-width:100%;flex-shrink:1}
 .site-header .brand>span{min-width:0;overflow-wrap:anywhere}
 .site-header .menu-toggle{margin-left:auto}
 .button,.text-link{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .first-step h2,.paid-entry h2,.paid-entry-price{overflow-wrap:anywhere}
}
@container(max-width:32rem){
 .formats-choice .format-list .format-card{display:flex;flex-direction:column}
 .formats-choice .format-price{margin-top:1.5rem}
 .formats-choice .format-action{align-self:stretch}
}
@media(max-width:900px){
 .home-opening{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
 .commercial-architecture .catalog-hero{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
 .purchase-alternatives{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
 .commercial-architecture .commercial-trust{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
 .purchase-alternatives h2,.formats-choice .format-price strong{overflow-wrap:anywhere}
}

/* Libellés informatifs : 12 px à la taille de texte normale, agrandissables.
   Les inscriptions décoratives du logo, du rail et des gravures sont conservées. */
.home-offer-copy .small-label,
.principles span,
.home-devise small,
.site-footer .eyebrow,
.catalog-visual>.small-label,
.programme-number,
.programme-summary>.small-label,
.programme-expanded .card-scope .small-label,
.journal-head>.eyebrow,
.editorial-hero-photo-info .label{font-size:.75rem}

/* Composition éditoriale du 18 octobre : hiérarchie par famille, sans changer la charte. */
.editorial-disclosure{border-block-start:1px solid var(--line);margin-block:2rem}
.editorial-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:56px;padding:1.25rem 0;font:600 1rem/1.6 var(--label);cursor:pointer;color:var(--navy)}
.editorial-disclosure>summary:after{content:'+';font:400 1.5rem var(--sans);flex-shrink:0}
.editorial-disclosure[open]>summary:after{content:'−'}
.editorial-disclosure>section{padding-block:1.5rem 2rem;margin-block:0}
.home-architecture .home-expertise{margin-block:0 3rem}
.home-expertise .home-dual{padding-block:2rem}
.design-editorial .entry-composition{grid-template-columns:1.15fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start;padding-block:3.5rem}
.entry-composition>div:first-child{padding:2.5rem;background:var(--paper);border-top:2px solid var(--gold)}
.entry-composition h2{font-size:var(--type-section);margin-bottom:1.5rem}
.entry-composition .first-step-meta{flex-wrap:wrap;gap:1.5rem;margin-top:1.5rem}
.entry-composition .entry-formats{margin-top:1rem}
.entry-composition .entry-label{margin-top:0}
.entry-composition .entry-formats a{padding-block:2rem;gap:1rem;align-items:start}
.home-architecture.design-editorial .client-commitments{padding-block:2rem 3rem}
.client-commitments h2{font-size:1.75rem}
.design-editorial .client-commitments ul{margin-top:1.25rem}
.design-editorial .home-programmes .home-links{gap:.75rem}
.design-editorial .home-programmes .home-links>a{padding-block:1.25rem}
.design-editorial .home-links h3{font-size:1.75rem}
.design-editorial .home-urgent{margin-block:1.5rem 3.5rem}

/* Catalogue : trois choix ponctuels, puis comparaison régulière des programmes. */
.commercial-architecture.design-editorial .client-value{padding-block:2.5rem;border-bottom:1px solid var(--line)}
.design-editorial .client-value .section-heading{margin-bottom:1.25rem}
.design-editorial .value-triptych{margin-top:1.25rem}
.design-editorial .programme-choices{grid-template-columns:1fr;gap:1rem}
.design-editorial .programme-tile,.design-editorial .programme-tile:nth-child(n+4){grid-column:auto}
.design-editorial .programme-tile>details>summary{display:grid;grid-template-columns:10rem minmax(0,1fr)}
.design-editorial .programme-art{height:100%;min-height:11rem;border:0}
.design-editorial .programme-art img{width:7rem;height:7rem}
.design-editorial .programme-number{top:.75rem;left:1rem}
.design-editorial .programme-summary{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(9rem,.7fr);column-gap:2rem;align-items:start;padding:1.5rem 2rem}
.design-editorial .programme-summary>.small-label,.design-editorial .programme-summary h3,.design-editorial .programme-summary .card-objective{grid-column:1}
.design-editorial .programme-summary h3{margin:.3rem 0 .5rem}
.design-editorial .programme-summary .card-objective{min-height:0;max-width:48ch}
.design-editorial .programme-summary .card-budget{grid-column:2;grid-row:1/4;margin:0;align-self:center}
.design-editorial .programme-discover{grid-column:2;margin-top:.5rem;padding-top:.5rem}
.design-editorial .programme-expanded{padding:1.5rem 2rem 2rem;margin-left:10rem}
.commercial-architecture.design-editorial .commercial-faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:1.5rem 4rem;padding-block:3.5rem}
.commercial-architecture.design-editorial .commercial-faq>.section-heading{grid-column:1;display:block;margin:0}
.commercial-architecture.design-editorial .commercial-faq .section-heading p{margin-top:1.5rem}
.commercial-architecture.design-editorial .commercial-faq>.faq{grid-column:2;grid-row:1;margin:0;width:100%;max-width:none}
.commercial-architecture.design-editorial .commercial-faq>.small{grid-column:2;margin:0;text-align:left}

/* Fiches : les bénéfices forment une lecture, pas six panneaux concurrents. */
.global-program.design-editorial .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem;margin-top:2rem}
.global-program.design-editorial .work-grid article{display:grid;grid-template-columns:2rem minmax(0,1fr);grid-template-rows:auto auto;gap:.5rem 1rem;background:none;padding:1.5rem 0;border-top:1px solid var(--line)}
.global-program.design-editorial .work-number{grid-column:1;grid-row:1/3;margin:.3rem 0 0}
.global-program.design-editorial .work-grid h3{grid-column:2;margin:0;font-size:1.5rem}
.global-program.design-editorial .work-grid p{grid-column:2;margin:0}
.global-program.design-editorial .program-details .program-value{margin-top:2rem;padding-block:1.5rem 0;border-bottom:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.global-program.design-editorial .program-method ol{gap:1.5rem 2rem}

/* Parcours : niveaux de lecture explicites, portrait et récit au premier plan. */
.reference-content.story-architecture.design-editorial .signature-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:3rem;padding-block:2.5rem}
.reference-content.story-architecture.design-editorial .signature-grid{gap:1.5rem 2rem}
.reference-content.story-architecture.design-editorial .signature-card{padding-top:1rem}
.reference-content.story-architecture.design-editorial .signature-card h3{font-size:1.45rem;margin-block:.75rem}
.reference-content.story-architecture.design-editorial .signature-card-num{margin-bottom:.5rem}
.story-architecture.design-editorial>.editorial-disclosure{margin-block:0}
.story-architecture.design-editorial>.editorial-disclosure>section,.story-architecture.design-editorial>.editorial-disclosure>.vision-section{margin-block:0;padding-block:1.5rem 2rem}
.story-architecture.design-editorial>.editorial-disclosure .section-title{font-size:2rem}
.story-architecture.design-editorial .stats-section{margin-block:2rem}

/* Formulaires : contexte adjacent, largeur de saisie lisible. */
.design-editorial .service-contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:3rem 5rem;align-items:start}
.design-editorial .service-context .section-heading{display:block;margin-bottom:1.5rem}
.design-editorial .service-context .section-heading p{margin-top:1.5rem}
.design-editorial .service-contact .contact-box{width:100%;max-width:none;margin:0;padding:2rem;background:var(--paper);border-top:2px solid var(--gold)}
.reference-content.recruitment-architecture.design-editorial .deroule{padding-block:2.5rem}
.reference-content.recruitment-architecture.design-editorial .candidature{padding:2.5rem;background:var(--paper);border-top:2px solid var(--gold);margin-block:2.5rem}
.reference-content.recruitment-architecture.design-editorial .postes-liste{margin-block:2rem}
.reference-content.recruitment-architecture.design-editorial .recruitment-culture-details{margin-block:1.5rem}

/* Journal : lire maintenant d'abord ; les annonces restent présentes sans occuper autant de place. */
.design-editorial .journal-collection>.journal-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
.design-editorial .journal-list>.insight-upcoming{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:1rem;align-content:start;border-top:1px solid var(--line);padding-top:1.5rem}
.design-editorial .insight-upcoming>.insight-cover{height:6rem;aspect-ratio:auto}
.design-editorial .insight-upcoming .insight-cover img{width:75%;height:75%}
.design-editorial .insight-upcoming .cover-index,.design-editorial .insight-upcoming .cover-signature,.design-editorial .insight-upcoming .cover-rule{display:none}
.design-editorial .insight-upcoming .insight-card-copy{padding:0;min-width:0;overflow-wrap:anywhere}
.design-editorial .insight-upcoming h2{font-size:1.4rem;line-height:1.35;margin-block:.75rem}
.design-editorial .insight-upcoming p{font-size:.9375rem;line-height:1.8}
.design-editorial .insight-upcoming .publication-state{margin-top:1rem}
.design-editorial .recruit-call{padding-block:2rem;border-block:1px solid var(--line)}
.reference-content.content-linktree.design-editorial .socials{margin-block:2.5rem 1rem}
.reference-content.content-landing-campagne.design-editorial .closing-section{margin-block:2.5rem;padding-block:3rem;border-block:1px solid var(--line)}
.reference-content.content-landing-campagne.design-editorial .closing-grid{grid-template-columns:1fr;max-width:50rem;margin-inline:auto}
.reference-content.content-landing-campagne.design-editorial .closing-card{padding:2rem}
.reference-content.content-landing-campagne.design-editorial .client-followup{margin:0}
.reference-content.content-landing-campagne.design-editorial .client-followup>.closing-card{background:var(--paper);margin-top:1rem}
.reference-content.content-landing-campagne.design-editorial .editorial-disclosure .empire-section{padding-block:1rem;margin:0}
@media(max-width:900px){
 .design-editorial .entry-composition,.design-editorial .service-contact,.reference-content.story-architecture.design-editorial .signature-section{grid-template-columns:1fr;gap:2rem}
 .commercial-architecture.design-editorial .commercial-faq{grid-template-columns:1fr;gap:1.5rem}
 .commercial-architecture.design-editorial .commercial-faq>.section-heading,.commercial-architecture.design-editorial .commercial-faq>.faq,.commercial-architecture.design-editorial .commercial-faq>.small{grid-column:1;grid-row:auto}
 .design-editorial .programme-tile>details>summary{grid-template-columns:7rem minmax(0,1fr)}
 .design-editorial .programme-art img{width:5rem;height:5rem}
 .design-editorial .programme-summary{grid-template-columns:1fr;padding:1.5rem}
 .design-editorial .programme-summary .card-budget,.design-editorial .programme-discover{grid-column:1;grid-row:auto;margin-top:1rem}
 .design-editorial .programme-expanded{margin-left:0}
 .global-program.design-editorial .work-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:0 2rem}
}
@media(max-width:600px){
 .design-editorial .entry-composition{padding-block:2.5rem}
 .entry-composition>div:first-child,.design-editorial .service-contact .contact-box{padding:1.5rem}
 .entry-composition .entry-formats a{flex-wrap:wrap;padding-block:1.5rem}
 .design-editorial .programme-tile>details>summary{grid-template-columns:5rem minmax(0,1fr)}
 .design-editorial .programme-art{min-height:100%;padding:1rem 0}
 .design-editorial .programme-art img{width:4rem;height:4rem}
 .design-editorial .programme-number{font-size:.75rem;left:.5rem}
 .design-editorial .programme-summary{padding:1.25rem}
 .design-editorial .programme-summary h3{font-size:1.6rem;overflow-wrap:anywhere}
 .design-editorial .programme-summary .card-budget strong{font-size:1.4rem}
 .design-editorial .programme-expanded{padding:1.25rem}
 .global-program.design-editorial .work-grid{grid-template-columns:1fr}
 .global-program.design-editorial .work-grid article{padding-block:1.25rem}
 .reference-content.story-architecture.design-editorial .signature-grid{grid-template-columns:1fr}
 .reference-content.recruitment-architecture.design-editorial .candidature{padding:1.25rem}
 .reference-content.content-landing-campagne.design-editorial .closing-card{padding:1.5rem}
}
@media print{.editorial-disclosure>section,.editorial-disclosure>div{display:block!important}}

/* Architecture commerciale approuvée le 18 octobre : mêmes polices, mêmes couleurs.
   Les prix et conditions essentielles restent visibles ; le détail vient ensuite. */
.booking-notice{font-size:.875rem;line-height:1.7;color:var(--muted);max-width:62ch;margin-top:1rem}
.entry-composition>div>.text-link,.paid-entry-action>.text-link,.offer-context-link{margin-top:1.25rem}
.home-decision .urgent-context{margin-block:0}
.home-decision .home-urgent{margin:0;width:100%;padding:1.5rem 0 2rem;border:0}
.home-resources .home-expertise{margin-bottom:0}
.home-resources .home-insights{padding-top:2.5rem}
.catalog-proof-group{background:rgba(255,255,255,.25);padding-block:1rem}
.commercial-architecture.design-editorial .catalog-proof-group .commercial-trust{padding-block:2rem}
.commercial-architecture.design-editorial .catalog-proof-group .commercial-method{padding-block:2rem 3rem}
.formats-choice .format-list .format-specific{margin-top:1rem;color:var(--muted);font-size:.9375rem;line-height:1.7}
.formats-choice .format-card>.text-link{margin-top:1.25rem;align-self:start}
.programme-route{display:grid;grid-template-columns:10rem minmax(0,1fr);color:inherit;text-decoration:none}
.programme-route:hover{background:var(--paper)}
.programme-route:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.design-editorial .programme-route .programme-discover{display:flex;align-items:center;gap:.7rem}
.programme-extra{padding:0 2rem 0 12rem;border-top:1px solid var(--line)}
.programme-extra>summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;gap:1rem;cursor:pointer;font:600 .875rem/1.6 var(--label);list-style:none}
.programme-extra>summary:after{content:'+';font:400 1.25rem var(--sans)}
.programme-extra[open]>summary:after{content:'−'}
.design-editorial .programme-extra .programme-expanded{margin:0;padding:1rem 0 1.5rem;border:0}
.program-summary-card>.text-link{font-size:.875rem;margin-top:1rem}
.program-decision .program-others{margin-block:0 3rem}
.story-commitments>.editorial-disclosure{margin:0}
.reference-content.story-architecture .story-commitments .editorial-disclosure>section{padding-block:1.5rem 2rem}
.reference-content.story-architecture .story-narrative .vision-section{margin-block:2rem}
.reference-content.story-architecture .story-commitments .section-title{font-size:2rem}
.journal-next>.first-step{padding-block:3rem}
.journal-next>.editorial-disclosure{margin-block:0}
.journal-next .newsletter-demo,.journal-next .recruit-call{width:100%;margin:0;padding:1rem 0 2rem;border:0}
.journal-next>.editorial-disclosure:last-child{margin-bottom:3rem}
.contact-offers{border-bottom:1px solid var(--line);padding-bottom:2rem}
.contact-offers .paid-entry{margin:0;padding-block:2rem}
.contact-offers .purchase-alternatives{margin-top:0}
.reference-content.content-landing-campagne .campaign-proof .editorial-disclosure{margin-block:0}
.reference-content.content-landing-campagne .campaign-proof .proof-section{padding-bottom:2rem}
.reference-content.content-landing-campagne .phases-section{padding-block:2.5rem}
.paid-offer .wrap{padding-block:clamp(2.5rem,5vw,5rem)}
.paid-offer .offer-opening{padding-top:1.5rem}
.offer-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding-top:2rem}
.offer-lead h1{font:400 clamp(2.6rem,4.8vw,4.5rem)/1.08 var(--serif);letter-spacing:-.035em;margin:1rem 0 1.5rem;max-width:14ch}
.offer-promise{font:400 clamp(1.5rem,2.5vw,2rem)/1.35 var(--serif);max-width:24ch;margin-bottom:1.5rem}
.offer-lead>p:not(.offer-promise){max-width:54ch}
.offer-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:2rem}
.offer-booking{position:relative;background:var(--paper);border-top:2px solid var(--gold);padding:2rem;isolation:isolate}
.offer-booking>img{display:block;width:7rem;height:7rem;object-fit:contain;margin-bottom:1rem;opacity:.9}
.offer-booking .offer-price{font:400 clamp(2rem,3vw,2.75rem)/1.2 var(--serif);margin:.7rem 0}
.offer-booking>p{margin-block:.75rem}
.offer-booking .small{font-size:.875rem;line-height:1.7}
.offer-value,.offer-content,.offer-process,.offer-proof,.offer-decision{border-top:1px solid var(--line)}
.offer-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 3rem;list-style:none;padding:0;margin:2rem 0 0}
.offer-triptych>*{min-width:0}
.offer-triptych h3{font:400 1.6rem/1.25 var(--serif);margin:.75rem 0 1rem}
.offer-triptych p{margin-top:1rem}
.offer-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2rem 5rem}
.offer-content>div>p{margin-bottom:1.25rem}
.offer-proof{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.6fr);gap:3rem 6rem;align-items:center}
.offer-proof>div{max-width:38rem}
.offer-proof p{margin-block:1.5rem}
.offer-proof>img{width:100%;height:auto;max-height:22rem;object-fit:cover;object-position:center 20%}
.offer-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:2rem 5rem}
.offer-faq>div>p{margin-top:1rem}
.offer-faq .faq{width:100%;max-width:none;margin:0}
.offer-final{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;margin-top:3rem;padding-top:3rem;border-top:1px solid var(--line)}
.offer-final>div{max-width:40rem}
.offer-final p{margin-top:1rem}
.offer-content .text-link{margin-top:1rem}
.offer-booking,.offer-hero>*{min-width:0}
.paid-offer h1,.paid-offer h2,.paid-offer h3,.paid-offer .offer-price{overflow-wrap:anywhere}
@media(max-width:1000px){
 .offer-hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2rem}
 .offer-triptych{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
 .offer-content,.offer-faq{gap:2rem}
 .programme-route{grid-template-columns:7rem minmax(0,1fr)}
 .programme-extra{padding-inline:1.5rem}
}
@media(max-width:700px){
 .offer-hero,.offer-content,.offer-proof,.offer-faq{grid-template-columns:1fr;gap:2rem}
 .offer-booking{padding:1.5rem}
 .offer-booking>img{float:right;width:5rem;height:5rem;margin:0 0 1rem 1rem}
 .offer-proof>img{max-width:18rem;max-height:18rem}
 .offer-hero-actions{align-items:stretch;flex-direction:column}
 .offer-hero-actions>.button{justify-content:space-between}
 .programme-route{grid-template-columns:5rem minmax(0,1fr)}
 .contact-offers .paid-entry{padding-top:1rem}
 .paid-offer .wrap{padding-block:2.5rem}
}
@media(prefers-reduced-motion:reduce){.programme-route{transition:none}}


/* Recette : éviter la collision avec l’ancien composant story-opening. */
.story-introduction-group{display:block}
.offer-mobile-price{display:none}
@media(max-width:700px){.offer-mobile-price{display:block;font:600 1rem/1.6 var(--label);margin-top:1.5rem}.offer-hero-actions{margin-top:1rem}}

/* Les colonnes des offres suivent aussi la taille du texte, pas seulement l’écran. */
@media(max-width:1000px){.offer-hero,.offer-content,.offer-proof,.offer-faq{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}}

/* Système de composants · 18 octobre 2026.
   Référence commune pour les familles ajoutées dans les sources HTML.
   Les anciens sélecteurs métier restent compatibles ; les variantes sont explicites. */
:root{--component-gap:clamp(1.5rem,3vw,2.5rem);--component-pad:clamp(1.5rem,3vw,2.5rem);--component-radius:2px;--component-body:1rem;--component-title:clamp(1.5rem,1.3rem + .6vw,1.875rem);--component-hero:clamp(2.25rem,1.6rem + 3vw,4rem);--component-gold-light:#bda475}
main .msb-hero{padding-block:clamp(2.5rem,5vw,4.5rem);margin-block:0;min-height:0;position:relative;isolation:isolate}
main .msb-hero:is(.msb-hero--editorial,.msb-hero--decision) h1{font-family:var(--serif);font-size:var(--component-hero);font-weight:350;line-height:1.12;letter-spacing:-.035em;max-width:19ch;margin:1rem 0 1.5rem;text-wrap:balance;overflow-wrap:normal}
main .msb-hero-copy{display:block;width:100%;min-width:0;padding-top:0;position:relative;z-index:1}
main .msb-hero-copy>.eyebrow,main .msb-hero-copy>.badge{font:600 .75rem/1.6 var(--label);letter-spacing:.1em;color:var(--gold-text);margin-bottom:1rem}
main .msb-hero-copy :is(.hero-sub,.catalog-intro){font:400 var(--type-lead)/1.75 var(--sans);max-width:56ch;margin:1.5rem 0 0}
main .msb-hero-copy :is(.offer-promise,.program-promise){font:350 clamp(1.5rem,1.25rem + 1vw,2rem)/1.4 var(--serif);margin:1.5rem 0;max-width:30ch}
main .msb-hero-copy :is(.hero-actions,.actions,.offer-hero-actions){margin-top:2rem;gap:1rem 1.5rem}
main .msb-hero--decision{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:clamp(2rem,6vw,5rem);align-items:start;padding-block:2rem 3.5rem}
main .msb-hero--editorial:not(.msb-hero--legal){display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:center;gap:clamp(2rem,6vw,5rem)}
main .msb-hero--editorial:not(:has(.catalog-visual,.recruitment-art,.msb-hero-art)) {grid-template-columns:1fr}
main .msb-hero-art{margin:0;display:grid;place-items:center;min-width:0;aspect-ratio:4/3;background:var(--paper);border:1px solid var(--line);overflow:hidden}
main .msb-hero.msb-hero--editorial .msb-hero-art .opening-engraving{display:block;position:static;transform:none;inset:auto;width:68%;max-width:15rem;height:auto;aspect-ratio:1;opacity:.8;object-fit:contain;margin:0;filter:none}
main .msb-hero .recruitment-art{margin:0;align-self:center;display:grid;place-items:center;min-height:0;width:100%;height:auto;aspect-ratio:4/3;padding:1.5rem;overflow:hidden;background:var(--paper)}
main .msb-hero.msb-hero--editorial .recruitment-art img.opening-engraving{position:static;transform:none;inset:auto;display:block;width:68%;height:auto;max-width:15rem;aspect-ratio:1;object-fit:contain;opacity:.9;filter:none}
main .msb-hero .catalog-visual{min-height:0;align-self:center;padding:1.5rem 2rem}
main .msb-hero .catalog-visual .catalog-illustration{max-width:14rem;height:auto;aspect-ratio:1;width:75%;margin:1rem auto}
main .msb-hero .catalog-visual .small-label{font-size:.75rem}
main .msb-hero--legal h1{font-size:clamp(2.25rem,1.75rem + 1.5vw,3rem);max-width:25ch}
main .journal-head.msb-hero .msb-hero-copy>div{display:block;max-width:60ch}
main .journal-head.msb-hero .msb-hero-copy>div>p{font:400 var(--type-lead)/1.75 var(--sans);margin-bottom:.75rem}
main .msb-booking{display:flex;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);padding:var(--component-pad);border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:var(--component-radius);min-width:0;position:relative}
main .msb-booking>img{display:block;float:none;position:static;width:5.5rem;height:5.5rem;object-fit:contain;margin:0 0 1.5rem;opacity:1;align-self:flex-start}
main .msb-booking>.small-label{font:600 .75rem/1.6 var(--label);letter-spacing:.1em;color:var(--gold-text)}
main .msb-booking :is(.offer-price,.program-price strong){font:350 clamp(2rem,1.5rem + 1.5vw,2.75rem)/1.2 var(--serif);margin:.75rem 0;color:var(--navy);overflow-wrap:normal;white-space:normal}
main .msb-booking>p{font:400 1rem/1.75 var(--sans);margin:.5rem 0}
main .msb-booking :is(.small,.program-price small){font-size:.875rem;line-height:1.7;color:var(--muted)}
main .msb-booking>.button{width:100%;max-width:none;margin:1.5rem 0 .75rem;justify-content:space-between}
main .msb-booking>.text-link{margin-top:.75rem;font-size:.875rem}
main .msb-heading{align-items:start;column-gap:var(--space-columns);row-gap:1.25rem;margin-bottom:2rem}
main .msb-heading h2{font-size:var(--type-section);line-height:1.2;max-width:25ch}
main .msb-heading>p{font:400 1rem/1.8 var(--sans);max-width:48ch;margin-top:0;padding:0}
main .msb-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem var(--component-gap);list-style:none;padding:0;margin:2rem 0 0}
main .msb-benefit{min-width:0;margin:0;padding:1.5rem 0 0;border:0;border-top:1px solid var(--line);background:transparent;box-shadow:none}
main .msb-benefit h3{font:350 var(--component-title)/1.3 var(--serif);margin:.75rem 0 1rem;letter-spacing:-.02em;max-width:28ch}
main .msb-benefit p{font:400 var(--component-body)/1.8 var(--sans);color:var(--muted);margin:.75rem 0 0;max-width:60ch}
main .msb-benefit>.small-label{font:600 .75rem/1.6 var(--label);color:var(--gold-text)}
main .formats-choice .format-list{gap:1.5rem;align-items:stretch}
main .formats-choice .format-list .msb-format{grid-template-columns:1fr;grid-template-rows:none;grid-row:auto;gap:0;display:flex;flex-direction:column;align-items:stretch;padding:var(--component-pad);background:var(--paper);border:1px solid var(--line);border-radius:var(--component-radius);min-height:0;height:auto}
main .formats-choice .format-list .msb-format>div:first-child{min-height:0;grid-row:auto}
main .formats-choice .format-list .msb-format-summary{flex:1}
main .formats-choice .format-list .msb-format h3{font:350 var(--component-title)/1.3 var(--serif);min-height:0;margin:1rem 0}
main .formats-choice .format-list .msb-format p{font-size:1rem;line-height:1.8}
main .formats-choice .format-list .msb-format .format-specific{font-size:.875rem;margin-top:1rem}
main .formats-choice .format-list .msb-format>.format-price{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:1.5rem;margin:1.5rem 0 0;min-height:0;width:100%}
main .formats-choice .format-list .msb-format>.format-price strong{font:350 clamp(1.75rem,1.4rem + 1vw,2.125rem)/1.25 var(--serif);white-space:normal}
main .formats-choice .format-list .msb-format .format-price small{font:400 .875rem/1.7 var(--sans);margin-top:.5rem}
main .formats-choice .format-list .msb-format .format-payment{font-size:.875rem;line-height:1.7;margin:.75rem 0 0;padding:0}
main .msb-format-actions{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding-top:1.25rem}
main .msb-format-assurance>.small{margin:0 0 1.25rem;font-size:.875rem!important;line-height:1.7!important}
main .msb-format-actions>.button{margin:0 0 .75rem;justify-content:space-between;width:100%;min-height:52px}
main .msb-format-actions>.text-link{font-size:.875rem;min-height:44px;margin:0;align-self:flex-start}
@supports(grid-template-rows:subgrid){@media(min-width:1001px){main .formats-choice .format-list{row-gap:0}main .formats-choice .format-list .msb-format{display:grid;grid-template-rows:subgrid;grid-row:span 4}main .formats-choice .format-list .msb-format-summary{padding-bottom:1.5rem}main .formats-choice .format-list .msb-format>.format-price{margin:0}main .msb-format-assurance{padding-top:1.25rem}main .msb-format-assurance>.small{margin:0}main .msb-format-actions{padding-top:1.25rem}}}
main .msb-questions{column-gap:var(--space-columns);row-gap:2rem;align-items:start}
main .faq>details{border-top:1px solid var(--line);padding-block:0}
main .faq>details>summary{font:350 var(--type-faq)/1.35 var(--serif);padding-block:1.25rem;min-height:52px;gap:1.25rem}
main .faq>details>p{font:400 1rem/1.85 var(--sans);max-width:65ch;padding-right:2rem}
main .msb-decision{padding-block:clamp(3rem,5vw,4.5rem);border-top:1px solid var(--line);gap:2rem var(--space-columns);align-items:center}
main .msb-decision h2{font:350 var(--type-section)/1.2 var(--serif);max-width:24ch}
main .msb-decision>.button{min-width:0;width:fit-content;max-width:100%;justify-content:space-between;flex:none}
main .msb-decision p{max-width:60ch}
/***** Actions : une flèche sur l'action principale, liens secondaires soulignés. *****/
.button:not(.header-cta){font:600 .9375rem/1.5 var(--label);min-height:52px;border-radius:2rem;padding:.875rem 1.5rem;gap:1rem;max-width:100%;white-space:normal}
.action-arrow{width:var(--action-icon-size);height:var(--action-icon-size);min-width:var(--action-icon-size);stroke-width:1.65;transition:none}
.button .action-arrow,.text-link .action-arrow{margin-left:0}
.button>span[aria-hidden],.home-offer-arrow,.programme-discover .action-arrow,.button>.action-arrow{transition:transform var(--motion-fast) var(--motion-ease)}
.text-link{font:600 .9375rem/1.6 var(--label);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em;text-decoration-color:#a89a7c;gap:0;min-height:44px;max-width:100%}
.text-link::after{content:none!important}
a:hover>.action-arrow,a:focus-visible>.action-arrow{transform:none}
@media(hover:hover) and (pointer:fine){
 .button:hover>span[aria-hidden],.button:hover>.action-arrow,.programme-route:hover .programme-discover .action-arrow,.home-links>a:hover .home-offer-arrow{transform:translate(2px,-2px)}
 .button:hover>span[aria-hidden]>.action-arrow{transform:none}
 .text-link:hover{text-decoration-color:currentColor;color:var(--gold-text)}
 .programme-route:hover{background:#f0e9dc}
 .footer-social a:hover{transform:none}
}
.button:focus-visible,.text-link:focus-visible,.msb-track:focus-visible,.msb-carousel-controls button:focus-visible{outline:2px solid var(--gold-text);outline-offset:4px}
/***** Rail : progression seule, curseur indépendant non déformé par la mise à l'échelle. *****/
.rail-progress::after{display:none}.rail-cursor{position:absolute;right:-3px;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--component-gold-light);pointer-events:none}
@media(max-width:1000px){.rail-cursor{display:none}}
/***** Défilement mobile progressif : sans JS, toutes les cartes restent en liste. *****/
.msb-carousel-controls{display:none}
main .msb-track{min-width:0;max-width:100%}
@media(max-width:1000px){
 main .msb-hero--decision,main .msb-hero--editorial:not(.msb-hero--legal){grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:2rem}
 main .msb-benefits{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1.75rem 2rem}
 main .formats-choice .format-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
}
@media(max-width:700px){
 main .msb-hero--decision,main .msb-hero--editorial:not(.msb-hero--legal){grid-template-columns:1fr}
 main .msb-hero-art{aspect-ratio:3/1;max-height:10rem;display:none}
 main .msb-hero .recruitment-art{aspect-ratio:3/1;max-height:10rem;padding:.75rem;align-self:auto}
 main .msb-hero.msb-hero--editorial .recruitment-art img.opening-engraving{width:6rem;height:6rem}
 main .msb-hero .catalog-visual{padding:1.25rem;display:grid;grid-template-columns:5rem minmax(0,1fr);gap:1rem;text-align:left}
 main .msb-hero .catalog-visual>.small-label{grid-column:1/-1}
 main .msb-hero .catalog-visual .catalog-illustration{width:5rem;height:5rem;margin:0}
 main .msb-hero .catalog-aside{text-align:left}
 main .msb-hero .catalog-aside p{font-size:1.375rem}
 main .msb-booking{padding:1.5rem}
 main .msb-booking>img{width:4.5rem;height:4.5rem;margin-bottom:1rem}
 main .msb-benefits{grid-template-columns:1fr}
 main .msb-decision>.button{width:100%}
 main .msb-track.is-slider{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:calc(100% - 2rem);gap:1rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:4px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;padding:4px 4px 1rem;margin:0;align-items:stretch}
 main .msb-track.is-slider>*{scroll-snap-align:start;min-width:0;max-width:100%;margin:0;grid-column:auto;grid-row:auto}
 main .home-links.is-slider>a{display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;padding:1.5rem;border:1px solid var(--line);background:var(--paper)}
 main .home-links.is-slider .programme-symbol{width:4.5rem;height:4.5rem;margin:0}
 main .home-links.is-slider .home-link-budget{display:flex;width:100%;text-align:left;margin-top:auto;gap:.5rem;flex-wrap:wrap;font-size:1.5rem}
 main .home-links.is-slider .home-offer-arrow{margin-left:auto}
 main .programme-choices.is-slider .programme-route{display:flex;flex-direction:column;height:auto}
 main .programme-choices.is-slider .programme-art{min-height:0;height:9rem;width:100%;padding:1rem}
 main .programme-choices.is-slider .programme-art img{width:6.5rem;height:6.5rem}
 main .programme-choices.is-slider .programme-summary{display:flex;flex-direction:column;padding:1.5rem;flex:1;width:100%}
 main .programme-choices.is-slider .programme-summary h3{font-size:var(--component-title);margin:.5rem 0 .75rem}
 main .programme-choices.is-slider .card-budget{margin-top:1rem}
 main .programme-choices.is-slider .programme-discover{margin-top:1.25rem;padding-top:1rem;width:100%;justify-content:space-between}
 main .programme-choices.is-slider .programme-extra{padding-inline:1.5rem}
 main .programme-choices.is-slider .programme-tile{display:flex;flex-direction:column}
 main .programme-choices.is-slider .programme-route{flex:1}
 main .home-articles.is-slider .insight-cover{aspect-ratio:16/11}
 main .msb-track.is-slider+.msb-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;grid-column:1/-1;margin-top:.75rem;padding-block:.25rem;font:600 .8125rem/1.5 var(--label)}
 .msb-carousel-controls>div{display:flex;gap:.5rem;align-items:center}
 .msb-carousel-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--navy);cursor:pointer;font-size:1.25rem}
 .msb-carousel-controls button[aria-disabled=true]{opacity:.35;cursor:default}
 .msb-carousel-controls .msb-carousel-status{font-variant-numeric:tabular-nums;white-space:nowrap}
 main .home-programmes .msb-track.is-slider+.msb-carousel-controls{grid-column:1/-1;grid-row:3}main .home-programmes>.wrap>.section-tail{grid-row:4}
}
@media(prefers-reduced-motion:reduce){
 .button,.button>span[aria-hidden],.button>.action-arrow,.programme-discover .action-arrow,.home-offer-arrow,.text-link,.programme-route,.rail-progress,.rail-cursor{transition:none!important;animation:none!important}
 .button:hover>span[aria-hidden],.button:hover>.action-arrow,.programme-route:hover .programme-discover .action-arrow,.home-links>a:hover .home-offer-arrow{transform:none!important}
 .msb-track{scroll-behavior:auto!important}
}
@media print{main .msb-track.is-slider{display:block!important;overflow:visible!important}.msb-carousel-controls{display:none!important}}

/* Une même flèche d’action : carré de 18 px, proportionnel au texte agrandi.
   Les commandes rondes de navigation conservent leur pictogramme propre. */
:root{--action-icon-size:1.125rem}
:is(.button,.text-link,.header-cta,.footer-contact)>span:has(>.action-arrow){display:inline-flex;align-items:center;justify-content:center;flex:none;line-height:1}

/* Héros signature : une composition, des variantes de contenu explicites. */
main .signature-opening{align-items:center}
main .signature-opening .signature-panel{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;align-self:center;width:100%;min-width:0;min-height:24rem;height:auto;max-height:none;aspect-ratio:auto;padding:clamp(1.5rem,3vw,2.5rem);margin:0;background:var(--navy);color:var(--cream);border:0;border-radius:0;text-align:center;overflow:visible;isolation:isolate}
/* La hauteur suit le contenu, y compris à 200 % de texte ; la marge intérieure reste réelle. */
main .signature-opening .signature-panel>*{flex-shrink:0;min-width:0;max-width:100%}
main .signature-opening .signature-panel>.signature-panel-kicker{align-self:center;width:100%;margin:0;color:#bda475;font:600 .75rem/1.6 var(--label);letter-spacing:.09em;text-align:center;overflow-wrap:anywhere}
main .signature-opening .signature-panel img.signature-illustration{position:static;display:block;inset:auto;transform:none;float:none;align-self:center;flex-shrink:0;width:72%;height:auto;max-width:15.5rem;max-height:none;aspect-ratio:1;object-fit:contain;margin:0 auto;opacity:1;filter:brightness(1.45)}
main .signature-opening .signature-panel .catalog-aside{display:block;padding:0;margin:0;text-align:center;max-width:100%}
main .signature-opening .signature-panel .catalog-aside p{font:350 clamp(1.5rem,2.1vw,1.875rem)/1.3 var(--serif);color:var(--cream);margin:0}
main .signature-opening .signature-panel .catalog-aside>span{font:400 .9375rem/1.65 var(--sans);color:#d9e2e7;margin-top:.75rem;display:block}
main .signature-opening .signature-panel--booking{aspect-ratio:auto;gap:.75rem;min-height:25rem}
main .signature-opening .signature-panel--booking img.signature-illustration{width:8rem;height:8rem;max-width:40%;margin:.25rem auto .5rem}
main .signature-opening .signature-panel--booking>.small-label:not(.signature-panel-kicker){color:#bda475;margin:0;font-size:.75rem}
main .signature-opening .signature-panel--booking>p{margin:0;color:var(--cream);font-size:1rem;line-height:1.6}
main .signature-opening .signature-panel--booking :is(.small,.program-price small){color:#d9e2e7}
main .signature-opening .signature-panel--booking .program-price{width:100%;border-top:1px solid #577078;margin:.25rem 0 0;padding:.75rem 0 0}
main .signature-opening .signature-panel--booking :is(.program-price strong,.offer-price){color:var(--cream);font:350 clamp(2rem,1.5rem + 1.5vw,2.75rem)/1.2 var(--serif);margin:.25rem 0}
main .signature-booking-notes{max-width:52ch;margin-top:1rem}
main .signature-booking-notes p{margin:0;font-size:.875rem!important;line-height:1.7!important}
main .signature-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:2rem}
main .signature-opening .hero-cta-group .text-link{background:none;border:0;padding:10px 0;color:var(--navy);box-shadow:none}
/* Portrait officiel encadré, signature dans la marge intérieure et non sur le visage. */
main .signature-portrait{background:var(--navy);padding:clamp(.875rem,1.5vw,1.25rem);max-width:29rem;width:100%;margin:0;border:0}
main .signature-portrait>img{width:100%;height:clamp(22rem,34vw,29rem);object-fit:cover;object-position:center 18%;margin:0}
/* Préserver le haut du portrait sur ordinateur, y compris les largeurs intermédiaires, sans changer le cadre. */
@media(min-width:1001px){main .home-opening .signature-portrait>img{object-position:center 0}}
main .signature-portrait figcaption.portrait-caption{display:block;padding:1.5rem .25rem .25rem;color:var(--cream);text-align:center}
main .signature-portrait .home-signature{display:block;margin:0;color:var(--cream);font:italic 350 clamp(1.25rem,1.3vw,1.625rem)/1.45 var(--serif)}
main .signature-portrait .home-signature .signature-rule{display:none}
main .signature-portrait .home-signature small{display:block;color:#bda475;font:600 .75rem/1.6 var(--label);letter-spacing:.04em;margin-top:.75rem}
main .signature-portrait .portrait-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem 1rem;border-top:1px solid #577078;margin-top:1.25rem;padding-top:1rem;font:600 .75rem/1.6 var(--label);color:#d9e2e7}
/* Les pages de service restent compactes pour ne pas retarder l'information. */
main .reference-content .hero.signature-legal{box-sizing:border-box;width:100%;max-width:100%;background:var(--navy);color:var(--cream);padding:clamp(1.5rem,4vw,3rem);margin-block:2rem;min-height:0;border:0}
main .reference-content .hero.signature-legal h1{max-width:25ch;overflow-wrap:anywhere;word-break:normal}
main .reference-content .hero.signature-legal .hero-sub{max-width:65ch;overflow-wrap:anywhere}
main .signature-legal :is(h1,.hero-sub){color:var(--cream)}
main .signature-legal :is(.over,em,.error-number){color:#bda475}
main .signature-legal .button{background:var(--cream);color:var(--navy);border-color:var(--cream)}
main .signature-legal .text-link{color:var(--cream)}
main .signature-identity{background:var(--navy);color:var(--cream);padding:2rem;margin-bottom:2rem}
main .signature-identity :is(h1,p){color:var(--cream)}
main .signature-identity .eyebrow{color:#bda475}
@media(max-width:1000px){
 main .signature-opening:not(.home-opening){align-items:center}
 main .signature-opening .signature-panel{padding:1.5rem;min-height:0}
 main .signature-opening .signature-panel img.signature-illustration{max-width:13rem}
 main .signature-portrait>img{height:24rem}
}
@media(max-width:700px){
 main .signature-opening .signature-panel{display:flex;aspect-ratio:auto;min-height:0;max-height:none;gap:1rem;padding:1.5rem;grid-template-columns:none;text-align:center}
 main .signature-opening .signature-panel img.signature-illustration{width:8.5rem;height:8.5rem;max-width:60%;margin:0 auto}
 main .signature-opening .signature-panel--booking{gap:.75rem}
 main .signature-opening .signature-panel--booking img.signature-illustration{width:6rem;height:6rem;margin:0 auto .5rem}
 main .signature-opening .signature-panel .catalog-aside p{font-size:1.5rem}
 main .signature-opening .signature-panel .catalog-aside>span{font-size:.875rem}
 main .signature-opening .signature-actions{gap:.5rem 1.25rem}
 main .signature-opening .signature-actions>.button{width:fit-content;max-width:100%;justify-content:center;gap:1rem}
 main .signature-portrait{max-width:29rem;justify-self:center}
 main .signature-portrait>img{height:clamp(19rem,95vw,26rem);object-position:center 20%}
 main .signature-portrait .home-signature{font-size:1.375rem}
 main .reference-content .hero.signature-legal{padding:1.5rem;margin-block:1.5rem}
}
@media(prefers-reduced-motion:reduce){main .signature-panel,main .signature-portrait{animation:none;transition:none}}

/* === Chantier design total du 21/10/2026 · homogénéisation des héros signature (zone global) ===
   On n'en refait aucun : on aligne leurs écarts. Le héros du catalogue est exclu de H6 et H7 (validé par Samih). */
/* H1 · Gravure : opacité 1 et luminosité 1,45 partout (Insights, contact, campagne, recrutement ×3 étaient à 0,8 ou 0,9). */
#contenu .signature-opening :is(.signature-panel,.msb-hero-art,.recruitment-art) img:is(.signature-illustration,.opening-engraving){opacity:1;filter:brightness(1.45);mix-blend-mode:normal}
/* H2 · Le padding hérité de 270 px à droite décalait le carré de quatre héros (recrutement ×3, campagne).
   Tour 3 : limité au bureau. De 701 à 1000 px, ces quatre héros gardent le padding publié et s'empilent (H11).
   Bornes de lecture (tour 2, réglées au tour 3) : sans le padding, la colonne de texte passait de 536 à 702 px à 1440
   et cassait les titres validés ; on borne le h1 (recrutement ×3 à 8,5 em, campagne à 7 em : « Je ne devine pas. /
   Je sais. Parce que / je le fais déjà. ») et l'accroche (27,5 em : 65 signes au plus par ligne, aucune fin de
   paragraphe sur un ou deux mots isolés, « plus que la vitesse. » rétabli).
   Haut du carré sur l'étiquette, comme H8 sur les fiches (tour 3) : à 1024, le carré de recrutement dépassait l'étiquette de 7 px. */
@media(min-width:1001px){
 #contenu .reference-content .hero.signature-opening:not(.signature-legal):not(.parcours-opening){max-width:none;padding-right:0;align-items:start}
 #contenu .reference-content .hero.signature-opening:not(.signature-legal):not(.parcours-opening)>.signature-panel{align-self:start;margin-top:0}
 #contenu .reference-content .hero.visuel.signature-opening:not(.signature-legal):not(.parcours-opening) .msb-hero-copy>h1{max-width:8.5em;text-wrap:balance}
 #contenu .reference-content .hero.signature-opening:not(.visuel):not(.signature-legal):not(.parcours-opening) .msb-hero-copy>h1{max-width:7em}
 #contenu .reference-content .hero.signature-opening:not(.signature-legal):not(.parcours-opening) .msb-hero-copy>.hero-sub{max-width:27.5em;text-wrap:pretty}
}
/* H3 · Plus de filet de fin de héros ; la section suivante donne l'écart (padding haut --dt-section).
   Recette zone global du 21/10 : le padding bas n'est retiré que si le bloc suivant est déjà converti (il apporte alors
   son propre écart). Sans cette condition, une page non convertie collait son premier bloc sous le héros
   (Insights 6 px, campagne 1 px, contact 34 px à 1440). Résultat identique à la spécification sur une page convertie. */
#contenu .signature-opening{border-bottom:0}
#contenu :is(.signature-opening,.program-intro,.offer-opening)+*{border-top:0}
#contenu :is(.program-intro,.offer-opening):has(+:is(.dt-section,.dt-plein,.dt-preuve,.dt-decision,.dt-bande,.dt-separateur)){padding-bottom:0}
#contenu :is(.program-intro,.offer-opening):has(+:is(.dt-section,.dt-plein,.dt-preuve,.dt-decision,.dt-bande,.dt-separateur)) .signature-opening{padding-bottom:0}
#contenu .signature-opening:not(.catalog-head):not(.signature-legal):has(+:is(.dt-section,.dt-plein,.dt-preuve,.dt-decision,.dt-bande,.dt-separateur)){padding-bottom:0}
/* H4 · Le trait de 24 px devant « Conduit personnellement par Samih Bentaha » se lisait comme un tiret. */
#contenu .program-person .signature-rule{display:none}
/* H5 · Étiquettes de héros : un seul style quel que soit le balisage. Lignes équilibrées (tour 3) : une étiquette
   sur deux lignes ne laisse plus un mot seul (« MISSION » sur consultant). */
#contenu .signature-opening:not(.signature-legal) :is(.eyebrow,.badge,.hero-eyebrow){font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte);text-wrap:balance}
/* H6 · Tablette : le carré de réservation devient un bandeau horizontal aligné sur le texte (plus de colonne de 325 px).
   Limité aux carrés de réservation (5 fiches, Entretien Stratégique, MSB Express), qui portent un cadre et un prix.
   Recette du 21/10, tour 2 : les carrés réduits à l'étiquette et à la gravure devenaient un bandeau vide aux deux tiers ;
   Insights et contact gardent leur composition publiée côte à côte, recrutement ×3 et campagne s'empilent (H11).
   Exclus de fait : accueil, parcours (portraits) et catalogue (capture avant/après fournie à Samih). */
@media(min-width:701px) and (max-width:1000px){
 #contenu .signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal){grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s6)}
 #contenu .signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel{display:grid;grid-template-columns:7rem minmax(0,1fr);grid-auto-flow:row;column-gap:var(--dt-s5);row-gap:var(--dt-s2);align-items:center;align-content:center;justify-items:start;width:100%;min-height:0;text-align:left}
 #contenu .signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel>*{grid-column:2;grid-row:auto;order:0;text-align:left}
 #contenu .signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel>img.signature-illustration{grid-column:1;grid-row:1/span 6;width:7rem;height:7rem;max-width:none;margin:0;align-self:center}
 #contenu .signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel .program-price{text-align:left}
 /* Prix sous le cadre (colonne 2) : il ne dépasse pas la colonne, même à texte agrandi (voir H10). */
 #contenu .signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel .program-price strong{font-size:min(clamp(2rem,1.5rem + 1.5vw,2.75rem),calc((100cqi - 8.5rem) * .17))}
 /* Fiches et offres : le prix prend une colonne à droite, séparée par un filet vertical, au lieu de finir seul en bas du bandeau.
    Seulement si les trois colonnes tiennent (héros d'au moins 40 rem) : à texte agrandi, le prix reste sous le cadre.
    Offres (tour 3) : le prix HT et la ligne TTC passent dans la colonne du prix ; durée et mentions restent sous le cadre,
    les deux mentions courent sur toute la largeur utile pour ne pas allonger le bandeau. */
 #contenu :is(.program-hero,.offer-hero).signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal){container:dt-heros-fiche/inline-size}
 @container dt-heros-fiche (min-width:40rem){
  #contenu :is(.program-hero,.offer-hero).signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel{grid-template-columns:7rem minmax(0,1fr) auto}
  #contenu .program-hero.signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel>.program-price{grid-column:3;grid-row:1/span 4;align-self:center;margin:0;padding:0 0 0 var(--dt-s5);border-top:0;border-left:1px solid var(--dt-filet-marine)}
  #contenu .offer-hero.signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel>.offer-price{grid-column:3;grid-row:1/span 2;align-self:end;margin:0;padding:0 0 var(--dt-s1) var(--dt-s5);border-left:1px solid var(--dt-filet-marine)}
  #contenu .offer-hero.signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel>.offer-price+p{grid-column:3;grid-row:3;align-self:stretch;margin:calc(-1 * var(--dt-s2)) 0 0;padding:var(--dt-s2) 0 0 var(--dt-s5);border-left:1px solid var(--dt-filet-marine)}
  #contenu .offer-hero.signature-opening:has(>.signature-panel--booking):not(.home-opening):not(.parcours-opening):not(.catalog-head):not(.signature-legal) .signature-panel>p.small{grid-column:2/4}
 }
}
/* H11 · Tablette, recrutement ×3 et campagne (tour 3) : héros empilés de 701 à 1000 px, texte puis carré, comme la composition
   publiée à 768. Côte à côte, leur colonne de texte tombait à 306-340 px (h1 de consultant sur 5 à 6 lignes, accroche de 26
   à 40 signes) ; le padding publié reste en place, la composition à 768 est inchangée.
   Accroche bornée à 30 em : mêmes lignes qu'à 768 sur le site publié, de 701 à 1000 px. */
@media(min-width:701px) and (max-width:1000px){
 #contenu .reference-content .hero.signature-opening:not(.signature-legal):not(.parcours-opening){grid-template-columns:minmax(0,1fr);padding-right:0}
 #contenu .reference-content .hero.signature-opening:not(.signature-legal):not(.parcours-opening)>.msb-hero-copy{max-width:43rem}
 #contenu .reference-content .hero.signature-opening:not(.signature-legal):not(.parcours-opening) .msb-hero-copy>.hero-sub{max-width:30em}
}
/* H8 · Fiches programmes, bureau : le haut du carré s'aligne sur le haut du texte du héros (son étiquette), sur les 5 fiches.
   Centré sur le texte, il variait de 218 à 277 px selon la fiche et la largeur (redressement 32 px plus haut que lancement à 1440).
   La règle « align-items:start » envisagée en 7.1 restait sans effet seule : le carré porte align-self:center.
   Le texte part lui aussi du haut, sinon un carré plus haut que le texte (redressement) recentrait le h1 plus bas.
   Tour 2 : alignement sur l'étiquette et non plus sur le h1 ; le carré ne descend plus sous le texte de redressement.
   Écart volontaire à la section 4 (qui ne visait que redressement), soumis à Samih avec capture (arbitrages/fiches-1440-H8-avant-apres.jpg).
   Offres (Entretien, Express) exclues : leur carré, plus haut que leur texte, pendrait de 150 px ; le texte reste centré sur le carré. */
@media(min-width:1001px){
 #contenu .program-hero.signature-opening{align-items:start}
 #contenu .program-hero.signature-opening>.signature-panel{align-self:start;margin-top:0}
}
/* H7 · Mobile : gravure compacte, boutons pleine largeur dans tous les balisages d'actions. */
@media(max-width:700px){
 #contenu .signature-opening:not(.home-opening):not(.parcours-opening):not(.catalog-head) .signature-panel img.signature-illustration{width:6.5rem;height:6.5rem;max-width:none}
 #contenu .signature-opening :is(.actions,.hero-actions,.hero-cta-group,.offer-hero-actions,.signature-actions)>.button{width:fit-content;max-width:100%;justify-content:center;gap:1rem}
}
/* H9 · Texte agrandi (200 %), base publiée comprise : le fil d'Ariane des fiches et des offres passe à la ligne au lieu de sortir
   de l'écran (390 px) ; un mot de titre plus large que sa colonne (« MSB Express » insécable, « Stratégique » à 320 px) se coupe
   au lieu de déborder, de même que la légende du portrait du parcours (« Samih Bentaha » insécable).
   À taille normale, tout tient sur la ligne : rien ne change. Le h1 du catalogue est exclu : à 701 et 768 px, « accompagnement. »
   dépasse déjà sa boîte de 7 à 20 px sans se voir, et la coupure enverrait le point seul à la ligne ; il ne reçoit la règle
   que sous 701 px, où il tient dans sa boîte à taille normale. */
#contenu .breadcrumb{flex-wrap:wrap;row-gap:var(--dt-s1)}
#contenu .signature-opening:not(.catalog-head) h1{overflow-wrap:break-word}
@media(max-width:700px){#contenu .signature-opening.catalog-head h1{overflow-wrap:break-word}}
#contenu .parcours-opening .parcours-portrait figcaption{grid-template-columns:minmax(0,1fr)}
#contenu .parcours-opening .parcours-portrait figcaption>span{overflow-wrap:break-word}
/* H10 · Prix du carré de réservation à texte agrandi : « 12 000 € HT » (espaces insécables, 5,5 em de large) sortait du carré
   et de la page à 200 % (390 px, 1001 à 1100 px, base publiée comprise). Le carré devient conteneur et le prix ne dépasse pas
   sa largeur utile (17 cqi × 5,5 = 94 %) ; à taille normale, la valeur d'origine reste la plus petite : rien ne change. */
#contenu .signature-opening .signature-panel--booking{container-type:inline-size}
#contenu .signature-opening .signature-panel--booking :is(.program-price strong,.offer-price){font-size:min(clamp(2rem,1.5rem + 1.5vw,2.75rem),17cqi)}

/* F55 : le nom reste entier dans la légende à texte agrandi, au lieu de couper « Bentaha ». */
#contenu .parcours-opening .parcours-portrait figcaption{container:dt-legende-portrait/inline-size}
@container dt-legende-portrait (max-width:17rem){
 #contenu .parcours-opening .parcours-portrait-name{font-size:min(2rem,calc(100cqi / 7.5));overflow-wrap:normal}
}
/* F57 : les carrés sans prix gardent une gravure lisible ; les carrés de réservation restent compacts. */
@media(max-width:700px){
 #contenu .signature-opening:not(.home-opening):not(.parcours-opening):not(.catalog-head) .signature-panel:not(.signature-panel--booking) img.signature-illustration{width:min(60%,9rem);height:auto;aspect-ratio:1}
}

/* Même composition, variante papier choisie pour les pages paires et la lecture éditoriale. */
#contenu .signature-opening .signature-panel--paper{background:var(--dt-sable);color:var(--dt-marine)}
#contenu .signature-opening .signature-panel--paper .signature-illustration{filter:none;opacity:1}
#contenu .signature-opening .signature-panel--paper :is(.signature-panel-kicker,.small-label){color:var(--dt-or-texte-sable)}
#contenu .signature-opening .signature-panel--paper :is(p,strong,.offer-price,.catalog-aside p){color:var(--dt-marine)}
#contenu .signature-opening .signature-panel--paper :is(small,.small,.catalog-aside>span){color:var(--dt-texte-doux)}
#contenu .signature-opening .signature-panel--paper .program-price{border-color:var(--dt-filet)}
#contenu .signature-opening .signature-panel--paper :focus-visible{outline-color:var(--dt-focus)}

/* DA v3 : même paire plein/contour sur toute largeur utile, sans rupture à 700 px.
   Le minimum en rem replie les deux actions quand le texte est agrandi. */
#contenu .signature-opening :is(.actions,.hero-actions,.hero-cta-group,.offer-hero-actions,.signature-actions):has(>.button):has(>.text-link){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:.75rem;align-items:stretch;max-width:40rem}
#contenu .signature-opening :is(.actions,.hero-actions,.hero-cta-group,.offer-hero-actions,.signature-actions):has(>.button):has(>.text-link)>:is(.button,.text-link){display:grid;grid-template-columns:minmax(0,1fr) var(--action-icon-size);align-items:center;justify-content:normal;width:100%;min-width:0;max-width:none;min-height:3.5rem;height:auto;margin:0;padding:.875rem 1.25rem;gap:.625rem;border:1px solid var(--dt-marine);border-radius:2rem;font:600 .875rem/1.4 var(--label);text-align:center;text-wrap:balance;white-space:normal;box-sizing:border-box}
#contenu .signature-opening .text-link.dt-action-secondaire{background:transparent;color:var(--dt-marine);border:1px solid var(--dt-marine);text-decoration:none}
#contenu .signature-opening .text-link.dt-action-secondaire:is(:hover,:focus-visible){background:var(--dt-marine);color:var(--dt-creme);text-decoration:none}
#contenu .signature-opening :is(.actions,.hero-actions,.hero-cta-group,.offer-hero-actions,.signature-actions) .action-arrow{flex:none;width:var(--action-icon-size);height:var(--action-icon-size)}
@media(max-width:700px){#contenu .signature-opening :is(.actions,.hero-actions,.hero-cta-group,.offer-hero-actions,.signature-actions):has(>.button):has(>.text-link)>:is(.button,.text-link){padding:.75rem;gap:.5rem}}

/* Catalogue compact · 18 octobre 2026. Source propre à la page accompagnement.
   À concaténer après composants.css. Aucun contenu ni prix masqué. */
main.catalog-compact .formats-choice,
main.catalog-compact .programmes-choice{padding-block:clamp(2.5rem,5vw,4rem)}
main.catalog-compact .formats-choice .format-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:start}
main.catalog-compact .formats-choice .format-list .catalog-format-card{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto auto auto;grid-row:auto;gap:0;padding:0;overflow:visible;border:1px solid var(--line);border-radius:var(--component-radius);height:100%;min-width:0;background:var(--paper)}
main.catalog-compact .catalog-format-card .format-art{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--navy);padding:1rem 1.25rem;min-height:6.5rem;color:var(--cream)}
main.catalog-compact .catalog-format-card .format-art .format-purpose{font:600 .75rem/1.5 var(--label);letter-spacing:.08em;color:#bda475;max-width:17ch}
main.catalog-compact .catalog-format-card .format-art img{width:4.5rem;height:4.5rem;object-fit:contain;flex:none;filter:brightness(1.45)}
main.catalog-compact .catalog-format-card:nth-child(even) .format-art{background:#ede6d6}
main.catalog-compact .catalog-format-card:nth-child(even) .format-art .format-purpose{color:var(--gold-text)}
main.catalog-compact .catalog-format-card:nth-child(even) .format-art img{filter:none}
main.catalog-compact .formats-choice .format-list .catalog-format-card .msb-format-summary{display:flex;flex-direction:column;align-self:stretch;align-items:stretch;justify-content:flex-start;padding:1.25rem 1.25rem 1rem;min-height:0;flex:none}
main.catalog-compact .formats-choice .format-list .catalog-format-card h3{font:350 clamp(1.5rem,1.25rem + .5vw,1.875rem)/1.2 var(--serif);margin:0 0 .75rem;min-height:0;letter-spacing:-.025em}
main.catalog-compact .formats-choice .format-list .catalog-format-card p{font-size:.9375rem;line-height:1.7;margin:0}
main.catalog-compact .formats-choice .format-list .catalog-format-card>.format-price{display:flex;flex-direction:column;gap:.25rem;width:auto;margin:0 1.25rem;padding:.875rem 0 0;border-top:1px solid var(--line);min-height:0}
main.catalog-compact .formats-choice .format-list .catalog-format-card>.format-price strong{font:350 clamp(1.75rem,1.4rem + .65vw,2.125rem)/1.25 var(--serif);white-space:normal;overflow-wrap:normal}
main.catalog-compact .formats-choice .format-list .catalog-format-card>.format-price small{font:400 .8125rem/1.6 var(--sans);margin:0}
main.catalog-compact .catalog-format-card .msb-format-actions{display:flex;padding:1rem 1.25rem .75rem;min-width:0}
main.catalog-compact .formats-choice .format-list .catalog-format-card .format-action{width:100%;margin:0;min-height:48px;font-size:.875rem;padding:.75rem 1rem;justify-content:space-between;gap:.5rem}
main.catalog-compact .catalog-format-card .format-notes{margin:0 1.25rem;border-top:1px solid var(--line);min-width:0}
main.catalog-compact .catalog-format-card .format-notes>summary{padding:.75rem 0;min-height:48px;font-size:.875rem;gap:.75rem}
main.catalog-compact .catalog-format-card .format-notes>.disclosure-body{padding:.25rem 0 1.25rem}
main.catalog-compact .formats-choice .format-list .catalog-format-card .format-notes p,
main.catalog-compact .formats-choice .format-list .catalog-format-card .format-notes p.small{font-size:.875rem!important;line-height:1.7!important;margin:0 0 .75rem;padding:0}
main.catalog-compact .catalog-format-card .format-notes .text-link{font-size:.875rem;margin:0}
main.catalog-compact .catalog-format-card .format-notes .faq{margin-top:.75rem}
main.catalog-compact .catalog-format-card .format-notes .faq summary{font-size:.875rem;line-height:1.5;min-height:44px;padding:1rem 1.75rem 1rem 0}
main.catalog-compact .booking-availability{margin-top:1.5rem;max-width:95ch;font-size:.875rem;line-height:1.7}
main.catalog-compact .booking-notice{margin-top:.5rem;font-size:.875rem;line-height:1.7}
main.catalog-compact .commercial-framework{margin-top:1.25rem}
/* Les cinq destinations sont distinctes ; aucune carte n'étire artificiellement la dernière rangée. */
main.catalog-compact .programme-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;align-items:stretch;margin-top:1.75rem}
main.catalog-compact .programme-choices .programme-tile,
main.catalog-compact .programme-choices .programme-tile:nth-child(n+4){display:flex;grid-column:auto;min-width:0;border:1px solid var(--line);background:var(--paper)}
main.catalog-compact .programme-choices .programme-route{display:flex;flex-direction:column;flex:1;min-width:0;width:100%;height:auto}
main.catalog-compact .programme-choices .programme-art{display:flex;align-items:center;justify-content:center;position:relative;height:8.5rem;min-height:8.5rem;width:100%;padding:1rem;border:0;background:var(--navy)}
main.catalog-compact .programme-choices .programme-tile:nth-child(even) .programme-art{background:#ede6d6}
main.catalog-compact .programme-choices .programme-art img{width:6rem;height:6rem;object-fit:contain;opacity:.95}
main.catalog-compact .programme-choices .programme-number{font:600 .75rem/1.5 var(--label);top:.625rem;left:.875rem;letter-spacing:.08em}
main.catalog-compact .programme-choices .programme-summary{display:flex;flex-direction:column;flex:1;width:100%;padding:1.125rem;min-width:0}
main.catalog-compact .programme-choices .programme-summary>.small-label{font:600 .75rem/1.5 var(--label);letter-spacing:.08em}
main.catalog-compact .programme-choices .programme-summary h3{font:350 clamp(1.375rem,1.05rem + .65vw,1.75rem)/1.25 var(--serif);margin:.5rem 0 .75rem;letter-spacing:-.025em;overflow-wrap:normal;hyphens:auto}
main.catalog-compact .programme-choices .programme-summary .card-objective{font:400 .875rem/1.65 var(--sans);min-height:0;max-width:none;margin:0 0 1rem}
main.catalog-compact .programme-choices .programme-summary .card-budget{display:flex;flex-direction:column;gap:.25rem;margin:auto 0 0;align-self:stretch;padding-top:.25rem}
main.catalog-compact .programme-choices .card-budget small{font:400 .75rem/1.5 var(--sans)}
main.catalog-compact .programme-choices .card-budget strong{font:350 clamp(1.375rem,1.1rem + .6vw,1.75rem)/1.25 var(--serif);white-space:normal}
main.catalog-compact .programme-choices .programme-discover{display:flex;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding-top:.75rem;margin-top:1rem;min-height:44px;font:600 .8125rem/1.5 var(--label)}
main.catalog-compact .programme-choices .programme-discover .action-arrow{width:var(--action-icon-size);height:var(--action-icon-size);min-width:var(--action-icon-size)}
/* Une seule largeur de lecture pour les étapes et leurs questions associées. */
main.catalog-compact .catalog-choice-guide>details>.disclosure-body{padding:.5rem 0 1.5rem}
main.catalog-compact .catalog-choice-guide .choice-rule{margin:0;padding:0;border:0;background:transparent}
main.catalog-compact .catalog-choice-guide .choice-rule-title{font:350 clamp(1.5rem,1.25rem + .5vw,1.875rem)/1.3 var(--serif);max-width:none;margin:0 0 1.5rem}
main.catalog-compact .catalog-choice-guide .choice-rule ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding:0;margin:0;list-style:none}
main.catalog-compact .catalog-choice-guide .choice-rule li{display:block;min-width:0;margin:0;padding:1rem 0 0;border-top:1px solid var(--line)}
main.catalog-compact .catalog-choice-guide .choice-rule .serial{display:block;margin:0 0 .75rem;font-size:1rem}
main.catalog-compact .catalog-choice-guide .choice-rule strong{display:block;font:600 .9375rem/1.5 var(--label);margin:0 0 .5rem}
main.catalog-compact .catalog-choice-guide .choice-rule p{font:400 .875rem/1.75 var(--sans);margin:0;max-width:none;padding:0;background:transparent}
main.catalog-compact .catalog-choice-guide{width:100%;max-width:none;margin-top:1.5rem;border-top:1px solid var(--line)}
main.catalog-compact .catalog-choice-guide>details>summary{font:350 clamp(1.125rem,1rem + .25vw,1.375rem)/1.4 var(--serif);min-height:52px;padding:1rem 2rem 1rem 0}
main.catalog-compact .catalog-choice-guide>details>p{font:400 .9375rem/1.8 var(--sans);max-width:90ch;padding:0 2rem 1.25rem 0}
main.catalog-compact.commercial-architecture.design-editorial .commercial-faq{display:block;padding-block:clamp(2.5rem,4vw,3.5rem)}
main.catalog-compact.commercial-architecture.design-editorial .commercial-faq>.section-heading{display:block;margin:0 0 1.5rem;max-width:none}
main.catalog-compact.commercial-architecture.design-editorial .commercial-faq .section-heading p{margin:.75rem 0 0;max-width:65ch;font-size:.9375rem;line-height:1.7}
main.catalog-compact.commercial-architecture.design-editorial .commercial-faq>.faq{width:100%;max-width:none;margin:0}
main.catalog-compact .commercial-faq .faq summary{font:350 clamp(1.125rem,1rem + .25vw,1.375rem)/1.4 var(--serif);min-height:52px;padding:1rem 2rem 1rem 0}
main.catalog-compact .commercial-faq .faq p{font:400 .9375rem/1.8 var(--sans);max-width:90ch;padding:0 2rem 1.25rem 0}
main.catalog-compact.commercial-architecture.design-editorial .commercial-faq>.small{margin:1rem 0 0;text-align:left}
@supports(grid-template-rows:subgrid){@media(min-width:1001px){
 main.catalog-compact .formats-choice .format-list{row-gap:0}
 main.catalog-compact .formats-choice .format-list .catalog-format-card{grid-template-rows:subgrid;grid-row:span 5}
 main.catalog-compact .formats-choice .format-list .catalog-format-card .msb-format-summary{box-sizing:border-box;height:100%;min-height:100%;align-self:start}
}}
@media(max-width:1199px) and (min-width:901px){main.catalog-compact .programme-choices{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){
 main.catalog-compact .formats-choice .format-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem}
 main.catalog-compact .catalog-choice-guide .choice-rule ol{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
}
@media(max-width:900px) and (min-width:701px){main.catalog-compact .programme-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 main.catalog-compact .formats-choice .format-list{grid-template-columns:1fr;gap:1rem}
 main.catalog-compact .formats-choice .format-list .catalog-format-card{height:auto;grid-template-rows:auto auto auto auto auto}
 main.catalog-compact .catalog-format-card .format-art{min-height:5.5rem;padding:.875rem 1.25rem}
 main.catalog-compact .catalog-format-card .format-art img{width:3.75rem;height:3.75rem}
 main.catalog-compact .programme-choices:not(.is-slider){grid-template-columns:1fr}
 main.catalog-compact .programme-choices.is-slider{display:grid!important;grid-template-columns:none!important;grid-auto-columns:calc(100% - 2rem);gap:1rem}
 main.catalog-compact .programme-choices.is-slider .programme-art{height:8rem;min-height:8rem;padding:1rem}
 main.catalog-compact .programme-choices.is-slider .programme-art img{width:6rem;height:6rem}
 main.catalog-compact .programme-choices.is-slider .programme-summary{padding:1.25rem}
 main.catalog-compact .programme-choices.is-slider .programme-summary h3{font-size:1.625rem;margin:.5rem 0 .75rem}
 main.catalog-compact .programme-choices.is-slider .card-budget{margin-top:auto;padding-top:.5rem}
 main.catalog-compact .programme-choices.is-slider .programme-discover{margin-top:1rem;padding-top:.75rem}
 main.catalog-compact .catalog-choice-guide .choice-rule ol{grid-template-columns:1fr;gap:1rem}
}
@media(prefers-reduced-motion:reduce){main.catalog-compact .programme-art img{transition:none;transform:none}}

/* Réponses sur le fond de la section, sans panneau imbriqué. */
main.catalog-compact .faq p{background:transparent}
main.catalog-compact .format-answer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}
main.catalog-compact .format-answer h4{font:600 .9375rem/1.5 var(--label);margin:0 0 .5rem}
main.catalog-compact .format-answer p{background:transparent;padding:0}

/* Le parcours : une histoire personnelle, une valeur client, une preuve vérifiable.
   Périmètre volontairement limité à /agence, sans changement des autres pages. */
main .parcours-editorial{--parcours-space:clamp(3rem,6vw,5.5rem)}
main .parcours-editorial>section:not(.parcours-opening){padding-block:var(--parcours-space);margin-block:0}
main .parcours-editorial .parcours-opening{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:clamp(2rem,5vw,4.5rem);padding:clamp(2.5rem,5vw,4.5rem) 0;align-items:center}
main .parcours-editorial .parcours-opening h1{max-width:17ch}
main .parcours-editorial .parcours-opening .hero-sub{max-width:52ch}
main .parcours-editorial .parcours-opening .hero-actions{gap:1rem 1.5rem}
main .parcours-editorial .parcours-portrait{display:block;box-sizing:border-box;aspect-ratio:auto;max-width:28rem;width:100%;min-width:0;height:auto;max-height:none;min-height:0;justify-self:end;background:var(--navy);padding:clamp(.875rem,1.5vw,1.25rem);border:0;margin:0;overflow:hidden}
main .parcours-editorial .parcours-portrait picture{display:block;box-sizing:border-box;width:100%;max-width:none;min-width:0;height:auto;margin:0;padding:0}
main .parcours-editorial .parcours-portrait .parcours-photo{display:block;width:100%;height:clamp(22rem,30vw,27rem);max-width:none;max-height:none;object-fit:cover;object-position:center;margin:0;opacity:1}
main .parcours-editorial .parcours-portrait figcaption{display:grid;box-sizing:border-box;width:100%;max-width:none;min-width:0;gap:.4rem;padding:1.25rem .25rem .25rem;margin:0;text-align:center;color:var(--cream)}
main .parcours-editorial .parcours-portrait-label{font:600 .75rem/1.6 var(--label);letter-spacing:.06em;color:#bda475}
main .parcours-editorial .parcours-portrait-name{font:350 1.65rem/1.3 var(--serif)}
main .parcours-editorial .parcours-signature{font:italic 350 1.15rem/1.5 var(--serif);color:#dce5e9}
main .parcours-editorial .parcours-value{border-block:1px solid var(--line)}
main .parcours-editorial .parcours-section-head{margin-bottom:2.25rem}
main .parcours-editorial .parcours-section-head h2{margin:0;max-width:24ch}
main .parcours-editorial .parcours-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem}
main .parcours-editorial .parcours-benefit{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:.75rem 1rem;align-content:start;padding-top:1.5rem;border-top:1px solid var(--line);min-width:0}
main .parcours-editorial .parcours-number{grid-row:1/3;font:600 .75rem/1.6 var(--label);color:var(--gold-text);padding-top:.3rem}
main .parcours-editorial .parcours-benefit h3{font:350 clamp(1.5rem,1.25rem + .45vw,1.75rem)/1.3 var(--serif);margin:0;max-width:26ch}
main .parcours-editorial .parcours-benefit p{grid-column:2;margin:0;font-size:1rem;line-height:1.75}
main .parcours-editorial .parcours-story-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,4.5rem);align-items:start;margin-bottom:2.25rem}
main .parcours-editorial .parcours-story-intro h2{max-width:20ch;margin:0}
main .parcours-editorial .parcours-story-intro .histoire-quote{margin:1.5rem 0 0;padding:0;max-width:30ch;font:italic 350 1.5rem/1.5 var(--serif);color:var(--gold-text)}
main .parcours-editorial .parcours-lead p{font-size:1.0625rem;line-height:1.85;margin:0;max-width:59ch}
main .parcours-editorial .parcours-chapters{border-top:1px solid var(--line)}
main .parcours-editorial .parcours-chapter{border-bottom:1px solid var(--line);margin:0;padding:0}
main .parcours-editorial .parcours-chapter>summary{display:grid;grid-template-columns:3.5rem minmax(0,1fr) 2.5rem;align-items:center;gap:1rem;min-height:6.5rem;padding:1.4rem 0;list-style:none;cursor:pointer;color:var(--navy);transition:color .18s ease}
main .parcours-editorial .parcours-chapter>summary::-webkit-details-marker{display:none}
main .parcours-editorial .parcours-chapter>summary::after{content:none}
main .parcours-editorial .parcours-chapter-number{font:italic 350 1.6rem/1.3 var(--serif);color:var(--gold-text)}
main .parcours-editorial .parcours-chapter-title{font:350 clamp(1.5rem,1.2rem + .8vw,2rem)/1.3 var(--serif)}
main .parcours-editorial .parcours-chapter-caption{display:block;font:400 .9375rem/1.7 var(--sans);color:var(--muted);margin-top:.4rem}
main .parcours-editorial .parcours-chapter-toggle{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--line);border-radius:50%;font:400 1.35rem/1 var(--sans)}
main .parcours-editorial .parcours-chapter-toggle::before{content:'+'}
main .parcours-editorial .parcours-chapter[open] .parcours-chapter-toggle::before{content:'−'}
main .parcours-editorial .parcours-chapter>summary:focus-visible{outline:2px solid var(--gold-text);outline-offset:5px}
main .parcours-editorial .parcours-chapter-body{max-width:75ch;margin:0 3.5rem 0 4.5rem;padding-bottom:2rem}
main .parcours-editorial .parcours-chapter-body p{font-size:1rem;line-height:1.85;margin:0}
main .parcours-editorial .parcours-chapter-body p+p{margin-top:1.25rem}
main .parcours-editorial>section.parcours-proof{padding:clamp(1.5rem,4vw,3.5rem);background:var(--navy);color:var(--cream)}
main .parcours-editorial .parcours-proof :is(h2,h3){color:var(--cream)}
main .parcours-editorial .parcours-proof :is(p,.stat-label){color:#dce5e9}
main .parcours-editorial .parcours-proof :is(em,.vision-author){color:#bda475}
main .parcours-editorial .parcours-proof-heading{display:grid;grid-template-columns:minmax(0,1fr) 11rem;gap:2rem;align-items:center}
main .parcours-editorial .parcours-proof-heading h2{max-width:22ch}
main .parcours-editorial .parcours-engraving{display:block;position:static;width:100%;height:auto;aspect-ratio:1;object-fit:contain;opacity:1;filter:brightness(1.45);margin:0}
main .parcours-editorial .parcours-proof .stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:2rem}
main .parcours-editorial .parcours-proof .stat{display:block;padding:0 0 0 1rem;border-left:1px solid #577078;min-width:0}
main .parcours-editorial .parcours-proof .stat-num{font:350 clamp(1.5rem,2.6vw,2.25rem)/1.2 var(--serif);min-width:0;white-space:normal}
main .parcours-editorial .parcours-proof .stat-label{font:600 .75rem/1.6 var(--label);margin-top:.65rem}
main .parcours-editorial .parcours-experience-quote{margin:2.5rem 0;padding:2rem 0;border-block:1px solid #577078}
main .parcours-editorial .parcours-experience-quote .vision-quote{font:350 clamp(1.5rem,1.25rem + .65vw,2rem)/1.5 var(--serif);margin:0;max-width:48ch}
main .parcours-editorial .parcours-experience-quote .vision-author{margin:.85rem 0 0;font-size:.75rem;line-height:1.6}
main .parcours-editorial .parcours-ecosystem>h2{font-size:clamp(1.75rem,2.5vw,2.3rem);margin-bottom:1.25rem}
main .parcours-editorial .parcours-ecosystem>p{max-width:74ch;margin:0}
main .parcours-editorial .parcours-ecosystem .ecosystem-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.75rem;margin-top:2rem}
main .parcours-editorial .parcours-ecosystem .ecosystem-card{display:block;min-width:0;padding-top:1.25rem;border-top:1px solid #577078}
main .parcours-editorial .parcours-ecosystem .ecosystem-card h3{font-size:1.5rem;margin:0 0 .85rem}
main .parcours-editorial .parcours-ecosystem .ecosystem-card p{font-size:.9375rem;line-height:1.8;margin:0}
main .parcours-editorial .parcours-ecosystem .ecosystem-brands{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.25rem;grid-column:auto}
main .parcours-editorial .parcours-ecosystem .ecosystem-brand-logo{display:grid;place-items:center;flex:0 1 7rem;min-width:0;min-height:5.25rem;background:var(--cream);padding:.75rem}
main .parcours-editorial .parcours-ecosystem .ecosystem-brand-logo img{display:block;max-width:100%;width:auto;height:auto;max-height:3.5rem;object-fit:contain}
main .parcours-editorial .parcours-ecosystem .ecosystem-brand-autres{display:block;flex-basis:100%;font-size:.875rem;color:#dce5e9}
main .parcours-editorial .parcours-method{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
main .parcours-editorial .parcours-method-copy h2{max-width:20ch}
main .parcours-editorial .parcours-method-copy .section-intro{margin-bottom:1.5rem}
main .parcours-editorial .parcours-method-copy .text-link{margin:0;max-width:100%;line-height:1.7}
main .parcours-editorial .parcours-devise{background:var(--paper);padding:clamp(1.5rem,3vw,2.5rem);border-top:2px solid var(--gold);margin:0}
main .parcours-editorial .parcours-devise .vision-quote{font:350 clamp(1.75rem,1.45rem + .7vw,2.2rem)/1.4 var(--serif);margin:0}
main .parcours-editorial .parcours-devise .vision-author{margin:.85rem 0 1.5rem;color:var(--gold-text);font-size:.75rem;line-height:1.6}
main .parcours-editorial .parcours-devise .vision-text{font-size:1rem;line-height:1.8;margin:0}
main .parcours-editorial>section.parcours-principles{border-top:1px solid var(--line);padding-top:var(--parcours-space)}
main .parcours-editorial .parcours-pillars>h2{max-width:25ch}
main .parcours-editorial .parcours-pillars>p{max-width:70ch}
main .parcours-editorial .parcours-principles .values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2.5rem}
main .parcours-editorial .parcours-principles .value-card{min-width:0;border-top:1px solid var(--line);padding-top:1.25rem}
main .parcours-editorial .parcours-principles .value-num{font:600 .75rem/1.6 var(--label);margin-bottom:.85rem}
main .parcours-editorial .parcours-principles .value-card h3{font-size:1.65rem;margin:0 0 1rem}
main .parcours-editorial .parcours-principles .value-card p{font-size:1rem;line-height:1.8;margin:0}
main .parcours-editorial .parcours-mission-values{margin-top:3.5rem}
main .parcours-editorial .parcours-mission-values>h2{font-size:clamp(1.75rem,2.5vw,2.3rem);margin-bottom:0}
main .parcours-editorial .parcours-mission-values .values-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 3rem;margin-top:2rem}
main .parcours-editorial .parcours-mission-values .value-card{display:block}
main .parcours-editorial .parcours-mission-values .value-card h3{margin:0 0 .85rem}
main .parcours-editorial .parcours-mission-values .value-card p{margin:0}
main .parcours-editorial .parcours-decision{border-top:1px solid var(--line);margin:0;padding-block:var(--parcours-space)}
@media(hover:hover){main .parcours-editorial .parcours-chapter>summary:hover{color:var(--gold-text)}main .parcours-editorial .parcours-chapter>summary:hover .parcours-chapter-toggle{border-color:var(--gold-text)}}
@media(max-width:1000px){
 main .parcours-editorial .parcours-opening{gap:2rem;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
 main .parcours-editorial .parcours-benefits{gap:1.5rem 2rem}
 main .parcours-editorial .parcours-proof-heading{grid-template-columns:minmax(0,1fr) 8rem}
 main .parcours-editorial .parcours-ecosystem .ecosystem-grid{grid-template-columns:1fr}
 main .parcours-editorial .parcours-ecosystem .ecosystem-card{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:1rem 2rem}
 main .parcours-editorial .parcours-ecosystem .ecosystem-brands{grid-column:2;margin-top:0}
}
@media(max-width:800px){
 main .parcours-editorial .parcours-opening{grid-template-columns:1fr}
 main .parcours-editorial .parcours-portrait{justify-self:center;max-width:26rem}
 main .parcours-editorial .parcours-portrait .parcours-photo{height:clamp(19rem,80vw,27rem)}
 main .parcours-editorial .parcours-story-intro,main .parcours-editorial .parcours-method{grid-template-columns:1fr;gap:2rem}
 main .parcours-editorial .parcours-story-intro .histoire-quote{max-width:40ch}
 main .parcours-editorial .parcours-principles .values-grid{grid-template-columns:1fr;gap:1.5rem}
 main .parcours-editorial .parcours-principles .value-card{max-width:none}
 main .parcours-editorial .parcours-mission-values .values-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
}
@media(max-width:600px){
 main .parcours-editorial .parcours-benefits{grid-template-columns:1fr;gap:1.5rem}
 main .parcours-editorial .parcours-benefit{grid-template-columns:2rem minmax(0,1fr)}
 main .parcours-editorial .parcours-opening .hero-actions .button{width:100%;justify-content:space-between}
 main .parcours-editorial .parcours-chapter>summary{grid-template-columns:2rem minmax(0,1fr) 2rem;gap:.75rem;min-height:6rem}
 main .parcours-editorial .parcours-chapter-title{font-size:1.5rem}
 main .parcours-editorial .parcours-chapter-caption{font-size:.875rem}
 main .parcours-editorial .parcours-chapter-body{margin:0;padding:0 0 1.75rem}
 main .parcours-editorial .parcours-proof-heading{grid-template-columns:1fr;gap:1.5rem}
 main .parcours-editorial .parcours-engraving{width:6rem;justify-self:center;grid-row:1}
 main .parcours-editorial .parcours-proof .stats-grid{gap:1.25rem;grid-template-columns:1fr}
 main .parcours-editorial .parcours-proof .stat{display:grid;grid-template-columns:6rem minmax(0,1fr);gap:1rem;align-items:center}
 main .parcours-editorial .parcours-proof .stat-label{margin:0}
 main .parcours-editorial .parcours-ecosystem .ecosystem-card{display:block}
 main .parcours-editorial .parcours-ecosystem .ecosystem-brands{margin-top:1.25rem}
 main .parcours-editorial .parcours-mission-values .values-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){main .parcours-editorial .parcours-chapter>summary{transition:none}}

/* dt-global.css · système dt du chantier design total (spécification finale du 21/10/2026). Zone global.
   Jetons, rythme, fonds, étiquettes, titres, boutons, flèches, focus, mouvement réduit. Aucun !important. */
:root{
 --dt-marine:#122839;--dt-marine-eleve:#1c3a4b;--dt-marine-survol:#244658;--dt-nuit:#0c1b27;
 --dt-creme:#f6f1e7;--dt-sable:#ede6d6;--dt-papier:#fcf9f3;--dt-survol-carte:#efe8da;
 --dt-or:#bda475;--dt-or-clair:#bda475;--dt-or-texte:#806527;--dt-or-texte-sable:#765c24;--dt-or-sur-marine:#bda475;
 --dt-texte:#122839;--dt-texte-doux:#3e5668;--dt-texte-sur-marine:#d9e2e7;
 --dt-filet:#d8d1c2;--dt-filet-marine:#577078;--dt-contour-marine:#8b9da5;--dt-contour-champ:#6f8591;
 --dt-gouttiere:3rem;--dt-gap-cartes:1.5rem;--dt-gap-signature:clamp(2rem,6vw,5rem);
 --dt-section:clamp(4rem,3rem + 4vw,7rem);--dt-fin:max(var(--dt-section),4.5rem);
 --dt-bande-y:clamp(2.5rem,1.25rem + 4vw,4.5rem);--dt-entete-gap:clamp(1.75rem,1rem + 2vw,2.5rem);
 --dt-pad-panneau:clamp(1.5rem,1rem + 2.5vw,3.5rem);--dt-pad-carte:clamp(1.25rem,1rem + 1vw,1.75rem);
 --dt-s1:.25rem;--dt-s2:.5rem;--dt-s3:.75rem;--dt-s4:1rem;--dt-s5:1.5rem;--dt-s6:2rem;--dt-s7:3rem;
 --dt-h2:clamp(1.875rem,1.55rem + 1.2vw,2.625rem);--dt-h3:clamp(1.375rem,1.2rem + .5vw,1.625rem);--dt-h3-s:1.25rem;
 --dt-question:clamp(1.25rem,1.05rem + .5vw,1.5rem);--dt-chapeau:clamp(1.0625rem,1rem + .25vw,1.1875rem);
 --dt-prix:clamp(2rem,1.6rem + 1.4vw,2.75rem);
 --dt-corps:1rem;--dt-petit:.875rem;--dt-legende:.8125rem;--dt-etiquette:.75rem;--dt-inscription:.6875rem;
 --dt-pastille:2.5rem;--dt-focus:#806527;--dt-focus-marine:#bda475;
 --dt-duree:180ms;--dt-courbe:cubic-bezier(.2,.65,.3,1);--dt-collant:7rem;--dt-barre-h:4.75rem
}
@media(max-width:1000px){:root{--dt-gouttiere:2rem;--dt-gap-cartes:1.25rem}}
@media(max-width:700px){:root{--dt-gouttiere:1.25rem;--dt-gap-cartes:1rem}}
/* Rail : la bande de 6 px se lit comme un défaut sous 901 px. */
@media(max-width:900px){:root{--rail-width:0px}.editorial-rail{display:none}}

/* Rythme : une section sur crème n'a qu'un padding haut ; un aplat a une marge haute ; le dernier bloc porte dt-fin. */
#contenu .dt-section{margin-block:0;padding:var(--dt-section) 0 0;border:0;background:none}
#contenu .dt-plein{--dt-fond:var(--dt-sable);margin-top:var(--dt-section);padding-block:var(--dt-bande-y);border:0;background:var(--dt-fond);border-image:conic-gradient(var(--dt-fond) 0 0) fill 0//0 100vmax}
#contenu .dt-section.dt-plein{margin-top:var(--dt-section);padding-block:var(--dt-bande-y)}
#contenu .dt-plein--marine{--dt-fond:var(--dt-marine);color:var(--dt-creme)}
#contenu .dt-fin{margin-bottom:var(--dt-fin)}
#contenu .dt-puce{display:none}

/* Étiquette et titre de section */
#contenu .dt-etiquette{display:block;margin:0 0 var(--dt-s4);font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu .dt-plein:not(.dt-plein--marine) .dt-etiquette{color:var(--dt-or-texte-sable)}
#contenu :is(.dt-plein--marine,.dt-preuve,.dt-decision,.dt-une,.dt-bande) .dt-etiquette{color:var(--dt-or-sur-marine)}
#contenu .dt-titre{margin:0;max-width:22ch;font:350 var(--dt-h2)/1.16 var(--serif);letter-spacing:-.02em;color:inherit;text-wrap:balance}
#contenu .dt-titre em{display:block;font-style:italic;color:var(--dt-or-texte)}
#contenu .dt-titre--continu em{display:inline}
#contenu .dt-plein:not(.dt-plein--marine) .dt-titre em{color:var(--dt-or-texte-sable)}
#contenu :is(.dt-plein--marine,.dt-preuve,.dt-decision,.dt-une,.dt-bande) .dt-titre{color:var(--dt-creme)}
#contenu :is(.dt-plein--marine,.dt-preuve,.dt-decision,.dt-une,.dt-bande) .dt-titre em{color:var(--dt-or-clair)}

/* Boutons : plein marine (réservation), clair sur marine, contour (action secondaire d'une cassette) */
#contenu .button{transition:background-color var(--dt-duree) var(--dt-courbe),border-color var(--dt-duree) var(--dt-courbe),color var(--dt-duree) var(--dt-courbe)}
/* Hauteur minimale : sauf les boutons des cassettes de formats du catalogue (haut validé, 48 px publiés ; recette du 21/10, tour 3). */
#contenu .button:where(:not(.format-action)){min-height:3.25rem}
#contenu .dt-bouton-clair{background:var(--dt-creme);border-color:var(--dt-creme);color:var(--dt-marine)}
#contenu .dt-bouton-contour{background:transparent;border:1px solid var(--dt-marine);color:var(--dt-marine)}
@media(hover:hover) and (pointer:fine){
 #contenu .button:not(.dt-bouton-clair):not(.dt-bouton-contour):hover{background:var(--dt-marine-survol);border-color:var(--dt-marine-survol);color:var(--dt-creme)}
 #contenu :is(.dt-bouton-clair,.signature-legal .button):hover{background:var(--dt-sable);border-color:var(--dt-sable);color:var(--dt-marine)}
 #contenu .dt-bouton-contour:hover{background:var(--dt-marine);border-color:var(--dt-marine);color:var(--dt-creme)}
 #contenu .text-link:hover{color:var(--dt-or-texte);text-decoration:none}
}

/* Flèches : une seule forme (↗, le SVG existant), sur les boutons et une fois par carte cliquable.
   Liens d’action fléchés ; les ancres descendantes portent une flèche verticale. */
#contenu .action-arrow{transition:transform var(--dt-duree) var(--dt-courbe)}
#contenu .text-link .action-arrow{display:block;flex:none;width:var(--action-icon-size);height:var(--action-icon-size)}
@media(hover:hover) and (pointer:fine){#contenu :is(.button,a.dt-carte,.dt-insight,.dt-une):hover .action-arrow{transform:translate(2px,-2px)}}

/* Focus : un seul style ; or foncé sur clair, or clair sur marine. Les formulaires gardent le leur. */
#contenu :is(a,button,summary,select,[tabindex="0"]):not(form *):focus-visible{outline:2px solid var(--dt-focus);outline-offset:4px}
#contenu :is(.dt-plein--marine,.dt-preuve,.dt-decision,.dt-une,.dt-bande,.dt-cta-collant,.signature-panel,.signature-legal,.signature-identity,.approach-band,.recruit-call,.cand-cadre) :is(a,button,summary,select,[tabindex="0"]):not(form *):focus-visible{outline-color:var(--dt-focus-marine)}

/* Inscriptions décoratives des couvertures Insights (aria-hidden) : 11 px, seule exception sous 12 px avec le rail et le logo. */
#contenu .insight-cover :is(.cover-index,.cover-signature){font-size:var(--dt-inscription)}

/* En-tête (recette zone global du 21/10, tour 2) : à texte agrandi (200 %), entre 1001 et 1279 px, le bouton
   « Entretien Stratégique » sortait de la page. L'en-tête passe à la ligne au lieu de déborder ;
   à taille normale il tient sur une ligne et ne bouge pas. gabarit.json inchangé. */
.site-header{flex-wrap:wrap;row-gap:var(--dt-s2)}
.site-header :is(.desktop-nav,.header-cta){min-width:0}
/* Ancres et focus sous l’en-tête collant (recette zone global, tour 3) : à texte agrandi (200 %), l’en-tête grandit
   (149 à 160 px sous 701 px, 101 px jusqu’à 1000 px, 193 à 274 px au-dessus) et les sauts d’ancre tombaient dessous.
   La marge de défilement suit la taille du texte ; à 16 px, les valeurs publiées restent (76 px, 88 px au-dessus de 1000 px). */
html{scroll-padding-top:max(76px,calc(6.5rem - 28px))}
@media(min-width:1001px){html{scroll-padding-top:max(88px,calc(13rem - 120px))}}

@media(prefers-reduced-motion:reduce){
 #contenu .button,#contenu .action-arrow{transition:none}
 #contenu :is(.button,a.dt-carte,.dt-insight,.dt-une):hover .action-arrow{transform:none}
}
@media print{#contenu :is(.dt-plein,.dt-separateur,.dt-bande){border-image:none}}

/* F25 : le pied reste identique au texte normal ; les mots longs peuvent se couper quand le texte est fortement agrandi. */
.site-footer :is(a,p,span){overflow-wrap:break-word;hyphens:auto;hyphenate-limit-chars:8 4 3}
/* F36/F53 : chute continue à petite largeur ; césure française dans les titres étroits, au lieu de lettres isolées. */
@media(max-width:400px){#contenu .dt-decision .dt-titre em{display:inline}}
#contenu .dt-titre{hyphens:auto;hyphenate-limit-chars:8 4 3}

/* Retours directs du 23/10 : liens d’action sans soulignement, liens de texte courant inchangés. */
#contenu .text-link{font-family:var(--label);font-weight:600;text-decoration:none;border-bottom:0;box-shadow:none;transition:color var(--dt-duree) var(--dt-courbe)}
#contenu .text-link::after{display:none}
#contenu .text-link:is(:hover,:focus-visible){text-decoration:none;border-bottom:0;box-shadow:none}
@media(prefers-reduced-motion:reduce){#contenu .text-link{transition:none}}
/* Un bas de page commun : crédit au centre, copyright et liens légaux de part et d’autre. */
.site-footer .footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1rem 2rem;padding-block:1.25rem;align-items:center}
.site-footer .footer-bottom>.footer-copyright{width:auto;margin:0;font-size:.75rem}
.site-footer .footer-credit{justify-self:center;text-align:center;font-size:.75rem;line-height:1.65}
.site-footer .footer-credit a{display:inline;min-height:0;color:var(--dt-or-sur-marine)}
.site-footer .footer-legal{display:flex;justify-content:flex-end;gap:0 1rem;flex-wrap:wrap;font-size:.75rem}
.site-footer .footer-legal a{min-height:2.75rem}
@media(max-width:1200px){.site-footer .footer-bottom{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.site-footer .footer-credit{grid-column:1/3;grid-row:2}.site-footer .footer-legal{grid-column:2;grid-row:1}}
@media(max-width:600px){.site-footer .footer-bottom{grid-template-columns:minmax(0,1fr);gap:.5rem;text-align:center}.site-footer .footer-bottom>.footer-copyright{justify-self:center}.site-footer .footer-legal{grid-column:1;grid-row:3;justify-content:center;gap:0 1rem}.site-footer .footer-credit{grid-column:1;grid-row:2}}

/* Retour en haut commun, discret et accessible, sans dépendance pour le lien natif. */
.page-top-anchor{display:block;height:0;scroll-margin-top:0}
.site-footer .back-to-top{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;margin:1rem auto;border:1px solid #bda475;border-radius:50%;color:#F6F1E7;background:#122839;text-decoration:none}
.back-to-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.has-back-top .back-to-top{position:fixed;right:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:35;margin:0;box-shadow:0 3px 12px #0c1b2720}
.back-to-top[hidden],.menu-open .back-to-top{display:none!important}
.back-to-top:focus-visible{outline:3px solid #bda475;outline-offset:4px}
@media(hover:hover) and (pointer:fine){.back-to-top:hover{color:#E0BD78;background:#1c3a4b}}
@media(max-width:700px){.has-back-top .back-to-top{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}}
@media print{.back-to-top{display:none!important}}

/* Le retour en haut quitte la zone de lecture sur mobile et tablette. */
@media(max-width:1000px){
 .has-back-top .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;column-gap:.5rem;align-items:center}
 .has-back-top .site-header>.brand{grid-column:1;min-width:0;max-width:100%}
 .has-back-top .site-header>.menu-toggle{grid-column:3;grid-row:1}
 .has-back-top .site-header>.back-to-top{position:static;grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;margin:0;border:1px solid var(--dt-filet);border-radius:50%;background:transparent;color:var(--dt-marine);box-shadow:none}
 .has-back-top .site-header:has(.back-to-top:not([hidden])) .brand{gap:.5rem}
 .has-back-top .site-header:has(.back-to-top:not([hidden])) .brand img{width:32px;height:32px}
 .has-back-top .site-header:has(.back-to-top:not([hidden])) .brand>span{font-size:clamp(.85rem,3.8vw,1.125rem)}
 .has-back-top .site-header:has(.back-to-top:not([hidden])) .brand small{font-size:clamp(.4375rem,1.7vw,.625rem);letter-spacing:.08em}
}

/* DA v3 : fond continu, actions identifiables et contraste du doré sur crème. */
.site-header{background:var(--cream);box-shadow:none;border-bottom:0}
#contenu h1 em{color:var(--dt-or-texte)}
#contenu :is(.signature-legal,.signature-identity,.dt-plein--marine) h1 em{color:var(--dt-or-sur-marine)}
#contenu .text-link.dt-lien-action{display:inline-flex;align-items:center;gap:.625rem;min-height:2.75rem;max-width:100%;line-height:1.5}
#contenu .text-link.dt-lien-action .action-arrow{display:block;flex:none;width:var(--action-icon-size);height:var(--action-icon-size)}
#contenu .text-link.dt-lien-action:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:.25em}
@media(hover:hover) and (pointer:fine){
 #contenu .text-link.dt-lien-action:hover .action-arrow:not(.action-arrow--down){transform:translate(2px,-2px)}
 #contenu :is(.button,.text-link):hover .action-arrow--down{transform:translateY(2px)}
}
@media(prefers-reduced-motion:reduce){#contenu :is(.button,.text-link):hover .action-arrow{transform:none}}

/* dt-composants.css · familles communes du chantier design total (spécification finale du 21/10/2026). Zone pilote.
   Toutes les règles commencent par #contenu (1,1,0) : elles passent devant les feuilles historiques sans !important.
   Ordre : entête, bénéfices, étapes, séparateur et bande, preuve, questions et pastille, dépliants, décision et billet,
   cartes (autres programmes, cassettes horizontales, cartes-liens, offres), Insights, note et liens, barre mobile (option), défilement (en dernier). */

/* 1 · dt-entete : étiquette + titre à gauche, chapeau sur l'axe de droite (765 px à 1440, 557 px à 1024) */
#contenu .dt-entete{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-s5);align-items:start;max-width:none;margin:0 0 var(--dt-entete-gap);padding:0;border:0}
#contenu .dt-entete__titre,#contenu .dt-entete__chapeau{min-width:0}
#contenu .dt-entete__chapeau{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s3);padding-bottom:.35rem}
#contenu .dt-entete__chapeau>p{margin:0;max-width:52ch;padding:0;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-entete__chapeau>.text-link{margin:0;padding-block:.625rem}
#contenu .dt-entete--seul{grid-template-columns:minmax(0,1fr)}
#contenu .dt-entete--chapeau-fort .dt-entete__chapeau>p:first-child{font-size:var(--dt-chapeau);line-height:1.65;color:var(--dt-texte)}
#contenu .dt-entete--centre{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
#contenu .dt-entete--centre .dt-titre{margin-inline:auto}
#contenu .dt-plein--marine .dt-entete__chapeau>p{color:var(--dt-texte-sur-marine)}
@media(max-width:1000px){
 #contenu .dt-entete{grid-template-columns:minmax(0,1fr);align-items:start}
 #contenu .dt-entete__chapeau{padding-bottom:0}
 #contenu .dt-entete .dt-titre{max-width:24ch}
}
/* Recette famille du 22/10 (F49) · variante dt-entete--haut, pour un chapeau long (paragraphes, note, lien) face à un titre court :
   au bureau, le chapeau part en haut et sa première ligne se cale sur la ligne de base de la première ligne du titre (étiquette
   de 1,2 rem et sa marge comprises), au lieu de laisser 30 à 100 px vides au-dessus du titre. Inerte tant qu'une page ne la pose pas. */
@media(min-width:1001px){
 #contenu .dt-entete--haut{align-items:start}
 #contenu .dt-entete--haut .dt-entete__chapeau{padding:calc(1.2rem + var(--dt-s4) + .93 * var(--dt-h2) - 1.16 * var(--dt-chapeau)) 0 0}
}

/* 2 · dt-benefices : cartes (3 ou 4), cartes illustrées, liste éditoriale à filets (fiches programmes) */
#contenu .dt-benefices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dt-gap-cartes);margin:0;padding:0;list-style:none}
#contenu .dt-benefices--quatre{grid-template-columns:repeat(4,minmax(0,1fr))}
#contenu .dt-benefice{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s3);min-width:0;margin:0;padding:var(--dt-pad-carte);background:var(--dt-papier);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);border-radius:2px;box-shadow:none}
#contenu .dt-benefice__art{display:block;width:4.5rem;height:4.5rem;margin:0 0 var(--dt-s1);object-fit:contain;object-position:left center;opacity:1;filter:none}
#contenu .dt-benefice__index{display:block;margin:0;font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu .dt-benefice__titre{display:block;margin:0;max-width:24ch;font:350 var(--dt-h3)/1.28 var(--serif);letter-spacing:-.02em;color:var(--dt-texte);text-wrap:balance}
#contenu .dt-benefice>p{margin:0;max-width:52ch;padding:0;font:400 var(--dt-corps)/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-benefice>p strong{font-weight:600;color:var(--dt-texte)}
/* Rangées partagées par carte (sous-grille), définies hors média : la piste mobile s'en sert aussi. */
#contenu .dt-benefices--illustre{--dt-rangs:4}
#contenu .dt-benefices--sans-index{--dt-rangs:2}
/* Recette famille du 22/10 (F37) : sous-grille dès que les cartes sont en rangée (701 px et plus, et non plus 1001) ; à 820 px,
   un titre sur deux lignes (« Travailler sur le concret. ») faisait partir son texte 25 px plus bas que ses voisins. */
@supports(grid-template-rows:subgrid){@media(min-width:701px){
 #contenu .dt-benefices:not(.dt-benefices--liste)>.dt-benefice{display:grid;grid-row:span var(--dt-rangs,3);grid-template-rows:subgrid;row-gap:var(--dt-s3);align-content:start}
}}
@media(min-width:701px){
 #contenu .dt-benefices--liste{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--dt-gouttiere);row-gap:0;border-bottom:1px solid var(--dt-filet)}
 #contenu .dt-benefices--liste>.dt-benefice{display:grid;grid-template-columns:2.5rem minmax(0,1fr);grid-template-rows:auto 1fr;align-content:start;column-gap:var(--dt-s4);row-gap:var(--dt-s2);padding:var(--dt-s5) 0;background:none;border:0;border-top:1px solid var(--dt-filet);border-radius:0}
 #contenu .dt-benefices--liste .dt-benefice__index{grid-column:1;grid-row:1;align-self:baseline}
 #contenu .dt-benefices--liste .dt-benefice__titre{grid-column:2;grid-row:1;align-self:baseline}
 #contenu .dt-benefices--liste .dt-benefice>p{grid-column:2;grid-row:2}
 #contenu .dt-benefices--liste.dt-benefices--sans-index>.dt-benefice{grid-template-columns:minmax(0,1fr)}
 #contenu .dt-benefices--liste.dt-benefices--sans-index :is(.dt-benefice__titre,.dt-benefice>p){grid-column:1}
}
/* Recette famille du 22/10 (F09, proposition P2 de la zone programmes) : la sous-grille de la liste ne vaut qu'au bureau (fiche 5.1).
   De 701 à 1000 px, quand un titre voisin passait sur deux lignes, elle laissait 35 à 38 px de blanc entre le titre et le texte de
   l'autre carte ; chaque carte garde alors « titre puis texte » à 8 px, le haut des cartes et des titres d'une rangée reste aligné. */
@supports(grid-template-rows:subgrid){@media(min-width:1001px){#contenu .dt-benefices--liste>.dt-benefice{grid-row:span 2;grid-template-rows:subgrid}}}
@media(min-width:701px) and (max-width:1000px){
 #contenu .dt-benefices:not(.dt-benefices--liste)>.dt-benefice{padding:1.25rem}
 #contenu .dt-benefices:not(.dt-benefices--liste) .dt-benefice__titre{font-size:var(--dt-h3-s)}
}
@media(max-width:1200px){#contenu .dt-benefices--quatre{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 #contenu .dt-benefices,#contenu .dt-benefices--quatre{grid-template-columns:minmax(0,1fr)}
 #contenu .dt-benefice{padding:1.25rem}
 #contenu .dt-benefice__titre{font-size:var(--dt-h3-s)}
 #contenu .dt-benefices--liste:not(.is-slider){gap:0;border-bottom:1px solid var(--dt-filet)}
 #contenu .dt-benefices--liste:not(.is-slider)>.dt-benefice{padding:var(--dt-s4) 0;background:none;border:0;border-top:1px solid var(--dt-filet);border-radius:0}
}
/* Recette famille du 22/10 (F37) · piste mobile de cartes : elles partagent les rangées de la piste (index, titre, texte), comme
   la sous-grille du bureau ; un titre plus court ne remonte plus le texte de sa carte (règle reprise de la zone parcours). */
@supports(grid-template-rows:subgrid){@media(max-width:700px){
 #contenu .dt-benefices:not(.dt-benefices--liste).is-slider>.dt-benefice{display:grid;grid-row:1/span var(--dt-rangs,3);grid-template-rows:subgrid;row-gap:var(--dt-s3);align-content:start}
}}
/* Recette famille du 22/10 (F10) · texte agrandi, cartes hors liste : de 701 à 1000 px, les trois colonnes restaient en place et
   « Transmission », « d'intervention », « pragmatisme », « Votre liberté » sortaient des cartes (page de 803 à 872 px à 150 et 200 %).
   Conteneur sur le parent de la liste (sur la carte, il annulerait la sous-grille), en longhand : un nom posé par une zone est gardé ;
   requêtes sans nom, qui lisent ce parent. Seuils en rem : au texte normal, le parent le plus étroit mesure 36,7 rem dès 701 px
   (36,5 rem : jamais atteint), 61 rem dès 1201 px pour les rangées de quatre, 18 rem à 320 px. Les grilles posées par une zone
   priment (exclusions en :where, spécificité de la famille inchangée). */
#contenu :has(>.dt-benefices:not(.dt-benefices--liste)){container-type:inline-size}
@media(min-width:701px){
 @container (max-width:36.5rem){#contenu .dt-benefices:where(:not(.dt-benefices--liste,.dt-benefices--quatre)){grid-template-columns:minmax(0,1fr)}}
 @container (max-width:49.99rem){#contenu .dt-benefices--quatre:where(:not(.dt-benefices--liste)){grid-template-columns:repeat(2,minmax(0,1fr))}}
 @container (max-width:26rem){#contenu .dt-benefices--quatre:where(:not(.dt-benefices--liste)){grid-template-columns:minmax(0,1fr)}}
}
/* Sous 17 rem (200 % de texte sous 400 px) : marges de carte réduites, titre plafonné pour que « accompagnements » (6,8 em) tienne,
   césure française des titres et des textes au lieu d'élargir la page. */
@container (max-width:17rem){
 #contenu .dt-benefices:not(.dt-benefices--liste)>.dt-benefice{padding:1rem}
 #contenu .dt-benefices:not(.dt-benefices--liste) .dt-benefice__titre{font-size:min(var(--dt-h3-s),calc((100cqi - 2rem) / 7.4));hyphens:auto;hyphenate-limit-chars:8 4 3}
 #contenu .dt-benefices:not(.dt-benefices--liste) .dt-benefice>p{hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:break-word}
}

/* 3 · dt-etapes : frise à pastilles reliées (horizontale au bureau, verticale en mobile) */
#contenu .dt-etapes__liste{--dt-n:4;display:grid;grid-template-columns:repeat(var(--dt-n),minmax(0,1fr));column-gap:var(--dt-gouttiere);row-gap:var(--dt-s3);margin:0;padding:0;list-style:none;counter-reset:none}
#contenu .dt-etapes--trois .dt-etapes__liste{--dt-n:3}
#contenu .dt-etape{position:relative;display:grid;grid-template-rows:auto auto 1fr;row-gap:var(--dt-s3);align-content:start;min-width:0;margin:0;padding:0;border:0;background:none}
#contenu .dt-etape__num{position:relative;z-index:1;display:grid;place-items:center;width:3rem;height:3rem;margin:0;border:1px solid var(--dt-or);border-radius:50%;background:var(--dt-creme);font:350 1.125rem/1 var(--serif);font-style:normal;letter-spacing:0;font-variant-numeric:lining-nums;color:var(--dt-or-texte)}
#contenu .dt-etape:not(:last-child)::before{content:"";position:absolute;top:1.5rem;left:3rem;right:calc(-1 * var(--dt-gouttiere));border-top:1px solid var(--dt-or)}
#contenu .dt-etape__titre{display:block;margin:var(--dt-s2) 0 0;font:350 var(--dt-h3)/1.28 var(--serif);letter-spacing:-.02em;color:var(--dt-texte);text-wrap:balance}
#contenu .dt-etape>p{margin:0;max-width:40ch;padding:0;font:400 var(--dt-corps)/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-plein:not(.dt-plein--marine) .dt-etape__num{background:var(--dt-sable);color:var(--dt-or-texte-sable)}
@supports(grid-template-rows:subgrid){@media(min-width:1201px){#contenu .dt-etape{grid-row:span 3;grid-template-rows:subgrid}}}
/* Variante libellé : le numéro est déjà dans le texte (« 01 · Avant ») ; pas de cercle, filet or supérieur. */
#contenu .dt-etapes--libelle .dt-etape{grid-row:auto;grid-template-rows:auto 1fr;padding-top:var(--dt-s4);border-top:2px solid var(--dt-or)}
#contenu .dt-etapes--libelle .dt-etape::before{display:none}
#contenu .dt-etapes--libelle .dt-etape>.small-label{display:block;margin:0;font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu .dt-plein:not(.dt-plein--marine) .dt-etapes--libelle .dt-etape>.small-label,#contenu .dt-plein.dt-etapes--libelle .dt-etape>.small-label{color:var(--dt-or-texte-sable)}
/* Variante marine : principes de l'accueil dans le bandeau marine existant */
#contenu .dt-etapes--marine .dt-etape__num{background:var(--dt-marine);border-color:var(--dt-or-clair);color:var(--dt-or-sur-marine)}
#contenu .dt-etapes--marine .dt-etape::before{border-top-color:var(--dt-filet-marine)}
#contenu .dt-etapes--marine .dt-etape__titre{color:var(--dt-creme)}
#contenu .dt-etapes--marine .dt-etape>p{color:var(--dt-texte-sur-marine)}
@media(min-width:701px) and (max-width:1200px){
 #contenu .dt-etapes:not(.dt-etapes--trois) .dt-etapes__liste{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--dt-s6)}
 #contenu .dt-etapes:not(.dt-etapes--trois) .dt-etape::before{display:none}
}
/* Texte agrandi (recette du pilote, police racine 32 px) : la frise de 4 n'a plus la place d'un mot long (« Accompagnement »
   chevauchait « Lancement »). Requête de conteneur en rem, qui suit la police racine : en dessous de 60 rem, 2 × 2 sans liant. */
#contenu .dt-etapes{container:dt-etapes/inline-size}
@media(min-width:701px){@container dt-etapes (max-width:59.99rem){
 #contenu .dt-etapes:not(.dt-etapes--trois) .dt-etapes__liste{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--dt-s6)}
 #contenu .dt-etapes:not(.dt-etapes--trois) .dt-etape::before{display:none}
 /* Recette famille du 22/10 (F06, proposition P5 de la zone programmes) : à 200 % de texte, de 701 à 740 px, « Accompagnement »
    (insécable) dépassait sa colonne (page de 728 à 747 px sur direction, 59 px dans la gouttière sur croissance). Plafond en cqi,
    sans effet au texte normal (38 px de plafond à 768 px pour un titre de 26 px). */
 #contenu .dt-etapes:not(.dt-etapes--trois) .dt-etape__titre{font-size:min(var(--dt-h3),calc((100cqi - var(--dt-gouttiere)) / 17.6))}
}}
/* Recette famille du 22/10 (F06) · frise de trois à texte agrandi : sous 36 rem de section (39,8 rem au moins au texte normal dès
   701 px), les trois colonnes passent l'une sous l'autre ; « 03 · Pour aller plus loin » et son paragraphe sortaient du cadre
   d'Express (845 px de contenu à 768, 1 043 à 1024). */
@media(min-width:701px){@container dt-etapes (max-width:36rem){
 #contenu .dt-etapes.dt-etapes--trois .dt-etapes__liste{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s6)}
 #contenu .dt-etapes.dt-etapes--trois .dt-etape::before{display:none}
}}
@media(max-width:700px){
 #contenu .dt-etapes .dt-etapes__liste{grid-template-columns:minmax(0,1fr);row-gap:0}
 #contenu .dt-etapes .dt-etape{grid-template-columns:2.75rem minmax(0,1fr);grid-template-rows:auto auto;column-gap:var(--dt-s4);row-gap:var(--dt-s1);padding-bottom:var(--dt-s5)}
 #contenu .dt-etapes .dt-etape__num{grid-row:1/3;width:2.75rem;height:2.75rem;align-self:start}
 #contenu .dt-etapes .dt-etape__titre{grid-column:2;margin:.45rem 0 0;font-size:var(--dt-h3-s)}
 #contenu .dt-etapes .dt-etape>p{grid-column:2}
 #contenu .dt-etapes .dt-etape:not(:last-child)::before{display:block;top:2.75rem;bottom:0;left:1.375rem;right:auto;border-top:0;border-left:1px solid var(--dt-or)}
 #contenu .dt-etapes--marine .dt-etape:not(:last-child)::before{border-left-color:var(--dt-filet-marine)}
 #contenu .dt-etapes--libelle .dt-etape{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;padding:0 0 var(--dt-s5) var(--dt-s4);border-top:0;border-left:2px solid var(--dt-or)}
 /* Recette famille du 22/10 (F01) : « .dt-etapes .dt-etape>p{grid-column:2} » (1,2,1) primait sur cette règle (1,2,0) ; le paragraphe
    partait dans une colonne implicite et l'étiquette « 01 · Avant » tombait à 0 px de large (Entretien, Express, 320 à 700 px). */
 #contenu .dt-etapes.dt-etapes--libelle .dt-etape>*{grid-column:1}
 #contenu .dt-etapes--libelle .dt-etape:not(:last-child)::before{display:none}
}

/* 4 · dt-separateur (petit séparateur sur fond bleu) et dt-bande (devise) : pleine largeur sans débordement */
#contenu .dt-separateur{--dt-fond:var(--dt-marine);display:grid;place-items:center;margin-top:var(--dt-section);padding-block:clamp(1.125rem,.75rem + .75vw,1.25rem);border:0;background:var(--dt-fond);border-image:conic-gradient(var(--dt-fond) 0 0) fill 0//0 100vmax}
/* Recette du pilote, tour 2 : à 48 px l'emblème ne se lisait pas à 1× (« un insecte ») ; 56 à 68 px, bande gardée entre 80 et 94 px. */
#contenu .dt-separateur>img{display:block;width:clamp(3.5rem,3rem + 1vw,4.25rem);height:auto;opacity:1;filter:none}
#contenu .dt-bande{--dt-fond:var(--dt-marine);display:flex;flex-direction:column;align-items:center;gap:var(--dt-s4);margin-top:var(--dt-section);padding-block:var(--dt-bande-y);border:0;background:var(--dt-fond);border-image:conic-gradient(var(--dt-fond) 0 0) fill 0//0 100vmax;color:var(--dt-creme);text-align:center}
#contenu .dt-bande>*{margin:0}
#contenu .dt-bande__embleme{display:block;width:3.5rem;height:auto;opacity:1}
#contenu .dt-bande__citation{max-width:24ch;font:350 clamp(1.75rem,1.4rem + 1.2vw,2.625rem)/1.28 var(--serif);letter-spacing:-.02em;color:var(--dt-creme);text-wrap:balance}
#contenu .dt-bande__citation :is(em,strong){font-style:italic;font-weight:inherit;color:var(--dt-or-clair)}
#contenu .dt-bande__auteur{font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-sur-marine)}
#contenu .dt-bande__texte{max-width:46ch;margin-inline:auto;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-sur-marine);text-align:center;text-wrap:pretty}
/* Recette famille du 22/10 (F11) · texte à 200 % sous 400 px : « intelligemment. » (citation à 56 px) était plus large que la bande,
   rogné des deux côtés, et la page défilait en largeur. La bande mesure 18 rem à 320 px au texte normal : règle inerte. */
#contenu .dt-bande{container:dt-bande/inline-size}
@container dt-bande (max-width:17rem){#contenu .dt-bande__citation{font-size:min(1.25rem,calc(100cqi / 8.5));hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:anywhere}}
/* Variante (F41) : bande en panneau dans la largeur du contenu, sans débord, pour une page qui finit sur la devise (le pied nuit
   suit) ; inerte tant qu'une page ne la pose pas. */
#contenu .dt-bande--panneau{border-image:none;padding-inline:var(--dt-pad-panneau)}

/* 5 · dt-preuve : portrait de Samih à gauche, texte sur l'axe de droite, aplat marine dans le wrap */
/* Recette famille du 22/10 (F05) : le panneau ne rogne plus son contenu (overflow:hidden rognait le titre et des mots des paragraphes
   à texte agrandi) ; seul le portrait garde ses bords nets. */
#contenu .dt-preuve{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);align-items:stretch;margin-top:var(--dt-section);padding:0;background:var(--dt-marine);color:var(--dt-creme);border:0;border-radius:0;container:dt-preuve/inline-size}
#contenu .dt-preuve__portrait{position:relative;min-width:0;min-height:28rem;margin:0;background:var(--dt-marine-eleve);overflow:hidden}
#contenu .dt-preuve__portrait img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
#contenu .dt-preuve__texte{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--dt-s4);min-width:0;padding:var(--dt-pad-panneau) var(--dt-pad-panneau) var(--dt-pad-panneau) 0}
#contenu .dt-preuve__texte>*{margin:0}
#contenu .dt-preuve .dt-titre{max-width:18ch}
#contenu .dt-preuve__texte p{max-width:56ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu .dt-preuve .text-link{padding-block:.625rem;color:var(--dt-creme);text-decoration:none}
@media(hover:hover) and (pointer:fine){#contenu .dt-preuve .text-link:hover{color:var(--dt-or-sur-marine);text-decoration:none}}
#contenu .dt-preuve--sans-portrait{padding:var(--dt-pad-panneau)}
#contenu .dt-preuve--sans-portrait .dt-preuve__texte{padding:0}
@media(max-width:1000px){
 #contenu .dt-preuve{grid-template-columns:minmax(0,1fr)}
 /* Recette famille du 22/10 (F22) : en 4:3 sur toute la largeur, le portrait faisait 528 à 627 px de haut (bloc de 1 081 à 1 192 px,
    plus d'un écran). Bandeau de portrait en 16:9 plafonné à 22 rem, visage dans le cadre. */
 /* Largeur explicite : le plafond de hauteur ne réduit pas le bandeau ; ancrage haut pour conserver la tête entière. */
 #contenu .dt-preuve__portrait{width:100%;min-height:0;aspect-ratio:16/9;max-height:22rem}
 #contenu .dt-preuve__portrait img{object-position:50% 0}
 #contenu .dt-preuve__texte{padding:var(--dt-pad-panneau)}
 #contenu .dt-preuve--sans-portrait .dt-preuve__texte{padding:0}
}
@media(max-width:700px){#contenu .dt-preuve__portrait{aspect-ratio:3/2;max-height:18rem}#contenu .dt-preuve__portrait img{object-position:50% 2%}}
/* Recette famille du 22/10 (F05) · texte à 200 % sous 400 px : titre (« interlocut… », « implicatio… ») et mots longs
   (« personnellemen… ») débordaient d'un panneau de 304 à 390 px. Sous 17 rem de panneau (18 rem au moins au texte normal) :
   retrait réduit, titre plafonné en cqi, césure française et coupe en dernier recours (« vérifiez‑moi. », trait insécable). */
@container dt-preuve (max-width:17rem){
 #contenu .dt-preuve:not(.dt-preuve--sans-portrait) .dt-preuve__texte{padding-inline:1rem}
 #contenu .dt-preuve .dt-titre{font-size:min(var(--dt-h2),calc((100cqi - 2rem) / 5.2));hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:anywhere}
 #contenu .dt-preuve__texte :is(p,li,.text-link,summary){hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:anywhere}
}

/* 6 · dt-questions : titre à gauche (collant au bureau), questions sur l'axe de droite */
#contenu .dt-questions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-entete-gap);align-items:start}
#contenu .dt-questions__aside{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s4);min-width:0}
#contenu .dt-questions__aside>*{margin:0}
#contenu .dt-questions__aside .dt-titre{max-width:14ch}
#contenu .dt-questions__aside>p{max-width:40ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-questions__aside>.text-link{padding-block:.625rem}
/* Collant au texte normal seulement (tour 2 : 6.8 et 10.1, « collants désactivés » à 200 % de texte). Requête de conteneur en rem,
   qui suit la police racine : 45 rem font 720 px au texte normal, largeur toujours atteinte au-delà de 1000 px. */
#contenu .dt-questions{container:dt-questions/inline-size}
@media(min-width:1001px) and (min-height:720px){@container dt-questions (min-width:45rem){#contenu .dt-questions__aside{position:sticky;top:var(--dt-collant)}}}
#contenu .dt-questions__liste{min-width:0;margin:0;padding:0;border-bottom:1px solid var(--dt-filet)}
#contenu .dt-question{margin:0;padding:0;border:0;border-top:1px solid var(--dt-filet);background:none}
/* Recette famille du 22/10 (F39) : lignes équilibrées (balance au lieu de pretty), plus de « faut- / il payer ? » ni de 100 px vides
   avant la pastille ; texte inchangé. */
#contenu .dt-question>summary{display:grid;grid-template-columns:minmax(0,1fr) var(--dt-pastille);align-items:center;column-gap:var(--dt-s4);min-height:3.5rem;max-width:none;margin:0;padding:var(--dt-s4) 0;background:none;font:350 var(--dt-question)/1.35 var(--serif);letter-spacing:-.01em;color:var(--dt-texte);text-wrap:balance}
#contenu .dt-question[open]>summary{color:var(--dt-or-texte)}
#contenu .dt-question>:not(summary){margin:0 3.5rem var(--dt-s4) 0;max-width:65ch;padding:0;background:none;border:0;font:400 var(--dt-corps)/1.8 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-question>:last-child:not(summary){margin-bottom:var(--dt-s5)}
#contenu .dt-plus{margin:0;padding:0;border:0;border-top:1px solid var(--dt-filet);background:none}
#contenu .dt-plus>summary{--dt-pastille:2rem;display:inline-grid;grid-template-columns:auto var(--dt-pastille);align-items:center;column-gap:var(--dt-s3);min-height:3rem;padding:var(--dt-s3) 0;font:600 var(--dt-petit)/1.5 var(--label);color:var(--dt-marine)}
@media(max-width:1000px){#contenu .dt-questions{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){#contenu .dt-question>:not(summary){margin-right:0}}

/* Pastille + / − unique (FAQ, dépliants, « Voir les autres questions ») : signe dessiné en CSS, indépendant des polices */
#contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary{list-style:none;cursor:pointer}
#contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary::-webkit-details-marker{display:none}
#contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary::after{content:"";position:static;inset:auto;transform:none;float:none;display:block;flex:none;justify-self:end;align-self:center;box-sizing:border-box;width:var(--dt-pastille);height:var(--dt-pastille);margin:0;padding:0;border:1px solid var(--dt-or);border-radius:50%;color:var(--dt-marine);font-size:0;line-height:0;background:linear-gradient(currentColor,currentColor) center/.875rem 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px .875rem no-repeat;background-color:transparent;transition:background-color var(--dt-duree) var(--dt-courbe),border-color var(--dt-duree) var(--dt-courbe),color var(--dt-duree) var(--dt-courbe),background-size var(--dt-duree) var(--dt-courbe)}
#contenu :is(.dt-question,.dt-depliant,.dt-plus)[open]>summary::after{background-size:.875rem 1.5px,1.5px 0;border-color:var(--dt-marine)}
#contenu .dt-depliant--marine>summary::after{border-color:var(--dt-or-clair);color:var(--dt-creme)}
#contenu .dt-depliant--marine[open]>summary::after{border-color:var(--dt-creme)}
@media(hover:hover) and (pointer:fine){
 #contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary:hover::after{background-color:var(--dt-marine);border-color:var(--dt-marine);color:var(--dt-creme)}
 #contenu .dt-depliant--marine>summary:hover::after{background-color:var(--dt-creme);border-color:var(--dt-creme);color:var(--dt-marine)}
}
@media(prefers-reduced-motion:reduce){#contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary::after{transition:none}}
@media(forced-colors:active){
 #contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary::after{content:"+";display:grid;place-items:center;background:none;font:400 1.25rem/1 var(--sans)}
 #contenu :is(.dt-question,.dt-depliant,.dt-plus)[open]>summary::after{content:"\2212"}
}
@media print{#contenu :is(.dt-question,.dt-depliant,.dt-plus)>summary::after{display:none}}

/* 7 · dt-depliant : cassette numérotée (ADN des cassettes du catalogue), utilitaire (ligne Domus), marine */
#contenu .dt-depliants{display:grid;gap:var(--dt-s3);counter-reset:dt-depliant}
#contenu .dt-depliant{margin:0;padding:0;border:0;background:none}
#contenu .dt-depliant>summary{margin:0;background:none;border:0;text-transform:none;text-align:left}
#contenu .dt-depliant--cassette{background:var(--dt-papier);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);border-radius:2px}
#contenu .dt-depliant--cassette>summary{display:grid;grid-template-columns:minmax(0,1fr) var(--dt-pastille);align-items:center;column-gap:var(--dt-s4);min-height:4.5rem;padding:var(--dt-s4) var(--dt-pad-carte);font:350 var(--dt-question)/1.3 var(--serif);letter-spacing:-.01em;color:var(--dt-texte);transition:background-color var(--dt-duree) var(--dt-courbe)}
#contenu .dt-depliants>.dt-depliant--cassette{counter-increment:dt-depliant}
#contenu .dt-depliants>.dt-depliant--cassette>summary{grid-template-columns:3rem minmax(0,1fr) var(--dt-pastille)}
#contenu .dt-depliants>.dt-depliant--cassette>summary::before{content:counter(dt-depliant,decimal-leading-zero) " /";content:counter(dt-depliant,decimal-leading-zero) " /" / "";font:600 var(--dt-etiquette)/1 var(--label);letter-spacing:.1em;color:var(--dt-or-texte)}
@media(hover:hover) and (pointer:fine){#contenu .dt-depliant--cassette>summary:hover{background:var(--dt-survol-carte)}}
#contenu .dt-depliant--cassette>summary:focus-visible{outline-offset:-4px}
#contenu .dt-depliant--cassette[open]>summary{border-bottom:1px solid var(--dt-filet)}
#contenu .dt-depliant__corps{padding:var(--dt-s5) var(--dt-pad-carte) var(--dt-pad-carte)}
#contenu .dt-depliants>.dt-depliant--cassette>.dt-depliant__corps{padding-left:calc(var(--dt-pad-carte) + 3rem + var(--dt-s4))}
#contenu .dt-depliant__corps>:first-child{margin-top:0}
#contenu .dt-depliant__corps>:last-child{margin-bottom:0}
#contenu .dt-depliant__corps :is(.wrap,section){width:auto;max-width:none;margin-inline:0;padding:0;border:0;background:none}
#contenu .dt-situations,#contenu .dt-modalites{display:grid;gap:var(--dt-s5)}
#contenu :is(.dt-situations,.dt-modalites) .dt-etiquette{margin:0 0 var(--dt-s2)}
#contenu :is(.dt-situations,.dt-modalites) h2{margin:0;max-width:30ch;font:350 clamp(1.5rem,1.3rem + .6vw,1.75rem)/1.25 var(--serif);letter-spacing:-.01em;color:var(--dt-texte)}
/* Chute sur sa propre ligne, comme .dt-titre (tour 2 : « c’est » restait seul en bout de ligne). */
#contenu :is(.dt-situations,.dt-modalites) h2 em{display:block;font-style:italic;color:var(--dt-or-texte)}
/* Tour 3 : align-items:start, chaque filet or prend la hauteur de SA citation (une citation d'une ligne portait un filet de 56 px). */
#contenu .dt-situations ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dt-s4) var(--dt-gouttiere);align-items:start;margin:0;padding:0;list-style:none}
#contenu .dt-situations li{margin:0;padding:0 0 0 var(--dt-s4);border:0;border-left:2px solid var(--dt-or);font:italic 350 1.125rem/1.55 var(--serif);color:var(--dt-texte)}
#contenu .dt-situations li::before{content:none}
#contenu .dt-modalites ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--dt-gouttiere);margin:0;padding:0;list-style:none}
#contenu .dt-modalites li{position:relative;margin:0;padding:.6rem 0 .6rem 1.25rem;border:0;border-top:1px solid var(--dt-filet);font:400 var(--dt-corps)/1.6 var(--sans);color:var(--dt-texte)}
#contenu .dt-modalites li::before{content:"›";content:"›" / "";position:absolute;left:0;top:.6rem;color:var(--dt-or-texte)}
/* Chaque colonne de modalités se ferme par un filet (tour 2 : en 3 + 2 lignes, les deux colonnes s'arrêtaient sans fermeture). */
#contenu .dt-modalites>ul>li:last-child{border-bottom:1px solid var(--dt-filet)}
@media(min-width:1001px){#contenu .dt-modalites>ul>li:nth-last-child(2){border-bottom:1px solid var(--dt-filet)}}
#contenu .dt-modalites__valeurs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dt-gap-cartes);margin:0;padding:0;border:0}
#contenu .dt-modalites__valeurs>div{min-width:0;padding:var(--dt-s4);background:var(--dt-creme);border-top:2px solid var(--dt-or)}
#contenu .dt-modalites__valeurs .small-label{display:block;margin:0 0 var(--dt-s2);font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu .dt-modalites__valeurs p{margin:0;font:400 var(--dt-petit)/1.65 var(--sans);color:var(--dt-texte-doux)}
/* Recette famille du 22/10 (F38, proposition P3 de la zone programmes) : les trois encarts partagent deux rangées (étiquette, texte) ;
   une étiquette d'une ligne ne fait plus partir son texte 19 px plus haut que ses voisines. Sans effet en une colonne. */
@supports(grid-template-rows:subgrid){#contenu .dt-modalites__valeurs>div{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:var(--dt-s2);align-content:start}#contenu .dt-modalites__valeurs .small-label{margin:0}}
#contenu .dt-encart{margin:0;max-width:65ch;padding:0 0 0 var(--dt-s4);border-left:2px solid var(--dt-or);font:400 .9375rem/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-depliant--utilitaire{border-top:1px solid var(--dt-filet)}
#contenu .dt-depliant--utilitaire>summary{--dt-pastille:2rem;display:grid;grid-template-columns:minmax(0,1fr) var(--dt-pastille);align-items:center;column-gap:var(--dt-s3);min-height:3rem;padding:var(--dt-s3) 0;font:600 .9375rem/1.5 var(--label);color:var(--dt-texte)}
@media(hover:hover) and (pointer:fine){#contenu .dt-depliant--utilitaire>summary:hover{color:var(--dt-or-texte)}}
/* Recette famille du 22/10 (F42) : une carte placée dans le dépliant garde son padding (div.closing-card collée aux bords). */
#contenu .dt-depliant--utilitaire>:not(summary):not([class*=card]){margin:0;padding:0 0 var(--dt-s4)}
#contenu .dt-depliant--utilitaire>[class*=card]{margin:0 0 var(--dt-s4)}
/* Recette famille du 22/10 (F07, F08) : le petit corps doux ne touche plus les formulaires (le message d'erreur reprenait le gris
   doux en 14 px) ni les panneaux marine (texte doux sur marine, environ 1,9:1). Exclusions en :where, spécificité inchangée. */
#contenu .dt-depliant--utilitaire>:is(p,ul,ol),#contenu .dt-depliant--utilitaire>:is(ul,ol)>li{font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-depliant--marine{border-top:1px solid var(--dt-filet-marine)}
#contenu .dt-depliant--marine>summary{display:grid;grid-template-columns:minmax(0,1fr) var(--dt-pastille);align-items:center;column-gap:var(--dt-s4);min-height:3.5rem;padding:var(--dt-s4) 0;font:350 1.25rem/1.35 var(--serif);color:var(--dt-creme)}
#contenu .dt-depliant--marine>:not(summary){margin:0 0 var(--dt-s4);padding:0;background:none;color:var(--dt-texte-sur-marine)}
#contenu .dt-depliant--marine :is(p,li){color:var(--dt-texte-sur-marine)}
@media(max-width:1000px){#contenu :is(.dt-situations,.dt-modalites) ul{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){
 #contenu .dt-depliant--cassette>summary{padding:var(--dt-s4) 1.25rem;font-size:var(--dt-h3-s)}
 #contenu .dt-depliants>.dt-depliant--cassette>summary{grid-template-columns:2.25rem minmax(0,1fr) var(--dt-pastille);column-gap:var(--dt-s3)}
 #contenu .dt-depliant__corps,#contenu .dt-depliants>.dt-depliant--cassette>.dt-depliant__corps{padding:var(--dt-s5) 1.25rem 1.25rem}
 #contenu .dt-modalites__valeurs{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:400px){
 #contenu .dt-depliants>.dt-depliant--cassette>summary{grid-template-columns:minmax(0,1fr) var(--dt-pastille);row-gap:var(--dt-s1)}
 #contenu .dt-depliants>.dt-depliant--cassette>summary::before{grid-column:1/-1}
}

/* 8 · dt-decision et dt-billet : « Le premier pas ». Grille signature 1,35 / 0,85 du héros : le billet tombe sous le carré (911 px à 1440). */
#contenu .dt-decision{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);column-gap:var(--dt-gap-signature);align-items:stretch;margin-top:var(--dt-section);padding:0;background:var(--dt-marine);color:var(--dt-creme);border:0;border-radius:0}
#contenu .dt-decision__texte{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--dt-s4);min-width:0;padding:var(--dt-pad-panneau) 0 var(--dt-pad-panneau) var(--dt-pad-panneau)}
#contenu .dt-decision__texte>*{margin:0}
#contenu .dt-decision .dt-titre{max-width:20ch;hyphens:none}
#contenu .dt-decision__texte>p{max-width:54ch;font:400 var(--dt-chapeau)/1.7 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu .dt-decision__lien{grid-column:1;grid-row:2;align-self:start;justify-self:start;margin:0 0 var(--dt-pad-panneau) var(--dt-pad-panneau);padding-block:.625rem;color:var(--dt-creme);text-decoration:underline 1px var(--dt-or-clair);text-underline-offset:.3em}
#contenu .dt-decision:has(>.dt-decision__lien) .dt-decision__texte{padding-bottom:var(--dt-s4)}
/* Sans lien de décision, le texte occupe les deux rangées du billet : il est réellement centré en hauteur (recette du pilote).
   Recette famille du 22/10 (F34, solution de la campagne) : avec un lien, le texte se cale en bas de sa rangée et le lien en haut de
   la sienne ; un billet plus haut répartit son excédent à parts égales entre les deux rangées, le bloc texte et lien est donc centré
   face au billet (le lien restait collé en haut d'une rangée étirée, au-dessus de 130 à 190 px de marine vide).
   Conditions en :where : la pile à texte agrandi (fin de section 14) reprend la main sans surenchère de spécificité. */
@media(min-width:1001px){
 #contenu .dt-decision:where(:not(:has(>.dt-decision__lien)))>.dt-decision__texte{grid-row:1/span 2}
 #contenu .dt-decision:where(:has(>.dt-decision__lien))>.dt-decision__texte{align-self:end}
}
#contenu .dt-billet{grid-column:2;grid-row:1/span 2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--dt-s4);min-width:0;padding:clamp(1.75rem,1rem + 2vw,2.75rem) clamp(1.25rem,.5rem + 1.5vw,2.5rem);background:var(--dt-marine-eleve);border:0;text-align:center}
#contenu .dt-billet>*{margin:0;max-width:100%}
#contenu .dt-billet__art{order:1;display:block;width:6rem;height:6rem;object-fit:contain;opacity:1;filter:brightness(1.45)}
/* Recette famille du 22/10 (F32) : emblème à 6 rem au bureau (4,5 rem en bande tablette et en mobile), comme la boussole du pilote ;
   à 4,5 rem le taureau ne mesurait que 45 px de haut dans un billet de marine vide. */
#contenu .dt-billet__art--embleme{width:6rem;height:auto;aspect-ratio:390/309;filter:none}
#contenu .dt-billet__kicker{order:2;display:block;font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-sur-marine)}
#contenu .dt-billet__titre{order:2;font:350 1.375rem/1.3 var(--serif);color:var(--dt-creme)}
#contenu .dt-billet__texte{order:2;max-width:34ch;padding:0;font:400 .9375rem/1.65 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu .dt-billet__prix{order:3;max-width:30ch;text-wrap:balance;padding:0;font:400 var(--dt-petit)/1.6 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu .dt-billet__prix strong{display:block;margin:0 0 var(--dt-s1);font:350 var(--dt-prix)/1.1 var(--serif);letter-spacing:-.02em;color:var(--dt-creme)}
#contenu .dt-billet .dt-sep{display:none}
#contenu .dt-billet>.button,#contenu .dt-billet .first-step-meta>.button{order:4;width:fit-content;min-width:0;max-width:100%;margin:0;gap:1rem;padding-inline:1.5rem;justify-content:center}
/* Tour 2 : dès 701 px, le bouton du billet a la forme du bouton du héros (pastille compacte de 234 px, libellé et flèche centrés),
   centré sous le prix au bureau, calé sur la colonne de lecture en tablette ; pleine largeur sur mobile, comme le héros. */
@media(min-width:701px){#contenu .dt-billet>.button,#contenu .dt-billet .first-step-meta>.button{width:auto;min-width:0;max-width:100%;justify-content:center}}
#contenu .dt-billet__note{order:5;max-width:34ch;padding:0;border:0;background:none;font:400 var(--dt-legende)/1.6 var(--sans);color:var(--dt-texte-sur-marine)}
/* Variante (F33) : note de plusieurs phrases, sur toute la largeur utile et alignée à gauche (inerte tant qu'une page ne la pose pas). */
#contenu .dt-billet__note--longue{max-width:none;text-align:left}
#contenu .dt-billet__liens{order:6;padding:0;font:400 var(--dt-legende)/1.6 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu .dt-billet :is(.dt-billet__note,.dt-billet__liens) a{color:var(--dt-creme);text-decoration:underline 1px var(--dt-or-clair);text-underline-offset:.25em}
#contenu .dt-billet .first-step-meta{display:contents}
#contenu .dt-billet .first-step-meta>span{order:3;display:flex;flex-direction:column;align-items:center;gap:var(--dt-s1)}
#contenu .dt-billet .first-step-meta strong{font:350 var(--dt-prix)/1.1 var(--serif);letter-spacing:-.02em;color:var(--dt-creme)}
#contenu .dt-billet .first-step-meta small{font:400 var(--dt-legende)/1.5 var(--sans);color:var(--dt-texte-sur-marine)}
/* Recette famille du 22/10 (F34, solution de la campagne) : sous 1001 px, le lien suit le billet, comme dans le DOM (ordre visuel =
   ordre clavier), et en devient le pied : même fond élevé, filet marine au-dessus. Le panneau se lit en deux aplats au lieu de trois. */
@media(max-width:1000px){
 #contenu .dt-decision{grid-template-columns:minmax(0,1fr)}
 #contenu .dt-decision__texte{grid-row:1;padding:var(--dt-pad-panneau) var(--dt-pad-panneau) var(--dt-s5)}
 #contenu .dt-billet{grid-column:1;grid-row:2}
 #contenu .dt-decision__lien{grid-row:3;justify-self:stretch;margin:0;padding:var(--dt-s3) var(--dt-pad-panneau) var(--dt-s5);background:var(--dt-marine-eleve);border-top:1px solid var(--dt-filet-marine)}
 #contenu .dt-decision__lien:focus-visible{outline-offset:-4px}
}
@media(max-width:700px){
 #contenu .dt-decision__lien{justify-content:center;padding-inline:1.25rem;text-align:center}
 /* F35 : lignes équilibrées pour le paragraphe de décision (« pretty » laissait « Ce cadrage payant » court au cœur du bloc). */
 #contenu .dt-decision__texte>p{text-wrap:balance}
}
/* Tablette · billet en trois colonnes (spec 5.1) : gravure | prix | bouton, notes et liens dessous sur les colonnes 2 et 3.
   Tour 3 : la version à deux colonnes laissait 180 à 330 px vides à droite du panneau. Le bouton occupe la colonne 3 sur les
   quatre premières rangées (centré sur le prix, ou sur le kicker, le titre, le texte et le prix d'un autre billet) ; les notes
   se placent après. Écart porté par les éléments (pas de row-gap) : les rangées vides ne creusent aucun blanc. */
@media(min-width:701px) and (max-width:1000px){
 #contenu .dt-billet{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;align-content:center;justify-items:start;column-gap:var(--dt-s5);row-gap:0;padding:var(--dt-s5) var(--dt-pad-panneau);text-align:left}
 #contenu .dt-billet__art{grid-column:1;grid-row:1/span 7;width:5rem;height:5rem}
 #contenu .dt-billet__art--embleme{width:4.5rem;height:auto}
 #contenu .dt-billet>:not(.dt-billet__art),#contenu .dt-billet .first-step-meta>*{grid-column:2;margin-block:.5rem}
 #contenu .dt-billet>:is(.dt-billet__note,.dt-billet__liens){grid-column:2/span 2}
 #contenu .dt-billet>.first-step-meta{margin:0}
 #contenu .dt-billet .first-step-meta>span{align-items:flex-start}
 #contenu .dt-billet :is(.dt-billet__prix,.dt-billet__texte){max-width:none;text-wrap:pretty}
 #contenu .dt-billet__note{max-width:72ch}
}
/* Recette famille du 22/10 (F02, F31, proposition P1 de la zone programmes). Trois colonnes gravure | prix | bouton seulement si le
   panneau de décision a la place (40 rem : 44 rem à 768 px au texte normal ; 35,2 rem à 125 %, 29,3 rem à 150 %). À texte agrandi,
   la colonne du prix tombait à 76 puis 0 px et le bouton recouvrait « sans obligation de souscrire » (WCAG 1.4.4). Sinon le bouton
   s'empile sous le prix, sur le bord gauche des notes. Billet sans prix : la note prend la place du prix, sur une seule rangée.
   La pile prime sur un placement de rangée posé par une zone (#contenu#contenu) : elle ne joue qu'à texte agrandi. */
@media(min-width:701px) and (max-width:1000px){
 @container dt-decision (min-width:40rem){
  #contenu .dt-billet>.button,#contenu .dt-billet .first-step-meta>.button{grid-column:3;grid-row:1/span 4;justify-self:end;align-self:center}
  #contenu .dt-billet--sans-prix>.dt-billet__note{grid-column:2;grid-row:1/span 4;align-self:center}
 }
 @container dt-decision (max-width:39.99rem){
  #contenu#contenu .dt-billet>.button,#contenu#contenu .dt-billet .first-step-meta>.button{grid-column:2/span 2;grid-row:auto;justify-self:start;align-self:center}
 }
}
@media(max-width:700px){
 #contenu .dt-billet{padding:var(--dt-s5) 1.25rem}
 #contenu .dt-billet__art{width:4.5rem;height:4.5rem}
 #contenu .dt-billet__art--embleme{width:4.5rem;height:auto}
}

/* 9 · dt-carte : primitive de carte (autres programmes, phases, cassettes horizontales, cartes-liens) */
#contenu .dt-carte{position:relative;display:flex;flex-direction:column;gap:var(--dt-s3);min-width:0;margin:0;padding:var(--dt-pad-carte);background:var(--dt-papier);border:1px solid var(--dt-filet);border-radius:2px;color:var(--dt-texte);text-decoration:none;overflow:hidden}
#contenu a.dt-carte{transition:border-color var(--dt-duree) var(--dt-courbe),background-color var(--dt-duree) var(--dt-courbe)}
#contenu .dt-carte__bandeau{position:relative;display:flex;align-items:center;justify-content:center;flex:none;min-height:8.5rem;margin:calc(-1 * var(--dt-pad-carte)) calc(-1 * var(--dt-pad-carte)) var(--dt-s2);padding:var(--dt-s4);background:var(--dt-marine);color:var(--dt-or-sur-marine)}
#contenu .dt-carte__bandeau img{display:block;width:6rem;height:6rem;object-fit:contain;opacity:1;filter:brightness(1.45)}
#contenu .dt-carte__bandeau--sable{background:var(--dt-sable);color:var(--dt-or-texte-sable)}
#contenu .dt-carte__bandeau--sable img{filter:none}
#contenu .dt-carte__bandeau[data-index]::before{content:attr(data-index);content:attr(data-index) / "";position:absolute;top:.625rem;left:.875rem;font:600 var(--dt-etiquette)/1.5 var(--label);letter-spacing:.08em}
#contenu .dt-carte .dt-etiquette{margin:0}
#contenu .dt-carte__titre{display:block;margin:0;font:350 var(--dt-h3)/1.28 var(--serif);letter-spacing:-.02em;color:var(--dt-texte);text-wrap:balance;transition:color var(--dt-duree) var(--dt-courbe)}
#contenu .dt-carte__texte{display:block;margin:0;padding:0;font:400 var(--dt-petit)/1.65 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-carte__pied{display:flex;align-items:center;justify-content:space-between;gap:var(--dt-s3);min-height:2.75rem;margin-top:auto;padding-top:var(--dt-s3);border-top:1px solid var(--dt-filet);font:600 var(--dt-petit)/1.5 var(--label);color:var(--dt-marine)}
#contenu .dt-carte__pied--fleche{justify-content:flex-end}
#contenu .dt-carte :is(.dt-carte__pied,.dt-carte__prix,.dt-carte__fleche) .action-arrow{width:var(--action-icon-size);height:var(--action-icon-size);flex:none}
#contenu a.dt-carte:focus-visible{outline:2px solid var(--dt-focus);outline-offset:3px}
/* Tour 3 : dans une piste (ou une rangée qui peut le redevenir), l'anneau intérieur à -3 px était peint SOUS le bandeau gravé
   (position:relative, fond plein) et ne cernait que la zone du nom. Il passe sur un calque ::after au-dessus de toute la carte :
   or foncé 2 px doublé d'un liseré crème de 2 px (lisible sur les bandeaux marine) ; la bordure reste en couleurs forcées.
   isolation : les z-index internes (flèche, calque) restent dans la carte. */
#contenu a.dt-carte{isolation:isolate}
#contenu :is(.dt-defile,.is-slider) a.dt-carte:focus-visible{outline:0}
#contenu :is(.dt-defile,.is-slider) a.dt-carte:focus-visible::after{content:"";position:absolute;inset:0;z-index:3;border:2px solid var(--dt-focus);border-radius:inherit;box-shadow:inset 0 0 0 2px var(--dt-creme);pointer-events:none}
@media(hover:hover) and (pointer:fine){
 #contenu a.dt-carte:hover{border-color:var(--dt-or);background:var(--dt-survol-carte)}
 #contenu a.dt-carte:hover .dt-carte__titre{color:var(--dt-or-texte)}
}
/* Autres programmes : cinq cartes gravées, nom seul (garde), numéro par data-index, couleur fixe par programme */
#contenu .dt-autres__titre{display:block;margin:0 0 var(--dt-s5);font:350 var(--dt-h3)/1.28 var(--serif);letter-spacing:-.02em;color:var(--dt-texte)}
#contenu .dt-autres__piste{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--dt-gap-cartes);margin:0;padding:0}
/* Tour 3 : chaque carte est un conteneur ; le nom ne dépasse jamais 1/8,6 de la largeur utile (« MSB Redressement », lié par une
   espace insécable, mesure 8,4 em ; « l’accompagnement » 8,35 em). Sans effet au texte normal (le plafond y vaut 18 px au moins),
   il évite qu’un nom soit coupé ou rogné quand le texte est agrandi. */
#contenu .dt-autre{--dt-autre-titre:var(--dt-h3-s);container:dt-autre/inline-size}
#contenu .dt-autre .dt-carte__titre{font-size:min(var(--dt-autre-titre),calc(100cqi / 8.6))}
/* Pilote (recette du 21/10) : carte compacte, sans filet ni pied vide. La flèche passe dans l'angle haut droit du bandeau,
   en miroir du numéro ; le nom garde toute la largeur (« MSB Redressement » se coupait en plein mot dans la rangée de 5). */
#contenu .dt-autre{--dt-pad-carte:1.25rem;gap:0;padding-bottom:0}
#contenu .dt-autre>.dt-carte__bandeau{margin-bottom:0}
/* Tour 2 : zone du nom à marges égales (haut = bas = marge de carte), nom centré en hauteur. Dans une rangée où un nom
   passe sur deux lignes (« Tout l’accompagnement » au-delà de 1200 px), les noms d'une ligne restent sur le même axe. */
/* Tour 3 : flex en colonne (et non en ligne) : le texte reste un bloc à la largeur de la carte et passe à la ligne ; en ligne,
   son élément anonyme gardait la largeur du mot le plus long et le nom était rogné à texte agrandi (« MSB Redresse… »). */
#contenu .dt-autre>.dt-carte__titre{flex:1 0 auto;display:flex;flex-direction:column;justify-content:center;padding-block:var(--dt-pad-carte)}
#contenu .dt-autre>.dt-carte__bandeau[data-index]::before{top:.875rem;left:var(--dt-pad-carte)}
#contenu .dt-autre>.dt-carte__pied--fleche{position:absolute;top:calc(.875rem + 1px);right:var(--dt-pad-carte);z-index:1;display:block;min-height:0;margin:0;padding:0;border:0;line-height:0;color:var(--dt-or-sur-marine)}
#contenu .dt-autre>.dt-carte__bandeau--sable~.dt-carte__pied--fleche{color:var(--dt-or-texte-sable)}
/* Rangée de 5 (≥ 1201 px) : marge de 1 rem et nom à 17 px. Tour 3 : « Tout l’accompagnement » (181 px à 17 px) tient ainsi
   sur une ligne dès 1330 px (192 px utiles à 1440, 189 à 1366) ; de 1201 à 1329 px il passe sur deux lignes, centrées
   avec les quatre autres noms. La zone du nom garde 1,25 rem au-dessus et au-dessous. */
@media(min-width:1201px){
 #contenu .dt-autre{--dt-pad-carte:1rem}
 #contenu .dt-autre{--dt-autre-titre:1.0625rem}
 #contenu .dt-autre .dt-carte__titre{line-height:1.3}
 #contenu .dt-autre>.dt-carte__titre{padding-block:1.25rem}
}
/* Texte agrandi : sous 64,5 rem de conteneur, la rangée de 5 rognait les noms ; elle devient la piste (et sous 50 rem une grille, voir la fin de la section 13). */
#contenu .dt-autres{container:dt-autres/inline-size}
@container dt-autres (max-width:64.49rem){
 #contenu .dt-autres__piste{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:max(12rem,calc((100% - var(--dt-gap-cartes)) / 2));overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:4px calc(20% + 4px);margin:0 -4px;padding:4px calc(20% + 4px + .6 * var(--dt-gap-cartes)) var(--dt-s4) 4px;scrollbar-width:thin;scrollbar-color:var(--dt-or) transparent;align-items:stretch}
 #contenu .dt-autres__piste>*{scroll-snap-align:start}
}
/* Cassette horizontale : bandeau carré | corps | prix (accueil, contact) */
#contenu .dt-carte--horizontale{display:grid;grid-template-columns:7rem minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:var(--dt-s5);row-gap:var(--dt-s2);padding:var(--dt-s4)}
#contenu .dt-carte--horizontale>.dt-carte__bandeau{grid-column:1;grid-row:1/span 2;align-self:stretch;min-height:6rem;margin:0;padding:var(--dt-s3)}
#contenu .dt-carte--horizontale>.dt-carte__bandeau img{width:4.5rem;height:4.5rem}
#contenu .dt-carte--horizontale>.dt-carte__bandeau[data-index]::before{top:.375rem;left:.5rem;font-size:var(--dt-inscription)}
#contenu .dt-carte--horizontale>:not(.dt-carte__bandeau){grid-column:2;min-width:0}
#contenu .dt-carte--horizontale>.dt-carte__corps{align-self:end}
#contenu .dt-carte--horizontale>:not(.dt-carte__bandeau):not(.dt-carte__corps){align-self:start}
#contenu .dt-carte__corps{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s1);min-width:0}
#contenu .dt-carte__corps>*{margin:0}
#contenu .dt-carte--horizontale .dt-carte__titre{font-size:var(--dt-h3-s)}
#contenu .dt-carte__prix{display:block;max-width:none;margin:0;text-align:left;font:350 clamp(1.125rem,1rem + .4vw,1.375rem)/1.3 var(--serif);color:var(--dt-texte)}
#contenu .dt-carte__prix .action-arrow{display:inline-block;margin-left:var(--dt-s3);vertical-align:-.1em}
#contenu .dt-carte__prix small{display:block;font:400 var(--dt-legende)/1.5 var(--sans);color:var(--dt-texte-doux)}
/* Variante large (pleine largeur, accueil) : prix à droite sur la ligne du nom.
   Recette famille du 22/10 (F47) : dès 701 px (et non plus 1101) ; à 768 et 1024 px, le prix tombait sous le texte et laissait 60 %
   de la cassette vide. Spécificité relevée : « …>:not(.dt-carte__bandeau):not(.dt-carte__corps){align-self:start} » calait le prix en haut.
   (F45, F17) Bandeau carré de 7 rem centré sur la hauteur (il devenait une colonne de 112 × 164 px quand le prix passait dessous) ;
   la ligne du numéro est réservée au-dessus de la gravure (« 04 / » chevauchait l'aile du phénix, « 05 / » la couronne). */
@media(min-width:701px){
 #contenu .dt-carte--horizontale.dt-carte--large{grid-template-columns:7rem minmax(0,1fr) auto;grid-template-rows:auto}
 #contenu .dt-carte--horizontale.dt-carte--large>.dt-carte__bandeau{grid-row:1;align-self:center;aspect-ratio:1;min-height:0}
 #contenu .dt-carte--horizontale.dt-carte--large>.dt-carte__bandeau[data-index]{padding:calc(.375rem + 1.5 * var(--dt-inscription) + var(--dt-s1)) var(--dt-s3) var(--dt-s3)}
 #contenu .dt-carte--horizontale.dt-carte--large>.dt-carte__corps{align-self:center}
 #contenu .dt-carte--horizontale.dt-carte--large>.dt-carte__prix{grid-column:3;grid-row:1;align-self:center;justify-self:end;text-align:left;white-space:nowrap}
}
@media(max-width:700px){
 #contenu .dt-carte--horizontale{grid-template-columns:5rem minmax(0,1fr);column-gap:var(--dt-s4)}
 #contenu .dt-carte--horizontale>.dt-carte__bandeau{min-height:5rem}
 #contenu .dt-carte--horizontale>.dt-carte__bandeau img{width:3.5rem;height:3.5rem}
 /* F46 : formats ponctuels en liste (accueil), bandeau de 6 rem et gravure de 4,5 rem (sablier et couronne vers 20 × 55 px). */
 #contenu .dt-offres__liste>li>.dt-carte--horizontale{grid-template-columns:6rem minmax(0,1fr)}
 #contenu .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__bandeau{min-height:6rem}
 #contenu .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__bandeau img{width:4.5rem;height:4.5rem}
 #contenu :is(.dt-defile,.is-slider)>.dt-carte--horizontale{display:flex;flex-direction:column;align-items:stretch;padding:var(--dt-pad-carte)}
 /* F03 : dans la colonne souple de la piste, les alignements de grille (corps en bas, prix en haut) devenaient horizontaux : filet du
    prix sur 135 à 160 px, corps poussé à droite. Chaque bloc prend la largeur de la carte. */
 #contenu :is(.dt-defile,.is-slider)>.dt-carte.dt-carte--horizontale>*{align-self:stretch}
 #contenu :is(.dt-defile,.is-slider)>.dt-carte--horizontale>.dt-carte__bandeau{min-height:8.5rem;margin:calc(-1 * var(--dt-pad-carte)) calc(-1 * var(--dt-pad-carte)) var(--dt-s3)}
 #contenu :is(.dt-defile,.is-slider)>.dt-carte--horizontale>.dt-carte__bandeau img{width:6rem;height:6rem}
 #contenu :is(.dt-defile,.is-slider)>.dt-carte--horizontale>.dt-carte__bandeau[data-index]::before{top:.625rem;left:.875rem;font-size:var(--dt-etiquette)}
 #contenu :is(.dt-defile,.is-slider)>.dt-carte--horizontale>.dt-carte__prix{margin-top:auto;padding-top:var(--dt-s3);border-top:1px solid var(--dt-filet)}
}
/* F03 : de 600 à 700 px, une diapositive de 541 px paraissait vide ; deux cartes et une amorce de la troisième (environ 34 rem de piste). */
@media(min-width:600px) and (max-width:700px){#contenu .dt-defile:has(>.dt-carte--horizontale){grid-auto-columns:min(84%,max(15rem,calc((100% - var(--dt-gap-cartes)) / 2.3)))}}
/* Recette famille du 22/10 (F16) · texte agrandi : la colonne de texte (carte moins 5 rem de bandeau) tombait à 94-126 px et le contenu
   était rogné (« MSB Direction Day », prix coupés en plein mot). La carte devient conteneur ; sous 17 rem (18 rem au moins au texte
   normal, à 320 px), hors piste, ses blocs s'empilent sur toute la largeur, bandeau en tête. Sous 13 rem (une carte de piste mesure
   15,5 rem au texte normal à 320 px), noms plafonnés en cqi et césure française. Inerte au texte normal. */
#contenu .dt-carte--horizontale{container:dt-horiz/inline-size}
@container dt-horiz (max-width:17rem){
 #contenu :not(.dt-defile):not(.is-slider)>.dt-carte--horizontale>*{grid-column:1/-1}
 #contenu :not(.dt-defile):not(.is-slider)>.dt-carte--horizontale>.dt-carte__bandeau{grid-row:auto;min-height:6rem}
 #contenu :not(.dt-defile):not(.is-slider)>.dt-carte--horizontale>:not(.dt-carte__bandeau){align-self:start}
}
@container dt-horiz (max-width:13rem){
 #contenu .dt-carte--horizontale :is(.dt-etiquette,.dt-carte__titre,.dt-carte__texte,.dt-carte__corps>p){hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:break-word}
 #contenu .dt-carte--horizontale .dt-carte__titre{font-size:min(var(--dt-h3-s),calc(100cqi / 7.6))}
 #contenu .dt-carte--horizontale>.dt-carte__prix{font-size:min(clamp(1.125rem,1rem + .4vw,1.375rem),calc(100cqi / 5))}
}
/* Carte en ligne : titre et sous-texte à gauche, flèche à droite (linktree, 404).
   Recette famille du 22/10 (F48) : la flèche, sur quatre rangées implicites, en créait les écarts et remontait le texte de 5 à 6 px au-dessus
   du centre. Elle sort du flux, centrée sur la hauteur de la carte ; le texte, seul dans la grille, est centré lui aussi. */
#contenu .dt-carte--ligne{display:grid;grid-template-columns:minmax(0,1fr);align-content:center;row-gap:var(--dt-s1);padding:var(--dt-s4) calc(var(--dt-s5) + 2.25rem + var(--dt-s4)) var(--dt-s4) var(--dt-s5)}
#contenu .dt-carte--ligne>:not(.dt-carte__fleche){grid-column:1}
#contenu .dt-carte__fleche{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--dt-or);border-radius:50%;color:var(--dt-marine)}
#contenu .dt-carte--ligne>.dt-carte__fleche{position:absolute;top:50%;right:var(--dt-s5);margin-top:-1.125rem}
#contenu .dt-carte--ligne .dt-carte__titre{font-size:var(--dt-h3-s)}
/* Grille de cartes-liens (404, linktree, postes, phases de campagne) */
#contenu .dt-cartes-liens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--dt-gouttiere);row-gap:var(--dt-gap-cartes);margin:0;padding:0;list-style:none}
#contenu .dt-cartes-liens--cinq{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--dt-gap-cartes)}
#contenu .dt-cartes-liens>li{display:flex;min-width:0;margin:0;padding:0}
#contenu .dt-cartes-liens>li>.dt-carte{flex:1}
#contenu .dt-carte--lien{min-height:44px}
#contenu .dt-carte--marine{background:var(--dt-marine);border-color:var(--dt-marine);color:var(--dt-creme)}
#contenu .dt-carte--marine :is(.dt-carte__titre,.dt-carte__pied,.dt-carte__fleche){color:var(--dt-creme)}
#contenu .dt-carte--marine .dt-carte__texte{color:var(--dt-texte-sur-marine)}
#contenu .dt-carte--marine :is(.dt-carte__pied,.dt-carte__fleche){border-color:var(--dt-filet-marine)}
@media(hover:hover) and (pointer:fine){
 #contenu a.dt-carte--marine:hover{background:var(--dt-marine-eleve);border-color:var(--dt-or-clair)}
 #contenu a.dt-carte--marine:hover .dt-carte__titre{color:var(--dt-or-sur-marine)}
}
/* Carte pleine (« L'autre poste ouvert »). Recette famille du 22/10 (F23, solution de la zone secondaires) : au bureau, le texte et le
   lien partent de l'axe éditorial (765 px à 1440, 557 à 1024) : la première colonne vaut la moitié de la zone utile moins la
   demi-gouttière ; les trois colonnes partagent la ligne de base de leur dernière ligne. Sous 1001 px, carte empilée (titre, texte,
   pied à filet), comme les cartes de postes. */
#contenu .dt-carte--pleine{grid-column:1/-1}
@media(min-width:1001px){
 #contenu .dt-carte--pleine{display:grid;grid-template-columns:calc(50% - var(--dt-gouttiere) / 2) minmax(0,1fr) auto;align-items:last baseline;column-gap:var(--dt-gouttiere)}
 #contenu .dt-carte--pleine>.dt-carte__pied{margin:0;padding:0;border:0;align-items:baseline}
}
@media(max-width:700px){#contenu .dt-cartes-liens:not(.dt-defile){grid-template-columns:minmax(0,1fr)}}
/* Bloc d'achat : carte Entretien à gauche, formats ponctuels à droite (accueil, contact) */
#contenu .dt-offres{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-gap-cartes);align-items:stretch;container:dt-offres/inline-size}
#contenu .dt-offre--principale{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s4);min-width:0;margin:0;padding:var(--dt-pad-panneau);background:var(--dt-papier);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or)}
#contenu .dt-offre--principale>*{margin:0}
#contenu .dt-offre--principale .dt-titre{max-width:16ch}
#contenu .dt-offre__texte{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s4)}
#contenu .dt-offre__texte>*{margin:0}
/* F43 : le cadre de la prestation (dépliant utilitaire) garde son petit corps (16 px/1,75 l'emportait). */
#contenu .dt-offre--principale p:not(.small):not(.booking-notice):not(.dt-offre__prix):not(.dt-depliant *){max-width:56ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-offre__achat{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--dt-s4) var(--dt-s5);width:100%;margin:var(--dt-s2) 0 0;padding:var(--dt-s4) 0 0;border-top:1px solid var(--dt-filet)}
#contenu .dt-offre__achat>span{display:flex;flex-direction:column;gap:var(--dt-s1)}
#contenu .dt-offre__achat strong,#contenu .dt-offre__prix{display:block;margin:0;font:350 var(--dt-prix)/1.1 var(--serif);letter-spacing:-.02em;color:var(--dt-marine);white-space:nowrap}
#contenu .dt-offre__achat small{display:block;font:400 var(--dt-petit)/1.6 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-offre__achat--colonne{flex-direction:column;flex-wrap:nowrap;align-items:flex-start;justify-content:flex-start;gap:var(--dt-s3)}
/* F44 : la ligne de prix garde le Fraunces du prix (la règle des paragraphes de la colonne la passait en Manrope 14 px). */
#contenu .dt-offre__achat--colonne>p:not(.dt-offre__prix){margin:0;font:400 var(--dt-petit)/1.6 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-offre__achat--colonne>.button{width:100%;justify-content:space-between}
#contenu .dt-offres__autres{display:flex;flex-direction:column;gap:var(--dt-s4);min-width:0;margin:0;padding:0}
#contenu .dt-offres__autres>.dt-etiquette{margin:0}
#contenu .dt-offres__liste{display:grid;grid-auto-rows:1fr;gap:var(--dt-gap-cartes);flex:1;margin:0;padding:0;list-style:none}
#contenu .dt-offres__liste>li{display:flex;margin:0;padding:0}
/* F19 : base de flex à la hauteur du contenu ; la carte la plus haute n'est plus rognée (« Le détail de MSB Express »). */
#contenu .dt-offres__liste>li>.dt-carte,#contenu .dt-offres__autres>.dt-carte{flex:1 0 auto}
/* F18 : cadre ouvert, les formats gardent leur hauteur au lieu de s'étirer sur celle de l'Entretien (bandeaux de 260 px vides). */
#contenu .dt-offres:has(.dt-depliant[open]) .dt-offres__liste{flex:0 1 auto;grid-auto-rows:auto;align-content:start}
/* F18 : au bureau, une colonne explicite (la colonne implicite prenait la largeur d'un nom insécable, 3 px de débordement à 200 %). */
@media(min-width:1001px){#contenu .dt-offres__liste{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1000px){
 #contenu .dt-offres{grid-template-columns:minmax(0,1fr)}
 #contenu .dt-offres__liste{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--dt-gouttiere)}
}
/* F18 : en une colonne, chaque cassette à sa hauteur (la plus courte gardait 17 à 153 px de papier vide sous ses actions). */
@media(max-width:700px){#contenu .dt-offres__liste{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}}
/* Recette famille du 22/10 (F20) · texte à 200 % à 320 px : la colonne de l'Entretien tombait à 190 px pour un titre de 60 px
   (« commence » à x 340) et « 500 € HT » (insécable) sortait de la page. Sous 17 rem de bloc (18 rem au moins au texte normal) :
   retrait réduit, titre et prix plafonnés en cqi (le mot le plus long, 4,5 em ; le prix, 3,9 em), césure du titre. */
@container dt-offres (max-width:17rem){
 #contenu .dt-offre--principale{padding:var(--dt-s4)}
 #contenu .dt-offre--principale .dt-titre{font-size:min(var(--dt-h2),calc((100cqi - 2rem) / 5));hyphens:auto;hyphenate-limit-chars:8 4 3}
 #contenu :is(.dt-offre__achat strong,.dt-offre__prix){font-size:min(var(--dt-prix),calc((100cqi - 2rem) / 4.7))}
}

/* 10 · dt-insight : cassette d'article compacte, entièrement cliquable par le summary existant (Insights, accueil) */
#contenu .dt-insights-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dt-gap-cartes);margin:0;padding:0}
#contenu .dt-insight{position:relative;display:flex;flex-direction:column;min-width:0;margin:0;padding:0;background:var(--dt-papier);border:1px solid var(--dt-filet);border-radius:2px;overflow:hidden;color:var(--dt-texte);text-decoration:none;transition:border-color var(--dt-duree) var(--dt-courbe)}
#contenu .dt-insight__couverture{display:block;margin:0}
#contenu .dt-insight .insight-cover{container-type:inline-size;width:100%;height:auto;aspect-ratio:16/9;margin:0}
@container (max-width:16rem){.dt-insight .insight-cover :is(.cover-index,.cover-rule,.cover-signature){display:none}}
#contenu .dt-insight__texte{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s3);flex:1;min-width:0;padding:var(--dt-pad-carte)}
#contenu .dt-insight__texte>*{margin:0}
#contenu .dt-insight__texte .dt-etiquette{margin:0}
#contenu .dt-insight__titre{margin:0;font:350 clamp(1.25rem,1.1rem + .4vw,1.5rem)/1.3 var(--serif);letter-spacing:-.02em;color:var(--dt-texte);text-wrap:balance;transition:color var(--dt-duree) var(--dt-courbe)}
#contenu .dt-insight__texte>p{font:400 .9375rem/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-insight__pied{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--dt-s3);width:100%;margin-top:auto;padding-top:var(--dt-s3);border-top:1px solid var(--dt-filet);font:600 var(--dt-petit)/1.5 var(--label);color:var(--dt-marine)}
#contenu .dt-insight .article-lecture{margin:0;padding:0;border:0;background:none}
#contenu .dt-insight .article-lecture>summary{display:inline-flex;align-items:center;gap:var(--dt-s2);min-height:44px;margin:0;padding:0;list-style:none;cursor:pointer;font:600 var(--dt-petit)/1.5 var(--label);color:var(--dt-marine);text-decoration:none;background:none;border:0}
#contenu .dt-insight .article-lecture>summary::-webkit-details-marker{display:none}
#contenu .dt-insight .article-lecture>summary::after{content:none}
#contenu .dt-insight .article-lecture>summary .action-arrow{width:var(--action-icon-size);height:var(--action-icon-size)}
#contenu .dt-insight .publication-state{margin:0;padding:0;border:0;background:none;font:400 var(--dt-legende)/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--dt-texte-doux);white-space:nowrap}
#contenu .dt-insight .article-lecture:not([open])>summary::before{content:"";position:absolute;inset:0;z-index:1}
@supports selector(:has(*)){
 #contenu .dt-insight:has(summary:focus-visible){outline:2px solid var(--dt-focus);outline-offset:3px}
 #contenu .dt-insight summary:focus-visible{outline:0}
}
@media(hover:hover) and (pointer:fine){
 #contenu .dt-insight:not(.dt-insight--a-paraitre):hover{border-color:var(--dt-or)}
 #contenu .dt-insight:not(.dt-insight--a-paraitre):hover .dt-insight__titre{color:var(--dt-or-texte)}
}
#contenu .dt-insights-grille>.dt-insight:has(.article-lecture[open]){grid-column:1/-1}
#contenu .dt-insight .article-lecture[open]{flex-basis:100%;width:100%}
#contenu .dt-insight--a-paraitre{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s2);padding:var(--dt-s4)}
#contenu .dt-insight--a-paraitre>.insight-cover{flex:none;width:3.5rem;height:3.5rem;aspect-ratio:1;margin:0 0 var(--dt-s2)}
@media(max-width:1200px){
 #contenu .dt-insight--a-paraitre{display:grid;grid-template-columns:4rem minmax(0,1fr);column-gap:var(--dt-s4);row-gap:var(--dt-s2);align-content:start}
 #contenu .dt-insight--a-paraitre>.insight-cover{grid-row:1/span 4;width:4rem;height:4rem;margin:0}
 #contenu .dt-insight--a-paraitre .dt-insight__texte>*{grid-column:2}
}
#contenu .dt-insight--a-paraitre .insight-cover :is(.cover-index,.cover-rule,.cover-signature){display:none}
#contenu .dt-insight--a-paraitre .dt-insight__texte{display:contents}
#contenu .dt-insight--a-paraitre .dt-insight__titre{font-size:1.125rem}
#contenu .dt-insight--a-paraitre .dt-insight__texte>p{font-size:var(--dt-petit)}
#contenu .dt-insight--a-paraitre .publication-state{justify-self:start;padding:.25rem .75rem;border-radius:999px;background:var(--dt-sable);font:600 var(--dt-etiquette)/1.5 var(--label);letter-spacing:.06em;color:var(--dt-texte-doux)}
@media(max-width:1200px){#contenu .dt-insights-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* F29 : seule la collection de trois liens de l'accueil prend trois colonnes ; les six articles gardent deux colonnes tablette. */
@media(min-width:701px) and (max-width:1200px){#contenu .dt-insights-grille:has(>a.dt-insight){grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}}
@media(max-width:700px){
 #contenu .dt-insights-grille{grid-template-columns:minmax(0,1fr)}
 #contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre){display:grid;grid-template-columns:6rem minmax(0,1fr);column-gap:var(--dt-s4);row-gap:var(--dt-s2);align-content:start;padding:var(--dt-s4)}
 #contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre)>.dt-insight__couverture{grid-row:1/span 3;align-self:start}
 #contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .insight-cover{aspect-ratio:1}
 #contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .dt-insight__texte{display:contents}
 #contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .dt-insight__texte>:not(.dt-insight__pied){grid-column:2}
 #contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .dt-insight__pied{grid-column:1/-1}
 #contenu .dt-insight__titre{font-size:1.25rem}
}
@media(max-width:400px){#contenu .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre){grid-template-columns:4.5rem minmax(0,1fr)}}

/* 11 · dt-note (notes de réservation sur un seul axe) et dt-liens (paires de liens) */
#contenu .dt-note{margin:var(--dt-s5) 0 0;max-width:72ch;padding:0 0 0 var(--dt-s4);border-left:2px solid var(--dt-or)}
#contenu .dt-note>*{margin:0;padding:0;border:0;background:none;font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu .dt-note>*+*{margin-top:var(--dt-s2)}
#contenu .dt-liens{display:flex;flex-wrap:wrap;align-items:center;gap:var(--dt-s2) var(--dt-s5);margin-top:var(--dt-s3)}
#contenu .dt-liens>:is(.text-link,.button){margin:0}

/* 12 · dt-cta-collant : barre de réservation mobile. OPTION A1, inerte tant que <main> ne porte pas dt-avec-barre. */
#contenu .dt-cta-collant{display:none}
@media(max-width:700px){
 #contenu.dt-avec-barre .dt-cta-collant{position:sticky;bottom:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:var(--dt-s3);min-height:var(--dt-barre-h);margin:0;padding:.75rem 1.25rem calc(.75rem + env(safe-area-inset-bottom,0px));background:var(--dt-marine);box-shadow:0 -1px 0 var(--dt-filet-marine)}
 #contenu.dt-avec-barre .dt-cta-collant__prix{font:350 1.25rem/1.2 var(--serif);color:var(--dt-creme);white-space:nowrap}
 #contenu.dt-avec-barre .dt-cta-collant .button{flex:1;max-width:16rem;min-height:3.25rem;margin:0;justify-content:space-between}
 #contenu.dt-avec-barre .dt-corps>.dt-decision{position:relative;z-index:16;margin-bottom:calc(-1 * (var(--dt-barre-h) + env(safe-area-inset-bottom,0px)))}
 html:has(#contenu.dt-avec-barre){scroll-padding-bottom:calc(var(--dt-barre-h) + 1rem)}
}
@media(max-width:359px){#contenu.dt-avec-barre .dt-cta-collant__prix{display:none}#contenu.dt-avec-barre .dt-cta-collant .button{max-width:none}}
@media print{#contenu .dt-cta-collant{display:none}}

/* 13 · dt-defile : seul mécanisme de piste. En dernier pour primer sur les grilles.
   dt-defile : collection de liens, défilement CSS seul (sous 701 px ; sous 1201 px avec --sous-1200).
   dt-defile-contenu : collection de contenus, défile seulement quand interface-v3.js pose .is-slider (≤ 700 px, texte ≤ 20 px). */
#contenu :is(.dt-defile,.dt-defile-contenu){min-width:0;max-width:100%}
@media(max-width:1200px){
 #contenu .dt-defile--sous-1200{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(15rem,40%);gap:var(--dt-gap-cartes);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:4px;margin:0 -4px;padding:4px 4px var(--dt-s4);scrollbar-width:thin;scrollbar-color:var(--dt-or) transparent;align-items:stretch}
 #contenu .dt-defile--sous-1200>*{scroll-snap-align:start;min-width:0;max-width:none;margin:0}
}
/* Tour 2 du pilote · 701 à 1200 px : 2,5 cartes visibles (spec 5.1) et clavier fiable (spec 6.7).
   Chromium ne fait pas défiler au focus une carte visible sur plus de 32 px : la demi-carte d'amorce restait coupée.
   › Le contenu porte deux cartes ; la troisième s'amorce à moitié dans le padding de fin (20 % du conteneur, en % du bloc parent).
   › scroll-padding de fin : la demi-carte est hors de la zone utile, le focus la fait défiler entière.
   › Ce padding sert aussi de butée : la dernière accroche aligne la 4e carte au départ, aucune carte coupée à gauche. */
@media(min-width:701px) and (max-width:1200px){
 #contenu .dt-defile--sous-1200{grid-auto-columns:max(12rem,calc((100% - var(--dt-gap-cartes)) / 2));padding-inline-end:calc(20% + 4px + .6 * var(--dt-gap-cartes));scroll-padding-inline-end:calc(20% + 4px)}
}
@media(max-width:700px){
 #contenu .dt-defile,#contenu .dt-defile-contenu.is-slider{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:var(--dt-gap-cartes);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:4px;margin:0 -4px;padding:4px 4px var(--dt-s4);scrollbar-width:thin;scrollbar-color:var(--dt-or) transparent;align-items:stretch}
 #contenu :is(.dt-defile,.dt-defile-contenu.is-slider)>*{scroll-snap-align:start;min-width:0;max-width:none;margin:0}
 #contenu :is(.dt-defile,.dt-defile-contenu).is-slider+.msb-carousel-controls{margin-top:var(--dt-s2)}
 /* Tour 3 · piste CSS seule (sans script, ou texte à 150 % où le script reste inactif) : la carte suivante dépasse de 16 % ;
    Chromium ne la faisait pas défiler au focus (35 px visibles à 390 px). Cette bande sort de la zone utile de défilement :
    le focus amène chaque carte entière, l'accroche au début reste inchangée. */
 #contenu .dt-defile:not(.is-slider){scroll-padding-inline-end:calc(16% + 4px)}
 /* Butée de fin (comme de 701 à 1200 px) : une colonne vide après la dernière carte lui permet de s'accrocher au début ;
    en revenant en arrière au clavier, l'avant-dernière carte ne reste plus en amorce de 35 px à gauche. */
 #contenu .dt-defile:not(.is-slider)::after{content:"";display:block;min-width:0}
}
/* Tour 2 du pilote · texte fortement agrandi (police racine vers 125 % et plus) : la piste des autres programmes devient une grille
   de 1 à 3 colonnes ; tout est visible, rien à faire défiler au clavier (6.7, 6.8). Seuils en rem du conteneur, qui suivent
   la police racine : au texte normal le conteneur mesure au moins 38,7 rem de 701 à 1200 px et 64,4 rem au-delà, barre de défilement comprise. */
@media(min-width:701px) and (max-width:1200px){@container dt-autres (max-width:36rem){
 #contenu .dt-autres__piste{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(min(15rem,100%),1fr));grid-auto-columns:auto;overflow:visible;scroll-snap-type:none;scroll-padding:0;margin:0;padding:0}
}}
@media(min-width:1201px){@container dt-autres (max-width:50rem){
 #contenu .dt-autres__piste{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(min(15rem,100%),1fr));grid-auto-columns:auto;overflow:visible;scroll-snap-type:none;scroll-padding:0;margin:0;padding:0}
}}
@media print{#contenu :is(.dt-defile,.dt-defile-contenu){display:block;overflow:visible;margin:0;padding:0}#contenu :is(.dt-defile,.dt-defile-contenu)>*{margin-bottom:1rem}}

/* Recette Codex 22/10 · F04/F14/F15 : la piste conserve une couverture haute pour isoler les inscriptions de la gravure.
   Le seuil de masquage ci-dessus ne retire plus la signature à 1024 px. Anneau intérieur au-dessus de la couverture. */
@media(max-width:700px){#contenu :is(.dt-defile,.is-slider) .dt-insight .insight-cover{aspect-ratio:16/11}}
/* Réserver physiquement les lignes des inscriptions, sans compter sur les pixels transparents des PNG. */
@container (min-width:16.01rem){
 #contenu .dt-insight:not(.dt-insight--a-paraitre) .insight-cover>img{height:calc(100% - 4.5rem)}
 #contenu .dt-insight:not(.dt-insight--a-paraitre) .insight-cover>.cover-index{top:.75rem}
 #contenu .dt-insight:not(.dt-insight--a-paraitre) .insight-cover>.cover-signature{bottom:.75rem}
 #contenu .dt-insight:not(.dt-insight--a-paraitre) .insight-cover>.cover-rule{bottom:1.1rem}
}
#contenu a.dt-insight{isolation:isolate}
#contenu :is(.dt-defile,.is-slider) a.dt-insight:focus-visible{outline:0}
#contenu :is(.dt-defile,.is-slider) a.dt-insight:focus-visible::after{content:"";position:absolute;inset:0;z-index:3;border:2px solid var(--dt-focus);border-radius:inherit;box-shadow:inset 0 0 0 2px var(--dt-creme);pointer-events:none}
/* F13 : lecture native sans script, corps Manrope et couverture contenue sur la pleine rangée. */
#contenu .dt-insight .article-corps{font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux);letter-spacing:0;text-transform:none}
#contenu .dt-insight:has(.article-lecture[open]) .insight-cover{aspect-ratio:3/1}
/* F27/F28 : mêmes lignes de lecture pour les articles voisins ; les annonces restent non interactives. */
@media(min-width:701px){@supports(grid-template-rows:subgrid){
 #contenu .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])){display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 5;row-gap:0}
 #contenu .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open]))>.dt-insight__texte{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:var(--dt-s3)}
}}
#contenu .dt-insight__texte>p{text-wrap:pretty}
/* Les durées restent lisibles à 200 % : aucune largeur intrinsèque imposée à une colonne étroite. */
#contenu .dt-insight__texte>*,#contenu .dt-insight__pied{min-width:0}
#contenu .dt-insight .publication-state{white-space:normal;overflow-wrap:break-word}
/* Reflow : les enfants des colonnes flex respectent leur largeur disponible à texte agrandi.
   Les plafonds de lecture en ch restent appliqués ; aucun contenu n'est masqué. */
#contenu .dt-decision__texte>:is(p,.dt-titre),#contenu .dt-entete__chapeau>p,#contenu .dt-benefice__titre{min-width:0;width:100%}
#contenu .dt-insight--a-paraitre{display:flex;flex-direction:column;align-items:flex-start}
#contenu .dt-insight--a-paraitre>.insight-cover{width:4.5rem;height:4.5rem;grid-row:auto;margin:0 0 var(--dt-s2)}
#contenu .dt-insight--a-paraitre .publication-state{margin-top:auto}
@supports(grid-template-rows:subgrid){
 #contenu .dt-insights-a-venir>.dt-insight--a-paraitre{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 5;row-gap:var(--dt-s2);justify-items:start;align-content:start}
 #contenu .dt-insights-a-venir>.dt-insight--a-paraitre>.insight-cover,#contenu .dt-insights-a-venir>.dt-insight--a-paraitre .dt-insight__texte>*{grid-column:1;grid-row:auto}
}
/* F30 : ratio commun en grille large ; la piste mobile garde volontairement son ratio lisible 16/11. */
@media(min-width:1201px){#contenu .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])) .insight-cover{aspect-ratio:2/1}}
/* F40/F50 : chute équilibrée et repère local des libellés masqués dans les pistes. */
#contenu .dt-preuve .dt-titre em{text-wrap:balance}
#contenu :is(.dt-defile,.dt-defile-contenu)>*{position:relative}

/* 14 · Texte agrandi (recette du pilote, tour 3). Quand la police racine grandit (125 à 200 %), un conteneur mesuré en rem
   rétrécit : les composants passent à une colonne et les retraits se réduisent, pour que chaque texte dispose de toute la largeur.
   Seuils choisis pour ne jamais s'appliquer au texte normal (16 px) de 320 à 1920 px :
   › 17 rem : le conteneur le plus étroit au texte normal mesure 288 px = 18 rem (320 px) ;
   › 14 rem (autres programmes, ≤ 700 px) : interface-v3.js active la piste jusqu'à 20 px de police racine, soit au moins
     14,4 rem à 320 px ; la grille ne prend le relais que lorsque le script l'a laissée inactive ;
   › 9,5 rem (carte « autre ») : au texte normal, la zone utile d'une carte mesure au moins 156 px = 9,75 rem (1201 px) ;
   › 36 rem (retrait des dépliants) et 32 rem (liste des livrables), dès 701 px : ces conteneurs y mesurent au moins 40,8 rem.
   Les unités insécables les plus longues (« MSB Redressement », « expert‑comptable, », « Accompagnement ») reçoivent un plafond
   de taille en cqi pour tenir sur leur ligne ; au-dessous de 10 rem seulement (200 % sous 350 px), la césure française
   (hyphens:auto, page en lang="fr") prend le relais au lieu d'une coupe n'importe où. */
#contenu .dt-depliants{container:dt-depliants/inline-size}
#contenu .dt-decision{container:dt-decision/inline-size}
#contenu :has(>.dt-benefices--liste){container:dt-liste/inline-size}
@media(min-width:701px){@container dt-depliants (max-width:36rem){
 #contenu .dt-depliants>.dt-depliant--cassette>.dt-depliant__corps{padding-left:var(--dt-pad-carte)}
 #contenu .dt-depliant__corps :is(.dt-situations,.dt-modalites)>ul,#contenu .dt-depliant__corps .dt-modalites__valeurs{grid-template-columns:minmax(0,1fr)}
 #contenu .dt-depliant__corps>.dt-modalites>ul>li:nth-last-child(2){border-bottom:0}
}}
@container dt-depliants (max-width:17rem){
 #contenu .dt-depliants>.dt-depliant--cassette>summary{grid-template-columns:minmax(0,1fr) var(--dt-pastille);grid-template-areas:"num plus" "titre titre";row-gap:var(--dt-s2);padding-inline:1rem}
 #contenu .dt-depliants>.dt-depliant--cassette>summary::before{grid-area:num}
 #contenu .dt-depliants>.dt-depliant--cassette>summary::after{grid-area:plus}
 #contenu .dt-depliants>.dt-depliant--cassette>summary>.dt-depliant__titre{grid-area:titre;min-width:0}
 #contenu .dt-depliants>.dt-depliant--cassette>.dt-depliant__corps{padding-inline:1rem}
 #contenu .dt-depliant__corps .dt-situations li{padding-left:var(--dt-s3)}
 #contenu .dt-depliant__corps .dt-modalites li{padding-left:1rem;font-size:min(var(--dt-corps),calc((100cqi - 3rem - 2px) / 8.7))}
}
@container dt-depliants (max-width:10rem){#contenu .dt-depliant>:is(summary,.dt-depliant__corps){hyphens:auto;hyphenate-limit-chars:8 4 3}}
@media(max-width:700px){@container dt-autres (max-width:14rem){
 #contenu .dt-autres__piste{grid-auto-flow:row;grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;overflow:visible;scroll-snap-type:none;scroll-padding:0;margin:0;padding:0}
 #contenu .dt-autre{--dt-pad-carte:1rem}
}}
/* Carte étroite au regard du texte : le numéro garde sa ligne au-dessus de la gravure (il la chevauchait à 125 % et plus). */
@container dt-autre (max-width:9.5rem){
 #contenu .dt-autre>.dt-carte__bandeau{min-height:0;padding:calc(.875rem + 1.5 * var(--dt-etiquette) + var(--dt-s2)) var(--dt-s4) var(--dt-s4)}
 #contenu .dt-autre>.dt-carte__bandeau img{width:4.5rem;height:4.5rem}
}
@media(max-width:700px){@container dt-etapes (max-width:17rem){
 /* Frise verticale : le numéro passe au-dessus du titre, le texte prend toute la largeur (le liant n'a plus de colonne). */
 #contenu .dt-etapes .dt-etape{grid-template-columns:minmax(0,1fr);grid-template-rows:none;row-gap:var(--dt-s2)}
 #contenu .dt-etapes .dt-etape__num{grid-row:auto}
 #contenu .dt-etapes .dt-etape__titre{grid-column:1;margin:0;font-size:min(var(--dt-h3-s),calc(100cqi / 8.8))}
 #contenu .dt-etapes .dt-etape>p{grid-column:1}
 #contenu .dt-etapes .dt-etape:not(:last-child)::before{display:none}
}}
@container dt-etapes (max-width:10rem){#contenu .dt-etapes :is(.dt-etape__titre,.dt-etape>p){hyphens:auto;hyphenate-limit-chars:8 4 3}}
@container dt-questions (max-width:17rem){#contenu .dt-question>summary{--dt-pastille:2rem;column-gap:var(--dt-s3)}}
@container dt-questions (max-width:10rem){#contenu .dt-questions :is(.dt-titre,.dt-question>summary,.dt-question>:not(summary)){hyphens:auto;hyphenate-limit-chars:8 4 3}}
@container dt-decision (max-width:17rem){
 #contenu .dt-decision__texte{padding-inline:1rem}
 #contenu .dt-decision__lien{margin-left:1rem}
 #contenu .dt-billet{padding-inline:1rem}
 #contenu .dt-billet>.button,#contenu .dt-billet .first-step-meta>.button{padding-inline:.75rem;gap:var(--dt-s2)}
}
@container dt-decision (max-width:10rem){#contenu .dt-decision :is(.dt-decision__texte>p,.dt-billet__prix,.dt-billet__note){hyphens:auto;hyphenate-limit-chars:8 4 3}}
/* F21 : à 200 % sur bureau, le billet reprend toute la largeur au lieu de former une colonne de 311 px. */
@media(min-width:1001px){@container dt-decision (max-width:48rem){
 #contenu .dt-decision>.dt-decision__texte{grid-column:1/-1;grid-row:1;align-self:auto;padding:var(--dt-pad-panneau)}
 #contenu .dt-decision>.dt-billet{grid-column:1/-1;grid-row:2}
 #contenu .dt-decision>.dt-decision__lien{grid-column:1/-1;grid-row:3;justify-self:stretch;margin:0;padding:var(--dt-s3) var(--dt-pad-panneau) var(--dt-s5);background:var(--dt-marine-eleve);border-top:1px solid var(--dt-filet-marine)}
}}
@container dt-decision (max-width:17rem){#contenu .dt-billet .button{hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:normal}}
@media(min-width:701px){@container dt-liste (max-width:32rem){
 #contenu .dt-benefices--liste{grid-template-columns:minmax(0,1fr)}
}}

/* F12 · arbitrage de coordination : toutes les destinations sont visibles à la souris en tablette (3 + 2).
   Les pistes restent présentes en mobile. Le minimum en rem replie la grille quand le texte est agrandi. */
@media(min-width:701px) and (max-width:1200px){
 #contenu :is(.dt-autres__piste,.dt-cartes-liens--cinq.dt-defile--sous-1200){grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(12rem,calc((100% - 2 * var(--dt-gap-cartes)) / 3))),1fr));grid-auto-columns:auto;overflow:visible;scroll-snap-type:none;scroll-padding:0;margin:0;padding:0}
}

/* Prix et taxes dissociés de la réassurance : information courte, pas de taxe surprise. */
#contenu .dt-billet .dt-billet__taxe{display:block;margin-top:.35rem;font:400 .875rem/1.6 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu .dt-billet .dt-billet__note{font-size:.875rem;line-height:1.65}
/* Direction : distinction attestée, sans modifier l’ordre ni transformer l’offre en recommandation universelle. */
#contenu .dt-signature-label{display:inline-flex;align-items:center;gap:.5rem;font:600 .75rem/1.4 var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--dt-or-texte);margin-bottom:.75rem}
#contenu .programme-tile--signature .programme-route{border-color:var(--dt-or)}
#contenu .programme-tile--signature .programme-summary{background:var(--dt-sable)}
#contenu .programme-tile--signature .dt-signature-label{color:var(--dt-or-texte-sable);margin-bottom:.5rem}

/* Bénéfices de service : visibles en continu, pas enfouis dans une piste. Les collections d’offres restent parcourables. */
@media(max-width:700px){#contenu .dt-benefices:not(.msb-track){grid-template-columns:minmax(0,1fr);grid-auto-flow:row;grid-auto-columns:auto;overflow:visible}}

/* Pistes présentes sur tablette : mêmes commandes que sur mobile, sans autoplay. */
@media(min-width:701px) and (max-width:1200px){
 #contenu .msb-track.is-slider+.msb-carousel-controls:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.75rem;padding-block:.25rem;font:600 .8125rem/1.5 var(--label)}
 #contenu .msb-carousel-controls>div{display:flex;align-items:center;gap:.5rem}
 #contenu .msb-carousel-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--dt-filet);border-radius:50%;background:transparent;color:var(--dt-marine);cursor:pointer;font-size:1.25rem}
 #contenu .msb-carousel-controls button[aria-disabled=true]{opacity:.35;cursor:default}
 #contenu .msb-carousel-status{font-variant-numeric:tabular-nums;white-space:nowrap}
}

/* Billet commun : prix, taxe et cadre sur trois niveaux sans séparateur isolé. */
#contenu .dt-billet__cadre{display:block;max-width:35ch;margin:.55rem auto 0;font:400 .875rem/1.6 var(--sans);color:var(--dt-texte-sur-marine)}

/* Texte agrandi : toute collection devient une grille continue, commandes masquees par le composant. */
#contenu .msb-track.is-text-expanded{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;overflow:visible!important;scroll-snap-type:none;scroll-padding:0;margin:0;padding:0;gap:var(--dt-gap-cartes)}
#contenu .msb-track.is-text-expanded>*{min-width:0;max-width:100%;grid-row:auto;grid-column:auto;scroll-snap-align:none}
#contenu .msb-track.is-text-expanded::after{display:none!important}
@media(max-width:700px){
 #contenu .home-links.is-text-expanded>a{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.25rem;border:1px solid var(--dt-filet);background:var(--dt-papier)}
 #contenu .home-links.is-text-expanded .programme-symbol{width:4.5rem;height:4.5rem;margin:0}
 #contenu .home-links.is-text-expanded .home-link-budget{display:flex;width:100%;text-align:left;gap:.5rem;flex-wrap:wrap;font-size:1.5rem}
}

/* Finition revue : espacement et cibles tactiles des liens de tous les billets. */
/* Liens légaux du billet : un lien ne se coupe plus au milieu (« Exercer votre droit de / rétractation »), sauf à texte très
   agrandi où il passe à la ligne au lieu de déborder. Les « · » restent dans le texte, masqués par la règle commune
   .dt-billet .dt-sep ; l'écart entre deux liens les remplace. */
#contenu .dt-billet__liens{display:flex;flex-flow:row wrap;justify-content:center;align-items:baseline;gap:0 1.25rem}
#contenu .dt-billet__liens a{padding-block:.1875rem}
/* Tour 3 : sur écran tactile, les liens empilés (sous 701 px, trois lignes) faisaient 28 px de haut sans écart ; cible de
   44 px, texte centré dans sa hauteur. À la souris, au bureau, la rangée reste serrée. */
@media(max-width:700px),(pointer:coarse){#contenu .dt-billet__liens a{display:inline-flex;align-items:center;min-height:2.75rem;padding-block:0}}
/* Tour 2 : rangée qui passe à la ligne entre deux liens (jamais au milieu d'un lien) au lieu d'une colonne de trois ; le
   billet perd une ligne au bureau (« Conditions de vente · Exercer votre droit de rétractation » puis « Confidentialité »)
   et le panneau de décision se resserre. Rangée calée à gauche dans le billet en trois colonnes de la tablette. */
@media(min-width:701px) and (max-width:1000px){#contenu .dt-billet__liens{justify-content:flex-start}}

/* Retours commerciaux · 24 octobre 2026. */
#contenu .dt-carte__bandeau--marine img,#contenu.dt-accompagnement .programme-tile:nth-child(odd) .programme-art img{opacity:1;filter:brightness(1.65) contrast(1.04)}
#contenu .signature-panel:not(.signature-panel--paper) .signature-illustration{opacity:1;filter:brightness(1.6) contrast(1.04)}


/* Portraits · 24 octobre 2026. Correction d'affichage uniquement : originaux,
   cadrages et géométrie préservés. Courbes tonales sans reconstruction du visage.
   Héros naturels ; portraits de preuve en bichromie marine/crème de la charte. */
.msb-photo-filters{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
#contenu .signature-portrait>img{filter:url(#msb-portrait-naturel)}
#contenu .parcours-portrait .parcours-photo{filter:url(#msb-portrait-assis)}
#contenu .dt-preuve__portrait img{filter:url(#msb-portrait-marine)}
@media print{#contenu .signature-portrait>img,#contenu .parcours-portrait .parcours-photo,#contenu .dt-preuve__portrait img{filter:none}}

/* Finition du 24 octobre : mêmes rôles typographiques et mêmes commandes de dépliants. */
#contenu .dt-entete__chapeau>p{font-size:var(--dt-corps);line-height:1.75}
#contenu .dt-depliant--cassette>summary{font-size:var(--dt-question);line-height:1.35}
#contenu .dt-depliants>.dt-depliant--cassette>summary{grid-template-columns:minmax(0,1fr) var(--dt-pastille)}
#contenu .dt-depliants>.dt-depliant--cassette>summary::before{content:none}
#contenu .dt-depliants>.dt-depliant--cassette>.dt-depliant__corps{padding-left:var(--dt-pad-carte)}
#contenu .dt-depliant--cassette{border-color:var(--dt-filet);border-top-color:var(--dt-filet)}
#contenu .dt-signature-card{background:var(--dt-marine);border:2px solid var(--dt-or);box-shadow:none;color:var(--dt-creme)}
#contenu .dt-signature-card .programme-summary{background:transparent}
#contenu .dt-signature-card :is(.dt-carte__titre,.dt-carte__prix,.programme-summary h3,.card-budget strong,.programme-discover){color:var(--dt-creme)}
#contenu .dt-signature-card :is(.dt-carte__texte,.dt-carte__prix small,.card-objective,.card-budget small){color:var(--dt-texte-sur-marine)}
#contenu .dt-signature-card :is(.dt-etiquette,.programme-summary>.small-label){color:var(--dt-or-sur-marine)}
#contenu .dt-signature-card .programme-discover{border-color:rgba(237,230,214,.3)}
#contenu .dt-signature-card .programme-route{background:transparent}
#contenu .dt-signature-badge{position:absolute;right:.75rem;top:.75rem;z-index:1;display:inline-flex;margin:0;padding:.35rem .6rem;background:var(--dt-creme);color:var(--dt-marine);border:1px solid var(--dt-or);font:600 .6875rem/1.4 var(--label);letter-spacing:.05em;text-transform:uppercase}
#contenu .dt-signature-card :is(.programme-art,.dt-carte__bandeau){position:relative}
#contenu .dt-signature-card .dt-carte__bandeau .dt-signature-badge{top:auto;right:.5rem;bottom:.5rem;left:.5rem;justify-content:center;font-size:.625rem;letter-spacing:.015em;padding:.25rem}
/* Séparer la couronne du badge sans changer le gabarit de la carte.
   translate préserve le transform de survol existant. */
#contenu .dt-signature-card .dt-carte__bandeau>img{translate:0 -1rem}
#contenu .dt-signature-panel{position:relative;border:1px solid var(--dt-or)}
#contenu .dt-signature-panel>.dt-signature-badge{position:static;align-self:center;margin-bottom:.75rem}
#contenu .dt-carte--horizontale.dt-carte--large>.dt-carte__prix{text-align:left}
#contenu .dt-separateur>img{width:3rem;height:3rem;object-fit:contain}
#contenu .program-booking-price{margin:var(--dt-s3) 0 0;font:400 var(--dt-petit)/1.6 var(--sans);color:var(--dt-texte-doux)}
@media(hover:hover) and (pointer:fine){#contenu .dt-signature-card:hover{background:var(--dt-marine-eleve);box-shadow:0 8px 24px #1228390d}#contenu .dt-signature-card .programme-route:hover{background:transparent}}

/* Mentions sous les CTA : même bord gauche que les boutons et le texte du bloc.
   Le retrait interne du bouton ne doit pas décaler la légende. Les billets centrés gardent leur composition. */
#contenu.dt-page{--dt-cta-inset:1.5rem}
#contenu.dt-page :is(.signature-opening,.dt-offre__achat--colonne) .button{padding-inline:var(--dt-cta-inset)}
#contenu.dt-page p.cta-note{box-sizing:border-box;display:block;width:100%;max-width:62ch;margin:var(--dt-s3) 0 0;padding:0;text-align:start;font:400 .875rem/1.65 var(--sans);color:var(--dt-texte-doux);text-wrap:pretty}

/* Contact : garder bouton et mention dans la même colonne, y compris à 768 px. */
#contenu.dt-contact div.dt-offre__achat--colonne{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--dt-s3)}
#contenu.dt-contact .dt-offre__achat--colonne>.button{align-self:flex-start;width:fit-content;max-width:100%}
#contenu.dt-page .dt-offre__achat--colonne>p.cta-note{margin-top:0}

/* La classe historique small impose une taille importante ; cette légende
   possède désormais son propre corps commun, sans toucher aux autres petits textes. */
#contenu.dt-page p.cta-note.small{font-size:.875rem!important;line-height:1.65!important}

/* Prestations comparables : une seule dimension pour les six CTA de l'accueil
   et du catalogue. La largeur reste contenue, sans étirer les autres boutons.
   Sur une carte étroite, la hauteur commune accueille les libellés sur deux lignes. */
#contenu#contenu.dt-page :is(.home-format-card,.catalog-format-card) .msb-format-actions{container:dt-format-actions/inline-size}
#contenu#contenu.dt-page .format-action{box-sizing:border-box;flex:none;align-self:flex-start;width:16rem;max-width:100%;min-height:3.25rem;margin:0;padding:.875rem 1.25rem;font:600 .875rem/1.5 var(--label);justify-content:space-between;gap:1rem;text-align:left;white-space:normal}
@container dt-format-actions (max-width:14rem){#contenu#contenu.dt-page .format-action{min-height:4.5rem}}

/* Billet mobile : illustration à côté du tarif, action puis mentions sur la largeur.
   Le texte et les conditions restent présents, sans grande pile de blocs centrés. */
@media(max-width:700px){
 #contenu .dt-billet:has(>.dt-billet__prix){display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:1.25rem 1rem;align-items:center;justify-items:start;text-align:left;padding:1.5rem 1.25rem}
 #contenu .dt-billet:has(>.dt-billet__prix)>*{grid-column:1/-1;grid-row:auto;margin:0}
 #contenu .dt-billet:has(>.dt-billet__prix)>.dt-billet__art{grid-column:1;grid-row:1;width:4.5rem;height:4.5rem;align-self:center}
 #contenu .dt-billet:has(>.dt-billet__prix)>.dt-billet__prix{grid-column:2;grid-row:1;max-width:none;text-wrap:pretty}
 #contenu .dt-billet:has(>.dt-billet__prix) .dt-billet__prix strong{font-size:clamp(1.75rem,8vw,2.5rem);line-height:1.15}
 #contenu .dt-billet:has(>.dt-billet__prix) .dt-billet__cadre{margin:.5rem 0 0;font-size:.875rem}
 #contenu .dt-billet:has(>.dt-billet__prix)>.button{width:100%;max-width:23rem;justify-self:center;justify-content:center;min-height:3.25rem;padding:.75rem 1rem}
 #contenu .dt-billet:has(>.dt-billet__prix)>:is(.dt-billet__note,.dt-billet__liens){max-width:none;text-align:left;justify-content:flex-start}
}
/* Petit panneau ou texte agrandi : aucune colonne de tarif écrasée. */
@container dt-decision (max-width:18rem){
 #contenu .dt-billet:has(>.dt-billet__prix){grid-template-columns:minmax(0,1fr)}
 #contenu .dt-billet:has(>.dt-billet__prix)>.dt-billet__art{grid-column:1;grid-row:auto;justify-self:center}
 #contenu .dt-billet:has(>.dt-billet__prix)>.dt-billet__prix{grid-column:1;grid-row:auto;text-align:center;justify-self:center}
}

/* DA v3 : la carte Signature reste marine dans tous ses états, y compris l’ancre horizontale. */
#contenu :is(a.dt-carte.dt-signature-card,.programme-tile.dt-signature-card):is(:hover,:focus-visible,:focus-within){background:var(--dt-marine-eleve);border-color:var(--dt-or);color:var(--dt-creme)}
#contenu :is(a.dt-carte.dt-signature-card,.programme-tile.dt-signature-card):is(:hover,:focus-visible,:focus-within) :is(.dt-carte__titre,.dt-carte__prix,.programme-summary h3,.card-budget strong,.programme-discover){color:var(--dt-creme)}
#contenu .dt-signature-card .programme-route{border:0}

/* Mentions des trois prestations : deux informations courtes, sans hauteur fixe. */
#contenu .prestation-conditions{display:block;margin:.625rem 0 0;font:400 .875rem/1.55 var(--sans);letter-spacing:normal;color:inherit}
#contenu .prestation-conditions>span{display:block;font:inherit;color:inherit;letter-spacing:normal}

/* dt-programmes.css · chantier design total du 21 octobre 2026 (Claude Code). Sélecteurs limités à leur zone. */
/* Les quatre fiches (reprise, croissance, redressement, direction) reprennent à l'identique le gabarit du pilote (lancement) :
   mêmes classes, mêmes blocs, feuilles communes dt-global, heros et dt-composants. N'entrent ici que les écarts constatés
   sur capture et propres à une fiche, sous #contenu.dt-<page>. */

/* Redressement · billet sans prix (gravure, note, bouton). En tablette (701 à 1000 px), le billet commun place le bouton
   en colonne 3 sur les rangées du prix ; sans prix, la note tombait sous le bouton et laissait la colonne centrale vide en
   haut (capture redressement-768). La note prend la place du prix : gravure | note | bouton sur une seule rangée centrée.
   Tour 1 : seulement quand le panneau de décision a la place (≥ 40 rem). Texte agrandi (150 %, 200 %), la colonne centrale
   tombait à 0 px et le bouton recouvrait la note : on garde alors le placement commun (note sous le bouton). */
@media(min-width:701px) and (max-width:1000px){@container dt-decision (min-width:40rem){
 #contenu.dt-redressement .dt-billet--sans-prix>.dt-billet__note{grid-column:2;grid-row:1/span 4;align-self:center}
}}

/* Direction · paragraphe de la décision en mobile (≤ 700 px). La coupure « pretty » commune laissait « Ce cadrage payant »
   court au milieu à 390 px et « proposition » seul sur sa ligne à 320 px (captures direction-390-03, direction-320-03).
   Lignes équilibrées : 5 lignes régulières à 390 et 360, 6 à 320 sans mot isolé, 4 à 414. Texte inchangé. */
@media(max-width:700px){
 #contenu.dt-direction .dt-decision__texte>p{text-wrap:balance}
}

/* La carte de retour au catalogue porte la marque du cabinet, sans recoloration. */
#contenu.dt-programme .dt-autres img[src*="logo-mrsamben-monogramme"]{filter:none;opacity:1}

/* dt-offres.css · chantier design total du 21 octobre 2026 (Claude Code). Sélecteurs limités à leur zone.
   Zone offres : entretien-strategique, msb-express (main.dt-offre) et landing-campagne (main.dt-landing-campagne).
   Aucune règle commune ici : un défaut d'une famille dt est signalé au pilote, pas corrigé dans cette feuille. */

/* Entretien et Express : « Ce que nous travaillons » en en-tête deux temps, note de facturation en légende */
#contenu.dt-offre .dt-entete__chapeau>p.small{color:var(--dt-texte-doux)}
/* Le chapeau de cette section est long (deux à trois paragraphes, une note, un lien) : calé en bas, il laissait 100 px vides
   au-dessus du titre. Au bureau, il part en haut et sa première ligne s'aligne sur la ligne de base de la première ligne du
   titre (étiquette 1,2 rem + marge 1 rem + 0,93 em du titre, moins 1,16 em du chapeau). Section close : pas de marge basse
   d'en-tête, la bande sable suivante donne l'écart. */
#contenu.dt-offre .dt-offre-contenu>.dt-entete{margin-bottom:0}
@media(min-width:1001px){
 #contenu.dt-offre .dt-offre-contenu>.dt-entete{align-items:start}
 #contenu.dt-offre .dt-offre-contenu .dt-entete__chapeau{padding:calc(2.2rem + .93 * var(--dt-h2) - 1.16 * var(--dt-chapeau)) 0 0}
}
/* Décision. Tour 2 : titre au palier commun --dt-h2, chute en italique or sur sa ligne (balise em, texte identique).
   Tour 3 : seul, ce titre laissait environ 95 % de la colonne marine vide face à un billet chargé. La note de réservation
   existante (« Choisissez parmi les créneaux disponibles… ») quitte le billet pour la colonne de texte, sous le titre : elle
   y prend le style du paragraphe de décision (règle commune .dt-decision__texte>p), comme le paragraphe du pilote. Le billet
   garde l'emblème, le prix, le bouton et les liens légaux ; dans le HTML, le bouton passe avant les liens (ordre clavier =
   ordre à l'écran). Écart déclaré à la spécification 7.4, qui plaçait la note dans le billet ; aucun texte ajouté. */
/* Codex 22/10, décision de présentation dans le mandat autonome : carte 03 résumée par « Sans Entretien Stratégique
   préalable. ». La réponse complète reste dans les questions. Les trois cartes gardent leur hauteur égale et leurs
   contrôles de piste proches ; aucune hauteur arbitraire ni masquage de texte n'est ajouté. Voir recette-codex-22. */

/* Campagne : « Où en êtes-vous » en cinq cartes gravées vers les programmes. Elles reprennent la carte « autre programme »
   du pilote (dt-autre : bandeau gravé, numéro en haut à gauche, flèche en haut à droite, nom centré) ; couleur fixe par
   programme. Le numéro de la phase (« · 01 », texte d'origine, puce masquée) prend la place et le dessin du data-index. */
#contenu.dt-landing-campagne .dt-phase__index{position:absolute;top:.875rem;left:var(--dt-pad-carte);z-index:1;display:block;margin:0;font:600 var(--dt-etiquette)/1.5 var(--label);letter-spacing:.08em;text-transform:none;color:inherit}
#contenu.dt-landing-campagne .dt-phase__index::after{content:" /";content:" /" / ""}
/* Campagne : les deux dépliants utilitaires partagent un seul filet bas */
#contenu.dt-landing-campagne .dt-depliants-utilitaires{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
/* Texte très agrandi : un mot long du groupe (« entrepreneurial, » en titre) passe à la ligne au lieu d'élargir la page.
   Tour 2 : sans césure automatique (elle coupait « véhi-cules », « Ra-monville » au texte normal). */
#contenu.dt-landing-campagne .dt-depliants-utilitaires .empire-section{overflow-wrap:break-word;hyphens:manual}
@media(max-width:600px){#contenu.dt-landing-campagne .empire-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){#contenu.dt-landing-campagne .empire-grid{grid-template-columns:minmax(0,1fr)}}
#contenu.dt-landing-campagne .dt-depliants-utilitaires>.dt-depliant--utilitaire:last-child{border-bottom:1px solid var(--dt-filet)}
#contenu.dt-landing-campagne .dt-depliants-utilitaires .empire-section{margin:0;padding:var(--dt-s4) 0 var(--dt-s6)}
/* Tour 2 : la règle commune du dépliant utilitaire passe tous ses paragraphes en petit corps (14 px) ; l'introduction du groupe,
   sous un titre de section, reprend le corps courant. Les textes des cartes de sociétés restent en petit corps. */
#contenu.dt-landing-campagne .empire-section>.section-sub{max-width:62ch;font:400 var(--dt-corps)/1.75 var(--sans)}
/* Le dépliant utilitaire remet à zéro le padding de son contenu : la carte papier du suivi client (formulaire intact) le retrouve. */
#contenu.dt-landing-campagne .client-followup>.closing-card{margin:0 0 var(--dt-s5);padding:var(--dt-pad-carte)}
/* Statistiques du groupe (dépliant) : libellés à 12 px au moins à toutes les largeurs (10 à 11 px sous 900 px auparavant). */
#contenu.dt-landing-campagne .stats-bar .stat-label{font-size:var(--dt-etiquette)}
/* Campagne : le billet porte le kicker, le titre, le texte, le prix et deux notes ; à 34 ch la note de réservation passait sur
   cinq lignes et le billet dépassait 680 px à 1440. Les textes du billet prennent toute sa largeur utile (au plus 46 ch) ;
   en tablette, le billet en trois colonnes garde la règle commune. */
@media(max-width:700px){#contenu.dt-landing-campagne .dt-billet :is(.dt-billet__texte,.dt-billet__note){max-width:46ch}}
/* Tour 3, billet resserré au bureau (647 → 543 px à 1440, 694 → 624 px à 1024) : il empilait huit éléments à 16 px d'écart et
   le texte d'en face flottait entre deux bandes de 190 px de marine. Boussole à 4,5 rem (largeur de l'emblème), écarts à
   0,75 rem, étiquette collée à son titre (0,25 rem) comme un en-tête de billet, deux notes rapprochées (0,25 rem) et à
   pleine largeur utile, interligne 1,55. Tailles de texte inchangées (13 px au moins). Aucun texte retiré : les doublons
   « soumis à confirmation » et le rappel du prix dans la note sont soumis à Samih (arbitrages/campagne-billet-*). */
@media(min-width:1001px){
 #contenu.dt-landing-campagne .dt-billet{gap:var(--dt-s3);padding-block:2.5rem}
 #contenu.dt-landing-campagne .dt-billet__art{width:4.5rem;height:4.5rem}
 #contenu.dt-landing-campagne .dt-billet__titre{margin-top:calc(var(--dt-s1) - var(--dt-s3))}
 #contenu.dt-landing-campagne .dt-billet :is(.dt-billet__texte,.dt-billet__note){max-width:none}
 #contenu.dt-landing-campagne .dt-billet__note{line-height:1.55}
 #contenu.dt-landing-campagne .dt-billet__note.booking-notice{margin-top:calc(var(--dt-s1) - var(--dt-s3))}
 #contenu.dt-landing-campagne .dt-billet__prix strong{margin-bottom:0}
}
/* Campagne, décision (tour 2). Au bureau, le lien « Consulter le détail de l'entretien » restait en bas de sa rangée, à 100 px
   du paragraphe, au-dessus de 190 px de marine vide : texte et lien forment un seul bloc, centré en hauteur face au billet
   (deux rangées souples l'encadrent). Sous 1001 px, le lien passe après le billet : même ordre à l'écran et au clavier. */
@media(min-width:1001px){
 #contenu.dt-landing-campagne .dt-decision{grid-template-rows:minmax(0,1fr) auto auto minmax(0,1fr)}
 #contenu.dt-landing-campagne .dt-decision>.dt-decision__texte{grid-row:2}
 #contenu.dt-landing-campagne .dt-decision>.dt-decision__lien{grid-row:3}
 #contenu.dt-landing-campagne .dt-decision>.dt-billet{grid-row:1/-1}
}
@media(max-width:1000px){
 #contenu.dt-landing-campagne .dt-decision>.dt-billet{grid-row:2}
 #contenu.dt-landing-campagne .dt-decision>.dt-decision__lien{grid-row:3}
}
/* Tour 3 : sous 1001 px, ce lien formait une troisième bande marine foncée de 85 px sous le billet clair (texte, billet, pied :
   trois aplats). Il devient le pied du billet : même fond élevé, filet marine au-dessus, écart réduit (0,75 rem). Le panneau
   se lit en deux aplats. Ordre du DOM et du clavier inchangé ; anneau de focus rentré dans la rangée. */
@media(max-width:1000px){
 #contenu.dt-landing-campagne .dt-decision>.dt-decision__lien{justify-self:stretch;margin:0;padding:var(--dt-s3) var(--dt-pad-panneau) var(--dt-s5);background:var(--dt-marine-eleve);border-top:1px solid var(--dt-filet-marine)}
 #contenu.dt-landing-campagne .dt-decision>.dt-decision__lien:focus-visible{outline-offset:-4px}
}
@media(max-width:700px){#contenu.dt-landing-campagne .dt-decision>.dt-decision__lien{justify-content:center;padding-inline:1.25rem;text-align:center}}
/* Revue multi-méthodes 26/10 : le prix et ses mentions forment désormais un seul bloc.
   Le CTA utilise la grille commune du billet, y compris son repli lorsque le texte est agrandi. */
/* Campagne, devise (tour 2) : dernier bloc avant le pied, qui commence à 42 px du bord gauche (1440). En pleine largeur, elle
   laissait une tranche crème et un décrochage entre deux aplats foncés ; elle redevient un panneau dans la largeur du
   contenu, comme la décision au-dessus et comme à l'état publié. */
#contenu.dt-landing-campagne .dt-bande{border-image:none;padding-inline:var(--dt-pad-panneau)}

/* Codex 22/10 : un seul dépliant donne accès aux sept questions complémentaires.
   Les réponses sont statiques à l'intérieur ; aucun second niveau interactif. */
#contenu.dt-entretien-strategique .dt-offre-question-complementaire{margin:0;padding:var(--dt-s4) 0;max-width:none;border:0;background:none}
#contenu.dt-entretien-strategique .dt-offre-question-complementaire+.dt-offre-question-complementaire{border-top:1px solid var(--dt-filet)}
#contenu.dt-entretien-strategique .dt-offre-question-complementaire>h3{margin:0 0 var(--dt-s2);font:600 1rem/1.5 var(--label);letter-spacing:0;color:var(--dt-texte)}
#contenu.dt-entretien-strategique .dt-offre-question-complementaire>p{max-width:65ch;margin:0;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}

/* V08 · comparaison après le déroulement, sans panneau supplémentaire. */
#contenu.dt-offre .dt-offre-comparaison{margin:var(--dt-s5) 0 0;max-width:65ch;font:400 var(--dt-corps)/1.7 var(--sans)}
#contenu.dt-offre .dt-offre-comparaison .text-link{display:inline-flex;margin-top:var(--dt-s2)}

/* Retours commerciaux · 24 octobre 2026. */
#contenu.dt-offre .offer-prix-action{display:block;margin:var(--dt-s4) 0;color:var(--dt-texte-doux);font:400 var(--dt-petit)/1.7 var(--sans)}
#contenu.dt-offre .offer-prix-action strong{font:350 var(--dt-h3)/1.3 var(--serif);color:var(--dt-marine)}
#contenu.dt-offre .offer-prix-action>span{display:block}
#contenu.dt-offre .signature-panel--cadre{min-height:0;aspect-ratio:auto}
#contenu.dt-offre .dt-decision--compacte{grid-template-columns:1.2fr 1fr;gap:var(--dt-s5)}
#contenu.dt-offre .dt-decision--compacte .dt-decision__texte{grid-row:1;align-self:center;padding:var(--dt-pad-panneau)}
#contenu.dt-offre .dt-decision--compacte .dt-titre{font-size:clamp(2rem,3vw,3rem)}
#contenu.dt-offre .dt-decision--compacte .dt-billet{display:flex;flex-direction:column;align-items:center;text-align:center;grid-row:1;min-height:0;gap:var(--dt-s3);padding:var(--dt-pad-carte)}
#contenu.dt-offre .dt-decision--compacte .dt-billet__art{display:none}
#contenu.dt-offre .dt-decision--compacte .dt-billet__prix strong{font-size:clamp(2rem,3vw,2.75rem)}
@media(max-width:1000px){#contenu.dt-offre .dt-decision--compacte{grid-template-columns:1fr;gap:0}#contenu.dt-offre .dt-decision--compacte .dt-billet{grid-row:2;grid-column:1}#contenu.dt-offre .dt-decision--compacte .dt-decision__texte{padding:var(--dt-pad-carte)}}


/* dt-catalogue.css · zone catalogue (accompagnement.html) · chantier design total du 21/10/2026 (Claude Code).
   Toutes les règles sous #contenu.dt-accompagnement. Haut validé par Samih (héros, formats, tuiles de programmes) : même dessin
   au bureau ; corrections de la spec 7.5 seulement (contraste, coupure de « 01 / Faire le point », dépliants sur la pastille commune,
   une seule note, piste des formats sous 701 px, plus de colonne vide en tablette). Le bas suit les familles communes.
   Tour 3 (22/10) : trois colonnes de formats seulement dès 901 px, repli de la spec en dessous (troisième cassette pleine largeur,
   lue à l'horizontale) ; étiquettes d'une même rangée sur le même nombre de lignes ; piste des formats à la largeur de celle des
   tuiles ; tuile Direction ramenée à la hauteur de bandeau des autres ; tour-escalier sous la marge commune. */

/* Haut validé · contraste des étiquettes or sur sable (4,43:1 → 5,08:1). */
#contenu.dt-accompagnement .catalog-format-card:nth-child(even) .format-purpose,#contenu.dt-accompagnement .programme-tile:nth-child(even) .programme-number{color:var(--dt-or-texte-sable)}
/* « 01 / Faire le point » ne se coupe plus en « Faire le / point » (spec 7.5, permis par 10.1). */
#contenu.dt-accompagnement .catalog-format-card .format-purpose{max-width:none;text-wrap:balance}

/* Haut validé · texte agrandi seulement (200 %) : la gravure des cassettes sortait de la carte et « Dès 5 500 € HT » débordait.
   La gravure passe sous l'étiquette et le prix reste dans sa colonne. Requêtes de conteneur en rem, qui suivent la police racine.
   Conteneurs posés sur le bandeau et sur le prix, jamais sur la cassette (sa sous-grille serait rompue). Au texte normal, de 320
   à 1920 px, le bandeau mesure au moins 162 px (10,1 rem, trois colonnes à 701 px) et le prix au moins 162 px : seuils de 9,5 et
   9 rem, rien ne s'applique, dessin identique. */
/* Bloc de positionnement : la gravure repositionnée à 200 % se place dans son bandeau, et les libellés « .sr-only » des dépliants
   (position absolue) restent dans leur cassette, donc dans la piste mobile, au lieu de déborder du document. */
#contenu.dt-accompagnement .catalog-format-card,#contenu.dt-accompagnement .catalog-format-card .format-art{position:relative}
#contenu.dt-accompagnement .catalog-format-card .format-art{container:dt-format-art/inline-size}
@container dt-format-art (max-width:9.5rem){
 #contenu.dt-accompagnement .catalog-format-card .format-art .format-purpose{margin-bottom:calc(3.75rem + var(--dt-s3))}
 #contenu.dt-accompagnement .catalog-format-card .format-art img{position:absolute;left:1.25rem;bottom:1rem;width:3.75rem;height:3.75rem}
}
/* Étiquettes des cassettes · même nombre de lignes dans une rangée. Elles tiennent sur une ligne quand le bandeau laisse 185 px à la
   plus longue (« 02 / Débloquer une décision »). La requête lit la boîte de contenu du bandeau (hors retraits) : 274 px dès 701 px
   (gravure de 72 px), 262 px sous 701 px (gravure de 60 px).
   Sinon les trois passent sur deux lignes équilibrées, numéro et verbe puis objet (« 01 / Faire | le point », « 02 / Débloquer |
   une décision », « 03 / Consacrer | une journée ») : jamais de « 03 / » isolé, jamais trois lignes. Fenêtre mesurée : 6,25 à 7 rem. */
@media(min-width:701px){@container dt-format-art (min-width:9.5rem) and (max-width:17.125rem){
 #contenu.dt-accompagnement .catalog-format-card .format-art .format-purpose{max-width:8.8em}
}}
@media(max-width:700px){@container dt-format-art (min-width:9.5rem) and (max-width:16.375rem){
 #contenu.dt-accompagnement .catalog-format-card .format-art .format-purpose{max-width:8.8em}
}}
#contenu.dt-accompagnement .catalog-format-card .format-price{container:dt-format-prix/inline-size}
/* « Dès 5 500 € HT » tient sur une ligne dans une cassette de piste à 320 px (prix de 193 px = 12,1 rem) ; dès 360 px (13,75 rem), rien ne change. */
@container dt-format-prix (max-width:12.5rem){#contenu.dt-accompagnement .catalog-format-card .format-price strong{font-size:1.5rem}}
@container dt-format-prix (max-width:9rem){#contenu.dt-accompagnement .catalog-format-card .format-price strong{font-size:1.25rem;white-space:normal}}
/* Texte agrandi, au-delà de 700 px : sous 36 rem de section, les cassettes passent l'une sous l'autre. Au texte normal, la section
   mesure au moins 39,8 rem dès 701 px : la règle ne s'applique jamais. Conteneur sur la section, au-dessus de la sous-grille. */
#contenu.dt-accompagnement #formats{container:dt-formats/inline-size}
@media(min-width:701px){@container dt-formats (max-width:36rem){
 #contenu.dt-accompagnement #formats .format-list{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s4)}
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card{grid-row:auto;grid-template-rows:auto 1fr auto auto auto}
}}

/* Texte agrandi (200 %) sous 701 px : cassettes empilées de 10,9 rem (390 px) ou 8,75 rem (320 px). Retraits intérieurs réduits,
   césure française et titres resserrés, pour que « accompagnement » ou « MSB Express » ne se coupent plus n'importe où. Au texte normal
   la section mesure au moins 17,5 rem (320 px) : la règle ne s'applique jamais. */
@media(max-width:700px){@container dt-formats (max-width:14rem){
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card .msb-format-summary{padding-inline:.75rem}
 #contenu.dt-accompagnement #formats .catalog-format-card .format-art{padding-inline:.75rem}
 #contenu.dt-accompagnement #formats .catalog-format-card .format-art img{left:.75rem}
 #contenu.dt-accompagnement #formats .catalog-format-card .msb-format-actions{padding-inline:.75rem}
 #contenu.dt-accompagnement #formats .catalog-format-card :is(.format-price,.format-notes){margin-inline:.75rem}
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card :is(h3,p,.format-action,summary,small){hyphens:auto;hyphenate-limit-chars:7 3 3;text-wrap:wrap}
 /* « MSB Express » et « MSB Direction » sont liés par une espace insécable : le titre et le bouton se resserrent pour les garder entiers. */
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card h3{font-size:1.125rem}
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card .format-action{padding-inline:.625rem;font-size:.75rem}
}}

/* Formats · dépliants « Détails et modalités » et « Le cadre de règlement » sur la pastille commune (dt-depliant--utilitaire) :
   les marges historiques, effacées par la famille, sont rétablies (retrait de 1,25 rem dans la cassette, écart avant le cadre). */
#contenu.dt-accompagnement .catalog-format-card .format-notes{margin:0 1.25rem}
#contenu.dt-accompagnement #formats .dt-note>*{max-width:none;text-wrap:pretty}
#contenu.dt-accompagnement #formats .commercial-framework{margin-top:var(--dt-s5)}
#contenu.dt-accompagnement #formats .commercial-framework .commercial-terms p{max-width:75ch}

/* Formats · trois colonnes de 901 à 1000 px (plus de cassette orpheline), rangées alignées par sous-grille comme au bureau, même
   gouttière que les tuiles (1 rem), donc mêmes colonnes que leur première rangée. Mesuré de 901 à 1000 px : titres, prix et boutons
   sur une ligne, aucun mot coupé ; écart de hauteur des présentations de 51 px au plus. */
@media(min-width:901px) and (max-width:1000px){
 #contenu.dt-accompagnement .format-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
 #contenu.dt-accompagnement .catalog-format-card .msb-format-summary h3{font-size:1.375rem}
}
@supports(grid-template-rows:subgrid){@media(min-width:901px) and (max-width:1000px){
 #contenu.dt-accompagnement .format-list{row-gap:0}
 #contenu.dt-accompagnement .format-list .catalog-format-card{grid-template-rows:subgrid;grid-row:span 5}
}}
/* Formats · de 701 à 900 px, trois colonnes coupaient « Direction D|ay » et le bouton « Réserver mon entretien » : repli prévu par la
   spec 7.5. Les deux premières cassettes côte à côte, au dessin publié ; la troisième en pleine largeur, lue à l'horizontale. Sous la
   première colonne, son bandeau (même hauteur et même largeur que celui du dessus) puis sa présentation ; sous la seconde, à
   l'aplomb du texte de la cassette 02, le prix à côté du bandeau, le bouton puis les modalités. Aucun aplat plus grand que les autres.
   Seulement quand la section dépasse 36 rem : à 200 % de texte, les cassettes restent l'une sous l'autre (règle ci-dessus). */
@media(min-width:701px) and (max-width:900px){@container dt-formats (min-width:36rem){
 #contenu.dt-accompagnement #formats .format-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card:last-child{grid-column:1/-1;height:auto;grid-template-columns:calc((100% - 1rem) / 2 - 1px) minmax(0,1fr);grid-template-rows:auto auto 1fr;grid-template-areas:"art prix" "resume actions" "resume notes";column-gap:calc(1rem + 2px)}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.format-art{grid-area:art}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.msb-format-summary{grid-area:resume}
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card:last-child>.format-price{grid-area:prix;align-self:center;padding-top:0;border-top:0}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.msb-format-actions{grid-area:actions}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.format-notes{grid-area:notes;align-self:end}
}}
/* Formats · piste de contenus sous 701 px (msb-track dt-defile-contenu, posée par le script à texte ≤ 20 px) : cassettes de même
   hauteur, prix, bouton et dépliant alignés. À 200 % de texte et sans script, les cassettes restent l'une sous l'autre (6.7, 6.8).
   Largeur de carte et aperçu de la suivante identiques à la piste des tuiles juste en dessous (100 % − 2 rem, gouttière 1 rem) :
   310 px à 390, 280 px à 360, 248 px à 320. Bouton plein et titres y tiennent sur une ligne. */
@media(max-width:700px){
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card{grid-template-rows:auto 1fr auto auto auto}
 #contenu.dt-accompagnement #formats .format-list.is-slider{grid-auto-columns:calc(100% - 2rem);gap:1rem}
}
/* Sous 360 px, « Entretien Stratégique » (221 px à 24 px) dépasse les 206 px de texte de la carte : titres de la piste à 21 px. */
@media(max-width:359px){#contenu.dt-accompagnement #formats .format-list.is-slider .catalog-format-card .msb-format-summary h3{font-size:1.3125rem}}

/* Tuiles de programmes · 3 puis 2 de 901 à 1199 px ; 2, 2 puis 1 pleine largeur de 701 à 900 px (plus de colonne vide). */
@media(min-width:901px) and (max-width:1199px){
 #contenu.dt-accompagnement .programme-choices{grid-template-columns:repeat(6,minmax(0,1fr))}
 #contenu.dt-accompagnement .programme-tile{grid-column:span 2}
 #contenu.dt-accompagnement .programme-tile:nth-child(n+4){grid-column:span 3}
}
@media(min-width:701px) and (max-width:900px){
 #contenu.dt-accompagnement .programme-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
 #contenu.dt-accompagnement .programme-tile:last-child{grid-column:1/-1}
}
/* La tuile Direction, pleine largeur, se lit à l'horizontale comme la cassette 03 : sous la première colonne, son bandeau (même hauteur
   de 8,5 rem que les tuiles du dessus) puis l'intention, le titre et l'objectif ; sous la seconde, à l'aplomb du texte de la tuile 04,
   le prix à côté du bandeau et « Voir le programme » en pied. Plus d'aplat marine deux fois plus haut que les autres, plus de moitié
   vide. Seulement quand la section dépasse 36 rem : à 200 % de texte, la tuile garde la présentation empilée. */
@media(min-width:701px) and (max-width:900px){@container dt-programmes (min-width:36rem){
 #contenu.dt-accompagnement .programme-tile:last-child .programme-route{display:grid;grid-template-columns:calc((100% - 1rem) / 2 - 1px) minmax(0,1fr);grid-template-rows:auto auto auto 1fr;grid-template-areas:"art prix" "intention lien" "titre lien" "objectif lien";column-gap:calc(1rem + 2px)}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-summary{display:contents}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-art{grid-area:art}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-summary>:is(.small-label,.dt-signature-label){grid-area:intention;margin:1.125rem 1.125rem 0}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-summary>h3{grid-area:titre;margin:.5rem 1.125rem .75rem}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-summary>.card-objective{grid-area:objectif;margin:0 1.125rem 1.125rem}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-summary>.card-budget{grid-area:prix;align-self:center;margin:0 1.125rem;padding:0}
 #contenu.dt-accompagnement .programme-tile:last-child .programme-summary>.programme-discover{grid-area:lien;align-self:end;width:auto;margin:0 1.125rem 1.125rem}
}}

/* Texte agrandi (200 %), au bureau : les cinq tuiles de 232 px ne contiennent plus « redressement. » ; sous 50 rem de section, deux
   colonnes, la dernière pleine largeur. Au texte normal, la section mesure au moins 62 rem dès 1200 px : la règle ne s'applique jamais. */
#contenu.dt-accompagnement #programmes{container:dt-programmes/inline-size}
@media(min-width:1200px){@container dt-programmes (max-width:50rem){
 #contenu.dt-accompagnement .programme-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
 #contenu.dt-accompagnement .programme-tile:last-child{grid-column:1/-1}
}}
/* Piste historique des tuiles (≤ 700 px) : la première tuile s'aligne sur l'axe du texte, comme les pistes dt (4 px de décalage). */
@media(max-width:700px){#contenu.dt-accompagnement .programme-choices.is-slider{margin-inline:-4px}}

/* Guide « Comment choisir et démarrer ? » : questions du catalogue sur la pastille commune (dt-questions__liste + dt-question). */
#contenu.dt-accompagnement .dt-guide{margin-top:var(--dt-entete-gap)}
#contenu.dt-accompagnement .dt-guide>.dt-guide__regle>.disclosure-body{max-width:none;margin-right:0}
#contenu.dt-accompagnement .dt-guide .choice-rule{margin:0;padding:0;border:0;background:none}
#contenu.dt-accompagnement .dt-guide .choice-rule-title{margin:0 0 var(--dt-s4);max-width:none;font:350 1.375rem/1.3 var(--serif);letter-spacing:-.01em;color:var(--dt-texte)}
#contenu.dt-accompagnement .dt-guide .choice-rule-title em{font-style:italic;color:var(--dt-or-texte)}
#contenu.dt-accompagnement .dt-guide .choice-rule ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dt-s4) var(--dt-gouttiere);margin:0;padding:0;list-style:none}
#contenu.dt-accompagnement .dt-guide .choice-rule li{min-width:0;margin:0;padding:var(--dt-s3) 0 0;border-top:1px solid var(--dt-filet);font:400 var(--dt-petit)/1.65 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-accompagnement .dt-guide .choice-rule .serial{display:block;margin:0 0 var(--dt-s2);font:350 1rem/1.4 var(--serif);color:var(--dt-or-texte)}
#contenu.dt-accompagnement .dt-guide .choice-rule strong{display:block;margin:0 0 var(--dt-s2);font:600 .9375rem/1.5 var(--label);color:var(--dt-texte)}
#contenu.dt-accompagnement .dt-guide .choice-rule p{margin:0;max-width:none;padding:0;background:none;font:400 var(--dt-petit)/1.75 var(--sans);color:var(--dt-texte-doux)}
@media(max-width:700px){#contenu.dt-accompagnement .dt-guide .choice-rule ol{grid-template-columns:minmax(0,1fr)}}

/* Raccord haut validé → bas : la section des programmes garde son padding bas historique (clamp(2.5rem,5vw,4rem)) ;
   la première section refaite n'en ajoute que le complément, pour un seul écart --dt-section (96 px à 1440 au lieu de 160). */
#contenu.dt-accompagnement #programmes+.dt-section{padding-top:max(var(--dt-s4),calc(var(--dt-section) - clamp(2.5rem,5vw,4rem)))}

/* Bénéfices · les trois gravures reposent sur la même ligne de base. La tour-escalier, haute et étroite (27 px de large dans la boîte
   de 72 px), est plus grande d'1 rem pour un poids optique comparable : elle garde le haut à la marge commune de la carte (plus de
   gravure collée au filet or) et grandit vers le bas. Les deux autres gardent leur dessin de 72 px, posé sur la même ligne de base
   (retrait haut d'1 rem dans une boîte de même hauteur). La rangée de gravures grandit d'1 rem. */
#contenu.dt-accompagnement .dt-benefice__art{box-sizing:border-box;height:calc(4.5rem + 1rem);padding-top:1rem;object-position:left bottom}
#contenu.dt-accompagnement .dt-benefice__art--haute{padding-top:0}

/* Interlocuteur : le dépliant « Qui conduit la prestation ? » prend toute la colonne du texte. */
#contenu.dt-accompagnement .dt-preuve .dt-depliant--marine{align-self:stretch;width:100%;margin-top:var(--dt-s2)}

/* Questions : les conditions détaillées ferment la colonne de titre (légende de 14 px, liens soulignés). */
#contenu.dt-accompagnement .dt-questions__aside>.dt-conditions{max-width:40ch;font:400 var(--dt-petit)/1.9 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-accompagnement .dt-conditions a{color:var(--dt-texte);text-decoration:underline 1px var(--dt-or);text-underline-offset:.25em}
@media(hover:hover) and (pointer:fine){#contenu.dt-accompagnement .dt-conditions a:hover{color:var(--dt-or-texte);text-decoration-thickness:2px}}

/* Billet : le nom de la prestation se lit au-dessus du prix. */
#contenu.dt-accompagnement .dt-billet__prix>.dt-billet__kicker{margin:0 0 var(--dt-s2)}

/* Allègement du 24/10 : même rangée de programmes sur tablette, sans dernière carte étirée.
   Texte agrandi : le repli .is-text-expanded du composant commun reste prioritaire. */
@media(min-width:701px) and (max-width:1200px){
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded){display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 1rem) / 2.2);gap:1rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:4px;margin-inline:-4px;padding:4px 4px 1rem;align-items:stretch}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-tile{grid-row:auto;grid-column:auto;scroll-snap-align:start}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-route{display:flex;flex-direction:column;height:100%;grid-template-areas:none;gap:0}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-summary{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:1.125rem}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-summary>:is(.small-label,.dt-signature-label,h3,.card-objective,.card-budget,.programme-discover){grid-area:auto;margin:0;width:100%}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-summary>h3{margin-top:.5rem}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .card-objective{margin-top:.75rem;flex:1}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-summary>.card-budget{margin-top:1.25rem;padding:0}
 #contenu.dt-accompagnement .programme-choices.dt-defile--sous-1200:not(.is-text-expanded) .programme-summary>.programme-discover{margin-top:1.25rem;align-self:stretch}
}

/* Retours commerciaux · 24 octobre 2026. */
#contenu.dt-accompagnement .programme-summary>h3 .dt-signature-label--secondaire{display:block;width:fit-content;margin:var(--dt-s2) 0 0;padding:.25rem .5rem;font-size:var(--dt-etiquette);line-height:1.5}


/* Modalités indépendantes · 24 octobre 2026.
   La sous-grille aligne les quatre rangées du résumé commercial. Le cadre des
   modalités s'arrête à son propre contenu : aucun fond ni bord étiré chez les voisins. */
#contenu.dt-accompagnement #formats .format-list .catalog-format-card{height:auto;align-self:stretch;background:none;border:0;grid-template-rows:subgrid;grid-row:span 5;grid-template-columns:minmax(0,1fr);grid-template-areas:none;gap:0}
#contenu.dt-accompagnement #formats .catalog-format-core{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 4;min-width:0;background:var(--paper);border:1px solid var(--line);border-bottom:0}
#contenu.dt-accompagnement #formats .catalog-format-card>.format-notes{grid-area:auto;align-self:start;margin:0;padding:0 1.25rem;background:var(--paper);border:1px solid var(--line);border-top:0}
#contenu.dt-accompagnement #formats .catalog-format-card>.format-notes>summary{border-top:1px solid var(--line)}
#contenu.dt-accompagnement #formats .catalog-format-core>.format-price{display:flex;flex-direction:column;gap:.25rem;width:auto;min-height:0;margin:0 1.25rem;padding:.875rem 0 0;border-top:1px solid var(--line)}
#contenu.dt-accompagnement #formats .catalog-format-core>.format-price strong{font:350 clamp(1.75rem,1.4rem + .65vw,2.125rem)/1.25 var(--serif);white-space:normal;overflow-wrap:normal}
#contenu.dt-accompagnement #formats .catalog-format-core>.format-price small{font:400 .8125rem/1.6 var(--sans);margin:0}
@container dt-format-prix (max-width:12.5rem){#contenu.dt-accompagnement #formats .catalog-format-core>.format-price strong{font-size:1.5rem}}
@container dt-format-prix (max-width:9rem){#contenu.dt-accompagnement #formats .catalog-format-core>.format-price strong{font-size:1.25rem;white-space:normal}}
@media(min-width:701px) and (max-width:900px){@container dt-formats (min-width:36rem){
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card:last-child{grid-column:1/-1;grid-row:span 2;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:none}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.format-notes{grid-area:auto;align-self:start}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.catalog-format-core{grid-row:auto;grid-template-columns:calc((100% - 1rem) / 2 - 1px) minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"art prix" "resume actions";column-gap:calc(1rem + 2px)}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.catalog-format-core>.format-art{grid-area:art}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.catalog-format-core>.msb-format-summary{grid-area:resume}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.catalog-format-core>.format-price{grid-area:prix;align-self:center;padding-top:0;border-top:0}
 #contenu.dt-accompagnement #formats .catalog-format-card:last-child>.catalog-format-core>.msb-format-actions{grid-area:actions;align-self:center}
}}
@media(max-width:700px){
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card{grid-row:1/span 5}
 @container dt-formats (max-width:14rem){#contenu.dt-accompagnement #formats .catalog-format-card>.format-notes{padding-inline:.75rem}}
}
@supports not (grid-template-rows:subgrid){
 #contenu.dt-accompagnement #formats .format-list .catalog-format-card{grid-row:auto;grid-template-rows:auto auto;align-self:start}
 #contenu.dt-accompagnement #formats .catalog-format-core{grid-row:auto;grid-template-rows:auto auto auto auto}
}

/* Finitions mobile : résumés proportionnés et intention dans le bandeau. */
#contenu.dt-accompagnement #formats .catalog-format-core>.msb-format-summary{min-height:0;padding-bottom:1.125rem}
#contenu.dt-accompagnement .programme-art{position:relative;height:10rem;min-height:10rem;padding:2.5rem 1rem 2rem}
#contenu.dt-accompagnement .programme-art .programme-number{top:.75rem;left:1rem;right:1rem;font-size:.75rem;line-height:1.5;letter-spacing:.04em}
#contenu.dt-accompagnement .programme-art img{width:4.5rem;height:4.5rem;max-height:none;flex-shrink:0}
#contenu.dt-accompagnement .programme-summary>h3{margin-top:0}
#contenu.dt-accompagnement .programme-tile--signature .programme-art .dt-signature-badge{top:auto;bottom:.625rem;right:.625rem;padding:.25rem .5rem;font-size:.625rem}
#contenu.dt-accompagnement .programme-tile--signature .programme-art{padding-bottom:2rem}
/* Dimensions des boutons : règle commune dans dt-composants.css. */

/* Le mot accompagnement reste dans sa colonne du héros sur tablette. */
@media(min-width:701px) and (max-width:1000px){#contenu.dt-accompagnement .catalog-head h1{font-size:clamp(2rem,5.3vw,3rem)}}

/* Revue multi-méthodes, 26/10 : une seule famille de prestations sur tablette.
   La piste est activée par le composant existant. Sans script ou à texte agrandi,
   le repli lisible en grille est conservé. Les dépliants restent indépendants. */
#contenu.dt-accompagnement #formats .format-list:not(.is-slider){scroll-snap-type:none}
@media(min-width:701px) and (max-width:1200px){
 #contenu.dt-accompagnement #formats .format-list.is-slider{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 1rem) / 2.15);grid-template-rows:repeat(5,auto);gap:0 1rem;padding:4px 4px 1rem;scroll-padding-inline:4px;margin-inline:-4px}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card{grid-column:auto;grid-row:1/span 5;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-template-areas:none;column-gap:0}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card>.catalog-format-core{grid-row:span 4;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-template-areas:none;column-gap:0}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card>.catalog-format-core>*{grid-area:auto;align-self:stretch}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card>.catalog-format-core>.format-price{padding-top:.875rem;border-top:1px solid var(--line)}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card>.format-notes{grid-area:auto;align-self:start}
}
@supports not (grid-template-rows:subgrid){@media(min-width:701px) and (max-width:1200px){
 #contenu.dt-accompagnement #formats .format-list.is-slider{grid-template-rows:auto}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card{grid-row:1;grid-template-rows:1fr auto}
 #contenu.dt-accompagnement #formats .format-list.is-slider>.catalog-format-card>.catalog-format-core{grid-row:1;grid-template-rows:auto 1fr auto auto}
}}

/* dt-insights.css · chantier design total du 21 octobre 2026 (Claude Code). Sélecteurs limités à leur zone.
   Zone Insights et cassettes partagées avec l'accueil. Base : spécification 7.6, puis recette de la zone (marquée « Recette »). */

/* À la une : bandeau marine compact (≈ 340 px à 1440), autre gravure que le héros, carte entière cliquable */
#contenu.dt-insights .dt-une-section__titre{margin:0 0 var(--dt-s4)}
/* Recette (tour 2) : la section est le conteneur de requête d'À la une (bascule à texte agrandi, plus bas). */
#contenu.dt-insights .dt-une-section{container:dt-une/inline-size}
#contenu.dt-insights .dt-une{position:relative;display:grid;grid-template-columns:minmax(0,1fr) clamp(10rem,18vw,15rem);column-gap:var(--dt-gouttiere);align-items:center;margin:0;padding:var(--dt-pad-panneau);background:var(--dt-marine);color:var(--dt-creme);border:0}
#contenu.dt-insights .dt-une__couverture{grid-column:2;grid-row:1;display:block;margin:0}
#contenu.dt-insights .dt-une .insight-cover{width:100%;height:auto;aspect-ratio:1;margin:0;border:0;background:transparent}
#contenu.dt-insights .dt-une .insight-cover :is(.cover-index,.cover-rule,.cover-signature){display:none}
#contenu.dt-insights .dt-une .insight-cover img{opacity:1;filter:var(--gravure-marine)}
/* Recette (tour 2) : le cercle pâle des couvertures (harmonie.css, inset 18 %) mesurait 151 px pour une montgolfière de 178 px
   à 1440 et coupait le ballon et la nacelle ; la gravure se lit seule sur le marine, comme celle du héros. */
#contenu.dt-insights .dt-une .insight-cover::before{content:none}
#contenu.dt-insights .dt-une__texte{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s4);min-width:0}
#contenu.dt-insights .dt-une__texte>*{margin:0}
#contenu.dt-insights .dt-une__titre{max-width:24ch;font:350 var(--dt-h2)/1.16 var(--serif);letter-spacing:-.02em;color:var(--dt-creme);text-wrap:balance}
#contenu.dt-insights .dt-une__texte>p{max-width:60ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu.dt-insights .dt-une__pied{display:flex;flex-wrap:wrap;align-items:center;gap:var(--dt-s3) var(--dt-s5)}
#contenu.dt-insights .dt-une .article-lecture{margin:0;padding:0;border:0;background:none}
#contenu.dt-insights .dt-une .article-lecture>summary{display:inline-flex;align-items:center;gap:var(--dt-s4);min-height:3.25rem;margin:0;padding:.875rem 1.5rem;border:0;border-radius:2rem;background:var(--dt-creme);color:var(--dt-marine);list-style:none;cursor:pointer;font:600 .9375rem/1.5 var(--label);text-decoration:none;transition:background-color var(--dt-duree) var(--dt-courbe)}
#contenu.dt-insights .dt-une .article-lecture>summary::-webkit-details-marker{display:none}
#contenu.dt-insights .dt-une .article-lecture>summary::after{content:none}
#contenu.dt-insights .dt-une .article-lecture{min-width:0;max-width:100%}
#contenu.dt-insights .dt-une .article-lecture>summary{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
/* À 320 px avec texte doublé, conserver le libellé entier sans élargir le panneau. */
@container dt-une (max-width:12rem){
 #contenu.dt-insights .dt-une .article-lecture>summary{padding-inline:.375rem;gap:.25rem}
}
#contenu.dt-insights .dt-une .article-lecture>summary .action-arrow{width:var(--action-icon-size);height:var(--action-icon-size)}
#contenu.dt-insights .dt-une .article-lecture:not([open])>summary::before{content:"";position:absolute;inset:0;z-index:1}
#contenu.dt-insights .dt-une .publication-state{margin:0;padding:0;border:0;background:none;font:400 var(--dt-petit)/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--dt-texte-sur-marine)}
@supports selector(:has(*)){
 #contenu.dt-insights .dt-une:has(summary:focus-visible){outline:2px solid var(--dt-focus);outline-offset:4px}
 #contenu.dt-insights .dt-une summary:focus-visible{outline:0}
 #contenu.dt-insights .dt-une:has(.article-lecture[open]){grid-template-columns:minmax(0,1fr)}
 #contenu.dt-insights .dt-une:has(.article-lecture[open]) .dt-une__couverture{display:none}
 #contenu.dt-insights .journal-upcoming:not(:has(article:not([hidden]))){display:none}
}
@media(hover:hover) and (pointer:fine){#contenu.dt-insights .dt-une:hover .article-lecture>summary{background:var(--dt-sable)}}
/* Recette · bureau : la gravure d'À la une se centre sur l'axe signature (911 px à 1440, 656 px à 1024), à l'aplomb
   du carré du héros et de l'emblème du billet : livre-plume, montgolfière et emblème taureau sur une même verticale. */
@media(min-width:1001px){
 #contenu.dt-insights .dt-une{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);column-gap:var(--dt-gap-signature);padding:0}
 #contenu.dt-insights .dt-une__texte{padding:var(--dt-pad-panneau) 0 var(--dt-pad-panneau) var(--dt-pad-panneau)}
 #contenu.dt-insights .dt-une__couverture{justify-self:center;width:clamp(10rem,18vw,15rem)}
 #contenu.dt-insights .dt-une:has(.article-lecture[open]) .dt-une__texte{padding-right:var(--dt-pad-panneau)}
}
@media(max-width:700px){
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre){grid-template-columns:min(6rem,96px) minmax(0,1fr);container-type:inline-size;container-name:insight-cassette}
 #contenu.dt-insights .dt-une{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s4)}
 #contenu.dt-insights .dt-une__couverture{grid-column:1;grid-row:1;width:6rem}
 #contenu.dt-insights .dt-une__texte{grid-row:2}
 /* Recette : le details se rétractait sur son libellé ; il prend la ligne, comme le bouton du héros en mobile.
    Tour 1 : le pied lui-même se rétractait sur son contenu (pastille de 343 px pour 491 px utiles à 601 px) ; il prend la colonne. */
 #contenu.dt-insights .dt-une__pied{align-self:stretch}
 #contenu.dt-insights .dt-une .article-lecture{flex:1 1 100%}
 #contenu.dt-insights .dt-une .article-lecture>summary{width:100%;justify-content:space-between}
}
/* Recette (tour 2) · texte agrandi au-delà de 700 px : la colonne de couverture est en rem et grandit avec le texte
   (320 px à 200 %) ; à 768 px il ne restait que 218 px au texte (titre sur cinq lignes, pastille coupée en deux).
   Quand la section passe sous 38 rem de la police racine, À la une prend la forme mobile : gravure de 6 rem au-dessus,
   texte en pleine largeur, pastille sur toute la ligne. Au texte normal la section mesure au moins 39,7 rem dès 701 px
   (barre de défilement classique comprise) : la bascule ne joue qu'à texte agrandi (150 % jusqu'à 1024 px, 200 % jusqu'à 1280 px). */
@media(min-width:701px){@container dt-une (max-width:38rem){
 #contenu.dt-insights .dt-une{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s4);padding:var(--dt-pad-panneau)}
 #contenu.dt-insights .dt-une__couverture{grid-column:1;grid-row:1;justify-self:start;width:6rem}
 #contenu.dt-insights .dt-une__texte{grid-column:1;grid-row:2;padding:0}
 #contenu.dt-insights .dt-une:has(.article-lecture[open]) .dt-une__texte{padding-right:0}
 #contenu.dt-insights .dt-une__pied{align-self:stretch}
 #contenu.dt-insights .dt-une .article-lecture{flex:1 1 100%}
 #contenu.dt-insights .dt-une .article-lecture>summary{width:100%;justify-content:space-between}
}}

/* Retours du 23/10 · cassettes communes à Insights et à l'accueil.
   Le contenu fixe la hauteur : ni cinq rangées de sous-grille, ni pied repoussé par une hauteur vide.
   Une couverture panoramique et une seule action de lecture ; la gravure n'est pas un second lien. */
#contenu:is(.dt-insights,.dt-index) .dt-insights-grille{align-items:start;grid-auto-rows:auto}
#contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])){height:auto;min-height:0;grid-row:auto;align-self:start}
#contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre)>.dt-insight__texte{flex:0 1 auto;grid-row:auto;gap:var(--dt-s2);padding:var(--dt-s4)}
#contenu:is(.dt-insights,.dt-index) .dt-insight__pied{margin-top:var(--dt-s2);padding-top:0;border-top:0}
#contenu:is(.dt-insights,.dt-index) .dt-insight__couverture{overflow:hidden}
#contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])) .insight-cover{min-height:0;aspect-ratio:2/1}
#contenu:is(.dt-insights,.dt-index) .dt-insight .insight-cover :is(.cover-index,.cover-rule,.cover-signature){display:none}
#contenu:is(.dt-insights,.dt-index) .dt-insight .insight-cover::before,#contenu:is(.dt-insights,.dt-index) .dt-insight .insight-cover::after{content:none}
#contenu:is(.dt-insights,.dt-index) .dt-insight .insight-cover>img{width:68%;height:82%;max-height:none;transform:none}
@media(min-width:701px){
 #contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])){display:flex;flex-direction:column}
 #contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open]))>.dt-insight__texte{display:flex;flex-direction:column}
}
/* Les vignettes latérales de la liste mobile restent carrées ; les pistes de l'accueil restent panoramiques. */
@media(max-width:700px){
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])) .insight-cover{aspect-ratio:1}
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre)>.dt-insight__couverture{grid-row:1/span 2}
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .dt-insight__texte>p{grid-column:1/-1}
}
/* La gravure décorative ne grossit pas avec le texte et ne comprime pas le titre. */
@media(max-width:400px){#contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre){grid-template-columns:min(4.5rem,72px) minmax(0,1fr)}}
@container insight-cassette (max-width:18rem){
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre)>.dt-insight__couverture{grid-row:1}
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .dt-insight__texte>h2{grid-column:1/-1}
 #contenu.dt-insights .dt-insights-grille:not(.dt-defile)>.dt-insight:not(.dt-insight--a-paraitre) .dt-insight__texte>.eyebrow{align-self:center}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 #contenu:is(.dt-insights,.dt-index) .dt-insight:not(.dt-insight--a-paraitre):hover .insight-cover>img{transform:scale(1.025)}
}
@media(prefers-reduced-motion:reduce){
 #contenu:is(.dt-insights,.dt-index) .dt-insight .insight-cover>img{transition:none;transform:none}
}

/* Collection : étiquette, barre de filtres sur sable, grille de cassettes */
#contenu.dt-insights .journal-list{display:block}
#contenu.dt-insights .dt-collection>.dt-etiquette{margin:0 0 var(--dt-s4)}
#contenu.dt-insights .journal-filters{display:grid;grid-template-columns:repeat(2,minmax(0,16rem)) minmax(0,1fr);align-items:end;gap:var(--dt-s4) var(--dt-s5);margin:0 0 var(--dt-entete-gap);padding:var(--dt-s5);background:var(--dt-sable);border:0;border-radius:2px}
#contenu.dt-insights .journal-filters label{display:flex;flex-direction:column;gap:var(--dt-s2);margin:0;font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte-sable)}
#contenu.dt-insights .journal-filters select{width:100%;min-height:3rem;margin:0;padding:0 2.25rem 0 .875rem;border:1px solid var(--dt-contour-champ);border-radius:6px;background-color:#fffefb;font:400 var(--dt-corps)/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--dt-texte)}
/* Recette · filtres soignés : chevron dessiné en CSS (même trait dans tous les navigateurs, aucune image), survol marine ;
   le chevron natif revient en couleurs forcées. */
#contenu.dt-insights .journal-filters select{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--dt-marine) 50%),linear-gradient(135deg,var(--dt-marine) 50%,transparent 50%);background-position:calc(100% - 1.375rem) 52%,calc(100% - 1rem) 52%;background-size:.375rem .375rem;background-repeat:no-repeat;transition:border-color var(--dt-duree) var(--dt-courbe)}
@media(hover:hover) and (pointer:fine){#contenu.dt-insights .journal-filters select:hover{border-color:var(--dt-marine)}}
@media(forced-colors:active){#contenu.dt-insights .journal-filters select{appearance:auto;-webkit-appearance:auto;background-image:none}}
#contenu.dt-insights #journal-reset{grid-column:3;justify-self:end;align-self:end;min-height:3rem;margin:0;padding:0 .25rem}
#contenu.dt-insights #journal-count{grid-column:1/-1;margin:0;padding:0;font:400 var(--dt-petit)/1.6 var(--sans);letter-spacing:0;text-transform:none;color:var(--dt-texte-doux)}
/* Recette · bureau : une seule rangée, compteur et « Tout afficher » calés à droite sur la ligne des champs.
   En ligne souple et non en grille : à texte agrandi (200 %), le compteur passe sous les champs au lieu de s'écraser
   sur six lignes dans une colonne étroite. */
@media(min-width:1001px){
 #contenu.dt-insights .journal-filters{display:flex;flex-wrap:wrap;align-items:flex-end}
 #contenu.dt-insights .journal-filters label{flex:0 1 16rem;min-width:0}
 #contenu.dt-insights #journal-count{order:1;flex:1 0 auto;display:flex;align-items:center;justify-content:flex-end;min-height:3rem;text-align:right}
 #contenu.dt-insights #journal-count[hidden]{display:none}
 #contenu.dt-insights #journal-reset{order:2;flex:none}
}
/* Recette (tour 2) · « Tout afficher » reste calé à droite quand le compteur disparaît (combinaison vide, compteur masqué) :
   il se collait au second champ, vers x 588 à 1440. */
@media(min-width:701px){#contenu.dt-insights #journal-reset{margin-left:auto}}
/* Recette · tablette : deux champs de même largeur, compteur et « Tout afficher » sur la ligne suivante.
   Tour 2 : en ligne souple, chaque champ garde au moins 16 rem (la valeur « Toutes les thématiques » demande 13,9 rem, chevron
   compris) ; à texte agrandi, les deux listes passent l'une sous l'autre en pleine largeur au lieu de rogner leur valeur
   (« Toutes les th » à 200 %). */
@media(min-width:701px) and (max-width:1000px){
 #contenu.dt-insights .journal-filters{display:flex;flex-wrap:wrap;align-items:flex-end}
 #contenu.dt-insights .journal-filters label{flex:1 1 calc((100% - var(--dt-s5)) / 2);min-width:min(100%,16rem)}
 #contenu.dt-insights #journal-count{order:1;flex:1 1 auto;align-self:center}
 #contenu.dt-insights #journal-count[hidden]{display:none}
 #contenu.dt-insights #journal-reset{order:2;flex:none}
}
/* Recette : pas de filet au-dessus des « Prochains sujets » (filet de haut de groupe à 48 px du bas des cassettes,
   paire interdite relevée par la sonde à 390) ; l'étiquette et un écart de bande suffisent à ouvrir le groupe. */
#contenu.dt-insights .journal-upcoming{grid-column:1/-1;min-width:0;margin-top:var(--dt-bande-y);padding-top:0;border-top:0}
#contenu.dt-insights .journal-upcoming>.dt-etiquette{margin:0 0 var(--dt-s4)}
/* Recette (tour 1) · « Prochains sujets » : une seule mise en page de cassette à toutes les largeurs, vignette au-dessus du texte,
   comme dans la rangée de cinq du bureau. Dans la piste (701 à 1200 px, cassettes d'environ 260 px), la vignette de 4 rem posée
   à gauche ne laissait qu'environ 140 px au texte : titres sur quatre ou cinq lignes. Vignette portée à 4,5 rem pour que la
   gravure se lise ; la mention « À paraître » se pose au pied de chaque cassette (cassettes de même hauteur dans la rangée et la piste). */
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s2)}
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre>.insight-cover{width:4.5rem;height:4.5rem;margin:0 0 var(--dt-s2)}
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre .publication-state{margin-top:var(--dt-s1)}
/* Les annonces gardent leur hauteur de contenu ; aucun espace n'est réservé pour une action inexistante. */
#contenu.dt-insights .dt-insights-a-venir{align-items:start;grid-auto-rows:auto}
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre{display:flex;grid-row:auto;align-self:start;min-height:0;height:auto}
/* Les sujets sans piste active restent dans le flux : aucun défilement vide sur un seul résultat ou sans JavaScript. */
@media(max-width:1200px){
 #contenu.dt-insights .dt-insights-a-venir:not(.is-slider){display:grid;grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));overflow:visible;scroll-snap-type:none;scroll-padding:0;margin:0;padding:0}
 #contenu.dt-insights .dt-insights-a-venir:not(.is-slider)::after{content:none}
}
@media(min-width:1201px){
 /* Recette : couverture en 2:1 dans la rangée de trois ; à 16:9, la deuxième rangée (titre de trois lignes, chapeau de cinq)
    montait à 578 px pour un plafond de 560 px à 1440 (spécification 10.2). */
 #contenu.dt-insights .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre) .insight-cover{aspect-ratio:2/1}
 /* Cinq colonnes au texte normal ; à texte agrandi, autant de colonnes de 11 rem que la largeur en admet (sinon les titres
    étaient rognés dans des cassettes de 226 px à 200 %). */
 #contenu.dt-insights .dt-insights-a-venir{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:var(--dt-gap-cartes)}
}
/* Recette : le message de combinaison vide prend la forme d'une cassette (papier, filet, angle de 2 px) au lieu du cartouche
   arrondi historique ; la barre de filtres donne déjà l'écart au-dessus. */
#contenu.dt-insights .journal-empty{margin:0;padding:var(--dt-pad-carte);background:var(--dt-papier);border:1px solid var(--dt-filet);border-radius:2px;font:400 var(--dt-corps)/1.7 var(--sans);color:var(--dt-texte-doux)}
/* Recette (tour 2) · mobile : deux colonnes seulement quand chacune garde 14,5 rem ; de 401 à environ 540 px, les deux
   colonnes de 157 à 190 px rognaient « Toutes les thématiques » (223 px demandés) dès le texte normal. Une colonne sinon. */
@media(max-width:700px){
 #contenu.dt-insights .journal-filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,14.5rem),1fr));padding:var(--dt-s4)}
 #contenu.dt-insights #journal-reset{grid-column:1/-1;justify-self:start}
}

/* Recette (tour 1) · « Pour commencer » : la note de réservation (quatre phrases, TTC compris) quitte le billet, qui retrouve
   la forme du pilote, tout centré : gravure, 500 € HT, durée, bouton. Elle se lit en petite note sous le paragraphe, dans la
   colonne de texte alignée à gauche ; le lien « Découvrir l'Entretien Stratégique » reste le dernier texte du panneau. */
#contenu.dt-insights .dt-decision__texte>.dt-decision__note{max-width:64ch;font:400 var(--dt-legende)/1.7 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu.dt-insights .dt-decision__note a{color:var(--dt-creme);text-decoration:underline 1px var(--dt-or-clair);text-underline-offset:.25em}

/* Lettre mensuelle : sortie de son dépliant, bandeau sable, formulaire intouché */
#contenu.dt-insights .dt-lettre__etiquette{margin:0 0 var(--dt-s4)}
#contenu.dt-insights .dt-lettre__serie::before{content:"·";content:"·" / "";margin:0 .6em}
#contenu.dt-insights .dt-lettre__grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-s5);align-items:start}
#contenu.dt-insights .dt-lettre__grille>div>:not(form){margin:0}
#contenu.dt-insights .dt-lettre__grille>div>p{max-width:52ch;margin-top:var(--dt-s4);font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
@media(max-width:1000px){#contenu.dt-insights .dt-lettre__grille{grid-template-columns:minmax(0,1fr)}}
/* Recette · mobile : « · LA / LETTRE MENSUELLE » se coupait au milieu ; la série passe sur sa propre ligne, sans point. */
@media(max-width:700px){
 #contenu.dt-insights .dt-lettre__serie{display:block;margin-top:var(--dt-s1)}
 #contenu.dt-insights .dt-lettre__serie::before{content:none}
}
/* Rejoindre le collectif : le panneau marine respire */
#contenu.dt-insights .dt-depliant--utilitaire>.recruit-call{margin:var(--dt-s2) 0 var(--dt-s4);padding:clamp(1.5rem,4vw,2.5rem)}
/* Recette : la règle commune du dépliant utilitaire (texte doux #3E5668) s'appliquait au paragraphe du panneau marine
   ouvert, illisible (environ 1,9:1). Le panneau garde le texte clair sur marine, au corps courant. */
#contenu.dt-insights .dt-depliant--utilitaire .recruit-call p{font:400 var(--dt-corps)/1.7 var(--sans);color:var(--dt-texte-sur-marine)}

/* V10 · pieds alignés par rangée, sans hauteur fixe ni vide imposé sur mobile. */
@media(min-width:701px){
 #contenu:is(.dt-insights,.dt-index) .dt-insights-grille{align-items:stretch}
 #contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open])){align-self:stretch}
 #contenu:is(.dt-insights,.dt-index) .dt-insights-grille>.dt-insight:not(.dt-insight--a-paraitre):not(:has(.article-lecture[open]))>.dt-insight__texte{flex:1}
 #contenu:is(.dt-insights,.dt-index) .dt-insight__pied{margin-top:auto;padding-top:var(--dt-s3)}
}
/* V05 · même action visible dans le lecteur et dans le contenu natif sans JS. */
.reader-content .article-conversion,.article-corps .article-conversion{margin:1.5rem 0}
.reader-content a.article-conversion__action,.article-corps a.article-conversion__action{display:inline-flex;align-items:center;justify-content:space-between;gap:1.25rem;min-height:3rem;max-width:100%;padding:.875rem 1.5rem;border:1px solid var(--dt-marine);border-radius:2rem;background:var(--dt-marine);color:var(--dt-creme);font:600 .9375rem/1.5 var(--label);text-decoration:none}
.reader-content a.article-conversion__action:focus-visible,.article-corps a.article-conversion__action:focus-visible{outline:3px solid var(--dt-or);outline-offset:4px}
@media(hover:hover) and (pointer:fine){.reader-content a.article-conversion__action:hover,.article-corps a.article-conversion__action:hover{background:var(--dt-marine-eleve);color:var(--dt-creme)}}

/* Retours commerciaux · 24 octobre 2026. */
#contenu.dt-insights .dt-insights-a-venir{align-items:stretch;grid-auto-rows:1fr}
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre{align-self:stretch;height:auto}
#contenu.dt-insights .dt-insights-a-venir .dt-insight__texte{display:flex;flex-direction:column;flex:1;align-items:flex-start;gap:var(--dt-s3)}
#contenu.dt-insights .dt-insights-a-venir .dt-insight__texte>*{margin:0}
#contenu.dt-insights .dt-insights-a-venir .publication-state{margin-top:auto}
#contenu.dt-insights .dt-insights-a-venir.is-slider{grid-template-rows:none}


/* Finition servie : marges propres aux annonces, badge aligné en bas. */
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre .dt-insight__texte{width:100%;box-sizing:border-box;padding:0}
#contenu.dt-insights .dt-insights-a-venir>.dt-insight--a-paraitre .dt-insight__texte>.publication-state{margin-top:auto}

/* Bibliothèque éditoriale et quiz : un gabarit, aucune collecte ni appel réseau. */
#contenu.dt-insights .journal-list .dt-insights-grille{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
#contenu.dt-insights .journal-list .dt-insights-grille>.dt-insight:not(:has(.article-lecture[open])){height:100%;align-self:stretch;display:flex;flex-direction:column;min-height:0;grid-row:auto}
#contenu.dt-insights .journal-list .dt-insight__texte{display:flex;flex-direction:column;flex:1;gap:.75rem;padding:1.25rem}
#contenu.dt-insights .journal-list .dt-insight__texte>p{font:400 .875rem/1.65 var(--sans);margin:0}
#contenu.dt-insights .journal-list .dt-insight__titre{font-size:var(--dt-h3-s);line-height:1.3;margin:0}
#contenu.dt-insights .journal-list .dt-insight__pied{margin-top:auto;padding-top:.5rem}
#contenu.dt-insights .journal-list .insight-cover{height:7.5rem;aspect-ratio:auto;min-height:0}
#contenu.dt-insights .journal-list .insight-cover img{height:6rem;width:6rem}
#contenu.dt-insights .journal-list .cover-signature{display:none}
#contenu.dt-insights .journal-list .cover-index{font-size:.625rem}
#contenu.dt-insights .journal-list .dt-insight[hidden],#contenu.dt-insights .journal-pagination[hidden]{display:none}
.journal-pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:1.5rem;font:600 .875rem/1.5 var(--label)}
.journal-pagination button{min-width:44px;min-height:44px;border:1px solid var(--dt-or);border-radius:50%;background:transparent;color:var(--dt-marine);cursor:pointer}
.journal-pagination button:disabled{opacity:.35;cursor:default}
.article-reader .reader-cover{height:9rem;min-height:0;margin-bottom:1.5rem;overflow:hidden}
.article-reader .reader-cover .insight-cover{height:100%;min-height:0;aspect-ratio:auto}
.article-reader .reader-cover img{height:7rem;width:7rem;object-fit:contain}
.article-reader .reader-cover .cover-signature{display:none}
.article-corps{--article-space:1.75rem}
.article-corps .article-chapeau{font-size:var(--dt-chapeau);line-height:1.75}
.article-corps h3{font:350 var(--dt-h3)/1.3 var(--serif);margin:var(--article-space) 0 .75rem}
.article-corps p{font:400 var(--dt-corps)/1.8 var(--sans);color:var(--dt-texte-doux)}
.article-compass{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;padding:.875rem 1rem;margin:1.5rem 0;background:var(--dt-marine);color:var(--dt-creme);font:600 .75rem/1.5 var(--label)}
.article-compass [aria-hidden]{color:var(--dt-or-sur-marine)}
.article-example,.article-caution,.article-practice{margin:var(--article-space) 0;padding:1.25rem;background:var(--dt-sable);border:0}
.article-example .eyebrow,.article-practice .eyebrow{font:600 .75rem/1.5 var(--label);color:var(--dt-or-texte-sable)}
.article-example p,.article-caution p{margin:.5rem 0 0}
.article-caution{background:var(--dt-papier);border-left:2px solid var(--dt-or)}
.article-caution h3,.article-practice h3{margin:.5rem 0}
.article-practice ol{padding-left:1.4rem;margin:.75rem 0 0}
.article-practice li{padding-left:.25rem;margin:.65rem 0;font:400 1rem/1.7 var(--sans);color:var(--dt-texte-doux)}
.article-practice li::marker{color:var(--dt-or-texte);font-family:var(--label)}
.article-quiz{margin:2rem 0;background:var(--dt-papier);padding:clamp(1rem,3vw,2rem);border:1px solid var(--dt-filet)}
.article-quiz__heading h3{margin:.75rem 0}
.article-quiz__heading>.eyebrow{color:var(--dt-or-texte);font:600 .75rem/1.5 var(--label)}
.article-quiz__heading p{font-size:.875rem}
.article-quiz__question{min-width:0;border:0;border-top:1px solid var(--dt-filet);margin:1.5rem 0 0;padding:1.25rem 0 0}
.article-quiz__question legend{float:left;display:block;width:100%;font:600 1rem/1.55 var(--label);color:var(--dt-marine);margin-bottom:.75rem;padding:0}
.article-quiz__question legend span{color:var(--dt-or-texte);margin-right:.35rem}
.article-quiz__question label{display:flex;align-items:flex-start;gap:.65rem;clear:both;min-height:44px;padding:.75rem;margin:.4rem 0;border:1px solid var(--dt-filet);background:var(--dt-creme);font:400 .9375rem/1.55 var(--sans);cursor:pointer;color:var(--dt-texte)}
.article-quiz__question input{appearance:auto;flex:none;accent-color:var(--dt-marine);width:1rem;height:1rem;margin:.2rem 0 0;padding:0}
.article-quiz__question label:has(input:checked){border-color:var(--dt-marine);background:var(--dt-sable)}
.article-quiz__question label:has(input:focus-visible){outline:2px solid var(--dt-or-texte);outline-offset:2px}
.article-quiz .article-quiz__explanation{clear:both;font-size:.875rem;margin:.75rem 0 0;padding-left:.75rem;border-left:2px solid var(--dt-or)}
.article-quiz__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1.5rem}
.article-corps .button{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:.9rem 1.25rem;border:1px solid var(--dt-marine);border-radius:2rem;background:var(--dt-marine);color:var(--dt-creme);font:600 .875rem/1.5 var(--label);cursor:pointer;text-decoration:none;white-space:normal}
.article-corps .button svg{width:var(--action-icon-size);height:var(--action-icon-size);flex:none}
.article-corps .text-link{display:inline-flex;align-items:center;gap:.75rem;min-height:44px;border:0;background:transparent;color:var(--dt-marine);text-decoration:none;font:600 .875rem/1.5 var(--label);cursor:pointer}
.article-quiz__score:empty{display:none}
.article-quiz .article-quiz__score{font-weight:600;color:var(--dt-marine);margin:1rem 0 0}
.article-quiz__reward{background:var(--dt-sable);padding:1.25rem;margin-top:1rem}
.article-quiz__reward h4{font:350 1.25rem/1.3 var(--serif);margin:0}
.article-quiz__reward p{font-size:.875rem}
.article-corps [hidden]{display:none}
.article-next{background:var(--dt-marine);color:var(--dt-creme);padding:1.5rem;margin:2rem 0 0}
.article-next .eyebrow{font:600 .75rem/1.5 var(--label);color:var(--dt-or-sur-marine)}
.article-next h3{margin:.75rem 0;color:var(--dt-creme)}
.article-next p{color:var(--dt-texte-sur-marine);font-size:.9375rem}
.article-next .text-link{color:var(--dt-creme)}
.article-references,.article-quiz__fallback{border-top:1px solid var(--dt-filet);padding-block:1rem;margin-top:1rem;font:400 .875rem/1.6 var(--sans)}
.article-references summary,.article-quiz__fallback summary{cursor:pointer;min-height:44px;font-family:var(--label)}
@media(max-width:1000px) and (min-width:701px){#contenu.dt-insights .journal-list .dt-insights-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#contenu.dt-insights .journal-list .dt-insights-grille.is-slider{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;grid-template-rows:1fr;gap:1rem}#contenu.dt-insights .journal-list .dt-insights-grille:not(.is-slider){grid-template-columns:minmax(0,1fr)}#contenu.dt-insights .journal-list .dt-insight__couverture{grid-row:auto}.article-quiz__actions .button{width:100%}.article-reader .reader-cover{height:7rem}.article-reader .reader-cover img{height:5rem;width:5rem}}
@media(hover:hover) and (pointer:fine){.article-corps .button:hover{background:var(--dt-marine-survol)}.article-quiz__question label:hover{border-color:var(--dt-or)}.article-next .text-link:hover{color:var(--dt-or-sur-marine)}}
@media(prefers-reduced-motion:reduce){.article-corps *{scroll-behavior:auto;transition:none}}

/* 24/10 · Les gravures récentes portent déjà leur couleur : éviter leur surexposition sur marine. */
/* Toute la collection utilise les encres communes de harmonie.css. */

/* Revue mobile, 26/10 : neutraliser l'ancienne vignette latérale, qui laissait
   le texte en display:contents et décalait la catégorie. Même carte éditoriale
   à chaque largeur, dans la piste existante ou la liste sans JavaScript. */
@media(max-width:700px){
 #contenu.dt-insights .journal-list .dt-insights-grille>.dt-insight:not(:has(.article-lecture[open])){display:flex;flex-direction:column;align-items:stretch;padding:0;gap:0}
 #contenu.dt-insights .journal-list .dt-insights-grille>.dt-insight>.dt-insight__couverture{width:100%;max-width:none;align-self:stretch;grid-area:auto}
 #contenu.dt-insights .journal-list .dt-insights-grille>.dt-insight .insight-cover{width:100%;height:7.5rem;aspect-ratio:auto}
 #contenu.dt-insights .journal-list .dt-insights-grille>.dt-insight:not(:has(.article-lecture[open]))>.dt-insight__texte{display:flex;flex:1;flex-direction:column;align-items:stretch;gap:.75rem;padding:1.25rem}
 #contenu.dt-insights .journal-list .dt-insights-grille>.dt-insight .dt-insight__texte>.eyebrow{align-self:flex-start}
}

/* Sur téléphone : une seule navigation, continue sur les articles filtrés.
   Temps de lecture séparé de l'action pour éviter deux libellés serrés. */
@media(max-width:700px){
 #contenu.dt-insights .journal-list .dt-insight__pied{display:flex;flex-direction:column-reverse;align-items:stretch;justify-content:flex-start;gap:.5rem;padding-top:1rem}
 #contenu.dt-insights .journal-list .dt-insight__pied .publication-state{margin:0;font-size:.8125rem;text-align:left}
 #contenu.dt-insights .journal-list .dt-insight__pied .article-lecture{width:100%}
 #contenu.dt-insights .journal-list .dt-insight__pied summary{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding-block:.5rem;width:100%}
 #contenu.dt-insights .dt-collection{padding-bottom:var(--dt-s5)}
}

@media(max-width:700px){
 #contenu.dt-insights .journal-list .dt-insights-grille.is-slider .dt-insight__texte>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
}

/* dt-accueil.css · chantier design total du 21 octobre 2026 (Claude Code). Zone accueil (index.html).
   Toutes les règles sous #contenu.dt-index : elles ne touchent aucune autre page. Aucun !important.
   Tour de corrections 1 (22/10/2026) : programmes en deux temps au bureau, devise sortie de la colonne de titre du bandeau,
   prix des formats recomposés, « 01 / » de l'Entretien, formats non étirés quand le cadre est ouvert, FAQ et Insights en tablette. */

/* Pour commencer : l'Entretien à gauche, les formats ponctuels à droite. Le lien et la note de réservation suivent le prix,
   le cadre de la prestation ferme la carte sur toute sa largeur (filet et pastille calés sur le bord droit). */
#contenu.dt-index .dt-offre__suite{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s2);margin:0}
#contenu.dt-index .dt-offre__suite>*{margin:0}
#contenu.dt-index .dt-offre__suite>.text-link{padding-block:.625rem}
#contenu.dt-index .dt-offre__suite>.booking-notice{max-width:56ch;font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}
/* Le cadre ferme la carte : 44 px au moins sous sa ligne, pour que son filet et le bord de la carte ne se lisent pas comme un double filet. */
#contenu.dt-index .dt-offre--principale{padding-bottom:max(var(--dt-pad-panneau),2.75rem)}
#contenu.dt-index .dt-offre__cadre{align-self:stretch;margin-top:auto}
#contenu.dt-index .dt-offre__cadre .disclosure-body{margin:0;padding:0}
#contenu.dt-index .dt-offre__cadre .disclosure-body>p{margin:0;max-width:65ch}
#contenu.dt-index .dt-offre__cadre .disclosure-body>p+p{margin-top:var(--dt-s3)}
/* Une seule série de numéros dans cette section : 01 l'Entretien, 02 MSB Express, 03 Direction Day (la numérotation du catalogue).
   Le numéro est décoratif (data-index, aucun texte ajouté) et prend le style de l'étiquette. */
#contenu.dt-index .dt-offre--principale>.dt-etiquette[data-index]::before{content:attr(data-index);content:attr(data-index) / "";margin-right:.75em}
/* Formats ponctuels, dès 701 px. Au bureau, les deux colonnes ont la même hauteur (famille dt-offres) : la colonne des formats
   est haute (≈ 620 px à 1440). Étirée, la cassette horizontale devenait une colonne de gravure de 112 × 250 px et une carte vide.
   Les deux formats y prennent la forme verticale des cassettes du catalogue (bandeau gravé en tête, prix en pied derrière un filet),
   celle que la famille donne déjà aux cassettes dans une piste ; le bandeau absorbe la hauteur restante. En tablette, les deux
   formats se partagent la largeur sous l'Entretien (336 px chacun à 768 : le prix de Direction Day passait sur trois lignes).
   Sous 701 px, la cassette horizontale compacte de la famille reste inchangée. */
@media(min-width:701px){
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale{display:flex;flex-direction:column;align-items:stretch;gap:var(--dt-s2);padding:var(--dt-pad-carte)}
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale>*{align-self:stretch}
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__bandeau{flex:1 0 7.5rem;min-height:7.5rem;margin:calc(-1 * var(--dt-pad-carte)) calc(-1 * var(--dt-pad-carte)) var(--dt-s3);padding:var(--dt-s4)}
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__bandeau img{width:6rem;height:6rem}
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__bandeau[data-index]::before{top:.625rem;left:.875rem;font-size:var(--dt-etiquette)}
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale .dt-carte__titre{font-size:var(--dt-h3)}
 #contenu.dt-index .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__prix{margin-top:var(--dt-s2);padding-top:var(--dt-s3);border-top:1px solid var(--dt-filet)}
}
/* Quand « Le cadre de la prestation » est ouvert, l'Entretien s'allonge : les formats gardent leur hauteur au lieu de s'étirer
   (bandeaux sable et marine de 260 px presque vides). Fermé, les deux colonnes restent égales. */
@media(min-width:1001px){#contenu.dt-index .dt-offres:has(.dt-offre__cadre[open]) .dt-offres__liste{flex:0 1 auto;grid-auto-rows:auto;align-content:start}}
/* Prix des formats : le montant reste insécable avec sa flèche (plus de flèche orpheline), la mention passe en légende
   comme « À partir de » ; le point médian est masqué (règle 1.2-5, texte lu identique). */
#contenu.dt-index .dt-offres__liste .dt-sep{display:none}
#contenu.dt-index .dt-offres__liste{container:dt-formats/inline-size}
#contenu.dt-index .dt-offres__liste .dt-prix__mention{display:block;font:400 var(--dt-legende)/1.5 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-index .dt-offres__liste .dt-prix__unite{font:400 var(--dt-legende)/1.5 var(--sans);color:var(--dt-texte-doux)}
/* Insécables seulement quand la liste a la place (17 rem et plus) ; au texte agrandi, la flèche peut passer à la ligne. */
@container dt-formats (min-width:17rem){#contenu.dt-index .dt-offres__liste :is(.dt-montant,.dt-prix__unite){white-space:nowrap}}
@media(max-width:700px){#contenu.dt-index .dt-offres__liste .dt-carte__prix{font-size:var(--dt-h3-s);line-height:1.35}}
/* Texte agrandi (police racine 32 px) : « MSB Direction Day » est insécable (typographie française du générateur). La colonne
   implicite de la liste prenait sa largeur (446 px pour 387 disponibles à 1024, débordement de 3 px) et la carte de 320 px
   le rognait à 768. Les colonnes se replient d'elles-mêmes quand le texte grandit ; au texte normal elles restent identiques
   (deux colonnes de 588 px à 1440, axe des formats à 765 ; deux formats de 336 px à 768). */
@media(min-width:1001px){
 #contenu.dt-index .dt-offres{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}
 #contenu.dt-index .dt-offres__liste{grid-template-columns:minmax(0,1fr)}
}
@media(min-width:701px) and (max-width:1000px){#contenu.dt-index .dt-offres__liste{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}}

/* Bandeau expérience : diptyque éditorial, puis trois cassettes de principes.
   La citation distingue le contexte de la conviction. Ni frise à cercles, ni faux boutons :
   les cartes sont des contenus de lecture ; les deux liens restent les seules actions du bandeau.
   Le repli se fait aussi avec du texte agrandi, sans imposer une hauteur de contenu. */
#contenu.dt-index .approach-band{margin-top:var(--dt-section);background:var(--dt-marine);color:var(--dt-creme)}
#contenu.dt-index .approach{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:clamp(2rem,5vw,5rem);row-gap:var(--dt-s6);padding-block:var(--dt-bande-y);align-items:start}
#contenu.dt-index .approach-title h2{margin:0;font:350 clamp(2.375rem,1.5rem + 2.8vw,4rem)/1.09 var(--serif);letter-spacing:-.035em;color:var(--dt-creme)}
#contenu.dt-index .approach-title h2 em{color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-title h2 br:first-of-type{display:none}
#contenu.dt-index .approach-title>.eyebrow{display:block;margin-bottom:var(--dt-s5);color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-title>.home-devise{margin:var(--dt-s6) 0 0;padding:0;max-width:25ch;font:italic 350 clamp(1.25rem,1.15rem + .4vw,1.5rem)/1.45 var(--serif);color:var(--dt-creme);text-wrap:balance}
#contenu.dt-index .home-devise strong{font-weight:inherit;color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach .home-devise small{display:block;margin-top:var(--dt-s2);font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-links{display:flex;align-items:flex-start;flex-wrap:wrap;gap:0 var(--dt-s5);margin-top:var(--dt-s5)}
#contenu.dt-index .approach-title .text-link{max-width:100%;min-height:2.75rem;margin:0;padding-block:.625rem;font:600 var(--dt-petit)/1.55 var(--label);color:var(--dt-creme)}
#contenu.dt-index .approach-title .approach-proof{color:#d0dce2}
#contenu.dt-index .approach-copy{position:relative;padding:clamp(1.5rem,2.8vw,2.5rem);background:var(--dt-eleve,#1c3a4b);min-width:0}
#contenu.dt-index .approach-copy::before{content:"";position:absolute;top:0;left:0;width:3.5rem;height:3px;background:var(--dt-or-clair)}
#contenu.dt-index .approach-copy .approach-quote{margin:0;padding:0;font:350 clamp(1.75rem,1.25rem + 1.3vw,2.5rem)/1.28 var(--serif);letter-spacing:-.02em;color:var(--dt-creme)}
#contenu.dt-index .approach-quote__contexte{display:block;margin-bottom:var(--dt-s6);font:400 var(--dt-corps)/1.75 var(--sans);letter-spacing:0;color:#d0dce2}
#contenu.dt-index .approach-quote__voix{display:block;text-wrap:balance}
#contenu.dt-index .approach-quote strong{font-weight:inherit;color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-copy>p{margin:var(--dt-s5) 0 0;padding:0;max-width:62ch;font:400 var(--dt-petit)/1.75 var(--sans);color:#d0dce2}
#contenu.dt-index .dt-convictions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dt-s3);padding:0;margin:0;list-style:none;container:dt-home-principes/inline-size}
#contenu.dt-index .dt-conviction{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--dt-s4);align-content:start;padding:clamp(1.25rem,2vw,1.75rem);background:var(--dt-creme);color:var(--dt-marine);min-width:0;transition:background-color .2s ease}
#contenu.dt-index .dt-conviction__num{display:block;padding-top:.05em;font:italic 350 1.625rem/1.25 var(--serif);color:var(--dt-or-texte);letter-spacing:-.03em}
#contenu.dt-index .dt-conviction h3{margin:0 0 var(--dt-s2);font:350 var(--dt-h3)/1.25 var(--serif);letter-spacing:-.02em;color:var(--dt-marine)}
#contenu.dt-index .dt-conviction p{margin:0;font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}
@media(hover:hover) and (pointer:fine){#contenu.dt-index .dt-conviction:hover{background:var(--dt-sable)}}
@media(max-width:1000px){#contenu.dt-index .approach{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:var(--dt-s6)}#contenu.dt-index .dt-conviction{grid-template-columns:minmax(0,1fr);gap:var(--dt-s2)}}
@media(max-width:700px){#contenu.dt-index .approach{grid-template-columns:minmax(0,1fr);gap:var(--dt-s6)}#contenu.dt-index .approach-title h2{font-size:clamp(2.375rem,1.5rem + 4vw,3rem)}#contenu.dt-index .approach-title h2 br:first-of-type{display:none}#contenu.dt-index .approach-title>.home-devise{max-width:28ch;margin-top:var(--dt-s5)}#contenu.dt-index .approach-links{margin-top:var(--dt-s3)}#contenu.dt-index .dt-convictions{grid-template-columns:minmax(0,1fr)}#contenu.dt-index .dt-conviction{grid-template-columns:2rem minmax(0,1fr);gap:var(--dt-s4)}}
@media(min-width:701px){#contenu.dt-index .approach{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(20rem,calc(50% - 2.5rem))),1fr))}#contenu.dt-index .dt-convictions{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}}
@container dt-home-principes (max-width:12rem){#contenu.dt-index .dt-conviction{grid-template-columns:minmax(0,1fr);gap:var(--dt-s2)}}
@media(prefers-reduced-motion:reduce){#contenu.dt-index .dt-conviction{transition:none}}

/* Programmes : cinq cassettes horizontales (variante large), piste de liens sous 701 px.
   › ≥ 821 px : deux colonnes de cassettes, la seconde sur l'axe éditorial au bureau (765 à 1440, 557 à 1024) ; la note de pied prend
     la sixième cellule, à côté de la cinquième cassette. Les cassettes pleine largeur laissaient 550 px de vide au milieu
     (1 224 px de large pour 350 px de texte) et la note une demi-rangée vide ; une liste à droite d'un aside laissait, elle,
     300 à 550 px de vide sous l'aside. Prix à droite et centré dès 1260 px (cassette ≥ 529 px), sous le texte en dessous.
     Dès 821 px aussi en tablette : en pleine largeur, le vide central dépassait 200 px de 821 à 1000 px (271 à 900, 326 à 1000).
     Deux colonnes au plus (une colonne mesure au moins la moitié de la largeur moins la gouttière) ; texte agrandi : les colonnes de 22 rem se replient en une seule.
   › 701 à 820 px : en-tête au-dessus, cassettes sur toute la largeur ; le prix passe à droite, centré, si la cassette mesure
     au moins 33 rem (requête de conteneur, donc aussi juste au texte agrandi), sinon il suit le texte. */
#contenu.dt-index .dt-programmes-accueil .section-tail{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s2);margin:var(--dt-s5) 0 0;max-width:72ch;padding:0 0 0 var(--dt-s4);border:0;border-left:2px solid var(--dt-or)}
#contenu.dt-index .dt-programmes-accueil .section-tail>*{margin:0;font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-index .dt-programmes-accueil .section-tail>.text-link{display:inline-flex;padding-block:.5rem;font:600 .9375rem/1.5 var(--label);color:var(--dt-texte)}
@media(min-width:701px){
 #contenu.dt-index .dt-cassettes{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:1fr;gap:var(--dt-s3);margin:0;padding:0;container:dt-prog-accueil/inline-size}
 #contenu.dt-index .dt-carte--large .dt-carte__titre{font-size:var(--dt-h3)}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__prix{font-size:var(--dt-h3)}
}
@container dt-prog-accueil (min-width:33rem){
 #contenu.dt-index .dt-programmes-accueil .dt-carte--horizontale.dt-carte--large{grid-template-columns:7rem minmax(0,1fr) auto;grid-template-rows:auto}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__bandeau{grid-row:1}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__corps{grid-column:2;grid-row:1;align-self:center}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__prix{grid-column:3;grid-row:1;align-self:center;justify-self:end;text-align:left;white-space:nowrap}
}
@container dt-prog-accueil (max-width:32.99rem){
 #contenu.dt-index .dt-programmes-accueil .dt-carte--horizontale.dt-carte--large{grid-template-columns:7rem minmax(0,1fr);grid-template-rows:auto auto}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__bandeau{grid-row:1/span 2}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__corps{grid-column:2;grid-row:1;align-self:end}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__prix{grid-column:2;grid-row:2;align-self:start;justify-self:start;text-align:left;white-space:normal}
}
@media(min-width:821px){
 #contenu.dt-index .dt-programmes-accueil{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(22rem,calc(50% - var(--dt-gouttiere)))),1fr));grid-template-rows:auto;grid-auto-rows:1fr;column-gap:var(--dt-gouttiere);row-gap:var(--dt-gap-cartes);align-items:start}
 #contenu.dt-index .dt-programmes-accueil>.dt-entete{grid-column:1/-1;margin:0 0 calc(var(--dt-entete-gap) - var(--dt-gap-cartes))}
 #contenu.dt-index .dt-programmes-accueil>.dt-cassettes{display:contents}
 #contenu.dt-index .dt-programmes-accueil>.dt-cassettes>.dt-carte{align-self:stretch}
 #contenu.dt-index .dt-programmes-accueil>.dt-cassettes>.dt-carte:last-child{align-self:stretch}
 #contenu.dt-index .dt-programmes-accueil>.section-tail{grid-area:auto;margin:0}
}
@media(min-width:821px) and (max-width:1259px){
 #contenu.dt-index .dt-programmes-accueil .dt-carte--horizontale.dt-carte--large{grid-template-columns:7rem minmax(0,1fr);grid-template-rows:auto auto}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__bandeau{grid-row:1/span 2}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__corps{grid-column:2;grid-row:1;align-self:end}
 #contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__prix{grid-column:2;grid-row:2;align-self:start;justify-self:start;text-align:left;white-space:normal}
}
@media(min-width:1260px){#contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__prix{align-self:center}}

/* Coaching et consulting : dépliant cassette ; les deux regards en deux cartes alignées, la phrase de méthode en encart */
#contenu.dt-index .dt-regards{display:grid;gap:var(--dt-s6)}
#contenu.dt-index .dt-regards>.dt-entete{margin:0}
#contenu.dt-index .dt-regards__grille{--dt-rangs:3}
@media(min-width:701px){#contenu.dt-index .dt-regards__grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
#contenu.dt-index .dt-regards__grille .dt-benefice{background:var(--dt-creme)}
#contenu.dt-index .dt-regards__grille .text-link{margin:0;padding-block:.5rem;align-self:start}
#contenu.dt-index .dt-regards__fin>p{margin:0;max-width:65ch}
#contenu.dt-index .dt-regards__fin>p+p{margin-top:var(--dt-s2)}
#contenu.dt-index .dt-regards__fin .dual-phrase{font:italic 350 1.125rem/1.55 var(--serif);color:var(--dt-texte)}

/* Insights : trois cassettes dès 701 px (pas de 2 + 1), lien « Lire l'article » comme sur la page Insights.
   Colonnes de 12 rem au moins : trois au texte normal de 701 à 1920 px ; à texte agrandi elles se replient (deux puis une)
   au lieu de rogner « Eisenhower » dans une carte de 206 px (768 px, police racine 32 px). */
@media(min-width:701px){#contenu.dt-index .dt-insights-grille{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}}
#contenu.dt-index .dt-insight__lire{display:inline-flex;align-items:center;gap:var(--dt-s2);min-height:44px}
#contenu.dt-index .dt-insight__lire .action-arrow{width:var(--action-icon-size);height:var(--action-icon-size)}
/* Tablette (trois cartes de 219 px à 768) : marges internes resserrées, étiquette équilibrée sur deux lignes au plus,
   titre compact (trois lignes au lieu de quatre). */
@media(min-width:701px) and (max-width:1000px){
 #contenu.dt-index .dt-insights-grille .dt-insight__texte{padding:var(--dt-s4)}
 #contenu.dt-index .dt-insights-grille .dt-etiquette{letter-spacing:.06em;text-wrap:balance}
 #contenu.dt-index .dt-insights-grille .dt-insight__titre{font-size:var(--dt-h3-s)}
}

/* « Une activité en difficulté ? » devient la dernière question de la FAQ. Son titre interne n'est plus un h2 (texte identique) :
   il partage la ligne de l'étiquette « Confidentiel » (séparateur dessiné en CSS) au lieu d'empiler deux étiquettes. */
#contenu.dt-index .urgent-context .home-urgent{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--dt-s3);width:auto;margin:0 3.5rem var(--dt-s5) 0;padding:0;background:none;border:0}
#contenu.dt-index .urgent-context .home-urgent>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--dt-s2) 0}
#contenu.dt-index .urgent-context .home-urgent :is(.small-label,.dt-urgent__titre){margin:0;font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu.dt-index .urgent-context .dt-urgent__titre::before{content:"·";content:"·" / "";margin-inline:.6em}
#contenu.dt-index .urgent-context .home-urgent p{margin:0;max-width:65ch;font:400 var(--dt-corps)/1.8 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-index .urgent-context .home-urgent>div>p:not(.dt-urgent__titre){flex:1 0 100%}
#contenu.dt-index .urgent-context .home-urgent .text-link{justify-self:start;max-width:none;padding-block:.5rem}
@media(max-width:700px){#contenu.dt-index .urgent-context .home-urgent{margin-right:0}}

/* Piste mobile des programmes : le prix reprend la taille d'un titre de carte (22 px à 390, 18 px avant) quand la piste mesure
   au moins 20 rem ; au texte agrandi la piste est plus étroite que 20 rem et le prix garde la taille de la famille. */
@media(max-width:700px){#contenu.dt-index .dt-cassettes{container:dt-prog-mobile/inline-size}}
@container dt-prog-mobile (min-width:20rem){#contenu.dt-index .dt-programmes-accueil .dt-carte--large>.dt-carte__prix{font-size:var(--dt-h3)}}

/* Retours commerciaux · 24 octobre 2026. */
#contenu.dt-index .dt-offres--compactes{align-items:start;grid-template-columns:1fr 1fr;gap:var(--dt-gap-cartes)}
#contenu.dt-index .dt-offres--compactes .dt-offre--principale{gap:var(--dt-s4);padding:clamp(1.25rem,2.4vw,2rem)}
#contenu.dt-index .dt-offres--compactes .dt-offre--principale .dt-titre{font-size:var(--dt-h2);max-width:none}
#contenu.dt-index .dt-offres--compactes .dt-offre__achat{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--dt-s4);margin:0;padding-block:var(--dt-s4);border-top:0}
#contenu.dt-index .dt-offres--compactes .dt-offre__achat strong{font-size:clamp(2rem,3vw,2.75rem)}
#contenu.dt-index .dt-offres--compactes .dt-offre__cadre{margin-top:var(--dt-s2)}
#contenu.dt-index .dt-offres--compactes .dt-offres__autres>.entry-label{display:none}
#contenu.dt-index .dt-offres--compactes .dt-offres__liste{grid-template-columns:1fr;grid-auto-rows:auto;gap:var(--dt-gap-cartes);flex:0}
#contenu.dt-index .dt-offres--compactes .dt-offres__liste>li>.dt-carte--horizontale{display:grid;grid-template-columns:8rem minmax(0,1fr);grid-template-rows:auto auto;gap:var(--dt-s3) var(--dt-s4);padding:var(--dt-s4);align-items:center}
#contenu.dt-index .dt-offres--compactes .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__bandeau{grid-column:1;grid-row:1/3;align-self:stretch;min-height:10rem;margin:0;padding:2.75rem .75rem 1rem;flex:none}
#contenu.dt-index .dt-offres--compactes .dt-carte__bandeau[data-index]::before{top:.75rem;left:.75rem;right:.5rem;font-size:.75rem;line-height:1.5;letter-spacing:.04em}
#contenu.dt-index .dt-offres--compactes .dt-carte__bandeau img{width:5rem;height:5.5rem}
#contenu.dt-index .dt-offres--compactes .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__corps{grid-column:2;grid-row:1;align-self:end}
#contenu.dt-index .dt-offres--compactes .dt-offres__liste>li>.dt-carte--horizontale>.dt-carte__prix{grid-column:2;grid-row:2;align-self:start;padding-top:0;margin:0;border:0}
#contenu.dt-index .dt-offres--compactes .dt-carte__titre{font-size:var(--dt-h3-s)}
#contenu.dt-index .dt-offres--compactes .dt-carte__texte{margin-top:var(--dt-s2)}
#contenu.dt-index .dt-offres--compactes .dt-montant{white-space:normal}
#contenu.dt-index .approach-title .approach-context{max-width:48ch;margin:var(--dt-s5) 0 0;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu.dt-index .approach-copy{padding:0;background:transparent}
#contenu.dt-index .approach-copy::before{display:none}
#contenu.dt-index .approach-copy .approach-attribution{margin-top:var(--dt-s3);font:600 var(--dt-etiquette)/1.6 var(--label);color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-title h2{font-size:clamp(2.2rem,3vw,3rem)}
#contenu.dt-index .approach-copy .approach-quote{font-size:clamp(1.8rem,2.5vw,2.5rem)}
#contenu.dt-index .dt-programmes-accueil .dt-entete--lecture{display:block}
#contenu.dt-index .dt-introduction{max-width:62ch;margin:var(--dt-s4) 0 0;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-index .dt-carte__corps>.dt-signature-label{display:inline-flex;margin:var(--dt-s1) 0;font-size:var(--dt-etiquette)}
@media(max-width:1000px){#contenu.dt-index .dt-offres--compactes{grid-template-columns:1fr}#contenu.dt-index .dt-offres--compactes .dt-offres__liste{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}}
@media(max-width:400px){#contenu.dt-index .dt-offres--compactes .dt-offres__liste>li>.dt-carte--horizontale{grid-template-columns:6rem minmax(0,1fr);padding:var(--dt-s3);column-gap:var(--dt-s3)}#contenu.dt-index .dt-offres--compactes .dt-carte__bandeau img{width:4rem;height:5rem}}


/* Trois formats lisibles : rangées partagées, détails visuellement indépendants. */
#contenu.dt-index .home-formats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--dt-gap-cartes);align-items:start}
#contenu.dt-index .home-format-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;min-width:0;margin:0;background:transparent}
#contenu.dt-index .home-format-card>*{margin:0;background:var(--dt-papier);border-inline:1px solid var(--dt-filet);padding:var(--dt-s4)}
#contenu.dt-index .home-format-card .format-art{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:6rem;border-top:1px solid var(--dt-filet);background:var(--dt-marine);color:var(--dt-or-sur-marine)}
#contenu.dt-index .home-format-card .format-art .format-purpose{color:var(--dt-or-sur-marine)}
#contenu.dt-index .home-format-card:nth-child(even) .format-art .format-purpose{color:var(--dt-or-texte-sable)}
#contenu.dt-index .home-format-card:nth-child(2) .format-art{background:var(--dt-sable);color:var(--dt-or-texte)}
#contenu.dt-index .home-format-card .format-art img{width:4rem;height:4rem;object-fit:contain;filter:brightness(1.3)}
#contenu.dt-index .home-format-card .format-art span{font:600 .75rem/1.5 var(--label);letter-spacing:.04em;max-width:22ch}
#contenu.dt-index .home-format-card .msb-format-summary h3{font:350 var(--dt-h3)/1.2 var(--serif);margin:0 0 .75rem}
#contenu.dt-index .home-format-card .msb-format-summary p{font:400 var(--dt-corps)/1.7 var(--sans);margin:0;color:var(--dt-texte-doux)}
#contenu.dt-index .home-format-card .format-price strong{font:350 clamp(1.7rem,2.2vw,2.25rem)/1.2 var(--serif)}
#contenu.dt-index .home-format-card .format-price small{display:block;margin-top:.5rem;font:400 var(--dt-petit)/1.5 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-index .home-format-card .msb-format-actions{padding-top:0}
/* Dimensions des boutons : règle commune dans dt-composants.css. */
#contenu.dt-index .home-format-card .format-notes{align-self:start;border-bottom:1px solid var(--dt-filet);padding-top:0}
#contenu.dt-index .home-format-card .format-notes>summary{font:600 .875rem/1.5 var(--label);padding-block:.75rem;border-top:1px solid var(--dt-filet)}
#contenu.dt-index .home-format-card .format-notes :is(p,li){font:400 var(--dt-petit)/1.7 var(--sans)}
#contenu.dt-index .home-formats>.dt-offre__cadre{margin-top:var(--dt-s5)}
#contenu.dt-index .approach{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:var(--dt-gouttiere)}
#contenu.dt-index .approach-portrait{position:relative;align-self:center;min-width:0;margin:0;overflow:hidden;background:var(--dt-marine-eleve)}
#contenu.dt-index .approach-portrait img{filter:url(#msb-portrait-marine);display:block;width:100%;height:clamp(23rem,36vw,32rem);max-height:32rem;min-height:23rem;object-fit:cover;object-position:center top}
#contenu.dt-index .approach-portrait figcaption{position:absolute;bottom:0;left:0;right:0;padding:1rem 1.5rem;background:linear-gradient(transparent,#0c1b27e6);color:var(--dt-creme);font:600 var(--dt-petit)/1.5 var(--label)}
#contenu.dt-index .approach-story h2{font:350 var(--dt-h2)/1.2 var(--serif);max-width:22ch;margin:var(--dt-s4) 0}
#contenu.dt-index .approach-story h2 em{color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-story>p{font:400 var(--dt-corps)/1.75 var(--sans);max-width:52ch;color:var(--dt-texte-sur-marine)}
#contenu.dt-index .approach-story blockquote{margin:var(--dt-s6) 0;padding:var(--dt-s5);background:var(--dt-marine-eleve);border-left:2px solid var(--dt-or);font:350 var(--dt-h3)/1.45 var(--serif);color:var(--dt-creme)}
#contenu.dt-index .approach-story blockquote strong{font-weight:350;color:var(--dt-or-sur-marine)}
#contenu.dt-index .approach-links{margin-top:var(--dt-s5)}
@media(max-width:1000px){#contenu.dt-index .approach{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:var(--dt-s5)}}
@media(max-width:700px){#contenu.dt-index .approach{grid-template-columns:minmax(0,1fr)}#contenu.dt-index .approach-portrait img{height:18rem;min-height:0;object-position:center top}#contenu.dt-index .home-formats-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;grid-template-rows:repeat(5,auto);gap:0 1rem;overflow-x:auto;scroll-snap-type:x mandatory}#contenu.dt-index .home-format-card{scroll-snap-align:start}}
@media(hover:hover) and (pointer:fine){#contenu.dt-index .home-format-card .format-art img{transition:transform 240ms ease}#contenu.dt-index .home-format-card:hover .format-art img{transform:translateY(-3px)}#contenu.dt-index .approach-links a:hover{color:var(--dt-or-sur-marine)}}
@media(min-width:701px) and (max-width:1000px){#contenu.dt-index .home-formats-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:52%;grid-template-rows:repeat(5,auto);gap:0 1.25rem;overflow-x:auto;scroll-snap-type:x mandatory}#contenu.dt-index .home-format-card{scroll-snap-align:start}}
@media(prefers-reduced-motion:reduce){#contenu.dt-index .home-format-card .format-art img{transition:none;transform:none}}

@media print{#contenu.dt-index .approach-portrait img{filter:none}}

/* dt-parcours.css · chantier design total du 21 octobre 2026 (Claude Code). Sélecteurs limités à leur zone.
   Zone parcours (agence.html) : toutes les règles sous #contenu.dt-agence (1,2,0), aucun !important.
   Sept actes après le héros (inchangé) : I ce que le parcours vous apporte · II le récit (tour-escalier, chapitres)
   · III les piliers · IV la preuve (panneau marine) · V l'écosystème · VI la méthode puis la devise (bande marine)
   · VII ce qui guide chaque mission puis la décision (panneau marine, billet). Familles communes inchangées. */

/* Acte I · ce que le parcours apporte : quatre cartes en 2 × 2 dès 701 px. En quatre colonnes (1201 à 1440 px), les titres
   prenaient trois ou quatre lignes et l'alignement des rangées laissait 45 à 78 px de vide sous les plus courts ; en 2 × 2,
   deux lignes au plus et la même disposition sur toute la plage tablette et bureau. */
@media(min-width:701px){#contenu.dt-agence .dt-apport .dt-benefices--quatre{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Chaque titre suit la forme « X, pas Y. » : la seconde moitié passe à la ligne là où elle tient sur une ligne de la carte.
   La plus longue, « pas un cabinet déconnecté. », mesure 11,8 em du titre (235 px au corps mobile). Seuils sur la largeur
   de la section, par disposition : piste mobile (cartes à 84 %) dès 21,25 rem, soit 380 px d’écran ; 2 × 2 tablette dès
   35,75 rem ; 2 × 2 bureau dès 45 rem. Les quatre titres ont alors deux lignes (de 380 à 1920 px) et le texte de chaque
   rangée commence à la même hauteur. Plus étroit (320 à 379 px) ou texte agrandi, la coupure forcée ajouterait une ligne :
   le titre reste équilibré par text-wrap. Le conteneur est la section : sur la carte, il annulerait la sous-grille de la
   famille ; sur le titre, il couperait « standardisé. » à 200 % de texte. */
#contenu.dt-agence .dt-apport{container:dt-apport/inline-size}
@media(max-width:700px){@container dt-apport (min-width:21.25rem){#contenu.dt-agence .dt-apport .dt-apport__antithese{display:block}}}
@media(min-width:701px) and (max-width:1000px){@container dt-apport (min-width:35.75rem){#contenu.dt-agence .dt-apport .dt-apport__antithese{display:block}}}
@media(min-width:1001px){@container dt-apport (min-width:45rem){#contenu.dt-agence .dt-apport .dt-apport__antithese{display:block}}}
/* Piste mobile : les quatre cartes partagent les rangées de la piste (index, titre, texte), comme les cartes du bureau
   (sous-grille de la famille) ; un titre plus court ne remonte plus le texte de sa carte. */
@supports(grid-template-rows:subgrid){
 #contenu.dt-agence .dt-apport .dt-defile-contenu.is-slider{grid-template-rows:auto auto 1fr}
 #contenu.dt-agence .dt-apport .dt-defile-contenu.is-slider>.dt-benefice{display:grid;grid-row:1/-1;grid-template-rows:subgrid;row-gap:var(--dt-s3);align-content:start}
}

/* Acte II · récit : titre, citation et gravure à gauche (collant au bureau), introduction et chapitres sur l'axe de droite */
#contenu.dt-agence .dt-recit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-s6);align-items:start;container:dt-recit/inline-size}
#contenu.dt-agence .dt-recit__aside{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s5);min-width:0}
#contenu.dt-agence .dt-recit__aside>*{margin:0}
/* Collant au texte normal seulement (comme dt-questions) : 45 rem font 720 px à 16 px, jamais atteints à 200 % de texte. */
@media(min-width:1001px) and (min-height:720px){@container dt-recit (min-width:45rem){#contenu.dt-agence .dt-recit__aside{position:sticky;top:var(--dt-collant)}}}
#contenu.dt-agence .histoire-quote{max-width:26ch;padding:0;border:0;font:italic 350 clamp(1.25rem,1.1rem + .5vw,1.5rem)/1.5 var(--serif);color:var(--dt-or-texte);text-wrap:pretty}
/* La tour-escalier (gravir) : la gravure du récit, à l'encre d'or sur crème, sans filtre. */
#contenu.dt-agence .dt-recit__art{display:block;width:auto;height:clamp(15rem,min(2rem + 26vw,100vh - 25rem),26rem);max-width:none;margin-top:var(--dt-s3);object-fit:contain;opacity:1;filter:none}
/* De 1001 à 1200 px, la colonne de droite (chapitre ouvert) est la plus longue : la tour grandit pour équilibrer les deux
   colonnes, sans dépasser la hauteur d'écran utile du collant. */
@media(min-width:1001px) and (max-width:1200px){#contenu.dt-agence .dt-recit__art{height:clamp(15rem,100vh - 25rem,26rem)}}
#contenu.dt-agence .dt-recit__corps{display:flex;flex-direction:column;gap:var(--dt-s6);min-width:0}
#contenu.dt-agence .dt-recit__corps>*{margin:0}
#contenu.dt-agence .parcours-lead p{margin:0;max-width:52ch;font:400 var(--dt-chapeau)/1.7 var(--sans);color:var(--dt-texte)}
/* Chapitres : pastille commune (dt-depliant), numéro italique d'or, titre au corps des cartes. */
#contenu.dt-agence .parcours-chapters{margin:0;border-top:1px solid var(--dt-filet);container:dt-chapitres/inline-size}
#contenu.dt-agence .parcours-chapter{border-bottom:1px solid var(--dt-filet)}
#contenu.dt-agence .parcours-chapter>summary{grid-template-columns:3rem minmax(0,1fr) var(--dt-pastille);column-gap:var(--dt-s4);min-height:5.5rem;padding:var(--dt-s5) 0;color:var(--dt-texte)}
#contenu.dt-agence .parcours-chapter-toggle{display:none}
#contenu.dt-agence .parcours-chapter-number{align-self:baseline;font:italic 350 1.5rem/1.2 var(--serif);font-variant-numeric:lining-nums;color:var(--dt-or-texte)}
#contenu.dt-agence .parcours-chapter-title{align-self:baseline;font:350 var(--dt-h3)/1.28 var(--serif);letter-spacing:-.02em;color:inherit}
#contenu.dt-agence .parcours-chapter-caption{display:block;margin-top:var(--dt-s1);font:400 var(--dt-petit)/1.6 var(--sans);letter-spacing:0;color:var(--dt-texte-doux)}
/* États distincts, comme la FAQ de la famille : ouvert = titre d'or et pastille « − » ; survol = pastille pleine marine
   (dt-composants), le titre reste marine. */
#contenu.dt-agence .parcours-chapter[open]>summary{color:var(--dt-or-texte)}
#contenu.dt-agence .parcours-chapter-body{max-width:none;margin:0 0 0 calc(3rem + var(--dt-s4));padding:0 0 var(--dt-s5)}
#contenu.dt-agence .parcours-chapter-body p{margin:0;max-width:60ch;font:400 var(--dt-corps)/1.8 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-agence .parcours-chapter-body p+p{margin-top:var(--dt-s4)}
@media(max-width:1000px){
 #contenu.dt-agence .dt-recit{grid-template-columns:minmax(0,1fr)}
 /* La tour passe à droite du titre et de la citation : elle reste une gravure, pas une vignette. Le bloc prend la mesure
    de l'introduction (52 ch au corps du chapeau, mêmes police et taille) : la tour tombe à l'aplomb de la fin de
    l'introduction au lieu d'être repoussée contre le bord droit (380 px de vide à 768 px). */
 #contenu.dt-agence .dt-recit__aside{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--dt-gouttiere);row-gap:var(--dt-s4);align-items:end;max-width:52ch;font:400 var(--dt-chapeau)/1.7 var(--sans)}
 #contenu.dt-agence .dt-recit__aside>:not(.dt-recit__art){grid-column:1}
 #contenu.dt-agence .dt-recit__art{grid-column:2;grid-row:1/span 2;align-self:end;height:12rem;margin:0}
}
@media(max-width:700px){
 /* Mobile : rythme du récit resserré d'un cran (24 px au lieu de 32) pour compenser la ligne du numéro des chapitres. */
 #contenu.dt-agence .dt-recit{row-gap:var(--dt-s5)}
 #contenu.dt-agence .dt-recit__corps{gap:var(--dt-s5)}
 #contenu.dt-agence .dt-recit__art{height:9rem}
 #contenu.dt-agence :is(.dt-recit__aside,.parcours-lead p){font-size:var(--dt-corps)}
}
/* Récit étroit au regard du texte (moins de 17 rem : texte agrandi sur mobile ; 18 rem au moins au texte normal, à 320 px) :
   la tour passe sous la citation et le titre garde toute la largeur (la tour de 9 rem lui laissait 140 px à 200 %). */
@container dt-recit (max-width:17rem){
 #contenu.dt-agence .dt-recit__aside{display:flex;flex-direction:column;align-items:flex-start}
 #contenu.dt-agence .dt-recit__art{align-self:flex-start}
}
/* Chapitres sur mobile, ou dans une colonne étroite au regard du texte (moins de 17 rem : texte agrandi au bureau ;
   au texte normal la liste mesure au moins 17,5 rem, à 320 px) : le numéro passe au-dessus du titre, comme l'index des
   cartes ; numéro, titre, légende et texte partent du même bord, la pastille reste centrée à droite. */
@media(max-width:700px){
 #contenu.dt-agence .parcours-chapter>summary{grid-template-columns:minmax(0,1fr) var(--dt-pastille);column-gap:var(--dt-s4);row-gap:var(--dt-s1);min-height:5rem;padding:var(--dt-s3) 0}
 #contenu.dt-agence .parcours-chapter>summary::after{grid-column:2;grid-row:1/span 2}
 #contenu.dt-agence .parcours-chapter-number{grid-column:1;grid-row:1;align-self:end;font-size:1.125rem;line-height:1.2}
 #contenu.dt-agence .parcours-chapter-title{grid-column:1;grid-row:2;align-self:start;font-size:var(--dt-h3-s)}
 #contenu.dt-agence .parcours-chapter-body{margin:0;padding:0 0 var(--dt-s5)}
}
@container dt-chapitres (max-width:17rem){
 #contenu.dt-agence .parcours-chapter>summary{grid-template-columns:minmax(0,1fr) var(--dt-pastille);column-gap:var(--dt-s4);row-gap:var(--dt-s1);min-height:5rem;padding:var(--dt-s4) 0}
 #contenu.dt-agence .parcours-chapter>summary::after{grid-column:2;grid-row:1/span 2}
 #contenu.dt-agence .parcours-chapter-number{grid-column:1;grid-row:1;align-self:end;font-size:1.125rem;line-height:1.2}
 #contenu.dt-agence .parcours-chapter-title{grid-column:1;grid-row:2;align-self:start;font-size:var(--dt-h3-s)}
 #contenu.dt-agence .parcours-chapter-body{margin:0;padding:0 0 var(--dt-s5)}
}
/* Plus étroit encore (moins de 11 rem : 200 % de texte sous 420 px, ou colonne du bureau) : la pastille monte sur la ligne
   du numéro et le titre prend toute la largeur ; tailles plafonnées en cqi pour que le mot le plus long tienne
   (« l’expérience » 5,9 em, « d’entrepreneur. » 8,4 em) : aucun mot coupé, sans césure. */
@container dt-chapitres (max-width:11rem){
 #contenu.dt-agence .parcours-chapter>summary{row-gap:var(--dt-s2)}
 #contenu.dt-agence .parcours-chapter>summary::after{grid-row:1}
 #contenu.dt-agence .parcours-chapter-number{align-self:center}
 #contenu.dt-agence .parcours-chapter-title{grid-column:1/-1;font-size:min(var(--dt-h3-s),calc(100cqi / 6.4))}
 #contenu.dt-agence .parcours-chapter-caption{font-size:min(var(--dt-petit),calc(100cqi / 9.2))}
}

/* Acte IV · preuve sans portrait : titre et chiffres à gauche, citation et Pappers sur l'axe de droite (765 px à 1440) */
#contenu.dt-agence .dt-preuve--sans-portrait{align-items:center}
#contenu.dt-agence .dt-preuve--sans-portrait .dt-preuve__texte{container:dt-preuve-texte/inline-size}
#contenu.dt-agence .dt-preuve--sans-portrait .stats-grid{align-self:stretch;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dt-s5);margin:var(--dt-s3) 0 0;padding:0;border:0}
#contenu.dt-agence .dt-preuve .stat{min-width:0;margin:0;padding:var(--dt-s3) 0 0;border:0;border-top:1px solid var(--dt-filet-marine)}
#contenu.dt-agence .dt-preuve .stat-num{font:350 clamp(1.75rem,1.4rem + 1vw,2.25rem)/1.1 var(--serif);letter-spacing:-.01em;color:var(--dt-creme);white-space:nowrap}
#contenu.dt-agence .dt-preuve .stat-label{margin:var(--dt-s2) 0 0;font:600 var(--dt-etiquette)/1.5 var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--dt-or-sur-marine);min-width:0;hyphens:auto;overflow-wrap:anywhere}
#contenu.dt-agence .dt-preuve__citation{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--dt-s4);min-width:0}
#contenu.dt-agence .dt-preuve__citation>*{margin:0}
#contenu.dt-agence .dt-preuve__citation .vision-quote{max-width:34ch;font:italic 350 clamp(1.25rem,1.1rem + .6vw,1.625rem)/1.45 var(--serif);color:var(--dt-creme)}
#contenu.dt-agence .dt-preuve__citation .vision-quote em{color:var(--dt-or-clair)}
#contenu.dt-agence .dt-preuve__citation .vision-author{font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-sur-marine)}
#contenu.dt-agence .dt-preuve__lien{margin-top:var(--dt-s2)}
#contenu.dt-agence .dt-preuve__lien .text-link{display:inline-flex;align-items:center;gap:.625rem;padding-block:.625rem}
@media(max-width:1000px){#contenu.dt-agence .dt-preuve--sans-portrait{row-gap:var(--dt-s6)}}
/* Tablette, panneau sur une colonne : la citation prend 42 ch pour occuper la largeur des chiffres (34 ch laissaient un
   tiers du panneau vide à droite à 768 px) ; une ligne de moins, la hauteur baisse. */
@media(min-width:701px) and (max-width:1000px){#contenu.dt-agence .dt-preuve__citation .vision-quote{max-width:42ch}}
/* Trois chiffres en ligne tant que la colonne mesure 31 rem (496 px au texte normal : 1440, 1280, tablette) ; sinon en tableau
   (1001 à 1279 px, mobile, texte agrandi) : chiffre à gauche, libellé à droite, jamais coupé. */
@container dt-preuve-texte (max-width:30.99rem){
 #contenu.dt-agence .dt-preuve--sans-portrait .stats-grid{grid-template-columns:minmax(0,1fr);gap:0}
 #contenu.dt-agence .dt-preuve .stat{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:var(--dt-s4);row-gap:var(--dt-s1);padding:var(--dt-s3) 0}
 #contenu.dt-agence .dt-preuve .stat-label{margin:0 0 0 auto;text-align:right}
}

/* Écosystème : groupe, cabinet, expertises. Axes à gauche, seuls les logos sont centrés.
   Une seule famille de cartes partenaires ; la piste mobile utilise les contrôles existants. */
#contenu.dt-agence .dt-ecosysteme{container:dt-eco/inline-size}
#contenu.dt-agence .eco-map{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:var(--dt-s5);align-items:stretch}
#contenu.dt-agence .eco-group{display:flex;flex-direction:column;gap:var(--dt-s5);padding:var(--dt-s6);background:var(--dt-marine);color:var(--dt-creme);border-top:2px solid var(--dt-or-clair);min-width:0}
#contenu.dt-agence .eco-group .dt-etiquette{color:var(--dt-or-sur-marine);margin:0}
#contenu.dt-agence .eco-map h3{margin:0;font:400 var(--dt-h3)/1.25 var(--serif);text-wrap:balance}
#contenu.dt-agence .eco-group h3{font-size:clamp(1.75rem,1.4rem + 1vw,2.25rem);color:var(--dt-creme)}
#contenu.dt-agence .eco-map p{margin:0;font-size:var(--dt-corps);line-height:1.7}
#contenu.dt-agence .eco-group p{color:var(--dt-creme)}
#contenu.dt-agence .eco-sectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--dt-s4);row-gap:0;list-style:none;margin:0;padding:0}
#contenu.dt-agence .eco-sectors li{margin:0;padding:var(--dt-s3) 0;border-top:1px solid #bda47555;font:500 var(--dt-petit)/1.5 var(--label);color:var(--dt-creme)}
#contenu.dt-agence .eco-group-link{display:flex;justify-content:space-between;align-items:center;gap:var(--dt-s4);min-height:44px;margin-top:auto;padding-top:var(--dt-s3);color:var(--dt-creme);font:600 var(--dt-petit)/1.5 var(--label);text-decoration:none}
#contenu.dt-agence .eco-group-link>span[aria-hidden]{color:var(--dt-or-sur-marine);font-size:1.5rem}
#contenu.dt-agence .eco-practice{display:flex;flex-direction:column;gap:var(--dt-s5);min-width:0}
#contenu.dt-agence .eco-cabinet{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:var(--dt-s5);padding:var(--dt-s5) var(--dt-s6);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);background:var(--dt-papier)}
#contenu.dt-agence .eco-cabinet .dt-etiquette{margin:0 0 var(--dt-s2)}
#contenu.dt-agence .eco-cabinet p{max-width:42ch;color:var(--dt-texte-doux)}
#contenu.dt-agence .eco-experts{display:flex;flex-direction:column;gap:var(--dt-s3);flex:1;min-width:0}
#contenu.dt-agence .eco-map .eco-experts-title{font:600 var(--dt-petit)/1.5 var(--label);color:var(--dt-texte-doux);text-wrap:initial}
#contenu.dt-agence .eco-partners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dt-s4);flex:1;align-items:stretch;min-width:0}
#contenu.dt-agence .eco-partner{display:flex;flex-direction:column;gap:var(--dt-s3);min-width:0;padding:var(--dt-s5);border:1px solid var(--dt-filet);background:var(--dt-papier);color:var(--dt-marine);text-decoration:none;transition:border-color var(--dt-duree) var(--dt-courbe),background-color var(--dt-duree) var(--dt-courbe),box-shadow var(--dt-duree) var(--dt-courbe)}
#contenu.dt-agence .eco-partner-logo{display:flex;align-items:center;justify-content:center;min-height:4.5rem;padding-bottom:var(--dt-s3);border-bottom:1px solid var(--dt-filet)}
#contenu.dt-agence .eco-partner-logo img{display:block;width:auto;height:3.5rem;max-width:100%;object-fit:contain}
#contenu.dt-agence .eco-partner h4{margin:0;font:400 var(--dt-h3-s)/1.3 var(--serif)}
#contenu.dt-agence .eco-partner p{color:var(--dt-texte-doux);font-size:var(--dt-petit)}
#contenu.dt-agence .eco-partner-link{display:flex;align-items:center;justify-content:space-between;gap:var(--dt-s3);margin-top:auto;padding-top:var(--dt-s2);font:600 var(--dt-petit)/1.5 var(--label)}
#contenu.dt-agence .eco-partner-link>span{flex:none;transition:transform var(--dt-duree) var(--dt-courbe)}
#contenu.dt-agence .eco-scope{max-width:100%;margin:var(--dt-s5) 0 0;padding-left:var(--dt-s4);border-left:2px solid var(--dt-or);font-size:var(--dt-petit);line-height:1.7;color:var(--dt-texte-doux)}
#contenu.dt-agence .eco-scope strong{font-weight:600;color:var(--dt-marine)}
#contenu.dt-agence .eco-method{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:var(--dt-gouttiere);align-items:center;padding:var(--dt-pad-panneau);border-top:2px solid var(--dt-or);background:var(--dt-sable)}
#contenu.dt-agence .eco-method .dt-titre{margin:0}
#contenu.dt-agence .eco-method-action{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s5);min-width:0}
#contenu.dt-agence .eco-method-action p{margin:0;max-width:44ch;font-size:var(--dt-corps);line-height:1.7;color:var(--dt-texte-doux)}
#contenu.dt-agence .eco-method-action .button{max-width:100%;min-height:3.25rem;white-space:normal;text-align:left;justify-content:space-between;gap:var(--dt-s5)}
#contenu.dt-agence :is(.eco-partner,.eco-group-link):focus-visible{outline:2px solid var(--dt-or);outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 #contenu.dt-agence .eco-partner:hover{border-color:var(--dt-or);background:var(--dt-survol-carte);box-shadow:0 6px 18px #1228390c}
 #contenu.dt-agence .eco-partner:hover .eco-partner-link>span{transform:translate(2px,-2px)}
 #contenu.dt-agence .eco-group-link:hover{color:var(--dt-or-sur-marine)}
}
@container dt-eco (max-width:58rem){
 #contenu.dt-agence .eco-map{grid-template-columns:minmax(0,1fr)}
 #contenu.dt-agence .eco-group{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--dt-s3) var(--dt-s6);align-items:start}
 #contenu.dt-agence .eco-group>.dt-etiquette,#contenu.dt-agence .eco-group>h3,#contenu.dt-agence .eco-group>p{grid-column:1}
 #contenu.dt-agence .eco-sectors{grid-column:2;grid-row:1/4}
 #contenu.dt-agence .eco-group-link{grid-column:1/-1}
}
@media(max-width:700px){
 #contenu.dt-agence .eco-partners.is-slider{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc(100% - 1.75rem);gap:var(--dt-s4);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:4px;margin:0;padding:4px 4px var(--dt-s4)}
 #contenu.dt-agence .eco-partners.is-slider>.eco-partner{scroll-snap-align:start}
 #contenu.dt-agence .eco-experts>.msb-carousel-controls{margin-top:0}
 #contenu.dt-agence .eco-method{grid-template-columns:minmax(0,1fr);gap:var(--dt-s5)}
}
@container dt-eco (max-width:34rem){
 #contenu.dt-agence .eco-group{display:flex;gap:var(--dt-s4);padding:var(--dt-s5)}
 #contenu.dt-agence .eco-group h3{font-size:1.75rem}
 #contenu.dt-agence .eco-sectors{width:100%;gap:0 var(--dt-s3)}
 #contenu.dt-agence .eco-cabinet{grid-template-columns:minmax(0,1fr);gap:var(--dt-s3);padding:var(--dt-s5)}
 #contenu.dt-agence .eco-partners:not(.is-slider){grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){#contenu.dt-agence :is(.eco-partner,.eco-partner-link>span){transition:none}#contenu.dt-agence .eco-partner:hover .eco-partner-link>span{transform:none}}

/* 24/10 : bandeau de devise sur un axe centré commun ; pistes mobiles comparables. */
#contenu.dt-agence .dt-preuve--sans-portrait{align-items:start}

@media(max-width:700px){
 #contenu.dt-agence :is(.dt-apport,.dt-mission) .dt-benefices.is-slider{display:grid;grid-template-columns:none;grid-template-rows:none;grid-auto-flow:column;grid-auto-columns:calc(100% - 2rem);gap:1rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:4px;margin-inline:-4px;padding:4px 4px 1rem}
 #contenu.dt-agence :is(.dt-apport,.dt-mission) .dt-benefices.is-slider>.dt-benefice{grid-column:auto;grid-row:auto;display:flex;flex-direction:column;align-items:flex-start;scroll-snap-align:start;min-width:0;padding:1.25rem;border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);background:var(--dt-papier)}
}

/* dt-secondaires.css · chantier design total du 21 octobre 2026 (Claude Code). Zone secondaires : contact, recrutement ×3, linktree,
   légales ×3, 404. Sélecteurs limités à leurs pages par la classe de <main> (#contenu.dt-<page>). Aucun !important.
   Familles communes (dt-global, dt-composants, héros) utilisées telles quelles ; seules les compositions propres aux pages sont ici.
   Tour de corrections 1 (22/10) : césure réservée au texte agrandi, cassettes à leur hauteur naturelle, prix au second rang,
   cadres collants dès 1001 px, carte « L'autre poste ouvert » sur l'axe, emblème dans les cadres de candidature.
   Tour de corrections 2 (22/10) : emblème calé sur le bord du texte, carte « L'autre poste ouvert » centrée (deux temps de 1001 à
   1200 px), cassettes au même ordre et vignettes dégagées, cartes de formulaire au rayon du système, cadre du hub collant
   seulement si son dépliant ouvert tient dans l'écran, piste mobile réalignée, sous-textes de la 404 en capitale. */

/* ── Contact · bloc d'achat : Entretien à gauche, formats ponctuels à droite (axe 765 à 1440, 557 à 1024) ── */
#contenu.dt-contact .dt-offre__texte>p{max-width:56ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-contact .dt-offres>.dt-note{grid-column:1/-1;margin-top:0}
/* Les cassettes gardent leur hauteur naturelle : les rangées égales de la famille (F2, F3) les étiraient à la hauteur de l'Entretien
   et laissaient 85 à 165 px de papier vide en bas de carte. Au bureau, l'Entretien occupe deux rangées à gauche ; à droite, les
   cassettes puis la note de réservation, qui équilibre les deux colonnes. Si la colonne de droite est la plus haute (texte agrandi),
   l'espace libre de l'Entretien passe sous son texte et le bloc d'achat reste en pied de carte. */
#contenu.dt-contact .dt-offres__autres>.dt-offres__liste{flex:0 1 auto;grid-auto-rows:auto;align-content:start}
@media(min-width:1001px){
 #contenu.dt-contact .dt-offres{grid-template-rows:auto 1fr}
 #contenu.dt-contact .dt-offres>.dt-offre--principale{grid-column:1;grid-row:1/span 2}
 #contenu.dt-contact .dt-offres>.dt-offres__autres{grid-column:2;grid-row:1}
 #contenu.dt-contact .dt-offres>.dt-note{grid-column:2;grid-row:2;align-self:start}
 #contenu.dt-contact .dt-offre--principale>.dt-offre__texte{flex-grow:1}
}
/* Cassettes d'achat non cliquables (vignette, étiquette, nom, texte, prix, actions). Cassette large (≥ 30 rem : 1440, 768) : vignette
   carrée à gauche, tout le reste sur la colonne du texte, actions comprises. */
#contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale{align-items:start;align-content:start;row-gap:var(--dt-s3)}
#contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>:is(.dt-carte__bandeau,.dt-carte__corps){align-self:start}
#contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau{aspect-ratio:1/1;min-height:0}
/* Vignette : l'index « 02 / » en haut à gauche, la gravure posée en bas (8 px de marge) ; 32 px restent réservés à l'index, soit
   9,5 px au moins entre l'index et la gravure (contre un chevauchement de 2,5 à 10,5 px). */
#contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau{align-items:flex-end;padding:0 0 var(--dt-s2)}
#contenu.dt-contact .dt-offres__autres .dt-carte__corps>p{font:400 var(--dt-petit)/1.65 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-contact .dt-offres__liste .dt-liens{margin-top:var(--dt-s2)}
/* Prix des cassettes (6.3). Les deux cassettes suivent le même ordre : étiquette, nom, prix, texte, actions (la ligne de prix
   d'Express est déplacée avant sa description). Montant HT en Fraunces ; TTC au second rang (13 px) ; « À partir de » en légende
   sur la ligne du montant, qui tombe ainsi à la hauteur de celui d'Express. Le point médian d'Express est masqué (dt-sep,
   aria-hidden, règle 1.2-5). Le point final de « 5 500 € HT. », que la garde laisse dans le strong, sort du cadre visible :
   crénage coupé, 0,2 em retranché à droite (chasse du point mesurée 0,217 em dans Fraunces, encre du T arrêtée 0,28 px avant
   la coupe, encre du point 0,17 px après). Le texte lu et copié reste « 5 500 € HT. ». */
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix{margin-top:var(--dt-s2)}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix+p{margin-top:var(--dt-s2)}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix strong{display:block;font:350 1.25rem/1.3 var(--serif);letter-spacing:-.01em;color:var(--dt-texte)}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix :is(small,.dt-ttc){font:400 var(--dt-legende)/1.5 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix .dt-ttc{display:block}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix small{margin-right:var(--dt-s1)}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix small+strong{display:inline-block;font-kerning:none;clip-path:inset(0 .2em 0 0)}
#contenu.dt-contact .dt-offres__autres .dt-cassette__prix .dt-sep{display:none}
/* Tablette (701 à 1000 px) : les deux formats côte à côte (deux colonnes de la famille), comme à l'accueil, chacun en cassette à
   en-tête de vignette ; les actions se posent en pied des deux cartes, à la même hauteur. Au texte agrandi (colonne des formats
   sous 40 rem), une cassette par ligne. */
@media(min-width:701px) and (max-width:1000px){
 @container dt-formats (max-width:39.99rem){#contenu.dt-contact .dt-offres__liste{grid-template-columns:minmax(0,1fr)}}
 @container dt-formats (min-width:40rem){
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale{grid-template-columns:5.5rem minmax(0,1fr);grid-template-rows:auto auto auto auto 1fr;column-gap:var(--dt-s4);row-gap:0}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau{grid-column:1;grid-row:1/span 2;align-self:center;width:5.5rem}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau img{width:3rem;height:3rem}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps{display:contents}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>*{grid-column:1/-1;margin:var(--dt-s3) 0 0}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>.dt-etiquette{grid-column:2;grid-row:1;align-self:end;margin:0}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>.dt-carte__titre{grid-column:2;grid-row:2;align-self:start;margin:var(--dt-s1) 0 0}
  #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-liens{grid-column:1/-1;align-self:end;margin-top:var(--dt-s4)}
  #contenu.dt-contact .dt-offres__liste .dt-liens>.button{width:100%;justify-content:space-between}
 }
}
/* Cassette étroite (colonne des formats de 16 à 30 rem : 1001 à 1200 px, et 320 à 600 px au texte normal) : en-tête à vignette
   (vignette de 5,5 rem, gravure de 3 rem posée en bas, étiquette et nom à sa droite), puis le prix, le texte et les actions sur
   toute la largeur, au même bord gauche que la vignette. Le bouton contour prend la largeur de la carte et garde son libellé
   sur une ligne. */
#contenu.dt-contact .dt-offres__autres{container:dt-formats/inline-size}
@container dt-formats (max-width:30rem){
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale{grid-template-columns:5.5rem minmax(0,1fr);column-gap:var(--dt-s4);row-gap:0}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau{grid-column:1;grid-row:1/span 2;align-self:center;width:5.5rem}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau img{width:3rem;height:3rem}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps{display:contents}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>*{grid-column:1/-1;margin:var(--dt-s3) 0 0}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>.dt-etiquette{grid-column:2;grid-row:1;align-self:end;margin:0}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>.dt-carte__titre{grid-column:2;grid-row:2;align-self:start;margin:var(--dt-s1) 0 0}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-liens{grid-column:1/-1;margin-top:var(--dt-s4)}
 #contenu.dt-contact .dt-offres__liste .dt-liens>.button{width:100%;justify-content:space-between}
}
/* Texte agrandi seulement (colonne sous 16 rem : 200 %, et 150 % jusqu'à 390 px ; au texte normal, 18 rem au moins à 320 px) :
   une seule colonne, vignette en tête puis tout le reste ; césure française des noms et des textes. */
@container dt-formats (max-width:16rem){
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s3)}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__bandeau{grid-row:auto;align-self:start}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps{display:flex}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>*{margin:0}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>:is(.dt-etiquette,.dt-carte__titre){margin:0}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-carte__corps>.dt-cassette__prix{margin-top:var(--dt-s2)}
 #contenu.dt-contact .dt-offres__liste>.dt-carte--horizontale>.dt-liens{margin-top:var(--dt-s1)}
 #contenu.dt-contact .dt-offres__liste .dt-liens>.button{gap:var(--dt-s2);padding-inline:1rem}
}
/* Carte de l'Entretien. Tablette (zone utile ≥ 34 rem : 701 à 1000 px au texte normal) : prix et bouton sur une même ligne, comme
   l'Entretien de l'accueil ; le reste du bloc d'achat dessous. Au bureau (30 rem utiles) et au texte agrandi, colonne inchangée. */
#contenu.dt-contact .dt-offre--principale{container:dt-offre/inline-size}
@container dt-offre (min-width:34rem){
 #contenu.dt-contact .dt-offre__achat--colonne{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--dt-s5);row-gap:var(--dt-s3);align-items:center}
 #contenu.dt-contact .dt-offre__achat--colonne>*{grid-column:1/-1}
 #contenu.dt-contact .dt-offre__achat--colonne>.dt-offre__prix{grid-column:1;grid-row:1}
 #contenu.dt-contact .dt-offre__achat--colonne>.dt-offre__prix+p{grid-column:1;grid-row:2}
 #contenu.dt-contact .dt-offre__achat--colonne>.button{grid-column:2;grid-row:1/span 2;width:auto;justify-content:center}
}
/* Texte agrandi : la famille commune prend en charge le titre et le prix (F20), sans plafond concurrent dans cette zone.
   Seule la césure de l'étiquette et du texte de présentation reste locale, sous 12 rem de zone utile. Au texte normal,
   la carte mesure au moins 14 rem utiles (320 px) et aucun mot n'est coupé par un trait. */
@container dt-offre (max-width:12rem){
 #contenu.dt-contact .dt-offre--principale :is(.dt-etiquette,.dt-offre__texte>p){overflow-wrap:anywhere;hyphens:auto;hyphenate-limit-chars:8 4 3}
}

/* ── Contact · partenariats et suivi client : contexte et coordonnées à gauche, formulaire intouché à droite ── */
#contenu.dt-contact .dt-service{margin-top:var(--dt-section);padding-top:0;scroll-margin-top:1.5rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-s6);align-items:start;container:dt-service/inline-size}
#contenu.dt-contact .dt-service>.service-context{display:flex;flex-direction:column;gap:var(--dt-s5);min-width:0}
#contenu.dt-contact .dt-service>.service-context>*{margin:0}
#contenu.dt-contact .dt-service .contact-address{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s2);margin:0;padding:0 0 0 var(--dt-s4);border:0;border-left:2px solid var(--dt-or);font:400 var(--dt-petit)/1.7 var(--sans)}
/* Habillage du formulaire, repris de la classe historique service-contact (retirée, 2.7) : carte papier à filet or, choix du motif
   en bloc ; filet et angles droits de la carte de l'Entretien (le rayon historique de 5 px de .contact-box est retiré). Le formulaire et son emplacement ne changent pas. Le placement historique de .contact-box (colonne 2, rangées 1 à 3,
   remis en colonne 1 seulement sous 901 px) créait de 901 à 1000 px une colonne implicite : le contexte tombait à 0 px de large
   (page de 8 000 px). Il est neutralisé ici. */
#contenu.dt-contact .dt-service>.contact-box{grid-column:auto;grid-row:auto;width:100%;max-width:none;margin:0;padding:2rem;background:var(--dt-papier);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);border-radius:0}
#contenu.dt-contact .dt-service>.contact-box [data-motif-select]{display:block}
/* Contact : axes de lecture, coordonnées courtes et bouton du même système visuel.
   La marge de section reste hors de la cible d'ancre ; scroll-padding du header conservé. */
#contenu.dt-contact .service-routing{display:grid;gap:var(--dt-s3);font-size:var(--dt-petit);line-height:1.65}
#contenu.dt-contact .service-routing a{text-decoration:underline;text-underline-offset:.2em}
#contenu.dt-contact .contact-address>.small-label{color:var(--dt-or-texte)}
#contenu.dt-contact .contact-address>.text-link{padding-block:.5rem;max-width:100%}
#contenu.dt-contact #formMessage button[type=submit]{display:flex;justify-content:center;align-items:center;justify-self:stretch;width:100%;min-height:3.5rem;border-radius:999px;font:700 .875rem/1.5 var(--sans);letter-spacing:0;padding:.875rem 1.5rem;text-align:center;transition:background var(--dt-duree),border-color var(--dt-duree)}
#contenu.dt-contact #formMessage button[type=submit]:hover:not(:disabled){background:var(--dt-marine-survol);border-color:var(--dt-marine-survol)}
#contenu.dt-contact #formMessage button[type=submit]:focus-visible{outline:2px solid var(--dt-focus);outline-offset:4px}

@media(max-width:600px){#contenu.dt-contact .dt-service>.contact-box{padding:1.5rem}}
@media(max-width:1000px){#contenu.dt-contact .dt-service{grid-template-columns:minmax(0,1fr)}}
/* Le contexte accompagne la lecture du formulaire (plus de colonne vide sous les coordonnées), comme l'aside des questions :
   au bureau, sur un écran d'au moins 720 px de haut, au texte normal et jusqu'à 125 % (zone ≥ 52 rem ; à 150 %, le cadre ouvert ne
   tiendrait plus dans l'écran). */
@media(min-width:1001px) and (min-height:720px){@container dt-service (min-width:52rem){#contenu.dt-contact .dt-service>.service-context{position:sticky;top:var(--dt-collant)}}}

/* ── Titres de carte en deux parties. Postes (« Consultant · chargé de mission ») : dans une carte étroite, la seconde partie passe
   à la ligne et le point médian est masqué (dt-sep, aria-hidden, texte lu identique) : plus de « · » en fin de ligne. Seuil en rem
   (suit le texte agrandi) : le titre mesure au plus 21,55 rem sur une ligne (h3 de 26 px). ── */
#contenu.dt-recrutements .dt-carte--lien{container:dt-lien/inline-size}
@container dt-lien (max-width:21.58rem){
 #contenu.dt-recrutements .dt-carte__titre>.dt-sep{display:none}
 #contenu.dt-recrutements .dt-carte__titre>.dt-carte__suite{display:block}
}
/* 404 : la destination en titre, sa précision en sous-texte, comme les cartes en ligne du linktree, à toutes les largeurs ; le point
   médian est masqué (dt-sep, aria-hidden). À 390 px, chaque carte tient en deux lignes au lieu de trois. */
#contenu.dt-404 .dt-carte__titre>.dt-sep{display:none}
#contenu.dt-404 .dt-carte__titre>.dt-carte__suite{display:block;margin-top:var(--dt-s1);font:400 var(--dt-petit)/1.65 var(--sans);letter-spacing:0;color:var(--dt-texte-doux)}
/* Sous-texte affiché avec une capitale initiale, comme ceux du linktree ; le texte lu reste en minuscule (suite de la phrase). */
#contenu.dt-404 .dt-carte__titre>.dt-carte__suite::first-letter{text-transform:uppercase}

/* ── Recrutement · blocs de poste : deux temps (titre à gauche, contenu sur l'axe de droite) ; « Ce que vous ferez » et
   « Le profil » en pleine largeur (titre au-dessus) : à deux colonnes de 270 px, les listes du profil s'étiraient sur 20 lignes. ── */
#contenu.dt-recrutements .dt-poste{display:grid;grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s4);align-items:start;container:dt-poste/inline-size}
#contenu.dt-recrutements .dt-poste>*{min-width:0;margin:0}
#contenu.dt-recrutements .dt-poste>.dt-titre{margin-bottom:calc(var(--dt-entete-gap) - var(--dt-s4))}
@media(min-width:1001px){
 /* Titre sur les rangées du contenu, sans écart de rangée (les rangées vides de « span 9 » ajoutaient 8 écarts, soit 128 px). */
 #contenu.dt-recrutements .dt-poste:not(.dt-poste--large):not(.dt-poste--profil){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:0}
 #contenu.dt-recrutements .dt-poste:not(.dt-poste--large):not(.dt-poste--profil)>:not(.dt-titre)+:not(.dt-titre){margin-top:var(--dt-s4)}
 #contenu.dt-recrutements .dt-poste:not(.dt-poste--large):not(.dt-poste--profil)>.dt-titre{grid-column:1;grid-row:1/span 9;margin-bottom:0}
 #contenu.dt-recrutements .dt-poste:not(.dt-poste--large):not(.dt-poste--profil)>:not(.dt-titre){grid-column:2}
}
#contenu.dt-recrutements .poste-texte{max-width:60ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-recrutements .profil-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--dt-gouttiere);margin:0}
#contenu.dt-recrutements .profil-col{padding-top:var(--dt-s4);border-top:2px solid var(--dt-or)}
#contenu.dt-recrutements .profil-col.non{border-top-color:var(--dt-filet)}
#contenu.dt-recrutements .profil-lab{margin:0 0 var(--dt-s3);font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu.dt-recrutements .profil-col ul{display:grid;gap:var(--dt-s2);max-width:60ch;margin:0;padding:0;list-style:none}
#contenu.dt-recrutements .profil-col li{position:relative;padding-left:1.25rem;font:400 var(--dt-corps)/1.65 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-recrutements .profil-col li::before{content:"›";content:"›" / "";position:absolute;left:0;top:0;color:var(--dt-or-texte)}
@media(max-width:700px){
 #contenu.dt-recrutements .profil-duo{grid-template-columns:minmax(0,1fr)}
 /* Piste « Ce que vous ferez » : la remise à zéro des marges des blocs de poste (.dt-poste>*) annulait la marge de -4 px que la
    famille donne à la piste pour compenser son padding de focus ; la première carte tombait 4 px à droite du titre. */
 #contenu.dt-recrutements .dt-poste>.dt-defile-contenu.is-slider{margin-inline:-4px}
}
/* Texte agrandi seulement (bloc ou dépliant sous 12 rem : 200 % à 320 et 360 px ; au texte normal, 17,5 rem au moins) : césure
   française dans le profil, les missions et la culture dépliée (« accompagnements », « intelligemment. » sortaient de 4 à 28 px).
   Contournement local de F7 (famille dt-benefice), à retirer quand la famille le prendra en charge. */
#contenu.dt-recrutements .dt-culture{container:dt-culture/inline-size}
@container dt-poste (max-width:12rem){
 #contenu.dt-recrutements :is(.profil-col li,.dt-benefice__titre,.dt-benefice>p){hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:anywhere}
 /* À 200 % et 320 px, le min-content du mot « accompagnements » forçait le paragraphe de mission à 285 px pour 222 utiles.
    Le paragraphe reste dans la cassette ; la règle commune plus spécifique ne réimpose plus overflow-wrap:break-word. */
 #contenu.dt-recrutements .dt-poste .dt-benefices .dt-benefice>p{min-width:0;max-width:100%;overflow-wrap:anywhere}
}
@container dt-culture (max-width:12rem){
 #contenu.dt-recrutements :is(.dt-situations>h2,.dt-benefice__titre,.dt-benefice>p){hyphens:auto;hyphenate-limit-chars:8 4 3;overflow-wrap:anywhere}
}

/* ── Recrutement · candidature : cadre marine (emblème de la maison, titre, texte, questions) et formulaire intouché dans une carte
   papier, comme le formulaire du contact. L'emblème remplace la gravure du héros (règle « la gravure du héros ne revient jamais
   ailleurs sur la page », section 0) ; la gravure du poste reste dans le héros. Au bureau, le cadre accompagne la lecture du
   formulaire dès 1001 px (à 1024, il laissait 700 px de crème vide sous lui), comme l'aside des questions : texte normal et
   jusqu'à 125 % (zone ≥ 52 rem, 832 px : 850 px à 1001), et seulement si le cadre entier tient sous l'en-tête collant (7 rem).
   Postes : cadre de 377 à 411 px, écran d'au moins 720 px. Hub : son dépliant ouvert porte le cadre à 645 à 735 px ; il ne
   colle qu'à partir de 54 rem d'écran (864 px) sous 1200 px de large, 50 rem (800 px) au-delà ; en rem, le seuil suit la
   taille de texte du navigateur. ── */
#contenu.dt-recrutements .cand-grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);row-gap:var(--dt-s6);align-items:start;container:dt-cand/inline-size}
#contenu.dt-recrutements .cand-cadre{position:static;display:flex;flex-direction:column;align-items:flex-start;gap:var(--dt-s4);max-width:none;margin:0;padding:var(--dt-pad-panneau);background:var(--dt-marine);color:var(--dt-creme);border:0;container:dt-cadre/inline-size}
@media(min-width:1001px) and (min-height:720px){@container dt-cand (min-width:52rem){#contenu.dt-recrutements:not(.dt-recrutement) .cand-cadre{position:sticky;top:var(--dt-collant)}}}
@media(min-width:1001px) and (min-height:54rem),(min-width:1200px) and (min-height:50rem){@container dt-cand (min-width:52rem){#contenu.dt-recrutement .cand-cadre{position:sticky;top:var(--dt-collant)}}}
#contenu.dt-recrutements .cand-cadre>*{margin:0}
/* Titre du cadre : à texte agrandi (200 %, 320 px), « candidature. » débordait déjà de la base (343 px de page) ; il ne dépasse pas 13 %
   de la largeur utile du cadre. Au texte normal, de 320 à 1920 px, la taille du système reste la plus petite. */
#contenu.dt-recrutements .cand-cadre .dt-titre{font-size:min(var(--dt-h2),13cqi);color:var(--dt-creme)}
#contenu.dt-recrutements .cand-cadre .dt-titre em{color:var(--dt-or-clair)}
#contenu.dt-recrutements .cand-cadre p:not(.dt-etiquette){max-width:52ch;font:400 var(--dt-corps)/1.75 var(--sans);color:var(--dt-texte-sur-marine)}
#contenu.dt-recrutements .cand-cadre .dt-etiquette{margin-top:var(--dt-s4);color:var(--dt-or-sur-marine)}
#contenu.dt-recrutements .dt-cand__art{display:block;width:auto;height:6rem;margin-bottom:var(--dt-s2);object-fit:contain;opacity:1;filter:brightness(1.45)}
/* Emblème : le PNG (390 × 309) a 65 px transparents à gauche et 14 px en haut (encre x 65 à 307, y 14 à 308, alpha > 24). Ces
   marges sont compensées en proportion de la largeur rendue : le bord gauche du taureau tombe sur le bord du titre et du texte,
   le haut de son encre sur le padding du cadre. Encre de 68 × 56 px au bureau et en tablette (5,625 rem), 48 × 40 px sous 701 px. */
#contenu.dt-recrutements .dt-cand__art--embleme{--dt-embleme:5.625rem;width:var(--dt-embleme);height:auto;margin:calc(var(--dt-embleme) * -14 / 390) 0 var(--dt-s2) calc(var(--dt-embleme) * -65 / 390);filter:none}
#contenu.dt-recrutements .cand-cadre .dt-depliant--marine{align-self:stretch}
#contenu.dt-recrutements .cand-cadre .dt-depliant--marine>:not(summary){max-width:60ch}
#contenu.dt-recrutements .cand-grille>.demo-form-slot{min-width:0;margin:0;padding:2rem;background:var(--dt-papier);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);border-radius:0}
/* Le champ natif transparent de dépôt reste dans sa zone visible, y compris à 200 % de texte sur 320 px.
   La cible, les attributs et le traitement du fichier sont inchangés. Recette intégrée requise. */
#contenu.dt-recrutements .cand-grille .depot input[type=file]{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
@media(max-width:1000px){#contenu.dt-recrutements .cand-grille{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s5)}}
@media(max-width:700px){
 #contenu.dt-recrutements .cand-grille>.demo-form-slot{padding:1.5rem 1.25rem}
 #contenu.dt-recrutements .dt-cand__art{height:4.5rem}
 #contenu.dt-recrutements .dt-cand__art--embleme{--dt-embleme:4rem;height:auto}
}
/* Impression : les deux colonnes collantes redeviennent statiques ; le cadre marine imprime son fond (texte crème lisible). */
@media print{
 #contenu.dt-recrutements .cand-cadre,#contenu.dt-contact .dt-service>.service-context{position:static}
 #contenu.dt-recrutements .cand-cadre{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ── Recrutement · « L'autre poste ouvert » (carte pleine, seule de son espèce sur le site). Au bureau, le texte et le lien partent
   de l'axe éditorial (765 à 1440, 557 à 1024) comme le contenu des blocs de poste : la carte occupe la largeur du wrap, sa première
   colonne vaut la moitié de la zone utile moins la demi-gouttière. Dès 1201 px, trois colonnes (titre, texte, lien) ; de 1001 à
   1200 px, deux temps (titre à gauche ; texte puis lien sur l'axe), le texte gardant la largeur utile de l'axe (une ligne au lieu
   de trois dans 225 px). Les trois groupes sont centrés verticalement dans la carte et le padding reste symétrique.
   Le pied perd sa hauteur minimale de 44 px (la cible est la carte entière) ; les lignes de texte gardent leur hauteur naturelle.
   Sous 1001 px, la carte s'empile (titre, texte, pied à filet), comme les cartes de postes du hub. Défaut de famille signalé au
   pilote (F8) ; ces règles disparaîtront quand la famille tiendra l'axe. ── */
@media(min-width:1001px){
 #contenu.dt-recrutements .dt-carte--pleine{grid-template-columns:calc(50% - var(--dt-gouttiere) / 2) minmax(0,1fr) auto;align-items:center;padding-block:var(--dt-pad-carte)}
 /* Flèche et libellé partagent le centre du pied ; le lien entier reste la cible tactile. */
 #contenu.dt-recrutements .dt-carte--pleine>.dt-carte__pied{align-items:center;min-height:0}
}
@media(min-width:1001px) and (max-width:1200px){
 #contenu.dt-recrutements .dt-carte--pleine{grid-template-columns:calc(50% - var(--dt-gouttiere) / 2) minmax(0,1fr);grid-template-rows:auto auto;row-gap:var(--dt-s2)}
 #contenu.dt-recrutements .dt-carte--pleine>.dt-carte__corps{grid-column:1;grid-row:1/span 2}
 #contenu.dt-recrutements .dt-carte--pleine>.dt-carte__texte{grid-column:2;grid-row:1;align-self:end}
 #contenu.dt-recrutements .dt-carte--pleine>.dt-carte__pied{grid-column:2;grid-row:2;justify-self:start}
}
@media(min-width:701px) and (max-width:1000px){
 #contenu.dt-recrutements .dt-carte--pleine{display:flex;align-items:stretch}
 #contenu.dt-recrutements .dt-carte--pleine>.dt-carte__pied{margin-top:auto;padding-top:var(--dt-s3);border-top:1px solid var(--dt-filet)}
}

/* ── Linktree : cartes en ligne, liens de contexte rattachés à leur carte ; le dernier bloc porte dt-fin
   (le padding bas historique du conteneur, 65 px, ne s'y ajoute plus). ── */
#contenu.dt-linktree .dt-liens-groupe{display:grid;gap:var(--dt-s3);margin:var(--dt-section) 0 0;padding:0}
#contenu.dt-linktree .dt-liens-groupe>.section-label{margin:0 0 var(--dt-s2);font:600 var(--dt-etiquette)/1.6 var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--dt-or-texte)}
#contenu.dt-linktree .offer-context-link{justify-self:start;margin:-.25rem 0 var(--dt-s2) var(--dt-s5);padding-block:.5rem;font-size:var(--dt-petit)}
#contenu.dt-linktree .links-booking-note{margin:0 0 var(--dt-s3);font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}
#contenu.dt-linktree .content-linktree{padding-bottom:0}

/* ── 404 : « Vous cherchiez peut-être » en deux temps au bureau (titre à gauche, liens sur l'axe de droite, comme les questions) ;
   une colonne de cartes en ligne. Le chevron historique des puces (.content-404 li::before) est retiré. ── */
#contenu.dt-404 .dt-cartes-liens>li::before{content:none}
#contenu.dt-404 .dt-cartes-liens{grid-template-columns:minmax(0,1fr);row-gap:var(--dt-s3)}
#contenu.dt-404 .content-404{padding-bottom:0}
@media(min-width:1001px){
 #contenu.dt-404 .dt-404-liens{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--dt-gouttiere);align-items:start}
 #contenu.dt-404 .dt-404-liens>.dt-entete{margin:0}
}

/* ── Pages légales : un filet sépare les articles (écart total de 40 px à 390 à 56 px à 1440, contre 32 à 42 px sans filet) ;
   sommaire en pastilles sous 601 px, sur papier pour se détacher du fond sable du sommaire. Aucun changement de texte. ── */
#contenu.dt-legal .legal-text h2:not(:first-child){margin-top:clamp(1.25rem,.9rem + 1vw,1.75rem);padding-top:clamp(1.25rem,.9rem + 1vw,1.75rem);border-top:1px solid var(--dt-filet)}
@media(max-width:600px){
 #contenu.dt-legal .legal-toc{position:static;display:flex;flex-wrap:wrap;gap:var(--dt-s2)}
 #contenu.dt-legal .legal-toc>.eyebrow{flex:0 0 100%;margin:0 0 var(--dt-s1)}
 #contenu.dt-legal .legal-toc>a{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:.5rem .875rem;border:1px solid var(--dt-filet);border-radius:999px;background:var(--dt-papier);font:400 var(--dt-petit)/1.3 var(--sans);text-decoration:none;color:var(--dt-texte)}
}

/* CLS recrutement : deux lignes stables avant et après le chargement de Fraunces. */
#contenu.dt-recrutement .recruitment-intro>h1>em{display:block}

/* Retours commerciaux · 24 octobre 2026. */
#contenu.dt-landing-campagne .landing-prix{margin-top:var(--dt-s4);font:400 var(--dt-petit)/1.7 var(--sans);color:var(--dt-texte-doux)}


/* Monogramme du cabinet : conserver ses couleurs et son carré, sans la
   compensation de marge utilisée pour le taureau de la holding. */
#contenu.dt-recrutements .dt-cand__art--marque{width:5rem;height:5rem;filter:none;margin:0 0 var(--dt-s2)}
@media(max-width:700px){#contenu.dt-recrutements .dt-cand__art--marque{width:4rem;height:4rem}}

/* Direction Day : retours de paiement neutres, sans statut client présumé. */
#contenu.dt-contact .dt-payment-return{display:none}
#contenu.dt-contact .dt-payment-return:target{display:grid;grid-template-columns:minmax(0,2fr) minmax(12rem,1fr);gap:var(--dt-s5);padding:var(--dt-s5);margin:var(--dt-s4) 0 var(--dt-s6);border:1px solid var(--dt-filet);border-top:2px solid var(--dt-or);background:var(--dt-papier);scroll-margin-top:8rem}
#contenu.dt-contact .dt-payment-return>div,#contenu.dt-contact .dt-payment-return>aside{min-width:0}
#contenu.dt-contact .dt-payment-return .dt-titre{margin:var(--dt-s2) 0 var(--dt-s3)}
#contenu.dt-contact .dt-payment-return p{max-width:48ch}
#contenu.dt-contact .dt-payment-return aside{border-left:1px solid var(--dt-filet);padding-left:var(--dt-s4);align-self:center}
#contenu.dt-contact .dt-payment-return .hero-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.75rem;align-items:stretch;max-width:40rem;margin-top:var(--dt-s4)}
#contenu.dt-contact .dt-payment-return .hero-actions>a{display:grid;grid-template-columns:minmax(0,1fr) var(--action-icon-size);align-items:center;justify-content:normal;box-sizing:border-box;width:100%;min-width:0;max-width:none;min-height:3.5rem;height:auto;margin:0;padding:.875rem 1.25rem;gap:.625rem;border:1px solid var(--dt-marine);border-radius:2rem;font:600 .875rem/1.4 var(--label);text-align:center;text-wrap:balance;white-space:normal;text-decoration:none}
#contenu.dt-contact .dt-payment-return .hero-actions>.text-link{background:transparent;color:var(--dt-marine)}
#contenu.dt-contact .dt-payment-return .hero-actions>.text-link:is(:hover,:focus-visible){background:var(--dt-marine);color:var(--dt-creme)}
#contenu.dt-contact .dt-payment-return .hero-actions .action-arrow{flex:none;width:var(--action-icon-size);height:var(--action-icon-size)}
@media(max-width:700px){#contenu.dt-contact .dt-payment-return:target{grid-template-columns:minmax(0,1fr);gap:var(--dt-s4);padding:var(--dt-s4);scroll-margin-top:7rem}#contenu.dt-contact .dt-payment-return aside{border-left:0;border-top:1px solid var(--dt-filet);padding:var(--dt-s3) 0 0}#contenu.dt-contact .dt-payment-return .hero-actions{display:grid;grid-template-columns:minmax(0,1fr)}#contenu.dt-contact .dt-payment-return .hero-actions>a{width:100%;min-width:0;justify-content:space-between}}

/* Prestations du hub : trois lignes de meme hauteur, au contenu et au zoom. */
#contenu.dt-linktree .dt-prestations-liens{display:grid;grid-auto-rows:1fr;gap:var(--dt-s3)}
#contenu.dt-linktree .dt-prestation-lien{display:flex;flex-direction:column;gap:var(--dt-s2);min-width:0}
#contenu.dt-linktree .dt-prestation-lien>.dt-carte--ligne{flex:1}
#contenu.dt-linktree .dt-prestation-lien>.offer-context-link{display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;max-inline-size:calc(100% - var(--dt-s5));box-sizing:border-box;margin:0 0 0 var(--dt-s5);padding-block:.5rem}
