/* ==========================================================
   SR. BATATA — design tokens
   ========================================================== */

@font-face{
  font-family:"Baloo 2";
  src:url("fonts/baloo-2-latin-variable.woff2") format("woff2");
  font-style:normal;
  font-weight:500 800;
  font-display:swap;
}
@font-face{
  font-family:"Nunito";
  src:url("fonts/nunito-latin-variable.woff2") format("woff2");
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
}

:root{
  --red: #BF1622;
  --red-dark: #8C0E17;
  --red-darker: #5c0a10;
  --cream: #F8F0DC;
  --cream-dim: #efe4c6;
  --ink: #1C1310;
  --white: #FFFFFF;
  --cheddar: #F0A63B;
  --whatsapp: #2fae60;

  --font-display: "Baloo 2", system-ui, sans-serif;
  --font-body: "Nunito", system-ui, sans-serif;

  --radius-lg: 28px;
  --radius-md: 18px;
  --radius-sm: 12px;

  --shadow-hard: 6px 6px 0 var(--ink);
  --shadow-hard-sm: 4px 4px 0 var(--ink);
}

#menuSections img {
  width: 100%;
  height: 200px; 
  object-fit: cover;
  object-position: center;
}

/* ---- ESTILO ESPECIAL PARA O CARD DE COMBO LARGO ---- */
.menu-section--combo .carousel .card {
  flex: 0 0 min(100%, 340px);
}
.menu-section--combo .card__img-wrap {
  aspect-ratio: 16/9;
}
.menu-section--combo .card__img-wrap img {
  height: 180px;
}

/* ---- combo completo e monte sua batata ---- */
.combo-step{ margin-bottom: 1.2rem; }
.combo-step__title{
  font-family: var(--font-display); font-weight:700; font-size:.95rem;
  margin-bottom: .6rem; display:flex; align-items:center; gap:.5rem;
}
.combo-step__req{
  font-family: var(--font-body); font-size:.68rem; font-weight:800;
  text-transform:uppercase; letter-spacing:.03em; color:#8a5300;
  background:#fbe7c6; padding:.15em .55em; border-radius:999px;
}
.combo-options{ display:flex; flex-direction:column; gap:.55rem; }
.combo-option{
  display:flex; align-items:center; gap:.7rem;
  background: var(--white); border: 2px solid var(--ink);
  border-radius: var(--radius-sm); padding:.65rem .8rem;
  cursor:pointer; transition: background .15s ease, transform .1s ease;
}
.combo-option:active{ transform: scale(.99); }
.combo-option input[type=radio], .combo-option input[type=checkbox] { 
  accent-color: var(--red); width:18px; height:18px; flex:none; 
}
.combo-option input[type=checkbox] { border-radius: 4px; }
.combo-option__name{ flex:1; font-weight:700; font-size:.92rem; }
.combo-option__price{ font-family: var(--font-display); font-weight:700; color: var(--red); font-size:.88rem; white-space:nowrap; }
.combo-option.is-selected{ background: var(--cheddar); }
.combo-fixed{
  display:flex; align-items:center; gap:.7rem;
  background: var(--cream-dim); border: 2px dashed var(--ink);
  border-radius: var(--radius-sm); padding:.65rem .8rem;
}
.combo-fixed__check{ font-size:1.1rem; flex:none; }
.combo-fixed__name{ flex:1; font-weight:700; font-size:.92rem; }
.combo-fixed__price{ font-family: var(--font-display); font-weight:700; font-size:.85rem; color:#6b5c48; }
.char-counter{ text-align:right; font-size:.72rem; color:#9c8f78; font-weight:700; margin:-.6rem 0 1rem; }
#comboAddBtn, #montarAddBtn{ display:flex; align-items:center; justify-content:center; gap:.4em; white-space:normal; }

/* ---- carrossel: arrastar com o mouse no desktop e margem corrigida ---- */
.carousel{ 
  cursor: grab; 
  padding-left: 1.5rem !important;
  animation: bounceScroll 1.2s ease 0.5s 1;
}
.carousel.is-dragging{ cursor: grabbing; scroll-snap-type: none; user-select: none; }

@keyframes bounceScroll {
  0% { transform: translateX(0); }
  30% { transform: translateX(-35px); }
  60% { transform: translateX(0); }
  100% { transform: translateX(0); }
}

*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  background: var(--cream);
  color: var(--ink);
  font-family: var(--font-body);
  -webkit-font-smoothing: antialiased;
}
img{ max-width:100%; display:block; }
h1,h2,h3{ font-family: var(--font-display); margin:0; line-height:1.05; }
p{ margin:0; }
button{ font-family: inherit; cursor:pointer; }
input, textarea, select{ font-family: inherit; }
a{ color:inherit; }

.eyebrow{
  display:inline-block;
  font-family: var(--font-display);
  font-weight:700;
  font-size: .8rem;
  letter-spacing:.08em;
  text-transform: uppercase;
  background: var(--cheddar);
  color: var(--ink);
  padding: .3em .8em;
  border-radius: 999px;
  border: 2px solid var(--ink);
}
.eyebrow--cream{ background: var(--cream); }

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5em;
  font-family: var(--font-display);
  font-weight:700;
  font-size: 1rem;
  padding: .9em 1.6em;
  border-radius: 999px;
  border: 2.5px solid var(--ink);
  text-decoration:none;
  box-shadow: var(--shadow-hard-sm);
  transition: transform .15s ease, box-shadow .15s ease;
  white-space: nowrap;
}
.btn:active{ transform: translate(3px,3px); box-shadow: 0 0 0 var(--ink); }
.btn--cream{ background: var(--cream); color: var(--ink); }
.btn--cream:hover{ background: var(--white); }
.btn--outline{ background: transparent; color: var(--cream); border-color: var(--cream); box-shadow: 4px 4px 0 var(--cream); }
.btn--outline:active{ box-shadow: 0 0 0 var(--cream); }
.btn--red{ background: var(--red); color: var(--cream); }
.btn--red:hover{ background: var(--red-dark); }
.btn--whatsapp{ background: var(--whatsapp); color: #fff; border-color: var(--ink); }
.btn--block{ width:100%; }
.btn[disabled]{ opacity:.5; pointer-events:none; }

/* ---------- crinkle-cut motif ---------- */
.crinkle{
  width:100%;
  height:26px;
  background-repeat: repeat-x;
  background-size: 40px 26px;
}
.crinkle--bottom{
  background-color: var(--cream);
  clip-path: polygon(0 0,4% 100%,8% 0,12% 100%,16% 0,20% 100%,24% 0,28% 100%,32% 0,36% 100%,40% 0,44% 100%,48% 0,52% 100%,56% 0,60% 100%,64% 0,68% 100%,72% 0,76% 100%,80% 0,84% 100%,88% 0,92% 100%,96% 0,100% 100%,100% 100%,0 100%);
}
.crinkle--top{
  background-color: var(--cream);
  transform: scaleY(-1);
  clip-path: polygon(0 0,4% 100%,8% 0,12% 100%,16% 0,20% 100%,24% 0,28% 100%,32% 0,36% 100%,40% 0,44% 100%,48% 0,52% 100%,56% 0,60% 100%,64% 0,68% 100%,72% 0,76% 100%,80% 0,84% 100%,88% 0,92% 100%,96% 0,100% 100%,100% 100%,0 100%);
}
.crinkle--cream-on-red{ background-color: var(--red); }

.crinkle-frame{
  clip-path: polygon(0 3%,3% 0,8% 3%,13% 0,18% 3%,23% 0,28% 3%,33% 0,38% 3%,43% 0,48% 3%,53% 0,58% 3%,63% 0,68% 3%,73% 0,78% 3%,83% 0,88% 3%,93% 0,98% 3%,100% 0,100% 97%,98% 100%,93% 97%,88% 100%,83% 97%,78% 100%,73% 97%,68% 100%,63% 97%,58% 100%,53% 97%,48% 100%,43% 97%,38% 100%,33% 97%,28% 100%,23% 97%,18% 100%,13% 97%,8% 100%,3% 97%,0% 100%);
}

/* ---------- promo strip ---------- */
.promo-strip{
  background: var(--ink);
  color: var(--cream);
  overflow:hidden;
  white-space:nowrap;
  padding: .5em 0;
}
.promo-strip__track{
  display:inline-flex;
  gap: 3em;
  animation: scrollPromo 28s linear infinite;
  font-family: var(--font-display);
  font-size:.85rem;
  font-weight:600;
  padding-left: 3em;
}
@keyframes scrollPromo{
  from{ transform: translateX(0); }
  to{ transform: translateX(-50%); }
}

/* ---------- hero ---------- */
.hero{
  background: var(--red);
  color: var(--cream);
  position: relative;
  padding: 2.5rem 1.5rem 0;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  top:-60px; right:-60px;
  width:280px; height:280px;
  border-radius:50%;
  background: var(--red-dark);
  opacity:.5;
}
.hero__inner{
  position:relative;
  max-width: 1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items:center;
  padding-bottom: 2.5rem;
}
.hero__brand{ position:relative; z-index:1; }
.hero__logo{ max-width:220px; margin-bottom: 1rem; }
.hero__logo-fallback{
  display:none;
  font-family: var(--font-display);
  font-size: 3rem;
  font-weight:800;
  color: var(--cream);
  margin-bottom:.5rem;
}
.hero__tagline{
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight:600;
  margin-bottom: 1.5rem;
  color: var(--cream);
}
.hero__ctas{ display:flex; gap:.9rem; flex-wrap:wrap; }
.hero__banner{
  position:relative;
  border-radius: var(--radius-lg);
  overflow:hidden;
  border: 3px solid var(--ink);
  box-shadow: var(--shadow-hard);
  aspect-ratio: 4/3;
  background: var(--red-dark);
}
.hero__banner picture{ display:block; width:100%; height:100%; }
.hero__banner img{ width:100%; height:100%; object-fit:cover; }
.hero__banner-note{
  display:none;
  position:absolute; inset:0;
  align-items:center; justify-content:center;
  text-align:center;
  font-family: var(--font-display);
  font-size:.85rem;
  color: var(--cream);
  padding: 1rem;
}
.hero__banner.img-missing .hero__banner-note{ display:flex; }
.hero__banner.img-missing img{ display:none; }

@media (max-width: 780px){
  .hero__inner{ grid-template-columns:1fr; padding-top:1rem; }
  .hero__banner{ order:-1; aspect-ratio: 16/10; }
}

/* ---------- category nav ---------- */
.cat-nav{
  position: sticky;
  top:0;
  z-index: 30;
  background: var(--cream);
  border-bottom: 2.5px solid var(--ink);
  padding: .75rem 0;
}
.cat-nav__track{
  display:flex;
  gap:.6rem;
  overflow-x:auto;
  padding: 0 1.25rem;
  scrollbar-width:none;
}
.cat-nav__track::-webkit-scrollbar{ display:none; }
.cat-pill{
  flex:none;
  font-family: var(--font-display);
  font-weight:700;
  font-size:.9rem;
  padding:.55em 1.2em;
  border-radius:999px;
  border:2px solid var(--ink);
  background: var(--white);
  color: var(--ink);
  white-space:nowrap;
}
.cat-pill.is-active{ background: var(--red); color: var(--cream); }

/* ---------- menu sections ---------- */
.menu{ max-width:1180px; margin:0 auto; padding: 2rem 0 3rem; }
.menu-section{ padding: 1.5rem 0; }
.menu-section__head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  padding: 0 1.25rem;
  margin-bottom: 1rem;
}
.menu-section__head h2{ font-size: 1.5rem; }
.menu-section__head span{ font-size:.85rem; color:#8a7d68; font-weight:700; }

.carousel{
  display:flex;
  gap: 1.1rem;
  overflow-x: auto;
  padding: .4rem 1.25rem 1rem;
  scroll-snap-type: x proximity;
  scrollbar-width:none;
}
.carousel::-webkit-scrollbar{ display:none; }

.card{
  flex: 0 0 210px;
  scroll-snap-align:start;
  background: var(--white);
  border-radius: var(--radius-md);
  border: 2.5px solid var(--ink);
  box-shadow: var(--shadow-hard-sm);
  overflow:hidden;
  text-align:left;
  padding:0;
  transition: transform .15s ease;
  position: relative;
}
.card:hover{ transform: translateY(-4px); }

/* ---- ESTADO DE ESTOQUE (Esgotado) ---- */
.card.is-disabled {
  opacity: 0.65;
  cursor: not-allowed;
  filter: grayscale(0.85);
}
.card.is-disabled:hover {
  transform: none;
}
.card__badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: var(--ink);
  color: var(--white);
  font-size: 0.75rem;
  font-weight: 800;
  padding: 0.3em 0.8em;
  border-radius: 999px;
  z-index: 10;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 2px 2px 0px rgba(0,0,0,0.5);
}

.card__img-wrap{ aspect-ratio: 1/1; background: var(--cream-dim); position:relative; overflow:hidden; }
.card__img-wrap img{ width:100%; height:100%; object-fit:cover; }
.card__img-fallback{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  font-size:2.4rem;
}
.card__body{ padding: .85rem .9rem 1rem; }
.card__name{ font-family: var(--font-display); font-weight:700; font-size:1rem; margin-bottom:.2rem; }
.card__weight{ font-size:.72rem; color:#9c8f78; font-weight:700; text-transform:uppercase; letter-spacing:.03em; }
.card__foot{ display:flex; align-items:center; justify-content:space-between; margin-top:.6rem; }
.card__price{ font-family: var(--font-display); font-weight:800; color: var(--red); font-size:1.05rem; }
.card__add{
  width:34px; height:34px; border-radius:50%;
  background: var(--red); color:var(--cream);
  border:2px solid var(--ink);
  font-size:1.2rem; font-weight:800;
  display:flex; align-items:center; justify-content:center;
}

/* ---------- about ---------- */
.about{ background: var(--red); color: var(--cream); position:relative; padding-bottom: 3rem; }
.about__inner{
  max-width: 1000px; margin: 0 auto; padding: 1rem 1.5rem 0;
  display:grid; grid-template-columns: auto 1fr; gap: 2.5rem; align-items:start;
}
.about__mascote{
  font-size: 5rem;
  background: var(--cream);
  border-radius:50%;
  width:130px; height:130px;
  display:flex; align-items:center; justify-content:center;
  border: 3px solid var(--ink);
  flex: none;
}
.about__mascote img{
    width:105px;
    height:105px;
    object-fit:contain;
}
.about__text h2{ font-size: 2rem; margin: .6rem 0 1rem; }
.about__text p{ margin-bottom: .9rem; line-height:1.55; opacity:.95; }
.about__badges{ display:flex; gap:1.5rem; flex-wrap:wrap; margin-top:1.4rem; }
.about__badge{ display:flex; flex-direction:column; }
.about__badge strong{ font-family: var(--font-display); font-size:1.6rem; }
.about__badge span{ font-size:.75rem; text-transform:uppercase; letter-spacing:.04em; font-weight:700; color:var(--white); opacity:1; }
@media (max-width:640px){ .about__inner{ grid-template-columns:1fr; } .about__mascote{ margin:0 auto; } }

/* ---------- footer ---------- */
.footer{ background: var(--ink); color: var(--cream); padding: 2.5rem 1.5rem 1rem; }
.footer__inner{ max-width:1180px; margin:0 auto; display:flex; justify-content:space-between; flex-wrap:wrap; gap:1.5rem; }
.footer__logo{ font-family: var(--font-display); font-size:1.5rem; font-weight:800; }
.footer__brand p{ opacity:.7; font-size:.85rem; margin-top:.2rem; }
.footer__links{ display:flex; gap:1.4rem; align-self:center; }
.footer__links a{ text-decoration:none; font-weight:700; font-size:.9rem; border-bottom:2px solid var(--cheddar); padding-bottom:2px; }
.footer__bottom{ text-align:center; opacity:.5; font-size:.75rem; margin-top:2rem; }

/* ---------- cart fab ---------- */
.cart-fab{
  position: fixed;
  left: 50%; transform: translateX(-50%);
  bottom: 1.1rem;
  z-index: 40;
  display:flex; align-items:center; gap:.7rem;
  background: var(--red);
  color: var(--cream);
  border: 2.5px solid var(--ink);
  border-radius: 999px;
  padding: .6rem .9rem .6rem .7rem;
  box-shadow: var(--shadow-hard);
  opacity:0; pointer-events:none;
  transition: opacity .2s ease, transform .2s ease;
}
.cart-fab.is-visible{ opacity:1; pointer-events:auto; }
.cart-fab__icon{ font-size:1.3rem; background:var(--cream); border-radius:50%; width:38px; height:38px; display:flex; align-items:center; justify-content:center; }
.cart-fab__label{ display:flex; flex-direction:column; text-align:left; line-height:1.1; }
.cart-fab__label strong{ font-family: var(--font-display); font-size:.85rem; }
.cart-fab__label small{ font-size:.72rem; opacity:.85; }
.cart-fab__arrow{ font-size:1.3rem; font-weight:800; margin-left:.2rem; }

/* ---------- modals ---------- */
.modal-overlay{
  position: fixed; inset:0;
  background: rgba(28,19,16,.55);
  display:flex; align-items:flex-end; justify-content:center;
  z-index: 100;
  opacity:0; pointer-events:none;
  transition: opacity .2s ease;
}
.modal-overlay.is-open{ opacity:1; pointer-events:auto; }
@media (min-width: 700px){
  .modal-overlay{ align-items:center; }
}
.modal{
  background: var(--cream);
  width:100%; max-width: 520px;
  max-height: 92vh;
  overflow-y:auto;
  border-radius: 26px 26px 0 0;
  border: 3px solid var(--ink);
  border-bottom:none;
  position:relative;
  padding: 1.5rem 1.5rem 2rem;
  transform: translateY(30px);
  transition: transform .25s ease;
}
.modal-overlay.is-open .modal{ transform: translateY(0); }
@media (min-width: 700px){
  .modal{ border-radius:26px; border-bottom: 3px solid var(--ink); }
}
.modal__close{
  position:absolute; top:1rem; right:1rem;
  width:34px; height:34px; border-radius:50%;
  background: var(--white); border:2px solid var(--ink);
  font-size:1rem; font-weight:800; z-index:2;
}

/* item modal */
.item-modal{ padding-top:0; }
.item-modal__img-wrap{ margin: 0 -1.5rem 1rem; aspect-ratio: 4/3; background: var(--cream-dim); overflow:hidden; }
.item-modal__img-wrap img{ width:100%; height:100%; object-fit:cover; }
#itemModalWeight{ margin-bottom:.5rem; display:inline-block; }
.item-modal__body h3{ font-size:1.4rem; margin: .3rem 0 .5rem; }
.item-modal__body > p{ line-height:1.5; color:#4a3f34; margin-bottom:1rem; }
.item-modal__price{ font-family: var(--font-display); font-weight:800; font-size:1.4rem; color: var(--red); margin-bottom:1rem; }
.field-label{ display:block; font-weight:800; font-size:.82rem; text-transform:uppercase; letter-spacing:.03em; margin-bottom:.4rem; color:#6b5c48; }
textarea, input[type=text], input[type=tel], select{
  width:100%;
  border:2px solid var(--ink);
  border-radius: var(--radius-sm);
  padding:.7em .9em;
  background: var(--white);
  font-size:.95rem;
  margin-bottom:1rem;
  resize: vertical;
}
.item-modal__row{ display:flex; align-items:center; gap:1rem; margin-top: .3rem; }
.qty-stepper{
  display:flex; align-items:center; gap:.8rem;
  border:2px solid var(--ink); border-radius:999px;
  padding:.3rem .5rem; flex:none;
}
.qty-stepper button{
  width:28px; height:28px; border-radius:50%;
  border:none; background: var(--cream-dim);
  font-size:1.1rem; font-weight:800;
}
#qtyValue, #comboQtyValue, #montarQtyValue{ font-family: var(--font-display); font-weight:700; min-width:1ch; text-align:center; }

/* cart drawer */
.cart-drawer h3, .config-drawer h3{ font-size:1.4rem; margin-bottom: 1rem; }
.cart-drawer__items{ display:flex; flex-direction:column; gap:.9rem; margin-bottom:1rem; }
.cart-line{
  display:flex; gap:.8rem;
  background: var(--white); border:2px solid var(--ink); border-radius: var(--radius-sm);
  padding:.7rem;
}
.cart-line__img{ width:56px; height:56px; border-radius:10px; object-fit:cover; background:var(--cream-dim); flex:none; }
.cart-line__info{ flex:1; }
.cart-line__info strong{ font-family: var(--font-display); font-size:.92rem; }
.cart-line__info p{ font-size:.78rem; color:#8a7d68; margin-top:.15rem; }
.cart-line__qty{ font-size:.8rem; font-weight:800; color: var(--red); margin-top:.3rem; }
.cart-line__actions{ display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; }
.cart-line__price{ font-family: var(--font-display); font-weight:800; }
.cart-line__remove{ background:none; border:none; color:#b02a2a; font-size:.75rem; font-weight:700; text-decoration:underline; padding:0; }
.cart-drawer__empty{ display:none; text-align:center; padding: 1.5rem 0; color:#8a7d68; font-weight:700; }
.cart-drawer.is-empty .cart-drawer__empty{ display:block; }
.cart-drawer.is-empty .cart-drawer__totals,
.cart-drawer.is-empty #goToConfigBtn{ display:none; }
.cart-drawer__totals{ border-top:2px dashed var(--ink); padding-top:.9rem; margin-bottom:1.2rem; }
.cart-drawer__totals .row{ display:flex; justify-content:space-between; font-size:1rem; margin-bottom:.4rem; }
.cart-drawer__totals .row.minimo{ display:none; font-size:.82rem; color:#8a5300; background:#fbe7c6; border-radius:10px; padding:.5rem .7rem; justify-content:flex-start; }
.cart-drawer__totals .row.minimo.is-visible{ display:flex; }

/* config drawer */
.config-drawer__sub{ font-size:.85rem; color:#6b5c48; margin-bottom:1.2rem; }
.delivery-toggle{ display:flex; gap:.6rem; margin-bottom:1rem; }
.delivery-toggle__opt{
  flex:1; padding:.7em; border-radius: var(--radius-sm); border:2px solid var(--ink);
  background: var(--white); font-weight:800; font-family: var(--font-display); font-size:.88rem;
}
.delivery-toggle__opt.is-active{ background: var(--red); color: var(--cream); }
.field-row{ display:grid; grid-template-columns: 1fr 1fr; gap:.8rem; }

::selection{ background: var(--cheddar); color: var(--ink); }
:focus-visible{ outline: 3px solid var(--cheddar); outline-offset:2px; }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .promo-strip__track{ animation:none; }
  .card:hover{ transform:none; }
  .carousel { animation: none; }
}

@media (max-width: 768px) {
  .hero__banner {
    display: none !important;
  }
}
/* V4 TESTE */
.menu-search{max-width:1180px;margin:1rem auto 0;padding:0 1.25rem;display:flex;gap:.6rem}.menu-search input{margin:0;flex:1;border:2px solid var(--ink);border-radius:999px;padding:.8rem 1rem;background:#fff}.menu-search button{border:2px solid var(--ink);border-radius:999px;background:var(--cream-dim);font-weight:800;padding:0 1rem}.card__marketing-badge{position:absolute;left:10px;top:10px;z-index:12;background:var(--cheddar);border:2px solid var(--ink);border-radius:999px;padding:.25rem .65rem;font-size:.72rem;font-weight:900}.cart-line__buttons{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.cart-line__buttons button{background:none;border:none;text-decoration:underline;font-weight:800;font-size:.72rem;padding:0}.cart-reward{display:none;margin-top:.7rem;padding:.7rem;border-radius:10px;background:#fff0bd;font-weight:800;font-size:.83rem}.cart-reward.is-visible{display:block}.delivery-estimate{background:#efe4c6;border-radius:10px;padding:.65rem .8rem;margin:-.2rem 0 1rem;font-weight:800;color:#6b5c48}.menu-section.is-filtered-out{display:none}


/* ---------- benefício do pedido ---------- */
.reward-banner{max-width:1180px;margin:1rem auto 0;padding:0 1.25rem}.reward-banner[hidden]{display:none}.reward-banner__content{display:flex;align-items:center;gap:.9rem;background:#fff0bd;border:2.5px solid var(--ink);border-radius:18px;padding:.85rem 1rem;box-shadow:4px 4px 0 var(--ink)}.reward-banner__icon{font-size:1.8rem;flex:none}.reward-banner__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.reward-banner__text strong{font-family:var(--font-display);font-size:1rem}.reward-banner__text span{font-size:.83rem;color:#5f513e;font-weight:700}.reward-banner__value{font-family:var(--font-display);font-size:.85rem;font-weight:800;white-space:nowrap}.reward-progress{height:8px;background:rgba(28,19,16,.15);border-radius:999px;overflow:hidden;margin-top:.35rem}.reward-progress__bar{height:100%;width:0;background:var(--red);border-radius:inherit;transition:width .25s ease}.reward-banner.is-reached .reward-banner__content{background:#dff4df}.reward-banner.is-reached .reward-progress__bar{background:var(--whatsapp)}.cart-reward.is-reached{background:#dff4df}@media(max-width:600px){.reward-banner__content{align-items:flex-start}.reward-banner__value{font-size:.74rem}.reward-banner__icon{font-size:1.45rem}}


/* V4.3 — interface mais limpa */
.reward-banner{display:none !important}
.menu-search{display:none !important}
.menu-search-compact{max-width:1180px;margin:.65rem auto 0;padding:0 1.25rem;display:flex;justify-content:flex-end;align-items:center;gap:.5rem;position:relative}
.menu-search-toggle{display:inline-flex;align-items:center;gap:.35rem;border:0;background:transparent;color:#6b5c48;font-weight:800;font-size:.82rem;padding:.4rem .55rem;border-radius:999px;box-shadow:none}
.menu-search-toggle:hover{background:rgba(28,19,16,.07);color:var(--ink)}
.menu-search-panel{display:flex;align-items:center;gap:.35rem;max-width:320px;width:100%}
.menu-search-panel[hidden]{display:none}
.menu-search-panel input{margin:0;min-width:0;border:1.8px solid var(--ink);border-radius:999px;padding:.62rem .85rem;background:#fff;font-size:.88rem}
.menu-search-panel button{width:34px;height:34px;flex:none;border:1.8px solid var(--ink);border-radius:50%;background:var(--cream);font-weight:900}
.cart-line__quantity{display:inline-flex;align-items:center;gap:.4rem;margin-top:.45rem;font-size:.75rem;font-weight:800;color:#6b5c48}
.cart-line__qty-select{width:auto;min-width:52px;margin:0;padding:.25rem 1.5rem .25rem .5rem;border:1.6px solid var(--ink);border-radius:8px;background:#fff;font-size:.8rem;font-weight:800}
.cart-line__buttons{gap:.75rem;flex-wrap:nowrap}
.cart-line__buttons button{font-size:.76rem;text-transform:none}
.cart-line__edit{color:#4a3f34}
.cart-line__remove{color:#b02a2a}
@media(max-width:560px){
  .menu-search-compact{margin-top:.35rem}
  .menu-search-toggle span{display:none}
  .menu-search-panel{position:absolute;right:1.25rem;top:42px;z-index:35;background:var(--cream);padding:.45rem;border:2px solid var(--ink);border-radius:14px;box-shadow:3px 3px 0 var(--ink)}
  .cart-line{align-items:flex-start}
  .cart-line__actions{gap:.7rem}
  .cart-line__buttons{flex-direction:column;gap:.35rem;align-items:flex-end}
}


/* V4.4 — busca flutuante e alinhamento real dos carrosséis no mobile */
.menu-search-compact{
  position:fixed;
  right:14px;
  top:calc(74px + env(safe-area-inset-top));
  z-index:60;
  width:auto;
  max-width:none;
  margin:0;
  padding:0;
  display:block;
}
.menu-search-toggle{
  width:42px;
  height:42px;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid rgba(28,19,16,.08);
  border-radius:50%;
  background:rgba(248,240,220,.92);
  color:var(--ink);
  box-shadow:0 3px 12px rgba(28,19,16,.14);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.menu-search-toggle svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.menu-search-toggle:hover{background:var(--white)}
.menu-search-panel{
  position:absolute;
  right:0;
  top:50px;
  width:min(310px, calc(100vw - 28px));
  max-width:none;
  padding:.45rem;
  background:var(--cream);
  border:2px solid var(--ink);
  border-radius:14px;
  box-shadow:4px 4px 0 var(--ink);
}
.menu-search-panel input{
  width:100%;
  margin:0;
  padding:.68rem .9rem;
  border:1.8px solid var(--ink);
  border-radius:999px;
  background:#fff;
  font-size:.9rem;
}
.menu-search-panel[hidden]{display:none}
.menu-search-compact.is-open .menu-search-toggle{background:var(--cheddar)}

@media (max-width: 600px){
  .menu-search-compact{
    top:auto;
    right:12px;
    bottom:calc(84px + env(safe-area-inset-bottom));
  }
  .menu-search-panel{
    top:auto;
    bottom:50px;
  }

  /* O próprio trilho começa depois da margem. Assim o primeiro card nunca fica colado/cortado. */
  .carousel{
    width:calc(100% - 1.25rem);
    margin-left:1.25rem;
    padding:.4rem 1.25rem 1rem 0 !important;
    scroll-padding-left:0;
    animation:none !important;
    transform:none !important;
  }
  .menu-section--combo .carousel{
    width:calc(100% - 1.25rem);
    margin-left:1.25rem;
  }
}

/* V5 — CEP automático, saudação e pedidos recentes */
.customer-shortcuts{
  max-width:1180px;
  margin:.85rem auto 0;
  padding:0 1.25rem;
}
.customer-shortcuts__inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
}
.customer-greeting{
  margin:0;
  font-family:var(--font-display);
  font-size:1rem;
  font-weight:800;
  color:var(--ink);
}
.recent-orders-trigger{
  margin-left:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:0;
  border:0;
  background:transparent;
  box-shadow:none;
  padding:.35rem .55rem;
  color:#5f5547;
  border-radius:10px;
}
.recent-orders-trigger:hover{background:rgba(28,19,16,.06)}
.recent-orders-trigger span{font-family:var(--font-display);font-weight:800;font-size:.88rem}
.recent-orders-trigger small{font-size:.7rem;font-weight:700;color:#5f5547;opacity:1}

.address-details[hidden]{display:none!important}
.address-details.is-visible{display:block;animation:addressReveal .2s ease}
@keyframes addressReveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.cep-field{position:relative}
.cep-field input{padding-right:1rem}
.cep-status{
  display:block;
  min-height:1.15rem;
  margin:-.65rem 0 .75rem;
  font-size:.72rem;
  line-height:1.3;
  font-weight:800;
  color:#6b5c48;
}
.cep-status.is-loading{color:#7a5d24}
.cep-status.is-ok{color:#28723a}
.cep-status.is-error{color:#a51c27}
.field-row--address{grid-template-columns:minmax(0,1fr) 110px}
.field-grow{min-width:0}
.field-number{width:110px}

.recent-orders-modal{max-width:600px}
.recent-orders-head{padding-right:2.7rem;margin-bottom:1rem}
.recent-orders-head h3{font-size:1.55rem;margin-bottom:.25rem}
.recent-orders-head p{font-size:.82rem;color:#756a5b;font-weight:700}
.recent-orders-list{display:flex;flex-direction:column;gap:.85rem}
.recent-orders-empty{
  padding:1.5rem 1rem;
  text-align:center;
  border:2px dashed #c7baa6;
  border-radius:14px;
  color:#7b6e5d;
  font-weight:800;
}
.recent-order{
  background:#fff;
  border:2px solid var(--ink);
  border-radius:15px;
  padding:.9rem;
  box-shadow:3px 3px 0 var(--ink);
}
.recent-order__top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.recent-order__top > div{display:flex;flex-direction:column}
.recent-order__top strong{font-family:var(--font-display);font-size:1rem}
.recent-order__top small{font-size:.7rem;color:#847765;font-weight:700}
.recent-order__top b{font-family:var(--font-display);color:var(--red);white-space:nowrap}
.recent-order > p{margin:.55rem 0;font-size:.8rem;line-height:1.4;color:#5c5042;font-weight:700}
.recent-order details{border-top:1.5px dashed #c8bcaa;padding-top:.55rem;margin-top:.55rem}
.recent-order summary{font-size:.78rem;font-weight:900;cursor:pointer}
.recent-order__details{display:flex;flex-direction:column;gap:.5rem;margin-top:.65rem}
.recent-order__details > div{display:grid;grid-template-columns:1fr auto;gap:.12rem .6rem;padding:.5rem;background:var(--cream);border-radius:9px}
.recent-order__details strong,.recent-order__details span{font-size:.76rem}
.recent-order__details small{grid-column:1/-1;font-size:.68rem;color:#756a5b;font-weight:700}
.recent-order__again{width:100%;margin-top:.8rem;padding:.68rem 1rem;font-size:.86rem}

@media(max-width:600px){
  .customer-shortcuts{margin:.55rem auto 0;padding:0 1rem}
  .customer-shortcuts__inner{align-items:flex-start}
  .customer-greeting{font-size:.9rem;padding-top:.35rem}
  .recent-orders-trigger{padding:.25rem 0}
  .recent-orders-trigger span{font-size:.8rem}
  .recent-orders-trigger small{font-size:.68rem}
  .field-row--address{grid-template-columns:minmax(0,1fr) 92px}
  .field-number{width:92px}
  .recent-order__top{gap:.5rem}
}

/* ==========================================================
   V5.2 — ESCALA MAIS COMPACTA NO MOBILE
   ========================================================== */
@media (max-width: 600px){
  :root{
    --radius-lg:22px;
    --radius-md:14px;
    --radius-sm:10px;
    --shadow-hard:4px 4px 0 var(--ink);
    --shadow-hard-sm:3px 3px 0 var(--ink);
  }

  .promo-strip{padding:.34em 0}
  .promo-strip__track{gap:2rem;padding-left:2rem;font-size:.72rem}

  .hero{padding:1.05rem .85rem 0}
  .hero::before{top:-75px;right:-80px;width:220px;height:220px}
  .hero__inner{gap:.8rem;padding-top:0;padding-bottom:1.05rem}
  .hero__logo{width:136px;max-width:42vw;margin-bottom:.55rem}
  .hero__tagline{font-size:.9rem;line-height:1.3;margin-bottom:.75rem}
  .hero__ctas{gap:.42rem}
  .hero__ctas .btn{
    min-height:37px;
    padding:.55rem .78rem;
    border-width:1.8px;
    box-shadow:2px 2px 0 var(--ink);
    font-size:.72rem;
  }
  .hero__ctas .btn--outline{box-shadow:2px 2px 0 var(--cream)}
  .crinkle{height:18px}

  .cat-nav{padding:.48rem 0;border-bottom-width:2px}
  .cat-nav__track{gap:.42rem;padding:0 .75rem}
  .cat-pill{padding:.42em .82em;border-width:1.6px;font-size:.72rem}

  .customer-shortcuts{margin:.38rem auto 0;padding:0 .75rem}
  .customer-shortcuts__inner{gap:.65rem}
  .customer-greeting{padding-top:.2rem;font-size:.78rem}
  .recent-orders-trigger{padding:.16rem 0}
  .recent-orders-trigger span{font-size:.72rem}
  .recent-orders-trigger small{font-size:.65rem}

  .menu{padding:.75rem 0 1.8rem}
  .menu-section{padding:.82rem 0}
  .menu-section__head{
    padding:0 .75rem;
    margin-bottom:.62rem;
    gap:.65rem;
  }
  .menu-section__head h2{font-size:1.18rem;line-height:1.05}
  .menu-section__head span{
    max-width:52%;
    text-align:right;
    font-size:.64rem;
    line-height:1.3;
  }

  .carousel,
  .menu-section--combo .carousel{
    width:calc(100% - .75rem);
    margin-left:.75rem;
    gap:.72rem;
    padding:.2rem .75rem .7rem 0 !important;
  }

  .card{
    flex:0 0 164px;
    border-width:2px;
    border-radius:14px;
    box-shadow:3px 3px 0 var(--ink);
  }
  .menu-section--combo .carousel .card{flex:0 0 258px}
  .card__img-wrap{aspect-ratio:1.08/1}
  .menu-section--combo .card__img-wrap{aspect-ratio:16/9}
  #menuSections .card__img-wrap img,
  .menu-section--combo .card__img-wrap img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .card__body{padding:.62rem .68rem .72rem}
  .card__name{font-size:.84rem;line-height:1.15;margin-bottom:.12rem}
  .card__weight{font-size:.58rem;line-height:1.25}
  .card__foot{margin-top:.42rem;gap:.35rem}
  .card__price{font-size:.86rem;line-height:1.2}
  .card__add{
    width:28px;
    height:28px;
    border-width:1.7px;
    font-size:1rem;
  }
  .card__badge,
  .card__marketing-badge{
    top:7px;
    font-size:.58rem;
    padding:.22rem .5rem;
    border-width:1.5px;
  }

  .about{padding-bottom:1.7rem}
  .about__inner{padding:.55rem 1rem 0;gap:.9rem}
  .about__mascote{width:88px;height:88px;border-width:2px}
  .about__mascote img{width:70px;height:70px}
  .about__text h2{font-size:1.45rem;margin:.35rem 0 .65rem}
  .about__text p{font-size:.8rem;line-height:1.45;margin-bottom:.65rem}
  .about__badges{gap:.9rem;margin-top:.9rem}
  .about__badge strong{font-size:1.18rem}
  .about__badge span{font-size:.56rem}

  .footer{padding:1.45rem 1rem .75rem}
  .footer__inner{gap:.8rem}
  .footer__logo{font-size:1.15rem}
  .footer__brand p{font-size:.7rem}
  .footer__links{gap:.8rem}
  .footer__links a{font-size:.72rem}
  .footer__bottom{font-size:.62rem;margin-top:1rem}

  .cart-fab{bottom:.8rem;padding:.45rem .7rem .45rem .55rem;gap:.5rem}
  .cart-fab__icon{width:32px;height:32px;font-size:1rem}

  .menu-search-toggle{width:36px;height:36px}
  .menu-search-toggle svg{width:17px;height:17px}

  .modal{
    padding:1rem 1rem 1.3rem;
    border-width:2px;
    border-radius:20px 20px 0 0;
  }
  .modal__close{top:.7rem;right:.7rem;width:31px;height:31px}
  .item-modal__img-wrap{margin:0 -1rem .75rem;aspect-ratio:16/10}
  .item-modal__body h3{font-size:1.2rem}
  .item-modal__price{font-size:1.18rem;margin-bottom:.75rem}
  .combo-step{margin-bottom:.9rem}
  .combo-option{padding:.55rem .65rem}
  textarea,input[type=text],input[type=tel],select{
    padding:.62em .75em;
    font-size:.88rem;
    margin-bottom:.8rem;
  }
}
/* V6 — entrega por distância, carrinho persistente e confirmação */
.delivery-quote{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  margin:.15rem 0 1rem;padding:.75rem .85rem;border:2px solid var(--ink);
  border-radius:12px;background:#fff;
}
.delivery-quote[hidden]{display:none}
.delivery-quote > div{display:flex;flex-direction:column;gap:.12rem}
.delivery-quote strong{font-family:var(--font-display);font-size:.9rem}
.delivery-quote span{font-size:.72rem;color:#6b5c48;font-weight:700}
.delivery-quote b{font-family:var(--font-display);white-space:nowrap}
.delivery-quote.is-loading{background:#fff8dd}
.delivery-quote.is-ok{background:#dff4df}
.delivery-quote.is-error{background:#ffe0e0}
.checkout-summary{
  margin:.4rem 0 1rem;padding:.75rem .85rem;background:#fff;
  border:2px dashed var(--ink);border-radius:12px;
}
.checkout-summary > div{display:flex;justify-content:space-between;gap:1rem;font-size:.86rem;margin:.2rem 0}
.checkout-summary__total{margin-top:.5rem!important;padding-top:.5rem;border-top:1.5px solid #c9bfae;font-size:1rem!important}
.order-total-row{padding-top:.45rem;margin-top:.45rem!important;border-top:1.5px solid #c9bfae;font-size:1.08rem!important}
.send-confirm-modal{max-width:430px;text-align:center;padding:1.6rem}
.send-confirm-modal h3{font-size:1.45rem;margin-bottom:.65rem}
.send-confirm-modal p{color:#6b5c48;line-height:1.45;margin-bottom:1.2rem}
.send-confirm-actions{display:flex;gap:.8rem;justify-content:center}
@media(max-width:600px){
  .delivery-quote{padding:.62rem .7rem}
  .send-confirm-actions{flex-direction:column-reverse}
  .send-confirm-actions .btn{width:100%}
}

/* ==========================================================
   V7 — frete, endereço manual, combos dinâmicos e cupons
   ========================================================== */
[hidden]{display:none!important}

.combo-step__subtitle{
  margin:.8rem 0 .5rem;
  font-family:var(--font-display);
  font-size:.82rem;
  font-weight:800;
  color:#6b5c48;
}
.combo-size-wrap{margin-top:.7rem;padding:.7rem;border:2px dashed #c8bcaa;border-radius:12px;background:#fffaf0}
.combo-size-option small{display:inline;color:#8a7d68;font-size:.78em;font-weight:700}
.combo-option.is-out-of-stock{
  background:#e6e1d8;
  color:#81786c;
  border-color:#a69d91;
  cursor:not-allowed;
  opacity:.78;
  filter:grayscale(.75);
}
.combo-option.is-out-of-stock input{cursor:not-allowed}
.combo-option__stock{
  display:inline-flex;
  margin-left:.35rem;
  padding:.12rem .42rem;
  border-radius:999px;
  background:#6e675f;
  color:#fff;
  font-size:.62rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}

.cep-actions{
  display:flex;
  justify-content:space-between;
  gap:.75rem;
  align-items:center;
  margin:-.45rem 0 .9rem;
  flex-wrap:wrap;
}
.text-action{
  border:0;
  background:transparent;
  box-shadow:none;
  padding:.2rem 0;
  color:#765a24;
  font-size:.76rem;
  font-weight:900;
  text-decoration:underline;
  cursor:pointer;
}
.field-row--city-state{grid-template-columns:minmax(90px,.55fr) minmax(150px,1fr);align-items:end}
.delivery-calc-action{display:flex;align-items:flex-end}
.delivery-calc-action .btn{min-height:43px;margin-bottom:1rem;padding:.65rem 1rem;font-size:.88rem}

.coupon-box{
  margin:.2rem 0 1rem;
  padding:.8rem;
  border:2px dashed #c8bcaa;
  border-radius:12px;
  background:#fffaf0;
}
.coupon-field{display:flex;gap:.55rem;align-items:stretch}
.coupon-field input{margin:0;min-width:0;flex:1;text-transform:uppercase}
.coupon-field .btn{margin:0;padding:.65rem 1rem;box-shadow:2px 2px 0 var(--ink);font-size:.86rem}
.coupon-status{min-height:1rem;margin-top:.45rem;font-size:.74rem;font-weight:800;color:#6b5c48}
.coupon-status.is-ok{color:#28723a}
.coupon-status.is-error{color:#a51c27}
#checkoutDiscountRow strong{color:#28723a}

.cart-drawer__totals .row[hidden],
.checkout-summary > div[hidden]{display:none!important}

@media(max-width:600px){
  .cep-actions{align-items:flex-start;flex-direction:column;gap:.25rem}
  .field-row--city-state{grid-template-columns:82px minmax(0,1fr)}
  .delivery-calc-action .btn{font-size:.78rem;padding:.58rem .65rem}
  .coupon-field{flex-direction:column}
  .coupon-field .btn{width:100%}
}

/* V8: compartilhamento e checkout assistido */
.footer__share{
  appearance:none;
  border:0;
  border-bottom:2px solid var(--cheddar);
  background:transparent;
  color:var(--cream);
  padding:0 0 2px;
  font-family:var(--font-body);
  font-weight:700;
  font-size:.9rem;
  cursor:pointer;
}
.cep-actions{
  display:flex;
  justify-content:space-between;
  gap:.8rem;
  margin:-.45rem 0 .9rem;
  flex-wrap:wrap;
}
.text-action{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  color:var(--red);
  font:inherit;
  font-size:.76rem;
  font-weight:900;
  text-decoration:underline;
  cursor:pointer;
}
.calculate-delivery-btn{
  margin:.2rem 0 .9rem;
  padding:.68rem 1rem;
  font-size:.88rem;
  box-shadow:2px 2px 0 var(--ink);
}
#custState{text-transform:uppercase}
@media(max-width:600px){
  .footer__share{font-size:.72rem}
  .cep-actions{font-size:.72rem}
}

/* V8.3 — cardápio consultável e bloqueio apenas no envio */
.card.is-disabled{
  cursor:pointer;
}
.card.is-disabled .card__add{
  background:#777;
}
.availability-notice{
  margin:0 0 1rem;
  padding:.72rem .82rem;
  border:2px solid var(--ink);
  border-radius:12px;
  background:#fff0bd;
  color:#5b451e;
  font-size:.82rem;
  line-height:1.4;
  font-weight:800;
}
.availability-notice[hidden]{display:none}
.availability-notice p + p{margin-top:.35rem}
.combo-option.is-out-of-stock{
  cursor:default;
  opacity:.58;
  filter:grayscale(.85);
  background:#ece8df;
}
.combo-option.is-out-of-stock:active{transform:none}
.combo-option__stock{
  display:inline-flex;
  margin-left:.35rem;
  padding:.12rem .42rem;
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-size:.64rem;
  font-weight:900;
  text-transform:uppercase;
}
#goToConfigBtn:disabled,
#sendOrderBtn:disabled{
  opacity:.7;
}
@media(max-width:600px){
  .availability-notice{font-size:.75rem;padding:.62rem .7rem}
}


/* V8.4 — grupos centrais de adicionais */
.addon-groups{display:grid;gap:.8rem;margin:0 0 1.15rem}
.addon-groups[hidden]{display:none}
.addon-group{border:2px dashed var(--ink);border-radius:var(--radius-sm);padding:.8rem;background:#fffaf0}
.addon-group__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;margin-bottom:.55rem}
.addon-group__head strong{font-family:var(--font-display);font-size:.96rem}
.addon-group__head small{display:block;color:#756a5b;font-size:.7rem;font-weight:700;margin-top:.12rem}
.addon-group__limit{flex:none;border:1.5px solid var(--ink);border-radius:999px;padding:.18rem .5rem;font-size:.65rem;font-weight:900;background:var(--cream)}
.addon-option{display:flex;align-items:center;gap:.7rem;background:#fff;border:1.8px solid var(--ink);border-radius:10px;padding:.6rem .7rem;margin-top:.45rem;cursor:pointer}
.addon-option input{width:18px;height:18px;flex:none;accent-color:var(--red)}
.addon-option__name{flex:1;font-weight:800;font-size:.88rem}
.addon-option__price{font-family:var(--font-display);font-weight:800;color:var(--red);white-space:nowrap;font-size:.84rem}
.addon-option.is-selected{background:var(--cheddar)}
.addon-option.is-out-of-stock{opacity:.55;filter:grayscale(.8);cursor:not-allowed;background:#eee}
.addon-option__stock{display:block;color:#7b1e25;font-size:.65rem;text-transform:uppercase}
.addon-group__empty{font-size:.76rem;color:#756a5b;font-weight:700;padding:.4rem 0}
@media(max-width:600px){.addon-group{padding:.65rem}.addon-group__head{flex-direction:column;gap:.3rem}.addon-group__limit{align-self:flex-start}}
