@font-face{font-family:DejaVu;src:url('assets/DejaVuSans.ttf') format('truetype');font-display:swap}@font-face{font-family:DejaVu;src:url('assets/DejaVuSans-Bold.ttf') format('truetype');font-weight:700;font-display:swap}:root{--navy:#142a5e;--blue:#98b7ce;--sand:#c3b19c;--gray:#c6c6c6;--red:#b98487;--ink:#33363a;--line:#e1e5eb;--accent:var(--blue)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:DejaVu,Arial,sans-serif;font-size:15px;line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--navy);line-height:1.18}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:5px}.skip{position:absolute;left:20px;top:-90px;background:white;z-index:20;padding:15px}.skip:focus{top:10px}.topbar{background:var(--navy);color:white;display:flex;justify-content:space-between;padding:9px 4.5%;font-size:11px;letter-spacing:.025em}.topbar b{margin:0 14px}.top-number{margin-right:12px}header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{padding:10px 0;flex-shrink:0}.brand img{width:240px;height:auto}nav{display:flex;align-items:center;gap:25px;font-size:12px;font-weight:700;color:var(--navy)}nav a{padding:12px 0}nav a[aria-current]{border-bottom:2px solid var(--blue)}nav a:hover{color:#52768d}.nav-contact{background:var(--navy);color:white;padding:13px 17px!important;margin-left:10px}.nav-contact:hover{background:#233d76;color:white}.menu-toggle{display:none}.intro{text-align:center;padding:64px 24px 46px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--navy);margin-bottom:20px}.intro h1{font-size:clamp(42px,4.7vw,68px);letter-spacing:-.055em;line-height:1.08}.intro h1 span{color:#6c899f}.lead{font-size:16px;line-height:1.8;color:#5d6269;max-width:550px}.intro .lead{margin:25px auto 24px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;color:var(--navy);font-size:13px;font-weight:700;padding-bottom:8px;border-bottom:1px solid var(--navy)}.text-link:hover span{transform:translate(3px,-2px)}.text-link span{transition:transform .15s;font-size:19px}.triptych{display:grid;grid-template-columns:repeat(3,1fr);margin:0 4.5%;gap:12px}.scene{position:relative;height:455px;overflow:hidden}.scene img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.scene:hover img{transform:scale(1.03)}.scene>div{position:absolute;bottom:0;left:0;right:0;background:var(--accent);padding:24px 25px;min-height:116px;color:var(--navy)}.scene div>span:first-child{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;margin-bottom:8px}.scene b{display:block;font-size:18px;padding-right:34px;line-height:1.4}.circle-arrow{position:absolute;right:21px;bottom:27px;border:1px solid #142a5e50;border-radius:50%;width:34px;height:34px;text-align:center;line-height:30px;font-size:20px}.menuiserie{--accent:var(--sand)}.serrurerie{--accent:var(--gray)}.securite{--accent:var(--red)}.section{padding:100px 6%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:53px}.section-heading h2,.approach h2,.branch-contact h2{font-size:clamp(30px,3vw,43px);letter-spacing:-.045em}.section-heading>p{max-width:420px;line-height:1.85;color:#62666b}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.service{border-top:5px solid var(--accent);padding-top:30px;display:flex;flex-direction:column}.service>img{width:260px;height:auto;margin-bottom:28px}.tag{font-size:9px;letter-spacing:.06em;font-weight:700;color:#636970;min-height:28px}.service h3{font-size:22px;max-width:290px;min-height:65px;letter-spacing:-.03em}.service ul{list-style:none;padding:0;margin:15px 0 25px;font-size:13px;line-height:2.4}.service li{border-bottom:1px solid var(--line);padding:5px 0}.service .text-link{align-self:flex-start;margin-top:auto}.approach{background:#edf2f6;display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding:80px 8%}.approach>div>p:not(.eyebrow){max-width:470px;margin:25px 0;line-height:1.8}.button{display:inline-block;background:var(--navy);color:white;padding:15px 22px;font-size:12px;font-weight:700}.button:hover{background:#294579}.approach ol{list-style:none;padding:0;margin:10px 0}.approach li{display:flex;gap:32px;padding:28px 0;border-bottom:1px solid #ccd6df}.approach li>span{font-size:32px;color:#718da3;line-height:1.2}.approach h3{font-size:24px;margin-bottom:12px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.contact{border-left:4px solid var(--accent);padding:3px 0 5px 24px;min-width:0}.contact h3{font-size:17px;margin-bottom:20px}.phone{display:block;font-size:23px;font-weight:700;color:var(--navy);letter-spacing:-.02em;margin:7px 0}.email{display:block;font-size:12px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.phone:hover,.email:hover{color:#56778c}.pending{font-size:19px;color:var(--navy);font-weight:700;margin-bottom:8px}.note{font-size:12px;color:#6b6f75;max-width:280px}footer{margin:0 4.5%;border-top:1px solid var(--line);padding:45px 0 32px;display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:45px;font-size:12px}footer img{width:220px;height:auto;margin-bottom:20px}footer>div:nth-child(2){display:flex;flex-direction:column;gap:12px;color:var(--navy)}footer>div:last-child{text-align:right}.text-button{border:0;background:none;color:var(--navy);padding:10px 0;text-decoration:underline;font-size:11px}.fineprint{font-size:10px;color:#737981}dialog{border:0;padding:50px;max-width:590px;width:calc(100% - 30px);color:var(--ink)}dialog::backdrop{background:#142a5eb3}dialog h2{font-size:27px;margin:15px 0 25px}dialog p{margin:15px 0;font-size:14px}.close{position:absolute;right:20px;top:12px;font-size:30px;color:var(--navy);border:0;background:transparent}.breadcrumb{padding:22px 6%;font-size:11px;display:flex;gap:16px}.breadcrumb a{text-decoration:underline}.branch-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding:20px 6% 65px;align-items:center}.branch-logo{width:310px;height:auto;margin-bottom:45px}.branch-hero .eyebrow{font-size:10px}.branch-hero h1{font-size:clamp(38px,4vw,58px);letter-spacing:-.05em;max-width:600px}.branch-hero .lead{margin:26px 0 30px}.branch-photo{width:100%;height:590px;object-fit:cover;border-bottom:15px solid var(--accent)}.offering-list article{display:grid;grid-template-columns:55px 1fr 1.1fr;gap:30px;border-top:1px solid var(--line);padding:30px 0;align-items:start}.offering-list h3{font-size:23px}.offering-list .index{font-size:18px;color:#748699}.offering-list p{color:#5f646b;font-size:14px}.branch-contact{margin:0 6%;padding:48px;background:var(--accent);display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}.branch-contact h2{font-size:34px}.branch-contact .eyebrow{font-size:10px}.branch-contact .phone{font-size:30px}.branch-contact .email{font-size:14px}.branch-contact .note{color:#33363a}.branch-contact>div>p:last-child{margin-top:15px}.crosslinks{padding:65px 6%;display:flex;gap:50px;align-items:center}.crosslinks h2{font-size:22px;margin-right:auto}
@media(min-width:1600px){body{max-width:1600px;margin:auto}.scene{height:530px}}@media(max-width:1150px){nav{gap:14px;font-size:11px}.brand img{width:220px}.nav-contact{margin-left:0;padding:12px!important}.services{gap:25px}.service h3{font-size:20px}.scene b{font-size:16px}.phone{font-size:20px}.section{padding:80px 5%}}@media(max-width:950px){header{height:96px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--navy);font-size:13px;font-weight:700}.menu-toggle span{font-size:20px}nav{display:none;position:absolute;top:96px;left:0;right:0;background:white;padding:20px 6%;border-bottom:1px solid var(--line);box-shadow:0 18px 20px #142a5e0d}nav.open{display:flex;flex-direction:column;align-items:stretch;font-size:14px}nav a{text-align:center}.topbar>span{display:none}.topbar{justify-content:center}.intro{padding-top:45px}.scene{height:370px}.scene>div{padding:18px;min-height:115px}.scene b{font-size:15px}.circle-arrow{right:12px;bottom:18px;width:27px;height:27px;font-size:17px;line-height:24px}.services{gap:22px}.service h3{font-size:19px}.service ul{font-size:11px}.service .tag{font-size:8px}.service .text-link{font-size:11px;gap:10px}.section-heading{gap:30px}.section-heading>p{max-width:350px;font-size:13px}.phone{font-size:17px}.email{font-size:10px}.contact{padding-left:15px}.branch-hero{gap:5%}.branch-photo{height:510px}.branch-logo{width:250px}.branch-hero h1{font-size:40px}.branch-contact{padding:30px}.branch-contact h2{font-size:28px}.branch-contact .phone{font-size:25px}}
@media(max-width:650px){html{scroll-padding-top:100px}.topbar{font-size:9px;padding:9px 8px}.topbar b{margin:0 6px}.top-number{margin-right:4px}.brand img{width:220px}header{padding:0 20px}.intro{padding:42px 22px 34px}.intro h1{font-size:40px}.intro .lead{font-size:13px;margin:21px auto}.eyebrow{font-size:9px;letter-spacing:.13em}.triptych{gap:7px;margin:0 14px}.scene{height:265px}.scene>div{min-height:85px;padding:12px 8px}.scene div>span:first-child{font-size:8px;letter-spacing:0}.scene b{font-size:11px;padding:0;line-height:1.45}.circle-arrow{display:none}.scene img{object-position:50% center}.section{padding:58px 24px}.section-heading{display:block;margin-bottom:35px}.section-heading h2,.approach h2{font-size:32px}.section-heading>p{margin-top:22px;font-size:13px}.services{grid-template-columns:1fr;gap:38px}.service{padding-top:24px}.service>img{width:265px;margin-bottom:23px}.service h3{font-size:25px;max-width:none;min-height:0}.service .tag{font-size:9px}.service ul{font-size:13px;margin:15px 0 20px}.service .text-link{font-size:13px}.approach{grid-template-columns:1fr;padding:52px 24px;gap:25px}.approach>div>p:not(.eyebrow){font-size:13px}.approach h3{font-size:23px}.approach li p{font-size:13px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact{padding-left:22px}.phone{font-size:25px}.email{font-size:13px}.contacts .section-heading{margin-bottom:40px}footer{margin:0 24px;grid-template-columns:1fr;gap:25px;padding:35px 0}footer>div:nth-child(2){flex-direction:row;flex-wrap:wrap;gap:20px}footer>div:last-child{text-align:left}.breadcrumb{padding:18px 24px}.branch-hero{grid-template-columns:1fr;padding:22px 24px 30px;gap:35px}.branch-logo{margin-bottom:30px;width:270px}.branch-hero h1{font-size:40px}.branch-hero .lead{font-size:14px}.branch-photo{height:390px}.branch-hero .eyebrow{font-size:8px}.offering-list article{grid-template-columns:30px 1fr;gap:12px;padding:24px 0}.offering-list h3{font-size:22px}.offering-list p{grid-column:2;font-size:13px}.branch-contact{margin:0 24px;padding:30px 23px;grid-template-columns:1fr;gap:22px}.branch-contact h2{font-size:30px}.branch-contact .email{font-size:12px}.branch-contact .phone{font-size:24px}.branch-contact>div>p:last-child{font-size:13px}.crosslinks{padding:45px 24px;display:block}.crosslinks .text-link{display:flex;margin-top:25px}.crosslinks h2{margin-bottom:25px}dialog{padding:38px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Version 2: clearer contact paths and project preparation. */
[hidden]{display:none!important}.hero-actions{display:flex;gap:28px;align-items:center;justify-content:center;margin-top:28px}.hero-actions .text-link{padding-top:7px}.intro{padding-top:48px;padding-bottom:40px}.intro h1{font-size:clamp(42px,4.7vw,64px)}.intro .lead{margin-top:23px}.triptych .scene{height:410px}.branch-actions{display:flex;align-items:center;gap:25px}.all-contacts{margin-top:38px}.mobile-actions{display:none}.prepare{padding-top:15px;padding-bottom:80px}.prepare .section-heading h2{max-width:520px}.prepare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.prepare-grid article{border-top:3px solid var(--accent);padding-top:22px}.prepare-grid article>span{display:block;font-size:12px;font-weight:700;color:#636970;margin-bottom:18px}.prepare-grid h3{font-size:22px;margin-bottom:15px}.prepare-grid p{font-size:13px;line-height:1.85;color:#5f646b}.contact-intro{padding:28px 6% 48px;max-width:950px}.contact-intro h1{font-size:clamp(38px,4vw,58px);letter-spacing:-.05em}.contact-intro .lead{max-width:620px;margin-top:22px}.contact-options{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:0 6% 75px}.contact-options article{border-top:5px solid var(--accent);padding:30px 0 0;display:flex;flex-direction:column}.contact-options img{width:260px;height:auto;margin-bottom:25px}.contact-options article>p{font-size:13px;margin-bottom:16px;line-height:1.8}.contact-options article>.pending{font-size:19px;margin:7px 0}.contact-options .text-link{align-self:flex-start;margin-top:28px}.contact-options article:last-child .text-link{margin-top:auto}.request-section{background:#edf2f6;padding:75px 6%;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;scroll-margin-top:8px}.request-section aside h2{font-size:42px;letter-spacing:-.04em}.request-section aside>p:not(.eyebrow){margin-top:24px;font-size:14px;line-height:1.9;max-width:360px}.urgent-note{border-top:1px solid #cbd5df;margin-top:38px;padding-top:30px;max-width:360px}.urgent-note h3{font-size:20px}.urgent-note p{font-size:13px;margin:15px 0}.urgent-note .phone{font-size:25px}.urgent-note>span{font-size:11px;font-weight:700;color:var(--navy)}.request-panel{background:white;padding:38px;min-width:0}.form-note{font-size:11px;color:#666;margin-bottom:23px}.field{margin-bottom:22px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:12px;font-weight:700;color:var(--navy);margin-bottom:8px}label span{font-weight:400}input,select,textarea{width:100%;font:inherit;font-size:14px;line-height:1.6;padding:12px;background:#fff;border:1px solid #b7c1ce;border-radius:0;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--navy);outline-offset:2px}.field-help{font-size:11px;color:#626970;line-height:1.65;margin-top:9px}.request-panel button.button{border:0;font-family:inherit}.draft h3{font-size:27px;margin-bottom:24px}.draft>p:not(.eyebrow):not(.field-help){font-size:12px;margin-bottom:20px;overflow-wrap:anywhere}.draft label{margin-top:25px}.draft textarea{background:#f7f9fb;font-size:13px}.draft-actions{display:flex;gap:15px;flex-wrap:wrap;margin:20px 0}.secondary-button{background:white;border:1px solid var(--navy);color:var(--navy);font-size:12px;font-weight:700;padding:13px 18px}#copy-status{font-size:12px;color:var(--navy);margin:15px 0}.faq{max-width:1100px;margin:auto}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:16px;font-weight:700;color:var(--navy);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:25px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;margin-top:18px;max-width:820px;line-height:1.85}.faq summary:focus-visible{outline:2px solid var(--navy);outline-offset:5px}
@media(max-width:950px){.contact-options{gap:22px;padding-left:5%;padding-right:5%}.contact-options article>p{font-size:12px}.contact-options .text-link{font-size:11px}.contact-options .phone{font-size:18px}.request-section{gap:5%;padding:55px 5%;grid-template-columns:.8fr 1.2fr}.request-section aside h2{font-size:33px}.request-panel{padding:25px}.field-row{grid-template-columns:1fr;gap:0}.branch-actions{flex-wrap:wrap;gap:20px}.triptych .scene{height:360px}}
@media(max-width:650px){body{padding-bottom:64px}.intro{padding-top:35px}.intro h1{font-size:clamp(29px,8.2vw,40px)}.hero-actions{gap:20px;flex-direction:column;margin-top:23px}.hero-actions .button{width:100%;max-width:310px}.hero-actions .text-link{font-size:12px}.triptych{gap:6px}.triptych .scene{height:230px}.triptych .scene>div{min-height:83px}.scene b{font-size:11px}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:15;background:white;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{padding:18px 8px;text-align:center;font-size:11px;font-weight:700;color:var(--navy)}.mobile-actions a:first-child{background:var(--navy);color:white}.mobile-actions a:last-child{background:#edf2f6}.prepare{padding-top:20px;padding-bottom:45px}.prepare-grid{grid-template-columns:1fr;gap:25px}.prepare-grid article{padding-top:18px}.prepare-grid article>span{margin-bottom:10px}.prepare-grid h3{font-size:22px}.branch-actions .button{font-size:11px}.contact-intro{padding:22px 24px 35px}.contact-intro h1{font-size:38px}.contact-intro .lead{font-size:14px}.contact-options{grid-template-columns:1fr;padding:0 24px 45px;gap:35px}.contact-options img{width:265px}.contact-options article>p{font-size:14px}.contact-options .phone{font-size:25px}.contact-options .email{font-size:12px}.contact-options .text-link{font-size:13px}.contact-options article:last-child .text-link{margin-top:24px}.request-section{grid-template-columns:1fr;padding:40px 24px;gap:30px}.request-section aside h2{font-size:34px}.request-section aside>p:not(.eyebrow){font-size:13px}.urgent-note{margin-top:25px;padding-top:25px}.request-panel{padding:25px 19px}.request-panel input,.request-panel textarea,.request-panel select{font-size:16px}.request-panel .button{width:100%;text-align:center}.draft-actions{gap:12px}.draft-actions .secondary-button{width:100%}.faq summary{font-size:14px}.faq details p{font-size:13px}.contact-options article:last-child>.note{max-width:290px}dialog{max-height:calc(100dvh - 100px);overflow:auto}}
