
:root{font-family:Arial,Helvetica,sans-serif;color:#001d31;background:#fff;font-size:16px;--navy:#001d31;--orange:#f57c00}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0}a{color:inherit}img{max-width:100%}.wrap{max-width:1240px;margin:0 auto;padding:0 36px}.topbar{background:var(--navy);color:#fff;font-size:.875rem}.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:12px;padding-bottom:12px}.topbar a{text-decoration:none;font-weight:700;white-space:nowrap}header{position:relative;z-index:10;background:#fff}.nav{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:116px}.brand{display:block;flex-shrink:0}.brand img{width:108px;height:108px;object-fit:contain;display:block}.nav-links{display:flex;align-items:center;gap:30px;font-size:.94rem;font-weight:600}.nav-links>a{text-decoration:none}.nav-links>a:hover,.dropdown summary:hover{color:#a44e00}.nav-cta{background:var(--orange);padding:17px 22px;color:var(--navy)}.dropdown{position:relative}.dropdown summary{cursor:pointer;padding:16px 0}.dropdown-panel{position:absolute;top:100%;left:-20px;min-width:260px;background:white;box-shadow:0 12px 35px #001d3124;border-top:3px solid var(--orange);padding:10px}.dropdown-panel a{display:block;text-decoration:none;padding:14px 12px;line-height:1.4}.dropdown-panel a:hover{background:#f0f4f6}.hero{position:relative;background:var(--navy);color:white;isolation:isolate}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 53%;z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,22,39,.94) 0%,rgba(0,22,39,.82) 35%,rgba(0,22,39,.22) 75%,rgba(0,22,39,.07) 100%);z-index:-1}.hero-inner{min-height:635px;display:flex;align-items:center;padding-top:65px;padding-bottom:85px}.hero-copy{max-width:700px}.eyebrow{font-size:.82rem;font-weight:700;letter-spacing:.14em;line-height:1.7;color:#ffae58}.hero h1{font-size:clamp(3.5rem,6.3vw,5.75rem);letter-spacing:-.045em;line-height:1.02;margin:24px 0}.hero h1 em{font-style:normal;color:#ff921f}.hero p{max-width:540px;font-size:1.12rem;line-height:1.7;color:#e9eff3}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:15px 24px;background:var(--orange);color:var(--navy);font-weight:700;text-decoration:none;line-height:1.4;text-align:center;max-width:100%}.button:hover,.nav-cta:hover{background:#ff9a33}.hero-phone{text-decoration:none;border-bottom:1px solid #a6b4be;padding:10px 0;font-weight:700}.hero-caption{position:absolute;bottom:22px;right:36px;font-size:.82rem;color:white;background:#001d3190;padding:9px 12px}.trust-strip{border-bottom:1px solid #dee4e8;background:#f5f7f9}.trust-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding-top:26px;padding-bottom:26px;gap:30px}.trust-strip span{font-size:.92rem;line-height:1.6;color:#53616c}.trust-strip strong{display:block;font-size:1.1rem;color:var(--navy);margin-bottom:3px}.trust-strip span+span{border-left:1px solid #d5dce2;padding-left:30px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:90px;padding-bottom:90px}.section-kicker{color:#a54d00;font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.intro h2,.services h2,.contact h2{font-size:clamp(2rem,3.7vw,3.1rem);line-height:1.15;letter-spacing:-.04em;margin:18px 0}.intro p,.contact p{font-size:1.08rem;line-height:1.75;color:#4b5c68;margin:0 0 18px}.text-link{display:inline-block;font-weight:700;text-decoration:none;border-bottom:2px solid var(--orange);padding:10px 0}.services{padding:80px 0 90px;background:#f0f4f7}.lead{max-width:680px;line-height:1.7;color:#4b5c68}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}.card{position:relative;background:#fff;padding:34px 29px 30px;display:flex;flex-direction:column;border-bottom:4px solid var(--orange);transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #001d310d}.num{font-size:.8rem;font-weight:700;color:#a54d00;letter-spacing:.1em}.card h3{font-size:1.5rem;letter-spacing:-.025em;line-height:1.25;margin:28px 0 15px}.card p{line-height:1.7;color:#4b5c68;margin:0 0 25px}.service-link{margin-top:auto;line-height:1.5;font-weight:700;text-underline-offset:5px;font-size:.94rem}.band{background:var(--navy);color:#fff;border-top:5px solid var(--orange)}.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:45px;padding-top:35px;padding-bottom:35px}.band strong{font-size:1.4rem;line-height:1.4}.band span{max-width:420px;line-height:1.7;color:#d4dee5}.contact{padding-top:90px;padding-bottom:90px}.contact-inner{max-width:900px}.contact-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:30px}.secondary{background:var(--navy);color:#fff}.secondary:hover{background:#254458}.contact-note{margin-top:35px;border-left:4px solid var(--orange);padding:4px 0 4px 23px;line-height:1.7;color:#4b5c68}.contact-details{font-style:normal}.contact-details a{overflow-wrap:anywhere}.foot{background:#001725;color:#d4dee5;padding:50px 0 22px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px}.footer-brand{font-size:1.2rem;color:#fff}.foot p,.foot address{font-size:.94rem;line-height:1.7;font-style:normal}.foot h2{font-size:1rem;color:#fff;margin:0 0 20px}.foot a{display:block;font-size:.94rem;margin:12px 0;text-decoration:none;overflow-wrap:anywhere}.foot a:hover{text-decoration:underline}.copyright{border-top:1px solid #ffffff21;margin-top:35px;padding-top:22px;font-size:.8rem}.detail-head{background:var(--navy);color:#fff;padding:60px 0 75px;border-bottom:5px solid var(--orange)}.detail-head h1{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.12;letter-spacing:-.04em;max-width:920px;margin:22px 0}.detail-head p{max-width:790px;line-height:1.7;font-size:1.12rem;color:#dbe4ea}.breadcrumb{font-size:.9rem;text-underline-offset:4px}.detail-body{max-width:940px;padding-top:55px;padding-bottom:75px}.detail-body h2{font-size:2rem;letter-spacing:-.03em;margin:35px 0 18px}.detail-body p,.detail-body li{font-size:1.08rem;line-height:1.75;color:#4b5c68}.detail-body li{margin:10px 0}.detail-body ul{padding-left:24px}.detail-body .button{margin-top:25px}.values{border-left:4px solid var(--orange);padding:4px 0 4px 22px}:focus-visible{outline:3px solid #ef8b28;outline-offset:5px}
@media(max-width:950px){.nav-links{gap:18px;font-size:.875rem}.nav-cta{padding:14px 16px}.intro{gap:45px}.hero-photo{object-position:62% 50%}.grid{gap:14px}.card{padding:28px 22px}.hero h1{font-size:4.5rem}}
@media(max-width:700px){.wrap{padding-left:22px;padding-right:22px}.topbar span{max-width:190px;font-size:.8rem}.topbar a{align-self:center}.nav{min-height:0;flex-direction:column;gap:0;padding-top:5px;padding-bottom:15px}.brand img{width:105px;height:105px}.nav-links{justify-content:center;gap:15px;flex-wrap:wrap;width:100%}.nav-links>a,.dropdown summary{padding:10px 0;min-height:40px}.nav-links .nav-cta{padding:13px 18px;width:100%;text-align:center;margin-top:0}.dropdown-panel{left:auto;right:-75px;min-width:250px}.hero-inner{min-height:610px;padding-top:48px;padding-bottom:85px}.hero h1{font-size:clamp(3rem,11vw,4.3rem)}.hero p{font-size:1rem}.hero:after{background:linear-gradient(90deg,#001627e8,#00162780)}.hero-photo{object-position:65% 50%}.hero-actions{gap:17px}.hero-caption{left:22px;right:auto;font-size:.75rem;max-width:calc(100% - 44px)}.trust-strip .wrap{grid-template-columns:1fr;gap:18px}.trust-strip span+span{border-left:0;padding-left:0;border-top:1px solid #d5dce2;padding-top:17px}.intro{grid-template-columns:1fr;gap:18px;padding-top:60px;padding-bottom:60px}.grid{grid-template-columns:1fr;gap:18px}.services{padding:60px 0}.band .wrap{display:block;padding-top:30px;padding-bottom:30px}.band span{display:block;margin-top:16px}.contact{padding-top:60px;padding-bottom:60px}.contact-actions{flex-direction:column;align-items:stretch}.footer-grid{grid-template-columns:1fr;gap:30px}.detail-head{padding:40px 0 50px}.detail-body{padding-top:30px;padding-bottom:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}

.nav-links{gap:21px}.projects-list,.home-project{padding-top:70px;padding-bottom:80px}.home-project>h2,.gallery-section h2,.project-scope h2{font-size:clamp(2rem,3vw,2.75rem);line-height:1.15;letter-spacing:-.035em;margin:17px 0 30px}.project-card{display:grid;grid-template-columns:1.2fr 1fr;background:#f0f4f7;margin-top:32px}.project-cover{display:block;min-width:0}.project-cover img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block}.project-info{padding:40px}.project-info h2{font-size:2rem;letter-spacing:-.03em;margin:18px 0 9px}.project-info h3{font-size:1.25rem;line-height:1.4;margin:0 0 20px}.project-info p{line-height:1.7;color:#4b5c68}.project-info .button{margin-top:15px}.project-overview{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;padding-top:60px;padding-bottom:50px;align-items:center}.project-main-image{margin:0;min-width:0}.project-main-image img{display:block;width:100%;height:auto}.project-scope ol{padding-left:23px;line-height:1.7;color:#4b5c68}.project-scope li{padding:7px 0 7px 8px}.phase-nav{display:flex;gap:16px;padding-top:20px;padding-bottom:25px;flex-wrap:wrap}.phase-nav a{padding:14px 23px;text-decoration:none;font-weight:700;background:#edf2f5;border-bottom:3px solid var(--orange)}.phase-nav a:hover{background:#dce5eb}.gallery-section{padding-top:45px;padding-bottom:50px}.gallery-section h2{margin-bottom:16px}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:30px}.photo-grid.pendant{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-grid figure{margin:0;min-width:0}.photo-grid a{display:block;background:#f0f4f7}.photo-grid img{display:block;width:100%;height:360px;object-fit:contain}.photo-grid.pendant img{height:440px}.photo-grid.apres figure:nth-child(-n+2) img{height:470px}.photo-grid a:hover{outline:2px solid var(--orange);outline-offset:3px}figcaption{font-size:.9rem;color:#4b5c68;line-height:1.6;padding:13px 0}.project-cta{background:var(--navy);color:white;padding:45px 0}.project-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.project-cta h2{font-size:1.8rem;max-width:600px;line-height:1.3;margin:0}@media(max-width:1050px){.nav-links{gap:14px;font-size:.875rem}.nav-cta{padding:14px}.project-overview{gap:30px}.project-info{padding:28px}}@media(max-width:800px){.nav{gap:15px}.nav-links{flex-wrap:wrap;justify-content:flex-end}.project-card,.project-overview{grid-template-columns:1fr}.project-cover img{min-height:unset;aspect-ratio:16/9}.photo-grid.pendant{grid-template-columns:1fr 1fr}.project-cta .wrap{display:block}.project-cta .button{margin-top:25px}}@media(max-width:700px){.nav-links{justify-content:center}.photo-grid,.photo-grid.pendant{grid-template-columns:1fr}.photo-grid img,.photo-grid.pendant img,.photo-grid.apres figure:nth-child(-n+2) img{height:auto;max-height:650px}.project-info{padding:28px 22px}.phase-nav{gap:9px}.phase-nav a{padding:13px 16px}.projects-list,.home-project{padding-top:50px;padding-bottom:55px}.project-overview{padding-top:35px;padding-bottom:25px}.gallery-section{padding-top:30px;padding-bottom:35px}}

.metier-tag{display:inline-block;text-underline-offset:4px;font-weight:700}.detail-head .metier-tag{margin-top:12px;color:#ffac59}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.comparison-grid figure{margin:0;min-width:0}.comparison-grid img{display:block;width:100%;height:auto}.comparison-grid figure:first-child{grid-row:span 2}.project-cover.comparison-cover img{height:auto;min-height:0;object-fit:contain;aspect-ratio:auto}.comparison-cover{align-self:center}.comparison-grid a:focus-visible,.comparison-grid a:hover{outline:2px solid var(--orange);outline-offset:4px}@media(max-width:700px){.comparison-grid{grid-template-columns:1fr}.comparison-grid figure:first-child{grid-row:auto}}

.history-section{padding-top:65px;padding-bottom:25px}.history-section>h2{font-size:clamp(2rem,3vw,2.75rem);letter-spacing:-.035em;line-height:1.2;margin:17px 0 44px}.history-frieze{display:flex;justify-content:space-between;gap:30px;position:relative;border-bottom:3px solid var(--orange);padding-bottom:25px;margin-bottom:40px;font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.4;font-weight:700}.history-frieze:before,.history-frieze:after{content:"";position:absolute;bottom:-9px;width:15px;height:15px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 6px white}.history-frieze:before{left:0}.history-frieze:after{right:0}.history-narrative{max-width:900px}.history-narrative p{font-size:1.08rem;line-height:1.8;color:#4b5c68;margin:0 0 20px}@media(max-width:700px){.history-section{padding-top:40px}.history-section>h2{margin-bottom:30px}.history-frieze{font-size:1.4rem;margin-bottom:30px}}

.suppliers-section{background:#f0f4f7;padding:65px 0 75px}.suppliers-section h2{font-size:clamp(2rem,3vw,2.75rem);line-height:1.2;letter-spacing:-.035em;margin:17px 0 32px}.supplier-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.supplier-grid li{background:#fff;min-height:90px;padding:20px 15px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:1rem;line-height:1.5;border-bottom:2px solid #dce5eb;overflow-wrap:anywhere}@media(max-width:800px){.supplier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:550px){.supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.suppliers-section{padding:45px 0}.supplier-grid li{font-size:.94rem;padding:16px 10px}}

/* Identités de nos partenaires et fournisseurs */
.supplier-grid li{min-height:132px;padding:22px}.supplier-grid img{display:block;width:100%;max-width:220px;height:88px;object-fit:contain}.supplier-grid .supplier-dark{background:#173d53;border-color:#173d53}@media(max-width:550px){.supplier-grid li{min-height:112px;padding:16px}.supplier-grid img{height:74px}}

.supplier-grid img.supplier-legallais{object-fit:cover}.suppliers-more{text-align:center;color:#526675;margin:26px 0 0;font-size:1.05rem;font-style:italic}

.general-support{margin-top:35px;border-top:1px solid #cdd7df;padding-top:24px;max-width:860px}.general-support h3{font-size:1.45rem;margin:0 0 12px}.general-support p{line-height:1.75;color:#4b5c68}.dossier .card{border-bottom:0}.hero h1{font-size:clamp(2.8rem,5.7vw,5rem);line-height:1.08}.hero-copy{max-width:850px}.hero p{max-width:640px}.nav-links{gap:16px}@media(max-width:700px){.hero h1{font-size:clamp(2.6rem,10vw,4rem)}.eyebrow{letter-spacing:.08em}.detail-head .hero-actions{gap:16px}}

.clients-section{padding:60px 0 65px;background:#fff;border-bottom:1px solid #e2e8ec}.clients-section h2{font-size:clamp(2rem,3vw,2.75rem);line-height:1.2;letter-spacing:-.035em;margin:16px 0 30px}.clients-section h3{font-size:1.15rem;margin:30px 0 20px;color:#4b5c68}.client-grid{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.client-grid li{min-width:0;height:130px;padding:18px;background:#fff;border:1px solid #e5eaee;display:flex;align-items:center;justify-content:center}.client-grid svg{display:block;max-width:100%;overflow:hidden}@media(max-width:850px){.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:550px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-grid li{height:115px;padding:13px}.clients-section{padding:40px 0 45px}}

.renovation-hero .hero-photo{object-position:center}.renovation-faq details{border-bottom:1px solid #dce5eb;padding:18px 0}.renovation-faq summary{font-weight:700;cursor:pointer;font-size:1.08rem;line-height:1.5}.renovation-faq p{margin-bottom:0}
