
:root{--p:#0f4c5c;--a:#e36414;--b:#fbf7f0;--r:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#242424;line-height:1.7;background:#fff}
header{display:flex;justify-content:space-between;align-items:center;padding:15px 5vw;background:var(--p);color:#fff;position:sticky;top:0;z-index:20}
.logo{font-weight:900;font-size:1.15rem;letter-spacing:.02em}nav a{color:#fff;text-decoration:none;margin:0 10px;font-weight:700}.call{background:var(--a);padding:10px 15px;color:#fff;text-decoration:none;border-radius:999px;font-weight:900}
.hero{min-height:68vh;display:flex;align-items:center;background:linear-gradient(133deg,#0f4c5cee,#0f4c5c55),url('photos/montebourg-chantier-1.jpg') center 35%/cover;color:white;padding:8vw 7vw}
.hero-inner{max-width:920px;border-left:0;padding-left:0}
.eyebrow{font-weight:900;text-transform:uppercase;letter-spacing:2px;color:var(--a)}h1{font-size:clamp(2.2rem,5vw,4.7rem);line-height:1.03;margin:.2em 0}h2{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.15;color:var(--p)}h3{color:var(--p)}
.btn{display:inline-block;background:var(--a);color:#fff;text-decoration:none;font-weight:900;padding:14px 21px;border-radius:var(--r);margin-top:10px}
.wrap{width:min(1160px,90%);margin:auto;padding:72px 0}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.card{padding:27px;border-radius:var(--r);background:#fbf7f0;border:0;box-shadow:0 15px 40px #00000012}
.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.photo-grid img{width:100%;height:390px;object-fit:cover;border-radius:var(--r)}
.band{background:var(--b)}.two{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.two img{width:100%;height:430px;object-fit:cover;border-radius:var(--r)}ul{padding-left:20px}footer{background:var(--p);color:#fff;padding:40px 5vw}footer a{color:#fff}
.map iframe{width:100%;height:430px;border:0;border-radius:var(--r)}.facts{border-left:5px solid var(--a);padding-left:25px}
@media(max-width:820px){nav{display:none}header{padding:11px 14px}.call{font-size:.82rem}.hero{min-height:70vh;padding:80px 7vw}.services,.two,.photo-grid{grid-template-columns:1fr}.photo-grid img,.two img{height:280px}}
