:root{--navy:#092d3a;--deep:#061f2a;--teal:#00ae9f;--mint:#b7f4a5;--paper:#f6f8f5;--ink:#102e38;--muted:#5d737a;--line:#dce5e3}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:0}body{margin:0;color:var(--ink);background:#fff;font:16px/1.6 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}svg{display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.17;letter-spacing:-.045em}h2{font-size:clamp(2.05rem,4.2vw,3.65rem)}h2 em,h1 em{font-style:normal;color:#0aa99c}.wrap{width:min(1180px,calc(100% - 46px));margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:10px;z-index:20}.topbar{background:#061f2a;color:#b7d4d7;font-size:12px}.topbar-inner{min-height:37px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar strong{color:#fff}.pulse{display:inline-block;width:7px;height:7px;background:#aef49b;border-radius:50%;margin-right:6px}.header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8efed}.header-inner{height:79px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:10px;align-items:center;flex-shrink:0;line-height:1.02;letter-spacing:.01em}.brand .logo{width:43px;height:43px;color:#fff;background:#093a49;border-radius:12px;display:grid;place-items:center}.brand svg{width:35px;height:35px}.brand b,.brand strong{display:block;font-family:Manrope,sans-serif;font-size:14px;font-weight:800}.brand strong{color:#05a89d;letter-spacing:.015em}.nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:800}.nav a:hover,.secondary:hover{color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;border-radius:9px;font-size:14px;font-weight:800;white-space:nowrap;transition:transform .18s,filter .18s;border:2px solid transparent}.btn:hover{transform:translateY(-2px);filter:brightness(.96)}.btn svg{width:18px;height:18px;fill:currentColor}.btn-dark{background:#0a3543;color:#fff}.btn-lime{background:#b9f48b;color:#07313b}.btn-large{padding:18px 25px;font-size:17px}.btn-outline{border-color:#b7c9c9;color:#0a3543}.burger{display:none}.hero{background:radial-gradient(circle at 75% 30%,#126677 0%,#0b3d4a 37%,#092d3a 70%);color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;min-height:570px;align-items:center;position:relative;gap:25px}.hero-copy{padding:66px 0 52px;position:relative;z-index:2}.eyebrow,.kicker{font-size:12px;font-weight:800;letter-spacing:.16em;color:#0caa9d}.eyebrow{color:#b9f48b;display:flex;gap:10px;align-items:center}.tiny-line{width:24px;height:2px;background:#b9f48b}.hero h1{font-size:clamp(2.7rem,5.1vw,4.8rem);letter-spacing:-.06em;margin:27px 0}.hero h1 em{color:#b9f48b}.lead{color:#d1e6e8;font-size:18px;max-width:540px}.lead strong{color:#fff}.hero-actions{display:flex;align-items:center;gap:28px;margin:31px 0 44px}.arrow{margin-left:10px}.secondary{font-weight:800;font-size:14px}.secondary span{margin-left:5px}.hero-proof{display:flex;gap:23px;align-items:center}.hero-proof b{display:block;font-size:18px;color:#fff;line-height:1.3}.hero-proof small{display:block;font-size:11px;color:#bdd1d4}.hero-proof i{height:31px;width:1px;background:#36717b}.hero-visual{height:440px;position:relative;align-self:center}.visual-back{position:absolute;inset:65px -110px 15px 5px;border-radius:180px 20px 20px 180px;background:linear-gradient(150deg,#1f8390,#0b4a5b)}.truck{width:112%;position:absolute;left:-12%;top:15px;filter:drop-shadow(0 28px 24px #02233190)}.visual-top{position:absolute;z-index:1;top:8px;right:0;font-size:11px;font-weight:800;letter-spacing:.07em;background:#fff;color:#0b404c;padding:12px 16px;border-radius:9px;box-shadow:0 9px 25px #0018}.check{color:#0ab09e;margin-right:5px}.visual-badge{position:absolute;bottom:16px;left:8px;display:flex;gap:9px;align-items:center;background:#fff;border-radius:11px;padding:14px 18px;color:#123541;box-shadow:0 18px 30px #0018}.visual-badge>span{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#dff9d9;color:#178a54;font-size:20px}.visual-badge b,.visual-badge small{display:block}.visual-badge b{font-size:13px}.visual-badge small{font-size:11px;color:#657b7e}.hero-bottom{padding:16px 0 19px;display:flex;justify-content:space-between;border-top:1px solid #377481;color:#d2e3e6;font-size:13px;font-weight:700}.urgency{background:#e6f8ed}.urgency-inner{padding:20px 0;display:flex;align-items:center;gap:18px}.urgency-icon{width:43px;height:43px;display:grid;place-items:center;flex-shrink:0;background:#b7f48c;border-radius:50%;font-size:23px;font-weight:800}.urgency-inner>div:nth-child(2){flex:1}.urgency-inner b,.urgency-inner span{display:block}.urgency-inner b{font-size:15px}.urgency-inner span{font-size:13px;color:#4b7072}.urgency-inner>a{font-size:14px;font-weight:800;text-decoration:underline}.section{padding:100px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:90px;margin-bottom:42px}.section-heading h2{margin:12px 0 0}.section-heading>p{max-width:365px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card{background:#f5f8f7;padding:29px 24px;min-height:350px;display:flex;flex-direction:column;border:1px solid #ebefec;border-radius:13px}.card.featured{background:#e5f7f1;border-color:#c1ebd9}.card-number{font-size:11px;letter-spacing:.12em;font-weight:800;color:#68918d}.icon-disc{width:52px;height:52px;border-radius:14px;background:#d6eee8;display:grid;place-items:center;font-size:34px;font-weight:600;color:#117e78;margin:23px 0}.card h3{font-size:19px;letter-spacing:-.035em}.card p{font-size:13px;color:#627b7e;flex:1}.card a{font-size:12px;font-weight:800;color:#087e75;display:flex;justify-content:space-between;gap:6px}.benefits{background:#082e3d;color:#fff;padding:90px 0}.benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:105px}.kicker.light{color:#b9f48b}.benefits h2 em,.endcta h2 em{color:#b9f48b}.benefits p:not(.kicker){color:#c2d5d9;max-width:450px}.benefits .btn{margin-top:18px}.benefit-list{display:grid;align-content:center}.benefit-list>div{display:flex;gap:24px;padding:18px 0;border-bottom:1px solid #325763}.benefit-list>div:first-child{border-top:1px solid #325763}.benefit-list span{color:#a8f28b;font-weight:800}.benefit-list h3{font-size:19px;margin-bottom:4px}.benefit-list p{font-size:13px;margin-bottom:0}.pricing{background:#f7f9f7}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{position:relative;min-height:425px;border:1px solid #e0e8e5;background:#fff;border-radius:13px;padding:30px;display:flex;flex-direction:column}.price-highlight{border:2px solid #08a79c;box-shadow:0 12px 28px #0b51481a}.badge{position:absolute;top:-14px;left:25px;background:#b9f48b;font-size:10px;letter-spacing:.08em;font-weight:800;padding:6px 12px;border-radius:6px}.price-label{font-size:12px;font-weight:800;letter-spacing:.1em;color:#0e7b74;margin-bottom:25px}.price{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.price small{font-size:12px;color:#748487}.price strong{font-family:Manrope,sans-serif;font-size:45px;letter-spacing:-.06em}.price b{font-size:12px}.price-card p{font-size:14px;color:#62777c;margin-top:13px}.price-card ul{padding:0;list-style:none;margin:12px 0 28px;flex:1}.price-card li{font-size:13px;padding:6px 0}.price-card li:before{content:'✓';color:#00a78e;font-weight:800;margin-right:9px}.price-card .btn{width:100%}.pricing-note{background:#eaf0ee;margin-top:22px;padding:18px 21px;border-radius:9px;font-size:13px;color:#50696d}.zones-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:center}.zones-grid>div>p:not(.kicker){color:#5e7679}.zones-grid .btn{margin-top:15px}.zone-panel{padding:36px;background:#eef8f4;border-radius:16px}.zone-panel h3{font-size:22px}.city-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.city-grid span{background:#fff;border:1px solid #dceae7;padding:10px 15px;border-radius:7px;font-size:13px;font-weight:800}.city-grid span:before{content:'⌖';margin-right:10px;color:#0b9488}.zone-panel p{font-size:12px;color:#64817c;margin:23px 0 0}.process{background:#f7f9f7}.center-heading{text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:48px}.steps>div{border-top:2px solid #aac9c3;padding-top:20px}.steps b{font-size:40px;color:#0da99c;font-family:Manrope}.steps h3{font-size:22px;margin:13px 0}.steps p{color:#667d7f;font-size:14px}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.faq-grid>div>p:not(.kicker){color:#667c7f}.faq-list details{border-bottom:1px solid #d6e1df}.faq-list details:first-child{border-top:1px solid #d6e1df}.faq-list summary{cursor:pointer;list-style:none;font-weight:800;padding:21px 38px 21px 0;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:4px;top:13px;font-size:26px;color:#0ca79b;font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:14px;color:#647b7e;padding-right:35px}.endcta{background:radial-gradient(circle at 80% 50%,#165566,#082e3d 63%);padding:70px 0;color:#fff}.endcta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.endcta h2{margin:12px 0 18px}.endcta p:not(.kicker){color:#c6d8dc;max-width:520px}footer{background:#061e28;color:#bacbd0;padding:58px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:85px}.footbrand{color:#fff}.footbrand .logo{font-size:24px}.footer-grid p{max-width:310px;font-size:13px;margin-top:22px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px;font-size:13px}.footer-grid strong{color:#fff;margin-bottom:12px}.footer-bottom{border-top:1px solid #25404a;margin-top:55px;padding:20px 0;display:flex;justify-content:space-between;font-size:12px}.mobile-call{display:none}
@media(max-width:1050px){.nav{gap:12px}.head-call{padding:12px}.cards{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:clamp(2.5rem,5vw,4rem)}.hero-proof{gap:11px}.benefits-grid{gap:45px}}@media(max-width:760px){body{padding-bottom:69px}.wrap{width:min(100% - 32px,600px)}.topbar-inner{justify-content:center}.topbar-inner>a{display:none}.header-inner{height:67px}.brand b,.brand strong{font-size:12px}.brand .logo{width:39px;height:39px}.head-call{display:none}.burger{display:flex;flex-direction:column;justify-content:center;gap:5px;background:#eef7f4;border:0;border-radius:8px;width:44px;height:42px;padding:10px}.burger span{height:2px;background:#082e3d;width:100%}.nav{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;box-shadow:0 16px 20px #032a3320;flex-direction:column;padding:20px;gap:18px;align-items:stretch}.nav.open{display:flex}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:53px 0 25px}.hero h1{font-size:clamp(2.7rem,10vw,4rem);margin:18px 0}.lead{font-size:16px}.hero-actions{margin:23px 0 28px;gap:19px;flex-wrap:wrap}.btn-large{font-size:16px;padding:15px 20px}.hero-proof{justify-content:space-between}.hero-proof b{font-size:15px}.hero-proof small{font-size:10px}.hero-visual{height:280px;width:100%;max-width:440px;margin-inline:auto}.visual-back{inset:35px -30px 5px 3px}.truck{top:-30px;left:-8%;width:111%}.visual-top{top:6px;right:0;font-size:8px}.visual-badge{bottom:8px;left:0;padding:8px}.hero-bottom{flex-wrap:wrap;gap:7px 20px;font-size:11px;justify-content:flex-start}.urgency-inner{align-items:start}.urgency-inner>a{display:none}.section{padding:67px 0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px}.cards,.price-grid,.benefits-grid,.zones-grid,.steps,.faq-grid,.footer-grid{grid-template-columns:1fr}.cards{gap:12px}.card{min-height:0}.card p{min-height:65px}.benefits{padding:67px 0}.benefits-grid,.zones-grid,.faq-grid{gap:32px}.price-grid{gap:24px}.price-card{min-height:0}.zone-panel{padding:20px}.city-grid{gap:7px}.city-grid span{padding:9px;font-size:12px}.steps{gap:15px}.steps>div{padding-top:12px}.endcta{padding:58px 0}.endcta-inner{align-items:stretch;flex-direction:column;gap:14px}.endcta-inner .btn{align-self:start}.footer-grid{gap:28px}.footer-bottom{gap:10px;flex-direction:column;margin-top:35px}.mobile-call{position:fixed;bottom:0;left:0;right:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;padding:10px 15px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #d2e7df;box-shadow:0 -5px 25px #042a3825}.mobile-call small,.mobile-call b{display:block;line-height:1.3}.mobile-call small{font-size:11px;color:#56747a}.mobile-call b{font-size:16px}.mobile-call a{background:#b6f58e;padding:10px 17px;border-radius:8px;font-weight:800;font-size:14px;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Pages services & locales */
.page-hero{background:linear-gradient(125deg,#061f2a,#0e5663);color:white;padding:78px 0 74px}.page-hero h1{font-size:clamp(2.5rem,5vw,4.3rem);max-width:890px;margin:16px 0}.page-hero p{font-size:18px;color:#d7eaeb;max-width:730px}.crumbs{font-size:13px;color:#bddee0}.crumbs a{text-decoration:underline}.page-hero .btn{margin-top:12px}.info-layout{display:grid;grid-template-columns:1.4fr .75fr;gap:60px}.info-layout h2{font-size:clamp(1.8rem,3vw,2.7rem)}.info-layout p{color:#597277}.side-card{background:#eaf8ef;border-radius:18px;padding:30px;align-self:start;position:sticky;top:110px}.side-card h3{font-size:24px}.side-card .btn{white-space:normal;text-align:center}.detail-list{display:grid;gap:15px}.detail-list article{background:#f5f8f7;border-radius:12px;padding:24px}.detail-list h3{margin-bottom:8px}.detail-list p{margin:0;color:#60787c}.related-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.related-links a{padding:10px 15px;background:#eaf6f2;color:#075e59;border-radius:8px;font-weight:800;font-size:13px}.photo-slot{margin-top:24px;padding:20px;border:1px dashed #8eafaa;border-radius:12px;background:#f8fbf9;color:#536f72;font-size:13px}.photo-slot strong{display:block;color:#113641}.micro{font-size:12px;color:#6d8386}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.link-grid a{border:1px solid #dce9e5;padding:23px;border-radius:12px;background:#f7faf9;font-weight:800}.link-grid a span{display:block;color:#678284;font-weight:400;font-size:13px;margin-top:10px}.nav a[aria-current=page]{color:#008b83}@media(max-width:760px){.page-hero{padding:53px 0}.info-layout,.link-grid{grid-template-columns:1fr}.side-card{position:static}.page-hero p{font-size:16px}}

.zone-panel .city-grid a{display:flex;align-items:center;color:#0a394b;text-decoration:none;font-weight:700;border-radius:10px;background:#eef8f7;padding:9px 12px}.zone-panel .city-grid a:hover,.zone-panel .city-grid a:focus-visible{background:#c6f5ee;text-decoration:underline}

/* Version 4 : call-to-action ergonomics & postal code validation */
body{padding-bottom:0}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #079987;outline-offset:3px}
.btn svg{flex:0 0 19px;width:19px;height:19px;fill:none;stroke:none}.btn{white-space:normal;text-align:center;min-height:46px}
.card a{align-items:center;justify-content:flex-start;min-height:44px;color:#056e67;font-size:13px}
.card a:after{content:'→';font-family:Arial,sans-serif;font-size:20px;margin-left:auto;padding-left:10px}
.postal-section{padding:75px 0;background:#edf7f3}
.postal-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center}
.postal-grid h2{font-size:clamp(1.9rem,3.6vw,3rem)}.postal-grid p:not(.kicker){color:#516f73}
.postal-card{border:1px solid #d2e7e0;border-radius:18px;background:#fff;padding:28px;box-shadow:0 14px 35px #0b3a3a0e}
.postal-check label{display:block;font-weight:800;margin-bottom:10px}.postal-controls{display:flex;gap:10px}
.postal-controls input{min-width:0;flex:1;padding:13px 15px;border:1px solid #96bdb5;border-radius:10px;font-size:18px;letter-spacing:.07em}
.postal-controls button{border:0;border-radius:10px;color:#08333a;background:#b9f48b;font-weight:800;padding:12px 17px;cursor:pointer;min-height:48px}
.postal-check small{display:block;color:#647c80;margin-top:10px}.postal-result{border-radius:12px;margin-top:17px;padding:17px;background:#e0f7e4;border:1px solid #a4dfac;color:#11492a}
.postal-result.neutral{background:#fff2da;border-color:#ebca88;color:#6b4913}.postal-result.error{background:#ffeded;border-color:#f4bdbd;color:#832d2d}
.postal-result strong{display:block;font-size:16px}.postal-result p{margin:7px 0 12px;font-size:14px;color:inherit!important}.postal-result a{display:inline-flex;padding:11px 16px;background:#0a3944;color:#fff;border-radius:9px;font-weight:800;min-height:44px;align-items:center}
.mobile-call{display:none}
@media(max-width:760px){body{padding-bottom:calc(94px + env(safe-area-inset-bottom))}.postal-section{padding:54px 0}.postal-grid{grid-template-columns:1fr;gap:15px}.postal-card{padding:20px}.postal-controls{flex-direction:column}.postal-controls input{width:100%}.mobile-call{display:block;position:fixed;inset:auto 0 0;z-index:30;padding:9px 14px calc(9px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dcebe6;box-shadow:0 -7px 24px #03212a19}.mobile-call-button{width:100%;max-width:560px;margin:0 auto;border-radius:12px;background:#b9f48b;color:#062d35;min-height:58px;display:flex;justify-content:center;gap:12px;align-items:center;text-align:left;padding:9px 16px}.mobile-call-button svg{width:24px;height:24px}.mobile-call-button b,.mobile-call-button small{display:block;line-height:1.35}.mobile-call-button b{font-size:14px}.mobile-call-button small{font-size:13px}}

/* Version 5 : accès immédiat aux tarifs dans le premier écran mobile */
.hero-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 0;max-width:520px}.hero-price{display:flex;flex-direction:column;justify-content:space-between;gap:3px;padding:13px 15px;border:1px solid #65a4aa;border-radius:11px;background:#ffffff11;transition:background .15s}.hero-price:hover,.hero-price:focus-visible{background:#ffffff24;outline-color:#b9f48b}.hero-price>span{font-size:13px;color:#e0f4f2;font-weight:700}.hero-price strong{font-family:Manrope,Arial,sans-serif;color:#b9f48b;letter-spacing:-.04em;font-size:27px;line-height:1.2}.hero-price small{font-size:11px;letter-spacing:0;color:#fff}.hero-price-note{font-size:11px;color:#d0e5e7;margin:7px 0 0;line-height:1.4}.hero-prices+.hero-price-note+.hero-actions{margin:17px 0 23px}
@media(max-width:760px){.hero-copy{padding:23px 0 16px}.hero h1{font-size:clamp(2.1rem,8vw,3.1rem);margin:9px 0 12px}.eyebrow{font-size:10px;letter-spacing:.07em}.lead{font-size:14px;line-height:1.4;margin-bottom:0}.hero-prices{margin-top:13px;gap:8px}.hero-price{padding:10px 11px;border-radius:9px}.hero-price>span{font-size:11px}.hero-price strong{font-size:24px}.hero-price-note{font-size:10px}.hero-prices+.hero-price-note+.hero-actions{margin:12px 0 17px}.hero-actions .secondary{font-size:12px}.hero-proof{gap:8px}.hero-proof b{font-size:13px}.hero-proof small{font-size:9px}}
@media(max-width:370px){.hero-price strong{font-size:21px}.hero-price>span{font-size:10px}.eyebrow{font-size:9px}.hero h1{font-size:2.05rem}}

/* V6 – Cartes de prestations intégralement cliquables, sans masquer l’appel direct */
.services .card{position:relative;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}
.services .card .card-details-link{color:inherit;font:inherit;display:inline;min-height:0}
.services .card .card-details-link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.services .card> a[href^="tel:"]{position:relative;z-index:2}
.services .card .card-details-link:focus-visible{outline:0}
.services .card:focus-within{outline:3px solid #087e75;outline-offset:3px}
@media(hover:hover){.services .card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #092d3a1c;border-color:#0aa99c}}
@media(hover:hover){.services .card{cursor:pointer}}

/* V7: interfaces lisibles, référencement géographique conservé dans le sous-titre */
.page-location{color:#b9f48b!important;font-size:clamp(13px,1.5vw,16px)!important;font-weight:700;margin:2px 0 12px;line-height:1.45}
.page-hero h1{max-width:820px;font-size:clamp(2.1rem,4.15vw,3.7rem);line-height:1.17;overflow-wrap:break-word}
@media(max-width:760px){
 .page-hero{padding:29px 0 35px}
 .page-hero .crumbs{font-size:12px;line-height:1.4;margin-bottom:13px}
 .page-hero h1{font-size:clamp(2rem,7.5vw,2.85rem);margin:10px 0 8px;letter-spacing:-.045em}
 .page-hero p:not(.page-location):not(.kicker):not(.micro){font-size:15px;line-height:1.55}
 .page-hero-call{display:none!important}
 .page-hero-call + .micro{display:none}
 .hero-actions .btn[href^="tel:"]{display:none!important}
 .hero-actions{margin:12px 0 16px!important}
 .hero-actions .secondary{min-height:38px;display:inline-flex;align-items:center}
 .mobile-call-button{min-height:58px}
}

/* Tarifs complémentaires – cartes compactes et adaptatives */
.additional-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}
.extra-price{background:#fff;border:1px solid #dce8e4;border-radius:13px;padding:23px 25px;min-width:0}
.extra-heading{display:block;color:#0e7b74;font-size:11px;font-weight:800;letter-spacing:.08em;line-height:1.5;min-height:35px}
.extra-price strong{display:block;color:#102e38;font-family:Manrope,Arial,sans-serif;font-size:30px;letter-spacing:-.04em;margin:9px 0}
.extra-price strong small{font-size:13px;letter-spacing:0}
.extra-price p{color:#62777c;font-size:13px;line-height:1.6;margin:0}
.extra-quote{background:#e6f7f0;border-color:#c1ebd9}
@media(max-width:760px){.additional-prices{grid-template-columns:1fr;gap:12px}.extra-price{padding:19px 21px}.extra-heading{min-height:0}.extra-price strong{font-size:27px;margin:6px 0}}

/* V9 – bouton tarifs clairement identifiable, tactile et accessible */
.hero-actions .tariff-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;min-height:54px;border:2px solid #b9f48b;border-radius:12px;background:#b9f48b1c;color:#fff;font-size:15px;font-weight:800;line-height:1.2;box-shadow:0 4px 14px #021b2455;transition:background .2s ease,box-shadow .2s ease,transform .2s ease,color .2s ease;text-align:center;text-decoration:none}
.tariff-cta .tariff-cta-icon{display:inline-flex;align-items:center;justify-content:center;margin:0;color:#b9f48b}
.tariff-cta .tariff-cta-arrow{margin:0 0 0 2px;display:inline-block;font-size:23px;line-height:1;color:#b9f48b;transition:transform .2s ease}
.hero-actions .tariff-cta:hover,.hero-actions .tariff-cta:focus-visible{background:#b9f48b;color:#092d3a;box-shadow:0 8px 24px #021b2470;transform:translateY(-2px)}
.hero-actions .tariff-cta:hover .tariff-cta-icon,.hero-actions .tariff-cta:hover .tariff-cta-arrow,.hero-actions .tariff-cta:focus-visible .tariff-cta-icon,.hero-actions .tariff-cta:focus-visible .tariff-cta-arrow{color:#092d3a}
.hero-actions .tariff-cta:hover .tariff-cta-arrow,.hero-actions .tariff-cta:focus-visible .tariff-cta-arrow{transform:translateY(3px)}
#tarifs{scroll-margin-top:110px}
@media(max-width:760px){.hero-actions .tariff-cta{display:flex;width:100%;max-width:360px;min-height:52px;padding:12px 15px;font-size:14px!important;margin:0 auto}.hero-actions{justify-content:center}.hero-actions .tariff-cta-label{font-size:14px}}
@media(prefers-reduced-motion:reduce){.hero-actions .tariff-cta,.tariff-cta .tariff-cta-arrow{transition:none}}

/* V10 — ergonomie, accessibilité et robustesse responsive */
:where(a,button,input):focus-visible{outline:3px solid #b0ef7d;outline-offset:3px}
:where(.pricing,.services,.postal-section,.section){scroll-margin-top:105px}
.card-details-link{touch-action:manipulation}
.mobile-call-button{touch-action:manipulation}
@media(max-width:760px){
  .topbar-inner>a{display:none}
  .hero-proof{flex-wrap:wrap}
  .hero-price{min-width:0}
  .page-hero h1{hyphens:auto}
}
@media(max-width:360px){
  .wrap{width:calc(100% - 30px)}
  .hero-price{padding:9px 8px}
  .hero-price strong{font-size:20px}
  .mobile-call{padding-left:10px;padding-right:10px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* V12 : typographie contrôlée sur tous les écrans. Aucun mot coupé automatiquement. */
html{hyphens:none;-webkit-hyphens:none}
h1,h2,h3,h4,.card h3,.page-hero h1{hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:normal!important;text-wrap:balance}
p,li,.crumbs,.city-grid span{hyphens:none;-webkit-hyphens:none;word-break:normal;overflow-wrap:break-word}
@media(max-width:760px){
 .page-hero h1{font-size:clamp(1.8rem,7.15vw,2.55rem);line-height:1.2;letter-spacing:-.045em}
 .page-hero{padding:28px 0 34px}
 .page-hero .crumbs{font-size:12px}
 .page-hero .page-location{font-size:14px}
 .page-hero p{max-width:100%}
 h2{font-size:clamp(1.85rem,7vw,2.65rem)}
 .hero h1{letter-spacing:-.045em}
}
@media(max-width:390px){.page-hero h1{font-size:clamp(1.65rem,7.15vw,1.95rem)}.page-hero .crumbs{font-size:11px}}
@media(max-width:330px){.page-hero h1{font-size:1.55rem}.wrap{width:calc(100% - 26px)}}

/* V14 : un seul décalage pour les ancres (évite le cumul scroll-padding + scroll-margin). */
html{scroll-padding-top:80px}
#services,#tarifs,#verifier-secteur,#secteurs,#faq{scroll-margin-top:0!important}
@media(max-width:760px){html{scroll-padding-top:68px}}
/* V15 : le positionnement des ancres est piloté en pixels par JS. */
html{scroll-padding-top:0!important}
#services,#tarifs,#verifier-secteur,#secteurs,#faq,#haut{scroll-margin-top:0!important}

/* V16 : confiance, pages indépendantes et offre B2B */
.trust-strip{background:#f0f8f7;border-block:1px solid #d9eeeb;padding:16px 0}.trust-items{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.trust-item{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#103c46}.trust-item small{font-size:11px}.stars{color:#d99a13;letter-spacing:1px}.trust-check{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#168c76;color:white;font-weight:800}.trust-link{text-decoration:none;font-weight:700}.pro-cta{margin:32px auto;padding:25px;background:#e9f6f4;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.pro-cta h2{margin:5px 0}.pro-cta p{max-width:650px}.pricing-clarity,.wc-notice{margin:25px auto;padding:18px;background:#e9f6f4;border-radius:14px;color:#123b43}.standalone{min-height:55vh;padding-top:65px}.standalone h1{max-width:850px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.15}.standalone-content{max-width:1040px;margin-top:28px}.standalone-content h2{margin:18px 0}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:25px 0}.info-cards article,.quote-panel{background:#eff8f7;border:1px solid #d5e8e5;border-radius:18px;padding:24px}.big-price{font-size:2rem;font-weight:800;color:#0b6570}.quote-panel{margin:25px 0}.standalone .postal-section{padding:20px 0}.standalone .postal-section .wrap{width:100%}@media(max-width:720px){.trust-items{display:grid;grid-template-columns:1fr 1fr}.trust-item{font-size:12px}.trust-item small{display:block}.pro-cta{display:block}.pro-cta .btn{margin-top:15px}.standalone{padding-top:35px}.trust-strip{padding:13px 0}}
/* V17: cartes interactives et lisibilité mobile */
.interactive-prices .price-card{display:flex;cursor:pointer;text-decoration:none;color:var(--ink);transition:transform .18s,box-shadow .18s}.interactive-prices .price-card:hover,.interactive-prices .price-card:focus-visible,.pro-card:hover,.pro-card:focus-visible{transform:translateY(-3px);box-shadow:0 14px 32px #0b51482b;outline:2px solid #08a79c;outline-offset:2px}.interactive-prices .price-card .btn{margin-top:auto}.pro-page{padding-top:42px!important}.pro-page .kicker{margin-bottom:12px}.pro-page h1{margin:0 0 18px}.pro-intro{font-size:clamp(16px,2vw,20px);color:#506e73;max-width:850px;line-height:1.55}.pro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}.pro-card{display:flex;flex-direction:column;gap:12px;min-height:245px;background:#fff;border:1px solid #d8e7e3;border-radius:14px;padding:25px;color:var(--ink);transition:transform .18s,box-shadow .18s}.pro-card h2{font-size:clamp(21px,2.4vw,28px);margin:0}.pro-card strong{font-size:25px;color:#087e75}.pro-card p{font-size:14px;color:#62777c;flex:1;margin:0}.pro-call{display:block;background:#0a3543;color:white;border-radius:9px;text-align:center;padding:12px;font-weight:800;font-size:14px}@media(max-width:760px){.pro-grid{grid-template-columns:1fr;gap:14px}.pro-page{padding-top:24px!important}.pro-card{min-height:0;padding:22px}.pro-page h1{font-size:clamp(29px,8vw,40px)}.interactive-prices .price-card{min-height:0}}

/* V18: single clear zone form, without repeated page introduction */
main > .postal-section{padding-top:32px}
main > .postal-section .postal-grid{align-items:start}
main > .postal-section h1{font-size:clamp(2rem,4vw,3rem);line-height:1.18;margin:12px 0 16px}
.zone-note{margin-top:20px;color:#516f73;font-size:.92rem}
@media(max-width:760px){main > .postal-section{padding-top:24px}main > .postal-section .postal-grid{gap:20px}}

/* V19 - navigation vers les pages locales */
.local-pages-section{background:#f5faf8}.local-city-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.local-city-card{display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:23px;border:1px solid #cce2dc;border-radius:20px;background:white;color:#0c3440;text-decoration:none;min-height:125px;transition:transform .15s,border-color .15s}.local-city-card:hover,.local-city-card:focus-visible{border-color:#11a89c;transform:translateY(-2px)}.local-city-name{font-size:1.2rem;font-weight:800}.local-city-action{font-size:.92rem;color:#078f84;font-weight:700}@media(max-width:700px){.local-city-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.local-city-card{padding:17px 14px;min-height:116px}.local-city-name{font-size:1.06rem}.local-city-action{font-size:.83rem}}@media(max-width:350px){.local-city-cards{grid-template-columns:1fr}}

/* V22 — conversion-first audit fixes */
a.whole-call-card,a.price-card[href^="tel:"],a.pro-card[href^="tel:"],a.full-call-card{display:flex;flex-direction:column;color:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:rgba(29,177,156,.18);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
a.whole-call-card .btn,a.price-card[href^="tel:"] .btn{pointer-events:none;margin-top:auto}
a.whole-call-card:active,a.price-card[href^="tel:"]:active,a.pro-card:active{transform:scale(.985);border-color:#159d91}
a.whole-call-card:focus-visible,a.price-card[href^="tel:"]:focus-visible,a.pro-card:focus-visible{outline:3px solid #13a89a;outline-offset:4px}
.google-review-card{position:absolute;right:2%;bottom:0;display:grid;grid-template-columns:auto auto;align-items:center;column-gap:13px;row-gap:2px;background:white;border:1px solid #e1ebe7;border-radius:17px;box-shadow:0 14px 36px rgba(0,25,31,.2);padding:13px 18px;z-index:3;transform:translateY(35%);min-width:220px}.google-review-card .review-label{grid-column:1/-1;color:#46636a;font-size:11px;font-weight:800;letter-spacing:.08em}.review-stars{color:#dc9b17;font-size:19px;letter-spacing:1px;white-space:nowrap}.review-score{color:#082f3b;font-weight:900;font-size:26px;white-space:nowrap}.review-score small{font-size:15px;color:#567078}.trust-mini{display:flex;justify-content:center;gap:12px 26px;flex-wrap:wrap;padding-top:36px;padding-bottom:15px;color:#0c534f;font-weight:750;font-size:13px}.trust-mini span{background:#eaf8f1;border-radius:99px;padding:8px 13px}.urgency-compact .urgency-inner{padding-top:13px;padding-bottom:13px}.urgency-compact .urgency-icon{width:38px;height:38px;font-size:20px}.urgency-compact .urgency-inner span{font-size:14px;line-height:1.4}.local-city-card{min-height:0;gap:9px;justify-content:flex-start;padding:19px}.local-city-name{font-size:1.12rem;line-height:1.35}.local-city-near{font-size:.84rem;color:#5b7377;line-height:1.35;flex:1}.local-city-action{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:43px;border-radius:11px;background:#e3f7ed;color:#087366;padding:9px 11px;font-weight:800;font-size:.85rem}.local-city-card:active{transform:scale(.985);background:#f0faf7}.pro-page .pro-intro{max-width:790px;font-size:1.07rem;line-height:1.55;margin-bottom:18px}.pro-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0 30px}.pro-hero-actions .btn{min-height:48px}.pro-page .pro-group-title{scroll-margin-top:105px}
@media(max-width:760px){.google-review-card{right:50%;bottom:-10px;transform:translate(50%,35%);padding:11px 14px;min-width:205px}.trust-mini{padding-top:49px;padding-bottom:10px}.local-city-cards{grid-template-columns:1fr;gap:11px}.local-city-card{padding:15px 17px;min-height:0}.local-city-name{font-size:1.08rem}.local-city-action{width:100%}.pro-page .pro-intro{font-size:1rem;line-height:1.5}.pro-hero-actions .btn{width:100%;justify-content:center}.urgency-compact .urgency-inner{gap:10px}}

/* V23 — bandeau de confiance intégré, sans superposition ni espace vide */
.proof-inline{padding-top:12px;padding-bottom:12px}
.proof-inline-inner{display:flex;align-items:center;justify-content:center;gap:10px 16px;flex-wrap:wrap}
.proof-inline .google-review-card{position:static;transform:none;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px;padding:9px 13px;border-radius:12px;box-shadow:0 3px 14px rgba(0,35,45,.09);background:#fff}
.proof-inline .review-label{font-size:10px;letter-spacing:.02em;flex-basis:100%}
.proof-inline .review-stars{font-size:15px;line-height:1}
.proof-inline .review-score{font-size:20px;line-height:1.1}
.proof-inline .review-score small{font-size:12px}
.proof-chip{font-size:12px;font-weight:800;color:#d9f6e9;white-space:nowrap}
.proof-urgent{color:#baf58d;font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){
.proof-inline{padding-top:9px;padding-bottom:12px}
.proof-inline-inner{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;align-items:center}
.proof-inline .google-review-card{grid-column:1/-1;justify-content:center;gap:5px 9px;padding:8px 12px}
.proof-inline .review-label{flex-basis:auto;font-size:10px}
.proof-inline .review-stars{font-size:16px}
.proof-inline .review-score{font-size:21px}
.proof-chip{font-size:11px;text-align:center;background:rgba(255,255,255,.08);padding:7px 4px;border-radius:8px}
.proof-urgent{grid-column:1/-1;text-align:center;padding:4px}
}

/* V25 — ergonomie compacte, priorité à l'appel et à la lisibilité mobile */
@media(max-width:760px){
.section{padding-top:34px!important;padding-bottom:36px!important}
.section .kicker{margin-bottom:8px!important}
.section h2{margin-top:6px!important;margin-bottom:14px!important}
.section p{margin-top:8px;margin-bottom:12px}
.local-pages-section .local-city-cards{margin-top:16px!important;gap:9px!important}
.local-city-card{padding:13px 15px!important;gap:7px!important;border-radius:15px!important}
.local-city-action{min-height:42px!important;padding:9px 12px!important}
.pro-page{padding-top:20px!important}
.pro-page h1{margin-bottom:12px!important}
.pro-hero-actions{margin-bottom:17px!important}
.pro-grid{margin-top:15px!important;gap:11px!important}
.pro-card{padding:17px!important;gap:9px!important}
.pro-card p{line-height:1.45!important}
.proof-inline{padding-top:7px!important;padding-bottom:8px!important}
.proof-inline-inner{gap:6px 8px!important}
.proof-inline .google-review-card{padding:7px 10px!important}
.proof-chip{padding:5px 4px!important}
.pricing,.services{padding-top:34px!important;padding-bottom:36px!important}
}
a.whole-call-card,a.price-card[href^="tel:"],a.pro-card[href^="tel:"]{cursor:pointer;touch-action:manipulation}
a.whole-call-card:active,a.price-card[href^="tel:"]:active,a.pro-card[href^="tel:"]:active{transform:scale(.99);background:#f0faf7}
.local-city-card:focus-visible,a.whole-call-card:focus-visible,a.pro-card:focus-visible{outline:3px solid #0b9c8e;outline-offset:3px}

/* V26: restore persistent mobile call CTA; late .mobile-call display:none previously overrode media query */
@media (max-width:760px){
 .mobile-call{display:block!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:999!important;visibility:visible!important;opacity:1!important;}
 .mobile-call-button{display:flex!important;pointer-events:auto!important;}
 body{padding-bottom:calc(98px + env(safe-area-inset-bottom))!important;}
 .services .card{padding:18px 20px!important;min-height:0!important;}
 .services .card .icon-disc{margin:8px 0 12px!important;width:43px;height:43px;font-size:26px;}
 .services .card p{min-height:0!important;margin-bottom:14px!important;}
}
.services a.full-call-card{display:flex;flex-direction:column;cursor:pointer;touch-action:manipulation;}
.services a.full-call-card>span:last-child{display:flex;align-items:center;justify-content:center;background:#0a3543;color:white;font-weight:800;border-radius:9px;padding:12px 14px;margin-top:auto;text-align:center;font-size:14px;}
.services a.full-call-card>span:last-child::before{content:'☎';margin-right:8px;}
.services a.full-call-card:focus-visible{outline:3px solid #0ba99c;outline-offset:3px;}

/* V27 — Bouton permanent identique à la V13, priorité à l’appel */
@media screen and (max-width:760px) {
 html body .mobile-call {display:block!important;position:fixed!important;inset:auto 0 0 0!important;z-index:2147483000!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;background:#fff!important;border-top:1px solid #dcebe6!important;padding:9px 14px calc(9px + env(safe-area-inset-bottom))!important;box-shadow:0 -7px 24px #03212a19!important;transform:none!important;}
 html body .mobile-call a.mobile-call-button {display:flex!important;width:100%!important;max-width:560px!important;margin:0 auto!important;min-height:58px!important;align-items:center!important;justify-content:center!important;gap:12px!important;background:#b9f48b!important;color:#062d35!important;text-decoration:none!important;border-radius:12px!important;padding:9px 16px!important;pointer-events:auto!important;cursor:pointer!important;}
 html body {padding-bottom:calc(100px + env(safe-area-inset-bottom))!important;}
}
@media screen and (min-width:761px){html body .mobile-call{display:none!important}}

/* V28 : appel mobile permanent, libellé court et lisible */
@media(max-width:760px){html body .mobile-call{display:block!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:2147483000!important}html body .mobile-call-button{display:flex!important;touch-action:manipulation!important}html body .mobile-call-button b{font-size:16px!important;font-weight:800!important}html body .mobile-call-button small{font-size:13px!important}}

/* V31 : ancrages précis des tarifs, dégagés sous le menu fixe */
#tarif-debouchage-manuel,#tarif-hydrocurage{scroll-margin-top:105px;}
@media(max-width:760px){#tarif-debouchage-manuel,#tarif-hydrocurage{scroll-margin-top:105px;}}

/* V32 — compact professional offers, based on the highlighted 260€ tariff card */
.pro-page .pro-brief{font-size:15px;line-height:1.5;color:#526c70;max-width:850px;margin:0 0 25px}
.pro-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:10px}
.pro-offer{display:block;position:relative;background:#fff;border:1.5px solid #cfe5de;border-radius:14px;padding:20px 21px 16px;color:#102e38;text-decoration:none;cursor:pointer;box-shadow:0 5px 16px #0b51480a;-webkit-tap-highlight-color:rgba(0,174,159,.2);transition:box-shadow .15s,border-color .15s,transform .15s}
.pro-offer-featured{border:2px solid #08a79c;background:#fafffc;box-shadow:0 10px 26px #0b51481c}
.pro-offer-tag{display:inline-block;background:#e6f8df;color:#12644e;font-size:10px;font-weight:900;letter-spacing:.065em;padding:5px 9px;border-radius:6px;margin-bottom:11px}
.pro-offer-featured .pro-offer-tag{background:#b9f48b;color:#0a4439}
.pro-offer-line{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pro-offer-info{min-width:0;display:block}.pro-offer-info strong{display:block;font-family:Manrope,sans-serif;font-size:18px;line-height:1.24;letter-spacing:-.035em}.pro-offer-info small{display:block;font-size:12px;color:#5b7378;line-height:1.4;margin-top:5px}
.pro-offer-price{font-family:Manrope,sans-serif;font-size:26px;line-height:1.15;font-weight:900;letter-spacing:-.05em;color:#087e75;white-space:nowrap}.pro-offer-price small{font-size:11px;letter-spacing:0}.pro-offer-quote{font-size:18px;letter-spacing:-.025em}
.pro-offer-call{display:block;color:#087e75;font-size:12px;font-weight:900;margin-top:12px}.pro-price-note{font-size:13px;line-height:1.5;color:#50696d;margin:18px 0 0}.pro-price-note a{font-weight:800;color:#087e75;text-decoration:underline}
.pro-offer:hover,.pro-offer:focus-visible{border-color:#08a79c;box-shadow:0 13px 28px #0b514825;outline:none}.pro-offer:active{transform:scale(.985)}
@media(max-width:760px){.pro-page .wrap>h1{font-size:clamp(27px,7vw,36px)!important;margin:0 0 10px!important}.pro-page .pro-brief{font-size:13px;margin-bottom:14px}.pro-prices{grid-template-columns:1fr;gap:11px;padding-top:4px}.pro-offer{padding:14px 15px 12px;border-radius:12px}.pro-offer-tag{font-size:9px;margin-bottom:8px;padding:4px 8px}.pro-offer-info strong{font-size:16px}.pro-offer-info small{font-size:11px}.pro-offer-price{font-size:24px}.pro-offer-quote{font-size:17px}.pro-offer-call{margin-top:8px;font-size:11px}.pro-price-note{font-size:12px;margin-top:13px}}

/* V39: pages locales uniformes et compactes */
.city-compact{max-width:1000px}.city-compact>.kicker{margin-bottom:6px}.city-compact>h2{margin:0 0 10px}.city-intro{max-width:800px;margin:0 0 18px}.city-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.city-price-card{display:block;text-decoration:none;color:inherit;background:#f4f8f8;border:1px solid #d6e3e2;border-radius:16px;padding:18px;min-width:0}.city-price-card h3{margin:0 0 8px;font-size:1.08rem;color:#082c39}.city-price{display:inline-block;color:#082c39;font-size:1.9rem;line-height:1.2;margin-right:8px}.city-duration{font-weight:700;font-size:.85rem;color:#385660}.city-price-card p{margin:10px 0 0;line-height:1.5;font-size:.95rem}.city-discover{display:block;color:#145c4a;font-weight:750;margin-top:10px}.city-price-note{font-size:.86rem;margin:10px 0 20px;color:#4d6065}.city-near-title{font-size:1.3rem;margin:18px 0 6px}.city-bottom-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.city-bottom-links a{padding:9px 12px;background:#eaf2f1;border-radius:10px;color:#082c39;font-weight:700;text-decoration:none}.wc-price-section{padding-top:28px;padding-bottom:24px}.wc-price-section h2{margin-bottom:16px}@media(max-width:650px){.city-price-grid{grid-template-columns:1fr;gap:10px}.city-price-card{padding:15px}.city-compact>.city-intro{margin-bottom:14px}.city-near-title{margin-top:12px}.wc-price-section{padding-top:20px;padding-bottom:14px}.city-bottom-links a{font-size:.9rem}}

/* V40 — cartes locales uniformes, compactes et cliquables */
.city-price-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:900px}
.v40-offer{display:block;min-width:0;border:1px solid #cce3dc;border-radius:19px;padding:20px 24px;background:#fff;text-decoration:none;color:#0b303a;transition:border-color .15s,transform .15s}
.v40-offer.recommended{border:3px solid #08a79c;background:#fafffb;padding:18px 22px}
.v40-offer:focus-visible{outline:3px solid #087e75;outline-offset:3px}.v40-offer:active{transform:scale(.99)}
.v40-tag{display:inline-block;max-width:100%;background:#e5f7df;border-radius:10px;padding:6px 12px;color:#135f50;font-size:.75rem;font-weight:850;letter-spacing:.06em;line-height:1.4}
.recommended .v40-tag{background:#b9f38b;color:#104a40}.v40-offer-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:12px}
.v40-offer-copy{min-width:0}.v40-offer-copy h3{font-size:1.28rem;margin:0 0 5px;color:#092f3a}.v40-offer-copy p{font-size:.95rem;color:#61787c;margin:0;line-height:1.4}
.v40-offer-price{font-size:2.2rem;line-height:1.1;white-space:nowrap;color:#087e75}.v40-offer-price small{font-size:.9rem}.v40-offer-action{display:block;color:#087e75;font-weight:800;margin-top:14px;font-size:.98rem}
@media(max-width:600px){.v40-offer{padding:16px}.v40-offer.recommended{padding:14px}.v40-offer-row{align-items:flex-start;gap:8px}.v40-offer-copy h3{font-size:1.04rem}.v40-offer-copy p{font-size:.85rem}.v40-offer-price{font-size:1.65rem}.v40-offer-price small{font-size:.7rem}.v40-tag{font-size:.65rem}.v40-offer-action{font-size:.9rem}.city-intro{line-height:1.45}}

/* V51 — badges visibles sur le premier écran mobile, sans changer le reste */
.proof-mobile{display:none}
@media(max-width:760px){
 .hero-copy{padding-bottom:12px}
 .proof-mobile{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:stretch;gap:7px;margin-top:16px}
 .proof-mobile .google-review-card{position:static;transform:none;min-width:0;display:flex;flex-wrap:wrap;align-content:center;align-items:center;justify-content:center;gap:2px 5px;background:#fff;border-radius:9px;padding:8px 5px;box-shadow:none}
 .proof-mobile .review-label{font-size:8px;letter-spacing:0;white-space:nowrap;color:#46636a;font-weight:800}
 .proof-mobile .review-stars{font-size:14px;letter-spacing:0;color:#e3a01a}
 .proof-mobile .review-score{font-size:17px;white-space:nowrap}
 .proof-mobile .review-score small{font-size:10px}
 .proof-mobile .proof-chip{display:flex;justify-content:center;align-items:center;white-space:normal;text-align:center;font-size:11px;line-height:1.2;padding:6px;background:rgba(255,255,255,.10);border-radius:9px;color:#fff}
 .hero>.proof-inline{display:none}
}
/* V53 : reproduire les deux badges de la maquette, dans le hero, sans nouvelle barre verte. */
@media(max-width:760px){
 .hero-copy{padding-top:16px!important;padding-bottom:10px!important}
 .hero h1{margin:6px 0 9px!important}
 .hero-prices{margin-top:9px!important}
 .hero-prices+.hero-price-note+.hero-actions{margin:8px 0 12px!important}
 .proof-mobile{margin-top:10px!important;gap:4px!important;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)!important}
 .proof-mobile .google-review-card{padding:7px 4px!important;border-radius:10px!important;min-height:48px!important}
 .proof-mobile .proof-chip{background:#173f4b!important;border-radius:10px!important;color:#fff!important;min-height:48px!important;font-size:11px!important;font-weight:800!important}
 .proof-mobile .proof-chip::first-letter{color:#b9f48b}
}

/* V54 — badges compacts conformes à la maquette; pas de bandeau additionnel. */
@media(max-width:760px){
 .hero-copy{padding-top:12px!important;padding-bottom:8px!important}
 .hero h1{margin:5px 0 8px!important;line-height:1.12!important}
 .hero .lead{line-height:1.34!important}
 .hero-prices{margin-top:8px!important}
 .hero-price{padding:8px 10px!important}
 .hero-price-note{margin:6px 0 0!important;line-height:1.3!important}
 .hero-prices+.hero-price-note+.hero-actions{margin:8px 0 10px!important}
 .hero-proof small{line-height:1.2!important}
 .proof-mobile{margin-top:9px!important;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)!important;gap:6px!important}
 .proof-mobile .google-review-card{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;gap:4px!important;min-height:48px!important;padding:7px 5px!important;white-space:nowrap!important;border-radius:10px!important}
 .proof-mobile .review-label{font-size:clamp(6px,1.75vw,9px)!important;letter-spacing:0!important;line-height:1.1!important}
 .proof-mobile .review-stars{font-size:clamp(10px,2.7vw,15px)!important;letter-spacing:-1px!important;line-height:1!important}
 .proof-mobile .review-score{font-size:clamp(14px,3.8vw,19px)!important;line-height:1!important}
 .proof-mobile .review-score small{font-size:10px!important}
 .proof-mobile .proof-chip{display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:5px!important;background:#173f4b!important;border-radius:10px!important;white-space:nowrap!important;font-size:clamp(9px,2.5vw,12px)!important;line-height:1.1!important}
 .proof-mobile .proof-check{width:22px;height:22px;flex:none;border:1.5px solid #b9f48b;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#b9f48b;font-size:15px;font-weight:900}
}
@media(max-width:370px){.proof-mobile .review-label{font-size:6px!important}.proof-mobile .google-review-card{gap:2px!important}.proof-mobile .proof-check{width:18px;height:18px;font-size:12px}}

/* V55 — laisser l'illustration et son cartouche intacts, mais démarrer
   l'illustration sous le premier écran mobile, après les badges. */
@media (max-width:760px){
  .hero-visual{margin-top:100px!important;}
}

/* V58: conserver la ligne de localisation compacte sur mobile */
@media(max-width:480px){.hero .eyebrow{font-size:clamp(7px,2.05vw,9px);letter-spacing:0;white-space:nowrap;gap:5px}.hero .eyebrow .tiny-line{width:14px;flex-shrink:0}}

/* V59 — ajustements ciblés de la première page sur téléphone */
.department-nowrap{white-space:nowrap}
@media(max-width:760px){
  /* Supprime la hauteur vide réservée au visuel sous les badges. */
  .hero-grid{min-height:0!important}
  .hero-visual{display:none!important}
  .hero-copy{padding-bottom:24px!important}
  /* Rend la ligne de localisation plus lisible sans créer de seconde ligne. */
  .hero .eyebrow{font-size:clamp(9px,2.4vw,11px)!important;letter-spacing:-.025em!important;white-space:nowrap!important;gap:5px!important}
  .hero .eyebrow .tiny-line{width:14px!important;flex:none}
}
@media(max-width:370px){.hero .eyebrow{font-size:clamp(8px,2.35vw,9px)!important}}

/* V60 — accueil mobile aéré, contenu préservé dans la section prestations. */
.mobile-services-recap{display:none}
@media(max-width:760px){
  .hero>.hero-bottom{display:none!important}
  .mobile-services-recap{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:0 0 22px;padding:14px;border:1px solid #dceae7;border-radius:12px;background:#f3faf6;color:#164a4d;font-size:12px;font-weight:750}
  .hero-copy{padding-bottom:34px!important}
  .hero .eyebrow{margin-bottom:13px!important}
  .hero h1{margin:8px 0 15px!important}
  .hero .lead{margin-bottom:13px!important}
  .hero-prices{gap:10px!important;margin-top:12px!important}
  .hero-price{padding:12px 11px!important;min-height:65px}
  .hero-price-note{margin-top:9px!important}
  .hero-prices+.hero-price-note+.hero-actions{margin:12px 0 16px!important}
  .hero-actions .tariff-cta{min-height:58px!important;padding:14px 15px!important}
  .hero-proof{margin-top:8px;gap:10px!important}
  .proof-mobile{margin-top:14px!important}
  .proof-mobile .google-review-card,.proof-mobile .proof-chip{min-height:52px!important}
  /* Sur iPhone le survol tactile ne doit pas figer le bouton en vert. */
  .hero-actions .tariff-cta:hover:not(:focus-visible){background:#b9f48b1c;color:#fff;box-shadow:0 4px 14px #021b2455;transform:none}
  .hero-actions .tariff-cta:hover:not(:focus-visible) .tariff-cta-icon,.hero-actions .tariff-cta:hover:not(:focus-visible) .tariff-cta-arrow{color:#b9f48b}
}

/* V61 : villes sur deux lignes lisibles sur mobile, sans modifier les autres éléments */
.hero .eyebrow:has(.city-eyebrow-line){display:flex;align-items:center;flex-wrap:wrap;column-gap:7px;row-gap:3px}
.hero .city-eyebrow-line{display:block;white-space:nowrap}
@media(max-width:760px){.hero .eyebrow:has(.city-eyebrow-line){display:block!important;white-space:normal!important;text-align:center!important;font-size:clamp(10px,2.75vw,13px)!important;letter-spacing:-.02em!important;line-height:1.5!important}.hero .eyebrow .city-eyebrow-line{display:block;white-space:nowrap}.hero .eyebrow .tiny-line{display:none}}
@media(max-width:350px){.hero .eyebrow:has(.city-eyebrow-line){font-size:9px!important}}

/* V62 — mise en page ordinateur uniquement. La V61 mobile (<=760px) reste intacte. */
@media screen and (min-width:761px){
 .hero{background:radial-gradient(circle at 75% 30%,#126677 0%,#0b3d4a 37%,#092d3a 70%)}
 .hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);min-height:0;gap:20px;align-items:center}
 .hero-copy{padding:22px 0 24px;min-width:0}
 .hero .eyebrow:has(.city-eyebrow-line){display:flex;flex-wrap:nowrap;gap:5px;white-space:nowrap;font-size:clamp(8px,.91vw,12px);letter-spacing:0}
 .hero .eyebrow .city-eyebrow-line{display:inline;white-space:nowrap}
 .hero .eyebrow .tiny-line{width:15px;flex-shrink:0}
 .hero h1{font-size:clamp(32px,3.6vw,53px);line-height:1.12;margin:14px 0 12px}
 .hero .lead{font-size:clamp(13px,1.25vw,16px);line-height:1.4;margin-bottom:12px;max-width:680px}
 .hero-prices{margin-top:10px;gap:12px}
 .hero-price{min-height:68px;padding:11px 15px}
 .hero-price-note{margin:8px 0 0;font-size:12px}
 .hero-prices+.hero-price-note+.hero-actions{margin:10px 0 13px;gap:12px;flex-wrap:wrap}
 .hero-actions .tariff-cta{min-height:54px;padding:11px 16px}
 .hero-proof{gap:12px}
 .hero-proof b{font-size:15px}
 .hero-visual{height:310px;min-width:0}
 .visual-back{inset:48px -45px 16px 0}
 .truck{width:120%;left:-12%;top:10px}
 .visual-top{font-size:9px;padding:8px 10px}
 .visual-badge{padding:8px 10px;bottom:0}
 .hero-bottom{padding:10px 0;font-size:12px}
}
@media screen and (min-width:761px) and (max-width:1050px){
 .hero-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,.6fr);gap:10px}
 .hero h1{font-size:clamp(30px,3.9vw,42px)}
 .hero-visual{height:250px}
 .visual-top,.visual-badge{display:none}
 .hero .eyebrow:has(.city-eyebrow-line){font-size:8px}
}

/* V63 — corrections réservées aux écrans ordinateur/tablette large.
   Fond identique à la version mobile : la V62 utilisait déjà les mêmes couleurs. */
@media screen and (min-width:761px){
  /* Le séparateur est masqué entre deux lignes sur mobile, affiché sur ordinateur. */
  .hero .city-eyebrow-line + .city-eyebrow-line::before{content:' | ';white-space:pre}
  /* Badges de confiance visibles dans le bloc principal, sous les arguments. */
  .hero-copy > .proof-mobile{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:13px}
  .hero-copy > .proof-mobile .google-review-card{position:static;transform:none;display:flex;align-items:center;gap:6px;min-width:0;padding:7px 11px;border-radius:10px;box-shadow:none}
  .hero-copy > .proof-mobile .review-label{font-size:9px;letter-spacing:0;grid-column:auto}
  .hero-copy > .proof-mobile .review-stars{font-size:13px;letter-spacing:0}
  .hero-copy > .proof-mobile .review-score{font-size:18px;line-height:1}
  .hero-copy > .proof-mobile .review-score small{font-size:11px}
  .hero-copy > .proof-mobile .proof-chip{display:flex;align-items:center;gap:6px;font-size:11px;padding:7px 9px;border-radius:10px;background:#173f4b;color:#fff}
  .hero-copy > .proof-mobile .proof-check{display:inline-grid;place-items:center;width:19px;height:19px;border:1px solid #b9f48b;border-radius:50%;color:#b9f48b}
}

/* V66 — ordinateur uniquement : fond vert pétrole aligné sur la référence iPhone ; mobile inchangé. */
@media screen and (min-width:761px){
.hero{background:radial-gradient(circle at 75% 30%,#0b5960 0%,#0a4149 37%,#082f3a 70%)!important}
.visual-back{background:linear-gradient(150deg,#12646a,#0a4149)!important}
}

/* V2 – bloc contenu local */
.city-local h2{margin-top:2rem}
.city-local .city-list{padding-left:1.2rem;line-height:1.7}
.city-local .city-list li{margin:.35rem 0}
.city-local .city-trust{margin-top:1.5rem;padding:14px 18px;border-radius:10px;background:#eef6f1;font-weight:600}
.city-local .faq-list details{margin:.6rem 0;padding:.8rem 1rem;border:1px solid #dfe7ea;border-radius:10px}
.city-local .faq-list summary{cursor:pointer;font-weight:700}
.footer-address{display:block;margin-top:.3rem}
.zone-box{margin-top:28px;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;max-width:620px}
.zone-box .kicker{margin:0 0 12px}
.zone-tabs{display:flex;gap:8px;margin-bottom:14px}
.zone-tabs button{flex:1;padding:12px 8px;border:2px solid var(--navy);border-radius:10px;background:#fff;color:var(--navy);font-weight:700;font-size:1rem;cursor:pointer}
.zone-tabs button[aria-selected="true"]{background:var(--navy);color:#fff}
.zone-panel{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:12px;background:var(--paper)}
.zone-panel[hidden]{display:none}
.zone-panel strong{font-size:1.6rem;color:var(--navy)}.zone-panel span{font-weight:600}.zone-panel small{opacity:.75}
.zone-note{margin:12px 0 0;font-weight:600}
.zone-extra{margin-top:12px;padding:14px 16px;border-radius:12px;border:1px dashed var(--navy);display:flex;flex-direction:column;gap:2px}
.zone-extra span{font-size:.9rem;opacity:.75}.zone-extra strong{color:var(--navy)}
.zone-extra{background:var(--navy);border:none}
.zone-extra span{color:var(--mint);opacity:1;font-weight:700;font-size:.95rem}
.zone-extra strong{color:#fff}
@media(max-width:760px){.link-grid{grid-template-columns:1fr 1fr;gap:10px}.link-grid a{padding:14px;font-size:14px}.link-grid a span{font-size:12px;margin-top:6px}}

/* Corrections de mise en page : textes proportionnés et espaces harmonisés */
.zone-panel p strong{font-size:inherit;color:inherit}
.section{padding:64px 0}
.benefits{padding:60px 0}
.endcta{padding:52px 0}
.postal-section{padding:52px 0}
main>.postal-section{padding-top:52px}
.section-heading{margin-bottom:30px;gap:60px}
.steps{margin-top:30px}
.pro-cta{margin:0 auto 8px}
footer{padding-top:44px}
.footer-bottom{margin-top:36px}
.lp-reviews{padding:52px 0}
.chantier-photos{background:#f4faf8}
.chantier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.chantier-grid figure{margin:0;background:#fff;border:1px solid #dce9e5;border-radius:14px;overflow:hidden}
.chantier-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.chantier-grid figcaption{padding:10px 12px;font-size:13px;line-height:1.35;color:#42616a}
.chantier-more{display:inline-block;margin-top:14px;font-weight:800;color:#087e75}
@media(max-width:760px){
 .section{padding-top:32px!important;padding-bottom:32px!important}
 .benefits{padding:36px 0}
 .endcta{padding:36px 0}
 .postal-section,main>.postal-section{padding:32px 0}
 .lp-reviews{padding-top:32px!important;padding-bottom:32px!important}
 .hero-copy{padding-bottom:22px!important}
 .postal-grid{gap:12px}
 .steps{margin-top:18px}
 .chantier-grid{grid-template-columns:1fr;gap:10px}
 .chantier-grid img{aspect-ratio:16/10}
}

/* Page zone d'intervention : note alignée et espaces réguliers */
.wrap.zone-note{margin:20px auto 0;font-size:.9rem;font-weight:500;line-height:1.5}
.wrap.zone-note p{margin:0;color:#516f73}
.local-pages-section h2{margin-bottom:12px}
.local-pages-section .wrap>p:not(.kicker){margin-bottom:0}
.local-pages-section .local-city-cards{margin-top:20px}
@media(max-width:760px){.wrap.zone-note{margin-top:14px}.postal-section .postal-grid>div>p:last-child{margin-bottom:0}}
.wrap.zone-note{font-size:12.5px;font-weight:400}

/* Avis clients sur l'accueil, badge Google unique */
.hero>.proof-inline{display:none!important}
.lp-reviews{background:#f4faf8}
.lp-review-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:18px}
.lp-review-grid blockquote{margin:0;padding:18px;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(8,44,57,.06);line-height:1.6}
.lp-review-grid blockquote::before{content:"★★★★★";display:block;color:#f2b01e;letter-spacing:2px;margin-bottom:6px}
.lp-review-source{margin-top:14px;font-weight:700}
.lp-review-source a{text-decoration:underline}

/* Harmonisation générale */
.btn svg{fill:none!important;stroke:currentColor!important;stroke-width:1.8;width:19px;height:19px}
.page-hero h1 em{color:#b9f48b;font-style:normal}
.brand .logo svg{width:35px;height:35px}
.footbrand .logo{color:#fff}
h2{font-size:clamp(1.85rem,3.2vw,2.75rem)}
.page-hero{padding:52px 0 48px}
.standalone,.pro-page{padding-top:52px!important;padding-bottom:52px!important}
.section-heading{align-items:end}
.real-hero{padding:48px 0}
.real-section{padding-top:48px;padding-bottom:56px}
.pro-cta{margin-top:0}
@media(max-width:760px){.page-hero{padding:28px 0 32px}.standalone,.pro-page{padding-top:32px!important;padding-bottom:32px!important}.real-hero{padding:32px 0}.real-section{padding-top:32px;padding-bottom:90px}h2{font-size:clamp(1.7rem,7vw,2.3rem)}}
