@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#24343f;--blue:#087f9d;--muted:#64757e;--pale:#eff5f6;--line:#dce6e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,5.8vw,5.7rem);margin:0 0 25px}h2{font-size:clamp(2rem,3.4vw,3.4rem);margin:0 0 20px}h3{font-size:1.22rem;margin:0 0 10px}p{margin:0 0 18px}.container{max-width:1190px;padding:0 26px;margin:auto}.top{position:sticky;top:0;z-index:10;background:#fffefef5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center}.brand img{width:230px;height:auto}.links{display:flex;gap:24px;align-items:center;font-size:.89rem;font-weight:700}.links a:hover,.footer a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--blue);color:white!important;padding:13px 21px;border-radius:3px;font-weight:700;transition:.2s}.btn:hover{background:#08647b}.btn.outline{background:transparent;color:var(--ink)!important;border:1px solid #a9bcc1}.hero{padding:95px 0 100px;background:linear-gradient(125deg,#f0f6f7 0%,#fff 67%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:45px}.eyebrow{color:var(--blue);text-transform:uppercase;letter-spacing:.19em;font-size:.75rem;font-weight:800;margin-bottom:20px}.lead{font-size:1.17rem;color:#52636d;max-width:650px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-art{background:#e5f0f2;padding:28px;position:relative;box-shadow:22px 22px 0 #d5e6e9}.hero-art img{width:100%;aspect-ratio:1.25;object-fit:contain}.section{padding:90px 0}.section.alt{background:#f5f8f8}.section-head{max-width:760px;margin-bottom:38px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--line);background:white;display:flex;flex-direction:column;transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #233d4b13}.card img{width:100%;height:190px;object-fit:cover}.card-content{padding:25px;flex:1;display:flex;flex-direction:column}.card p{color:var(--muted);font-size:.94rem}.card a.more{color:var(--blue);font-weight:700;margin-top:auto;padding-top:10px}.num{font-size:.75rem;color:var(--blue);letter-spacing:.14em;font-weight:800;margin-bottom:10px}.two{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.feature{border-left:3px solid var(--blue);padding-left:23px;margin:24px 0}.banner{background:#24343f;color:white;padding:70px 0}.banner p{color:#c7d7dc}.footer{background:#15242e;color:#d5e1e5;padding:55px 0 25px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:45px}.footer h3{color:white}.footer small{color:#b0c0c6}.footbottom{border-top:1px solid #41525a;margin-top:40px;padding-top:20px;font-size:.83rem}.page-hero{background:var(--pale);padding:85px 0}.page-hero h1{font-size:clamp(2.5rem,5vw,4.5rem);max-width:930px}.detail{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:start}.detail ul{list-style:none;padding:0;margin:20px 0}.detail li{padding:15px 0 15px 28px;border-bottom:1px solid var(--line);position:relative}.detail li:before{content:'↗';color:var(--blue);position:absolute;left:0}.detail img{width:100%;background:var(--pale)}.contact-card{padding:35px;background:var(--pale)}.contact-card a{color:var(--blue);font-weight:800;overflow-wrap:anywhere}.small{font-size:.85rem;color:var(--muted)}.mobile-toggle{display:none;border:0;background:none;font-size:1.7rem}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:white;z-index:99;padding:10px}@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.hero-grid,.two,.detail{grid-template-columns:1fr}.hero-art{max-width:650px}.links{gap:12px;font-size:.8rem}.brand img{width:180px}}@media(max-width:650px){.nav{height:72px}.brand img{width:175px}.mobile-toggle{display:block}.links{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.links.open{display:flex}.grid,.footergrid{grid-template-columns:1fr}.hero,.section{padding:60px 0}.page-hero{padding:60px 0}.hero-art{box-shadow:10px 10px 0 #d5e6e9}.container{padding:0 20px}}

.card img{height:220px;object-fit:contain;background:#f1f6f7;padding:4px}.hero-art img{aspect-ratio:1.5;object-fit:contain}.detail img{object-fit:contain;border:1px solid #d7e5e8}.card-content{padding:22px}

/* V3: faithful visual direction of approved homepage */
:root{--ink:#203044;--blue:#087b9e;--muted:#536171;--line:#e1e8ec}
body{font-family:'DM Sans',Arial,sans-serif;line-height:1.5}
.container{max-width:1310px;padding:0 35px}
.contactbar{font-size:11px;text-align:right;padding:7px max(35px,calc((100vw - 1240px)/2));color:#354c5c;background:#f5f9fa}
.nav{height:90px}.brand img{width:290px}.links{gap:28px;font-weight:600;font-size:13px}
.hero{padding:0;background:#f1f6f9}.hero-grid{max-width:1500px;grid-template-columns:43% 57%;gap:0;min-height:430px;padding-right:0;align-items:stretch}
.hero-grid>div:first-child{padding:68px 18px 48px 0;align-self:center;position:relative;z-index:1}
.hero h1{font-size:clamp(2.5rem,3.6vw,3.8rem);letter-spacing:-.045em;line-height:1.12;margin-bottom:20px}
.hero .lead{font-size:1.12rem;color:#25384a;line-height:1.55}
.hero-art{padding:0;box-shadow:none;background:transparent;overflow:hidden}
.hero-art img{height:100%;min-height:420px;width:100%;object-fit:cover;aspect-ratio:auto}
.hero .actions{margin-top:22px}.hero .btn{font-size:14px}
#prestations{padding:48px 0 65px}.section-head{max-width:none;text-align:center;margin-bottom:26px}.section-head h2{font-size:2rem;margin-bottom:6px}.section-head p{font-size:1rem;color:#667789}
.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.card{box-shadow:0 1px 2px #20304410}.card:hover{transform:translateY(-3px)}
.card img{height:155px;object-fit:cover;padding:0;background:#f1f6f7}
.card-content{padding:16px 17px 18px}.card h3{font-size:1.03rem;letter-spacing:-.02em;margin-bottom:8px}.card p{font-size:.84rem;line-height:1.45;margin-bottom:8px}.card a.more{font-size:.85rem;padding-top:3px}
@media(max-width:1050px){.grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr 1fr}.brand img{width:220px}.links{gap:12px}}
@media(max-width:650px){.contactbar{font-size:10px;padding:6px 12px}.container{padding:0 20px}.nav{height:72px}.hero-grid{grid-template-columns:1fr;padding:0 20px}.hero-grid>div:first-child{padding:40px 0 25px}.hero h1{font-size:2.5rem}.hero-art img{min-height:220px;max-height:290px}.grid{grid-template-columns:1fr}.card img{height:200px}.links{top:100px}#prestations{padding:45px 0}}

/* V4: professional detailed-page imagery; homepage untouched */
.detail img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#fff;border:1px solid #dce6e8;padding:0}.visual-caption{font-size:12px;line-height:1.5;color:#667887;margin:9px 0 20px}.detail .contact-card{margin-top:20px}

/* V5 - images de prestation cohérentes et croquis professionnels */
#approche img{width:100%;max-height:460px;object-fit:cover;object-position:center;border:1px solid #dbe5e9}
.detail img{width:100%;height:auto;max-height:660px;object-fit:contain;border:1px solid #dce6e8}
.card img{object-fit:cover;object-position:center;background:#f5f8f9}
@media(min-width:1051px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* V6 — contenu explicatif SEO */
.seo-detail{padding:12px 0 65px;background:#f8fbfc}.seo-detail .container{max-width:1060px}.seo-detail h2{font-size:1.65rem;color:#172e42;margin:10px 0 22px}.seo-detail h3{font-size:1.15rem;color:#0a698b;margin:24px 0 8px}.seo-detail h4{font-size:1rem;margin:15px 0 6px}.seo-detail p{max-width:90ch;line-height:1.75;color:#34495a;margin:0 0 14px}

/* V7: FAQ and related services */
.seo-details{padding-top:2.8rem;padding-bottom:3.5rem}
.seo-details h2{margin:0 0 1.1rem}
.faq-item{border:1px solid #d9e4ea;border-radius:9px;margin:0 0 .8rem;background:#fff;padding:1rem 1.2rem}
.faq-item summary{font-weight:650;color:#172c42;cursor:pointer}
.faq-item p{margin:.85rem 0 .1rem;line-height:1.65;max-width:76ch}
.related-services{margin-top:2rem;padding:1.3rem 1.5rem;background:#f0f7fa;border-left:4px solid #087fa3;border-radius:6px}
.related-services h2{font-size:1.3rem}
.related-services a{color:#006b8b;text-decoration:underline;text-underline-offset:3px}
