/* ===========================
   Debonairs Menu — Page Styles
   Scope everything to .menu
   =========================== */

.menu {
  /* Brand palette (tweak if needed) */
  /* --deb-black: #000000;
  --deb-charcoal: #111111;
  --deb-grey-900: #1a1a1a;
  --deb-grey-700: #3d3d3d;
  --deb-grey-400: #9a9a9a;
  --deb-grey-200: #e9e9e9;
  --deb-white: #ffffff;
  --deb-yellow: #ffcc00; /* brand yellow */
  /*--deb-yellow-ink: #f2b600; /* darkened for text/icons */

  /*--card-radius: 16px;
  --pill-radius: 999px;
  --shadow-sm: 0 6px 16px rgba(0,0,0,.08);
  --shadow-md: 0 10px 30px rgba(0,0,0,.12);

  --h2-size: clamp(22px, 2.2vw, 32px);
  --h3-size: clamp(16px, 1.6vw, 20px);
  --body: 15px;
  --mini: 12px;

  color: var(--deb-grey-900);
} */ 

--deb-grey-200: #e9e9e9;
}

.brx-content {
  overflow:hidden
}

/* ---------- Section headers ---------- */
.menu .menu__section {
  padding-top:0;
  padding-bottom:80px; 

}

.menu .menu__section:first-of-type {
  border-top: 0;
}

.menu .menu__head {
  margin-bottom: 42px;
  background: #EAB817;
  padding:30px 22px
}

.specials-banner {
  background-color:#595E61 ;
  padding:30px 0
}



.menu .menu__title {
  margin: 0 0 4px 0;
  font-size: var(--text-2xl);
  line-height: 1;
  font-weight: 700;
  text-transform: uppercase;
  color: #121311
}

.menu .menu__sub {
  margin: 0;
  font-size: 14px;
  color: var(--deb-grey-700);
}

/* ---------- Item grid ---------- */
.menu .menu__grid {
  display: grid;
  grid-template-columns: repeat(var(--cols, 3), minmax(0,1fr));
  gap: 40px;
  width:100%
}

@media (max-width: 767px) {
  .menu .menu__grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* ---------- Item card ---------- */
.menu .menu-card {

  display: flex;
  flex-direction: column;
  color:white;
  max-width:250px;

}

.menu img {
  border-radius:12px !important
}

.menu__section > .menu__body {
  outline:none !important;

}

.menu__body{
  padding: 0 22px
}


.menu .menu-card__media {
  aspect-ratio: 224 / 205;
  margin-bottom:var(--space-xs)

}
.menu .menu-card__img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}

.menu .menu-card__top {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 12px;
}

.menu .menu-card__title {
  font-size: 28px;
  line-height: 1.2;
  font-weight: 800;
  color:white;
  margin: 0;
}

.menu .menu-card__badges {
  display: flex; flex-wrap: wrap; gap: 6px;
}

.menu .badge {
  display: inline-flex; align-items: center;
  height: 24px; padding: 0 10px;
  font-size: 11px; font-weight: 800; letter-spacing: .3px;
  text-transform: uppercase;
  border-radius: var(--pill-radius);
  background: var(--deb-yellow);
  color: var(--deb-black);
  white-space: nowrap;
}

.menu .menu-card__desc {
  padding: 6px 16px 10px 16px;
  margin: 0;
  font-size: var(--body);
  color: var(--deb-grey-700);
  flex-grow: 1;
}

/* ---------- Price grid (S/M/L/TD) ---------- */
.menu .price-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 0;
  row-gap:10px
}


/* ---- Specific grid cards ----- */
.card-cocktailcheesegrillers .price-grid {
  grid-template-columns: 1fr;

}

.card-chickenshots .price-grid {
  grid-template-columns: 1fr;

}



.menu .price-cell:last-child { border-right: 0; }

.menu .price-label {

  margin-bottom: 4px;
}

.menu .price-val {
  font-weight: 700; 
  font-size: var(--text-l); 
  line-height: 1;
  color: #EAB817
}

.menu .price-cell .kj {
  display: block;
  font-size: 11.4px;
  color: white;
  margin-top: 4px;
}


.menu .kj {
  margin-top:7px;
  font-size:11.4px;
  font-weight:500
}



/* 4-column variant if you ever output a TD size */
.menu .menu-card .price-grid.cols-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }

/* ---------- Add-on grid (toppings) ---------- */
.menu .menu__grid--addons {
  grid-template-columns: repeat(6, minmax(0,1fr));
}
.menu .menu__grid--addons .menu-card {
  text-align: center;
  color:white
}
.menu .menu__grid--addons .menu-card__media { aspect-ratio: 1 / 1; }
@media (max-width: 767px) {
  .menu .menu__grid--addons { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .menu .menu__grid--addons { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

/* ---------- Deals / Upsell blocks ---------- */
.menu .menu-deals {
  margin: 16px 0 6px 0;
  display: grid; gap: 14px;
}

.menu .deal-card {
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 16px;
  background: #fff;
  border-radius: var(--card-radius);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
@media (max-width: 540px) {
  .menu .deal-card { grid-template-columns: 1fr; }
}

.menu .deal-media { background: #f6f6f6; }
.menu .deal-img { width: 100%; height: 100%; object-fit: cover; display:block; }

.menu .deal-body { padding: 14px 16px; }

.menu .deal-title {
  margin: 0 0 4px 0;
  font-size: var(--h3-size);
  font-weight: 900;
  color: var(--deb-black);
  text-transform: uppercase;
}
.menu .deal-sub {
  font-size: 13px; color: var(--deb-grey-700); margin-bottom: 8px;
}

.menu .deal-includes {
  list-style: none; margin: 10px 0 0 0; padding: 0;
  display: grid; gap: 4px;
  font-size: 14px; color: var(--deb-grey-900);
}



/* ---------- “Meal It!” strip style (if you output one) ---------- */
.menu .meal-strip,
.menu .menu-spotlight .spot-wrap {
  margin: 14px 0;
}

.menu .meal-strip {
  background: var(--deb-black);
  color: var(--deb-white);
  border-radius: var(--card-radius);
  padding: 12px 16px;
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px;
  box-shadow: var(--shadow-sm);
}

.menu .meal-strip .label {
  display: inline-block;
  padding: 6px 12px;
  background: var(--deb-yellow);
  color: var(--deb-black);
  font-size: 12px; font-weight: 900; text-transform: uppercase;
  border-radius: var(--pill-radius);
  letter-spacing: .3px;
}

/* ---------- Spotlight tiles (top hero blocks) ---------- */
.menu .menu-spotlight .spot-wrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
}
@media (max-width: 720px) {
  .menu .menu-spotlight .spot-wrap { grid-template-columns: 1fr; }
}

.menu .spot-tile {
  position: relative; overflow: hidden;
  border-radius: var(--card-radius);
  box-shadow: var(--shadow-md);
  background: #000;
}
.menu .spot-link { color: inherit; text-decoration: none; display: grid; grid-template-rows: auto 1fr; height: 100%; }
.menu .spot-media { aspect-ratio: 16/9; }
.menu .spot-img { width: 100%; height: 100%; object-fit: cover; display:block; }

.menu .spot-meta {
  padding: 14px 16px;
  background: var(--deb-black);
  color: var(--deb-white);
}
.menu .spot-title {
  margin: 0 0 4px 0; font-size: 18px; font-weight: 900; text-transform: uppercase;
}
.menu .spot-price { font-weight: 900; color: var(--deb-yellow); }
.menu .spot-cta {
  display: inline-block; margin-top: 6px;
  background: var(--deb-yellow); color: var(--deb-black);
  font-weight: 900; font-size: 12px; text-transform: uppercase; letter-spacing: .3px;
  padding: 8px 12px; border-radius: var(--pill-radius);
}

/* ---------- Utilities ---------- */
.menu .is-muted { color: var(--deb-grey-400); }
.menu .sr-only {
  position: absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* ---------- Print-friendly tweaks ---------- */
@media print {
  .menu { color: #000; }
  .menu .menu-card,
  .menu .deal-card { box-shadow: none; border: 1px solid #ccc; }
  .menu .meal-strip { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .menu .spot-wrap { grid-template-columns: 1fr; }
}

/* ===========================
   TOPPINGS CAROUSEL layout
   =========================== */

.menu .menu__toppings {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 0;
  width:100%
}

.menu .toppings-row {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 16px;
  align-items: flex-start;
  border-bottom: 1px solid var(--deb-grey-200);
  padding-bottom: 24px;
  width:100%
}

.cheese-img {
  max-height:150px;
  width:auto
}
/* Center prices and carousel for single-item rows */
.menu .toppings-row--single {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin:auto;
  justify-items: center;
  align-items: center;

}

.menu .toppings-row--single .toppings-prices {
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  margin-left:auto
}

.menu .toppings-row--single .toppings-carousel {
  max-width:45%;
  margin-right:auto
}

.menu .toppings-row:last-child {
  border-bottom: none;
  gap:100px;
  grid-template-columns: 250px 1fr;
}

/* Left side: size pills + prices */
.menu .toppings-prices {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start;
  justify-content: space-between;
  
}

.menu .toppings-prices .size-price {
color: #EAB817;
  font-size:32px !important
}

.menu .size-price {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  flex-direction:column
}

.menu .size-price .pill--solo {
  width: 32px;
  height: 32px;
  padding: 0;
  font-size: 12px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin:auto;
  margin-bottom:20px
}

.menu .size-price strong {
  font-weight: 700;
  color: var(--deb-yellow);
 
}

/* Right side: carousel container */
.menu .toppings-carousel {
  position: relative;
  flex: 1;
  overflow: hidden;
  width: 100%;
}

/* Banner style for last row (cheese) */
.menu .toppings-carousel--banner {
  position: relative;
}

.menu .toppings-carousel--banner .banner-card {
  display: flex;
  gap: 60px;
  align-items: center;
  background: #EAB817;
  border-radius: 16px;
  padding: 32px 40px;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.menu .banner-card .banner-content {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.menu .banner-text {
  font-size: 32px;
  font-weight: 900;
  color: #000;
  text-transform: uppercase;
  line-height: 1.2;
  white-space: nowrap;
}

.menu .banner-card .swiper {
  flex: 1;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
}

.menu .banner-card .swiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
}



.menu .toppings-carousel .swiper {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0 ;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
}

.menu .toppings-carousel .swiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
}

/* Center single item carousel */
.menu .toppings-carousel .swiper-wrapper:has(.swiper-slide:only-child) {
  justify-content: center;
}

.menu .toppings-carousel .swiper-slide {
  width: auto;
  height: auto;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  min-width: auto;
}

.menu .topper {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: transparent;
  border-radius: 0;
  padding: 0;
  transition: none;
  width: 150px;
  flex-shrink: 0;
}
.menu .topper:hover {
  transform: none;
  box-shadow: none;
}

.menu .topper-media {
  width: 150px;
  height: 150px;
  margin-bottom: 8px;
  border-radius: 8px;
  overflow: hidden;
}

.menu .topper-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.menu .topper-name {
  font-weight: 600;
  color: var(--deb-white);
}

/* Navigation arrows */
.menu .carousel-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background: none;
  border: none;
  cursor: pointer;
  color: white;
  font-size: 34px;
  font-weight: 900;
  padding: 0;
  z-index: 10;
  transition: color .2s ease;
}
.menu .carousel-nav:hover {
  color: #f5c600;
}

.menu .carousel-nav--prev {
  left: 0;
}
.menu .carousel-nav--prev::before {
  content: "‹";
}

.menu .carousel-nav--next {
  right: 0;
}
.menu .carousel-nav--next::before {
  content: "›";
}

/* ===========================
   DRINKS layout
   =========================== */

.menu .menu__drinks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: flex-start;
  width:100%
}

.menu .drinks-hero {
  width: 100%;
  height: auto;
}

.menu .drinks-hero__img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  object-fit: cover;
  aspect-ratio: 741 / 650;
  max-height:510px
}

.menu .drinks-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.menu .drink-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
  padding:  0;
}

.menu .drink-row:last-child {
  border-bottom: none;
}

.menu .drink-name {
  font-size: 28px;
  font-weight: 600;
  color: white;
  text-transform: uppercase;
  line-height: 1.2;
}

.menu .drink-price {
  font-size: var(--text-l);
  font-weight: 900;
  color: #EAB817;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .menu .menu__drinks {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 640px) {
  .menu .menu__drinks {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  .menu .drink-row {
    gap: 16px;
  }
}

/* Dark body + white text for this section */
.menu .menu__section[data-layout="combo-grid"] {
  color: #ffffff;
}

.menu .menu__section--combos .combo-media {
  margin-bottom:0
}

.menu .menu__section--combos .combo-new-badge {
  margin-bottom:-14px
}


/* Two-column grid of combos */
.menu .menu__combo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px 64px;
}

@media (max-width: 767px) {
  .menu .menu__combo {
    gap: 32px;
  }
}

/* Individual combo card */
.menu .combo-card {
  display: flex;
  flex-direction: column;
}

/* Image block */
.menu .combo-media {
  margin-bottom: 18px;
  aspect-ratio: 558 / 280;
}

.menu .combo-img {
  width: 100%;
  height: auto;
  display: block;
  /* optional: control aspect ratio to match Figma */

}

.menu .list-head__single .list-head__img {
   aspect-ratio: 1200 / 308 !important;
}

/* Body: left content + right price */
.menu .combo-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}

.menu .combo-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

.menu .combo-new-badge {
  width: 28px;
  height: auto;
  display: block;
  border-radius: 0 !important
}

.menu .combo-title {
  margin-bottom: 0;
  font-size: var(--text-xl);
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
}

.menu .combo-desc {
  margin-bottom: 0;
  color: #ffffff;
}

/* Price – big yellow, bottom of card */
.menu .combo-price {
  margin-top: 0;
  font-size: var(--text-xl);
  font-weight: 900;
  color: #EAB817; /* brand yellow */
  white-space: nowrap;
}

.menu .combo-cta {
  display: inline-block;
  margin-top: 16px;
  background: var(--deb-yellow);
  color: var(--deb-black);
  padding: 12px 24px;
  border-radius: var(--pill-radius);
  font-weight: 900;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  text-decoration: none;
  transition: background 0.2s ease;
}

.menu .combo-cta:hover {
  background: #f2b600;
}

/* Featured deals card - standard combo grid layout */



.menu__section--featured-deals .combo-media .combo-img {
aspect-ratio: 624 / 330;
object-fit: contain;
}

.menu__section--featured-deals .combo-media  {
width:auto;
height:100%
}


.menu__section--featured-deals .combo-body {
flex-direction:row;
gap:48px
}

.menu__section--featured-deals .combo-title, .menu__section--featured-deals .combo-price{
font-size: var(--text-2xl);
}



.menu__featured-deals {
  width:100%
}
.menu .featured-deal-card {
  display: flex;
  flex-direction: column;
  align-items:start
}

.menu .featured-deal-card .combo-body {
  margin-bottom:16px
}

/* Specials banner - gray header above section */
.menu .specials-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

#specialty-pizzas .menu__banner-row--after-items .sec-banner:first-of-type
{
  max-width:820px !important;
  border-radius: 0 !important;
  margin-bottom:30px;
  margin-left:auto;
  margin-right:auto
}

#specialty-pizzas .menu__banner-row--after-items .sec-banner:first-of-type img
{
  border-radius: 0 !important;
}


.menu .specials-banner__content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.menu .specials-banner__label {
  font-size: var(--text-3xl);
  font-weight: 600;
  letter-spacing: 0.5px;
  color: white;
  text-transform: uppercase;
  font-family: "Barlow Condensed";
}

/* Specials card - unique layout for online exclusives */
.menu .specials-body {
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}

.menu .specials-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

/* you already have .price-cents globally – it will apply here */


/* ===========================
   LIST layout (Real Deal look)
   =========================== */

   /* Header images above LIST layout */

.menu .menu__list-head { margin-bottom: 16px; }
.menu .menu__list-head .list-head__img {
  aspect-ratio: 626 / 315;
  object-fit:fill;
  border-radius:0
}
.menu .menu__list-head .list-head__single { display: block; }
.menu .menu__list-head .list-head__split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
@media (max-width: 900px) {
  .menu .menu__list-head .list-head__split { grid-template-columns: 1fr; }
}

 @media screen and (min-width:768px) {
    .menu__mobile-banner-image {
      display: none;
    }
  }

@media (max-width: 767px) {
  .menu .menu__list-grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  
  .menu .menu__list-grid .menu__list-head {
    grid-column: 1;
  }
  
  .menu .menu__list-grid .menu__list-head .list-head__split .list-head__cell:nth-child(2) {
    display: none;
  }
  
  .menu .menu__mobile-banner-image {
    display: none;
    margin-bottom: 16px;
  }

  
  .menu .menu__mobile-banner-image .list-head__img {
    aspect-ratio: 330 / 150;
    object-fit: cover;
    width: 100%;
  }

  .menu__section--clazzics  .menu__mobile-banner-image .list-head__img {
     aspect-ratio: 330 / 180;
    object-fit: cover;
    width: 100%;
  }
  
  .menu .menu__list-grid .menu__mobile-banner-image {
    display: block;
    grid-column: 1;
  }
}

/* Pills row shown once (S / M / L ...) - styling moved to sizes-col context below */

.menu__section--pizzawrap .menu__list-sizes {
display:none !important
}

/* List container = multi-column grid of rows */
.menu .menu__list {
  display: grid;
  grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr));
  width:100%;
  gap:28px
}

@media (max-width: 767px) {
  .menu .menu__list { grid-template-columns: 1fr; gap: 16px; }
}

/* Each item row: left = meta, right = S/M/L stacks */
.menu .menu-row {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 16px 28px;
}

/* Titles + desc (left column) */
.menu .row-title {
  margin: 0 0 6px 0;
  line-height: 1.2;
  font-weight: 900;
  color: white;
  text-transform: uppercase;
  align-items: center;

}

.menu .inline-icon {
  width: 16px;
  height: auto;
  display: inline-block;
  vertical-align: middle;
  border-radius: 0 !important
}

.menu .inline-icon.spice-icon {
  width: 16px;
}

.menu .inline-icon.veggie-icon {
  width: 18px;
}

.menu .inline-icon.new-icon {
  width: 20px;
}

.menu .row-title-with-icons {
  display: flex;
  align-items: start;
  gap: 8px;
  flex-wrap: wrap;
}

.menu .spice-icons,
.menu .item-icons {
  display: flex;
  gap: 4px;
  align-items: center;
  border-radius: 0 !important
}

.menu .spice-icon {
  width: 18px;
  height: auto;
  display: inline-block;
}

.menu .item-icon {
  width: 20px;
  height: 20px;
  display: inline-block;
}

.menu .new-badge-left {
  order: -1;
  width:28px;
  height:auto;
  border-radius:0 !important;
}

.menu .list-col-intro {
  color:white;
  max-width:80%;
}

.menu .list-col-head--sub {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: start !important;
  gap: 16px 28px !important;
}

.list-col-head {
  display:grid;
  grid-template-columns: 1fr 35%;
}

.list-col-title {
  margin-bottom: var(--space-s);
  color: #EAB817;
  font-size:25px
}
.menu .row-desc {
  margin: 0;
  font-size: 14px;
  color: white;
}

/* Price stacks (right column) - REMOVED - using unified rule below */

.menu .row-prices .stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 72px; /* keeps columns aligned visually */
}

/* The circular S / M / L pills */
.menu .row-prices .pill {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #EAB817;          /* brand gold */
  color: #121311;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .4px;
  text-transform: uppercase;
  margin-bottom: 6px;
}

/* The price under the pill */
.menu .row-prices .val {
  font-weight: 800;
  font-size: var(--text-l);
  line-height: 1;
  color: #EAB817;
}

/* Optional: slightly tighter section look when using list */
.menu .menu__section[data-layout="list"] .menu__body { padding-top: 12px; }

/* Grid wrapper that controls placement of head images, two pill rows, and the list */
.menu .menu__list-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:20px;
  width:100%
}

/* header images span both columns */
.menu .menu__list-head{ grid-column:1 / -1; }
.menu .menu__list-head .list-head__split{
  display:grid; grid-template-columns:repeat(2,1fr); gap:16px;
}

.size-item_wrap {
  min-width:72px;
  display:flex
}

.size-item_wrap img {
  margin:auto
}

/* the two one-time pill rows – one per column, right-aligned to the price column */
.menu .menu__list-grid .sizes-col--left  { grid-column:1; }
.menu .menu__list-grid .sizes-col--right { grid-column:2; }
.menu .sizes-col--left .menu__list-sizes,
.menu .sizes-col--right .menu__list-sizes {
  display: grid;
  grid-template-columns: 1fr 35%;
  gap: 0;
  margin-bottom: 12px;
  align-items: center;
  width: auto;
  margin-left: 0;
}

.menu .menu__list-sizes__empty {
  /* Empty placeholder for left column */
}

.menu .menu__list-sizes__pills {
  display: flex;
  gap: 0;
  align-items: center;
  justify-content: flex-end;
}

.menu .pill.pill--solo{
  display:inline-grid; place-items:center;
 border-radius:50%;
  background:#EAB817; color:#121311;
  font-size:20px; font-weight:900; letter-spacing:.4px; text-transform:uppercase;
  margin-left: auto;
}

.pill--solo.size--s {
  width:33px;
  height:33px
}

.pill--solo.size--m {
  width:36px;
  height:36px
}

.pill--solo.size--l {
  width:41px;
  height:41px
}



.price-cents {
  font-size: 58%;
  vertical-align: top;
  position: relative;
  top: -0.3em; /* adjust this for perfect alignment */
  font-weight: 700;
}

/* Currency prefix (e.g. Rs.) — subscript style sitting below the number baseline */
.price-currency {
  font-size: 55%;
  vertical-align: bottom;
  position: relative;
  bottom: 0.1em;
  font-weight: 700;
  margin-right: 1px;
}

/* Widen price stacks to fit currency prefix + digits */
.menu .row-prices {
  grid-template-columns: repeat(var(--size-count, 3), 88px);
}

@media screen and (max-width: 1024px) {
  .menu .row-prices {
    grid-template-columns: repeat(var(--size-count, 3), 64px);
  }
}

/* the list itself spans both columns but renders two columns of rows */
.menu .menu__list-grid .menu__list{ grid-column:1 / -1; }

.menu .menu__list{
  display:grid;
  grid-template-columns: repeat(var(--cols,2), minmax(0,1fr));
  gap:28px;
}

.menu .menu-row{
  display:grid; grid-template-columns: 1fr auto;
  align-items:start; gap:16px 28px;
}

.menu .row-title{ margin:0 0 6px 0; font-size:19.8px; line-height:1.2; font-weight:700; text-transform:uppercase; }
.menu .row-desc { margin:0; font-size:16px; font-weight:500  }

/* .row-prices rule moved to unified section below (line ~1136) */


/* responsive collapse */
@media (max-width:767px){
  .menu .menu__list-grid{ grid-template-columns:1fr; column-gap:0 !important }
  .menu .menu__list-grid .sizes-col--right{ display:none; } /* keep one pill row */
  .menu .menu__list{ grid-template-columns:1fr; }
}

/* Ensure LIST rows are evenly distributed between the 2 columns */
@media (min-width: 1025px) {
  .menu .menu__list {
    grid-template-columns: 1fr 1fr;   /* two columns */
    grid-auto-flow: row dense;        /* fill gaps if any */
  }
  .menu .menu__list > .menu-row { 
    grid-column: auto;                /* reset any inherited placement */
    min-width: 0;                     /* prevent long content pushing */
  }
  .menu .menu__list > .menu-row:nth-child(odd)  { grid-column: 1; }
  .menu .menu__list > .menu-row:nth-child(even) { grid-column: 2; }
}

/* Keep single column on tablet/mobile (you already collapse here) */
@media (max-width: 1024px) {
  .menu .menu__list { grid-template-columns: 1fr; }
}


.menu .menu__list {
  display: grid;
  grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr));
  gap: 32px;
}



.menu .menu__list {
  display:grid;
  grid-template-columns:repeat(var(--cols,2), minmax(0,1fr));
  gap:32px;
}
.menu .menu__col { display:flex; flex-direction:column; gap:16px; }

.menu__head--bar .brxe-container {
  align-items:center
}

.list-head__cell img {
  width:100%;
  aspect-ratio: 626 / 280;
  border-radius:12px;
  height:100%
}


.menu .row-meta { margin-bottom:6px; }
/* .row-prices rule moved to unified section below */

.menu .menu__list { display:grid; grid-template-columns:repeat(var(--cols,2), minmax(0,1fr)); gap:40px; }
.menu .menu__col  { display:flex; flex-direction:column; gap:16px; min-width:0; }

/* Size header (S/M/L) aligned right; same track count/gaps as row-prices */
.menu .size-head { 
  display:grid;
  grid-template-columns:1fr 1fr; 
  justify-content:end; 
  gap:0;
  align-content:center;
  justify-items:center;
  width:25%;
  margin-left:auto
}

/* Size pill images */
.menu .size-pill-img {
  height: auto;
  display: block;
  object-fit: contain;
}

/* Specific widths for each size */
.menu .size-pill-img.size-s {
  width: 33px;
}

.menu .size-pill-img.size-m {
  width: 36px;
}

.menu .size-pill-img.size-l {
  width: 41px;
}

/* Pill styling for size letters and CM */
.menu .pill.pill--solo {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  line-height: 1;
}

.menu .pill-letter {
  font-size: 12px;
  font-weight: 900;
}

.menu .pill-cm {
  font-size: 9px;
  font-weight: 600;
  opacity: 0.8;
}

/* Item row: left meta + right price grid */
.menu .menu-row { 
  display:grid; 
  grid-template-columns:1fr 35%; 
  align-items:start; 
  gap:24px; 
  padding-bottom:14px; 
}
.menu .menu-row--sizes {
  padding-bottom: 0;
  margin-bottom: 8px;
}
.menu .row-prices {
  display:grid;
  grid-template-columns:repeat(var(--size-count,3), 72px);
  justify-content:end;
  gap:2px;
}
.menu .stack { display:flex; flex-direction:column; align-items:center; }
.menu .stack--empty { opacity:0; } /* keep spacing but invisible */

/* LIST layout lanes: independent column heights */
.menu .menu__section[data-layout="list"] .menu__list {
  display: grid;
  grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr));
  gap: 32px;
}
.menu .menu__section[data-layout="list"] .menu__lane {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.menu .menu__section[data-layout="list"] .menu__lane .menu__col {
  width: 100%;
}

@media (max-width: 767px) {
  .menu .menu__section[data-layout="list"] .menu__list {
    grid-template-columns: 1fr;
  }
}

/* BASES LAYOUT */

.side-title {
  font-size:28px;
  margin-bottom:var(--space-2xs)
}

.side-media {
  margin-bottom: var(--space-xs);
}

.side-desc { 
  color:white
}

.menu__section--sides-desserts .menu-card__desc {
  display:none
}



/* BANNERS */
.menu__banner-row, .sec-banner { margin: 18px 0 0; grid-column: span 2 }
.sec-banner { display:flex; align-items:center; gap:20px; }
.sec-banner.has-divider { border-top:1px solid rgba(255,255,255,.15); padding-top:16px; }
.sec-banner.u-hide-m { display:block; } @media (max-width: 767px){ .sec-banner.u-hide-m{ display:none; } }

.sec-banner__img { width:100%; height:auto; display:block; border-radius:12px; }
.sec-banner__content {     display: flex
;
    gap: 18px;
    align-items: center;
    width: 100%;
    color:white !important;
    justify-content: space-between;
  font-size: var(--text-xl) }
.sec-banner__kicker { font-weight:800; opacity:.8; }
.sec-banner__title { margin:0; font-weight:900; letter-spacing:.2px; font-size:var(--text-2xl); color:white !important}
.sec-banner__body { max-width:60ch; opacity:.9; font-size:28px; font-family: "Barlow Condensed"; font-weight:700 }
.sec-banner__cta { margin-left:auto; white-space:nowrap; }

.sec-banner__prices {  display:flex; gap:28px; align-items:flex-end; font-size: var(--text-xl); }
.banner-price .val .price-cents { font-size:.6em; position:relative; font-size:16px  }
.sec-banner--banner_text {
  padding-left:10px !important;
  padding-right:10px !important
}


/* Real deal specific */

.menu__section--real-deal .menu__list-head .list-head__img {
  aspect-ratio: 626 / 315;
  object-fit:fill;
}

/* Toppings */

.menu__section--add-a-topping .menu__head .brxe-button {
  display:none
}

/* ----- RESPONSIVE ---- */ 

@media screen and (max-width:1024px) {
  .menu .menu-row {
    grid-template-columns: 1fr 40%;
  }

  .menu .row-prices {
    grid-template-columns: repeat(var(--size-count, 3), 50px);
}

.size-item_wrap {
  min-width:46px;
}
}

@media screen and (max-width:991px) {
  .menu .toppings-row, .menu .toppings-row.topping-row--banner {
    grid-template-columns: 1fr !important;
  }

  .menu .toppings-row.toppings-row--banner {
    gap:20px !important
  }

  .cheese-img {
    max-height:85px
  }

  .menu .toppings-prices{
    max-width:240px;
    margin-bottom:30px;
    margin:auto
  }

  .menu .toppings-carousel--banner .banner-card {
    flex-direction:column
  }

  .menu .toppings-row--single .toppings-carousel {
    margin-left:auto
  }
}

@media screen and (max-width:767px) {
  .menu .combo-media {
    aspect-ratio: auto;
  }

  .menu .menu__list-head .list-head__split  {
    grid-template-columns: 1fr;
  }

  .menu .menu__list-grid {
    gap:12px
  }

  .menu .list-head__cell {
    margin-bottom:0
  }

  .sec-banner--banner_image{
    padding:0 !important}

    .menu .drinks-hero__img {
      max-height:400px}

}

@media screen and (max-width:600px) {
  .sec-banner__content {
    flex-wrap:wrap
  }

  .sec-banner__body {
    order:3
  }

      .menu__section--featured-deals  .menu__combo {
        grid-template-columns: 1fr;
      }

      .menu .menu__col {
        gap:16px
      }

      .menu .menu-row {
padding-bottom:0  
      }
}

@media screen and (max-width:480px) {
 .menu__section--combos  .combo-card {
  flex-direction:row;
  border-bottom:1px solid #FFFFFF;
  padding-bottom:10px
 }

.menu__section--combos .menu__combo{
  grid-template-columns: 1fr;
 }

 .menu__section--combos .combo-media {
  order:2
 }

 .menu__section--combos .combo-body {
  gap:8px
 }

  .menu__section--combos .drinks-hero__img {
      max-height:210px}

      .menu .menu__section {
        padding-bottom:34px
      }

      .sec-banner__title, .sec-banner__prices {
        font-size:30px
      }

.sec-banner__body {
  font-size:20px
}

.menu .menu__grid { grid-template-columns: 1fr; }
  .menu .menu-card {
    flex-direction:row
  }

  .menu .menu-card__media {
    flex-shrink:0;
    aspect-ratio:auto
  }

  .menu .menu-card__media img {
    width:170px;
    height:auto
  }

.menu .menu-card {
  max-width:none;
  gap:1rem
}

 .menu .menu__combo {
  grid-template-columns: 1fr;
}

.menu .menu__section--combos .combo-new-badge {
  margin-bottom:0
}

}