/* Relaxed but structured editorial pass for the public menu. */

/* Navigation: soft pills restore hierarchy without returning to heavy UI. */
.menu-tabs{
  gap:7px!important;
  padding:12px 14px!important;
  background:rgba(245,231,213,.97)!important;
  border-bottom:1px solid rgba(109,48,38,.08)!important;
  box-shadow:0 5px 16px rgba(65,38,28,.04)!important;
}
.menu-tabs button{
  border:1px solid rgba(109,48,38,.10)!important;
  border-radius:999px!important;
  background:rgba(255,248,238,.50)!important;
  box-shadow:none!important;
  padding:9px 13px!important;
  color:#4f342b!important;
  font-size:13px!important;
  font-weight:680!important;
}
.menu-tabs button.active{
  background:var(--menu-deep)!important;
  color:#fff8ef!important;
  border-color:var(--menu-deep)!important;
  box-shadow:0 3px 10px rgba(109,48,38,.12)!important;
}

.menu-content{padding-top:18px!important}

/* Cash benefit stays editorial and compact. */
.menu-cash-banner{
  width:max-content!important;
  max-width:100%!important;
  margin:2px auto 22px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  gap:11px!important;
}
.menu-cash-percent{padding:7px 11px!important;font-size:11px!important;letter-spacing:.05em!important}
.menu-cash-copy{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:16px!important;
  line-height:1!important;
  font-style:italic!important;
  font-weight:500!important;
  color:#70483c!important;
}

/* Families regain a subtle container: enough structure, no heavy card. */
.menu-family{
  position:relative!important;
  background:rgba(255,248,238,.34)!important;
  border:1px solid rgba(109,48,38,.075)!important;
  border-radius:24px!important;
  box-shadow:0 7px 22px rgba(75,43,34,.035)!important;
  padding:22px 14px 20px!important;
}
.menu-family-head{
  margin-bottom:18px!important;
  text-align:left!important;
}
.menu-family-head h2{
  text-align:left!important;
  font-size:clamp(40px,11vw,56px)!important;
  line-height:.94!important;
  color:#40251d!important;
}

/* Category grid: clear repeated rhythm = title / image / action. */
.menu-family:not(.merienda-family) .menu-accordions{
  gap:22px 14px!important;
  align-items:start!important;
}
.menu-family:not(.merienda-family) .menu-accordion{
  border-radius:14px!important;
}
.menu-family:not(.merienda-family) .menu-accordion summary{
  gap:7px!important;
  border-radius:14px!important;
}
.menu-family:not(.merienda-family) .menu-accordion-copy{
  height:42px!important;
  min-height:42px!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  text-align:left!important;
  padding:0 2px!important;
}
.menu-family:not(.merienda-family) .menu-accordion-title-row{
  width:100%!important;
  justify-content:flex-start!important;
  min-height:36px!important;
  align-items:flex-end!important;
}
.menu-family:not(.merienda-family) .menu-accordion-title{
  font-size:17.5px!important;
  line-height:1.04!important;
  color:#4b2b22!important;
}
.menu-family:not(.merienda-family) .category-image-placeholder{
  height:112px!important;
  min-height:112px!important;
  border-radius:13px!important;
  box-shadow:0 3px 10px rgba(75,43,34,.065)!important;
}
.menu-family:not(.merienda-family) .category-image-placeholder.has-image img{
  height:112px!important;
  min-height:112px!important;
}
.menu-family:not(.merienda-family) .menu-accordion summary::after{
  height:16px!important;
  margin-top:0!important;
  padding-left:2px!important;
  text-align:left!important;
  color:#956253!important;
  font-size:9.5px!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
  opacity:.9!important;
}
.menu-family:not(.merienda-family) .menu-accordion summary .gluten-free-label{
  left:7px!important;
  top:51px!important;
  padding:4px 7px!important;
  font-size:7px!important;
  box-shadow:0 2px 5px rgba(40,50,30,.12)!important;
}

/* Open category gets a clear but quiet panel. */
.menu-family:not(.merienda-family) .menu-accordion[open]{
  grid-column:1/-1!important;
  border-radius:16px!important;
  background:rgba(255,250,243,.86)!important;
  box-shadow:0 5px 15px rgba(75,43,34,.045)!important;
  border:1px solid rgba(109,48,38,.10)!important;
}
.menu-family:not(.merienda-family) .menu-accordion[open] summary{
  border-radius:16px 16px 0 0!important;
  background:rgba(247,232,218,.72)!important;
}
.menu-family:not(.merienda-family) .menu-accordion-body{border-top:1px solid rgba(109,48,38,.09)!important}

.menu-item{border-top-color:rgba(109,48,38,.10)!important}
.menu-subsection + .menu-subsection{border-top-color:rgba(109,48,38,.10)!important}
.hero-event-card{border-color:rgba(255,248,239,.30)!important;background:rgba(45,25,20,.50)!important;box-shadow:0 5px 14px rgba(20,10,7,.08)!important}
.menu-diet-note{border:1px solid rgba(86,99,71,.10)!important;box-shadow:none!important;background:rgba(230,234,217,.68)!important}
.menu-section.featured{border:1px solid rgba(109,48,38,.07)!important;box-shadow:0 6px 18px rgba(75,43,34,.035)!important;background:linear-gradient(180deg,rgba(241,214,172,.75) 0%,rgba(237,215,196,.68) 100%)!important}

@media(max-width:430px){
  .menu-content{padding-left:14px!important;padding-right:14px!important;padding-top:16px!important}
  .menu-tabs{padding-left:10px!important;padding-right:10px!important;gap:6px!important}
  .menu-tabs button{padding:9px 12px!important;font-size:12.5px!important}
  .menu-cash-banner{margin-bottom:22px!important}
  .menu-cash-copy{font-size:15px!important}
  .menu-family:not(.merienda-family){padding:20px 12px 18px!important}
  .menu-family:not(.merienda-family) .menu-family-head{margin-bottom:15px!important}
  .menu-family:not(.merienda-family) .menu-family-head h2{font-size:43px!important}
  .menu-family:not(.merienda-family) .menu-accordions{gap:20px 11px!important}
  .menu-family:not(.merienda-family) .menu-accordion-title{font-size:16.5px!important}
  .menu-family:not(.merienda-family) .category-image-placeholder,
  .menu-family:not(.merienda-family) .category-image-placeholder.has-image img{height:108px!important;min-height:108px!important}
  .menu-family:not(.merienda-family) .menu-accordion summary .gluten-free-label{top:49px!important}
}

@media(min-width:700px){
  .menu-family{padding:26px 22px 22px!important}
  .menu-family:not(.merienda-family) .category-image-placeholder,
  .menu-family:not(.merienda-family) .category-image-placeholder.has-image img{height:142px!important;min-height:142px!important}
  .menu-family:not(.merienda-family) .menu-accordion summary .gluten-free-label{top:79px!important}
}
