:root{--quote-navy:#0b1b57;--quote-orange:#b34a00;--quote-ink:#15213f;--quote-muted:#66718a;--quote-line:#e2e7ef;--quote-soft:#f5f7fa}body.quote-page{margin:0;background:#fff;color:var(--quote-muted);font-family:Manrope,sans-serif}.quote-page .quote-header{position:sticky}.quote-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.55fr);gap:clamp(2rem,7vw,7rem);align-items:center;min-height:620px;padding:8rem clamp(1.25rem,8vw,8%) 5rem;background:linear-gradient(90deg,rgba(7,20,62,.94),rgba(7,20,62,.45)),url('../images/valise-aeroport-voyage.jpg') center/cover;color:#fff}.quote-hero-copy{max-width:700px}.quote-kicker{margin:0 0 .75rem;color:var(--quote-orange);font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.quote-hero h1,.quote-section h2,.reasons-section h2,.process-section h2,.available-section h2,.testimonials-section h2,.faq-section h2,.whatsapp-section h2,.final-quote-cta h2{margin:0 0 1rem;color:var(--quote-navy);font-family:'DM Serif Display',Georgia,serif;font-size:clamp(2.1rem,4.4vw,4.3rem);font-weight:400;line-height:1.06}.quote-hero h1{max-width:650px;color:#fff;font-size:clamp(3rem,6vw,6rem)}.quote-hero-copy>p:not(.quote-kicker){max-width:600px;color:rgba(255,255,255,.86);font-size:1.1rem}.quote-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.7rem}.quote-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.85rem 1.25rem;border:1px solid transparent;border-radius:4px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;transition:transform .2s,background .2s,filter .2s}.quote-button:hover{transform:translateY(-2px)}.quote-button-primary{background:var(--quote-orange);color:#fff}.quote-button-primary:hover{background:#8f3b00}.quote-button-light{border-color:rgba(255,255,255,.72);color:#fff}.quote-button-light:hover{background:#fff;color:var(--quote-navy)}.quote-trust{display:flex;flex-wrap:wrap;gap:.7rem 1.2rem;margin-top:2rem;color:rgba(255,255,255,.82);font-size:.7rem;font-weight:700}.quote-hero-card{justify-self:end;max-width:320px;padding:2rem;background:rgba(255,255,255,.95);color:var(--quote-navy);box-shadow:0 22px 55px rgba(0,0,0,.2)}.quote-hero-card span,.quote-hero-card small{display:block;color:var(--quote-orange);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.quote-hero-card strong{display:block;margin:1.2rem 0;font-family:'DM Serif Display',Georgia,serif;font-size:2.15rem;font-weight:400;line-height:1.05}.quote-hero-card small{color:var(--quote-muted);font-size:.65rem;letter-spacing:.04em;text-transform:none}.quote-form-section,.reasons-section,.process-section,.available-section,.testimonials-section,.faq-section{padding:clamp(4rem,8vw,7rem) clamp(1.25rem,8vw,8%)}.quote-form-section{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(2rem,6vw,7rem);align-items:start;background:var(--quote-soft)}.section-intro{max-width:620px}.section-intro>p:last-child{margin:0;line-height:1.7}.form-progress{display:grid;grid-template-columns:2rem 1fr 2rem 1fr 2rem;align-items:center;gap:.45rem;max-width:330px;margin-top:2.3rem}.form-progress span{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--quote-line);border-radius:50%;background:#fff;color:var(--quote-muted);font-size:.75rem;font-weight:800}.form-progress .progress-active{border-color:var(--quote-orange);background:var(--quote-orange);color:#fff}.form-progress i{height:1px;background:var(--quote-line)}.form-progress small{grid-column:1/-1;margin-top:.4rem;font-size:.65rem}.lead-form{display:grid;gap:1.5rem;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid var(--quote-line);background:#fff;box-shadow:0 18px 50px rgba(11,27,87,.08)}.lead-form fieldset{margin:0;padding:0 0 1.4rem;border:0;border-bottom:1px solid var(--quote-line)}.lead-form legend{margin-bottom:1rem;color:var(--quote-navy);font-family:'DM Serif Display',Georgia,serif;font-size:1.7rem}.fieldset-help{margin:-.45rem 0 1rem;font-size:.78rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.lead-form label{display:grid;gap:.4rem;color:var(--quote-ink);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.lead-form input:not([type=checkbox]):not([type=radio]),.lead-form textarea{width:100%;padding:.82rem;border:1px solid var(--quote-line);border-radius:3px;background:#fff;color:var(--quote-ink);font:inherit;font-size:.82rem;outline:none}.lead-form input:focus,.lead-form textarea:focus{border-color:var(--quote-orange);box-shadow:0 0 0 3px rgba(179, 74, 0,.13)}.service-check-grid,.budget-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.service-check-grid label,.budget-grid label,.consent-label,.choice-label{display:flex;grid-template-columns:none;align-items:center;gap:.6rem;padding:.8rem;border:1px solid var(--quote-line);background:#fff;font-size:.72rem;text-transform:none;letter-spacing:0}.service-check-grid label:has(input:checked),.budget-grid label:has(input:checked){border-color:var(--quote-orange);background:#fff7ef}.service-check-grid input,.budget-grid input,.consent-label input,.choice-label input{accent-color:var(--quote-orange);flex:0 0 auto}.service-check-grid span{color:var(--quote-orange);font-size:1.2rem}.message-label{padding-top:.2rem}.consent-label{border:0;padding:0}.quote-submit{width:100%;cursor:pointer}.form-status{min-height:1.4em;margin:0;color:#1f7a48;font-size:.8rem;font-weight:700}.reasons-section{background:#fff}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.reason-grid article{padding:1.6rem;border-top:2px solid var(--quote-orange);background:var(--quote-soft)}.reason-grid b,.quote-process span{color:var(--quote-orange);font-size:.75rem;letter-spacing:.1em}.reason-grid h3,.quote-process h3,.available-grid h3{margin:.7rem 0 .4rem;color:var(--quote-navy);font-size:1.05rem}.reason-grid p,.quote-process p,.available-grid p{margin:0;font-size:.8rem;line-height:1.6}.process-section,.faq-section{background:var(--quote-soft)}.quote-process{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin:2.5rem 0 0;padding:0;list-style:none}.quote-process li{padding:1.4rem 0;border-top:2px solid var(--quote-orange)}.available-section{text-align:center}.available-section .section-intro{margin:0 auto}.available-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.5rem 0}.available-grid a{padding:1.5rem;border:1px solid var(--quote-line);color:var(--quote-muted);text-align:left;text-decoration:none;transition:transform .2s,box-shadow .2s}.available-grid a:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(11,27,87,.1)}.available-grid a>span{color:var(--quote-orange);font-size:1.6rem}.available-grid b{color:var(--quote-orange);font-size:.7rem}.testimonials-section{background:#fff}.quote-testimonials{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2.5rem}.quote-testimonials article{padding:1.5rem;border:1px solid var(--quote-line)}.quote-testimonials article>span{color:var(--quote-orange);letter-spacing:.15em}.quote-testimonials blockquote{margin:1rem 0;color:var(--quote-ink);font-family:'DM Serif Display',Georgia,serif;font-size:1.2rem;line-height:1.35}.quote-testimonials strong,.quote-testimonials small{display:block;font-size:.75rem}.quote-testimonials small{margin-top:.25rem;color:var(--quote-muted)}.faq-section{text-align:center}.quote-faq{max-width:850px;margin:2.5rem auto 0;text-align:left}.quote-faq details{border-top:1px solid var(--quote-line)}.quote-faq details:last-child{border-bottom:1px solid var(--quote-line)}.quote-faq summary{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem 0;color:var(--quote-navy);cursor:pointer;font-weight:800;list-style:none}.quote-faq summary::-webkit-details-marker{display:none}.quote-faq summary span{color:var(--quote-orange);font-size:1.3rem}.quote-faq p{margin:0 0 1rem;font-size:.82rem}.whatsapp-section,.final-quote-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(3rem,6vw,5rem) clamp(1.25rem,8vw,8%)}.whatsapp-section{background:#e9fff1}.whatsapp-section h2,.final-quote-cta h2{margin-bottom:.5rem}.whatsapp-section p:not(.quote-kicker),.final-quote-cta p:not(.quote-kicker){margin:0}.whatsapp-button{background:#25d366;color:#fff}.whatsapp-button:hover{background:#149c4b}.final-quote-cta{background:var(--quote-navy);color:rgba(255,255,255,.76)}.final-quote-cta h2{color:#fff}.final-quote-cta .quote-button-light{margin-left:.5rem}.quote-whatsapp-float{position:fixed;z-index:30;right:1.2rem;bottom:1.2rem;padding:.8rem 1.1rem;border-radius:999px;background:#25d366;color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.2);font-size:.72rem;font-weight:800;text-decoration:none}@media(max-width:900px){.quote-hero{grid-template-columns:1fr}.quote-hero-card{justify-self:start}.quote-form-section{grid-template-columns:1fr}.reason-grid,.available-grid{grid-template-columns:repeat(2,1fr)}.quote-process{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.quote-hero{min-height:600px;padding-top:7rem}.quote-hero h1{font-size:3.2rem}.quote-trust{display:grid;grid-template-columns:1fr 1fr}.form-grid,.service-check-grid,.budget-grid,.reason-grid,.quote-process,.available-grid,.quote-testimonials{grid-template-columns:1fr}.whatsapp-section,.final-quote-cta{display:block}.final-quote-cta>div:last-child{margin-top:1.4rem}.quote-button{width:100%}.final-quote-cta .quote-button-light{margin:1rem 0 0}.quote-whatsapp-float{right:.75rem;bottom:.75rem}}
/* Case "J'accepte d'etre contacte" et "Dates flexibles" : case a gauche, texte a cote
   (sans cela, .lead-form label les mettait en grille, case seule au-dessus du texte). */
.lead-form .consent-label,.lead-form .choice-label{display:flex;align-items:flex-start;gap:.7rem;font-size:.85rem;font-weight:700;letter-spacing:0;line-height:1.5;text-transform:none;cursor:pointer}
.lead-form .consent-label input,.lead-form .choice-label input{width:1.15rem;height:1.15rem;margin:.15rem 0 0;flex:0 0 auto}
.lead-form .choice-label{align-items:center;align-self:end;min-height:46px;padding:.8rem;border:1px solid var(--quote-line);border-radius:3px}

/* Intitules des etapes 1-2-3 : simple texte aligne sous chaque pastille
   (ils reprenaient le style rond des pastilles et se chevauchaient). */
.quote-form-section .form-progress .quote-step-labels{grid-template-columns:2rem 1fr 2rem 1fr 2rem;gap:0}
.quote-form-section .form-progress .quote-step-labels span,.quote-form-section .form-progress .quote-step-labels span:hover{display:block;width:max-content;max-width:7.5rem;height:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:var(--quote-navy);font-size:.68rem;animation:none;transform:none}
.quote-form-section .form-progress .quote-step-labels span:nth-child(1){grid-column:1;justify-self:start;text-align:left}
.quote-form-section .form-progress .quote-step-labels span:nth-child(2){grid-column:3;justify-self:center;text-align:center}
.quote-form-section .form-progress .quote-step-labels span:nth-child(3){grid-column:5;justify-self:end;text-align:right}
