/* Lisibilité : surcharge commune à toutes les pages. */
body{font-size:18px;line-height:1.7}
p{color:#605f56}
.eyebrow,.quote-heading .eyebrow,.bottom-cta .eyebrow{font-size:12px;letter-spacing:.11em}
.topbar{font-size:12px}
.brand small{font-size:10px;letter-spacing:.1em}
nav{font-size:15px;gap:20px}
.button,.button-small,.header-cta{font-size:16px;min-height:48px;padding:13px 18px}
.nav-wrap{gap:18px;flex-wrap:wrap;padding-block:18px}
.location-pill{font-size:12px;letter-spacing:.08em}
.hero-intro{font-size:19px}
.hero-points{font-size:15px;gap:12px 20px}
.hero-photo figcaption,.hero-photo figcaption small{font-size:12px;letter-spacing:.03em}
.photo-label{font-size:15px}
.quote-card{padding:28px}
.quote-heading h2{font-size:30px}
.quote-heading p{font-size:16px;margin-bottom:20px}
.quote-symbol{display:none}
.step-indicator{font-size:14px;gap:8px;flex-wrap:wrap}
.step-indicator b{width:26px;height:26px;font-size:13px}
.step-indicator i{min-width:12px}
legend{font-size:20px}
label{font-size:16px;line-height:1.45;margin-bottom:8px}
input,select,textarea{font-size:16px;min-height:50px;padding:12px;margin-bottom:16px;line-height:1.5}
textarea{min-height:110px}
textarea::placeholder{font-size:16px}
.field-help{font-size:14px;line-height:1.5;margin:6px 0 20px}
.quote-card .button{font-size:17px;min-height:52px}
.form-reassurance{font-size:14px;line-height:1.5;margin-top:16px}
.required-note{font-size:13px;line-height:1.5;margin-top:6px}
.consent{font-size:15px;line-height:1.6;gap:12px}
.consent input{width:20px;height:20px;min-height:20px;margin-top:3px}
.back-step{font-size:15px;min-height:44px}
.error-box,.success-box p{font-size:16px}
.hero-bottom{font-size:15px;flex-wrap:wrap}
.hero-bottom>span:first-child{font-size:12px}
.confidence-grid b{font-size:16px;line-height:1.4}
.confidence-grid small{font-size:14px;line-height:1.5}
.confidence-grid>div{padding-inline:12px;align-items:flex-start}
.section-heading>p,.service-card p,.approach-section p,.local-copy>p,.editorial-grid p,.faq-section>div>p{font-size:17px;line-height:1.75}
.service-card p{min-height:0}
.card-number{font-size:15px}
.card-link,.section-footnote,.text-link{font-size:16px}
.card-link{gap:10px;align-items:flex-start}
.city-chips a{font-size:16px;padding-block:10px}
.local-photo figcaption b{font-size:18px}
.local-photo figcaption small{font-size:14px;line-height:1.5}
.checklist li{font-size:16px;line-height:1.6}
.checklist>a{font-size:15px}
.faq-list summary{font-size:18px;line-height:1.5}
.faq-list details p{font-size:17px;line-height:1.75}
.bottom-cta p{font-size:17px}
.footer-grid p,.footer-grid li{font-size:16px}
.footer-grid h3{font-size:17px}
.footer-bottom{font-size:14px;flex-wrap:wrap}
.footer-bottom div{flex-wrap:wrap}
.breadcrumb{font-size:14px}
.page-hero p{font-size:19px}
.prose p,.prose li{font-size:18px;line-height:1.8}
.sidebar-card p,.sidebar-card li,.sidebar-card .button{font-size:16px}
.local-search label,.local-search input{font-size:17px}
.directory-card p,.pagination a,.related-grid a{font-size:16px}
.pagination a{min-width:44px;min-height:44px;text-align:center}
@media(min-width:701px) and (max-width:1200px){
 .header-cta{display:none}
 .nav-wrap{gap:16px}
 nav{font-size:14px;gap:16px}
 .hero-grid{grid-template-columns:1fr 1fr;gap:28px}
 .field-row{grid-template-columns:1fr;gap:0}
 .quote-card{padding:24px}
 .confidence-grid{grid-template-columns:repeat(2,1fr);gap:24px}
 .confidence-grid>div{border:0;justify-content:flex-start}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-card:last-child{grid-column:1/-1}
}
@media(max-width:700px){
 body{font-size:18px}
 .container{width:calc(100% - 32px)}
 .topbar{font-size:12px}
 .topbar .container{gap:8px}
 .nav-wrap{min-height:76px;padding-block:12px;flex-wrap:nowrap}
 .brand{font-size:25px}
 .brand small{font-size:9px}
 .menu-toggle{min-width:46px;min-height:46px}
 nav a,nav a:last-child{font-size:18px;min-height:44px;display:flex;align-items:center}
 .hero{padding-top:20px}
 .hero-grid{display:flex;flex-direction:column;gap:36px}
 .hero-form{order:-1;width:100%;min-width:0}
 .hero-copy{width:100%;min-width:0}
 .quote-page{display:flex;flex-direction:column;gap:36px;padding-top:20px}
 .quote-page>.quote-card{order:-1}
 .quote-card{padding:24px 18px;border-radius:10px}
 .quote-heading h2{font-size:28px;line-height:1.25}
 .quote-heading p{font-size:17px;line-height:1.6}
 .quote-heading .eyebrow{font-size:12px}
 .step-indicator{font-size:14px;padding-bottom:16px;margin-bottom:20px}
 .field-row{grid-template-columns:1fr;gap:0}
 label{font-size:16px}
 input,select,textarea{font-size:17px;min-height:52px;padding:12px}
 textarea::placeholder{font-size:16px}
 .field-help{font-size:14px}
 .quote-card .button{font-size:17px;min-height:54px}
 .form-reassurance{font-size:14px}
 .required-note{font-size:13px}
 .consent{font-size:15px}
 .consent input{width:20px;height:20px;min-height:20px}
 .hero-intro{font-size:19px}
 .hero-intro br{display:none}
 .hero-points{font-size:16px;display:grid;gap:10px}
 .location-pill{font-size:11px;letter-spacing:.06em}
 .hero-photo figcaption,.hero-photo figcaption small{font-size:11px}
 .photo-label{font-size:14px}
 .hero-bottom{font-size:15px;gap:10px 14px}
 .hero-bottom>span:first-child{font-size:12px}
 .confidence-grid{gap:24px;grid-template-columns:1fr}
 .confidence-grid>div,.confidence-grid>div:first-child{padding:0;gap:14px}
 .confidence-grid b{font-size:17px}
 .confidence-grid small{font-size:15px}
 .confidence-grid .icon{width:25px;height:25px}
 .eyebrow,.bottom-cta .eyebrow{font-size:12px}
 .section-heading>p,.service-card p,.local-copy p,.editorial-grid p,.approach-section p,.faq-section>div>p{font-size:18px}
 .card-link,.section-footnote,.text-link,.city-chips a{font-size:16px}
 .city-chips{column-gap:16px}
 .city-chips a:nth-child(odd){margin-right:0}
 .local-photo figcaption small{font-size:14px}
 .local-photo figcaption{gap:12px;left:-10px;right:10px;padding:14px}
 .local-photo figcaption>span{font-size:27px;padding-right:12px}
 .checklist li{font-size:17px}
 .faq-list summary{font-size:18px}
 .faq-list details p{font-size:17px}
 .bottom-cta p{font-size:17px}
 .footer-grid{gap:24px 16px}
 .footer-grid p,.footer-grid li{font-size:16px}
 .footer-grid h3{font-size:17px}
 .footer-bottom{font-size:14px;padding-bottom:105px}
 .mobile-cta{padding-inline:16px;gap:10px}
 .mobile-cta>span{font-size:14px}
 .mobile-cta .button{font-size:15px;min-height:48px;padding:10px 14px}
 .page-hero p{font-size:18px}
 .breadcrumb{font-size:14px}
 .prose p,.prose li{font-size:18px}
 .directory-card p{font-size:17px}
}
/* Mobile : le titre d'abord, puis le formulaire, puis la photo */
@media(max-width:700px){.hero-copy{display:contents}.hero-copy>*{order:1}.hero-form{order:2}.hero-copy>.hero-photo{order:3}.hero-grid{gap:0}.hero-form{margin:10px 0 30px}}
