/* ===== Home: hero ===== */
.hero-sec { padding-top: 24px; }
.hero {
  position: relative; overflow: hidden; border-radius: var(--raio-lg);
  background: radial-gradient(120% 140% at 88% 10%, #3b3f4a 0%, var(--grafite) 45%, var(--grafite-2) 100%);
  color: #fff; min-height: clamp(360px, 38vw, 440px); isolation: isolate;
  touch-action: pan-y pinch-zoom; /* o arrasto lateral fica com o carrossel; sem isso o navegador cancela o toque */
}
.hero__deco { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; fill: none; stroke: var(--amarelo); stroke-width: 2; opacity: .55; }
.hero__deco path { stroke: rgb(255 255 255 / .12); stroke-width: 1.5; }
.hero__trilho { position: relative; display: grid; height: 100%; min-height: inherit; }
.hero__slide { grid-area: 1 / 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); align-items: stretch; min-height: inherit; visibility: hidden; }
.hero__slide.is-ativo { visibility: visible; }
.hero__texto { position: relative; z-index: 3; align-self: center; padding: clamp(28px, 4vw, 56px) 0 clamp(52px, 5vw, 64px) clamp(28px, 5.5vw, 76px); display: grid; justify-items: start; gap: 14px; }
.hero__titulo { font-size: clamp(28px, 3.6vw, 46px); font-weight: 600; letter-spacing: -.025em; max-width: 16ch; }
.hero__resumo { color: var(--grafite-txt); max-width: 44ch; font-size: 15px; }
.hero__resumo .cond { margin-right: 6px; vertical-align: 1px; }
.hero__preco { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 4px; }
.hero__preco strong { font-size: clamp(28px, 3vw, 38px); font-weight: 700; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.hero__desc { padding: 5px 11px; border-radius: 4px; background: var(--amarelo); color: var(--grafite); font-size: 13px; font-weight: 600; }
.hero__ref { font-size: 13px; color: var(--grafite-txt); margin-top: -6px; font-variant-numeric: tabular-nums; }
.hero__texto .btn { margin-top: 8px; }
.hero__foto { position: relative; z-index: 2; overflow: hidden; }
/* fotos de produto sobre branco: palco claro com a imagem inteira, sem recorte */
.hero__foto img {
  position: absolute; top: 28px; bottom: 52px; right: 72px; left: 0;
  width: calc(100% - 72px); height: calc(100% - 80px); object-fit: contain;
  padding: 22px; background: #fff; border-radius: var(--raio-lg);
  box-shadow: 0 18px 40px rgb(0 0 0 / .35);
}
/* movimento autoral: a foto entra com uma cortina diagonal e o texto sobe */
.hero__slide.is-ativo .hero__foto img { animation: hero-foto 1.1s var(--ease) both; }
.hero__slide.is-ativo .hero__texto > * { animation: hero-texto .8s var(--ease) both; }
.hero__slide.is-ativo .hero__texto > :nth-child(2) { animation-delay: .06s; }
.hero__slide.is-ativo .hero__texto > :nth-child(3) { animation-delay: .12s; }
.hero__slide.is-ativo .hero__texto > :nth-child(4) { animation-delay: .18s; }
.hero__slide.is-ativo .hero__texto > :nth-child(5) { animation-delay: .24s; }
@keyframes hero-foto { from { clip-path: polygon(100% 0, 100% 0, 100% 100%, 88% 100%); transform: scale(1.08); filter: blur(6px); } to { clip-path: polygon(-20% 0, 100% 0, 100% 100%, -40% 100%); transform: none; filter: none; } }
@keyframes hero-texto { from { opacity: 0; transform: translateY(14px); } }
.hero:not(.js-pronto) .hero__slide.is-ativo .hero__foto img, .hero:not(.js-pronto) .hero__slide.is-ativo .hero__texto > * { animation: none; }

.hero__seta { position: absolute; top: 50%; z-index: 4; translate: 0 -50%; width: 44px; height: 44px; border-radius: 50%; border: 0; display: grid; place-items: center; box-shadow: 0 4px 14px rgb(0 0 0 / .25); transition: scale .2s var(--ease), background .2s; }
.hero__seta:hover { scale: 1.08; }
.hero__seta--ant { left: 16px; background: #fff; color: var(--grafite); }
.hero__seta--prox { right: 16px; background: var(--amarelo); color: var(--grafite); }
.hero__pontos { position: absolute; bottom: 18px; left: 50%; translate: -50% 0; z-index: 4; display: flex; gap: 8px; }
.hero__pontos { gap: 2px; align-items: center; }
.hero__pontos [data-ponto] { position: relative; width: 30px; height: 24px; padding: 0; border: 0; background: none; }
.hero__pontos [data-ponto]::before { content: ""; position: absolute; left: 0; top: 6px; width: 30px; height: 12px; border-radius: 99px; background: rgb(255 255 255 / .6); clip-path: inset(0 9px round 99px); transition: clip-path .45s var(--ease), background .3s; }
.hero__pontos [data-ponto]:hover::before { background: #fff; }
.hero__pontos [data-ponto][aria-current="true"]::before { background: var(--amarelo); clip-path: inset(0 0 round 99px); }
.hero__pausa { width: 32px; height: 32px; margin-left: 6px; padding: 0; border: 0; border-radius: 50%; display: grid; place-items: center; background: rgb(255 255 255 / .24); color: #fff; transition: background .2s; }
.hero__pausa:hover { background: rgb(255 255 255 / .32); }
.hero__pausa .ic { width: 12px; height: 12px; fill: currentColor; stroke: none; }
.hero__pausa .ic--play, .hero__pausa[aria-pressed="true"] .ic--pause { display: none; }
.hero__pausa[aria-pressed="true"] .ic--play { display: block; }

/* ===== Home: faixa de categorias ===== */
.faixa-cats { position: relative; margin-top: 20px; }
.faixa-cats__trilho { display: grid; grid-auto-flow: column; grid-auto-columns: clamp(128px, 12.6%, 160px); gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 4px 2px 8px; }
.faixa-cats__trilho::-webkit-scrollbar { display: none; }
.faixa-cats__trilho li { scroll-snap-align: start; }
.cat-tile { display: grid; justify-items: center; gap: 2px; padding: 12px 10px 14px; height: 100%; background: #fff; border: 2px solid transparent; border-radius: var(--raio-lg); box-shadow: var(--sombra); text-align: center; transition: border-color .25s, transform .3s var(--ease); }
.cat-tile:hover { border-color: var(--amarelo); transform: translateY(-2px); }
.cat-tile__img { width: 84px; height: 84px; border-radius: 50%; overflow: hidden; background: var(--fundo); margin-bottom: 8px; }
.cat-tile__img img { width: 100%; height: 100%; object-fit: cover; }
.cat-tile__nome { font-size: 13px; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; hyphens: auto; }
.cat-tile__qtd { font-size: 12px; color: var(--texto-3); }
.faixa-cats__seta { position: absolute; top: 50%; z-index: 2; translate: 0 -60%; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--linha); display: grid; place-items: center; box-shadow: var(--sombra); background: #fff; color: var(--grafite); transition: opacity .2s; }
.faixa-cats__seta--ant { left: calc(var(--gutter) - 14px); }
.faixa-cats__seta--prox { right: calc(var(--gutter) - 14px); background: var(--amarelo); border-color: var(--amarelo); }
.faixa-cats__seta[disabled] { opacity: 0; pointer-events: none; }

/* ===== Home: bloco de economia ===== */
.faixa-cinza { background: linear-gradient(var(--fundo), #e9eaee); margin-top: 36px; padding-bottom: 8px; border-top: 1px solid #e6e7ea; }
.oferta { display: grid; grid-template-columns: minmax(250px, 300px) 1fr; gap: 24px; padding: 22px; }
.oferta__destaque { display: grid; align-content: start; gap: 14px; padding: 26px 24px 24px; border-radius: var(--raio); background: var(--grafite); color: #fff; position: relative; overflow: hidden; }
.oferta__destaque::after { content: ""; position: absolute; inset: auto 0 0 0; height: 58px; background: var(--amarelo); clip-path: polygon(0 55%, 100% 0, 100% 100%, 0 100%); }
.oferta__titulo { font-size: 24px; font-weight: 500; line-height: 1.25; }
.oferta__titulo em { font-style: normal; font-weight: 700; color: var(--amarelo); font-size: 1.9em; display: inline-block; line-height: 1; }
.oferta__txt { color: var(--grafite-txt); font-size: 14px; }
.oferta__numeros { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 8px; margin-bottom: 18px; }
.oferta__numeros li { display: grid; justify-items: center; padding: 8px 4px; background: #fff; color: var(--grafite); border-radius: var(--raio); box-shadow: 0 2px 6px rgb(0 0 0 / .15); }
.oferta__numeros strong { font-size: 22px; line-height: 1.1; }
.oferta__numeros span { font-size: 10px; text-transform: uppercase; letter-spacing: .04em; color: var(--texto-2); }
.oferta__itens { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.oferta-item { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 18px; align-items: start; }
.oferta-item__foto { position: relative; aspect-ratio: 1; border-radius: var(--raio); overflow: hidden; background: var(--fundo); }
.oferta-item__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease); }
.oferta-item:hover .oferta-item__foto img { transform: scale(1.05); }
.oferta-item__info { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
.oferta-item__titulo { font-size: 15px; font-weight: 500; }
.oferta-item__titulo a:hover { color: var(--preco); }
.oferta-item__economia { font-size: 13px; color: var(--verde); }
.oferta-item__acoes { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }

/* ===== Régua de preços (assinatura) ===== */
.regua { display: grid; gap: 7px; margin: 0; }
.regua__linha { display: grid; grid-template-columns: 124px 1fr; align-items: center; gap: 10px; }
.regua dt { font-size: 12px; color: var(--texto-2); }
.regua dd { margin: 0; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 10px; }
.regua__barra { height: 8px; border-radius: 99px; background: var(--fundo); overflow: hidden; }
.regua__barra i { display: block; height: 100%; width: var(--w); border-radius: inherit; background: #c3c6cd; transform-origin: left; animation: regua-cresce 1s var(--ease) both; }
.regua__linha--usado .regua__barra i { background: #8b8f99; animation-delay: .1s; }
.regua__linha--nosso .regua__barra i { background: var(--amarelo); box-shadow: inset 0 0 0 1px rgb(0 0 0 / .06); animation-delay: .2s; }
.regua__valor { font-size: 12px; color: var(--texto-2); min-width: 86px; text-align: right; }
.regua__linha--novo .regua__valor, .regua__linha--usado .regua__valor { text-decoration: line-through; text-decoration-color: rgb(90 94 105 / .6); }
.regua__linha--nosso dt { color: var(--texto); font-weight: 600; }
.regua__linha--nosso .regua__valor { color: var(--preco); font-weight: 700; font-size: 14px; }
@keyframes regua-cresce { from { transform: scaleX(0); } }
.regua--compacta .regua__linha { grid-template-columns: 1fr; gap: 2px; }

/* ===== Home: faixa indique ===== */
.faixa-indique { display: flex; align-items: center; gap: 22px; background: var(--grafite); color: #fff; border-radius: var(--raio); overflow: hidden; padding-right: 14px; min-height: 52px; }
.faixa-indique__rotulo { align-self: stretch; display: flex; align-items: center; padding: 0 34px 0 22px; background: var(--amarelo); color: var(--grafite); font-weight: 600; white-space: nowrap; clip-path: polygon(0 0, 100% 0, calc(100% - 20px) 100%, 0 100%); }
.faixa-indique__txt { flex: 1; font-size: 14px; color: #dfe1e6; padding-block: 12px; }
.faixa-indique__txt strong { color: var(--amarelo); }

/* ===== Home: colunas ===== */
.colunas { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.coluna { display: flex; flex-direction: column; padding: 14px 16px 18px 0; min-width: 0; }
.coluna__topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.coluna__setas { display: flex; gap: 6px; }
.btn-ic--redondo { border-radius: 50%; width: 30px; height: 30px; }
.btn-ic--redondo:hover { background: var(--amarelo); border-color: var(--amarelo); color: var(--grafite); }
/* no toque, as setas das colunas e os pontos do banner ganham área maior (o desenho continua igual) */
@media (pointer: coarse) {
  .btn-ic--redondo { width: 36px; height: 36px; }
  .hero__pontos [data-ponto] { height: 32px; }
  .hero__pontos [data-ponto]::before { top: 10px; }
}
.coluna__corpo { display: grid; grid-template-columns: 1fr 66px; gap: 14px; padding-left: 16px; flex: 1; }
.coluna__palco { min-width: 0; }
.coluna__item { display: grid; gap: 8px; }
.coluna__item.is-ativo { animation: coluna-entra .5s var(--ease); }
@keyframes coluna-entra { from { opacity: 0; transform: translateX(-10px); } }
.coluna__foto { aspect-ratio: 1; border-radius: var(--raio); overflow: hidden; background: var(--fundo); }
.coluna__foto img { width: 100%; height: 100%; object-fit: cover; }
.coluna__nome { font-size: 14px; font-weight: 500; line-height: 1.35; min-height: 2.7em; }
.coluna__nome a:hover { color: var(--preco); }
.coluna__thumbs { display: grid; align-content: start; gap: 8px; }
.coluna__thumb { width: 66px; height: 66px; padding: 3px; border-radius: var(--raio); border: 2px solid var(--linha); background: #fff; transition: border-color .2s; }
.coluna__thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 3px; }
.coluna__thumb:hover { border-color: #b8bbc3; }
.coluna__thumb.is-ativo { border-color: var(--amarelo); }

/* ===== Home: vitrine e passos ===== */
.abas-filtro { display: flex; gap: 4px; flex-wrap: wrap; }
.abas-filtro button { border: 0; background: none; padding: 6px 12px; font-size: 13px; font-weight: 500; color: var(--texto-2); border-radius: 99px; transition: background .2s, color .2s; }
.abas-filtro button:hover { color: var(--texto); background: #fff; }
.abas-filtro button.is-ativo { background: var(--grafite); color: #fff; }
.card.is-filtrado { display: none; }
.vitrine__vazia { padding: 24px 0; color: var(--texto-2); }
.vitrine__mais { display: flex; justify-content: center; margin-top: 24px; }

.passos { padding: clamp(22px, 3vw, 32px); }
.passos__titulo { font-size: 20px; margin-bottom: 20px; }
.passos__lista { display: grid; grid-template-columns: repeat(3, 1fr); counter-reset: passo; }
.passos__lista li { display: flex; gap: 14px; padding: 4px 24px; border-left: 1px solid var(--linha); }
.passos__lista li:first-child { border-left: 0; padding-left: 0; }
.passos__lista .ic { width: 42px; height: 42px; padding: 10px; border-radius: 50%; background: var(--amarelo); color: var(--grafite); stroke-width: 1.8; }
.passos__lista h3 { font-size: 15px; margin-bottom: 4px; }
.passos__lista p { font-size: 14px; color: var(--texto-2); }
.passos__lista code { font-size: 12px; background: var(--fundo); padding: 1px 5px; border-radius: 4px; word-break: break-all; }

/* ===== Vazio ===== */
.vazio { display: grid; justify-items: center; gap: 10px; padding: clamp(36px, 6vw, 64px) 24px; text-align: center; }
.vazio__ic { width: 56px; height: 56px; padding: 13px; border-radius: 50%; background: var(--amarelo-claro); color: #7a5b00; stroke-width: 1.6; }
.vazio h2, .vazio h3 { font-size: 20px; }
.vazio p { color: var(--texto-2); max-width: 48ch; }
.vazio .btn { margin-top: 8px; }

/* ===== Cabeçalho de página ===== */
.migalhas { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; padding-block: 18px 6px; font-size: 13px; color: var(--texto-3); }
.migalhas .ic { width: 14px; height: 14px; }
.migalhas a:hover { color: var(--texto); text-decoration: underline; text-underline-offset: 3px; }
.migalhas [aria-current] { color: var(--texto-2); max-width: min(40ch, 100%); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cabeca-pagina { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; margin-bottom: 20px; }
.cabeca-pagina h1 { font-size: clamp(24px, 3vw, 32px); letter-spacing: -.02em; }
.cabeca-pagina__qtd { color: var(--texto-3); font-size: 14px; }

/* ===== Catálogo ===== */
.catalogo { display: grid; grid-template-columns: 250px 1fr; gap: 24px; align-items: start; }
.filtros { position: sticky; top: 16px; }
.filtros__caixa summary { display: flex; align-items: center; gap: 8px; padding: 14px 18px; font-weight: 600; cursor: pointer; list-style: none; }
.filtros__caixa summary::-webkit-details-marker { display: none; }
.filtros__form { display: grid; gap: 18px; padding: 0 18px 18px; }
.filtros__grupo { border: 0; margin: 0; padding: 0; }
.filtros__grupo legend { font-size: 13px; font-weight: 600; margin-bottom: 8px; }
.filtros__cats { display: grid; gap: 2px; }
.filtros__cats label, .filtros__check { display: flex; align-items: center; gap: 10px; padding: 5px 0; font-size: 14px; cursor: pointer; }
.filtros input[type="radio"], .filtros input[type="checkbox"] { width: 17px; height: 17px; margin: 0; accent-color: var(--grafite); }
.filtros__limpar { font-size: 13px; text-decoration: underline; text-underline-offset: 3px; color: var(--texto-2); }
.js .filtros__aplicar { display: none; }
.grade--catalogo { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.paginacao { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; margin-top: 28px; }
.paginacao a, .paginacao__atual { display: grid; place-items: center; min-width: 34px; height: 34px; padding: 0 6px; border-radius: var(--raio); background: #fff; font-size: 14px; box-shadow: var(--sombra); }
.paginacao a:hover { background: var(--amarelo-claro); }
.paginacao__atual { background: var(--amarelo); font-weight: 600; }

/* ===== Produto ===== */
.produto { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(20px, 3.5vw, 44px); padding: clamp(16px, 2.5vw, 28px); }
.galeria { display: grid; gap: 12px; align-content: start; }
.galeria__palco { position: relative; aspect-ratio: 1; border-radius: var(--raio); overflow: hidden; background: var(--fundo); }
.galeria__principal { position: absolute; inset: 0; padding: 0; border: 0; background: none; cursor: zoom-in; }
.galeria__principal img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease); }
.galeria__principal:hover img { transform: scale(1.03); }
.galeria__principal.is-ativo { animation: foto-entra .45s var(--ease); }
@keyframes foto-entra { from { opacity: .3; } }
.galeria__sem-foto { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 8px; color: var(--texto-3); }
.galeria__sem-foto .ic { width: 48px; height: 48px; stroke-width: 1.5; }
.selo--grande { top: 14px; left: 14px; padding: 5px 12px; font-size: 13px; }
.galeria__ampliar { position: absolute; right: 12px; bottom: 12px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 0; border-radius: 99px; background: rgb(27 28 33 / .82); color: #fff; font-size: 13px; font-weight: 500; transition: background .2s; }
.galeria__ampliar:hover { background: var(--grafite-2); }
.galeria__ampliar .ic { width: 16px; height: 16px; }
.galeria__ampliar .num { color: var(--amarelo); }
.galeria__thumbs { display: grid; grid-template-columns: repeat(auto-fill, minmax(72px, 1fr)); gap: 10px; }
.galeria__thumb { aspect-ratio: 1; width: 100%; padding: 3px; border: 2px solid var(--linha); border-radius: var(--raio); background: #fff; transition: border-color .2s; }
.galeria__thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 3px; }
.galeria__thumb:hover { border-color: #b8bbc3; }
.galeria__thumb.is-ativo { border-color: var(--amarelo); }

.produto__info { display: grid; align-content: start; gap: 16px; }
.produto__titulo { font-size: clamp(22px, 2.6vw, 30px); letter-spacing: -.02em; }
.produto__linha { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; font-size: 13px; color: var(--texto-2); margin-top: -6px; }
.status { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.status--disponivel { color: var(--verde); }
.status--reservado { color: #8a6600; }
.status--vendido { color: var(--texto-3); }
.produto__resumo { color: var(--texto-2); font-size: 15px; }
.produto__precos { display: grid; gap: 14px; padding: 18px; border-radius: var(--raio); background: #fafafb; border: 1px solid var(--linha); }
.produto__nosso { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.produto__nosso span { font-size: 13px; font-weight: 600; color: var(--texto-2); }
.produto__nosso strong { font-size: clamp(30px, 3.4vw, 38px); font-weight: 700; color: var(--preco); letter-spacing: -.02em; font-variant-numeric: tabular-nums; line-height: 1; }
.produto__economia { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border-radius: var(--raio); background: var(--verde-claro); color: #0b5c3d; font-size: 13px; }
.produto__economia .ic { width: 18px; height: 18px; margin-top: 1px; }
.produto__fatos { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 18px; }
.produto__fatos li { display: flex; gap: 10px; font-size: 13px; color: var(--texto-2); }
.produto__fatos .ic { width: 20px; height: 20px; color: var(--texto); stroke-width: 1.7; margin-top: 1px; }
.produto__fatos strong { display: block; color: var(--texto); font-weight: 600; }
.produto__pagto { display: flex; gap: 18px; font-size: 13px; font-weight: 500; }
.produto__pagto span { display: inline-flex; align-items: center; gap: 6px; }
.produto__pagto .ic { width: 18px; height: 18px; }
.produto__acoes { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.produto__indisponivel { padding: 14px 16px; border-radius: var(--raio); background: var(--amarelo-claro); color: #5e4700; font-size: 14px; }
.produto__indisponivel strong { display: block; }
.produto__duvida { display: inline-flex; align-items: center; gap: 8px; justify-self: start; font-size: 14px; font-weight: 600; color: var(--whats); }
.produto__duvida:hover { color: #116a33; text-decoration: underline; text-underline-offset: 3px; }
.produto__duvida .ic { width: 18px; height: 18px; }
.produto__ref { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--texto-2); }
.produto__ref .ic { width: 16px; height: 16px; color: #9a7100; }

.detalhes { margin-top: 20px; }
.abas { display: flex; gap: 4px; padding: 0 clamp(12px, 2vw, 24px); border-bottom: 1px solid var(--linha); overflow-x: auto; }
.abas [role="tab"] { position: relative; border: 0; background: none; padding: 16px 14px; font-size: 15px; font-weight: 600; color: var(--texto-3); white-space: nowrap; }
.abas [role="tab"]::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: var(--amarelo); transform: scaleX(0); transition: transform .35s var(--ease); }
.abas [role="tab"]:hover { color: var(--texto); }
.abas [role="tab"][aria-selected="true"] { color: var(--texto); }
.abas [role="tab"][aria-selected="true"]::after { transform: scaleX(1); }
.detalhes__painel { padding: clamp(18px, 2.5vw, 28px); }
.texto-longo { max-width: 72ch; color: #33363d; }
.texto-longo p + p { margin-top: 12px; }
.detalhes__estado { margin-top: 22px; }
.detalhes__estado h3 { font-size: 15px; margin-bottom: 8px; }
.detalhes__vazio { color: var(--texto-3); padding: 8px 0; }
.specs { width: 100%; max-width: 760px; border-collapse: collapse; font-size: 14px; }
.specs th, .specs td { padding: 11px 14px; text-align: left; border-bottom: 1px solid var(--linha); vertical-align: top; }
.specs td { overflow-wrap: anywhere; } /* links longos das referências quebram; o rótulo (th) mantém as palavras inteiras */
@media (max-width: 560px) { .specs th, .specs td { padding: 10px; } }
.specs tr:nth-child(odd) { background: #fafafb; }
.specs th { width: 36%; font-weight: 500; color: var(--texto-2); }

/* ===== Lightbox ===== */
.lightbox { width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: rgb(14 15 18 / .96); color: #fff; overflow: hidden; }
.lightbox[open] { display: grid; grid-template-rows: auto 1fr auto; animation: lb-entra .35s var(--ease); }
.lightbox::backdrop { background: rgb(0 0 0 / .6); backdrop-filter: blur(4px); }
@keyframes lb-entra { from { opacity: 0; } }
.lightbox__topo { display: flex; align-items: center; gap: 16px; padding: 14px clamp(16px, 3vw, 28px); }
.lightbox__titulo { flex: 1; font-size: 14px; font-weight: 500; color: #d6d8de; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lightbox__contador { font-size: 14px; color: var(--amarelo); font-weight: 600; }
.lightbox__fechar { width: 42px; height: 42px; border-radius: 50%; border: 0; background: rgb(255 255 255 / .1); color: #fff; display: grid; place-items: center; transition: background .2s; }
.lightbox__fechar:hover { background: rgb(255 255 255 / .2); }
.lightbox__palco { position: relative; display: grid; place-items: center; min-height: 0; padding: 0 clamp(8px, 7vw, 90px); touch-action: pan-y; }
.lightbox__figura { grid-area: 1 / 1; margin: 0; display: grid; gap: 10px; justify-items: center; max-height: 100%; min-height: 0; }
.lightbox__figura img { max-width: 100%; max-height: calc(100dvh - 190px); object-fit: contain; border-radius: 4px; user-select: none; transition: transform .35s var(--ease); cursor: zoom-in; }
.lightbox__figura.is-zoom img { transform: scale(2); cursor: zoom-out; }
.lightbox__figura.is-ativo { animation: lb-foto .45s var(--ease); }
@keyframes lb-foto { from { opacity: 0; transform: scale(.97); } }
.lightbox__figura figcaption { font-size: 13px; color: #aeb1b9; }
.lightbox__seta { position: absolute; top: 50%; translate: 0 -50%; width: 50px; height: 50px; border-radius: 50%; border: 0; display: grid; place-items: center; background: rgb(27 28 33 / .78); color: #fff; box-shadow: 0 2px 10px rgb(0 0 0 / .35); transition: background .2s, color .2s; }
.lightbox__seta:hover { background: var(--amarelo); color: var(--grafite); }
.lightbox__seta .ic { width: 26px; height: 26px; }
.lightbox__seta--ant { left: clamp(8px, 2vw, 24px); }
.lightbox__seta--prox { right: clamp(8px, 2vw, 24px); }
.lightbox__thumbs { display: flex; justify-content: center; gap: 8px; padding: 14px 16px 18px; overflow-x: auto; }
.lightbox__thumbs button { flex: none; width: 64px; height: 64px; padding: 2px; border-radius: var(--raio); border: 2px solid transparent; background: none; opacity: .5; transition: opacity .2s, border-color .2s; }
.lightbox__thumbs button:hover { opacity: .85; }
.lightbox__thumbs button[aria-current="true"] { opacity: 1; border-color: var(--amarelo); }
.lightbox__thumbs img { width: 100%; height: 100%; object-fit: cover; border-radius: 3px; }
body.lb-aberto { overflow: hidden; }

/* ===== Sacola / checkout ===== */
.checkout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 20px; align-items: start; }
.checkout__principal { display: grid; gap: 16px; }
.checkout__bloco { padding: clamp(16px, 2.4vw, 24px); display: grid; gap: 16px; }
.checkout__titulo { font-size: 17px; font-weight: 600; }
.itens { display: grid; }
.item { display: grid; grid-template-columns: 72px 1fr auto auto; align-items: center; gap: 14px; padding: 12px 0; border-top: 1px solid var(--linha); }
.item:first-child { border-top: 0; padding-top: 0; }
.item__foto { width: 72px; height: 72px; border-radius: var(--raio); overflow: hidden; background: var(--fundo); }
.item__foto img { width: 100%; height: 100%; object-fit: cover; }
.item__info { min-width: 0; display: grid; gap: 4px; }
.item__nome { font-weight: 500; font-size: 14px; line-height: 1.35; }
.item__nome:hover { color: var(--preco); }
.item__meta { font-size: 12px; color: var(--texto-3); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.item__preco { font-size: 15px; color: var(--preco); }
.item__remover:hover { border-color: var(--preco); color: var(--preco); }
.campos { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.opcoes-pagto { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.opcao-pagto { position: relative; cursor: pointer; }
.opcao-pagto input { position: absolute; opacity: 0; inset: 0; }
.opcao-pagto__caixa { display: flex; align-items: center; gap: 12px; height: 100%; padding: 14px 16px; border: 2px solid var(--linha); border-radius: var(--raio); background: #fff; transition: border-color .2s, background .2s, box-shadow .2s; }
.opcao-pagto__caixa > .ic { width: 26px; height: 26px; stroke-width: 1.8; }
.opcao-pagto__caixa strong { display: block; font-size: 15px; }
.opcao-pagto__caixa small { display: block; font-size: 12px; color: var(--texto-3); }
.opcao-pagto__marca { margin-left: auto; width: 22px; height: 22px; border-radius: 50%; border: 2px solid var(--linha); display: grid; place-items: center; flex: none; }
.opcao-pagto__marca .ic { width: 14px; height: 14px; stroke-width: 3; opacity: 0; }
.opcao-pagto:hover .opcao-pagto__caixa { border-color: #c3c6cd; }
.opcao-pagto input:checked + .opcao-pagto__caixa { border-color: var(--grafite); background: #fffcf0; box-shadow: 0 0 0 3px rgb(255 199 0 / .45); }
.opcao-pagto input:checked + .opcao-pagto__caixa .opcao-pagto__marca { background: var(--amarelo); border-color: var(--amarelo); }
.opcao-pagto input:checked + .opcao-pagto__caixa .opcao-pagto__marca .ic { opacity: 1; }
.opcao-pagto input:focus-visible + .opcao-pagto__caixa { outline: 2px solid var(--grafite); outline-offset: 2px; }
.resumo { position: sticky; top: 16px; padding: 22px; display: grid; gap: 16px; }
.resumo__linhas { display: grid; gap: 8px; margin: 0; font-size: 14px; }
.resumo__linhas div { display: flex; justify-content: space-between; gap: 14px; }
.resumo__linhas dt { color: var(--texto-2); }
.resumo__linhas dd { margin: 0; text-align: right; font-weight: 500; }
.resumo__total { display: flex; justify-content: space-between; align-items: baseline; padding-top: 14px; border-top: 1px dashed #cfd2d8; }
.resumo__total span { font-weight: 600; }
.resumo__total strong { font-size: 26px; color: var(--preco); letter-spacing: -.02em; }
.resumo__nota { font-size: 12px; color: var(--texto-3); }

/* ===== Pedido recebido ===== */
.pedido-ok { max-width: 920px; margin: 28px auto 0; padding: clamp(20px, 3vw, 36px); display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.pedido-ok__proximo .btn { white-space: normal; text-align: center; line-height: 1.25; max-width: 100%; }
.pedido-ok__grade > * { min-width: 0; }
.pedido-ok__topo { display: flex; align-items: center; gap: 18px; }
.pedido-ok__topo h1 { font-size: clamp(22px, 2.8vw, 30px); letter-spacing: -.02em; }
.pedido-ok__topo p { color: var(--texto-2); }
.pedido-ok__check { flex: none; width: 60px; height: 60px; border-radius: 50%; background: var(--amarelo); display: grid; place-items: center; animation: check-pula .7s var(--ease) both; }
.pedido-ok__check .ic { width: 30px; height: 30px; stroke-width: 3; stroke-dasharray: 30; stroke-dashoffset: 30; animation: check-traca .5s .25s var(--ease) forwards; }
@keyframes check-pula { from { transform: scale(.4); opacity: 0; } }
@keyframes check-traca { to { stroke-dashoffset: 0; } }
.pedido-ok__proximo { display: grid; justify-items: start; gap: 14px; padding: 18px 20px; border-radius: var(--raio); background: var(--grafite); color: #fff; }
.pedido-ok__proximo p { color: #dfe1e6; }
.pedido-ok__grade { display: grid; grid-template-columns: 1.3fr 1fr; gap: 28px; }
.pedido-ok__resumo { display: grid; gap: 14px; align-content: start; }
.pedido-ok__voltar { border-top: 1px solid var(--linha); padding-top: 18px; }

/* ===== Indique ===== */
.indique-hero { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(20px, 4vw, 48px); align-items: center; margin-top: 24px; margin-bottom: 20px; padding: clamp(24px, 4.5vw, 56px); border-radius: var(--raio-lg); background: var(--grafite); color: #fff; position: relative; overflow: hidden; }
.indique-hero::before { content: ""; position: absolute; width: 420px; height: 420px; right: -120px; bottom: -220px; border-radius: 50%; border: 60px solid rgb(255 199 0 / .12); }
.indique-hero__texto { position: relative; display: grid; justify-items: start; gap: 18px; }
.indique-hero h1 { font-size: clamp(32px, 4.6vw, 56px); letter-spacing: -.03em; line-height: 1.05; }
.indique-hero h1 em { font-style: normal; color: var(--amarelo); }
.indique-hero__texto > p { color: var(--grafite-txt); max-width: 46ch; font-size: 16px; }
.indique-hero__taxas { display: flex; gap: 14px; flex-wrap: wrap; }
.indique-hero__taxas p { display: grid; padding: 14px 20px; border-radius: var(--raio); background: rgb(255 255 255 / .06); border: 1px solid rgb(255 255 255 / .1); }
.indique-hero__taxas strong { font-size: 40px; line-height: 1; color: var(--amarelo); font-weight: 700; }
.indique-hero__taxas span { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: #dfe1e6; margin-top: 6px; }
.indique-hero__taxas .ic { width: 16px; height: 16px; }
.calc { position: relative; color: var(--texto); padding: clamp(18px, 2.6vw, 28px); display: grid; gap: 16px; }
.calc__titulo { font-size: 18px; }
.calc__entrada { display: flex; align-items: center; border: 1.5px solid var(--linha); border-radius: var(--raio); padding-left: 14px; transition: border-color .2s, box-shadow .2s; }
.calc__entrada:focus-within { border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.calc__entrada span { font-weight: 600; color: var(--texto-2); }
.calc .calc__entrada input { border: 0; box-shadow: none; font-size: 22px; font-weight: 600; min-height: 52px; font-variant-numeric: tabular-nums; }
.calc__range { width: 100%; accent-color: var(--grafite); }
.calc__res { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0; }
.calc__res div { padding: 14px; border-radius: var(--raio); background: var(--fundo); }
.calc__res .calc__res--pix { background: var(--amarelo); }
.calc__res dt { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; }
.calc__res dt .ic { width: 16px; height: 16px; }
.calc__res dd { margin: 4px 0 0; font-size: 24px; font-weight: 700; letter-spacing: -.02em; }
.meu-link { margin-top: 20px; padding: 22px; display: grid; gap: 12px; }
.meu-link h2 { font-size: 17px; }
.meu-link__campo { display: flex; gap: 10px; }
.meu-link__campo input { flex: 1; min-width: 0; min-height: 44px; padding: 0 14px; border: 1.5px solid var(--linha); border-radius: var(--raio); background: var(--fundo); font-size: 14px; }

/* ===== Comissões ===== */
.totais { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 20px; }
.totais__item { display: grid; gap: 2px; padding: 18px 20px; border-radius: var(--raio-lg); background: #fff; box-shadow: var(--sombra); }
.totais__item span { font-size: 13px; font-weight: 600; color: var(--texto-2); }
.totais__item strong { font-size: 26px; letter-spacing: -.02em; }
.totais__item small { font-size: 12px; color: var(--texto-3); }
.totais__item--destaque { background: var(--grafite); color: #fff; }
.totais__item--destaque span, .totais__item--destaque small { color: var(--grafite-txt); }
.totais__item--destaque strong { color: var(--amarelo); }
.tabela-bloco { padding: clamp(16px, 2.4vw, 24px); display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; margin-bottom: 20px; }
.tabela-bloco__topo { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.tabela-rolagem { position: relative; overflow-x: auto; } /* relative: os rótulos .sr (absolutos) ficam presos aqui e não alargam a página */
.tabela { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 760px; }
.tabela th { text-align: left; font-size: 12px; font-weight: 600; color: var(--texto-2); text-transform: uppercase; letter-spacing: .04em; padding: 10px 12px; border-bottom: 2px solid var(--linha); white-space: nowrap; }
.tabela td { padding: 12px; border-bottom: 1px solid var(--linha); vertical-align: middle; }
.tabela tbody tr:hover { background: #fafafb; }
.tabela .dir { text-align: right; }
.tabela small { color: var(--texto-3); }
.tabela code { font-size: 12px; }
.tabela__inativo { opacity: .6; }
.tabela__link { display: inline-flex; align-items: center; gap: 6px; border: 1px dashed #c9ccd3; background: none; border-radius: 4px; padding: 3px 8px; color: var(--texto-2); }
.tabela__link:hover { border-color: var(--grafite); color: var(--texto); }
.tabela__link .ic { width: 14px; height: 14px; }
.tabela__link.is-copiado { border-color: var(--verde); color: var(--verde); }
.txt-preco { color: var(--preco); }

/* ===== Responsivo páginas ===== */
/* colunas únicas usam minmax(0, 1fr): com "1fr" um conteúdo largo (botão, paginação, tabela) alarga a trilha e a página rola para o lado */
@media (max-width: 1080px) {
  .oferta { grid-template-columns: minmax(0, 1fr); }
  .oferta__destaque::after { height: 40px; }
  .colunas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .colunas > :last-child { display: none; }
  .checkout { grid-template-columns: minmax(0, 1fr) 320px; }
}
@media (max-width: 860px) {
  .hero { min-height: 0; }
  .hero__deco rect { display: none; }
  .hero__slide { grid-template-columns: minmax(0, 1fr); grid-template-rows: 230px auto; }
  .hero__foto { grid-row: 1; }
  .hero__foto img { top: 14px; bottom: 36px; left: 14px; right: 14px; width: calc(100% - 28px); height: calc(100% - 50px); padding: 12px; }
  .hero__texto { padding: 0 22px 58px; margin-top: -30px; gap: 10px; }
  .hero__seta { top: 115px; width: 38px; height: 38px; }
  .hero__seta--ant { left: 10px; }
  .hero__seta--prox { right: 10px; }
  .faixa-cats__seta { display: none; }
  .faixa-cats__trilho { grid-auto-columns: 132px; }
  .oferta__itens { grid-template-columns: minmax(0, 1fr); }
  .faixa-indique { flex-wrap: wrap; padding: 0 16px 16px 0; gap: 10px 16px; }
  .faixa-indique__rotulo { padding-block: 10px; }
  .faixa-indique__txt { flex-basis: 100%; padding: 0 0 0 16px; order: 3; }
  .faixa-indique .btn { order: 4; margin-left: 16px; }
  .colunas { grid-template-columns: minmax(0, 1fr); }
  .colunas > :last-child { display: flex; }
  .passos__lista { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .passos__lista li { border-left: 0; padding: 0; }
  .catalogo { grid-template-columns: minmax(0, 1fr); }
  .filtros { position: static; }
  .produto { grid-template-columns: minmax(0, 1fr); }
  .checkout { grid-template-columns: minmax(0, 1fr); }
  .resumo { position: static; }
  .pedido-ok__grade { grid-template-columns: minmax(0, 1fr); }
  .indique-hero { grid-template-columns: minmax(0, 1fr); }
  .totais { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .grade--catalogo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hero__slide { grid-template-rows: 200px auto; }
  .hero__seta { top: 100px; }
  .hero__ref { display: none; }
  .oferta { padding: 14px; gap: 16px; }
  .oferta-item { grid-template-columns: 108px minmax(0, 1fr); gap: 12px; }
  .regua__linha { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .campos, .opcoes-pagto, .produto__fatos, .produto__acoes, .calc__res { grid-template-columns: minmax(0, 1fr); }
  .item { grid-template-columns: 60px minmax(0, 1fr) auto; gap: 10px; }
  .item__foto { width: 60px; height: 60px; }
  .item__preco { grid-column: 2; grid-row: 2; font-size: 14px; }
  .item__remover { grid-column: 3; grid-row: 1 / 3; }
  .coluna__corpo { grid-template-columns: minmax(0, 1fr) 56px; }
  .coluna__thumb { width: 56px; height: 56px; }
  .meu-link__campo { flex-direction: column; }
  .opcao-pagto__caixa small { font-size: 12px; }
  .lightbox__palco { padding-bottom: 66px; }
  .lightbox__figura img { max-height: calc(100dvh - 260px); }
  .lightbox__seta { top: auto; bottom: 8px; translate: 0 0; width: 46px; height: 46px; }
  .lightbox__seta--ant { left: calc(50% - 58px); }
  .lightbox__seta--prox { right: calc(50% - 58px); }
}
@media (max-width: 400px) {
  .oferta-item { grid-template-columns: 84px minmax(0, 1fr); }
}
.opcoes-pagto { border: 0; margin: 0; padding: 0; min-width: 0; }

/* ===== Fotos ilustrativas (produto sobre fundo branco): nunca recortar ===== */
.card__foto, .coluna__foto, .oferta-item__foto, .galeria__palco, .item__foto, .cat-tile__img { background: #fff; }
.card__foto img, .coluna__foto img, .oferta-item__foto img, .item__foto img { object-fit: contain; padding: 8%; }
.galeria__principal img { object-fit: contain; padding: 6%; }
.galeria__palco { border: 1px solid var(--linha); }
.cat-tile__img { border: 1px solid var(--linha); }
.cat-tile__img img { object-fit: contain; padding: 12%; }
.galeria__thumb img, .coluna__thumb img, .lightbox__thumbs img { object-fit: contain; background: #fff; }
.card__foto::after, .coluna__foto::after, .oferta-item__foto::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 -1px 0 var(--linha); pointer-events: none; }
.coluna__foto, .oferta-item__foto { position: relative; }
.card:hover .card__foto img { transform: scale(1.03); }

/* ===== Estoque e quantidade ===== */
.estoque { font-size: 12px; font-weight: 500; color: var(--verde); }
.estoque--ultima { color: #8a6600; }
.card__sem-foto { position: absolute; inset: 0; display: grid; place-items: center; color: #b3b6bd; }
.card__sem-foto .ic { width: 44px; height: 44px; stroke-width: 1.4; }
.qtd { display: flex; align-items: center; gap: 8px; }
.qtd__campo { width: 64px; min-height: 38px; padding: 0 8px; border: 1.5px solid var(--linha); border-radius: var(--raio); background: #fff; font-size: 15px; font-weight: 600; text-align: center; font-variant-numeric: tabular-nums; }
.qtd__campo:focus { outline: none; border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.qtd__max { font-size: 12px; color: var(--texto-3); white-space: nowrap; }
.item--qtd { grid-template-columns: 72px minmax(0, 1fr) auto auto auto; }
.qtd--produto { grid-column: 1 / -1; flex-wrap: wrap; gap: 8px 12px; }
.qtd--produto label { font-size: 13px; font-weight: 600; }
.qtd__stepper { display: inline-flex; border: 1.5px solid var(--linha); border-radius: var(--raio); overflow: hidden; background: #fff; }
.qtd__stepper:focus-within { border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.qtd__stepper .qtd__campo { border: 0; border-radius: 0; box-shadow: none; min-height: 42px; }
.qtd__passo { width: 42px; border: 0; background: var(--fundo); font-size: 20px; line-height: 1; color: var(--texto); transition: background .2s; }
.qtd__passo:hover { background: var(--amarelo); }
.produto__na-sacola { grid-column: 1 / -1; white-space: normal; text-align: center; }
@media (max-width: 560px) {
  .item--qtd { grid-template-columns: 60px minmax(0, 1fr) auto; }
  .item--qtd .qtd { grid-column: 2; grid-row: 2; }
  .item--qtd .item__preco { grid-column: 2; grid-row: 3; }
  .item--qtd .item__remover { grid-column: 3; grid-row: 1 / 4; }
}

/* ---------- Chat do pedido ---------- */
.chat { padding: clamp(18px, 3vw, 28px); display: grid; gap: 14px; scroll-margin-top: 16px; }
.chat__topo { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.chat__topo .checkout__titulo { display: flex; align-items: center; gap: 8px; margin: 0; }
.chat__estado { font-size: 12px; color: var(--texto-3); min-height: 1em; }
.chat__lista { list-style: none; margin: 0; padding: 14px; display: grid; gap: 10px; max-height: 420px; overflow-y: auto; background: var(--fundo); border-radius: var(--raio-lg); scroll-behavior: smooth; }
.chat__msg { max-width: min(78%, 560px); padding: 10px 14px; border-radius: 14px; background: #fff; box-shadow: var(--sombra); display: grid; gap: 2px; animation: aviso-entra .4s var(--ease); }
.chat__msg--eu { justify-self: end; background: var(--amarelo-claro); border-bottom-right-radius: 4px; }
.chat__msg--outro { justify-self: start; border-bottom-left-radius: 4px; }
.chat__autor { font-size: 12px; font-weight: 600; color: var(--texto-2); }
.chat__texto { margin: 0; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.chat__hora { font-size: 11px; color: var(--texto-3); justify-self: end; }
.chat__vazio { color: var(--texto-3); font-size: 14px; text-align: center; padding: 18px 8px; }
.chat__form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.chat__form textarea { width: 100%; min-height: 48px; padding: 10px 12px; border: 1.5px solid var(--linha); border-radius: var(--raio); font: inherit; font-size: 14px; resize: vertical; }
.chat__form textarea:focus { outline: none; border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.chat__form .btn { min-height: 48px; }
@media (max-width: 480px) { .chat__form { grid-template-columns: 1fr; } .chat__msg { max-width: 92%; } }

/* ---------- Acompanhar pedido ---------- */
.acompanhar { max-width: 520px; }
.acompanhar__form { display: grid; gap: 16px; }

/* ---------- Painel de solicitações ---------- */
.totais a.totais__item { color: inherit; text-decoration: none; transition: transform .2s var(--ease), box-shadow .2s; }
.totais a.totais__item:hover { transform: translateY(-2px); box-shadow: var(--sombra-alta); }
.filtro { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.filtro__q { min-height: 34px; padding: 0 12px; border: 1.5px solid var(--linha); border-radius: var(--raio); font: inherit; font-size: 13px; min-width: 220px; }
.filtro__q:focus { outline: none; border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.tabela__nova td { background: var(--amarelo-claro); }
.pill { display: inline-block; padding: 2px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; background: var(--fundo); color: var(--texto-2); white-space: nowrap; }
.pill--novo { background: var(--amarelo-claro); color: #6b5100; }
.pill--pago { background: var(--verde-claro); color: var(--verde); }
.pill--entregue { background: #e6eefc; color: #1e4fa3; }
.pill--cancelado { background: #fde8e7; color: #9d1a14; }
.paginacao { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px; padding: 16px; font-size: 13px; color: var(--texto-3); }
.solicitacao { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; align-items: start; margin-top: 8px; }
.solicitacao > * { min-width: 0; }
.solicitacao__dados { padding: clamp(18px, 3vw, 28px); display: grid; gap: 18px; }
.solicitacao__acoes { display: flex; gap: 8px; flex-wrap: wrap; }
.solicitacao__acoes form { display: contents; }
.topbar__badge { display: inline-grid; place-items: center; min-width: 18px; height: 18px; padding: 0 5px; margin-left: 4px; border-radius: 999px; background: var(--amarelo); color: var(--grafite); font-size: 11px; font-weight: 700; line-height: 1; }
@media (max-width: 860px) {
  .solicitacao { grid-template-columns: minmax(0, 1fr); }
  /* as situações só têm rótulo e número: cabem em duas colunas e a lista aparece sem rolar tanto */
  .totais:has(> a.totais__item) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .totais a.totais__item { padding: 12px 14px; }
}
@media (max-width: 640px) {
  .filtro { flex: 1 1 100%; min-width: 0; }
  /* max-width em % zera a largura mínima de campos: um <select> não mede mais pela opção mais longa */
  .filtro > * { flex: 1 1 140px; min-width: 0; max-width: 100%; }
  .filtro > input.filtro__q { flex-basis: 100%; }
  .filtro > .btn { flex: 0 0 auto; }
}


/* ---------- Conta: entrar, cadastro, menu do usuário ---------- */
.cabecalho__acoes { display: flex; align-items: center; gap: 10px; justify-self: end; }
.conta { position: relative; }
.conta__btn { border: 0; font: inherit; cursor: pointer; }
.conta__menu { position: absolute; right: 0; top: calc(100% + 8px); z-index: 30; min-width: 200px; margin: 0; padding: 6px; list-style: none; background: #fff; border-radius: var(--raio-lg); box-shadow: var(--sombra-alta); }
.conta__menu a, .conta__menu button { display: flex; align-items: center; gap: 8px; width: 100%; padding: 9px 12px; border: 0; background: none; border-radius: var(--raio); font: inherit; font-size: 14px; color: var(--texto); text-align: left; cursor: pointer; }
.conta__menu a:hover, .conta__menu button:hover { background: var(--amarelo-claro); }
.conta__menu form { margin: 0; }
.conta__menu li + li:last-child { border-top: 1px solid var(--linha); margin-top: 4px; padding-top: 4px; }
.auth { max-width: 460px; margin: 28px auto 0; padding: clamp(20px, 3vw, 36px); display: grid; gap: 18px; }
.auth h1 { font-size: clamp(22px, 3vw, 28px); letter-spacing: -.02em; }
.auth__form { display: grid; gap: 14px; }
.auth__form .campo input { width: 100%; min-height: 44px; padding: 0 12px; border: 1.5px solid var(--linha); border-radius: var(--raio); font: inherit; font-size: 15px; }
.auth__form .campo input:focus { outline: none; border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.auth__form .campo--erro input { border-color: var(--preco); }
.auth__troca { font-size: 14px; color: var(--texto-2); text-align: center; }
.auth__troca a { font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.auth__equipe { font-size: 13px; color: var(--texto-3); text-align: center; }
.pedidos-lista { display: grid; gap: 12px; }
.pedido-card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px 18px; align-items: center; padding: 16px 18px; }
.pedido-card__cod { font-weight: 700; font-variant-numeric: tabular-nums; }
.pedido-card__itens { margin: 2px 0 0; font-size: 13px; color: var(--texto-2); }
.pedido-card__dir { display: grid; gap: 6px; justify-items: end; text-align: right; }
@media (max-width: 640px) {
  .cabecalho__acoes { gap: 6px; position: relative; }
  /* menus do chat e da conta se alinham à borda direita do grupo de botões e nunca saem da tela */
  .cabecalho__acoes .conta { position: static; }
  .cabecalho__acoes .conta__menu { width: min(320px, calc(100vw - 2 * var(--gutter))); min-width: 0; max-width: none; }
  .pedido-card { grid-template-columns: minmax(0, 1fr); }
  .pedido-card__dir { justify-items: start; text-align: left; }
}


/* ---------- Painel de controle ---------- */
.painel-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 24px; align-items: start; padding-block: 20px 32px; }
.painel-nav { position: sticky; top: 16px; background: var(--grafite); color: #fff; border-radius: var(--raio-lg); padding: 12px; display: grid; gap: 2px; }
.painel-nav__titulo { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--grafite-txt); padding: 10px 12px 4px; }
.painel-nav a { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: var(--raio); color: #e9eaee; font-size: 14px; font-weight: 500; }
.painel-nav a:hover { background: var(--grafite-3); color: #fff; }
.painel-nav a[aria-current] { background: var(--amarelo); color: var(--grafite); font-weight: 600; }
.painel-nav a .topbar__badge { margin-left: auto; }
.painel-nav .ic { width: 18px; height: 18px; flex: none; }
.painel-main { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.painel-main .cabeca-pagina { margin-bottom: 0; }
.painel-main .totais { margin-bottom: 0; }
.cabeca-pagina__acoes { margin-left: auto; display: flex; gap: 8px; flex-wrap: wrap; }
.kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 14px; }
.kpi { display: grid; gap: 2px; padding: 16px 18px; border-radius: var(--raio-lg); background: #fff; box-shadow: var(--sombra); color: inherit; }
.kpi span { font-size: 12px; font-weight: 600; color: var(--texto-2); text-transform: uppercase; letter-spacing: .04em; }
.kpi strong { font-size: 24px; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.kpi small { font-size: 12px; color: var(--texto-3); }
.kpi--alerta { border-left: 4px solid var(--preco); }
.kpi--ok { border-left: 4px solid var(--verde); }
.kpi--destaque { background: var(--grafite); color: #fff; }
.kpi--destaque span, .kpi--destaque small { color: var(--grafite-txt); }
.kpi--destaque strong { color: var(--amarelo); }
a.kpi:hover { box-shadow: var(--sombra-alta); }
.grade-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.grade-2 > * { min-width: 0; margin-bottom: 0; }
.barras { display: grid; gap: 8px; }
.barras__linha { display: grid; grid-template-columns: minmax(80px, 160px) minmax(0, 1fr) auto; gap: 10px; align-items: center; font-size: 13px; }
.barras__rotulo { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.barras__barra { height: 12px; border-radius: 99px; background: var(--fundo); overflow: hidden; }
.barras__barra i { display: block; height: 100%; width: var(--w, 0%); background: var(--amarelo); border-radius: 99px; }
.barras__barra--verde i { background: var(--verde); }
.barras__valor { font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.dias { display: flex; align-items: flex-end; gap: 4px; height: 140px; padding-top: 8px; }
.dias__dia { flex: 1; display: grid; align-content: end; gap: 4px; height: 100%; text-align: center; }
.dias__barra { display: block; align-self: end; width: 100%; height: var(--h, 0%); min-height: 2px; background: var(--amarelo); border-radius: 4px 4px 0 0; }
.dias__dia small { font-size: 10px; color: var(--texto-3); }
.dias__dia:hover .dias__barra { background: var(--amarelo-2); }
.estoque-num { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-variant-numeric: tabular-nums; }
.estoque-num--zero { color: var(--preco); }
.estoque-num--baixo { color: #8a6600; }
.tabela__acoes { display: flex; gap: 6px; flex-wrap: nowrap; }
.tabela__acoes form { display: contents; }
.tabela__foto { width: 44px; height: 44px; object-fit: cover; border-radius: 6px; background: var(--fundo); display: block; }
.tabela__nao-publicado td { opacity: .6; }
.form-painel { padding: clamp(18px, 3vw, 28px); display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
.form-painel fieldset { border: 0; margin: 0; padding: 0; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.form-painel > form { grid-template-columns: minmax(0, 1fr); }
.form-painel legend { font-size: 15px; font-weight: 700; margin-bottom: 8px; padding: 0; }
.form-painel .campos { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px; }
.form-painel input[type="file"] { max-width: 100%; overflow: hidden; }
.form-painel .campo--largo { grid-column: 1 / -1; }
.form-painel .campo input:not([type="checkbox"]):not([type="file"]), .form-painel .campo select, .form-painel .campo textarea { width: 100%; min-height: 42px; padding: 8px 12px; border: 1.5px solid var(--linha); border-radius: var(--raio); font: inherit; font-size: 14px; background: #fff; }
.form-painel .campo textarea { min-height: 80px; resize: vertical; }
.form-painel .campo input:focus, .form-painel .campo select:focus, .form-painel .campo textarea:focus { outline: none; border-color: var(--grafite); box-shadow: 0 0 0 3px rgb(255 199 0 / .55); }
.form-painel .campo input[disabled] { background: var(--fundo); color: var(--texto-2); }
.form-painel .campo--check { display: flex; align-items: center; gap: 8px; }
.form-painel .campo--check input { width: 18px; height: 18px; accent-color: var(--grafite); }
.form-painel .campo--check label { font-weight: 500; }
.form-painel__acoes { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--linha); padding-top: 18px; }
.form-painel__acoes .btn--perigo { margin-left: auto; }
.btn--perigo { background: #fde8e7; color: #9d1a14; }
.btn--perigo:hover { background: var(--preco); color: #fff; }
.spec-linhas { display: grid; gap: 8px; }
.spec-linha { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) 70px auto; gap: 8px; align-items: center; }
.spec-linha input { min-height: 40px !important; }
.spec-linha input:not([type="checkbox"]) { width: 100%; min-width: 0; }
.spec-linha .campo--check { justify-content: center; }
.fotos-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 12px; }
.foto-card { display: grid; gap: 6px; }
.foto-card img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--raio); box-shadow: var(--sombra); }
.foto-card small { font-size: 11px; color: var(--texto-3); }
.foto-card .btn { justify-self: start; }
.ajuste-form { display: grid; gap: 12px; }
.ajuste-form .radios { display: flex; gap: 12px; flex-wrap: wrap; }
.ajuste-form .radios label { display: flex; align-items: center; gap: 6px; font-size: 14px; }
.ajuste-form input[type="number"], .ajuste-form input[type="text"] { min-height: 40px; padding: 0 10px; border: 1.5px solid var(--linha); border-radius: var(--raio); font: inherit; width: 100%; }
.mov-qtd { font-weight: 700; font-variant-numeric: tabular-nums; }
.mov-qtd--pos { color: var(--verde); }
.mov-qtd--neg { color: var(--preco); }
.aviso-bloco { padding: 14px 16px; border-radius: var(--raio-lg); background: var(--amarelo-claro); color: #6b5100; font-size: 14px; }
.aviso-bloco--perigo { background: #fde8e7; color: #9d1a14; }
@media (max-width: 900px) {
  .painel-layout { grid-template-columns: minmax(0, 1fr); }
  /* o menu lateral vira uma faixa que rola para o lado, sem os títulos de grupo, e o conteúdo aparece logo */
  .painel-nav { position: static; display: flex; gap: 4px; padding: 8px; overflow-x: auto; scrollbar-width: none; }
  .painel-nav::-webkit-scrollbar { display: none; }
  .painel-nav__titulo { display: none; }
  .painel-nav a { flex: none; white-space: nowrap; }
  .grade-2 { grid-template-columns: minmax(0, 1fr); }
  .spec-linha { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


/* ---------- Sino de notificações do chat ---------- */
.sino__menu { min-width: 300px; max-width: min(360px, 90vw); }
.sino__vazio { padding: 10px 12px; font-size: 13px; color: var(--texto-3); }
.sino__item { display: grid; gap: 2px; padding: 9px 12px; border-radius: var(--raio); text-decoration: none; color: var(--texto); }
.sino__item:hover { background: var(--amarelo-claro); }
.sino__item strong { font-size: 13px; }
.sino__item span { font-size: 12px; color: var(--texto-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sino__item small { font-size: 11px; color: var(--texto-3); }
.sino__pisca .sacola-btn__ic { animation: sino-pisca 1s ease 3; }
@keyframes sino-pisca { 0%, 100% { transform: none; } 30% { transform: rotate(-12deg) scale(1.15); } 60% { transform: rotate(12deg) scale(1.15); } }
.toast { position: fixed; right: 16px; bottom: 16px; z-index: 200; display: grid; gap: 8px; max-width: min(360px, calc(100vw - 32px)); }
.toast__item { display: grid; gap: 2px; padding: 12px 14px; border-radius: var(--raio-lg); background: var(--grafite); color: #fff; box-shadow: var(--sombra-alta); text-decoration: none; animation: aviso-entra .4s var(--ease); }
.toast__item strong { color: var(--amarelo); font-size: 13px; }
.toast__item span { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.toast__item:hover { background: var(--grafite-2); color: #fff; }

/* ---------- Compartilhar anúncio ---------- */
.compartilhar { display: grid; gap: 8px; padding: 14px 16px; border-radius: var(--raio-lg); background: var(--fundo); }
.compartilhar__rotulo { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; }
.compartilhar__rotulo small { font-weight: 500; color: var(--texto-3); }
.compartilhar__botoes { display: flex; gap: 8px; flex-wrap: wrap; }
.compartilhar__botoes .btn.is-copiado { background: var(--verde-claro); color: var(--verde); border-color: var(--verde); }


/* ---------- Etapas do pedido ---------- */
.etapas { display: grid; gap: 12px; padding: 16px 18px; border-radius: var(--raio-lg); background: var(--fundo); }
.etapas__topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.etapas__topo .checkout__titulo { margin: 0; }
.etapas__barra { list-style: none; margin: 4px 0 0; padding: 0; display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; position: relative; }
.etapas__barra::before { content: ""; position: absolute; left: calc(100% / 12); right: calc(100% / 12); top: 14px; height: 3px; background: var(--linha); z-index: 0; }
.etapas__item { position: relative; z-index: 1; display: grid; justify-items: center; gap: 6px; text-align: center; font-size: 11px; line-height: 1.2; color: var(--texto-3); }
.etapas__ponto { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 2px solid var(--linha); font-weight: 700; font-size: 12px; }
.etapas__ponto .ic { width: 16px; height: 16px; }
.etapas__item--concluida .etapas__ponto { background: var(--verde); border-color: var(--verde); color: #fff; }
.etapas__item--concluida { color: var(--texto-2); }
.etapas__item--atual .etapas__ponto { background: var(--amarelo); border-color: var(--amarelo); color: var(--grafite); box-shadow: 0 0 0 4px rgb(255 199 0 / .35); }
.etapas__item--atual { color: var(--texto); font-weight: 600; }
.etapas__descricao { margin: 0; font-size: 14px; color: var(--texto-2); }
.etapas__historico summary { cursor: pointer; font-size: 13px; font-weight: 600; }
.etapas__historico ul { list-style: none; margin: 8px 0 0; padding: 0 0 0 10px; border-left: 2px solid var(--linha); display: grid; gap: 6px; font-size: 13px; }
.etapas__historico time { color: var(--texto-3); font-variant-numeric: tabular-nums; margin-right: 6px; }
.etapas__historico small { color: var(--texto-3); }
.etapas__form { display: grid; gap: 12px; padding-top: 6px; }
.etapas__opcoes { display: flex; flex-wrap: wrap; gap: 8px; }
.etapas__opcao { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border: 1.5px solid var(--linha); border-radius: 999px; font-size: 13px; font-weight: 500; cursor: pointer; background: #fff; }
.etapas__opcao:has(input:checked) { border-color: var(--grafite); background: var(--amarelo-claro); }
.etapas__opcao--cancelar { color: #9d1a14; }
.etapas__opcao--cancelar:has(input:checked) { background: #fde8e7; border-color: var(--preco); }
.etapas__form textarea { width: 100%; min-height: 56px; padding: 8px 12px; border: 1.5px solid var(--linha); border-radius: var(--raio); font: inherit; font-size: 14px; }
.pill--negociacao { background: #e6eefc; color: #1e4fa3; }
.pill--aguardando { background: var(--amarelo-claro); color: #6b5100; }
.pill--pronto { background: #e3f4ec; color: #0f7b52; }
@media (max-width: 640px) { .etapas__barra { grid-template-columns: repeat(3, 1fr); row-gap: 14px; } .etapas__barra::before { display: none; } }

/* ---------- Tabela de estoque compacta (cabe no painel sem rolagem) ---------- */
.tabela--estoque { min-width: 0; table-layout: auto; }
.tabela--estoque th { white-space: normal; padding: 10px 8px; }
.tabela--estoque td { padding: 10px 8px; }
.tabela .nowrap { white-space: nowrap; }
.produto-cel { display: flex; align-items: center; gap: 10px; min-width: 200px; }
.produto-cel .tabela__foto { flex: none; }
.produto-cel__txt { display: grid; gap: 2px; min-width: 0; }
.produto-cel__txt small { color: var(--texto-3); font-size: 12px; }
.tabela--estoque .qtd__campo { width: 52px; min-height: 34px; }
.tabela--estoque .tabela__acoes { gap: 4px; }
@media (max-width: 1100px) { .tabela--estoque .status { font-size: 12px; } }

/* ---------- Tabelas do painel no celular: cada linha vira um cartão (rótulo à esquerda, valor à direita) ----------
   Cada <td> leva data-rotulo; .tabela__principal abre o cartão sem rótulo e .tabela__bloco põe o rótulo em cima. */
@media (max-width: 640px) {
  .tabela--cartoes { min-width: 0; }
  .tabela--cartoes thead { display: none; }
  .tabela--cartoes, .tabela--cartoes tbody, .tabela--cartoes tr { display: block; }
  .tabela--cartoes tr { padding: 12px 0; border-bottom: 1px solid var(--linha); }
  .tabela--cartoes tbody tr:hover { background: none; }
  .tabela--cartoes td { display: flow-root; padding: 3px 0; border: 0; text-align: right; }
  .tabela--cartoes td[data-rotulo]::before { content: attr(data-rotulo); float: left; margin-right: 12px; font-size: 12px; font-weight: 600; line-height: 22px; color: var(--texto-2); text-transform: uppercase; letter-spacing: .04em; }
  .tabela--cartoes td.tabela__principal { text-align: left; padding-bottom: 8px; }
  .tabela--cartoes td.tabela__bloco { text-align: left; }
  .tabela--cartoes td.tabela__bloco::before { float: none; display: block; }
  .tabela--cartoes .tabela__acoes { justify-content: flex-end; }
  .tabela--cartoes .tabela__nova { padding-inline: 10px; border-radius: var(--raio); background: var(--amarelo-claro); }
  .tabela--cartoes .tabela__nova td { background: none; }
}

/* ---------- Aprovar / desaprovar venda (equipe) ---------- */
.aprovacao { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 12px 0; padding: 12px 16px; border-radius: var(--raio-lg); background: var(--verde-claro); color: var(--verde); font-size: 14px; }
.aprovacao--inativo { background: #e9eaee; color: var(--texto-2); }
.aprovacao__txt { display: flex; align-items: center; gap: 6px; flex: 1; min-width: 240px; }
.aprovacao form { margin: 0; }
.produto--inativo { filter: grayscale(1); opacity: .75; }
.card--inativo { filter: grayscale(1); opacity: .65; }
.card__status--inativo { background: var(--grafite); color: #fff; }

/* ===== Privacidade (LGPD): coluna de leitura larga, rótulos em coluna fixa ===== */
.privacidade { display: grid; gap: 18px; padding-block: 28px 36px; }
.privacidade .cabeca-pagina { margin-bottom: 2px; }
.privacidade .painel { padding: clamp(20px, 3vw, 30px); }
.privacidade h2 { font-size: 18px; font-weight: 600; margin-bottom: 12px; }
.privacidade p { color: #33363d; line-height: 1.65; }
.privacidade p + p, .privacidade dl + p { margin-top: 12px; }
.privacidade__itens { display: grid; margin: 0; }
.privacidade__itens div { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 2px 20px; align-items: start; padding: 10px 0; border-top: 1px solid var(--linha); }
.privacidade__itens div:first-child { border-top: 0; padding-top: 0; }
.privacidade__itens dt { font-weight: 600; color: var(--texto); }
.privacidade__itens dd { margin: 0; color: #33363d; line-height: 1.65; }
.privacidade__data { margin-top: 14px; font-size: 12px; color: var(--texto-3); }
@media (max-width: 640px) { .privacidade__itens div { grid-template-columns: 1fr; } }
