:root{--papier:#f5f2ea;--encre:#14201b;--doux:#4c5a52;--trait:#d9d3c3;--ok:#0f6b4f;--alerte:#c24a1c;--carte:#fffdf8}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--papier);color:var(--encre);font:17px/1.6 "Avenir Next","Segoe UI",system-ui,sans-serif}
h1,h2,h3{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-weight:700;line-height:1.12;letter-spacing:-.01em;margin:0 0 .6em}
a{color:var(--ok)}
.col{max-width:68rem;margin:0 auto;padding:0 1.25rem}
header.haut{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0}
.marque{font:700 1.35rem "Iowan Old Style",Palatino,Georgia,serif;text-decoration:none;color:var(--encre);display:flex;align-items:center;gap:.5rem}
.marque i{width:.7rem;height:.7rem;border-radius:50%;background:var(--ok);box-shadow:0 0 0 .25rem #0f6b4f26;display:inline-block}
.btn{display:inline-block;background:var(--encre);color:#fff;border:0;border-radius:.5rem;padding:.85rem 1.4rem;font:600 1rem inherit;font-family:inherit;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--ok)}
.btn.clair{background:transparent;color:var(--encre);border:1.5px solid var(--encre)}
.btn.clair:hover{background:var(--encre);color:#fff}
.btn:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--alerte);outline-offset:2px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center;padding:2.5rem 0 4rem}
.hero h1{font-size:clamp(2.3rem,5vw,3.8rem)}
.hero p.lead{font-size:1.2rem;color:var(--doux);max-width:34rem}
.note{font-size:.92rem;color:var(--doux);margin-top:.9rem}
.feuille{background:var(--carte);border:1px solid var(--trait);border-radius:.4rem;padding:1.6rem;box-shadow:0 1.2rem 2.5rem -1.2rem #14201b40;transform:rotate(1.2deg);max-width:25rem;justify-self:center}
.feuille .logo{display:flex;justify-content:space-between;font-size:.8rem;color:var(--doux);border-bottom:1px solid var(--trait);padding-bottom:.7rem;margin-bottom:1rem}
.feuille b.l{font-family:Georgia,serif;font-size:1.05rem;color:var(--encre)}
.feuille h3{font-size:1.2rem;margin-bottom:.2rem}
.feuille .sous{font-size:.85rem;color:var(--doux);margin:0 0 1rem}
.tiques{display:flex;gap:2px;margin:.4rem 0 .2rem}
.tiques s{flex:1;height:1.6rem;background:var(--ok);border-radius:1px;text-decoration:none;opacity:0;animation:t .4s forwards}
.tiques s.x{background:var(--alerte)}
@keyframes t{to{opacity:1}}
.chiffres{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0}
.chiffres div{border:1px solid var(--trait);border-radius:.3rem;padding:.5rem;font-size:.75rem;color:var(--doux)}
.chiffres strong{display:block;font:700 1.15rem Georgia,serif;color:var(--encre)}
.feuille ul{margin:.6rem 0 0;padding-left:1.1rem;font-size:.85rem}
.feuille .ex{font-size:.7rem;color:var(--doux);margin-top:1rem;text-align:right}
section{padding:3.5rem 0;border-top:1px solid var(--trait)}
section h2{font-size:clamp(1.7rem,3vw,2.3rem)}
.trois{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.trois>div{padding-top:.2rem}
.trois h3{font-size:1.25rem}
.pb{display:grid;gap:1rem;max-width:42rem}
.pb p{margin:0;padding-left:1.1rem;border-left:3px solid var(--alerte)}
.prix{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:44rem}
.prix>div{background:var(--carte);border:1px solid var(--trait);border-radius:.4rem;padding:1.5rem}
.prix .p{font:700 2.1rem Georgia,serif}
.prix .p small{font:400 1rem "Avenir Next",sans-serif;color:var(--doux)}
.prix em{color:var(--ok);font-style:normal;font-weight:600}
form{background:var(--carte);border:1px solid var(--trait);border-radius:.4rem;padding:1.75rem;max-width:36rem}
label,legend{display:block;font-weight:600;margin:1rem 0 .35rem}
input[type=email]{width:100%;padding:.75rem;border:1.5px solid var(--encre);border-radius:.4rem;font:inherit;background:#fff}
fieldset{border:0;padding:0;margin:0}
.opts{display:flex;flex-wrap:wrap;gap:.5rem 1rem}
.opts label{font-weight:400;margin:0;display:flex;gap:.4rem;align-items:center}
.btns{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem}
.piege{position:absolute;left:-9999px}
#retour{margin-top:1rem;font-weight:600}
#retour.ko{color:var(--alerte)}
details{border-top:1px solid var(--trait);padding:.9rem 0}
details summary{cursor:pointer;font-weight:600}
details p{margin:.5rem 0 0;color:var(--doux)}
footer{border-top:1px solid var(--trait);padding:2rem 0 3rem;font-size:.92rem;color:var(--doux)}
footer a{margin-right:1.2rem}
.texte{max-width:42rem;padding:2rem 0 4rem}
@media(max-width:800px){.hero{grid-template-columns:1fr;gap:2rem}.trois,.prix{grid-template-columns:1fr}.feuille{transform:none}.col{padding:0 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tiques s{animation:none;opacity:1}}
