
:root{--creme:#FAF7F1;--encre:#221E1B;--bois:#A9752F;--olive:#4A5340;--gris:#6E6659;--trait:#E6DFD2;--blanc:#fff;--miel:#F7EBD6;--feuille:#E7EDE2;--rouge:#9E3B32}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}
body{margin:0;background:var(--creme);color:var(--encre);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;line-height:1.55}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15;margin:0;text-wrap:balance}
p{margin:0}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}
.large{max-width:1120px;margin:0 auto;padding-inline:16px}
.bande{background:#fff3cd;padding:10px 16px;font-size:14px;text-align:center}
.haut{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:14px}
.haut img{width:auto;height:44px;object-fit:contain}.haut a{font-size:15px;text-decoration:none}
.accroche{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:12px 40px}
.accroche .photo{aspect-ratio:5/4.4;border-radius:18px;overflow:hidden;background:var(--trait)}
.sur{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--bois);font-weight:700}
h1{font-size:clamp(38px,6vw,62px);margin:12px 0 16px}
.chapeau{font-size:18px;color:var(--gris);max-width:48ch}.chapeau strong{color:var(--encre);font-weight:600}
.faits{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--gris);margin-top:16px}.faits b{color:var(--encre);font-weight:600}
.boutons{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.btn{display:inline-block;appearance:none;border:0;background:var(--encre);color:#fff;text-decoration:none;padding:13px 24px;border-radius:999px;font:600 16px -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;text-align:center;cursor:pointer}
.btn:hover{background:var(--olive)}.btn.clair{background:transparent;color:var(--encre);box-shadow:inset 0 0 0 1.5px var(--encre)}.btn.clair:hover{background:var(--encre);color:#fff}
.btn:disabled{opacity:.45;cursor:not-allowed}
.section{padding-block:36px;scroll-margin-top:10px}
.section>h2,.grand{font-size:clamp(28px,4vw,38px);margin-bottom:10px}
.intro{color:var(--gris);max-width:68ch;margin-bottom:22px}
.trois{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}
.carte{background:var(--blanc);border:1px solid var(--trait);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.carte .photo{aspect-ratio:4/3;overflow:hidden;background:var(--trait)}
.carte .corps{padding:18px 20px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.carte h3{font-size:24px}.prix{font-family:Georgia,'Times New Roman',serif;font-size:26px;color:var(--bois)}
.carte .btn{margin-top:auto;display:block}.carte .petit{margin-bottom:12px}
.petit{font-size:14px;color:var(--gris)}
.dimanche{background:var(--feuille);border-radius:14px;padding:14px 18px;margin-top:20px;font-size:15px}
.grille{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}
.etape{display:grid;gap:12px;padding-block:20px;border-top:1px solid var(--trait)}.etape:first-child{border-top:0;padding-top:0}
.etape h3{font-size:22px}
.onglets{display:flex;flex-wrap:wrap;gap:8px}
.onglet{border:1px solid var(--trait);background:var(--blanc);color:var(--encre);border-radius:999px;padding:10px 16px;font:500 15px -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.onglet[aria-pressed="true"]{background:var(--encre);color:#fff;border-color:var(--encre)}
.jours{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px}
.jour{flex:0 0 auto;border:1px solid var(--trait);background:var(--blanc);color:var(--encre);border-radius:12px;padding:8px 12px;min-width:74px;text-align:center;cursor:pointer;font:500 14px -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
.jour b{display:block;font:400 21px Georgia,'Times New Roman',serif}
.jour[aria-pressed="true"]{border-color:var(--olive);background:var(--feuille);box-shadow:inset 0 0 0 1px var(--olive)}
.creneaux{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.creneau{border:1px solid var(--trait);background:var(--blanc);color:var(--encre);border-radius:12px;padding:12px 14px;text-align:left;cursor:pointer;display:grid;gap:3px;font:inherit}
.creneau b{font-variant-numeric:tabular-nums}.creneau small{font-size:13px;color:var(--gris)}.creneau small.peu{color:var(--rouge);font-weight:600}
.creneau.patinha{background:var(--miel);border-color:var(--bois)}
.creneau[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--olive);border-color:var(--olive)}.creneau:disabled{opacity:.45;cursor:not-allowed}
.lignes{background:var(--blanc);border:1px solid var(--trait);border-radius:12px;overflow:hidden}
.ligne{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--trait)}.ligne:last-child{border-bottom:0}
.ligne .nom{flex:1 1 180px;min-width:0}.ligne .nom small{display:block;color:var(--gris);font-size:13px}
.compte{display:inline-flex;align-items:center;border:1px solid var(--trait);border-radius:999px}
.compte button{border:0;background:transparent;color:var(--encre);width:36px;height:36px;font-size:18px;cursor:pointer;border-radius:999px}
.compte output{min-width:24px;text-align:center;font-weight:600}
input,select,textarea{font:inherit;color:var(--encre);background:#FDFCF9;border:1px solid var(--trait);border-radius:10px;padding:10px 12px;width:100%}
input.libre{width:84px}
.champs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
label.f{display:grid;gap:4px;font-size:14px;font-weight:500}
.cases{display:grid;gap:8px}.cases label{display:flex;gap:10px;align-items:flex-start;font-size:15px}.cases input{width:auto;margin-top:4px}
.jetons{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.plaque{display:grid;gap:6px;background:var(--feuille);border-radius:12px;padding:12px 14px}
aside{position:sticky;top:14px;background:var(--blanc);border:1px solid var(--trait);border-radius:16px;padding:18px;display:grid;gap:12px}
aside h3{font-size:22px}
.recap{display:grid;gap:6px;font-size:14px}.recap div{display:flex;justify-content:space-between;gap:12px}
.total{display:flex;justify-content:space-between;font:400 24px Georgia,'Times New Roman',serif;border-top:1px solid var(--trait);padding-top:10px}
.payer{display:grid;gap:8px}.payer .btn{width:100%}
.message{font-size:14px;background:var(--miel);border-radius:10px;padding:10px 12px}
.bois{background:#F1EBDF}
.papilles{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:start}
.papilles .photo{aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:var(--trait)}
.pourquoi{background:var(--blanc);border-left:3px solid var(--bois);padding:12px 16px;border-radius:0 10px 10px 0;margin-top:14px}
.quatre{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
.quatre div{background:var(--blanc);border:1px solid var(--trait);border-radius:14px;padding:14px}.quatre h3{font-size:18px;margin-bottom:4px}.quatre p{font-size:15px;color:var(--gris)}
.qr{display:flex;flex-wrap:wrap;gap:20px;align-items:center;background:var(--blanc);border:1px solid var(--trait);border-radius:16px;padding:16px 20px}
.qr img{width:130px;height:130px;object-fit:contain}.qr div{flex:1 1 220px}
.merci{max-width:640px;margin:0 auto;padding:30px 16px 50px;display:grid;gap:14px}
footer{border-top:1px solid var(--trait);padding-block:18px 28px;font-size:13px;color:var(--gris)}
:focus-visible{outline:3px solid var(--bois);outline-offset:2px}
@media (max-width:860px){.accroche{grid-template-columns:minmax(0,1fr);gap:20px;padding-bottom:24px}.accroche .photo{order:-1;aspect-ratio:4/3.2}.grille{grid-template-columns:minmax(0,1fr)}aside{position:static}.papilles{grid-template-columns:minmax(0,1fr)}.papilles .photo{aspect-ratio:16/10}}
@media (max-width:520px){.champs{grid-template-columns:minmax(0,1fr)}.boutons .btn{flex:1 1 100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.p1{font-size:38px;margin:0}
.p2{white-space:nowrap}
.p3{margin-bottom:12px}
.p4{font-size:18px;margin-bottom:4px}
.p5{max-width:300px}
.p6{display:flex;gap:6px;align-items:center;font-size:15px}
.p7{width:100px}
.p8{scroll-margin-top:10px}
.p9{font-family:inherit}
.p10{font-size:18px}
.p11{max-width:340px}
.p12{position:absolute;left:-9999px;width:1px}
.p13{margin-top:26px}
.p14{font-size:22px;margin-bottom:4px}
.p15{padding-top:0}
.p16{font-size:26px}
.p17{max-width:75ch;margin-bottom:18px}
.p18{max-width:640px}
.p19{grid-column:1/-1}
