:root{--blue:#087aad}body{line-height:1.6}h1{line-height:1.08;letter-spacing:-.045em}h2{line-height:1.15!important}.eyebrow{font-size:.875rem}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.card{padding:0;min-height:0;overflow:hidden;border-radius:8px;background:white}.card-content{padding:26px}.card a{position:static;display:inline-block;margin-top:12px;font-size:1rem}.card p{font-size:1rem}.service-thumb{height:210px;overflow:hidden;background:#edf3f6}.service-thumb img{width:100%;height:100%;object-fit:cover;object-position:center}.card h3{margin:8px 0}.method-photo.real-photo{background:none;display:flex;align-items:center;padding:36px}.photo-frame{position:relative;overflow:hidden;aspect-ratio:707/942;background:#e5edf2;width:100%}.photo-frame img{position:absolute;width:100%;height:auto;max-width:none;left:0;top:50%;transform:translateY(-50%)}.photo-frame.landscape{aspect-ratio:707/530}.realisations{padding:80px 7vw;max-width:1500px;margin:auto}.realisations>h2{font-size:clamp(2rem,4vw,3.5rem)}.comparison{margin:45px 0 65px}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.photo-pair figure{margin:0}.photo-pair figcaption{padding:12px 18px;background:var(--navy);color:white;font-weight:800}.zone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:left;max-width:1200px;margin:auto}.zone-grid article{padding:28px;background:white}.footer-services{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:20px;font-size:.9rem}.skip-link{position:absolute;top:-100px;left:15px;z-index:99;background:white;color:#071a2c;padding:12px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #f3b631;outline-offset:5px}label,legend,.form-note,.steps small{font-size:.9rem}.form-note{color:#435564}.nav{height:auto;min-height:90px;gap:20px;padding-top:8px;padding-bottom:8px}.brand-logo{height:76px;width:115px}.service-hero h1{font-size:clamp(2.5rem,6vw,5.5rem)}.hero-image:after{content:'Photo d’illustration';position:absolute;bottom:12px;right:16px;color:white;background:#071a2ccc;padding:4px 8px;font-size:.75rem}.included li{margin:12px 0}.hero-content{max-width:850px}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.zone-grid{grid-template-columns:1fr}}
@media(max-width:800px){.nav{flex-wrap:wrap;gap:6px;padding:8px 20px}.nav nav{display:flex;width:100%;justify-content:space-between;order:3;font-size:.875rem;gap:8px}.nav .phone{display:block;font-size:.9rem}.cards{grid-template-columns:1fr}.service-thumb{height:240px}.photo-pair{gap:8px}.realisations{padding:55px 20px}.method-photo.real-photo{padding:24px;min-height:0}.hero{min-height:620px}.hero-content{padding:55px 22px}.checks{grid-template-columns:1fr}.photo-pair figcaption{padding:8px}footer{padding-bottom:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}.card:hover{transform:none}}
.quote-panel{background:#fff;color:var(--ink);padding:40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.quote-panel img{width:150px;height:115px;object-fit:contain;margin-bottom:20px}.quote-panel h3{font-size:clamp(1.5rem,3vw,2.35rem);line-height:1.15}.quote-panel p{color:#526577}.quote-panel small{display:block;margin-top:14px;color:#526577}.quote-handoff{align-items:stretch}
@media(max-width:800px){.quote-panel{padding:28px 22px}}
.nav{position:sticky;top:0;transition:box-shadow .3s ease,background-color .3s ease}.nav.scrolled{box-shadow:0 10px 30px rgba(4,24,42,.12)}.service-hero{position:relative;overflow:hidden;isolation:isolate;min-height:590px;display:flex;flex-direction:column;justify-content:center}.service-hero>*:not(.service-hero-bg){position:relative;z-index:2}.service-hero-bg{position:absolute;z-index:-2;inset:0 0 0 auto;width:58%;height:100%;object-fit:cover;object-position:center;animation:hero-arrive 1.15s cubic-bezier(.2,.75,.25,1) both}.service-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,var(--navy) 0%,var(--navy) 38%,rgba(6,16,30,.82) 57%,rgba(6,16,30,.38) 100%)}.service-hero .breadcrumbs,.service-hero .eyebrow,.service-hero h1,.service-hero>p,.service-hero>.btn{max-width:650px;animation:copy-arrive .75s cubic-bezier(.2,.75,.25,1) both}.service-hero h1{animation-delay:.08s}.service-hero>p{animation-delay:.15s}.service-hero>.btn{animation-delay:.22s;width:max-content}.btn{transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(3,30,53,.2)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease var(--reveal-delay,0ms),transform .65s cubic-bezier(.2,.75,.25,1) var(--reveal-delay,0ms)}.reveal.is-visible{opacity:1;transform:none}@keyframes hero-arrive{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes copy-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:800px){.service-hero{min-height:560px}.service-hero-bg{inset:0;width:100%;opacity:.7}.service-hero:after{background:linear-gradient(90deg,rgba(6,16,30,.96),rgba(6,16,30,.63))}}
@media(prefers-reduced-motion:reduce){.service-hero-bg,.service-hero .breadcrumbs,.service-hero .eyebrow,.service-hero h1,.service-hero>p,.service-hero>.btn{animation:none}.reveal{opacity:1;transform:none;transition:none}.btn,.nav{transition:none}}
.nav nav .nav-quote{background:var(--blue);color:#fff;padding:11px 17px}.nav nav .nav-quote:hover{color:#fff;background:#05688f}.story{display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;padding:105px 7vw;align-items:center}.story h2,.values h2,.guarantee h2,.quote-page h1{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.055em;line-height:1.05}.story p,.values p,.guarantee p,.quote-page p,.quote-steps p{color:#586b7c;line-height:1.8;font-size:1rem}.story-photo{margin:0;background:var(--soft);padding:18px}.story-photo img{width:100%;height:560px;display:block;object-fit:cover}.story-photo figcaption{padding:14px 4px 2px;color:#607385;font-size:.9rem}.values{padding:95px 7vw;background:var(--soft)}.values-grid,.quote-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}.values article,.quote-steps article{background:#fff;padding:36px;border:1px solid var(--line)}.values article>span,.quote-steps b{color:var(--blue);font-weight:800}.values h3{font-size:1.4rem;margin-top:25px}.guarantee{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:100px 7vw;background:var(--navy);color:#fff}.guarantee p{color:#b8cad9}.quote-page{min-height:670px;display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:center;padding:90px 7vw;background:var(--navy);color:#fff}.quote-page>div{max-width:760px}.quote-page p{color:#c1d3e2;max-width:650px}.quote-page aside{background:#fff;color:var(--ink);padding:40px}.quote-page aside img{width:140px;height:105px;object-fit:contain}.quote-page aside h2{font-size:1.65rem}.quote-page aside a{display:block;color:var(--blue);font-weight:800;margin:8px 0}.quote-page aside p{color:#607385;font-size:.9rem}.quote-main{margin:18px 0 26px}.quote-assurance{display:flex;gap:22px;flex-wrap:wrap;color:#d9e8f3;font-size:.88rem}.quote-steps{padding:75px 7vw;margin:0}.quote-steps h2{font-size:1.3rem;margin-top:22px}
@media(max-width:800px){.nav nav{overflow-x:auto;justify-content:flex-start;padding-bottom:3px}.nav nav a{white-space:nowrap}.nav nav .nav-quote{padding:8px 12px}.story,.guarantee,.quote-page{grid-template-columns:1fr;padding:65px 22px}.story-photo img{height:420px}.values{padding:65px 22px}.values-grid,.quote-steps{grid-template-columns:1fr}.quote-steps{padding:55px 22px}.quote-page{gap:40px;min-height:0}.quote-page aside{padding:28px 22px}}
.nav nav{gap:8px;align-items:center}.nav nav .nav-item{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border:1px solid var(--line);background:var(--soft);color:var(--ink);transition:color .2s ease,background-color .2s ease,border-color .2s ease}.nav nav .nav-item:hover,.nav nav .nav-item.active{background:var(--blue);border-color:var(--blue);color:#fff}
@media(max-width:800px){.nav nav{overflow-x:auto;justify-content:flex-start;padding-bottom:5px;scrollbar-width:none}.nav nav::-webkit-scrollbar{display:none}.nav nav .nav-item{white-space:nowrap;padding:8px 12px;min-height:38px}}
