
:root{--ink:#132b3d;--navy:#09273c;--blue:#0876ad;--orange:#f9ad56;--pale:#f2f7fa;--line:#e0eaf0;--muted:#627684;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}img{max-width:100%}a{color:inherit}button,input,textarea,select{font:inherit}.container{max-width:1180px;margin:auto;padding:0 22px}.site-header{height:82px;position:sticky;top:0;z-index:40;background:#fffc;backdrop-filter:blur(15px);border-bottom:1px solid #e8eef2}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}.brand-logo{width:62px;height:auto;display:block;flex-shrink:0;border-radius:6px}.brand-text{font-weight:900;letter-spacing:-.055em;font-size:25px;line-height:1;display:block}.brand strong{color:var(--blue)}.brand small{font-size:10px;letter-spacing:.18em;display:block;color:#677e8d;margin-top:6px;font-weight:800}.nav-links{display:flex;align-items:center;gap:21px}.nav-links a{text-decoration:none;font-size:13px;font-weight:750}.nav-links a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:7px;background:var(--blue);color:white!important;padding:14px 21px;font-weight:800;text-decoration:none;line-height:1.2;cursor:pointer;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-2px);background:#075f8b}.btn-orange{background:var(--orange);color:#102e41!important}.btn-orange:hover{background:#ffc37c}.btn-outline{background:transparent;border:1px solid #ffffffaa;color:white!important}.btn-outline:hover{background:#ffffff18}.mobile-toggle{display:none;background:transparent;border:0;font-size:27px;cursor:pointer}.hero{position:relative;color:white;isolation:isolate;min-height:620px;display:flex;align-items:center;background:#0d2c3e;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:url('images/chaufferie-technique.webp') center 49%/cover}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,29,46,.96) 0%,rgba(5,29,46,.80) 44%,rgba(5,29,46,.17) 100%)}.hero-content{padding-top:108px;padding-bottom:108px}.eyebrow{color:var(--orange);letter-spacing:.15em;font-weight:850;text-transform:uppercase;font-size:12px}.hero h1{font-size:clamp(41px,5.25vw,69px);letter-spacing:-.055em;line-height:1.08;max-width:750px;margin:15px 0 22px}.hero h1 em{font-style:normal;color:#ffbd6b}.hero p{font-size:18px;color:#e1eef4;max-width:610px;margin:0 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-note{margin-top:28px;font-size:12px;color:#d5e5ed}.section{padding:91px 0}.section-alt{background:var(--pale)}.section-head{margin-bottom:33px;max-width:750px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.kicker{display:inline-block;text-transform:uppercase;letter-spacing:.16em;color:var(--blue);font-size:12px;font-weight:900;margin-bottom:9px}.section h2,.subhero h1{font-size:clamp(30px,4vw,46px);line-height:1.16;letter-spacing:-.04em;margin:0 0 16px}.section-head p{color:var(--muted);font-size:17px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{border:1px solid var(--line);background:white;border-radius:13px;overflow:hidden;box-shadow:0 13px 35px #0c30400a}.service-card img{width:100%;height:205px;object-fit:cover;display:block}.service-card>div{padding:22px}.service-card h3{font-size:20px;line-height:1.25;margin:0 0 9px}.service-card p{font-size:14px;color:var(--muted);margin:0}.service-card a{display:inline-block;color:var(--blue);font-weight:800;text-decoration:none;margin-top:13px}.band{padding:42px 0;background:#0f3c56;color:white}.band-row{display:flex;justify-content:space-between;align-items:center;gap:30px}.band h2{font-size:clamp(23px,3vw,34px);line-height:1.24;margin:0 0 5px}.band p{color:#cde4f0;margin:0}.filter-bar{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 25px}.filter-button{background:#fff;border:1px solid #d8e6ef;border-radius:50px;padding:9px 17px;font-weight:800;color:#38566a;cursor:pointer}.filter-button.active{background:#0d5379;color:#fff;border-color:#0d5379}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery figure{position:relative;margin:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 25px #14334412}.gallery img{width:100%;height:270px;object-fit:cover;display:block;transition:transform .3s}.gallery a:hover img{transform:scale(1.035)}.gallery figcaption{padding:15px 17px;font-weight:800;font-size:14px;line-height:1.4}.gallery small{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:4px}.gallery figure[hidden]{display:none}.case{display:grid;grid-template-columns:1.1fr .9fr;gap:45px;align-items:center}.case img{width:100%;border-radius:13px;max-height:490px;object-fit:cover}.case p,.case li{color:#526b79}.case ul{padding-left:22px}.about{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.about p{color:var(--muted)}.about img{width:100%;height:420px;object-fit:cover;border-radius:13px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{border:1px solid var(--line);padding:25px;border-radius:12px}.stars{color:#e9a132;letter-spacing:.1em}.review p{color:#526b79}.contact{background:#08283e;color:white}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.contact h2{font-size:clamp(32px,4vw,46px);line-height:1.12;letter-spacing:-.035em}.contact p{color:#d6e6ee}.contact-detail{margin:20px 0}.contact-detail a{color:#ffcc85;overflow-wrap:anywhere}.form{background:#fff;color:var(--ink);padding:30px;border-radius:12px}.form label{display:block;font-weight:800;font-size:13px;margin-bottom:13px}.form input,.form select,.form textarea{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #cbd8df;border-radius:6px;color:#163348;background:white;min-height:45px}.form textarea{min-height:120px;resize:vertical}.form input[type=file]{font-weight:400;font-size:12px}.form .consent{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:12px}.form .consent input{width:auto;min-height:auto;margin:3px 0}.form .btn{width:100%}.form .note{color:#627583;font-size:12px;margin:12px 0 0}.anti-spam{position:absolute!important;left:-9999px!important;height:1px;width:1px;overflow:hidden}.footer{background:#061b2b;color:#bbcbd6;padding:27px 0;font-size:12px}.footer .container{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.subhero{position:relative;background:linear-gradient(105deg,#09283ef5,#09283eaa),url('images/chaufferie-technique.webp') center/cover;color:white;padding:100px 0}.subhero h1{max-width:900px;font-size:clamp(39px,5vw,61px)}.subhero p{color:#e2edf3;max-width:730px;font-size:18px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{background:#fff;padding:25px;border:1px solid var(--line);border-radius:10px}.step b{font-size:30px;color:var(--blue)}.step h3{margin:8px 0}.step p{font-size:14px;color:var(--muted);margin:0}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:25px}.panel{border:1px solid var(--line);padding:29px;background:#fff;border-radius:11px}.panel h3{margin-top:0}.panel li{margin:8px 0}.faq details{padding:17px 0;border-bottom:1px solid var(--line)}.faq summary{font-weight:800;cursor:pointer}.faq details p{color:var(--muted)}.final-cta{text-align:center;background:var(--navy);color:white}.final-cta p{color:#d5e3eb;max-width:660px;margin:0 auto 25px}.floating-phone{display:none}@media(max-width:1000px){.nav-links{gap:12px}.nav-links a{font-size:12px}.service-grid,.gallery,.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.site-header{height:70px}.brand{gap:10px}.brand-logo{width:48px}.brand-text{font-size:21px}.mobile-toggle{display:block}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;box-shadow:0 12px 16px #0002;padding:18px 24px;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.hero{min-height:590px}.hero:after{background:linear-gradient(90deg,#061f33ed,#061f33b2)}.hero-content{padding-top:85px;padding-bottom:85px}.section{padding:62px 0}.service-grid,.gallery,.steps,.about,.case,.review-grid,.contact-layout,.twocol{grid-template-columns:1fr}.service-card img{height:230px}.gallery img{height:290px}.case,.about,.contact-layout{gap:25px}.band-row{flex-direction:column;align-items:flex-start}.subhero{padding:72px 0}.floating-phone{display:flex;position:fixed;bottom:18px;right:18px;z-index:30;box-shadow:0 6px 20px #0004;font-size:14px}.form{padding:22px}.footer{padding-bottom:75px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Finition premium — identité officielle ThermoPro Services */
:root{--navy:#30345e;--ink:#20283c;--blue:#495487;--orange:#efa674;--pale:#f6f6f9;--line:#e7e7f0;--muted:#62697a}
.site-header{height:96px;background:#30345e;backdrop-filter:none;border-bottom:1px solid #ffffff24;box-shadow:0 8px 32px #14162a19}
.nav-wrap{gap:18px}
.brand{display:flex;align-items:center;gap:10px;min-width:255px;color:#fff}
.brand-logo{width:56px;height:63px;object-fit:contain;border-radius:0}
.brand-text{font-size:17px;letter-spacing:.16em;line-height:1.25;color:#fff;font-weight:750;white-space:nowrap}
.brand strong{color:#fff}
.brand small{font-size:9px;letter-spacing:.135em;color:#e7bac0;margin-top:5px}
.nav-links{gap:16px}
.nav-links a{color:#fff;font-weight:650;font-size:12px}
.nav-links a:hover{color:#f4ae85}
.nav-links .btn{background:#eca374;color:#242849!important;padding:13px 17px;font-size:12px}
.nav-links .btn:hover{background:#f4c09a}
.mobile-toggle{color:white}
.hero:after{background:linear-gradient(90deg,rgba(25,28,55,.97) 0%,rgba(38,41,75,.86) 49%,rgba(23,31,51,.31) 100%)}
.subhero{background:linear-gradient(105deg,rgba(38,41,75,.96),rgba(38,41,75,.53)),url('images/chaufferie-technique.webp') center/cover}
.hero h1,.subhero h1{letter-spacing:-.042em}
.hero h1 em{color:#f2b18a}
.btn{border-radius:9px}
.btn-orange{background:#eead82;color:#272c52!important}
.btn-orange:hover{background:#f6bf98}
.service-card,.gallery figure,.panel,.review,.step{box-shadow:0 12px 28px rgba(36,42,76,.07);border-radius:14px}
.service-card img,.gallery img{filter:saturate(.94)}
.kicker{color:#495487}
.filter-button.active{background:#30345e;border-color:#30345e}
.band{background:#30345e}
.contact{background:linear-gradient(130deg,#282c52,#3e4774)}
.footer{background:#222640;color:#cdd0dd;padding:36px 0 25px}
.footer-premium{display:grid!important;grid-template-columns:1fr auto;gap:22px 40px;align-items:center}
.footer-identity{display:flex;align-items:center;gap:10px}
.footer-identity img{width:56px;height:63px;object-fit:contain}
.footer-identity strong{display:block;font-size:15px;letter-spacing:.14em;line-height:1.3;color:#fff}
.footer-identity small{display:block;font-size:11px;letter-spacing:.03em;margin-top:5px}
.footer-coordinates{display:flex;flex-direction:column;gap:4px;align-items:flex-end;font-size:12px}
.footer-coordinates a{color:#f2bb96;text-decoration:none}
.footer-coordinates a:hover{text-decoration:underline}
.footer-bottom{grid-column:1/-1;border-top:1px solid #ffffff21;padding-top:15px;font-size:11px;color:#a9adc2}
@media(max-width:1120px){.brand{min-width:200px}.brand-text{font-size:14px;letter-spacing:.08em}.nav-links{gap:10px}}
@media(max-width:750px){.site-header{height:76px}.brand{min-width:0;gap:7px}.brand-logo{width:45px;height:56px}.brand-text{font-size:13px;letter-spacing:.06em}.brand small{font-size:7.5px;letter-spacing:.04em}.nav-links{top:76px;background:#30345e;box-shadow:0 10px 26px #16192e60}.nav-links a{font-size:14px;color:white}.nav-links .btn{color:#252a4f!important}.hero:after{background:linear-gradient(90deg,#25294eea,#25294eaa)}.footer-premium{grid-template-columns:1fr}.footer-coordinates{align-items:flex-start}.footer-bottom{grid-column:1}}
@media(max-width:350px){.brand-text{font-size:11px}}
