/* =====================================================================
   CORES DA LOJA — são as únicas cores que o admin precisa trocar.
   Todo o resto do tema usa cinzas neutros ou tons calculados a partir
   destas variáveis, para funcionar bem com qualquer combinação.
   ===================================================================== */
:root{
  --primary:#245F6B;          /* cor principal da marca */
  --primary-dark:#245F6B;     /* variação escura (hover) */
  --text:#245F6B;             /* títulos e destaques de texto */
  --btnPrimary:#E07A2D;       /* botões e ações */
  --btnPrimaryText:#FFFFFF;   /* texto dos botões */
  --headerBg:#F9F8F5;         /* fundo do cabeçalho */
  --headerText:#245F6B;       /* texto e ícones do cabeçalho */
  --topbarBg:#245F6B;         /* fundo da barra de aviso */
  --topbarText:#FFFFFF;       /* texto da barra de aviso */
}

/* ===== Base neutra do tema (não depende da marca) ===== */
:root{
  --branco:#FFFFFF;
  --cinza-50:#F6F7F8;
  --cinza-100:#EEF0F2;
  --cinza-200:#E2E5E9;
  --cinza-400:#9AA1AB;
  --cinza-600:#5B6370;
  --cinza-800:#2B313A;
  --cinza-900:#15191F;
  --verde:#15803D;      /* frete grátis e desconto */
  --verde-fundo:#E6F4EA;
  --vermelho:#C2410C;   /* destaque "Ofertas" */

  /* tons derivados da marca (ficam suaves com qualquer cor) */
  --primary-suave:color-mix(in srgb, var(--primary) 6%, var(--cinza-50));
  --primary-borda:color-mix(in srgb, var(--primary) 35%, var(--branco));
  --header-campo:color-mix(in srgb, var(--headerText) 7%, var(--headerBg));
  --header-borda:color-mix(in srgb, var(--headerText) 12%, var(--headerBg));

  --fonte:'Geist', system-ui, -apple-system, sans-serif;
  --raio:10px;
  --largura:1440px;
  --sombra:0 1px 3px rgba(15,23,42,.08);
  --sombra-hover:0 10px 24px rgba(15,23,42,.12);
}

*{box-sizing:border-box}
body{margin:0;font-family:var(--fonte);color:var(--cinza-800);background:var(--branco);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit;color:inherit}
.container{max-width:var(--largura);margin:0 auto;padding-left:32px;padding-right:32px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.icon-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:inherit;cursor:pointer;position:relative}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border-radius:999px;border:0;background:var(--btnPrimary);color:var(--btnPrimaryText);font-weight:600;font-size:15px;cursor:pointer}
.btn:hover{filter:brightness(.93)}

/* ===== Barra de aviso ===== */
.aviso{background:var(--topbarBg);color:var(--topbarText);text-align:center;font-size:16px;font-weight:600;letter-spacing:.01em;padding:13px 16px;line-height:1.4}

/* ===== Cabeçalho ===== */
.header{background:var(--headerBg);color:var(--headerText);border-bottom:1px solid var(--header-borda);position:sticky;top:0;z-index:50}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:12px 32px;min-height:80px}
.esq{display:none;align-items:center;margin-left:-10px}
.logo img{height:var(--logo-h,46px);width:auto}
.nav{display:flex;gap:28px;font-size:15px;font-weight:500}
.nav a{opacity:.9}
.nav a:hover{opacity:1;color:var(--btnPrimary)}
.acoes{display:flex;align-items:center;gap:8px}
.busca{display:flex;align-items:center;gap:10px;background:var(--header-campo);border-radius:999px;padding:0 18px;min-height:46px}
.busca input{border:0;background:none;font:inherit;font-size:16px;width:170px;min-width:0;color:inherit;outline:none}
.busca input::placeholder{color:inherit;opacity:.6}
.icones{display:flex;align-items:center}
.contador{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--btnPrimary);color:var(--btnPrimaryText);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
/* Cabeçalho compacto ao rolar a página */
.header{transition:box-shadow .6s ease}
.header-row{transition:min-height .6s cubic-bezier(.4,0,.2,1),padding .6s cubic-bezier(.4,0,.2,1)}
.logo img{transition:height .6s cubic-bezier(.4,0,.2,1)}
.busca{transition:min-height .6s cubic-bezier(.4,0,.2,1)}
.header.compacto{box-shadow:0 6px 20px rgba(15,23,42,.10);border-bottom-color:transparent}
.header.compacto .header-row{min-height:52px}
.header.compacto .logo img{height:calc(var(--logo-h,46px) * .65)}
.header.compacto .busca{min-height:38px}
/* ===== Menu lateral (celular) ===== */
.gaveta-fundo{position:fixed;inset:0;z-index:150;background:rgba(15,23,42,.45);opacity:0;pointer-events:none;transition:opacity .35s ease}
.gaveta{position:fixed;top:0;bottom:0;left:0;z-index:160;width:min(86vw,360px);display:flex;flex-direction:column;background:var(--branco);box-shadow:8px 0 32px rgba(0,0,0,.18);transform:translateX(-102%);transition:transform .38s cubic-bezier(.4,0,.2,1);visibility:hidden}
body.menu-aberto .gaveta-fundo{opacity:1;pointer-events:auto}
body.menu-aberto .gaveta{transform:none;visibility:visible}
body.menu-aberto{overflow:hidden}
.gaveta-topo{display:flex;align-items:center;justify-content:space-between;padding:12px 8px 12px 16px;background:var(--headerBg);color:var(--headerText);border-bottom:1px solid var(--header-borda)}
.gaveta-topo img{height:34px;width:auto}
.gaveta-conta{display:flex;align-items:center;gap:12px;margin:16px;padding:14px;border-radius:12px;background:var(--primary-suave);color:var(--cinza-900)}
.gaveta-conta .ic{flex:none;width:40px;height:40px;border-radius:50%;background:var(--branco);color:var(--primary);display:flex;align-items:center;justify-content:center}
.gaveta-conta b{display:block;font-size:15px}
.gaveta-conta small{font-size:13px;color:var(--cinza-600)}
.gaveta-corpo{flex:1;overflow-y:auto;padding:0 0 16px}
.gaveta-rotulo{margin:8px 16px 4px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza-400)}
.gaveta-lista{list-style:none;margin:0;padding:0}
.gaveta-lista a{display:flex;align-items:center;gap:14px;min-height:56px;padding:0 16px;font-size:16px;font-weight:500;color:var(--cinza-900)}
.gaveta-lista a:active{background:var(--cinza-50)}
.gaveta-lista img{flex:none;width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--cinza-50);color:transparent}
.gaveta-lista .seta-dir{margin-left:auto;color:var(--cinza-400)}
.gaveta-lista .ic{flex:none;width:38px;height:38px;border-radius:50%;background:var(--cinza-50);color:var(--primary);display:flex;align-items:center;justify-content:center}
.gaveta-sep{height:8px;margin:8px 0;background:var(--cinza-50)}
.gaveta-ajuda a{min-height:48px;font-size:15px;font-weight:400;color:var(--cinza-800)}
.gaveta-ajuda svg{flex:none;color:var(--primary)}
.gaveta-rodape{padding:14px 16px 18px;border-top:1px solid var(--cinza-100);font-size:13px;color:var(--cinza-600)}
.gaveta-rodape a{color:var(--primary);font-weight:600}

/* ===== Tela de busca (celular) ===== */
.busca-tela{position:fixed;inset:0;z-index:100;background:var(--branco);overflow-y:auto;animation:buscaEntra .22s ease}
.busca-tela[hidden]{display:none}
@keyframes buscaEntra{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.busca-topo{position:sticky;top:0;background:var(--headerBg);color:var(--headerText);border-bottom:1px solid var(--header-borda);display:flex;align-items:center;gap:6px;padding-top:12px;padding-bottom:12px}
.busca-topo .icon-btn{margin-left:-10px}
.busca-campo{flex:1;display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border:1.5px solid var(--primary);border-radius:999px;background:var(--branco);color:var(--primary)}
.busca-campo input{flex:1;min-width:0;border:0;outline:none;background:none;font:inherit;font-size:16px;color:var(--cinza-900)}
.busca-corpo{padding-top:22px;padding-bottom:40px}
.busca-titulo{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--cinza-600)}
.busca-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.busca-chips button{min-height:40px;padding:0 16px;border:1px solid var(--cinza-200);border-radius:999px;background:var(--branco);color:var(--cinza-800);font-size:14px;font-weight:500;cursor:pointer}
.busca-res{display:flex;flex-direction:column}
.busca-item{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid var(--cinza-200)}
.busca-item img{width:64px;height:64px;flex:none;object-fit:cover;border-radius:8px;background:var(--cinza-50)}
.busca-item strong{font-size:14px;font-weight:500;line-height:1.35;color:var(--cinza-800);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.busca-item span{display:block;margin-top:4px;font-weight:700;color:var(--cinza-900)}
.busca-vazio{padding:16px 0;color:var(--cinza-600)}

/* ===== Banner principal: imagem fixa, largura total ===== */
.banner a{display:block}
.banner img{width:100%;height:auto}

/* ===== Categorias (círculos com foto, em carrossel) ===== */
.cats-secao{padding:28px 0 12px}
.cats{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:4px 2px}
.cats::-webkit-scrollbar{display:none}
.cat{flex:0 0 auto;width:104px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.cat-foto{width:96px;height:96px;border-radius:50%;padding:3px;background:var(--branco);border:2px solid var(--primary);display:flex;align-items:center;justify-content:center;transition:transform .2s}
.cat-foto img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--cinza-50)}
.cat:hover .cat-foto{transform:scale(1.05)}
.cat-nome{font-size:14px;font-weight:600;color:var(--text);line-height:1.2}
.cat-oferta .cat-foto{background:var(--btnPrimary);color:var(--btnPrimaryText);border-color:var(--btnPrimary)}

/* ===== Vitrines de produtos (todas em carrossel) ===== */
.vitrine{background:var(--primary-suave);padding:36px 0 40px}
.vitrine + .vitrine{padding-top:8px}
.secao-topo{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px}
.secao-topo h2{margin:0;font-size:clamp(20px,2.2vw,26px);font-weight:700;letter-spacing:-.015em;color:var(--text)}
.secao-acoes{display:flex;align-items:center;gap:14px}
.ver-todos{display:inline-flex;align-items:center;gap:2px;font-size:14px;font-weight:600;color:var(--primary);white-space:nowrap}
.ver-todos:hover{text-decoration:underline;text-underline-offset:3px}
.setas{display:flex;gap:6px}
.seta{width:36px;height:36px;border-radius:50%;border:1px solid var(--cinza-200);background:var(--branco);color:var(--cinza-800);cursor:pointer;display:flex;align-items:center;justify-content:center}
.seta:hover{border-color:var(--primary);color:var(--primary)}
.carrossel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding:2px 2px 10px}
.carrossel::-webkit-scrollbar{display:none}
.produto{flex:0 0 calc((100% - 56px)/5);min-width:190px;scroll-snap-align:start;display:flex;flex-direction:column;background:var(--branco);border-radius:var(--raio);overflow:hidden;box-shadow:var(--sombra);transition:box-shadow .2s,transform .2s}
.produto:hover{box-shadow:var(--sombra-hover);transform:translateY(-2px)}
.produto-img{position:relative;aspect-ratio:1;background:var(--branco);overflow:hidden}
.produto-img img{width:100%;height:100%;object-fit:cover;color:transparent}
.selo-off{position:absolute;top:0;right:10px;display:flex;flex-direction:column;align-items:center;min-width:42px;padding:7px 6px 13px;background:var(--btnPrimary);color:var(--btnPrimaryText);font-size:10px;font-weight:700;letter-spacing:.06em;line-height:1;clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);box-shadow:0 2px 6px rgba(0,0,0,.15)}
.selo-off b{font-size:15px;letter-spacing:-.01em;margin-bottom:2px}
.produto-info{display:flex;flex-direction:column;gap:6px;padding:10px 12px 12px;flex:1}
.produto h3{margin:0;font-size:13.5px;font-weight:400;line-height:1.35;color:var(--cinza-800);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}
.produto-rodape{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto}
.precos{display:flex;flex-direction:column;gap:1px;min-width:0}
.preco-antigo{font-size:12px;color:var(--cinza-400);text-decoration:line-through}
.preco{font-size:19px;font-weight:700;color:var(--cinza-900);letter-spacing:-.01em}
.preco-pix{display:flex;flex-wrap:wrap;align-items:center;gap:2px 5px;font-size:12.5px;color:var(--verde)}
.preco-pix b{font-size:14px;font-weight:700}
.preco-pix em{font-style:normal;font-size:10.5px;font-weight:700;padding:1px 5px;border-radius:4px;background:var(--verde-fundo)}
.cupom{align-self:flex-start;display:inline-flex;align-items:stretch;max-width:100%;margin:2px 0;padding:0;border:1.5px solid var(--btnPrimary);border-radius:4px;background:var(--branco);font:inherit;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;overflow:hidden}
.cupom-rot{padding:4px 7px;color:var(--btnPrimary);border-right:1.5px dashed var(--btnPrimary)}
.cupom-cod{padding:4px 8px;background:var(--btnPrimary);color:var(--btnPrimaryText);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cupom.copiado .cupom-cod{background:var(--verde);color:#FFFFFF}
.selo-envio{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:6px;background:var(--primary);color:#FFFFFF;font-size:12px;font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.selo-envio svg{width:14px;height:14px}
.nota-linha{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--cinza-600)}
.nota-linha b{color:var(--cinza-900);font-size:13px}
.estrelas-mini{display:inline-flex;gap:1px}
.est{position:relative;display:inline-block;width:14px;height:14px}
.est svg{position:absolute;inset:0;width:14px;height:14px}
.est svg:first-child{color:var(--cinza-200)}
.est svg:last-child{color:#F5A623;clip-path:inset(0 calc(100% - var(--f)) 0 0)}
.parcela{font-size:12px;line-height:1.35;color:var(--cinza-600);margin-top:2px}
.parcela b{font-weight:600;color:var(--cinza-800)}
.frete{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--verde)}


/* ===== Faixa de texto em movimento ===== */
.faixa{background:var(--btnPrimary);color:var(--btnPrimaryText);overflow:hidden;white-space:nowrap}
.faixa-trilho{display:inline-flex;animation:faixaAnda var(--faixa-dur,32s) linear infinite}
.faixa-grupo{display:inline-flex;align-items:center}
.faixa span{padding:16px 22px;font-size:15px;letter-spacing:.03em;text-transform:uppercase}
.faixa .forte{font-weight:700}
.faixa .leve{font-weight:400;opacity:.92}
@keyframes faixaAnda{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.faixa-trilho{animation:none}}

/* ===== Banner entre as vitrines ===== */
.banner-meio{padding:0}
.banner-meio a{display:block}
.banner-meio img{width:100%;height:auto}




/* ===== Mega ofertas com contagem regressiva ===== */
.mega{padding:36px 0 40px;background:var(--primary-suave)}
.mega-painel{position:relative;background:var(--topbarBg);color:var(--topbarText);border-radius:20px;padding:32px 36px 26px;overflow:hidden}
.mega-topo{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-bottom:22px}
.mega-topo h2{display:flex;align-items:center;gap:12px;margin:0;font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.02em;color:inherit}
.mega-timer{display:flex;align-items:center;gap:16px}
.mega-timer[hidden]{display:none}
.mega-timer-txt{font-size:16px;font-weight:700;line-height:1.15}
.mega-relogio{display:flex;align-items:flex-start;gap:6px}
.mega-relogio span{display:flex;flex-direction:column;align-items:center;min-width:52px}
.mega-relogio b{display:block;min-width:52px;padding:6px 4px;border-radius:10px;background:color-mix(in srgb,var(--topbarText) 14%,transparent);font-size:28px;line-height:1.1;font-weight:800;text-align:center;font-variant-numeric:tabular-nums}
.mega-relogio small{margin-top:4px;font-size:11px;font-weight:600;opacity:.85}
.mega-relogio i{font-style:normal;font-size:24px;font-weight:800;line-height:44px;opacity:.7}
.mega-lista,.mega-corpo{position:relative}
.mega .produto{box-shadow:0 4px 14px rgba(0,0,0,.12)}
.mega-setas{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;pointer-events:none;margin:0 -22px}
.mega-setas .seta{pointer-events:auto;width:44px;height:44px;border:0;background:var(--branco);color:var(--cinza-900);box-shadow:0 4px 14px rgba(0,0,0,.2)}
.mega-todas{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:18px;font-size:15px;font-weight:700;color:inherit}
.mega-todas:hover{text-decoration:underline;text-underline-offset:3px}

/* ===== Nossa história ===== */
.historia{padding:64px 0;background:var(--branco)}
.historia-grade{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:56px}
.historia-foto{position:relative}
.historia-foto img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;background:var(--cinza-50)}
.historia-foto::before{content:"";position:absolute;inset:18px -18px -18px 18px;border-radius:16px;background:var(--primary-suave);z-index:-1}
.historia-foto{isolation:isolate}
.historia-texto{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.historia-texto .btn{margin-top:8px;gap:8px}
.historia-texto .btn svg{transition:transform .2s}
.historia-texto .btn:hover svg{transform:translateX(3px)}
.sobretitulo{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--btnPrimary)}
.sobretitulo::before{content:"";width:24px;height:2px;border-radius:2px;background:currentColor}
.historia-texto h2{margin:0;font-size:clamp(26px,3.2vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.02em;color:var(--text)}
.historia-texto p{margin:0;font-size:16px;line-height:1.7;color:var(--cinza-600)}
.historia-resumo{position:relative;max-height:calc(1.7em * 5);overflow:hidden}
.historia-resumo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3.4em;background:linear-gradient(to bottom,transparent,var(--fundo-secao,var(--branco)))}
.historia-resumo p + p{margin-top:12px}

/* ===== Avaliações de clientes ===== */
.avaliacoes{padding:56px 0 48px;background:var(--primary-suave)}
.aval-topo{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;margin-bottom:24px}
.aval-topo h2{margin:0 0 14px;font-size:clamp(20px,2.2vw,26px);font-weight:700;color:var(--text);letter-spacing:-.015em}
.aval-resumo{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.aval-nota{display:flex;align-items:center;gap:12px;padding-right:18px;border-right:1px solid var(--cinza-200)}
.aval-nota strong{font-size:40px;line-height:1;font-weight:700;color:var(--cinza-900);letter-spacing:-.02em}
.aval-nota small{display:block;font-size:12.5px;color:var(--cinza-600);margin-top:4px}
.aval-barras{display:grid;gap:4px;min-width:180px}
.aval-barra{display:grid;grid-template-columns:14px 1fr 26px;align-items:center;gap:8px;font-size:12px;color:var(--cinza-600)}
.aval-barra i{display:block;height:6px;border-radius:99px;background:var(--cinza-100);overflow:hidden}
.aval-barra i b{display:block;height:100%;background:#F5A623;border-radius:99px}
.estrelas{display:inline-flex;gap:2px;color:#F5A623}
.estrelas svg{width:15px;height:15px}
.aval-nota .estrelas svg{width:18px;height:18px}
.aval-card{flex:0 0 calc((100% - 42px)/4);min-width:250px;scroll-snap-align:start;display:flex;flex-direction:column;background:var(--branco);border-radius:var(--raio);overflow:hidden;box-shadow:var(--sombra);transition:box-shadow .2s,transform .2s}
.aval-card:hover{box-shadow:var(--sombra-hover);transform:translateY(-2px)}
.aval-foto{position:relative;aspect-ratio:1;background:var(--cinza-50)}
.aval-foto img{width:100%;height:100%;object-fit:cover}
.aval-corpo{display:flex;flex-direction:column;gap:10px;padding:14px 16px 16px;flex:1}
.aval-texto{margin:0;font-size:14px;line-height:1.55;color:var(--cinza-800);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.aval-linha{display:flex;align-items:center;gap:8px}
.aval-nota-num{font-size:13px;font-weight:700;color:var(--cinza-900)}
.aval-autor{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--cinza-100)}
.aval-quem{display:flex;align-items:center;gap:6px;min-width:0}
.aval-quem b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.selo-verif{flex:none;display:inline-flex;width:16px;height:16px;color:#1D9BF0}
.selo-verif svg{width:100%;height:100%}
.aval-avatar{flex:none;width:36px;height:36px;border-radius:50%;background:var(--primary-suave);color:var(--primary);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:14px}
.aval-autor b{display:block;font-size:14px;color:var(--cinza-900)}
.aval-autor small{display:block;font-size:12px;color:var(--cinza-600)}
.aval-vazio{display:none}

/* ===== Instagram: cada item parece um post ===== */
.insta{padding:52px 0 56px;background:var(--branco)}
.insta-cab{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;margin-bottom:22px}
.insta-cab h2{display:flex;align-items:center;gap:10px;margin:0;font-size:clamp(20px,2.2vw,26px);font-weight:700;color:var(--text)}
.insta-cab a{font-size:14px;color:var(--cinza-600)}
.ig-grade{display:flex;align-items:flex-start;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 8px}
.ig-grade::-webkit-scrollbar{display:none}
.ig-post{flex:0 0 calc((100% - 48px)/4);min-width:250px;scroll-snap-align:start;background:var(--branco);border:1px solid var(--cinza-200);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;color:var(--cinza-900)}
.ig-topo{display:flex;align-items:center;gap:10px;padding:10px 12px}
.ig-avatar{flex:none;width:34px;height:34px;border-radius:50%;padding:2px;background:linear-gradient(45deg,#F9CE34,#EE2A7B,#6228D7)}
.ig-avatar span{display:flex;width:100%;height:100%;border-radius:50%;border:2px solid #fff;background:var(--primary);color:#fff;font-size:12px;font-weight:700;align-items:center;justify-content:center}
.ig-topo b{font-size:13.5px;font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ig-topo .mais{font-weight:700;letter-spacing:1px;color:var(--cinza-800)}
.ig-foto{display:block;aspect-ratio:1;background:var(--cinza-50);overflow:hidden}
.ig-foto img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.ig-post:hover .ig-foto img{transform:scale(1.04)}
.ig-acoes{display:flex;align-items:center;gap:14px;padding:10px 12px 4px}
.ig-acoes svg{width:23px;height:23px}
.ig-acoes .salvar{margin-left:auto}
.ig-texto{padding:4px 12px 14px;min-width:0}
.ig-legenda{margin:0;font-size:13.5px;line-height:1.45;color:var(--cinza-800);overflow-wrap:anywhere;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ig-post.aberto .ig-legenda{display:block;-webkit-line-clamp:unset}
.ig-mais{border:0;background:none;padding:2px 0 0;font:inherit;font-size:13px;color:var(--cinza-600);cursor:pointer}
.ig-mais[hidden]{display:none}
.ig-legenda b{font-weight:600;margin-right:4px;color:var(--cinza-900)}
.ig-legenda .tag{color:#00376B}
.insta-acao{display:flex;justify-content:center;margin-top:20px}

/* ===== Benefícios ===== */
.beneficios-secao{padding:40px 0 44px;background:var(--primary-suave)}
.beneficios{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:28px}
.beneficio{display:flex;gap:16px;align-items:flex-start;color:var(--icone,var(--primary))}
.beneficio strong{display:block;font-weight:600;margin-bottom:4px;color:var(--cinza-900)}
.beneficio span{font-size:14px;color:var(--cinza-600)}

.beneficios-dots{display:none}
.beneficios-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--cinza-200);cursor:pointer;transition:width .25s,background .25s}
.beneficios-dots button.ativo{width:22px;background:var(--primary)}

/* ===== Rodapé ===== */
.rodape{background:var(--topbarBg);color:var(--topbarText);padding:56px 0 28px}
.rodape-topo{display:flex;flex-wrap:wrap;gap:48px}
.rodape-marca{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:8px}
.news-titulo{font-size:19px;font-weight:700}
.rodape-marca p{margin:0 0 8px;opacity:.82;line-height:1.5;font-size:15px}
.news{display:flex;gap:8px;max-width:440px;background:var(--branco);border-radius:999px;padding:6px}
.news input{flex:1;width:100%;min-width:0;border:0;padding:0 16px;font:inherit;font-size:16px;outline:none;background:none;color:var(--cinza-900)}
.news .btn{min-height:44px;padding:0 22px}
.rodape-colunas{flex:2 1 520px;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;font-size:15px}
.sanfona-titulo{margin:0 0 14px;font-size:19px;font-weight:700}
.sanfona-titulo button{all:unset;display:flex;align-items:center;justify-content:space-between;width:100%;cursor:default}
.sanfona-seta{display:none;transition:transform .3s ease}
.sanfona-interno{display:flex;flex-direction:column;gap:12px}
.rodape-colunas a,.rodape-colunas span{color:inherit;opacity:.85;transition:opacity .2s}
.rodape-colunas a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.contato-item{display:flex;align-items:flex-start;gap:12px;line-height:1.45}
.contato-item svg{flex:none;width:20px;height:20px;margin-top:1px}
.rodape-base{margin-top:44px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--topbarText) 20%,transparent);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font-size:13px}
.rodape-base > span{opacity:.8}
.pagamentos{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.pag-icone{display:block;width:44px;height:28px;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.12)}


/* ===== Carregamento elegante das fotos ===== */
.produto-img,.aval-foto,.ig-foto,.cat-foto,.historia-foto,.banner-meio a{background-color:var(--cinza-100)}
.carregando{background-image:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.65) 50%,transparent 70%);background-size:220% 100%;animation:brilhoFoto 1.3s linear infinite}
@keyframes brilhoFoto{from{background-position:120% 0}to{background-position:-120% 0}}
img.foto-anim{opacity:0;transition:opacity .45s ease}
img.foto-anim.ok{opacity:1}

/* ===== Animações ao rolar ===== */
.js-anim .revelar{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--atraso,0s)}
.js-anim .revelar.visivel{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .js-anim .revelar{opacity:1;transform:none;transition:none}
  .carregando{animation:none}
  img.foto-anim{opacity:1;transition:none}
}

/* ===== Tablet ===== */
@media (max-width:1100px){
  .header-row{display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"menu logo icones";padding-top:14px;padding-bottom:14px;gap:14px 8px;min-height:0;align-items:center}
  .esq{display:flex;grid-area:menu}
  .logo{grid-area:logo;justify-self:center;padding:2px 0}
  .logo img{height:calc(var(--logo-h,46px) * .92)}
  .nav{display:none}
  .acoes{display:contents}
  .icones{grid-area:icones;justify-self:end;margin-right:-10px}
  .busca{display:none}
  .header.compacto .header-row{min-height:0;padding-top:4px;padding-bottom:4px}
  .header.compacto .logo img{height:calc(var(--logo-h,46px) * .6)}
  .produto{flex-basis:calc((100% - 28px)/3);min-width:0}
}

/* ===== Celular ===== */
@media (max-width:760px){
  .container{padding-left:16px;padding-right:16px}
  .aviso{font-size:15px;padding:12px 16px}
  .cats-secao{padding:20px 0 8px}
  .cats{gap:14px}
  .cat{width:76px}
  .cat-foto{width:72px;height:72px}
  .cat-nome{font-size:12.5px}
  .vitrine{padding:24px 0 28px}
  .setas{display:none}
  .ver-todos{font-size:13.5px}
  .mega{padding:0;background:none}
  .mega .container{padding-left:0;padding-right:0}
  .mega-painel{border-radius:0;padding:26px 16px 20px}
    .mega-topo{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:18px}
  .mega-timer{width:100%;justify-content:space-between;gap:10px}
  .mega-timer-txt{font-size:14px}
  .mega-relogio{gap:4px}
  .mega-relogio span,.mega-relogio b{min-width:44px}
  .mega-relogio b{font-size:22px;padding:5px 2px}
  .mega-relogio i{font-size:20px;line-height:38px}
  .mega-setas{display:none}
  .mega .carrossel{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}
  .mega-todas{justify-content:center;margin-top:14px}
  .historia{padding:40px 0 44px}
  .historia-grade{grid-template-columns:1fr;gap:28px}
  .historia-foto::before{inset:10px -8px -10px 10px}
  .historia-texto p{font-size:15px}
        .historia-texto .btn{width:100%}
  .rodape-base{flex-direction:column;align-items:flex-start;margin-top:0;padding-top:20px;border-top:0}
  .rodape-topo{gap:28px}
  .rodape-colunas{display:block}
  .sanfona{border-top:1px solid color-mix(in srgb,var(--topbarText) 18%,transparent)}
  .sanfona:last-child{border-bottom:1px solid color-mix(in srgb,var(--topbarText) 18%,transparent)}
  .sanfona-titulo{margin:0;font-size:16px}
  .sanfona-titulo button{cursor:pointer;min-height:54px;box-sizing:border-box}
  .sanfona-seta{display:block}
  .sanfona.aberta .sanfona-seta{transform:rotate(180deg)}
  .sanfona-conteudo{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
  .sanfona.aberta .sanfona-conteudo{grid-template-rows:1fr}
  .sanfona-interno{padding-bottom:0;overflow:hidden;min-height:0;transition:padding .35s ease}
  .sanfona.aberta .sanfona-interno{padding-bottom:16px}
  .pagamentos{gap:5px}
  .pag-icone{width:38px;height:24px}
  .avaliacoes{padding:36px 0 28px}
  .aval-topo{grid-template-columns:1fr}
  .aval-topo .secao-acoes{display:none}
  .aval-nota{border-right:0;padding-right:0}
  .aval-nota strong{font-size:36px}
  .aval-barras{flex:1;min-width:0}
  .aval-card{flex-basis:72%;min-width:0}
  .insta{padding:36px 0 36px}
  .ig-grade{margin:0 -16px;padding:2px 16px 8px;scroll-padding-left:16px;gap:12px}
  .ig-post{flex-basis:80%;min-width:0}
  .insta-acao .btn{width:100%}
  .carrossel{gap:10px}
  .produto{flex-basis:48%}
  .carrossel,.ig-grade{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;scroll-padding-left:16px}
  .produto-info{padding:10px 12px 12px;gap:7px}
  .produto h3{font-size:14px;min-height:38px}
  .preco{font-size:19px}
  .preco-antigo,.parcela,.frete{font-size:12.5px}
  .selo-envio{top:8px;left:8px;padding:4px 7px;font-size:11px}
  .nota-linha{font-size:12px}
  .selo-off{min-width:46px;padding:8px 6px 14px}
  .selo-off b{font-size:16px}
    .faixa span{padding:13px 16px;font-size:13px}
  .beneficios-secao{padding:28px 0 28px}
  .beneficios{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
  .beneficios::-webkit-scrollbar{display:none}
  .beneficio{flex:0 0 100%;scroll-snap-align:center;justify-content:center;align-items:center;gap:14px;padding:8px 0}
  .beneficio svg{flex:none;width:28px;height:28px}
  .beneficio strong{font-size:16px;margin-bottom:3px}
  .beneficio span{display:block;font-size:14px}
  .beneficios-dots{display:flex;justify-content:center;gap:8px;margin-top:14px}
}

/* ===== Sacola (gaveta da direita) ===== */
.sacola-fundo{position:fixed;inset:0;background:rgba(15,23,42,.45);opacity:0;pointer-events:none;transition:opacity .25s;z-index:200}
.sacola{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);background:var(--branco);z-index:201;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
body.sacola-aberta{overflow:hidden}
body.sacola-aberta .sacola{transform:none;box-shadow:-12px 0 32px rgba(15,23,42,.12)} /* sombra só aberta: fechada, vazava na borda direita */
body.sacola-aberta .sacola-fundo{opacity:1;pointer-events:auto}
.sacola-topo{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 14px 22px;border-bottom:1px solid var(--cinza-200)}
.sacola-topo h2{margin:0;font-size:19px;color:var(--text)}
.sacola-topo h2 span{font-weight:500;color:var(--cinza-600);font-size:15px;margin-left:4px}
.sacola-corpo{flex:1;overflow:auto;padding:8px 22px}
.sacola-vazia{text-align:center;color:var(--cinza-600);padding:56px 12px}
.sacola-vazia strong{display:block;color:var(--cinza-800);font-size:17px;margin:12px 0 4px}
.sacola-item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--cinza-100)}
.sacola-item img{width:76px;height:76px;object-fit:cover;border-radius:var(--raio);background:var(--cinza-50);flex:none}
.sacola-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.sacola-info strong{font-size:14px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sacola-info span{font-weight:700;color:var(--cinza-900)}
.sacola-qtd{display:flex;align-items:center;gap:8px;margin-top:4px}
.sacola-qtd button{width:30px;height:30px;border-radius:50%;border:1px solid var(--cinza-200);background:var(--branco);cursor:pointer;font-size:16px;line-height:1}
.sacola-qtd b{min-width:18px;text-align:center}
.sacola-qtd .sacola-tirar{width:auto;border:0;border-radius:0;font-size:13px;color:var(--cinza-600);text-decoration:underline;margin-left:auto;padding:0}
.sacola-rodape{padding:18px 22px 22px;border-top:1px solid var(--cinza-200);display:flex;flex-direction:column;gap:12px}
.sacola-total{display:flex;justify-content:space-between;font-size:17px}
.sacola-total b{font-size:19px;color:var(--cinza-900)}
.sacola-rodape .btn{width:100%}
.contador[hidden]{display:none}

/* Ajustes da versão instalada */
form.busca{margin:0}
.logo strong,.gaveta-topo strong{font-size:22px;font-weight:700;color:var(--headerText);letter-spacing:-.01em}
.historia-resumo.aberta{max-height:none}
.historia-resumo.aberta::after{display:none}
#lerHistoria[hidden]{display:none}
button#lerHistoria{border:0;cursor:pointer}

/* =====================================================================
   SEÇÕES DO EDITOR (fundos, carrossel do banner, avisos alternando, texto)
   ===================================================================== */
.fundo-branco{background:var(--branco)!important}
.fundo-cinza{background:var(--cinza-50)!important}

/* Barra de avisos com várias mensagens: uma de cada vez */
.aviso{position:relative}
.aviso-msg{display:block}
.aviso[data-troca] .aviso-msg:not(.ativa){display:none}
.aviso a.aviso-msg:hover{text-decoration:underline;text-underline-offset:3px}
.aviso-msg.entrando{animation:avisoEntra .45s ease}
@keyframes avisoEntra{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Banner com vários slides */
.banner{position:relative}
.banner-trilho{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.banner-trilho::-webkit-scrollbar{display:none}
.banner-slide{flex:0 0 100%;scroll-snap-align:start;display:block}
.banner-slide img{width:100%;height:auto;display:block}
.banner-pontos{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:8px}
.banner-pontos button{width:9px;height:9px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.6);box-shadow:0 1px 3px rgba(0,0,0,.25);cursor:pointer;transition:width .25s ease,background .25s ease}
.banner-pontos button.ativo{width:24px;background:#fff}

/* Imagem com margens */
.banner-meio.contida{padding:28px 0}
.banner-meio.contida img{border-radius:16px}
.banner-meio-link{display:block}

/* Texto */
.texto-secao{background:var(--ts-fundo,#fff);color:var(--ts-texto,var(--cinza-800));padding:56px 0}
.texto-secao-in{display:flex;flex-direction:column;gap:14px;max-width:820px}
.texto-secao.alinha-centro .texto-secao-in{align-items:center;text-align:center;margin:0 auto}
.texto-secao.alinha-esquerda .texto-secao-in{align-items:flex-start;margin:0 auto 0 0}
.texto-secao h2{margin:0;font-size:clamp(24px,3vw,34px);line-height:1.2;font-weight:700;letter-spacing:-.02em;color:inherit}
.texto-secao p{margin:0;font-size:16px;line-height:1.7;opacity:.9}
.texto-secao .btn{margin-top:8px}

/* História sem foto */
.historia-grade.sem-foto{grid-template-columns:1fr;max-width:820px}

/* Aviso de seção vazia (só aparece na prévia do editor) */
.secao-vazia{padding:28px 0;background:repeating-linear-gradient(45deg,#F6F7F8,#F6F7F8 10px,#EEF0F2 10px,#EEF0F2 20px)}
.secao-vazia .container{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;color:var(--cinza-600);font-size:14px}
.secao-vazia strong{color:var(--cinza-900);font-size:15px}

/* Sacola: item que acabou de entrar e o "pulo" do ícone (página de produto) */
.sacola-item.novo{animation:sacolaChega .55s cubic-bezier(.2,.8,.2,1) .15s both;position:relative}
.sacola-item.novo::before{content:"";position:absolute;inset:6px -12px;border-radius:12px;background:color-mix(in srgb,var(--btnPrimary) 14%,transparent);animation:sacolaBrilho 1.8s ease .3s both;pointer-events:none}
@keyframes sacolaChega{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes sacolaBrilho{0%,35%{opacity:1}100%{opacity:0}}
#sacolaBtn.pulo{animation:sacolaPulo .5s cubic-bezier(.3,1.6,.5,1)}
#sacolaBtn.pulo .contador{animation:contadorPop .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes sacolaPulo{0%{transform:scale(1)}35%{transform:scale(1.28) rotate(-8deg)}70%{transform:scale(.94) rotate(4deg)}100%{transform:none}}
@keyframes contadorPop{0%{transform:scale(.4)}60%{transform:scale(1.35)}100%{transform:none}}
@media (prefers-reduced-motion:reduce){.sacola-item.novo,.sacola-item.novo::before,#sacolaBtn.pulo,#sacolaBtn.pulo .contador{animation:none}}
.sacola-var{display:inline-flex;align-self:flex-start;max-width:100%;padding:2px 8px;border-radius:6px;background:var(--cinza-50);font-style:normal;font-size:12.5px;font-weight:600;color:var(--cinza-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Sacola nas cores do tema (em vez de preto): textos no tom da marca */
.sacola-info strong{color:var(--text);font-weight:600}
@supports (color:color-mix(in srgb,red 50%,black)){.sacola-info strong{color:color-mix(in srgb,var(--text) 82%,#6B7280)}}
.sacola-info span{color:var(--text)}
.sacola-var{background:var(--primary-suave);color:var(--primary)}
.sacola-qtd b{color:var(--text)}
.sacola-qtd button{color:var(--text);border-color:color-mix(in srgb,var(--text) 22%,#fff)}
.sacola-qtd button:hover{border-color:var(--text)}
.sacola-total{color:var(--cinza-600)}
.sacola-total b{color:var(--text)}
.sacola-vazia strong{color:var(--text)}

/* fundo escolhido no editor para História e Instagram (o degradê do texto acompanha o fundo) */
.historia.fundo-suave,.insta.fundo-suave{background:var(--primary-suave);--fundo-secao:var(--primary-suave)}
.historia.fundo-cinza,.insta.fundo-cinza{--fundo-secao:var(--cinza-50)}
.historia.fundo-suave .historia-foto::before{background:var(--branco)}
