@import url('https://fonts.googleapis.com/css2?family=Bungee&family=Dancing+Script:wght@700&family=Poppins:wght@400;500;600;700&display=swap');

:root {
  --red: #f80c22; --red-dark: #c8001a; --red-light: #fde8ea;
  --navy: #1c3f8c; --navy-dark: #142d66; --navy-light: #dce4f5;
  --gold: #c9a84c; --gold-light: #f5e6c0; --cream: #f5f0e8;
  --white: #fff; --black: #1a1212; --grey: #e8ecef; --grey-mid: #9ba3af;
  --text: #1a1212; --text-mid: #3d3535; --text-light: #767676;
  --success: #22c55e; --border: #dde2e8;
  --font-pat: 'Bungee', Impact, sans-serif;
  --font-kitchen: 'Dancing Script', cursive;
  --font-body: 'Poppins', 'Helvetica Neue', Arial, sans-serif;
  --r-sm: 8px; --r-md: 12px; --r-lg: 18px; --r-xl: 28px; --r-full: 9999px;
  --shadow: 0 4px 16px rgba(28,63,140,.12);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--text);background:#fff;line-height:1.65;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}

/* ── NAV ── */
.nav{position:sticky;top:0;z-index:100;background:#fff;border-bottom:3px solid var(--red);box-shadow:var(--shadow);}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 20px;height:70px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{display:flex;align-items:center;gap:10px;}
.nav-logo img{height:52px;width:auto;}
.nav-wordmark{font-size:0;line-height:1;}
.nav-wordmark .np{font-family:var(--font-pat);font-size:20px;color:var(--red);letter-spacing:1px;text-shadow:1px 1px 0 rgba(0,0,0,.2);}
.nav-wordmark .nk{font-family:var(--font-kitchen);font-size:24px;color:var(--navy);}
.nav-links{display:flex;align-items:center;gap:24px;}
.nav-links a{font-size:14px;font-weight:600;color:var(--text-mid);transition:color .15s;}
.nav-links a:hover{color:var(--red);}
.nav-cta{background:var(--red);color:#fff!important;padding:9px 20px;border-radius:var(--r-sm);font-weight:700;box-shadow:0 4px 12px rgba(248,12,34,.3);transition:background .15s;}
.nav-cta:hover{background:var(--red-dark)!important;}
.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;}
.nav-toggle span{width:24px;height:2px;background:var(--text);border-radius:2px;transition:all .3s;}
.mobile-menu{display:none;position:fixed;top:70px;left:0;right:0;bottom:0;background:#fff;z-index:99;flex-direction:column;padding:30px 24px;gap:20px;}
.mobile-menu.open{display:flex;}
.mobile-menu a{font-size:18px;font-weight:600;color:var(--text);padding:12px 0;border-bottom:1px solid var(--border);}
.mobile-menu .m-cta{background:var(--red);color:#fff;text-align:center;border-radius:var(--r-sm);padding:14px;border:none;margin-top:10px;}

/* ── HERO ── */
.hero{background:var(--navy);padding:70px 20px;text-align:center;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 40%,rgba(248,12,34,.15) 0%,transparent 60%);}
.hero-content{position:relative;z-index:1;max-width:700px;margin:0 auto;}
.hero-eye{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;}
.hero-title{font-family:var(--font-pat);font-size:clamp(36px,6vw,60px);color:#fff;line-height:1.05;margin-bottom:6px;text-shadow:3px 3px 0 rgba(0,0,0,.3);}
.hero-title .red{color:var(--red);}
.hero-script{font-family:var(--font-kitchen);font-size:clamp(40px,7vw,70px);color:#fff;display:block;margin-bottom:14px;}
.hero-sub{font-size:clamp(14px,2vw,17px);color:rgba(255,255,255,.75);margin-bottom:28px;line-height:1.7;}
.hero-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.hero-tagline{font-size:11px;letter-spacing:2px;color:var(--gold-light);opacity:.8;margin-top:20px;font-weight:500;text-transform:uppercase;}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:var(--font-body);font-weight:700;font-size:14px;border-radius:var(--r-sm);border:2.5px solid transparent;cursor:pointer;padding:12px 26px;transition:all .15s;line-height:1;}
.btn-red{background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 4px 16px rgba(248,12,34,.28);}
.btn-red:hover{background:var(--red-dark);border-color:var(--red-dark);}
.btn-navy{background:var(--navy);color:#fff;border-color:var(--navy);}
.btn-navy:hover{background:var(--navy-dark);}
.btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.btn-outline:hover{background:rgba(255,255,255,.1);}
.btn-lg{font-size:16px;padding:15px 34px;border-radius:var(--r-md);}
.btn-sm{font-size:12px;padding:7px 16px;}
.btn-full{width:100%;}

/* ── SECTIONS ── */
.section{padding:70px 20px;}
.section-inner{max-width:1200px;margin:0 auto;}
.section-bg{background:var(--cream);}
.section-navy{background:var(--navy);}
.section-label{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin-bottom:6px;}
.section-title{font-family:var(--font-pat);font-size:clamp(24px,4vw,36px);color:var(--text);margin-bottom:10px;letter-spacing:.5px;}
.section-title-white{color:#fff;}
.section-sub{font-size:15px;color:var(--text-light);max-width:580px;margin-bottom:40px;line-height:1.7;}

/* ── TWO WAY CARDS ── */
.two-way{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px;}
.way-card{background:#fff;border-radius:var(--r-lg);border:1.5px solid var(--border);padding:28px;box-shadow:var(--shadow);transition:transform .2s;}
.way-card:hover{transform:translateY(-3px);}
.way-icon{font-size:32px;margin-bottom:12px;}
.way-title{font-family:var(--font-pat);font-size:18px;color:var(--text);margin-bottom:6px;letter-spacing:.4px;}
.way-price{font-family:var(--font-pat);font-size:22px;color:var(--red);margin-bottom:10px;}
.way-desc{font-size:13px;color:var(--text-mid);line-height:1.7;}

/* ── MENU CARD (current week) ── */
.menu-card{background:#fff;border-radius:var(--r-lg);border:2px solid var(--border);overflow:hidden;box-shadow:var(--shadow);}
.menu-card-hd{background:var(--navy);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--red);}
.menu-day{font-family:var(--font-pat);font-size:15px;color:#fff;letter-spacing:.5px;}
.menu-date-txt{font-size:12px;color:rgba(255,255,255,.6);margin-top:2px;}
.status-pill{font-size:10px;font-weight:700;padding:4px 12px;border-radius:var(--r-full);letter-spacing:.5px;text-transform:uppercase;}
.status-open{background:#16a34a;color:#fff;}
.status-sold{background:#dc2626;color:#fff;}
.menu-body{padding:16px 20px;}
.menu-section-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-light);margin:12px 0 6px;}
.menu-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--grey);font-size:14px;}
.menu-row:last-child{border-bottom:none;}
.dot-red{width:7px;height:7px;border-radius:50%;background:var(--red);flex-shrink:0;}
.dot-navy{width:7px;height:7px;border-radius:50%;background:var(--navy);flex-shrink:0;}
.dot-gold{width:7px;height:7px;border-radius:50%;background:var(--gold);flex-shrink:0;}
.menu-footer{display:flex;justify-content:space-between;align-items:center;padding-top:14px;margin-top:10px;border-top:1px solid var(--grey);}
.menu-price-big{font-family:var(--font-pat);font-size:24px;color:var(--red);}

/* ── FOOD GALLERY ── */
.food-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-top:30px;}
.food-card{background:#fff;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);transition:transform .2s;}
.food-card:hover{transform:translateY(-4px);}
.food-img{width:100%;height:220px;object-fit:cover;}
.food-info{padding:16px;}
.food-cat{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--red);margin-bottom:4px;}
.food-name{font-family:var(--font-pat);font-size:16px;color:var(--text);margin-bottom:4px;letter-spacing:.4px;}
.food-desc{font-size:13px;color:var(--text-light);line-height:1.6;}

/* ── CATERING PACKAGES ── */
.pkg-grid{display:flex;flex-direction:column;gap:14px;margin-top:30px;}
.pkg-card{border:2px solid var(--border);border-radius:var(--r-lg);padding:22px 26px;display:flex;justify-content:space-between;align-items:flex-start;background:#fff;transition:border-color .15s;}
.pkg-card:hover{border-color:var(--navy);}
.pkg-card.featured{border-color:var(--red);border-width:2.5px;}
.pkg-name{font-weight:700;font-size:16px;color:var(--text);margin-bottom:4px;}
.pkg-desc{font-size:13px;color:var(--text-light);line-height:1.6;}
.pkg-badge{font-size:10px;background:var(--red);color:#fff;padding:3px 10px;border-radius:var(--r-full);font-weight:700;margin-left:8px;vertical-align:middle;}
.pkg-price{font-family:var(--font-pat);font-size:20px;color:var(--red);white-space:nowrap;margin-left:16px;}
.pkg-pp{font-size:11px;color:var(--text-light);}

/* ── STATS ── */
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px;}
.stat-card{background:var(--cream);border-radius:var(--r-md);padding:20px;text-align:center;border:1px solid var(--gold-light);}
.stat-num{font-family:var(--font-pat);font-size:32px;color:var(--red);}
.stat-lbl{font-size:12px;color:var(--text-light);font-weight:600;letter-spacing:.3px;margin-top:4px;}

/* ── CTA BAND ── */
.cta-band{background:var(--navy);border-radius:var(--r-xl);padding:40px 36px;text-align:center;border-top:4px solid var(--red);}
.cta-band-h{font-family:var(--font-pat);font-size:clamp(20px,3vw,28px);color:#fff;margin-bottom:6px;}
.cta-band-sub{font-size:14px;color:rgba(255,255,255,.65);margin-bottom:22px;}
.cta-band-form{display:flex;gap:10px;max-width:400px;margin:0 auto;}
.cta-band-input{flex:1;height:44px;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25);border-radius:var(--r-sm);color:#fff;font-family:var(--font-body);font-size:14px;padding:0 14px;outline:none;}
.cta-band-input::placeholder{color:rgba(255,255,255,.4);}
.cta-tagline{font-size:11px;letter-spacing:2px;color:var(--gold-light);opacity:.75;margin-top:16px;font-weight:500;text-transform:uppercase;}

/* ── FORMS ── */
.form-wrap{background:#fff;border-radius:var(--r-lg);border:1px solid var(--border);padding:32px;box-shadow:var(--shadow);}
.form-title{font-family:var(--font-pat);font-size:22px;color:var(--text);margin-bottom:6px;}
.form-sub{font-size:13px;color:var(--text-light);margin-bottom:24px;}
.form-group{margin-bottom:16px;}
.form-label{display:block;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text-mid);margin-bottom:5px;}
.form-input,.form-select,.form-textarea{width:100%;padding:11px 14px;border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:14px;color:var(--text);background:#fff;transition:border-color .15s,box-shadow .15s;outline:none;}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(28,63,140,.12);}
.form-textarea{min-height:90px;resize:vertical;}
.form-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.form-hint{font-size:12px;color:var(--text-light);margin-top:4px;}
.form-error{font-size:12px;color:var(--red);margin-top:4px;display:none;}
.form-success{background:#dcfce7;border:1px solid #22c55e;border-radius:var(--r-sm);padding:14px 18px;color:#166534;font-size:14px;font-weight:600;display:none;margin-top:14px;}

/* ── ORDER SELECTOR ── */
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.choice-btn{border:1.5px solid var(--border);border-radius:var(--r-sm);padding:12px;cursor:pointer;background:#fff;text-align:left;transition:all .15s;font-family:var(--font-body);}
.choice-btn.selected{border-color:var(--red);border-width:2px;background:#fff8f8;}
.choice-btn-name{font-size:13px;font-weight:700;color:var(--text);}

/* ── ABOUT SECTION ── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.about-img-wrap{border-radius:var(--r-xl);overflow:hidden;border:4px solid var(--red);}
.about-img-wrap img{width:100%;height:420px;object-fit:cover;}
.about-text .section-sub{margin-bottom:20px;}
.journey-steps{display:flex;flex-direction:column;gap:12px;margin-top:20px;}
.journey-step{border:1.5px solid var(--border);border-radius:var(--r-md);padding:14px 18px;}
.journey-step.now{border-color:var(--red);border-width:2px;}
.j-era{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--red);}
.j-title{font-size:14px;font-weight:700;color:var(--text);margin-top:2px;}
.j-sub{font-size:12px;color:var(--text-light);margin-top:2px;}

/* ── CATERING GALLERY ── */
.cat-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px;}
.cat-img{width:100%;height:220px;object-fit:cover;border-radius:var(--r-md);}

/* ── FOOTER ── */
.footer{background:var(--black);padding:50px 20px 30px;}
.footer-inner{max-width:1200px;margin:0 auto;}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:40px;}
.footer-logo-wrap{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.footer-logo-wrap img{height:60px;}
.footer-brand .np{font-family:var(--font-pat);font-size:22px;color:var(--red);}
.footer-brand .nk{font-family:var(--font-kitchen);font-size:26px;color:#fff;}
.footer-desc{font-size:13px;color:rgba(255,255,255,.55);line-height:1.7;max-width:280px;}
.footer-tagline{font-size:10px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-top:10px;opacity:.7;}
.footer-col-title{font-family:var(--font-pat);font-size:14px;color:#fff;margin-bottom:14px;letter-spacing:.5px;}
.footer-links{display:flex;flex-direction:column;gap:8px;}
.footer-links a{font-size:13px;color:rgba(255,255,255,.55);transition:color .15s;}
.footer-links a:hover{color:var(--red);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;align-items:center;}
.footer-copy{font-size:12px;color:rgba(255,255,255,.4);}

/* ── PAGE BANNERS ── */
.page-banner{position:relative;background:var(--navy);padding:50px 20px;text-align:center;border-bottom:4px solid var(--red);}
.page-banner-title{font-family:var(--font-pat);font-size:clamp(28px,5vw,44px);color:#fff;text-shadow:2px 2px 0 rgba(0,0,0,.3);}
.page-banner-sub{font-size:15px;color:rgba(255,255,255,.65);margin-top:8px;}
.page-banner-back{display:none;position:absolute;top:18px;left:18px;color:#fff;font-size:14px;font-weight:600;text-decoration:none;letter-spacing:.3px;opacity:.9;}
.page-banner-back:hover{opacity:1;}
@media(max-width:1024px){.page-banner-back{display:inline-block;}}

/* ── KITCHEN STATUS LABEL (home menu card) ── */
.kitchen-status-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:4px;}
.kitchen-status-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#fff;opacity:.85;}

/* ── ORDER FLOW ── */
.order-steps{display:flex;gap:6px;margin-bottom:28px;}
.order-step{flex:1;height:4px;border-radius:2px;background:var(--grey);}
.order-step.done{background:var(--red);}
.order-step.active{background:var(--navy);}
.qty-row{display:flex;align-items:center;gap:14px;}
.qty-btn{width:36px;height:36px;border-radius:var(--r-sm);border:1.5px solid var(--border);background:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:700;}
.qty-num{font-family:var(--font-pat);font-size:22px;color:var(--text);min-width:30px;text-align:center;}
.total-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1.5px solid var(--border);margin-top:14px;}
.total-lbl{font-size:14px;color:var(--text-light);}
.total-amt{font-family:var(--font-pat);font-size:24px;color:var(--red);}

/* ── CONFIRMATION / THANK YOU ── */
.confirm-box{background:var(--navy);border-radius:var(--r-xl);padding:40px;text-align:center;color:#fff;}
.confirm-icon{width:64px;height:64px;border-radius:50%;background:var(--red);margin:0 auto 16px;display:flex;align-items:center;justify-content:center;}
.confirm-icon svg{width:32px;height:32px;}
.confirm-h{font-family:var(--font-pat);font-size:26px;color:#fff;margin-bottom:6px;}
.confirm-ref{font-size:13px;color:rgba(255,255,255,.6);margin-bottom:20px;}
.confirm-details{background:rgba(255,255,255,.08);border-radius:var(--r-md);padding:18px;text-align:left;margin-bottom:20px;}
.confirm-row{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.1);}
.confirm-row:last-child{border-bottom:none;}
.confirm-lbl{color:rgba(255,255,255,.6);}
.confirm-val{font-weight:700;}

/* ── SURVEY ── */
.survey-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;margin-bottom:16px;box-shadow:var(--shadow);}
.survey-q{font-size:13px;font-weight:700;color:var(--text);margin-bottom:10px;}
.stars-row{display:flex;gap:6px;margin-bottom:4px;}
.star-btn{width:36px;height:36px;border-radius:var(--r-sm);border:1.5px solid var(--border);background:var(--grey);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .15s;}
.star-btn.on{background:var(--red);border-color:var(--red);}
.scale-row{display:flex;gap:5px;flex-wrap:wrap;}
.scale-btn{width:38px;height:38px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--grey);cursor:pointer;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all .15s;font-family:var(--font-body);}
.scale-btn.on{background:var(--navy);color:#fff;border-color:var(--navy);}
.thumb-row{display:flex;gap:10px;}
.thumb-btn{flex:1;height:46px;border-radius:var(--r-sm);border:1.5px solid var(--border);cursor:pointer;font-size:13px;font-weight:700;background:var(--grey);display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-body);transition:all .15s;}
.thumb-btn.yes.on{background:#dcfce7;border-color:var(--success);color:#166534;}
.thumb-btn.no.on{background:var(--red-light);border-color:var(--red);color:var(--red-dark);}
.check-row{display:flex;flex-direction:column;gap:7px;}
.check-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1.5px solid var(--border);border-radius:var(--r-sm);cursor:pointer;background:var(--grey);transition:all .15s;}
.check-item.on{background:#eff6ff;border-color:var(--navy);}
.check-box{width:18px;height:18px;border-radius:4px;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s;}
.check-item.on .check-box{background:var(--navy);border-color:var(--navy);}
.check-lbl{font-size:13px;color:var(--text);}

/* ── ADMIN ── */
.admin-wrap{display:flex;min-height:100vh;}
.admin-sidebar{width:220px;background:var(--navy);flex-shrink:0;padding:0;}
.admin-logo-bar{padding:20px 18px;border-bottom:1px solid rgba(255,255,255,.1);}
.admin-logo-bar .np{font-family:var(--font-pat);font-size:16px;color:var(--red);}
.admin-logo-bar .nk{font-family:var(--font-kitchen);font-size:20px;color:#fff;}
.admin-logo-bar small{display:block;font-size:10px;color:rgba(255,255,255,.4);margin-top:2px;}
.admin-nav-items{padding:10px 0;}
.admin-nav-item{display:flex;align-items:center;gap:10px;padding:10px 18px;font-size:13px;color:rgba(255,255,255,.6);cursor:pointer;transition:all .15s;border-left:3px solid transparent;}
.admin-nav-item:hover{background:rgba(255,255,255,.06);color:#fff;}
.admin-nav-item.active{background:rgba(248,12,34,.15);color:#fff;border-left-color:var(--red);}
.admin-main{flex:1;padding:28px;background:#f4f5f7;overflow:auto;}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;}
.admin-page-title{font-family:var(--font-pat);font-size:22px;color:var(--text);letter-spacing:.5px;}
.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px;}
.metric-card{background:#fff;border-radius:var(--r-md);padding:18px;border:1px solid var(--border);box-shadow:var(--shadow);}
.metric-lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-light);margin-bottom:6px;}
.metric-val{font-family:var(--font-pat);font-size:26px;color:var(--red);}
.metric-delta{font-size:11px;color:var(--success);margin-top:3px;}
.admin-card{background:#fff;border-radius:var(--r-md);border:1px solid var(--border);padding:22px;box-shadow:var(--shadow);margin-bottom:20px;}
.admin-card-title{font-family:var(--font-pat);font-size:16px;color:var(--text);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--border);letter-spacing:.4px;}
.admin-table{width:100%;border-collapse:collapse;font-size:13px;}
.admin-table th{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-light);padding:6px 10px;border-bottom:2px solid var(--border);text-align:left;}
.admin-table td{padding:10px;border-bottom:1px solid var(--border);vertical-align:middle;}
.admin-table tr:last-child td{border-bottom:none;}
.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--r-full);font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}
.badge-new{background:#E6F1FB;color:#0C447C;}
.badge-conf{background:#FAEDE0;color:#712B13;}
.badge-prep{background:var(--gold-light);color:#7a5a10;}
.badge-ready{background:#dcfce7;color:#166534;}
.badge-done{background:var(--grey);color:var(--text-light);}
.badge-pop{background:var(--red);color:#fff;}
.status-select{border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 8px;font-size:12px;font-family:var(--font-body);}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  .nav-links{display:none;}
  .nav-toggle{display:flex;}
  .hero{padding:50px 20px;}
  .two-way{grid-template-columns:1fr;}
  .about-grid{grid-template-columns:1fr;}
  .about-img-wrap{max-height:280px;}
  .about-img-wrap img{height:280px;}
  .footer-top{grid-template-columns:1fr;}
  .form-2col{grid-template-columns:1fr;}
  .stats-row{grid-template-columns:1fr 1fr;}
  .cat-gallery{grid-template-columns:1fr 1fr;}
  .admin-wrap{flex-direction:column;}
  .admin-sidebar{width:100%;max-height:220px;overflow-y:auto;}
  .admin-metrics{grid-template-columns:1fr 1fr;}
  .footer-bottom{flex-direction:column;gap:10px;text-align:center;}
}
@media(max-width:480px){
  .stats-row{grid-template-columns:1fr;}
  .cat-gallery{grid-template-columns:1fr;}
  .food-grid{grid-template-columns:1fr;}
  .hero-btns{flex-direction:column;align-items:center;}
  .admin-metrics{grid-template-columns:1fr;}
}

/* ════════════════════════════════
   HERO CAROUSEL
════════════════════════════════ */
.hero-carousel {
  position: relative;
  height: 560px;
  overflow: hidden;
}
.hero-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.7s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-slide.active { opacity: 1; z-index: 1; }
.hero-slide-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(28,63,140,.82) 0%, rgba(10,20,60,.65) 100%);
}
.hero-carousel .hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 720px;
  padding: 0 24px;
}
.hero-badge-row { margin-bottom: 8px; }
.hero-week-badge {
  display: inline-block;
  background: var(--red);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 5px 16px;
  border-radius: var(--r-full);
}
.hero-prev, .hero-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background: rgba(255,255,255,.15);
  border: 1.5px solid rgba(255,255,255,.3);
  color: #fff;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  font-size: 22px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s;
  backdrop-filter: blur(4px);
}
.hero-prev { left: 20px; }
.hero-next { right: 20px; }
.hero-prev:hover, .hero-next:hover { background: rgba(248,12,34,.6); }
.hero-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  gap: 8px;
}
.hero-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255,255,255,.4);
  border: none;
  cursor: pointer;
  transition: background .2s, transform .2s;
}
.hero-dot.active { background: var(--red); transform: scale(1.2); }

/* ════════════════════════════════
   MENU SPLIT LAYOUT (home page this week section)
════════════════════════════════ */
.menu-split-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: start;
  margin-top: 24px;
}

/* ════════════════════════════════
   MENU PHOTO CAROUSEL
════════════════════════════════ */
.menu-photo-carousel {
  position: relative;
  border-radius: var(--r-xl);
  overflow: hidden;
  background: var(--black);
  aspect-ratio: 4/3;
  box-shadow: var(--shadow);
}
.menu-photo-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.6s ease;
  display: flex;
  flex-direction: column;
}
.menu-photo-slide.active { opacity: 1; }
.menu-photo-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.menu-photo-label {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 12px 16px;
  background: linear-gradient(transparent, rgba(0,0,0,.75));
  color: #fff;
  font-family: var(--font-pat);
  font-size: 16px;
  letter-spacing: .5px;
}
.mpc-prev, .mpc-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.3);
  color: #fff;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 18px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s;
}
.mpc-prev { left: 10px; }
.mpc-next { right: 10px; }
.mpc-prev:hover, .mpc-next:hover { background: rgba(248,12,34,.7); }
.mpc-dots {
  position: absolute;
  bottom: 48px;
  right: 12px;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.mpc-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.4);
  border: none;
  cursor: pointer;
  transition: background .2s;
}
.mpc-dot.active { background: var(--red); }

/* ════════════════════════════════
   CATERING GALLERY — uniform grid
════════════════════════════════ */
.cat-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 30px;
}
.cat-img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--r-md);
  display: block;
}

/* ════════════════════════════════
   RESPONSIVE UPDATES
════════════════════════════════ */
@media(max-width:768px) {
  .hero-carousel { height: 480px; }
  .menu-split-layout { grid-template-columns: 1fr; }
  .menu-photo-carousel { aspect-ratio: 16/9; }
  .cat-gallery { grid-template-columns: 1fr 1fr; }
}
@media(max-width:480px) {
  .hero-carousel { height: 420px; }
  .hero-prev, .hero-next { width: 36px; height: 36px; font-size: 18px; }
  .cat-gallery { grid-template-columns: 1fr; }
}

/* Catering gallery 4 columns uniform */
.cat-gallery-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 28px;
}
.cat-gallery-4 .cat-img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--r-md);
  display: block;
}

@media(max-width:768px) {
  .cat-gallery-4 { grid-template-columns: repeat(2, 1fr); }
  .menu-split-layout { grid-template-columns: 1fr; gap: 20px; }
}
@media(max-width:480px) {
  .cat-gallery-4 { grid-template-columns: 1fr; }
  .cat-gallery-4 .cat-img:nth-child(n+2) { display: none; }
}

/* Book catering btn alignment */
.pkg-book-btn-row {
  display: flex;
  justify-content: flex-end;
  margin-top: 24px;
}

/* ════════════════════════════════
   EDIT 3 UPDATES
════════════════════════════════ */

/* Active nav link underline */
.nav-links a.nav-active {
  color: var(--red);
  border-bottom: 2.5px solid var(--red);
  padding-bottom: 2px;
}

/* Footer — navy background, white text */
.footer {
  background: #1c3f8c !important;
}
.footer-desc,
.footer-copy,
.footer-links a,
.footer-col-title {
  color: #ffffff !important;
}
.footer-links a:hover { color: var(--gold) !important; }
.footer-tagline { color: var(--gold-light) !important; opacity: 1 !important; }
.footer-bottom { border-top-color: rgba(255,255,255,.15) !important; }

/* Catering packages — no hover state, uniform grey border, no featured red border */
.pkg-card {
  border: 1.5px solid #e8ecef !important;
  transition: none !important;
}
.pkg-card:hover {
  border-color: #e8ecef !important;
  box-shadow: none !important;
}
.pkg-card.featured {
  border: 1.5px solid #e8ecef !important;
  background: #fff !important;
}

/* Book Catering page — remove red border from summary cards */
.book-pkg-card {
  border: 1.5px solid #e8ecef !important;
  background: var(--cream) !important;
}

/* Email Us page */
.email-us-wrap { max-width: 600px; margin: 0 auto; }

/* ── AUTH & ACCOUNT PAGES ── */
.nav-active { color: var(--red) !important; }

/* Date picker cards on preorder page */
.date-card:hover {
  border-color: var(--red) !important;
  background: var(--red-light) !important;
}

/* Account avatar initial */
.account-avatar {
  width: 48px; height: 48px; border-radius: 50%;
  background: var(--navy);
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--font-pat); font-size: 20px; color: #fff;
}

/* Status pills on order history */
.status-pill-lg {
  font-size: 11px; font-weight: 700;
  padding: 5px 14px; border-radius: var(--r-full);
  letter-spacing: .5px; text-transform: uppercase;
  display: inline-block;
}

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