
/* =========================================================
   BASE / THEME
========================================================= */

:root{
  --cart-item-bg: rgba(47,79,79);
  --cart-item-border: rgba(236, 236, 236, 0.1);

  --cart-section-bg: rgba(241, 200, 122, 0.03);
  --cart-section-border: rgba(209, 198, 101, 0.08);

  --cart-highlight: rgba(243, 242, 242, 0.12);
  --cart-highlight-border: rgba(0, 0, 0, 0.3);

  --cart-total-bg: rgba(255, 255, 255, 0.1);
}

:root{
  --bg:#0f0f12;
  --panel:#17171d;
  --panel2:#1f1f27;
  --stroke:rgba(255,255,255,.08);
  --text:#ffffff;
  --muted:rgba(241,241,244,.72);
  --shadow: 0 18px 40px rgba(255, 255, 255, 0.55);
  --radius:20px;

  --green:#1db954;
  --green2:#0ea64a;
  --accent:#ffffff; /* dourado */
}

*{box-sizing:border-box}
html,body{height:100%; width:100%; max-width:100%; overflow-x:hidden}

body{
  margin:0;
  min-height:100vh;

  background:#0f0f12;
  display:flex;
  justify-content:center;
  align-items:center;
  position:relative;
  overflow-x:hidden;
}

body::before{
  content:"";
  position:fixed;
  inset:0;

  background-image:url("img/fundo.jpg"); /* você troca depois */
  background-size:cover;
  background-position:center;

  filter:blur(25px) brightness(.5);
  transform:scale(1.2);

  z-index:-2;
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  background:rgba(10,10,15,.6);
  z-index:-1;
}

/* Wrapper */
.app{
  width:100%;
  max-width:100%;
  max-width:430px;
  margin:auto;
  overflow-x:clip;
}

.main,
.view,
.cardapio-layout-shell{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:clip;
}

img,
video,
canvas,
svg{
  max-width:100%;
}

/* DESKTOP */
@media (min-width:900px){

  body{
    display:flex;
    justify-content:center;
    align-items:center;
  }

  .app{
    max-width:950px;
    margin:auto;
  }
}

/* =========================================================
   TOPBAR
========================================================= */
.topbar{
  position: relative;
  padding: 14px 14px 12px;
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.brand{
  display:flex; align-items:center; gap:12px; min-width:0;
}
.brand__icon{
  width:44px; height:44px; border-radius:14px; overflow:hidden;
  background: rgba(250, 248, 248, 0.06);
  border:1px solid rgba(255,255,255,.08);
  flex:0 0 auto;
}
.brand__icon img{width:100%; height:100%; object-fit:cover; display:block;}
.brand__text{min-width:0}
.brand__name{
  font-weight:800;
  letter-spacing:.2px;
  font-size: 18px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.brand__meta{
  margin-top:4px;
  display:flex; align-items:center; gap:6px;
  font-size:12px;
  color: var(--muted);
}
.stars{color:#ffd25f}
.metaDot{opacity:.6}

.status{
  display:flex; align-items:center; gap:8px;
}
.status__pill{
  display:flex; align-items:center; gap:8px;
  padding:8px 10px;
  border-radius:999px;
  background: rgba(29,185,84,.12);
  border: 1px solid rgba(29,185,84,.30);
  font-weight:700;
  font-size:12px;
}
.status__dot{
  width:10px; height:10px; border-radius:999px;
  background: var(--green);
  box-shadow: 0 0 0 5px rgba(29,185,84,.12);
}
.iconBtn{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  color:var(--text);
  border-radius:12px;
  width:38px; height:38px;
  display:grid; place-items:center;
  cursor:pointer;
}
.iconBtn:active{transform: translateY(1px);}

/* Dropdown menu */
.menu{
  position:absolute;
  display: none;
  top:62px;
  right:14px;
  background: rgba(25,25,32,.98);
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  box-shadow: var(--shadow);
  overflow:hidden;
  display:none;
  min-width: 180px;
  z-index:20;
}
.menu.open{display:block;}
.menu__item{
  width:100%;
  text-align:left;
  border:0;
  background:transparent;
  color:var(--text);
  padding:12px 14px;
  cursor:pointer;
  font-weight:700;
}

.menu.active{
  display:block;
}

.menu__item:hover{background: rgba(255,255,255,.06);}

/* =========================================================
   MAIN
========================================================= */
.main{padding: 12px 14px 90px;}
.view.hidden{display:none;}
.section{margin-top:14px;}
.section__title{
  display:flex; align-items:center; gap:10px;
  font-weight:900;
  margin: 14px 2px 10px;
  font-size: 16px;
}
.section__icon{
  width:26px; height:26px;
  border-radius:9px;
  display:grid; place-items:center;
  background: rgba(255,176,46,.14);
  border:1px solid rgba(255,176,46,.25);
}

/* =========================================================
   PROMO
========================================================= */

.promo{
  position:relative;
  height:420px;
  border-radius:26px;
  overflow:visible;
  background:#111;
  border:1px solid rgba(255,255,255,.08);
  touch-action:pan-y;
}

.promo__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:brightness(.55);
  transition:transform .18s linear, opacity .25s ease;
  will-change:transform;
}

.promo__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      to top,
      rgba(0,0,0,.82) 0%,
      rgba(0,0,0,.25) 45%,
      rgba(0,0,0,.05) 100%
    );
  z-index:1;
}

.promo__content{
  position:relative;
  z-index:5;
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:34px;
  box-sizing:border-box;
  transition:transform .18s linear, opacity .25s ease;
  will-change:transform;
}

.promo__info{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

.promo__badge{
  display:flex;
  position:absolute;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-size:13px;
  font-weight:800;
  margin-bottom:14px;
  
  top:26px;
  left:50%;
  transform:translateX(-50%);
  
  backdrop-filter:blur(10px);
}

.promo__product{
  margin:0;
  color:#fff;
  font-size:42px;
  font-weight:1000;
  line-height:1;
  text-shadow:0 4px 18px rgba(0,0,0,.45);
}

.promo__prices{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:14px;
}

.promo__old{
  color:#ff5c5c;
  font-size:22px;
  font-weight:800;
  text-decoration:line-through;
  text-shadow:0 2px 10px rgba(255,92,92,.25);
}

.promo__new{
  color:#1ed760;
  font-size:42px;
  font-weight:1000;
}

.promo__cta{
  margin-top:18px;
}

.promoArrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:52px;
  height:52px;
  border:none;
  border-radius:999px;
  background:rgba(0,0,0,.45);
  color:#fff;
  font-size:34px;
  font-weight:900;
  cursor:pointer;
  z-index:20;
  backdrop-filter:blur(10px);
  transition:.2s;
}

.promoArrow:hover{
  background:rgba(0,0,0,.7);
  transform:translateY(-50%) scale(1.06);
}

.promoArrow--left{
  left:-80px;
}

.promoArrow--right{
  right:-80px;
}

.promoDots{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:8px;
  z-index:20;
}

.promoDot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.35);
  transition:.25s;
}

.promoDot.active{
  width:24px;
  background:#1ed760;
}

.badge--promo{
  background:rgba(255,70,70,.14);
  border:1px solid rgba(255,70,70,.22);
  color:#ff6b6b;
}

@media (max-width:768px){

  .promo{
    height:320px;
    overflow:hidden;
  }

  .promo__content{
    padding:26px 18px 44px;
  }

  .promo__product{
    font-size:28px;
  }

  .promo__new{
    font-size:30px;
  }

  .promo__old{
    font-size:17px;
  }

  .promoArrow{
    display:none !important;
  }

  .promoDots{
    bottom:12px;
  }

}

/* =========================================================
   CAROUSEL (Queridinhos)
========================================================= */
.carouselWrap{
  position:relative;
  width:100%;
}

/* BASE: carrossel normal (mobile + geral) */
.carousel{
  display:flex;
  gap:12px;

  overflow-x:auto;
  overflow-y:hidden;

  padding: 2px 0 10px;

  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;

  scrollbar-width: none;     /* Firefox */
  -ms-overflow-style: none;  /* Edge */
}

.carousel::-webkit-scrollbar{height:8px}
.carousel::-webkit-scrollbar-thumb{background: rgba(255,255,255,.10); border-radius:999px}

.favCard{
  scroll-snap-align: start;
  min-width: 150px;
  max-width: 150px;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  overflow:hidden;
  cursor:pointer;
}

/* ✅ AJUSTE NECESSÁRIO: imagem do card sempre “certinha” e profissional */
/* Queridinhos: imagem padronizada e sempre certinha */
.favCard__img{
  height: 120px;               /* AUMENTA o card da imagem (antes 92px) */
  overflow: hidden;
  background: rgba(255,255,255,.06);
  line-height: 0;
  font-size: 0;
}

.favCard__img img{
  width: 100%;
  height: 130%;
  object-fit: cover;           /* padrão profissional: preenche sem distorcer */
  object-position: center;
  display: block;
  max-width: none;
  max-height: none;
}

.favCard__body{
  padding: 10px 10px 12px;
  display:flex; flex-direction:column; gap:6px;
  height: 100px; /* limite fixo visual */
}
.badge{
  display:inline-flex; align-items:center; justify-content:center;
  font-weight:900;
  font-size: 11px;
  padding: 6px 8px;
  border-radius: 999px;
  background: rgba(255,176,46,.16);
  border:1px solid rgba(255,176,46,.24);
  width: fit-content;
}
.favCard__name{
  font-weight:1000;
  font-size: 13px;
  line-height:1.15;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient: vertical;
  min-height: 30px;
}
.favCard__price{
  font-weight:1000;
  color: rgba(255,255,255,.88);
  margin-top:auto;
}

.carArrow{
  position:absolute;
  top: 44%;
  transform: translateY(-50%);
  width: 40px; height: 40px;
  border-radius: 999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(10,10,12,.55);
  color: var(--text);
  display:grid; place-items:center;
  cursor:pointer;
  z-index:5;
}
.carArrow--left{left:-120px}
.carArrow--right{right:-120px}

/* Mobile: esconder setas */
@media (max-width: 520px){
  .carArrow{display:none;}
}

/* DESKTOP: centralizar quando sobrar espaço, SEM criar largura falsa */
@media (min-width:900px){
  .carousel.is-centered{
    justify-content:center;
  }
}

/* =========================================================
   SEARCH
========================================================= */
.searchRow{margin-top: 8px;}
.search{
  display:flex; align-items:center; gap:10px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  padding: 10px 12px;
}
.search__icon{opacity:.85}
.search input{
  border:0;
  outline:0;
  flex:1;
  background:transparent;
  color: var(--text);
  font-size: 14px;
}
.search__clear{
  border:0;
  background: rgba(255,255,255,.08);
  color: var(--text);
  width: 30px; height: 30px;
  border-radius: 12px;
  cursor:pointer;
  display:grid; place-items:center;
}

/* =========================================================
   CHIPS
========================================================= */
.chips{
  margin-top: 12px;
  display:flex;
  gap:10px;
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom: 4px;
}
.chips::-webkit-scrollbar{height:0}

.chip{
  display:flex; align-items:center; gap:8px;
  padding: 10px 12px;
  border-radius: 999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  color: var(--text);
  font-weight:900;
  font-size: 13px;
  cursor:pointer;
  white-space:nowrap;
}
.chip.active{
  border-color: rgba(255,176,46,.40);
  background: rgba(255,176,46,.12);
}
.chip__icon{opacity:.95}

/* DESKTOP: centralizar quando sobrar espaço */
@media (min-width:900px){
  .chips{
    justify-content:center;
  }
}

/* =========================================================
   PRODUCT LIST
========================================================= */
.list{
  margin-top: 12px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.item{
  display:flex;
  gap:12px;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  overflow:hidden;
  cursor:pointer;

  height: 132px;          /* <<< FIXO: o card nunca muda */
  align-items: stretch;   /* <<< força colunas a esticar igual */
}

.item__img{
  width: 132px;           /* <<< FIXO: coluna da imagem */
  height: 132px;          /* <<< FIXO: altura igual do card */
  flex: 0 0 132px;        /* <<< impede encolher/esticar */
  overflow: hidden;
  background: rgba(255,255,255,.06);
}

.item__img img{
  width: 100%;
  height: 130%;
  object-fit: cover;       /* <<< sempre “certinha” sem distorcer */
  object-position: center;
  display: block;
}

.item__body{
  padding: 10px 10px 10px 0;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  flex:1;
}
.item__top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
}
.item__name{
  font-weight:1000;
  font-size: 14px;
  line-height:1.15;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient: vertical;
  min-height: 32px;
}
.item__price{
  font-weight:1000;
  color: rgba(255,255,255,.92);
  white-space:nowrap;
}
.item__desc{
  font-size: 12px;
  color: var(--muted);
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient: vertical;
  min-height: 30px;
}

body[data-cardapio-layout="grid"] .list{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
}

body[data-cardapio-layout="grid"] .item{
  height:auto;
  min-height: 248px;
  flex-direction:column;
  gap:0;
  border-radius:22px;
  background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.032));
}

body[data-cardapio-layout="grid"] .item__img{
  width:100%;
  height:138px;
  flex:0 0 138px;
}

body[data-cardapio-layout="grid"] .item__img img{
  height:100%;
}

body[data-cardapio-layout="grid"] .item__body{
  min-height: 110px;
  padding: 11px;
  gap:7px;
}

body[data-cardapio-layout="grid"] .item__top{
  flex-direction:column;
  gap:4px;
}

body[data-cardapio-layout="grid"] .item__name{
  font-size:13px;
  min-height:30px;
}

body[data-cardapio-layout="grid"] .item__price{
  font-size:14px;
}

body[data-cardapio-layout="grid"] .item__desc{
  min-height: 28px;
  -webkit-line-clamp:2;
}

body[data-cardapio-layout="grid"] .quickAddBtn{
  position:static;
  width:100%;
  margin-top:auto;
  padding:9px 10px;
  border-radius:12px;
}

body[data-cardapio-layout="compact"] .list{
  gap:8px;
}

body[data-cardapio-layout="compact"] .item{
  height:96px;
  gap:10px;
  border-radius:14px;
}

body[data-cardapio-layout="compact"] .item__img{
  width:96px;
  height:96px;
  flex:0 0 96px;
}

body[data-cardapio-layout="compact"] .item__img img{
  height:120%;
}

body[data-cardapio-layout="compact"] .item__body{
  padding:8px 82px 8px 0;
  gap:4px;
}

body[data-cardapio-layout="compact"] .item__top{
  gap:8px;
}

body[data-cardapio-layout="compact"] .item__name{
  min-height:0;
  font-size:13px;
  -webkit-line-clamp:1;
}

body[data-cardapio-layout="compact"] .item__price{
  font-size:13px;
}

body[data-cardapio-layout="compact"] .item__desc{
  min-height:0;
  font-size:11px;
  -webkit-line-clamp:1;
}

body[data-cardapio-layout="compact"] .badge{
  max-width: fit-content;
  padding: 4px 8px;
  font-size: 10px;
}

body[data-cardapio-layout="compact"] .quickAddBtn{
  right:10px;
  bottom:10px;
  padding:6px 8px;
  border-radius:9px;
  font-size:12px;
}

@media (min-width:900px){
  body[data-cardapio-layout="grid"] .list{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:360px){
  body[data-cardapio-layout="grid"] .list{
    grid-template-columns:1fr;
  }
}

body[data-cardapio-layout="delivery"] .item{
  border-radius: 18px;
  border-color: rgba(29,185,84,.18);
}

body[data-cardapio-layout="delivery"] .chip.active{
  border-color: rgba(29,185,84,.46);
  background: rgba(29,185,84,.14);
}

/* =========================================================
   EXPERIENCIAS REAIS POR LAYOUT
========================================================= */
.cardapio-layout-shell{
  min-height: 100%;
}

.cardapio-layout-shell [data-layout-slot="topbar"] .topbar{
  border-radius: 0;
}

.layout-section-title{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:14px;
  margin: 18px 2px 12px;
}

.layout-section-title span{
  color:rgba(255,255,255,.54);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.5px;
}

.layout-section-title strong{
  color:#fff;
  font-size:18px;
}

body[data-cardapio-layout="delivery"]{
  align-items:flex-start;
  background:#07140f;
  color:#f4fff8;
}

body[data-cardapio-layout="delivery"] .app{
  max-width:430px;
  min-height:100vh;
  background:#07140f;
  box-shadow:0 0 0 1px rgba(126,255,183,.14), 0 28px 90px rgba(0,0,0,.32);
}

.delivery-nav .topbar{
  position:sticky;
  top:0;
  z-index:25;
  background:rgba(12,18,24,.94);
  backdrop-filter:blur(16px);
}

.delivery-speed-hero{
  margin:12px 14px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:16px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(29,185,84,.22),rgba(0,170,230,.12));
  border:1px solid rgba(255,255,255,.08);
}

.delivery-speed-copy span,
.burger-combo-board span,
.pizza-flavor-panel span,
.acai-cup-panel span,
.confectionery-copy span,
.diamond-editorial span{
  display:block;
  margin-bottom:6px;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.7px;
  text-transform:uppercase;
}

.delivery-speed-copy h1{
  margin:0;
  font-size:24px;
  line-height:1.05;
}

.delivery-speed-copy p{
  margin:5px 0 0;
  color:rgba(255,255,255,.62);
  font-size:13px;
}

.delivery-speed-meta{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:86px;
  min-height:74px;
  border-radius:18px;
  text-align:center;
  background:rgba(255,255,255,.1);
}

.delivery-speed-meta b{font-size:14px}
.delivery-speed-meta small{font-size:10px;color:rgba(255,255,255,.62)}
.delivery-promo-lane{padding:0 14px}
.delivery-promo-lane .promo{height:260px;border-radius:24px;overflow:hidden}
.delivery-command-bar{padding:0 14px}
.delivery-command-bar .chips{justify-content:flex-start}
.delivery-favorites{padding:0 14px}
.delivery-products-area{padding:0 14px}

body[data-cardapio-layout="burger"]{
  align-items:flex-start;
  background:#130b06 url("img/layout-burger.svg") center/cover fixed;
}

body[data-cardapio-layout="burger"]::before{
  background:radial-gradient(circle at 20% 12%, rgba(255,176,46,.35), transparent 28%), radial-gradient(circle at 80% 0%, rgba(255,55,28,.22), transparent 30%);
  filter:none;
  transform:none;
}

body[data-cardapio-layout="burger"] .app{
  max-width:1180px;
}

.burger-shell{
  padding:16px 18px 110px;
}

.burger-top .topbar{
  border-radius:24px;
  background:rgba(28,15,8,.9);
  border:1px solid rgba(255,176,46,.16);
}

.burger-stage{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);
  gap:16px;
  margin-top:16px;
}

.burger-stage-main .promo{
  height:430px;
  border-radius:34px;
  overflow:hidden;
  border-color:rgba(255,176,46,.22);
}

.burger-combo-board{
  min-height:430px;
  padding:22px;
  border-radius:34px;
  background:linear-gradient(180deg,#ffb22e,#9d2b16);
  color:#170a04;
  overflow:hidden;
}

.burger-combo-board h2{
  margin:0 0 16px;
  font-size:34px;
  line-height:.95;
  max-width:330px;
}

.burger-combo-board .section__title{color:#170a04}
.burger-combo-board .carousel{display:grid;grid-template-columns:1fr;gap:10px;overflow:visible}
.burger-combo-board .floating{animation:none}
.burger-combo-board .favCard{min-width:0;max-width:none;display:grid;grid-template-columns:82px minmax(0,1fr);background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.24)}
.burger-combo-board .favCard__img{height:82px}
.burger-filter-rail{display:grid;grid-template-columns:minmax(250px,.45fr) minmax(0,1fr);gap:14px;margin:16px 0}
.burger-filter-rail .search{height:100%;border-radius:22px;background:rgba(255,255,255,.08)}
.burger-filter-rail .chips{margin:0;align-items:center}
.burger-grid-house .list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

body[data-cardapio-layout="pizza"]{
  align-items:flex-start;
  background:#1c0805 url("img/layout-pizza.svg") center/cover fixed;
}

body[data-cardapio-layout="pizza"] .app{
  max-width:1040px;
}

.pizza-shell{
  padding:14px 16px 110px;
  display:grid;
  grid-template-columns: 230px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.pizza-header .topbar{
  grid-column:1 / -1;
  border-radius:28px 28px 12px 12px;
  background:linear-gradient(90deg,#230b07,#4b130d);
  border-color:rgba(255,198,78,.18);
}

.pizza-showcase{
  grid-column:2;
  display:grid;
  grid-template-columns:360px minmax(0,1fr);
  gap:22px;
  align-items:center;
  margin:22px 0;
}

.pizza-round-promo .promo{
  width:360px;
  height:360px;
  border-radius:50%;
  overflow:hidden;
  border:10px solid rgba(245,191,75,.22);
  box-shadow:0 28px 70px rgba(0,0,0,.4);
}

.pizza-flavor-panel{
  padding:28px;
  border-radius:34px;
  background:linear-gradient(135deg,rgba(245,191,75,.16),rgba(255,255,255,.04));
  border:1px solid rgba(245,191,75,.16);
}

.pizza-flavor-panel span{color:#ffc64e}
.pizza-flavor-panel h1{
  margin:0 0 18px;
  font-size:42px;
  line-height:.98;
}

.pizza-flavor-tabs{
  grid-column:1;
  grid-row:2 / span 3;
  position:sticky;
  top:16px;
  padding:14px;
  border-radius:28px;
  background:rgba(43,18,8,.88);
  border:1px solid rgba(245,191,75,.18);
}

.pizza-flavor-tabs .chips{
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  padding:0;
  margin:0;
  border-radius:0;
  background:rgba(255,255,255,.06);
  background:transparent;
  overflow:visible;
}

.pizza-flavor-tabs .chip{
  justify-content:flex-start;
  border-radius:16px;
}

.pizza-favorites-strip .carousel{justify-content:center}
.pizza-favorites-strip{grid-column:2}
.pizza-menu-board .list{gap:12px}
.pizza-menu-board{grid-column:2}

body[data-cardapio-layout="acai"]{
  align-items:flex-start;
  background:#17052a url("img/layout-acai.svg") center/cover fixed;
}

body[data-cardapio-layout="acai"] .app{
  max-width:1120px;
}

.acai-shell{
  padding:16px 16px 112px;
}

.acai-top .topbar{
  border-radius:26px;
  background:linear-gradient(90deg,#2b094a,#062c4a);
  border-color:rgba(185,74,255,.22);
}

.acai-builder-hero{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:16px;
  margin:16px 0;
}

.acai-cup-panel{
  padding:24px;
  border-radius:34px;
  background:linear-gradient(160deg,#a83dff,#00c3ff);
  color:white;
}

.acai-cup-panel h1{
  margin:0 0 18px;
  font-size:34px;
  line-height:1;
}

.acai-promo-cup .promo{
  height:330px;
  border-radius:38px;
  overflow:hidden;
  border-color:rgba(185,74,255,.24);
}

.acai-builder-grid{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:16px;
}

.acai-sidebar{
  position:sticky;
  top:14px;
  align-self:start;
  padding:16px;
  border-radius:28px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
}

.acai-sidebar .chips,
.acai-sidebar .carousel{
  display:grid;
  grid-template-columns:1fr;
  overflow:visible;
}

.acai-sidebar .chip{justify-content:flex-start}
.acai-sidebar .section__title{margin-top:18px}
.acai-products .list{
  display:flex;
  gap:16px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  padding:2px 2px 14px;
}

.acai-products .item{
  min-width:min(330px, 84vw);
  scroll-snap-align:start;
}

body[data-cardapio-layout="confectionery"]{
  align-items:flex-start;
  background:#fff4f7 url("img/layout-confectionery.svg") center/cover fixed;
  color:#2b1720;
}

body[data-cardapio-layout="confectionery"]::after{background:rgba(255,244,247,.72)}
body[data-cardapio-layout="confectionery"] .app{max-width:1080px;color:#2b1720}
.confectionery-shell{padding:18px 18px 112px}
.confectionery-nav .topbar{
  border-radius:30px;
  background:rgba(255,255,255,.86);
  color:#2b1720;
  border-color:rgba(138,70,96,.14);
}
.confectionery-window{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:20px;
  margin:18px 0;
}
.confectionery-copy{
  padding:30px;
  border-radius:38px;
  background:#fff;
  box-shadow:0 28px 80px rgba(138,70,96,.16);
}
.confectionery-copy span{color:#b76282}
.confectionery-copy h1{margin:0 0 20px;font-size:38px;line-height:1;color:#2b1720}
.confectionery-art .promo{height:380px;border-radius:42px;overflow:hidden}
.confectionery-categories .chips{justify-content:center}
.confectionery-products .list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}

body[data-cardapio-layout="diamond"]{
  align-items:flex-start;
  background:#030405 url("img/layout-diamond.svg") center/cover fixed;
}

body[data-cardapio-layout="diamond"]::before{
  background:radial-gradient(circle at 50% -10%, rgba(255,255,255,.16), transparent 30%), linear-gradient(180deg,#050607,#000);
  filter:none;
  transform:none;
}

body[data-cardapio-layout="diamond"] .app{
  max-width:1160px;
}

.diamond-shell{padding:18px 18px 120px}
.diamond-nav .topbar{
  border-radius:0;
  background:transparent;
  border:1px solid rgba(255,255,255,.12);
}
.diamond-cover{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  min-height:460px;
  margin:20px 0;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg,#060708,#171a20 58%,#030405);
}
.diamond-editorial{
  padding:48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.diamond-editorial span{color:#d9d9d9}
.diamond-editorial h1{margin:0 0 24px;font-size:46px;line-height:.96;font-family:Georgia,serif}
.diamond-visual .promo{height:100%;border-radius:0;border:0}
.diamond-menu-tabs .chips{justify-content:flex-end;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:14px}
.diamond-favorites .carousel{justify-content:flex-end}
.diamond-menu-list .list{gap:12px}

@media (max-width: 820px){
  body[data-cardapio-layout="burger"] .app,
  body[data-cardapio-layout="pizza"] .app,
  body[data-cardapio-layout="acai"] .app,
  body[data-cardapio-layout="confectionery"] .app,
  body[data-cardapio-layout="diamond"] .app{
    max-width:430px;
  }

  .burger-shell,
  .pizza-shell,
  .acai-shell,
  .confectionery-shell,
  .diamond-shell{
    padding:10px 10px 96px;
  }

  .burger-stage,
  .pizza-showcase,
  .acai-builder-hero,
  .acai-builder-grid,
  .confectionery-window,
  .diamond-cover{
    grid-template-columns:1fr;
  }

  .pizza-shell{
    grid-template-columns:1fr;
  }

  .pizza-header,
  .pizza-showcase,
  .pizza-flavor-tabs,
  .pizza-favorites-strip,
  .pizza-menu-board{
    grid-column:1;
  }

  .pizza-flavor-tabs{
    position:relative;
    top:auto;
    grid-row:auto;
  }

  .pizza-flavor-tabs .chips{
    display:flex;
    flex-direction:row;
    overflow-x:auto;
  }

  .burger-stage-main .promo,
  .acai-promo-cup .promo,
  .confectionery-art .promo,
  .diamond-visual .promo{
    height:300px;
  }

  .burger-combo-board{
    min-height:0;
  }

  .burger-combo-board h2,
  .pizza-flavor-panel h1,
  .acai-cup-panel h1,
  .confectionery-copy h1,
  .diamond-editorial h1{
    font-size:28px;
  }

  .burger-filter-rail{
    grid-template-columns:1fr;
  }

  .burger-grid-house .list,
  .confectionery-products .list{
    grid-template-columns:1fr;
  }

  .pizza-round-promo .promo{
    width:min(340px,100%);
    height:min(340px,calc(100vw - 40px));
    margin:0 auto;
  }

  .acai-sidebar{
    position:relative;
    top:auto;
  }

  .acai-sidebar .chips{
    display:flex;
    overflow-x:auto;
  }

  .diamond-cover{
    min-height:0;
  }

  .diamond-editorial{
    padding:28px;
  }

  .diamond-card-body{
    grid-template-columns:1fr;
  }

  .diamond-card-side{
    justify-content:space-between;
  }
}

body[data-cardapio-layout="burger"] .list,
body[data-cardapio-layout="acai"] .list{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
}

body[data-cardapio-layout="burger"] .item,
body[data-cardapio-layout="acai"] .item{
  height:auto;
  min-height: 250px;
  flex-direction:column;
  gap:0;
  border-radius:22px;
}

body[data-cardapio-layout="burger"] .item__img,
body[data-cardapio-layout="acai"] .item__img{
  width:100%;
  height:140px;
  flex:0 0 140px;
}

body[data-cardapio-layout="burger"] .item__img img,
body[data-cardapio-layout="acai"] .item__img img{
  height:100%;
}

body[data-cardapio-layout="burger"] .item__body,
body[data-cardapio-layout="acai"] .item__body{
  min-height: 112px;
  padding: 11px;
}

body[data-cardapio-layout="burger"] .item__top,
body[data-cardapio-layout="acai"] .item__top{
  flex-direction:column;
  gap:4px;
}

body[data-cardapio-layout="burger"] .quickAddBtn,
body[data-cardapio-layout="acai"] .quickAddBtn{
  position:static;
  width:100%;
  margin-top:auto;
  padding:9px 10px;
  border-radius:12px;
}

body[data-cardapio-layout="burger"] .item{
  background: linear-gradient(180deg, rgba(255,176,46,.12), rgba(255,255,255,.035));
  border-color: rgba(255,176,46,.18);
}

body[data-cardapio-layout="burger"] .promo{
  border-radius: 26px;
}

body[data-cardapio-layout="acai"] .item{
  background: linear-gradient(180deg, rgba(172,64,255,.14), rgba(0,194,255,.045));
  border-color: rgba(172,64,255,.2);
}

body[data-cardapio-layout="acai"] .chip.active{
  border-color: rgba(172,64,255,.5);
  background: rgba(172,64,255,.16);
}

.item__oldPrice{
  display:inline-block;
  margin-right:6px;
  color:rgba(255,255,255,.45);
  font-size:.82em;
  text-decoration:line-through;
}

.menuItem--delivery{
  height:126px;
  border-left:4px solid rgba(29,185,84,.8);
}

.menuItem--delivery .quickAddBtn{
  right:12px;
  bottom:12px;
}

.menuItem--burger{
  min-height:300px;
  border-radius:30px;
  background:linear-gradient(180deg,#2a1407,#120905);
  border-color:rgba(255,176,46,.22);
}

.menuItem--burger .burger-card-photo{
  width:100%;
  height:168px;
  flex:0 0 168px;
  border-radius:22px;
  margin:0;
}

.menuItem--burger .burger-card-body{
  padding:14px;
  min-height:130px;
}

.burger-card-flags span,
.burger-card-flags .badge{
  background:#ffb22e;
  color:#1a0d05;
  border:0;
}

.burger-card-bottom{
  margin-top:auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.menuItem--pizza{
  min-height:128px;
  border-radius:70px 24px 24px 70px;
  background:linear-gradient(90deg,rgba(245,191,75,.16),rgba(92,20,12,.65));
  border-color:rgba(245,191,75,.22);
}

.menuItem--pizza .pizza-card-photo{
  width:104px;
  height:104px;
  flex:0 0 104px;
  margin:12px 0 12px 12px;
  border-radius:50%;
  box-shadow:0 0 0 6px rgba(245,191,75,.14);
}

.menuItem--pizza .pizza-card-body{
  padding:14px 112px 14px 0;
}

.pizza-card-meta{
  display:flex;
  gap:6px;
  margin-top:auto;
}

.pizza-card-meta span{
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.09);
  color:rgba(255,255,255,.7);
  font-size:11px;
  font-weight:900;
}

.menuItem--acai{
  min-height:292px;
  border-radius:34px;
  background:linear-gradient(180deg,rgba(168,61,255,.22),rgba(0,195,255,.08));
  border-color:rgba(185,74,255,.24);
}

.menuItem--acai .acai-card-cup{
  width:118px;
  height:150px;
  flex:0 0 auto;
  margin:18px auto 0;
  border-radius:36px 36px 48px 48px;
  box-shadow:inset 0 14px 0 rgba(255,255,255,.16),0 18px 42px rgba(0,0,0,.3);
}

.menuItem--acai .acai-card-body{
  padding:14px;
  text-align:center;
}

.acai-card-topline span,
.acai-card-topline .badge{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.18);
}

.acai-card-build{
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}

.acai-card-build i{
  width:22px;
  height:22px;
  border-radius:50%;
  background:linear-gradient(135deg,#ff5fd7,#00d4ff);
}

.menuItem--confectionery{
  min-height:360px;
  display:flex;
  flex-direction:column;
  border-radius:34px;
  background:#fff;
  color:#2b1720;
  border-color:rgba(138,70,96,.12);
  box-shadow:0 24px 64px rgba(138,70,96,.14);
}

.menuItem--confectionery .confectionery-card-photo{
  width:100%;
  height:210px;
  flex:0 0 210px;
  border-radius:28px;
  margin:0;
}

.menuItem--confectionery .confectionery-card-body{
  padding:16px;
}

.menuItem--confectionery .item__name,
.menuItem--confectionery .item__price{
  color:#2b1720;
}

.menuItem--confectionery .item__desc{
  color:rgba(43,23,32,.62);
}

.confectionery-card-footer{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  color:#b76282;
  font-weight:900;
}

.menuItem--diamond{
  height:auto;
  min-height:150px;
  border-radius:0;
  background:transparent;
  border:1px solid rgba(255,255,255,.14);
}

.diamond-card-index{
  width:92px;
  display:grid;
  place-items:center;
  color:rgba(255,255,255,.5);
  font-family:Georgia,serif;
  text-transform:uppercase;
  letter-spacing:1px;
}

.diamond-card-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px;
  gap:22px;
  padding:18px;
}

.diamond-card-photo{
  width:82px;
  height:82px;
  margin-left:auto;
  border-radius:0;
}

.diamond-card-side{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
}

.menuItem--diamond .quickAddBtn{
  position:static;
  border-radius:0;
  background:#fff;
  color:#050607;
}

body[data-cardapio-layout="burger"] .bottomBar{
  background:#ffb22e;
  border:0;
  border-radius:999px;
}

body[data-cardapio-layout="burger"] .bottomBar .cartBtn,
body[data-cardapio-layout="burger"] .bottomBar .waBtn{
  color:#1a0d05;
  background:rgba(255,255,255,.24);
}

body[data-cardapio-layout="pizza"] .bottomBar{
  border-radius:18px;
  background:#4b130d;
  border-color:rgba(245,191,75,.24);
}

body[data-cardapio-layout="pizza"] .waBtn{
  background:linear-gradient(180deg,#ffc64e,#d14a22);
}

body[data-cardapio-layout="acai"] .bottomBar{
  background:linear-gradient(90deg,#8f2bff,#00b9ff);
  border:0;
}

body[data-cardapio-layout="confectionery"] .bottomBar{
  background:#fff;
  color:#2b1720;
  border-color:rgba(138,70,96,.14);
}

body[data-cardapio-layout="confectionery"] .cartBtn{
  color:#2b1720;
  background:#fff4f7;
}

body[data-cardapio-layout="confectionery"] .waBtn{
  background:linear-gradient(180deg,#f3a6c8,#b76282);
  color:#2b1720;
}

body[data-cardapio-layout="diamond"] .bottomBar{
  border-radius:0;
  background:#050607;
  border-color:rgba(255,255,255,.2);
}

body[data-cardapio-layout="diamond"] .cartBtn,
body[data-cardapio-layout="diamond"] .waBtn{
  border-radius:0;
}

body[data-cardapio-layout="diamond"] .waBtn{
  background:#fff;
  color:#050607;
}

body[data-cardapio-layout="burger"] .drawer__panel{
  background:#180c06;
  border-left-color:rgba(255,176,46,.24);
}

body[data-cardapio-layout="pizza"] .drawer__panel{
  background:#2a0906;
  border-left-color:rgba(245,191,75,.2);
}

body[data-cardapio-layout="acai"] .drawer__panel{
  background:#160529;
  border-left-color:rgba(185,74,255,.24);
}

body[data-cardapio-layout="confectionery"] .drawer__panel{
  background:#fff8fa;
  color:#2b1720;
}

body[data-cardapio-layout="diamond"] .drawer__panel{
  background:#030405;
  border-left-color:rgba(255,255,255,.22);
}

body[data-cardapio-layout="pizza"] .list{
  gap:10px;
}

body[data-cardapio-layout="pizza"] .item{
  height:112px;
  gap:12px;
  border-radius:999px 18px 18px 999px;
  background: linear-gradient(90deg, rgba(255,198,78,.12), rgba(255,255,255,.035));
  border-color: rgba(255,198,78,.18);
}

body[data-cardapio-layout="pizza"] .item__img{
  width:92px;
  height:92px;
  flex:0 0 92px;
  margin:10px 0 10px 10px;
  border-radius:50%;
}

body[data-cardapio-layout="pizza"] .item__body{
  padding:10px 92px 10px 0;
}

body[data-cardapio-layout="pizza"] .item__name{
  min-height:0;
  -webkit-line-clamp:1;
}

body[data-cardapio-layout="pizza"] .item__desc{
  min-height:0;
  -webkit-line-clamp:1;
}

body[data-cardapio-layout="pizza"] .quickAddBtn{
  right:12px;
  bottom:34px;
  border-radius:999px;
}

@media (min-width:900px){
  body[data-cardapio-layout="burger"] .list,
  body[data-cardapio-layout="acai"] .list{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:360px){
  body[data-cardapio-layout="burger"] .list,
  body[data-cardapio-layout="acai"] .list{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   FOOT INFO
========================================================= */
.footerInfo{
  margin-top: 16px;
  padding: 12px 12px;
  border-radius: 18px;
  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.footerInfo__line{
  display:flex; gap:10px; align-items:center;
  color: rgba(255,255,255,.86);
  font-size: 13px;
}
.footerInfo__line + .footerInfo__line{margin-top:8px}

/* =========================================================
   BOTTOM BAR
========================================================= */
.bottomBar{
  position: fixed;
  left:50%;
  transform: translateX(-50%);
  bottom: 16px;
  width: min(430px, calc(100% - 20px));
  display:flex;
  gap: 10px;
  z-index: 30;

  /* FIX legibilidade */
  padding: 10px;
  border-radius: 22px;
  background: rgba(15,15,18,.92);
  border: 1px solid rgba(255,255,255,.10);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.cartBtn{
  flex: 0 0 auto;
  width: 150px;
  display:flex; align-items:center; justify-content:center; gap:10px;
  padding: 12px 12px;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--text);
  font-weight:1000;
  cursor:pointer;
  position: relative;
}
.cartBtn__badge{
  position:absolute;
  top:-8px; right:-8px;
  width: 28px; height: 28px;
  border-radius: 999px;
  display:grid; place-items:center;
  background: rgba(255,176,46,.95);
  color:#101014;
  font-weight:1100;
  border: 2px solid rgba(15,15,18,.9);
}
.waBtn{
  flex:1;
  display:flex; align-items:center; justify-content:center; gap:10px;
  padding: 12px 12px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.24);
  background: linear-gradient(180deg, var(--green), var(--green2));
  color: #08110a;
  font-weight:1100;
  cursor:pointer;
  box-shadow: 0 14px 28px rgba(29,185,84,.22);
}
.waBtn__icon{filter: saturate(1.2)}

/* =========================================================
   DRAWER (CART)
========================================================= */
.drawer{
  position: fixed; inset:0;
  z-index: 60;
  display:none;
}
.drawer.open{display:block;}
.drawer__overlay{
  position:absolute; inset:0;
  background: rgba(0,0,0,.55); /* escurece ao invés de cinzar */
}
.drawer__panel{
  position:absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: min(420px, 100%);
  background: rgba(20,20,26,.98);
  border-left:1px solid rgba(255,255,255,.10);
  color:#fff;
  box-shadow: var(--shadow);
  display:flex;
  flex-direction:column;
}
.drawer__head{
  padding: 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.drawer__title{font-weight:1100; font-size:16px;}
.drawer__body{
  padding: 14px;
  overflow:auto;
}

.cartList{display:flex; flex-direction:column; gap:12px;}
.cartItem{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding: 12px;
  border-radius: 16px;

  background: var(--cart-item-bg);
  border:1px solid var(--cart-item-border);

  transition: .2s;
}

.cartItem:hover{
  background: rgba(255,255,255,.07);
}
.cartItem__img{
  width:60px; height:60px;
  border-radius: 14px;
  overflow:hidden;
  background: rgba(255,255,255,.06);
  flex:0 0 auto;
}
.cartItem__img img{width:100%; height:100%; object-fit:cover; display:block;}
.cartItem__body{flex:1; min-width:0; display:flex; flex-direction:column; gap:6px;}
.cartItem__row{display:flex; justify-content:space-between; gap:10px; align-items:flex-start;}
.cartItem__name{
  font-weight:1000;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.cartItem__price{font-weight:1100; white-space:nowrap;}
.cartItem__meta{font-size:12px; color: var(--muted);}
.cartItem__controls{
  display:flex; align-items:center; gap:10px; margin-top:4px;
}
.cartMeta input::placeholder{
  color: rgba(255,255,255,.55);
}
.smallQty{
  display:flex; align-items:center; gap:8px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 14px;
  padding: 6px 8px;
}
.smallQty button{
  border:0;
  background: rgba(255,255,255,.06);
  color:var(--text);
  width:28px; height:28px;
  border-radius: 12px;
  cursor:pointer;
  font-weight:1100;
}
.smallQty span{min-width:16px; text-align:center; font-weight:1100;}
.trashBtn{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--text);
  border-radius: 14px;
  padding: 8px 10px;
  cursor:pointer;
  font-weight:900;
}

.cartMeta{
  margin-top: 14px;
  padding: 14px;

  border-radius: 18px;
  border:1px solid var(--cart-section-border);
  background: var(--cart-section-bg);

  display:flex;
  flex-direction:column;
  gap:12px;
}

.cartMeta__row{
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size: 13px;
}
.cartMeta input, .cartMeta select{
  width:100%;
  padding: 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.15);
  color: var(--text);
  outline:none;
}
/* ===== FIX FINAL RADIO ===== */

.radioRow{
  background: var(--cart-highlight);
  border:1px solid var(--cart-highlight-border);
  padding:10px;
  border-radius:12px;

  display:flex;
  gap:10px;
}

.radio{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  flex:1; /* divide espaço igualmente */
  min-width:0; /* evita quebrar layout */
}

/* ESSA PARTE RESOLVE DE VEZ */
.radio input{
  margin:0;
  width:16px;
  height:16px;
  flex-shrink:0;
  position:relative;
  top:0;
}

/* evita quebra zoada */
.radio span{
  display:block;
}

.cartTotals{
  margin-top: 12px;
  padding: 14px;

  border-radius: 18px;
  border:1px solid var(--cart-highlight-border);

  background: linear-gradient(
    180deg,
    var(--cart-total-bg),
    rgba(0,0,0,.15)
  );
}
.totRow{display:flex; justify-content:space-between; color: rgba(255,255,255,.88); font-size: 13px;}
.totRow + .totRow{margin-top:8px}
.totRow--big{
  font-size: 16px;
  font-weight: 1100;
  color: #d6ff9d;
}

.cartHint{
  margin: 12px 0;
  padding: 10px 12px;
  border-radius: 16px;
  border:1px solid rgba(255,176,46,.18);
  background: rgba(255,176,46,.10);
  color: rgba(255,255,255,.92);
  font-size: 13px;
}

/* =========================================================
   PRODUCT VIEW
========================================================= */
.productTop{
  display:flex; align-items:center; justify-content:space-between;
  margin: 4px 0 10px;
}
.backBtn{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  color: var(--text);
  width: 44px; height:44px;
  border-radius: 14px;
  cursor:pointer;
  font-size: 18px;
}
.productTop__title{font-weight:1100;}

/* ✅ AJUSTE NECESSÁRIO: Hero “profissional”, maior, sem cortar e sem ficar vazio */
.productHero{
  position: relative;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  width: 100%;

  height: 480px;                 /* <<< AUMENTA a altura do card aqui */
  background: rgba(255,255,255,.04);
}
.productHero::before{
  content:"";
  position:absolute; inset:0;
  background-image: var(--hero-img);
  background-size: cover;
  background-position: center;
  filter: blur(22px) brightness(.55) saturate(1.1);
  transform: scale(1.2);
}
.productHero::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.55));
}
/* a imagem sempre ocupa o card inteiro */
.productHero img{
  width: 100%;
  height: 100%;
  object-fit: cover;              /* <<< PREENCHE o card SEM distorcer */
  object-position: center;
  display: block;
}
@media (max-width:520px){
  .productHero{
    aspect-ratio: 4 / 3;
    max-height: 360px;
  }
}

.productCard{
  margin-top: 12px;
  padding: 14px;
  border-radius: 22px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}
.productRow{display:flex; justify-content:space-between; gap:12px; align-items:flex-start;}
.productName{margin:0; font-size: 20px; line-height:1.1;}
.productPrice{font-weight:1100; font-size: 18px; white-space:nowrap;}
.starsRow{margin: 8px 0 10px; color:#ffd25f}
.productDesc{margin:0; color: var(--muted); line-height:1.35; font-size: 13px;}

.options{margin-top: 12px; display:flex; flex-direction:column; gap:10px;}
.optBlock{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  border-radius: 18px;
  padding: 12px;
}
.optTitle{font-weight:1100; margin-bottom:8px;}
.optRow{display:flex; align-items:center; justify-content:space-between; gap:10px; padding: 8px 0;}
.optRow + .optRow{border-top:1px solid rgba(255,255,255,.08);}
.optRow label{display:flex; align-items:center; gap:10px; font-weight:900;}
.optRow input{accent-color: var(--green);}
.optPrice{color: rgba(255,255,255,.86); font-weight:1100; white-space:nowrap;}

.note{margin-top: 12px; display:flex; flex-direction:column; gap:8px;}
.note input{
  width:100%;
  padding: 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.15);
  color: var(--text);
  outline:none;
}

.addRow{
  margin-top: 14px;
  display:flex;
  gap:12px;
  align-items:center;
}
.qty{
  display:flex; align-items:center; gap:10px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 18px;
  padding: 8px 10px;
}
.qtyBtn{
  width:38px; height:38px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  color:var(--text);
  font-weight:1100;
  cursor:pointer;
}
.qtyVal{min-width:20px; text-align:center; font-weight:1100;}

/* =========================================================
   MODAL (REVIEWS)
========================================================= */
.modal{
  position: fixed; inset:0;
  z-index: 70;
  display:none;
}
.modal.open{display:block;}
.modal__overlay{position:absolute; inset:0; background: rgba(0,0,0,.60);}
.modal__panel{
  position:absolute;
  left:50%; top:50%;
  transform: translate(-50%,-50%);
  width: min(420px, calc(100% - 20px));
  max-height: 78vh;
  background: rgba(20,20,26,.98);
  border:1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  box-shadow: var(--shadow);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.modal__head{
  padding: 14px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.modal__title{font-weight:1100;}
.modal__body{padding: 14px; overflow:auto; display:flex; flex-direction:column; gap:10px;}
.review{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 18px;
  padding: 12px;
}
.review__top{display:flex; justify-content:space-between; gap:10px;}
.review__name{font-weight:1100;}
.review__stars{color:#ffd25f;}
.review__txt{margin-top:6px; color: var(--muted); font-size: 13px; line-height:1.35;}

/* Modal Informações (usa seu estilo modal existente) */
.review--empty strong,
.review--empty span{display:block;}
.review--empty span{margin-top:6px; color:var(--muted);}
.reputationHero{
  border:1px solid rgba(119,255,75,.26);
  background:linear-gradient(135deg, rgba(34,197,94,.18), rgba(255,255,255,.045));
  border-radius:20px;
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.reputationHero strong{display:block; font-size:38px; line-height:1; font-weight:1000;}
.reputationHero span{display:block; margin-top:6px; color:var(--muted); font-size:13px;}
.reputationHero__stars{color:#ffd25f; font-size:18px; white-space:nowrap;}
.reputationBadges{display:flex; flex-wrap:wrap; gap:8px;}
.reputationBadges span{
  border:1px solid rgba(119,255,75,.26);
  background:rgba(119,255,75,.10);
  color:#c7ffb8;
  border-radius:999px;
  padding:8px 10px;
  font-size:12px;
  font-weight:900;
}
.reputationDistribution{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  border-radius:18px;
  padding:12px;
  display:grid;
  gap:8px;
}
.reputationBar{
  display:grid;
  grid-template-columns:34px 1fr 28px;
  gap:8px;
  align-items:center;
  font-size:12px;
}
.reputationBar i{height:8px; border-radius:999px; background:rgba(255,255,255,.10); overflow:hidden;}
.reputationBar b{display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#77ff4b,#ffd25f);}
.reputationBar em{color:var(--muted); font-style:normal; text-align:right;}
.reputationMetrics{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px;}
.reputationMetrics div{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  border-radius:16px;
  padding:10px;
}
.reputationMetrics strong,
.reputationMetrics span{display:block;}
.reputationMetrics span{margin-top:4px; color:var(--muted); font-size:11px;}
.reputationSection{display:grid; gap:9px;}
.reputationSection h3,
.reviewForm h3{margin:0; font-size:15px;}
.reputationProduct{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  border-radius:15px;
  padding:10px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:4px 10px;
}
.reputationProduct span{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:900;}
.reputationProduct b{color:#ffd25f;}
.reputationProduct small{color:var(--muted); grid-column:1 / -1;}
.reputationInsight{
  margin:0;
  border:1px solid rgba(119,255,75,.18);
  background:rgba(119,255,75,.08);
  border-radius:14px;
  padding:10px;
  color:#e9ffe4;
  font-size:13px;
  line-height:1.35;
}
.reviewForm{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  border-radius:18px;
  padding:12px;
  display:grid;
  gap:10px;
}
.reviewForm input,
.reviewForm select,
.reviewForm textarea{
  width:100%;
  min-width:0;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.24);
  color:#fff;
  border-radius:12px;
  padding:11px 12px;
  outline:none;
}
.reviewForm textarea{min-height:92px; resize:vertical;}
.reviewForm label{display:grid; gap:6px; color:var(--muted); font-size:12px;}
.reviewForm__grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px;}
.reviewForm button{
  min-height:46px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,#77ff4b,#16a34a);
  color:#061306;
  font-weight:1000;
  cursor:pointer;
}
.reviewForm button:disabled{opacity:.65; cursor:wait;}
.reviewForm small{color:var(--muted);}

@media (max-width:520px){
  .reputationHero{align-items:flex-start; flex-direction:column;}
  .reputationHero strong{font-size:34px;}
  .reputationMetrics,
  .reviewForm__grid{grid-template-columns:1fr;}
}

.infoBlock{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 18px;
  padding: 12px;
}
.infoTitle{ font-weight:1100; margin-bottom:9px; }
.infoText{ color: var(--muted); font-size: 16px; line-height:1.35; }
.infoTitlee{ font-weight:1100; margin-bottom:9px; }
.infoTextt{ color: #fa4700; font-size: 16px; line-height:1.35; }


/* trava scroll do fundo quando modal abre */
.app.modalLock{
  overflow: hidden;
  height: 100vh;
}

/* ===============================
   FORÇA TEXTO BRANCO NO SITE TODO
=================================*/

body{
  color: #ffffff;
}

/* todos textos herdam branco */
h1,h2,h3,h4,h5,h6,
p,
span,
label,
small,
strong,
b,
a,
div{
  color: inherit;
}
/* =========================
   MICRO ANIMAÇÕES — CLIENTE
========================= */

.item,
.favCard,
.promo,
.btn,
.cartBtn,
.waBtn,
.iconBtn,
.chip,
.qtyBtn,
.brand,
.productCard,
.optBlock{
  transition:
    transform .18s ease,
    background-color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    filter .18s ease,
    opacity .18s ease;
  will-change: transform;
}

.promo__bg{
  transition: transform .35s ease, filter .25s ease;
}

.item__img img,
.favCard__img img,
.brand__icon img{
  transition: transform .28s ease, filter .25s ease;
}

@media (hover:hover){
  .item:hover{
    transform: translateY(-2px);
    border-color: rgba(255,255,255,.16);
    box-shadow: 0 14px 30px rgba(0,0,0,.18);
  }

  .item:hover .item__img img{
    transform: scale(1.04);
    filter: brightness(1.04);
  }

  .favCard:hover{
    transform: translateY(-2px);
    border-color: rgba(255,255,255,.16);
    box-shadow: 0 14px 30px rgba(0,0,0,.18);
  }

  .favCard:hover .favCard__img img{
    transform: scale(1.04);
    filter: brightness(1.04);
  }

  .promo:hover{
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgba(0,0,0,.22);
  }

  .promo:hover .promo__bg{
    transform: scale(1.05);
    filter: saturate(1.08) contrast(1.06) brightness(1.03);
  }

  .btn:hover,
  .cartBtn:hover,
  .waBtn:hover,
  .iconBtn:hover,
  .qtyBtn:hover{
    transform: translateY(-2px);
    filter: brightness(1.06);
  }

  .chip:hover{
    transform: translateY(-1px);
    background: rgba(255,255,255,.08);
  }

  .brand:hover{
    transform: translateY(-1px);
  }

  .brand:hover .brand__icon img{
    transform: scale(1.05);
  }

  .productCard:hover,
  .optBlock:hover{
    transform: translateY(-1px);
    border-color: rgba(255,255,255,.14);
  }
}

.btn:active,
.cartBtn:active,
.waBtn:active,
.iconBtn:active,
.qtyBtn:active,
.chip:active{
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce){
  .item,
  .favCard,
  .promo,
  .btn,
  .cartBtn,
  .waBtn,
  .iconBtn,
  .chip,
  .qtyBtn,
  .brand,
  .productCard,
  .optBlock,
  .promo__bg,
  .item__img img,
  .favCard__img img,
  .brand__icon img{
    transition:none !important;
    transform:none !important;
  }
}
/* Remove highlight azul ao tocar no mobile */
* {
  -webkit-tap-highlight-color: transparent;
}
button,
a {
  touch-action: manipulation;
}
/* =========================
   FIX ALINHAMENTO DOS PREÇOS
========================= */

.item__top{
  display:grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  column-gap: 12px;
  align-items: start;
}

.item__name{
  min-width: 0;
  margin-right: 0;
}

.item__price{
  min-width: 92px;
  text-align: right;
  justify-self: end;
  align-self: start;
}


/* BOTÃO PROVISÓRIO ADMIN */
.admin-temp-btn{
  position: fixed;
  right: 18px;
  bottom: 88px;
  z-index: 9999;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 56px;
  height: 56px;
  padding: 0 16px;

  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(15,15,18,.92);
  backdrop-filter: blur(10px);

  color: #fff;
  text-decoration: none;
  font-weight: 900;
  font-size: 14px;
  letter-spacing: .2px;

  box-shadow: 0 14px 30px rgba(0,0,0,.28);
  transition:
    transform .18s ease,
    background-color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    filter .18s ease;
}

@media (hover:hover){
  .admin-temp-btn:hover{
    transform: translateY(-2px);
    background: rgba(28,28,34,.96);
    border-color: rgba(255,255,255,.22);
    box-shadow: 0 18px 34px rgba(0,0,0,.34);
    filter: brightness(1.04);
  }
}

.admin-temp-btn:active{
  transform: translateY(0);
}

@media (max-width: 640px){
  .admin-temp-btn{
    right: 14px;
    bottom: 82px;
    height: 52px;
    min-width: 52px;
    padding: 0 14px;
    font-size: 13px;
  }
}

.status__pill.open {
  background: rgba(29,185,84,.12);
  border: 1px solid rgba(29,185,84,.30);
}

.status__pill.closing {
  background: rgba(255,165,0,.12);
  border: 1px solid rgba(255,165,0,.40);
}

.status__pill.closed {
  background: rgba(255,77,77,.12);
  border: 1px solid rgba(255,77,77,.40);
}

.status__pill.closed .status__dot {
  background: #ff4d4d;
}

.status__pill.closing .status__dot {
  background: orange;
}

.quickAddBtn{
  position:absolute;
  right:20px;
  bottom:20px;

  background: linear-gradient(180deg, var(--green), var(--green2));
  color:#08110a;

  border:none;
  padding:6px 10px;
  border-radius:10px;

  font-weight:900;
  font-size:15px;

  cursor:pointer;
  box-shadow:0 6px 12px rgba(29,185,84,.25);
}

.item{
  position:relative;
}

.quickAddBtn{
  transition: transform .18s ease, box-shadow .18s ease;
}

.quickAddBtn:hover{
  transform: scale(1.06);
  box-shadow:0 10px 20px rgba(29,185,84,.35);
}

.item{
  transition: transform .2s ease, box-shadow .2s ease;
}

.item:hover{
  transform: scale(1.015);
  box-shadow: 0 12px 30px rgba(0,0,0,.35);
}

.item__img img{
  transition: transform .25s ease;
}

.item:hover .item__img img{
  transform: scale(1.08);
}

body.modal-open{
  overflow: hidden;
}

.modal__panel{
  max-height: 90vh;
  overflow-y: auto;
}

body.modal-open{
  position: fixed;
  width: 100%;
  overflow: hidden;
}

select{
  background: rgba(255,255,255,.06);
}

select option{
  background: #18181f;
  color: #fff;
}

select{
  background: #515357;
  color: #fff;
  border: 1px solid rgba(255,255,255,.12);
}

select{
  background: linear-gradient(180deg, #6c6e74, #a0a5b1);
  color: #fff;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 10px;
  padding: 10px;
}

.floating {
  display: flex;
  animation: floatCard 3s ease-in-out infinite;
}

@keyframes floatCard {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-6px);
  }

  100% {
    transform: translateY(0px);
  }
}

.promoTexts{
  position:absolute;
  left:24px;
  bottom:24px;
  z-index:3;

  display:flex;
  flex-direction:column;
  gap:10px;

  max-width:70%;
}

.promoProductName{
  font-size:32px;
  font-weight:1000;
  line-height:1;

  color:white;

  text-shadow:
    0 4px 18px rgba(0,0,0,.55);
}

.promoPrices{
  display:flex;
  align-items:center;
  gap:12px;
}

.promoOldPrice{
  font-size:18px;
  font-weight:800;

  color:#ff5b5b;

  text-decoration:line-through;
}

.promoNewPrice{
  font-size:28px;
  font-weight:1000;

  color:#8dff8d;
}

.promoBtn{
  border:none;
  outline:none;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  height:42px;
  padding:0 16px;

  border-radius:999px;

  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);

  color:#fff;

  font-size:13px;
  font-weight:800;
  letter-spacing:.3px;

  backdrop-filter:blur(10px);

  transition:.2s ease;
}

.promoBtn:hover{
  background:rgba(255,255,255,.16);
  transform:translateY(-1px);
}

.promoBtn:active{
  transform:scale(.97);
}


@media (max-width:768px){

  .promoProductName{
    font-size:24px;
  }

  .promoNewPrice{
    font-size:22px;
  }

}



.comboSection{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}
.comboSection.hidden{display:none}
.comboHead h3{margin:0;font-size:18px;font-weight:1000;color:#fff}
.comboHead p{margin:6px 0 14px;font-size:13px;color:var(--muted)}
.comboCarousel{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding:2px 0 8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.comboCarousel::-webkit-scrollbar{display:none}
.comboCard{min-width:150px;max-width:150px;scroll-snap-align:start;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.10);cursor:pointer;position:relative}
.comboImg{height:105px;background:rgba(255,255,255,.06);overflow:hidden}
.comboImg img{width:100%;height:125%;object-fit:cover;object-position:center;display:block}
.comboInfo{padding:10px;display:flex;flex-direction:column;gap:6px}
.comboBadge{width:fit-content;padding:5px 8px;border-radius:999px;background:rgba(255,176,46,.16);border:1px solid rgba(255,176,46,.24);color:#fff;font-size:10px;font-weight:900}
.comboInfo strong{font-size:13px;line-height:1.15;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:30px}
.comboInfo small{font-size:13px;font-weight:1000;color:#1ed760}
.comboAddBtn{position:absolute;right:8px;top:8px;width:34px;height:34px;border:0;border-radius:999px;background:linear-gradient(180deg,var(--green),var(--green2));color:#07110a;font-size:22px;font-weight:1000;cursor:pointer;box-shadow:0 10px 24px rgba(29,185,84,.28)}
@media (max-width:520px){.comboCard{min-width:142px;max-width:142px}.comboImg{height:98px}}

  

/* =========================================================
   LAYOUTS INDEPENDENTES - OUTROS SISTEMAS
========================================================= */
.independent-menu{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:clip;
}

.independent-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  min-width:0;
}

.independent-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.independent-brand img{
  width:48px;
  height:48px;
  border-radius:14px;
  object-fit:cover;
  flex:0 0 auto;
}

.independent-brand strong,
.independent-header strong{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.independent-brand span,
.independent-header span{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:12px;
  font-weight:800;
}

.independent-header nav{
  display:flex;
  gap:8px;
  flex:0 0 auto;
}

.independent-header button,
.layout-search button,
.layout-cat,
.pizza-info-btn{
  min-height:40px;
  border:0;
  cursor:pointer;
  font-weight:950;
}

.independent-header button{
  padding:0 12px;
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.1);
}

.layout-search{
  display:flex;
  align-items:center;
  gap:8px;
  width:100%;
  min-width:0;
}

.layout-search input{
  width:100%;
  min-width:0;
  height:48px;
  border:0;
  outline:0;
  border-radius:16px;
  padding:0 14px;
  font-weight:800;
}

.layout-search.dark input{background:#120905;color:#fff;border:1px solid rgba(255,176,46,.22)}
.layout-search.wood input{background:rgba(255,246,220,.12);color:#fff;border:1px solid rgba(245,191,75,.18)}
.layout-search.neon input{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18)}
.layout-search.clean input{background:rgba(0,0,0,.32);color:#f4fff8;border-color:rgba(126,255,183,.18)}
.layout-search.soft input{background:#fff4f7;color:#2b1720}
.layout-search.glass input{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px)}

.layout-cat{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  border-radius:16px;
  padding:10px 12px;
  color:inherit;
  background:rgba(255,255,255,.08);
}

.layout-cat b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.layout-cat.active{
  background:#1ed760;
  color:#08110a;
}

.layout-promo{
  position:relative;
  overflow:hidden;
  cursor:pointer;
}

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

.layout-promo > div{
  position:absolute;
  inset:auto 0 0;
  padding:18px;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.82));
  color:#fff;
}

.layout-promo span{
  font-size:11px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.7px;
}

.layout-promo h2{
  margin:6px 0 8px;
  line-height:1;
}

.layout-promo p{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
}

.layout-promo small{
  color:#ff6b6b;
  text-decoration:line-through;
  font-weight:900;
}

.layout-promo strong{
  font-size:1.45rem;
}

.layout-product{
  position:relative;
  min-width:0;
  cursor:pointer;
  overflow:hidden;
}

.layout-product .quickAddBtn{
  display:none;
}

.layout-product-action{
  border:0;
  cursor:pointer;
  font-weight:1000;
}

.layout-product .item__img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.layout-product .item__name{
  font-weight:1000;
  line-height:1.08;
}

.layout-product .item__desc{
  line-height:1.35;
}

.layout-product--burger{
  min-height:390px;
  background:#150803;
  border:1px solid rgba(255,176,46,.2);
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}

.layout-product--burger .burger-card-photo{
  width:100%;
  height:230px;
  border-radius:0;
}

.layout-product--burger .burger-card-body{
  padding:16px;
}

.layout-product--burger .item__name{
  font-size:1.35rem;
}

.layout-product--burger .item__desc{
  color:rgba(255,255,255,.62);
  margin-top:8px;
}

.layout-product--pizza{
  min-height:138px;
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  gap:14px;
  align-items:center;
  padding:12px 128px 12px 12px;
}

.layout-product--pizza .pizza-card-photo{
  width:116px;
  height:116px;
  border-radius:50%;
  overflow:hidden;
  box-shadow:0 0 0 6px rgba(245,191,75,.14);
}

.layout-product--pizza .pizza-card-body{
  min-width:0;
}

.layout-product--pizza .item__top{
  display:grid;
  gap:6px;
}

.layout-product--pizza .item__name{
  font-family:Georgia,serif;
  font-size:1.25rem;
}

.layout-product--pizza .item__desc{
  color:rgba(255,247,226,.66);
}

.layout-product--acai{
  min-height:420px;
  display:flex;
  flex-direction:column;
  border-radius:34px;
}

.layout-product--acai .acai-card-cup{
  width:150px;
  height:190px;
  margin:22px auto 8px;
  border-radius:44px 44px 58px 58px;
  overflow:hidden;
}

.layout-product--acai .acai-card-body{
  padding:16px;
  text-align:center;
}

.layout-product--acai .item__name{
  font-size:1.25rem;
}

.layout-product--acai .item__desc{
  color:rgba(255,255,255,.66);
}

.layout-product--delivery{
  min-height:104px;
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:10px 104px 10px 10px;
}

.layout-product--delivery .delivery-card-photo{
  width:82px;
  height:82px;
  border-radius:16px;
  overflow:hidden;
}

.layout-product--delivery .item__name,
.layout-product--delivery .item__price{
  color:#f4fff8;
}

.layout-product--delivery .item__desc{
  color:rgba(244,255,248,.66);
  -webkit-line-clamp:1;
}

.layout-product--confectionery{
  min-height:430px;
  border-radius:34px;
  background:#fff;
  color:#2b1720;
  box-shadow:0 24px 70px rgba(138,70,96,.13);
}

.layout-product--confectionery .confectionery-card-photo{
  width:100%;
  height:260px;
  border-radius:0 0 34px 34px;
  overflow:hidden;
}

.layout-product--confectionery .confectionery-card-body{
  padding:18px;
}

.layout-product--confectionery .item__name{
  color:#2b1720;
  font-family:Georgia,serif;
  font-size:1.35rem;
}

.layout-product--confectionery .item__desc{
  color:rgba(43,23,32,.62);
}

.layout-product--diamond{
  min-height:162px;
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.035);
  backdrop-filter:blur(16px);
}

.layout-product--diamond .diamond-card-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:22px;
  padding:20px 150px 20px 0;
}

.layout-product--diamond .item__name{
  font-family:Georgia,serif;
  font-size:1.35rem;
  font-weight:500;
}

.layout-product--diamond .item__desc{
  color:rgba(255,255,255,.58);
}

.layout-empty{
  padding:24px;
  border-radius:20px;
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.72);
}

/* Hamburgueria */
.burger-system{
  padding:18px 18px 112px;
  color:#fff;
}

.burger-header{
  padding:14px 16px;
  border-radius:28px;
  background:rgba(16,7,3,.78);
  border:1px solid rgba(255,176,46,.18);
  backdrop-filter:blur(18px);
}

.burger-system-hero{
  min-height:540px;
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:20px;
  margin:20px 0;
}

.burger-system-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px;
  border-radius:38px;
  background:linear-gradient(135deg,rgba(255,176,46,.18),rgba(80,20,8,.65));
  border:1px solid rgba(255,176,46,.18);
}

.burger-system-copy span{
  color:#ffb22e;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:1px;
}

.burger-system-copy h1{
  max-width:560px;
  margin:14px 0;
  font-size:clamp(2.7rem,7vw,5.8rem);
  line-height:.86;
  letter-spacing:0;
}

.burger-system-copy p{
  max-width:440px;
  color:rgba(255,255,255,.68);
  font-size:1.05rem;
  line-height:1.45;
}

.burger-system-hero .layout-promo{
  min-height:540px;
  border-radius:42px;
  border:1px solid rgba(255,176,46,.22);
}

.burger-system-featured .layout-favorites{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.burger-system-featured button{
  min-height:150px;
  border:0;
  border-radius:28px;
  overflow:hidden;
  background:#201006;
  color:#fff;
  position:relative;
}

.burger-system-featured img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:brightness(.7);
}

.burger-system-featured span{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  font-weight:1000;
  text-align:left;
}

.burger-system-cats{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:18px 0;
}

.burger-system-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.burger-system-grid .layout-product{
  border-radius:34px;
  background:#160904;
}

.burger-system-grid .layout-product-action{
  position:absolute;
  right:16px;
  bottom:16px;
  padding:12px 16px;
  border-radius:999px;
  background:#ffb22e;
  color:#160904;
}

/* Pizzaria */
.pizza-system{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:24px;
  padding:18px 18px 112px;
  color:#fff7e2;
}

.pizza-header{
  grid-column:1 / -1;
  padding:14px 16px;
  border-radius:10px;
  background:rgba(41,16,7,.9);
  border:1px solid rgba(245,191,75,.18);
}

.pizza-system-sidebar{
  position:sticky;
  top:18px;
  align-self:start;
  min-width:0;
  padding:18px;
  border-radius:8px;
  background:rgba(42,18,8,.92);
  border:1px solid rgba(245,191,75,.2);
}

.pizza-system-sidebar > strong{
  display:block;
  margin-bottom:16px;
  color:#ffc64e;
  font-family:Georgia,serif;
  font-size:1.25rem;
}

.pizza-system-sidebar .layout-cat{
  width:100%;
  margin-top:9px;
  justify-content:flex-start;
  border-radius:6px;
}

.pizza-info-btn{
  width:100%;
  margin-top:16px;
  border-radius:6px;
  background:#ffc64e;
  color:#331207;
}

.pizza-system-content{
  min-width:0;
}

.pizza-system-content .layout-promo{
  height:380px;
  border-radius:50%;
  width:min(380px,100%);
  margin:0 auto 24px;
  border:12px solid rgba(245,191,75,.22);
}

.pizza-system-favorites .layout-favorites{
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding-bottom:10px;
}

.pizza-system-favorites button{
  min-width:180px;
  border:1px solid rgba(245,191,75,.18);
  border-radius:10px;
  background:rgba(255,255,255,.08);
  color:#fff7e2;
  padding:10px;
}

.pizza-system-favorites img{
  width:64px;
  height:64px;
  border-radius:50%;
  object-fit:cover;
}

.pizza-system-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.pizza-system-list .layout-product{
  background:rgba(43,18,8,.88);
  border:1px solid rgba(245,191,75,.18);
  border-radius:10px;
}

.pizza-system-list .layout-product-action{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  border-radius:999px;
  padding:10px 14px;
  background:#ffc64e;
  color:#331207;
}

/* Açaí */
.acai-system{
  padding:16px 16px 112px;
  color:#fff;
}

.acai-header{
  padding:14px;
  border-radius:24px;
  background:rgba(74,13,140,.6);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(18px);
}

.acai-system-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);
  gap:18px;
  margin:18px 0;
  padding:28px;
  border-radius:38px;
  background:linear-gradient(135deg,rgba(255,76,215,.28),rgba(0,196,255,.2));
  border:1px solid rgba(255,255,255,.14);
}

.acai-system-hero span{
  color:#79f7ff;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:1px;
}

.acai-system-hero h1{
  margin:10px 0;
  font-size:clamp(2.2rem,7vw,4.6rem);
  line-height:.92;
}

.acai-system-cats{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:4px 0 18px;
}

.acai-system .layout-promo{
  height:280px;
  border-radius:42px;
  border:1px solid rgba(255,255,255,.16);
  margin-bottom:18px;
}

.acai-system-products{
  display:flex;
  gap:16px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  padding:4px 2px 16px;
}

.acai-system-products .layout-product{
  min-width:min(330px,84vw);
  scroll-snap-align:start;
  border-radius:34px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.14);
}

.acai-system-products .layout-product-action{
  width:calc(100% - 24px);
  margin:0 12px 12px;
  border-radius:18px;
  min-height:46px;
  background:linear-gradient(90deg,#ff5fd7,#00d4ff);
  color:#fff;
}

.acai-system-favorites .layout-favorites{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.acai-system-favorites button{
  border:0;
  border-radius:22px;
  padding:10px;
  background:rgba(255,255,255,.1);
  color:#fff;
}

.acai-system-favorites img{
  width:100%;
  aspect-ratio:1;
  object-fit:cover;
  border-radius:18px;
}

/* Delivery rápido */
.delivery-system{
  min-height:100vh;
  padding:0 14px 112px;
  color:#f4fff8;
  background:#07140f;
}

.delivery-header{
  position:sticky;
  top:0;
  z-index:8;
  padding:14px 0;
  background:#07140f;
  border-bottom:1px solid rgba(126,255,183,.14);
}

.delivery-header span{
  color:rgba(244,255,248,.66);
}

.delivery-header button{
  color:#f4fff8;
  background:rgba(255,255,255,.08);
}

.delivery-system-command{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:22px 0;
}

.delivery-system-command span{
  color:#1db954;
  font-weight:1000;
  text-transform:uppercase;
  font-size:11px;
}

.delivery-system-command h1{
  margin:5px 0 0;
  font-size:2rem;
  line-height:1;
  max-width:280px;
}

.delivery-system-command button{
  border:0;
  border-radius:16px;
  padding:12px 14px;
  background:#101820;
  color:#fff;
  font-weight:1000;
}

.delivery-system-search{
  display:grid;
  gap:10px;
}

.delivery-system-search .layout-cat{
  background:rgba(255,255,255,.08);
  color:#f4fff8;
}

.delivery-system-search .layout-cat.active{
  background:#1db954;
}

.delivery-system-search{
  margin-bottom:16px;
}

.delivery-system-search > :last-child{
  display:flex;
  gap:8px;
  overflow-x:auto;
}

.delivery-system-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.delivery-system-list .layout-product{
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.25));
  border:1px solid rgba(126,255,183,.16);
  box-shadow:0 12px 34px rgba(0,0,0,.22);
}

.delivery-system-list .layout-product-action{
  position:absolute;
  right:12px;
  bottom:12px;
  border-radius:12px;
  padding:8px 10px;
  background:#1db954;
  color:#07110a;
}

/* Confeitaria */
.confectionery-system{
  padding:20px 20px 112px;
  color:#2b1720;
}

.confectionery-header{
  padding:16px;
  border-radius:34px;
  background:rgba(255,255,255,.82);
  box-shadow:0 22px 70px rgba(138,70,96,.14);
}

.confectionery-header button{
  background:#fff4f7;
  color:#2b1720;
}

.confectionery-system-window{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:22px;
  margin:22px 0;
}

.confectionery-system-copy{
  padding:36px;
  border-radius:42px;
  background:rgba(255,255,255,.9);
  box-shadow:0 30px 90px rgba(138,70,96,.15);
}

.confectionery-system-copy span{
  color:#b76282;
  font-weight:1000;
  text-transform:uppercase;
}

.confectionery-system-copy h1{
  margin:12px 0 24px;
  font-family:Georgia,serif;
  font-size:clamp(2.2rem,6vw,4.4rem);
  line-height:.96;
}

.confectionery-system-window .layout-promo{
  min-height:420px;
  border-radius:48px;
  box-shadow:0 34px 90px rgba(138,70,96,.2);
}

.confectionery-system-cats{
  display:flex;
  justify-content:center;
  gap:10px;
  overflow-x:auto;
  margin-bottom:18px;
}

.confectionery-system-cats .layout-cat{
  background:rgba(255,255,255,.82);
  color:#2b1720;
}

.confectionery-system-cats .layout-cat.active{
  background:#b76282;
  color:#fff;
}

.confectionery-system-products{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.confectionery-system-products .layout-product-action{
  width:calc(100% - 32px);
  margin:0 16px 16px;
  min-height:46px;
  border-radius:18px;
  background:#2b1720;
  color:#fff;
}

/* Black Diamond */
.diamond-system{
  min-height:100vh;
  padding:18px 18px 120px;
  color:#fff;
}

.diamond-header{
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.16);
}

.diamond-header > span{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  font-family:Georgia,serif;
  color:#fff;
}

.diamond-header button{
  border-radius:0;
  background:transparent;
  border:1px solid rgba(255,255,255,.18);
}

.diamond-system-cover{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  min-height:560px;
  margin:30px 0;
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
  backdrop-filter:blur(18px);
}

.diamond-system-copy{
  padding:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.diamond-system-copy span{
  color:#cfd4df;
  text-transform:uppercase;
  letter-spacing:1.6px;
  font-weight:1000;
}

.diamond-system-copy h1{
  margin:18px 0 28px;
  font-family:Georgia,serif;
  font-size:clamp(2.6rem,7vw,5.8rem);
  line-height:.9;
  font-weight:500;
}

.diamond-system-cover .layout-promo{
  min-height:560px;
  border-left:1px solid rgba(255,255,255,.16);
}

.diamond-system-tabs{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  overflow-x:auto;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.diamond-system-tabs .layout-cat{
  border-radius:0;
  background:transparent;
  border:1px solid rgba(255,255,255,.18);
}

.diamond-system-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:18px;
}

.diamond-system-list .layout-product-action{
  position:absolute;
  right:18px;
  bottom:18px;
  padding:10px 18px;
  border-radius:0;
  background:#fff;
  color:#030405;
}

@media (max-width:820px){
  .burger-system,
  .pizza-system,
  .acai-system,
  .delivery-system,
  .confectionery-system,
  .diamond-system{
    padding-left:12px;
    padding-right:12px;
    max-width:100%;
  }

  .independent-header{
    align-items:flex-start;
  }

  .independent-header nav{
    max-width:48%;
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  .independent-header button{
    min-height:36px;
    padding:0 10px;
    font-size:12px;
  }

  .burger-system-hero,
  .pizza-system,
  .acai-system-hero,
  .confectionery-system-window,
  .diamond-system-cover{
    grid-template-columns:1fr;
  }

  .burger-system-hero{
    min-height:0;
  }

  .burger-system-copy,
  .confectionery-system-copy,
  .diamond-system-copy{
    padding:24px;
  }

  .burger-system-hero .layout-promo,
  .confectionery-system-window .layout-promo,
  .diamond-system-cover .layout-promo{
    min-height:300px;
  }

  .burger-system-grid,
  .confectionery-system-products{
    grid-template-columns:1fr;
  }

  .burger-system-featured .layout-favorites,
  .acai-system-favorites .layout-favorites{
    display:flex;
    overflow-x:auto;
    gap:10px;
  }

  .burger-system-featured button,
  .acai-system-favorites button{
    min-width:160px;
    max-width:160px;
  }

  .pizza-system-sidebar{
    position:relative;
    top:auto;
  }

  .pizza-system-sidebar .layout-cat{
    width:auto;
    min-width:max-content;
  }

  .pizza-system-sidebar{
    overflow:hidden;
  }

  .pizza-system-sidebar .layout-search{
    margin-bottom:10px;
  }

  .pizza-system-sidebar .layout-cat{
    display:inline-flex;
    margin-right:8px;
  }

  .pizza-system-content .layout-promo{
    width:min(320px,100%);
    height:min(320px,calc(100vw - 48px));
  }

  .acai-system-hero{
    padding:22px;
  }

  .diamond-system-cover{
    min-height:0;
  }

  .diamond-system-cover .layout-promo{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.16);
  }

  .layout-product--pizza{
    grid-template-columns:82px minmax(0,1fr);
    min-height:112px;
    padding:10px 12px 58px 10px;
  }

  .layout-product--pizza .pizza-card-photo{
    width:82px;
    height:82px;
  }

  .pizza-system-list .layout-product-action,
  .delivery-system-list .layout-product-action,
  .diamond-system-list .layout-product-action{
    left:104px;
    right:12px;
    top:auto;
    bottom:10px;
    transform:none;
  }

  .layout-product--delivery{
    grid-template-columns:72px minmax(0,1fr);
    padding:10px 10px 56px;
  }

  .layout-product--delivery .delivery-card-photo{
    width:72px;
    height:72px;
  }

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

  .layout-product--diamond .diamond-card-index{
    display:none;
  }

  .layout-product--diamond .diamond-card-body{
    grid-template-columns:1fr;
    padding:18px 18px 62px;
  }

  .layout-product--diamond .diamond-card-side{
    justify-content:space-between;
  }

  .layout-product--confectionery{
    min-height:360px;
  }

  .layout-product--confectionery .confectionery-card-photo{
    height:210px;
  }
}

/* =========================================================
   RADICAL LAYOUT SYSTEMS - each menu behaves like a new app
========================================================= */
body[data-cardapio-layout="burger"] .app > .topbar,
body[data-cardapio-layout="pizza"] .app > .topbar,
body[data-cardapio-layout="acai"] .app > .topbar,
body[data-cardapio-layout="delivery"] .app > .topbar,
body[data-cardapio-layout="confectionery"] .app > .topbar,
body[data-cardapio-layout="diamond"] .app > .topbar{
  display:none;
}

body[data-cardapio-layout="burger"] .main,
body[data-cardapio-layout="pizza"] .main,
body[data-cardapio-layout="acai"] .main,
body[data-cardapio-layout="delivery"] .main,
body[data-cardapio-layout="confectionery"] .main,
body[data-cardapio-layout="diamond"] .main{
  padding:0;
}

body[data-cardapio-layout="burger"] #viewProduct,
body[data-cardapio-layout="pizza"] #viewProduct,
body[data-cardapio-layout="acai"] #viewProduct,
body[data-cardapio-layout="delivery"] #viewProduct,
body[data-cardapio-layout="confectionery"] #viewProduct,
body[data-cardapio-layout="diamond"] #viewProduct{
  padding:12px 14px 96px;
}

body[data-cardapio-layout="burger"] .app,
body[data-cardapio-layout="pizza"] .app,
body[data-cardapio-layout="acai"] .app,
body[data-cardapio-layout="confectionery"] .app,
body[data-cardapio-layout="diamond"] .app{
  width:100%;
  max-width:1180px;
}

body[data-cardapio-layout="delivery"] .app{
  width:100%;
  max-width:680px;
}

.radical-system,
.radical-system *{
  min-width:0;
}

.radical-system{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}

.radical-system button{
  min-height:44px;
  border:0;
  cursor:pointer;
  font:inherit;
}

.layout-system-title{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
}

.layout-system-title span{
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
  color:rgba(255,255,255,.55);
}

.layout-system-title strong{
  color:#fff;
  font-size:1.35rem;
  line-height:1;
}

.rad-product{
  position:relative;
  min-width:0;
  cursor:pointer;
  overflow:hidden;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.rad-product:active{
  transform:scale(.985);
}

.rad-product img,
.rad-promo img,
.radical-favorites img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.rad-product h3,
.rad-product p,
.radical-favorites span,
.radical-cat b{
  overflow-wrap:anywhere;
}

.rad-action{
  position:absolute;
  z-index:3;
  font-weight:1000;
}

.radical-cat{
  flex:0 0 auto;
}

/* Burger app */
body[data-cardapio-layout="burger"]{
  align-items:flex-start;
  background:#070301 url("img/layout-burger.svg") center top/cover fixed;
}

body[data-cardapio-layout="burger"]::before{
  background:
    radial-gradient(circle at 82% 12%, rgba(255,178,46,.24), transparent 30%),
    linear-gradient(180deg, rgba(0,0,0,.1), rgba(0,0,0,.88));
  filter:none;
  transform:none;
}

body[data-cardapio-layout="burger"]::after{
  background:rgba(4,2,1,.48);
}

.radical-burger{
  padding:18px 18px 124px;
  color:#fff;
}

.burger-street-cover{
  min-height:620px;
  border-radius:0 0 44px 44px;
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(255,178,46,.16), rgba(0,0,0,.06) 40%),
    rgba(10,5,2,.72);
  border:1px solid rgba(255,178,46,.16);
  box-shadow:0 36px 100px rgba(0,0,0,.42);
}

.burger-header{
  margin:18px;
  padding:12px 14px;
  border-radius:999px;
  background:rgba(10,5,2,.74);
  border:1px solid rgba(255,178,46,.18);
  backdrop-filter:blur(18px);
}

.burger-header button{
  background:#ffb22e;
  color:#160904;
  border-radius:999px;
  padding:0 13px;
}

.burger-street-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:22px;
  padding:22px;
}

.burger-street-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  padding:38px;
}

.burger-tag{
  width:max-content;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  background:#ffb22e;
  color:#170904;
  font-size:12px;
  font-weight:1000;
  text-transform:uppercase;
}

.burger-street-copy h1{
  margin:0;
  max-width:620px;
  font-size:clamp(3.4rem,8vw,7rem);
  line-height:.82;
  color:#fff;
}

.burger-street-copy p{
  margin:0;
  max-width:460px;
  color:rgba(255,255,255,.68);
  font-size:1.08rem;
  line-height:1.45;
}

.burger-street-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.burger-street-actions button{
  border-radius:999px;
  padding:0 18px;
  font-weight:1000;
}

.burger-street-actions button:first-child{
  background:#ffb22e;
  color:#160904;
}

.burger-street-actions button:last-child{
  background:rgba(255,255,255,.1);
  color:#fff;
}

.burger-stage-media{
  position:relative;
  min-height:520px;
}

.rad-promo--burger{
  height:100%;
  min-height:520px;
  border-radius:42px;
  border:1px solid rgba(255,178,46,.22);
  box-shadow:0 34px 90px rgba(0,0,0,.42);
}

.rad-promo--burger > div{
  padding:26px;
}

.burger-fast-note{
  position:absolute;
  right:22px;
  top:22px;
  z-index:2;
  display:grid;
  gap:2px;
  padding:14px 16px;
  border-radius:18px;
  background:#ffb22e;
  color:#170904;
  box-shadow:0 18px 48px rgba(0,0,0,.3);
}

.burger-system-featured{
  padding:28px 0 18px;
}

.radical-favorites--burger{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.radical-favorites--burger button{
  position:relative;
  min-height:168px;
  border-radius:28px;
  overflow:hidden;
  background:#170904;
  color:#fff;
}

.radical-favorites--burger img{
  height:168px;
  filter:brightness(.72);
}

.radical-favorites--burger span{
  position:absolute;
  left:14px;
  right:14px;
  bottom:14px;
  font-weight:1000;
  text-align:left;
  line-height:1.1;
}

.burger-system-cats{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:8px 0 18px;
  -webkit-overflow-scrolling:touch;
}

.radical-cat--burger{
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
}

.radical-cat--burger.active{
  background:#ffb22e;
  color:#170904;
}

.burger-system-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.rad-product--burger{
  min-height:430px;
  border-radius:34px;
  background:#150803;
  border:1px solid rgba(255,178,46,.18);
  box-shadow:0 20px 70px rgba(0,0,0,.26);
}

.rad-product--burger:hover{
  transform:translateY(-6px);
  box-shadow:0 34px 90px rgba(0,0,0,.38), 0 0 34px rgba(255,178,46,.16);
}

.burger-menu-photo{
  height:430px;
  min-height:430px;
}

.burger-menu-photo img{
  height:430px;
}

.burger-menu-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 22%, rgba(0,0,0,.9));
}

.burger-menu-overlay{
  position:absolute;
  inset:auto 0 0;
  z-index:2;
  padding:22px;
  color:#fff;
}

.burger-menu-overlay em{
  display:inline-flex;
  margin-bottom:10px;
  padding:7px 10px;
  border-radius:999px;
  background:#ffb22e;
  color:#170904;
  font-style:normal;
  font-weight:1000;
  font-size:12px;
}

.burger-menu-overlay h3{
  margin:0;
  font-size:1.55rem;
  line-height:1;
}

.burger-menu-overlay p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:8px 0 14px;
  color:rgba(255,255,255,.68);
  line-height:1.35;
}

.burger-menu-overlay strong{
  color:#ffb22e;
  font-size:1.35rem;
}

.rad-action--burger{
  right:18px;
  top:18px;
  border-radius:999px;
  padding:0 15px;
  background:#fff;
  color:#170904;
}

/* Pizza app */
body[data-cardapio-layout="pizza"]{
  align-items:flex-start;
  background:#2b1108 url("img/layout-pizza.svg") center/cover fixed;
}

body[data-cardapio-layout="pizza"]::before{
  background:
    linear-gradient(90deg, rgba(25,9,3,.95), rgba(58,20,7,.7), rgba(25,9,3,.86)),
    radial-gradient(circle at 70% 18%, rgba(255,198,78,.24), transparent 26%);
  filter:none;
  transform:none;
}

body[data-cardapio-layout="pizza"]::after{
  background:rgba(36,13,5,.34);
}

.radical-pizza{
  display:grid;
  grid-template-columns:282px minmax(0,1fr);
  gap:24px;
  padding:18px 18px 124px;
  color:#fff4d6;
}

.radical-pizza .pizza-system-sidebar{
  position:sticky;
  top:18px;
  align-self:start;
  padding:18px;
  border-radius:8px;
  background:linear-gradient(180deg,rgba(65,24,9,.96),rgba(31,10,4,.96));
  border:1px solid rgba(255,198,78,.2);
  box-shadow:0 28px 80px rgba(0,0,0,.32);
}

.radical-pizza .pizza-header{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:12px;
  padding:0 0 18px;
  border:0;
  background:transparent;
}

.pizza-seal{
  width:58px;
  height:58px;
  border-radius:50%;
  padding:5px;
  background:#ffc64e;
}

.pizza-seal img{
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit:cover;
}

.radical-pizza .pizza-header nav{
  grid-column:1 / -1;
  width:100%;
  display:grid;
  grid-template-columns:1fr 1fr;
}

.radical-pizza .pizza-header button,
.pizza-info-btn{
  border-radius:6px;
  background:#ffc64e;
  color:#331207;
  font-weight:1000;
}

.pizza-info-btn.ghost{
  margin-top:8px;
  width:100%;
  background:rgba(255,246,220,.1);
  color:#fff4d6;
  border:1px solid rgba(255,198,78,.2);
}

.pizza-category-stack{
  display:grid;
  gap:8px;
  margin-top:14px;
}

.radical-cat--pizza{
  width:100%;
  justify-content:flex-start;
  border-radius:6px;
  background:rgba(255,246,220,.08);
  color:#fff4d6;
}

.radical-cat--pizza.active{
  background:#ffc64e;
  color:#331207;
}

.pizza-system-content{
  min-width:0;
}

.pizza-oven-stage{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:24px;
  align-items:center;
  min-height:430px;
  padding:26px;
  border-radius:10px;
  background:rgba(31,10,4,.76);
  border:1px solid rgba(255,198,78,.18);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}

.pizza-oven-copy span{
  color:#ffc64e;
  font-weight:1000;
  text-transform:uppercase;
}

.pizza-oven-copy h1{
  margin:12px 0;
  max-width:560px;
  font-family:Georgia,serif;
  font-size:clamp(2.5rem,6vw,5.2rem);
  line-height:.94;
}

.pizza-oven-copy p{
  margin:0;
  max-width:440px;
  color:rgba(255,244,214,.7);
  line-height:1.45;
}

.rad-promo--pizza{
  width:100%;
  aspect-ratio:1;
  border-radius:50%;
  border:14px solid rgba(255,198,78,.18);
  box-shadow:0 30px 80px rgba(0,0,0,.34);
}

.pizza-system-favorites{
  padding:18px 0;
}

.radical-favorites--pizza{
  display:flex;
  gap:12px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.radical-favorites--pizza button{
  min-width:190px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:10px;
  border-radius:8px;
  background:rgba(255,246,220,.08);
  color:#fff4d6;
  border:1px solid rgba(255,198,78,.14);
  text-align:left;
  font-weight:900;
}

.radical-favorites--pizza img{
  width:54px;
  height:54px;
  border-radius:50%;
}

.pizza-system-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.rad-product--pizza{
  min-height:132px;
  display:grid;
  grid-template-columns:48px 110px minmax(0,1fr) 120px;
  align-items:center;
  gap:16px;
  padding:12px 132px 12px 14px;
  border-radius:8px;
  background:rgba(38,13,5,.92);
  border:1px solid rgba(255,198,78,.18);
}

.rad-product--pizza:hover{
  transform:translateX(6px);
  border-color:rgba(255,198,78,.44);
}

.pizza-menu-number{
  color:rgba(255,198,78,.58);
  font-family:Georgia,serif;
  font-size:1.2rem;
}

.pizza-menu-photo{
  width:106px;
  height:106px;
  border-radius:50%;
  overflow:hidden;
  box-shadow:0 0 0 6px rgba(255,198,78,.12);
}

.pizza-menu-copy em{
  color:#ffc64e;
  font-style:normal;
  font-weight:1000;
  font-size:12px;
}

.pizza-menu-copy h3{
  margin:5px 0;
  font-family:Georgia,serif;
  font-size:1.32rem;
  line-height:1;
}

.pizza-menu-copy p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0;
  color:rgba(255,244,214,.66);
  line-height:1.35;
}

.pizza-menu-price strong{
  color:#ffc64e;
  font-size:1.12rem;
}

.pizza-menu-price small{
  display:block;
  color:#d97158;
  text-decoration:line-through;
}

.rad-action--pizza{
  right:16px;
  top:50%;
  transform:translateY(-50%);
  border-radius:999px;
  padding:0 16px;
  background:#ffc64e;
  color:#331207;
}

/* Acai app */
body[data-cardapio-layout="acai"]{
  align-items:flex-start;
  background:#17052b url("img/layout-acai.svg") center/cover fixed;
}

body[data-cardapio-layout="acai"]::before{
  background:
    radial-gradient(circle at 16% 12%, rgba(255,95,215,.45), transparent 28%),
    radial-gradient(circle at 78% 26%, rgba(0,212,255,.38), transparent 27%),
    linear-gradient(180deg, rgba(15,3,31,.58), rgba(15,3,31,.92));
  filter:none;
  transform:none;
}

body[data-cardapio-layout="acai"]::after{
  background:rgba(14,3,27,.28);
}

.radical-acai{
  padding:16px 16px 124px;
  color:#fff;
}

.radical-acai .acai-system-hero{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:18px;
  margin:0 0 18px;
  padding:0;
  border:0;
  background:transparent;
}

.acai-liquid-panel{
  padding:26px;
  border-radius:40px;
  background:
    linear-gradient(145deg, rgba(255,95,215,.34), rgba(0,212,255,.18)),
    rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 100px rgba(102,23,180,.34);
}

.acai-header{
  padding:0 0 36px;
  border:0;
  background:transparent;
}

.acai-header button{
  background:rgba(255,255,255,.14);
  color:#fff;
  border-radius:999px;
}

.acai-liquid-panel > span{
  display:block;
  color:#83f7ff;
  font-weight:1000;
  text-transform:uppercase;
}

.acai-liquid-panel h1{
  margin:12px 0;
  font-size:clamp(2.7rem,7vw,5.6rem);
  line-height:.88;
}

.acai-liquid-panel p{
  margin:0;
  max-width:430px;
  color:rgba(255,255,255,.72);
  line-height:1.45;
}

.acai-quick-metrics{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.acai-quick-metrics b{
  padding:11px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.14);
}

.acai-search-card{
  display:grid;
  gap:14px;
}

.rad-promo--acai{
  min-height:420px;
  border-radius:42px;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 34px 100px rgba(0,0,0,.25);
}

.acai-system-cats{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:0 0 18px;
  -webkit-overflow-scrolling:touch;
}

.radical-cat--acai{
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
}

.radical-cat--acai.active{
  background:linear-gradient(90deg,#ff5fd7,#00d4ff);
  color:#fff;
}

.acai-system-products{
  display:flex;
  gap:16px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  padding:6px 2px 18px;
  -webkit-overflow-scrolling:touch;
}

.rad-product--acai{
  flex:0 0 min(340px,82vw);
  min-height:456px;
  scroll-snap-align:start;
  border-radius:36px;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.18), transparent 34%),
    rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 26px 80px rgba(0,0,0,.24);
}

.acai-cup-visual{
  width:172px;
  height:218px;
  margin:28px auto 14px;
  border-radius:46px 46px 64px 64px;
  overflow:hidden;
  box-shadow:inset 0 18px 0 rgba(255,255,255,.16), 0 24px 60px rgba(0,0,0,.3);
}

.acai-cup-copy{
  padding:0 22px 72px;
  text-align:center;
}

.acai-cup-copy em{
  color:#83f7ff;
  font-style:normal;
  font-weight:1000;
}

.acai-cup-copy h3{
  margin:8px 0;
  font-size:1.35rem;
  line-height:1;
}

.acai-cup-copy p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0 0 12px;
  color:rgba(255,255,255,.68);
  line-height:1.35;
}

.acai-cup-copy strong{
  font-size:1.25rem;
}

.rad-action--acai{
  left:18px;
  right:18px;
  bottom:18px;
  border-radius:18px;
  background:linear-gradient(90deg,#ff5fd7,#00d4ff);
  color:#fff;
}

.radical-favorites--acai{
  display:flex;
  gap:12px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.radical-favorites--acai button{
  flex:0 0 150px;
  min-height:150px;
  border-radius:28px;
  overflow:hidden;
  background:rgba(255,255,255,.1);
  color:#fff;
  position:relative;
}

.radical-favorites--acai img{
  height:150px;
  filter:brightness(.72);
}

.radical-favorites--acai span{
  position:absolute;
  left:10px;
  right:10px;
  bottom:10px;
  font-weight:1000;
}

/* Delivery rapido app */
body[data-cardapio-layout="delivery"]{
  align-items:flex-start;
  background:#07140f;
}

body[data-cardapio-layout="delivery"]::before,
body[data-cardapio-layout="delivery"]::after{
  display:none;
}

.radical-delivery{
  min-height:100vh;
  color:#f4fff8;
  background:#07140f;
}

.delivery-app-frame{
  min-height:100vh;
  padding:0 14px 124px;
  background:#07140f;
}

.delivery-header{
  position:sticky;
  top:0;
  z-index:8;
  padding:14px 0;
  background:#07140f;
  border-bottom:1px solid rgba(126,255,183,.14);
}

.delivery-header button{
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#f4fff8;
}

.delivery-system-command{
  padding:22px 0 14px;
}

.delivery-system-command h1{
  max-width:430px;
  margin:5px 0 0;
  font-size:clamp(2rem,8vw,3.6rem);
  line-height:.96;
}

.delivery-system-command button{
  border-radius:14px;
  background:#101820;
  color:#fff;
  padding:0 16px;
  font-weight:1000;
}

.delivery-speed-strip{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  margin:0 0 12px;
  padding:10px;
  border-radius:16px;
  background:rgba(255,255,255,.08);
  color:#f4fff8;
}

.delivery-speed-strip button{
  border-radius:12px;
  background:rgba(255,255,255,.1);
  color:#f4fff8;
  padding:0 12px;
  font-weight:1000;
}

.delivery-system-search{
  display:grid;
  gap:10px;
}

.delivery-system-search nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-bottom:4px;
  -webkit-overflow-scrolling:touch;
}

.radical-cat--delivery{
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#f4fff8;
}

.radical-cat--delivery.active{
  background:#1db954;
  color:#07110a;
}

.delivery-system-list{
  display:grid;
  gap:8px;
  margin-top:14px;
}

.rad-product--delivery{
  display:grid;
  grid-template-columns:70px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:94px;
  padding:10px 94px 10px 10px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.25));
  border:1px solid rgba(126,255,183,.16);
  box-shadow:0 14px 36px rgba(0,0,0,.24);
}

.delivery-row-photo{
  width:70px;
  height:70px;
  border-radius:14px;
  overflow:hidden;
}

.delivery-row-copy h3{
  margin:0 0 4px;
  color:#f4fff8;
  font-size:1rem;
  line-height:1.05;
}

.delivery-row-copy p{
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0;
  color:#667180;
  font-size:.88rem;
}

.delivery-row-price{
  color:#f4fff8;
  white-space:nowrap;
}

.delivery-row-price small{
  display:block;
  color:rgba(244,255,248,.52);
  text-decoration:line-through;
  font-size:.75rem;
}

.rad-action--delivery{
  right:12px;
  bottom:12px;
  min-height:36px;
  border-radius:11px;
  padding:0 10px;
  background:#1db954;
  color:#07110a;
  font-size:.84rem;
}

/* Confeitaria app */
body[data-cardapio-layout="confectionery"]{
  align-items:flex-start;
  background:#fff7f9 url("img/layout-confectionery.svg") center top/cover fixed;
}

body[data-cardapio-layout="confectionery"]::before{
  background:linear-gradient(180deg, rgba(255,247,249,.84), rgba(255,247,249,.94));
  filter:none;
  transform:none;
}

body[data-cardapio-layout="confectionery"]::after{
  background:rgba(255,247,249,.3);
}

.radical-confectionery{
  padding:20px 20px 124px;
  color:#2b1720;
}

.confectionery-boutique-head{
  max-width:760px;
  margin:0 auto;
}

.confectionery-header{
  justify-content:center;
  padding:16px 18px;
  border-radius:34px;
  background:rgba(255,255,255,.86);
  box-shadow:0 20px 60px rgba(138,70,96,.12);
}

.confectionery-header nav{
  display:none;
}

.confectionery-system-window{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:22px;
  margin:24px 0;
}

.confectionery-system-copy{
  padding:40px;
  border-radius:44px;
  background:rgba(255,255,255,.9);
  box-shadow:0 30px 90px rgba(138,70,96,.14);
}

.confectionery-system-copy h1{
  margin:12px 0 24px;
  font-family:Georgia,serif;
  font-size:clamp(2.4rem,6vw,5rem);
  line-height:.94;
}

.confectionery-service-note{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
  color:#b76282;
  font-weight:1000;
}

.rad-promo--confectionery{
  min-height:460px;
  border-radius:50px;
  box-shadow:0 34px 100px rgba(138,70,96,.2);
}

.confectionery-system-cats{
  display:flex;
  justify-content:center;
  gap:10px;
  overflow-x:auto;
  padding-bottom:18px;
}

.radical-cat--confectionery{
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:#2b1720;
}

.radical-cat--confectionery.active{
  background:#b76282;
  color:#fff;
}

.confectionery-system-products{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.rad-product--confectionery{
  min-height:460px;
  border-radius:34px;
  background:#fff;
  color:#2b1720;
  box-shadow:0 24px 70px rgba(138,70,96,.12);
}

.rad-product--confectionery:hover{
  transform:translateY(-6px);
}

.sweet-showcase-photo{
  height:285px;
  border-radius:34px 34px 0 0;
  overflow:hidden;
}

.sweet-showcase-copy{
  padding:20px 20px 74px;
}

.sweet-showcase-copy em{
  color:#b76282;
  font-style:normal;
  font-weight:1000;
}

.sweet-showcase-copy h3{
  margin:8px 0;
  font-family:Georgia,serif;
  font-size:1.42rem;
  line-height:1;
}

.sweet-showcase-copy p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0 0 12px;
  color:rgba(43,23,32,.62);
  line-height:1.35;
}

.sweet-showcase-copy strong{
  color:#2b1720;
  font-size:1.2rem;
}

.rad-action--confectionery{
  left:20px;
  right:20px;
  bottom:18px;
  border-radius:18px;
  background:#2b1720;
  color:#fff;
}

/* Black Diamond app */
body[data-cardapio-layout="diamond"]{
  align-items:flex-start;
  background:#030405 url("img/layout-diamond.svg") center/cover fixed;
}

body[data-cardapio-layout="diamond"]::before{
  background:
    radial-gradient(circle at 50% -10%, rgba(255,255,255,.2), transparent 28%),
    radial-gradient(circle at 84% 18%, rgba(197,169,92,.16), transparent 25%),
    linear-gradient(180deg,#050607,#000);
  filter:none;
  transform:none;
}

body[data-cardapio-layout="diamond"]::after{
  background:rgba(0,0,0,.22);
}

.radical-diamond{
  padding:18px 18px 126px;
  color:#fff;
}

.diamond-system-cover{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  min-height:620px;
  margin:0 0 24px;
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.02));
  backdrop-filter:blur(18px);
  box-shadow:0 34px 110px rgba(0,0,0,.42);
}

.diamond-system-copy{
  padding:54px;
}

.diamond-header{
  padding:0 0 42px;
  border:0;
}

.diamond-header > span{
  border-color:rgba(197,169,92,.42);
  color:#e6d39a;
}

.diamond-header button{
  border-radius:0;
  background:transparent;
  border:1px solid rgba(255,255,255,.18);
}

.diamond-system-copy > span{
  display:block;
  color:#d8d0b6;
  text-transform:uppercase;
  font-weight:1000;
}

.diamond-system-copy h1{
  margin:18px 0 28px;
  font-family:Georgia,serif;
  font-size:clamp(3rem,7vw,6.4rem);
  line-height:.88;
  font-weight:500;
}

.diamond-concierge-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.diamond-concierge-row button{
  border-radius:0;
  padding:0 18px;
  background:#fff;
  color:#030405;
  font-weight:1000;
}

.diamond-concierge-row button:last-child{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
}

.rad-promo--diamond{
  min-height:620px;
  border-left:1px solid rgba(255,255,255,.14);
}

.diamond-system-tabs{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  overflow-x:auto;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.radical-cat--diamond{
  border-radius:0;
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
}

.radical-cat--diamond.active{
  background:#fff;
  color:#030405;
}

.diamond-system-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:18px;
}

.rad-product--diamond{
  display:grid;
  grid-template-columns:92px minmax(0,1fr) 230px;
  align-items:center;
  gap:22px;
  min-height:164px;
  padding:18px 144px 18px 0;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(14px);
}

.rad-product--diamond:hover{
  border-color:rgba(255,255,255,.32);
}

.diamond-course-index{
  height:100%;
  display:grid;
  place-items:center;
  color:rgba(255,255,255,.48);
  font-family:Georgia,serif;
  font-size:1.35rem;
}

.diamond-course-copy em{
  color:#d8d0b6;
  font-style:normal;
  font-weight:1000;
}

.diamond-course-copy h3{
  margin:7px 0;
  font-family:Georgia,serif;
  font-size:1.42rem;
  font-weight:500;
  line-height:1;
}

.diamond-course-copy p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0;
  color:rgba(255,255,255,.58);
  line-height:1.35;
}

.diamond-course-side{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
}

.diamond-course-side img{
  width:86px;
  height:86px;
  object-fit:cover;
}

.diamond-course-side strong{
  color:#fff;
  font-size:1.15rem;
  white-space:nowrap;
}

.rad-action--diamond{
  right:18px;
  bottom:18px;
  border-radius:0;
  padding:0 18px;
  background:#fff;
  color:#030405;
}

/* Distinct cart/navigation per layout */
body[data-cardapio-layout="burger"] .bottomBar{
  width:min(520px,calc(100% - 24px));
  border-radius:999px;
  background:#ffb22e;
  border:0;
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}

body[data-cardapio-layout="burger"] .bottomBar .cartBtn,
body[data-cardapio-layout="burger"] .bottomBar .waBtn{
  background:rgba(255,255,255,.26);
  color:#160904;
}

body[data-cardapio-layout="pizza"] .bottomBar{
  width:min(500px,calc(100% - 24px));
  border-radius:8px;
  background:#3a1208;
  border-color:rgba(255,198,78,.28);
}

body[data-cardapio-layout="pizza"] .waBtn{
  border-radius:6px;
  background:#ffc64e;
  color:#331207;
}

body[data-cardapio-layout="acai"] .bottomBar{
  width:min(520px,calc(100% - 24px));
  border:0;
  border-radius:28px;
  background:linear-gradient(90deg,#ff5fd7,#00d4ff);
  box-shadow:0 22px 70px rgba(126,40,211,.36);
}

body[data-cardapio-layout="delivery"] .bottomBar{
  width:min(660px,calc(100% - 20px));
  bottom:10px;
  border-radius:18px;
  background:#101820;
  border:0;
}

body[data-cardapio-layout="delivery"] .cartBtn{
  background:#24303a;
}

body[data-cardapio-layout="delivery"] .waBtn{
  background:#1db954;
  color:#07110a;
}

body[data-cardapio-layout="confectionery"] .bottomBar{
  width:min(520px,calc(100% - 24px));
  border-radius:28px;
  background:#fff;
  color:#2b1720;
  border-color:rgba(183,98,130,.16);
  box-shadow:0 20px 60px rgba(138,70,96,.16);
}

body[data-cardapio-layout="confectionery"] .cartBtn{
  background:#fff4f7;
  color:#2b1720;
}

body[data-cardapio-layout="confectionery"] .waBtn{
  background:#2b1720;
  color:#fff;
}

body[data-cardapio-layout="diamond"] .bottomBar{
  width:min(520px,calc(100% - 24px));
  border-radius:0;
  background:#050607;
  border-color:rgba(255,255,255,.22);
}

body[data-cardapio-layout="diamond"] .cartBtn,
body[data-cardapio-layout="diamond"] .waBtn{
  border-radius:0;
}

body[data-cardapio-layout="diamond"] .waBtn{
  background:#fff;
  color:#030405;
}

body[data-cardapio-layout="burger"] .drawer__panel{background:#180c06;border-left-color:rgba(255,178,46,.25)}
body[data-cardapio-layout="pizza"] .drawer__panel{background:#2a0e06;border-left-color:rgba(255,198,78,.25)}
body[data-cardapio-layout="acai"] .drawer__panel{background:#17052b;border-left-color:rgba(255,95,215,.3)}
body[data-cardapio-layout="delivery"] .drawer__panel{background:#07140f;color:#f4fff8;border-left-color:rgba(126,255,183,.18)}
body[data-cardapio-layout="confectionery"] .drawer__panel{background:#fff8fa;color:#2b1720}
body[data-cardapio-layout="diamond"] .drawer__panel{background:#030405;border-left-color:rgba(255,255,255,.24)}

@media (max-width:820px){
  body[data-cardapio-layout="burger"] .app,
  body[data-cardapio-layout="pizza"] .app,
  body[data-cardapio-layout="acai"] .app,
  body[data-cardapio-layout="delivery"] .app,
  body[data-cardapio-layout="confectionery"] .app,
  body[data-cardapio-layout="diamond"] .app{
    max-width:100%;
  }

  .radical-burger,
  .radical-pizza,
  .radical-acai,
  .radical-confectionery,
  .radical-diamond{
    padding:10px 10px 112px;
  }

  .burger-street-cover{
    min-height:0;
    border-radius:0 0 30px 30px;
  }

  .burger-header,
  .acai-header,
  .confectionery-header,
  .diamond-header,
  .delivery-header{
    align-items:flex-start;
  }

  .independent-header nav{
    max-width:50%;
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  .independent-header button{
    min-height:34px;
    padding:0 10px;
    font-size:12px;
  }

  .burger-street-grid,
  .radical-pizza,
  .pizza-oven-stage,
  .radical-acai .acai-system-hero,
  .confectionery-system-window,
  .diamond-system-cover{
    grid-template-columns:1fr;
  }

  .burger-street-grid,
  .pizza-oven-stage{
    padding:14px;
  }

  .burger-street-copy,
  .acai-liquid-panel,
  .confectionery-system-copy,
  .diamond-system-copy{
    padding:22px;
  }

  .burger-street-copy h1,
  .acai-liquid-panel h1,
  .confectionery-system-copy h1,
  .diamond-system-copy h1{
    font-size:clamp(2.35rem,14vw,4.1rem);
  }

  .burger-stage-media,
  .rad-promo--burger,
  .rad-promo--acai,
  .rad-promo--confectionery,
  .rad-promo--diamond{
    min-height:310px;
  }

  .radical-favorites--burger{
    display:flex;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .radical-favorites--burger button{
    flex:0 0 158px;
    min-height:150px;
  }

  .burger-system-grid,
  .confectionery-system-products{
    grid-template-columns:1fr;
  }

  .rad-product--burger{
    min-height:360px;
  }

  .burger-menu-photo{
    height:360px;
    min-height:360px;
  }

  .burger-menu-photo img{
    height:360px;
  }

  .radical-pizza .pizza-system-sidebar{
    position:relative;
    top:auto;
    overflow:hidden;
  }

  .pizza-category-stack{
    display:flex;
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .radical-cat--pizza{
    width:auto;
    min-width:max-content;
  }

  .rad-promo--pizza{
    width:min(320px,100%);
    margin:0 auto;
  }

  .rad-product--pizza{
    grid-template-columns:34px 78px minmax(0,1fr);
    min-height:112px;
    gap:10px;
    padding:10px 10px 58px;
  }

  .pizza-menu-photo{
    width:78px;
    height:78px;
  }

  .pizza-menu-price{
    grid-column:2 / -1;
  }

  .rad-action--pizza{
    left:122px;
    right:10px;
    top:auto;
    bottom:10px;
    transform:none;
  }

  .delivery-speed-strip{
    grid-template-columns:1fr;
  }

  .rad-product--delivery{
    grid-template-columns:64px minmax(0,1fr);
    padding:10px 10px 54px;
  }

  .delivery-row-photo{
    width:64px;
    height:64px;
  }

  .delivery-row-price{
    grid-column:2;
  }

  .rad-action--delivery{
    left:84px;
    right:10px;
  }

  .confectionery-boutique-head{
    max-width:100%;
  }

  .sweet-showcase-photo{
    height:220px;
  }

  .rad-product--confectionery{
    min-height:390px;
  }

  .diamond-system-cover{
    min-height:0;
  }

  .rad-promo--diamond{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.14);
  }

  .rad-product--diamond{
    grid-template-columns:42px minmax(0,1fr);
    gap:12px;
    padding:16px 16px 64px 0;
  }

  .diamond-course-side{
    grid-column:2;
    justify-content:space-between;
  }

  .diamond-course-side img{
    width:64px;
    height:64px;
  }

  .rad-action--diamond{
    left:58px;
    right:16px;
  }
}

@media (max-width:420px){
  .independent-brand img{
    width:42px;
    height:42px;
  }

  .independent-header nav{
    max-width:46%;
  }

  .burger-street-copy,
  .acai-liquid-panel,
  .confectionery-system-copy,
  .diamond-system-copy{
    padding:18px;
  }

  .layout-search input{
    height:46px;
  }

  .rad-product--acai{
    flex-basis:82vw;
  }

  .bottomBar{
    gap:8px;
    padding:8px;
  }

  .cartBtn{
    width:128px;
  }
}

/* =========================================================
   DARK REFINEMENT + PROMO CONTROLS
========================================================= */
.rad-promo{
  touch-action:pan-y;
}

.rad-promo img{
  transform:translateX(var(--promo-drag, 0)) scale(1.02);
  transition:transform .22s ease, filter .22s ease;
}

.rad-promo.is-dragging img{
  transition:none;
}

.rad-promo-arrow{
  position:absolute;
  top:50%;
  z-index:5;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(0,0,0,.58);
  color:#fff;
  font-size:28px;
  line-height:1;
  backdrop-filter:blur(12px);
}

.rad-promo-arrow--prev{left:14px}
.rad-promo-arrow--next{right:14px}

.rad-promo-dots{
  position:absolute;
  left:18px;
  right:18px;
  bottom:14px;
  z-index:5;
  display:flex;
  justify-content:center;
  gap:8px;
  pointer-events:auto;
}

.rad-promo-dots button{
  width:24px;
  height:5px;
  min-height:5px;
  border-radius:999px;
  background:rgba(255,255,255,.38);
  border:0;
  padding:0;
}

.rad-promo-dots button.active{
  width:42px;
  background:#fff;
}

body[data-cardapio-layout="delivery"]{
  background:#07110d url("img/layout-delivery.svg") center/cover fixed;
}

body[data-cardapio-layout="delivery"]::before{
  display:block;
  background:
    radial-gradient(circle at 78% 8%, rgba(29,185,84,.28), transparent 28%),
    linear-gradient(180deg, rgba(3,10,7,.72), rgba(3,10,7,.96));
  filter:none;
  transform:none;
}

.radical-delivery,
.delivery-app-frame{
  color:#f4fff8;
  background:rgba(4,12,8,.86);
}

.delivery-header{
  background:rgba(4,12,8,.92);
  border-bottom-color:rgba(94,255,161,.16);
}

.delivery-header span,
.delivery-system-command span{
  color:#86f3ad;
}

.delivery-header button,
.delivery-speed-strip,
.delivery-speed-strip button,
.delivery-system-search .layout-search input,
.radical-cat--delivery{
  background:rgba(255,255,255,.08);
  color:#f4fff8;
}

.radical-cat--delivery.active,
.delivery-system-command button,
.rad-action--delivery{
  background:#64f58e;
  color:#061108;
}

.delivery-system-command h1,
.delivery-row-copy h3,
.delivery-row-price{
  color:#fff;
}

.rad-product--delivery{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.09);
  box-shadow:0 18px 50px rgba(0,0,0,.2);
}

.delivery-row-copy p{
  color:rgba(244,255,248,.62);
}

body[data-cardapio-layout="confectionery"]{
  background:#190811 url("img/layout-confectionery.svg") center/cover fixed;
}

body[data-cardapio-layout="confectionery"]::before{
  background:
    radial-gradient(circle at 16% 10%, rgba(255,126,172,.26), transparent 30%),
    linear-gradient(180deg, rgba(25,8,17,.78), rgba(25,8,17,.96));
}

body[data-cardapio-layout="confectionery"]::after{
  background:rgba(25,8,17,.28);
}

.radical-confectionery,
.confectionery-system-copy,
.confectionery-header,
.rad-product--confectionery{
  color:#fff7fb;
}

.confectionery-system-copy,
.confectionery-header,
.rad-product--confectionery,
.radical-cat--confectionery{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,177,207,.14);
  box-shadow:0 26px 80px rgba(0,0,0,.28);
}

.confectionery-header button,
.radical-cat--confectionery,
.sweet-showcase-copy strong{
  color:#fff7fb;
}

.confectionery-system-copy span,
.confectionery-service-note,
.sweet-showcase-copy em{
  color:#ff9fc5;
}

.sweet-showcase-copy p{
  color:rgba(255,247,251,.64);
}

.radical-cat--confectionery.active,
.rad-action--confectionery{
  background:#ff9fc5;
  color:#220812;
}

/* Premium PRO */
body[data-cardapio-layout="premium"]{
  align-items:flex-start;
  background:#040816 url("img/layout-premium.svg") center/cover fixed;
}

body[data-cardapio-layout="premium"]::before{
  background:
    radial-gradient(circle at 18% 20%, rgba(75,124,255,.32), transparent 28%),
    radial-gradient(circle at 84% 12%, rgba(0,255,209,.24), transparent 30%),
    linear-gradient(180deg,#050816,#03040a);
  filter:none;
  transform:none;
}

body[data-cardapio-layout="premium"]::after{
  background:rgba(2,4,12,.26);
}

body[data-cardapio-layout="premium"] .app{
  width:100%;
  max-width:1200px;
}

body[data-cardapio-layout="premium"] .app > .topbar,
body[data-cardapio-layout="premium"] .app > .main > #viewHome > .promo,
body[data-cardapio-layout="premium"] .app > .main > #viewHome > .section,
body[data-cardapio-layout="premium"] .app > .main > #viewHome > .searchRow,
body[data-cardapio-layout="premium"] .app > .main > #viewHome > .chips,
body[data-cardapio-layout="premium"] .app > .main > #viewHome > .list,
body[data-cardapio-layout="premium"] .app > .main > #viewHome > .footerInfo{
  display:none;
}

body[data-cardapio-layout="premium"] .main{
  padding:0;
}

body[data-cardapio-layout="premium"] #viewProduct{
  padding:12px 14px 96px;
}

.radical-premium{
  padding:18px 18px 126px;
  color:#fff;
}

.premium-command-center{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.95fr);
  gap:18px;
  min-height:620px;
}

.premium-command-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  padding:44px;
  border-radius:42px;
  background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(20px);
}

.premium-header{
  padding:0 0 36px;
}

.premium-mark{
  width:54px;
  height:54px;
  padding:4px;
  border-radius:18px;
  background:linear-gradient(135deg,#66ffe0,#7b7cff);
}

.premium-mark img{
  width:100%;
  height:100%;
  border-radius:14px;
  object-fit:cover;
}

.premium-header button{
  border-radius:14px;
  background:rgba(255,255,255,.1);
  color:#fff;
}

.premium-command-copy > span{
  color:#66ffe0;
  font-weight:1000;
  text-transform:uppercase;
}

.premium-command-copy h1{
  margin:0;
  font-size:clamp(3rem,7vw,6.6rem);
  line-height:.88;
}

.premium-control-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.premium-control-row button{
  border-radius:16px;
  padding:0 18px;
  background:#66ffe0;
  color:#03100d;
  font-weight:1000;
}

.premium-control-row button:last-child{
  background:rgba(255,255,255,.1);
  color:#fff;
}

.premium-command-media .rad-promo--premium{
  min-height:620px;
  border-radius:42px;
  border:1px solid rgba(102,255,224,.2);
  box-shadow:0 34px 110px rgba(0,0,0,.42),0 0 60px rgba(102,255,224,.08);
}

.premium-dock{
  position:sticky;
  top:0;
  z-index:10;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:18px 0;
  padding:12px;
  border-radius:22px;
  background:rgba(5,8,22,.82);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(18px);
}

.premium-dock nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.radical-cat--premium{
  border-radius:14px;
  background:rgba(255,255,255,.08);
  color:#fff;
}

.radical-cat--premium.active{
  background:#66ffe0;
  color:#03100d;
}

.premium-product-river{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.rad-product--premium{
  min-height:250px;
  display:grid;
  grid-template-columns:160px minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  padding:18px 142px 18px 18px;
  border-radius:30px;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(16px);
}

.premium-item-orbit{
  width:160px;
  height:200px;
  border-radius:36px;
  overflow:hidden;
  box-shadow:0 26px 70px rgba(0,0,0,.28);
}

.premium-item-copy em{
  color:#66ffe0;
  font-style:normal;
  font-weight:1000;
}

.premium-item-copy h3{
  margin:8px 0;
  font-size:1.45rem;
  line-height:1;
}

.premium-item-copy p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0;
  color:rgba(255,255,255,.62);
}

.premium-item-price{
  color:#fff;
  white-space:nowrap;
}

.rad-action--premium{
  right:18px;
  bottom:18px;
  border-radius:14px;
  padding:0 18px;
  background:#66ffe0;
  color:#03100d;
}

.premium-favorites{
  margin-top:18px;
}

.radical-favorites--premium{
  display:flex;
  gap:12px;
  overflow-x:auto;
}

.radical-favorites--premium button{
  flex:0 0 168px;
  height:168px;
  border-radius:28px;
  overflow:hidden;
  position:relative;
  color:#fff;
  background:rgba(255,255,255,.08);
}

.radical-favorites--premium span{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  font-weight:1000;
}

body[data-cardapio-layout="premium"] .bottomBar{
  width:min(560px,calc(100% - 24px));
  border-radius:24px;
  background:rgba(5,8,22,.92);
  border-color:rgba(102,255,224,.18);
}

body[data-cardapio-layout="premium"] .waBtn{
  background:#66ffe0;
  color:#03100d;
}

body[data-cardapio-layout="premium"] .drawer__panel{
  background:#050816;
  border-left-color:rgba(102,255,224,.22);
}

@media (max-width:820px){
  .radical-premium{
    padding:10px 10px 112px;
  }

  .premium-command-center,
  .premium-product-river{
    grid-template-columns:1fr;
  }

  .premium-command-copy{
    padding:22px;
  }

  .premium-command-copy h1{
    font-size:clamp(2.35rem,14vw,4.1rem);
  }

  .premium-command-media .rad-promo--premium{
    min-height:320px;
  }

  .premium-dock{
    position:relative;
    top:auto;
  }

  .rad-product--premium{
    grid-template-columns:86px minmax(0,1fr);
    min-height:142px;
    padding:12px 12px 64px;
  }

  .premium-item-orbit{
    width:86px;
    height:110px;
    border-radius:22px;
  }

  .premium-item-price{
    grid-column:2;
  }

  .rad-action--premium{
    left:110px;
    right:12px;
  }

  .rad-promo-arrow{
    display:none;
  }
}

/* Professional UX refinement for non-standard menu layouts */
body[data-cardapio-layout="burger"],
body[data-cardapio-layout="pizza"],
body[data-cardapio-layout="acai"],
body[data-cardapio-layout="delivery"],
body[data-cardapio-layout="confectionery"],
body[data-cardapio-layout="diamond"],
body[data-cardapio-layout="premium"]{
  overflow-x:hidden;
}

.layout-product-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  max-width:100%;
  margin:18px 0 16px;
}

.layout-product-tools .layout-search{
  flex:1 1 360px;
  max-width:620px;
}

.layout-product-tools nav{
  display:flex;
  gap:10px;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}

.layout-product-tools nav::-webkit-scrollbar,
.radical-favorites::-webkit-scrollbar{
  display:none;
}

.layout-search{
  position:relative;
}

.layout-search button{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  min-height:34px;
  border-radius:999px;
  display:grid;
  place-items:center;
}

.layout-search--confectionery input{
  background:rgba(255,255,255,.1);
  color:#fff7fb;
  border-color:rgba(255,198,222,.18);
}

.layout-search--confectionery input::placeholder{
  color:rgba(255,247,251,.58);
}

.layout-search--diamond input{
  background:rgba(255,255,255,.06);
  color:#fff;
  border-color:rgba(241,217,149,.2);
}

.layout-search--premium input{
  background:rgba(255,255,255,.07);
  color:#ecfffb;
  border-color:rgba(102,255,224,.2);
}

.rad-promo{
  height:clamp(250px, 34vw, 380px);
  min-height:0 !important;
  max-height:380px;
  transform:translateX(var(--promo-drag, 0));
  cursor:pointer;
}

.rad-promo--confectionery{
  height:clamp(300px, 36vw, 420px);
  max-height:420px;
}

.rad-promo--diamond{
  height:clamp(360px, 42vw, 520px);
  max-height:520px;
}

.rad-promo--delivery{
  height:clamp(210px, 26vw, 310px);
  max-height:310px;
  margin:14px 0;
}

.rad-promo img{
  transition:transform .35s cubic-bezier(.2,.8,.2,1), filter .35s cubic-bezier(.2,.8,.2,1);
}

.rad-promo:hover img{
  transform:scale(1.035);
}

.rad-promo > div{
  z-index:2;
}

.rad-promo-cta{
  margin-top:12px;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  background:#fff;
  color:#111;
  font-weight:1000;
  box-shadow:0 16px 40px rgba(0,0,0,.28);
}

.rad-price-pair{
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
  line-height:1;
}

.rad-price-pair small{
  color:rgba(255,255,255,.48);
  text-decoration:line-through;
  font-size:.82em;
  font-weight:800;
}

.rad-price-pair strong{
  color:#6fff97;
  font-weight:1100;
}

.rad-product small{
  color:rgba(255,255,255,.46);
  text-decoration:line-through;
}

.rad-promo--pizza .rad-price-pair strong,
.rad-product--pizza .rad-price-pair strong{
  color:#ffc64e;
}

.rad-promo--acai .rad-price-pair strong,
.rad-product--acai .rad-price-pair strong{
  color:#7dffea;
}

.rad-promo--confectionery .rad-price-pair strong,
.rad-product--confectionery .rad-price-pair strong{
  color:#ffd3e4;
}

.rad-promo--diamond .rad-price-pair strong,
.rad-product--diamond .rad-price-pair strong{
  color:#f1d995;
}

.rad-promo--premium .rad-price-pair strong,
.rad-product--premium .rad-price-pair strong{
  color:#66ffe0;
}

@media (min-width:821px){
  .rad-promo-arrow{
    display:grid;
  }
}

/* Delivery rapido: app-like, iFood-inspired flow */
.radical-delivery .delivery-app-frame{
  max-width:760px;
  margin:0 auto;
  border-radius:28px;
  overflow:hidden;
}

.delivery-highlight-rail{
  margin:10px 0 16px;
}

.delivery-highlight-rail .layout-system-title{
  padding:0 4px;
  margin-bottom:8px;
}

.delivery-highlight-rail .radical-favorites--delivery{
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding:2px 2px 10px;
  scroll-snap-type:x proximity;
}

.delivery-highlight-rail .radical-favorites--delivery button{
  flex:0 0 205px;
  min-height:154px;
  border-radius:18px;
  padding:10px;
  display:grid;
  grid-template-columns:76px 1fr;
  align-items:end;
  gap:10px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  scroll-snap-align:start;
}

.delivery-highlight-rail .radical-favorites--delivery img{
  height:104px;
  border-radius:14px;
}

.delivery-highlight-rail .radical-favorites--delivery span,
.delivery-highlight-rail .radical-favorites--delivery strong{
  display:block;
  text-align:left;
}

.layout-product-tools--delivery{
  margin-top:8px;
}

/* Lanchonete: aggressive combos before menu */
.burger-street-copy p{
  max-width:520px;
  margin:0 0 18px;
  color:rgba(255,255,255,.68);
  line-height:1.5;
}

.burger-combo-stage{
  margin:22px 0;
}

.burger-combo-stage .radical-favorites--burger{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.burger-combo-stage .radical-favorites--burger button{
  position:relative;
  overflow:hidden;
  min-height:270px;
  border-radius:30px;
  padding:16px;
  display:flex;
  align-items:flex-end;
  color:#fff;
  background:linear-gradient(180deg,rgba(255,178,46,.08),rgba(20,7,2,.82));
  border:1px solid rgba(255,178,46,.18);
  box-shadow:0 28px 80px rgba(0,0,0,.34);
}

.burger-combo-stage .radical-favorites--burger img{
  position:absolute;
  inset:0;
  opacity:.88;
  filter:saturate(1.16) contrast(1.08);
}

.burger-combo-stage .radical-favorites--burger span,
.burger-combo-stage .radical-favorites--burger strong{
  position:relative;
  z-index:2;
  display:block;
  text-shadow:0 12px 26px rgba(0,0,0,.62);
}

.layout-product-tools--burger{
  max-width:720px;
}

/* Pizzaria: categories fixed in sidebar, search near flavors */
.pizza-top-orders{
  margin:18px 0;
}

.pizza-top-orders .radical-favorites--pizza{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.pizza-top-orders .radical-favorites--pizza button{
  min-height:170px;
  border-radius:10px;
  padding:12px;
  display:grid;
  grid-template-columns:120px 1fr;
  align-items:end;
  gap:14px;
  background:rgba(255,246,220,.09);
  border:1px solid rgba(255,198,78,.18);
  color:#fff;
}

.pizza-top-orders .radical-favorites--pizza img{
  height:130px;
  border-radius:50%;
  box-shadow:0 16px 45px rgba(0,0,0,.32);
}

.layout-product-tools--pizza{
  max-width:660px;
  margin-top:20px;
}

.delivery-row-price .rad-price-pair,
.premium-item-price .rad-price-pair,
.diamond-course-side .rad-price-pair{
  justify-content:flex-end;
}

.delivery-row-price .rad-price-pair{
  flex-direction:column;
  align-items:flex-end;
}

/* Acai: colorful favorites with product search directly before cups */
.acai-vitrine{
  margin:20px 0;
}

.acai-vitrine .radical-favorites--acai{
  display:flex;
  gap:14px;
  overflow-x:auto;
  padding:2px 2px 12px;
  scroll-snap-type:x proximity;
}

.acai-vitrine .radical-favorites--acai button{
  flex:0 0 230px;
  min-height:250px;
  border-radius:34px;
  padding:14px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:linear-gradient(135deg,rgba(255,95,215,.24),rgba(0,212,255,.16));
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 22px 70px rgba(124,40,211,.24);
  scroll-snap-align:start;
}

.acai-vitrine .radical-favorites--acai img{
  height:150px;
  object-fit:cover;
  border-radius:28px;
  margin-bottom:12px;
}

.layout-product-tools--acai{
  display:grid;
  grid-template-columns:minmax(0,420px) minmax(0,1fr);
}

.layout-product-tools--acai nav{
  justify-content:flex-end;
}

/* Confeitaria: editorial atelier */
body[data-cardapio-layout="confectionery"]{
  background:#190811 url("img/layout-confectionery.svg") center/cover fixed;
}

body[data-cardapio-layout="confectionery"]::before{
  background:
    radial-gradient(circle at 18% 8%, rgba(255,190,216,.2), transparent 30%),
    radial-gradient(circle at 78% 0%, rgba(255,255,255,.1), transparent 24%),
    linear-gradient(180deg, rgba(25,8,17,.84), rgba(25,8,17,.97));
}

.radical-confectionery{
  max-width:1180px;
  margin:0 auto;
  color:#fff7fb;
}

.confectionery-vip-atelier{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:22px;
  align-items:stretch;
  min-height:520px;
}

.confectionery-vip-story{
  position:relative;
  overflow:hidden;
  border-radius:42px;
  padding:34px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.035)),
    rgba(50,14,31,.68);
  border:1px solid rgba(255,198,222,.18);
  box-shadow:0 34px 110px rgba(0,0,0,.34);
}

.confectionery-vip-story::after{
  content:"";
  position:absolute;
  inset:auto -20% -34% 18%;
  height:220px;
  background:radial-gradient(circle, rgba(255,181,211,.22), transparent 64%);
  pointer-events:none;
}

.confectionery-vip-story .confectionery-header{
  justify-content:space-between;
  padding:0 0 34px;
  background:transparent;
  border:0;
  box-shadow:none;
}

.confectionery-vip-story .confectionery-header nav{
  display:flex;
}

.confectionery-vip-story > span{
  color:#ffc3da;
  font-weight:1000;
  text-transform:uppercase;
  font-size:.78rem;
}

.confectionery-vip-story h1{
  margin:16px 0 18px;
  font-family:Georgia,serif;
  font-size:clamp(2.8rem,6vw,6.3rem);
  line-height:.88;
  letter-spacing:0;
}

.confectionery-vip-story p{
  max-width:520px;
  margin:0;
  color:rgba(255,247,251,.68);
  line-height:1.58;
}

.confectionery-vip-media{
  min-width:0;
}

.sweet-vip-gallery{
  margin:26px 0;
}

.sweet-vip-gallery .radical-favorites--confectionery{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr;
  gap:16px;
}

.sweet-vip-gallery .radical-favorites--confectionery button{
  position:relative;
  min-height:300px;
  overflow:hidden;
  border-radius:34px;
  padding:18px;
  display:flex;
  align-items:flex-end;
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,198,222,.16);
  box-shadow:0 28px 90px rgba(0,0,0,.26);
}

.sweet-vip-gallery .radical-favorites--confectionery button:first-child{
  min-height:380px;
}

.sweet-vip-gallery .radical-favorites--confectionery img{
  position:absolute;
  inset:0;
  opacity:.9;
  filter:saturate(1.08);
}

.sweet-vip-gallery .radical-favorites--confectionery span,
.sweet-vip-gallery .radical-favorites--confectionery strong{
  position:relative;
  z-index:2;
  display:block;
  text-shadow:0 14px 34px rgba(0,0,0,.58);
}

.confectionery-menu-head{
  display:grid;
  grid-template-columns:minmax(0,400px) minmax(0,1fr);
  gap:16px;
  align-items:center;
  margin:24px 0 18px;
}

.confectionery-menu-head .confectionery-system-cats{
  justify-content:flex-end;
  padding:0;
}

.confectionery-system-products{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.rad-product--confectionery{
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.045));
  color:#fff7fb;
  border:1px solid rgba(255,198,222,.14);
  box-shadow:0 24px 80px rgba(0,0,0,.25);
}

.sweet-showcase-copy p{
  color:rgba(255,247,251,.62);
}

/* Black Diamond VIP: cinematic catalog */
body[data-cardapio-layout="diamond"]{
  background:#020203 url("img/layout-diamond.svg") center/cover fixed;
}

.radical-diamond{
  max-width:1240px;
  margin:0 auto;
}

.diamond-cinema{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:0;
  min-height:600px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  background:
    linear-gradient(120deg,rgba(255,255,255,.09),rgba(255,255,255,.025)),
    rgba(0,0,0,.5);
  box-shadow:0 44px 140px rgba(0,0,0,.58);
}

.diamond-cinema::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(241,217,149,.12), transparent 38%),
    radial-gradient(circle at 86% 14%, rgba(255,255,255,.18), transparent 22%);
}

.diamond-system-copy{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.diamond-system-copy p{
  max-width:520px;
  margin:0;
  color:rgba(255,255,255,.58);
  line-height:1.6;
}

.diamond-cinema-media{
  min-width:0;
  border-left:1px solid rgba(255,255,255,.14);
}

.diamond-private-selection{
  margin:28px 0;
  padding:22px;
  border:1px solid rgba(241,217,149,.18);
  background:linear-gradient(135deg,rgba(241,217,149,.08),rgba(255,255,255,.025));
}

.diamond-private-selection .radical-favorites--diamond{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:14px;
}

.diamond-private-selection .radical-favorites--diamond button{
  position:relative;
  min-height:260px;
  overflow:hidden;
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  background:#060607;
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
}

.diamond-private-selection .radical-favorites--diamond button:first-child{
  min-height:350px;
}

.diamond-private-selection .radical-favorites--diamond img{
  position:absolute;
  inset:0;
  opacity:.72;
  filter:saturate(.82) contrast(1.1);
}

.diamond-private-selection .radical-favorites--diamond span,
.diamond-private-selection .radical-favorites--diamond strong{
  position:relative;
  z-index:2;
  color:#f1d995;
  letter-spacing:0;
}

.diamond-catalog-tools{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,420px);
  gap:16px;
  align-items:center;
  margin:20px 0;
}

.diamond-catalog-tools .diamond-system-tabs{
  margin:0;
  padding:0;
  justify-content:flex-start;
  border-bottom:0;
}

.diamond-catalog-tools .layout-search{
  margin:0;
}

/* Product view follows each layout without touching Padrao */
body[data-cardapio-layout="burger"] #viewProduct,
body[data-cardapio-layout="pizza"] #viewProduct,
body[data-cardapio-layout="acai"] #viewProduct,
body[data-cardapio-layout="delivery"] #viewProduct,
body[data-cardapio-layout="confectionery"] #viewProduct,
body[data-cardapio-layout="diamond"] #viewProduct,
body[data-cardapio-layout="premium"] #viewProduct{
  padding-bottom:124px;
}

@media (min-width:821px){
  body[data-cardapio-layout="burger"] #viewProduct,
  body[data-cardapio-layout="pizza"] #viewProduct,
  body[data-cardapio-layout="acai"] #viewProduct,
  body[data-cardapio-layout="confectionery"] #viewProduct,
  body[data-cardapio-layout="diamond"] #viewProduct,
  body[data-cardapio-layout="premium"] #viewProduct{
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    gap:22px;
    align-items:start;
  }

  body[data-cardapio-layout="burger"] #viewProduct .productTop,
  body[data-cardapio-layout="pizza"] #viewProduct .productTop,
  body[data-cardapio-layout="acai"] #viewProduct .productTop,
  body[data-cardapio-layout="confectionery"] #viewProduct .productTop,
  body[data-cardapio-layout="diamond"] #viewProduct .productTop,
  body[data-cardapio-layout="premium"] #viewProduct .productTop{
    grid-column:1 / -1;
  }

  body[data-cardapio-layout="delivery"] #viewProduct{
    max-width:720px;
    margin:0 auto;
  }

  body[data-cardapio-layout="confectionery"] #viewProduct,
  body[data-cardapio-layout="diamond"] #viewProduct{
    max-width:1120px;
    margin:0 auto;
  }

  body[data-cardapio-layout="diamond"] #viewProduct{
    grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);
  }
}

body[data-cardapio-layout="burger"] .productTop,
body[data-cardapio-layout="burger"] .productCard{
  background:#160904;
  color:#fff;
  border-color:rgba(255,178,46,.22);
}

body[data-cardapio-layout="burger"] .productHero{
  border-radius:34px;
  box-shadow:0 28px 90px rgba(0,0,0,.36);
}

body[data-cardapio-layout="pizza"] .productTop,
body[data-cardapio-layout="pizza"] .productCard{
  border-radius:10px;
  background:#2a0e06;
  color:#fff6dc;
  border-color:rgba(255,198,78,.22);
}

body[data-cardapio-layout="pizza"] .productHero{
  border-radius:999px;
  aspect-ratio:1/1;
  width:min(420px,100%);
  margin:18px auto;
}

body[data-cardapio-layout="acai"] .productTop,
body[data-cardapio-layout="acai"] .productCard{
  background:linear-gradient(135deg,rgba(75,11,130,.92),rgba(13,8,45,.94));
  color:#fff;
  border-color:rgba(255,95,215,.26);
}

body[data-cardapio-layout="delivery"] .productTop,
body[data-cardapio-layout="delivery"] .productCard{
  background:#07110d;
  color:#f4fff8;
  border-color:rgba(94,255,161,.18);
}

body[data-cardapio-layout="delivery"] .productHero{
  max-height:320px;
  border-radius:22px;
}

body[data-cardapio-layout="confectionery"] .productTop,
body[data-cardapio-layout="confectionery"] .productCard{
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055));
  color:#fff7fb;
  border-color:rgba(255,198,222,.18);
  box-shadow:0 30px 100px rgba(0,0,0,.28);
}

body[data-cardapio-layout="confectionery"] .productName{
  font-family:Georgia,serif;
}

body[data-cardapio-layout="diamond"] .productTop,
body[data-cardapio-layout="diamond"] .productCard{
  border-radius:0;
  background:#030405;
  color:#fff;
  border-color:rgba(241,217,149,.2);
  box-shadow:0 34px 120px rgba(0,0,0,.48);
}

body[data-cardapio-layout="diamond"] .productHero{
  border-radius:0;
  border:1px solid rgba(241,217,149,.18);
}

body[data-cardapio-layout="diamond"] .productName{
  font-family:Georgia,serif;
  font-weight:500;
}

body[data-cardapio-layout="premium"] .productTop,
body[data-cardapio-layout="premium"] .productCard{
  background:rgba(5,8,22,.88);
  color:#ecfffb;
  border-color:rgba(102,255,224,.18);
  backdrop-filter:blur(18px);
}

body[data-cardapio-layout="confectionery"] .productPrice,
body[data-cardapio-layout="diamond"] .productPrice,
body[data-cardapio-layout="premium"] .productPrice{
  color:#f1d995;
}

body[data-cardapio-layout="confectionery"] .addRow .waBtn,
body[data-cardapio-layout="diamond"] .addRow .waBtn,
body[data-cardapio-layout="premium"] .addRow .waBtn{
  min-height:56px;
  font-weight:1100;
}

/* Cart experiences per layout */
body[data-cardapio-layout="burger"] .drawer__panel,
body[data-cardapio-layout="pizza"] .drawer__panel,
body[data-cardapio-layout="acai"] .drawer__panel,
body[data-cardapio-layout="delivery"] .drawer__panel,
body[data-cardapio-layout="confectionery"] .drawer__panel,
body[data-cardapio-layout="diamond"] .drawer__panel,
body[data-cardapio-layout="premium"] .drawer__panel{
  max-width:460px;
  box-shadow:-28px 0 90px rgba(0,0,0,.46);
}

body[data-cardapio-layout="confectionery"] .drawer__panel{
  background:#1a0912;
  color:#fff7fb;
  border-left:1px solid rgba(255,198,222,.2);
}

body[data-cardapio-layout="diamond"] .drawer__panel{
  background:#020203;
  color:#fff;
  border-left:1px solid rgba(241,217,149,.22);
}

body[data-cardapio-layout="premium"] .drawer__panel{
  background:rgba(5,8,22,.98);
  color:#ecfffb;
}

body[data-cardapio-layout="confectionery"] .cartItem,
body[data-cardapio-layout="diamond"] .cartItem,
body[data-cardapio-layout="premium"] .cartItem{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.12);
}

body[data-cardapio-layout="confectionery"] .cartItem__img,
body[data-cardapio-layout="confectionery"] .cartMeta,
body[data-cardapio-layout="confectionery"] .cartTotals{
  border-radius:22px;
}

body[data-cardapio-layout="diamond"] .cartItem,
body[data-cardapio-layout="diamond"] .cartItem__img,
body[data-cardapio-layout="diamond"] .cartMeta,
body[data-cardapio-layout="diamond"] .cartTotals,
body[data-cardapio-layout="diamond"] .cartMeta input,
body[data-cardapio-layout="diamond"] .cartMeta select{
  border-radius:0;
}

body[data-cardapio-layout="diamond"] #checkoutBtn{
  background:#f1d995;
  color:#020203;
  border-radius:0;
}

body[data-cardapio-layout="confectionery"] #checkoutBtn{
  background:#ffc3da;
  color:#220812;
}

body[data-cardapio-layout="premium"] #checkoutBtn{
  background:#66ffe0;
  color:#03100d;
}

@media (max-width:980px){
  .burger-combo-stage .radical-favorites--burger,
  .sweet-vip-gallery .radical-favorites--confectionery,
  .diamond-private-selection .radical-favorites--diamond,
  .pizza-top-orders .radical-favorites--pizza{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x proximity;
  }

  .burger-combo-stage .radical-favorites--burger button,
  .sweet-vip-gallery .radical-favorites--confectionery button,
  .diamond-private-selection .radical-favorites--diamond button,
  .pizza-top-orders .radical-favorites--pizza button{
    flex:0 0 min(78vw,330px);
    scroll-snap-align:start;
  }
}

@media (max-width:820px){
  .layout-product-tools,
  .layout-product-tools--acai,
  .confectionery-menu-head,
  .diamond-catalog-tools{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }

  .layout-product-tools .layout-search,
  .confectionery-menu-head .layout-search,
  .diamond-catalog-tools .layout-search{
    max-width:none;
    width:100%;
  }

  .rad-promo,
  .rad-promo--confectionery,
  .rad-promo--diamond,
  .rad-promo--delivery{
    height:250px;
    max-height:250px;
  }

  .rad-promo-arrow{
    display:none !important;
  }

  .rad-promo-cta{
    min-height:40px;
    padding:0 14px;
  }

  .confectionery-vip-atelier,
  .diamond-cinema{
    grid-template-columns:1fr;
    min-height:0;
  }

  .confectionery-vip-story,
  .diamond-system-copy{
    padding:24px;
  }

  .confectionery-vip-story h1,
  .diamond-system-copy h1{
    font-size:clamp(2.25rem,13vw,4rem);
  }

  .diamond-cinema-media{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.14);
  }

  .confectionery-system-products,
  .burger-system-grid,
  .acai-system-products,
  .premium-product-river{
    grid-template-columns:1fr;
  }

  .pizza-top-orders .radical-favorites--pizza button{
    grid-template-columns:92px 1fr;
  }

  .pizza-top-orders .radical-favorites--pizza img{
    height:96px;
  }

  .drawer__panel{
    width:100%;
    max-width:100%;
  }
}



/* =========================================================
   PedidoFy professional layout architecture
   Applies only to non-standard cardapio layouts.
========================================================= */
body[data-cardapio-layout="delivery"],
body[data-cardapio-layout="burger"],
body[data-cardapio-layout="pizza"],
body[data-cardapio-layout="acai"],
body[data-cardapio-layout="confectionery"],
body[data-cardapio-layout="diamond"],
body[data-cardapio-layout="premium"]{
  --pfy-bg:#07100c;
  --pfy-panel:rgba(255,255,255,.075);
  --pfy-panel-strong:rgba(255,255,255,.12);
  --pfy-border:rgba(255,255,255,.13);
  --pfy-text:#f8fff9;
  --pfy-muted:rgba(248,255,249,.68);
  --pfy-soft:rgba(255,255,255,.06);
  --pfy-accent:#32e27c;
  --pfy-accent-2:#c5ff76;
  --pfy-shadow:0 34px 110px rgba(0,0,0,.42);
  --pfy-radius:26px;
  background:
    radial-gradient(circle at 12% -6%, rgba(50,226,124,.22), transparent 30%),
    radial-gradient(circle at 90% 4%, rgba(197,255,118,.12), transparent 28%),
    linear-gradient(180deg,#07100c,#030605 78%);
  color:var(--pfy-text);
  overflow-x:hidden;
}

body[data-cardapio-layout="burger"]{
  --pfy-bg:#130906;
  --pfy-panel:rgba(255,121,36,.095);
  --pfy-panel-strong:rgba(255,178,46,.16);
  --pfy-border:rgba(255,178,46,.2);
  --pfy-text:#fff8ed;
  --pfy-muted:rgba(255,248,237,.68);
  --pfy-accent:#ffb22e;
  --pfy-accent-2:#ff4d24;
  --pfy-radius:24px;
  background:
    linear-gradient(135deg,rgba(255,77,36,.16),transparent 32%),
    radial-gradient(circle at 76% 0%, rgba(255,178,46,.18), transparent 30%),
    repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px, transparent 1px 14px),
    #130906;
}

body[data-cardapio-layout="pizza"]{
  --pfy-bg:#160a05;
  --pfy-panel:rgba(88,31,15,.74);
  --pfy-panel-strong:rgba(255,198,78,.13);
  --pfy-border:rgba(255,198,78,.22);
  --pfy-text:#fff1d0;
  --pfy-muted:rgba(255,241,208,.67);
  --pfy-accent:#ffc64e;
  --pfy-accent-2:#d7471e;
  --pfy-radius:14px;
  background:
    linear-gradient(90deg,rgba(52,18,8,.96),rgba(22,10,5,.96)),
    repeating-linear-gradient(90deg,rgba(255,198,78,.045) 0 2px, transparent 2px 16px);
}

body[data-cardapio-layout="acai"]{
  --pfy-bg:#130022;
  --pfy-panel:rgba(136,46,255,.14);
  --pfy-panel-strong:rgba(255,95,215,.17);
  --pfy-border:rgba(255,255,255,.18);
  --pfy-text:#fff7ff;
  --pfy-muted:rgba(255,247,255,.69);
  --pfy-accent:#7dffea;
  --pfy-accent-2:#ff5fd7;
  --pfy-radius:34px;
  background:
    radial-gradient(circle at 15% 8%, rgba(255,95,215,.3), transparent 28%),
    radial-gradient(circle at 88% 0%, rgba(0,212,255,.28), transparent 34%),
    linear-gradient(160deg,#22013c,#07021a 72%);
}

body[data-cardapio-layout="confectionery"]{
  --pfy-bg:#1b0712;
  --pfy-panel:rgba(255,202,222,.11);
  --pfy-panel-strong:rgba(255,202,222,.18);
  --pfy-border:rgba(255,202,222,.2);
  --pfy-text:#fff6fb;
  --pfy-muted:rgba(255,246,251,.7);
  --pfy-accent:#ffc7dc;
  --pfy-accent-2:#b76282;
  --pfy-radius:32px;
  background:
    radial-gradient(circle at 20% -8%, rgba(255,199,220,.22), transparent 30%),
    linear-gradient(135deg,rgba(82,21,48,.52),rgba(27,7,18,.98)),
    #1b0712;
}

body[data-cardapio-layout="diamond"]{
  --pfy-bg:#020203;
  --pfy-panel:rgba(255,255,255,.055);
  --pfy-panel-strong:rgba(241,217,149,.09);
  --pfy-border:rgba(241,217,149,.24);
  --pfy-text:#ffffff;
  --pfy-muted:rgba(255,255,255,.62);
  --pfy-accent:#f1d995;
  --pfy-accent-2:#ffffff;
  --pfy-radius:0;
  background:
    linear-gradient(115deg,rgba(241,217,149,.12),transparent 28%),
    radial-gradient(circle at 82% 0%, rgba(255,255,255,.16), transparent 22%),
    #020203;
}

body[data-cardapio-layout="premium"]{
  --pfy-bg:#020817;
  --pfy-panel:rgba(102,255,224,.075);
  --pfy-panel-strong:rgba(102,255,224,.15);
  --pfy-border:rgba(102,255,224,.22);
  --pfy-text:#ecfffb;
  --pfy-muted:rgba(236,255,251,.68);
  --pfy-accent:#66ffe0;
  --pfy-accent-2:#a8f7ff;
  --pfy-radius:30px;
  background:
    linear-gradient(120deg,rgba(102,255,224,.13),transparent 28%),
    radial-gradient(circle at 88% -4%, rgba(98,128,255,.26), transparent 34%),
    #020817;
}

body[data-cardapio-layout="delivery"] .app,
body[data-cardapio-layout="burger"] .app,
body[data-cardapio-layout="pizza"] .app,
body[data-cardapio-layout="acai"] .app,
body[data-cardapio-layout="confectionery"] .app,
body[data-cardapio-layout="diamond"] .app,
body[data-cardapio-layout="premium"] .app{
  width:100%;
  max-width:none;
  overflow:hidden;
}

body[data-cardapio-layout="delivery"] .main,
body[data-cardapio-layout="burger"] .main,
body[data-cardapio-layout="pizza"] .main,
body[data-cardapio-layout="acai"] .main,
body[data-cardapio-layout="confectionery"] .main,
body[data-cardapio-layout="diamond"] .main,
body[data-cardapio-layout="premium"] .main{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  padding-top:8px;
}

.pfy-layout,
.pfy-layout *{
  box-sizing:border-box;
  min-width:0;
}

.pfy-layout{
  width:min(1240px,100%);
  max-width:100%;
  margin:0 auto;
  padding:14px clamp(12px,2.4vw,28px) 128px;
  color:var(--pfy-text);
  overflow:hidden;
}

.pfy-layout img{
  display:block;
  max-width:100%;
}

.pfy-layout button{
  font:inherit;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}

.pfy-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  margin-bottom:18px;
}

.pfy-brand{
  display:flex;
  align-items:center;
  gap:12px;
}

.pfy-brand img{
  width:54px;
  height:54px;
  border-radius:18px;
  object-fit:cover;
  border:1px solid var(--pfy-border);
  box-shadow:0 14px 36px rgba(0,0,0,.24);
}

.pfy-brand strong{
  display:block;
  color:var(--pfy-text);
  font-size:1rem;
  line-height:1.05;
}

.pfy-brand span{
  display:block;
  margin-top:4px;
  color:var(--pfy-muted);
  font-size:.78rem;
  font-weight:900;
}

.pfy-header nav,
.pfy-action-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.pfy-header nav button,
.pfy-action-row button,
.pfy-section-head button,
.pfy-pizza-rail > button{
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
  font-weight:1000;
  box-shadow:0 12px 32px rgba(0,0,0,.18);
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}

.pfy-header nav button:hover,
.pfy-action-row button:hover,
.pfy-section-head button:hover,
.pfy-pizza-rail > button:hover{
  transform:translateY(-2px);
  background:var(--pfy-panel-strong);
  border-color:var(--pfy-accent);
}

.pfy-meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}

.pfy-meta-row span,
.pfy-burger-stats span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid var(--pfy-border);
  background:rgba(0,0,0,.2);
  color:var(--pfy-text);
  font-weight:1000;
  font-size:.82rem;
}

.pfy-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
}

.pfy-section-head span,
.pfy-section-kicker{
  color:var(--pfy-accent);
  font-size:.78rem;
  font-weight:1100;
  text-transform:uppercase;
  letter-spacing:0;
}

.pfy-search-wrap{
  width:100%;
}

.pfy-search{
  position:relative;
  display:block;
  margin-top:8px;
}

.pfy-search input{
  width:100%;
  min-height:56px;
  padding:0 52px 0 18px;
  border-radius:18px;
  border:1px solid var(--pfy-border);
  background:rgba(0,0,0,.24);
  color:var(--pfy-text);
  outline:none;
  font-weight:900;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.pfy-search input::placeholder{
  color:var(--pfy-muted);
}

.pfy-search button{
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:var(--pfy-accent);
  color:#07100c;
  font-weight:1100;
}

.pfy-toolbelt{
  display:grid;
  grid-template-columns:minmax(280px,440px) minmax(0,1fr);
  align-items:end;
  gap:16px;
  margin:24px 0 18px;
}

.pfy-cats,
.pfy-pizza-cats{
  display:flex;
  gap:10px;
  overflow-x:auto;
  max-width:100%;
  padding:2px 2px 8px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}

.pfy-cats::-webkit-scrollbar,
.pfy-pizza-cats::-webkit-scrollbar,
.pfy-feature-grid::-webkit-scrollbar{
  display:none;
}

.pfy-cat{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  min-height:46px;
  max-width:220px;
  padding:0 14px;
  border:1px solid var(--pfy-border);
  border-radius:999px;
  background:var(--pfy-panel);
  color:var(--pfy-text);
  box-shadow:0 12px 34px rgba(0,0,0,.14);
}

.pfy-cat span{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
}

.pfy-cat b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pfy-cat.active{
  color:#07100c;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  border-color:transparent;
}

.pfy-layout .rad-promo{
  position:relative;
  width:100%;
  height:clamp(220px,27vw,340px) !important;
  min-height:0 !important;
  max-height:340px !important;
  margin:0;
  overflow:hidden;
  border-radius:var(--pfy-radius);
  border:1px solid var(--pfy-border);
  background:linear-gradient(135deg,var(--pfy-panel),rgba(0,0,0,.34));
  box-shadow:var(--pfy-shadow);
  transform:translateX(var(--promo-drag,0));
  touch-action:pan-y;
  cursor:pointer;
}

.pfy-layout--diamond .rad-promo,
.pfy-layout--premium .rad-promo{
  height:clamp(250px,30vw,390px) !important;
  max-height:390px !important;
}

.pfy-layout--delivery .rad-promo{
  height:clamp(205px,24vw,300px) !important;
  max-height:300px !important;
}

.pfy-layout .rad-promo img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(1.08) contrast(1.04);
  transform:translateX(var(--promo-drag,0)) scale(1.02);
  transition:transform .35s ease, filter .35s ease;
}

.pfy-layout .rad-promo:hover img{
  transform:scale(1.055);
}

.pfy-layout .rad-promo::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.22) 58%,rgba(0,0,0,.54)),
    linear-gradient(180deg,transparent,rgba(0,0,0,.36));
  pointer-events:none;
}

.pfy-layout .rad-promo > div{
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:20px;
  width:min(430px,calc(100% - 44px));
}

.pfy-layout .rad-promo h2{
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(1.28rem,2.2vw,2.2rem);
  line-height:1;
  letter-spacing:0;
}

.pfy-layout .rad-price-pair,
.pfy-price{
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
  line-height:1;
}

.pfy-layout .rad-price-pair small,
.pfy-price small,
.productOldPrice{
  color:rgba(255,255,255,.5);
  text-decoration:line-through;
  font-weight:900;
  font-size:.82rem;
}

.pfy-layout .rad-price-pair strong,
.pfy-price strong,
.productPromoPrice,
.productRegularPrice{
  color:var(--pfy-accent);
  font-weight:1100;
  font-size:1.08rem;
}

.productPromoPrice{
  font-size:1.35rem;
}

.pfy-layout .rad-promo-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:14px;
  padding:0 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1100;
  box-shadow:0 18px 42px rgba(0,0,0,.3);
}

.pfy-layout .rad-promo-arrow{
  position:absolute;
  top:50%;
  z-index:3;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  display:none;
  place-items:center;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  background:rgba(0,0,0,.42);
  color:#fff;
  font-size:1.7rem;
  line-height:1;
}

.pfy-layout .rad-promo-arrow--prev{left:14px}
.pfy-layout .rad-promo-arrow--next{right:14px}

.pfy-layout .rad-promo-dots{
  position:absolute;
  left:50%;
  bottom:12px;
  z-index:3;
  transform:translateX(-50%);
  display:flex;
  gap:7px;
}

.pfy-layout .rad-promo-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.45);
}

.pfy-layout .rad-promo-dots button.active{
  width:24px;
  background:var(--pfy-accent);
}

@media (min-width:821px){
  .pfy-layout .rad-promo-arrow{
    display:grid !important;
  }
}

.pfy-feature-section{
  margin:24px 0;
}

.pfy-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:100%;
}

.pfy-feature-card{
  position:relative;
  min-height:240px;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  border-radius:var(--pfy-radius);
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  text-align:left;
  color:var(--pfy-text);
  background:var(--pfy-panel);
  box-shadow:0 24px 70px rgba(0,0,0,.27);
  transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.pfy-feature-card:hover{
  transform:translateY(-4px);
  border-color:var(--pfy-accent);
  box-shadow:0 34px 90px rgba(0,0,0,.38);
}

.pfy-feature-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.86;
  transition:transform .35s ease;
}

.pfy-feature-card:hover img{
  transform:scale(1.055);
}

.pfy-feature-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.78));
}

.pfy-feature-card span,
.pfy-feature-card strong,
.pfy-feature-card p,
.pfy-feature-card .pfy-price{
  position:relative;
  z-index:2;
}

.pfy-feature-card span{
  display:inline-flex;
  min-height:30px;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  background:rgba(0,0,0,.42);
  color:var(--pfy-accent);
  font-weight:1100;
  font-size:.78rem;
}

.pfy-feature-card strong{
  margin-top:10px;
  font-size:clamp(1.15rem,2vw,1.8rem);
  line-height:1;
}

.pfy-feature-card p{
  max-width:90%;
  margin:8px 0 12px;
  color:rgba(255,255,255,.72);
  font-size:.88rem;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.pfy-feature-grid--burger{
  grid-template-columns:1.35fr .9fr .9fr;
}

.pfy-feature-grid--burger .is-main{
  min-height:330px;
}

.pfy-feature-grid--pizza{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.pfy-feature-card--pizza{
  min-height:190px;
  border-radius:16px;
}

.pfy-feature-grid--acai,
.pfy-feature-grid--delivery{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  padding:2px 2px 12px;
}

.pfy-feature-grid--acai .pfy-feature-card,
.pfy-feature-grid--delivery .pfy-feature-card{
  flex:0 0 250px;
  scroll-snap-align:start;
}

.pfy-feature-grid--confectionery{
  grid-template-columns:1.12fr .88fr .88fr;
}

.pfy-feature-card--confectionery.is-main{
  min-height:350px;
}

.pfy-feature-grid--diamond,
.pfy-feature-grid--premium{
  grid-template-columns:1.18fr 1fr 1fr;
}

.pfy-feature-card--diamond,
.pfy-feature-card--premium{
  min-height:300px;
}

.pfy-products-zone{
  position:relative;
  margin-top:18px;
}

.pfy-product-list{
  display:grid;
  gap:14px;
}

.pfy-product{
  position:relative;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
  box-shadow:0 20px 64px rgba(0,0,0,.22);
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}

.pfy-product:hover{
  transform:translateY(-3px);
  border-color:var(--pfy-accent);
  background:var(--pfy-panel-strong);
}

.pfy-product h3{
  margin:0;
  color:var(--pfy-text);
  font-size:1rem;
  line-height:1.12;
  letter-spacing:0;
}

.pfy-product p{
  margin:7px 0 0;
  color:var(--pfy-muted);
  font-size:.86rem;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.pfy-product-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.pfy-product button[data-quick-product],
.pfy-product-side button{
  min-height:42px;
  padding:0 14px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1100;
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}

.pfy-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  width:max-content;
  max-width:100%;
  padding:0 9px;
  margin-bottom:8px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:var(--pfy-accent);
  font-size:.72rem;
  font-style:normal;
  font-weight:1100;
}

.pfy-product-list--delivery{
  max-width:780px;
  margin:0 auto;
}

.pfy-product--delivery{
  min-height:132px;
  border-radius:22px;
  display:grid;
  grid-template-columns:108px minmax(0,1fr) minmax(112px,auto);
  gap:14px;
  align-items:center;
  padding:12px;
}

.pfy-product--delivery .pfy-product-media{
  height:108px;
  border-radius:18px;
  overflow:hidden;
}

.pfy-product--delivery .pfy-product-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

.pfy-product-list--burger,
.pfy-product-list--acai,
.pfy-product-list--confectionery{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.pfy-product--burger,
.pfy-product--acai,
.pfy-product--confectionery{
  min-height:340px;
  border-radius:var(--pfy-radius);
  display:flex;
  flex-direction:column;
}

.pfy-product--burger .pfy-product-media,
.pfy-product--acai .pfy-product-media,
.pfy-product--confectionery .pfy-product-media{
  height:190px;
  overflow:hidden;
}

.pfy-product--burger .pfy-product-copy,
.pfy-product--acai .pfy-product-copy,
.pfy-product--confectionery .pfy-product-copy{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:16px;
}

.pfy-product--burger > button,
.pfy-product--acai > button,
.pfy-product--confectionery > button{
  margin:0 16px 16px;
}

.pfy-product--burger .pfy-price,
.pfy-product--acai .pfy-price,
.pfy-product--confectionery .pfy-price{
  margin-top:auto;
  padding-top:14px;
}

.pfy-product-list--pizza{
  gap:12px;
}

.pfy-product--pizza{
  min-height:138px;
  display:grid;
  grid-template-columns:54px 118px minmax(0,1fr) minmax(120px,auto);
  align-items:center;
  gap:14px;
  padding:12px;
  border-radius:18px;
}

.pfy-product--pizza .pfy-product-index{
  color:var(--pfy-accent);
  font-weight:1100;
  text-align:center;
}

.pfy-product--pizza .pfy-product-media{
  width:112px;
  height:112px;
  overflow:hidden;
  border-radius:50%;
  box-shadow:0 16px 40px rgba(0,0,0,.28);
}

.pfy-product--pizza .pfy-product-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

.pfy-product-list--diamond{
  gap:12px;
}

.pfy-product--diamond{
  min-height:178px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px minmax(128px,auto);
  gap:18px;
  align-items:center;
  padding:18px;
  border-radius:0;
  background:linear-gradient(90deg,rgba(241,217,149,.08),rgba(255,255,255,.025));
}

.pfy-product--diamond .pfy-product-index{
  display:block;
  margin-bottom:10px;
  color:var(--pfy-accent);
  font-family:Georgia,serif;
  font-size:.8rem;
}

.pfy-product--diamond .pfy-product-media{
  height:128px;
  overflow:hidden;
  border:1px solid var(--pfy-border);
}

.pfy-product--diamond .pfy-product-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:14px;
}

.pfy-product-list--premium{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.pfy-product--premium{
  min-height:178px;
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:14px;
  align-items:stretch;
  padding:12px;
  border-radius:30px;
  backdrop-filter:blur(18px);
}

.pfy-product--premium .pfy-product-media{
  border-radius:22px;
  overflow:hidden;
}

.pfy-product--premium .pfy-product-copy{
  display:flex;
  flex-direction:column;
  padding:6px;
}

.pfy-product--premium > button{
  grid-column:2;
  justify-self:start;
  margin-top:auto;
}

.pfy-delivery-app{
  max-width:860px;
  margin:0 auto;
}

.pfy-delivery-hero{
  display:grid;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
  gap:16px;
  align-items:stretch;
}

.pfy-delivery-copy{
  min-height:300px;
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:28px;
  background:linear-gradient(180deg,var(--pfy-panel),rgba(0,0,0,.24));
  box-shadow:var(--pfy-shadow);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.pfy-delivery-copy h1,
.pfy-burger-copy h1,
.pfy-acai-glass h1,
.pfy-sweet-story h1,
.pfy-velocity-copy h1,
.pfy-diamond-copy h1{
  margin:0;
  font-size:clamp(2.4rem,6vw,5.8rem);
  line-height:.9;
  letter-spacing:0;
}

.pfy-delivery-copy p,
.pfy-burger-copy p,
.pfy-sweet-story p,
.pfy-diamond-copy p,
.pfy-pizza-banner p{
  max-width:560px;
  margin:16px 0 0;
  color:var(--pfy-muted);
  line-height:1.55;
}

.pfy-burger-hero{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:18px;
  align-items:stretch;
  min-height:520px;
}

.pfy-burger-copy,
.pfy-burger-stage{
  border:1px solid var(--pfy-border);
  border-radius:34px;
  background:linear-gradient(145deg,var(--pfy-panel),rgba(0,0,0,.42));
  box-shadow:var(--pfy-shadow);
}

.pfy-burger-copy{
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.pfy-burger-stage{
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:14px;
}

.pfy-burger-stage .rad-promo{
  flex:1;
  height:auto !important;
  max-height:none !important;
  min-height:360px !important;
}

.pfy-burger-stats{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.pfy-pizza-frame{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.pfy-pizza-rail{
  position:sticky;
  top:12px;
  min-height:calc(100vh - 34px);
  padding:18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(72,24,10,.92),rgba(35,12,6,.94));
  box-shadow:var(--pfy-shadow);
}

.pfy-pizza-rail .pfy-header{
  flex-direction:column;
  align-items:flex-start;
  margin-bottom:22px;
}

.pfy-pizza-rail .pfy-header nav{
  display:none;
}

.pfy-pizza-brand h1{
  margin:0 0 8px;
  font-family:Georgia,serif;
  font-size:2.1rem;
  line-height:.95;
  color:var(--pfy-text);
}

.pfy-pizza-brand span{
  color:var(--pfy-muted);
  font-weight:1000;
}

.pfy-pizza-cats{
  flex-direction:column;
  overflow:visible;
  margin:24px 0;
  padding:0;
}

.pfy-pizza-cats .pfy-cat{
  width:100%;
  justify-content:flex-start;
  border-radius:12px;
}

.pfy-pizza-banner{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:16px;
  align-items:stretch;
}

.pfy-pizza-banner > div:first-child{
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,var(--pfy-panel),rgba(0,0,0,.32));
}

.pfy-pizza-banner h2{
  margin:0;
  font-family:Georgia,serif;
  color:var(--pfy-text);
  font-size:clamp(2rem,5vw,4.6rem);
  line-height:.92;
}

.pfy-acai-hero{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:16px;
  align-items:stretch;
}

.pfy-acai-glass,
.pfy-sweet-story,
.pfy-velocity-copy,
.pfy-diamond-copy{
  padding:30px;
  border:1px solid var(--pfy-border);
  border-radius:var(--pfy-radius);
  background:linear-gradient(145deg,var(--pfy-panel),rgba(0,0,0,.34));
  box-shadow:var(--pfy-shadow);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.pfy-acai-glass{
  min-height:390px;
}

.pfy-acai-glass h1{
  color:#fff;
  text-shadow:0 14px 40px rgba(255,95,215,.32);
}

.pfy-sweet-atelier{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:18px;
  align-items:stretch;
}

.pfy-sweet-story{
  min-height:480px;
}

.pfy-sweet-story h1{
  font-family:Georgia,serif;
  color:var(--pfy-text);
}

.pfy-velocity-command,
.pfy-diamond-cinema{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:0;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  border-radius:var(--pfy-radius);
  background:linear-gradient(135deg,var(--pfy-panel),rgba(0,0,0,.5));
  box-shadow:0 44px 140px rgba(0,0,0,.55);
}

.pfy-velocity-copy,
.pfy-diamond-copy{
  border:0;
  border-right:1px solid var(--pfy-border);
  border-radius:0;
  box-shadow:none;
  min-height:520px;
}

.pfy-velocity-media,
.pfy-diamond-media{
  padding:18px;
}

.pfy-layout--diamond .pfy-header nav button,
.pfy-layout--diamond .pfy-action-row button,
.pfy-layout--diamond .pfy-cat,
.pfy-layout--diamond .pfy-product,
.pfy-layout--diamond .pfy-feature-card,
.pfy-layout--diamond .pfy-search input,
.pfy-layout--diamond .rad-promo,
.pfy-layout--diamond .rad-promo-cta{
  border-radius:0;
}

.pfy-layout--premium .pfy-product,
.pfy-layout--premium .pfy-feature-card,
.pfy-layout--premium .rad-promo,
.pfy-layout--premium .pfy-search input,
.pfy-layout--premium .pfy-cat{
  backdrop-filter:blur(18px);
}

.view.hidden#viewProduct{
  display:none !important;
}

body[data-cardapio-layout="delivery"] #viewProduct:not(.hidden),
body[data-cardapio-layout="burger"] #viewProduct:not(.hidden),
body[data-cardapio-layout="pizza"] #viewProduct:not(.hidden),
body[data-cardapio-layout="acai"] #viewProduct:not(.hidden),
body[data-cardapio-layout="confectionery"] #viewProduct:not(.hidden),
body[data-cardapio-layout="diamond"] #viewProduct:not(.hidden),
body[data-cardapio-layout="premium"] #viewProduct:not(.hidden){
  width:min(1120px,100%);
  max-width:100%;
  margin:0 auto;
  padding:14px clamp(12px,2.4vw,28px) 128px;
  color:var(--pfy-text);
}

@media (min-width:900px){
  body[data-cardapio-layout="burger"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="pizza"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="acai"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="confectionery"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="diamond"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="premium"] #viewProduct:not(.hidden){
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:20px;
    align-items:start;
  }

  body[data-cardapio-layout="delivery"] #viewProduct:not(.hidden){
    max-width:760px;
  }

  body[data-cardapio-layout="burger"] #viewProduct:not(.hidden) .productTop,
  body[data-cardapio-layout="pizza"] #viewProduct:not(.hidden) .productTop,
  body[data-cardapio-layout="acai"] #viewProduct:not(.hidden) .productTop,
  body[data-cardapio-layout="confectionery"] #viewProduct:not(.hidden) .productTop,
  body[data-cardapio-layout="diamond"] #viewProduct:not(.hidden) .productTop,
  body[data-cardapio-layout="premium"] #viewProduct:not(.hidden) .productTop{
    grid-column:1 / -1;
  }
}

body[data-cardapio-layout="delivery"] .productTop,
body[data-cardapio-layout="burger"] .productTop,
body[data-cardapio-layout="pizza"] .productTop,
body[data-cardapio-layout="acai"] .productTop,
body[data-cardapio-layout="confectionery"] .productTop,
body[data-cardapio-layout="diamond"] .productTop,
body[data-cardapio-layout="premium"] .productTop,
body[data-cardapio-layout="delivery"] .productCard,
body[data-cardapio-layout="burger"] .productCard,
body[data-cardapio-layout="pizza"] .productCard,
body[data-cardapio-layout="acai"] .productCard,
body[data-cardapio-layout="confectionery"] .productCard,
body[data-cardapio-layout="diamond"] .productCard,
body[data-cardapio-layout="premium"] .productCard{
  border:1px solid var(--pfy-border);
  background:linear-gradient(180deg,var(--pfy-panel),rgba(0,0,0,.32));
  color:var(--pfy-text);
  box-shadow:0 24px 80px rgba(0,0,0,.28);
}

body[data-cardapio-layout="delivery"] .productTop,
body[data-cardapio-layout="burger"] .productTop,
body[data-cardapio-layout="pizza"] .productTop,
body[data-cardapio-layout="acai"] .productTop,
body[data-cardapio-layout="confectionery"] .productTop,
body[data-cardapio-layout="diamond"] .productTop,
body[data-cardapio-layout="premium"] .productTop{
  min-height:58px;
  padding:8px 10px;
  border-radius:20px;
}

body[data-cardapio-layout="diamond"] .productTop,
body[data-cardapio-layout="diamond"] .productCard,
body[data-cardapio-layout="diamond"] .productHero,
body[data-cardapio-layout="diamond"] .optBlock,
body[data-cardapio-layout="diamond"] .note input,
body[data-cardapio-layout="diamond"] .qty,
body[data-cardapio-layout="diamond"] .qtyBtn{
  border-radius:0;
}

body[data-cardapio-layout="delivery"] .productHero,
body[data-cardapio-layout="burger"] .productHero,
body[data-cardapio-layout="pizza"] .productHero,
body[data-cardapio-layout="acai"] .productHero,
body[data-cardapio-layout="confectionery"] .productHero,
body[data-cardapio-layout="diamond"] .productHero,
body[data-cardapio-layout="premium"] .productHero{
  height:clamp(270px,34vw,450px);
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  box-shadow:0 28px 90px rgba(0,0,0,.34);
}

body[data-cardapio-layout="pizza"] .productHero{
  width:min(440px,100%);
  height:auto;
  aspect-ratio:1/1;
  margin:10px auto;
  border-radius:50%;
}

body[data-cardapio-layout="delivery"] .productCard,
body[data-cardapio-layout="burger"] .productCard,
body[data-cardapio-layout="pizza"] .productCard,
body[data-cardapio-layout="acai"] .productCard,
body[data-cardapio-layout="confectionery"] .productCard,
body[data-cardapio-layout="diamond"] .productCard,
body[data-cardapio-layout="premium"] .productCard{
  padding:18px;
  border-radius:24px;
}

body[data-cardapio-layout="delivery"] .productName,
body[data-cardapio-layout="burger"] .productName,
body[data-cardapio-layout="pizza"] .productName,
body[data-cardapio-layout="acai"] .productName,
body[data-cardapio-layout="confectionery"] .productName,
body[data-cardapio-layout="diamond"] .productName,
body[data-cardapio-layout="premium"] .productName{
  color:var(--pfy-text);
  font-size:clamp(1.28rem,2.4vw,2rem);
}

body[data-cardapio-layout="confectionery"] .productName,
body[data-cardapio-layout="diamond"] .productName{
  font-family:Georgia,serif;
}

body[data-cardapio-layout="delivery"] .productPrice,
body[data-cardapio-layout="burger"] .productPrice,
body[data-cardapio-layout="pizza"] .productPrice,
body[data-cardapio-layout="acai"] .productPrice,
body[data-cardapio-layout="confectionery"] .productPrice,
body[data-cardapio-layout="diamond"] .productPrice,
body[data-cardapio-layout="premium"] .productPrice{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
  color:var(--pfy-accent);
  font-weight:1100;
}

body[data-cardapio-layout="delivery"] .productDesc,
body[data-cardapio-layout="burger"] .productDesc,
body[data-cardapio-layout="pizza"] .productDesc,
body[data-cardapio-layout="acai"] .productDesc,
body[data-cardapio-layout="confectionery"] .productDesc,
body[data-cardapio-layout="diamond"] .productDesc,
body[data-cardapio-layout="premium"] .productDesc{
  color:var(--pfy-muted);
  font-size:.95rem;
  line-height:1.5;
}

body[data-cardapio-layout="delivery"] .optBlock,
body[data-cardapio-layout="burger"] .optBlock,
body[data-cardapio-layout="pizza"] .optBlock,
body[data-cardapio-layout="acai"] .optBlock,
body[data-cardapio-layout="confectionery"] .optBlock,
body[data-cardapio-layout="diamond"] .optBlock,
body[data-cardapio-layout="premium"] .optBlock,
body[data-cardapio-layout="delivery"] .note input,
body[data-cardapio-layout="burger"] .note input,
body[data-cardapio-layout="pizza"] .note input,
body[data-cardapio-layout="acai"] .note input,
body[data-cardapio-layout="confectionery"] .note input,
body[data-cardapio-layout="diamond"] .note input,
body[data-cardapio-layout="premium"] .note input{
  border-color:var(--pfy-border);
  background:rgba(0,0,0,.25);
  color:var(--pfy-text);
}

body[data-cardapio-layout="delivery"] .qty,
body[data-cardapio-layout="burger"] .qty,
body[data-cardapio-layout="pizza"] .qty,
body[data-cardapio-layout="acai"] .qty,
body[data-cardapio-layout="confectionery"] .qty,
body[data-cardapio-layout="diamond"] .qty,
body[data-cardapio-layout="premium"] .qty{
  min-height:56px;
  border-color:var(--pfy-border);
  background:rgba(0,0,0,.28);
}

body[data-cardapio-layout="delivery"] .qtyBtn,
body[data-cardapio-layout="burger"] .qtyBtn,
body[data-cardapio-layout="pizza"] .qtyBtn,
body[data-cardapio-layout="acai"] .qtyBtn,
body[data-cardapio-layout="confectionery"] .qtyBtn,
body[data-cardapio-layout="diamond"] .qtyBtn,
body[data-cardapio-layout="premium"] .qtyBtn{
  background:var(--pfy-panel-strong);
  color:var(--pfy-text);
}

body[data-cardapio-layout="delivery"] .addRow .waBtn,
body[data-cardapio-layout="burger"] .addRow .waBtn,
body[data-cardapio-layout="pizza"] .addRow .waBtn,
body[data-cardapio-layout="acai"] .addRow .waBtn,
body[data-cardapio-layout="confectionery"] .addRow .waBtn,
body[data-cardapio-layout="diamond"] .addRow .waBtn,
body[data-cardapio-layout="premium"] .addRow .waBtn{
  min-height:56px;
  border:0;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1100;
}

body[data-cardapio-layout="delivery"] .drawer__panel,
body[data-cardapio-layout="burger"] .drawer__panel,
body[data-cardapio-layout="pizza"] .drawer__panel,
body[data-cardapio-layout="acai"] .drawer__panel,
body[data-cardapio-layout="confectionery"] .drawer__panel,
body[data-cardapio-layout="diamond"] .drawer__panel,
body[data-cardapio-layout="premium"] .drawer__panel{
  width:min(470px,100%);
  max-width:100%;
  background:
    linear-gradient(180deg,var(--pfy-bg),rgba(0,0,0,.98));
  color:var(--pfy-text);
  border-left:1px solid var(--pfy-border);
  box-shadow:-34px 0 110px rgba(0,0,0,.58);
}

body[data-cardapio-layout="delivery"] .drawer__head,
body[data-cardapio-layout="burger"] .drawer__head,
body[data-cardapio-layout="pizza"] .drawer__head,
body[data-cardapio-layout="acai"] .drawer__head,
body[data-cardapio-layout="confectionery"] .drawer__head,
body[data-cardapio-layout="diamond"] .drawer__head,
body[data-cardapio-layout="premium"] .drawer__head{
  border-bottom:1px solid var(--pfy-border);
  background:rgba(255,255,255,.035);
}

body[data-cardapio-layout="delivery"] .cartItem,
body[data-cardapio-layout="burger"] .cartItem,
body[data-cardapio-layout="pizza"] .cartItem,
body[data-cardapio-layout="acai"] .cartItem,
body[data-cardapio-layout="confectionery"] .cartItem,
body[data-cardapio-layout="diamond"] .cartItem,
body[data-cardapio-layout="premium"] .cartItem,
body[data-cardapio-layout="delivery"] .cartMeta,
body[data-cardapio-layout="burger"] .cartMeta,
body[data-cardapio-layout="pizza"] .cartMeta,
body[data-cardapio-layout="acai"] .cartMeta,
body[data-cardapio-layout="confectionery"] .cartMeta,
body[data-cardapio-layout="diamond"] .cartMeta,
body[data-cardapio-layout="premium"] .cartMeta,
body[data-cardapio-layout="delivery"] .cartTotals,
body[data-cardapio-layout="burger"] .cartTotals,
body[data-cardapio-layout="pizza"] .cartTotals,
body[data-cardapio-layout="acai"] .cartTotals,
body[data-cardapio-layout="confectionery"] .cartTotals,
body[data-cardapio-layout="diamond"] .cartTotals,
body[data-cardapio-layout="premium"] .cartTotals{
  border-color:var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
}

body[data-cardapio-layout="delivery"] .cartMeta input,
body[data-cardapio-layout="burger"] .cartMeta input,
body[data-cardapio-layout="pizza"] .cartMeta input,
body[data-cardapio-layout="acai"] .cartMeta input,
body[data-cardapio-layout="confectionery"] .cartMeta input,
body[data-cardapio-layout="diamond"] .cartMeta input,
body[data-cardapio-layout="premium"] .cartMeta input,
body[data-cardapio-layout="delivery"] .cartMeta select,
body[data-cardapio-layout="burger"] .cartMeta select,
body[data-cardapio-layout="pizza"] .cartMeta select,
body[data-cardapio-layout="acai"] .cartMeta select,
body[data-cardapio-layout="confectionery"] .cartMeta select,
body[data-cardapio-layout="diamond"] .cartMeta select,
body[data-cardapio-layout="premium"] .cartMeta select{
  border-color:var(--pfy-border);
  background:rgba(0,0,0,.28);
  color:var(--pfy-text);
}

body[data-cardapio-layout="delivery"] .cartMeta select option,
body[data-cardapio-layout="burger"] .cartMeta select option,
body[data-cardapio-layout="pizza"] .cartMeta select option,
body[data-cardapio-layout="acai"] .cartMeta select option,
body[data-cardapio-layout="confectionery"] .cartMeta select option,
body[data-cardapio-layout="diamond"] .cartMeta select option,
body[data-cardapio-layout="premium"] .cartMeta select option{
  color:#111;
}

body[data-cardapio-layout="delivery"] .totRow--big,
body[data-cardapio-layout="burger"] .totRow--big,
body[data-cardapio-layout="pizza"] .totRow--big,
body[data-cardapio-layout="acai"] .totRow--big,
body[data-cardapio-layout="confectionery"] .totRow--big,
body[data-cardapio-layout="diamond"] .totRow--big,
body[data-cardapio-layout="premium"] .totRow--big{
  color:var(--pfy-accent);
}

body[data-cardapio-layout="delivery"] #checkoutBtn,
body[data-cardapio-layout="burger"] #checkoutBtn,
body[data-cardapio-layout="pizza"] #checkoutBtn,
body[data-cardapio-layout="acai"] #checkoutBtn,
body[data-cardapio-layout="confectionery"] #checkoutBtn,
body[data-cardapio-layout="diamond"] #checkoutBtn,
body[data-cardapio-layout="premium"] #checkoutBtn{
  min-height:56px;
  border:0;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1100;
}

body[data-cardapio-layout="delivery"] .bottomBar,
body[data-cardapio-layout="burger"] .bottomBar,
body[data-cardapio-layout="pizza"] .bottomBar,
body[data-cardapio-layout="acai"] .bottomBar,
body[data-cardapio-layout="confectionery"] .bottomBar,
body[data-cardapio-layout="diamond"] .bottomBar,
body[data-cardapio-layout="premium"] .bottomBar{
  width:min(460px,calc(100% - 18px));
  min-height:66px;
  border:1px solid var(--pfy-border);
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(18px);
  box-shadow:0 22px 70px rgba(0,0,0,.42);
}

body[data-cardapio-layout="delivery"] .bottomBar .waBtn,
body[data-cardapio-layout="burger"] .bottomBar .waBtn,
body[data-cardapio-layout="pizza"] .bottomBar .waBtn,
body[data-cardapio-layout="acai"] .bottomBar .waBtn,
body[data-cardapio-layout="confectionery"] .bottomBar .waBtn,
body[data-cardapio-layout="diamond"] .bottomBar .waBtn,
body[data-cardapio-layout="premium"] .bottomBar .waBtn{
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
}

.pfy-empty{
  padding:18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:var(--pfy-panel);
  color:var(--pfy-muted);
}

@media (max-width:1100px){
  .pfy-product-list--burger,
  .pfy-product-list--acai,
  .pfy-product-list--confectionery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .pfy-product-list--premium{
    grid-template-columns:1fr;
  }
}

@media (max-width:900px){
  .pfy-layout{
    padding:10px 10px 118px;
  }

  .pfy-header{
    align-items:flex-start;
    flex-direction:column;
  }

  .pfy-header nav{
    width:100%;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding-bottom:4px;
  }

  .pfy-header nav button{
    flex:0 0 auto;
  }

  .pfy-delivery-hero,
  .pfy-burger-hero,
  .pfy-pizza-frame,
  .pfy-pizza-banner,
  .pfy-acai-hero,
  .pfy-sweet-atelier,
  .pfy-velocity-command,
  .pfy-diamond-cinema{
    display:flex;
    flex-direction:column;
    gap:14px;
    min-height:0;
  }

  .pfy-delivery-copy,
  .pfy-burger-copy,
  .pfy-acai-glass,
  .pfy-sweet-story,
  .pfy-velocity-copy,
  .pfy-diamond-copy{
    min-height:260px;
    padding:22px;
    border-radius:24px;
    border:1px solid var(--pfy-border);
  }

  .pfy-pizza-rail{
    position:relative;
    top:auto;
    min-height:0;
    padding:14px;
  }

  .pfy-pizza-cats{
    flex-direction:row;
    overflow-x:auto;
    margin:14px 0;
  }

  .pfy-pizza-cats .pfy-cat{
    width:auto;
  }

  .pfy-toolbelt{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    margin:18px 0 14px;
  }

  .pfy-cats{
    margin:0 -10px;
    padding:0 10px 8px;
  }

  .pfy-layout .rad-promo,
  .pfy-layout--delivery .rad-promo,
  .pfy-layout--diamond .rad-promo,
  .pfy-layout--premium .rad-promo{
    height:230px !important;
    max-height:230px !important;
    min-height:0 !important;
    border-radius:22px;
  }

  .pfy-burger-stage .rad-promo{
    height:260px !important;
    max-height:260px !important;
    min-height:0 !important;
  }

  .pfy-layout .rad-promo > div{
    left:16px;
    right:16px;
    bottom:16px;
    width:calc(100% - 32px);
  }

  .pfy-layout .rad-promo h2{
    font-size:1.35rem;
  }

  .pfy-layout .rad-promo-arrow{
    display:none !important;
  }

  .pfy-feature-grid,
  .pfy-feature-grid--burger,
  .pfy-feature-grid--pizza,
  .pfy-feature-grid--confectionery,
  .pfy-feature-grid--diamond,
  .pfy-feature-grid--premium{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    padding:2px 2px 12px;
  }

  .pfy-feature-card,
  .pfy-feature-grid--burger .pfy-feature-card,
  .pfy-feature-grid--pizza .pfy-feature-card,
  .pfy-feature-grid--confectionery .pfy-feature-card,
  .pfy-feature-grid--diamond .pfy-feature-card,
  .pfy-feature-grid--premium .pfy-feature-card{
    flex:0 0 min(78vw,320px);
    min-height:230px;
    scroll-snap-align:start;
  }

  .pfy-product-list,
  .pfy-product-list--burger,
  .pfy-product-list--acai,
  .pfy-product-list--confectionery,
  .pfy-product-list--premium{
    grid-template-columns:1fr;
  }

  .pfy-product--delivery,
  .pfy-product--pizza,
  .pfy-product--diamond,
  .pfy-product--premium{
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:12px;
    min-height:0;
    padding:12px;
    border-radius:20px;
  }

  .pfy-product--delivery .pfy-product-media,
  .pfy-product--pizza .pfy-product-media,
  .pfy-product--diamond .pfy-product-media,
  .pfy-product--premium .pfy-product-media{
    width:92px;
    height:92px;
    grid-column:1;
    grid-row:1 / span 2;
    border-radius:18px;
    overflow:hidden;
  }

  .pfy-product--pizza .pfy-product-index,
  .pfy-product--diamond .pfy-product-index{
    display:none;
  }

  .pfy-product--delivery .pfy-product-side,
  .pfy-product--pizza .pfy-product-side,
  .pfy-product--diamond .pfy-product-side{
    grid-column:2;
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    gap:10px;
  }

  .pfy-product--premium > button{
    grid-column:2;
  }

  .pfy-product--burger,
  .pfy-product--acai,
  .pfy-product--confectionery{
    min-height:0;
  }

  .pfy-product--burger .pfy-product-media,
  .pfy-product--acai .pfy-product-media,
  .pfy-product--confectionery .pfy-product-media{
    height:170px;
  }

  body[data-cardapio-layout="delivery"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="burger"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="pizza"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="acai"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="confectionery"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="diamond"] #viewProduct:not(.hidden),
  body[data-cardapio-layout="premium"] #viewProduct:not(.hidden){
    padding:10px 10px 118px;
  }

  body[data-cardapio-layout="delivery"] .productHero,
  body[data-cardapio-layout="burger"] .productHero,
  body[data-cardapio-layout="pizza"] .productHero,
  body[data-cardapio-layout="acai"] .productHero,
  body[data-cardapio-layout="confectionery"] .productHero,
  body[data-cardapio-layout="diamond"] .productHero,
  body[data-cardapio-layout="premium"] .productHero{
    height:260px;
    max-height:260px;
  }

  body[data-cardapio-layout="delivery"] .productRow,
  body[data-cardapio-layout="burger"] .productRow,
  body[data-cardapio-layout="pizza"] .productRow,
  body[data-cardapio-layout="acai"] .productRow,
  body[data-cardapio-layout="confectionery"] .productRow,
  body[data-cardapio-layout="diamond"] .productRow,
  body[data-cardapio-layout="premium"] .productRow{
    flex-wrap:wrap;
  }

  body[data-cardapio-layout="delivery"] .productPrice,
  body[data-cardapio-layout="burger"] .productPrice,
  body[data-cardapio-layout="pizza"] .productPrice,
  body[data-cardapio-layout="acai"] .productPrice,
  body[data-cardapio-layout="confectionery"] .productPrice,
  body[data-cardapio-layout="diamond"] .productPrice,
  body[data-cardapio-layout="premium"] .productPrice{
    align-items:flex-start;
  }

  body[data-cardapio-layout="delivery"] .addRow,
  body[data-cardapio-layout="burger"] .addRow,
  body[data-cardapio-layout="pizza"] .addRow,
  body[data-cardapio-layout="acai"] .addRow,
  body[data-cardapio-layout="confectionery"] .addRow,
  body[data-cardapio-layout="diamond"] .addRow,
  body[data-cardapio-layout="premium"] .addRow{
    flex-direction:column;
    align-items:stretch;
  }

  body[data-cardapio-layout="delivery"] .qty,
  body[data-cardapio-layout="burger"] .qty,
  body[data-cardapio-layout="pizza"] .qty,
  body[data-cardapio-layout="acai"] .qty,
  body[data-cardapio-layout="confectionery"] .qty,
  body[data-cardapio-layout="diamond"] .qty,
  body[data-cardapio-layout="premium"] .qty{
    justify-content:space-between;
  }

  body[data-cardapio-layout="delivery"] .drawer__panel,
  body[data-cardapio-layout="burger"] .drawer__panel,
  body[data-cardapio-layout="pizza"] .drawer__panel,
  body[data-cardapio-layout="acai"] .drawer__panel,
  body[data-cardapio-layout="confectionery"] .drawer__panel,
  body[data-cardapio-layout="diamond"] .drawer__panel,
  body[data-cardapio-layout="premium"] .drawer__panel{
    width:100%;
    max-width:100%;
    border-left:0;
  }
}

@media (max-width:390px){
  .pfy-layout{
    padding-left:8px;
    padding-right:8px;
  }

  .pfy-product--delivery,
  .pfy-product--pizza,
  .pfy-product--diamond,
  .pfy-product--premium{
    grid-template-columns:82px minmax(0,1fr);
  }

  .pfy-product--delivery .pfy-product-media,
  .pfy-product--pizza .pfy-product-media,
  .pfy-product--diamond .pfy-product-media,
  .pfy-product--premium .pfy-product-media{
    width:82px;
    height:82px;
  }

  .pfy-product--delivery .pfy-product-side,
  .pfy-product--pizza .pfy-product-side,
  .pfy-product--diamond .pfy-product-side{
    flex-direction:column;
    align-items:flex-start;
  }
}

body[data-cardapio-layout="diamond"] .productTop,
body[data-cardapio-layout="diamond"] .productCard,
body[data-cardapio-layout="diamond"] .productHero,
body[data-cardapio-layout="diamond"] .optBlock,
body[data-cardapio-layout="diamond"] .note input,
body[data-cardapio-layout="diamond"] .qty,
body[data-cardapio-layout="diamond"] .qtyBtn,
body[data-cardapio-layout="diamond"] .drawer__panel,
body[data-cardapio-layout="diamond"] .cartItem,
body[data-cardapio-layout="diamond"] .cartMeta,
body[data-cardapio-layout="diamond"] .cartTotals,
body[data-cardapio-layout="diamond"] #checkoutBtn{
  border-radius:0 !important;
}

/* =========================================================
   Performance guard for alternate layouts
========================================================= */
body[data-cardapio-layout="delivery"] .pfy-product,
body[data-cardapio-layout="burger"] .pfy-product,
body[data-cardapio-layout="pizza"] .pfy-product,
body[data-cardapio-layout="acai"] .pfy-product,
body[data-cardapio-layout="confectionery"] .pfy-product,
body[data-cardapio-layout="diamond"] .pfy-product,
body[data-cardapio-layout="premium"] .pfy-product,
body[data-cardapio-layout="delivery"] .pfy-feature-card,
body[data-cardapio-layout="burger"] .pfy-feature-card,
body[data-cardapio-layout="pizza"] .pfy-feature-card,
body[data-cardapio-layout="acai"] .pfy-feature-card,
body[data-cardapio-layout="confectionery"] .pfy-feature-card,
body[data-cardapio-layout="diamond"] .pfy-feature-card,
body[data-cardapio-layout="premium"] .pfy-feature-card,
body[data-cardapio-layout="delivery"] .rad-promo,
body[data-cardapio-layout="burger"] .rad-promo,
body[data-cardapio-layout="pizza"] .rad-promo,
body[data-cardapio-layout="acai"] .rad-promo,
body[data-cardapio-layout="confectionery"] .rad-promo,
body[data-cardapio-layout="diamond"] .rad-promo,
body[data-cardapio-layout="premium"] .rad-promo{
  contain:layout paint;
}

body[data-cardapio-layout="delivery"] .productHero::before,
body[data-cardapio-layout="burger"] .productHero::before,
body[data-cardapio-layout="pizza"] .productHero::before,
body[data-cardapio-layout="acai"] .productHero::before,
body[data-cardapio-layout="confectionery"] .productHero::before,
body[data-cardapio-layout="diamond"] .productHero::before,
body[data-cardapio-layout="premium"] .productHero::before{
  filter:none;
  opacity:.32;
  transform:none;
}

body[data-cardapio-layout="delivery"] .productHero::after,
body[data-cardapio-layout="burger"] .productHero::after,
body[data-cardapio-layout="pizza"] .productHero::after,
body[data-cardapio-layout="acai"] .productHero::after,
body[data-cardapio-layout="confectionery"] .productHero::after,
body[data-cardapio-layout="diamond"] .productHero::after,
body[data-cardapio-layout="premium"] .productHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.34));
}

@media (hover:none){
  .pfy-product:hover,
  .pfy-feature-card:hover,
  .pfy-header nav button:hover,
  .pfy-action-row button:hover,
  .pfy-section-head button:hover{
    transform:none;
  }

  .pfy-layout .rad-promo:hover img,
  .pfy-feature-card:hover img{
    transform:none;
  }
}

@media (max-width:900px){
  body[data-cardapio-layout="delivery"],
  body[data-cardapio-layout="burger"],
  body[data-cardapio-layout="pizza"],
  body[data-cardapio-layout="acai"],
  body[data-cardapio-layout="confectionery"],
  body[data-cardapio-layout="diamond"],
  body[data-cardapio-layout="premium"]{
    background-attachment:scroll !important;
  }

  .pfy-layout--premium .pfy-product,
  .pfy-layout--premium .pfy-feature-card,
  .pfy-layout--premium .rad-promo,
  .pfy-layout--premium .pfy-search input,
  .pfy-layout--premium .pfy-cat,
  body[data-cardapio-layout="premium"] .productTop,
  body[data-cardapio-layout="premium"] .productCard,
  body[data-cardapio-layout="premium"] .bottomBar,
  body[data-cardapio-layout="diamond"] .bottomBar,
  body[data-cardapio-layout="confectionery"] .bottomBar{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .pfy-layout{
    --pfy-shadow:0 18px 48px rgba(0,0,0,.3);
  }

  .pfy-product,
  .pfy-feature-card,
  .pfy-layout .rad-promo,
  body[data-cardapio-layout="delivery"] .productCard,
  body[data-cardapio-layout="burger"] .productCard,
  body[data-cardapio-layout="pizza"] .productCard,
  body[data-cardapio-layout="acai"] .productCard,
  body[data-cardapio-layout="confectionery"] .productCard,
  body[data-cardapio-layout="diamond"] .productCard,
  body[data-cardapio-layout="premium"] .productCard,
  body[data-cardapio-layout="delivery"] .drawer__panel,
  body[data-cardapio-layout="burger"] .drawer__panel,
  body[data-cardapio-layout="pizza"] .drawer__panel,
  body[data-cardapio-layout="acai"] .drawer__panel,
  body[data-cardapio-layout="confectionery"] .drawer__panel,
  body[data-cardapio-layout="diamond"] .drawer__panel,
  body[data-cardapio-layout="premium"] .drawer__panel{
    box-shadow:0 14px 36px rgba(0,0,0,.28);
  }

  .pfy-layout .rad-promo img,
  .pfy-feature-card img{
    transition:none;
    filter:none;
  }
}

@media (prefers-reduced-motion:reduce){
  body[data-cardapio-layout="delivery"] *,
  body[data-cardapio-layout="burger"] *,
  body[data-cardapio-layout="pizza"] *,
  body[data-cardapio-layout="acai"] *,
  body[data-cardapio-layout="confectionery"] *,
  body[data-cardapio-layout="diamond"] *,
  body[data-cardapio-layout="premium"] *{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }

  .pfy-layout .rad-promo,
  .pfy-layout .rad-promo img,
  .pfy-feature-card img{
    transform:none !important;
  }
}

/* =========================================================
   XP rebuild: seven distinct cardapio products
========================================================= */
body[data-cardapio-layout="delivery"],
body[data-cardapio-layout="burger"],
body[data-cardapio-layout="pizza"],
body[data-cardapio-layout="acai"],
body[data-cardapio-layout="confectionery"],
body[data-cardapio-layout="diamond"],
body[data-cardapio-layout="premium"]{
  overflow-x:hidden;
}

.xp-layout,
.xp-layout *{
  box-sizing:border-box;
  min-width:0;
}

.xp-layout{
  width:min(1240px,100%);
  max-width:100%;
  margin:0 auto;
  padding:14px clamp(10px,2.2vw,28px) 126px;
  color:var(--pfy-text);
  overflow:visible;
}

.xp-layout img{
  display:block;
  max-width:100%;
}

.xp-layout button{
  font:inherit;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}

.xp-layout .rad-promo{
  position:relative;
  width:100%;
  height:clamp(220px,26vw,340px) !important;
  min-height:0 !important;
  max-height:340px !important;
  margin:0;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  border-radius:var(--pfy-radius);
  background:var(--pfy-panel);
  box-shadow:var(--pfy-shadow);
  transform:translateX(var(--promo-drag,0));
  touch-action:pan-y;
  contain:layout paint;
}

.xp-layout .rad-promo img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(1.05) contrast(1.02);
}

.xp-layout .rad-promo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.2) 58%,rgba(0,0,0,.48));
  pointer-events:none;
}

.xp-layout .rad-promo > div{
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:20px;
  width:min(430px,calc(100% - 44px));
}

.xp-layout .rad-promo h2{
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(1.28rem,2.2vw,2.3rem);
  line-height:1;
  letter-spacing:0;
}

.xp-layout .rad-promo-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:12px;
  padding:0 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1100;
}

.xp-layout .rad-promo-arrow{
  position:absolute;
  top:50%;
  z-index:3;
  width:42px;
  height:42px;
  display:none;
  place-items:center;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  background:rgba(0,0,0,.42);
  color:#fff;
  font-size:1.7rem;
}

.xp-layout .rad-promo-arrow--prev{left:14px}
.xp-layout .rad-promo-arrow--next{right:14px}

.xp-layout .rad-promo-dots{
  position:absolute;
  left:50%;
  bottom:12px;
  z-index:3;
  display:flex;
  gap:7px;
  transform:translateX(-50%);
}

.xp-layout .rad-promo-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.45);
}

.xp-layout .rad-promo-dots button.active{
  width:24px;
  background:var(--pfy-accent);
}

@media (min-width:821px){
  .xp-layout .rad-promo-arrow{
    display:grid !important;
  }
}

.xp-search{
  position:relative;
  display:block;
  width:100%;
}

.xp-search input{
  width:100%;
  min-height:56px;
  padding:0 52px 0 18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:rgba(0,0,0,.28);
  color:var(--pfy-text);
  outline:none;
  font-weight:900;
}

.xp-search input::placeholder{
  color:var(--pfy-muted);
}

.xp-search button{
  position:absolute;
  right:10px;
  top:50%;
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  transform:translateY(-50%);
  background:var(--pfy-accent);
  color:#07100c;
  font-weight:1100;
}

.xp-sticky-tools{
  position:sticky;
  top:0;
  z-index:8;
  display:grid;
  grid-template-columns:minmax(260px,420px) minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:10px 0 12px;
  background:linear-gradient(180deg,var(--pfy-bg),rgba(0,0,0,.72));
}

.xp-sticky-tools nav,
.xp-mobile-cats,
.xp-pizza-menu nav{
  display:flex;
  gap:10px;
  overflow-x:auto;
  max-width:100%;
  padding:2px 2px 8px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}

.xp-sticky-tools nav::-webkit-scrollbar,
.xp-mobile-cats::-webkit-scrollbar,
.xp-pizza-menu nav::-webkit-scrollbar,
.xp-highlights-grid::-webkit-scrollbar{
  display:none;
}

.xp-cat{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  max-width:220px;
  padding:0 14px;
  border:1px solid var(--pfy-border);
  border-radius:999px;
  background:var(--pfy-panel);
  color:var(--pfy-text);
}

.xp-cat b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.xp-cat span{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
}

.xp-cat.active{
  border-color:transparent;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
}

.xp-highlights{
  margin:24px 0;
}

.xp-highlights-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.xp-highlights-head strong{
  color:var(--pfy-accent);
  font-size:.86rem;
  text-transform:uppercase;
  letter-spacing:0;
}

.xp-highlights-head button,
.xp-layout header button,
.xp-burger-actions button,
.xp-velocity-actions button,
.xp-item button[data-quick-product]{
  min-height:42px;
  padding:0 14px;
  border:1px solid var(--pfy-border);
  border-radius:999px;
  background:var(--pfy-panel);
  color:var(--pfy-text);
  font-weight:1000;
}

.xp-highlights-grid{
  display:grid;
  gap:14px;
}

.xp-highlight{
  position:relative;
  min-height:240px;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  border-radius:var(--pfy-radius);
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  text-align:left;
  color:var(--pfy-text);
  background:var(--pfy-panel);
  contain:layout paint;
}

.xp-highlight img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.86;
}

.xp-highlight::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.78));
}

.xp-highlight span,
.xp-highlight strong,
.xp-highlight p,
.xp-highlight .xp-price{
  position:relative;
  z-index:2;
}

.xp-highlight span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(0,0,0,.44);
  color:var(--pfy-accent);
  font-weight:1100;
}

.xp-highlight strong{
  margin-top:10px;
  font-size:clamp(1.12rem,2vw,1.8rem);
  line-height:1;
}

.xp-highlight p{
  max-width:92%;
  margin:8px 0 12px;
  color:rgba(255,255,255,.72);
  font-size:.88rem;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.xp-price{
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
  line-height:1;
}

.xp-price small,
.xp-layout .rad-price-pair small{
  color:rgba(255,255,255,.5);
  text-decoration:line-through;
  font-weight:900;
  font-size:.8rem;
}

.xp-price strong,
.xp-layout .rad-price-pair strong{
  color:var(--pfy-accent);
  font-size:1.06rem;
  font-weight:1100;
}

.xp-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:24px;
  padding:0 9px;
  margin-bottom:8px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:var(--pfy-accent);
  font-style:normal;
  font-weight:1100;
  font-size:.72rem;
}

.xp-products{
  display:grid;
  gap:14px;
}

.xp-item{
  position:relative;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
  contain:layout paint;
}

.xp-item h3{
  margin:0;
  color:var(--pfy-text);
  line-height:1.12;
  letter-spacing:0;
}

.xp-item p{
  margin:7px 0 0;
  color:var(--pfy-muted);
  line-height:1.35;
  font-size:.87rem;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.xp-item img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.xp-empty{
  padding:18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:var(--pfy-panel);
  color:var(--pfy-muted);
}

/* Delivery rapido */
.xp-layout--delivery{
  max-width:860px;
}

.xp-delivery-top{
  position:sticky;
  top:8px;
  z-index:9;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px;
  margin-bottom:14px;
  border:1px solid var(--pfy-border);
  border-radius:24px;
  background:rgba(0,0,0,.72);
}

.xp-delivery-brand{
  display:flex;
  align-items:center;
  gap:10px;
}

.xp-delivery-brand img{
  width:48px;
  height:48px;
  border-radius:16px;
  object-fit:cover;
}

.xp-delivery-brand strong,
.xp-delivery-brand span{
  display:block;
}

.xp-delivery-brand span{
  margin-top:3px;
  color:var(--pfy-muted);
  font-size:.78rem;
  font-weight:900;
}

.xp-delivery-command{
  display:grid;
  grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);
  gap:14px;
  align-items:stretch;
}

.xp-delivery-summary{
  min-height:300px;
  padding:24px;
  border:1px solid var(--pfy-border);
  border-radius:28px;
  background:linear-gradient(180deg,var(--pfy-panel),rgba(0,0,0,.24));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.xp-delivery-summary h1{
  margin:0;
  font-size:clamp(2.25rem,6vw,5rem);
  line-height:.9;
}

.xp-delivery-summary div,
.xp-pizza-meta,
.xp-acai-badges,
.xp-sweet-meta,
.xp-velocity-meta,
.xp-diamond-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}

.xp-delivery-summary span,
.xp-pizza-meta span,
.xp-acai-badges span,
.xp-sweet-meta span,
.xp-velocity-meta span,
.xp-diamond-meta span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 11px;
  border:1px solid var(--pfy-border);
  border-radius:999px;
  background:rgba(0,0,0,.24);
  color:var(--pfy-text);
  font-weight:1000;
  font-size:.8rem;
}

.xp-highlights-grid--delivery{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  padding:2px 2px 12px;
}

.xp-highlight--delivery{
  flex:0 0 220px;
  min-height:170px;
  scroll-snap-align:start;
}

.xp-products--delivery{
  max-width:780px;
  margin:0 auto;
}

.xp-item--delivery{
  min-height:118px;
  display:grid;
  grid-template-columns:96px minmax(0,1fr) 46px;
  gap:12px;
  align-items:center;
  padding:10px;
  border-radius:22px;
}

.xp-item--delivery > img{
  width:96px;
  height:96px;
  border-radius:18px;
}

.xp-item--delivery button{
  width:42px;
  height:42px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-size:1.4rem;
}

/* Lanchonete */
.xp-burger-hero{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:18px;
  min-height:540px;
}

.xp-burger-copy,
.xp-burger-promo{
  border:1px solid var(--pfy-border);
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,178,46,.13),rgba(0,0,0,.42));
}

.xp-burger-copy{
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.xp-burger-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
}

.xp-burger-top img{
  width:58px;
  height:58px;
  border-radius:20px;
  object-fit:cover;
}

.xp-burger-top span{
  display:block;
  margin-top:8px;
  color:var(--pfy-accent);
  font-weight:1100;
}

.xp-burger-top nav,
.xp-burger-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.xp-burger-copy h1{
  margin:20px 0 0;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.82;
}

.xp-burger-copy p{
  max-width:560px;
  color:var(--pfy-muted);
  line-height:1.55;
}

.xp-burger-promo{
  padding:16px;
}

.xp-burger-promo .rad-promo{
  height:100% !important;
  min-height:380px !important;
  max-height:none !important;
}

.xp-highlights-grid--burger{
  grid-template-columns:1.35fr .85fr .85fr;
}

.xp-highlight--burger.is-prime{
  min-height:360px;
}

.xp-products--burger{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.xp-item--burger{
  min-height:360px;
  display:flex;
  flex-direction:column;
  border-radius:28px;
}

.xp-item--burger > img{
  height:205px;
}

.xp-item--burger .xp-item-body{
  flex:1;
  display:flex;
  flex-direction:column;
  padding:16px;
}

.xp-item--burger .xp-item-body > div:last-child{
  margin-top:auto;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}

.xp-item--burger button{
  border:0;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#130906;
}

/* Pizzaria */
.xp-pizza-shell{
  display:grid;
  grid-template-columns:292px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.xp-pizza-menu{
  position:sticky;
  top:12px;
  min-height:calc(100vh - 36px);
  padding:18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(72,24,10,.93),rgba(28,10,5,.96));
}

.xp-pizza-brand img{
  width:66px;
  height:66px;
  border-radius:50%;
  object-fit:cover;
  border:1px solid var(--pfy-border);
}

.xp-pizza-brand strong{
  display:block;
  margin-top:14px;
  font-family:Georgia,serif;
  font-size:2rem;
  line-height:.95;
}

.xp-pizza-brand span{
  display:block;
  margin-top:8px;
  color:var(--pfy-muted);
  font-weight:1000;
}

.xp-pizza-menu nav{
  flex-direction:column;
  overflow:visible;
  margin:24px 0;
  padding:0;
}

.xp-pizza-menu .xp-cat{
  width:100%;
  border-radius:12px;
}

.xp-pizza-actions{
  display:grid;
  gap:8px;
}

.xp-pizza-stage{
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  gap:16px;
}

.xp-pizza-stage > div:first-child{
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,var(--pfy-panel),rgba(0,0,0,.32));
}

.xp-pizza-stage h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(2.2rem,5vw,5rem);
  line-height:.9;
}

.xp-pizza-stage p{
  color:var(--pfy-muted);
}

.xp-mobile-cats{
  display:none;
}

.xp-highlights-grid--pizza{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.xp-highlight--pizza{
  min-height:190px;
  border-radius:16px;
}

.xp-products--pizza{
  gap:12px;
}

.xp-item--pizza{
  min-height:138px;
  display:grid;
  grid-template-columns:54px 118px minmax(0,1fr) minmax(126px,auto);
  gap:14px;
  align-items:center;
  padding:12px;
  border-radius:16px;
}

.xp-item--pizza > span{
  color:var(--pfy-accent);
  font-weight:1100;
  text-align:center;
}

.xp-item--pizza > img{
  width:112px;
  height:112px;
  border-radius:50%;
}

.xp-item--pizza aside{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

/* Acai */
.xp-acai-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}

.xp-acai-brand{
  display:flex;
  align-items:center;
  gap:12px;
}

.xp-acai-brand img{
  width:58px;
  height:58px;
  object-fit:cover;
  border-radius:22px;
}

.xp-acai-top nav{
  display:flex;
  gap:8px;
}

.xp-acai-stage{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:16px;
}

.xp-acai-copy{
  min-height:390px;
  padding:28px;
  border:1px solid var(--pfy-border);
  border-radius:38px;
  background:linear-gradient(145deg,rgba(255,95,215,.16),rgba(0,212,255,.08));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.xp-acai-copy h1{
  margin:0;
  font-size:clamp(2.6rem,7vw,6.4rem);
  line-height:.86;
}

.xp-highlights-grid--acai{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  padding:2px 2px 12px;
}

.xp-highlight--acai{
  flex:0 0 260px;
  min-height:280px;
  border-radius:34px;
  scroll-snap-align:start;
}

.xp-products--acai{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.xp-item--acai{
  min-height:350px;
  display:flex;
  flex-direction:column;
  border-radius:34px;
}

.xp-acai-cup{
  height:190px;
  padding:12px;
}

.xp-acai-cup img{
  border-radius:28px;
}

.xp-item--acai > div:not(.xp-acai-cup){
  flex:1;
  padding:0 16px 14px;
}

.xp-item--acai > button{
  margin:0 16px 16px;
  border:0;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#130022;
}

/* Confeitaria */
.xp-sweet-window{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:18px;
}

.xp-sweet-story{
  min-height:500px;
  padding:30px;
  border:1px solid var(--pfy-border);
  border-radius:38px;
  background:linear-gradient(145deg,rgba(255,202,222,.14),rgba(0,0,0,.28));
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.xp-sweet-story header{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.xp-sweet-story img{
  width:62px;
  height:62px;
  object-fit:cover;
  border-radius:24px;
}

.xp-sweet-story h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(2.8rem,7vw,6.8rem);
  line-height:.86;
}

.xp-sweet-story p{
  max-width:560px;
  color:var(--pfy-muted);
  line-height:1.55;
}

.xp-highlights-grid--confectionery{
  grid-template-columns:1.16fr .92fr .92fr;
}

.xp-highlight--confectionery.is-prime{
  min-height:380px;
}

.xp-products--confectionery{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.xp-item--confectionery{
  min-height:390px;
  display:flex;
  flex-direction:column;
  border-radius:30px;
}

.xp-item--confectionery > img{
  height:220px;
}

.xp-item--confectionery > div{
  flex:1;
  display:flex;
  flex-direction:column;
  padding:16px;
}

.xp-item--confectionery footer{
  margin-top:auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}

/* Velocity VIP */
.xp-velocity-shell{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  border:1px solid var(--pfy-border);
  border-radius:34px;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(102,255,224,.09),rgba(0,0,0,.42));
}

.xp-velocity-panel{
  min-height:540px;
  padding:30px;
  border-right:1px solid var(--pfy-border);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.xp-velocity-panel header{
  display:flex;
  justify-content:space-between;
  gap:12px;
}

.xp-velocity-panel img{
  width:62px;
  height:62px;
  object-fit:cover;
  border-radius:22px;
}

.xp-velocity-panel nav,
.xp-velocity-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.xp-velocity-panel h1{
  margin:0;
  font-size:clamp(2.8rem,7vw,6.6rem);
  line-height:.84;
}

.xp-velocity-screen{
  padding:18px;
}

.xp-highlights-grid--premium{
  grid-template-columns:1.2fr 1fr 1fr;
}

.xp-highlight--premium{
  min-height:300px;
  border-radius:30px;
}

.xp-products--premium{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.xp-item--premium{
  min-height:180px;
  display:grid;
  grid-template-columns:128px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:12px;
  border-radius:30px;
}

.xp-premium-orbit{
  height:128px;
  border-radius:22px;
  overflow:hidden;
}

.xp-item--premium > div:nth-child(2) > span{
  display:block;
  margin-bottom:6px;
  color:var(--pfy-accent);
  font-weight:1100;
}

.xp-item--premium aside{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

/* Diamond VIP */
.xp-diamond-cover{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  border:1px solid var(--pfy-border);
  overflow:hidden;
  background:linear-gradient(120deg,rgba(241,217,149,.09),rgba(255,255,255,.025));
}

.xp-diamond-intro{
  min-height:560px;
  padding:34px;
  border-right:1px solid var(--pfy-border);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.xp-diamond-intro header{
  display:flex;
  justify-content:space-between;
  gap:12px;
}

.xp-diamond-intro header > span{
  color:var(--pfy-accent);
  font-family:Georgia,serif;
  font-size:1.15rem;
  text-transform:uppercase;
}

.xp-diamond-intro nav{
  display:flex;
  gap:8px;
}

.xp-diamond-intro h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.84;
  font-weight:500;
}

.xp-diamond-intro p{
  color:var(--pfy-muted);
  line-height:1.6;
}

.xp-diamond-showcase{
  padding:18px;
}

.xp-layout--diamond .rad-promo,
.xp-layout--diamond .rad-promo-cta,
.xp-layout--diamond .xp-cat,
.xp-layout--diamond .xp-search input,
.xp-layout--diamond .xp-highlight,
.xp-layout--diamond .xp-item,
.xp-layout--diamond button{
  border-radius:0;
}

.xp-highlights-grid--diamond{
  grid-template-columns:1.2fr 1fr 1fr;
}

.xp-highlight--diamond{
  min-height:310px;
}

.xp-products--diamond{
  gap:12px;
}

.xp-item--diamond{
  min-height:180px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 178px auto;
  gap:18px;
  align-items:center;
  padding:18px;
  border-radius:0;
  background:linear-gradient(90deg,rgba(241,217,149,.07),rgba(255,255,255,.025));
}

.xp-item--diamond > div > span{
  display:block;
  margin-bottom:10px;
  color:var(--pfy-accent);
  font-family:Georgia,serif;
}

.xp-item--diamond > img{
  height:128px;
  border:1px solid var(--pfy-border);
}

.xp-item--diamond aside{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

@media (max-width:1100px){
  .xp-products--burger,
  .xp-products--acai,
  .xp-products--confectionery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .xp-products--premium{
    grid-template-columns:1fr;
  }
}

@media (max-width:900px){
  .xp-layout{
    padding:10px 10px 118px;
  }

  .xp-layout .rad-promo,
  .xp-layout--delivery .rad-promo,
  .xp-burger-promo .rad-promo{
    height:230px !important;
    min-height:0 !important;
    max-height:230px !important;
    border-radius:22px;
  }

  .xp-layout .rad-promo-arrow{
    display:none !important;
  }

  .xp-layout .rad-promo > div{
    left:16px;
    right:16px;
    bottom:16px;
    width:calc(100% - 32px);
  }

  .xp-sticky-tools{
    grid-template-columns:1fr;
    gap:10px;
    padding:8px 0 10px;
  }

  .xp-sticky-tools nav,
  .xp-mobile-cats{
    margin:0 -10px;
    padding:0 10px 8px;
  }

  .xp-delivery-command,
  .xp-burger-hero,
  .xp-pizza-shell,
  .xp-pizza-stage,
  .xp-acai-stage,
  .xp-sweet-window,
  .xp-velocity-shell,
  .xp-diamond-cover{
    display:flex;
    flex-direction:column;
    gap:14px;
    min-height:0;
  }

  .xp-delivery-summary,
  .xp-burger-copy,
  .xp-acai-copy,
  .xp-sweet-story,
  .xp-velocity-panel,
  .xp-diamond-intro{
    min-height:250px;
    padding:22px;
    border-radius:24px;
  }

  .xp-pizza-menu{
    position:relative;
    top:auto;
    min-height:0;
    padding:14px;
  }

  .xp-pizza-menu nav{
    display:none;
  }

  .xp-mobile-cats{
    display:flex;
  }

  .xp-highlights-grid,
  .xp-highlights-grid--burger,
  .xp-highlights-grid--pizza,
  .xp-highlights-grid--confectionery,
  .xp-highlights-grid--diamond,
  .xp-highlights-grid--premium{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    padding:2px 2px 12px;
  }

  .xp-highlight,
  .xp-highlight--delivery,
  .xp-highlight--burger,
  .xp-highlight--pizza,
  .xp-highlight--acai,
  .xp-highlight--confectionery,
  .xp-highlight--diamond,
  .xp-highlight--premium{
    flex:0 0 min(78vw,320px);
    min-height:225px;
    scroll-snap-align:start;
  }

  .xp-products,
  .xp-products--burger,
  .xp-products--acai,
  .xp-products--confectionery,
  .xp-products--premium{
    grid-template-columns:1fr;
  }

  .xp-item--delivery,
  .xp-item--pizza,
  .xp-item--premium,
  .xp-item--diamond{
    min-height:0;
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:12px;
    padding:12px;
    border-radius:20px;
  }

  .xp-item--delivery > img,
  .xp-item--pizza > img,
  .xp-premium-orbit,
  .xp-item--diamond > img{
    width:92px;
    height:92px;
    grid-column:1;
    grid-row:1 / span 2;
    border-radius:18px;
  }

  .xp-item--pizza > span{
    display:none;
  }

  .xp-item--delivery button,
  .xp-item--pizza aside,
  .xp-item--premium aside,
  .xp-item--diamond aside{
    grid-column:2;
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    gap:10px;
  }

  .xp-item--burger,
  .xp-item--acai,
  .xp-item--confectionery{
    min-height:0;
  }

  .xp-item--burger > img,
  .xp-acai-cup,
  .xp-item--confectionery > img{
    height:170px;
  }
}

@media (max-width:390px){
  .xp-item--delivery,
  .xp-item--pizza,
  .xp-item--premium,
  .xp-item--diamond{
    grid-template-columns:82px minmax(0,1fr);
  }

  .xp-item--delivery > img,
  .xp-item--pizza > img,
  .xp-premium-orbit,
  .xp-item--diamond > img{
    width:82px;
    height:82px;
  }
}

@media (hover:hover){
  .xp-item,
  .xp-highlight,
  .xp-layout header button,
  .xp-highlights-head button,
  .xp-item button[data-quick-product]{
    transition:transform .18s ease, border-color .18s ease, background .18s ease;
  }

  .xp-item:hover,
  .xp-highlight:hover{
    transform:translateY(-3px);
    border-color:var(--pfy-accent);
  }
}

@media (hover:none){
  .xp-item:hover,
  .xp-highlight:hover{
    transform:none;
  }
}

@media (prefers-reduced-motion:reduce){
  .xp-layout *,
  .xp-layout .rad-promo,
  .xp-layout .rad-promo img{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
    transform:none !important;
  }
}

body[data-cardapio-layout="delivery"] .app,
body[data-cardapio-layout="burger"] .app,
body[data-cardapio-layout="pizza"] .app,
body[data-cardapio-layout="acai"] .app,
body[data-cardapio-layout="confectionery"] .app,
body[data-cardapio-layout="diamond"] .app,
body[data-cardapio-layout="premium"] .app,
body[data-cardapio-layout="delivery"] .main,
body[data-cardapio-layout="burger"] .main,
body[data-cardapio-layout="pizza"] .main,
body[data-cardapio-layout="acai"] .main,
body[data-cardapio-layout="confectionery"] .main,
body[data-cardapio-layout="diamond"] .main,
body[data-cardapio-layout="premium"] .main{
  overflow:visible;
  overflow-x:clip;
}

/* Premium sales intelligence */
.smartShelf{
  margin-top:18px;
}

.smartShelfGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:12px;
}

.smartShelfCard{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-height:128px;
  padding:12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  color:#fff;
  cursor:pointer;
  box-shadow:0 18px 36px rgba(0,0,0,.22);
}

.smartShelfCard img{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:16px;
}

.smartShelfCard div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.smartShelfCard span{
  width:max-content;
  max-width:100%;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(0,210,106,.14);
  color:#64f0a5;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}

.smartShelfCard strong,
.cartSmartCard span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.smartShelfCard small{
  min-height:16px;
  color:rgba(255,255,255,.62);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.smartShelfCard b{
  color:#fff;
}

.smartShelfCard em{
  color:rgba(255,255,255,.42);
  font-size:12px;
  font-style:normal;
  text-decoration:line-through;
}

.smartShelfCard button{
  grid-column:1 / -1;
  min-height:40px;
  border:0;
  border-radius:12px;
  background:#00d26a;
  color:#06150d;
  font-weight:950;
}

.cartRecommendations{
  margin:14px 0;
  padding:12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:18px;
  background:rgba(255,255,255,.045);
}

.cartSmartHead{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.cartSmartHead strong{
  color:#fff;
  font-size:14px;
}

.cartSmartHead span{
  color:rgba(255,255,255,.56);
  font-size:11px;
  text-align:right;
}

.cartSmartGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.cartSmartCard{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:8px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(0,0,0,.22);
  color:#fff;
  text-align:left;
}

.cartSmartCard img{
  width:46px;
  height:46px;
  object-fit:cover;
  border-radius:12px;
  grid-row:1 / span 2;
}

.cartSmartCard b{
  color:#65f0a5;
  font-size:12px;
}

.couponRow{
  align-items:flex-start;
}

.couponControl{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
}

.couponControl input{
  text-transform:uppercase;
}

.couponControl button{
  min-height:42px;
  padding:0 14px;
  border:0;
  border-radius:12px;
  background:#00d26a;
  color:#06150d;
  font-weight:950;
}

#couponMessage{
  grid-column:2;
  width:100%;
  color:rgba(255,255,255,.58);
  font-size:12px;
}

.xp-smart-row{
  width:min(1120px,calc(100% - 28px));
  margin:18px auto 0;
  padding:16px;
  border:1px solid var(--pfy-line);
  border-radius:24px;
  background:rgba(255,255,255,.06);
}

.xp-smart-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:12px;
}

@media (max-width:620px){
  .smartShelfGrid{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding-bottom:4px;
  }

  .smartShelfCard{
    width:82vw;
    max-width:320px;
    flex:0 0 auto;
    scroll-snap-align:start;
  }

  .cartSmartGrid{
    display:flex;
    overflow-x:auto;
  }

  .cartSmartCard{
    width:190px;
    flex:0 0 auto;
  }

  .cartSmartHead{
    flex-direction:column;
  }

  .cartSmartHead span{
    text-align:left;
  }
}

/* =========================================================
   XP v2: distinct layout architecture
   Standard layout is intentionally untouched.
========================================================= */
.xpv{
  width:min(1280px,100%);
  padding-bottom:132px;
}

.xpv .xp-search{
  width:100%;
}

.xpv .xp-search input{
  min-height:54px;
  border-radius:18px;
}

.xpv .xp-cat{
  min-height:46px;
}

.xpv-meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.xpv-meta-row span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 11px;
  border:1px solid var(--pfy-border);
  border-radius:999px;
  background:rgba(0,0,0,.28);
  color:var(--pfy-text);
  font-size:.82rem;
  font-weight:900;
}

.xpv-brand-line{
  display:flex;
  align-items:center;
  gap:10px;
}

.xpv-brand-line img,
.xpv-burger-copy header img,
.xpv-acai-header img,
.xpv-sweet-story header img,
.xpv-velocity-console header img,
.xpv-pizza-mark img{
  width:58px;
  height:58px;
  object-fit:cover;
  border-radius:18px;
}

.xpv-brand-line strong,
.xpv-brand-line span{
  display:block;
}

.xpv-brand-line span{
  margin-top:3px;
  color:var(--pfy-muted);
  font-size:.8rem;
}

.xpv-products{
  display:grid;
  gap:16px;
  margin-top:18px;
}

.xpv-card{
  position:relative;
  overflow:hidden;
  min-height:380px;
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
  box-shadow:var(--pfy-shadow);
  contain:layout paint;
}

.xpv-card-media{
  width:100%;
  min-height:260px;
  height:70%;
  overflow:hidden;
  background:#111;
}

.xpv-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.xpv-card-info{
  min-height:30%;
  padding:14px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
}

.xpv-card-info h3{
  margin:0;
  color:var(--pfy-text);
  font-size:clamp(1.05rem,1.7vw,1.45rem);
  line-height:1.06;
  letter-spacing:0;
}

.xpv-card-info p{
  margin:6px 0 0;
  color:var(--pfy-muted);
  font-size:.88rem;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.xpv-card-info footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.xpv-card-info button,
.xpv-fast-appbar button,
.xpv-burger-copy button,
.xpv-pizza-rail > button,
.xpv-acai-header button,
.xpv-sweet-story button,
.xpv-velocity-console button,
.xpv-diamond-editorial button{
  min-height:44px;
  border:0;
  border-radius:14px;
  padding:0 15px;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1000;
}

.xpv-card-number{
  width:max-content;
  color:var(--pfy-accent);
  font-weight:1000;
}

/* Delivery Rapido: simple app feed */
.xpv-delivery{
  max-width:920px;
}

.xpv-fast-appbar{
  position:sticky;
  top:8px;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
  padding:10px;
  border:1px solid var(--pfy-border);
  border-radius:24px;
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(14px);
}

.xpv-fast-flow{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:14px;
}

.xpv-fast-intent{
  min-height:320px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:14px;
  padding:24px;
  border:1px solid var(--pfy-border);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.3));
}

.xpv-fast-intent h1{
  margin:0;
  font-size:clamp(2.4rem,6vw,5.4rem);
  line-height:.88;
  letter-spacing:0;
}

.xpv-fast-intent p{
  margin:0;
  color:var(--pfy-muted);
}

.xpv-fast-offer .rad-promo{
  height:100% !important;
  min-height:320px !important;
}

.xpv-fast-cats{
  position:sticky;
  top:86px;
  z-index:15;
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:12px 0 10px;
  background:linear-gradient(180deg,var(--pfy-bg),rgba(0,0,0,0));
}

.xpv-fast-cats .xp-cat{
  flex:0 0 auto;
}

.xpv-products--delivery{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.xpv-card--delivery{
  border-radius:24px;
}

.xpv-card--delivery .xpv-card-media{
  min-height:280px;
}

.xpv-card--delivery .xpv-card-info button{
  width:48px;
  min-width:48px;
  border-radius:50%;
  padding:0;
  font-size:1.4rem;
}

/* Lanchonete: combo-first, aggressive scroll */
.xpv-burger{
  max-width:1260px;
}

.xpv-burger-cover{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);
  min-height:560px;
  gap:18px;
}

.xpv-burger-media .rad-promo{
  height:100% !important;
  min-height:560px !important;
  border-radius:32px;
}

.xpv-burger-copy{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:28px;
  border:1px solid var(--pfy-border);
  border-radius:32px;
  background:linear-gradient(145deg,rgba(255,190,55,.16),rgba(0,0,0,.42));
}

.xpv-burger-copy header,
.xpv-sweet-story header,
.xpv-velocity-console header,
.xpv-diamond-editorial header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}

.xpv-burger-copy nav,
.xpv-acai-header nav,
.xpv-velocity-console nav,
.xpv-diamond-editorial nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.xpv-burger-copy h1{
  margin:24px 0 0;
  font-size:clamp(3.2rem,8vw,8rem);
  line-height:.8;
  text-transform:uppercase;
  letter-spacing:0;
}

.xpv-burger-copy p{
  color:var(--pfy-muted);
  line-height:1.55;
}

.xpv-tools-inline{
  display:grid;
  grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);
  gap:12px;
  align-items:start;
  margin:18px 0;
}

.xpv-tools-inline nav,
.xpv-sweet-tools nav,
.xpv-diamond-index nav,
.xpv-velocity-console > nav,
.xpv-acai-panel nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-bottom:6px;
}

.xpv-burger-combo-strip .xp-highlights{
  width:100%;
  margin:0;
}

.xpv-products--burger{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.xpv-card--burger{
  min-height:430px;
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(0,0,0,.36));
}

.xpv-card--burger:nth-child(1){
  grid-column:span 2;
}

.xpv-card--burger .xpv-card-media{
  min-height:300px;
}

/* Pizzaria: side menu and flavor board */
.xpv-pizza{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:18px;
  align-items:start;
  max-width:1320px;
}

.xpv-pizza-rail{
  position:sticky;
  top:12px;
  min-height:calc(100vh - 28px);
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(74,28,10,.96),rgba(24,9,4,.98));
}

.xpv-pizza-mark strong{
  display:block;
  margin-top:14px;
  font-family:Georgia,serif;
  font-size:2.1rem;
  line-height:.94;
  letter-spacing:0;
}

.xpv-pizza-mark span{
  display:block;
  margin-top:8px;
  color:var(--pfy-muted);
}

.xpv-pizza-rail nav{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.xpv-pizza-rail .xp-cat{
  width:100%;
  justify-content:flex-start;
  border-radius:12px;
}

.xpv-pizza-main{
  min-width:0;
}

.xpv-pizza-banner{
  display:grid;
  grid-template-columns:minmax(0,.66fr) minmax(0,1.34fr);
  gap:16px;
}

.xpv-pizza-banner > div:first-child{
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.32));
}

.xpv-pizza-banner h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(2.2rem,5vw,5.4rem);
  line-height:.88;
  letter-spacing:0;
}

.xpv-pizza-banner p{
  color:var(--pfy-muted);
}

.xpv-products--pizza{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.xpv-card--pizza{
  min-height:420px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(117,41,15,.55),rgba(0,0,0,.38));
}

.xpv-card--pizza .xpv-card-media{
  min-height:285px;
  border-radius:0 0 50% 50%;
}

.xpv-card--pizza .xpv-card-media img{
  border-radius:0 0 50% 50%;
}

/* Acai: builder with complement focus */
.xpv-acai{
  max-width:1240px;
}

.xpv-acai-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.xpv-acai-header > div{
  display:flex;
  align-items:center;
  gap:12px;
}

.xpv-acai-builder{
  display:grid;
  grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr);
  gap:16px;
  align-items:stretch;
}

.xpv-acai-panel{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:14px;
  min-height:470px;
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:38px;
  background:radial-gradient(circle at 24% 10%,rgba(255,95,215,.22),transparent 32%),linear-gradient(145deg,rgba(90,0,130,.78),rgba(0,0,0,.42));
}

.xpv-acai-panel > span{
  color:var(--pfy-accent);
  font-weight:1000;
}

.xpv-acai-panel h1{
  margin:0;
  font-size:clamp(2.8rem,7vw,6.8rem);
  line-height:.84;
  letter-spacing:0;
}

.xpv-acai-promo .rad-promo{
  height:100% !important;
  min-height:470px !important;
  border-radius:38px;
}

.xpv-products--acai{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.xpv-card--acai{
  min-height:420px;
  border-radius:36px;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(84,0,124,.32));
}

.xpv-card--acai .xpv-card-media{
  min-height:292px;
  padding:12px;
  border-radius:34px;
}

.xpv-card--acai .xpv-card-media img{
  border-radius:28px;
}

/* Confeitaria: boutique gallery */
.xpv-sweet{
  max-width:1260px;
}

.xpv-sweet-hero{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:18px;
}

.xpv-sweet-story{
  min-height:540px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:30px;
  border:1px solid var(--pfy-border);
  border-radius:38px;
  background:linear-gradient(145deg,rgba(255,202,222,.16),rgba(0,0,0,.32));
}

.xpv-sweet-story h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.86;
  font-weight:500;
  letter-spacing:0;
}

.xpv-sweet-story p{
  color:var(--pfy-muted);
  line-height:1.6;
}

.xpv-sweet-window .rad-promo{
  height:100% !important;
  min-height:540px !important;
  border-radius:38px;
}

.xpv-sweet-tools{
  display:grid;
  grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);
  gap:12px;
  margin:18px 0;
}

.xpv-products--confectionery{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
}

.xpv-card--confectionery{
  min-height:455px;
  border-radius:32px;
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,202,222,.08));
}

.xpv-card--confectionery:nth-child(4n + 1){
  transform:translateY(28px);
}

.xpv-card--confectionery .xpv-card-media{
  min-height:320px;
}

/* Velocity VIP: command center */
.xpv-velocity{
  max-width:1300px;
}

.xpv-velocity-command{
  display:grid;
  grid-template-columns:minmax(330px,.42fr) minmax(0,.58fr);
  overflow:hidden;
  border:1px solid var(--pfy-border);
  border-radius:34px;
  background:linear-gradient(135deg,rgba(102,255,224,.1),rgba(0,0,0,.5));
}

.xpv-velocity-console{
  min-height:560px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:16px;
  padding:30px;
  border-right:1px solid var(--pfy-border);
}

.xpv-velocity-console h1{
  margin:0;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.82;
  letter-spacing:0;
}

.xpv-velocity-display{
  padding:18px;
}

.xpv-velocity-display .rad-promo{
  height:100% !important;
  min-height:524px !important;
  border-radius:28px;
}

.xpv-products--premium{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.xpv-card--premium{
  min-height:430px;
  border-radius:30px;
  background:linear-gradient(145deg,rgba(102,255,224,.09),rgba(255,255,255,.035));
}

.xpv-card--premium .xpv-card-media{
  min-height:300px;
}

/* Diamond VIP: editorial luxury catalog */
.xpv-diamond{
  max-width:1300px;
}

.xpv-diamond-cover{
  display:grid;
  grid-template-columns:minmax(330px,.38fr) minmax(0,.62fr);
  border:1px solid var(--pfy-border);
  background:linear-gradient(120deg,rgba(241,217,149,.1),rgba(255,255,255,.025));
}

.xpv-diamond-editorial{
  min-height:580px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:34px;
  border-right:1px solid var(--pfy-border);
}

.xpv-diamond-editorial header > span{
  color:var(--pfy-accent);
  font-family:Georgia,serif;
  text-transform:uppercase;
}

.xpv-diamond-editorial h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(3.1rem,7vw,7.4rem);
  line-height:.84;
  font-weight:500;
  letter-spacing:0;
}

.xpv-diamond-editorial p{
  color:var(--pfy-muted);
  line-height:1.65;
}

.xpv-diamond-cinema{
  padding:18px;
}

.xpv-diamond-cinema .rad-promo{
  height:100% !important;
  min-height:544px !important;
  border-radius:0;
}

.xpv-diamond-index{
  display:grid;
  grid-template-columns:minmax(240px,.32fr) minmax(0,1fr);
  gap:12px;
  margin:18px 0;
}

.xpv-products--diamond{
  gap:18px;
}

.xpv-card--diamond{
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);
  border-radius:0;
  background:linear-gradient(90deg,rgba(241,217,149,.08),rgba(255,255,255,.025));
}

.xpv-card--diamond .xpv-card-media{
  grid-column:1;
  grid-row:1;
  height:100%;
  min-height:430px;
}

.xpv-card--diamond .xpv-card-info{
  grid-column:2;
  grid-row:1;
  min-height:100%;
  padding:24px;
}

.xpv-card--diamond,
.xpv-card--diamond .xpv-card-media,
.xpv-card--diamond .xpv-card-info button,
.xpv-diamond-index .xp-search input,
.xpv-diamond-index .xp-cat{
  border-radius:0;
}

/* stronger image-first highlights in every non-standard layout */
.xpv .xp-highlights,
.xpv .xp-smart-row{
  width:100%;
  margin:18px 0 0;
}

.xpv .xp-highlight{
  min-height:330px;
}

.xpv .xp-highlight img{
  height:100%;
  object-fit:cover;
}

@media (max-width:1100px){
  .xpv-products--burger,
  .xpv-products--acai,
  .xpv-products--confectionery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .xpv-products--delivery,
  .xpv-products--premium,
  .xpv-products--pizza{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .xpv{
    padding:10px 10px 118px;
  }

  .xpv-fast-flow,
  .xpv-burger-cover,
  .xpv-pizza,
  .xpv-pizza-banner,
  .xpv-acai-builder,
  .xpv-sweet-hero,
  .xpv-velocity-command,
  .xpv-diamond-cover,
  .xpv-diamond-index,
  .xpv-tools-inline,
  .xpv-sweet-tools{
    display:flex;
    flex-direction:column;
    gap:14px;
  }

  .xpv-pizza-rail{
    position:relative;
    top:auto;
    min-height:0;
  }

  .xpv-pizza-rail nav,
  .xpv-acai-panel nav,
  .xpv-sweet-tools nav,
  .xpv-diamond-index nav,
  .xpv-velocity-console > nav{
    flex-direction:row;
    overflow-x:auto;
    padding-bottom:6px;
  }

  .xpv-pizza-rail .xp-cat{
    width:auto;
    flex:0 0 auto;
  }

  .xpv-fast-intent,
  .xpv-burger-copy,
  .xpv-acai-panel,
  .xpv-sweet-story,
  .xpv-velocity-console,
  .xpv-diamond-editorial{
    min-height:260px;
    padding:22px;
  }

  .xpv-fast-offer .rad-promo,
  .xpv-burger-media .rad-promo,
  .xpv-acai-promo .rad-promo,
  .xpv-sweet-window .rad-promo,
  .xpv-velocity-display .rad-promo,
  .xpv-diamond-cinema .rad-promo{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
  }

  .xpv-products,
  .xpv-products--delivery,
  .xpv-products--burger,
  .xpv-products--pizza,
  .xpv-products--acai,
  .xpv-products--confectionery,
  .xpv-products--premium{
    grid-template-columns:1fr;
  }

  .xpv-card,
  .xpv-card--diamond{
    display:flex;
    flex-direction:column;
    min-height:380px;
    border-radius:24px;
    transform:none !important;
  }

  .xpv-card-media,
  .xpv-card--diamond .xpv-card-media{
    width:100%;
    height:auto;
    min-height:265px;
    grid-column:auto;
    grid-row:auto;
  }

  .xpv-card--diamond .xpv-card-info{
    grid-column:auto;
    grid-row:auto;
    min-height:0;
    padding:14px;
  }

  .xpv-card-info{
    min-height:120px;
  }

  .xpv .xp-highlight{
    flex:0 0 min(82vw,340px);
    min-height:290px;
    scroll-snap-align:start;
  }
}

@media (max-width:390px){
  .xpv-card-media,
  .xpv-card--diamond .xpv-card-media{
    min-height:238px;
  }

  .xpv-card-info footer{
    align-items:flex-start;
    flex-direction:column;
  }

  .xpv-card-info button{
    width:100%;
  }
}

/* =========================================================
   CX concept layouts: each non-standard menu is a different product.
   Standard layout remains untouched by this layer.
========================================================= */
.cx,
.cx *{
  box-sizing:border-box;
}

.cx{
  width:min(1320px,100%);
  margin:0 auto;
  padding:0 0 132px;
  color:var(--pfy-text);
  overflow-x:clip;
}

.cx img{
  display:block;
  max-width:100%;
}

.cx .xp-search input{
  min-height:54px;
  border-radius:16px;
}

.cx-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.cx-brand img,
.cx-pizza-brand img{
  width:58px;
  height:58px;
  border-radius:18px;
  object-fit:cover;
  flex:0 0 auto;
}

.cx-brand strong,
.cx-brand span,
.cx-pizza-brand strong,
.cx-pizza-brand span{
  display:block;
  min-width:0;
}

.cx-brand strong,
.cx-pizza-brand strong{
  color:var(--pfy-text);
  font-size:1rem;
  font-weight:1000;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.cx-brand span,
.cx-pizza-brand span{
  margin-top:3px;
  color:var(--pfy-muted);
  font-size:.82rem;
}

.cx button{
  cursor:pointer;
}

.cx-metrics{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.cx-metrics span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border:1px solid var(--pfy-border);
  border-radius:999px;
  background:rgba(0,0,0,.28);
  color:var(--pfy-text);
  font-size:.82rem;
  font-weight:900;
}

.cx-feature,
.cx-smart{
  margin-top:20px;
  min-width:0;
}

.cx-feature > header,
.cx-smart > header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}

.cx-feature strong,
.cx-smart strong{
  color:var(--pfy-text);
  font-size:clamp(1.18rem,2.4vw,1.8rem);
  line-height:1;
}

.cx-feature span,
.cx-smart span{
  color:var(--pfy-muted);
  font-size:.86rem;
}

.cx-feature-track,
.cx-smart > div{
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding:2px 2px 12px;
  scroll-snap-type:x proximity;
}

.cx-feature-card{
  position:relative;
  flex:0 0 min(330px,78vw);
  min-height:360px;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
  text-align:left;
  scroll-snap-align:start;
  box-shadow:var(--pfy-shadow);
}

.cx-feature-card img{
  width:100%;
  height:250px;
  object-fit:cover;
}

.cx-feature-card > span,
.cx-feature-card strong,
.cx-feature-card .xp-price{
  margin-left:14px;
  margin-right:14px;
}

.cx-feature-card > span{
  display:block;
  margin-top:12px;
  color:var(--pfy-accent);
  font-weight:1000;
}

.cx-feature-card strong{
  display:block;
  margin-top:6px;
  font-size:1.1rem;
  line-height:1.1;
}

.cx-product{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid var(--pfy-border);
  background:var(--pfy-panel);
  color:var(--pfy-text);
  box-shadow:var(--pfy-shadow);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
  contain:layout paint;
}

.cx-product:hover{
  transform:translateY(-3px);
  border-color:var(--pfy-accent);
  background:var(--pfy-panel-strong);
}

.cx-product-media{
  overflow:hidden;
  background:#070707;
}

.cx-product-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .24s ease;
}

.cx-product:hover .cx-product-media img{
  transform:scale(1.035);
}

.cx-product-info{
  min-width:0;
}

.cx-product-info h3{
  margin:0;
  color:var(--pfy-text);
  font-size:clamp(1.12rem,2.2vw,1.7rem);
  line-height:1.04;
  letter-spacing:0;
  overflow-wrap:anywhere;
}

.cx-product-info p{
  margin:7px 0 0;
  color:var(--pfy-muted);
  line-height:1.35;
  font-size:.9rem;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.cx-product-info footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
}

.cx-product-info button,
.cx-delivery-bar > button,
.cx-burger-actions button,
.cx-pizza-menu > button,
.cx-acai-top > button,
.cx-sweet-copy button,
.cx-velocity-console > button,
.cx-diamond-copy button{
  min-height:44px;
  border:0;
  border-radius:14px;
  padding:0 15px;
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2));
  color:#06100b;
  font-weight:1000;
}

.cx-number{
  display:inline-flex;
  color:var(--pfy-accent);
  font-weight:1000;
}

/* Delivery Rapido: simple native feed */
.cx-delivery{
  max-width:920px;
}

.cx-delivery-bar{
  position:sticky;
  top:8px;
  z-index:30;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  padding:10px;
  border:1px solid var(--pfy-border);
  border-radius:22px;
  background:rgba(5,8,7,.86);
  backdrop-filter:blur(14px);
}

.cx-delivery-command{
  display:grid;
  grid-template-columns:minmax(0,.48fr) minmax(0,.52fr);
  gap:14px;
  margin-bottom:14px;
}

.cx-delivery-copy,
.cx-delivery-search{
  min-width:0;
  padding:20px;
  border:1px solid var(--pfy-border);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(0,0,0,.26));
}

.cx-delivery-copy{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:250px;
}

.cx-delivery-copy h1{
  margin:0 0 14px;
  font-size:clamp(2.6rem,8vw,5.2rem);
  line-height:.86;
  letter-spacing:0;
}

.cx-delivery-search nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
  margin-top:12px;
  padding-bottom:4px;
}

.cx-delivery-search .xp-cat{
  flex:0 0 auto;
}

.cx-delivery-promo .rad-promo{
  max-height:340px !important;
  min-height:300px !important;
}

.cx-delivery-feed{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  margin-top:18px;
}

.cx-delivery-item{
  min-height:430px;
  border-radius:24px;
}

.cx-delivery-item .cx-product-media{
  height:300px;
}

.cx-delivery-item .cx-product-info{
  min-height:130px;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  padding:15px;
}

.cx-delivery-item .cx-product-info button{
  width:48px;
  min-width:48px;
  border-radius:50%;
  padding:0;
  font-size:1.35rem;
}

/* Lanchonete: combo-first impulse scroll */
.cx-burger{
  max-width:1280px;
}

.cx-burger-hero{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);
  min-height:570px;
  gap:18px;
}

.cx-burger-stage .rad-promo{
  height:100% !important;
  min-height:570px !important;
  border-radius:28px;
}

.cx-burger-panel{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:28px;
  background:radial-gradient(circle at 80% 16%,rgba(255,178,46,.2),transparent 34%),linear-gradient(145deg,rgba(255,75,28,.18),rgba(0,0,0,.48));
}

.cx-burger-panel h1{
  margin:0;
  font-size:clamp(3.5rem,9vw,8.4rem);
  line-height:.78;
  text-transform:uppercase;
  letter-spacing:0;
}

.cx-burger-panel p{
  color:var(--pfy-muted);
  line-height:1.55;
}

.cx-burger-actions,
.cx-burger-tools,
.cx-burger-tools nav{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.cx-burger-tools{
  position:sticky;
  top:8px;
  z-index:20;
  align-items:center;
  margin:16px 0;
  padding:12px;
  border:1px solid var(--pfy-border);
  border-radius:22px;
  background:rgba(19,9,6,.86);
  backdrop-filter:blur(12px);
}

.cx-burger-tools .xp-search{
  flex:1 1 260px;
}

.cx-burger-tools nav{
  flex:999 1 420px;
  overflow-x:auto;
  flex-wrap:nowrap;
}

.cx-burger-tools .xp-cat{
  flex:0 0 auto;
}

.cx-burger-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}

.cx-burger-item{
  min-height:470px;
  border-radius:30px;
}

.cx-burger-item.is-hero{
  grid-column:span 2;
}

.cx-burger-item .cx-product-media{
  height:330px;
}

.cx-burger-item .cx-product-info{
  padding:16px;
}

/* Pizzaria: side rail and flavor board */
.cx-pizza{
  max-width:1320px;
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.cx-pizza-menu{
  position:sticky;
  top:10px;
  min-height:calc(100vh - 24px);
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(72,28,10,.96),rgba(17,7,3,.98));
}

.cx-pizza-brand strong{
  margin-top:12px;
  font-family:Georgia,serif;
  font-size:2.05rem;
  line-height:.9;
}

.cx-pizza-menu nav{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.cx-pizza-menu .xp-cat{
  width:100%;
  justify-content:flex-start;
  border-radius:12px;
}

.cx-pizza-board{
  min-width:0;
}

.cx-pizza-hero{
  display:grid;
  grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);
  gap:16px;
}

.cx-pizza-hero > div:first-child{
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.32));
}

.cx-pizza-hero h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(2.7rem,6vw,6rem);
  line-height:.86;
  letter-spacing:0;
}

.cx-pizza-hero p{
  color:var(--pfy-muted);
  line-height:1.55;
}

.cx-pizza-hero .rad-promo{
  min-height:360px !important;
  max-height:410px !important;
}

.cx-pizza-flavors{
  display:grid;
  gap:16px;
  margin-top:18px;
}

.cx-pizza-item{
  min-height:330px;
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(260px,.3fr);
  border-radius:18px;
}

.cx-pizza-item .cx-product-media{
  height:100%;
  min-height:330px;
}

.cx-pizza-item .cx-product-info{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:18px;
}

/* Acai: builder plus horizontal product river */
.cx-acai{
  max-width:1240px;
}

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

.cx-acai-builder{
  display:grid;
  grid-template-columns:minmax(310px,.42fr) minmax(0,.58fr);
  gap:16px;
}

.cx-acai-maker{
  min-height:500px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:14px;
  padding:26px;
  border:1px solid var(--pfy-border);
  border-radius:38px;
  background:radial-gradient(circle at 20% 12%,rgba(255,95,215,.25),transparent 34%),linear-gradient(145deg,rgba(88,0,130,.78),rgba(0,0,0,.42));
}

.cx-acai-maker > span{
  color:var(--pfy-accent);
  font-weight:1000;
}

.cx-acai-maker h1{
  margin:0;
  font-size:clamp(3rem,8vw,7rem);
  line-height:.84;
  letter-spacing:0;
}

.cx-acai-maker nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-bottom:4px;
}

.cx-acai-maker .xp-cat{
  flex:0 0 auto;
}

.cx-acai-banner .rad-promo{
  height:100% !important;
  min-height:500px !important;
  border-radius:38px;
}

.cx-acai-river{
  display:flex;
  gap:16px;
  overflow-x:auto;
  padding:4px 2px 16px;
  margin-top:18px;
  scroll-snap-type:x mandatory;
}

.cx-acai-item{
  flex:0 0 min(380px,84vw);
  min-height:500px;
  border-radius:36px;
  scroll-snap-align:start;
}

.cx-acai-item .cx-product-media{
  height:350px;
  border-radius:34px;
  margin:10px;
}

.cx-acai-item .cx-product-info{
  padding:6px 18px 18px;
}

/* Confeitaria: editorial gallery */
.cx-sweet{
  max-width:1260px;
}

.cx-sweet-cover{
  display:grid;
  grid-template-columns:minmax(0,.62fr) minmax(300px,.38fr);
  gap:18px;
  min-height:560px;
}

.cx-sweet-window .rad-promo{
  height:100% !important;
  min-height:560px !important;
  border-radius:38px;
}

.cx-sweet-copy{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:28px;
  border:1px solid var(--pfy-border);
  border-radius:38px;
  background:linear-gradient(145deg,rgba(255,202,222,.14),rgba(0,0,0,.42));
}

.cx-sweet-copy h1{
  margin:28px 0 0;
  font-family:Georgia,serif;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.86;
  letter-spacing:0;
}

.cx-sweet-copy p{
  color:var(--pfy-muted);
  line-height:1.6;
}

.cx-sweet-ribbon{
  position:sticky;
  top:8px;
  z-index:20;
  display:grid;
  grid-template-columns:minmax(240px,.34fr) minmax(0,1fr);
  gap:12px;
  margin:16px 0;
  padding:12px;
  border:1px solid var(--pfy-border);
  border-radius:28px;
  background:rgba(27,7,18,.86);
  backdrop-filter:blur(12px);
}

.cx-sweet-ribbon nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
}

.cx-sweet-ribbon .xp-cat{
  flex:0 0 auto;
}

.cx-sweet-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}

.cx-sweet-item{
  min-height:480px;
  border-radius:34px;
}

.cx-sweet-item:nth-child(4n + 1){
  transform:translateY(34px);
}

.cx-sweet-item .cx-product-media{
  height:340px;
}

.cx-sweet-item .cx-product-info{
  padding:16px;
}

/* Velocity VIP: futuristic command surface */
.cx-velocity{
  max-width:1320px;
}

.cx-velocity-deck{
  display:grid;
  grid-template-columns:minmax(320px,.38fr) minmax(0,.62fr);
  gap:16px;
  min-height:610px;
}

.cx-velocity-console{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  padding:24px;
  border:1px solid var(--pfy-border);
  border-radius:34px;
  background:linear-gradient(145deg,rgba(102,255,224,.12),rgba(0,0,0,.62));
}

.cx-velocity-console h1{
  margin:0;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.82;
  letter-spacing:0;
}

.cx-velocity-console nav{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.cx-velocity-console .xp-cat{
  justify-content:flex-start;
}

.cx-velocity-screen .rad-promo{
  height:100% !important;
  min-height:610px !important;
  border-radius:34px;
}

.cx-velocity-lab{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}

.cx-velocity-item{
  min-height:420px;
  border-radius:30px;
  background:linear-gradient(180deg,rgba(102,255,224,.09),rgba(0,0,0,.5));
}

.cx-velocity-item:nth-child(1),
.cx-velocity-item:nth-child(6n){
  grid-column:span 2;
}

.cx-velocity-item .cx-product-media{
  height:294px;
}

.cx-velocity-item .cx-product-info{
  padding:15px;
}

/* Diamond VIP: luxury catalog pages */
.cx-diamond{
  max-width:1320px;
}

.cx-diamond-cinema{
  display:grid;
  grid-template-columns:minmax(320px,.34fr) minmax(0,.66fr);
  gap:18px;
  min-height:650px;
}

.cx-diamond-copy{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:18px;
  padding:30px;
  border:1px solid var(--pfy-border);
  background:linear-gradient(180deg,rgba(241,217,149,.1),rgba(0,0,0,.74));
}

.cx-diamond-copy > span{
  color:var(--pfy-accent);
  text-transform:uppercase;
  font-weight:1000;
}

.cx-diamond-copy h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(3.2rem,8vw,8rem);
  line-height:.82;
  letter-spacing:0;
}

.cx-diamond-copy p{
  color:var(--pfy-muted);
  line-height:1.7;
}

.cx-diamond-film .rad-promo{
  height:100% !important;
  min-height:650px !important;
  border-radius:0;
}

.cx-diamond-index{
  position:sticky;
  top:8px;
  z-index:20;
  display:grid;
  grid-template-columns:minmax(260px,.32fr) minmax(0,1fr);
  gap:12px;
  margin:16px 0;
  padding:12px;
  border:1px solid var(--pfy-border);
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(14px);
}

.cx-diamond-index nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
}

.cx-diamond-index .xp-cat{
  flex:0 0 auto;
  border-radius:0;
}

.cx-diamond-catalog{
  display:grid;
  gap:18px;
  margin-top:18px;
}

.cx-diamond-item{
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(280px,.3fr);
  border-radius:0;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.68));
}

.cx-diamond-item .cx-product-media{
  height:100%;
  min-height:430px;
}

.cx-diamond-item .cx-product-info{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:26px;
}

@media (max-width:980px){
  .cx{
    width:100%;
    padding:0 0 124px;
  }

  .cx-delivery-command,
  .cx-burger-hero,
  .cx-pizza,
  .cx-pizza-hero,
  .cx-acai-builder,
  .cx-sweet-cover,
  .cx-velocity-deck,
  .cx-diamond-cinema,
  .cx-diamond-item,
  .cx-pizza-item{
    grid-template-columns:1fr;
  }

  .cx-pizza-menu{
    position:relative;
    top:auto;
    min-height:0;
  }

  .cx-pizza-menu nav,
  .cx-velocity-console nav{
    display:flex;
    flex-direction:row;
    overflow-x:auto;
  }

  .cx-pizza-menu .xp-cat,
  .cx-velocity-console .xp-cat{
    width:auto;
    flex:0 0 auto;
  }

  .cx-burger-grid,
  .cx-sweet-gallery,
  .cx-velocity-lab{
    grid-template-columns:1fr;
  }

  .cx-burger-item.is-hero,
  .cx-velocity-item:nth-child(1),
  .cx-velocity-item:nth-child(6n){
    grid-column:auto;
  }

  .cx-sweet-item:nth-child(4n + 1){
    transform:none;
  }

  .cx-sweet-ribbon,
  .cx-diamond-index{
    grid-template-columns:1fr;
  }

  .cx-sweet-ribbon nav,
  .cx-diamond-index nav{
    overflow-x:auto;
  }
}

@media (max-width:560px){
  .cx-delivery-bar,
  .cx-acai-top{
    align-items:stretch;
    flex-direction:column;
  }

  .cx-delivery-copy,
  .cx-delivery-search,
  .cx-burger-panel,
  .cx-pizza-hero > div:first-child,
  .cx-acai-maker,
  .cx-sweet-copy,
  .cx-velocity-console,
  .cx-diamond-copy{
    padding:18px;
  }

  .cx-delivery-promo .rad-promo,
  .cx-burger-stage .rad-promo,
  .cx-pizza-hero .rad-promo,
  .cx-acai-banner .rad-promo,
  .cx-sweet-window .rad-promo,
  .cx-velocity-screen .rad-promo,
  .cx-diamond-film .rad-promo{
    min-height:300px !important;
    max-height:360px !important;
  }

  .cx-product{
    min-height:430px;
  }

  .cx-product-media,
  .cx-delivery-item .cx-product-media,
  .cx-burger-item .cx-product-media,
  .cx-pizza-item .cx-product-media,
  .cx-acai-item .cx-product-media,
  .cx-sweet-item .cx-product-media,
  .cx-velocity-item .cx-product-media,
  .cx-diamond-item .cx-product-media{
    height:300px;
    min-height:300px;
    margin:0;
    border-radius:0;
  }

  .cx-product-info,
  .cx-delivery-item .cx-product-info,
  .cx-burger-item .cx-product-info,
  .cx-pizza-item .cx-product-info,
  .cx-acai-item .cx-product-info,
  .cx-sweet-item .cx-product-info,
  .cx-velocity-item .cx-product-info,
  .cx-diamond-item .cx-product-info{
    min-height:130px;
    padding:14px;
  }

  .cx-product-info footer{
    align-items:flex-start;
    flex-direction:column;
  }

  .cx-product-info button{
    width:100%;
  }

  .cx-feature > header,
  .cx-smart > header{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* AI waiter */
.aiWaiterBtn{
  position:fixed;
  right:18px;
  bottom:92px;
  z-index:70;
  width:108px;
  min-height:116px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#06140b;
  font-weight:950;
  box-shadow:none;
  cursor:pointer;
  overflow:visible;
  isolation:isolate;
  -webkit-tap-highlight-color:transparent;
  animation:fyAssistantFloat 4.8s ease-in-out infinite;
}

.aiWaiterBtn[hidden],
.aiWaiterBtn.is-disabled{
  display:none !important;
}

.aiWaiterBtn[data-fy-position="bottom-left"]{
  right:auto;
  left:18px;
}

.aiWaiterBtn[data-fy-size="small"]{
  width:92px;
  min-height:100px;
}

.aiWaiterBtn[data-fy-size="large"]{
  width:132px;
  min-height:142px;
}

.aiWaiterBtn::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:18px;
  width:82px;
  height:82px;
  border-radius:999px;
  transform:translateX(-50%);
  background:radial-gradient(circle,rgba(85,255,92,.38),rgba(0,210,106,.12) 48%,transparent 72%);
  filter:blur(8px);
  z-index:-1;
}

.fyAssistant__avatar{
  position:relative;
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  margin:0 auto;
  overflow:hidden;
  border:2px solid rgba(124,255,92,.75);
  border-radius:999px;
  background:#050805;
  box-shadow:0 18px 34px rgba(0,0,0,.32),0 0 24px rgba(78,255,35,.34);
  transform-origin:50% 100%;
  transition:transform .22s ease,box-shadow .22s ease;
}

.aiWaiterBtn[data-fy-size="small"] .fyAssistant__avatar{
  width:74px;
  height:74px;
}

.aiWaiterBtn[data-fy-size="large"] .fyAssistant__avatar{
  width:110px;
  height:110px;
}

.fyAssistant__avatar::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.64),rgba(0,0,0,.08));
  transform:scaleY(0);
  transform-origin:50% 40%;
  opacity:.75;
  pointer-events:none;
  animation:fyAssistantBlink 6.5s infinite;
}

.fyAssistant__avatar img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transform:scale(1.08);
}

.aiWaiterBtn[data-fy-state="floating"] .fyAssistant__avatar img{
  transform:scale(1.18) translateY(2px);
}

.aiWaiterBtn[data-fy-state="normal"] .fyAssistant__avatar img{
  transform:scale(1.16) translateY(2px);
}

.aiWaiterBtn[data-fy-state="pointing"] .fyAssistant__avatar,
.aiWaiterBtn[data-fy-state="product"] .fyAssistant__avatar,
.aiWaiterBtn[data-fy-state="promo"] .fyAssistant__avatar{
  transform:rotate(-4deg) scale(1.04);
}

.aiWaiterBtn[data-fy-state="thinking"] .fyAssistant__avatar{
  transform:translateY(-2px) scale(.98);
}

.aiWaiterBtn[data-fy-state="surprised"] .fyAssistant__avatar{
  transform:translateY(-5px) scale(1.05);
}

.aiWaiterBtn[data-fy-state="celebrating"] .fyAssistant__avatar,
.aiWaiterBtn[data-fy-state="thanks"] .fyAssistant__avatar{
  transform:rotate(3deg) scale(1.05);
  box-shadow:0 18px 34px rgba(0,0,0,.32),0 0 34px rgba(124,255,92,.5);
}

.fyAssistant__label{
  max-width:92px;
  min-height:24px;
  display:none;
  align-items:center;
  justify-content:center;
  margin:-6px auto 0;
  padding:5px 9px;
  border:1px solid rgba(124,255,92,.55);
  border-radius:999px;
  background:linear-gradient(180deg,#82ff38,#1db954);
  color:#06140b;
  font-size:10px;
  font-weight:1000;
  line-height:1.05;
  text-align:center;
  box-shadow:0 10px 22px rgba(0,0,0,.25);
  overflow:hidden;
  overflow-wrap:anywhere;
  word-break:break-word;
}

.fyAssistant__bubble{
  position:absolute;
  right:78px;
  bottom:80px;
  width:max-content;
  max-width:min(250px,calc(100vw - 138px));
  padding:12px 14px;
  border:1px solid rgba(124,255,92,.5);
  border-radius:18px 18px 4px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(238,255,230,.96));
  color:#101418;
  font-size:13px;
  font-weight:950;
  line-height:1.22;
  text-align:left;
  box-shadow:0 18px 40px rgba(0,0,0,.28),0 0 22px rgba(72,255,42,.18);
  opacity:0;
  pointer-events:none;
  transform:translateY(8px) scale(.96);
  transition:opacity .18s ease,transform .18s ease;
}

.aiWaiterBtn[data-fy-position="bottom-left"] .fyAssistant__bubble{
  right:auto;
  left:78px;
  border-radius:18px 18px 18px 4px;
}

.aiWaiterBtn[data-fy-position="bottom-left"] .fyAssistant__bubble::after{
  right:auto;
  left:-8px;
  border-right:0;
  border-bottom:1px solid rgba(124,255,92,.5);
  border-left:1px solid rgba(124,255,92,.5);
}

.fyAssistant__bubble::after{
  content:"";
  position:absolute;
  right:-8px;
  bottom:13px;
  width:16px;
  height:16px;
  border-right:1px solid rgba(124,255,92,.5);
  border-bottom:1px solid rgba(124,255,92,.5);
  background:rgba(238,255,230,.96);
  transform:rotate(-45deg);
}

.aiWaiterBtn.is-talking .fyAssistant__bubble{
  opacity:1;
  transform:translateY(0) scale(1);
}

.aiWaiterBtn:active .fyAssistant__avatar{
  transform:scale(.94);
}

.aiWaiterBtn.is-waving .fyAssistant__avatar{
  animation:fyAssistantWave 1.35s ease both;
}

.aiWaiterBtn.is-bouncing .fyAssistant__avatar{
  animation:fyAssistantBounce .85s ease both;
}

.aiWaiterBtn.is-celebrating .fyAssistant__avatar{
  animation:fyAssistantCelebrate 1.25s ease both;
}

.aiWaiterBtn.is-pointing .fyAssistant__avatar{
  animation:fyAssistantPoint 1.1s ease both;
}

@keyframes fyAssistantFloat{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-6px); }
}

@keyframes fyAssistantBlink{
  0%,88%,100%{ transform:scaleY(0); }
  90%,92%{ transform:scaleY(1); }
  94%{ transform:scaleY(0); }
}

@keyframes fyAssistantWave{
  0%,100%{ transform:rotate(0deg) scale(1); }
  25%{ transform:rotate(-8deg) scale(1.04); }
  55%{ transform:rotate(7deg) scale(1.03); }
  78%{ transform:rotate(-3deg) scale(1.02); }
}

@keyframes fyAssistantBounce{
  0%,100%{ transform:translateY(0) scale(1); }
  38%{ transform:translateY(-10px) scale(1.04); }
  70%{ transform:translateY(2px) scale(.99); }
}

@keyframes fyAssistantCelebrate{
  0%,100%{ transform:translateY(0) rotate(0deg) scale(1); }
  25%{ transform:translateY(-10px) rotate(-7deg) scale(1.07); }
  55%{ transform:translateY(-2px) rotate(8deg) scale(1.04); }
  78%{ transform:translateY(-5px) rotate(-3deg) scale(1.05); }
}

@keyframes fyAssistantPoint{
  0%,100%{ transform:translateX(0) rotate(0deg) scale(1); }
  45%{ transform:translateX(-6px) rotate(-5deg) scale(1.04); }
  75%{ transform:translateX(2px) rotate(2deg) scale(1.02); }
}

.aiWaiter{
  position:fixed;
  inset:0;
  z-index:120;
  pointer-events:none;
}

.aiWaiter.open{
  pointer-events:auto;
}

.aiWaiter__overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.58);
  opacity:0;
  transition:opacity .18s ease;
}

.aiWaiter.open .aiWaiter__overlay{
  opacity:1;
}

.aiWaiter__panel{
  position:absolute;
  right:16px;
  bottom:16px;
  width:min(420px,calc(100vw - 24px));
  max-height:min(680px,calc(100vh - 32px));
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(18,22,30,.98),rgba(8,10,15,.99));
  color:#fff;
  box-shadow:0 28px 90px rgba(0,0,0,.56);
  transform:translateY(20px) scale(.98);
  opacity:0;
  transition:transform .2s ease,opacity .2s ease;
}

.aiWaiter.open .aiWaiter__panel{
  transform:translateY(0) scale(1);
  opacity:1;
}

.aiWaiter__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:18px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.aiWaiter__avatar{
  width:54px;
  height:54px;
  flex:0 0 auto;
  border:1px solid rgba(124,255,92,.5);
  border-radius:999px;
  background:#050805;
  object-fit:cover;
  box-shadow:0 10px 26px rgba(0,0,0,.32),0 0 18px rgba(124,255,92,.25);
}

.aiWaiter__head > div{
  min-width:0;
  flex:1;
}

.aiWaiter__head strong,
.aiWaiter__head span{
  display:block;
}

.aiWaiter__head strong{
  font-size:18px;
}

.aiWaiter__head span{
  margin-top:4px;
  color:rgba(255,255,255,.58);
  font-size:12px;
}

.aiWaiter__messages{
  min-height:260px;
  overflow:auto;
  display:grid;
  align-content:start;
  gap:10px;
  padding:16px;
}

.aiWaiterMsg{
  max-width:92%;
  padding:12px 14px;
  border-radius:18px;
  line-height:1.35;
  font-size:14px;
}

.aiWaiterMsg--bot{
  justify-self:start;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.08);
}

.aiWaiterMsg--user{
  justify-self:end;
  background:linear-gradient(135deg,#00d26a,#7cffb4);
  color:#06140b;
  font-weight:800;
}

.aiWaiterCards{
  display:grid;
  gap:8px;
  margin-top:10px;
}

.aiWaiterCards button{
  width:100%;
  text-align:left;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:rgba(0,0,0,.22);
  color:#fff;
  padding:11px;
}

.aiWaiterCards span,
.aiWaiterCards b,
.aiWaiterCards small{
  display:block;
}

.aiWaiterCards b{
  margin-top:4px;
  color:#74ffb1;
}

.aiWaiterCards small{
  margin-top:4px;
  color:rgba(255,255,255,.58);
}

.aiWaiter__input{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  padding:14px;
  border-top:1px solid rgba(255,255,255,.08);
}

.aiWaiter__input input{
  min-width:0;
  height:46px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:rgba(255,255,255,.06);
  color:#fff;
  padding:0 13px;
}

.aiWaiter__input button{
  height:46px;
  border:0;
  border-radius:14px;
  background:#00d26a;
  color:#06140b;
  font-weight:950;
  padding:0 14px;
}

.aiWaiterMsg strong,
.aiWaiterMsg span{
  display:block;
}

.aiWaiterMsg span{
  margin-top:4px;
  color:rgba(255,255,255,.72);
  line-height:1.35;
}

.aiWaiterActions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.aiWaiterActions button{
  min-height:38px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:0 13px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:12px;
  font-weight:1000;
  cursor:pointer;
}

.aiWaiterActions button:first-child{
  background:linear-gradient(180deg,var(--green),var(--green2));
  color:#07110a;
  border-color:rgba(29,185,84,.45);
}

.aiWaiterProduct{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:stretch;
}

.aiWaiterProduct__open{
  min-width:0;
}

.aiWaiterProduct__add{
  border:0;
  border-radius:14px;
  padding:0 12px;
  background:linear-gradient(180deg,var(--green),var(--green2));
  color:#061108;
  font-size:12px;
  font-weight:1000;
  cursor:pointer;
}

.aiWaiterSummary,
.aiWaiterOffer,
.aiWaiterCompare{
  margin-top:10px;
  padding:12px;
  border-radius:18px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.1);
}

.aiWaiterSummary ul{
  list-style:none;
  margin:10px 0;
  padding:0;
  display:grid;
  gap:8px;
}

.aiWaiterSummary li{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:start;
  padding-bottom:8px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.aiWaiterSummary li small{
  grid-column:1 / -1;
  color:rgba(255,255,255,.58);
  line-height:1.35;
}

.aiWaiterTotals{
  display:grid;
  gap:6px;
}

.aiWaiterTotals > span{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:rgba(255,255,255,.74);
}

.aiWaiterTotals b{
  color:#fff;
  text-align:right;
}

.aiWaiterTotal{
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.1);
  font-size:15px;
  font-weight:1000;
}

.aiWaiterOffer strong{
  color:#a6ffbd;
}

.aiWaiterCompare{
  display:grid;
  gap:8px;
}

.aiWaiterCompare div{
  padding:10px;
  border-radius:14px;
  background:rgba(255,255,255,.06);
}

.aiWaiterCompare b,
.aiWaiterCompare span,
.aiWaiterCompare small{
  display:block;
}

.aiWaiterCompare span{
  color:#a6ffbd;
  font-weight:1000;
}

.aiWaiterCompare small{
  margin-top:4px;
  color:rgba(255,255,255,.62);
  line-height:1.35;
}

@media (max-width:520px){
  .aiWaiterBtn{
    right:12px;
    bottom:82px;
    width:88px;
    min-height:98px;
  }

  .aiWaiterBtn[data-fy-position="bottom-left"]{
    right:auto;
    left:12px;
  }

  .fyAssistant__avatar{
    width:74px;
    height:74px;
  }

  .fyAssistant__label{
    max-width:84px;
    min-height:24px;
    padding:4px 7px;
    font-size:9px;
  }

  .fyAssistant__bubble{
    right:64px;
    bottom:70px;
    max-width:calc(100vw - 108px);
    padding:10px 12px;
    border-radius:16px 16px 4px 16px;
    font-size:12px;
  }

  .aiWaiterBtn[data-fy-position="bottom-left"] .fyAssistant__bubble{
    right:auto;
    left:64px;
  }

  .aiWaiter__panel{
    inset:auto 8px 8px 8px;
    width:auto;
    max-height:calc(100vh - 16px);
    border-radius:22px;
  }
}

/* =========================================================
   Stability pass: size, overflow and category navigation
   Applies to layout variants without changing the Padrao structure.
========================================================= */
.category-scroll-shell,
.category-scroll-shell *{
  box-sizing:border-box;
}

.category-scroll-shell{
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
}

.category-scroll-shell > .category-scroll-target{
  width:100%;
  max-width:100%;
  min-width:0;
  scroll-behavior:smooth;
  overscroll-behavior:contain;
}

.category-scroll-arrow{
  display:none;
  position:absolute;
  top:50%;
  z-index:9;
  width:36px;
  height:36px;
  padding:0;
  place-items:center;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(10,14,18,.78);
  color:#fff;
  font-size:24px;
  line-height:1;
  box-shadow:0 12px 30px rgba(0,0,0,.3);
  backdrop-filter:blur(10px);
}

.category-scroll-arrow:disabled{
  opacity:.32;
  pointer-events:none;
}

.category-scroll-arrow--prev{left:0}
.category-scroll-arrow--next{right:0}

@media (min-width:821px){
  .category-scroll-shell.is-scrollable{
    padding-inline:42px;
  }

  .category-scroll-shell.is-scrollable > .category-scroll-target{
    justify-content:flex-start !important;
    scrollbar-width:none;
  }

  .category-scroll-shell.is-scrollable > .category-scroll-target::-webkit-scrollbar{
    display:none;
  }

  .category-scroll-shell.is-scrollable .category-scroll-arrow{
    display:grid;
  }

  .category-scroll-shell.is-scrollable::before,
  .category-scroll-shell.is-scrollable::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    z-index:8;
    width:34px;
    pointer-events:none;
  }

  .category-scroll-shell.is-scrollable::before{
    left:42px;
    background:linear-gradient(90deg,var(--pfy-bg,rgba(8,10,12,.96)),transparent);
  }

  .category-scroll-shell.is-scrollable::after{
    right:42px;
    background:linear-gradient(270deg,var(--pfy-bg,rgba(8,10,12,.96)),transparent);
  }

  .category-scroll-shell.is-vertical{
    padding:42px 0;
  }

  .category-scroll-shell.is-vertical .category-scroll-arrow{
    left:50%;
    right:auto;
    transform:translateX(-50%) rotate(90deg);
  }

  .category-scroll-shell.is-vertical .category-scroll-arrow--prev{top:0}
  .category-scroll-shell.is-vertical .category-scroll-arrow--next{top:auto;bottom:0}

  .xpv-pizza-rail .category-scroll-target,
  .pfy-pizza-rail .category-scroll-target{
    max-height:min(48vh,420px);
    overflow-y:auto;
  }
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.app,.main,#viewHome,.view,.pfy-layout,.xp-layout,.xpv,.cx,.independent-menu){
  max-width:100vw;
  overflow-x:clip;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.pfy-layout,.xp-layout,.xpv,.cx,.independent-menu,.pfy-layout *,.xp-layout *,.xpv *,.cx *,.independent-menu *){
  min-width:0;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(h1,h2,h3,p,strong,b,span,button){
  max-width:100%;
  overflow-wrap:anywhere;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv h1,.pfy-layout h1,.xp-layout h1,.cx h1){
  font-size:clamp(1.9rem,5vw,4.6rem) !important;
  line-height:.95 !important;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv-card-info h3,.pfy-product h3,.xp-item h3,.cx-product-info h3,.rad-promo h2,.pfy-feature-card strong,.xp-highlight strong,.cx-feature-card strong,.item__name,.favCard__name,.layout-cat b,.radical-cat b,.pfy-cat b,.xp-cat b){
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv-card-info p,.pfy-product p,.xp-item p,.cx-product-info p,.pfy-feature-card p,.xp-highlight p){
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.rad-promo){
  height:clamp(210px,24vw,330px) !important;
  min-height:0 !important;
  max-height:330px !important;
  max-width:100%;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv-burger-media .rad-promo,.xpv-acai-promo .rad-promo,.xpv-sweet-window .rad-promo,.xpv-velocity-display .rad-promo,.xpv-diamond-cinema .rad-promo,.pfy-burger-stage .rad-promo,.pfy-velocity-media .rad-promo,.pfy-diamond-media .rad-promo){
  height:clamp(240px,28vw,380px) !important;
  min-height:0 !important;
  max-height:380px !important;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.rad-promo img,.xpv-card-media img,.pfy-product-media img,.cx-product-media img,.item__img img,.favCard__img img,.pfy-feature-card img,.xp-highlight img,.cx-feature-card img){
  width:100%;
  height:100%;
  object-fit:cover;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv-fast-flow,.xpv-burger-cover,.xpv-pizza-banner,.xpv-acai-builder,.xpv-sweet-hero,.xpv-velocity-command,.xpv-diamond-cover,.pfy-delivery-hero,.pfy-burger-hero,.pfy-acai-hero,.pfy-sweet-atelier,.pfy-velocity-command,.pfy-diamond-cinema){
  min-height:0 !important;
  max-width:100%;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv-fast-intent,.xpv-burger-copy,.xpv-acai-panel,.xpv-sweet-story,.xpv-velocity-console,.xpv-diamond-editorial,.pfy-delivery-copy,.pfy-burger-copy,.pfy-acai-glass,.pfy-sweet-story,.pfy-velocity-copy,.pfy-diamond-copy){
  min-height:clamp(230px,30vw,420px) !important;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv-products,.pfy-product-list,.cx-delivery-feed,.cx-burger-grid,.cx-pizza-flavors,.cx-acai-river,.cx-sweet-gallery,.cx-velocity-lab,.cx-diamond-catalog){
  max-width:100%;
}

@media (min-width:901px){
  .xpv-products--delivery,
  .xpv-products--pizza,
  .xpv-products--premium,
  .xpv-products--burger,
  .xpv-products--acai,
  .xpv-products--confectionery{
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;
  }

  .xpv-card,
  .pfy-product,
  .cx-product{
    min-height:0 !important;
    max-width:100%;
  }

  .xpv-card-media,
  .xpv-card--delivery .xpv-card-media,
  .xpv-card--burger .xpv-card-media,
  .xpv-card--pizza .xpv-card-media,
  .xpv-card--acai .xpv-card-media,
  .xpv-card--confectionery .xpv-card-media,
  .xpv-card--premium .xpv-card-media{
    height:auto !important;
    min-height:0 !important;
    max-height:330px;
    aspect-ratio:4 / 3;
  }

  .xpv-card--delivery .xpv-card-media,
  .xpv-card--premium .xpv-card-media{
    aspect-ratio:16 / 10;
  }

  .xpv-card--diamond{
    min-height:0 !important;
    grid-template-columns:minmax(0,1fr) minmax(230px,.58fr) !important;
  }

  .xpv-card--diamond .xpv-card-media{
    height:auto !important;
    min-height:0 !important;
    max-height:360px;
    aspect-ratio:16 / 9;
  }

  .xpv-card-info{
    min-height:0 !important;
  }

  .xpv-card-info footer{
    flex-wrap:wrap;
    align-items:center;
  }

  .xpv-card-info button{
    flex:0 0 auto;
  }

  .pfy-feature-card,
  .xp-highlight,
  .cx-feature-card{
    min-height:220px !important;
    max-height:360px;
  }
}

@media (max-width:900px){
  .category-scroll-shell{
    padding:0 !important;
  }

  .category-scroll-arrow{
    display:none !important;
  }

  body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.pfy-layout,.xp-layout,.xpv,.cx,.independent-menu){
    width:100% !important;
    padding-inline:10px !important;
  }

  body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.xpv h1,.pfy-layout h1,.xp-layout h1,.cx h1){
    font-size:clamp(1.65rem,10vw,3.35rem) !important;
    line-height:.96 !important;
  }

  body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.rad-promo,.xpv-burger-media .rad-promo,.xpv-acai-promo .rad-promo,.xpv-sweet-window .rad-promo,.xpv-velocity-display .rad-promo,.xpv-diamond-cinema .rad-promo,.pfy-burger-stage .rad-promo,.pfy-velocity-media .rad-promo,.pfy-diamond-media .rad-promo){
    height:220px !important;
    min-height:0 !important;
    max-height:220px !important;
  }

  .xpv-products,
  .xpv-products--delivery,
  .xpv-products--burger,
  .xpv-products--pizza,
  .xpv-products--acai,
  .xpv-products--confectionery,
  .xpv-products--premium,
  .xpv-products--diamond{
    grid-template-columns:1fr !important;
  }

  .xpv-card,
  .xpv-card--diamond{
    min-height:0 !important;
    max-width:100%;
  }

  .xpv-card-media,
  .xpv-card--diamond .xpv-card-media{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:4 / 3;
  }

  .xpv-card-info footer{
    align-items:stretch;
    flex-direction:column;
  }

  .xpv-card-info button{
    width:100%;
  }
}

@media (max-width:390px){
  body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) :where(.rad-promo){
    height:200px !important;
    max-height:200px !important;
  }

  .xpv-card-media,
  .xpv-card--diamond .xpv-card-media{
    aspect-ratio:1 / 1;
  }
}

/* Delivery Rapido must never use a light background. */
body[data-cardapio-layout="delivery"]{
  --pfy-bg:#06100d;
  --pfy-panel:rgba(255,255,255,.075);
  --pfy-panel-strong:rgba(83,255,158,.13);
  --pfy-border:rgba(126,255,183,.18);
  --pfy-text:#f4fff8;
  --pfy-muted:rgba(244,255,248,.68);
  --pfy-accent:#42ee8f;
  --pfy-accent-2:#b7ff77;
  background:
    radial-gradient(circle at 14% -8%, rgba(66,238,143,.22), transparent 30%),
    radial-gradient(circle at 88% 0%, rgba(183,255,119,.13), transparent 28%),
    linear-gradient(180deg,#07140f 0%,#030806 100%) !important;
  color:var(--pfy-text) !important;
}

body[data-cardapio-layout="delivery"] :where(.app,.main,#viewHome,.delivery-system,.delivery-app-frame,.pfy-delivery-app,.xp-layout--delivery,.xpv-delivery,.cx-delivery){
  background:transparent !important;
  color:var(--pfy-text) !important;
}

body[data-cardapio-layout="delivery"] :where(
  .delivery-header,
  .delivery-system-command,
  .delivery-speed-strip,
  .delivery-system-search,
  .delivery-row-copy,
  .delivery-row-price,
  .rad-product--delivery,
  .layout-product--delivery,
  .pfy-delivery-copy,
  .pfy-product--delivery,
  .xp-delivery-top,
  .xp-delivery-summary,
  .xp-item--delivery,
  .xpv-fast-appbar,
  .xpv-fast-intent,
  .xpv-card--delivery,
  .cx-delivery-bar,
  .cx-delivery-copy,
  .cx-delivery-search,
  .cx-delivery-item,
  .drawer__panel,
  .cartItem,
  .cartMeta,
  .cartTotals
){
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(0,0,0,.28)) !important;
  border-color:var(--pfy-border) !important;
  color:var(--pfy-text) !important;
}

body[data-cardapio-layout="delivery"] :where(.layout-search.clean input,.pfy-search input,.xp-search input,.cartMeta input,.cartMeta select){
  background:rgba(0,0,0,.32) !important;
  border-color:var(--pfy-border) !important;
  color:var(--pfy-text) !important;
}

body[data-cardapio-layout="delivery"] :where(.layout-search.clean input,.pfy-search input,.xp-search input,.cartMeta input)::placeholder{
  color:var(--pfy-muted) !important;
}

body[data-cardapio-layout="delivery"] :where(
  .delivery-header span,
  .delivery-system-command span,
  .delivery-row-copy p,
  .pfy-delivery-copy p,
  .pfy-product p,
  .xp-item p,
  .xpv-card-info p,
  .cx-product-info p,
  .cartItem__meta
){
  color:var(--pfy-muted) !important;
}

body[data-cardapio-layout="delivery"] :where(
  .delivery-row-copy h3,
  .delivery-row-price,
  .pfy-product h3,
  .xp-item h3,
  .xpv-card-info h3,
  .cx-product-info h3,
  .cartItem__name,
  .cartItem__price
){
  color:var(--pfy-text) !important;
}

body[data-cardapio-layout="delivery"] :where(
  .rad-action--delivery,
  .delivery-system-command button,
  .delivery-speed-strip button,
  .layout-product-action,
  .pfy-product button[data-quick-product],
  .xp-item button[data-quick-product],
  .xpv-card-info button,
  .cx-product-info button,
  #checkoutBtn
){
  background:linear-gradient(180deg,var(--pfy-accent),var(--pfy-accent-2)) !important;
  color:#06100b !important;
  border-color:transparent !important;
}

/* Product detail polish: spacing and readability across cardapio layouts. */
#viewProduct:not(.hidden),
#viewProduct:not(.hidden) *{
  box-sizing:border-box;
}

#viewProduct:not(.hidden){
  width:100%;
  max-width:100%;
  min-width:0;
}

#viewProduct:not(.hidden) .productTop{
  gap:12px;
  margin:0 0 14px;
}

#viewProduct:not(.hidden) .productTop__title{
  flex:1;
  min-width:0;
  overflow:hidden;
  text-align:center;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#viewProduct:not(.hidden) .backBtn,
#viewProduct:not(.hidden) .iconBtn{
  flex:0 0 44px;
}

#viewProduct:not(.hidden) .productHero{
  height:clamp(250px,40vw,420px);
  max-height:min(52vh,420px);
  background:rgba(255,255,255,.055);
}

#viewProduct:not(.hidden) .productHero img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
}

#viewProduct:not(.hidden) .productCard{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:clamp(16px,2.2vw,24px);
}

#viewProduct:not(.hidden) .productRow{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
}

#viewProduct:not(.hidden) .productName{
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
  font-size:clamp(1.35rem,3vw,2.25rem);
  line-height:1.05;
}

#viewProduct:not(.hidden) .productPrice{
  min-width:max-content;
  max-width:180px;
  line-height:1;
  text-align:right;
  white-space:normal;
}

#viewProduct:not(.hidden) .productOldPrice{
  display:block;
  margin-bottom:5px;
  color:rgba(255,255,255,.48);
  font-size:.82rem;
  text-decoration:line-through;
}

#viewProduct:not(.hidden) .productPromoPrice,
#viewProduct:not(.hidden) .productRegularPrice{
  display:block;
  color:var(--pfy-accent, var(--green));
  font-size:clamp(1.15rem,2.8vw,1.65rem);
  font-weight:1100;
}

#viewProduct:not(.hidden) .starsRow{
  margin:0;
  line-height:1;
}

#viewProduct:not(.hidden) .productDesc{
  margin:0;
  max-width:68ch;
  overflow-wrap:anywhere;
}

#viewProduct:not(.hidden) .options{
  margin-top:2px;
  gap:12px;
}

#viewProduct:not(.hidden) .optBlock{
  padding:14px;
}

#viewProduct:not(.hidden) .optTitle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
  line-height:1.2;
}

#viewProduct:not(.hidden) .optTitle span{
  flex:0 0 auto;
  white-space:nowrap;
}

#viewProduct:not(.hidden) .optRow{
  min-height:48px;
  gap:12px;
}

#viewProduct:not(.hidden) .optRow label{
  min-width:0;
  flex:1;
}

#viewProduct:not(.hidden) .optRow label span{
  min-width:0;
  overflow-wrap:anywhere;
}

#viewProduct:not(.hidden) .optPrice{
  flex:0 0 auto;
  color:var(--pfy-accent, rgba(255,255,255,.86));
}

#viewProduct:not(.hidden) .note{
  margin-top:0;
}

#viewProduct:not(.hidden) .note label{
  color:var(--pfy-text, var(--text));
}

#viewProduct:not(.hidden) .note input{
  min-height:50px;
}

#viewProduct:not(.hidden) .addRow{
  display:grid;
  grid-template-columns:minmax(138px,auto) minmax(0,1fr);
  gap:12px;
  align-items:stretch;
  margin-top:2px;
}

#viewProduct:not(.hidden) .qty{
  min-height:56px;
  justify-content:space-between;
}

#viewProduct:not(.hidden) .qtyBtn{
  flex:0 0 40px;
  width:40px;
  height:40px;
}

#viewProduct:not(.hidden) #addToCartBtn{
  min-width:0;
  min-height:56px;
  padding:0 16px;
  text-align:center;
}

#viewProduct:not(.hidden) .comboSection{
  margin-top:2px;
  padding-top:14px;
  border-top:1px solid var(--pfy-border, rgba(255,255,255,.1));
}

#viewProduct:not(.hidden) .comboHead h3{
  margin:0;
  font-size:1rem;
  line-height:1.15;
}

#viewProduct:not(.hidden) .comboHead p{
  margin:5px 0 0;
  color:var(--pfy-muted, var(--muted));
  line-height:1.35;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden){
  width:min(1120px,100%);
  margin:0 auto;
  padding:14px clamp(12px,2.4vw,28px) 128px;
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .productTop{
  position:sticky;
  top:8px;
  z-index:35;
  padding:8px;
  backdrop-filter:blur(16px);
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .productCard,
body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .optBlock,
body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .note input,
body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .qty{
  border-color:var(--pfy-border);
  background:linear-gradient(180deg,var(--pfy-panel),rgba(0,0,0,.28));
  color:var(--pfy-text);
}

body:is([data-cardapio-layout="delivery"],[data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .productHero{
  border-color:var(--pfy-border);
  box-shadow:0 28px 90px rgba(0,0,0,.34);
}

@media (min-width:900px){
  body:is([data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden){
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(360px,.7fr);
    gap:20px;
    align-items:start;
  }

  body:is([data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .productTop{
    grid-column:1 / -1;
  }

  body:is([data-cardapio-layout="burger"],[data-cardapio-layout="pizza"],[data-cardapio-layout="acai"],[data-cardapio-layout="confectionery"],[data-cardapio-layout="diamond"],[data-cardapio-layout="premium"]) #viewProduct:not(.hidden) .productCard{
    position:sticky;
    top:86px;
  }

  body[data-cardapio-layout="delivery"] #viewProduct:not(.hidden){
    width:min(820px,100%);
  }
}

@media (max-width:620px){
  #viewProduct:not(.hidden){
    padding-bottom:132px;
  }

  #viewProduct:not(.hidden) .productHero{
    height:auto;
    max-height:none;
    aspect-ratio:4 / 3;
    border-radius:20px;
  }

  #viewProduct:not(.hidden) .productCard{
    padding:16px;
    border-radius:20px;
  }

  #viewProduct:not(.hidden) .productRow{
    grid-template-columns:1fr;
  }

  #viewProduct:not(.hidden) .productPrice{
    max-width:100%;
    text-align:left;
  }

  #viewProduct:not(.hidden) .optTitle{
    align-items:flex-start;
    flex-direction:column;
  }

  #viewProduct:not(.hidden) .optRow{
    align-items:flex-start;
  }

  #viewProduct:not(.hidden) .addRow{
    grid-template-columns:1fr;
  }

  #viewProduct:not(.hidden) .qty{
    width:100%;
  }
}

body[data-cardapio-layout="diamond"] #viewProduct:not(.hidden) :where(.productTop,.productCard,.productHero,.optBlock,.note input,.qty,.qtyBtn,#addToCartBtn){
  border-radius:0 !important;
}

