:root{
  --primary:#ef233c;
  --primary-dark:#be123c;
  --orange:#f97316;
  --yellow:#f59e0b;
  --dark:#111827;
  --text:#111827;
  --muted:#64748b;
  --soft:#fff7ed;
  --soft-red:#fff1f2;
  --border:#e5e7eb;
  --green:#16a34a;
  --shadow:0 22px 60px rgba(15,23,42,.10);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;background:#fff8ef;color:var(--text)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font-family:inherit}

/* HEADER SUPPORT: old + premium header classes */
.top-nav,.premium-nav{
  position:sticky;top:0;z-index:999;
  height:82px;padding:0 6%;
  display:flex;align-items:center;gap:18px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(22px);
  border-bottom:1px solid rgba(226,232,240,.9);
  box-shadow:0 12px 35px rgba(15,23,42,.08);
}
.brand,.premium-brand{font-size:30px;font-weight:900;letter-spacing:-1px;color:#111827;white-space:nowrap}
.brand span,.premium-brand span{color:var(--primary)}
.premium-brand small{font-size:9px;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;padding:3px 7px;border-radius:20px;margin-left:4px;vertical-align:top}
.nav-search,.premium-search{flex:1;max-width:620px;height:52px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #eef2f7;border-radius:18px;padding:0 14px;box-shadow:0 12px 32px rgba(15,23,42,.06)}
.nav-search input,.premium-search input{flex:1;border:0;outline:0;background:transparent;font-size:14px}
.nav-search button,.premium-search button{border:0;width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;cursor:pointer}
.nav-actions,.premium-actions{display:flex;align-items:center;gap:10px;font-weight:700}
.nav-actions a,.premium-actions a{color:#334155;padding:11px 13px;border-radius:15px;transition:.25s}
.nav-actions a:hover,.premium-actions a:hover{background:var(--soft-red);color:var(--primary)}
.cart-link,.premium-cart{background:var(--dark)!important;color:#fff!important}
.menu-btn,.premium-menu-btn{display:none;border:0;background:var(--dark);color:#fff;width:46px;height:46px;border-radius:15px;cursor:pointer}
.mobile-menu,.premium-mobile-menu{display:none}

/* HERO */
.fk-hero{
  position:relative;
  min-height:calc(100vh - 82px);
  padding:40px 7%;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
  align-items:center;
  gap:46px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(245,158,11,.38), transparent 32%),
    radial-gradient(circle at 88% 18%, rgba(239,35,60,.20), transparent 30%),
    linear-gradient(135deg,#fffaf3 0%,#fff4e5 48%,#fff1f2 100%);
}
.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(239,35,60,.12) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,transparent,black 16%,black 85%,transparent);opacity:.38}
.hero-glow{position:absolute;width:320px;height:320px;border-radius:50%;filter:blur(80px);opacity:.52;animation:glowMove 6s ease-in-out infinite alternate;pointer-events:none}
.glow-1{background:#f59e0b;top:-80px;left:-40px}.glow-2{background:#ef233c;right:-80px;bottom:-70px;animation-delay:1s}
@keyframes glowMove{from{transform:scale(1) translateY(0)}to{transform:scale(1.18) translateY(-22px)}}
.fk-hero-left,.fk-hero-right{position:relative;z-index:2}
.fk-hero-left{animation:fadeUp .8s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.premium-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:#fff;border:1px solid rgba(239,35,60,.14);color:var(--primary-dark);font-weight:900;box-shadow:0 14px 35px rgba(239,35,60,.12)}
.fk-hero h1{font-size:clamp(46px,6vw,82px);line-height:.98;margin:24px 0 18px;letter-spacing:-3px;color:#111827;max-width:780px}
.fk-hero h1 span{display:inline;background:linear-gradient(135deg,var(--primary),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.fk-hero p{font-size:18px;line-height:1.8;color:#4b5563;max-width:680px;margin:0 0 22px}
.location-box{margin:22px 0 14px}
.location-pill{border:1px solid rgba(239,35,60,.12);background:#fff;color:#111827;border-radius:18px;padding:13px 18px;display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:800;box-shadow:0 14px 35px rgba(15,23,42,.08);max-width:100%}
.location-pill i:first-child{color:var(--primary)}
.location-pill span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}
.smart-search{max-width:720px;background:#fff;border:1px solid #f1e7df;padding:10px;border-radius:22px;display:flex;align-items:center;gap:12px;box-shadow:0 25px 70px rgba(15,23,42,.11)}
.smart-search>i{color:var(--primary);margin-left:8px}
.smart-search input{flex:1;border:0;outline:0;font-size:16px;padding:14px 8px;background:transparent;min-width:0}
.btn,.smart-search button{border:0;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;padding:14px 24px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.25s;white-space:nowrap}
.btn:hover,.smart-search button:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(239,35,60,.25)}
.btn.dark{background:var(--dark)}
.quick-tags{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.quick-tags a,.chip{background:#fff;color:#475569;border:1px solid #f1e7df;padding:9px 15px;border-radius:999px;font-weight:800;box-shadow:0 10px 28px rgba(15,23,42,.06);transition:.25s}
.quick-tags a:hover{background:var(--dark);color:#fff;transform:translateY(-3px)}
.stats{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap}.stat{background:rgba(255,255,255,.78);border:1px solid #fff;border-radius:22px;padding:15px 20px;box-shadow:0 15px 38px rgba(15,23,42,.08);backdrop-filter:blur(12px)}.stat b{display:block;font-size:25px}.stat small{color:var(--muted);font-weight:700}

/* Fixed hero visual: no overflow card issue */
.fk-hero-right{margin-top:-160px; min-height:520px;display:flex;align-items:center;justify-content:center;overflow:visible}.hero-food-wrap{position:relative;width:min(520px,100%);height:520px;margin:auto}.main-food-card{position:absolute;left:50%;top:50%;width:500px;height:500px;transform:translate(-50%,-50%);border-radius:50%;padding:14px;background:linear-gradient(135deg,#ffb000,#ff5a00);box-shadow:0 35px 85px rgba(64,24,0,.23);animation:mainFloat 4.5s ease-in-out infinite;overflow:hidden}.main-food-card img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:7px solid rgba(255,255,255,.55)}
@keyframes mainFloat{0%,100%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-14px)}}
.food-info-card{position:absolute;left:34px;bottom:70px;background:#fff;color:#111827;padding:16px 22px;border-radius:20px;box-shadow:0 20px 48px rgba(15,23,42,.16);z-index:4}.food-info-card span{display:block;color:var(--primary);font-weight:900;margin-top:4px}.mini-food{position:absolute;width:125px;height:125px;border-radius:50%;padding:9px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.16);z-index:3;animation:miniFloat 4s ease-in-out infinite;overflow:hidden}.mini-food img{width:100%;height:100%;object-fit:cover;border-radius:50%}.mini-1{left:-4px;top:2px}.mini-2{right:26px;bottom:60px;animation-delay:.8s}@keyframes miniFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}.floating-card{position:absolute;z-index:5;background:#fff;color:#111827;border-radius:20px;padding:14px 18px;font-weight:900;box-shadow:0 20px 48px rgba(15,23,42,.14);animation:cardFloat 3.5s ease-in-out infinite}.fc1{right:32px;top:58px}.fc2{right:0;top:195px;animation-delay:.6s}@keyframes cardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* SECTIONS */
.section{padding:72px 7%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.section-kicker{display:inline-block;color:var(--primary);font-weight:900;margin-bottom:8px}.section h2{font-size:clamp(30px,3vw,42px);line-height:1.12;margin:0;letter-spacing:-1px}.section p{color:var(--muted);line-height:1.7}.category-section{background:#fff}.category-slider,.grid,.event-grid{display:grid;gap:22px}.category-slider{grid-template-columns:repeat(4,1fr)}.grid{grid-template-columns:repeat(4,1fr)}.premium-cat,.premium-res,.event-card{background:#fff;border:1px solid #f1e7df;border-radius:28px;text-decoration:none;color:#111827;box-shadow:var(--shadow);transition:.28s;overflow:hidden}.premium-cat{padding:28px;text-align:center}.premium-cat:hover,.premium-res:hover,.event-card:hover{transform:translateY(-9px);box-shadow:0 30px 70px rgba(15,23,42,.14)}.cat-icon,.event-icon{width:68px;height:68px;border-radius:23px;margin:0 auto 18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;font-size:28px}.premium-cat h3{margin:0 0 6px}.premium-cat p{margin:0;font-size:14px}
.offer-section{background:#fff8ef}.offer-card,.ai-banner,.booking-preview-card{position:relative;overflow:hidden;border-radius:36px;padding:44px;background:linear-gradient(135deg,#111827,#3b0a12 55%,#7c2d12);color:#fff;box-shadow:0 30px 80px rgba(15,23,42,.18)}.offer-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.offer-card:after,.ai-banner:after,.booking-preview-card:after{content:"";position:absolute;width:260px;height:260px;right:-90px;top:-100px;border-radius:50%;background:rgba(249,115,22,.35);filter:blur(10px);animation:glowMove 6s infinite alternate}.offer-card h2,.ai-banner h2,.booking-preview-card h2{font-size:clamp(30px,4vw,46px);margin:18px 0 10px}.offer-card p,.ai-banner p{color:#ffe4d3}.restaurant-section{background:#fff}.chips{display:flex;gap:10px;flex-wrap:wrap}.premium-res{padding:0}.res-img{height:210px;position:relative;overflow:hidden}.res-img img{width:100%;height:100%;object-fit:cover;transition:.4s}.premium-res:hover .res-img img{transform:scale(1.08)}.offer-strip{position:absolute;left:14px;bottom:14px;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;padding:8px 13px;border-radius:14px;font-weight:900}.heart-btn{position:absolute;right:14px;top:14px;border:0;background:#fff;color:var(--primary);width:42px;height:42px;border-radius:50%;cursor:pointer;box-shadow:0 10px 25px rgba(15,23,42,.14)}.res-content{padding:20px}.res-content h3{margin:0 0 12px;font-size:21px}.res-meta{display:flex;justify-content:space-between;align-items:center;gap:10px}.rating{background:var(--green);color:#fff;font-weight:900;padding:5px 9px;border-radius:10px}.muted{color:var(--muted);font-size:14px}
.ai-section{background:#fff8ef}.ai-banner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.ai-search{position:relative;z-index:2;max-width:680px;background:#fff;padding:10px;border-radius:20px;display:flex;gap:10px;margin-top:20px}.ai-search input{flex:1;border:0;outline:0;padding:14px;background:transparent;min-width:0}.ai-search button{border:0;border-radius:15px;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;padding:12px 18px;cursor:pointer;font-weight:900}.ai-robot{position:relative;z-index:2;width:170px;height:170px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);font-size:72px;color:#ffd2c2;animation:robotPulse 2.8s ease-in-out infinite alternate}@keyframes robotPulse{from{transform:scale(1)}to{transform:scale(1.08) rotate(4deg)}}
.event-experience-section{background:#fff}.event-grid{grid-template-columns:repeat(3,1fr)}.event-card{min-height:255px;padding:30px;color:#fff;position:relative}.event-card:before{content:"";position:absolute;inset:-80px;background:radial-gradient(circle at top right,rgba(255,255,255,.45),transparent 34%);animation:eventGlow 5s infinite alternate}.event-card>*{position:relative}.event-card.marriage{background:linear-gradient(135deg,#831843,#e11d48,#f97316)}.event-card.birthday{background:linear-gradient(135deg,#4c1d95,#7c3aed,#06b6d4)}.event-card.corporate{background:linear-gradient(135deg,#064e3b,#10b981,#84cc16)}.event-card .event-icon{margin:0 0 22px;background:rgba(255,255,255,.18);backdrop-filter:blur(8px)}.event-card h3{font-size:28px;margin:0 0 10px}.event-card p{color:rgba(255,255,255,.88);margin:0}.event-card span{position:absolute;left:30px;bottom:26px;font-weight:900}@keyframes eventGlow{from{transform:translate(-20px,-15px)}to{transform:translate(25px,20px)}}
.booking-preview-section{background:#fff8ef}.booking-preview-card{display:grid;grid-template-columns:1fr .9fr;gap:28px;align-items:center;background:linear-gradient(135deg,#fff,#fff7ed,#fff1f2);color:#111827;border:1px solid #ffe4e6}.booking-preview-card p{color:#64748b}.venue-points{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.venue-points span{background:#fff;border:1px solid #ffe4e6;border-radius:999px;padding:11px 14px;font-weight:900;color:#9f1239}.mini-booking-form{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-booking-form input,.mini-booking-form select{border:0;border-radius:16px;padding:15px;background:#fff;box-shadow:0 10px 25px rgba(15,23,42,.08);outline:0}.mini-booking-form button{grid-column:1/-1;border:0;border-radius:18px;padding:16px;background:linear-gradient(135deg,var(--primary),var(--orange));color:#fff;font-weight:900;cursor:pointer}

/* OTHER PAGES BASIC SUPPORT */
.footer{background:#0f172a;color:#cbd5e1;padding:50px 6%;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.footer .brand{color:#fff}.footer a{display:block;margin:8px 0;color:#cbd5e1}.location-modal,.premium-location-modal{display:none;position:fixed;inset:0;z-index:2000;background:rgba(15,23,42,.65);backdrop-filter:blur(10px);align-items:center;justify-content:center}.location-modal.active,.premium-location-modal.active{display:flex}.location-card,.premium-location-card{background:#fff;border-radius:30px;padding:32px;width:min(560px,94%);position:relative;box-shadow:0 30px 90px rgba(0,0,0,.28)}.location-card input,.premium-location-card input,.premium-location-card select{width:100%;padding:15px;border:1px solid var(--border);border-radius:16px;margin:8px 0;outline:0}.close,.close-location{position:absolute;right:20px;top:18px;border:0;background:#f1f5f9;border-radius:50%;width:40px;height:40px;cursor:pointer}.admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#111827;color:#fff;padding:25px}.sidebar a{display:block;padding:13px 15px;border-radius:14px;margin:5px 0;color:#cbd5e1}.dashboard{padding:35px;background:#f8fafc}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.dash-card{border:1px solid var(--border);background:#fff;border-radius:28px;padding:20px;box-shadow:var(--shadow)}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:20px;overflow:hidden}.table th,.table td{padding:15px;border-bottom:1px solid var(--border);text-align:left}.status{padding:6px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:700}

/* RESPONSIVE */
@media(max-width:1100px){.grid,.category-slider{grid-template-columns:repeat(2,1fr)}.fk-hero{grid-template-columns:1fr;min-height:auto}.fk-hero-right{min-height:440px}.hero-food-wrap{height:430px}.main-food-card{width:320px;height:320px}.mini-food{width:105px;height:105px}.section-head{align-items:flex-start}}
@media(max-width:850px){.top-nav,.premium-nav{padding:0 4%;height:74px}.nav-search,.premium-search,.nav-actions,.premium-actions{display:none}.menu-btn,.premium-menu-btn{display:block;margin-left:auto}.mobile-menu.show,.premium-mobile-menu.active{display:grid;position:fixed;top:84px;right:5%;width:260px;background:#fff;border-radius:24px;padding:16px;z-index:998;gap:8px;box-shadow:0 30px 80px rgba(15,23,42,.22)}.mobile-menu a,.premium-mobile-menu a{padding:12px;border-radius:14px;color:#334155;font-weight:700}.event-grid,.booking-preview-card,.ai-banner{grid-template-columns:1fr}.ai-robot{margin:auto}.offer-card{flex-direction:column;align-items:flex-start}.footer{grid-template-columns:1fr}.dash-grid{grid-template-columns:1fr 1fr}.admin-layout{grid-template-columns:1fr}}
@media(max-width:600px){.brand,.premium-brand{font-size:24px}.fk-hero{padding:35px 16px 44px;text-align:center}.fk-hero h1{font-size:40px;letter-spacing:-1.5px}.fk-hero p{font-size:16px}.location-pill{width:100%;justify-content:center}.location-pill span{max-width:240px}.smart-search{flex-direction:column;align-items:stretch}.smart-search>i{display:none}.smart-search input{text-align:center}.smart-search button,.btn{width:100%}.quick-tags,.stats{justify-content:center}.stat{flex:1;min-width:125px}.fk-hero-right{min-height:340px}.hero-food-wrap{height:330px}.main-food-card{width:245px;height:245px}.mini-food{width:78px;height:78px}.mini-1{left:8px;top:70px}.mini-2{right:10px;bottom:30px}.food-info-card{left:8px;bottom:42px;padding:11px 14px;font-size:13px}.floating-card{padding:10px 12px;font-size:12px}.fc1{right:8px;top:40px}.fc2{right:0;top:145px}.section{padding:52px 16px}.section-head{flex-direction:column;text-align:center;align-items:center}.category-slider,.grid,.event-grid,.mini-booking-form,.dash-grid{grid-template-columns:1fr}.offer-card,.ai-banner,.booking-preview-card{padding:26px;border-radius:26px;text-align:center}.ai-search{flex-direction:column}.ai-search button{width:100%}.event-card{text-align:left;min-height:235px}.venue-points{justify-content:center}.footer{text-align:center}}


/* HEADER FIX */
.premium-nav{
  overflow:visible;
}

.premium-search{
  min-width:320px;
  max-width:520px;
}

.search-suggestions{
  display:none !important;
}

.search-suggestions.active{
  display:grid !important;
}

.premium-actions{
  white-space:nowrap;
  flex-shrink:0;
}

.premium-actions a{
  min-width:auto;
}

@media(max-width:1150px){
  .premium-actions a span{
    display:none;
  }

  .premium-search{
    max-width:420px;
  }
}

@media(max-width:900px){
  .premium-search,
  .premium-actions{
    display:none;
  }

  .premium-menu-btn{
    display:block;
    margin-left:auto;
  }
}
/* =========================================================
   FINAL OVERFLOW + HEADER REBUILD FIX
   Stops unwanted horizontal scrolling and keeps header inside viewport
   ========================================================= */
html, body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
body{
  position:relative;
}
.top-nav,
.premium-nav{
  width:100%;
  max-width:100vw;
  min-width:0;
  padding-left:clamp(14px,3vw,48px) !important;
  padding-right:clamp(14px,3vw,48px) !important;
  gap:clamp(8px,1vw,16px) !important;
  overflow:visible;
}
.brand,
.premium-brand{
  flex:0 0 auto;
}
.location-pill.premium-location,
.premium-location{
  flex:0 1 360px;
  min-width:210px;
  max-width:360px;
  width:auto;
  overflow:hidden;
}
.premium-location span,
.location-pill.premium-location span{
  min-width:0;
  max-width:100% !important;
  display:flex;
  flex-direction:column;
  line-height:1.12;
  white-space:normal !important;
  overflow:hidden;
}
.premium-location b,
.premium-location small{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
}
.nav-search.premium-search,
.premium-search{
  flex:1 1 330px;
  min-width:240px !important;
  max-width:780px !important;
  position:relative;
}
.premium-search input{
  min-width:0;
}
.search-suggestions{
  position:absolute;
  top:62px;
  left:0;
  right:0;
  display:none !important;
  z-index:1200;
}
.search-suggestions.active{
  display:grid !important;
}
.nav-actions.premium-actions,
.premium-actions{
  flex:0 1 auto;
  min-width:0;
  gap:6px !important;
  white-space:nowrap;
}
.premium-actions a{
  padding:10px 9px !important;
  min-width:0;
}
.premium-actions a span{
  white-space:nowrap;
}
.event-nav{
  background:transparent !important;
  border:0 !important;
}
.cart-link.premium-cart,
.premium-cart{
  flex:0 0 auto;
  min-width:58px;
  justify-content:center;
}
.fk-hero,
.section,
.footer,
.restaurant-section,
.category-section,
.offer-section,
.ai-section,
.event-experience-section,
.booking-preview-section{
  max-width:100vw;
  overflow-x:hidden;
}
.fk-hero > *,
.section > *,
.hero-food-wrap,
.fk-hero-left,
.fk-hero-right{
  min-width:0;
}
.hero-food-wrap{
  max-width:min(520px,100%);
}
.main-food-card,
.mini-food,
.floating-card,
.food-info-card{
  max-width:100%;
}
@media(max-width:1320px){
  .premium-actions a span,
  .offer-nav em{
    display:none !important;
  }
  .premium-actions a{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    padding:0 !important;
  }
  .premium-search{
    max-width:430px !important;
  }
  .premium-location{
    max-width:310px;
  }
}
@media(max-width:980px){
  .premium-search,
  .premium-actions{
    display:none !important;
  }
  .premium-menu-btn,
  .menu-btn{
    display:block !important;
    margin-left:auto;
  }
  .premium-location{
    flex:1 1 auto;
    max-width:360px;
  }
}
@media(max-width:600px){
  .premium-nav{
    height:72px;
  }
  .premium-brand small{
    display:none;
  }
  .premium-location{
    min-width:0;
    max-width:180px;
    padding:9px 10px !important;
  }
  .premium-location b{
    display:none;
  }
  .premium-location small{
    max-width:120px;
  }
  .fk-hero{
    width:100%;
    padding-left:16px !important;
    padding-right:16px !important;
  }
  .fk-hero h1{
    max-width:100%;
    overflow-wrap:break-word;
  }
}









/* MIND-BLOWING PREMIUM HEADER FIX */
.nav-backdrop{height:96px}

.premium-nav{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:96px;
  padding:0 5%;
  display:flex;
  align-items:center;
  gap:18px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(255,255,255,.65);
  box-shadow:0 20px 70px rgba(15,23,42,.10);
  z-index:9999;
  overflow:visible;
}

.premium-brand{
  font-size:30px;
  font-weight:900;
  color:#111827;
  white-space:nowrap;
}

.premium-brand span{
  color:#f11708;
}

.premium-brand small{
  background:linear-gradient(135deg,#ef0505,#ef0505);
  color:#fff;
  padding:3px 8px;
  border-radius:20px;
  font-size:9px;
}

.premium-location{
  max-width:360px;
  min-width:250px;
  height:58px;
  padding:0 18px;
  border-radius:22px;
  background:#fff;
  border:1px solid #ffe0dc;
  box-shadow:0 16px 45px rgba(255,61,46,.10);
}

.premium-location small{
  max-width:230px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.premium-search{
  flex:1;
  max-width:520px;
  min-width:260px;
  height:58px;
  border-radius:24px;
  background:#fff;
  border:1px solid #eef2f7;
  box-shadow:0 18px 50px rgba(15,23,42,.08);
}

.premium-search input{
  font-size:15px;
}

.premium-search button{
  width:52px;
  height:52px;
  border-radius:20px;
  background:linear-gradient(135deg,#ec190a,#ec190a);
  color:#fff;
  box-shadow:0 12px 30px rgba(255,82,32,.35);
}

.search-suggestions{
  display:none !important;
  position:absolute;
  top:70px;
  left:0;
  right:0;
  background:#fff;
  border-radius:24px;
  padding:14px;
  box-shadow:0 30px 90px rgba(15,23,42,.18);
  z-index:99999;
}

.search-suggestions.active{
  display:grid !important;
  gap:8px;
}

.search-suggestions a{
  padding:13px 15px;
  border-radius:16px;
  font-weight:700;
}

.search-suggestions a:hover{
  background:#fff3ed;
  color:#ff3d2e;
}

.premium-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
  white-space:nowrap;
}

.premium-actions a{
  padding:11px 13px;
  border-radius:18px;
  font-weight:900;
  color:#1f2937;
  transition:.25s;
}

.premium-actions a:hover{
  background:#fff3ed;
  color:#ff3d2e;
  transform:translateY(-2px);
}

.premium-cart{
  width:64px;
  height:64px;
  border-radius:24px !important;
  background:#111827 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
}

@media(max-width:1200px){
  .premium-location{min-width:220px;max-width:280px}
  .premium-actions a span{display:none}
  .premium-search{max-width:430px}
}

@media(max-width:900px){
  .premium-search,
  .premium-actions{
    display:none;
  }

  .premium-menu-btn{
    display:flex;
    margin-left:auto;
    align-items:center;
    justify-content:center;
  }

  .premium-location{
    min-width:190px;
    max-width:230px;
  }
}

@media(max-width:560px){
  .premium-nav{
    height:82px;
    padding:0 14px;
    gap:10px;
  }

  .nav-backdrop{height:82px}

  .premium-brand{
    font-size:23px;
  }

  .premium-brand small{
    display:none;
  }

  .premium-location{
    min-width:150px;
    max-width:170px;
    height:50px;
    padding:0 12px;
  }

  .premium-location b{
    font-size:11px;
  }

  .premium-location small{
    max-width:95px;
    font-size:11px;
  }
}

/* PREMIUM LOCATION MODAL */
.premium-location-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(15,23,42,.68);
  backdrop-filter:blur(16px);
  z-index:99999;
}

.premium-location-modal.active{
  display:flex;
}

.location-pro-card{
  position:relative;
  width:min(620px,96vw);
  max-height:92vh;
  overflow-y:auto;
  border-radius:34px;
  padding:32px;
  background:
    radial-gradient(circle at top left,rgba(255,107,0,.18),transparent 34%),
    linear-gradient(135deg,#ffffff,#fff7ed);
  box-shadow:0 35px 110px rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.7);
  animation:locationPop .3s ease;
}

@keyframes locationPop{
  from{
    opacity:0;
    transform:translateY(30px) scale(.96);
  }
  to{
    opacity:1;
    transform:none;
  }
}

.location-close{
  position:absolute;
  top:20px;
  right:20px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:#111827;
  color:#fff;
  cursor:pointer;
  display:grid;
  place-items:center;
}

.location-pro-head{
  display:flex;
  gap:16px;
  align-items:flex-start;
  margin-bottom:24px;
  padding-right:40px;
}

.location-pro-icon{
  width:62px;
  height:62px;
  flex:0 0 62px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-size:25px;
  box-shadow:0 16px 35px rgba(255,92,32,.35);
}

.location-pro-head span{
  color:#ff5a00;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.8px;
}

.location-pro-head h2{
  margin:4px 0 6px;
  font-size:30px;
  color:#111827;
}

.location-pro-head p{
  margin:0;
  color:#64748b;
  line-height:1.6;
}

.premium-current-btn{
  width:100%;
  border:0;
  border-radius:22px;
  padding:18px 20px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:14px;
  background:linear-gradient(135deg,#111827,#2b1b14);
  color:#fff;
  cursor:pointer;
  box-shadow:0 20px 45px rgba(15,23,42,.25);
}

.premium-current-btn i{
  width:44px;
  height:44px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.14);
  color:#ffb000;
}

.premium-current-btn span{
  text-align:left;
  font-weight:900;
  font-size:16px;
}

.premium-current-btn small{
  padding:8px 12px;
  border-radius:999px;
  background:#16a34a;
  color:#fff;
  font-weight:800;
}

.location-divider-pro{
  display:flex;
  align-items:center;
  gap:12px;
  margin:24px 0 18px;
  color:#94a3b8;
  font-size:12px;
  font-weight:900;
}

.location-divider-pro:before,
.location-divider-pro:after{
  content:"";
  flex:1;
  height:1px;
  background:#e5e7eb;
}

.location-grid-pro{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:12px;
}

.input-pro{
  position:relative;
}

.input-pro i{
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  color:#ff5a00;
  z-index:2;
}

.input-pro input,
.input-pro select{
  width:100%;
  height:58px;
  border:1px solid #eadfd5;
  border-radius:20px;
  outline:none;
  background:#fff;
  padding:0 16px 0 45px;
  font-family:inherit;
  font-size:15px;
  color:#111827;
  transition:.25s;
}

.input-pro input:focus,
.input-pro select:focus{
  border-color:#ff7a00;
  box-shadow:0 0 0 4px rgba(255,122,0,.12);
}

.input-pro.full{
  margin-top:12px;
}

.quick-location-pro{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:18px 0;
}

.quick-location-pro button{
  border:0;
  padding:11px 15px;
  border-radius:999px;
  background:#fff;
  color:#111827;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(15,23,42,.08);
  transition:.25s;
}

.quick-location-pro button:hover{
  background:#fff0e6;
  color:#ff5a00;
  transform:translateY(-3px);
}

.save-location-pro{
  width:100%;
  height:58px;
  border:0;
  border-radius:20px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-size:16px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 18px 45px rgba(255,92,32,.35);
  transition:.25s;
}

.save-location-pro:hover{
  transform:translateY(-3px);
}

.location-status-pro{
  margin:14px 0 0;
  color:#16a34a;
  font-weight:800;
  text-align:center;
}

@media(max-width:650px){
  .location-pro-card{
    padding:24px 18px;
    border-radius:26px;
  }

  .location-grid-pro{
    grid-template-columns:1fr;
  }

  .premium-current-btn{
    grid-template-columns:auto 1fr;
  }

  .premium-current-btn small{
    grid-column:1/-1;
    text-align:center;
  }

  .location-pro-head h2{
    font-size:24px;
  }
}
.premium-restaurant-hero{
  position:relative;
  padding:90px 7%;
  overflow:hidden;
  background:
    radial-gradient(circle at top left,rgba(255,176,0,.25),transparent 35%),
    linear-gradient(135deg,#111827,#3b1600);
  color:#fff;
}

.rest-bg-glow{
  position:absolute;
  width:280px;
  height:280px;
  border-radius:50%;
  filter:blur(80px);
  opacity:.55;
  animation:restGlow 5s infinite alternate;
}

.g1{background:#ffb000;left:5%;top:15%;}
.g2{background:#ff3d00;right:10%;bottom:5%;}

@keyframes restGlow{
  from{transform:scale(1);}
  to{transform:scale(1.2);}
}

.premium-rest-wrap{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:340px 1fr;
  align-items:center;
  gap:38px;
}

.premium-rest-img{
  position:relative;
  height:260px;
  border-radius:34px;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(0,0,0,.35);
}

.premium-rest-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.45s;
}

.premium-rest-img:hover img{
  transform:scale(1.12);
}

.rest-offer-badge{
  position:absolute;
  left:18px;
  top:18px;
  padding:10px 15px;
  border-radius:999px;
  background:linear-gradient(135deg,#ffb000,#ff5a00);
  color:#111;
  font-weight:900;
}

.rest-label{
  display:inline-block;
  padding:9px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);
  color:#ffc247;
  font-weight:900;
}

.premium-rest-info h1{
  font-size:54px;
  line-height:1;
  margin:18px 0 14px;
}

.premium-rest-info p{
  color:#ffd9ad;
  font-size:17px;
}

.rest-chip-row{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:24px;
}

.rest-chip-row span{
  padding:12px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  font-weight:800;
}

.rest-rating{
  background:#16a34a !important;
  color:#fff;
}

.premium-menu-section{
  padding:75px 7%;
  background:#fff8ef;
}

.premium-menu-head{
  margin-bottom:35px;
}

.premium-menu-head span{
  color:#ff5a00;
  font-weight:900;
}

.premium-menu-head h2{
  font-size:42px;
  margin:8px 0;
  color:#111827;
}

.premium-menu-head p{
  color:#64748b;
}

.premium-menu-list{
  display:grid;
  gap:22px;
}

.premium-menu-card{
  display:grid;
  grid-template-columns:1fr 210px;
  gap:25px;
  align-items:center;
  padding:24px;
  border-radius:30px;
  background:#fff;
  box-shadow:0 18px 50px rgba(15,23,42,.08);
  transition:.35s;
  overflow:hidden;
}

.premium-menu-card:hover{
  transform:translateY(-7px);
  box-shadow:0 28px 75px rgba(255,106,0,.16);
}

.veg-tag,
.nonveg-tag{
  display:inline-block;
  padding:7px 12px;
  border-radius:999px;
  font-size:13px;
  font-weight:900;
}

.veg-tag{
  background:#dcfce7;
  color:#166534;
}

.nonveg-tag{
  background:#fee2e2;
  color:#991b1b;
}

.menu-content h3{
  font-size:27px;
  margin:14px 0 8px;
  color:#111827;
}

.menu-desc{
  color:#64748b;
  line-height:1.7;
}

.menu-price{
  font-size:24px;
  font-weight:900;
  color:#ff5a00;
}

.premium-add-btn{
  border:0;
  padding:13px 20px;
  border-radius:16px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 35px rgba(255,92,32,.28);
  transition:.3s;
}

.premium-add-btn:hover{
  transform:translateY(-3px);
}

.menu-img-box{
  height:170px;
  border-radius:24px;
  overflow:hidden;
  position:relative;
}

.menu-img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.45s;
}

.premium-menu-card:hover .menu-img-box img{
  transform:scale(1.12) rotate(1deg);
}

@media(max-width:800px){
  .premium-rest-wrap,
  .premium-menu-card{
    grid-template-columns:1fr;
  }

  .premium-rest-info h1{
    font-size:38px;
  }

  .premium-menu-head h2{
    font-size:32px;
  }

  .premium-menu-card{
    padding:18px;
  }

  .menu-img-box{
    order:-1;
    height:220px;
  }
}



.info-rest-hero{
  position:relative;
  padding:90px 7%;
  background:linear-gradient(135deg,#111827,#3b1600);
  color:#fff;
  overflow:hidden;
}

.info-rest-bg{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 20% 20%,rgba(255,176,0,.25),transparent 35%);
}

.info-rest-wrap{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:360px 1fr;
  gap:40px;
  align-items:center;
}

.info-rest-image{
  position:relative;
  height:280px;
  border-radius:36px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,.35);
}

.info-rest-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.info-rest-image span{
  position:absolute;
  top:18px;
  left:18px;
  padding:10px 15px;
  border-radius:999px;
  background:linear-gradient(135deg,#ffb000,#ff5a00);
  color:#111;
  font-weight:900;
}

.info-label{
  display:inline-block;
  padding:9px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#ffc247;
  font-weight:900;
}

.info-rest-content h1{
  font-size:56px;
  margin:18px 0 12px;
}

.info-rest-content p{
  color:#ffd9ad;
}

.info-rest-chips{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}

.info-rest-chips span{
  padding:11px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  font-weight:800;
}

.info-rest-chips .green{
  background:#16a34a;
}

.info-section{
  padding:70px 7%;
  background:#fff8ef;
}

.info-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.info-card{
  padding:26px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 18px 45px rgba(15,23,42,.08);
}

.info-card i{
  font-size:28px;
  color:#ff5a00;
}

.info-title{
  text-align:center;
  max-width:720px;
  margin:0 auto 38px;
}

.info-title span{
  color:#ff5a00;
  font-weight:900;
}

.info-title h2{
  font-size:42px;
  margin:8px 0;
}

.info-title p{
  color:#64748b;
}

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:18px;
}

.gallery-card{
  position:relative;
  height:180px;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 16px 40px rgba(15,23,42,.1);
}

.gallery-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.4s;
}

.gallery-card:hover img{
  transform:scale(1.12);
}

.gallery-card span{
  position:absolute;
  left:12px;
  bottom:12px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(0,0,0,.55);
  color:#fff;
  font-size:12px;
  font-weight:800;
}

.menu-bg{
  background:#fff;
}

.premium-menu-list{
  display:grid;
  gap:22px;
}

.premium-menu-card{
  display:grid;
  grid-template-columns:1fr 210px;
  gap:25px;
  align-items:center;
  padding:24px;
  border-radius:30px;
  background:#fff;
  box-shadow:0 18px 50px rgba(15,23,42,.08);
}

.menu-img-box{
  height:170px;
  border-radius:24px;
  overflow:hidden;
}

.menu-img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.veg-tag,.nonveg-tag{
  padding:7px 12px;
  border-radius:999px;
  font-weight:900;
  font-size:13px;
}

.veg-tag{
  background:#dcfce7;
  color:#166534;
}

.nonveg-tag{
  background:#fee2e2;
  color:#991b1b;
}

.menu-price{
  font-size:24px;
  font-weight:900;
  color:#ff5a00;
}

.premium-add-btn{
  border:0;
  padding:13px 20px;
  border-radius:16px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
}

.review-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.review-card{
  padding:26px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 18px 45px rgba(15,23,42,.08);
}

.review-top{
  display:flex;
  gap:14px;
  align-items:center;
}

.avatar{
  width:52px;
  height:52px;
  border-radius:50%;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:900;
}

.review-top h3{
  margin:0;
}

.review-top span{
  color:#16a34a;
  font-weight:900;
}

.review-card p{
  color:#64748b;
  line-height:1.7;
}

@media(max-width:900px){
  .info-rest-wrap,
  .premium-menu-card{
    grid-template-columns:1fr;
  }

  .info-grid,
  .gallery-grid,
  .review-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .info-rest-content h1{
    font-size:36px;
  }

  .info-grid,
  .gallery-grid,
  .review-grid{
    grid-template-columns:1fr;
  }

  .info-section{
    padding:50px 18px;
  }
}

/* ===== KumaunMart Profile Dropdown + Header Login Fix ===== */
.profile-dropdown{position:relative;flex-shrink:0}.profile-trigger{border:0;background:#fff;border-radius:18px;padding:8px 12px;display:flex;align-items:center;gap:9px;cursor:pointer;box-shadow:0 12px 32px rgba(15,23,42,.08);font-family:inherit;font-weight:900;color:#111827}.profile-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ef233c,#ff9f00);color:#fff;font-weight:900}.profile-name{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-menu{position:absolute;top:58px;right:0;width:245px;background:#fff;border:1px solid #eef2f7;border-radius:24px;padding:12px;box-shadow:0 30px 90px rgba(15,23,42,.18);display:none;z-index:100000}.profile-menu.active{display:block;animation:profilePop .18s ease}.profile-menu-head{padding:14px;border-radius:18px;background:linear-gradient(135deg,#fff7ed,#fff1f2);margin-bottom:8px}.profile-menu-head b{display:block;color:#111827}.profile-menu-head small{display:block;color:#64748b;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-menu a{display:flex!important;align-items:center;gap:11px;padding:13px 14px;border-radius:16px;color:#334155!important;text-decoration:none;font-weight:800;transition:.22s}.profile-menu a:hover{background:#fff7ed;color:#ef233c!important;transform:translateX(3px)}.profile-menu .logout-link{color:#dc2626!important}.profile-menu .logout-link:hover{background:#fee2e2;color:#991b1b!important}@keyframes profilePop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:900px){.profile-dropdown{display:none}.profile-name{display:none}}



.address-hero{
  position:relative;
  padding:90px 7%;
  background:linear-gradient(135deg,#111827,#3b1600);
  color:#fff;
  overflow:hidden;
}

.addr-glow{
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  filter:blur(80px);
  opacity:.55;
  animation:addrGlow 5s infinite alternate;
}

.addr-glow.g1{
  background:#ffb000;
  left:8%;
  top:20%;
}

.addr-glow.g2{
  background:#ff3d00;
  right:8%;
  bottom:0;
}

@keyframes addrGlow{
  from{transform:scale(1);}
  to{transform:scale(1.2);}
}

.address-hero-content{
  position:relative;
  z-index:2;
  max-width:850px;
}

.addr-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 17px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#ffc247;
  font-weight:900;
}

.address-hero h1{
  font-size:58px;
  line-height:1.05;
  margin:22px 0 14px;
}

.address-hero p{
  color:#ffd9ad;
  font-size:18px;
  max-width:760px;
}

.addr-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:28px;
}

.addr-actions button{
  border:0;
  border-radius:18px;
  padding:15px 24px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.addr-actions button.dark{
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
}

.address-section{
  padding:70px 7%;
  background:#fff8ef;
}

.address-layout{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  align-items:start;
}

.address-form-card,
.saved-addresses{
  background:#fff;
  border-radius:34px;
  padding:30px;
  box-shadow:0 24px 70px rgba(15,23,42,.09);
}

.form-head,
.saved-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  margin-bottom:24px;
}

.form-head span,
.saved-head span{
  color:#ff5a00;
  font-weight:900;
}

.form-head h2,
.saved-head h2{
  font-size:32px;
  margin:5px 0 0;
}

.form-head button,
.saved-head a{
  border:0;
  border-radius:16px;
  padding:12px 14px;
  background:#111827;
  color:#fff;
  cursor:pointer;
  text-decoration:none;
  font-weight:800;
}

.premium-address-form{
  display:grid;
  gap:15px;
}

.type-tabs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.type-tabs input{
  display:none;
}

.type-tabs span{
  display:flex;
  justify-content:center;
  gap:8px;
  padding:13px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid #e5e7eb;
  font-weight:900;
  cursor:pointer;
}

.type-tabs input:checked + span{
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  border-color:transparent;
}

.premium-address-form input{
  width:100%;
  height:56px;
  border:1px solid #eadfd5;
  border-radius:17px;
  padding:0 16px;
  outline:none;
  font-family:inherit;
}

.premium-address-form input:focus{
  border-color:#ff7a00;
  box-shadow:0 0 0 4px rgba(255,122,0,.12);
}

.two-col,
.three-col{
  display:grid;
  gap:14px;
}

.two-col{
  grid-template-columns:1fr 1fr;
}

.three-col{
  grid-template-columns:1fr 1fr 1fr;
}

.default-check{
  display:flex;
  align-items:center;
  gap:9px;
  color:#475569;
  font-weight:800;
}

.default-check input{
  width:auto;
  height:auto;
}

.save-address-btn{
  height:58px;
  border:0;
  border-radius:20px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  font-size:16px;
}

.location-hint{
  color:#16a34a;
  font-weight:800;
  margin:0;
}

.addr-alert{
  padding:16px 20px;
  border-radius:18px;
  margin-bottom:22px;
  font-weight:900;
}

.addr-alert.success{
  background:#dcfce7;
  color:#166534;
}

.addr-alert.danger{
  background:#fee2e2;
  color:#991b1b;
}

.empty-address{
  text-align:center;
  padding:55px 20px;
  border:1px dashed #eadfd5;
  border-radius:28px;
  background:#fff8ef;
}

.empty-address i{
  font-size:52px;
  color:#ff5a00;
}

.address-list{
  display:grid;
  gap:18px;
}

.address-card{
  border:1px solid #eadfd5;
  border-radius:26px;
  padding:22px;
  background:#fff;
  transition:.3s;
}

.address-card.default{
  border-color:#ff9f00;
  background:linear-gradient(135deg,#fff,#fff7ed);
}

.address-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 45px rgba(15,23,42,.08);
}

.addr-card-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:12px;
}

.addr-type,
.default-badge{
  padding:8px 13px;
  border-radius:999px;
  font-weight:900;
}

.addr-type{
  background:#fff1f2;
  color:#e11d48;
}

.default-badge{
  background:#16a34a;
  color:#fff;
}

.address-card h3{
  margin:0 0 9px;
}

.address-card p{
  color:#64748b;
  line-height:1.7;
}

.address-card small{
  color:#94a3b8;
}

.addr-card-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
}

.addr-card-actions button{
  border:0;
  border-radius:14px;
  padding:10px 14px;
  background:#111827;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.addr-card-actions .delete{
  background:#fee2e2;
  color:#991b1b;
}

@media(max-width:950px){
  .address-layout{
    grid-template-columns:1fr;
  }

  .address-hero h1{
    font-size:42px;
  }
}

@media(max-width:600px){
  .address-section{
    padding:45px 15px;
  }

  .address-hero{
    padding:65px 18px;
  }

  .address-hero h1{
    font-size:34px;
  }

  .two-col,
  .three-col,
  .type-tabs{
    grid-template-columns:1fr;
  }

  .address-form-card,
  .saved-addresses{
    padding:22px;
    border-radius:26px;
  }
}


.premium-profile-hero{
  position:relative;
  padding:90px 7%;
  background:linear-gradient(135deg,#111827,#3b1600);
  color:#fff;
  overflow:hidden;
}

.profile-glow{
  position:absolute;
  width:280px;
  height:280px;
  border-radius:50%;
  filter:blur(80px);
  opacity:.55;
  animation:profileGlow 5s infinite alternate;
}

.glow-a{background:#ffb000;left:8%;top:10%;}
.glow-b{background:#ff3d00;right:8%;bottom:0;}

@keyframes profileGlow{
  from{transform:scale(1);}
  to{transform:scale(1.2);}
}

.premium-profile-wrap{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:28px;
  max-width:1100px;
}

.profile-avatar-large{
  width:150px;
  height:150px;
  border-radius:38px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  display:grid;
  place-items:center;
  color:#fff;
  font-size:68px;
  font-weight:900;
  box-shadow:0 30px 80px rgba(0,0,0,.35);
  flex-shrink:0;
}

.profile-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 17px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#ffc247;
  font-weight:900;
}

.profile-info h1{
  font-size:56px;
  margin:18px 0 8px;
}

.profile-info p{
  color:#ffd9ad;
  font-size:17px;
}

.profile-tags{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}

.profile-tags span{
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  font-weight:800;
}

.premium-profile-section{
  padding:70px 7%;
  background:#fff8ef;
}

.profile-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin-bottom:30px;
}

.profile-stat-card{
  padding:26px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 20px 55px rgba(15,23,42,.08);
  transition:.3s;
}

.profile-stat-card:hover{
  transform:translateY(-7px);
}

.profile-stat-card i{
  font-size:30px;
  color:#ff5a00;
}

.profile-stat-card span{
  display:block;
  color:#64748b;
  margin-top:14px;
}

.profile-stat-card h3{
  font-size:32px;
  margin:5px 0 0;
}

.profile-dashboard{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
}

.profile-panel{
  padding:30px;
  border-radius:34px;
  background:#fff;
  box-shadow:0 24px 70px rgba(15,23,42,.09);
}

.profile-title span{
  color:#ff5a00;
  font-weight:900;
}

.profile-title h2{
  font-size:30px;
  margin:5px 0 22px;
}

.profile-detail-list{
  display:grid;
  gap:14px;
}

.profile-detail-list div{
  padding:16px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid #e5e7eb;
}

.profile-detail-list small{
  display:block;
  color:#64748b;
  margin-bottom:5px;
}

.profile-detail-list b{
  color:#111827;
}

.profile-primary-btn,
.back-home-profile{
  margin-top:22px;
  height:56px;
  border-radius:18px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:900;
  text-decoration:none;
  padding:0 24px;
}

.profile-action-list{
  display:grid;
  gap:14px;
}

.profile-action-list a{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:16px;
  align-items:center;
  padding:18px;
  border-radius:20px;
  background:#f8fafc;
  color:#111827;
  text-decoration:none;
  transition:.3s;
}

.profile-action-list a:hover{
  background:#fff1f2;
  color:#e11d48;
  transform:translateX(6px);
}

.profile-action-list a > i:first-child{
  width:46px;
  height:46px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
}

.profile-action-list small{
  color:#64748b;
}

.logout-action{
  background:#fff5f5 !important;
}

@media(max-width:950px){
  .premium-profile-wrap,
  .profile-dashboard{
    grid-template-columns:1fr;
  }

  .premium-profile-wrap{
    flex-direction:column;
    text-align:center;
  }

  .profile-tags{
    justify-content:center;
  }

  .profile-stats-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .premium-profile-hero{
    padding:65px 18px;
  }

  .profile-info h1{
    font-size:34px;
  }

  .premium-profile-section{
    padding:45px 15px;
  }

  .profile-stats-grid{
    grid-template-columns:1fr;
  }

  .profile-panel{
    padding:22px;
    border-radius:26px;
  }

  .profile-action-list a{
    grid-template-columns:auto 1fr;
  }

  .profile-action-list a > i:last-child{
    display:none;
  }
}



.account-page{
  padding:80px 7%;
  min-height:70vh;
  background:#fff8ef;
}

.account-head{
  max-width:800px;
  margin-bottom:35px;
}

.account-head span{
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding:10px 17px;
  border-radius:999px;
  background:#fff1f2;
  color:#e11d48;
  font-weight:900;
}

.account-head h1{
  font-size:48px;
  margin:18px 0 8px;
  color:#111827;
}

.account-head p{
  color:#64748b;
}

.account-card,
.password-card{
  background:#fff;
  border-radius:34px;
  padding:30px;
  box-shadow:0 24px 70px rgba(15,23,42,.09);
}

.account-empty{
  text-align:center;
  padding:60px 20px;
}

.account-empty.wide{
  grid-column:1/-1;
  background:#fff;
  border-radius:34px;
  box-shadow:0 24px 70px rgba(15,23,42,.09);
}

.account-empty i{
  font-size:56px;
  color:#ff5a00;
}

.account-empty h3{
  font-size:28px;
  margin:18px 0 8px;
}

.account-empty p{
  color:#64748b;
}

.account-empty a{
  display:inline-flex;
  margin-top:15px;
  padding:14px 22px;
  border-radius:16px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  text-decoration:none;
}

.order-row{
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:20px;
  align-items:center;
  padding:18px;
  border-radius:20px;
  background:#f8fafc;
  margin-bottom:14px;
}

.order-row h3{
  margin:0;
}

.order-row p{
  margin:5px 0 0;
  color:#64748b;
}

.order-row span{
  padding:8px 13px;
  border-radius:999px;
  background:#dcfce7;
  color:#166534;
  font-weight:900;
}

.order-row b{
  color:#ff5a00;
  font-size:20px;
}

.fav-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.fav-card{
  display:block;
  overflow:hidden;
  border-radius:30px;
  background:#fff;
  text-decoration:none;
  color:#111827;
  box-shadow:0 24px 70px rgba(15,23,42,.09);
  transition:.3s;
}

.fav-card:hover{
  transform:translateY(-8px);
}

.fav-card img{
  width:100%;
  height:210px;
  object-fit:cover;
}

.fav-card div{
  padding:22px;
}

.fav-card h3{
  margin:0 0 8px;
}

.fav-card p{
  color:#64748b;
}

.fav-card span{
  display:inline-flex;
  padding:7px 12px;
  border-radius:999px;
  background:#16a34a;
  color:#fff;
  font-weight:900;
}

.password-card{
  max-width:580px;
}

.password-card form{
  display:grid;
  gap:15px;
}

.password-card input{
  height:56px;
  border:1px solid #eadfd5;
  border-radius:18px;
  padding:0 16px;
  outline:none;
  font-family:inherit;
}

.password-card input:focus{
  border-color:#ff7a00;
  box-shadow:0 0 0 4px rgba(255,122,0,.12);
}

.password-card button{
  height:58px;
  border:0;
  border-radius:20px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.account-alert{
  padding:14px 18px;
  border-radius:16px;
  margin-bottom:18px;
  font-weight:900;
}

.account-alert.success{
  background:#dcfce7;
  color:#166534;
}

.account-alert.error{
  background:#fee2e2;
  color:#991b1b;
}

@media(max-width:900px){
  .fav-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .account-page{
    padding:55px 16px;
  }

  .account-head h1{
    font-size:34px;
  }

  .order-row{
    grid-template-columns:1fr;
  }

  .fav-grid{
    grid-template-columns:1fr;
  }

  .account-card,
  .password-card{
    padding:22px;
    border-radius:26px;
  }
}
/* =========================
   KUMAUNMART WISHLIST FEATURE
========================= */
.wishlist-nav-link i{color:#e11d48}.wishlist-side-link{display:flex;align-items:center;gap:9px;margin-top:18px;padding:13px 16px;border-radius:16px;background:linear-gradient(135deg,#ff3d2e,#ff9f00);color:#fff!important;font-weight:900;text-decoration:none}.restaurants-hero-mini{padding:80px 7% 50px;background:linear-gradient(135deg,#111827,#3b1600);color:#fff;position:relative;overflow:hidden}.restaurants-hero-mini:before{content:"";position:absolute;width:260px;height:260px;left:10%;top:10%;background:#ff9f00;border-radius:50%;filter:blur(80px);opacity:.45}.restaurants-hero-mini span,.wishlist-badge{position:relative;display:inline-flex;align-items:center;gap:8px;padding:10px 17px;border-radius:999px;background:rgba(255,255,255,.12);color:#ffc247;font-weight:900}.restaurants-hero-mini h1{position:relative;font-size:52px;margin:18px 0 8px}.restaurants-hero-mini p{position:relative;color:#ffd9ad}.restaurants-premium-section{background:#fff8ef}.restaurant-card-grid .premium-res-card-wrap{position:relative;padding:0;overflow:hidden}.premium-res-link{display:block;padding:12px;color:inherit;text-decoration:none}.res-img-wrap{position:relative;height:210px;border-radius:22px;overflow:hidden}.res-img-wrap img{width:100%;height:100%;object-fit:cover;transition:.4s}.premium-res-card-wrap:hover .res-img-wrap img{transform:scale(1.1)}.card-wishlist-form{position:absolute;top:22px;right:22px;z-index:4}.card-wishlist-btn{width:46px;height:46px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#94a3b8;box-shadow:0 14px 32px rgba(15,23,42,.18);cursor:pointer;transition:.25s}.card-wishlist-btn:hover,.card-wishlist-btn.active{background:linear-gradient(135deg,#ff3d2e,#ff9f00);color:#fff;transform:scale(1.08)}.rest-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.hero-wishlist-form{flex-shrink:0}.hero-wishlist-btn,.menu-wishlist-btn{border:0;border-radius:999px;padding:13px 18px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);color:#fff;font-weight:900;cursor:pointer;transition:.25s}.hero-wishlist-btn.active,.hero-wishlist-btn:hover{background:linear-gradient(135deg,#ff3d2e,#ff9f00);border-color:transparent}.menu-wishlist-form{margin-top:12px}.menu-wishlist-btn{background:#fff1f2;color:#e11d48;border:1px solid #fecdd3}.menu-wishlist-btn.active,.menu-wishlist-btn:hover{background:linear-gradient(135deg,#ff3d2e,#ff9f00);color:#fff;border-color:transparent}.wishlist-page-notice-wrap{background:#fff8ef;padding:18px 7% 0}.wishlist-page-notice{padding:15px 18px;border-radius:18px;background:#dcfce7;color:#166534;font-weight:900;box-shadow:0 12px 28px rgba(22,163,74,.12)}.wishlist-hero{position:relative;padding:90px 7%;background:linear-gradient(135deg,#111827,#3b1600);color:#fff;overflow:hidden}.wishlist-glow{position:absolute;width:280px;height:280px;border-radius:50%;filter:blur(80px);opacity:.55;animation:wishGlow 5s infinite alternate}.wg1{background:#ffb000;left:8%;top:12%}.wg2{background:#ff3d00;right:8%;bottom:0}@keyframes wishGlow{from{transform:scale(1)}to{transform:scale(1.2)}}.wishlist-hero-content{position:relative;z-index:2;max-width:850px}.wishlist-hero h1{font-size:58px;margin:22px 0 12px;line-height:1.05}.wishlist-hero p{color:#ffd9ad;font-size:18px}.wishlist-stats{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.wishlist-stats div{min-width:135px;padding:18px 22px;border-radius:22px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16)}.wishlist-stats b{display:block;font-size:30px;color:#ffb000}.wishlist-stats span{color:#fff0dc}.wishlist-section{padding:70px 7%;background:#fff8ef}.wishlist-alert{padding:15px 18px;border-radius:18px;background:#dcfce7;color:#166534;font-weight:900;margin-bottom:24px}.wishlist-empty{text-align:center;padding:70px 20px;border-radius:34px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.09)}.wishlist-empty i{font-size:60px;color:#ff5a00}.wishlist-empty h2{font-size:36px;margin:18px 0 8px}.wishlist-empty p{color:#64748b}.wishlist-empty a{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:14px 22px;border-radius:18px;background:linear-gradient(135deg,#ff3d2e,#ff9f00);color:#fff;font-weight:900;text-decoration:none}.wishlist-title{text-align:center;max-width:700px;margin:0 auto 34px}.wishlist-title.dish-title{margin-top:60px}.wishlist-title span{color:#ff5a00;font-weight:900}.wishlist-title h2{font-size:42px;margin:8px 0}.wishlist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.wishlist-card{background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 24px 70px rgba(15,23,42,.09);transition:.3s}.wishlist-card:hover{transform:translateY(-8px)}.wishlist-img{display:block;position:relative;height:220px;overflow:hidden}.wishlist-img img{width:100%;height:100%;object-fit:cover;transition:.4s}.wishlist-card:hover .wishlist-img img{transform:scale(1.1)}.wishlist-img span{position:absolute;left:15px;top:15px;padding:8px 13px;border-radius:999px;background:#16a34a;color:#fff;font-weight:900}.wishlist-body{padding:22px}.wishlist-body h3{margin:0 0 8px}.wishlist-body p{color:#64748b}.wishlist-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.wishlist-actions a,.wishlist-actions button{border:0;border-radius:15px;padding:11px 14px;background:#111827;color:#fff;font-weight:900;text-decoration:none;cursor:pointer}.wishlist-actions button{background:#fee2e2;color:#991b1b}.wishlist-food-list{display:grid;gap:18px}.wishlist-food-card{display:grid;grid-template-columns:150px 1fr auto;gap:20px;align-items:center;padding:18px;border-radius:28px;background:#fff;box-shadow:0 20px 55px rgba(15,23,42,.08)}.wishlist-food-card>img{width:150px;height:125px;object-fit:cover;border-radius:22px}.wishlist-food-card h3{margin:10px 0 7px;font-size:24px}.wishlist-food-card p{color:#64748b;margin:0 0 8px}.wishlist-food-card small{color:#ff5a00;font-weight:900}.food-type{display:inline-flex;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:900}.food-type.veg{background:#dcfce7;color:#166534}.food-type.nonveg{background:#fee2e2;color:#991b1b}.wishlist-food-price{text-align:right;display:grid;gap:9px}.wishlist-food-price b{font-size:24px;color:#ff5a00}.cart-mini-btn,.remove-mini-btn{border:0;border-radius:14px;padding:10px 14px;font-weight:900;cursor:pointer}.cart-mini-btn{background:linear-gradient(135deg,#ff3d2e,#ff9f00);color:#fff}.remove-mini-btn{background:#fee2e2;color:#991b1b}@media(max-width:950px){.wishlist-grid{grid-template-columns:1fr 1fr}.wishlist-food-card{grid-template-columns:120px 1fr}.wishlist-food-price{grid-column:1/-1;text-align:left;display:flex;align-items:center;flex-wrap:wrap}.rest-title-row{flex-direction:column}}@media(max-width:600px){.wishlist-hero{padding:65px 18px}.wishlist-hero h1,.restaurants-hero-mini h1{font-size:34px}.wishlist-section{padding:45px 15px}.wishlist-grid{grid-template-columns:1fr}.wishlist-food-card{grid-template-columns:1fr}.wishlist-food-card>img{width:100%;height:220px}.wishlist-title h2{font-size:30px}}


.heart-btn.active{
  background:#fff1f2;
  color:#e11d48;
}

.heart-btn.active i{
  color:#e11d48;
}

/* ===== Wishlist button fixed: clickable heart without opening restaurant page ===== */
.wishlist-card-fixed{
  position:relative;
  overflow:hidden;
}

.wishlist-card-fixed .restaurant-card-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

.wishlist-card-fixed .heart-btn,
.wishlist-card-fixed .wishlist-btn{
  position:absolute;
  top:18px;
  right:18px;
  width:52px;
  height:52px;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#e11d48;
  display:grid;
  place-items:center;
  cursor:pointer;
  z-index:20;
  box-shadow:0 14px 35px rgba(15,23,42,.14);
  transition:.25s;
}

.wishlist-card-fixed .heart-btn:hover,
.wishlist-card-fixed .wishlist-btn:hover{
  transform:scale(1.08);
  background:#fff1f2;
}

.wishlist-card-fixed .heart-btn.active,
.wishlist-card-fixed .wishlist-btn.active{
  background:#e11d48;
  color:#fff;
}

.wishlist-card-fixed .heart-btn.loading,
.wishlist-card-fixed .wishlist-btn.loading{
  opacity:.65;
  pointer-events:none;
}

.wishlist-card-fixed .heart-btn i,
.wishlist-card-fixed .wishlist-btn i{
  font-size:21px;
}



.premium-restaurants-hero{
  position:relative;
  padding:90px 7%;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(17,24,39,.92),rgba(61,23,0,.88)),
    url('assets/images/food-banner.jpg');
  background-size:cover;
  background-position:center;
}

.rest-hero-glow{
  position:absolute;
  width:280px;
  height:280px;
  border-radius:50%;
  filter:blur(80px);
  opacity:.6;
  animation:restGlow 5s infinite alternate;
}

.rest-hero-glow.g1{background:#ffb000;left:8%;top:8%;}
.rest-hero-glow.g2{background:#ff3d00;right:8%;bottom:0;}

@keyframes restGlow{
  from{transform:scale(1)}
  to{transform:scale(1.2)}
}

.rest-hero-content{
  position:relative;
  z-index:2;
  max-width:900px;
}

.rest-hero-badge{
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding:10px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  color:#ffc247;
  font-weight:900;
}

.premium-restaurants-hero h1{
  font-size:58px;
  line-height:1.05;
  margin:24px 0 14px;
}

.premium-restaurants-hero p{
  color:#ffd9ad;
  font-size:18px;
}

.restaurant-search-box{
  margin-top:28px;
  max-width:720px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px;
  border-radius:24px;
  background:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}

.restaurant-search-box i{
  color:#ff5a00;
  margin-left:14px;
}

.restaurant-search-box input{
  flex:1;
  border:0;
  outline:0;
  font-size:15px;
  font-family:inherit;
}

.restaurant-search-box button{
  border:0;
  padding:14px 24px;
  border-radius:18px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.restaurant-hero-stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:32px;
  max-width:760px;
}

.restaurant-hero-stats div{
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(14px);
}

.restaurant-hero-stats b{
  display:block;
  font-size:28px;
  color:#ffb000;
}

.restaurant-hero-stats span{
  color:#fff0dc;
}

.premium-restaurants-page{
  padding:70px 7%;
  background:#fff8ef;
}

.premium-notice{
  margin-bottom:22px;
  padding:15px 18px;
  border-radius:18px;
  background:#dcfce7;
  color:#166534;
  font-weight:900;
}

.premium-chip-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:38px;
}

.premium-chip-row a{
  padding:12px 17px;
  border-radius:999px;
  background:#fff;
  color:#111827;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
  transition:.25s;
}

.premium-chip-row a:hover,
.premium-chip-row .wish-chip{
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  transform:translateY(-3px);
}

.restaurant-section-title{
  display:flex;
  justify-content:space-between;
  margin-bottom:30px;
}

.restaurant-section-title span{
  color:#ff5a00;
  font-weight:900;
}

.restaurant-section-title h2{
  font-size:42px;
  margin:6px 0 8px;
}

.restaurant-section-title p{
  color:#64748b;
}

.premium-restaurant-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:26px;
}

.premium-restaurant-card{
  position:relative;
  border-radius:32px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 22px 60px rgba(15,23,42,.09);
  transition:.35s;
}

.premium-restaurant-card:hover{
  transform:translateY(-10px);
  box-shadow:0 32px 90px rgba(255,92,32,.18);
}

.premium-card-link{
  display:block;
  color:#111827;
  text-decoration:none;
}

.premium-card-img{
  height:230px;
  position:relative;
  overflow:hidden;
}

.premium-card-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.45s;
}

.premium-restaurant-card:hover img{
  transform:scale(1.12);
}

.premium-offer{
  position:absolute;
  left:16px;
  top:16px;
  padding:9px 13px;
  border-radius:999px;
  background:linear-gradient(135deg,#ffb000,#ff5a00);
  color:#111827;
  font-weight:900;
  font-size:12px;
}

.premium-rating{
  position:absolute;
  right:16px;
  bottom:16px;
  padding:8px 12px;
  border-radius:999px;
  background:#16a34a;
  color:#fff;
  font-weight:900;
  font-size:13px;
}

.premium-card-content{
  padding:22px;
}

.restaurant-name-row{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}

.restaurant-name-row h3{
  margin:0;
  font-size:21px;
}

.verified{
  color:#2563eb;
}

.premium-card-content p{
  color:#64748b;
  margin:9px 0 15px;
}

.premium-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#475569;
  font-size:13px;
  font-weight:800;
}

.premium-meta i{
  color:#ff5a00;
}

.premium-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:16px;
}

.premium-tags span{
  padding:7px 10px;
  border-radius:999px;
  background:#fff1f2;
  color:#e11d48;
  font-size:12px;
  font-weight:900;
}

.view-menu-btn{
  width:100%;
  margin-top:18px;
  padding:13px;
  border:0;
  border-radius:17px;
  background:#111827;
  color:#fff;
  font-weight:900;
  cursor:pointer;
  transition:.25s;
}

.premium-restaurant-card:hover .view-menu-btn{
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
}

.premium-wishlist-form{
  position:absolute;
  top:16px;
  right:16px;
  z-index:5;
}

.premium-heart-btn{
  width:44px;
  height:44px;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#94a3b8;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  transition:.25s;
}

.premium-heart-btn:hover,
.premium-heart-btn.active{
  background:#fff1f2;
  color:#e11d48;
  transform:scale(1.12);
}

.floating-wishlist{
  position:fixed;
  right:24px;
  bottom:24px;
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-size:22px;
  box-shadow:0 20px 50px rgba(255,92,32,.35);
  z-index:99;
}

@media(max-width:1100px){
  .premium-restaurant-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .restaurant-hero-stats{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .premium-restaurants-hero{
    padding:70px 18px;
  }

  .premium-restaurants-hero h1{
    font-size:36px;
  }

  .restaurant-search-box{
    flex-direction:column;
    align-items:stretch;
    padding:16px;
  }

  .restaurant-search-box button{
    width:100%;
  }

  .restaurant-hero-stats,
  .premium-restaurant-grid{
    grid-template-columns:1fr;
  }

  .premium-restaurants-page{
    padding:50px 16px;
  }

  .restaurant-section-title h2{
    font-size:31px;
  }
}



.offers-hero{
position:relative;
overflow:hidden;
padding:90px 7%;
background:
linear-gradient(135deg,#111827,#3b1600);
color:#fff;
}

.offer-glow{
position:absolute;
width:280px;
height:280px;
border-radius:50%;
filter:blur(90px);
opacity:.5;
animation:floatGlow 6s infinite alternate;
}

.glow1{
background:#ff9800;
left:-60px;
top:-40px;
}

.glow2{
background:#ff3d2e;
right:-70px;
bottom:-50px;
}

@keyframes floatGlow{
from{transform:scale(1);}
to{transform:scale(1.3);}
}

.offer-badge{
display:inline-block;
padding:10px 18px;
background:rgba(255,255,255,.12);
border-radius:999px;
font-weight:700;
}

.offers-content h1{
font-size:58px;
margin:20px 0;
}

.offer-stats{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
margin-top:40px;
}

.offer-stats div{
background:rgba(255,255,255,.08);
padding:20px;
border-radius:22px;
text-align:center;
backdrop-filter:blur(15px);
}

.offer-stats h2{
margin:0;
color:#ffb000;
}

.offers-filter{
display:flex;
gap:12px;
flex-wrap:wrap;
margin-bottom:35px;
}

.offers-filter button{
border:none;
padding:12px 22px;
border-radius:999px;
cursor:pointer;
background:#fff;
font-weight:700;
box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.offers-filter button.active,
.offers-filter button:hover{
background:linear-gradient(135deg,#ff5722,#ff9800);
color:#fff;
}

.offers-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:25px;
}

.premium-offer-card{
padding:28px;
border-radius:30px;
color:#fff;
position:relative;
overflow:hidden;
transition:.35s;
box-shadow:0 20px 50px rgba(0,0,0,.15);
}

.premium-offer-card:hover{
transform:translateY(-8px);
}

.offer-red{background:linear-gradient(135deg,#ff416c,#ff4b2b);}
.offer-orange{background:linear-gradient(135deg,#ff9800,#ff5722);}
.offer-green{background:linear-gradient(135deg,#00b09b,#96c93d);}
.offer-purple{background:linear-gradient(135deg,#8e2de2,#4a00e0);}
.offer-blue{background:linear-gradient(135deg,#2193b0,#6dd5ed);}
.offer-pink{background:linear-gradient(135deg,#fc466b,#3f5efb);}

.offer-top{
display:flex;
justify-content:space-between;
margin-bottom:20px;
font-size:13px;
}

.offer-discount{
font-size:24px;
font-weight:800;
}

.offer-footer{
display:flex;
justify-content:space-between;
align-items:center;
margin-top:25px;
}

.copy-offer{
border:none;
padding:12px 18px;
border-radius:15px;
background:#fff;
color:#111;
cursor:pointer;
font-weight:700;
}

.bank-offers{
background:#fff;
padding:35px;
border-radius:30px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.bank-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
margin-top:25px;
}

.bank-card{
padding:25px;
border-radius:22px;
background:#f8fafc;
font-weight:700;
transition:.3s;
}

.bank-card:hover{
transform:translateY(-6px);
background:#fff7ed;
}

.bank-card span{
display:block;
margin-top:8px;
font-size:14px;
color:#64748b;
}

@media(max-width:768px){

.offers-content h1{
font-size:36px;
}

.offer-stats{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:500px){

.offer-stats{
grid-template-columns:1fr;
}

.offers-filter{
overflow:auto;
white-space:nowrap;
}

}


.premium-cart-hero{
  position:relative;
  padding:90px 7%;
  color:#fff;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(17,24,39,.93),rgba(60,22,0,.88)),
    url('assets/images/food-banner.jpg');
  background-size:cover;
  background-position:center;
}

.cart-glow{
  position:absolute;
  width:280px;
  height:280px;
  border-radius:50%;
  filter:blur(80px);
  opacity:.6;
  animation:cartGlow 5s infinite alternate;
}

.cg1{background:#ffb000;left:8%;top:10%;}
.cg2{background:#ff3d00;right:8%;bottom:0;}

@keyframes cartGlow{
  from{transform:scale(1);}
  to{transform:scale(1.2);}
}

.cart-hero-content{
  position:relative;
  z-index:2;
  max-width:850px;
}

.cart-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  color:#ffc247;
  font-weight:900;
}

.premium-cart-hero h1{
  font-size:58px;
  line-height:1.05;
  margin:22px 0 12px;
}

.premium-cart-hero p{
  color:#ffd9ad;
  font-size:18px;
}

.premium-cart-section{
  padding:70px 7%;
  background:#fff8ef;
  min-height:60vh;
}

.empty-premium-cart{
  max-width:650px;
  margin:auto;
  text-align:center;
  padding:60px 30px;
  border-radius:36px;
  background:#fff;
  box-shadow:0 28px 80px rgba(15,23,42,.1);
}

.empty-cart-icon{
  width:110px;
  height:110px;
  margin:0 auto 25px;
  border-radius:34px;
  display:grid;
  place-items:center;
  font-size:50px;
  color:#fff;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
}

.empty-premium-cart h2{
  font-size:38px;
  margin:0 0 10px;
}

.empty-premium-cart p{
  color:#64748b;
}

.empty-premium-cart a{
  margin-top:22px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:15px 24px;
  border-radius:18px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  text-decoration:none;
  font-weight:900;
}

.cart-layout{
  display:grid;
  grid-template-columns:1fr 390px;
  gap:28px;
  align-items:start;
}

.cart-section-title span{
  color:#ff5a00;
  font-weight:900;
}

.cart-section-title h2{
  font-size:38px;
  margin:5px 0 25px;
}

.cart-items-list{
  display:grid;
  gap:18px;
}

.premium-cart-item{
  display:grid;
  grid-template-columns:135px 1fr auto;
  gap:20px;
  align-items:center;
  padding:20px;
  border-radius:30px;
  background:#fff;
  box-shadow:0 20px 55px rgba(15,23,42,.08);
  transition:.3s;
}

.premium-cart-item:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 80px rgba(255,92,32,.16);
}

.cart-food-img{
  width:135px;
  height:115px;
  border-radius:24px;
  overflow:hidden;
}

.cart-food-img img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.food-type-badge{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:#dcfce7;
  color:#166534;
  font-size:12px;
  font-weight:900;
}

.cart-food-info h3{
  margin:10px 0 6px;
  font-size:24px;
}

.cart-food-info p{
  color:#64748b;
  margin:0 0 14px;
}

.cart-item-actions{
  display:flex;
  gap:14px;
  align-items:center;
  flex-wrap:wrap;
}

.qty-control{
  display:flex;
  align-items:center;
  gap:12px;
  padding:7px;
  border-radius:16px;
  background:#fff1f2;
}

.qty-control a{
  width:32px;
  height:32px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#fff;
  color:#e11d48;
  text-decoration:none;
  font-weight:900;
}

.qty-control b{
  min-width:22px;
  text-align:center;
}

.remove-cart-item{
  color:#ef4444;
  text-decoration:none;
  font-weight:900;
  font-size:13px;
}

.cart-price-box{
  text-align:right;
}

.cart-price-box small{
  display:block;
  color:#64748b;
  margin-bottom:8px;
}

.cart-price-box b{
  font-size:24px;
  color:#ff5a00;
}

.delivery-address-card{
  margin-top:22px;
  padding:22px;
  border-radius:28px;
  background:#fff;
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  box-shadow:0 20px 55px rgba(15,23,42,.08);
}

.delivery-address-card span{
  color:#ff5a00;
  font-weight:900;
}

.delivery-address-card p{
  color:#64748b;
  margin:8px 0 0;
}

.delivery-address-card a{
  padding:11px 16px;
  border-radius:14px;
  background:#111827;
  color:#fff;
  text-decoration:none;
  font-weight:900;
}

.cart-summary-card{
  position:sticky;
  top:110px;
  padding:28px;
  border-radius:34px;
  background:#fff;
  box-shadow:0 28px 80px rgba(15,23,42,.1);
}

.cart-summary-card h2{
  margin:0 0 20px;
  font-size:30px;
}

.coupon-box{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  margin-bottom:16px;
}

.coupon-box input{
  min-width:0;
  height:50px;
  border:1px solid #eadfd5;
  border-radius:16px;
  padding:0 14px;
  outline:none;
}

.coupon-box button{
  border:0;
  border-radius:16px;
  padding:0 16px;
  background:#111827;
  color:#fff;
  font-weight:900;
}

.coupon-success{
  padding:12px;
  border-radius:16px;
  background:#dcfce7;
  color:#166534;
  font-weight:900;
  margin-bottom:16px;
}

.bill-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:13px 0;
  border-bottom:1px dashed #e5e7eb;
  color:#64748b;
}

.bill-row b{
  color:#111827;
}

.bill-row.discount b,
.bill-row.discount span{
  color:#16a34a;
}

.grand-total{
  margin-top:18px;
  padding:18px;
  border-radius:20px;
  background:#111827;
  color:#fff;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.grand-total b{
  font-size:28px;
  color:#ffb000;
  padding: 0px 30px;
}

.payment-icons{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:18px 0;
}

.payment-icons span{
  padding:8px 11px;
  border-radius:999px;
  background:#f8fafc;
  color:#475569;
  font-size:12px;
  font-weight:900;
}

.checkout-premium-btn{
  height:58px;
  border-radius:20px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  text-decoration:none;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  box-shadow:0 18px 45px rgba(255,92,32,.3);
}

.clear-cart-premium{
  margin-top:14px;
  display:flex;
  justify-content:center;
  color:#ef4444;
  text-decoration:none;
  font-weight:900;
}

.mobile-checkout-bar{
  display:none;
}

@media(max-width:1000px){
  .cart-layout{
    grid-template-columns:1fr;
  }

  .cart-summary-card{
    position:static;
  }
}

@media(max-width:650px){
  .premium-cart-hero{
    padding:70px 18px;
  }

  .premium-cart-hero h1{
    font-size:36px;
  }

  .premium-cart-section{
    padding:45px 15px 110px;
  }

  .premium-cart-item{
    grid-template-columns:1fr;
  }

  .cart-food-img{
    width:100%;
    height:210px;
  }

  .cart-price-box{
    text-align:left;
  }

  .delivery-address-card{
    flex-direction:column;
    align-items:flex-start;
  }

  .coupon-box{
    grid-template-columns:1fr;
  }

  .mobile-checkout-bar{
    position:fixed;
    left:12px;
    right:12px;
    bottom:12px;
    z-index:999;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 16px;
    border-radius:24px;
    background:#111827;
    color:#fff;
    box-shadow:0 20px 60px rgba(0,0,0,.3);
  }

  .mobile-checkout-bar small{
    display:block;
    color:#cbd5e1;
  }

  .mobile-checkout-bar b{
    color:#ffb000;
    font-size:22px;
  }

  .mobile-checkout-bar a{
    padding:13px 18px;
    border-radius:16px;
    background:linear-gradient(135deg,#ff3d2e,#ff9f00);
    color:#fff;
    text-decoration:none;
    font-weight:900;
  }
}

.about-hero{
  padding:100px 7%;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(17,24,39,.92),rgba(61,23,0,.88)),
    url('assets/images/food-banner.jpg');
  background-size:cover;
  background-position:center;
}

.about-hero span,
.about-mission span{
  color:#ffc247;
  font-weight:900;
}

.about-hero h1{
  max-width:900px;
  font-size:56px;
  line-height:1.08;
  margin:18px 0;
}

.about-hero p{
  max-width:720px;
  color:#ffd9ad;
  font-size:18px;
}

.about-section{
  padding:70px 7%;
  background:#fff8ef;
}

.about-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.about-card{
  background:#fff;
  padding:32px;
  border-radius:30px;
  box-shadow:0 22px 60px rgba(15,23,42,.08);
  transition:.3s;
}

.about-card:hover{
  transform:translateY(-8px);
}

.about-card i{
  width:62px;
  height:62px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-size:28px;
}

.about-card h3{
  margin:22px 0 10px;
}

.about-card p{
  color:#64748b;
  line-height:1.7;
}

.about-mission{
  padding:70px 7%;
  background:#fff;
}

.mission-box{
  padding:45px;
  border-radius:36px;
  color:#fff;
  background:linear-gradient(135deg,#111827,#3b1600);
  box-shadow:0 28px 80px rgba(15,23,42,.16);
}

.mission-box h2{
  font-size:42px;
  max-width:800px;
}

.mission-box p{
  color:#ffd9ad;
  max-width:850px;
  line-height:1.8;
}

@media(max-width:950px){
  .about-grid{
    grid-template-columns:1fr 1fr;
  }

  .about-hero h1{
    font-size:40px;
  }
}

@media(max-width:600px){
  .about-grid{
    grid-template-columns:1fr;
  }

  .about-hero{
    padding:70px 18px;
  }

  .about-hero h1{
    font-size:32px;
  }

  .about-section,
  .about-mission{
    padding:50px 16px;
  }

  .mission-box{
    padding:28px;
  }

  .mission-box h2{
    font-size:30px;
  }
}


.checkout-hero{
  padding:90px 7%;
  color:#fff;
  background:linear-gradient(135deg,#111827,#3b1600);
}

.checkout-hero span{
  color:#ffc247;
  font-weight:900;
}

.checkout-hero h1{
  font-size:56px;
  margin:18px 0 8px;
}

.checkout-hero p{
  color:#ffd9ad;
  font-size:18px;
}

.checkout-page{
  padding:60px 7%;
  background:#fff8ef;
}

.checkout-layout{
  display:grid;
  grid-template-columns:1fr 380px;
  gap:28px;
  align-items:start;
}

.checkout-left{
  display:grid;
  gap:22px;
}

.checkout-card,
.checkout-summary{
  background:#fff;
  border-radius:30px;
  padding:28px;
  box-shadow:0 22px 60px rgba(15,23,42,.08);
}

.checkout-title{
  display:flex;
  gap:15px;
  align-items:flex-start;
  margin-bottom:22px;
}

.checkout-title i{
  width:52px;
  height:52px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
}

.checkout-title h2{
  margin:0 0 5px;
}

.checkout-title p{
  margin:0;
  color:#64748b;
}

.checkout-card input,
.checkout-card textarea{
  width:100%;
  border:1px solid #eadfd5;
  border-radius:17px;
  padding:15px;
  font-family:inherit;
  outline:none;
}

.checkout-card textarea{
  min-height:110px;
  resize:vertical;
}

.checkout-card input:focus,
.checkout-card textarea:focus{
  border-color:#ff7a00;
  box-shadow:0 0 0 4px rgba(255,122,0,.12);
}

.two-col,
.three-col{
  display:grid;
  gap:14px;
  margin-bottom:14px;
}

.two-col{grid-template-columns:1fr 1fr;}
.three-col{grid-template-columns:1fr 1fr 1fr;}

.detect-location-btn{
  border:0;
  padding:13px 18px;
  border-radius:16px;
  background:#111827;
  color:#fff;
  font-weight:900;
  margin-bottom:18px;
  cursor:pointer;
}

.delivery-options,
.payment-options{
  display:grid;
  gap:14px;
}

.delivery-options label,
.payment-options label{
  cursor:pointer;
}

.delivery-options input,
.payment-options input{
  display:none;
}

.delivery-options span,
.payment-options span{
  display:flex;
  gap:12px;
  align-items:center;
  padding:16px;
  border-radius:18px;
  border:1px solid #eadfd5;
  background:#f8fafc;
  font-weight:900;
}

.delivery-options small{
  display:block;
  color:#64748b;
  font-weight:600;
}

.delivery-options input:checked + span,
.payment-options input:checked + span{
  background:#fff1f2;
  border-color:#ff5a00;
  color:#e11d48;
}

.coupon-box{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
}

.coupon-box button{
  border:0;
  padding:0 22px;
  border-radius:16px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
}

.checkout-location-msg{
  color:#16a34a;
  font-weight:800;
}

.checkout-summary{
  position:sticky;
  top:105px;
}

.checkout-summary h2{
  margin-top:0;
}

.summary-items{
  display:grid;
  gap:12px;
  margin:20px 0;
}

.summary-item{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border-radius:16px;
  background:#f8fafc;
}

.summary-item small{
  display:block;
  color:#64748b;
}

.summary-item span{
  color:#ff5a00;
  font-weight:900;
}

.price-list{
  display:grid;
  gap:12px;
  padding-top:18px;
  border-top:1px solid #eef2f7;
}

.price-list div,
.grand-total{
  display:flex;
  justify-content:space-between;
}

.price-list span{
  color:#64748b;
}

.discount b{
  color:#16a34a;
}

.grand-total{
  margin-top:20px;
  padding-top:18px;
  border-top:2px dashed #eadfd5;
  font-size:22px;
  font-weight:900;
}

.place-order-btn{
  width:100%;
  height:58px;
  margin-top:24px;
  border:0;
  border-radius:20px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.place-order-btn:disabled{
  opacity:.5;
  cursor:not-allowed;
}

.secure-note{
  text-align:center;
  color:#64748b;
  font-size:13px;
}

.empty-cart-mini{
  text-align:center;
  padding:30px;
  color:#64748b;
}

.empty-cart-mini i{
  font-size:40px;
  color:#ff5a00;
}

@media(max-width:950px){
  .checkout-layout{
    grid-template-columns:1fr;
  }

  .checkout-summary{
    position:static;
  }
}

@media(max-width:600px){
  .checkout-hero{
    padding:70px 18px;
  }

  .checkout-hero h1{
    font-size:34px;
  }

  .checkout-page{
    padding:45px 16px;
  }

  .two-col,
  .three-col,
  .coupon-box{
    grid-template-columns:1fr;
  }

  .checkout-card,
  .checkout-summary{
    padding:22px;
    border-radius:24px;
  }
}


.contact-hero{
  position:relative;
  padding:95px 7%;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(135deg,#111827,#3b1600);
}

.contact-glow{
  position:absolute;
  width:280px;
  height:280px;
  border-radius:50%;
  filter:blur(80px);
  opacity:.55;
  animation:contactGlow 5s infinite alternate;
}

.contact-glow.g1{
  background:#ffb000;
  left:7%;
  top:10%;
}

.contact-glow.g2{
  background:#ff3d00;
  right:8%;
  bottom:0;
}

@keyframes contactGlow{
  from{transform:scale(1)}
  to{transform:scale(1.2)}
}

.contact-hero-content{
  position:relative;
  z-index:2;
  max-width:850px;
}

.contact-hero-content span,
.contact-left span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#ffc247;
  font-weight:900;
}

.contact-hero h1{
  font-size:58px;
  line-height:1.05;
  margin:20px 0 14px;
}

.contact-hero p{
  color:#ffd9ad;
  font-size:18px;
}

.contact-section{
  padding:70px 7%;
  background:#fff8ef;
}

.contact-info-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin-bottom:35px;
}

.contact-info-card{
  padding:26px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 20px 55px rgba(15,23,42,.08);
  transition:.3s;
}

.contact-info-card:hover{
  transform:translateY(-7px);
}

.contact-info-card i{
  width:56px;
  height:56px;
  border-radius:20px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-size:24px;
}

.contact-info-card h3{
  margin:18px 0 8px;
}

.contact-info-card p{
  margin:0;
  color:#64748b;
}

.contact-layout{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:30px;
  align-items:start;
}

.contact-left,
.premium-contact-form{
  padding:34px;
  border-radius:34px;
  background:#fff;
  box-shadow:0 24px 70px rgba(15,23,42,.09);
}

.contact-left{
  color:#fff;
  background:
    radial-gradient(circle at top left,rgba(255,176,0,.25),transparent 35%),
    linear-gradient(135deg,#111827,#3b1600);
}

.contact-left h2{
  font-size:38px;
  margin:14px 0 10px;
}

.contact-left p{
  color:#ffd9ad;
  line-height:1.8;
}

.contact-points{
  display:grid;
  gap:14px;
  margin-top:28px;
}

.contact-points div{
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.12);
  font-weight:800;
}

.contact-points i{
  color:#ffb000;
}

.premium-contact-form{
  display:grid;
  gap:15px;
}

.two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
}

.premium-contact-form input,
.premium-contact-form select,
.premium-contact-form textarea{
  width:100%;
  border:1px solid #eadfd5;
  border-radius:18px;
  padding:15px 16px;
  outline:none;
  font-family:inherit;
}

.premium-contact-form textarea{
  min-height:140px;
  resize:vertical;
}

.premium-contact-form input:focus,
.premium-contact-form select:focus,
.premium-contact-form textarea:focus{
  border-color:#ff7a00;
  box-shadow:0 0 0 4px rgba(255,122,0,.12);
}

.premium-contact-form button{
  height:58px;
  border:0;
  border-radius:20px;
  background:linear-gradient(135deg,#ff3d2e,#ff9f00);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

@media(max-width:950px){
  .contact-info-grid{
    grid-template-columns:1fr 1fr;
  }

  .contact-layout{
    grid-template-columns:1fr;
  }

  .contact-hero h1{
    font-size:42px;
  }
}

@media(max-width:600px){
  .contact-hero{
    padding:70px 18px;
  }

  .contact-hero h1{
    font-size:34px;
  }

  .contact-section{
    padding:50px 16px;
  }

  .contact-info-grid,
  .two-col{
    grid-template-columns:1fr;
  }

  .contact-left,
  .premium-contact-form{
    padding:24px;
    border-radius:26px;
  }
}


.success-hero{

position:relative;

overflow:hidden;

padding:90px 18px;

background:#fff8ef;

}

.success-box{

max-width:950px;

margin:auto;

background:#fff;

padding:55px;

border-radius:35px;

box-shadow:0 25px 70px rgba(0,0,0,.08);

text-align:center;

position:relative;

z-index:2;

}

.success-icon{

width:120px;

height:120px;

margin:auto;

display:grid;

place-items:center;

border-radius:50%;

background:linear-gradient(135deg,#16a34a,#22c55e);

color:#fff;

font-size:65px;

animation:pop .8s ease;

box-shadow:0 20px 60px rgba(34,197,94,.3);

}

@keyframes pop{

0%{

transform:scale(.4);

}

100%{

transform:scale(1);

}

}

.success-box h1{

font-size:48px;

margin:25px 0 10px;

}

.success-box p{

font-size:17px;

color:#64748b;

}

.order-number{

margin:25px auto;

display:inline-block;

padding:14px 28px;

border-radius:999px;

background:#fff1f2;

color:#e11d48;

font-weight:800;

}

.success-timeline{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

margin:45px 0;

}

.timeline-item{

padding:22px;

border-radius:22px;

background:#f8fafc;

}

.timeline-item.active{

background:#dcfce7;

}

.timeline-item i{

font-size:28px;

margin-bottom:12px;

color:#ff5a00;

}

.success-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:22px;

margin-top:20px;

}

.success-card{

padding:28px;

border-radius:24px;

background:#f8fafc;

transition:.3s;

}

.success-card:hover{

transform:translateY(-8px);

}

.success-card i{

font-size:32px;

color:#ff5a00;

margin-bottom:15px;

}

.ordered-items{

margin-top:45px;

text-align:left;

}

.ordered-items h2{

margin-bottom:20px;

}

.ordered-row{

display:flex;

justify-content:space-between;

padding:18px;

border-radius:18px;

background:#f8fafc;

margin-bottom:12px;

}

.success-buttons{

margin-top:45px;

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

}

.success-btn{

padding:16px 28px;

border-radius:18px;

background:#111827;

color:#fff;

text-decoration:none;

font-weight:700;

transition:.3s;

}

.success-btn.primary{

background:linear-gradient(135deg,#ff5722,#ff9800);

}

.success-btn:hover{

transform:translateY(-5px);

}

.success-glow{

position:absolute;

width:280px;

height:280px;

border-radius:50%;

filter:blur(90px);

opacity:.5;

animation:floatGlow 6s infinite alternate;

}

.glow1{

background:#22c55e;

left:-60px;

top:-50px;

}

.glow2{

background:#ff9800;

right:-60px;

bottom:-50px;

}

@media(max-width:768px){

.success-box{

padding:30px;

}

.success-box h1{

font-size:32px;

}

.success-grid{

grid-template-columns:repeat(2,1fr);

}

.success-timeline{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:500px){

.success-grid,

.success-timeline{

grid-template-columns:1fr;

}

.success-box{

padding:22px;

}

}
/* =========================================================
   PROFESSIONAL TYPOGRAPHY + COMPACT UI OVERRIDE
   Added for cleaner commercial KumaunMart look
   ========================================================= */
:root{
  --primary:#ff5a1f;
  --primary-dark:#e04a15;
  --orange:#f97316;
  --dark:#111827;
  --text:#111827;
  --muted:#6b7280;
  --soft:#fff7ed;
  --soft-red:#fff3ed;
  --border:#e5e7eb;
  --shadow:0 14px 38px rgba(15,23,42,.07);
}
html{font-size:15px}
body{font-family:Inter,Arial,sans-serif!important;background:#f8fafc;color:#111827;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a,button,input,select,textarea{font-family:Inter,Arial,sans-serif!important}

/* Navigation */
.top-nav,.premium-nav{height:70px;padding-left:clamp(16px,3vw,42px)!important;padding-right:clamp(16px,3vw,42px)!important;background:rgba(255,255,255,.92);box-shadow:0 8px 24px rgba(15,23,42,.06)}
.brand,.premium-brand{font-size:24px!important;font-weight:750!important;letter-spacing:-.45px!important}.premium-brand small{font-size:8px;font-weight:700;padding:2px 6px}.nav-actions,.premium-actions{font-size:14px!important;font-weight:600!important}.nav-actions a,.premium-actions a{padding:9px 10px!important;border-radius:12px!important}.nav-search,.premium-search{height:46px;border-radius:14px;box-shadow:0 8px 20px rgba(15,23,42,.045)}.nav-search input,.premium-search input{font-size:14px}.nav-search button,.premium-search button{width:34px;height:34px;border-radius:11px}.location-pill{padding:10px 14px;border-radius:14px;font-weight:600;font-size:13px}.premium-location b{font-size:12px}.premium-location small{font-size:12px;color:#6b7280}.menu-btn,.premium-menu-btn{width:42px;height:42px;border-radius:12px}

/* Hero */
.fk-hero{min-height:auto;padding:58px 7% 66px;gap:36px;background:linear-gradient(135deg,#fffaf7 0%,#fff7ed 52%,#fff 100%)}
.premium-badge{padding:7px 12px;font-size:13px;font-weight:650;box-shadow:0 8px 22px rgba(255,90,31,.10)}
.fk-hero h1{font-size:clamp(34px,4.8vw,58px)!important;line-height:1.08!important;letter-spacing:-1.8px!important;margin:18px 0 14px!important;font-weight:750!important;max-width:700px}
.fk-hero p{font-size:15.5px!important;line-height:1.7!important;color:#4b5563!important;max-width:600px;margin-bottom:18px!important}.smart-search{max-width:650px;padding:8px;border-radius:17px;box-shadow:0 16px 45px rgba(15,23,42,.08)}.smart-search input{font-size:14.5px;padding:12px 6px}.btn,.smart-search button{padding:12px 19px;border-radius:12px;font-size:14px;font-weight:650;box-shadow:none}.quick-tags{margin-top:14px}.quick-tags a,.chip{padding:7px 12px;border-radius:999px;font-size:13px;font-weight:600}.stats{margin-top:22px}.stat{padding:12px 16px;border-radius:16px}.stat b{font-size:22px;font-weight:750}.stat small{font-size:12.5px;font-weight:500}.fk-hero-right{margin-top:-90px;min-height:430px}.hero-food-wrap{height:430px}.main-food-card{width:410px;height:410px}.mini-food{width:104px;height:104px}.floating-card,.food-info-card{font-size:13px;font-weight:650;border-radius:16px;padding:12px 15px}

/* Sections and cards */
.section{padding:56px 7%}.section-head{margin-bottom:24px}.section-kicker{font-size:13px;font-weight:700;margin-bottom:7px}.section h2{font-size:clamp(24px,2.5vw,34px)!important;line-height:1.18!important;letter-spacing:-.7px!important;font-weight:750!important}.section p{font-size:14.5px;line-height:1.65;color:#6b7280}.category-slider,.grid,.event-grid{gap:18px}.premium-cat,.premium-res,.event-card{border-radius:20px;box-shadow:0 12px 32px rgba(15,23,42,.06)}.premium-cat{padding:22px}.cat-icon,.event-icon{width:54px;height:54px;border-radius:17px;font-size:22px;margin-bottom:14px}.premium-cat h3,.premium-res h3,.event-card h3{font-size:17px!important;line-height:1.3!important;font-weight:650!important;margin-top:0}.premium-cat p,.premium-res p,.event-card p{font-size:13.5px!important}.res-img{height:190px}.res-body{padding:16px!important}.res-meta,.meta,.muted{font-size:13px!important}.rating{font-size:13px;font-weight:650}.offer-card,.ai-banner,.booking-preview-card{border-radius:26px;padding:34px}.offer-card h2,.ai-banner h2,.booking-preview-card h2{font-size:clamp(24px,3vw,36px)!important;line-height:1.18!important;letter-spacing:-.7px!important}.event-card{padding:22px!important}

/* Forms/auth pages loaded through main CSS */
input,select,textarea{font-size:14px!important}.field input,.field select,.fk-input,.fk-select,.fk-textarea{height:46px!important;border-radius:12px!important;padding-top:0!important;padding-bottom:0!important;font-size:14px!important}.field i{left:15px}.auth-card,.card{border-radius:24px!important;padding:30px!important}.auth-card h2,.card h1,h1{letter-spacing:-.6px}.auth-card h2{font-size:28px!important;font-weight:750!important}.auth-left h1{font-size:42px!important;letter-spacing:-1.2px!important}.auth-left p,.muted{font-size:14.5px!important}.auth-btn,.btn{min-height:44px!important;height:auto!important;font-size:14.5px!important;font-weight:650!important;border-radius:12px!important}.tabs a{font-size:14px;font-weight:650!important;padding:11px!important;border-radius:12px!important}.badge{font-size:12px;font-weight:650!important;padding:7px 12px!important}.alert{font-size:14px;font-weight:600!important;border-radius:12px!important}.small-link,.back{font-size:14px;font-weight:650!important}

/* Tables and dashboards on public pages */
.table,table{font-size:14px}th{font-size:12px!important;font-weight:650!important;letter-spacing:.25px}td{font-size:14px!important}.dash-card,.summary-card,.profile-card{border-radius:20px!important;box-shadow:0 12px 32px rgba(15,23,42,.06)!important}

@media(max-width:900px){.fk-hero{padding:44px 22px 52px}.fk-hero-right{margin-top:0}.main-food-card{width:330px;height:330px}.hero-food-wrap{height:350px}.section{padding:48px 22px}.brand,.premium-brand{font-size:22px!important}}
@media(max-width:600px){html{font-size:14px}.fk-hero h1{font-size:34px!important}.fk-hero p{font-size:14.5px!important}.section h2{font-size:24px!important}.main-food-card{width:245px;height:245px}.auth-card,.card{padding:24px 18px!important}.auth-left h1{font-size:32px!important}.top-nav,.premium-nav{height:64px}}

/* AJAX cart toast */
#fkCartToast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);z-index:99999;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:#111827;color:#fff;box-shadow:0 20px 55px rgba(15,23,42,.35);opacity:0;pointer-events:none;transition:.28s;font-weight:800}
#fkCartToast.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
#fkCartToast i{color:#22c55e}#fkCartToast span{font-size:14px}#fkCartToast a{padding:8px 12px;border-radius:12px;background:linear-gradient(135deg,#ff3d2e,#ff9f00);color:#fff;text-decoration:none;font-size:13px;font-weight:900}
.fk-add-cart-form button:disabled{opacity:.75;cursor:wait}
@media(max-width:560px){#fkCartToast{left:12px;right:12px;bottom:18px;transform:translateY(30px);justify-content:space-between}#fkCartToast.show{transform:translateY(0)}}


/* KumaunMart service switcher - matched to QuickMart */
.fk-service-switcher{
  position:relative;
  z-index:1001;
  padding:5px 20px;
  background:#fff;
  border-bottom:1px solid #e9ecef;
}
.fk-service-switcher-inner{
  max-width:1450px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.fk-service-tabs{display:flex;align-items:center;gap:8px;min-width:0}
.fk-service-tab{
  min-width:148px;
  height:44px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:5px 10px;
  border:1px solid transparent;
  border-radius:10px;
  background:#f5f6f6;
  color:#202124;
  text-decoration:none;
  transition:.2s ease;
}
.fk-service-tab:hover{background:#edf1ef;transform:translateY(-1px)}
.fk-service-tab.active{box-shadow:0 3px 10px rgba(15,23,42,.08)}
.fk-service-tab.food-active{background:#fff4eb;border-color:#ffd0a0;box-shadow:0 3px 10px rgba(234,88,12,.08)}
.fk-service-tab.grocery-active{background:#ecfff4;border-color:#a6e6bf;box-shadow:0 3px 10px rgba(10,163,79,.08)}
.fk-service-tab.cab-active{background:#fff9e3;border-color:#f2dc78;box-shadow:0 3px 10px rgba(202,138,4,.08)}
.fk-service-icon{
  width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;
  border-radius:8px;background:#fff;font-size:13px
}
.fk-food-icon{color:#ea580c}.fk-grocery-icon{color:#0aa34f}.fk-cab-icon{color:#ca8a04}
.fk-service-tab span:last-child{display:flex;flex-direction:column;line-height:1.05}
.fk-service-tab strong{font-size:12px;font-weight:800}
.fk-service-tab small{margin-top:2px;color:#6b7280;font-size:8px;font-weight:600}
.fk-service-location-btn{
  min-width:210px;max-width:290px;height:44px;display:flex;align-items:center;gap:8px;
  border:0;border-radius:10px;background:#f7f8f8;color:#202124;padding:5px 10px;
  cursor:pointer;text-align:left
}
.fk-service-location-btn:hover{background:#eef2ef}
.fk-service-location-btn>i:first-child{color:#ea580c;font-size:15px}
.fk-service-location-btn>i:last-child{margin-left:auto;color:#6b7280;font-size:10px}
.fk-service-location-btn span{min-width:0;display:flex;flex-direction:column}
.fk-service-location-btn small{margin-bottom:1px;color:#6b7280;font-size:8px}
.fk-service-location-btn strong{max-width:190px;overflow:hidden;color:#202124;font-size:11px;white-space:nowrap;text-overflow:ellipsis}
@media(max-width:768px){
  .fk-service-switcher{padding:5px 7px;overflow:hidden}
  .fk-service-switcher-inner{gap:6px}
  .fk-service-tabs{flex:1;gap:5px;overflow-x:auto;scrollbar-width:none}
  .fk-service-tabs::-webkit-scrollbar{display:none}
  .fk-service-tab{min-width:max-content;height:36px;padding:4px 8px;gap:5px;border-radius:9px}
  .fk-service-icon{width:24px;height:24px;flex-basis:24px;border-radius:7px;font-size:11px}
  .fk-service-tab strong{font-size:10px}.fk-service-tab small{display:none}
  .fk-service-location-btn{min-width:36px;width:36px;height:36px;padding:0;justify-content:center;border-radius:9px;background:#f4f5f5}
  .fk-service-location-btn span,.fk-service-location-btn>i:last-child{display:none}
  .fk-service-location-btn>i:first-child{font-size:14px}
}


/* Service switcher positioned above the main KumaunMart header */
.fk-customer-layout .fk-service-switcher{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:10001;
  min-height:54px;
}
.fk-customer-layout .premium-nav{
  top:54px;
}
.fk-customer-layout .nav-backdrop{
  height:150px;
}
.fk-panel-layout .premium-nav{top:0}
.fk-panel-layout .nav-backdrop{height:96px}

@media(max-width:900px){
  .fk-customer-layout .premium-mobile-menu.show,
  .fk-customer-layout .premium-mobile-menu.active{
    top:132px;
  }
}

@media(max-width:768px){
  .fk-customer-layout .fk-service-switcher{min-height:46px}
  .fk-customer-layout .premium-nav{top:46px}
  .fk-customer-layout .nav-backdrop{height:110px}
  .fk-customer-layout .premium-mobile-menu.show,
  .fk-customer-layout .premium-mobile-menu.active{top:116px}
}

@media(max-width:560px){
  .fk-customer-layout .premium-nav{top:46px;height:64px}
  .fk-customer-layout .nav-backdrop{height:110px}
  .fk-panel-layout .nav-backdrop{height:82px}
}
