
:root{--navy:#06284e;--blue:#087ebc;--green:#72b729;--ink:#12233a;--muted:#627287;--light:#f4f8fb;--white:#fff;--line:#e3eaf0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);line-height:1.6;background:white}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.15rem,5vw,4.25rem);line-height:1.12;letter-spacing:-.045em}h2{font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.18;letter-spacing:-.03em}h3{font-size:1.2rem;line-height:1.3}p{color:#4f6074}.wrap{max-width:1180px;margin:auto;padding:0 24px}.topline{background:var(--navy);color:#fff;font-size:.83rem;text-align:center;padding:8px 12px}.topline a{font-weight:800;color:#d8f3b5}.header{position:sticky;top:0;z-index:30;background:#ffffffed;backdrop-filter:blur(12px);box-shadow:0 2px 18px #092d5112}.headrow{display:flex;align-items:center;gap:20px;min-height:86px}.brand img{width:174px;height:70px;object-fit:contain;object-position:left}.nav{margin-left:auto;display:flex;align-items:center;gap:21px}.nav a{font-size:.91rem;font-weight:650;color:#263b55}.nav a:hover,.nav a.active{color:#0783c1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:13px 20px;font-weight:800;background:var(--green);color:#fff;border:2px solid var(--green);transition:.2s;cursor:pointer;text-align:center}.btn:hover{filter:brightness(.94);transform:translateY(-1px)}.btn.secondary{background:var(--navy);border-color:var(--navy)}.btn.outline{background:transparent;color:var(--navy);border-color:#c5d6e2}.btn.small{padding:9px 14px;font-size:.87rem}.mobile-toggle{display:none;margin-left:auto;background:none;border:0;font-size:1.5rem;color:var(--navy)}.banner{width:100%;max-height:500px;object-fit:cover;object-position:center}.hero-panel{background:linear-gradient(120deg,#06284e,#0b5a8e);color:white;padding:58px 0 65px}.hero-panel p,.dark p{color:#d7e9f5}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:50px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.77rem;font-weight:850;color:var(--green);margin-bottom:14px}.hero-panel h1{margin-bottom:19px}.hero-panel h1 span{color:#9ddd60}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.hero-note{border:1px solid #ffffff3d;background:#ffffff12;border-radius:22px;padding:28px}.hero-note strong{font-size:2.5rem;line-height:1;color:#b8eb81;display:block}.hero-note small{color:#c8dce9}.section{padding:78px 0}.section.alt{background:var(--light)}.section-head{max-width:740px;margin-bottom:35px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0b31590b}.card-body{padding:25px}.card img.cover{width:100%;height:220px;object-fit:cover}.card .pill{display:inline-block;font-size:.75rem;background:#e8f5df;color:#36761b;border-radius:99px;padding:4px 10px;font-weight:800;margin-bottom:12px}.card p{font-size:.96rem}.card a.link{font-weight:800;color:var(--blue)}.statbar{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.stat{border-left:3px solid var(--green);padding-left:18px}.stat strong{font-size:1.1rem;display:block;color:var(--navy)}.stat span{font-size:.9rem;color:var(--muted)}.beforeafter{display:grid;grid-template-columns:1fr 1fr;gap:20px}.photo{position:relative;border-radius:18px;overflow:hidden;background:#e9eff4}.photo img{width:100%;height:330px;object-fit:cover}.photo label{position:absolute;top:15px;left:15px;background:var(--navy);color:white;padding:6px 16px;border-radius:8px;font-weight:850}.photo.after label{background:var(--green)}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.split>img{border-radius:22px;width:100%;height:440px;object-fit:cover}.checks{list-style:none;padding:0}.checks li{margin:11px 0;padding-left:30px;position:relative}.checks li:before{content:'✓';color:var(--green);font-weight:900;position:absolute;left:0}.cta{background:linear-gradient(120deg,#06284e,#0878a9);color:#fff;padding:65px 0}.cta p{color:#dbeef8}.cta-row{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin-bottom:12px}.page-intro{background:linear-gradient(120deg,#06284e,#0a5886);padding:80px 0;color:white}.page-intro h1{font-size:clamp(2.1rem,4vw,3.5rem);max-width:830px}.page-intro p{color:#d6e8f4;max-width:780px;font-size:1.1rem}.price{font-size:2.4rem;color:var(--navy);font-weight:900}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery figure{margin:0;border-radius:17px;overflow:hidden;background:white;box-shadow:0 8px 25px #0a355012}.gallery img{width:100%;height:270px;object-fit:cover}.gallery figcaption{padding:16px 20px;font-weight:750}.faq details{padding:20px 0;border-bottom:1px solid var(--line)}.faq summary{font-weight:800;cursor:pointer}.contact-box{padding:32px;background:#f4f8fb;border-radius:22px}.contact-box p{margin-bottom:12px}.contact-links a{display:block;font-weight:800;color:var(--blue);margin:12px 0}.field{display:block;font-weight:750;font-size:.9rem;margin-bottom:14px}.field input,.field select,.field textarea{width:100%;font:inherit;margin-top:6px;border:1px solid #c8d5e1;border-radius:10px;padding:12px;background:#fff;color:var(--ink)}.field textarea{min-height:130px}.hint{font-size:.83rem;color:#63788c}.footer{background:#061e39;color:#fff;padding:55px 0 25px}.footer p,.footer a{color:#d2dfeb}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px}.footer img{width:190px;background:#fff;border-radius:10px;padding:8px}.footer h3{color:#fff}.footer ul{list-style:none;padding:0}.footer li{margin:9px 0}.footline{border-top:1px solid #ffffff24;margin-top:30px;padding-top:20px;font-size:.82rem;color:#aabed0}.sticky-call{display:none}.note{background:#edf7e8;border-left:4px solid var(--green);padding:16px 20px;border-radius:9px}.muted{color:var(--muted)}
@media(max-width:1000px){.nav{gap:12px}.nav a{font-size:.81rem}.headrow .btn.small{display:none}.brand img{width:140px}}
@media(max-width:760px){.topline{font-size:.75rem}.headrow{min-height:70px}.brand img{height:58px;width:145px}.mobile-toggle{display:block}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:20px 25px;box-shadow:0 14px 20px #0b2b4822;flex-direction:column;align-items:stretch;gap:14px}.nav.open{display:flex}.banner{height:auto;min-height:145px}.hero-panel{padding:42px 0}.hero-grid,.split,.grid2,.grid3,.footer-grid{grid-template-columns:1fr}.hero-note{display:none}.section{padding:54px 0}.statbar{grid-template-columns:1fr;gap:14px}.beforeafter{gap:10px}.photo img{height:190px}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:200px}.cta-row{align-items:flex-start;flex-direction:column}.sticky-call{display:block;position:fixed;bottom:12px;left:12px;right:12px;text-align:center;z-index:25;background:var(--green);color:#fff;border-radius:13px;padding:13px;font-weight:850;box-shadow:0 8px 30px #06284e4a}.footer{padding-bottom:85px}.split>img{height:290px}}
@media(max-width:480px){.gallery{grid-template-columns:1fr}.gallery img{height:240px}.beforeafter{grid-template-columns:1fr}.photo img{height:240px}.hero-actions .btn{width:100%}.banner{min-height:120px}}

/* Avis Google */
.reviews-section{background:#f4f8fb}.reviews-shell{display:grid;grid-template-columns:1.35fr .8fr;align-items:center;gap:32px}.reviews-intro h2{max-width:650px}.reviews-intro p{max-width:640px;color:var(--muted);margin-bottom:24px}.reviews-panel{background:white;border:1px solid #dce7ef;border-radius:20px;padding:32px;box-shadow:0 14px 35px #06284e12}.reviews-panel .reviews-stars{font-size:2.2rem;letter-spacing:3px;color:#e5a700;margin-bottom:10px}.reviews-panel strong{display:block;font-size:1.35rem;color:#06284e}.reviews-panel p{color:var(--muted)}.reviews-panel a{color:#087c76;font-weight:750}@media(max-width:760px){.reviews-shell{grid-template-columns:1fr}.reviews-panel{padding:24px}}

/* Vidéos authentiques GBG */
.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.video-card{border-radius:20px;overflow:hidden;background:white;box-shadow:0 12px 35px #0b315914;border:1px solid var(--line)}.video-card video{display:block;width:100%;aspect-ratio:9/12;max-height:430px;object-fit:cover;background:#071b30}.video-caption{padding:22px}.video-caption h3{margin-bottom:8px}.video-caption p{margin:0}.video-bottom{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px}.social-link{color:var(--blue);font-weight:800}.videos-section{background:#f7fafc}.footer-grid{grid-template-columns:1.25fr 1fr 1fr 1fr}@media(max-width:900px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.video-grid,.footer-grid{grid-template-columns:1fr}.video-card video{max-height:460px}}

/* Accueil épuré & professionnels */
.professional-teaser{background:#f4f8fb}.pro-teaser-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:46px;align-items:center}.pro-teaser-inner img{width:100%;height:290px;object-fit:cover;border-radius:20px}.pro-types{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pro-types article{background:white;border:1px solid #e3eaf0;border-radius:16px;padding:25px}.pro-types h3{font-size:1.07rem}.pro-types p{margin:0}.reviews-section{padding:50px 0}.reviews-shell{display:block}.reviews-intro{max-width:850px}.reviews-intro h2{font-size:1.8rem}@media(max-width:900px){.pro-types{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.pro-teaser-inner,.pro-types{grid-template-columns:1fr}.pro-teaser-inner img{height:220px}}

/* Mobile premium refresh - 2026-10 */
.home-hero{background:linear-gradient(120deg,#06284e,#0b5a8e);color:#fff;padding:43px 0 48px}.home-hero h1{font-size:clamp(1.9rem,4.5vw,3.2rem);max-width:780px;letter-spacing:-.035em;margin:0 0 16px}.home-hero p{color:#e0edf5;max-width:680px}.home-hero .home-local{color:#a6df78;font-size:.76rem;font-weight:800;letter-spacing:.11em;margin-bottom:13px}.home-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:23px}.home-phone{color:white;font-weight:750}.home-services,.home-proof,.home-pro,.home-reviews{padding:65px 0}.home-section-intro{margin-bottom:25px}.home-section-intro h2{max-width:750px}.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.home-service{border:1px solid var(--line);border-radius:17px;overflow:hidden;box-shadow:0 8px 25px #06284e0b;background:white}.home-service img{width:100%;height:150px;object-fit:cover}.home-service>div{padding:18px}.home-service h3{margin:3px 0 8px}.home-service p{font-size:.9rem;line-height:1.5;margin-bottom:12px}.home-price{font-size:.74rem;color:#34721e;font-weight:800}.home-more,.home-text-link{color:var(--blue);font-weight:800}.home-proof{background:#f4f8fb}.home-proof-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:40px}.home-proof-grid img{width:100%;height:240px;object-fit:cover;border-radius:17px}.home-pro-grid,.home-reviews-grid{display:flex;justify-content:space-between;align-items:center;gap:28px}.home-pro-grid>div,.home-reviews-grid>div{max-width:640px}.home-reviews{background:#f4f8fb}.home-reviews p,.home-pro p,.home-proof p{max-width:650px}.home-hero .btn,.home-reviews .btn{color:white}.btn.outline{color:var(--navy)}.cta .btn.outline{color:#fff;border-color:#b4cfe1}.footer img{width:120px}.footer{padding:42px 0 28px}.footer-grid{gap:24px}.sticky-call{display:none}
@media(max-width:760px){.topline{display:none}.headrow{min-height:66px}.brand img{height:51px;width:124px}.nav{top:66px}.banner{min-height:0}.home-hero{padding:29px 0 34px}.home-hero h1{font-size:clamp(1.7rem,6vw,2.2rem);line-height:1.2}.home-hero p{font-size:.98rem;line-height:1.6}.home-hero .home-local{font-size:.66rem;letter-spacing:.075em}.home-actions{gap:13px}.home-actions .btn{width:100%;padding:13px}.home-phone{display:block;text-align:center;width:100%}.home-services,.home-proof,.home-pro,.home-reviews{padding:40px 0}.home-section-intro h2,.home-proof h2,.home-pro h2,.home-reviews h2{font-size:1.6rem}.home-service-grid{grid-template-columns:1fr;gap:12px}.home-service{display:grid;grid-template-columns:110px 1fr;align-items:stretch;border-radius:14px}.home-service img{height:100%;min-height:124px}.home-service>div{padding:13px}.home-service h3{font-size:1.02rem}.home-service p{font-size:.84rem;margin-bottom:6px}.home-price{font-size:.68rem}.home-proof-grid{grid-template-columns:1fr;gap:20px}.home-proof-grid img{height:175px}.home-pro-grid,.home-reviews-grid{flex-direction:column;align-items:stretch;gap:10px}.home-pro-grid .btn,.home-reviews-grid .btn{width:100%;font-size:.93rem}.footer{padding:35px 0 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer img{width:110px}.footer h3{font-size:1rem}.footer p,.footer li{font-size:.88rem}.sticky-call{display:flex;align-items:center;justify-content:center;left:auto;right:17px;bottom:18px;width:52px;height:52px;padding:0;border-radius:50%;font-size:0;box-shadow:0 6px 18px #06284e45}.sticky-call:before{content:'☎';font-size:27px;color:white}.sticky-call:focus-visible{outline:3px solid #06284e;outline-offset:3px}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.home-service{grid-template-columns:102px 1fr}.home-service img{min-height:130px}}

/* SEO content: useful supporting information below the primary page content */
.seo-detail{padding:46px 0;background:#f7fafc;color:#18324a}
.seo-detail-inner{max-width:900px}
.seo-detail h2{font-size:clamp(1.35rem,3vw,1.9rem);margin:22px 0 12px}
.seo-detail h3{font-size:1.15rem;margin:24px 0 9px}
.seo-detail p{line-height:1.75;margin:0 0 14px}
.seo-faq{border-bottom:1px solid #d7e1e8;padding:14px 0}
.seo-faq summary{cursor:pointer;font-weight:700;line-height:1.5}
.seo-faq p{margin:12px 0 0}
.seo-related{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.seo-related a{display:inline-block;border:1px solid #c6d7e2;border-radius:999px;padding:8px 14px;text-decoration:none;color:#064b7c;background:white}
.seo-related a:hover{border-color:#78b927}

/* Fil d’Ariane discret et accessible */
.breadcrumbs{font-size:.83rem;color:#596d7e;margin:0 0 1rem}.breadcrumbs a{color:#14648a;text-decoration:underline;text-underline-offset:2px}

/* Correction du logo du pied de page : dimensions naturelles */
.footer img{display:block;width:120px!important;height:auto!important;max-width:100%;aspect-ratio:3 / 2;object-fit:contain;box-sizing:border-box;}

/* Méthode GBG : mise en avant sans allonger excessivement l'accueil */
.method-feature{padding:48px 0;background:#f1f7f8;color:#102d45}.method-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center}.method-feature h2,.method-detail h2{font-size:clamp(1.55rem,3vw,2.3rem);line-height:1.2;margin:10px 0 15px}.method-feature p,.method-detail p{line-height:1.7}.method-lead{font-size:1.14rem}.method-points{display:grid;gap:12px}.method-points>div{background:#fff;border:1px solid #d8e8e8;border-radius:14px;padding:16px 19px;display:grid;gap:5px}.method-points strong{color:#063c60}.method-points span{font-size:.93rem;color:#435d6b}.method-detail{padding:52px 0;background:#f5f9fb}.method-steps{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.method-steps article{background:white;padding:23px;border:1px solid #dbe5ed;border-radius:14px}.method-steps h3{margin:0 0 12px;color:#073b60}.method-note{font-size:.9rem;color:#526779;margin-bottom:22px}@media(max-width:700px){.method-layout,.method-steps{grid-template-columns:1fr}.method-feature,.method-detail{padding:32px 0}.method-points{gap:8px}.method-points>div{padding:12px 15px}}

/* Portrait sur la page contact */
.contact-portrait{display:block;width:100%;max-width:320px;height:320px;object-fit:cover;object-position:center 34%;border-radius:16px;margin:16px 0 20px;}

/* Navigation responsive: prevents desktop menu labels from wrapping */
.header .headrow{gap:12px;max-width:1380px}
.header .brand{flex:0 0 auto}
.header .brand img{width:130px;height:62px}
.header .nav{gap:clamp(9px,1.15vw,18px);min-width:0}
.header .nav a{white-space:nowrap;font-size:clamp(.78rem,.92vw,.9rem)}
.header .headrow>.btn.small{flex:0 0 auto;white-space:nowrap;padding:9px 11px}
@media(max-width:1180px){.header .headrow>.btn.small{display:none}.header .brand img{width:115px}}
@media(max-width:990px){.header .headrow{min-height:66px}.header .brand img{width:130px;height:55px}.header .mobile-toggle{display:block}.header .nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:18px 25px;box-shadow:0 14px 20px #0b2b4822;flex-direction:column;align-items:stretch;gap:12px;max-height:calc(100vh - 80px);overflow-y:auto}.header .nav.open{display:flex}.header .nav a{font-size:1rem;white-space:nowrap}.header .headrow>.btn.small{display:none}}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.pac-realisation .pac-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}
.pac-realisation figure{margin:0;border-radius:14px;overflow:hidden;background:#f3f7f9;box-shadow:0 2px 12px #0c2a4d14}
.pac-realisation figure img{display:block;width:100%;height:250px;object-fit:cover}
.pac-realisation figcaption{font-size:.85rem;padding:10px 12px;color:#34485a}
@media(max-width:760px){.pac-realisation .pac-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pac-realisation figure img{height:180px}}
@media(max-width:450px){.pac-realisation .pac-photo-grid{grid-template-columns:1fr}.pac-realisation figure img{height:auto;max-height:440px;object-fit:contain}}

.polytropic-photo{max-width:600px;margin:22px auto 30px;text-align:center;background:#fff;border:1px solid #e5edf3;border-radius:18px;overflow:hidden;box-shadow:0 6px 24px #092a4812}.polytropic-photo img{width:100%;max-height:400px;object-fit:contain;display:block}.polytropic-photo figcaption{padding:12px 18px;color:#43566a;font-size:.9rem}

/* Logos marques installation et PAC piscine */
.gbg-brand-section .section-head{max-width:920px}.gbg-brand-figure{margin:22px auto 28px;max-width:1000px;text-align:center;background:#fff;border:1px solid #e9eef4;border-radius:18px;padding:20px;box-shadow:0 8px 28px rgba(15,42,70,.05)}.gbg-brand-figure img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain}.gbg-brand-figure figcaption{font-size:.9rem;color:#506276;margin-top:8px}@media(max-width:700px){.gbg-brand-figure{padding:9px;border-radius:12px}}

/* Marques présentées en bas de page */
.gbg-bottom-brands{padding:24px 0 28px;background:#fff;border-top:1px solid #e6ebef;text-align:center}
.gbg-bottom-brands .gbg-bottom-title{font-size:1.05rem;font-weight:700;color:#183e59;margin:0 0 16px}
.gbg-bottom-brands .gbg-bottom-logos{display:flex;align-items:center;justify-content:center;gap:30px;flex-wrap:wrap}
.gbg-bottom-brands .gbg-bottom-logos img{display:block;width:auto;object-fit:contain;max-width:100%;height:auto}
.gbg-bottom-brands .gbg-logo-clim{width:min(480px,95vw)!important}
.gbg-bottom-brands .gbg-logo-piscine{width:min(245px,75vw)!important}
.gbg-bottom-brands .gbg-bottom-note{font-size:.78rem;color:#667884;margin:12px 0 0}
@media(max-width:650px){.gbg-bottom-brands .gbg-bottom-logos{flex-direction:column;gap:10px}.gbg-bottom-brands .gbg-logo-clim{width:min(360px,95vw)!important}.gbg-bottom-brands .gbg-logo-piscine{width:min(220px,75vw)!important}}

/* Correctif affichage des cartes de prestations sur mobile */
@media(max-width:760px){.home-service{min-width:0;grid-template-columns:minmax(102px,32%) minmax(0,1fr)}.home-service>div{min-width:0;overflow-wrap:break-word}.home-service img{display:block;width:100%;height:100%;object-fit:cover}.home-service .home-more{display:inline-block}}

/* Ajustements suite audit 15 octobre 2026 */
.page-intro .btn.outline{color:#fff;border-color:rgba(255,255,255,.8)}
.page-intro .btn.outline:hover,.page-intro .btn.outline:focus-visible{color:#06284e;background:#fff}
.page-intro .breadcrumbs,.page-intro .breadcrumbs a{color:#eaf5fc}
.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-hero{min-height:unset}
.gbg-founder{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(22px,5vw,64px);align-items:center}
.gbg-founder-photo{width:100%;height:auto;max-height:550px;object-fit:cover;object-position:center 28%;border-radius:22px;display:block}
.gbg-founder h2{margin:0 0 4px}
.gbg-founder .founder-role{color:#0a669a;font-weight:750;margin:0 0 20px}
@media(max-width:760px){.home-service-grid{grid-template-columns:1fr}.gbg-founder{grid-template-columns:1fr}.gbg-founder-photo{max-height:450px;object-position:center 25%}.page-intro{padding:48px 0}}
@media(max-width:420px){.home-service{grid-template-columns:minmax(110px,38%) minmax(0,1fr)}.home-service h3{overflow-wrap:anywhere}}
