
:root{--blue:#187aa5;--deep:#10273d;--ink:#162b40;--muted:#5b6977;--pale:#f0f5fa;--line:#dfe7ef}*{box-sizing:border-box}body{margin:0;font:16px/1.65 Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #efad38;outline-offset:5px}.skip{position:absolute;top:-100px;background:white;z-index:10;padding:10px}.skip:focus{top:0}.preview{text-align:center;font-size:10px;letter-spacing:.12em;padding:3px;background:#eaf1fa;color:#405873}.topbar{background:var(--deep);color:white;display:flex;justify-content:space-between;padding:7px max(5%,calc((100vw - 1200px)/2));font-size:11px;letter-spacing:.025em}.topbar a{font-weight:bold;white-space:nowrap}header{max-width:1320px;margin:auto;min-height:90px;padding:18px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-weight:900;letter-spacing:-.045em;font-size:25px;line-height:1;white-space:nowrap;color:var(--deep)}.brand:before{content:'❄';color:var(--blue);display:inline-block;margin-right:8px}.brand span{display:block;font-size:11px;letter-spacing:.25em;margin:7px 0 0 33px}nav{display:flex;align-items:center;gap:23px;font-size:13px;font-weight:600}nav a:hover{color:var(--blue)}.nav-contact{padding:11px 19px;background:var(--blue);border-radius:4px;color:white}nav .nav-contact:hover{color:white;background:var(--deep)}.hero{position:relative;isolation:isolate;background:var(--deep);color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,22,40,.88),rgba(6,22,40,.66) 48%,rgba(6,22,40,.18));z-index:-1}.hero-copy{max-width:1320px;margin:auto;padding:105px 4.5% 115px}.home-hero{min-height:610px}.inner-hero .hero-copy{padding-top:75px;padding-bottom:80px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--blue);margin:0 0 18px}.hero .eyebrow{color:#bed9ff}h1{font-size:clamp(38px,4.5vw,64px);line-height:1.12;letter-spacing:-.035em;max-width:850px;margin:0 0 25px;font-weight:750}em{font-style:normal;color:var(--blue)}h1 em{background:linear-gradient(110deg,#2856a7,#4d9cc0);padding:0 9px 5px;border-radius:5px;color:white;box-decoration-break:clone}.intro{max-width:640px;font-size:17px;line-height:1.75;color:#eef3f9;margin:0 0 29px}.hero-actions{display:flex;gap:15px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:28px;background:var(--blue);color:white;padding:14px 23px;border-radius:4px;font-size:14px;font-weight:600}.button:hover{background:#194780}.outline{background:transparent;border:1px solid #a8bacb}.outline:hover{background:#ffffff18}.expertise-strip{display:flex;justify-content:center;gap:55px;background:var(--pale);border-bottom:1px solid var(--line);padding:20px;font-size:13px;font-weight:600}.expertise-strip span:before{content:'✓';color:var(--blue);margin-right:12px}.section{max-width:1320px;margin:auto;padding:85px 4.5%}.section-head{text-align:center;max-width:720px;margin:0 auto 40px}.section-head>p:last-child{color:var(--muted);font-size:15px}h2{font-size:clamp(30px,3.1vw,43px);line-height:1.16;letter-spacing:-.03em;font-weight:720;margin:0 0 22px}h3{font-size:24px;line-height:1.25;margin:17px 0 13px;letter-spacing:-.02em}.photo-cards{display:grid;grid-template-columns:1fr 1fr;gap:28px}.photo-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;box-shadow:0 7px 24px #10273d09;transition:transform .2s}.photo-card:hover{transform:translateY(-4px)}.photo-card>img{width:100%;height:270px;object-fit:cover;display:block}.card-copy{padding:27px 30px 32px}.tag{background:#e8f0fc;color:#295ba4;font-size:11px;font-weight:700;padding:6px 10px;border-radius:3px}.card-copy p{color:var(--muted);font-size:15px}.text-link{display:inline-block;color:var(--blue);font-size:14px;font-weight:700;margin-top:9px}.text-link span{margin-left:25px}.extra-services{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:27px}.extra-services>a{display:flex;align-items:center;gap:20px;background:var(--pale);padding:23px;border-radius:7px}.extra-services h3{font-size:19px;margin:0 0 6px}.extra-services p{font-size:13px;color:var(--muted);margin:0}.extra-services>a>span:last-child{margin-left:auto;color:var(--blue)}.icon{font-size:33px;color:var(--blue)}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;border-top:1px solid var(--line)}.about>img{width:100%;height:370px;object-fit:cover;border-radius:8px}.about p:not(.eyebrow){color:var(--muted);font-size:15px}.cta{background:var(--blue);color:white;padding:53px max(5%,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;gap:30px;align-items:center}.cta .eyebrow{color:#d8e8ff}.cta h2{margin:0}.light{background:white;color:var(--blue)}.light:hover{background:#e3edfc}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px}.steps article{background:var(--pale);padding:28px;border-radius:7px}.steps p{color:var(--muted);font-size:15px}.number{color:var(--blue);font-size:14px;font-weight:bold}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-link{display:block;font-size:30px;font-weight:bold;color:var(--blue)}.contact-mail{display:block;overflow-wrap:anywhere;margin:15px 0 30px}.note{padding:30px;background:var(--pale);border-radius:7px;align-self:start}.note h3{margin-top:0}footer{background:var(--deep);color:#d6e1ec;padding:50px max(5%,calc((100vw - 1200px)/2));font-size:13px}footer .brand{color:white}footer>div:not(.brand){display:flex;gap:28px;flex-wrap:wrap}footer small{display:block;margin-top:30px;color:#a8bbce}@media(max-width:1050px){header{gap:20px}nav{gap:12px;font-size:12px}.brand{font-size:21px}.hero-copy{padding-top:85px}.expertise-strip{gap:25px}.about{gap:35px}}@media(max-width:800px){header{flex-direction:column;align-items:flex-start;padding:20px 6%;gap:20px}nav{flex-wrap:wrap;gap:13px 20px}.hero-copy{padding:70px 6% 75px}.home-hero{min-height:0}.hero-photo{object-position:62% center}.hero:after{background:linear-gradient(90deg,#061628ed,#06162888)}.expertise-strip{flex-wrap:wrap;gap:10px 28px;font-size:12px}.section{padding:55px 6%}.photo-card>img{height:220px}.card-copy{padding:23px}.about{gap:30px}.steps{gap:15px}.steps article{padding:20px}.cta{padding:40px 6%}}@media(max-width:560px){.topbar{font-size:10px;padding:7px 6%;gap:12px}.topbar span{max-width:200px}h1{font-size:39px}.hero-copy{padding-top:55px;padding-bottom:60px}.intro{font-size:15px}.button{padding:12px 18px;font-size:13px}.photo-cards,.extra-services,.about,.steps,.contact-grid{grid-template-columns:1fr}.section-head{text-align:left}.photo-card>img{height:230px}.about>img{height:260px}.cta{flex-direction:column;align-items:flex-start}.extra-services{gap:15px}.contact-link{font-size:28px}footer{padding:40px 6%}.hero .eyebrow{font-size:10px}.expertise-strip{justify-content:flex-start;padding:18px 6%}h2{font-size:33px}}@media(prefers-reduced-motion:reduce){.photo-card{transition:none}}

/* Official logo displayed without changing the supplied image. */
.brand{display:flex;align-items:center;gap:12px;letter-spacing:-.035em}.brand:before{content:none}.brand>span.logo-window{display:block;position:relative;flex:none;width:80px;height:108px;margin:0;overflow:hidden;background:white;border-radius:3px}.logo-window img{position:absolute;width:140px;height:140px;max-width:none;left:-30px;top:-24px}.brand .brand-name{display:block;margin:0;font-size:21px;letter-spacing:-.035em}.brand .brand-name>span{margin:7px 0 0;font-size:10px;letter-spacing:.23em}header{min-height:134px;padding-top:12px;padding-bottom:12px}.footer-brand{justify-content:flex-start}.footer-brand .brand-name{color:white}@media(max-width:1050px){nav{gap:11px;font-size:11px}.brand .brand-name{font-size:18px}}@media(max-width:800px){header{flex-direction:column;align-items:flex-start;gap:15px}.brand>span.logo-window{width:66px;height:88px}.logo-window img{width:115px;height:115px;left:-25px;top:-20px}.brand .brand-name{font-size:22px}nav{font-size:12px}}

/* Centered footer */
footer{text-align:center}footer .footer-brand{justify-content:center}footer>div:not(.brand){justify-content:center}footer p{margin:18px auto}footer small{margin-top:30px}

[hidden]{display:none!important}.contact-choices{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:32px}.contact-choices article{background:var(--pale);padding:30px;border-radius:8px;border:1px solid var(--line)}.contact-choices h3{margin-top:0}.contact-choices p{color:var(--muted)}.contact-choices small{display:block;margin-top:12px;color:var(--muted)}button.button{border:0;font-family:inherit;cursor:pointer;line-height:1.65;text-align:left}.contact-form-panel{margin-top:35px;border:1px solid var(--line);padding:35px;border-radius:8px}.contact-form-panel>p{max-width:820px;color:var(--muted)}.contact-form-panel a:not(.button){text-decoration:underline}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0}.form-grid label{display:block;font-size:14px;font-weight:600}.full-width{grid-column:1/-1}.form-grid input,.form-grid textarea{display:block;width:100%;border:1px solid #9fadb9;border-radius:4px;padding:12px;font:16px/1.5 Arial,Helvetica,sans-serif;color:var(--ink);background:white;margin-top:7px}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.form-help{font-size:13px;color:var(--muted);max-width:800px}#email-status{font-size:14px}button:focus-visible{outline:3px solid #efad38;outline-offset:5px}@media(max-width:700px){.contact-choices,.form-grid{grid-template-columns:1fr}.contact-choices article,.contact-form-panel{padding:23px}.contact-choices .button{width:100%;justify-content:space-between;gap:10px;font-size:12px}}

.qualification-logo{display:block;width:100%;max-width:240px;height:auto;margin:20px 0 0;background:white;border-radius:4px;padding:8px}.household-photos{border-top:1px solid var(--line)}.household-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.household-gallery figure{margin:0}.household-gallery figure>img{display:block;width:100%;height:440px;object-fit:cover;border-radius:8px}.household-gallery figure:first-child>img{object-position:center 45%}.household-gallery figure:last-child>img{object-position:center 73%}.household-gallery figcaption{margin-top:12px;color:var(--muted);font-size:14px}@media(max-width:700px){.household-gallery{grid-template-columns:1fr}.household-gallery figure>img{height:340px}.household-services .steps{grid-template-columns:1fr}}

.refrigerant-section{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:35px}.refrigerant-section p:not(.eyebrow){color:var(--muted)}.refrigerant-section>img{display:block;width:329px;max-width:100%;height:auto;background:white}.refrigerant-section h2{margin-bottom:15px}@media(max-width:700px){.refrigerant-section{flex-direction:column;align-items:flex-start}}

.socotec-section>img{width:180px;height:auto;flex:none}

.pro-photos{border-top:1px solid var(--line)}.pro-gallery figure>img{height:540px;object-fit:contain;background:var(--pale)}@media(max-width:700px){.pro-gallery figure>img{height:auto;max-height:580px}}

.pv-project{border-top:1px solid var(--line)}.pv-project-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.5fr);gap:30px;align-items:center;margin-top:35px}.pv-project-grid figure{margin:0;min-width:0}.pv-project-grid img{display:block;width:100%;height:auto;border-radius:7px}.pv-project-grid figure:first-child img{max-height:570px;object-fit:contain;background:var(--pale)}.pv-project-grid figcaption{color:var(--muted);font-size:14px;margin-top:13px}.pv-project-grid a{display:block}@media(max-width:700px){.pv-project-grid{grid-template-columns:1fr}.pv-project-grid figure:first-child img{max-height:500px}}

.hero-photo.outdoor-hero{object-position:center 56%}@media(max-width:620px){.hero-photo.outdoor-hero{object-position:59% 55%}}.pro-gallery a{display:block}

.pro-gallery figure{min-width:0}.pro-gallery a>img{display:block;width:100%;height:540px;object-fit:contain;background:var(--pale);border-radius:8px}@media(max-width:700px){.pro-gallery a>img{height:auto;max-height:580px}}

.hero-photo.pro-hero{object-position:center 55%}@media(max-width:620px){.hero-photo.pro-hero{object-position:43% 55%}}

.client-section{border-top:1px solid var(--line)}.client-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px 22px}.client-grid figure{margin:0;min-width:0;text-align:center}.client-logo{height:150px;display:flex;align-items:center;justify-content:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:7px}.client-logo img{display:block;max-width:100%;max-height:118px;width:auto;height:auto;object-fit:contain}.client-grid figcaption{margin-top:10px;font-size:12px;color:var(--muted)}@media(max-width:950px){.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:560px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.client-logo{height:135px;padding:12px}.client-logo img{max-height:108px}}

.supervision-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:55px;align-items:center}.supervision-intro>div>p:not(.eyebrow){color:var(--muted);max-width:650px;margin-bottom:28px}.supervision-price{background:var(--deep);color:white;padding:35px;border-radius:9px}.supervision-price .eyebrow{color:#a9ddf2}.price-amount{font-size:65px;line-height:1.1;font-weight:750;letter-spacing:-.04em;margin:20px 0}.price-amount span{display:block;font-size:20px;font-weight:400;letter-spacing:0;margin-top:10px}.supervision-price .form-help{color:#c4d4e1}.report-examples{border-top:1px solid var(--line)}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.report-grid figure{margin:0;min-width:0}.report-grid figure>a{display:block;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--pale)}.report-grid img{display:block;width:100%;height:auto}.report-grid figcaption p{color:var(--muted);font-size:14px}@media(max-width:700px){.supervision-intro,.report-grid{grid-template-columns:1fr}.supervision-intro{gap:30px}.supervision-price{padding:28px}.price-amount{font-size:58px}}

.illustrated-hero{background:#0b243b;min-height:540px}.illustrated-hero:after{display:none}.illustrated-hero .hero-photo{object-fit:cover;object-position:center center}.illustrated-hero .hero-copy{padding-top:85px;padding-bottom:85px}.illustrated-hero h1{max-width:380px;font-size:46px}.illustrated-hero .intro{max-width:350px;font-size:16px}.illustrated-hero .hero-actions{max-width:350px;gap:13px}.illustrated-hero .button{font-size:13px;padding:12px 16px;gap:14px}@media(min-width:1500px){.illustrated-hero{min-height:610px}.illustrated-hero .hero-copy{padding-top:110px}}@media(max-width:800px){.illustrated-hero{min-height:0}.illustrated-hero .hero-copy{padding:45px 6% 15px}.illustrated-hero h1{font-size:39px;max-width:100%}.illustrated-hero .intro{max-width:520px}.illustrated-hero .hero-actions{max-width:none}.illustrated-hero .hero-photo{position:relative;display:block;width:155%;height:auto;max-width:none;margin-left:-50%;z-index:0}.illustrated-hero .hero-copy{position:relative;z-index:1}}

.illustrated-hero .client-login-primary{display:flex;flex-wrap:wrap;max-width:360px;background:#fff;color:#10273d;padding:17px 20px;margin:0 0 22px;font-size:16px;line-height:1.35;font-weight:750;gap:9px;border:2px solid #77d8f3;box-shadow:0 6px 22px #0003}.client-login-primary .login-label{display:block;flex-basis:100%;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#187aa5}.illustrated-hero .client-login-primary:hover{background:#def5ff;color:#10273d}.illustrated-hero .client-login-primary>span:last-child{margin-left:auto}@media(max-width:800px){.illustrated-hero .client-login-primary{max-width:390px;width:100%}}

.rental-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:35px 0 25px}.rental-item{background:var(--pale);padding:29px;border:1px solid var(--line);border-radius:8px}.rental-item p{color:var(--muted);font-size:15px}.rental-item h3{font-size:23px}.rental-hero{background:#10273d}.rental-hero:after{background:linear-gradient(90deg,rgba(7,25,43,.5),transparent 46%)}.rental-hero h1{max-width:430px;font-size:46px}.rental-hero .intro{max-width:370px}.rental-hero .hero-actions{max-width:400px}.rental-hero .hero-copy{padding-top:95px;padding-bottom:95px}@media(max-width:800px){.rental-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-hero .hero-copy{padding:45px 6% 15px}.rental-hero .hero-photo{position:relative;display:block;width:155%;max-width:none;height:auto;margin-left:-50%;z-index:0}.rental-hero:after{display:none}.rental-hero .hero-copy{position:relative;z-index:1}.rental-hero .intro,.rental-hero h1{max-width:100%}}@media(max-width:560px){.rental-grid{grid-template-columns:1fr}.rental-hero h1{font-size:38px}}

.rental-hero .hero-photo{object-fit:contain;object-position:center center}

.rental-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.rental-icon{display:block;width:150px;height:105px;object-fit:contain}.rental-card-top .number{margin:0}.rental-item{display:flex;flex-direction:column}.rental-item .text-link{margin-top:auto}

.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}button:disabled{opacity:.65;cursor:wait}

.legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:15px 28px;margin:25px 0 0;font-size:14px}.legal-page{max-width:1000px;margin:auto}.legal-page h1{font-size:clamp(32px,5vw,52px);line-height:1.15;color:var(--deep);margin-bottom:15px}.legal-date{color:var(--muted);font-size:14px;margin-bottom:45px}.legal-content h2{font-size:26px;margin:38px 0 16px}.legal-content p,.legal-content dd{line-height:1.8;overflow-wrap:anywhere}.legal-content a{color:var(--blue);text-decoration:underline}.legal-details{display:grid;grid-template-columns:220px 1fr;gap:12px 24px}.legal-details dt{font-weight:700}.legal-details dd{margin:0}.legal-review{border-left:3px solid var(--blue);padding:15px 22px;background:var(--pale)}@media(max-width:560px){.legal-details{grid-template-columns:1fr;gap:5px}.legal-details dd{margin-bottom:15px}}

.cms-project-description{max-width:760px;color:var(--muted);white-space:pre-line}.cms-project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}.cms-project-gallery img{width:100%;height:360px;object-fit:cover;border-radius:8px;display:block}.cms-preview-badge{position:sticky;top:0;z-index:99;padding:9px;background:#d9f0f8;color:#123d52;text-align:center;font:700 11px Arial,sans-serif;letter-spacing:1px}@media(max-width:600px){.cms-project-gallery{grid-template-columns:1fr}.cms-project-gallery img{height:300px}}

.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 28px;margin:24px 0 0;font-size:14px}.service-area{color:#c8d9e7;font-size:13px;max-width:650px;margin:12px auto}

/* Local information and useful migration destinations */
#nos-metiers,#notre-entreprise,#questions-frequentes,#installation-climatisation,#entretien-climatisation{scroll-margin-top:140px}.local-faq{max-width:1100px;margin:auto}.local-faq details{border-bottom:1px solid #d7e2e9;padding:22px 0}.local-faq summary{font-weight:700;font-size:clamp(18px,2vw,22px);cursor:pointer;color:#122b40}.local-faq details p{max-width:800px;line-height:1.75}.local-faq details .text-link{display:inline-block;margin:8px 0}.local-faq summary:focus-visible{outline:3px solid #167eaa;outline-offset:5px}

/* Horizontal brand supplied by the company, scoped to the page header. */
header>.brand{display:block;flex:0 1 370px;min-width:0;line-height:0}header .header-logo{position:static;display:block;width:370px;max-width:100%;height:auto;object-fit:contain}header>nav{flex-shrink:0}header{gap:24px}
@media(max-width:1100px) and (min-width:801px){header{flex-wrap:wrap;justify-content:center;gap:8px;padding-top:8px;padding-bottom:16px}header>.brand{flex-basis:340px}header>nav{justify-content:center;flex-wrap:wrap}}
@media(max-width:800px){header>.brand{flex:none;width:370px;max-width:100%}header{gap:10px}header>nav{flex-shrink:1;width:100%}header .header-logo{width:100%}}
