.breadcrumbs{font-size:.9rem;line-height:1.8;margin:1rem 0 2rem;overflow-wrap:anywhere}.editorial-main h1{overflow-wrap:break-word}.consent{display:flex!important;align-items:flex-start;gap:.65rem;font-size:1rem}.consent input[type=checkbox]{width:1.25rem;min-width:1.25rem;height:1.25rem;margin-top:.2rem}.newsletter{border-top:1px solid #bdc6ce;padding-top:1.5rem}.newsletter input[type=email]{max-width:32rem;width:100%;min-height:44px}.course-topnav a,.editorial-footer nav a{min-height:44px;display:inline-flex;align-items:center}.editorial-footer nav{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem}form input,form select,button,.button{min-height:44px;font-size:1rem}form label{font-size:1rem}img{max-width:100%;height:auto}.table-wrap{max-width:100%;overflow-x:auto}details summary{padding:.75rem 0;cursor:pointer;font-size:1rem}p,li{overflow-wrap:break-word}[hidden]{display:none!important}#yield-result table{width:100%;border-collapse:collapse}#yield-result th,#yield-result td{padding:.6rem;text-align:left;border-bottom:1px solid #ccc}#yield-result th{font-weight:500}.light-layout>*{min-width:0}.document-grid>*{min-width:0}@media(max-width:700px){.topbar-inner{flex-wrap:wrap;gap:.4rem}.course-topnav{display:flex;flex-wrap:wrap;gap:.3rem .8rem;white-space:normal}.editorial-main{max-width:100%;padding-left:1rem;padding-right:1rem}.editorial-main h1{font-size:clamp(1.9rem,8vw,2.8rem);line-height:1.12}.light-layout{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr}.editorial-hero{gap:1.25rem}.editorial-hero .hero-actions{margin-top:1rem}.editorial-footer{padding:1.5rem 1rem}.pack-price{flex-wrap:wrap}}

/* Acquisition: short help available with keyboard, touch and mouse. */
.fee-field{margin-bottom:1rem}.fee-label{display:flex;align-items:flex-start;gap:.6rem}.fee-label label{flex:1}.fee-help summary{cursor:pointer;color:#254c68;font-size:1.25rem;list-style:none;min-width:32px;min-height:32px;text-align:center}.fee-help[open]{flex-basis:100%}.fee-label:has(.fee-help[open]){flex-wrap:wrap}.fee-help p{background:#eef3f7;border-radius:8px;padding:12px;font-size:.94rem;margin:.3rem 0}.fee-help summary:focus-visible{outline:2px solid #254c68;outline-offset:2px}.fee-field>input{width:100%;box-sizing:border-box}.fee-total{background:#eef3f7}.fee-total th,.fee-total td{font-weight:700!important}.fee-answer{padding:18px;background:#142337;color:white;border-radius:12px;margin:1rem 0}.fee-answer strong{display:block;font-size:2rem;color:white}.fees-layout{align-items:start}

.offer-state{padding:12px 16px;background:#eaf0f5;border-radius:8px;color:#34475c;font-size:.95rem}.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}.offer-card{background:#fff;border:1px solid #c4ced9;border-radius:16px;padding:30px;display:flex;flex-direction:column;min-width:0;box-shadow:0 5px 20px #14233708}.offer-card .offer-kicker{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#6c5636;margin:0 0 8px}.offer-card h2{margin:0;font-size:2rem}.offer-card .offer-amount{font-family:Georgia,serif;font-size:3.5rem;font-weight:700;line-height:1.1;margin:20px 0 14px;color:#142337}.offer-amount span{font:400 1rem Arial,sans-serif}.offer-purpose{font-weight:600;min-height:3.4em}.offer-card ul{padding-left:1.15rem;flex:1}.offer-card li{padding:7px 0;line-height:1.5}.offer-card .offer-limit{font-size:.9rem;color:#536374;border-top:1px solid #dce3ea;padding-top:16px;min-height:4.5em}.offer-card .button{display:flex;justify-content:center;align-items:center;text-align:center;padding:12px 16px;border:1px solid #142337;border-radius:8px;text-decoration:none;background:#fff;color:#142337}.offer-complete{border:2px solid #142337;background:#f7f9fc}.offer-complete .button{background:#142337;color:#fff}.offer-closed{font-size:.8rem;text-align:center;color:#596779;margin:10px 0 0}.offer-upgrade{border-left:4px solid #b69760;background:#fff;padding:22px 28px;border-radius:8px;margin:24px 0}.offer-upgrade h2{font-size:1.5rem;margin-top:0}.offer-grid~.lesson-section{margin-top:24px}html{scroll-padding-top:100px}@media(max-width:700px){.offer-grid{grid-template-columns:1fr;gap:18px}.offer-card{padding:24px}.offer-purpose,.offer-card .offer-limit{min-height:0}.offer-card .offer-amount{font-size:3rem}}

.irl-table{width:100%;table-layout:fixed;border-collapse:collapse;min-width:0!important}.irl-table th,.irl-table td{padding:10px 4px;text-align:center;white-space:normal!important;border-bottom:1px solid #dbe2e9}.irl-table th{background:#eef3f7}.irl-table button{font:inherit;border:1px solid #c5d0db;border-radius:6px;background:white;color:#174964;padding:6px;cursor:pointer;min-width:0}.irl-table button:hover,.irl-table button:focus-visible{background:#e6edf4;outline:2px solid #b69760}#irl-zone{max-width:100%;width:100%;margin:8px 0 14px}#irl-selection{font-weight:600}@media(max-width:480px){.irl-table{font-size:.85rem}.irl-table th,.irl-table td{padding:8px 1px}.irl-table button{padding:4px 1px;width:100%;font-size:.85rem}}

.journey li:has(a){padding:0}.journey li:has(a)::before{display:none}.journey li a{display:block;padding:14px;text-decoration:underline;text-underline-offset:4px}.journey li a::before{content:counter(stages) " / ";color:#986b22}.journey li a:hover{background:#edf1f6}.journey li a:focus-visible{outline:3px solid #a77c35;outline-offset:3px}


/* Readable LMNP comparisons: fixed columns on desktop, labeled cards on mobile. */
.lmnp-comparison{margin:24px 0}.lmnp-comparison table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:16px;line-height:1.65}.lmnp-comparison th,.lmnp-comparison td{white-space:normal;overflow-wrap:break-word;padding:20px 22px;vertical-align:top;text-align:left}.lmnp-comparison thead th{background:#192c42;color:#fff;font-size:16px;font-weight:700}.lmnp-comparison thead th:first-child{width:22%}.lmnp-comparison tbody th{font-size:16px;font-weight:700;color:#192c42}.lmnp-comparison tbody tr:nth-child(even){background:#f2f5f8}.lmnp-comparison tbody td,.lmnp-comparison tbody th{border-bottom:1px solid #d6dee8}.lmnp-table-mobile{display:none}
@media(max-width:720px){.lmnp-table-desktop{display:none}.lmnp-table-mobile{display:grid;gap:18px}.lmnp-table-mobile article{border:1px solid #d6dee8;border-radius:10px;overflow:hidden;background:#fff}.lmnp-table-mobile h3{margin:0;padding:16px 18px;background:#192c42;color:white;font:700 17px/1.5 Arial,sans-serif}.lmnp-table-mobile dl{margin:0;padding:0 18px}.lmnp-table-mobile dl>div{padding:16px 0}.lmnp-table-mobile dl>div+div{border-top:1px solid #d6dee8}.lmnp-table-mobile dt{font-weight:700;color:#795719;font-size:15px;margin:0 0 6px}.lmnp-table-mobile dd{margin:0;font-size:16px;line-height:1.65}}

.benefit-row .benefit-link{display:block;margin-top:16px;font-size:15px;line-height:1.5;font-weight:700;text-underline-offset:3px}.benefit-row .benefit-link small{display:block;margin-top:5px;font-size:12px;font-weight:400;color:#526278;text-decoration:none}.benefit-row .benefit-link:focus-visible{outline:3px solid #b69760;outline-offset:4px}

/* Two-column calculator results fit their card without horizontal scrolling. */
#tool-result{width:100%;max-width:100%;min-width:0;overflow:visible}
#tool-result table{width:100%;min-width:0;max-width:100%;table-layout:fixed;font-size:1rem}
#tool-result caption{white-space:normal;overflow-wrap:anywhere;text-align:left;padding:8px 0 12px;font-size:.9rem}
#tool-result th,#tool-result td{white-space:normal;overflow-wrap:anywhere;word-break:normal;vertical-align:top;padding:12px 10px;font-size:1rem;line-height:1.5}
#tool-result th{width:62%;text-align:left;font-weight:500}
#tool-result td{width:38%;text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:480px){#tool-result th,#tool-result td{padding:10px 6px;font-size:.95rem}#tool-result th{width:58%}#tool-result td{width:42%}}
/* Free housing tools: fitting layouts on phones, no horizontal result scroll. */
.housing-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.housing-fields label{display:flex;flex-direction:column;gap:8px;min-width:0}.housing-fields input,.housing-fields select{width:100%;max-width:100%;min-width:0;box-sizing:border-box;font:inherit;padding:12px;border-radius:8px}.housing-results{margin:20px 0}.housing-results>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;border-bottom:1px solid #65788b;padding:13px 0}.housing-results dt{overflow-wrap:anywhere}.housing-results dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.housing-tool button{margin:12px 12px 0 0}.housing-tool details{margin:16px 0;border:1px solid #65788b;border-radius:10px;padding:16px}.housing-tool summary{cursor:pointer;font-weight:700}#housing-error{color:#ffb9ae}#housing-result:empty{display:none}@media(max-width:600px){.housing-fields{grid-template-columns:minmax(0,1fr)}.housing-results>div{grid-template-columns:minmax(0,1fr);gap:6px}.housing-results dd{text-align:left}.housing-tool{padding:16px!important}.housing-tool details{padding:12px}}

#housing-schedule .amortization-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;margin:14px 0;font-size:.9rem}
#housing-schedule .amortization-table caption{text-align:left;white-space:normal;font-size:.85rem;padding:6px 0 12px}
#housing-schedule .amortization-table th,#housing-schedule .amortization-table td{padding:9px 6px;white-space:normal;overflow-wrap:anywhere;vertical-align:middle;text-align:right;font-size:inherit;line-height:1.35;border-bottom:1px solid #526477;font-variant-numeric:tabular-nums}
#housing-schedule .amortization-table th:first-child{width:9%;text-align:left}
#housing-schedule .amortization-table tbody th{background:transparent;font-weight:400}
#housing-schedule .amortization-table tfoot th,#housing-schedule .amortization-table tfoot td{font-weight:700;border-top:2px solid #c7a66e}
#housing-schedule details>p{font-size:.8rem;line-height:1.4;margin-bottom:0;color:var(--night-muted,#526477)}
@media(max-width:600px){#housing-schedule details{padding:8px}#housing-schedule .amortization-table{font-size:.72rem}#housing-schedule .amortization-table th,#housing-schedule .amortization-table td{padding:8px 2px}#housing-schedule .amortization-table th:first-child{width:8%}}
.wealth-chart{margin:24px 0;padding:16px 10px;background:#101c29;border:1px solid #65788b;border-radius:12px;color:#e5edf5}.wealth-chart figcaption{font-size:1.1rem;font-weight:700;padding:0 8px}.wealth-chart svg{display:block;width:100%;height:auto;max-width:100%;background:#101c29!important}.wealth-chart svg text{fill:#e5edf5!important;font-family:system-ui,sans-serif}.wealth-legend{display:flex;flex-wrap:wrap;gap:12px 20px;padding:8px;font-size:.9rem}.wealth-legend span{display:flex;align-items:center;gap:8px}.wealth-legend i{display:inline-block;width:30px;border-top:3px solid #80caff}.wealth-legend .wealth-rent{border-top:3px dashed #f2ca7c}.wealth-chart>p{font-size:.85rem;margin:8px;color:#e5edf5}#irl-comparison-result:not(:empty){padding:16px;margin:16px 0;border:1px solid #c7a66e;border-radius:8px}

.tool-category-nav{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 26px}.tool-category-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid #c7a66e;border-radius:8px;text-decoration:none;color:var(--night-gold,#705527)}.daily-tools{padding:24px;border:1px solid #c7a66e;border-radius:14px;background:#1b2d3c;margin:24px 0 40px;color:#f1eee7}.daily-tools h2{margin-top:6px}.daily-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.daily-tool-card{display:flex;flex-direction:column;padding:18px;border:1px solid #65788b;border-radius:10px;background:#101c29;color:#f1eee7;text-decoration:none;min-width:0}.daily-tool-card h3{font-size:1.15rem;margin:0 0 8px;color:#f1eee7}.daily-tool-card p{font-size:.95rem;line-height:1.5;margin:0 0 16px;color:#bec9d3}.daily-tool-card span{margin-top:auto;font-weight:700;color:#e0c18b}.daily-tool-card:hover{background:#263e51;border-color:#e0c18b}.daily-tool-card:focus-visible{outline:3px solid #e0c18b;outline-offset:4px}#immobilier,#budget-quotidien,#budget-logement{scroll-margin-top:110px}@media(max-width:800px){.daily-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.daily-tools{padding:16px}.daily-tools-grid{grid-template-columns:1fr}.daily-tool-card{padding:15px}.tool-category-nav a{width:100%}}

.offer-comparison{margin:22px 0;border:1px solid #65788b;border-radius:14px;overflow:hidden}.offer-comparison table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0;margin:0;color:var(--night-text,#142337)}.offer-comparison caption{text-align:left;font-size:1.1rem;font-weight:700;padding:18px;background:var(--night-surface,#f3f5f7)}.offer-comparison .offer-feature-col{width:44%}.offer-comparison th,.offer-comparison td{padding:15px 14px;white-space:normal;overflow-wrap:anywhere;border-bottom:1px solid #526477;vertical-align:middle;font-size:1rem;line-height:1.45}.offer-comparison th{text-align:left}.offer-comparison td,.offer-comparison thead th:not(:first-child){text-align:center}.offer-comparison tbody th{font-weight:500;background:var(--night-surface,#f3f5f7)}.offer-comparison tr>:nth-child(3){background:#243747;color:#f1eee7}.offer-comparison .compare-pack{display:block;font-size:1.15rem}.offer-comparison .compare-price{display:block;font-size:2.4rem;line-height:1.25;color:#e0c18b;margin-top:8px}.offer-comparison .compare-price small{font-size:.75rem;font-weight:400}.offer-comparison .compare-included{font-weight:700;color:#b7e4d3}.offer-comparison .compare-excluded{color:#bec9d3}.offer-comparison .button{min-width:0;max-width:100%;width:100%;box-sizing:border-box;white-space:normal;padding:10px 6px}.offer-comparison tfoot tr>:last-child .button{background:#e0c18b;color:#142337}.offer-comparison tfoot th,.offer-comparison tfoot td{border-bottom:0}@media(max-width:600px){.offer-comparison .offer-feature-col{width:42%}.offer-comparison th,.offer-comparison td{padding:10px 6px;font-size:.8rem}.offer-comparison .compare-pack{font-size:.9rem}.offer-comparison .compare-price{font-size:1.7rem}.offer-comparison .compare-price small{display:block}.offer-comparison .button{font-size:.8rem}.offer-comparison caption{padding:14px;font-size:1rem}}

.home-page .editorial-hero{padding-top:24px;padding-bottom:38px;gap:42px;align-items:center}.home-page .editorial-hero h1{font-size:clamp(2.25rem,4.4vw,4rem);line-height:1.1;letter-spacing:-.025em;max-width:19ch}.home-page .editorial-hero .lead{font-size:1.3rem;line-height:1.5;max-width:40ch}.home-page .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.home-secondary-cta{display:inline-flex;align-items:center;min-height:44px;color:#e0c18b}.home-page .editorial-hero figure{margin:0}.home-page .editorial-hero img{border-radius:18px}.home-section-links{display:flex;flex-wrap:wrap;gap:12px;border-block:1px solid #526477;padding:18px 0;margin:28px 0}.home-section-links a{padding:10px 18px;background:#223446;border-radius:8px;color:#e0c18b;text-decoration:none;min-height:44px;display:flex;align-items:center}.home-example{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;padding:34px;border:1px solid #65788b;border-radius:16px;background:#192735;margin:24px 0}.home-example h2{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.2}.home-example-calculation{background:#101923;padding:22px;border-radius:12px}.home-example-calculation dl{margin:12px 0}.home-example-calculation dl>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #526477}.home-example-calculation dd{margin:0;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}.home-example-calculation .home-example-total{border-bottom:0;color:#e0c18b;font-weight:700}.home-example-calculation>p:last-child{font-size:.85rem;color:#bec9d3;line-height:1.5}.home-tools-more{text-align:center;margin:28px 0}@media(max-width:700px){.home-example{grid-template-columns:1fr;padding:20px;gap:18px}.home-page .editorial-hero{gap:24px}.home-page .editorial-hero h1{max-width:none}.home-example-calculation{padding:16px}.home-section-links a{flex:1 1 180px}.home-page .hero-actions .button{width:100%;text-align:center}}

/* Keep comparison text readable on small screens and when zoomed. */
.offer-comparison{max-width:100%;overflow-x:auto}
.table-scroll-hint{font-size:.9rem;line-height:1.5;color:var(--night-muted,#435568);margin-top:-10px}
.table-scroll-hint[hidden]{display:none}
@media(max-width:600px){.offer-comparison table{min-width:520px}.offer-comparison th,.offer-comparison td,.offer-comparison .button{font-size:1rem}.offer-comparison .compare-pack{font-size:1rem}.offer-comparison .offer-feature-col{width:42%}}
@media print{.offer-comparison{overflow:visible}.offer-comparison table{min-width:0}.offer-comparison tr>:nth-child(3){background:#fff;color:#142337}.offer-comparison .compare-price,.offer-comparison .compare-included,.offer-comparison .compare-excluded{color:#142337}.table-scroll-hint{display:none}}
