:root{--blue:#087bc1;--blue-dark:#0469aa;--navy:#152a38;--ink:#1c303d;--muted:#61717d;--paper:#f9faf8;--pale:#edf5f8;--line:#dce4e7;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f1a951;outline-offset:5px}[hidden]{display:none!important}.container{width:calc(100% - 112px);max-width:1240px;margin:auto}.topbar{background:var(--navy);color:#eaf4fa;font-size:11px;letter-spacing:.03em}.topbar-inner{display:flex;justify-content:space-between;align-items:center;min-height:35px;gap:16px}.topbar a{font-size:11px}.topbar a span{margin-left:12px}.live-dot{display:inline-block;width:5px;height:5px;background:#74bce2;border-radius:50%;margin:0 7px 2px 0}.header{background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:102px;gap:25px}.brand{width:190px;flex-shrink:0}.brand img{width:100%;height:auto;mix-blend-mode:multiply}.nav nav{display:flex;align-items:center;gap:33px;font-size:12px;font-weight:600}.nav nav>a:not(.button):hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--blue);color:white;padding:17px 23px;border:1px solid transparent;border-radius:5px;font-size:12px;line-height:1.4;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:var(--blue-dark);transform:translateY(-2px)}.button span{font-size:19px;line-height:1}.button-small{padding:13px 18px;gap:20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:58px;padding-bottom:68px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.13em;color:var(--blue);margin:0 0 24px;line-height:1.6}.short-line{display:inline-block;width:23px;height:1px;background:var(--blue);margin-right:7px;vertical-align:middle}h1,h2,h3,p{overflow-wrap:break-word}h1{font-size:clamp(64px,6.9vw,101px);line-height:.99;letter-spacing:-.065em;font-weight:500;margin:0 0 28px;position:relative;max-width:540px}h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.055em;color:var(--blue)}.title-sparkle{width:49px;height:49px;position:absolute;right:5px;bottom:8px;color:var(--blue);stroke:none;transform:rotate(10deg)}.hero-description{color:var(--muted);max-width:390px;font-size:14px;line-height:1.8;margin:0 0 28px}.hero-actions{display:flex;align-items:center;gap:24px}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:600}.text-link:hover{color:var(--blue)}.text-link svg{width:17px;height:17px}.hero-note{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin:21px 0 0}.hero-note>span:first-child{color:var(--blue)}.note-divider{width:3px;height:3px;background:#8b9aa2;border-radius:50%;margin:0 2px}.hero-visual{height:545px;position:relative;margin-right:15px}.photo-wrap{height:100%;overflow:hidden;border-radius:3px 92px 3px 3px;background:#cee1eb;position:relative}.photo-wrap>img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1s}.photo-wrap:hover>img{transform:scale(1.025)}.photo-label{position:absolute;bottom:13px;right:15px;font-size:8px;letter-spacing:.13em;color:#fff;background:#152a3870;padding:3px 7px;border-radius:2px}.hero-stamp{position:absolute;bottom:32px;left:-28px;background:var(--paper);display:flex;align-items:center;gap:16px;padding:19px 27px 19px 21px;border-radius:3px;box-shadow:0 8px 35px #152a3810;line-height:1.5;font-size:14px;letter-spacing:-.02em}.hero-stamp svg{width:38px;height:38px;color:var(--blue);stroke-width:1}.hero-stamp strong{font-weight:500;color:var(--blue)}.vertical-caption{writing-mode:vertical-rl;position:absolute;right:-23px;top:123px;font-size:8px;letter-spacing:.17em;color:var(--muted)}.service-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f0f4f3}.service-strip .container{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;font-size:10px;letter-spacing:.065em;font-weight:600}.strip-star{color:var(--blue);font-size:22px;font-weight:400}.section{padding-top:90px;padding-bottom:90px}h2{font-size:clamp(35px,3.6vw,49px);line-height:1.13;letter-spacing:-.048em;font-weight:500;margin:0}h3{letter-spacing:-.025em}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:end;margin-bottom:48px}.section-heading>.eyebrow{grid-column:1}.section-heading>p{font-size:13px;line-height:1.9;color:var(--muted);max-width:340px;margin:0 0 3px;justify-self:end}.section-heading .eyebrow{margin-bottom:16px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:32px 34px 27px 0}.service+.service{border-left:1px solid var(--line);padding-left:34px}.service-top{display:flex;justify-content:space-between;align-items:start;color:var(--blue);margin-bottom:27px}.service-top svg{width:43px;height:43px;stroke-width:1.15}.service-top span{font-size:10px;color:#7e8d96}.service h3{font-size:19px;font-weight:500;margin:0 0 12px}.service p{font-size:12px;color:var(--muted);max-width:290px;min-height:67px;line-height:1.9;margin:0 0 23px}.service>a{font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:10px}.service>a span{font-size:20px;color:var(--blue)}.service>a:hover{color:var(--blue)}.audience-section{background:var(--navy);color:#f3f6f5;padding:76px 0}.audience-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:center}.audience-section .eyebrow{color:#73bbdf;margin-bottom:22px}.audience-section h2 em{color:#83c5e6}.audience-intro>p:not(.eyebrow){font-size:13px;line-height:1.85;color:#b7c7cf;max-width:335px;margin:24px 0 28px}.audience-tabs{display:inline-flex;gap:5px;background:#ffffff09;border:1px solid #ffffff25;padding:5px;border-radius:6px}.audience-tabs button{border:0;border-radius:3px;background:transparent;color:#c9d5db;padding:11px 18px;font-size:11px}.audience-tabs [aria-selected=true]{background:#f5f8f7;color:var(--navy)}.audience-panel{border-left:1px solid #ffffff25;padding-left:55px;min-height:318px}.panel-number{color:#82a2b4;font-size:11px;letter-spacing:.1em}.audience-panel h3{font-size:29px;line-height:1.23;font-weight:400;margin:17px 0}.audience-panel>p{font-size:12px;color:#b7c7cf;line-height:1.9;margin:0 0 21px}.check-list{padding:0;list-style:none;margin:0 0 23px;font-size:11px;color:#d5dfe4}.check-list li{margin:9px 0;position:relative;padding-left:19px}.check-list li:before{content:'✓';position:absolute;left:0;color:#7ac0e4}.audience-panel .text-link{color:#9bd8f6;font-size:11px}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin:0;padding:0}.step-number{display:block;color:var(--blue);font-family:var(--serif);font-style:italic;font-size:36px;border-top:1px solid var(--line);padding-top:19px}.steps h3{font-size:18px;font-weight:500;margin:12px 0}.steps p{font-size:12px;line-height:1.9;color:var(--muted);margin:0;max-width:300px}.area-section{background:var(--pale);padding:75px 0}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.area-grid .eyebrow{margin-bottom:19px}.area-grid>div>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.9;max-width:395px;margin:24px 0}.area-grid strong{font-weight:600}.towns{display:flex;flex-wrap:wrap;gap:8px;max-width:400px;margin:0 0 24px}.towns span{font-size:10px;border:1px solid #cadde7;border-radius:4px;padding:5px 12px;background:#ffffff55}.area-visual{height:370px;position:relative;overflow:hidden;isolation:isolate;border-radius:50%;background:radial-gradient(ellipse at center,#ffffff70,transparent 70%)}.area-ring{position:absolute;border:1px solid #bfd4df;border-radius:50%;left:50%;top:47%;transform:translate(-50%,-50%);z-index:-1}.ring-one{width:150px;height:150px}.ring-two{width:260px;height:260px}.ring-three{width:365px;height:365px;border-style:dashed}.map-road{position:absolute;z-index:-1;width:100%;height:11px;border-top:1px solid #d7e5eb;border-bottom:1px solid #d7e5eb;background:#f7fafb;top:50%;left:0;transform:rotate(-28deg)}.road-two{transform:rotate(53deg);height:7px}.map-town{position:absolute;font-size:11px;color:#587080}.map-town:before{content:'';display:inline-block;width:5px;height:5px;background:#91acbc;border:2px solid var(--pale);outline:1px solid #91acbc;border-radius:50%;margin-right:6px}.town-bethune{top:48px;left:55px}.town-lens{right:45px;bottom:99px}.town-lievin{right:104px;bottom:58px}.town-noeux{left:15px;bottom:111px}.town-labassee{right:20px;top:72px}.map-center{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;white-space:nowrap}.map-center svg{width:35px;height:35px;color:var(--blue);fill:var(--blue);stroke:#fff;stroke-width:1.1}.map-center strong{background:white;padding:7px 13px;margin-top:6px;border:1px solid #d5e4ec;border-radius:4px;font-size:11px;box-shadow:0 4px 18px #152a3808}.radius-label{position:absolute;left:40%;top:67%;font-size:10px;color:var(--blue)}.radius-label strong{font-size:22px;letter-spacing:-.05em}.area-visual small{position:absolute;bottom:0;left:0;width:100%;text-align:center;font-size:8px;color:#6e8795}.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:90px}.faq-section .eyebrow{margin-bottom:17px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:12px;font-weight:600;padding:20px 0}summary::-webkit-details-marker{display:none}summary>span{font-weight:400;font-size:21px;color:var(--blue)}details[open] summary>span{transform:rotate(45deg)}details>p{font-size:12px;color:var(--muted);line-height:1.8;padding:0 25px 18px 0;margin:0}.quote-section{background:var(--blue);color:white;padding:85px 0}.quote-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:start}.quote-intro{padding-top:16px;position:sticky;top:135px}.quote-intro .eyebrow{color:#c4e7fa;font-size:9px;margin-bottom:24px}.quote-intro h2{font-size:57px}.quote-intro h2 em{color:#d3edfc}.quote-intro>p:not(.eyebrow):not(.contact-note){font-size:13px;line-height:1.9;color:#dbedfa;max-width:320px;margin:28px 0}.contact-phone{display:flex;align-items:center;gap:35px;font-size:27px;letter-spacing:-.04em;font-weight:500;margin:32px 0 20px}.contact-phone>span{font-size:25px}.button-whatsapp{background:transparent;color:white;border-color:#ffffff70;font-size:12px;gap:12px}.button-whatsapp:hover{background:#ffffff15}.button-whatsapp svg{width:19px;height:19px}.button-whatsapp>span{margin-left:16px}.contact-note{font-size:10px;color:#c8e5f6;line-height:1.8;margin:14px 0}.quote-form{background:var(--paper);color:var(--ink);padding:32px;border-radius:5px}.form-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.form-title h3{font-size:23px;font-weight:500;margin:0}.form-title>span{font-size:8px;color:var(--blue);padding:5px 8px;background:#e9f2f8;border-radius:3px;white-space:nowrap}.form-description{font-size:11px;color:var(--muted);margin:5px 0 22px}.profile-choice{border:0;padding:0;margin:0 0 17px;display:flex;gap:9px}.profile-choice legend{font-size:10px;margin-bottom:7px}.profile-choice label{flex:1;position:relative;margin:0}.profile-choice input{position:absolute;opacity:0}.profile-choice span{display:block;padding:10px;text-align:center;font-size:11px;border:1px solid var(--line);border-radius:3px;cursor:pointer}.profile-choice input:checked+span{color:var(--blue);border-color:var(--blue);background:#eaf4fa}.profile-choice input:focus-visible+span{outline:3px solid #f1a951;outline-offset:2px}.quote-form>label,.form-row>label{display:block;font-size:10px;font-weight:600;margin-bottom:15px}.required{color:var(--blue)}.optional{color:#7a8992;font-weight:400;font-size:9px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.quote-form input:not([type=radio]):not([type=checkbox]):not([type=file]),.quote-form select,.quote-form textarea{display:block;width:100%;padding:11px 12px;margin-top:6px;border:1px solid #d5dfe4;background:white;border-radius:3px;font-size:11px;color:var(--ink);font-weight:400;line-height:1.5;min-width:0}.quote-form textarea{resize:vertical;min-height:83px}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#8a959d}.upload-zone{display:flex;align-items:center;gap:12px;padding:17px 13px;border:1px dashed #b8d0de;background:#f1f6f8;border-radius:3px;cursor:pointer}.upload-zone>svg{color:var(--blue);width:24px;height:24px;flex-shrink:0}.upload-zone strong{display:block;font-size:11px;font-weight:500}.upload-zone small{display:block;font-size:8px;color:var(--muted);margin-top:3px}.upload-plus{margin-left:auto;font-size:23px;color:var(--blue)}#photos{display:block;font-size:10px;max-width:100%;margin-top:7px}#file-status{font-size:10px;color:#9e352d;margin:5px 0}.file-previews{display:flex;gap:8px;flex-wrap:wrap}.file-preview{position:relative;margin-top:9px}.file-preview img{width:70px;height:60px;object-fit:cover;border-radius:3px}.file-preview button{position:absolute;right:-4px;top:-4px;border:0;background:var(--navy);color:white;border-radius:50%;width:20px;height:20px;font-size:15px;line-height:1}.quote-form>.consent{display:flex;align-items:start;gap:8px;font-size:9px;line-height:1.7;font-weight:400;color:var(--muted);margin-top:17px;margin-bottom:18px}.consent input{margin:3px 0 0;accent-color:var(--blue);flex-shrink:0}.consent a{color:var(--blue);text-decoration:underline}.submit-button{width:100%;justify-content:space-between;padding:15px 18px}.submit-button:disabled{opacity:.6;cursor:wait;transform:none}.form-footnote{font-size:8px;color:var(--muted);margin:9px 0 0;text-align:center}.form-status:not(:empty){font-size:11px;border-left:2px solid var(--blue);padding:12px;background:var(--pale);margin-top:15px}.form-status.error{border-color:#b34234;color:#813227}.form-status a{color:var(--blue);text-decoration:underline}.honeypot{position:absolute;left:-9999px}.footer{background:var(--navy);color:#b9cad4}.footer-main{display:flex;align-items:center;justify-content:space-between;padding-top:42px;padding-bottom:38px;gap:40px}.footer-brand{font-size:36px;letter-spacing:-.07em;font-weight:700;color:#f4f8fa;line-height:1}.footer-brand>span{color:#68b9e7}.footer-brand small{display:block;font-size:8px;letter-spacing:.37em;font-weight:500;margin-top:9px}.footer-main>p{font-size:10px;line-height:1.9;margin:0}.footer-main>a:last-child{color:white;font-size:13px}.footer-main>a:last-child span{margin-left:15px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff1c;padding-top:18px;padding-bottom:21px;font-size:8px;color:#8da4b2}.footer-bottom>div{display:flex;gap:25px}.footer-bottom>span:last-child{font-family:var(--serif);font-size:12px;font-style:italic;color:#b9d6e5}.mobile-contact{display:none}.skip-link{position:fixed;left:10px;top:-80px;z-index:100;background:white;color:var(--ink);padding:12px}.skip-link:focus{top:10px}.info-dialog{max-width:620px;width:calc(100% - 32px);border:0;border-radius:6px;padding:40px;color:var(--ink);background:var(--paper);max-height:85vh}.info-dialog::backdrop{background:#10273799;backdrop-filter:blur(3px)}.info-dialog h2{font-size:34px;margin-bottom:22px}.info-dialog p{font-size:12px;line-height:1.9}.info-dialog a{color:var(--blue);text-decoration:underline}.close-dialog{position:absolute;right:16px;top:10px;background:none;border:0;color:var(--blue);font-size:28px}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}.project h3{font-weight:500;font-size:17px;margin:15px 0 4px}.project p{color:var(--muted);font-size:11px;margin:0}.project small{color:var(--blue);font-size:9px}
@media(min-width:1500px){.hero{padding-top:70px;padding-bottom:80px}.hero-visual{height:590px}}
@media(max-width:1100px){.container{width:calc(100% - 72px)}.nav nav{gap:22px;font-size:11px}.hero{gap:40px}.hero-visual{height:510px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-actions .button{padding:15px 17px;gap:18px}.hero-actions .text-link{font-size:11px}h1{font-size:76px}.title-sparkle{width:38px;right:0}.section-heading{gap:50px}.audience-grid,.area-grid,.quote-grid,.faq-section{gap:55px}.audience-panel{padding-left:35px}.service{padding-right:25px}.service+.service{padding-left:25px}.service h3{font-size:17px}.service-strip .container{font-size:8px;gap:12px}.quote-intro h2{font-size:48px}.quote-form{padding:27px}.quote-grid{grid-template-columns:.9fr 1.1fr}.contact-phone{font-size:23px}.form-title{flex-wrap:wrap;gap:5px}.steps{gap:35px}}
@media(max-width:800px){.container{width:calc(100% - 40px)}.topbar-inner{justify-content:center;font-size:9px;min-height:29px}.topbar-inner>a{display:none}.nav{min-height:81px}.brand{width:170px}.menu-toggle{display:flex;align-items:center;gap:15px;border:1px solid var(--line);border-radius:3px;padding:8px 12px;background:transparent;font-size:11px;color:var(--ink)}.nav nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px;display:none;box-shadow:0 16px 30px #152a3810;align-items:stretch;gap:8px}.nav nav.is-open{display:flex;flex-direction:column}.nav nav>a{padding:12px;font-size:13px}.hero{padding-top:38px;padding-bottom:45px;gap:35px;grid-template-columns:1fr 1fr}h1{font-size:65px}.hero-description{font-size:12px;line-height:1.8}.hero .eyebrow{font-size:8px}.hero-visual{height:420px;margin-right:10px}.hero-note{font-size:8px;flex-wrap:wrap}.hero-actions{gap:15px}.hero-actions .text-link{padding-left:2px}.hero-stamp{left:-18px;bottom:24px;font-size:11px;padding:14px 18px;gap:10px}.hero-stamp svg{width:28px;height:28px}.title-sparkle{width:30px;height:30px;right:5px;bottom:5px}.vertical-caption{right:-18px;font-size:7px}.service-strip .container{flex-wrap:wrap;justify-content:center;padding:16px 0;min-height:0;column-gap:18px;row-gap:8px}.strip-star{font-size:14px}.section{padding-top:65px;padding-bottom:65px}.section-heading{grid-template-columns:1fr 1fr;gap:30px}.section-heading>p{font-size:11px}.service{padding-right:17px}.service+.service{padding-left:17px}.service h3{font-size:15px}.service p{font-size:10px;min-height:90px}.service>a{font-size:9px}.service-top svg{width:36px;height:36px}.audience-grid{gap:35px}.audience-panel{padding-left:25px}.audience-panel h3{font-size:23px}.audience-intro h2{font-size:33px}.audience-intro>p:not(.eyebrow),.audience-panel>p{font-size:11px}.audience-tabs button{font-size:10px;padding:10px 12px}.check-list{font-size:10px}.steps{gap:24px}.steps h3{font-size:16px}.steps p{font-size:11px}.area-grid{gap:30px}.area-visual{height:330px}.town-bethune{left:24px}.town-labassee{right:0}.town-lens{right:10px}.town-noeux{left:0}.town-lievin{right:50px}.radius-label{left:38%}.faq-section{gap:35px}.quote-grid{gap:35px;grid-template-columns:.85fr 1.15fr}.quote-intro h2{font-size:40px}.contact-phone{font-size:20px;gap:15px}.quote-intro>p:not(.eyebrow):not(.contact-note){font-size:11px}.button-whatsapp{font-size:10px;padding:13px 15px;gap:7px}.button-whatsapp>span{margin-left:4px}.contact-note{font-size:9px}.quote-form{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.upload-zone{gap:8px;padding:13px 10px}.upload-zone small{font-size:7px}.footer-main{gap:22px}.footer-main>p{font-size:9px}.footer-main>a:last-child{font-size:11px}.footer-bottom{font-size:7px}.footer-bottom>div{gap:14px}}
@media(max-width:580px){html{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.hero{grid-template-columns:1fr;gap:33px;padding-top:36px;padding-bottom:37px}.hero-copy{padding-right:2px}.hero .eyebrow{font-size:8px;margin-bottom:22px}h1{font-size:clamp(65px,17.4vw,88px);max-width:380px;line-height:.98;margin-bottom:23px}.title-sparkle{width:41px;height:41px;right:15px;bottom:9px}.hero-description{font-size:13px;max-width:350px;margin-bottom:23px}.hero-actions{gap:20px;flex-wrap:nowrap}.hero-actions .button{font-size:11px;padding:15px 17px;gap:16px}.hero-actions .text-link{font-size:10px;gap:7px}.hero-note{font-size:9px;margin-top:17px;gap:6px}.hero-visual{height:360px;margin-left:17px;margin-right:12px}.photo-wrap{border-radius:3px 66px 3px 3px}.photo-wrap>img{object-position:50% 48%}.hero-stamp{font-size:13px;left:-17px;bottom:22px;padding:17px 21px}.hero-stamp svg{width:33px;height:33px}.photo-label{font-size:6px;right:9px;bottom:9px}.vertical-caption{top:105px}.service-strip .container{gap:9px 13px;font-size:7px;padding:16px 0;max-width:330px}.service-strip .strip-star:nth-of-type(4){display:none}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:33px}h2{font-size:37px}.eyebrow{font-size:9px;margin-bottom:17px}.section-heading>p{justify-self:start;font-size:12px;max-width:340px}.section{padding-top:56px;padding-bottom:56px}.services-grid{grid-template-columns:1fr}.service,.service+.service{padding:25px 0;border-left:0;position:relative}.service+.service{border-top:1px solid var(--line)}.service-top{margin-bottom:18px}.service-top svg{width:41px;height:41px}.service h3{font-size:20px}.service p{font-size:12px;min-height:0;max-width:100%;margin-bottom:16px;padding-right:20px}.service>a{font-size:11px}.service>a span{font-size:22px}.audience-section{padding:52px 0}.audience-grid{grid-template-columns:1fr;gap:34px}.audience-intro h2{font-size:37px}.audience-intro>p:not(.eyebrow){font-size:12px;max-width:320px;margin-top:21px;margin-bottom:23px}.audience-tabs button{font-size:11px;padding:11px 20px}.audience-panel{padding-left:0;padding-top:27px;border-left:0;border-top:1px solid #ffffff25;min-height:0}.audience-panel h3{font-size:28px}.audience-panel>p{font-size:12px}.check-list{font-size:11px}.steps{grid-template-columns:1fr;gap:27px}.steps li{position:relative;padding-left:58px;border-top:1px solid var(--line);padding-top:20px}.step-number{position:absolute;left:0;top:11px;border:0;padding:0;font-size:30px}.steps h3{font-size:19px;margin:0 0 9px}.steps p{font-size:12px;max-width:100%}.area-section{padding:52px 0}.area-grid{grid-template-columns:1fr;gap:20px}.area-grid>div>p:not(.eyebrow){font-size:12px;margin-top:21px}.area-visual{height:335px;max-width:370px;width:100%;margin:auto}.town-bethune{left:35px}.town-labassee{right:0;top:74px}.town-lens{right:10px;bottom:91px}.town-lievin{right:70px;bottom:50px}.town-noeux{left:0;bottom:100px}.map-center strong{font-size:10px}.map-town{font-size:10px}.radius-label{top:68%;left:39%}.area-visual small{font-size:7px}.faq-section{grid-template-columns:1fr;gap:30px}.faq-section h2{font-size:37px}summary{font-size:12px;padding:19px 0}.quote-section{padding:52px 0}.quote-grid{grid-template-columns:1fr;gap:35px}.quote-intro{padding:0;position:static}.quote-intro h2{font-size:45px}.quote-intro>p:not(.eyebrow):not(.contact-note){font-size:12px;max-width:335px;margin:22px 0}.contact-phone{font-size:29px;margin:22px 0 18px;gap:30px}.button-whatsapp{font-size:12px;padding:15px 20px;gap:11px}.button-whatsapp>span{margin-left:15px}.contact-note{font-size:10px;margin-bottom:0}.quote-form{padding:23px 20px}.form-title{gap:9px}.form-title h3{font-size:22px}.form-title>span{font-size:7px}.form-row{grid-template-columns:1fr 1fr;gap:10px}.quote-form>label,.form-row>label{font-size:10px}.quote-form input:not([type=radio]):not([type=checkbox]):not([type=file]),.quote-form select,.quote-form textarea{font-size:12px;padding:11px 9px;min-height:42px}.optional{font-size:8px}.upload-zone strong{font-size:11px}.upload-zone small{font-size:7px}.quote-form>.consent{font-size:9px}.form-description{font-size:11px}.form-footnote{font-size:7px}.footer{padding-bottom:62px}.footer-main{flex-wrap:wrap;gap:22px;padding-top:34px;padding-bottom:28px}.footer-main>p{font-size:9px;margin-left:auto}.footer-main>a:last-child{font-size:14px;width:100%}.footer-bottom{flex-wrap:wrap;row-gap:15px;padding-top:18px;font-size:8px}.footer-bottom>div{margin-left:auto;gap:15px}.footer-bottom>span:last-child{width:100%;font-size:13px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:.8fr 1.2fr;background:var(--paper);border-top:1px solid var(--line);z-index:30;padding:8px 13px calc(8px + env(safe-area-inset-bottom));gap:9px;box-shadow:0 -4px 25px #152a380a}.mobile-contact>a{display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px;font-weight:600;min-height:40px;border:1px solid var(--line);border-radius:3px}.mobile-contact>a:first-child svg{width:16px;height:16px;color:var(--blue)}.mobile-contact>a:last-child{background:var(--blue);border-color:var(--blue);color:white}.info-dialog{padding:30px 24px}.info-dialog h2{font-size:29px}.projects-grid{grid-template-columns:1fr}}
@media(max-width:360px){.container{width:calc(100% - 30px)}.hero-actions{gap:12px}.hero-actions .button{font-size:10px;padding:14px 13px;gap:10px}.hero-actions .text-link{font-size:9px}.hero-note{font-size:8px}.form-row{grid-template-columns:1fr;gap:0}.footer-main>p{font-size:8px}.form-title>span{font-size:7px}.quote-form{padding:20px 17px}.profile-choice span{font-size:10px}.title-sparkle{right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Keep the agreed headline on three balanced lines at every screen size. */
.hero-title{font-size:clamp(56px,6.8vw,100px);line-height:1.02;letter-spacing:-.06em;max-width:100%}
.hero-title>span{display:block;white-space:nowrap}
.hero-title>em{display:block;font-size:.82em;line-height:1.13;letter-spacing:-.045em;white-space:nowrap;margin-top:3px}
@media(min-width:581px) and (max-width:800px){.hero-title>em{font-size:.76em}}
@media(max-width:580px){.hero-title{font-size:clamp(58px,16vw,78px);line-height:1.02;max-width:100%}.hero-title>em{font-size:.8em;margin-top:5px}}
