:root{--c1:#b4442b;--c2:#f4ece1;--txt:#222;--font:system-ui}
*{box-sizing:border-box;margin:0}
body{font-family:var(--font),system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--txt);background:#fff;line-height:1.5}
a{color:var(--c1)}
.wrap{max-width:960px;margin:0 auto;padding:0 1.2rem}
header.hero{background:var(--c2);padding:3.5rem 0 2.5rem;text-align:center}
.hero h1{font-size:clamp(2rem,7vw,3.2rem);color:var(--c1);line-height:1.1}
.hero p{margin:.8rem auto 1.6rem;max-width:36rem;font-size:1.1rem}
.btns{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}
.btn{display:inline-block;padding:.85rem 1.4rem;border-radius:999px;font-weight:600;text-decoration:none;border:2px solid var(--c1)}
.btn.p{background:var(--c1);color:#fff}.btn.s{background:#fff;color:var(--c1)}
section{padding:2.6rem 0;border-bottom:1px solid #eee}
h2{font-size:1.6rem;margin-bottom:1.2rem;color:var(--c1)}
.cat h3{font-size:1.1rem;margin:1.4rem 0 .5rem;text-transform:uppercase;letter-spacing:.05em}
.plat{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px dashed #ddd}
.plat small{display:block;color:#666}.prix{font-weight:600;white-space:nowrap}
.grille{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
@media(min-width:700px){.grille{grid-template-columns:repeat(3,1fr)}.infos{display:grid;grid-template-columns:1fr 1fr;gap:2rem}}
.ph{aspect-ratio:4/3;border:0;padding:0;border-radius:10px;overflow:hidden;cursor:zoom-in;background:var(--c2);width:100%}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.vide{display:flex;align-items:center;justify-content:center;height:100%;padding:.5rem;color:var(--c1);font-weight:600;border:2px dashed var(--c1);border-radius:10px;font-size:.9rem;text-align:center}
#lb{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;align-items:center;justify-content:center;z-index:9}
#lb.on{display:flex}#lb img{max-width:94vw;max-height:88vh}
table{width:100%;border-collapse:collapse}td{padding:.4rem 0;border-bottom:1px solid #eee;vertical-align:top}td+td{text-align:right}
footer{text-align:center;padding:1.6rem;font-size:.8rem;color:#888}footer a{color:#888}
.mv{margin-top:1rem}
.demo{background:#222;color:#fff;text-align:center;font-size:.8rem;padding:.35rem}
.barre{position:fixed;left:0;right:0;bottom:0;display:flex;gap:.5rem;padding:.6rem;background:rgba(255,255,255,.95);box-shadow:0 -2px 10px rgba(0,0,0,.1);z-index:8}
.barre .btn{flex:1;text-align:center}body{padding-bottom:4.5rem}
@media(min-width:800px){.barre{left:auto;right:1rem;bottom:1rem;border-radius:999px;padding:.4rem}.barre .btn{flex:none}body{padding-bottom:0}}
#lb .x,#lb .nv{position:absolute;color:#fff;background:none;border:0;font-size:2.4rem;cursor:pointer;padding:.5rem}#lb .x{top:.5rem;right:.8rem}#lb .pv{left:.3rem}#lb .nx{right:.3rem}
#lb img{transition:transform .25s;touch-action:pan-y}#lb img.z{transform:scale(2);cursor:zoom-out}
.pastille{font-size:.7rem;font-weight:600;vertical-align:middle;padding:.15rem .5rem;border-radius:999px;border:1px solid currentColor;opacity:.7;letter-spacing:0;text-shadow:none}
.ph{position:relative}.leg{position:absolute;left:.4rem;bottom:.4rem;background:rgba(0,0,0,.65);color:#fff;font-size:.7rem;padding:.15rem .45rem;border-radius:6px;pointer-events:none}.lbleg{left:50%;bottom:1rem;transform:translateX(-50%);font-size:.85rem}
