:root{
  --ground:#faf3e8;
  --ground-raised:#ffffff;
  --ink:#2c1810;
  --ink-soft:#6b5344;
  --spice:#a8471f;
  --spice-deep:#7c3413;
  --gold:#b8862f;
  --gold-soft:#e8d4a8;
  --line:#e2d3ba;
  --shadow:0 12px 32px -16px rgba(44,24,16,0.28);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#1c130d;
    --ground-raised:#261a12;
    --ink:#f3e6d5;
    --ink-soft:#c9b39c;
    --spice:#e2793f;
    --spice-deep:#f0985e;
    --gold:#d9ab5c;
    --gold-soft:#4a3820;
    --line:#3d2c1c;
    --shadow:0 12px 32px -16px rgba(0,0,0,0.55);
  }
}
:root[data-theme="dark"]{
  --ground:#1c130d;
  --ground-raised:#261a12;
  --ink:#f3e6d5;
  --ink-soft:#c9b39c;
  --spice:#e2793f;
  --spice-deep:#f0985e;
  --gold:#d9ab5c;
  --gold-soft:#4a3820;
  --line:#3d2c1c;
  --shadow:0 12px 32px -16px rgba(0,0,0,0.55);
}

*{box-sizing:border-box;}
html{background:var(--ground);}
body{
  margin:0;
  background:var(--ground);
  color:var(--ink);
  font-family:'Jost','Work Sans',sans-serif;
  padding-inline:20px;
}
h1,h2,h3,.brand{
  font-family:'Cormorant Garamond','Marcellus',Georgia,serif;
  text-wrap:balance;
}
a{color:inherit;}
img{max-width:100%;display:block;}

.wrap{max-width:1040px;margin:0 auto;}

header.site{
  display:flex;align-items:center;justify-content:space-between;
  padding-block:22px;border-bottom:1px solid var(--line);
  max-width:1040px;margin:0 auto;flex-wrap:wrap;gap:12px;
}
.brand{font-size:1.5rem;font-weight:600;letter-spacing:0.02em;display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);}
.brand img{height:38px;width:auto;}
.brand em{font-style:normal;color:var(--spice);}
nav.site a{
  font-size:0.85rem;text-transform:uppercase;letter-spacing:0.06em;
  margin-left:26px;text-decoration:none;color:var(--ink-soft);
}
nav.site a.current{color:var(--spice-deep);}

.hero{padding-block:52px 40px;display:flex;flex-direction:column;gap:14px;align-items:flex-start;}
.eyebrow{font-size:0.8rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);font-weight:600;}
.hero h1{font-size:clamp(2.1rem,5vw,3.1rem);margin:0;font-weight:600;line-height:1.08;max-width:15ch;}
.hero p.lead{font-size:1.08rem;color:var(--ink-soft);max-width:46ch;margin:0;line-height:1.6;}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:999px;font-size:0.92rem;text-decoration:none;font-weight:500;border:none;cursor:pointer;}
.btn-primary{background:var(--spice);color:#fff8ef;}
.btn-ghost{border:1px solid var(--line);color:var(--ink);background:transparent;}
.btn-sm{padding:8px 16px;font-size:0.82rem;}

.specialties{padding-block:20px 56px;}
.specialties h2{font-size:1.7rem;margin:0 0 6px;}
.specialties .sub{color:var(--ink-soft);margin:0 0 28px;font-size:0.98rem;}
.dish-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.dish-card{display:block;text-decoration:none;color:inherit;border-radius:16px;overflow:hidden;background:var(--ground-raised);box-shadow:var(--shadow);border:1px solid var(--line);transition:transform .18s ease;}
.dish-card:hover{transform:translateY(-3px);}
.dish-card .pic{aspect-ratio:4/3;overflow:hidden;}
.dish-card .pic img{width:100%;height:100%;object-fit:cover;}
.dish-card .info{padding:18px 20px 20px;}
.dish-card .info .tag{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);}
.dish-card .info h3{font-size:1.25rem;margin:4px 0 6px;}
.dish-card .info .see-more{font-size:0.86rem;color:var(--spice-deep);display:flex;align-items:center;gap:6px;}

.quote{padding-block:44px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;}
.quote p{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-style:italic;color:var(--ink);max-width:34ch;margin:0 auto;line-height:1.5;}
.quote span{display:block;margin-top:10px;font-family:inherit;font-style:normal;font-size:0.8rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-soft);}

.devis-cta{padding-block:48px 64px;text-align:center;}
.devis-cta h2{font-size:1.6rem;margin:0 0 10px;}
.devis-cta p{color:var(--ink-soft);margin:0 0 22px;}

.carte-hero{padding-block:34px 0;}
.carte-hero .eyebrow{margin-bottom:8px;}
.carte-hero h1{font-size:clamp(1.9rem,4.6vw,2.6rem);margin:0 0 22px;}
.bandeau{border-radius:18px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:1918/820;}
.bandeau img{width:100%;height:100%;object-fit:cover;}

.delivery-note{display:flex;gap:12px;align-items:flex-start;background:var(--ground-raised);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-block:28px;font-size:0.9rem;color:var(--ink-soft);line-height:1.55;}
.delivery-note .ic{font-size:1.3rem;line-height:1;}
.delivery-note b{color:var(--ink);font-weight:600;}

.menu-list{padding-block:12px 60px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
.menu-item{background:var(--ground-raised);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;}
.menu-item .pic{aspect-ratio:1/1;}
.menu-item .pic img{width:100%;height:100%;object-fit:cover;}
.menu-item.devis-card .pic{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;background:linear-gradient(155deg,var(--gold-soft),var(--ground));font-family:'Cormorant Garamond',serif;font-size:3.4rem;color:var(--gold);}
.menu-item .info{padding:18px 18px 20px;display:flex;flex-direction:column;gap:10px;flex:1;}
.menu-item h3{font-size:1.15rem;margin:0;line-height:1.25;}
.menu-item .story{font-size:0.85rem;color:var(--ink-soft);line-height:1.55;margin:0;}
.price-tiers{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px dashed var(--line);margin-top:auto;}
.price-tiers .tier{display:flex;justify-content:space-between;align-items:baseline;font-size:0.88rem;}
.price-tiers .tier .label{color:var(--ink-soft);}
.price-tiers .tier .amount{font-weight:600;color:var(--spice-deep);font-variant-numeric:tabular-nums;}
.price-tiers .tier .amount small{font-weight:400;color:var(--ink-soft);}
.options-note{font-size:0.78rem;color:var(--ink-soft);border-top:1px dashed var(--line);padding-top:10px;line-height:1.5;}

.carte-note{max-width:640px;margin:0 auto 50px;text-align:center;color:var(--ink-soft);font-size:0.95rem;line-height:1.6;}

footer.site{border-top:1px solid var(--line);padding-block:26px 40px;text-align:center;color:var(--ink-soft);font-size:0.85rem;display:flex;flex-direction:column;gap:8px;align-items:center;}
footer.site .foot-links{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;}
footer.site a{text-decoration:none;}
footer.site a:hover{color:var(--spice-deep);}

@media (max-width:640px){
  header.site{flex-direction:column;gap:10px;align-items:flex-start;}
  nav.site a{margin-left:0;margin-right:20px;}
  .dish-grid{grid-template-columns:1fr;}
  .menu-list{grid-template-columns:1fr;}
}
