@font-face{font-family:Editorial;src:url('fonts/serif.woff')}@font-face{font-family:Editorial;src:url('fonts/italic.woff');font-style:italic}@font-face{font-family:Grotesk;src:url('fonts/sans.woff')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#f4f0e7;color:#20372e;font-family:Grotesk,Arial,sans-serif;line-height:1.5}a{color:inherit;text-underline-offset:4px}a:hover{color:#886433}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #a66e31;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Editorial,Georgia,serif;font-weight:400}em{font-weight:400;color:#477258}.intro{min-height:100svh;display:flex;flex-direction:column;padding:0 4vw}header{height:85px;border-bottom:1px solid #bdbfb1;display:flex;align-items:center;justify-content:space-between;gap:20px}header a{text-decoration:none}.brand{font-family:Editorial,Georgia,serif;font-size:34px}.brand span{color:#8a723f}.edition,.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:600}nav{display:flex;gap:30px;font-size:13px}main{width:min(1300px,100%);margin:auto;padding:32px 0}.eyebrow{display:block;color:#477258;margin-bottom:22px}h1{font-size:clamp(50px,8.7vw,144px);line-height:1;letter-spacing:-.045em;white-space:nowrap}.lede{font-family:Editorial,Georgia,serif;font-size:clamp(22px,2.1vw,32px);max-width:960px;line-height:1.25;margin-top:25px}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:38px 0 30px}.pillars>div{border-top:1px solid #9da99a;padding-top:15px}.pillars span{font-size:10px;letter-spacing:1.6px}.pillars h2{font-size:31px;line-height:1.2;margin:8px 0}.pillars p{font-size:14px;max-width:350px}.actions{display:flex;align-items:center;gap:28px;font-size:13px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 21px;background:#234c3b;color:#f4f0e7;text-decoration:none;font-size:13px;line-height:1.4}.button:hover{background:#37644e;color:white}.credit{font-size:11px;max-width:780px;margin-top:19px;color:#56685a}.intro-bottom{border-top:1px solid #bdbfb1;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;padding:19px 0}.intro-bottom a{text-decoration:none}.section{max-width:1300px;margin:0 auto;padding:90px 0;border-bottom:1px solid #bdbfb1;width:92%}.section h2,footer h2{font-size:clamp(42px,5.5vw,78px);line-height:1.03;letter-spacing:-.035em;margin-bottom:30px}.section-head{display:grid;grid-template-columns:1.3fr 1fr;gap:0 70px}.section-head .eyebrow{grid-column:1/-1}.section-head>p{align-self:end;margin-bottom:35px;max-width:480px;font-family:Editorial,Georgia,serif;font-size:24px}.change{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:20px 36px;border-top:1px solid #bdbfb1;padding:28px 0}.change h3{font-size:27px;line-height:1.15}.label{font-size:10px;letter-spacing:1px;display:block;margin-bottom:8px;color:#667568}.accent{color:#234c3b;font-weight:700}.change p{font-size:15px}.trade{grid-column:2/-1;color:#56685a;border-left:2px solid #9eaf9d;padding-left:15px;font-style:italic}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:65px}.two-col h3{font-size:30px;margin-bottom:15px}.two-col p{font-size:17px;line-height:1.6}.two-col a{display:inline-block;margin-top:20px;font-size:13px}.finance{margin-top:40px;padding:30px;background:#e3e7da;border-left:4px solid #234c3b}.finance .eyebrow{margin-bottom:12px}.finance p{max-width:1000px}.section details{border-top:1px solid #bdbfb1;padding:22px 0}.section summary{font-family:Editorial,Georgia,serif;font-size:26px;cursor:pointer}.section details p{max-width:900px;margin-top:18px;font-size:17px;line-height:1.7}.reader{display:grid;grid-template-columns:1fr 1.8fr;gap:95px}.reader aside{align-self:start;position:sticky;top:35px}.reader aside h2{font-size:62px}.reader aside p{margin-bottom:22px}.reader aside .small{font-size:12px;color:#667568;margin-top:22px}.print{background:none;border:0;border-bottom:1px solid #234c3b;color:inherit;padding:5px 0;margin:16px 0 0;display:block;cursor:pointer;font:inherit;font-size:13px}.articles article{border-top:1px solid #bdbfb1;padding:25px 0 36px}.article-number{font-size:11px;letter-spacing:1px;text-decoration:none}.articles h3{font-size:35px;line-height:1.15;margin:12px 0 20px}.articles p{font-family:Editorial,Georgia,serif;font-size:21px;line-height:1.6}.sources>p{max-width:780px}.sources ul{padding-left:20px;margin-top:30px}.sources li{margin:12px 0}footer{background:#203e30;color:#f4f0e7;padding:70px 4vw 20px}footer em{color:#c1cdad}footer .eyebrow{color:#c1cdad}footer .button{background:#f4f0e7;color:#203e30}footer p{font-size:12px;margin-top:15px;opacity:.8}.footer-bottom{border-top:1px solid #6c8071;margin-top:60px;padding-top:20px;display:flex;gap:26px;flex-wrap:wrap;font-size:12px}.skip{position:absolute;left:20px;top:-80px;padding:10px;background:white;z-index:10}.skip:focus{top:10px}@media(max-width:800px){.edition{display:none}.intro{padding:0 6vw}header{height:70px}main{padding:40px 0}h1{font-size:8.5vw}.lede{font-size:25px}.pillars{gap:20px}.pillars h2{font-size:25px}.pillars p{font-size:13px}.section-head{display:block}.section-head>p{font-size:22px}.change{grid-template-columns:1fr 1fr;gap:18px}.change h3{grid-column:1/-1}.trade{grid-column:1/-1}.reader{grid-template-columns:1fr;gap:35px}.reader aside{position:static}.reader aside h2{font-size:48px}.two-col{gap:30px}.section{padding:60px 0;width:88%}.intro-bottom{font-size:8px;gap:12px}}@media(max-width:520px){.pillars{grid-template-columns:1fr;margin:30px 0;gap:22px}.pillars h2{font-size:29px}.pillars p{font-size:15px;max-width:none}.actions{gap:20px}.credit{line-height:1.6}.two-col{grid-template-columns:1fr;gap:30px}.change{grid-template-columns:1fr}.change h3,.trade{grid-column:1}.section h2{font-size:47px}.finance{padding:22px}.articles h3{font-size:31px}.articles p{font-size:20px}.intro-bottom>span{display:none}.section summary{font-size:24px}.section-head>p{margin-top:20px}footer h2{font-size:48px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body{background:white;color:black}.intro,header,footer,.section:not(.reader),.reader aside,.article-number{display:none}.reader{display:block;width:100%;padding:0;border:0}.articles article{break-inside:avoid;padding:15px 0}.articles h3{font-size:19pt}.articles p{font-size:11pt;line-height:1.5}.articles article:first-child:before{content:'Libérer le logement — Proposition de réforme';display:block;font:24pt Georgia;margin-bottom:25px}a{color:black;text-decoration:none}@page{margin:18mm}}

header .brand{font-size:clamp(13px,1.4vw,18px);letter-spacing:0;text-transform:none;line-height:1.25;max-width:340px}@media(max-width:600px){header .brand{max-width:65%;font-size:14px}}

.ai-byline{font-size:14px;line-height:1.5;margin:18px 0 22px}.ai-byline a{text-decoration:underline;text-underline-offset:3px}#texte{--reader-size:18px}#texte [id^="article-"] p{font-size:var(--reader-size);line-height:1.75;max-width:72ch}#texte [id^="article-"]{scroll-margin-top:90px}.defined-term{display:inline;padding:0;background:#dce8ce80;border:0;border-bottom:1px dotted currentColor;color:inherit;font:inherit;cursor:help}.defined-term:focus-visible{outline:2px solid currentColor;outline-offset:3px}.definition-popover{position:fixed;z-index:1000;width:min(330px,calc(100vw - 24px));box-sizing:border-box;padding:18px;background:#193b32;color:#fff;border-radius:3px;box-shadow:0 8px 30px #0003;font:15px/1.55 Arial,sans-serif}.definition-popover[hidden]{display:none}.reader-progress{position:fixed;top:0;left:0;height:3px;background:#b6432e;z-index:1001;width:0}.reader-controls{display:flex;align-items:center;gap:12px;margin:0 0 30px;font:13px Arial,sans-serif}.reader-controls button{background:transparent;border:1px solid currentColor;padding:8px 12px;cursor:pointer}.article-permalink{font:16px Arial,sans-serif;opacity:.55;text-decoration:none}@media print{.reader-controls,.reader-progress,.definition-popover,.article-permalink{display:none}.defined-term{background:none;border:0}}
