
:root{--blue:#193b5f;--gold:#f2a900;--soft:#f6f8fb;--text:#172033;--muted:#667085}*{box-sizing:border-box}body{margin:0;font-family:Arial,system-ui,sans-serif;color:var(--text);line-height:1.55;background:white}a{color:#0b5cad;text-decoration:none}a:hover{text-decoration:underline}.site-header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 5%;border-bottom:1px solid #e7edf5;background:white;position:sticky;top:0;z-index:5}.brand{font-weight:800;color:var(--blue);font-size:20px}.site-header nav{display:flex;gap:18px;flex-wrap:wrap}.hero{background:linear-gradient(90deg,rgba(25,59,95,.95),rgba(25,59,95,.78)),url('/assets/img/trades/monte-escalier/hero-desktop.webp') center/cover;color:white;padding:70px 5%}.hero-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 16px}.lead{font-size:20px}.badge{display:inline-block;background:rgba(255,255,255,.14);padding:8px 12px;border-radius:999px;margin-bottom:14px}.search-box,.card{background:white;color:var(--text);border-radius:18px;padding:24px;box-shadow:0 18px 50px rgba(0,0,0,.18)}.search-box input{width:100%;padding:15px;border:1px solid #ccd6e2;border-radius:10px;font-size:16px}.button,.search-box button{display:inline-block;background:var(--gold);color:#1c1c1c;border:0;border-radius:10px;padding:13px 18px;font-weight:700;margin-top:12px;cursor:pointer}.section{padding:54px 5%;max-width:1180px;margin:auto}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.two{grid-template-columns:1fr 1fr}.pro-card{border:1px solid #e1e7ef;border-radius:16px;padding:18px;background:white;position:relative}.rank{position:absolute;right:14px;top:12px;color:var(--muted);font-weight:bold}.rating{color:#915f00;font-weight:700}.muted{color:var(--muted)}.breadcrumb{max-width:1180px;margin:18px auto 0;padding:0 5%}.breadcrumb ol{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:0}.breadcrumb li:not(:last-child)::after{content:'›';margin-left:8px;color:#98a2b3}.page{max-width:1180px;margin:auto;padding:32px 5%}.narrow{max-width:850px}.gmb-disclaimer-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.gmb-disclaimer{background:#fff8e6;border:1px solid #ffe1a3;border-radius:14px;padding:16px}.gmb-disclaimer-owner{background:#eef7ff;border-color:#b8ddff}.footer{background:#111827;color:white;padding:44px 5%;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.footer a{color:#dbeafe}.footer ul{list-style:none;padding:0}.fineprint{grid-column:1/-1;color:#cbd5e1}.city-list{columns:3}.image-card img{width:100%;height:auto;border-radius:18px}.faq details{border-bottom:1px solid #e5e7eb;padding:12px 0}.legal-note{font-size:14px;color:var(--muted)}@media(max-width:820px){.hero-grid,.grid,.two,.gmb-disclaimer-grid,.footer{grid-template-columns:1fr}.city-list{columns:1}.hero{background-image:linear-gradient(90deg,rgba(25,59,95,.96),rgba(25,59,95,.82)),url('/assets/img/trades/monte-escalier/hero-mobile.webp')}}

body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}#devis{scroll-margin-top:90px}.brand{display:inline-flex;align-items:center}.brand img{display:block;max-width:210px;height:auto}.footer{background:#102033;color:#dbe7f3;padding:44px 5%;margin-top:40px;display:block}.footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;text-align:center}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:6px 0}.footer a{color:#fff}.footer .fineprint{grid-column:1/-1;text-align:center;color:#cbd5e1}.legal-page h2{margin-top:32px}.legal-page ul{padding-left:22px}.vud-form,.vud-placeholder{border:1px solid #d9e2ec;border-radius:16px;padding:18px;background:#f8fafc;min-height:180px}.vud-loading{background:#fff;border:1px dashed #bfd0e3;border-radius:12px;padding:16px;color:#193b5f}.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:80;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 5% calc(12px + env(safe-area-inset-bottom));background:#102033;color:#fff;box-shadow:0 -8px 28px rgba(0,0,0,.18)}.sticky-cta a{background:#f2a900;color:#172033;border-radius:999px;padding:11px 16px;font-weight:800;text-decoration:none}.sticky-cta span{font-weight:700}@media(max-width:640px){.sticky-cta{justify-content:space-between;font-size:14px}.sticky-cta a{white-space:nowrap}}@media print{.sticky-cta{display:none}body{padding-bottom:0}}
.home-cta-section{padding:32px 5%;background:#fff}.home-cta-section .cta-banner{margin:0 auto;max-width:1180px}.cta-banner{max-width:1180px;margin:28px auto -18px;background:linear-gradient(135deg,#f2a900,#ffd770);color:#172033;border-radius:20px;padding:26px 30px;box-shadow:0 16px 40px rgba(138,91,0,.18);display:flex;justify-content:space-between;gap:20px;align-items:center}.cta-banner h2{margin:0;font-size:clamp(22px,3vw,32px)}.cta-banner p{margin:6px 0 0}.cta-banner .button{background:#193b5f;color:#fff;margin:0;white-space:nowrap}.content-modules{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}.content-module{background:#f6f8fb;border:1px solid #e1e7ef;border-radius:18px;padding:22px}.content-module h2{margin-top:0}.company-card{padding:0;overflow:hidden}.company-image{width:100%;height:160px;object-fit:cover;background:#eef2f7}.company-content{padding:18px}.category{color:#193b5f;font-weight:700}.company-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.btn-call,.btn-website,.btn-disabled{border-radius:10px;padding:10px 12px;font-weight:700}.btn-call{background:#193b5f;color:white}.btn-website{background:#eef4ff}.btn-disabled{background:#f0f0f0;color:#777}.hours{font-size:14px;color:#475467;background:#f8fafc;padding:10px;border-radius:10px;margin-top:10px}.transactional-note{background:#fff7df;border-left:5px solid #f2a900;padding:14px 18px;border-radius:12px;margin:20px 0}.gmb-disclaimer-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.gmb-disclaimer{background:#fff7e6;border:1px solid #ffd280;padding:16px;border-radius:14px}.gmb-disclaimer-owner{background:#eef7ff;border-color:#b8dcff}.legal-note,.fineprint{font-size:14px;color:#667085}.image-card img{max-width:100%;border-radius:18px;display:block}.page{max-width:1180px;margin:auto;padding:30px 5%}.narrow{max-width:850px}.city-list{columns:3}.footer{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;background:#102033;color:#dbe7f3;padding:44px 5%;margin-top:40px}.footer a{color:#fff}.footer ul{padding-left:18px}@media(max-width:800px){.hero-grid,.grid,.two,.content-modules,.gmb-disclaimer-grid,.footer{grid-template-columns:1fr}.cta-banner{display:block}.cta-banner .button{margin-top:14px}.city-list{columns:1}}
/* V3: mobile-first, cleaner GMB cards, no GMB images */
.page{padding-top:22px}.grid{align-items:start}.pros-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.company-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid #d9e2ec;border-radius:14px;background:#fff;box-shadow:0 4px 18px rgba(15,35,55,.06);overflow:visible}.company-card .rank{position:static;width:34px;height:34px;border-radius:999px;background:#edf4ff;color:#193b5f;display:grid;place-items:center;font-size:13px}.company-card h3{font-size:17px;line-height:1.25;margin:0 0 4px;color:#152238}.company-card p{margin:3px 0}.company-card .category{font-size:13px;color:#53657a;font-weight:700}.company-meta{font-size:14px}.rating{color:#a56700}.rating small{font-weight:400;color:#667085}.address{font-size:14px;color:#475467}.company-actions{display:flex;flex-direction:column;gap:8px;margin:0}.btn-call,.btn-website,.btn-disabled{display:inline-flex;align-items:center;justify-content:center;min-width:98px;border-radius:9px;padding:9px 12px;font-size:14px}.btn-call{background:#0f5b46;color:#fff}.btn-website{background:#eef4ff;color:#193b5f}.btn-disabled{background:#f4f4f5;color:#71717a}.hours{font-size:13px;color:#667085}.hours summary{cursor:pointer}.gmb-disclaimer-grid{grid-template-columns:1fr 1fr}.local-map{margin:34px 0 18px;border:1px solid #d9e2ec;border-radius:18px;overflow:hidden;background:#f8fafc}.local-map .map-copy{padding:22px}.local-map h2{margin-top:0}.local-map iframe{display:block;width:100%;height:320px;border:0;background:#e7edf3}.map-attribution{font-size:12px;color:#667085;margin:8px 22px 18px}.cta-banner{margin-top:20px}.section{padding-top:42px;padding-bottom:42px}@media(max-width:900px){.pros-grid{grid-template-columns:1fr}.company-card{grid-template-columns:auto 1fr}.company-actions{grid-column:1/-1;flex-direction:row}.gmb-disclaimer-grid{grid-template-columns:1fr}.local-map iframe{height:260px}}@media(max-width:520px){.company-card{grid-template-columns:1fr}.company-card .rank{width:auto;height:auto;display:inline-flex;padding:5px 9px}.company-actions{flex-direction:column}.btn-call,.btn-website,.btn-disabled{width:100%}.hero{padding:42px 5%}.hero h1{font-size:34px}.cta-banner{border-radius:0;margin-left:-5%;margin-right:-5%}}

/* final footer/legal/CTA overrides */
.cta-banner-full{position:relative!important;text-decoration:none!important}.cta-banner-full *{pointer-events:none}.cta-banner,.sticky-cta{cursor:pointer!important}.cta-banner:focus-visible,.sticky-cta:focus-visible{outline:3px solid #193b5f;outline-offset:4px}@media(max-width:760px){.home-cta-section{padding:22px 5%!important}.cta-banner{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;align-items:start!important;padding:22px 24px!important;margin:20px auto!important;border-radius:18px!important}.page .cta-banner{margin-left:0!important;margin-right:0!important}.cta-banner .cta-title,.cta-banner h2{font-size:clamp(22px,7vw,30px)!important;line-height:1.22!important;word-break:normal!important;overflow-wrap:break-word!important}.cta-banner .cta-text,.cta-banner p{font-size:15.5px!important;line-height:1.45!important}.cta-banner .button,.cta-banner .cta-button{width:100%!important;min-width:0!important;white-space:normal!important;text-align:center!important;padding:14px 18px!important;border-radius:12px!important;box-sizing:border-box!important}}@media(max-width:420px){.cta-banner{padding:20px 24px!important}.cta-banner .cta-title,.cta-banner h2{font-size:24px!important}.cta-banner .cta-text,.cta-banner p{font-size:15px!important}}.cta-banner,.sticky-cta{cursor:pointer!important}.cta-banner:focus-visible,.sticky-cta:focus-visible{outline:3px solid #193b5f;outline-offset:4px}.footer{background:#102033!important;color:#dbe7f3!important;padding:44px 5%!important;margin-top:40px!important;display:block!important}.footer-inner{max-width:1180px!important;margin:0 auto!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:28px!important;text-align:center!important}.footer ul{list-style:none!important;padding:0!important;margin:0!important}.footer li{margin:6px 0!important}.footer .fineprint{grid-column:1/-1!important;text-align:center!important;color:#cbd5e1!important}@media(max-width:800px){.footer-inner{grid-template-columns:1fr!important}}

/* critical mobile CTA one-column final override */
.footer-inner.footer-inner-local{grid-template-columns:repeat(4,minmax(160px,1fr))!important}.footer-inner:not(.footer-inner-local){grid-template-columns:repeat(3,minmax(180px,1fr))!important}@media(max-width:900px){.footer-inner.footer-inner-local,.footer-inner:not(.footer-inner-local){grid-template-columns:1fr!important}}
@media(max-width:760px){.cta-banner,.cta-banner-full{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;align-items:start!important;justify-items:stretch!important;box-sizing:border-box!important}.cta-banner .cta-copy{width:100%!important;min-width:0!important}.cta-banner .button,.cta-banner .cta-button{width:100%!important;min-width:0!important;max-width:none!important;white-space:normal!important;justify-content:center!important;text-align:center!important}.sticky-cta{flex-direction:column!important;gap:8px!important;text-align:center!important}.sticky-cta a{width:100%!important;max-width:320px!important}}
