:root{--navy:#0b2538;--navy2:#14364a;--cyan:#22cde8;--cyan2:#06aaca;--ink:#183144;--muted:#5e7180;--bg:#f4f8f9;--line:#dce8ec;--white:#fff;--radius:22px;--shadow:0 26px 65px rgba(11,37,56,.11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;color:var(--ink);margin:0;background:#fff;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:#008fae}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.14;letter-spacing:-.04em}h1{font-size:clamp(2.65rem,5.4vw,5.65rem)}h2{font-size:clamp(2rem,3.65vw,3.45rem)}h3{font-size:1.32rem}.container{width:min(1170px,calc(100% - 56px));margin-inline:auto}.section{padding-top:96px;padding-bottom:96px}.eyebrow{font-size:.74rem;font-weight:850;letter-spacing:.19em;color:#047e9c;text-transform:uppercase;display:block;margin-bottom:20px}.eyebrow.white{color:#80e5f5}.microbar{background:#071c2b;color:#c9dbe2;font-size:.79rem}.microbar-inner{min-height:37px;display:flex;align-items:center;justify-content:space-between;gap:18px}.microbar a{color:white;font-weight:750}.micro-sep{color:#6d93a5;padding-inline:11px}.site-header{position:sticky;top:0;z-index:100;background:white;border-bottom:1px solid var(--line);box-shadow:0 4px 22px rgba(7,28,43,.04)}.header-inner{display:flex;min-height:89px;align-items:center;gap:24px}.brand{display:flex;gap:6px;align-items:center;flex-shrink:0}.brand img{width:64px;height:64px;object-fit:contain}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-text strong{font-size:2rem;font-weight:950;letter-spacing:-.08em;color:var(--navy)}.brand-text small{font-size:.54rem;font-weight:800;letter-spacing:.065em;color:#467086}.nav-main{display:flex;align-items:center;gap:16px;margin-left:auto}.nav-main>a{font-size:.85rem;font-weight:750;white-space:nowrap;transition:.2s}.nav-main>a:hover{color:var(--cyan2)}.nav-phone{background:var(--navy);color:white;border-radius:99px;padding:10px 15px;font-size:.83rem;font-weight:850;white-space:nowrap}.nav-phone:hover{background:var(--cyan2);color:white}.mobile-toggle{display:none;background:none;border:0;padding:12px}.mobile-toggle span{display:block;background:var(--navy);width:23px;height:2px;margin:5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:16px 25px;border:0;border-radius:12px;font-weight:850;font-size:.92rem;line-height:1.1;text-align:center;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--cyan);color:#062c3d}.btn-primary:hover{background:#70eaf6;color:#062c3d}.btn-white{background:white;color:var(--navy)}.btn-outline{border:1px solid #9db5bd;color:var(--navy)}.btn-outline-light{border:1px solid #66859a;color:white}.btn-outline-light:hover{color:white}.hero-home{background:radial-gradient(circle at 95% 4%,#27536b,transparent 40%),linear-gradient(135deg,#0a2032,#12374e 67%,#0b2438);overflow:hidden;color:white}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:stretch;gap:40px;min-height:636px}.hero-content{align-self:center;padding:72px 0 75px}.hero-pill{display:inline-flex;align-items:center;gap:12px;border:1px solid #52778b;border-radius:100px;padding:8px 15px;color:#b4d9e6;font-size:.72rem;font-weight:800;letter-spacing:.13em;margin-bottom:29px}.pulse{height:8px;width:8px;border-radius:50%;background:#36e6cc;box-shadow:0 0 0 5px #36e6cc22}.hero-content h1{margin-bottom:27px;max-width:730px;font-size:clamp(2.7rem,5.2vw,5.45rem);line-height:1.06}.accent{color:var(--cyan)}.hero-content>p{color:#bed2dc;font-size:1.1rem;line-height:1.78;max-width:580px}.hero-actions{display:flex;align-items:center;gap:26px;margin:34px 0 35px}.hero-tel{display:flex;gap:12px;align-items:center}.hero-tel>span{font-size:1.25rem;width:42px;height:42px;display:grid;place-items:center;border:1px solid #648198;border-radius:50%}.hero-tel div{display:flex;flex-direction:column;line-height:1.4}.hero-tel small{color:#9cbdc9;font-size:.74rem}.hero-tel strong{font-size:1.05rem;color:white}.hero-details{display:flex;flex-wrap:wrap;gap:12px 21px;color:#bed2dc;font-size:.78rem}.hero-art{position:relative;display:flex;align-items:stretch;min-width:0}.hero-visual{height:100%;width:100%;position:relative;min-height:510px;overflow:hidden;margin:0;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}.hero-photo{height:100%;width:100%;object-fit:cover;filter:saturate(.92)}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0e2d43 0%,transparent 48%);pointer-events:none}.hero-stamp,.float-label{position:absolute;z-index:2;background:#efffff;color:#123447;box-shadow:var(--shadow);border-radius:14px}.hero-stamp{bottom:80px;left:-10px;padding:17px 21px;display:flex;align-items:center;gap:12px}.hero-stamp span{font-size:3rem;font-weight:1000;letter-spacing:-.09em;line-height:1}.hero-stamp small{font-size:.71rem;font-weight:800;line-height:1.35}.float-label{top:75px;right:-8px;font-size:.83rem;font-weight:850;padding:12px 18px}.float-label span{color:#2ec5a9}.quickstrip{background:var(--cyan);color:#123144;font-size:.78rem;font-weight:900;letter-spacing:.19em}.quickstrip .container{display:flex;min-height:63px;align-items:center;justify-content:space-between;gap:15px}.quickstrip .dot{font-size:1.1rem;color:#487c8b}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:37px}.section-heading h2{max-width:770px;margin-bottom:0}.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.svc-card{background:var(--bg);border:1px solid #e2e9ed;border-radius:18px;padding:29px 23px;display:flex;min-height:304px;flex-direction:column;transition:.22s}.svc-card:hover{background:var(--navy);color:white;transform:translateY(-5px);box-shadow:var(--shadow)}.svc-line{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px}.svc-ico{width:48px;height:48px;display:grid;place-items:center;background:#dbf9fe;border-radius:13px;color:#0d91ae;font-size:1.7rem}.svc-line small{font-weight:850;font-size:.67rem;color:#88a0ab;letter-spacing:.13em}.svc-card h3{font-size:1.43rem;margin-bottom:9px}.svc-card p{font-size:.85rem;color:#5a6e7a;line-height:1.65}.svc-card:hover p{color:#c0d0d8}.svc-arrow{margin-top:auto;display:flex;align-items:center;justify-content:space-between;font-size:.81rem;font-weight:850}.svc-arrow b{font-size:1.35rem;color:var(--cyan2)}.split-section{background:#f0f7f8}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.image-stack{position:relative}.image-stack>img{width:100%;height:580px;object-fit:cover;border-radius:16px}.image-badge{position:absolute;right:-28px;bottom:45px;background:var(--cyan);padding:24px 28px;border-radius:16px;color:var(--navy);display:flex;gap:12px;align-items:center;box-shadow:var(--shadow)}.image-badge strong{font-size:2.3rem;font-weight:950;letter-spacing:-.06em}.image-badge span{font-size:.81rem;font-weight:750}.text-stack h2{font-size:clamp(2.1rem,3.6vw,3.5rem)}.text-stack>p,.wide-lead{font-size:1.03rem;color:#617582;line-height:1.88}.steps{margin:32px 0}.steps>div{display:flex;align-items:flex-start;border-bottom:1px solid #d1e1e8;padding:13px 0;gap:25px}.steps span{font-size:.78rem;font-weight:900;color:#0e97b4}.steps p{margin:0;font-size:.92rem}.steps strong{color:var(--navy)}.text-link{font-weight:850;font-size:.92rem;color:#067fa0;border-bottom:1px solid #9ccdd7;padding-bottom:5px}.wide-lead{max-width:790px}.area-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;margin-top:35px}.area-tiles a{border:1px solid var(--line);border-radius:13px;padding:24px 16px 15px;min-height:137px;font-size:.85rem;font-weight:850;display:flex;flex-direction:column;transition:.2s}.area-tiles a:hover{border-color:var(--cyan2);background:#eafcff}.area-pin{font-size:1.9rem;color:#0799b7;font-weight:500;line-height:1.2;margin-bottom:15px}.area-tiles .ar{align-self:flex-end;margin-top:auto}.section-more{text-align:right;margin-top:30px}.feature-section{padding-top:35px}.feature-grid{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.feature-item{border-bottom:1px solid var(--line);display:flex;gap:18px;align-items:center;min-height:85px;padding:16px}.feature-item:nth-child(2n+1){border-right:1px solid var(--line)}.feature-item small{font-weight:900;color:#079fbd}.feature-item span{font-weight:750;font-size:.93rem}.feature-item b{margin-left:auto;font-size:1.2rem;color:#0595b1}.actionbar{background:var(--navy);color:white;padding:82px 0;overflow:hidden;position:relative}.actionbar:after{content:'ADS';position:absolute;right:-60px;top:-55px;color:#fff;opacity:.026;font-size:26rem;font-weight:1000;line-height:1}.action-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative;z-index:1}.action-inner h2{font-size:clamp(2.1rem,3.6vw,3.3rem);max-width:650px}.action-inner p{color:#c0d5de;max-width:610px;margin:0}.action-buttons{min-width:240px;display:flex;gap:13px;flex-direction:column}.site-footer{background:#061b2a;color:#c0d2dd}.foot-columns{display:grid;grid-template-columns:1.6fr .8fr 1.12fr 1.08fr;gap:50px;padding:72px 0 45px}.foot-logo{font-size:3rem;font-weight:1000;letter-spacing:-.08em;color:white;line-height:1}.foot-logo span{color:var(--cyan)}.foot-brand p{max-width:320px}.foot-brand strong{font-size:.8rem;color:#d3e1ea}.foot-columns h3{font-size:.97rem;color:white;letter-spacing:0;margin:6px 0 18px}.foot-columns a{display:block;font-size:.87rem;margin-bottom:10px}.foot-columns a:hover{color:var(--cyan)}.foot-columns p{font-size:.86rem;color:#8ca5b2}.foot-contact{font-weight:850;color:var(--cyan)!important}.foot-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #224052;padding:21px 0;font-size:.75rem;color:#829fad}.foot-bottom>div{display:flex;gap:19px;flex-wrap:wrap}.cookie-settings{color:#c0d2dd;background:none;border:0;padding:0;font-size:.75rem}.page-hero{background:linear-gradient(125deg,#eaf9fc,#f6fafb 75%);border-bottom:1px solid var(--line);overflow:hidden}.pagehero-inner{display:grid;grid-template-columns:1.4fr .75fr;gap:62px;align-items:center;min-height:420px}.pagehero-text{padding:48px 0}.breadcrumbs{font-size:.76rem;color:#608094;display:flex;flex-wrap:wrap;gap:11px;line-height:1.5;margin-bottom:37px}.breadcrumbs a{color:#28718b}.pagehero-text h1{font-size:clamp(2.1rem,4.2vw,4.25rem);max-width:760px;margin-bottom:18px}.page-lead{max-width:690px;color:#5e7281;font-size:1.04rem;line-height:1.8}.pagehero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:27px}.pagehero-image{margin:0;height:315px;overflow:hidden;border-radius:23px;transform:rotate(2deg);box-shadow:var(--shadow)}.page-img{height:100%;width:100%;object-fit:cover}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:74px;align-items:start}.article-content{min-width:0;line-height:1.87;font-size:1.035rem}.article-content h2{font-size:clamp(1.63rem,2.45vw,2.38rem);margin:45px 0 20px;color:var(--navy);letter-spacing:-.035em}.article-content h2:first-child{margin-top:0}.article-content h3{font-size:1.27rem;letter-spacing:-.018em;margin:30px 0 12px}.article-content p{margin:0 0 19px;color:#4b6372}.article-content a{color:#037d9e;text-decoration:underline;text-underline-offset:3px}.article-content ul,.article-content ol{padding-left:24px;color:#4b6372;margin-bottom:24px}.article-content li{margin:8px 0}.article-content table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse;font-size:.84rem;white-space:normal;margin:25px 0}.article-content th{background:#e9f5f9;color:#174158}.article-content th,.article-content td{border:1px solid #d5e6ec;padding:11px;min-width:100px;vertical-align:top}.article-content figure{margin:26px 0}.article-content figure img{border-radius:15px;max-height:500px;object-fit:cover}.article-content blockquote{background:#f0f8fa;border-left:4px solid #05b5d2;padding:16px 23px;margin:30px 0}.article-content .gallery,.realisations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.article-content .gallery figure,.realisations-grid figure{margin:0}.gallery img,.realisations-grid img{height:210px;width:100%;object-fit:cover}.aside-cta{background:var(--navy);color:white;padding:29px;border-radius:20px}.aside-dot{font-size:2rem;color:var(--cyan);margin-bottom:28px}.aside-cta h3{font-size:1.6rem;max-width:220px}.aside-cta p{color:#bed4de;font-size:.89rem}.aside-cta .btn{width:100%;margin-top:13px}.aside-call{display:block;font-weight:900;text-align:center;color:white;margin:25px 0 9px}.aside-cta small{display:block;color:#93b4c4;text-align:center;font-size:.76rem}.sticky-aside{position:sticky;top:116px}.aside-territory{margin-top:17px;border:1px solid var(--line);border-radius:16px;padding:24px}.aside-territory p{font-size:.85rem;color:#70818a}.aside-territory a{font-size:.83rem;color:#0488a7;font-weight:850}.related-section{padding-top:10px;padding-bottom:92px}.related-title{margin-bottom:27px}.related-title h2{font-size:2.1rem}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.related-grid a{background:#f1f7f8;padding:19px 20px;border-radius:11px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.86rem;font-weight:750}.related-grid a:hover{background:#d8f8fb}.related-grid b{color:#0396b6}.area-mini{margin-top:40px;border-top:1px solid var(--line);padding-top:20px}.area-mini a{display:inline-block;margin:7px 15px 7px 0;font-weight:750;font-size:.87rem}.contact-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:28px}.contact-card{border:1px solid var(--line);padding:30px;border-radius:18px}.contact-card h2{margin:0}.contact-sidebar{background:var(--bg);border-radius:17px;padding:30px;height:max-content}.contact-sidebar a{display:block}.contact-sidebar .contact-number{font-size:1.6rem;font-weight:850;color:#067e9b;letter-spacing:-.03em}.contact-sidebar>p{margin-top:27px}.lead-form{margin-top:22px}.lead-form label{font-size:.79rem;font-weight:750;display:block;margin-bottom:19px}.lead-form input:not([type=checkbox]),.lead-form select,.lead-form textarea{width:100%;display:block;border:1px solid #bdced7;border-radius:9px;background:#fff;padding:12px 14px;font-size:.92rem;margin-top:6px;outline:0}.lead-form input:focus,.lead-form textarea:focus,.lead-form select:focus{border-color:var(--cyan2);box-shadow:0 0 0 3px #22cde833}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lead-form .form-check{display:flex;gap:12px;align-items:flex-start;font-weight:500;line-height:1.5}.lead-form .form-check input{margin-top:4px;flex-shrink:0}.form-status{font-size:.86rem;font-weight:700}.hp-field{display:none!important}.consent-toast{position:fixed;bottom:20px;right:20px;max-width:400px;z-index:200;background:white;border:1px solid var(--line);box-shadow:0 12px 70px #0003;border-radius:16px;padding:20px}.consent-toast p{font-size:.83rem}.consent-toast div{display:flex;gap:12px}.consent-toast button{font-size:.79rem;padding:10px 13px;border:1px solid #bfd9e1;border-radius:8px;background:#eefaff}.consent-toast .consent-accept{background:var(--navy);color:white}.realisations-grid{grid-template-columns:repeat(3,1fr)}.realisations-grid img{height:220px}::selection{background:#a2f6ff;color:#071c2b}@media(max-width:1160px){.nav-main{gap:10px}.nav-main>a{font-size:.75rem}.nav-phone{display:none}.split-grid{gap:52px}.svc-grid{grid-template-columns:repeat(2,1fr)}.area-tiles{grid-template-columns:repeat(3,1fr)}}@media(max-width:920px){.site-header .header-inner{min-height:75px}.mobile-toggle{display:block;margin-left:auto}.nav-main{display:none;position:absolute;left:0;right:0;top:75px;background:white;padding:20px 26px 28px;box-shadow:0 18px 30px #071c2b1c;flex-direction:column;align-items:stretch;gap:4px}.nav-main.open{display:flex}.nav-main>a{padding:10px 8px;font-size:.94rem}.hero-grid{grid-template-columns:1fr;gap:0}.hero-content{padding:64px 0 30px}.hero-art{min-height:400px}.hero-visual{clip-path:none;min-height:400px;max-height:430px}.hero-stamp{bottom:35px;left:20px}.float-label{top:30px;right:20px}.split-grid{grid-template-columns:1fr}.image-stack>img{height:400px}.image-badge{right:15px}.pagehero-inner{grid-template-columns:1fr .5fr;gap:20px}.content-grid{grid-template-columns:1fr 260px;gap:30px}.foot-columns{grid-template-columns:repeat(2,1fr)}.contact-layout{grid-template-columns:1fr}.quickstrip{font-size:.7rem}}@media(max-width:680px){.container{width:calc(100% - 34px)}.section{padding-top:64px;padding-bottom:64px}h1{font-size:2.7rem}.brand img{height:51px;width:51px}.brand-text strong{font-size:1.55rem}.brand-text small{font-size:.47rem}.microbar-inner{justify-content:center;font-size:.7rem}.micro-right{display:none}.hero-content{padding:50px 0 35px}.hero-content h1{font-size:clamp(2.45rem,10vw,3.7rem)}.hero-actions{align-items:stretch;gap:18px;flex-direction:column}.hero-tel{margin-left:2px}.hero-details{gap:8px 13px;font-size:.7rem}.hero-art,.hero-visual{min-height:310px}.hero-stamp{padding:12px;bottom:23px;left:12px}.hero-stamp span{font-size:2.1rem}.hero-stamp small{font-size:.62rem}.quickstrip .container{flex-wrap:wrap;justify-content:center;padding:15px 0;gap:8px 14px}.quickstrip .dot{display:none}.svc-grid{grid-template-columns:1fr;gap:12px}.svc-card{min-height:230px}.svc-line{margin-bottom:20px}.split-grid{gap:35px}.image-stack>img{height:320px}.section-heading{margin-bottom:25px}.area-tiles{grid-template-columns:repeat(2,1fr)}.area-tiles a{min-height:125px;padding:14px;font-size:.77rem}.feature-grid{grid-template-columns:1fr}.feature-item:nth-child(2n+1){border-right:none}.action-inner{flex-direction:column;align-items:stretch}.action-buttons{width:100%}.foot-columns{grid-template-columns:1fr 1fr;gap:30px 20px;padding:52px 0 30px}.foot-brand{grid-column:1/-1}.foot-bottom{flex-direction:column;align-items:flex-start;gap:10px}.pagehero-inner{grid-template-columns:1fr;padding-bottom:34px}.pagehero-text{padding:25px 0 0}.breadcrumbs{margin-bottom:24px}.pagehero-text h1{font-size:clamp(2.1rem,8vw,3.2rem)}.pagehero-image{height:180px;transform:none}.content-grid{grid-template-columns:1fr}.sticky-aside{position:static}.article-content{font-size:.98rem}.article-content .gallery,.realisations-grid{grid-template-columns:repeat(2,1fr)}.gallery img,.realisations-grid img{height:150px}.related-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.contact-card{padding:20px}.consent-toast{left:12px;right:12px;bottom:12px}.article-content h2{margin-top:32px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.testimonials{padding-top:22px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quote-grid blockquote{margin:0;background:#f0f8f9;border-radius:17px;padding:32px 33px}.quote-mark{color:#07b9d8;font-size:3.1rem;line-height:.8;font-weight:900;display:block}.quote-grid p{font-size:1.12rem;font-weight:720;margin:22px 0 27px;color:#193b4e}.quote-grid footer{font-size:.82rem;font-weight:900}.quote-grid footer small{display:block;color:#78909f;font-weight:550;margin-top:4px}.testimonial-note{font-size:.76rem;color:#7a9099;margin-top:12px}@media(max-width:680px){.quote-grid{grid-template-columns:1fr}.quote-grid blockquote{padding:22px}.testimonials{padding-top:0}}
.local-breadcrumb-note{background:#ecfaff;padding:20px 24px;border-left:4px solid #0bbbdc;border-radius:9px;font-size:.9rem;margin-top:45px}.local-breadcrumb-note a{font-weight:850}.mobile-actions{display:none}@media(max-width:680px){body{padding-bottom:66px}.mobile-actions{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:130;box-shadow:0 -6px 22px #0002;background:white;border-top:1px solid #cfecf3;padding:9px 13px 10px;gap:8px}.mobile-actions a{display:grid;place-items:center;flex:1;min-height:45px;border-radius:8px;background:#0b2538;color:white;font-weight:850;font-size:.8rem}.mobile-actions a+ a{background:#22cde8;color:#0b2538}.consent-toast{bottom:78px}}

/* PREPROD MEDIA HOTFIX: preserve and display the official horizontal ADS logo */
.brand img{width:146px;height:69px;object-fit:contain}.brand-text{display:none}
@media(max-width:790px){.brand img{width:128px;height:62px}}
@media(min-width:1024px) and (max-width:1230px){.nav-main{gap:11px}.header-inner{gap:15px}}

/* ADS v3 — four distinct service landing layouts */
.pillar-hero{position:relative;overflow:hidden}.pillar-hero .pagehero-inner{min-height:600px;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,92px);align-items:center;padding-block:64px}
.pillar-hero .pagehero-text{padding:0}.pillar-hero .breadcrumbs{margin-bottom:35px}.pillar-hero .pagehero-text .eyebrow{font-size:.71rem;letter-spacing:.18em;margin-bottom:15px}
.pillar-hero h1{font-size:clamp(3.15rem,7vw,6.2rem);margin:0 0 8px;line-height:1}.pillar-tagline{font-size:clamp(1.55rem,3vw,2.6rem);line-height:1.17;letter-spacing:-.04em;margin:0 0 22px;max-width:640px;font-weight:680}
.pillar-hero .page-lead{max-width:550px;line-height:1.74;font-size:1.02rem}.pillar-hero .pagehero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.pillar-hero-meta{margin-top:33px;display:flex;align-items:center;gap:13px;font-size:.78rem;letter-spacing:.05em;font-weight:780}.meta-signal{font-size:1.45rem}
.pillar-image-frame{min-width:0;position:relative}.pillar-image-frame .pagehero-image{margin:0;transform:none;overflow:hidden;width:100%;height:480px;border-radius:28px;box-shadow:0 38px 80px rgba(10,43,60,.16)}
.pillar-image-frame .pagehero-image img{width:100%;height:100%;object-fit:cover}.pillar-image-caption{position:absolute;bottom:17px;left:-20px;margin:0;width:min(88%,370px);padding:17px 23px;border-radius:16px;font-size:.83rem;line-height:1.5;font-weight:740;box-shadow:0 15px 40px #0002;background:white;color:#143649}
.pillar-overview{padding:100px 0 95px}.pillar-opening{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:end;margin-bottom:39px}.pillar-opening h2{font-size:clamp(2rem,4vw,3.7rem);margin:0}.pillar-opening>p{margin:0;color:#5e7180;line-height:1.85}
.pillar-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.pillar-tile{padding:33px 28px;min-height:365px;display:flex;flex-direction:column;border:1px solid #cde0e6;border-radius:21px;transition:transform .2s,box-shadow .2s;background:#fff}.pillar-tile:hover{transform:translateY(-4px);box-shadow:0 20px 60px #001c3917}.tile-number{font-size:3.4rem;font-weight:790;letter-spacing:-.09em;color:#c7e4ed;line-height:1}.tile-topline{font-size:.69rem;letter-spacing:.14em;font-weight:860;margin-top:18px;color:#008fae}.pillar-tile h3{font-size:1.52rem;margin:15px 0 13px}.pillar-tile p{font-size:.91rem;line-height:1.7;color:#587083}.pillar-tile a{margin-top:auto;font-size:.85rem;font-weight:820;color:#077f9c;display:inline-flex;justify-content:space-between;gap:20px;padding-top:25px}
.pillar-spotlight{padding:90px 0}.pillar-spotlight-inner{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(30px,8vw,145px);align-items:center}.spotlight-copy h2{font-size:clamp(2rem,3.4vw,3.4rem)}.spotlight-copy>p{line-height:1.88;max-width:650px;color:#61788c}.spotlight-process{padding:40px;border-radius:21px;box-shadow:0 20px 60px #09263b15;background:white}.spotlight-process>small{letter-spacing:.15em;font-weight:850;color:#16819c}.spotlight-process ol{list-style:none;padding:0;margin:22px 0}.spotlight-process li{display:flex;align-items:center;gap:23px;padding:18px 0;border-bottom:1px solid #dce8ec}.spotlight-process li span{font-size:1.25rem;font-weight:850;color:#25b9d3}.spotlight-process li strong{font-size:.93rem}.spotlight-phone{font-size:.79rem;color:#5e7180;margin-top:24px}.spotlight-phone a{font-size:1.05rem;color:#0a4559;display:block;font-weight:850}
.pillar-deep-content .article-content{padding-top:0}.pillar-deep-heading{padding-bottom:24px;margin-bottom:35px;border-bottom:1px solid #dce8ec}.pillar-deep-heading h2{font-size:2.5rem;margin:0 0 10px}.pillar-deep-heading p{margin:0;color:#6b8190}.pillar-deep-content .imported-article>h2{font-size:1.72rem;line-height:1.25;margin-top:37px}.pillar-deep-content .imported-article>h3{font-size:1.19rem;margin:25px 0 12px}.pillar-deep-content .imported-article>p{line-height:1.8}
/* plumbing: daylight, structured service cards */
.pillar-water.pillar-hero{background:linear-gradient(115deg,#eafaff 0%,#f9feff 52%,#fff 100%)}.pillar-water .pagehero-text h1{color:#0a5062}.pillar-water .pillar-tagline{color:#126d85}.pillar-water .pillar-image-frame .pagehero-image{border-radius:30% 16px 30% 16px;transform:rotate(-1.5deg)}.pillar-water .pillar-hero-meta{color:#0b7792}.pillar-water.pillar-spotlight{background:#eafaff}.pillar-water .pillar-tile:nth-child(2){background:#ecfbff}.pillar-water .pillar-tile:nth-child(3){background:#f7fbfc}
/* heating: warm editorial and amber detail */
.pillar-heat.pillar-hero{background:linear-gradient(112deg,#182d39,#1b343f 65%,#2c3a42);color:white}.pillar-heat.pillar-hero .breadcrumbs,.pillar-heat.pillar-hero .breadcrumbs a{color:#ccdae3}.pillar-heat .pagehero-text .eyebrow,.pillar-heat .pillar-hero-meta{color:#f7c188}.pillar-heat .pillar-tagline{color:#f6d1a4}.pillar-heat .page-lead{color:#d1dce0}.pillar-heat .pagehero-actions .btn-outline{color:white;border-color:#93aeb8}.pillar-heat .pagehero-actions .btn-primary{background:#f2b36f;color:#182d39}.pillar-heat .pillar-image-frame .pagehero-image{border-radius:8px 100px 8px 8px}.pillar-heat.pillar-overview{background:#fff9f3}.pillar-heat.pillar-overview .tile-number{color:#eddac6}.pillar-heat.pillar-overview .tile-topline,.pillar-heat.pillar-overview .pillar-tile a{color:#aa632c}.pillar-heat.pillar-spotlight{background:#203643;color:white}.pillar-heat.pillar-spotlight .spotlight-copy>p{color:#bed2db}.pillar-heat .spotlight-process{background:#fff9f3;color:#203643}.pillar-heat .spotlight-process li span{color:#c37c43}
/* AC: bright, crisp and modular */
.pillar-air.pillar-hero{background:radial-gradient(circle at 83% 20%,#c0f5ff,transparent 42%),linear-gradient(110deg,#f1fbfd,#d7f2f9);color:#063f55}.pillar-air .pillar-tagline{color:#098caa}.pillar-air .pillar-image-frame .pagehero-image{border-radius:130px 14px 14px 130px}.pillar-air .pillar-image-caption{left:auto;right:-18px;background:#113d51;color:white}.pillar-air.pillar-overview{background:white}.pillar-air .pillar-tile{border-radius:4px 40px 4px 4px;border-top:4px solid #18bdd7}.pillar-air .pillar-tile:nth-child(2){border-top-color:#7fd4e3}.pillar-air .pillar-tile:nth-child(3){border-top-color:#155777}.pillar-air.pillar-spotlight{background:linear-gradient(128deg,#e4f9ff,#f2fbfa)}
/* emergency: direct and action-oriented */
.pillar-urgent.pillar-hero{background:#081d2d;color:white}.pillar-urgent.pillar-hero:after{content:'';position:absolute;right:-120px;top:-180px;border:1px solid #245060;border-radius:50%;width:700px;height:700px;pointer-events:none}.pillar-urgent.pillar-hero .breadcrumbs,.pillar-urgent.pillar-hero .breadcrumbs a{color:#b2c7d1}.pillar-urgent .pillar-tagline{color:#66dfef}.pillar-urgent .page-lead{color:#c9dbe2}.pillar-urgent .pillar-hero-meta{color:#b8e9f2}.pillar-urgent .pillar-image-frame .pagehero-image{height:415px;border-radius:15px;filter:saturate(.7)}.pillar-urgent .pillar-image-caption{background:#24cae2;color:#09283b;left:15px;bottom:-22px}.pillar-urgent.pillar-overview{background:#f1f7f8}.pillar-urgent .pillar-tiles{gap:12px}.pillar-urgent .pillar-tile{border-left:6px solid #19b4d4;border-radius:5px 22px 5px 5px}.pillar-urgent.pillar-spotlight{background:#eaf4f7}.pillar-urgent .spotlight-process{background:#0e2d42;color:white}.pillar-urgent .spotlight-process li{border-color:#345467}.pillar-urgent .spotlight-process .spotlight-phone,.pillar-urgent .spotlight-process .spotlight-phone a{color:#b9e9f3}
/* older imported prose remains editable and is de-emphasized after focused service sections */
.pillar-urgent .pillar-deep-heading{border-color:#e4eff1}
@media(max-width:950px){.pillar-hero .pagehero-inner{grid-template-columns:1fr 1fr;min-height:auto;gap:28px}.pillar-image-frame .pagehero-image{height:350px}.pillar-opening{gap:25px}.pillar-tile{min-height:400px;padding:28px 20px}.pillar-spotlight-inner{gap:32px}}
@media(max-width:720px){.pillar-hero .pagehero-inner{grid-template-columns:1fr;padding-block:34px 68px}.pillar-hero .pagehero-text{padding:0}.pillar-hero .breadcrumbs{margin-bottom:25px}.pillar-hero h1{font-size:clamp(2.7rem,12vw,4.8rem)}.pillar-tagline{font-size:clamp(1.8rem,6.7vw,2.5rem)}.pillar-hero .pagehero-actions{flex-direction:column;align-items:stretch}.pillar-image-frame .pagehero-image,.pillar-urgent .pillar-image-frame .pagehero-image{height:280px;transform:none;border-radius:19px}.pillar-image-caption{left:10px;bottom:-28px;font-size:.72rem;padding:12px 14px}.pillar-overview{padding:70px 0}.pillar-opening{grid-template-columns:1fr;gap:22px}.pillar-tiles{grid-template-columns:1fr}.pillar-tile{min-height:255px;padding:23px}.tile-number{font-size:2.3rem}.pillar-tile .tile-topline{margin-top:8px}.pillar-spotlight{padding:65px 0}.pillar-spotlight-inner{grid-template-columns:1fr}.spotlight-process{padding:26px}.pillar-air .pillar-image-caption{right:8px}.pillar-hero-meta{margin-top:23px}}

/* Distinct editorial treatment for detailed service content by parent silo */
.detail-hero{position:relative}.detail-hero .pagehero-inner{min-height:390px;align-items:center}.detail-hero .pagehero-image{height:280px;overflow:hidden;transform:none}.detail-hero .pagehero-image img{width:100%;height:100%;object-fit:cover}
.detail-hero .pagehero-text h1{font-size:clamp(2.2rem,4.5vw,4.45rem);line-height:1.06}.detail-hero .pagehero-text .eyebrow{letter-spacing:.16em}
.detail-local-label{font-size:.76rem!important;font-weight:750;letter-spacing:.025em;opacity:.85;margin:22px 0 0}.detail-hero.detail-plomberie{background:linear-gradient(110deg,#effbff,#fff)}.detail-plomberie .pagehero-image{border-radius:20px 85px 20px 20px}.detail-plomberie .pagehero-text h1{color:#0c5067}
.detail-hero.detail-chauffage{background:linear-gradient(110deg,#18323f,#2a444a);color:#fff}.detail-chauffage .pagehero-text h1{color:#fff}.detail-chauffage .pagehero-text .eyebrow{color:#ffca91}.detail-chauffage .page-lead{color:#c8dce4}.detail-chauffage .breadcrumbs,.detail-chauffage .breadcrumbs a{color:#d8e4e9}.detail-chauffage .pagehero-actions .btn-outline{color:white;border-color:#b8ced7}.detail-chauffage .pagehero-image{border-radius:50px 12px 50px 12px}
.detail-hero.detail-climatisation{background:linear-gradient(110deg,#f2fcff,#d8f5fd);color:#124254}.detail-climatisation .pagehero-text h1{color:#17687c}.detail-climatisation .pagehero-image{border-radius:120px 16px 16px 120px}
.detail-sidebar-plomberie .aside-cta{border-top:5px solid #18b8d5}.detail-sidebar-climatisation .aside-cta{border-top:5px solid #81cbdc}.detail-sidebar-chauffage .aside-cta{border-top:5px solid #df994d}
/* Make pillar service structures genuinely different */
.pillar-heat .pillar-tiles{grid-template-columns:1fr;gap:0;border-top:1px solid #e6d7c8}.pillar-heat .pillar-tile{display:grid;grid-template-columns:95px minmax(0,1fr) 1.2fr 125px;align-items:start;gap:23px;min-height:0;padding:30px 5px;border:0;border-radius:0;border-bottom:1px solid #e6d7c8;background:transparent;box-shadow:none!important;transform:none!important}.pillar-heat .pillar-tile .tile-number{grid-row:1/3}.pillar-heat .pillar-tile .tile-topline{grid-column:2;margin:9px 0 0;white-space:nowrap}.pillar-heat .pillar-tile h3{grid-column:2;margin:0}.pillar-heat .pillar-tile p{grid-column:3;grid-row:1/3;margin:4px 0}.pillar-heat .pillar-tile a{grid-column:4;grid-row:1/3;align-self:center;margin:0;white-space:nowrap}
.pillar-air .pillar-tiles{grid-template-columns:1.3fr .7fr;grid-template-rows:auto auto;gap:16px}.pillar-air .pillar-tile{min-height:260px}.pillar-air .pillar-tile:nth-child(1){grid-row:1/3;min-height:540px;padding:50px 34px;background:linear-gradient(145deg,#d1f5fb,#f6feff)}.pillar-air .pillar-tile:nth-child(1) .tile-number{font-size:6rem}.pillar-air .pillar-tile:nth-child(1) h3{font-size:2.5rem}.pillar-air .pillar-tile:nth-child(2),.pillar-air .pillar-tile:nth-child(3){padding:25px 28px}
.pillar-urgent .pillar-tiles{grid-template-columns:1.3fr 1fr;gap:16px}.pillar-urgent .pillar-tile:nth-child(1){grid-row:1/3;min-height:520px;background:#103a4e;color:#fff}.pillar-urgent .pillar-tile:nth-child(1) .tile-number{font-size:6rem;color:#49d5e9}.pillar-urgent .pillar-tile:nth-child(1) .tile-topline,.pillar-urgent .pillar-tile:nth-child(1) a{color:#64ddef}.pillar-urgent .pillar-tile:nth-child(1) p{color:#c9e5ee}.pillar-urgent .pillar-tile:nth-child(2),.pillar-urgent .pillar-tile:nth-child(3){min-height:250px}
@media(max-width:960px){.pillar-heat .pillar-tile{grid-template-columns:65px 1fr}.pillar-heat .pillar-tile .tile-number{grid-column:1}.pillar-heat .pillar-tile .tile-topline,.pillar-heat .pillar-tile h3,.pillar-heat .pillar-tile p,.pillar-heat .pillar-tile a{grid-column:2;grid-row:auto;margin:0}.pillar-air .pillar-tile:nth-child(1) h3{font-size:1.8rem}}
@media(max-width:720px){.pillar-heat .pillar-tile{grid-template-columns:55px 1fr;gap:6px 15px;padding:23px 0}.pillar-heat .pillar-tile .tile-number{font-size:2.6rem;grid-row:1/4}.pillar-heat .pillar-tile p{margin-top:6px}.pillar-air .pillar-tiles,.pillar-urgent .pillar-tiles{grid-template-columns:1fr;grid-template-rows:auto}.pillar-air .pillar-tile:nth-child(1),.pillar-urgent .pillar-tile:nth-child(1){grid-row:auto;min-height:280px;padding:23px}.pillar-air .pillar-tile:nth-child(1) .tile-number,.pillar-urgent .pillar-tile:nth-child(1) .tile-number{font-size:3rem}.pillar-air .pillar-tile:nth-child(1) h3{font-size:1.5rem}.pillar-urgent .pillar-tile:nth-child(2),.pillar-urgent .pillar-tile:nth-child(3){min-height:255px}.detail-hero .pagehero-image{height:205px}.detail-hero .pagehero-inner{padding-block:28px}}

/* V4: controlled icon sizing on all service and detail pages */
.svc-ico{width:38px;height:38px;flex:none;font-size:1.03rem;border-radius:10px}
.aside-dot{font-size:1.05rem;margin-bottom:14px}
.tile-number,.pillar-air .pillar-tile:nth-child(1) .tile-number,.pillar-urgent .pillar-tile:nth-child(1) .tile-number,.pillar-heat .pillar-tile .tile-number{font-size:clamp(1.35rem,2vw,2rem);line-height:1.15}
.article-content figure.small-picto{width:78px!important;max-width:78px!important;max-height:78px!important;height:78px!important;display:block;overflow:hidden;border-radius:12px;margin:16px 0 21px;clear:both}
.article-content figure.small-picto img{width:100%!important;height:100%!important;max-height:78px!important;object-fit:contain!important;border-radius:10px}
.article-content :is(h2,h3,h4){text-wrap:pretty}
@media(max-width:680px){.article-content figure.small-picto{width:64px!important;max-width:64px!important;height:64px!important;max-height:64px!important}.article-content figure.small-picto img{max-height:64px!important}}


/* ADS V5 · refinement: branded footer, contact CTA, brighter brand palette */
:root{--bg:#ebf7f9;--line:#cde4eb;--cyan:#29d5ee;--cyan2:#04a8c8;--accent-warm:#f2b16e}
.site-header{border-bottom:2px solid #30c5dc;box-shadow:0 5px 25px rgba(5,70,105,.07)}
.section-heading .eyebrow,.pagehero-text .eyebrow{color:#057997}
.svc-card{border:1px solid #d3e6ed;border-top:4px solid #35bdd7;background:#effbff}
.svc-card:nth-child(2){background:#fff6eb;border-top-color:#eab273}
.svc-card:nth-child(3){background:#e9f9f4;border-top-color:#4bbbb0}
.svc-card:nth-child(4){background:#e9f1fb;border-top-color:#75a8d4}
.svc-card:hover,.svc-card:nth-child(n):hover{background:#113a51;border-color:#113a51;color:#fff}
.split-section{background:linear-gradient(115deg,#dff3f6 0%,#eaf7f7 56%,#f4fbfa)}
.area-tiles a{background:#f0faff;border-color:#c7e4ed;border-top:3px solid #28b9d3;box-shadow:0 5px 17px rgba(11,66,90,.035)}
.area-tiles a:nth-child(2n){background:#f0f8ef;border-top-color:#71b9ab}
.area-tiles a:nth-child(3n){background:#fff6ed;border-top-color:#e6b57d}
.area-tiles a:hover{background:#d6f2f8;border-color:#50bdd4}
.feature-section{background:linear-gradient(120deg,#fff 10%,#f0f9fa 100%)}
.page-hero{background:linear-gradient(115deg,#e0f5fa 0%,#edfafb 48%,#f5fbf4 100%)}
.pillar-water.pillar-hero{background:linear-gradient(116deg,#dff5fb 0%,#effbfc 56%,#fff 100%)}
.pillar-air.pillar-hero{background:radial-gradient(circle at 83% 20%,#b8f0f7,transparent 42%),linear-gradient(110deg,#e7faff,#cceef7)}
.pillar-water.pillar-overview{background:#f5fbff}
.pillar-water .pillar-tile:first-child{background:#eaf7fb;border-top:4px solid #26bbd7}
.pillar-water .pillar-tile:nth-child(3){background:#f0faf4;border-top:4px solid #6eb7a2}
.pillar-heat .pillar-tile:first-child{background:#fff2df;border-top:4px solid #e5a259}
.pillar-heat .pillar-tile:nth-child(2){background:#fff9ef;border-top:4px solid #ddbf82}
.pillar-heat .pillar-tile:nth-child(3){background:#f8f4e9;border-top:4px solid #c7ab80}
.pillar-air.pillar-overview{background:#f5fcfd}
.pillar-air .pillar-tile:first-child{background:#e8f8fb}
.pillar-air .pillar-tile:nth-child(2){background:#f0fbf6}
.pillar-air .pillar-tile:nth-child(3){background:#eaf3fb}
.pillar-urgent .pillar-tile:nth-child(1){background:#ecf8ff}
.pillar-urgent .pillar-tile:nth-child(2){background:#fff5ea;border-left-color:#dfaa68}
.pillar-urgent .pillar-tile:nth-child(3){background:#e8f9f7;border-left-color:#65b6a5}
.related-grid a{background:#eaf6f9;border-left:3px solid #22b7ce}
.related-grid a:nth-child(2n){background:#f1f7f0;border-left-color:#70b4a0}
.related-grid a:hover{background:#d8f4fa}
/* Create two actual accessible, responsive buttons out of old unstyled CTA links. */
.article-content .service-contact-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px;margin:28px 0 36px;padding:19px;border:1px solid #c5e2e9;border-left:5px solid #19b6d3;border-radius:16px;background:linear-gradient(115deg,#e8f8fc,#eff9f7);box-shadow:0 10px 35px rgba(15,65,80,.06)}
.article-content .service-contact-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;margin:0;flex:1 1 230px;min-height:56px;padding:15px 21px;border-radius:10px;font-size:.91rem;font-weight:850;line-height:1.35;text-align:center;text-decoration:none;box-shadow:0 5px 15px rgba(7,39,62,.11)}
.article-content .service-contact-actions .btn-service-call{background:#113a50;color:white;border:1px solid #113a50}
.article-content .service-contact-actions .btn-service-call:hover{background:#075a76;border-color:#075a76;color:white}
.article-content .service-contact-actions .btn-service-devis{background:#27cce6;color:#062d3e;border:1px solid #16bedc}
.article-content .service-contact-actions .btn-service-devis:hover{background:#79e3ee;border-color:#59dbe9;color:#062d3e}
.service-contact-actions .btn-ico{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;flex:none;border-radius:50%;background:rgba(255,255,255,.14);font-size:1rem;line-height:1}
.service-contact-actions .btn-service-devis .btn-ico{background:rgba(4,67,95,.1)}
/* Original ADS image logo rather than fictitious ADS. text lockup */
.site-footer{background:linear-gradient(125deg,#061b2a 0%,#0b2a3b 70%,#0e3545 100%)}
.site-footer .foot-logo--real{display:inline-flex;align-items:center;justify-content:center;max-width:190px;min-height:112px;padding:12px 17px;margin:0 0 24px;background:linear-gradient(145deg,#fff,#edf9fc);border:1px solid #b8e9ef;border-radius:16px;box-shadow:0 13px 35px rgba(1,14,26,.2)}
.site-footer .foot-logo--real img{display:block;width:142px;max-width:100%;height:auto;max-height:100px;object-fit:contain}
.site-footer .foot-columns h3{color:#7ce3f0}
.site-footer .foot-contact{display:inline-flex;align-items:center;padding:10px 14px;background:#22c9e1;color:#07263a!important;border-radius:10px;margin-top:8px;font-weight:850}
.site-footer .foot-contact:hover{background:#7fe6ef;color:#07263a!important}
@media(max-width:680px){.article-content .service-contact-actions{padding:13px;gap:10px}.article-content .service-contact-actions .btn{flex:1 1 100%;min-height:52px;padding:13px 12px;font-size:.86rem}.site-footer .foot-logo--real{max-width:156px;min-height:90px;padding:10px}.site-footer .foot-logo--real img{max-height:75px}}


/* V7 - Tous les appels ont un fond contrasté et un texte lisible.
   Les deux contextes (fond clair et fond sombre) sont traités séparément. */
.pagehero-actions .btn.btn-outline[href^="tel:"] {
  background:#0b3146;
  border:2px solid #0b3146;
  color:#ffffff;
  box-shadow:0 7px 18px rgba(7,47,68,.18);
  text-decoration:none;
  min-height:54px;
}
.pagehero-actions .btn.btn-outline[href^="tel:"]:hover {
  background:#075574;
  border-color:#075574;
  color:#ffffff;
}
/* Chauffage : les entêtes sont sombres. Le fond turquoise vif évite un bouton ton-sur-ton. */
.pillar-heat.pillar-hero .pagehero-actions .btn.btn-outline[href^="tel:"],
.detail-hero.detail-chauffage .pagehero-actions .btn.btn-outline[href^="tel:"] {
  background:#4cdef1;
  border-color:#4cdef1;
  color:#062b40;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.pillar-heat.pillar-hero .pagehero-actions .btn.btn-outline[href^="tel:"]:hover,
.detail-hero.detail-chauffage .pagehero-actions .btn.btn-outline[href^="tel:"]:hover {
  background:#e1faff;
  border-color:#e1faff;
  color:#062b40;
}
/* Bandeau de conversion sombre : bouton clairement identifiable. */
.action-buttons .btn.btn-outline-light[href^="tel:"] {
  background:#4cdef1;
  border:2px solid #4cdef1;
  color:#062b40;
  box-shadow:0 7px 21px rgba(0,0,0,.16);
  min-height:54px;
}
.action-buttons .btn.btn-outline-light[href^="tel:"]:hover {
  background:#e1faff;
  border-color:#e1faff;
  color:#062b40;
}
/* Encadré contact dans les articles. */
.aside-cta a.aside-call[href^="tel:"] {
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:49px;
  background:#4cdef1;
  color:#062b40;
  border:2px solid #4cdef1;
  border-radius:11px;
  padding:12px 14px;
  margin:14px 0 15px;
  line-height:1.3;
  font-size:.94rem;
  font-weight:850;
  box-shadow:0 5px 12px rgba(0,0,0,.13);
  text-decoration:none;
}
.aside-cta a.aside-call[href^="tel:"]:hover {
  background:#e1faff;
  border-color:#e1faff;
  color:#062b40;
}
/* Téléphone du hero d'accueil : désormais un vrai bouton, non un lien fantôme. */
.hero-actions a.hero-tel[href^="tel:"] {
  display:inline-flex;
  padding:9px 16px;
  border-radius:13px;
  background:#ffffff;
  border:2px solid #ffffff;
  color:#0b3146;
  box-shadow:0 9px 22px rgba(0,0,0,.2);
  min-height:60px;
  transition:background .2s,transform .2s,border-color .2s;
}
.hero-actions a.hero-tel[href^="tel:"] strong { color:#0b3146; }
.hero-actions a.hero-tel[href^="tel:"] small { color:#34566b; }
.hero-actions a.hero-tel[href^="tel:"]>span { border:1px solid #bbdee8;color:#0b3146;background:#e8f9fc; }
.hero-actions a.hero-tel[href^="tel:"]:hover { background:#d6f7fd;border-color:#d6f7fd;transform:translateY(-2px); }
/* Le petit téléphone présent dans les blocs de présentation est identifiable. */
.spotlight-phone a[href^="tel:"] {
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  align-items:center;
  background:#4cdef1;
  border:2px solid #4cdef1;
  color:#062b40;
  border-radius:10px;
  padding:10px 15px;
  margin-top:8px;
  text-decoration:none;
  line-height:1.35;
}
.spotlight-phone a[href^="tel:"]:hover { background:#e1faff;color:#062b40; }
/* Dans le bloc dépannage, une ancienne règle sur la couleur du texte est plus spécifique. */
.pillar-urgent .spotlight-process .spotlight-phone a[href^="tel:"] {
  background:#4cdef1;
  color:#062b40;
  border-color:#4cdef1;
}
.pillar-urgent .spotlight-process .spotlight-phone a[href^="tel:"]:hover {
  background:#e1faff;
  border-color:#e1faff;
  color:#062b40;
}
/* Les CTA doubles existants gagnent un liseré blanc et une typographie plus lisible. */
.article-content .service-contact-actions a.btn-service-call[href^="tel:"] {
  background:#0b3146;
  border:2px solid #0b3146;
  color:#ffffff;
}
.article-content .service-contact-actions a.btn-service-call[href^="tel:"]:hover { background:#075574;border-color:#075574;color:#fff; }
/* Clavier : focus visible sur tous les boutons d'appel. */
a[href^="tel:"]:focus-visible {
  outline:3px solid #ec9d43;
  outline-offset:3px;
}
@media (max-width:720px) {
  .pagehero-actions .btn.btn-outline[href^="tel:"],
  .action-buttons .btn.btn-outline-light[href^="tel:"] { padding:15px 19px; }
  .hero-actions a.hero-tel[href^="tel:"] { width:100%;justify-content:center;padding:12px 14px; }
  .aside-cta a.aside-call[href^="tel:"] { font-size:.9rem; }
}



/* ===================================================================
   V8 — LISIBILITÉ ET CONTRASTES (8 OCT. 2026)
   Audit de 53 pages : textes, boutons, liens, cartes, bandeaux et mobile.
   Les pages de service conservent leur identité graphique distincte.
   =================================================================== */

/* Cas critique : l'ancienne règle utilisait du texte blanc sur la
   nouvelle carte bleu très clair de Dépannage & urgences. */
.pillar-urgent.pillar-overview .pillar-tile:first-child,
.pillar-urgent.pillar-overview .pillar-tile:first-child h3 {
  color:#103549;
}
.pillar-urgent.pillar-overview .pillar-tile:first-child p {
  color:#365367;
}
.pillar-urgent.pillar-overview .pillar-tile:first-child .tile-number {
  color:#156c87;
}
.pillar-urgent.pillar-overview .pillar-tile:first-child .tile-topline {
  color:#075b75;
}
.pillar-urgent.pillar-overview .pillar-tile:first-child a,
.pillar-urgent.pillar-overview .pillar-tile:first-child a:hover {
  color:#07536d;
}

/* Toutes les cartes de prestations : liens et mini-titres lisibles. */
.pillar-tile .tile-topline {color:#07556a;}
.pillar-tile a {color:#07556a;}
.pillar-urgent .pillar-tile:first-child .tile-topline,
.pillar-urgent .pillar-tile:first-child a {color:#07536d;}
.pillar-urgent .pillar-tile:first-child a:hover {color:#063f57;}
.pillar-heat.pillar-overview .tile-topline,
.pillar-heat.pillar-overview .pillar-tile a {color:#824820;}

/* Pages internes : fil d'Ariane, résumés et textes secondaires. */
.page-hero:not(.pillar-urgent):not(.pillar-heat):not(.detail-chauffage) .breadcrumbs,
.page-hero:not(.pillar-urgent):not(.pillar-heat):not(.detail-chauffage) .breadcrumbs span {color:#3c5a6b;}
.page-hero:not(.pillar-urgent):not(.pillar-heat):not(.detail-chauffage) .breadcrumbs a {color:#075571;}
.page-hero:not(.pillar-urgent):not(.pillar-heat):not(.detail-chauffage) .page-lead {color:#3d5768;}
.page-hero:not(.pillar-urgent):not(.pillar-heat):not(.detail-chauffage) .eyebrow {color:#075873;}
.pillar-air.pillar-hero .pillar-tagline {color:#075269;}
.pillar-air.pillar-hero .pillar-hero-meta {color:#285e71;}
.pillar-urgent.pillar-hero .pagehero-text .eyebrow {color:#91eaf7;}
.pillar-heat.pillar-hero .pagehero-text .eyebrow {color:#ffd59f;}
.detail-hero.detail-chauffage .pagehero-text .eyebrow {color:#ffd59f;}

/* Sections colorées : le contraste suit le fond réel. */
.pillar-heat.pillar-spotlight .eyebrow {color:#ffcc95;}
.pillar-urgent .spotlight-process > small {color:#9debf4;}
.pillar-urgent.pillar-overview .eyebrow,
.pillar-urgent.pillar-spotlight .eyebrow {color:#075a70;}
.pillar-spotlight:not(.pillar-heat) .spotlight-copy > p {color:#345466;}
.pillar-spotlight .spotlight-process li strong {color:inherit;}

/* Encarts d'information et navigation des silos. */
.article-content .pillar-deep-heading p,
.pillar-deep-heading p {color:#4b6273;}
.pagehero-text .eyebrow:not(.white) {text-shadow:none;}
.local-breadcrumb-note a {color:#07506b;}
.related-grid a,.related-grid a:hover {color:#164254;}
.related-title .eyebrow {color:#075873;}
.area-tiles a {color:#15384b;}

/* Accueil : texte mineur et preuves sociales, moins pâles. */
.svc-line small {color:#40596a;}
.svc-card:hover .svc-line small {color:#d8edf3;}
.testimonial-note {color:#4b6574;}
.testimonial-section blockquote small {color:#425d70;}
.split-section .eyebrow {color:#075a70;}
.split-section .text-stack > p {color:#3b5969;}
.split-section .text-link {color:#07546d;}

/* Transversal : évite les sous-textes trop gris sur fond blanc. */
.foot-columns p {color:#b8d2dd;}
.pillar-deep-content .article-content {color:#1d3a4b;}
.pillar-deep-content .article-content p {color:#405a6b;}
.pillar-deep-content .article-content h2,
.pillar-deep-content .article-content h3 {color:#0b3046;}

/* CTA contrastés, y compris au survol et à la navigation clavier. */
.pagehero-actions a.btn.btn-primary:hover,
.action-buttons a.btn.btn-primary:hover {color:#062b40;}
.pagehero-actions a.btn.btn-outline[href^="tel:"] {color:#fff;background:#0b3146;}
.pillar-heat.pillar-hero .pagehero-actions a.btn.btn-outline[href^="tel:"],
.detail-hero.detail-chauffage .pagehero-actions a.btn.btn-outline[href^="tel:"] {background:#4cdef1;color:#062b40;}
:where(.pillar-tile a,.pagehero-actions .btn,.action-buttons .btn,.article-content a,.site-footer a):focus-visible {
  outline:3px solid #d18a31;outline-offset:3px;
}

@media (max-width:720px) {
  .pillar-urgent.pillar-overview .pillar-tile:first-child h3 {color:#103549;}
  .pillar-urgent.pillar-overview .pillar-tile:first-child p {color:#365367;}
  .pillar-urgent.pillar-overview .pillar-tile:first-child a {color:#07536d;}
}

/* V8 finitions : sous-textes et liens des encarts partagés sur 53 pages. */
.aside-territory p {color:#405a6b;}
.aside-territory a,.aside-territory a:hover {color:#07536b;}
.contact-sidebar a,.contact-sidebar .contact-number {color:#07526c;}
blockquote footer small {color:#425d70;}
.pillar-heat .spotlight-process>small {color:#0a5d72;}
.pillar-overview .eyebrow,
.pillar-water .pillar-spotlight .eyebrow,
.pillar-air .pillar-spotlight .eyebrow,
.section-heading .eyebrow {color:#07556d;}
.pillar-heat.pillar-spotlight .eyebrow {color:#ffcc95;}
.pillar-urgent.pillar-hero .pagehero-text .eyebrow {color:#91eaf7;}
/* Bouton d'appel et textes de l'en-tête restent clairs sur fond sombre. */
.pillar-urgent .pillar-tile:first-child .tile-number {color:#156c87;}
.pillar-urgent .pillar-tile:first-child h3 {color:#103549;}
.pillar-urgent .pillar-tile:first-child p {color:#365367;}

/* Derniers ajustements V8 : contrastes des avis et sur-titres des pages métiers. */
.quote-grid footer small {color:#425d70;}
.pillar-water.pillar-spotlight .eyebrow,
.pillar-air.pillar-spotlight .eyebrow {color:#07556d;}
.hero-home .accent {color:#62e1ee;}


/* V9 — Cartes de prestations : suppression des premières cartes démesurées. */
@media (min-width: 961px) {
  /* Clim : trois cartes de même rangée, la première un peu plus large mais jamais deux fois plus haute. */
  .pillar-air.pillar-overview .pillar-tiles {
    grid-template-columns:1.12fr 1fr 1fr;
    grid-template-rows:auto;
    align-items:stretch;
  }
  .pillar-air.pillar-overview .pillar-tile,
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) {
    grid-row:auto;
    min-height:300px;
    padding:28px 25px;
  }
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) .tile-number {font-size:2.2rem;}
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) h3 {font-size:1.52rem;}
  /* Dépannage : carte principale de hauteur compacte sur une seule rangée,
     puis les deux situations suivantes côte à côte. */
  .pillar-urgent.pillar-overview .pillar-tiles {
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto auto;
    align-items:stretch;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) {
    grid-row:auto;
    grid-column:1 / -1;
    min-height:0;
    padding:27px 31px;
    display:grid;
    grid-template-columns:60px minmax(235px,1fr) minmax(260px,1.12fr);
    grid-template-rows:auto auto 1fr;
    column-gap:25px;
    align-items:start;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) .tile-number {
    grid-column:1;grid-row:1/4;font-size:2.2rem;align-self:start;margin:1px 0 0;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) .tile-topline {
    grid-column:2;grid-row:1;margin:0 0 6px;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) h3 {
    grid-column:2;grid-row:2;margin:6px 0 14px;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) p {
    grid-column:3;grid-row:1/4;margin:1px 0 0;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) a {
    grid-column:2;grid-row:3;align-self:end;margin:0;padding:7px 0 0;
  }
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(2),
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(3) {min-height:260px;}
}
@media (min-width: 721px) and (max-width: 960px) {
  .pillar-air.pillar-overview .pillar-tiles {grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;}
  .pillar-air.pillar-overview .pillar-tile,
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) {grid-row:auto;min-height:0;padding:24px 20px;}
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) h3 {font-size:1.4rem;}
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) .tile-number {font-size:2rem;}
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) {grid-row:auto;grid-column:1/-1;min-height:240px;}
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(2),
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(3) {min-height:270px;}
}
@media (max-width: 720px) {
  .pillar-air.pillar-overview .pillar-tile:nth-child(1),
  .pillar-urgent.pillar-overview .pillar-tile:nth-child(1) {
    grid-row:auto;
    grid-column:auto;
    min-height:0;
    padding:24px;
  }
  .pillar-air.pillar-overview .pillar-tile,
  .pillar-urgent.pillar-overview .pillar-tile {min-height:0;}
  .pillar-air.pillar-overview .pillar-tile:nth-child(1) h3 {font-size:1.42rem;}
}
/* Si une photo d'en-tête n'a pas encore été importée, afficher un panneau
   de remplacement explicite, et non une grande zone vide. */
.pillar-image-frame .pagehero-image.is-media-unavailable {
  position:relative;
  background:radial-gradient(circle at 85% 18%,rgba(81,218,237,.56),transparent 36%),
             repeating-linear-gradient(130deg,transparent 0 19px,rgba(12,80,107,.045) 20px 21px),
             linear-gradient(135deg,#d8f5fb 0%,#e9fcff 48%,#a9e9f3 100%);
  border:1px solid rgba(5,98,123,.13);
  box-shadow:0 23px 65px rgba(10,43,60,.10);
  display:flex;
  justify-content:center;
  align-items:center;
}
.pillar-image-frame .pagehero-image.is-media-unavailable img {display:none;}
.pillar-image-frame .pagehero-image.is-media-unavailable::after {
  content:attr(data-fallback);
  color:#0c5165;
  text-align:center;
  text-transform:uppercase;
  font-weight:850;
  letter-spacing:.12em;
  font-size:clamp(1.2rem,2.4vw,2.5rem);
  padding:36px;
  max-width:100%;
}
.pillar-urgent .pillar-image-frame .pagehero-image.is-media-unavailable {
  background:radial-gradient(circle at 88% 15%,rgba(81,216,231,.34),transparent 45%),
             linear-gradient(145deg,#133b53,#0c2436);
  border-color:#37677b;
}
.pillar-urgent .pillar-image-frame .pagehero-image.is-media-unavailable::after {color:#e2faff;}

/* V10 : feedback formulaire (le serveur distingue enregistré et notification envoyée) */
.lead-form .form-status.is-warning { color:#7b3b00!important; background:#fff1d4; border-left:4px solid #c47600; padding:12px 14px; border-radius:6px; }
