
:root{--p:#15803d;--f:#0d3b22;--a:#189b54;--fond:#f2f8f4;--t:#1f2933;--t2:#52606d;--b:#fff;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--t);background:var(--b);line-height:1.6;font-size:17px}
a{color:var(--p)}img,svg{flex-shrink:0}
.c{max-width:1080px;margin:0 auto;padding:0 20px}
.demo{background:#fff7d6;color:#5c4400;text-align:center;font-size:14px;padding:8px 16px;border-bottom:1px solid #f1d98a}
header.top{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid #e6e9ee}
header.top .c{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px}
.marque{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--f);text-decoration:none;min-width:0}
.marque span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.logo-img{height:50px;width:auto;max-width:200px;object-fit:contain;display:block}
.logo{width:38px;height:38px;border-radius:10px;background:var(--p);color:#fff;display:grid;place-items:center;font-weight:800;font-size:15px}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--a);color:#111;font-weight:700;text-decoration:none;padding:12px 20px;border-radius:999px;border:0;white-space:nowrap}
.btn:hover{filter:brightness(1.06)}.btn.sec{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.7)}
header.top .btn{padding:9px 16px;font-size:15px}
.hero{background:linear-gradient(135deg,var(--f),var(--p));color:#fff;padding:72px 0 80px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.06)}
.hero .tag{display:inline-block;background:rgba(255,255,255,.14);padding:5px 12px;border-radius:999px;font-size:14px;margin-bottom:16px}
.hero h1{font-size:clamp(30px,5vw,50px);line-height:1.12;margin:0 0 16px;max-width:760px}
.hero p{font-size:clamp(17px,2.2vw,20px);opacity:.92;max-width:640px;margin:0 0 28px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.atouts{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:30px;font-size:15px;opacity:.95}
.atouts li{display:flex;align-items:center;gap:6px;list-style:none}.atouts{padding:0}
section{padding:64px 0}section.alt{background:var(--fond)}
h2{font-size:clamp(25px,3.4vw,34px);color:var(--f);margin:0 0 8px;line-height:1.2}
.intro{color:var(--t2);margin:0 0 32px;max-width:680px}
.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.carte{background:#fff;border:1px solid #e6e9ee;border-radius:var(--r);padding:22px}
.carte h3{margin:0 0 6px;font-size:19px;color:var(--f)}.carte p{margin:0;color:var(--t2);font-size:16px}
.pastille{width:40px;height:40px;border-radius:10px;background:var(--fond);color:var(--p);display:grid;place-items:center;margin-bottom:12px}
.deux{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;align-items:start}
.zones{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}
.zones li{list-style:none;background:#fff;border:1px solid #e6e9ee;padding:6px 14px;border-radius:999px;font-size:15px}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid #e6e9ee}
td{padding:11px 16px;border-bottom:1px solid #eef0f3}tr:last-child td{border-bottom:0}td:last-child{text-align:right;color:var(--t2)}
.avis .carte p{color:var(--t)}.note{color:#f59e0b;display:flex;gap:2px;margin-bottom:8px}.qui{margin-top:10px;font-size:14px;color:var(--t2)}
.contact{background:var(--f);color:#fff}.contact h2{color:#fff}.contact .intro{color:rgba(255,255,255,.8)}
.coord{display:grid;gap:14px;padding:0;margin:0 0 28px}.coord li{list-style:none;display:flex;gap:12px;align-items:flex-start}
.coord a{color:#fff;word-break:break-word}
footer{background:#0b1220;color:#9aa5b1;font-size:14px;padding:26px 0}footer .c{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
footer a{color:#cbd2d9}
.etapes{counter-reset:e;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;padding:0;margin:0}
.etapes li{list-style:none;counter-increment:e;background:#fff;border:1px solid #e6e9ee;border-radius:var(--r);padding:22px}
.etapes li:before{content:counter(e);display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--a);color:#111;font-weight:800;margin-bottom:10px}
.etapes strong{display:block;color:var(--f);font-size:18px;margin-bottom:4px}.etapes span{color:var(--t2);font-size:16px}
.encart{background:var(--fond);border-left:5px solid var(--a);border-radius:var(--r);padding:26px 28px;display:grid;gap:6px}
.encart h2{margin:0}.encart p{margin:0;color:var(--t);max-width:820px}
.photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.photos figure{margin:0;aspect-ratio:4/3;border-radius:var(--r);background:linear-gradient(135deg,var(--fond),#fff);border:2px dashed #cfd6de;display:grid;place-items:center;text-align:center;color:var(--t2);padding:12px}
.photos figure svg{color:var(--p);opacity:.6;margin:0 auto 6px;display:block}.photos figcaption{font-size:15px}.photos figcaption b{display:block;color:var(--f)}
.photos img{width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.photos.grandes{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:18px}
.photos figure.img{padding:0;border:0;background:none;overflow:hidden;position:relative}
.photos figure.img figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;color:#fff;font-weight:600;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.65));border-radius:0 0 var(--r) var(--r)}
section.hero.photo{background:linear-gradient(90deg,rgba(14,19,26,.86),rgba(14,19,26,.5)),var(--img) center/cover;color:#fff;border:0}
section.hero.photo h1,section.hero.photo p{color:#fff;opacity:1}section.hero.photo .tag{background:rgba(255,255,255,.16);color:#fff;border:0}
section.hero.photo .atouts li{color:#fff}
.faq details{background:#fff;border:1px solid #e6e9ee;border-radius:var(--r);padding:16px 20px;margin-bottom:10px}
.faq summary{cursor:pointer;font-weight:700;color:var(--f)}.faq details p{margin:10px 0 0;color:var(--t2)}
.legal h1{color:var(--f);font-size:32px}.legal h2{font-size:21px;margin-top:28px}.legal main{padding:40px 0 60px}
@media (max-width:560px){header.top .btn .txt{display:none}.hero{padding:52px 0 60px}section{padding:48px 0}}

h1,h2,.marque span{font-family:"Trebuchet MS","Segoe UI",sans-serif;letter-spacing:.01em}
h2{text-transform:uppercase;font-size:clamp(22px,3vw,28px)}
.hero{background:var(--f);text-align:center;padding:84px 0 92px}
.hero:after{display:none}.hero h1,.hero p{margin-left:auto;margin-right:auto}
.actions,.atouts{justify-content:center}.hero h1{text-transform:uppercase;font-size:clamp(28px,4.6vw,46px)}
.hero .tag{background:var(--a);color:#111;font-weight:700}
.btn{border-radius:4px;text-transform:uppercase;font-size:15px;letter-spacing:.03em}
.carte{border:0;border-left:5px solid var(--a);border-radius:4px;background:var(--fond)}
.pastille{background:var(--p);color:#fff;border-radius:4px}.logo{border-radius:4px;background:var(--a);color:#111}
section.alt{background:#fff}.zones li{background:var(--fond)}
