/* ===== Base & Theme ===== */
:root{
  --brand:#c0392b;
  --brand-ink:#a53125;
  --ink:#333;
  --bg:#f7f7f7;
  --surface:#fff;
  --muted:#666;
  --border:#ddd;
  --focus: #1e90ff;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0f0f10;
    --surface:#151517;
    --ink:#eaeaea;
    --muted:#b4b4b8;
    --border:#2a2a2d;
    --brand:#ff5b4a;
    --brand-ink:#e0483a;
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font:16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  color:var(--ink);
  background:var(--bg);
}
.container{max-width:1100px;margin:auto;padding:0 20px}
.skip-link{
  position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden;
}
.skip-link:focus{
  left:1rem;top:1rem;width:auto;height:auto;background:var(--surface);padding:.5rem .75rem;border:2px solid var(--focus);z-index:1000
}
/* ===== Header ===== */
.site-header{background:#222;color:#fff;border-bottom:3px solid var(--brand)}
.header-row{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.brand{font-size:1.5rem;color:#fff;text-decoration:none;font-weight:700}
.brand span{color:var(--brand)}
.nav-toggle{
  background:transparent;border:2px solid #fff;color:#fff;border-radius:.4rem;
  padding:.35rem .6rem;display:none
}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1rem}
.nav a{color:#fff;text-decoration:none;padding:.25rem .4rem;border-radius:.25rem}
.nav a[aria-current="page"]{color:var(--brand)}
.nav a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media (max-width: 760px){
  .nav-toggle{display:block}
  .nav{position:absolute;left:0;right:0;top:64px;background:#222;display:none}
  .nav.open{display:block}
  .nav ul{flex-direction:column;padding:1rem}
}
/* ===== Footer ===== */
footer{background:#222;color:#fff;text-align:center;padding:1rem 0;margin-top:2rem}
/* ===== Slideshow ===== */
.slideshow-container{max-width:1000px;position:relative;margin:1rem auto}
.slide{display:none;position:relative}
.slide img{width:100%;height:52vh;max-height:560px;object-fit:cover;border-radius:8px}
.slide-text{
  color:#fff;font-size:clamp(18px,2.5vw,26px);padding:.6rem .8rem;position:absolute;left:0;right:0;bottom:8px;text-align:center;
  background:linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0))
}
.prev,.next{
  position:absolute;top:50%;transform:translateY(-50%);padding:.75rem;border-radius:.35rem;border:0;background:rgba(0,0,0,.35);color:#fff;
  cursor:pointer;font-weight:700
}
.prev{left:.5rem} .next{right:.5rem}
.prev:hover,.next:hover{background:rgba(0,0,0,.6)}
.dot{height:12px;width:12px;margin:0 3px;background:#aaa;border-radius:50%;display:inline-block}
.dot.active-dot,.dot:hover{background:#666}
@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important}
}
/* ===== Sections ===== */
main h2{text-align:center;margin:1.25rem 0;color:var(--brand)}
.menu-category{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.sub-category h4{margin-top:1.25rem;color:var(--muted)}
/* Cards grid */
.menu-items{
  display:grid;gap:1.5rem;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.menu-item{
  background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem;text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,.06)
}
.menu-item img{max-width:100%;height:200px;object-fit:cover;border-radius:8px}
.menu-item h5{margin:.6rem 0;color:var(--brand)}
.menu-item .price{font-weight:700}
/* Checkout form */
.checkout-form{
  background:var(--surface);border:1px solid var(--border);border-radius:10px;max-width:720px;margin:auto;padding:1.5rem
}
.checkout-form fieldset{border:1px solid var(--border);margin-bottom:1rem;padding:1rem;border-radius:8px}
.checkout-form legend{padding:0 .5rem;font-weight:700;color:var(--brand)}
.checkout-form label{display:block;margin:.35rem 0}
.checkout-form input,.checkout-form textarea, .checkout-form select{
  width:100%;padding:.65rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink)
}
.checkout-form input:focus-visible,.checkout-form textarea:focus-visible{
  outline:2px solid var(--focus);outline-offset:2px;border-color:var(--focus)
}
.checkout-form .hp{position:absolute;left:-5000px}
.checkout-form button{
  width:100%;padding:.8rem;background:var(--brand);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem
}
.checkout-form button:hover{background:var(--brand-ink)}
.fineprint{font-size:.9rem;color:var(--muted);text-align:center;margin-top:.5rem}
/* About */
.about-content{display:flex;gap:2rem;align-items:center}
.about-image{flex:1;max-width:300px;border-radius:50%}
.about-text{flex:2}
