:root{
  --red:#9A001D; --red-bright:#AD0023; --red-dark:#870017; --red-light:#C71C42;
  --cream:#FDF7C7; --cream-2:#EDE6B0; --pink:#F9D0C8; --black:#000;
  --radius:22px;
  --display:"Modak","Impact","Arial Black",sans-serif;
  --body:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;font-family:var(--body);color:var(--red);background:var(--cream);line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:.98;margin:0}
h1{font-size:clamp(2.6rem,7vw,5.4rem);color:var(--cream)}
h2{font-size:clamp(2.6rem,6vw,4.4rem)}
h3{font-size:1.8rem;margin:2.4rem 0 1rem}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.wrap--narrow{max-width:760px}
.sub{margin:.6rem 0 2rem;font-weight:500}

/* nav */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:20px;padding:10px 20px;background:var(--red);color:var(--cream)}
.nav__logo img{height:46px;width:auto}
.nav__links{display:flex;gap:22px;margin-left:auto;font-weight:600;font-size:.95rem}
.nav__links a{text-decoration:none;opacity:.92}
.nav__links a:hover{opacity:1;text-decoration:underline}
.count{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:99px;background:var(--red);color:var(--cream);font-size:.75rem;margin-left:6px;padding:0 6px}

/* buttons */
.btn{display:inline-block;font:600 1rem var(--body);border:2px solid var(--cream);border-radius:99px;padding:.7rem 1.4rem;text-decoration:none;cursor:pointer;transition:transform .12s ease,background .12s}
.btn:hover{transform:translateY(-2px) rotate(-1deg)}
.btn--cream{background:var(--cream);color:var(--red)}
.btn--ghost{background:transparent;color:var(--cream)}
.btn--red{background:var(--red);color:var(--cream);border-color:var(--red)}
.btn--big{width:100%;font-size:1.15rem;padding:1rem}
.btn[disabled]{opacity:.6;cursor:wait;transform:none}

/* hero */
.hero{background:var(--red);color:var(--cream);display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;padding:56px max(20px,calc((100vw - 1160px)/2)) 72px}
.eyebrow{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;margin:0 0 14px}
.lead{font-size:1.15rem;max-width:34em;margin:20px 0 28px}
.hero__btns{display:flex;gap:12px;flex-wrap:wrap}
.hero__note{margin-top:16px;font-size:.9rem;opacity:.85}
.hero__img{position:relative}
.hero__img img{border-radius:var(--radius);transform:rotate(2deg);box-shadow:0 18px 0 var(--red-dark)}
.sticker{position:absolute;left:-14px;bottom:-22px;background:var(--cream);color:var(--red);font-family:var(--display);font-size:1.7rem;line-height:.95;padding:16px 20px;border-radius:50%;transform:rotate(-10deg);text-align:center;aspect-ratio:1;display:grid;place-items:center;width:132px}

/* marquee strip */
.strip{background:var(--black);color:var(--cream);font-family:var(--display);font-size:2rem;white-space:nowrap;overflow:hidden;padding:8px 0;display:flex;gap:28px;justify-content:center}
.strip span,.strip i{flex:none}
.strip i{font-style:normal;color:var(--red-light)}

/* sections */
.section{padding:72px 0}
.section--pink{background:var(--pink)}
.section--red{background:var(--red);color:var(--cream)}

/* cards */
.grid{display:grid;gap:22px}
.grid--burgers{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.grid--small{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.card{background:#fff8d6;border:3px solid var(--red);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:6px 6px 0 var(--red)}
.section--pink .card{background:var(--cream)}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#fff}
.grid--small .card img{aspect-ratio:1;object-fit:contain;background:#fff}
.card__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.card h4{font-family:var(--display);font-weight:400;font-size:1.55rem;line-height:1;margin:0}
.grid--small .card h4{font-size:1.2rem}
.card p{margin:0;font-size:.88rem;color:#6c0016}
.card__foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;flex-wrap:wrap}
.price{font-weight:700}
.sel{font:500 .85rem var(--body);color:var(--red);background:var(--cream);border:2px solid var(--red);border-radius:12px;padding:6px 8px;width:100%}
.qty{display:inline-flex;align-items:center;border:2px solid var(--red);border-radius:99px;overflow:hidden;background:var(--cream)}
.qty button{all:unset;cursor:pointer;width:34px;height:32px;text-align:center;font-weight:700;font-size:1.2rem;line-height:32px}
.qty button:hover{background:var(--red);color:var(--cream)}
.qty span{min-width:26px;text-align:center;font-weight:700}
.add{font:600 .9rem var(--body);background:var(--red);color:var(--cream);border:0;border-radius:99px;padding:8px 16px;cursor:pointer}
.add:hover{background:var(--red-bright)}

/* cart */
.cart{background:var(--cream);color:var(--red);border-radius:var(--radius);padding:18px 20px;margin-bottom:26px}
.cart__empty{margin:0;font-weight:500}
.cart__list{list-style:none;margin:0;padding:0}
.cart__list li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:2px dashed #e3b9b0}
.cart__list li:last-child{border:0}
.cart__name{font-weight:600}
.cart__name small{display:block;font-weight:400;opacity:.8}
.cart__total{display:flex;justify-content:space-between;font-size:1.3rem;border-top:3px solid var(--red);margin-top:8px;padding-top:12px}

/* form */
form{display:grid;gap:18px}
label{display:grid;gap:6px;font-weight:600;font-size:.95rem}
input,textarea{font:500 1rem var(--body);color:var(--red);background:var(--cream);border:3px solid var(--cream);border-radius:14px;padding:12px 14px;width:100%}
input:focus,textarea:focus{outline:3px solid var(--black);outline-offset:2px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.mode{border:0;padding:0;margin:0;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.mode legend{font-weight:600;font-size:.95rem;margin-bottom:8px;padding:0;float:left;width:100%}
.pill{display:block}
.pill input{position:absolute;opacity:0;width:1px;height:1px}
.pill span{display:inline-block;padding:.6rem 1.4rem;border:3px solid var(--cream);border-radius:99px;cursor:pointer;font-weight:600}
.pill input:checked+span{background:var(--cream);color:var(--red)}
.pill input:focus-visible+span{outline:3px solid #fff;outline-offset:2px}
.consent{grid-template-columns:auto 1fr;align-items:start;gap:10px;font-weight:400;font-size:.88rem}
.consent input{width:20px;height:20px;margin-top:3px;accent-color:var(--cream)}
.hp{position:absolute;left:-9999px}
.form-msg{margin:0;min-height:1.5em;font-weight:600}
.form-msg.err{background:var(--cream);color:var(--red);padding:10px 14px;border-radius:12px}
.form-msg.ok{background:var(--cream);color:var(--red);padding:14px;border-radius:12px;font-size:1.05rem}

/* contact / footer */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}
.contact p{margin:.4rem 0}
.contact__links{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.footer{background:var(--black);color:var(--cream);text-align:center;padding:40px 20px 90px}
.footer__logo{height:90px;margin:0 auto 12px;width:auto}
.footer__small{opacity:.7;font-size:.85rem}

/* floating cart (mobile) */
.floatcart{position:fixed;left:14px;right:14px;bottom:14px;z-index:60;background:var(--black);color:var(--cream);text-align:center;font-weight:700;padding:14px;border-radius:99px;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.35)}

@media (max-width:820px){
  .hero{grid-template-columns:1fr;padding-top:36px}
  .hero__img{order:-1;margin:0 8px}
  .nav__links{display:none}
  .nav__cta{margin-left:auto}
  .field-row,.contact{grid-template-columns:1fr}
  .contact__links{justify-content:flex-start}
  .section{padding:54px 0}
}
@media (min-width:821px){.floatcart{display:none}}

[hidden]{display:none!important}
.grid--small .card img{object-fit:cover}
@media (max-width:820px){.grid--small{grid-template-columns:repeat(2,1fr);gap:14px}.grid--small .card h4{font-size:1.05rem}.grid--small .add{padding:7px 12px}.grid--small .price{font-size:.8rem}}

/* product list rows (burgers, combos) */
.list{display:grid;gap:28px}
.row{background:var(--red);color:var(--cream);border-radius:var(--radius);overflow:hidden;box-shadow:6px 6px 0 var(--red-dark)}
.section--pink .row{box-shadow:6px 6px 0 var(--red-dark)}
.row img{width:100%;aspect-ratio:5/2;object-fit:cover;object-position:50% 62%;background:#fff}
.row__bar{display:flex;gap:18px 28px;align-items:center;justify-content:space-between;padding:18px 26px 22px;flex-wrap:wrap}
.row__txt{flex:1 1 320px;min-width:0}
.row h4{font-family:var(--display);font-weight:400;font-size:clamp(2rem,4.2vw,2.9rem);line-height:1;margin:0}
.row p{margin:6px 0 0;font-size:.95rem;opacity:.92;max-width:46em}
.row .sel{margin-top:10px;max-width:280px}
.row label{color:var(--cream)}
.row__buy{display:flex;align-items:center;gap:18px}
.row .price{font-size:1.5rem}
.row .add{background:var(--cream);color:var(--red);font-size:1rem;padding:10px 22px}
.row .add:hover{background:#fff}
.ph{aspect-ratio:1;display:grid;place-items:center;background:var(--red);color:var(--cream);padding:14px;text-align:center;font-family:var(--display);font-size:1.7rem;line-height:1}
@media (max-width:820px){.row img{aspect-ratio:3/2}.row__bar{padding:16px 18px 20px}.row__buy{width:100%;justify-content:space-between}}

.hero__img img{background:#F9D1C8;border-radius:var(--radius);box-shadow:0 18px 0 var(--red-dark);transform:rotate(-2deg);max-width:520px;margin:0 auto}
.opts{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px}
.opts label{font-size:.8rem;font-weight:500;flex:1 1 200px;max-width:280px}
.opts .sel{margin-top:4px;max-width:none}
#comboGrid .row img{object-position:50% 88%}
.hero__img img{max-width:min(520px,100%)}

/* smaller product images: side-by-side rows on desktop, shorter banner on mobile */
.row img,#comboGrid .row img{object-position:50% 68%}
@media (min-width:821px){
  .row{display:grid;grid-template-columns:minmax(260px,34%) 1fr;align-items:stretch}
  .row img{aspect-ratio:auto;height:100%;min-height:230px}
  .row__bar{flex-direction:column;align-items:flex-start;justify-content:center;padding:22px 30px}
  .row__txt{flex:0 0 auto}
  .row__buy{margin-top:6px}
  #comboGrid .row img{object-position:50% 80%}
}
@media (max-width:820px){.row img{aspect-ratio:16/9}}

#sides h2+.grid{margin-top:1.2rem}
#sides .grid+h2{margin-top:3.2rem}
.row p.tag{font-weight:700;font-size:1.05rem;opacity:1;margin:8px 0 2px}

/* ordering via WinRest link */
a.add{display:inline-block;text-decoration:none}
.row .note{font-size:.9rem;opacity:.85;margin-top:6px}
.ordercta{text-align:center}
.ordercta .btn--big{width:auto;min-width:260px;margin-top:8px}
.ordercta__soon{margin-top:14px;font-weight:600}

/* centred hero with big logo */
.hero--center{display:block;text-align:center;padding-top:44px;padding-bottom:64px}
.hero__logo{display:block;width:min(620px,86%);height:auto;margin:0 auto 28px}
.hero--center .hero__text{max-width:760px;margin:0 auto}
.hero--center .hero__btns{justify-content:center}
@media (min-width:821px){.nav__logo{display:none}.nav__links{margin-left:0;flex:1;justify-content:center}.nav{padding:12px 20px}}
@media (max-width:820px){.hero--center{padding-top:28px}}

/* centred hero text */
.hero--center .eyebrow,.hero--center h1,.hero--center .lead,.hero--center .hero__note{text-align:center}
.hero--center .lead{margin-left:auto;margin-right:auto}
.hero--center .hero__logo{position:relative;left:0}
/* banner repeats across the full width */
.strip{justify-content:center}
/* location */
.contact__label{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;margin-top:1rem}
.contact__addr{font-size:1.3rem;font-weight:600}
.contact__info .contact__links{justify-content:flex-start;margin-top:18px}
.contact__map iframe{width:100%;height:340px;border:0;border-radius:var(--radius);box-shadow:0 10px 0 var(--red-dark)}

/* language switch */
.lang{display:flex;border:2px solid var(--cream);border-radius:99px;overflow:hidden;margin-left:auto;flex:none}
.lang button{font:600 .85rem var(--body);background:transparent;color:var(--cream);border:0;padding:6px 12px;cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--cream);color:var(--red)}
.nav__links{margin-left:0}
.lang+.nav__cta{margin-left:0}
@media (min-width:821px){.nav__links{margin-left:auto}.lang{margin-left:0}}
@media (max-width:820px){.nav__cta{margin-left:0}}
