*{box-sizing:border-box}
:root{
  --bg:#0d0a0a;
  --bg2:#15100d;
  --card:#ffffff;
  --text:#ffffff;
  --muted:rgba(255,255,255,.78);
  --line:rgba(255,255,255,.14);
  --shadow:0 14px 40px rgba(0,0,0,.45);
  --brown:#7a4f31;
  --badge:#c8b299;
  --hero-glow1:rgba(255,187,107,.2);
  --hero-glow2:rgba(255,137,94,.16);
  --hero-bg:url("images/Burger.png");
  --glass: rgba(32,24,18,.72);
}
body{
  margin:0;
  font-family: system-ui,-apple-system,Arial;
  background:
    linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.75)),
    radial-gradient(120% 90% at 20% 10%, rgba(255,187,107,.08), transparent 50%),
    radial-gradient(110% 80% at 90% 10%, rgba(255,137,94,.06), transparent 45%),
    url("images/Burger.png") center/cover fixed;
  color: var(--text);
  min-height:100vh;
}
.top{
  position:sticky; top:0;
  background: rgba(7,7,8,.75);
  backdrop-filter: blur(12px);
  border-bottom:1px solid var(--line);
  z-index:10;
}
.brand{
  display:flex; align-items:center; gap:12px;
  padding:14px 18px;
  max-width:1100px; margin:0 auto;
}
.logo{
  width:44px; height:44px; border-radius:14px;
  display:grid; place-items:center;
  font-weight:900; letter-spacing:.5px;
  background: rgba(255,255,255,.12);
}
.title{font-size:18px;font-weight:900}
.sub{font-size:13px; color: var(--muted); margin-top:2px}

.wrap{max-width:1100px;margin:0 auto;padding:18px}
.hero{
  position:relative;
  display:flex; gap:18px; align-items:stretch;
  border:1px solid var(--line);
  border-radius:28px;
  padding:22px;
  overflow:hidden;
  background:
    linear-gradient(160deg, rgba(24,17,12,.92), rgba(24,17,12,.78)),
    var(--hero-bg);
  background-size: cover;
  background-position: center;
  box-shadow: 0 20px 40px rgba(0,0,0,.55);
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(100% 80% at 18% 10%, rgba(255,187,107,.25), transparent 55%),
    radial-gradient(120% 90% at 80% 30%, rgba(255,137,94,.22), transparent 60%),
    rgba(0,0,0,.28);
  pointer-events:none;
}
.hero > *{position:relative; z-index:1;}
.hero h1{margin:0;font-size:42px;letter-spacing:.2px}
.hero p{margin:10px 0 0 0;color:var(--muted);max-width:520px;line-height:1.35}
.heroRight{margin-left:auto;display:flex;align-items:center;gap:12px;position:relative}
.eyebrow{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,187,107,.12);
  color:#ffdcb2;
  font-weight:700;
  font-size:12px;
  letter-spacing:.2px;
  text-transform:uppercase;
}
.heroBadges{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:10px 14px;border-radius:999px;
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.16);
  font-size:13px;color:#f0f0f0;
  box-shadow:0 10px 26px rgba(0,0,0,.25);
  animation:pulse 3s ease-in-out infinite;
}
.burgerArt{
  position:relative;
  width:160px;height:160px;
  margin-left:12px;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.5));
  animation:float 5s ease-in-out infinite;
}
.layer{
  position:absolute;left:24px;right:24px;
  height:20px;border-radius:18px;
}
.bunTop{top:32px;background:linear-gradient(180deg,#f5c470,#e0a74e);height:32px;border-radius:18px 18px 10px 10px;box-shadow:0 6px 12px rgba(0,0,0,.18)}
.salad{top:58px;background:linear-gradient(90deg,#68c15c,#7dde70);height:10px}
.cheese{top:72px;background:linear-gradient(90deg,#f8d16b,#f0b63e);height:12px;clip-path:polygon(0 0,85% 0,80% 100%,15% 100%)}
.meat{top:86px;background:linear-gradient(180deg,#7a341e,#5c200f);height:16px;border-radius:10px}
.bunBottom{top:108px;background:linear-gradient(180deg,#e8b760,#d29a45);height:26px;border-radius:10px 10px 16px 16px}
.seed{position:absolute;width:8px;height:12px;border-radius:999px;background:#ffeac3;top:36px;left:54px;opacity:.9;transform:rotate(-12deg);box-shadow:0 2px 3px rgba(0,0,0,.08)}
.seed1{left:70px;animation:seed 4s infinite ease-in-out}
.seed2{left:92px;top:40px;animation:seed 3.5s infinite ease-in-out}
.seed3{left:112px;top:34px;animation:seed 4.2s infinite ease-in-out}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes seed{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-3px) rotate(-5deg)}}
@keyframes pulse{0%,100%{box-shadow:0 10px 26px rgba(0,0,0,.25),0 0 0 0 rgba(255,255,255,.08)}50%{box-shadow:0 14px 30px rgba(0,0,0,.35),0 0 0 6px rgba(255,255,255,.06)}}
.hint{
  display:flex; gap:10px; align-items:center;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size:13px;
}
.dot{width:10px;height:10px;border-radius:999px;background:#7CFF6B;box-shadow:0 0 12px rgba(124,255,107,.6)}
.section{margin-top:18px}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px}
h2{margin:0 0 12px 0;font-size:18px}
.muted{color:var(--muted);font-size:13px}

.grid{display:grid;gap:14px}
.cats{grid-template-columns:repeat(4,minmax(0,1fr))}
.items{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){.cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.cats{grid-template-columns:1fr}.items{grid-template-columns:1fr}.hero{flex-direction:column}.heroRight{margin-left:0}}

.catCard{
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background: rgba(255,255,255,.04);
  cursor:pointer;
  box-shadow: 0 10px 26px rgba(0,0,0,.25);
  transition: transform .18s ease, border-color .12s ease, box-shadow .18s ease;
  opacity:0;
  transform: translateY(12px);
  animation: catIn .6s ease forwards;
}
.catCard:hover{transform: translateY(-3px); border-color: rgba(255,255,255,.18); box-shadow:0 16px 30px rgba(0,0,0,.3)}
.catImg{width:100%;height:140px;object-fit:cover;display:block;background:rgba(255,255,255,.06)}
.catP{padding:12px}
.catName{font-weight:900}
.catSmall{margin-top:6px;color:var(--muted);font-size:13px}
.cats .catCard:nth-child(1){animation-delay:0s}
.cats .catCard:nth-child(2){animation-delay:.08s}
.cats .catCard:nth-child(3){animation-delay:.16s}
.cats .catCard:nth-child(4){animation-delay:.24s}
.cats .catCard:nth-child(5){animation-delay:.32s}
.cats .catCard:nth-child(6){animation-delay:.4s}
@keyframes catIn{
  to{opacity:1; transform:translateY(0);}
}

.menuCard{
  position:relative;
  background: var(--card);
  border-radius:18px;
  overflow:hidden;
  box-shadow: var(--shadow);
  cursor:pointer;
  border:1px solid rgba(0,0,0,.06);
  min-height:190px;
}
.menuP{padding:14px 14px 16px 14px}
.menuTop{display:flex;gap:12px;align-items:flex-start}
.foodImg{
  width:92px;height:92px;border-radius:999px;
  object-fit:cover;flex:0 0 auto;
  box-shadow:0 10px 20px rgba(0,0,0,.25);
  border:4px solid rgba(255,255,255,.7);
  background:#f1f1f1;
}
.menuTitle{font-size:18px;font-weight:950;color:var(--brown);margin-top:4px}
.menuDesc{font-size:12px;line-height:1.3;color:rgba(0,0,0,.62);margin-top:6px;max-width:330px}
.badge{
  position:absolute; right:14px; bottom:14px;
  min-width:70px;height:38px;border-radius:14px;
  display:grid;place-items:center;
  padding:0 12px;
  background: var(--badge);
  color:#fff;
  font-weight:800;
  font-size:15px;
  box-shadow:0 10px 22px rgba(0,0,0,.25);
}

.sheetOverlay{
  position:fixed; inset:0;
  background: rgba(0,0,0,.55);
  z-index:50;
}
.sheet{
  position:fixed; left:0; right:0; bottom:0;
  background: #0d0d10;
  border-top:1px solid var(--line);
  border-radius:20px 20px 0 0;
  padding:12px 16px 18px 16px;
  z-index:60;
  box-shadow: 0 -18px 60px rgba(0,0,0,.55);
  max-height: 82vh;
  overflow:auto;
}
.sheet.full{
  top:0;
  bottom:0;
  max-height:none;
  height:100vh;
  border-radius:0;
}
.sheetHandle{
  width:48px;height:5px;border-radius:999px;
  background: rgba(255,255,255,.22);
  margin:6px auto 10px auto;
}
.sheetHeader{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:6px 2px 12px 2px;
}
.sheetTitle{font-weight:950;font-size:18px}
.sheetSub{color:var(--muted);font-size:13px;margin-top:2px}
.btnGhost{
  border:1px solid var(--line);
  background: rgba(255,255,255,.06);
  color:white;
  padding:10px 12px;
  border-radius:12px;
  cursor:pointer;
}
.hidden{display:none}
.modal.hidden,
.sheet.hidden,
.sheetOverlay.hidden{
  display:none !important;
}

.modal{position:fixed;inset:0;background:rgba(0,0,0,.65);display:grid;place-items:center;padding:16px;z-index:80}
.modalCard{max-width:520px;width:100%;background:#101013;border:1px solid rgba(255,255,255,.12);border-radius:18px;overflow:hidden}
.modalTop{display:flex;align-items:center;justify-content:space-between;padding:12px 14px}
.mTitle{font-weight:950;font-size:16px}
.x{background:transparent;border:none;color:#fff;font-size:18px;cursor:pointer;opacity:.85}
.mImg{width:100%;height:220px;object-fit:cover;display:block}
.mDesc{padding:12px 14px;opacity:.85;line-height:1.35}
.mPrice{padding:0 14px 14px 14px;font-weight:950;font-size:18px}
