:root{--bg:#f6f5f1;--ink:#182128;--dark:#121c23;--muted:#657078;--line:#dbddd8;--accent:#f5783b;--soft:#ebe9e2;--white:#fff;--radius:3px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--bg);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}p{line-height:1.8}h1{font-size:clamp(46px,5.6vw,78px);line-height:1.03;letter-spacing:-3.5px}h2{font-size:clamp(34px,3.8vw,52px);line-height:1.1;letter-spacing:-2px;margin-bottom:22px}h3{font-size:24px;letter-spacing:-.7px;line-height:1.2}.wrap{max-width:1280px;width:calc(100% - 80px);margin:auto}.section{padding:100px 0}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:23px}.eyebrow:before{content:'';width:7px;height:7px;background:var(--accent)}.muted{color:var(--muted)}.button{border:1px solid transparent;background:var(--accent);padding:18px 24px;display:inline-flex;justify-content:center;align-items:center;gap:30px;font-size:12px;font-weight:700;line-height:1.3;min-height:50px;transition:background .2s}.button:hover{background:#ff915c}.button.outline{border-color:#79848a;background:transparent}.button.outline:hover{background:#ffffff12}.button.light{background:white;color:var(--ink)}.button.dark{background:var(--ink);color:white}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:13px}.skip{position:fixed;top:-100px;left:20px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}.topline{background:var(--dark);color:#c4cccf;font-size:10px;letter-spacing:1.4px;padding:10px 0}.topline .wrap{display:flex;justify-content:space-between}.topline a{color:#fff}header{background:var(--bg);position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand svg{width:42px;height:42px;color:var(--ink)}.brand strong{font-size:18px;font-weight:800;letter-spacing:-.7px}.brand small{display:block;letter-spacing:2px;font-size:8px;margin-top:6px}.desktop-nav{display:flex;align-items:center;gap:26px;font-size:12px}.desktop-nav>a,.nav-disclosure>summary{padding:33px 0;font-size:12px;cursor:pointer}.desktop-nav a[aria-current=page]{color:#b64c1e}.nav-disclosure{position:static}.nav-disclosure>summary{list-style:none}.nav-disclosure>summary:after{content:'⌄';padding-left:8px}.mega{position:absolute;top:86px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 12px 25px #0001;padding:32px 0}.mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 35px}.mega a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.mega small{display:block;color:var(--muted);margin-top:8px;font-size:10px}.nav-phone{font-size:13px;font-weight:700;white-space:nowrap}.menu-toggle{display:none}.mobile-nav{display:none}.hero{background:var(--dark);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1.06fr;min-height:680px;gap:70px;align-items:center;padding-top:52px;padding-bottom:65px}.hero .eyebrow{color:#c8d1d5}.hero h1{margin-bottom:24px}.hero h1 em{font-style:normal;color:#ff9259}.hero .lead{color:#c3cdd2;max-width:485px;font-size:15px;line-height:1.9}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.hero-bottom{display:flex;gap:28px;font-size:11px;color:#c3cdd2;align-items:center;margin-top:32px}.hero-bottom b{color:white;display:block;margin-bottom:6px;font-size:13px}.hero-visual{height:560px;position:relative;padding:0 25px 25px 0}.hero-visual:before{content:'';position:absolute;width:65%;height:72%;bottom:0;right:0;background:var(--accent)}.hero-photo{height:100%;width:100%;object-fit:cover;object-position:50% 47%;position:relative}.hero-stamp{position:absolute;bottom:50px;left:-30px;background:var(--bg);color:var(--ink);padding:24px 28px;width:240px;box-shadow:0 10px 40px #0003}.hero-stamp small{font-size:9px;letter-spacing:1.5px}.hero-stamp strong{display:block;font-size:25px;font-weight:500;letter-spacing:-1px;line-height:1.15;margin-top:12px}.visual-caption{position:absolute;right:38px;top:18px;color:white;background:#14222bd9;padding:10px 13px;font-size:9px;letter-spacing:1px}.proof-row{display:grid;grid-template-columns:repeat(4,1fr);padding:29px 0;border-bottom:1px solid var(--line)}.proof-row div{padding:0 25px;border-right:1px solid var(--line)}.proof-row div:first-child{padding-left:0}.proof-row div:last-child{border-right:0}.proof-row b{display:block;font-size:13px;margin-bottom:7px}.proof-row span{font-size:11px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.section-head h2{margin-bottom:0}.section-head>p{max-width:340px;font-size:14px;color:var(--muted);margin-bottom:3px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 24px}.service-card{border-bottom:1px solid #bfc5c4;padding-bottom:25px}.card-photo{height:270px;overflow:hidden;position:relative;background:var(--soft)}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover img{transform:scale(1.035)}.card-n{position:absolute;bottom:0;left:0;background:var(--accent);padding:12px 17px;font-size:12px;font-weight:bold}.card-body{padding:25px 0 0}.card-body h3{font-size:23px;display:flex;justify-content:space-between;gap:15px}.card-body p{font-size:13px;color:var(--muted);margin-bottom:17px}.card-body small{font-size:10px;text-transform:uppercase;letter-spacing:1px}.dark-section{background:var(--dark);color:white}.dark-section .muted{color:#b4c0c7}.compare-grid{display:grid;grid-template-columns:.75fr 1.4fr;gap:65px;align-items:center}.compare-copy p{font-size:14px;color:#bdc8ce}.compare-copy .hint{font-size:11px;color:#fff;display:flex;gap:14px;align-items:center;margin:26px 0}.compare-copy .hint b{border:1px solid #566873;border-radius:50%;padding:13px}.compare{position:relative;aspect-ratio:4/3;overflow:hidden;--position:50%;background:#2c3a42;isolation:isolate}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}.compare .before-photo{clip-path:inset(0 calc(100% - var(--position)) 0 0);z-index:1}.compare .divider{position:absolute;left:var(--position);top:0;bottom:0;width:2px;background:white;z-index:3;transform:translateX(-50%);pointer-events:none}.compare .knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;background:#fff;color:var(--ink);border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 20px #0004;font-size:22px}.compare input{position:absolute;inset:0;z-index:4;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}.compare:focus-within{outline:3px solid var(--accent);outline-offset:5px}.compare-label{position:absolute;z-index:2;top:18px;padding:9px 13px;background:#14232bcc;font-size:10px;letter-spacing:1px;color:#fff;pointer-events:none}.compare-label.before{left:18px}.compare-label.after{right:18px;background:var(--accent);color:var(--ink)}.compare-foot{display:flex;justify-content:space-between;font-size:11px;color:#b6c3cb;padding-top:15px;gap:20px}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.company-photo{position:relative;padding:0 40px 40px 0}.company-photo>img{width:100%;height:570px;object-fit:cover}.company-label{position:absolute;right:0;bottom:0;background:var(--accent);padding:32px;width:230px;font-size:26px;line-height:1.15;letter-spacing:-1px}.company-copy>p{font-size:14px;color:var(--muted)}.checklist{list-style:none;padding:0;margin:25px 0 30px}.checklist li{padding:13px 0 13px 26px;position:relative;font-size:13px;border-bottom:1px solid var(--line);line-height:1.5}.checklist li:before{content:'•';position:absolute;left:0;color:#bc501f}.soft-section{background:var(--soft)}.gallery-tools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.filter{border:1px solid #b8bfc0;background:transparent;padding:12px 18px;font-size:11px;border-radius:30px}.filter[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.project{margin:0}.photo-open{background:#d0d5d5;border:0;padding:0;position:relative;width:100%;text-align:left;overflow:hidden;cursor:zoom-in}.photo-open img{width:100%;height:330px;object-fit:cover;transition:transform .4s}.photo-open:hover img{transform:scale(1.035)}.photo-open .expand{position:absolute;right:14px;bottom:14px;background:white;width:36px;height:36px;display:grid;place-items:center}.project figcaption{padding:17px 0 8px}.project figcaption span{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:#9c4a24}.project h3{font-size:18px;margin:10px 0}.center-link{margin-top:38px;text-align:center}.zones-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #4a5861;border-bottom:1px solid #4a5861}.zone{padding:35px;border-right:1px solid #4a5861;transition:background .2s}.zone:first-child{padding-left:0}.zone:last-child{border:0}.zone:hover{background:#ffffff08}.zone small{color:#f9a579;font-size:10px;letter-spacing:2px}.zone h3{font-size:38px;margin:24px 0 14px;letter-spacing:-1.5px}.zone p{font-size:13px;color:#b8c5ce;margin-bottom:25px}.zone span{font-size:12px}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-item{border-top:1px solid #b8c1c3;padding-top:24px}.process-item b{font-size:12px;color:#bc501f}.process-item h3{font-size:21px;margin:25px 0 15px}.process-item p{font-size:13px;color:var(--muted)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq-items details{border-top:1px solid var(--line);padding:23px 0}.faq-items summary{font-size:16px;line-height:1.5;cursor:pointer;list-style:none;padding-right:35px;position:relative}.faq-items summary:after{content:'+';position:absolute;right:0;top:0;font-size:23px;color:#b54f24}.faq-items details[open] summary:after{content:'−'}.faq-items p{color:var(--muted);font-size:14px;margin:15px 0 0}.cta-band{background:var(--accent);padding:55px 0}.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta-band h2{font-size:40px;margin:0 0 12px}.cta-band p{font-size:14px;margin:0}.cta-actions{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0}footer{background:var(--dark);color:#b5c2c9;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:35px}.footer-grid h3{font-size:13px;color:#fff;margin-bottom:23px;letter-spacing:0}.footer-grid a:not(.brand){display:block;font-size:12px;line-height:1.6;margin:10px 0}.footer-grid .brand{color:white;margin-bottom:25px}.footer-grid .brand svg{color:white}.footer-grid p{font-size:12px;max-width:270px}.footer-bottom{border-top:1px solid #37434b;margin-top:45px;padding-top:25px;display:flex;justify-content:space-between;font-size:10px;gap:25px}.mobile-bar{display:none}.breadcrumbs{font-size:10px;display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);padding:27px 0}.breadcrumbs a{text-decoration:underline}.page-hero{background:var(--soft)}.page-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:28px 0 65px}.page-hero h1{font-size:clamp(44px,4.8vw,66px);letter-spacing:-2.8px;margin:0 0 25px}.page-hero p{font-size:15px;color:var(--muted)}.page-hero img{width:100%;height:430px;object-fit:cover}.page-text{max-width:780px}.page-text p{color:var(--muted);font-size:15px}.page-text h2{font-size:33px;letter-spacing:-1px;margin-top:40px}.article-grid{display:grid;grid-template-columns:1.5fr .75fr;gap:75px;align-items:start}.aside-card{position:sticky;top:120px;background:var(--soft);padding:30px}.aside-card h3{font-size:25px}.aside-card p{font-size:13px;color:var(--muted)}.aside-card .button{width:100%}.related{border-top:1px solid var(--line)}.related .cards{grid-template-columns:repeat(3,1fr)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-details a{display:block}.contact-phone{font-size:35px;letter-spacing:-1px;margin:25px 0 13px}.contact-mail{font-size:14px;overflow-wrap:anywhere}.contact-note{padding:24px 0;border-top:1px solid var(--line);margin-top:30px;font-size:13px;color:var(--muted)}.wizard{background:#fff;padding:36px;border:1px solid var(--line)}.wizard-progress{display:flex;justify-content:space-between;gap:10px;margin-bottom:30px;font-size:10px;color:var(--muted)}.wizard-progress span{flex:1;padding-top:13px;border-top:3px solid #dce1e2}.wizard-progress .active{border-color:var(--accent);color:var(--ink);font-weight:bold}.wizard h3{font-size:27px;margin-bottom:12px}.wizard p{font-size:13px;color:var(--muted)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-size:13px;font-weight:700;margin-bottom:15px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{position:relative;cursor:pointer}.choice input{position:absolute;left:13px;top:14px;accent-color:var(--accent);width:16px;height:16px}.choice span{display:block;padding:18px 14px 18px 39px;border:1px solid #d5dbdd;font-size:12px;line-height:1.5;min-height:58px}.choice input:checked+span{border-color:#bf581f;background:#fff0e7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.form-grid label{font-size:11px;font-weight:bold}.form-grid input,.form-grid textarea,.form-grid select{display:block;width:100%;padding:14px;border:1px solid #c2cacc;background:#fcfcfa;margin-top:9px;border-radius:0;font-size:14px;font-weight:normal}.form-grid textarea{min-height:120px;resize:vertical}.full{grid-column:1/-1}.wizard-actions{display:flex;justify-content:space-between;gap:15px;margin-top:27px}.wizard-actions button:first-child:last-child{margin-left:auto}.error{color:#a12d14!important;font-size:12px;min-height:18px}.form-note{font-size:11px!important;line-height:1.7!important;margin-top:20px}.review{background:var(--bg);padding:22px;font-size:13px;white-space:pre-wrap;line-height:1.75}.review-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hidden,[hidden]{display:none!important}.empty{padding:40px;color:var(--muted)}dialog{border:0;padding:0;background:var(--dark);color:white;width:min(1120px,94vw);max-height:94vh}dialog::backdrop{background:#0a131bef}.lightbox-photo{display:block;width:100%;height:75vh;object-fit:contain}.lightbox-controls{display:flex;gap:12px;align-items:center;padding:15px 20px}.lightbox-controls p{flex:1;font-size:13px;margin:0}.lightbox-controls button{border:1px solid #6e7a81;background:transparent;color:white;padding:10px 15px}.counter{font-size:11px;color:#bdc8ce;white-space:nowrap}:focus-visible{outline:3px solid #d4662e;outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.legal-details{max-width:800px}.legal-details p{font-size:14px;color:var(--muted)}
@media(min-width:1600px){.hero-grid{min-height:760px}.hero-visual{height:610px}}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.desktop-nav{gap:16px}.nav-phone{display:none}.hero-grid{gap:35px}.hero-visual{height:530px}.hero h1{font-size:64px}.hero-stamp{left:-12px;width:210px}.company-grid,.compare-grid{gap:40px}.gallery-grid{gap:20px}.card-photo{height:230px}.footer-grid{gap:25px}.contact-grid{gap:40px}.cta-actions{flex-shrink:1}.proof-row div{padding:0 15px}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.topline .wrap>span{display:none}.topline .wrap{justify-content:center;font-size:9px}.nav{height:73px}.brand strong{font-size:17px}.brand small{font-size:7px}.brand svg{width:36px}.desktop-nav{display:none}.menu-toggle{display:block;border:1px solid #bdc6c8;background:transparent;padding:11px 13px;font-size:12px}.mobile-nav.open{display:block;padding:12px 18px 22px;max-height:calc(100dvh - 110px);overflow:auto}.mobile-nav a{display:block;padding:14px 4px;border-top:1px solid var(--line);font-size:14px}.mobile-nav .button{margin-top:12px;text-align:center}.hero-grid{grid-template-columns:1fr;padding-top:45px;padding-bottom:32px;gap:35px}.hero h1{font-size:61px;letter-spacing:-3px}.hero .lead{font-size:14px;max-width:100%}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.hero-actions{margin:23px 0}.hero-bottom{gap:22px;margin-top:24px}.hero-visual{height:410px;padding:0 14px 14px 0;margin-left:13px}.hero-photo{object-position:50% 52%}.hero-stamp{width:194px;padding:20px;bottom:30px;left:-13px}.hero-stamp strong{font-size:22px}.proof-row{grid-template-columns:1fr 1fr;gap:25px 0;padding:27px 0}.proof-row div{padding:0 15px!important}.proof-row div:nth-child(even){border:0}.proof-row b{font-size:12px}.proof-row span{font-size:10px}.section{padding:65px 0}.section-head{display:block;margin-bottom:30px}.section-head>p{max-width:100%;margin-top:20px}.eyebrow{margin-bottom:18px}h2{letter-spacing:-1.5px}.cards{grid-template-columns:1fr 1fr;gap:28px 18px}.card-photo{height:230px}.card-body h3{font-size:21px}.card-body p{font-size:12px}.card-body{padding-top:20px}.card-body small{font-size:9px}.compare-grid,.company-grid,.faq-grid,.article-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.compare-copy{max-width:540px}.compare{aspect-ratio:4/3}.compare-foot{font-size:10px}.company-photo{padding:0 25px 25px 0}.company-photo>img{height:460px}.company-label{padding:24px;width:200px;font-size:24px}.gallery-grid{grid-template-columns:1fr 1fr;gap:23px 16px}.photo-open img{height:280px}.project h3{font-size:17px}.gallery-tools{gap:8px}.filter{padding:11px 14px;font-size:10px}.zones-grid{grid-template-columns:1fr}.zone,.zone:first-child{padding:27px 0;border-right:0;border-bottom:1px solid #4a5861}.zone h3{font-size:35px;margin:15px 0}.zone p{margin-bottom:18px}.process{grid-template-columns:1fr 1fr;gap:28px}.process-item h3{font-size:20px}.cta-band .wrap{display:block}.cta-band h2{font-size:35px}.cta-actions{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;font-size:10px;gap:15px}.footer-grid p{max-width:340px}footer{padding-bottom:95px}.mobile-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:50;box-shadow:0 -5px 25px #0002;background:var(--dark);padding-bottom:env(safe-area-inset-bottom)}.mobile-bar a{text-align:center;padding:18px 10px;color:white;font-size:12px;font-weight:bold}.mobile-bar a:last-child{background:var(--accent);color:var(--ink)}.page-hero-grid{grid-template-columns:1fr;gap:30px;padding-top:20px;padding-bottom:35px}.page-hero img{height:340px}.page-hero h1{font-size:46px}.page-hero p{font-size:14px}.aside-card{position:static}.page-text h2{font-size:30px}.related .cards{grid-template-columns:1fr 1fr}.related .service-card:last-child{display:none}.wizard{padding:23px}.contact-phone{font-size:32px}.lightbox-photo{height:65vh}.lightbox-controls{flex-wrap:wrap;padding:14px;gap:9px}.lightbox-controls p{flex-basis:100%;font-size:12px}.lightbox-controls button{padding:9px 12px}.breadcrumbs{padding:22px 0}.faq-items summary{font-size:15px}}
@media(max-width:480px){.hero h1{font-size:55px}.hero-actions .button{font-size:11px;padding:16px 18px;gap:12px}.hero-visual{height:355px}.hero-bottom{font-size:10px;gap:16px}.cards{grid-template-columns:1fr}.card-photo{height:280px}.card-body p{font-size:13px}.gallery-grid{gap:17px 12px}.photo-open img{height:220px}.project h3{font-size:16px}.project figcaption span{font-size:8px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.choice span{font-size:11px}.choice-grid{gap:9px}.wizard{padding:20px}.wizard-progress{font-size:9px}.company-photo>img{height:395px}.related .cards{grid-template-columns:1fr}.related .service-card:last-child{display:block}.cta-actions .button{width:100%}.contact-phone{font-size:29px}.button{gap:18px;padding:16px 20px}.compare .knob{width:45px;height:45px}.footer-grid{gap:30px 20px}.gallery-tools .filter{font-size:10px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Refonte : accueil photographique, logo et parcours interactifs */
:root{--bg:#fff;--soft:#f3f5f6;--accent:#ff7900;--ink:#152a3a;--dark:#102333;--muted:#65727c}.topline{background:#102333}.nav{height:105px}.brand-real{background:#fff;line-height:0;padding:4px 7px;border-radius:3px}.brand-real img{width:134px;height:93px;object-fit:contain}.desktop-nav{gap:25px}.mega{top:105px}.footer-grid .brand-real{width:165px;padding:14px}.footer-grid .brand-real img{width:137px;height:auto}.button{border-radius:5px;font-size:13px;min-height:52px}.button:hover{background:#ff9233}.button.dark:hover{background:#23435a}.button.light:hover{background:#f1f3f5}.button.outline:hover{background:#152a3a0a}.immersive-hero{position:relative;isolation:isolate;min-height:680px;color:#fff;display:flex;align-items:center;background:#172f40;overflow:hidden}.immersive-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,26,40,.94),rgba(8,26,40,.72) 47%,rgba(8,26,40,.18)),linear-gradient(0deg,#081a2866,transparent)}.immersive-content{padding-top:70px;padding-bottom:95px}.immersive-content h1{font-size:clamp(50px,5.7vw,82px);letter-spacing:-3px;max-width:950px;font-weight:650;line-height:1.05;margin:0 0 26px}.immersive-content .eyebrow{color:#ffc694;font-size:11px;letter-spacing:2px}.immersive-content>p{max-width:640px;font-size:17px;line-height:1.85;color:#e1e8ed}.immersive-content .hero-actions{margin-top:30px}.hero-pills{display:flex;gap:23px;flex-wrap:wrap;margin-top:30px;color:#e0e7ec;font-size:12px}.hero-pills span:before{content:'✓';color:#ff9b4b;margin-right:8px}.hero-crumb{font-size:11px;display:flex;gap:10px;margin-bottom:30px;color:#d4dce1}.hero-crumb a{text-decoration:underline}.scroll-cue{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;font-size:9px;letter-spacing:1.8px;white-space:nowrap}.scroll-cue span{font-size:18px}.section-head h2{font-weight:600}.cards{gap:26px}.service-card{background:#fff;border:1px solid #e1e6e9;border-radius:10px;padding:0;overflow:hidden;box-shadow:0 5px 16px #142b3b06;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #142b3b12}.card-photo{height:235px}.card-body{padding:25px}.card-body h3{font-size:22px;font-weight:600}.card-body h3 span{color:#df6700}.card-body p{font-size:13px}.card-body small{color:#677781}.drone-section{background:#f8f9fa}.drone-visual{position:relative;border-radius:12px;overflow:hidden}.drone-visual>img{width:100%;height:580px;object-fit:cover}.photo-caption{position:absolute;bottom:15px;left:15px;right:15px;background:#102333df;color:#fff;padding:13px;font-size:10px;letter-spacing:.3px;border-radius:4px}.comparisons{display:grid;grid-template-columns:1fr 1fr;gap:32px}.compare-card{background:white;border-radius:12px;overflow:hidden;border:1px solid #e0e5e8;box-shadow:0 10px 24px #12293b06}.compare-card .compare{aspect-ratio:4/3}.compare-card h3{font-size:23px;margin:24px 25px 12px;font-weight:600}.compare-card>p{font-size:12px;color:var(--muted);margin:0 25px 25px;line-height:1.8}.compare .knob{color:#ff7900;font-weight:bold}.compare input{appearance:none;-webkit-appearance:none;background:transparent}.compare input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:48px;height:48px;border-radius:50%}.compare input::-moz-range-thumb{width:48px;height:48px;border:0}.compare input::-moz-range-track{background:transparent}.carousel-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px}.carousel-controls p{font-size:14px;color:var(--muted);margin:0}.carousel-controls button{background:#fff;border:1px solid #ccd5db;width:46px;height:46px;font-size:20px;border-radius:50%;margin-left:8px}.carousel-controls button:hover{background:#fff0e2;border-color:var(--accent)}.project-carousel{overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c1cbd1 #f0f2f4;padding-bottom:16px;overscroll-behavior-x:contain}.project-carousel>.gallery-grid{display:flex;gap:25px;min-width:0}.project-carousel .project{flex:0 0 calc((100% - 50px)/3);scroll-snap-align:start;min-width:0}.project-carousel .photo-open{border-radius:10px}.project-carousel .photo-open img{height:360px}.project-carousel .project figcaption{padding:20px 2px}.project h3{font-weight:600}.project-carousel .project figcaption span{color:#b65a12}.zones-grid{border:0;gap:25px}.zone,.zone:first-child{border:1px solid #ffffff24;border-radius:10px;padding:32px;background:#ffffff04}.zone:last-child{border:1px solid #ffffff24}.zone:hover{background:#ffffff0b}.zone h3{font-weight:600}.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px}.process-grid>div>p{font-size:14px}.timeline{border-top:1px solid #dbe2e6}.timeline-step{border-bottom:1px solid #dbe2e6}.timeline-step summary{padding:23px 0;display:flex;align-items:center;gap:20px;cursor:pointer;list-style:none;font-size:18px;font-weight:600}.timeline-step summary::-webkit-details-marker{display:none}.step-num{font-size:12px;color:#e36c07;font-weight:700;border:1px solid #ff790033;background:#fff6ed;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.timeline-step summary>b{margin-left:auto;font-size:22px;font-weight:400;color:#8999a5}.timeline-step[open] summary>b{transform:rotate(45deg)}.timeline-step>div{padding:0 25px 20px 59px}.timeline-step p{color:var(--muted);font-size:14px;margin:0}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.editorial-card{background:#fff;border:1px solid #e1e6e9;border-radius:10px;padding:34px}.editorial-card>span{font-size:11px;letter-spacing:2px;color:#cc620a}.editorial-card h3{font-size:25px;line-height:1.2;margin:22px 0 17px;font-weight:600}.editorial-card p{font-size:14px;color:var(--muted)}.read-more{background:none;border:0;border-bottom:1px solid #d37222;padding:0 0 6px;color:#ad5100;font-size:12px;font-weight:700}.map-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.map-grid p{font-size:14px}.map-panel{border-radius:12px;overflow:hidden;background:#e6ebeb;min-height:390px;border:1px solid #d5dfe2;position:relative}.map-placeholder{min-height:390px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center;background:linear-gradient(135deg,#e9eef0,#dce6e6)}.map-placeholder h3{margin:12px 0;font-size:27px}.map-placeholder p{max-width:300px;color:#586d78;font-size:12px}.map-pin{font-size:55px;color:#e77313}.map-frame{height:390px}.map-frame iframe{border:0;width:100%;height:100%;display:block}.quick-contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px}.quick-contact>div>p{font-size:14px}.quick-form{padding:30px;background:#f6f8f9;border:1px solid #e2e7eb;border-radius:10px}.quick-form .form-grid{margin-top:0}.quick-form>.button{margin-top:22px}.quick-form input,.quick-form textarea{background:#fff;border-radius:5px;border-color:#d3dce2}.quick-result{border-top:1px solid #d9e1e6;padding-top:20px;margin-top:20px}.review{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit}.quick-result h3{font-size:22px}.cta-band{background:#ff7900}.cta-band h2{font-weight:600}.privacy-settings{color:inherit;background:transparent;border:0;font-size:10px;padding:0}.privacy-dialog{width:min(640px,92vw);border-radius:10px;background:#fff;color:var(--ink)}.privacy-inner{padding:35px}.privacy-inner h2{font-size:32px}.privacy-inner h3{font-size:21px}.privacy-inner p{font-size:14px;color:var(--muted)}.privacy-actions{display:flex;flex-wrap:wrap;gap:10px}.privacy-actions .button{font-size:11px;padding:14px 17px}.mobile-group summary{padding:16px 4px;cursor:pointer;font-size:14px;border-top:1px solid var(--line)}.mobile-group a{padding-left:18px!important;color:#566773;font-size:13px!important}.map-panel.map-loaded .map-placeholder{display:none}.faq-items summary{font-weight:600}.page-hero{background:#f1f4f6}.page-hero img{border-radius:12px}.form-grid input:focus,.form-grid textarea:focus{border-color:#eb790d}.footer-bottom{align-items:center}.project-gallery .photo-open{border-radius:9px}
@media(max-width:1100px){.desktop-nav{gap:15px}.desktop-nav>a,.nav-disclosure>summary{font-size:11px}.nav .button{font-size:11px;padding:14px 18px}.brand-real img{width:119px;height:83px}.nav{height:95px}.mega{top:95px}.process-grid,.quick-contact{gap:45px}.map-grid{gap:40px}}
@media(max-width:800px){.nav{height:89px}.brand-real{padding:0}.brand-real img{width:118px;height:82px}.immersive-hero{min-height:600px}.immersive-content{padding-top:48px;padding-bottom:85px}.immersive-content h1{font-size:53px;letter-spacing:-2.1px;line-height:1.07}.immersive-content>p{font-size:14px;line-height:1.85}.immersive-content .eyebrow{font-size:9px;letter-spacing:1.3px}.immersive-content .hero-actions .button{font-size:12px;padding:17px 19px}.hero-pills{gap:13px;font-size:10px;margin-top:26px}.hero-shade{background:linear-gradient(90deg,#081a28ef,#081a2885),linear-gradient(0deg,#081a28aa,transparent)}.hero-crumb{font-size:10px;margin-bottom:22px}.scroll-cue{font-size:8px;letter-spacing:1.2px}.cards{gap:20px}.card-body{padding:22px}.comparisons{grid-template-columns:1fr;gap:25px}.compare-card h3{font-size:22px;margin:21px 21px 10px}.compare-card>p{margin:0 21px 23px}.drone-visual>img{height:430px}.project-carousel .project{flex-basis:72%}.project-carousel .photo-open img{height:370px}.project-carousel>.gallery-grid{gap:18px}.carousel-controls p{max-width:210px;font-size:12px}.carousel-controls button{width:39px;height:39px;margin-left:5px}.process-grid,.map-grid,.quick-contact{grid-template-columns:1fr;gap:30px}.editorial-grid{grid-template-columns:1fr}.editorial-card{padding:26px}.editorial-card h3{font-size:24px}.timeline-step summary{font-size:16px;gap:15px}.timeline-step>div{padding-left:54px}.map-panel,.map-placeholder{min-height:340px}.map-frame{height:340px}.quick-form{padding:24px}.quick-contact .contact-phone{font-size:29px;margin-bottom:25px}.zones-grid{gap:16px}.zone,.zone:first-child{padding:28px}.zone:last-child{border:1px solid #ffffff24}.footer-bottom{align-items:flex-start}.mobile-nav.open{max-height:calc(100dvh - 125px)}.privacy-inner{padding:25px}.card-photo{height:260px}}
@media(max-width:480px){.immersive-content h1{font-size:46px}.immersive-hero{min-height:615px}.immersive-content>p{font-size:14px}.hero-pills{display:grid;grid-template-columns:1fr 1fr;font-size:10px;gap:14px}.project-carousel .project{flex-basis:83%}.project-carousel .photo-open img{height:330px}.carousel-controls p{max-width:180px}.drone-visual>img{height:360px}.quick-form{padding:20px}.timeline-step summary{font-size:15px}.map-placeholder{padding:25px}.privacy-actions .button{width:100%}.immersive-content .hero-actions{gap:9px}.immersive-content .hero-actions .button{font-size:11px;padding:15px}.card-body h3{font-size:22px}}
/* Finitions lumineuses : relief, reflets et matières */
:root{--accent:#ff8315;--soft:#f4f6f8}
header{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(255,255,255,.8);box-shadow:0 2px 12px #10233308;transition:box-shadow .25s,background .25s;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}header.is-scrolled{box-shadow:0 10px 35px #1023331c;background:rgba(255,255,255,.97)}.brand-real{box-shadow:none;background:#fff}.topline{background:linear-gradient(115deg,#0c1d2b,#223f52 55%,#142b3c);border-bottom:1px solid #ffffff15}.desktop-nav>a:not(.button){position:relative}.desktop-nav>a:not(.button):after{content:'';position:absolute;bottom:23px;left:0;right:0;height:2px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#ff7900,#ffc17b);transition:transform .25s}.desktop-nav>a:not(.button):hover:after{transform:scaleX(1)}.mega{border-radius:0 0 20px 20px;box-shadow:0 25px 45px #10233320;background:linear-gradient(130deg,#fff,#f6f8fa)}
.button{position:relative;isolation:isolate;overflow:hidden;border-radius:11px;border:1px solid #ffa951;border-bottom-color:#d86608;background:linear-gradient(170deg,#ffb351 0%,#ff932d 38%,#ff7900 65%,#eb6500 100%);color:#172636;box-shadow:inset 0 1px 0 #ffffffa8,inset 0 -1px 0 #a841002b,0 5px 0 #b84f06,0 12px 24px #f5783b30;text-shadow:0 1px 0 #ffffff30;transform:translateY(0);transition:transform .22s,box-shadow .22s,filter .22s;font-weight:750;letter-spacing:.1px}
.button:before{content:'';position:absolute;left:8px;right:8px;top:1px;height:45%;border-radius:0 0 50% 50%;background:linear-gradient(180deg,#ffffff2e,transparent);pointer-events:none;z-index:-1}
.button:after{content:'';position:absolute;top:-55%;bottom:-55%;left:-80%;width:55%;background:linear-gradient(90deg,transparent,#ffffff6b,transparent);transform:translateX(-80%) skewX(-22deg);pointer-events:none;z-index:1}
.button:hover{background:linear-gradient(170deg,#ffc06b,#ff9b3f 40%,#ff8411 72%,#ef6d00);box-shadow:inset 0 1px 0 #ffffffc9,0 7px 0 #b84f06,0 18px 33px #f5783b42;transform:translateY(-2px)}.button:hover:after,.button:focus-visible:after{animation:ml-shine .8s ease-out 1}.button:active{transform:translateY(3px);box-shadow:inset 0 2px 5px #87420025,0 2px 0 #b84f06,0 5px 12px #f5783b24}.button:focus-visible{outline:3px solid #153b58;outline-offset:6px}
.button.light{color:#173247;background:linear-gradient(170deg,#fff 0%,#fbfcfd 44%,#e0e7ed 100%);border-color:#fff;border-bottom-color:#c7d2dc;box-shadow:inset 0 1px 0 #fff,0 5px 0 #a4b4c1,0 15px 25px #07172826;text-shadow:none}.button.light:hover{background:linear-gradient(165deg,#fff,#f2f8fc);box-shadow:inset 0 1px 0 #fff,0 7px 0 #a4b4c1,0 20px 30px #07172835}
.button.dark{color:#fff;background:linear-gradient(155deg,#36566d,#1c3c54 45%,#102738);border-color:#476278;border-bottom-color:#081d2c;box-shadow:inset 0 1px 0 #ffffff36,0 5px 0 #071c2a,0 12px 22px #10233326;text-shadow:0 1px 1px #0003}.button.dark:hover{background:linear-gradient(155deg,#436a85,#254f6d 50%,#17344a);box-shadow:inset 0 1px 0 #ffffff40,0 7px 0 #071c2a,0 17px 30px #10233335}
.button.outline{color:#203b4e;border-color:#bdcbd6;background:linear-gradient(160deg,#ffffffd9,#edf2f6ab);box-shadow:inset 0 1px 0 #fff,0 3px 0 #bccad5,0 8px 16px #162f4310;text-shadow:none}.button.outline:hover{background:linear-gradient(160deg,#fff,#e9f1f7);box-shadow:inset 0 1px 0 #fff,0 5px 0 #bccad5,0 13px 22px #162f4320}.button.light:active,.button.dark:active,.button.outline:active{transform:translateY(2px);box-shadow:inset 0 2px 4px #10233322,0 1px 0 #8e9faa,0 4px 8px #10233315}
.immersive-hero{border-bottom:1px solid #ffae6566}.hero-shade{background:radial-gradient(ellipse at 82% 30%,#ff9d3018,transparent 45%),linear-gradient(90deg,#061a2bf5,#0a253bd1 46%,#112f483d 85%),linear-gradient(0deg,#091d2fa8,transparent 65%)}.immersive-content h1{text-shadow:0 5px 28px #00000045;letter-spacing:-2.8px}.immersive-content .eyebrow{color:#ffd2a8;text-shadow:0 0 15px #ff9c3740}.immersive-content .eyebrow:before{border-radius:50%;box-shadow:0 0 0 5px #ff83151a,0 0 18px #ff831599}.hero-actions{gap:18px}.immersive-content .hero-actions .button{padding:20px 28px;min-height:60px}.immersive-content .hero-actions .button:after{animation:ml-shine 1.15s ease-out .6s 1}.hero-pills{gap:12px}.hero-pills span{padding:11px 15px;border:1px solid #ffffff2b;border-top-color:#ffffff54;background:linear-gradient(135deg,#ffffff19,#ffffff05);border-radius:30px;box-shadow:inset 0 1px 0 #ffffff16,0 8px 20px #06142224;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.scroll-cue{opacity:.85}.scroll-cue:hover{opacity:1;color:#ffc99d}
.eyebrow:before{border-radius:2px;box-shadow:0 0 0 4px #ff831510}.section-head h2{letter-spacing:-1.8px}.soft-section{background:radial-gradient(ellipse at 95% 0,#ffe5ce55,transparent 45%),linear-gradient(140deg,#f6f8fa,#edf2f6)}.dark-section{background:radial-gradient(ellipse at 10% 0,#2d577d55,transparent 55%),linear-gradient(125deg,#112738,#0c1c2a 70%);position:relative}.dark-section .eyebrow{color:#ffd5b0}.drone-section{background:radial-gradient(ellipse at 0 50%,#fff1e0,transparent 45%),#fafbfc}
.service-card{border-radius:17px;border-color:#e0e7ed;box-shadow:0 3px 0 #e3e9ed,0 14px 32px #14334b0b;transition:transform .28s,box-shadow .28s,border-color .28s}.service-card:hover{transform:translateY(-7px);border-color:#ffa34c90;box-shadow:0 3px 0 #f2c99f,0 23px 38px #14334b1d}.card-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#10233325);pointer-events:none}.card-n{border-radius:0 10px 0 0;background:linear-gradient(145deg,#ffb256,#ff7900);box-shadow:inset 0 1px 0 #ffffff60,3px -3px 20px #0001;color:#14293a;z-index:2}.card-body h3>span{width:31px;height:31px;flex-shrink:0;display:grid;place-items:center;font-size:18px;border-radius:50%;background:linear-gradient(140deg,#fff3e2,#ffe2c0);box-shadow:inset 0 1px 0 #fff,0 3px 8px #de75071a;transition:transform .25s}.service-card:hover .card-body h3>span{transform:rotate(-8deg);background:linear-gradient(140deg,#ffb257,#ff8215);color:#173247}.card-body{background:linear-gradient(140deg,#fff,#fafcfd)}
.drone-visual,.company-photo>img,.page-hero img{box-shadow:0 20px 45px #132f4521;outline:1px solid #ffffff90;outline-offset:-1px}.drone-visual{border-radius:18px}.photo-caption{background:linear-gradient(125deg,#102333ec,#23485ce3);border:1px solid #ffffff35;box-shadow:inset 0 1px 0 #ffffff12,0 7px 20px #0002;backdrop-filter:blur(10px)}.compare-card{border-radius:18px;box-shadow:0 3px 0 #d9e2e8,0 16px 34px #16364e12}.compare .knob{background:radial-gradient(circle at 35% 25%,#fff 15%,#f8fcff 45%,#dce6ee 100%);border:1px solid #fff;box-shadow:inset 0 2px 2px #fff,0 4px 0 #aabac6,0 9px 24px #001b3a45;color:#e56c00}.compare-label{border:1px solid #ffffff45;border-radius:5px;box-shadow:inset 0 1px 0 #ffffff30,0 5px 15px #0003;backdrop-filter:blur(8px)}.compare-label.after{background:linear-gradient(145deg,#ffbb64,#ff8412);border-color:#ffc183;color:#172d3e}
.carousel-controls button,.lightbox-controls button,.menu-toggle{border-radius:11px;background:linear-gradient(145deg,#fff,#edf3f7);color:#1d3c53;border:1px solid #cedbe4;border-top-color:#fff;box-shadow:inset 0 1px 0 #fff,0 3px 0 #c2d0db,0 7px 15px #19395012;transition:transform .2s,box-shadow .2s}.carousel-controls button:hover,.lightbox-controls button:hover,.menu-toggle:hover{background:linear-gradient(145deg,#fff3e1,#ffd4a7);transform:translateY(-2px);box-shadow:0 5px 0 #e6b27e,0 10px 20px #19395018}.project-carousel .photo-open{border-radius:15px;box-shadow:0 8px 20px #122d4518}.photo-open .expand{border-radius:9px;background:linear-gradient(150deg,#fff,#e9f1f6);box-shadow:0 3px 0 #a9bac7,0 6px 15px #0003}.zone,.zone:first-child,.zone:last-child{background:linear-gradient(135deg,#ffffff12,#ffffff04);border:1px solid #6b8aa44a;border-top-color:#a2bdd067;border-radius:16px;box-shadow:inset 0 1px 0 #ffffff08,0 15px 25px #00000018;transition:transform .25s,box-shadow .25s,border-color .25s}.zone:hover{background:linear-gradient(135deg,#ffffff1c,#ffffff08);border-color:#ff9c5080;transform:translateY(-5px);box-shadow:0 22px 35px #00000025}.zone h3{color:#fff}.zone small{color:#ffbd82}.step-num{background:linear-gradient(145deg,#fff6e8,#ffe0bd);border-color:#ffbb77;box-shadow:inset 0 1px 0 #fff,0 3px 0 #e9ba8b,0 8px 14px #ad5a0811}.timeline-step[open] .step-num{background:linear-gradient(140deg,#ffb764,#ff8519);color:#163246;box-shadow:inset 0 1px 0 #ffe0b8,0 3px 0 #c16717,0 8px 17px #eb72032b}.editorial-card{border-radius:16px;border-top-color:#fff;box-shadow:inset 0 1px 0 #fff,0 4px 0 #e0e7ec,0 14px 25px #102e4508}.read-more{transition:color .2s;text-shadow:0 1px 0 #fff}.read-more:hover{color:#ef770e}.quick-form,.wizard,.aside-card{border-radius:17px;background:linear-gradient(145deg,#fff,#f2f6f9);box-shadow:inset 0 1px 0 #fff,0 4px 0 #dde5eb,0 18px 36px #14344b0e;border:1px solid #dfe7ed}.form-grid input,.form-grid textarea,.form-grid select{border-radius:8px;box-shadow:inset 0 2px 4px #132f4506;transition:box-shadow .2s,border-color .2s}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{box-shadow:0 0 0 4px #ff83151a,inset 0 1px 3px #132f4505}.map-panel{border-radius:17px;box-shadow:0 4px 0 #d5dfe5,0 15px 30px #132f4512}.filter{box-shadow:inset 0 1px 0 #fff,0 2px 0 #d9e1e7;background:linear-gradient(145deg,#fff,#f3f6f8)}.filter[aria-pressed=true]{background:linear-gradient(145deg,#355870,#19364b);box-shadow:inset 0 1px 0 #ffffff30,0 3px 0 #0e2434,0 6px 15px #17374f22}
.cta-band{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 12% 0,#ffd188 0,transparent 48%),linear-gradient(125deg,#ff9f37,#ff7b08 65%,#ee6600);border-top:1px solid #ffc27a;border-bottom:1px solid #c45d06;box-shadow:inset 0 1px 0 #ffffff40}.cta-band:before{content:'';position:absolute;pointer-events:none;z-index:-1;inset:0;background:linear-gradient(120deg,transparent 0 55%,#ffffff11 55% 56%,transparent 56% 69%,#ffffff12 69% 82%,transparent 82%)}.cta-band h2{text-shadow:0 1px 0 #ffc58188}.cta-band .button.outline{border-color:#ffffff90;background:linear-gradient(155deg,#fff6e4,#ffe6c9);color:#18364c;box-shadow:inset 0 1px 0 #fff,0 5px 0 #d48b48,0 12px 22px #93400028}footer{background:radial-gradient(ellipse at 5% 0,#264a664d,transparent 48%),linear-gradient(140deg,#102737,#0a1926)}.mobile-bar{box-shadow:0 -6px 26px #07182926;background:linear-gradient(150deg,#25465e,#102839)}.mobile-bar a{box-shadow:inset 0 1px 0 #ffffff22;text-shadow:0 1px 1px #0002}.mobile-bar a:last-child{background:linear-gradient(150deg,#ffb055,#ff8617 55%,#ee6a00);box-shadow:inset 0 1px 0 #ffdeba;border-left:1px solid #ffc389;text-shadow:0 1px 0 #ffce8d}
@keyframes ml-shine{from{transform:translateX(0) skewX(-22deg)}to{transform:translateX(430%) skewX(-22deg)}}
@keyframes ml-enter{from{opacity:.35;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal-in{animation:ml-enter .65s cubic-bezier(.2,.7,.25,1) both}
@media(max-width:800px){.immersive-content .hero-actions .button{padding:18px 21px;min-height:54px}.hero-pills{gap:9px}.hero-pills span{padding:9px 11px;font-size:10px}.hero-shade{background:radial-gradient(ellipse at 100% 0,#ff943514,transparent 50%),linear-gradient(90deg,#061a2bee,#0a233cbb),linear-gradient(0deg,#081e32aa,transparent)}.service-card:hover,.zone:hover{transform:none}.card-body{padding:23px}.carousel-controls button{border-radius:10px}.immersive-content h1{letter-spacing:-2px}.soft-section{background:linear-gradient(140deg,#f7f9fb,#edf2f6)}.mobile-bar a:active{filter:brightness(.93)}}
@media(max-width:480px){.immersive-content .hero-actions .button{padding:16px 17px;font-size:11px}.hero-pills{display:flex;flex-wrap:wrap}.hero-pills span{font-size:9px;padding:9px 11px}.hero-actions{gap:14px}.compare-card h3{font-size:21px}.quick-form{padding:22px}.button{border-radius:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.button:hover,.service-card:hover,.zone:hover{transform:none}.reveal-in{opacity:1;transform:none}}
/* Donkere ML RÉNOVATION basis en horizontale prestatienavigatie */
:root{--bg:#0b141b;--ink:#f1f5f7;--dark:#050b10;--soft:#13232e;--muted:#a7b5bd;--line:#2a3c49}
body{background:var(--bg);color:var(--ink)}header{background:rgba(11,20,27,.96);border-bottom-color:#263944}.topline{background:#050b10}.desktop-nav>a:not(.button),.nav-disclosure>summary,.nav-phone{color:#f1f5f7}.desktop-nav>a:not(.button):hover{color:#ff9b3d}.mega{background:linear-gradient(130deg,#12232f,#0b171f);border-bottom-color:#2c414d}.mega a{color:#f1f5f7;border-bottom-color:#2a3c49}.mega small{color:#9eafb9}.section{background:var(--bg)}.section-head>p,.muted{color:var(--muted)}.proof-row{border-bottom-color:#2a3c49}.proof-row div{border-right-color:#2a3c49}.proof-row span{color:#a7b5bd}.soft-section,.page-hero{background:radial-gradient(ellipse at 92% 0,#e8781818,transparent 42%),linear-gradient(135deg,#142630,#0d1a23)}.dark-section{background:radial-gradient(ellipse at 15% 0,#ff7e1416,transparent 48%),linear-gradient(135deg,#050b10,#101f2a)}.cards{display:flex;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:8px 4px 22px;margin:0 -4px;scrollbar-color:#f27816 #1b2b35;scrollbar-width:thin}.cards::-webkit-scrollbar{height:9px}.cards::-webkit-scrollbar-track{background:#1b2b35;border-radius:10px}.cards::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#ffab4d,#ed6907);border-radius:10px}.service-card{flex:0 0 355px;scroll-snap-align:start;background:linear-gradient(145deg,#1a2d39,#101f29);border-color:#314754;box-shadow:0 3px 0 #091219,0 14px 32px #00000032}.service-card:hover{border-color:#f28a36}.card-body{background:linear-gradient(145deg,#1a2d39,#101f29)}.card-body h3{color:#f4f7f8}.card-body p,.card-body small{color:#afbdc5}.card-body h3>span{background:linear-gradient(140deg,#ffc17b,#ef720b);color:#162b3b}.company-copy>p,.page-text p,.page-hero p,.faq-items p,.editorial-card p,.process-item p{color:var(--muted)}.company-label{color:#162b3b}.company-photo>img{box-shadow:0 20px 45px #0000004a}.editorial-card,.quick-form,.wizard,.aside-card{background:linear-gradient(145deg,#1a2d39,#101f29);border-color:#314754;box-shadow:inset 0 1px 0 #ffffff0a,0 4px 0 #091219,0 18px 36px #00000028}.editorial-card h3,.quick-form h3,.wizard h3,.aside-card h3{color:#f1f5f7}.timeline{border-top-color:#2d424f}.timeline-step{border-bottom-color:#2d424f}.timeline-step p{color:var(--muted)}.form-grid input,.form-grid textarea,.form-grid select{background:#0e1b24;color:#f1f5f7;border-color:#3b505d}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#82949f}.contact-phone{color:#ff9a3c}.map-panel{background:#152935;border-color:#314754}.map-placeholder{background:linear-gradient(135deg,#18303e,#0f202b);color:#f1f5f7}.map-placeholder p{color:#aab9c1}.map-frame{background:#152935}.filter{color:#dae4e8;border-color:#3b505d;background:linear-gradient(145deg,#1a2d39,#101f29);box-shadow:inset 0 1px 0 #ffffff0c,0 2px 0 #091219}.filter[aria-pressed=true]{color:#122330}.compare-card{background:linear-gradient(145deg,#1a2d39,#101f29);border-color:#314754;box-shadow:0 3px 0 #091219,0 16px 34px #00000035}.compare-card h3{color:#f1f5f7}.compare-card>p{color:#aab8c0}.project-carousel .project h3{color:#f1f5f7}.faq-items details{border-top-color:#2d424f}.faq-items summary{color:#f1f5f7}.footer-grid a:not(.brand),.footer-grid p,.footer-bottom{color:#aab8c0}.quick-form .form-note,.wizard .form-note{color:#91a4af}.privacy-dialog{background:#12232f;color:#f1f5f7}.privacy-inner p{color:#aab8c0}.mobile-group summary{border-top-color:#2a3c49;color:#f1f5f7}.mobile-group a{color:#b4c3ca!important}.hero-pills span{background:linear-gradient(135deg,#ffffff1b,#ffffff08)}
@media(max-width:800px){.topline{display:none}header{top:0}.nav{height:76px}.brand-real img{width:104px;height:72px}.brand-real{padding:0;background:#fff}.menu-toggle{color:#f1f5f7;background:linear-gradient(145deg,#1c3442,#10222d);border-color:#3f5968;box-shadow:inset 0 1px 0 #ffffff15,0 3px 0 #07131b}.mobile-nav.open{background:#0b141b;border-bottom:1px solid #304550}.cards{gap:16px;padding-bottom:18px}.service-card{flex-basis:82vw;max-width:370px}.section-head>p{color:var(--muted)}.project-carousel{scrollbar-color:#f27816 #1b2b35}.mobile-bar{background:#08131b}}
@media(min-width:801px){.cards{padding-right:calc((100vw - 1280px)/2)}}
.brand-real{background:#050505!important;padding:4px 8px!important}.brand-real img{background:#050505}.wizard textarea{min-height:150px}

header,header.is-scrolled,.topline,header .brand-real{background:#000!important;color:#fff}header .brand-real{padding:0!important}header .brand-real img{background:#000}.quick-form label{font-size:14px}.quick-form input,.quick-form textarea{font-size:16px}.quick-form textarea{min-height:140px}.review{background:#0e1b24;color:#fff}

/* Persistent one-tap telephone action, clear of the mobile contact bar. */
.floating-call{position:fixed;right:22px;bottom:24px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#f47721;color:#fff;z-index:55;box-shadow:0 5px 20px #0005;transition:background .2s,transform .2s}
.floating-call svg{width:28px;height:28px}.floating-call:hover{background:#e75d0b;transform:translateY(-2px)}.floating-call:focus-visible{outline:3px solid #fff;outline-offset:4px}.floating-call:active{transform:scale(.96)}
@media(max-width:800px){.floating-call{right:18px;bottom:calc(76px + env(safe-area-inset-bottom));width:56px;height:56px}}

/* Nouvelle direction : mise en page éditoriale, photographies et navigation fluide. */
:root{--bg:#fff;--ink:#202020;--muted:#626262;--soft:#f6f4f1;--line:#e4e0da;--dark:#111;--accent:#ed7026}
body{font-size:16px;background:#fff;color:var(--ink)}.wrap{max-width:1140px;width:calc(100% - 64px)}h1,h2,h3{font-weight:750}h2{font-size:clamp(28px,3vw,38px);letter-spacing:-1.1px;line-height:1.18}h3{letter-spacing:-.5px}.section{padding:80px 0;background:#fff}.section-head{margin-bottom:30px;align-items:center}.section-head h2 br{display:none}.section-head>p{font-size:16px;max-width:380px;line-height:1.7}.eyebrow{font-size:12px;color:#b85019;letter-spacing:1.6px;margin-bottom:15px}.eyebrow:before{display:none}.topline{display:none}.nav{height:98px;gap:22px}.brand-real img{width:150px;height:94px;object-fit:contain}.brand-real{border-radius:0}.desktop-nav{gap:21px}.desktop-nav>a,.nav-disclosure>summary{font-size:14px;padding:37px 0}.desktop-nav>.button{display:none}.nav-phone{border-radius:40px;background:#ed7026;color:#fff;padding:16px 21px;font-size:14px;box-shadow:inset 0 1px 0 #ffffff55}.nav-phone:before{content:'☎';margin-right:9px}.mega{top:98px;background:#111;border-color:#333}.mega a{color:#fff}.mega small{color:#bbb}.button{border-radius:40px;min-height:50px;padding:16px 25px;font-size:14px;color:#fff;background:linear-gradient(170deg,#f78b45,#e7641b);border-color:#f49158;box-shadow:inset 0 1px 0 #ffffff50,0 3px 0 #b54912,0 8px 18px #ac49141a;text-shadow:none;gap:10px}.button:hover{background:linear-gradient(170deg,#ff9c59,#ec7028);box-shadow:0 4px 0 #b54912,0 12px 20px #ac491125}.button.dark{background:#191919;border-color:#444;box-shadow:0 3px 0 #000;color:#fff}.button.light,.button.outline{background:transparent;color:inherit;border-color:#bdb7af;box-shadow:none}.immersive-hero{min-height:490px;border:0;position:relative}.immersive-content{padding-top:58px;padding-bottom:60px}.immersive-content h1{font-size:clamp(38px,4.1vw,56px);line-height:1.12;letter-spacing:-1.8px;max-width:780px;margin-bottom:22px}.immersive-content>p{font-size:18px;line-height:1.75;max-width:710px;color:#eee}.immersive-content .eyebrow{font-size:12px;color:#ffb685}.hero-shade{background:linear-gradient(90deg,#000c,#0008 65%,#0005)}.immersive-bg{object-position:center 52%}.immersive-content .hero-actions{margin:25px 0 0}.immersive-content .hero-actions .button{min-height:52px;padding:16px 25px;font-size:14px}.immersive-content .button.light{background:#ffffff12;color:#fff;border-color:#ffffffaa;box-shadow:none;backdrop-filter:blur(8px)}.hero-pills{margin-top:26px;gap:18px;font-size:12px}.hero-pills span{padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none}.hero-pills span:before{content:'✓';color:#ffac70;margin-right:7px}.scroll-cue{display:none}.hero-crumb{margin-bottom:24px;font-size:13px}.soft-section,.drone-section,.page-hero{background:#f6f4f1}.cards{gap:24px;padding:0 0 12px;margin:0;scrollbar-width:none}.cards::-webkit-scrollbar{display:none}.service-card{flex:0 0 calc((100% - 48px)/3);border:1px solid #e3ded7;box-shadow:0 5px 18px #00000006;border-radius:18px;background:#fff;overflow:hidden;padding:0}.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px #00000010}.card-photo{height:235px}.card-n{background:#111b;color:#fff;border:1px solid #ffffff55;border-radius:30px;bottom:14px;left:16px;padding:7px 11px;font-size:11px;box-shadow:none}.card-body{background:#fff;padding:25px}.card-body h3{font-size:22px;line-height:1.2;color:#202020;min-height:52px}.card-body h3>span{display:none}.card-body p{font-size:15px;color:#666;line-height:1.65}.card-body small{color:#b85019;font-size:11px;line-height:1.7}.company-grid{gap:65px}.drone-visual{border-radius:20px;box-shadow:none}.drone-visual>img{height:465px}.photo-caption{background:#111b;border:1px solid #ffffff50;border-radius:30px;color:#fff;font-size:11px}.checklist li{font-size:15px;padding:12px 0 12px 27px}.checklist li:before{content:'✓';color:#c65b20}.form-note{font-size:13px;line-height:1.6;color:#666}.comparisons{gap:26px}.compare-card{background:#fff;border:1px solid #e3ded7;box-shadow:none;border-radius:18px}.compare-card h3{font-size:21px;color:#222;margin:24px 24px 12px}.compare-card>p{color:#666;font-size:14px;margin:0 24px 24px}.compare .knob{box-shadow:0 4px 18px #0003;background:#fff;color:#e56b24}.compare-label{border-radius:30px}.compare-label.after{background:#eb702a;color:#fff}.carousel-controls{margin:12px 0 22px}.carousel-controls p{color:#666;font-size:14px}.carousel-controls button,.rail-controls button{border-radius:50%;width:43px;height:43px;background:#fff;box-shadow:none;border:1px solid #d6d0c9;color:#222}.carousel-controls button:hover,.rail-controls button:hover{background:#ed7026;color:#fff;box-shadow:none;transform:none}.carousel-controls button:disabled,.rail-controls button:disabled{opacity:.3;cursor:default;background:#fff;color:#222}.project-carousel .project{flex-basis:calc((100% - 48px)/3)}.project-carousel .photo-open img{height:300px}.project-carousel .photo-open{border-radius:16px;box-shadow:none}.project-carousel .project h3{color:#222;font-size:19px}.project figcaption span{color:#b85019}.dark-section{background:#161616;color:#fff}.dark-section .section-head>p,.dark-section .muted{color:#bdbdbd}.dark-section .eyebrow{color:#ffad76}.zones-grid{border:0;gap:20px}.zone,.zone:first-child,.zone:last-child{padding:30px;border:1px solid #444;background:#222;border-radius:18px;box-shadow:none}.zone h3{font-size:32px}.zone p{font-size:15px;color:#bdbdbd}.zone small{color:#ffaf78;font-size:10px}.zone span{font-size:13px}.process-grid{gap:75px}.timeline{border:0}.timeline-step{border:1px solid #e2ddd6;border-radius:12px;padding:0 20px;margin-bottom:12px;background:#fff}.timeline-step summary{font-size:16px;padding:18px 0}.timeline-step>div{padding:0 8px 8px 57px}.timeline-step p{color:#666;font-size:15px}.step-num{background:#f8ede5;border:0;color:#ac4914;box-shadow:none;width:38px;height:38px}.timeline-step[open]{border-color:#edb995;background:#fffcf8}.timeline-step[open] .step-num{background:#ed7026;color:#fff;box-shadow:none}.editorial-grid{display:flex;overflow:auto;gap:24px;scroll-snap-type:x mandatory;scrollbar-width:none}.editorial-card{flex:0 0 calc((100% - 48px)/3);background:#fff;padding:30px;border:1px solid #e4ded7;border-radius:18px;box-shadow:none;scroll-snap-align:start}.editorial-card h3{font-size:22px;color:#222}.editorial-card p{font-size:15px;color:#666}.editorial-card>span{color:#c2571d}.read-more{color:#b85019;text-shadow:none;font-size:14px}.faq-grid{gap:70px}.faq-items details{border-color:#ded8d0;padding:21px 0}.faq-items summary{font-size:17px;color:#222;font-weight:600}.faq-items p{font-size:15px;color:#666}.map-panel{border:1px solid #ded8d0;background:#eee9e1;box-shadow:none;border-radius:18px}.map-placeholder{background:radial-gradient(ellipse at center,#fffcf7,#e9e4db);color:#222}.map-placeholder p{color:#666}.quick-contact{gap:70px}.quick-form,.wizard,.aside-card{background:#faf8f5;border:1px solid #e4ded7;border-radius:18px;padding:32px;box-shadow:none}.quick-form h3,.wizard h3,.aside-card h3{color:#222}.form-grid{gap:20px}.form-grid input,.form-grid textarea,.form-grid select{background:#fff;color:#222;border:1px solid #cec8c0;border-radius:9px;font-size:16px;box-shadow:none;padding:13px;min-height:49px}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#888}.quick-form .form-note,.wizard .form-note{color:#666}.quick-form label{color:#333;font-size:14px}.contact-phone{color:#be531d}.review{background:#fff;color:#222;border:1px solid #ded8d0;white-space:pre-wrap;overflow-wrap:anywhere}.quick-result{margin-top:30px}.cta-band{background:#ed7026;color:#fff;border:0;box-shadow:none}.cta-band h2{font-size:32px;text-shadow:none}.cta-band:before{display:none}footer{background:#080808}.footer-grid a:not(.brand),.footer-grid p,.footer-bottom{color:#bdbdbd}.footer-bottom{border-color:#333}.filter{background:#fff;color:#555;border-color:#ddd;box-shadow:none}.filter[aria-pressed=true]{background:#ed7026;color:#fff;box-shadow:none}.page-hero h1{font-size:clamp(38px,4vw,54px);letter-spacing:-1.5px}.page-hero p,.page-text p,.company-copy>p{color:#666;font-size:16px}.page-hero img{border-radius:18px;box-shadow:none}.privacy-dialog{background:#fff;color:#222;border-radius:18px}.privacy-inner p{color:#666}.rail-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:20px 0 0}.rail-controls span{font-size:12px;color:#76716b;margin-right:10px}.rail-controls button{display:grid;place-items:center}.rail-controls svg{width:18px;height:18px}.mobile-bar{background:#111}.mobile-bar a:last-child{background:#ed7026;color:white}.floating-call{background:#f16b22;box-shadow:0 8px 28px #a53e1938}
@media(max-width:1050px){.desktop-nav{gap:14px}.desktop-nav>a,.nav-disclosure>summary{font-size:12px}.nav-phone{padding:14px;font-size:12px}.company-grid{gap:35px}.service-card{flex-basis:calc((100% - 24px)/2)}.editorial-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.section{padding:55px 0}.nav{height:80px}.brand-real img{width:120px;height:76px}.menu-toggle{border-radius:30px;background:#191919;border-color:#444;box-shadow:none;padding:12px 17px}.mobile-nav.open{background:#111;max-height:calc(100dvh - 80px);overflow:auto}.mobile-nav a,.mobile-group summary{color:#fff}.immersive-hero{min-height:540px}.immersive-content{padding:48px 0}.immersive-content h1{font-size:39px;letter-spacing:-1.2px}.immersive-content>p{font-size:16px}.immersive-content .hero-actions{gap:12px}.immersive-content .hero-actions .button{font-size:13px;padding:16px 20px}.hero-pills{gap:16px}.hero-pills span{font-size:11px;padding:0}.hero-shade{background:linear-gradient(90deg,#000d,#0007)}.section-head{display:block}.section-head>p{margin:18px 0 0;max-width:100%}.service-card{flex-basis:85%;max-width:360px}.card-photo{height:245px}.card-body{padding:23px}.card-body h3{min-height:0}.drone-visual>img{height:350px}.company-grid,.process-grid,.faq-grid,.quick-contact{gap:30px}.project-carousel .project{flex-basis:82%}.project-carousel .photo-open img{height:310px}.editorial-card{flex-basis:88%;padding:26px}.timeline-step{padding:0 14px}.timeline-step summary{font-size:15px;gap:12px}.timeline-step>div{padding-left:50px}.quick-form{padding:24px}.cta-band .wrap{display:block}.cta-actions{margin-top:25px}.cta-band h2{font-size:29px}.rail-controls{margin-top:15px}.compare-card h3{font-size:20px}.soft-section{background:#f6f4f1}.mobile-bar a{font-size:14px}.floating-call{bottom:calc(78px + env(safe-area-inset-bottom))}.hero-crumb{font-size:12px}.nav-phone{display:none}.form-grid{gap:16px}}
@media(prefers-reduced-motion:reduce){.service-card:hover{transform:none}}

/* Explicit, high-contrast gallery icons on all screen sizes. */
.carousel-controls>div{display:flex;gap:9px;flex-shrink:0}.carousel-controls button{display:inline-grid;place-items:center;padding:0;margin:0;width:44px;height:44px;color:#242424}.carousel-controls button svg{display:block;width:20px;height:20px;flex-shrink:0}.carousel-controls button:before,.carousel-controls button:after{content:none!important}.carousel-controls button:disabled{opacity:.5}.carousel-controls button:focus-visible{outline:3px solid #ed7026;outline-offset:3px}.photo-open .expand:before{content:'+';font-size:26px;line-height:1;color:#222}.lightbox-controls #prev-photo:before{content:'‹';font-size:28px}.lightbox-controls #next-photo:before{content:'›';font-size:28px}
@media(max-width:480px){.carousel-controls{gap:12px}.carousel-controls p{max-width:185px;font-size:13px}.carousel-controls>div{gap:6px}.carousel-controls button{width:38px;height:38px}}

/* Motion and depth: coherent transitions, without a loading screen. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:ml-page-out .2s ease both}
::view-transition-new(root){animation:ml-page-in .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes ml-page-out{to{opacity:0;transform:translateY(-7px)}}
@keyframes ml-page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.warranty-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid #ed702659;border-radius:40px;background:#fff3e9;color:#a6420d;font-size:13px;font-weight:700;letter-spacing:.2px;width:fit-content;margin-bottom:22px}
.warranty-badge svg{width:23px;height:23px;flex-shrink:0}.immersive-content>.warranty-badge{color:#fff;background:linear-gradient(125deg,#ed702638,#ffffff10);border-color:#f7b08288;backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 #ffffff25,0 10px 24px #0002}.immersive-content>.warranty-badge svg{color:#ffa262}footer .warranty-badge{color:#ffc09b;background:#ffffff08;border-color:#ed70264d;font-size:12px}.quick-contact .warranty-badge{display:flex;margin-top:22px}.immersive-hero{overflow:hidden}.immersive-bg{animation:ml-hero-settle 1.6s cubic-bezier(.15,.7,.25,1) both}@keyframes ml-hero-settle{from{transform:scale(1.055)}to{transform:scale(1)}}
.immersive-content h1{font-weight:800;text-wrap:balance}.hero-actions .button{transition:transform .25s,box-shadow .25s,background .25s}.hero-pills span{color:#eee}.reading-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:90;pointer-events:none;background:linear-gradient(90deg,#cf4b06,#ff9a52);transform-origin:left;transform:scaleX(0)}
.section-head .eyebrow{position:relative;padding-left:34px}.section-head .eyebrow:before{display:block;position:absolute;left:0;width:23px;height:2px;background:#ed7026;box-shadow:none;border-radius:0}.soft-section{background:radial-gradient(ellipse at top right,#fcebdc77,transparent 50%),#f7f5f2}.section-head h2{text-wrap:balance}.service-card,.editorial-card,.compare-card{transition:box-shadow .3s,border-color .3s,transform .3s}.photo-open img,.card-photo img{transition:transform .65s cubic-bezier(.2,.7,.25,1)}.service-card:focus-visible,.zone:focus-visible{outline:3px solid #ed7026;outline-offset:3px}.timeline-step,.faq-items details{transition:background .3s,border-color .3s}.timeline-step[open]>div,.faq-items details[open]>p,.more-copy:not([hidden]){animation:ml-details-in .32s ease-out both}@keyframes ml-details-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.timeline-step summary b{transition:transform .25s}.timeline-step[open] summary b{transform:rotate(45deg)}.mobile-nav.open{animation:ml-details-in .25s ease-out}.text-link{transition:color .2s,border-color .2s}.text-link:hover{color:#c7571b}.quick-form{background:linear-gradient(145deg,#fff,#f9f4ed);box-shadow:0 18px 50px #4d2e1410}.form-grid input:focus,.form-grid textarea:focus{outline:0;border-color:#dc753c;box-shadow:0 0 0 4px #ed702614}.cta-band{background:radial-gradient(ellipse at top left,#ffa75c,#ed7026 65%)}
@media(hover:hover) and (pointer:fine){.service-card:hover,.editorial-card:hover{transform:translateY(-5px);box-shadow:0 18px 35px #54341916;border-color:#e8b491}.photo-open:hover img,.service-card:hover .card-photo img{transform:scale(1.055)}.compare-card:hover{box-shadow:0 16px 32px #54341912}.zone:hover{transform:translateY(-4px);border-color:#f29658}}
@media(max-width:800px){.immersive-content{padding-top:34px;padding-bottom:42px}.immersive-content>.warranty-badge{font-size:12px;padding:8px 13px;margin-bottom:20px}.immersive-content>.warranty-badge svg{width:20px;height:20px}.immersive-content h1{font-size:clamp(33px,9.6vw,42px)}.hero-pills{row-gap:10px}.reading-progress{height:2px}.section-head .eyebrow{font-size:11px}.button:active,.photo-open:active{transform:scale(.98)}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}.immersive-bg{animation:none!important;transform:none}.service-card:hover,.editorial-card:hover,.zone:hover,.photo-open:hover img,.service-card:hover .card-photo img{transform:none}.reading-progress{transition:none}}

/* Three local entry pages, each with its own address and route back to the whole site. */
.local-locations .zone{display:flex;flex-direction:column;align-items:flex-start}.local-locations address{font-style:normal;font-size:17px;line-height:1.7;color:#fff;margin:0 0 18px}.local-locations .zone p{flex:1}.local-locations .button{font-size:13px;padding:14px 18px;line-height:1.4;width:100%;text-align:center}.location-directions{color:#ffba8c;font-size:13px;text-decoration:underline;text-underline-offset:5px;margin-top:21px}.local-address{font-style:normal;font-size:22px;line-height:1.6;font-weight:600;margin-bottom:24px}.location-actions{display:flex;flex-wrap:wrap;gap:16px}.local-hero-address{padding:15px 20px;border-left:3px solid #f58d47;background:#0005;border-radius:0 12px 12px 0;max-width:560px;margin-top:20px}.local-hero-address>span{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#ffb581}.local-hero-address address{font-size:18px;font-style:normal;line-height:1.6;margin:6px 0}.local-hero-address>a{font-size:13px;color:#fff;text-decoration:underline;text-underline-offset:4px}.full-site-link{white-space:normal}.local-locations .zone h3{margin-top:18px}.map-placeholder p{overflow-wrap:anywhere}
@media(max-width:800px){.local-hero-address{padding:13px 16px}.local-hero-address address{font-size:16px}.local-address{font-size:20px}.location-actions .button{width:100%}.local-locations .zone{padding:27px}.immersive-content .hero-actions .full-site-link{width:100%;max-width:320px}}

/* Lightweight CSS 3D cutaway: no external engine or model download. */
.roof-explorer{background:#101010;color:#fff;overflow:hidden}.roof-explorer .eyebrow{color:#ffab73}.roof-explorer .section-head>p{color:#bbb}.roof-explorer-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}.roof-demo{min-width:0;background:radial-gradient(ellipse at 50% 40%,#45403a 0,#1b1b1b 58%);border:1px solid #ffffff1c;border-radius:24px;overflow:hidden}.roof-stage{height:420px;position:relative;perspective:950px;touch-action:pan-y;cursor:grab;isolation:isolate}.roof-stage:active{cursor:grabbing}.roof-stage:focus-visible{outline:3px solid #f58e48;outline-offset:-5px}.roof-orbit{position:absolute;width:280px;height:230px;left:calc(50% - 140px);top:110px;transform-style:preserve-3d;transform:rotateX(57deg) rotateZ(var(--roof-angle,-28deg));--spread:0px}.roof-layer{position:absolute;inset:0;transform-style:preserve-3d;border:1px solid #ffffff40;box-shadow:0 8px 14px #0004;transition:filter .25s}.roof-layer>span{position:absolute;left:12px;bottom:9px;font-size:9px;letter-spacing:1.2px;font-weight:700;text-shadow:0 1px 4px #000;color:#fff}.roof-frame{background:repeating-linear-gradient(90deg,#b88b51 0 15px,#654727 15px 19px,transparent 19px 53px),repeating-linear-gradient(0deg,#9c713f 0 14px,transparent 14px 78px);transform:translateZ(-24px)}.roof-membrane{background:repeating-linear-gradient(0deg,#586461 0 56px,#6e7b74 57px 59px);transform:translateZ(calc(-8px + var(--spread)))}.roof-battens{background:repeating-linear-gradient(0deg,#ba925e 0 9px,#755434 9px 13px,transparent 13px 36px);transform:translateZ(calc(8px + var(--spread)*2));border-color:transparent}.roof-cover{background:repeating-linear-gradient(90deg,transparent 0 44px,#060a0d99 45px 47px),repeating-linear-gradient(0deg,#28333b 0 29px,#48535a 30px 33px,#131a20 34px 36px);transform:translateZ(calc(24px + var(--spread)*3));border-bottom:7px solid #222d35}.roof-ridge{position:absolute;top:-8px;left:-7px;right:-7px;height:16px;background:linear-gradient(#b7bec2,#445059 50%,#89949b);border-radius:6px;box-shadow:0 4px 5px #0009}.roof-gutter{position:absolute;bottom:-14px;left:-8px;right:-8px;height:15px;border-radius:0 0 8px 8px;background:linear-gradient(#444f58,#c1c9cc 45%,#667580);box-shadow:0 5px 8px #0007}.roof-window{position:absolute;left:100px;top:76px;width:66px;height:83px;background:#bec5c8;border:6px solid #18232c;box-shadow:3px 5px 4px #0008;transform:translateZ(4px)}.roof-window i{display:block;position:absolute;inset:3px;background:linear-gradient(135deg,#bed5dc,#5b899d 45%,#b4d3dc 46%,#456775 51%);border:2px solid #566268}.roof-stage-caption{position:absolute;bottom:19px;left:0;right:0;text-align:center;color:#bfb7ae;font-size:9px;letter-spacing:1.8px}.roof-controls{border-top:1px solid #ffffff18;padding:20px 24px;display:grid;gap:12px;background:#1118}.roof-controls label{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:14px;font-size:12px;color:#ddd}.roof-controls input{width:100%;accent-color:#f47728;min-height:26px}.roof-reset{justify-self:end;background:none;border:0;color:#ffb17d;padding:7px 0;text-decoration:underline;text-underline-offset:4px;font-size:12px}.roof-choices{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}.roof-choices button{background:#ffffff08;color:#ddd;border:1px solid #ffffff28;border-radius:30px;font-size:13px;padding:12px 16px}.roof-choices button[aria-pressed=true]{background:#ed7026;border-color:#ffb37e;color:#fff;box-shadow:0 5px 17px #ed70262a}.roof-choices button:focus-visible{outline:3px solid #fff;outline-offset:3px}.roof-description{min-height:240px;padding:27px;border:1px solid #ffffff21;border-radius:18px;background:linear-gradient(135deg,#ffffff0c,#ffffff03)}.roof-description h3{font-size:27px}.roof-description p{color:#c4c4c4;font-size:15px}.roof-information>.form-note{color:#999;margin-top:20px}.roof-demo[data-part=faitage] .roof-ridge,.roof-demo[data-part=gouttiere] .roof-gutter,.roof-demo[data-part=fenetre] .roof-window{outline:3px solid #ff8e39;filter:drop-shadow(0 0 10px #ff8e39)}.roof-demo[data-part=structure] .roof-frame,.roof-demo[data-part=structure] .roof-battens{filter:brightness(1.35)}
@media(hover:hover) and (pointer:fine){.service-card,.editorial-card{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .2s,box-shadow .3s}.service-card:hover,.editorial-card:hover{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-5px)}}
@media(max-width:800px){.roof-explorer-grid{grid-template-columns:1fr;gap:25px}.roof-stage{height:350px;perspective:850px}.roof-orbit{top:90px;width:240px;height:200px;left:calc(50% - 120px)}.roof-window{left:82px;top:60px;width:58px;height:73px}.roof-controls{padding:15px 18px}.roof-controls label{grid-template-columns:135px 1fr}.roof-description{min-height:0;padding:23px}.roof-choices{gap:7px}.roof-choices button{padding:11px 13px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.service-card,.editorial-card,.service-card:hover,.editorial-card:hover{transform:none!important}}
@supports not (transform-style:preserve-3d){.roof-orbit{transform:none}.roof-frame,.roof-membrane,.roof-battens{display:none}}
.timber-stage{height:450px;position:relative;background:radial-gradient(ellipse at 50% 55%,#39332b,#181818 70%)}.timber-canvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab}.timber-canvas:active{cursor:grabbing}.timber-canvas:focus-visible{outline:3px solid #ed7026;outline-offset:-5px}.timber-demo .roof-controls label{grid-template-columns:145px 1fr}.timber-stage .roof-stage-caption{pointer-events:none}.timber-demo{box-shadow:inset 0 1px 0 #ffffff12,0 20px 55px #0003}.roof-choices button[data-timber][aria-pressed=true]{background:#ed7026;border-color:#ffb37e;color:#fff;box-shadow:0 5px 17px #ed70262a}
@media(max-width:800px){.timber-stage{height:360px}.timber-demo .roof-controls label{grid-template-columns:135px 1fr}}
.roof-tiles{justify-self:stretch;padding:12px 18px;border:1px solid #ef975e;border-radius:30px;background:linear-gradient(150deg,#f7924f,#d65d19);color:#fff;font-size:13px;font-weight:700;box-shadow:inset 0 1px 0 #ffffff44,0 4px 12px #0002}.roof-tiles:hover{filter:brightness(1.1)}.roof-tiles:focus-visible{outline:3px solid #fff;outline-offset:3px}.roof-tiles[aria-pressed=true]{background:#29221e;border-color:#dc8b54;color:#ffc39b}
.roof-build-control{grid-row:1;padding:16px 17px;background:#ffffff09;border:1px solid #f49c6144;border-radius:14px}.roof-controls .roof-build-control label{display:flex;justify-content:space-between;font-size:13px;font-weight:700;gap:10px}.roof-build-value{color:#ffae78;font-variant-numeric:tabular-nums}.roof-controls .roof-build{appearance:none;-webkit-appearance:none;display:block;width:100%;height:8px;min-height:8px;margin:24px 0;background:linear-gradient(90deg,#f47c2f var(--build-progress,0%),#59504a var(--build-progress,0%));border:0;border-radius:12px;cursor:ew-resize;touch-action:pan-y}.roof-build::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:30px;height:30px;border-radius:50%;background:#ff9346;border:4px solid #fff;box-shadow:0 3px 12px #0006}.roof-build::-moz-range-thumb{width:23px;height:23px;border-radius:50%;background:#ff9346;border:4px solid #fff;box-shadow:0 3px 12px #0006}.roof-build:focus-visible{outline:3px solid #ffb78a;outline-offset:8px}.roof-build-ends{display:flex;justify-content:space-between;font-size:11px;color:#c7c1bb;gap:12px}
.roof-autoplay{justify-self:stretch;padding:12px 18px;border:1px solid #ef975e;border-radius:30px;background:linear-gradient(150deg,#f7924f,#d65d19);color:#fff;font-size:13px;font-weight:700}.roof-autoplay:focus-visible{outline:3px solid #fff;outline-offset:3px}.roof-autoplay[aria-pressed=false]{background:#28221e;color:#ffbc8f}.roof-autoplay:hover{filter:brightness(1.1)}
/* Material configurator inspired by the roof-sample reference. */
.materials-explorer{background:#090c10}.materials-explorer .roof-explorer-grid{grid-template-columns:1.55fr 1fr;gap:36px}.materials-explorer .roof-demo{background:#0c1117;border-color:#ffffff1b}.materials-explorer .timber-stage{height:480px;background:radial-gradient(ellipse at center,#2e3942,#0b0e13 72%)}.material-tabs{display:grid;gap:10px;margin-bottom:20px}.material-tabs button{display:flex;align-items:center;gap:16px;text-align:left;padding:16px 20px;color:#f4f4f4;background:#ffffff05;border:1px solid #ffffff25;border-radius:12px;transition:background .25s,border-color .25s,box-shadow .25s}.material-tabs button[aria-selected=true]{border-color:#ee803f;background:linear-gradient(110deg,#f2772520,#ffffff05);box-shadow:inset 3px 0 #f68a44,0 6px 24px #0002}.material-tabs button:focus-visible{outline:3px solid #ffc18f;outline-offset:3px}.material-tabs button>span:last-child{font-size:16px;font-weight:700}.material-tabs small{display:block;font-size:12px;font-weight:400;color:#aeb3ba;margin-top:6px}.material-swatch{width:40px;height:44px;border-radius:6px;box-shadow:inset 0 1px 0 #ffffff50,0 5px 12px #0005;transform:rotate(-9deg);flex-shrink:0}.swatch-beton{background:repeating-linear-gradient(90deg,#666b68,#969a95 12px,#555b59 24px)}.swatch-mecanique{background:repeating-linear-gradient(90deg,#9d4525,#da8550 15px,#77351e 20px)}.swatch-ardoise{background:repeating-linear-gradient(0deg,#35434e 0 12px,#8294a0 13px,#25313a 14px)}.material-legend{position:absolute;left:16px;top:16px;display:flex;flex-wrap:wrap;gap:7px;pointer-events:none}.material-legend span{font-size:10px;color:#ddd;padding:7px 10px;border:1px solid #ffffff25;border-radius:20px;background:#070a0dc9}.material-legend span:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#ed7026;margin-right:7px}.materials-explorer .roof-description{min-height:220px}.materials-explorer .roof-controls{grid-template-columns:1fr 1fr}.materials-explorer .roof-build-control{grid-column:1/-1}.materials-explorer .roof-controls>label{display:block}.materials-explorer .roof-controls>label input{display:block;margin-top:9px}.materials-explorer .roof-reset{grid-column:1/-1}
@media(max-width:800px){.materials-explorer .roof-explorer-grid{grid-template-columns:1fr;gap:24px}.materials-explorer .roof-information{display:contents}.materials-explorer .material-tabs{grid-row:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0}.material-tabs button{display:block;text-align:center;padding:13px 7px}.material-tabs button>span:last-child{font-size:12px}.material-tabs small{display:none}.material-swatch{display:block;margin:0 auto 11px;width:30px;height:34px}.materials-explorer .timber-stage{height:370px}.materials-explorer .roof-description{min-height:0}.materials-explorer .form-note{margin:0}.material-legend{left:10px;top:12px;gap:4px}.material-legend span{font-size:9px;padding:6px 7px}}
/* Close roof-sample composition and a quieter, more detailed material presentation. */
.materials-explorer .roof-explorer-grid{grid-template-columns:minmax(250px,.8fr) minmax(0,1.8fr);align-items:start;gap:28px}.materials-explorer .roof-information{grid-column:1;grid-row:1}.materials-explorer .roof-demo{grid-column:2;grid-row:1;border-radius:18px}.materials-explorer .timber-stage{height:560px;background:radial-gradient(ellipse at 55% 55%,#303a43 0,#11161d 45%,#070b10 85%)}.materials-explorer .roof-description{padding:24px 20px;background:#ffffff04;border-color:#ffffff15;min-height:0}.materials-explorer .roof-description h3{font-size:25px;margin-bottom:14px}.materials-explorer .roof-description p{font-size:14px;line-height:1.75}.material-tabs button{padding:15px 17px}.material-benefit-title{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#ffbc8e;margin:25px 0 14px}.material-benefits{list-style:none;padding:0;margin:0 0 25px}.material-benefits li{font-size:13px;color:#d9dce0;line-height:1.65;padding:11px 0 11px 22px;border-bottom:1px solid #ffffff10;position:relative}.material-benefits li:before{content:'✓';position:absolute;left:0;color:#f39554}.materials-explorer .roof-description .button{font-size:12px;width:100%;padding:14px 16px}.materials-explorer .material-legend{top:auto;bottom:53px;left:18px}.materials-explorer .roof-controls{padding:18px 22px}.material-tabs button[aria-selected=true]{background:linear-gradient(100deg,#ed702620,#141619);border-color:#d6763b}.materials-explorer .section-head>p{max-width:430px}
@media(max-width:800px){.materials-explorer .roof-explorer-grid{grid-template-columns:1fr}.materials-explorer .roof-information{display:contents}.materials-explorer .roof-demo{grid-column:auto;grid-row:2}.materials-explorer .material-tabs{grid-row:1}.materials-explorer .timber-stage{height:420px}.materials-explorer .roof-description{grid-row:3;padding:24px}.materials-explorer .material-legend{bottom:50px;left:10px}.material-benefits li{font-size:14px}.materials-explorer .roof-description h3{font-size:27px}}

/* Repeating light sweep on the telephone action, every two seconds. */
.nav-phone,.immersive-content .hero-actions a[href^="tel:"]{position:relative;isolation:isolate;overflow:hidden;border-top-color:#ffc38b;box-shadow:inset 0 1px 0 #ffffff7a,inset 0 -2px 0 #7d2d1730,0 4px 0 #a8420d,0 10px 24px #ed702630}
.nav-phone:after,.immersive-content .hero-actions a[href^="tel:"]:after{content:'';position:absolute;pointer-events:none;z-index:1;left:0;top:-50%;width:45%;height:200%;background:linear-gradient(90deg,transparent,#ffffff80,transparent);animation:ml-call-glint 2s ease-in-out infinite!important;transform:translateX(-200%) skewX(-22deg)}
@keyframes ml-call-glint{0%{transform:translateX(-200%) skewX(-22deg);opacity:0}10%{opacity:1}40%{transform:translateX(350%) skewX(-22deg);opacity:0}100%{transform:translateX(350%) skewX(-22deg);opacity:0}}
/* Raised contact buttons kept clear of the iPhone home indicator. */
@media(max-width:800px){
 .mobile-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:8px 12px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#1d1d1df5,#090909fa);border-top:1px solid #ffffff25;box-shadow:0 -7px 25px #0002;backdrop-filter:blur(12px)}
 .mobile-bar a{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:12px 10px;border:1px solid #606060;border-top-color:#999;border-radius:13px;background:linear-gradient(165deg,#4c4c4c 0,#262626 45%,#141414 100%);color:#fff;font-size:14px;font-weight:750;text-shadow:0 1px 2px #0006;box-shadow:inset 0 1px 0 #ffffff42,inset 0 -1px 0 #0007,0 4px 0 #000,0 7px 12px #0005;transition:transform .15s,filter .15s,box-shadow .15s;overflow:hidden}
 .mobile-bar a:last-child{background:linear-gradient(165deg,#ffb562 0,#fb8b32 35%,#ee701d 70%,#d75510 100%);border:1px solid #ffa759;border-top-color:#ffd1a0;color:#fff;text-shadow:0 1px 2px #a03b1266;box-shadow:inset 0 1px 0 #ffffff79,inset 0 -1px 0 #af420733,0 4px 0 #9d3809,0 7px 16px #ea6f2030}
 .mobile-bar a:before{content:'';position:absolute;left:7px;right:7px;top:1px;height:42%;background:linear-gradient(#ffffff25,transparent);border-radius:10px 10px 50% 50%;pointer-events:none}
 .mobile-bar a svg{width:20px;height:20px;flex-shrink:0;filter:drop-shadow(0 1px 1px #0002)}
 .mobile-bar a:active{transform:translateY(3px);filter:brightness(.97);box-shadow:inset 0 1px 3px #0003,0 1px 0 #050505}.mobile-bar a:last-child:active{box-shadow:inset 0 1px 3px #9f390722,0 1px 0 #9d3809}.mobile-bar a:focus-visible{outline:3px solid #fff;outline-offset:3px}
 .floating-call{bottom:calc(88px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.nav-phone:after,.immersive-content .hero-actions a[href^="tel:"]:after{animation:none!important;display:none}}

/* Portrait drone footage retains the entire roof, without cropping. */
.drone-video{margin:0;overflow:hidden;border:1px solid #34383c;border-radius:22px;background:#0b0e12;box-shadow:0 18px 45px #0003}
.drone-video video{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;background:#0b0e12}
.drone-video figcaption{position:static;padding:16px 20px;background:#15191e;color:#ddd;font-size:14px;line-height:1.5;border-top:1px solid #30343a}
@media(max-width:800px){.drone-video video{max-height:560px}.drone-video figcaption{padding:14px 16px}}

.immersive-hero .immersive-bg{object-position:center center}
.immersive-hero .hero-shade{background:linear-gradient(90deg,#000d 0%,#0009 42%,#0002 76%),linear-gradient(0deg,#0009,transparent 40%)}
@media(max-width:800px){.immersive-hero .immersive-bg{object-position:76% center}.immersive-hero .hero-shade{background:linear-gradient(90deg,#000b,#0006),linear-gradient(0deg,#000b,transparent)}}
