/* Direction éditoriale : bleu nuit, bronze et grandes compositions photographiques. */
:root{--noble-ink:#102431;--noble-blue:#123b53;--noble-bronze:#aa7a43;--noble-paper:#f6f7f8;--ink:#102431;--accent:#aa7a43}body,.service-page{background:#f6f7f8;background-image:none;color:#102431;font-family:Arial,Helvetica,sans-serif}.eyebrow{font-size:11px!important;letter-spacing:2.5px;line-height:1.8}header{padding:17px 5%;background:#fff;border-bottom:1px solid #dce3e7;gap:30px}.brand-logo{width:134px}header nav{gap:30px;font-size:13px;letter-spacing:.2px}header .phone{background:#102d40;border-color:#102d40;border-radius:1px;padding:14px 22px;font-size:13px;letter-spacing:.3px}.service-menu>div{border-radius:0;border-top:2px solid #aa7a43}.service-menu>div a{border-radius:0}.service-menu summary:after{color:#aa7a43}.button,.service-page .button,.hero .button,.contact .button{border-radius:1px;background:#aa7a43;color:#fff;box-shadow:none;padding:17px 26px;font-size:13px;font-weight:700;letter-spacing:.4px}.button:hover,.service-page .button:hover,.hero .button:hover,.contact .button:hover{background:#8b6032;color:white;transform:none;filter:none}.hero .button.outline{border:1px solid #a4b1b9;background:transparent}.hero .button.outline:hover{background:white;color:#102d40}.hero{min-height:760px;border-radius:0}.hero-copy{padding:78px 8%;max-width:1500px;margin:auto}.hero:after{background:linear-gradient(90deg,#091e2bed 0%,#091e2bc9 38%,#091e2b38 78%)}.hero .hero-copy>h1.noble-home-title{font:400 clamp(54px,5.8vw,86px)/1.04 Georgia,'Times New Roman',serif;letter-spacing:-2px;margin:0 0 28px;max-width:650px;color:white}.noble-home-title em{color:#d1aa78;font-weight:400;font-family:Georgia}.hero .noble-home-location{font:400 18px/1.6 Arial;letter-spacing:.3px;color:#dce7ed;margin:0 0 18px}.hero-line{background:#bc955f;width:55px;height:1px;margin:25px 0}.hero .eyebrow{color:#d6b688;font-size:11px}.hero-trades{font-size:14px;letter-spacing:.7px;color:#d7e1e8;line-height:1.8}.hero .actions{margin-top:30px;gap:20px}.hero .discover{font-size:12px;color:#d9e4ea;margin-top:35px;border-bottom-color:#6c7d88}.animation-controls span{background:#102533c9;border-radius:0;font-size:12px;letter-spacing:.3px;padding:8px 14px}.animation-controls button{font-size:12px;border-radius:0;padding:10px 16px}.section{padding:95px 8%}.section h2,.about h2,.section-head h2,.service-heading h2,.faq-section h2,.related h2,.gallery-heading h2,.service-cta h2,.ads-quote h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.4px;line-height:1.12}.section h2{font-size:clamp(38px,4vw,58px)}.about{background:#fff}.about>.eyebrow,.section-head .eyebrow,.contact .eyebrow,.service-heading .eyebrow,.faq-section .eyebrow,.related .eyebrow,.gallery-heading .eyebrow,.ads-quote .eyebrow{color:#8d6233}.about-grid{grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-display h2{font-size:42px;max-width:540px;margin:0 0 30px}.about-portrait{margin:0}.about-portrait img{width:100%;height:310px;object-fit:cover;display:block}.about-portrait figcaption{font-size:11px;color:#6a7a86;margin-top:10px}.about-grid .large{font-size:21px;color:#233e50;line-height:1.7}.about-grid>div>p{font-size:16px;line-height:1.85}.steps div{padding:20px 0;border-top-color:#dbe3e8}.steps b{font-size:13px;letter-spacing:.6px}.steps p{font-size:14px;line-height:1.8}#prestations{background:#edf1f4}.section-head{margin-bottom:55px}.section-head>p{font-size:16px;line-height:1.85}.services{grid-template-columns:repeat(2,1fr);gap:50px 40px}.services article{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;overflow:visible}.services .service-thumb{width:100%;height:320px;object-fit:cover;margin:0 0 24px}.services article:nth-child(even){transform:translateY(50px)}.services .number{background:transparent;border:1px solid #b7c7d0;color:#406276;border-radius:0;padding:6px 9px;font-size:11px}.services h3{font:400 29px/1.2 Georgia;margin:18px 0 12px;letter-spacing:-.7px}.services p{font-size:15px;line-height:1.85;color:#5a6f7d;max-width:500px}.services .tag{font-size:12px;color:#738694}.service-card-link{font-size:12px;letter-spacing:.4px;color:#234d66!important;border-bottom-color:#9eafb9;padding:8px 0}.services{padding-bottom:50px}.strengths{background:#102b3e}.strengths h2{max-width:650px;margin-left:auto;margin-right:auto;color:white}.strengths .eyebrow{color:#c8a16c}.strength-grid{gap:0;margin-top:45px}.strength-grid>div{background:none;border:0;border-left:1px solid #557085;border-radius:0;padding:25px 30px}.strength-grid>div:first-child{border-left:0}.strength-grid b{font:400 23px/1.3 Georgia}.strength-grid p{font-size:13px;color:#b4c6d2;line-height:1.8}.zone{background:#f6f7f8;gap:100px}.zone h2{font-size:60px}.zone p{font-size:16px;line-height:1.85}.towns{border-left:1px solid #aa7a43}.towns strong{font-size:18px;letter-spacing:4px}.towns strong span{font:400 80px Georgia;color:#aa7a43}.towns>div span{background:#e7edf1;border-radius:0;padding:8px 14px;font-size:13px}.contact{background:#e7edf1;gap:90px}.contact>div p{font-size:16px;line-height:1.85}.contact form{border:0;border-radius:0;box-shadow:none;background:white;padding:35px}.contact input,.contact textarea,.ads-quote input,.ads-quote textarea{border-radius:0;border-color:#cad6df;background:#f9fbfc}.contact-number{font-size:36px;font-weight:400;letter-spacing:-.5px}.contact .email{font-size:14px}.contact form h3{font:400 26px Georgia}.form-note{font-size:12px}.crumb{font-size:11px;padding:22px 5%;letter-spacing:.4px}.service-page{--service-accent:#123b53!important}.service-hero{margin:0 3%;border-radius:0;min-height:660px;padding:65px 7%}.service-hero:after{background:linear-gradient(90deg,#0a2434ed 0%,#0a2434cf 34%,#0a24344d 76%,#0a243417)}.service-hero h1{font:400 clamp(48px,5.2vw,76px)/1.06 Georgia,'Times New Roman',serif;letter-spacing:-2px;max-width:650px}.service-intro{max-width:650px}.service-intro .eyebrow{color:#d3b282}.service-lead{font-size:17px;line-height:1.85;max-width:515px;color:#d6e2eb}.ads-location{font-size:14px;font-weight:400;color:#d3b282;letter-spacing:.3px}.service-call{font-size:14px;font-weight:400;border-bottom-color:#98a7b2}.service-area{font-size:12px;letter-spacing:.4px;color:#a6bdcd}.service-hero figure figcaption{border-radius:0;font-size:10px;background:#102533c9}.service-strip{margin:15px 6% 0;padding:23px 0;border-bottom:1px solid #d0dce4;font-size:12px;letter-spacing:.2px}.service-strip span:before{background:none;color:#987147;border-radius:0;font-size:14px;width:17px}.work-section{padding:90px 8%;gap:80px}.service-heading h2,.faq-section h2,.related h2,.gallery-heading h2{font-size:45px}.work-grid{gap:0 35px}.work-grid article{border:0;border-top:1px solid #c5d3dc;border-radius:0;box-shadow:none;background:transparent;padding:28px 0 25px}.work-grid article:hover{transform:none;box-shadow:none}.work-grid article>span{font:italic 28px Georgia;background:none;width:auto;height:auto;color:#a47a47;border-radius:0}.work-grid h3{font:400 26px/1.2 Georgia;letter-spacing:-.4px;margin-top:19px}.work-grid p{font-size:15px;line-height:1.85;color:#5d7382}.focus-section{margin:0 4%;border-radius:0;background:#102b3e;padding:65px 6%;gap:90px}.focus-title>span{font-size:10px;letter-spacing:2.2px;color:#d3b282}.focus-title h2{font:400 47px/1.1 Georgia;letter-spacing:-1.6px}.focus-body>p{font-size:17px;line-height:1.9;color:#ccdbe5}.prepare{border:1px solid #577184;border-radius:0;background:none;padding:25px 30px}.prepare b{font-size:14px;font-weight:400;letter-spacing:.4px}.prepare ul{font-size:13px;line-height:1.8}.faq-section{padding:95px 8%;gap:80px}.faq-list details{border:0;border-bottom:1px solid #c6d5df;border-radius:0;background:transparent;padding:25px 0;margin:0;box-shadow:none}.faq-list details[open]{background:transparent;border-color:#a4bac9}.faq-list summary{font-size:16px;font-weight:400;letter-spacing:.1px}.faq-list summary:after{color:#a77d4a;font-size:23px}.faq-list p{font-size:14px;line-height:1.9}.service-cta{border:0;border-radius:0;background:#e0e8ee;margin:0 5% 80px;padding:50px 6%;gap:40px}.service-cta h2{font-size:46px}.service-cta .eyebrow{color:#8d6233}.service-cta p{font-size:15px}.cta-phone{font-size:21px;font-weight:400}.project-gallery{padding:0 8% 85px}.gallery-heading{margin-bottom:40px}.gallery-grid{gap:25px}.gallery-card{border:0;border-radius:0;box-shadow:none;background:none}.gallery-card:hover{transform:none}.gallery-card img{height:310px}.gallery-card>span{padding:18px 0 4px;font:400 22px/1.3 Georgia;letter-spacing:-.4px}.gallery-card>small{padding:0;color:#658091;font-size:11px;letter-spacing:.4px}.gallery-dialog{border-radius:2px;background:#0b2232}.gallery-close,.gallery-bottom button{border-radius:0}.ads-quote{background:white;border:0;border-radius:0;padding:55px 6%;margin:0 5% 85px;gap:70px}.ads-quote h2{font-size:43px}.ads-quote form{background:#f0f4f7;border:0;border-radius:0;padding:30px}.ads-direct-call{color:#183f59;font-size:29px;font-weight:400}.ads-quote label{font-size:13px}.related{padding:0 8% 85px}.related>div{gap:25px}.related a{border:0;border-radius:0;background:none;box-shadow:none}.related a:hover{background:none;transform:none;box-shadow:none}.related a img{height:150px}.related a span{padding:17px 0 0;font:400 20px/1.25 Georgia;letter-spacing:-.3px}.related a small{padding:0;font-size:11px;letter-spacing:.3px;color:#748b9a}footer{background:#0b2130;padding:50px 8%;font-size:12px;color:#b6c9d6}.brand span{color:#cda779}footer>.brand{font-size:24px;color:#e7edf1}.mobile-contact a{border-radius:0;border-color:#173f58;color:#173f58;font-size:13px}.mobile-contact a:last-child{background:#173f58}.mobile-contact{box-shadow:0 -3px 20px #102a4017}.service-page .phone{background:#102d40}.section-head h2{font-size:54px}.hero-logo img{filter:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9f7949;outline-offset:4px}@media(min-width:1600px){main{max-width:1680px;margin:auto}.hero{max-width:none}.section{padding-left:9%;padding-right:9%}}@media(max-width:1000px){.about-grid{gap:45px}.services .service-thumb{height:280px}.work-section{grid-template-columns:1fr;gap:30px}.focus-section{gap:40px}.strength-grid>div{padding:25px 20px}.related>div{gap:20px}.ads-quote{gap:35px}.section{padding:75px 7%}.hero .hero-copy>h1.noble-home-title{font-size:68px}.service-hero h1{font-size:60px}}@media(max-width:650px){header{padding:14px 5%;gap:18px}.brand-logo{width:110px}header nav{font-size:12px;gap:8px 16px}header .phone{padding:12px 14px;font-size:12px}.hero{min-height:720px}.hero-copy{padding:45px 7% 180px}.hero .hero-copy>h1.noble-home-title{font-size:52px;letter-spacing:-1.7px;line-height:1.06;margin-bottom:24px}.hero .noble-home-location{font-size:16px}.hero-trades{font-size:13px;max-width:270px}.hero .actions{gap:15px}.hero:after{background:linear-gradient(180deg,#091e2be8,#091e2bba 45%,#091e2b30 85%)}.button{padding:16px 20px;font-size:12px}.section{padding:55px 7%}.section h2{font-size:38px}.about-grid{grid-template-columns:1fr;gap:30px}.about-display h2{font-size:36px}.about-portrait img{height:260px}.about-grid .large{font-size:19px}.services{grid-template-columns:1fr;gap:38px;padding-bottom:0}.services article:nth-child(even){transform:none}.services .service-thumb{height:260px}.services h3{font-size:27px}.section-head{margin-bottom:35px}.section-head h2{font-size:40px}.strength-grid{grid-template-columns:1fr}.strength-grid>div{border:0;border-top:1px solid #416074;padding:23px 0}.strength-grid>div:first-child{border-top:0}.strength-grid b{font-size:24px}.zone{gap:30px}.zone h2{font-size:44px}.towns{padding:12px 20px}.contact{gap:30px}.contact form{padding:25px}.contact-number{font-size:29px}.crumb{padding:18px 6%}.service-hero{margin:0 4%;min-height:650px;padding:35px 7% 180px;border-radius:0}.service-hero h1{font-size:43px;letter-spacing:-1.4px}.service-hero:after{background:linear-gradient(180deg,#0a2434ed,#0a2434bf 48%,#0a243435 80%)}.service-lead{font-size:15px;line-height:1.8}.ads-location{font-size:13px}.service-strip{font-size:11px;gap:12px}.work-section{padding:55px 7%;gap:25px}.work-grid{grid-template-columns:1fr}.service-heading h2,.faq-section h2,.related h2,.gallery-heading h2{font-size:37px}.work-grid article{padding:24px 0}.work-grid h3{font-size:26px}.focus-section{padding:40px 7%;margin:0 4%;grid-template-columns:1fr;gap:25px}.focus-title h2{font-size:37px}.focus-body>p{font-size:16px}.prepare{padding:22px}.faq-section{padding:55px 7%;gap:25px}.service-cta{margin:0 4% 50px;padding:35px 7%;gap:25px}.service-cta h2{font-size:36px}.project-gallery{padding:0 7% 55px}.gallery-heading{margin-bottom:25px}.gallery-card img{height:300px}.gallery-card>span{font-size:23px}.gallery-grid{gap:30px}.ads-quote{grid-template-columns:1fr;gap:25px;padding:35px 7%;margin:0 4% 55px}.ads-quote h2{font-size:35px}.ads-quote form{padding:23px}.related{padding:0 7% 55px}.related>div{grid-template-columns:1fr 1fr;gap:25px 15px}.related a img{height:115px}.related a span{font-size:19px}.related a small{font-size:10px}footer{padding:40px 7%}}

/* Discreet logo entrance, once on page load. */
@keyframes jd-logo-entrance{from{opacity:0;transform:translateY(14px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}
header .brand-logo .logo-only{animation:jd-logo-entrance 1800ms cubic-bezier(.22,1,.36,1) 350ms both}
@media(prefers-reduced-motion:reduce){header .brand-logo .logo-only{animation:none}}

.services h3 .service-title-link{color:inherit;text-decoration:none;transition:color .2s}.services h3 .service-title-link:hover{color:var(--bronze,#aa7a43);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.services h3 .service-title-link:focus-visible{outline:2px solid #aa7a43;outline-offset:6px}

.color-section{padding:70px 7%;max-width:1500px;margin:auto}.color-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.color-heading h2{font-size:clamp(32px,4vw,50px);margin:10px 0}.color-controls{display:flex;gap:8px}.color-controls button{background:transparent;border:1px solid #b7c1c8;padding:12px 16px;color:#102431;cursor:pointer;font-size:14px}.color-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 18px}.color-track figure{flex:0 0 210px;margin:0;scroll-snap-align:start}.color-track img{width:210px;height:210px;object-fit:cover}.color-track figcaption{font-size:20px;margin-top:14px;color:#102431}.color-note{font-size:14px;color:#637785;margin-top:20px}.color-note a{text-decoration:underline}@media(max-width:650px){.color-section{padding:45px 7%}.color-heading{display:block}.color-controls{margin-top:20px}.color-track figure{flex-basis:170px}.color-track img{width:170px;height:170px}}

.color-section>h2{font-size:clamp(32px,4vw,50px)}.color-group{margin-top:40px}.color-heading h3{font-family:Georgia,serif;font-size:28px;font-weight:400}.color-track img{border-radius:50%}

.insulation-steps{padding:70px 7%;max-width:1500px;margin:auto}.insulation-steps>h2{font-size:clamp(34px,4vw,52px);margin:15px 0 25px}.insulation-intro{max-width:760px;font-size:18px;line-height:1.8;color:#637785}.insulation-process-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:40px}.insulation-process>h3{font-size:30px;font-weight:400;font-family:Georgia,serif;line-height:1.25;margin:0 0 25px}.insulation-process ol{list-style:none;counter-reset:iso;padding:0;margin:0}.insulation-process li{counter-increment:iso;position:relative;padding:24px 0 24px 46px;border-top:1px solid #dbe2e6}.insulation-process li:before{content:counter(iso,decimal-leading-zero);position:absolute;left:0;top:27px;color:#aa7a43;font-size:16px}.insulation-process h4{font-size:18px;margin:0 0 12px;line-height:1.4}.insulation-process p,.insulation-detail p{font-size:16px;line-height:1.8;color:#637785;margin:0}.insulation-detail{padding:28px 32px;background:#eaf0f3;margin-top:35px;border-left:3px solid #aa7a43}.insulation-detail h3{font-size:22px;margin:0 0 12px}.insulation-note{font-size:14px;color:#637785;line-height:1.7;margin-top:22px}@media(max-width:700px){.insulation-steps{padding:45px 7%}.insulation-process-grid{grid-template-columns:1fr;gap:32px}.insulation-detail{padding:24px}}

.isolation-more{border-top:1px solid #dbe2e6;margin-top:8px}.isolation-more summary{cursor:pointer;padding:18px 0;font-size:16px;font-weight:600;color:#102431}.isolation-more summary:hover{color:#aa7a43}.isolation-more[open] summary{margin-bottom:8px}.isolation-extra{margin-top:28px}.isolation-extra .insulation-detail{margin-top:0}.isolation-extra>p{font-size:16px;line-height:1.8;color:#637785}

/* Clear contact hierarchy and quieter editorial rhythm. */
.hero .noble-home-title{max-width:820px;font-size:clamp(48px,5.4vw,78px);line-height:1.04}
.hero .noble-home-title em{display:block;font-size:.52em;line-height:1.25;margin-top:24px;letter-spacing:-.5px}
.hero .noble-home-location{font-size:20px;margin-top:22px}
.hero .hero-trades{max-width:540px;line-height:1.65;font-size:18px}
.call-primary{white-space:normal;line-height:1.4}
.hero .actions,.service-hero .actions{align-items:center;gap:22px}
.service-hero h1{max-width:780px;font-size:clamp(42px,4.8vw,68px);line-height:1.07}
.service-hero .service-lead{max-width:580px;font-size:18px;line-height:1.75}
.service-hero .service-call{font-size:16px;white-space:nowrap}
.services article{transition:box-shadow .25s,background .25s;border:1px solid #dde5ea;background:#f2f5f7;padding-bottom:32px}
.services article:hover{background:#fff;box-shadow:0 16px 45px #1024310c}
.services article .number{display:none}
.services article h3{margin-top:28px;line-height:1.2}
.services article p{font-size:16px;line-height:1.8;max-width:560px}
.services article:nth-child(even){transform:none}
.services{gap:32px}
.work-grid article{border-top:2px solid #b98b55;background:transparent}
.gallery-card img{aspect-ratio:4/3;object-fit:cover}
.gallery-card>span{font-size:clamp(21px,2vw,27px);line-height:1.35}
.gallery-heading h2{font-size:clamp(34px,4vw,50px)}
.prepare summary{cursor:pointer;font-size:16px;font-weight:600;color:#102431}
.prepare ul{margin-top:18px}
.service-cta .button{min-width:180px;text-align:center}
.contact .contact-number,.ads-direct-call{font-variant-numeric:tabular-nums}
.mobile-contact a:first-child{background:#102b3e;color:#fff;border-color:#102b3e}
.mobile-contact a:last-child{background:#fff;color:#102b3e;border-color:#102b3e}
.button:focus-visible,.service-title-link:focus-visible,.phone:focus-visible{outline:3px solid #bd915f;outline-offset:5px}
@media(max-width:650px){
.hero .noble-home-title{font-size:48px;letter-spacing:-1.5px}
.hero .noble-home-title em{font-size:27px;margin-top:20px}
.hero .noble-home-location{font-size:17px}
.hero .hero-trades{font-size:16px;max-width:340px}
.hero .actions,.service-hero .actions{align-items:stretch;gap:14px}
.hero .actions .button,.service-hero .actions .call-primary{width:100%;text-align:center}
.service-hero .actions{flex-direction:column}
.service-hero .service-call{align-self:flex-start}
.service-hero h1{font-size:43px;letter-spacing:-1.4px}
.services{gap:24px}.services article{padding-bottom:26px}
.services article h3{font-size:30px;margin-top:22px}
.service-strip{flex-wrap:wrap;gap:12px}.service-strip span{font-size:14px}
.gallery-card img{height:auto;aspect-ratio:4/3}
}
@media(prefers-reduced-motion:reduce){.services article{transition:none}}

/* Carte du secteur d’intervention */
.zone{align-items:center}.sector-map-card{min-width:0;background:#fff;border:1px solid #dce3e7;box-shadow:0 16px 40px #10243108}.sector-map-title{padding:24px 26px;display:flex;flex-direction:column;gap:8px}.sector-map-title>span{font-size:10px;letter-spacing:2px;color:#8d6233}.sector-map-title strong{font-size:18px;font-weight:400;color:#102431}.sector-map{height:360px;width:100%;position:relative;z-index:0;background:#e8edf0}.sector-map .map-fallback{padding:35px;font:15px/1.7 Arial;color:#526572}.sector-map-footer{padding:18px 24px;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;font-size:12px;line-height:1.6}.sector-map-footer>span{color:#526572}.sector-map-footer i{display:inline-block;width:10px;height:10px;background:#aa7a4355;border:1px solid #aa7a43;border-radius:50%;margin-right:8px}.sector-map-footer a{color:#123b53;border-bottom:1px solid #c5d0d7}.sector-map .leaflet-control-attribution{font-size:10px}.sector-map .leaflet-control-attribution a{color:#123b53}.sector-map .leaflet-control-zoom a{color:#102431}.sector-map .leaflet-popup-content{font:13px/1.6 Arial}.sector-map .leaflet-tooltip{font:12px Arial;color:#102431;border-color:#dce3e7;box-shadow:0 2px 8px #10243115}@media(max-width:700px){.sector-map{height:330px}.sector-map-title{padding:20px}.sector-map-footer{padding:16px 20px}}

.sector-map-static{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#e8edf0;display:block}.sector-map-live{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}.sector-map-live.map-ready{opacity:1;pointer-events:auto}
