/* Parcours illustré SC GOLD. Les légendes sont du texte HTML. */
.estimate-hero { background:linear-gradient(115deg,#a10d17,#790b13); color:#fff; padding:60px 0; }
.estimate-hero-inner { display:grid; grid-template-columns:1.25fr 1fr; gap:48px; align-items:center; }
.estimate-hero .eyebrow { color:var(--gold); font-size:14px; margin-bottom:24px; }
.estimate-hero h1 { font-size:clamp(43px,4.5vw,67px); line-height:1.06; }
.estimate-hero h1 span { color:var(--gold); }
.estimate-intro { font-size:23px; font-weight:600; line-height:1.45; margin-top:25px; }
.estimate-promise { font-size:23px; color:var(--gold); font-weight:800; margin:20px 0 25px; }
.estimate-agency { border:2px solid #d4ad57; border-radius:6px; overflow:hidden; background:#201b17; transform:rotate(1deg); }
.estimate-agency img { width:100%; height:auto; }
.estimate-agency figcaption { font-size:16px; font-weight:700; padding:16px 20px; }
.estimate-route { padding-top:34px; padding-bottom:8px; }
.estimate-route > p { font-size:26px; font-weight:800; margin-bottom:17px; }
.estimate-route nav { display:flex; flex-wrap:wrap; gap:10px 22px; }
.estimate-route a { font-size:17px; font-weight:800; display:flex; align-items:center; gap:10px; padding:7px 0; color:var(--red-deep); }
.estimate-route a span { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--red-deep); color:var(--gold); }
.estimate-chapter { padding:55px 0 65px; scroll-margin-top:110px; }
.estimate-chapter:nth-of-type(3) { background:#f5eedf; }
.estimate-chapter-head { display:flex; align-items:flex-start; gap:25px; margin-bottom:32px; }
.chapter-number { font-size:70px; line-height:1; font-weight:900; color:#a10d17; letter-spacing:-.06em; }
.estimate-chapter-head h2 { font-size:clamp(32px,3.3vw,46px); line-height:1.12; letter-spacing:-.03em; }
.estimate-chapter-head p { font-size:19px; color:#625b52; margin-top:15px; }
.comic-grid { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px; }
.comic-step { min-width:0; border:2px solid #30231c; border-radius:7px; background:#fffdf8; overflow:hidden; box-shadow:5px 5px 0 #d9c498; scroll-margin-top:115px; }
.comic-step figure { height:100%; }
.comic-art { position:relative; aspect-ratio:1; overflow:hidden; background:#f3e4c8; border-bottom:2px solid #30231c; }
.comic-art img { position:absolute; width:200%; height:200%; max-width:none; top:calc(var(--panel-y) * -100%); left:calc(var(--panel-x) * -100%); object-fit:fill; }
.comic-step figcaption { position:relative; padding:28px 28px 30px; }
.step-number { display:grid; place-items:center; width:47px; height:47px; margin-bottom:15px; background:var(--red-deep); color:var(--gold); font-weight:900; font-size:24px; border-radius:4px; }
.comic-step h3 { font-size:28px; line-height:1.15; font-weight:900; margin-bottom:15px; letter-spacing:-.025em; }
.comic-step p { font-size:19px; line-height:1.55; color:#4b453d; }
.estimate-choice { display:flex; gap:22px; padding:30px; background:#fffdf8; border-left:5px solid var(--red); margin-top:40px; }
.estimate-choice .icon { color:var(--red); width:32px; height:32px; margin-top:3px; }
.estimate-choice h3 { font-size:28px; margin-bottom:8px; color:var(--red-deep); }
.estimate-choice p { font-size:20px; }
.estimate-visit { background:var(--red-deep); color:#fff; padding:62px 0; }
.estimate-visit-inner { display:grid; grid-template-columns:1.3fr 1fr; gap:70px; }
.estimate-visit .eyebrow { color:var(--gold); margin-bottom:18px; }
.estimate-visit h2 { font-size:clamp(32px,3.5vw,46px); line-height:1.12; margin-bottom:24px; }
.estimate-visit p { font-size:19px; line-height:1.6; }
.estimate-contact { border:1px solid #d9b46588; border-radius:5px; padding:32px; align-self:center; }
.estimate-contact h3 { color:var(--gold); font-size:27px; margin-bottom:22px; }
.estimate-contact address { font-size:21px; font-style:normal; font-weight:700; line-height:1.5; margin-bottom:20px; }
.estimate-contact .button { margin-top:25px; font-size:22px; width:100%; }
.estimate-directions { display:block; text-align:center; margin-top:18px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.estimate-visit .estimate-rights { font-size:16px; margin-top:25px; color:#f4e6d8; }
.estimate-rights a { display:inline-block; text-decoration:underline; text-underline-offset:4px; margin-top:6px; }
.estimate-art-note { padding-top:25px; padding-bottom:25px; color:#655b4b; font-size:15px; }
@media(max-width:960px) { .estimate-hero-inner { gap:30px; grid-template-columns:1.2fr 1fr; } .estimate-hero h1 { font-size:45px; } .estimate-hero { padding:45px 0; } .estimate-intro { font-size:20px; } .estimate-visit-inner { gap:30px; grid-template-columns:1fr 1fr; } .estimate-contact { padding:23px; } .comic-step figcaption { padding:23px; } .comic-step h3 { font-size:25px; } .comic-grid { gap:24px; } }
@media(max-width:680px) { .estimate-hero-inner,.estimate-visit-inner { grid-template-columns:1fr; } .estimate-agency { max-width:450px; transform:none; margin-top:6px; } .estimate-hero h1 { font-size:clamp(36px,9.7vw,58px); } .estimate-hero .eyebrow { font-size:12px; } .estimate-promise { font-size:21px; } .estimate-route > p { font-size:24px; } .estimate-route nav { flex-direction:column; gap:6px; } .estimate-chapter { padding:40px 0 48px; } .estimate-chapter-head { gap:16px; } .chapter-number { font-size:48px; } .estimate-chapter-head h2 { font-size:31px; } .estimate-chapter-head p { font-size:18px; } .comic-grid { grid-template-columns:1fr; gap:27px; } .comic-step figcaption { padding:23px; } .comic-step h3 { font-size:27px; } .comic-step p { font-size:18px; } .estimate-choice { padding:24px 20px; gap:15px; } .estimate-choice h3 { font-size:24px; } .estimate-choice p { font-size:18px; } .estimate-visit { padding:44px 0; } .estimate-contact { padding:26px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

@media(max-width:680px) { .comic-grid { max-width:627px; margin-inline:auto; } }
