/* ==========================================================
   Hera Verde — CSS para Loja Integrada (estilo Art of Tea)
   Base: tema padrao (Bootstrap 2). Apenas sobreposicao.
   ========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,400;0,500;1,400&family=Figtree:wght@400;500;600&display=swap');

/* ---------- Base ---------- */
body, body.pagina-inicial, body.pagina-produto, body.pagina-categoria {
  background: #FFFFFF !important;
  color: #4A4A4A;
  font-family: 'Figtree', system-ui, sans-serif !important;
  font-size: 15px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body *:not(i):not([class^="icon-"]):not([class*=" icon-"]) { font-family: inherit; }
a { color: #231F20; }
a:hover { color: #263F2E; text-decoration: none; }
.conteiner { max-width: 1240px; }
#corpo .conteiner, #cabecalho .conteiner, #rodape .conteiner { box-shadow: none !important; border: 0 !important; background: transparent !important; }
#corpo, #cabecalho, .secao-principal { background: #FFFFFF !important; }
.borda-alpha, .borda-principal { border-color: #E6E6E3 !important; }

/* Titulos em serifa */
h1, h2, h3, .titulo, .nome-produto.titulo, .titulo-categoria, .secao-banners .titulo {
  font-family: 'Cormorant', Georgia, serif !important;
  font-weight: 400 !important;
  color: #231F20 !important;
  letter-spacing: 0;
  text-transform: none !important;
  font-variant-numeric: lining-nums;
}

/* ---------- Barra superior e cabecalho ---------- */
#barraTopo, .barra-inicial {
  background: #F4F4F2 !important;
  color: #231F20 !important;
  border: 0 !important;
  font-size: 12px;
  letter-spacing: .1em;
}
.barra-inicial a, .barra-inicial span, .barra-inicial i { color: #231F20 !important; }
#cabecalho { border-bottom: 1px solid #E6E6E3; padding: 10px 0 0; }
#cabecalho .logo img { max-height: 72px; width: auto; }
.busca { background: transparent !important; border: 0 !important; padding: 0 !important; }
.busca input, .busca .input-busca {
  border: 0 !important; border-bottom: 1px solid #231F20 !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important; height: 40px; font-size: 14px;
}
.busca .botao, .busca button { background: transparent !important; border: 0 !important; color: #231F20 !important; box-shadow: none !important; }
.carrinho, .carrinho > a { border: 0 !important; background: transparent !important; }
.carrinho i, .conteudo-topo .icon-user, .conteudo-topo i { background: transparent !important; color: #231F20 !important; }

/* Menu de categorias */
.menu.superior { background: transparent !important; border: 0 !important; text-align: center; margin-top: 8px; }
.menu.superior .nivel-um > li { float: none !important; display: inline-block; border: 0 !important; background: transparent !important; }
.menu.superior .nivel-um > li > a {
  color: #231F20 !important; background: transparent !important;
  text-transform: uppercase; letter-spacing: .12em; font-size: 12.5px; font-weight: 500;
  padding: 16px 18px !important; border-bottom: 1px solid transparent;
}
.menu.superior .nivel-um > li > a:hover { border-bottom-color: #263F2E; color: #263F2E !important; }
.menu.superior .nivel-um > li > a strong, .menu.superior .nivel-um > li > a span { font-weight: 500 !important; }

/* Menu lateral (home/categoria): esconder, grade ocupa largura total */
.menu.lateral { display: none !important; }
.secao-principal > .coluna { display: none !important; }
.secao-principal > .conteudo { width: 100% !important; margin-left: 0 !important; }

/* ---------- Banners ---------- */
.secao-banners, .banner { border: 0 !important; }
.secao-banners .flexslider { box-shadow: none !important; border: 0 !important; border-radius: 0 !important; margin-bottom: 0; }

/* ---------- Titulos de vitrine ---------- */
.titulo-categoria, .vitrine .titulo, .listagem .titulo-categoria {
  font-size: 40px !important; line-height: 1.1; text-align: center;
  border: 0 !important; background: transparent !important; margin: 64px 0 32px !important; padding: 0 !important;
}
.titulo-categoria strong, .titulo-categoria span { font-weight: 400 !important; }

/* ---------- Grade de produtos ---------- */
.listagem { border: 0 !important; }
.listagem .listagem-linha, .listagem ul { border: 0 !important; }
.listagem-item { border: 0 !important; padding: 0 12px 40px !important; background: transparent !important; text-align: left; }
.listagem-item:hover { box-shadow: none !important; }
.listagem-item .imagem-produto {
  background: #F4F3EF; aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center;
  height: auto !important; padding: 0 !important; margin-bottom: 14px;
}
.listagem-item .imagem-produto img { max-height: 100%; width: 100%; object-fit: contain; mix-blend-mode: multiply; }
.listagem-item .nome-produto {
  font-family: 'Cormorant', Georgia, serif !important; font-size: 20px !important; line-height: 1.2;
  color: #231F20 !important; height: auto !important; min-height: 48px; text-transform: none; font-weight: 400;
}
.listagem-item .preco-produto, .listagem-item .preco-promocional, .listagem-item .preco-venda {
  font-family: 'Figtree', sans-serif !important; font-size: 15px !important; font-weight: 400 !important; color: #4A4A4A !important;
}
.listagem-item .preco-venda.titulo, .listagem-item strong.titulo { font-family: 'Figtree', sans-serif !important; font-size: 15px !important; }
.listagem-item .preco-parcela, .listagem-item .desconto-a-vista, .listagem-item .bandeiras-produto { display: none !important; }
.listagem-item .acoes-produto, .listagem-item .botao-comprar { display: none !important; }
.listagem .flex-direction-nav a { color: #231F20 !important; }

/* Selos */
.bandeira-promocao, .bandeiras-produto span, .desconto, .bandeira-frete-gratis {
  background: #E6E6E3 !important; color: #231F20 !important; border-radius: 0 !important;
  text-transform: uppercase; letter-spacing: .08em; font-size: 11px !important; font-weight: 500;
}

/* ---------- Botoes ---------- */
.botao, .btn, button.botao, a.botao {
  border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important;
  font-family: 'Figtree', sans-serif !important; text-transform: uppercase; letter-spacing: .12em; font-weight: 500 !important;
}
.botao.principal, .botao-comprar, .btn-primary, .botao.principal.grande {
  background: #263F2E !important; border: 1px solid #263F2E !important; color: #FFFFFF !important; background-image: none !important;
}
.botao.principal:hover, .botao-comprar:hover { background: #1F3426 !important; }
.botao.secundario, .btn:not(.btn-primary) {
  background: #FFFFFF !important; border: 1px solid #231F20 !important; color: #231F20 !important; background-image: none !important;
}
input, select, textarea { border-radius: 0 !important; box-shadow: none !important; border-color: #D9D7D0 !important; }

/* ---------- Pagina de produto ---------- */
.produto .conteiner-imagem { background: #F4F3EF; padding: 24px; }
.produto .conteiner-imagem img { mix-blend-mode: multiply; }
.produto .principal { padding: 8px 0 0 48px; }
.breadcrumbs { border: 0 !important; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.breadcrumbs a { color: #6B6F6A !important; }
.produto h1.nome-produto { font-size: 46px !important; line-height: 1.05 !important; margin: 18px 0 10px !important; }
.codigo-produto { font-size: 12px; color: #8A8A85; letter-spacing: .04em; }
.acoes-produto { border: 0 !important; padding: 22px 0 !important; display: flex; flex-direction: column; gap: 18px; }
.acoes-produto .preco-produto .preco-promocional, .acoes-produto .preco-venda {
  font-family: 'Figtree', sans-serif !important; font-size: 22px !important; font-weight: 400 !important; color: #231F20 !important;
}
.acoes-produto .comprar { float: none !important; width: 100%; text-align: left !important; }
.acoes-produto .botao-comprar {
  display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 56px;
  font-size: 13px !important; padding: 0 !important; line-height: 56px;
}
.acoes-produto .botao-comprar i { display: none; }
.disponibilidade-produto { display: block; margin-top: 10px; font-size: 12px; color: #6B6F6A !important; }
.disponibilidade-produto b { color: #263F2E !important; font-weight: 500; }
.parcelas-produto { border: 0 !important; border-top: 1px solid #E6E6E3 !important; }
.parcelas-produto .accordion-heading a { color: #231F20 !important; text-transform: none; }
.cep { border-top: 1px solid #E6E6E3; padding-top: 18px; }
.cep label { font-weight: 500; color: #231F20; text-transform: uppercase; letter-spacing: .08em; font-size: 11.5px; }
.produto-compartilhar { display: none !important; }
.abas-custom, .abas-custom .tab-content { border: 0 !important; background: transparent !important; }
.abas-custom .nav-tabs { border-bottom: 1px solid #E6E6E3; }
.abas-custom .nav-tabs > li > a { border: 0 !important; background: transparent !important; color: #6B6F6A !important; text-transform: uppercase; letter-spacing: .1em; font-size: 12px; }
.abas-custom .nav-tabs > .active > a { color: #231F20 !important; border-bottom: 1px solid #231F20 !important; }
.produto .tab-content { max-width: 760px; font-size: 15.5px; line-height: 1.7; }
.produto .tab-content h3 { font-size: 24px !important; margin: 28px 0 8px; }

/* ---------- Rodape ---------- */
#rodape, #rodape .institucional, #rodape .fundo-secundario {
  background: #F4F4F2 !important; color: #4A4A4A !important; border: 0 !important; background-image: none !important;
}
#rodape a { color: #4A4A4A !important; }
#rodape .titulo { font-family: 'Figtree', sans-serif !important; text-transform: uppercase; letter-spacing: .12em; font-size: 13px !important; font-weight: 500 !important; color: #231F20 !important; }
#rodape .pagamento-selos { background: #FFFFFF !important; border-top: 1px solid #E6E6E3; }

/* ---------- Celular ---------- */
@media (max-width: 767px) {
  .titulo-categoria { font-size: 30px !important; margin: 40px 0 20px !important; }
  .listagem-item { padding: 0 6px 28px !important; }
  .listagem-item .nome-produto { font-size: 17px !important; min-height: 0; }
  .produto .principal { padding: 20px 0 0; }
  .produto h1.nome-produto { font-size: 34px !important; }
  .atalhos-mobile, .atalhos-mobile li { background: #FFFFFF !important; border-color: #E6E6E3 !important; }
  .atalhos-mobile a { color: #231F20 !important; }
  .atalhos-mobile li.fundo-principal { background: #263F2E !important; }
  .atalhos-mobile li.fundo-principal a { color: #FFFFFF !important; }
}

/* ---------- Ajustes v2 ---------- */
/* Icones (FontAwesome) nao podem herdar a fonte do texto */
[class^="icon-"], [class*=" icon-"], .botao[class*="icon-"], button[class*="icon-"] { font-family: 'FontAwesome' !important; letter-spacing: 0 !important; text-transform: none !important; }
.busca .botao-busca { color: #231F20 !important; font-size: 16px !important; }
/* Menu superior: sans, caixa-alta espacada (o texto vem dentro de .titulo) */
.menu.superior .nivel-um > li > a .titulo { font-family: 'Figtree', sans-serif !important; font-size: 12.5px !important; letter-spacing: .14em !important; text-transform: uppercase !important; font-weight: 500 !important; color: #231F20 !important; }
/* Carrinho e textos do topo em sans */
.carrinho .titulo, .carrinho span, .conteudo-topo .titulo, .conteudo-topo span { font-family: 'Figtree', sans-serif !important; font-size: 13px !important; color: #231F20 !important; }
.carrinho .qtd-carrinho { font-size: 13px !important; }
.conteudo-topo .superior { font-size: 13px; color: #6B6F6A; }
/* Logo maior */
#cabecalho .logo img { max-height: 96px !important; }
#cabecalho .logo { margin: 6px 0 !important; }
/* Disponibilidade alinhada a esquerda, discreta */
.acoes-produto .comprar .disponibilidade-produto { text-align: left; }
.produto .conteiner-imagem img { max-height: 520px; width: auto; margin: 0 auto; display: block; }

/* ---------- Ajustes v3 (com catalogo real) ---------- */
/* Sem divisorias tracejadas entre os cards */
.listagem li, .listagem .span3, .listagem [class*="span"] { border: 0 !important; }
/* Algarismos alinhados na Cormorant ("30 g", "269 ml") */
.nome-produto, .listagem-item .nome-produto, h1, h2, h3 { font-variant-numeric: lining-nums !important; font-feature-settings: "lnum" 1 !important; }
/* Card: nome mais proximo do preco */
.listagem-item .nome-produto { min-height: 0 !important; margin-bottom: 6px !important; display: block; }
.listagem-item .info-produto { padding: 0 2px !important; }
.listagem-item .preco-produto { margin-top: 2px !important; }
/* Menu em uma linha */
.menu.superior .nivel-um > li > a { padding: 14px 13px !important; }
.menu.superior .nivel-um > li > a .titulo { font-size: 12px !important; letter-spacing: .12em !important; }
/* Barra fixa ao rolar: branca, com filete, sem o nome da loja em serifa */
#barraTopo { background: rgba(255,255,255,.97) !important; border-bottom: 1px solid #E6E6E3 !important; box-shadow: none !important; }
#barraTopo .titulo, #barraTopo .logo { font-family: 'Cormorant', Georgia, serif !important; font-size: 20px !important; color: #263F2E !important; }
#barraTopo input { border: 0 !important; border-bottom: 1px solid #231F20 !important; background: transparent !important; }
/* Rodape: lista de categorias sem marcadores */
#rodape ul li { list-style: none !important; background-image: none !important; padding-left: 0 !important; }
#rodape ul li::before { display: none !important; content: none !important; }
#rodape .titulo { font-size: 12px !important; }

/* ---------- Ajustes v4 ---------- */
/* Descricao sem caixa/sombra */
.abas-custom .tab-content { box-shadow: none !important; padding: 8px 0 0 !important; border-top: 1px solid #E6E6E3 !important; }
/* Fotos: fundo identico ao da foto padronizada, sem escurecer */
.listagem-item .imagem-produto img, .produto .conteiner-imagem img { mix-blend-mode: normal !important; }
.produto .conteiner-imagem, .produto .conteiner-imagem > div, .produto .conteiner-imagem a { background: #F4F3EF !important; }
.produto .conteiner-imagem { padding: 0 !important; display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; }
.produto .conteiner-imagem img { max-height: none !important; width: 100% !important; height: auto !important; }

/* ---------- Ajustes v5 ---------- */
/* Menu numa linha so */
.menu.superior .nivel-um > li > a { padding: 14px 10px !important; }
.menu.superior .nivel-um > li > a .titulo { font-size: 11.5px !important; letter-spacing: .09em !important; }
/* Respiro entre foto e nome no card */
.listagem-item .info-produto { margin-top: 14px !important; }
/* Lista de parcelas vazia (sem pagamento ativo) nao vira barra grossa */
.parcelas-produto .accordion { border: 0 !important; margin: 0 !important; }
.parcelas-produto .accordion:empty { display: none !important; }
/* Barra fixa ao rolar: textos em sans, busca alinhada */
#barraTopo .carrinho, #barraTopo .carrinho *:not([class*="icon-"]), #barraTopo .titulo { font-family: 'Figtree', sans-serif !important; font-size: 13px !important; }
#barraTopo .logo, #barraTopo .nome-loja { font-family: 'Cormorant', Georgia, serif !important; font-size: 20px !important; }
#barraTopo .busca { margin-top: 2px !important; }

/* ---------- Cabecalho v6 (estilo Art of Tea) ---------- */
/* Faixa fina de aviso no topo */
.barra-inicial { background: #263F2E !important; min-height: 0 !important; padding: 0 !important; }
.barra-inicial .conteiner > .row-fluid { display: none !important; }
.barra-inicial .conteiner::after {
  content: "ENVIO PARA TODO O BRASIL  ·  RETIRADA GRÁTIS EM PERDIZES  ·  ATÉ 3X SEM JUROS";
  display: block; text-align: center; color: #FFFFFF; font-family: 'Figtree', sans-serif;
  font-size: 11px; letter-spacing: .16em; line-height: 34px; white-space: pre;
}
/* Linha principal: busca | logo | conta e sacola */
@media (min-width: 768px) {
  #cabecalho { padding: 0 !important; border-bottom: 0 !important; }
  #cabecalho .conteiner > .row-fluid {
    display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center;
    padding: 18px 0 10px; min-height: 0;
  }
  #cabecalho .conteiner > .row-fluid::before, #cabecalho .conteiner > .row-fluid::after { display: none !important; }
  #cabecalho .conteudo-topo, #cabecalho .conteudo-topo .superior, #cabecalho .conteudo-topo .inferior,
  #cabecalho .conteudo-topo .superior > div, #cabecalho .conteudo-topo .inferior > div { display: contents !important; }
  #cabecalho .bem-vindo { display: none !important; }
  /* Logo ao centro */
  #cabecalho .row-fluid > .span3 { grid-column: 2; grid-row: 1; width: 240px !important; margin: 0 !important; float: none !important; text-align: center; }
  #cabecalho .logo { margin: 0 !important; text-align: center; }
  #cabecalho .logo img { height: 88px !important; max-height: 88px !important; width: auto !important; max-width: none !important; display: inline-block !important; }
  /* Busca a esquerda, compacta */
  #cabecalho .busca { grid-column: 1; grid-row: 1; justify-self: start; width: 260px !important; max-width: 100%; margin: 0 !important; float: none !important; }
  #cabecalho .busca input { width: 100% !important; height: 36px !important; font-size: 13px !important; padding-left: 0 !important; padding-right: 30px !important; }
  #cabecalho .busca .botao-busca { position: absolute; right: 0; top: 4px; width: 28px; height: 28px; padding: 0 !important; background: transparent !important; }
  #cabecalho .busca form { position: relative; margin: 0; }
  /* Conta, pedidos e sacola a direita, so icones */
  #cabecalho .acoes-conta, #cabecalho .carrinho { grid-column: 3; grid-row: 1; justify-self: end; float: none !important; margin: 0 !important; border: 0 !important; }
  #cabecalho .acoes-conta { margin-right: 56px !important; display: flex !important; gap: 20px; padding: 0 !important; }
  #cabecalho .acoes-conta li { display: flex; align-items: center; border: 0 !important; padding: 0 !important; margin: 0 !important; }
  #cabecalho .acoes-conta li a { font-size: 0 !important; width: 24px; height: 24px; position: absolute; }
  #cabecalho .acoes-conta li { position: relative; width: 24px; height: 24px; }
  #cabecalho .acoes-conta i, #cabecalho .carrinho i { background: transparent !important; color: #231F20 !important; font-size: 19px !important; width: 24px; height: 24px; line-height: 24px; text-align: center; margin: 0 !important; }
  #cabecalho .carrinho a { display: flex !important; align-items: center; gap: 6px; padding: 0 !important; background: transparent !important; }
  #cabecalho .carrinho .vazio-text, #cabecalho .carrinho .titulo:not(.qtd-carrinho) { display: none !important; }
  #cabecalho .carrinho .qtd-carrinho { font-family: 'Figtree', sans-serif !important; font-size: 12px !important; color: #231F20 !important; }
  /* Menu de categorias logo abaixo, entre filetes */
  #cabecalho .menu.superior { border-top: 1px solid #E6E6E3 !important; border-bottom: 1px solid #E6E6E3 !important; margin: 8px 0 0 !important; }
  .menu.superior .nivel-um > li > a { padding: 15px 12px !important; }
}
/* Barra fixa ao rolar: so busca e sacola, limpa */
#barraTopo .span3.hidden-phone { visibility: hidden; }
#barraTopo .canais-contato { display: none !important; }
#barraTopo { height: auto !important; padding: 6px 0 12px !important; background: #FFFFFF !important; }
#barraTopo .busca input { height: 32px !important; font-size: 13px !important; }

/* ---------- Ajustes v7: busca em caixa e menu mais baixo ---------- */
@media (min-width: 768px) {
  #cabecalho .busca form { background: #F4F4F2 !important; border: 1px solid #E6E6E3 !important; height: 40px; display: flex; align-items: center; }
  #cabecalho .busca input, #cabecalho .busca .input-busca {
    border: 0 !important; background: transparent !important; height: 38px !important;
    padding: 0 40px 0 14px !important; font-size: 13px !important; color: #231F20 !important; box-shadow: none !important;
  }
  #cabecalho .busca input::placeholder { color: #8A8A85; }
  #cabecalho .busca .botao-busca { top: 5px !important; right: 6px !important; color: #263F2E !important; font-size: 15px !important; }
  #cabecalho .busca form:focus-within { border-color: #263F2E !important; background: #FFFFFF !important; }
  .menu.superior .nivel-um > li > a { padding: 12px 12px !important; line-height: 1.4 !important; }
  .menu.superior .nivel-um > li > a .titulo { margin: 0 !important; display: inline-block; }
  #cabecalho .menu.superior { margin-top: 4px !important; }
}
#barraTopo .busca form { background: #F4F4F2 !important; border: 1px solid #E6E6E3 !important; }
#barraTopo .busca input { border: 0 !important; padding-left: 12px !important; }

/* ---------- Cabecalho v8: igual a landing (logo horizontal a esquerda, lupa, conta e sacola; menu entre filetes abaixo) ---------- */
@media (min-width: 768px) {
  #cabecalho { border-bottom: 1px solid #E6E6E3 !important; background: #FFFFFF !important; }
  #cabecalho > .conteiner {
    display: grid !important; grid-template-columns: auto 1fr auto auto auto; align-items: center;
    column-gap: 20px; row-gap: 20px; padding: 22px 0 0 !important; min-height: 0 !important;
  }
  #cabecalho > .conteiner::before, #cabecalho > .conteiner::after { display: none !important; }
  #cabecalho > .conteiner > .row-fluid { display: contents !important; }
  /* Logo horizontal a esquerda */
  #cabecalho .row-fluid > .span3 { grid-column: 1 !important; grid-row: 1 !important; width: 222px !important; height: auto !important; min-height: 0 !important; text-align: left !important; }
  #cabecalho .logo, #cabecalho .logo a { margin: 0 !important; padding: 0 !important; line-height: 0 !important; float: none !important; height: auto !important; text-align: left !important; }
  #cabecalho .logo img { display: block !important; height: 46px !important; max-height: 46px !important; width: auto !important; max-width: none !important; }
  /* Menu na segunda linha, entre filetes */
  #cabecalho .menu.superior { grid-column: 1 / -1 !important; grid-row: 2 !important; border: 0 !important; border-top: 1px solid #E6E6E3 !important; margin: 0 !important; text-align: center; background: transparent !important; }
  .menu.superior .nivel-um { white-space: nowrap; }
  .menu.superior .nivel-um > li { padding: 0 !important; }
  .menu.superior .nivel-um > li > a { padding: 12px 12px !important; }
  .menu.superior .nivel-um > li > a .titulo { font-size: 12px !important; letter-spacing: .12em !important; }
  /* Lupa que abre a busca ao clicar */
  #cabecalho .busca { grid-column: 3 !important; grid-row: 1 !important; width: 26px !important; height: 26px; position: relative; justify-self: end; margin: 0 !important; }
  #cabecalho .busca form {
    position: absolute !important; right: 0; top: 50%; transform: translateY(-50%); width: 26px; height: 38px;
    background: transparent !important; border: 1px solid transparent !important; transition: width .25s ease, background .2s; z-index: 30;
  }
  #cabecalho .busca input, #cabecalho .busca .input-busca { cursor: pointer; padding: 0 30px 0 12px !important; color: transparent !important; height: 36px !important; background: transparent !important; border: 0 !important; }
  #cabecalho .busca input::placeholder { color: transparent !important; }
  #cabecalho .busca .botao-busca { pointer-events: none; right: 0 !important; top: 4px !important; color: #231F20 !important; font-size: 18px !important; }
  #cabecalho .busca form:focus-within { width: 280px; background: #FFFFFF !important; border-color: #263F2E !important; }
  #cabecalho .busca form:focus-within input { cursor: text; color: #231F20 !important; }
  #cabecalho .busca form:focus-within input::placeholder { color: #8A8A85 !important; }
  #cabecalho .busca form:focus-within .botao-busca { pointer-events: auto; right: 6px !important; color: #263F2E !important; font-size: 15px !important; }
  /* Conta e sacola */
  #cabecalho .acoes-conta { grid-column: 4 !important; grid-row: 1 !important; margin: 0 !important; gap: 18px !important; }
  #cabecalho .carrinho { grid-column: 5 !important; grid-row: 1 !important; }
}

/* ---------- Cabecalho v9: linha unica + menu "Produtos" que abre ao passar o mouse; barra fixa igual ao cabecalho ---------- */
@media (min-width: 768px) {
  #cabecalho > .conteiner { grid-template-columns: auto 1fr auto auto auto !important; padding: 18px 0 !important; row-gap: 0 !important; }
  /* Menu vira um item "PRODUTOS" ao lado do logo */
  #cabecalho .menu.superior {
    grid-column: 2 !important; grid-row: 1 !important; justify-self: start; position: relative;
    border: 0 !important; margin: 0 0 0 28px !important; padding: 0 !important; text-align: left !important;
  }
  #cabecalho .menu.superior::before {
    content: "PRODUTOS  +"; white-space: pre; display: inline-block; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 500;
    letter-spacing: .14em; color: #231F20; padding: 14px 0; cursor: pointer;
  }
  #cabecalho .menu.superior::after {
    content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 14px; /* ponte para o mouse nao perder o hover */
  }
  #cabecalho .menu.superior .nivel-um {
    display: none !important; position: absolute; left: -22px; top: calc(100% + 14px); z-index: 60;
    background: #FFFFFF; border: 1px solid #E6E6E3; box-shadow: 0 12px 30px rgba(35,31,32,.08);
    padding: 14px 0 !important; min-width: 260px; white-space: normal; text-align: left;
  }
  #cabecalho .menu.superior:hover .nivel-um, #cabecalho .menu.superior:focus-within .nivel-um { display: block !important; }
  #cabecalho .menu.superior:hover::before { color: #263F2E; }
  #cabecalho .menu.superior .nivel-um > li { display: block !important; float: none !important; }
  #cabecalho .menu.superior .nivel-um > li > a { display: block !important; padding: 9px 22px !important; text-align: left !important; border: 0 !important; }
  #cabecalho .menu.superior .nivel-um > li > a .titulo { font-family: 'Cormorant', Georgia, serif !important; font-size: 19px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 400 !important; }
  #cabecalho .menu.superior .nivel-um > li > a:hover .titulo { color: #263F2E !important; }
  #cabecalho .menu.superior .nivel-um > li > a:hover { background: #F4F4F2 !important; }
}

/* Barra fixa ao rolar = mesmo cabecalho (logo, lupa, sacola) */
#barraTopo { background: #FFFFFF !important; border-bottom: 1px solid #E6E6E3 !important; box-shadow: 0 6px 18px rgba(35,31,32,.05) !important; padding: 10px 0 !important; height: auto !important; }
#barraTopo .conteiner > .row-fluid { display: flex !important; align-items: center; gap: 22px; }
#barraTopo .conteiner > .row-fluid::before, #barraTopo .conteiner > .row-fluid::after { display: none !important; }
#barraTopo .row-fluid > .span3:first-child { visibility: visible !important; width: auto !important; margin: 0 !important; flex: 0 0 auto; }
#barraTopo .row-fluid > .span3:first-child .titulo { margin: 0 !important; line-height: 0 !important; }
#barraTopo .row-fluid > .span3:first-child .titulo a {
  display: block; width: 170px; height: 36px; font-size: 0 !important; color: transparent !important;
  background: url("https://cdn.awsli.com.br/400x300/2906/2906469/logo/logo-horizontal-n76r0lvtua.png") no-repeat left center / contain;
}
#barraTopo .row-fluid > .span3:nth-child(2) { display: none !important; }
#barraTopo .row-fluid > .span6 { margin-left: auto !important; width: auto !important; flex: 0 0 auto; }
#barraTopo .span6 > .row-fluid { display: flex !important; align-items: center; gap: 20px; }
#barraTopo .span6 > .row-fluid::before, #barraTopo .span6 > .row-fluid::after { display: none !important; }
#barraTopo .busca { width: 260px !important; margin: 0 !important; float: none !important; }
#barraTopo .busca form { position: relative; margin: 0; height: 36px; background: #F4F4F2 !important; border: 1px solid #E6E6E3 !important; }
#barraTopo .busca input { width: 100% !important; height: 34px !important; border: 0 !important; background: transparent !important; padding: 0 34px 0 12px !important; font-size: 13px !important; }
#barraTopo .busca .botao-busca { position: absolute; right: 4px; top: 4px; width: 26px; height: 26px; padding: 0 !important; background: transparent !important; color: #263F2E !important; }
#barraTopo .span6 > .row-fluid > .span6 { width: auto !important; margin: 0 !important; float: none !important; }
#barraTopo .carrinho a { display: flex !important; align-items: center; background: transparent !important; padding: 0 !important; }
#barraTopo .carrinho i { background: transparent !important; color: #231F20 !important; font-size: 19px !important; }
#barraTopo .carrinho .vazio-text, #barraTopo .carrinho span.titulo, #barraTopo .carrinho-interno { display: none !important; }

/* ---------- Banners v10: de ponta a ponta (capa e categorias) ---------- */
html, body { overflow-x: hidden; }
.secao-banners { margin: 0 !important; }
.secao-banners > .conteiner { box-shadow: none !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
.banner.cheio { width: 100vw !important; max-width: none !important; margin-left: calc(50% - 50vw) !important; margin-right: 0 !important; padding: 0 !important; }
.banner.cheio .row-fluid, .banner.cheio .span12, .banner.cheio .flexslider { margin: 0 !important; width: 100% !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; background: transparent !important; }
.banner.cheio img { width: 100% !important; height: auto !important; display: block; }
.banner.cheio .flex-control-nav { bottom: 14px !important; }

/* ---------- v11: WhatsApp flutuante igual a landing + botao ENVIAR RECEITA no cabecalho ---------- */
/* Botao flutuante (app nativo da Loja Integrada) */
.li-whatsapp a {
  position: fixed !important; right: 20px !important; bottom: 20px !important; z-index: 90 !important;
  width: 52px !important; height: 52px !important; border-radius: 50% !important;
  background: #263F2E !important; border: 1px solid rgba(255,255,255,.25) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.18) !important;
  display: flex !important; align-items: center; justify-content: center;
}
.li-whatsapp a i, .li-whatsapp a .fa { font-size: 0 !important; width: 26px; height: 26px; display: block; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2Zm0 18.2a8.2 8.2 0 0 1-4.2-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2Zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8-.2-.1-.4-.1-.6.1l-.8 1c-.1.2-.3.2-.5.1a6.7 6.7 0 0 1-3.3-2.9c-.3-.4.2-.4.7-1.3.1-.2 0-.3 0-.5l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.7 11.8 11.8 0 0 0 4.5 4c1.7.7 2.3.8 3.2.6.5-.1 1.5-.6 1.7-1.2.2-.6.2-1.1.1-1.2l-.4-.3Z'/%3E%3C/svg%3E") no-repeat center / contain !important; }
.li-whatsapp a i::before { content: none !important; }
.li-whatsapp img { display: none !important; }
.li-whatsapp a:hover { background: #1F3426 !important; }

/* ENVIAR RECEITA: reaproveita o link de WhatsApp do rodape e o posiciona no cabecalho (computador) */
@media (min-width: 1024px) {
  #rodape .institucional .span12.visible-phone { display: block !important; height: 0 !important; overflow: visible !important; margin: 0 !important; padding: 0 !important; }
  #rodape .institucional .span12.visible-phone ul > li:not(.tel-whatsapp) { display: none !important; }
  #rodape .tel-whatsapp a {
    position: absolute !important; top: 54px; right: calc((100vw - min(1240px, 100vw - 40px)) / 2 + 214px); z-index: 40;
    display: inline-flex !important; align-items: center; gap: 9px; height: 40px; padding: 0 20px !important;
    background: #263F2E !important; border: 1px solid #263F2E !important; color: transparent !important; font-size: 0 !important;
    text-decoration: none !important; white-space: nowrap;
  }
  #rodape .tel-whatsapp a::after { content: "ENVIAR RECEITA"; color: #FFFFFF; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .14em; }
  #rodape .tel-whatsapp a i { font-size: 0 !important; width: 16px; height: 16px; display: inline-block; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2Zm0 18.2a8.2 8.2 0 0 1-4.2-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2Zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8-.2-.1-.4-.1-.6.1l-.8 1c-.1.2-.3.2-.5.1a6.7 6.7 0 0 1-3.3-2.9c-.3-.4.2-.4.7-1.3.1-.2 0-.3 0-.5l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.7 11.8 11.8 0 0 0 4.5 4c1.7.7 2.3.8 3.2.6.5-.1 1.5-.6 1.7-1.2.2-.6.2-1.1.1-1.2l-.4-.3Z'/%3E%3C/svg%3E") no-repeat center / contain !important; }
  #rodape .tel-whatsapp a i::before { content: none !important; }
  #rodape .tel-whatsapp a:hover { background: #1F3426 !important; }
}
@media (min-width: 1024px) { #rodape { position: static !important; } }
/* Sacola: so o icone e a quantidade */
@media (min-width: 768px) {
  #cabecalho .carrinho > a > span, #cabecalho .carrinho > a > b { display: none !important; }
  #cabecalho .carrinho .qtd-carrinho { display: inline-block !important; min-width: 18px; height: 18px; line-height: 18px; border-radius: 9px; background: #263F2E; color: #FFFFFF !important; font-size: 11px !important; text-align: center; margin-left: -6px; }
}

/* ---------- v12: mini-sacola (abre ao passar o mouse no carrinho) ---------- */
#cabecalho .carrinho .carrinho-interno, #barraTopo .carrinho .carrinho-interno {
  width: 320px !important; padding: 18px 20px !important; background: #FFFFFF !important;
  border: 1px solid #E6E6E3 !important; box-shadow: 0 12px 30px rgba(35,31,32,.10) !important; border-radius: 0 !important;
  right: 0 !important; left: auto !important; z-index: 70 !important; text-align: left !important;
}
#cabecalho .carrinho-interno *, #barraTopo .carrinho-interno * { font-style: normal !important; letter-spacing: 0 !important; text-transform: none !important; }
#cabecalho .carrinho .carrinho-interno ul { margin: 0 0 12px !important; padding: 0 !important; max-height: 260px; overflow-y: auto; }
#cabecalho .carrinho .carrinho-interno ul li {
  display: grid !important; grid-template-columns: 56px 1fr auto; grid-template-areas: "img nome preco"; gap: 12px; align-items: center;
  padding: 10px 0 !important; border-bottom: 1px solid #E6E6E3 !important; list-style: none !important; background: none !important;
}
#cabecalho .carrinho .carrinho-interno .imagem-produto { grid-area: img; width: 56px !important; height: 56px !important; background: #F4F3EF !important; display: flex !important; align-items: center; justify-content: center; }
#cabecalho .carrinho .carrinho-interno .imagem-produto img { max-width: 100% !important; max-height: 100% !important; width: auto !important; height: auto !important; }
#cabecalho .carrinho .carrinho-interno .nome-produto { grid-area: nome; display: block !important; font-family: 'Cormorant', Georgia, serif !important; font-size: 16px !important; line-height: 1.2 !important; color: #231F20 !important; min-height: 0 !important; }
#cabecalho .carrinho .carrinho-interno .preco-produto { grid-area: preco; }
#cabecalho .carrinho .carrinho-interno .preco-produto .titulo, #cabecalho .carrinho .carrinho-interno .preco-promocional { display: inline !important; font-family: 'Figtree', sans-serif !important; font-size: 13px !important; font-weight: 500 !important; color: #231F20 !important; }
#cabecalho .carrinho .carrinho-interno .carrinho-rodape { display: flex !important; flex-direction: column; gap: 12px; padding: 0 !important; border: 0 !important; }
#cabecalho .carrinho .carrinho-interno .carrinho-info { display: flex !important; justify-content: space-between; align-items: baseline; font-family: 'Figtree', sans-serif !important; font-size: 13px !important; color: #6B6F6A !important; }
#cabecalho .carrinho .carrinho-interno .carrinho-info > i { display: inline !important; width: auto !important; height: auto !important; font-family: 'Figtree', sans-serif !important; font-size: 13px !important; line-height: 1.4 !important; color: #6B6F6A !important; background: none !important; }
#cabecalho .carrinho .carrinho-interno .carrinho-info .titulo, #cabecalho .carrinho .carrinho-interno .carrino-total .titulo { display: inline !important; font-family: 'Figtree', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; color: #231F20 !important; }
#cabecalho .carrinho .carrinho-interno .carrinho-rodape .botao {
  display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 46px !important;
  background: #263F2E !important; border: 1px solid #263F2E !important; color: #FFFFFF !important; padding: 0 !important; font-size: 0 !important;
}
#cabecalho .carrinho .carrinho-interno .carrinho-rodape .botao i { display: none !important; }
#cabecalho .carrinho .carrinho-interno .carrinho-rodape .botao::after { content: "VER SACOLA E FINALIZAR"; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .14em; color: #FFFFFF; }

/* ---------- v13: cabecalho fixo = o mesmo cabecalho do topo (computador) ---------- */
@media (min-width: 768px) {
  #barraTopo { display: none !important; }
  .barra-inicial { position: fixed !important; top: 0; left: 0; right: 0; z-index: 55 !important; }
  #cabecalho { position: fixed !important; top: 34px; left: 0; right: 0; z-index: 50 !important; background: #FFFFFF !important; }
  .conteiner-principal { padding-top: 118px !important; }
}
@media (min-width: 1024px) {
  #rodape .tel-whatsapp a { position: fixed !important; z-index: 56 !important; }
}

/* ---------- v14: ao rolar, faixa verde some e o cabecalho fica mais baixo (animacao ligada a rolagem) ---------- */
@property --hv-p { syntax: '<number>'; inherits: true; initial-value: 0; }
@keyframes hv-rolagem { from { --hv-p: 0; } to { --hv-p: 1; } }
@supports (animation-timeline: scroll()) {
  @media (min-width: 768px) {
    html { animation: hv-rolagem linear both; animation-timeline: scroll(root); animation-range: 0 120px; }
    .barra-inicial { transform: translateY(calc(var(--hv-p, 0) * -100%)) !important; }
    #cabecalho { top: calc(34px * (1 - var(--hv-p, 0))) !important; }
    #cabecalho > .conteiner { padding: calc(18px - 8px * var(--hv-p, 0)) 0 !important; }
    #cabecalho .logo img { height: calc(46px - 8px * var(--hv-p, 0)) !important; max-height: calc(46px - 8px * var(--hv-p, 0)) !important; }
  }
  @media (min-width: 1024px) {
    #rodape .tel-whatsapp a { top: calc(54px - 41px * var(--hv-p, 0)) !important; }
  }
}

/* ---------- v15: layout de ponta a ponta (sem margens largas nas laterais), vitrines com 5 produtos ---------- */
@media (min-width: 768px) {
  .conteiner { max-width: none !important; width: auto !important; padding-left: 28px !important; padding-right: 28px !important; }
  #cabecalho > .conteiner { padding-left: 28px !important; padding-right: 28px !important; }
  .secao-banners > .conteiner { padding-left: 0 !important; padding-right: 0 !important; }
  /* Vitrines e categorias: grade unica, sem quebra em linhas de 4 */
  .listagem > ul { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 20px; row-gap: 36px; margin: 0 !important; }
  .listagem > ul > li.listagem-linha, .listagem > ul > li.listagem-linha > ul { display: contents !important; }
  .listagem > ul > li.listagem-linha > ul > li { width: auto !important; margin: 0 !important; float: none !important; }
  .listagem > ul::before, .listagem > ul::after, .listagem > ul > li.listagem-linha::before, .listagem > ul > li.listagem-linha::after,
  .listagem > ul > li.listagem-linha > ul::before, .listagem > ul > li.listagem-linha > ul::after { display: none !important; content: none !important; }
  /* Card ocupa a coluna inteira */
  .listagem .listagem-item { margin: 0 !important; padding: 0 0 8px !important; }
  .listagem .listagem-item .imagem-produto { width: 100% !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
}
@media (min-width: 1280px) {
  .listagem > ul { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  #rodape .tel-whatsapp a { right: 242px !important; }
}

/* ---------- v16: faixa de beneficios abaixo do banner (inserida pelo codigo HTML do rodape) ---------- */
.hv-beneficios { border-bottom: 1px solid #E6E6E3; background: #FFFFFF; }
.hv-beneficios ul { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 !important; padding: 0 28px !important; list-style: none; }
.hv-beneficios li { display: flex; align-items: center; gap: 14px; padding: 22px 18px; border-left: 1px solid #E6E6E3; }
.hv-beneficios li:first-child { border-left: 0; padding-left: 0; }
.hv-beneficios svg { flex: 0 0 26px; width: 26px; height: 26px; fill: none; stroke: #263F2E; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.hv-beneficios strong { display: block; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: #231F20; line-height: 1.4; }
.hv-beneficios span { display: block; font-family: 'Figtree', sans-serif; font-size: 13px; color: #6B6F6A; line-height: 1.4; margin-top: 2px; }
@media (max-width: 1100px) {
  .hv-beneficios ul { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding: 0 16px !important; }
  .hv-beneficios li { flex: 0 0 auto; min-width: 240px; scroll-snap-align: start; }
}

/* ---------- v17: card de produto (botao VER PRODUTO alinhado no rodape do card, etiquetas sobre a foto) ---------- */
@media (min-width: 768px) {
  .listagem > ul > li.listagem-linha > ul > li { display: flex !important; }
  .listagem .listagem-item { position: relative; display: flex !important; flex-direction: column; width: 100%; }
  .listagem .listagem-item .info-produto { flex: 1 1 auto; }
  .listagem .listagem-item .acoes-produto {
    display: block !important; position: static !important; opacity: 1 !important; visibility: visible !important;
    margin: 14px 0 0 !important; padding: 0 !important; width: 100% !important; background: transparent !important;
  }
  .listagem .listagem-item .acoes-produto .botao-comprar {
    display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 42px !important; padding: 0 !important; margin: 0 !important;
    background: transparent !important; border: 1px solid #231F20 !important; border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important;
    color: transparent !important; font-size: 0 !important; position: relative; z-index: 2;
  }
  .listagem .listagem-item .acoes-produto .botao-comprar i { display: none !important; }
  .listagem .listagem-item .acoes-produto .botao-comprar::after {
    content: "VER PRODUTO"; font-family: 'Figtree', sans-serif; font-size: 11.5px; font-weight: 600; letter-spacing: .14em; color: #231F20;
  }
  .listagem .listagem-item:hover .acoes-produto .botao-comprar { background: #263F2E !important; border-color: #263F2E !important; }
  .listagem .listagem-item:hover .acoes-produto .botao-comprar::after { color: #FFFFFF; }
}
/* Etiquetas da plataforma (Novo, Promocao, Frete gratis) sobre a foto */
.listagem .listagem-item .bandeiras-produto { display: flex !important; flex-wrap: wrap; gap: 6px; position: absolute !important; top: 10px; left: 10px; right: auto; z-index: 2; pointer-events: none; }
.listagem .listagem-item .bandeiras-produto span, .listagem .listagem-item .bandeiras-produto .bandeira {
  display: inline-block !important; position: static !important; margin: 0 !important; padding: 4px 9px !important; border-radius: 0 !important;
  background: #263F2E !important; color: #FFFFFF !important; font-family: 'Figtree', sans-serif !important; font-size: 10.5px !important; font-weight: 600 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important; line-height: 1.3 !important; box-shadow: none !important; text-shadow: none !important;
}

/* ---------- v18: rodape no estilo da landing (bloco inserido pelo codigo HTML do rodape) ---------- */
#rodape { background: #FFFFFF !important; border-top: 0 !important; }
.hv-rodape { background: #1C2F22; color: rgba(255,255,255,.65); font-family: 'Figtree', sans-serif; font-size: 13.5px; line-height: 1.7; }
.hv-rodape-colunas { display: grid; grid-template-columns: 1.4fr 1fr 1.2fr 1fr; gap: 40px; padding: 56px 28px 44px; }
.hv-rodape-marca strong { display: block; font-family: 'Cormorant', Georgia, serif; font-size: 26px; font-weight: 400; letter-spacing: .12em; color: #FFFFFF; line-height: 1.1; }
.hv-rodape-marca small { display: block; font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: rgba(255,255,255,.6); margin-top: 6px; }
.hv-rodape-marca p { margin: 18px 0 0; max-width: 300px; }
#rodape .hv-rodape h5 { margin: 0 0 14px !important; font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .16em !important; text-transform: uppercase !important; color: #FFFFFF !important; }
.hv-rodape ul { margin: 0 !important; padding: 0 !important; list-style: none; }
.hv-rodape li { margin: 0 0 6px; }
#rodape .hv-rodape a { color: rgba(255,255,255,.85) !important; text-decoration: none !important; }
#rodape .hv-rodape a:hover { color: #FFFFFF !important; text-decoration: underline !important; }
.hv-rodape-legal { border-top: 1px solid rgba(255,255,255,.12); padding: 18px 28px; font-size: 12px; color: rgba(255,255,255,.55); }
/* Esconde o bloco antigo de categorias/contato (o link de WhatsApp continua servindo ao botao ENVIAR RECEITA) */
#rodape .institucional { padding: 0 !important; min-height: 0 !important; height: 0 !important; overflow: visible !important; border: 0 !important; background: transparent !important; }
#rodape .institucional .links-rodape { display: none !important; }
#rodape .institucional .span12.visible-phone .titulo { display: none !important; }
@media (max-width: 1023px) { #rodape .institucional { display: none !important; } }
/* Faixa de pagamento e selos: clara, logo abaixo */
#rodape .pagamento-selos { background: #F4F3EF !important; border: 0 !important; padding: 22px 0 !important; }
#rodape .pagamento-selos .titulo { font-family: 'Figtree', sans-serif !important; font-size: 11px !important; font-weight: 600 !important; letter-spacing: .16em !important; text-transform: uppercase !important; color: #231F20 !important; }
@media (max-width: 900px) {
  .hv-rodape-colunas { grid-template-columns: 1fr 1fr; gap: 28px; padding: 40px 16px 32px; }
  .hv-rodape-marca { grid-column: 1 / -1; }
  .hv-rodape-legal { padding: 16px; padding-bottom: 88px; }
}

/* ---------- v19: faixa de beneficios com 3 itens; selos (regularizada / farmaceutica) no rodape ---------- */
.hv-beneficios ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hv-beneficios li { justify-content: center; }
.hv-beneficios li:first-child { padding-left: 18px; }
.hv-rodape-selos { margin: 22px 0 0 !important; display: flex; flex-direction: column; gap: 14px; }
.hv-rodape-selos li { display: flex; align-items: flex-start; gap: 12px; margin: 0 !important; }
.hv-rodape-selos svg { flex: 0 0 22px; width: 22px; height: 22px; fill: none; stroke: #FFFFFF; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; margin-top: 2px; }
.hv-rodape-selos b { display: block; font-size: 11.5px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #FFFFFF; }
.hv-rodape-selos span { display: block; font-size: 13px; color: rgba(255,255,255,.65); }

/* ---------- v20: logo como no heraverde.com.br (simbolo + nome em texto nitido); busca nao fica atras do ENVIAR RECEITA ---------- */
#cabecalho .row-fluid > .span3 { width: 270px !important; }
#cabecalho .logo { margin: 0 !important; line-height: 1 !important; }
#cabecalho .logo a { display: inline-grid !important; grid-template-columns: auto auto; grid-template-rows: auto auto; column-gap: 12px; align-items: center; text-decoration: none !important; }
#cabecalho .logo img {
  content: url("https://cdn.awsli.com.br/2906/2906469/favicon/favicon-128-72mlcy6ako.png");
  grid-row: 1 / 3; grid-column: 1; width: auto !important; position: static !important; margin: 0 !important; transform: none !important;
  height: calc(42px - 6px * var(--hv-p, 0)) !important; max-height: none !important;
}
#cabecalho .logo a::before {
  content: "HERA VERDE"; grid-column: 2; grid-row: 1; align-self: end;
  font-family: 'Cormorant', Georgia, serif; font-size: calc(27px - 3px * var(--hv-p, 0)); font-weight: 500; letter-spacing: .12em; line-height: 1; color: #263F2E;
}
#cabecalho .logo a::after {
  content: "FARMÁCIA MAGISTRAL INTEGRATIVA"; grid-column: 2; grid-row: 2; align-self: start; margin-top: 5px;
  font-family: 'Figtree', sans-serif; font-size: 8.5px; font-weight: 500; letter-spacing: .2em; line-height: 1; color: rgba(38,63,46,.62); white-space: nowrap;
}
/* Busca aberta: esconde o ENVIAR RECEITA para o campo nao ficar por baixo dele */
#rodape .tel-whatsapp a { transition: opacity .15s ease; }
body:has(#cabecalho .busca form:focus-within) #rodape .tel-whatsapp a { opacity: 0 !important; pointer-events: none !important; }

/* ---------- v21: logo identica a da landing (mesmo arquivo, 1440 px, nitido em telas retina) ---------- */
#cabecalho .row-fluid > .span3 { width: 230px !important; }
#cabecalho .logo a { display: block !important; line-height: 0 !important; }
#cabecalho .logo a::before, #cabecalho .logo a::after { content: none !important; display: none !important; }
#cabecalho .logo img {
  content: url("https://cdn.jsdelivr.net/gh/hiranhaun79/heraverde-imagens@5390b94/marca/logo-horizontal-hd.png");
  height: calc(44px - 8px * var(--hv-p, 0)) !important; max-height: none !important; width: calc((44px - 8px * var(--hv-p, 0)) * 4.7368) !important; max-width: none !important;
  position: static !important; margin: 0 !important; transform: none !important;
}
@media (max-width: 767px) { #cabecalho .logo img { height: 34px !important; width: 161px !important; } }

/* ---------- v22: sacola lateral (gaveta) ao comprar; campo de quantidade na pagina do produto; botao da listagem adiciona direto ---------- */
/* Gaveta: o modal nativo "comprar-ajax" vira painel fixo a direita */
.fancybox-overlay { background: rgba(35,31,32,.35) !important; }
.fancybox-wrap.modal-comprar-ajax-status {
  position: fixed !important; top: 0 !important; right: 0 !important; left: auto !important; bottom: 0 !important;
  width: min(440px, 100vw) !important; height: 100vh !important; animation: hv-gaveta .28s ease-out;
}
@keyframes hv-gaveta { from { transform: translateX(100%); } to { transform: translateX(0); } }
.modal-comprar-ajax-status .fancybox-skin { height: 100% !important; padding: 0 !important; border-radius: 0 !important; background: #FFFFFF !important; box-shadow: -12px 0 40px rgba(35,31,32,.15) !important; }
.modal-comprar-ajax-status .fancybox-outer, .modal-comprar-ajax-status .fancybox-inner { height: 100% !important; width: 100% !important; overflow: hidden !important; }
.modal-comprar-ajax-status #comprar-ajax-status, .modal-comprar-ajax-status #comprar-ajax-status > .sucesso { height: 100%; }
.modal-comprar-ajax-status #carrinho-mini { display: flex !important; flex-direction: column; padding: 0 !important; }
.modal-comprar-ajax-status #carrinho-mini::before {
  content: "SUA SACOLA"; display: block; padding: 26px 28px 20px; border-bottom: 1px solid #E6E6E3;
  font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .16em; color: #231F20;
}
.modal-comprar-ajax-status .fancybox-close {
  top: 18px !important; right: 18px !important; width: 32px !important; height: 32px !important; background: none !important;
}
.modal-comprar-ajax-status .fancybox-close::before { content: "\00D7"; display: block; font: 300 30px/32px 'Figtree', sans-serif; color: #231F20; text-align: center; }
/* Itens */
.modal-comprar-ajax-status .table-header { display: none !important; }
.modal-comprar-ajax-status .scroll { flex: 1 1 auto; overflow-y: auto !important; max-height: none !important; padding: 0 28px; }
.modal-comprar-ajax-status .table-body, .modal-comprar-ajax-status .table-body tbody { display: block !important; width: 100% !important; margin: 0 !important; border: 0 !important; }
.modal-comprar-ajax-status .table-body tr {
  display: grid !important; grid-template-columns: 72px 1fr auto; grid-template-areas: "img info del" "img qtd preco";
  column-gap: 14px; row-gap: 8px; padding: 18px 0 !important; border-bottom: 1px solid #E6E6E3 !important; background: none !important;
}
.modal-comprar-ajax-status .table-body td { display: block !important; padding: 0 !important; border: 0 !important; background: none !important; width: auto !important; }
.modal-comprar-ajax-status .table-body td.conteiner-imagem { grid-area: img; }
.modal-comprar-ajax-status .table-body td.conteiner-imagem img { width: 72px !important; height: 72px !important; object-fit: contain; background: #F4F3EF; }
.modal-comprar-ajax-status .table-body td:nth-child(2) { grid-area: info; }
.modal-comprar-ajax-status .table-body .produto-info a { font-family: 'Cormorant', Georgia, serif !important; font-size: 17px !important; line-height: 1.2 !important; color: #231F20 !important; }
.modal-comprar-ajax-status .table-body .produto-info ul { display: none !important; }
.modal-comprar-ajax-status .table-body td.coluna-preco { grid-area: preco; display: block !important; align-self: center; text-align: right; }
.modal-comprar-ajax-status .table-body td.coluna-preco * { font-family: 'Figtree', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: #231F20 !important; }
.modal-comprar-ajax-status .table-body td.clearfix { grid-area: qtd; }
.modal-comprar-ajax-status .table-body td:last-child { grid-area: del; text-align: right; }
.modal-comprar-ajax-status .excluir a { color: #8A8A85 !important; font-size: 14px !important; }
.modal-comprar-ajax-status .quantidade { display: inline-flex !important; align-items: center; border: 1px solid #E6E6E3; height: 34px; }
.modal-comprar-ajax-status .quantidade input { color: #231F20 !important; font-size: 14px !important; width: 40px !important; height: 32px !important; border: 0 !important; text-align: center; box-shadow: none !important; font-family: 'Figtree', sans-serif; margin: 0 !important; padding: 0 !important; }
.modal-comprar-ajax-status .quantidade a, .modal-comprar-ajax-status .quantidade button { width: 30px; height: 32px; display: inline-flex !important; align-items: center; justify-content: center; color: #231F20 !important; }
.fancybox-wrap.modal-comprar-ajax-status #carrinho-mini .quantidade button.atualizar-quantidade { display: none !important; }
.modal-comprar-ajax-status .quantidade .icon-minus, .modal-comprar-ajax-status .quantidade .icon-plus { font-size: 11px !important; }
.modal-comprar-ajax-status #comprar-ajax-status > .sucesso { display: flex !important; flex-direction: column; }
.modal-comprar-ajax-status #carrinho-mini { flex: 1 1 auto; min-height: 0; height: auto !important; }
/* Rodape da gaveta: subtotal + botoes fixos embaixo */
.modal-comprar-ajax-status #carrinho-mini > table.table-footer { display: block !important; width: auto !important; margin: 0 28px !important; padding: 0 !important; border: 0 !important; }
.modal-comprar-ajax-status .table-footer tbody, .modal-comprar-ajax-status .table-footer tr, .modal-comprar-ajax-status .table-footer td { display: block !important; width: auto !important; height: auto !important; border: 0 !important; background: none !important; padding: 0 !important; }
.modal-comprar-ajax-status .table-footer td:empty { display: none !important; }
.modal-comprar-ajax-status .table-footer .subtotal { padding-top: 16px !important; border-top: 1px solid #E6E6E3; }
.modal-comprar-ajax-status .subtotal { display: flex !important; justify-content: space-between; align-items: baseline; font-family: 'Figtree', sans-serif; font-size: 14px; color: #6B6F6A; }
.modal-comprar-ajax-status .subtotal strong { font-size: 17px !important; color: #231F20 !important; font-weight: 600 !important; }
.modal-comprar-ajax-status .buttons { display: flex !important; flex-direction: column-reverse; gap: 10px; padding: 18px 28px 28px !important; border: 0 !important; background: #FFFFFF; }
.modal-comprar-ajax-status .buttons .botao { display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 48px !important; margin: 0 !important; border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important; font-family: 'Figtree', sans-serif !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase !important; box-sizing: border-box !important; }
.modal-comprar-ajax-status .buttons .ir-carrinho { background: #263F2E !important; border: 1px solid #263F2E !important; color: #FFFFFF !important; }
.modal-comprar-ajax-status .buttons .ir-carrinho i { display: none !important; }
.modal-comprar-ajax-status .buttons .continuar-comprando { background: transparent !important; border: 1px solid #231F20 !important; color: #231F20 !important; }
@media (max-width: 767px) { .modal-comprar-ajax-status .buttons .ir-carrinho.hidden-phone { display: none !important; } }
@media (min-width: 768px) { .modal-comprar-ajax-status .buttons .ir-carrinho.visible-phone { display: none !important; } }

/* Pagina do produto: quantidade ao lado do botao comprar */
.produto .comprar { display: grid !important; grid-template-columns: 116px 1fr; gap: 12px; align-items: stretch; }
.produto .comprar .qtde-adicionar-carrinho { display: flex !important; flex-direction: column; justify-content: center; margin: 0 !important; border: 1px solid #CFCFCA; height: 52px; padding: 0 12px; }
.produto .comprar .qtde-carrinho-title { font-family: 'Figtree', sans-serif !important; font-size: 10px !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #6B6F6A !important; line-height: 1.2; }
.produto .comprar .qtde-carrinho-title, .produto .comprar input.qtde-carrinho { display: block !important; }
.produto .comprar .qtde-adicionar-carrinho { align-items: stretch !important; }
.produto .comprar input.qtde-carrinho { width: 100% !important; height: 24px !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 16px !important; font-weight: 600 !important; color: #231F20 !important; background: transparent !important; position: static !important; float: none !important; }
.produto .comprar .botao-comprar { height: 52px !important; margin: 0 !important; display: flex !important; align-items: center; justify-content: center; }
.produto .comprar .disponibilidade-produto { grid-column: 1 / -1; }
.produto .comprar .qtde-carrinho-title { position: static !important; text-align: left !important; }
.produto .comprar .qtde-adicionar-carrinho { width: 116px !important; box-sizing: border-box !important; overflow: hidden; text-align: left !important; }
.produto .comprar input.qtde-carrinho { max-width: 100% !important; text-align: left !important; }

/* Listagem: botao adiciona direto a sacola (a foto e o nome continuam abrindo o produto) */
@media (min-width: 768px) {
  .listagem .listagem-item .acoes-produto .botao-comprar::after { content: "ADICIONAR À SACOLA"; }
}

/* ---------- v23: transicoes suaves da sacola lateral (abrir e fechar) ---------- */
.fancybox-overlay { background: transparent !important; }
.fancybox-overlay::before { content: ""; position: fixed; inset: 0; background: rgba(35,31,32,.35); animation: hv-fundo-entra .45s ease both; }
/* Enquanto a sacola carrega a plataforma cria um fundo provisorio: ele fica transparente para nao piscar */
.fancybox-overlay:not(:has(.fancybox-wrap))::before { opacity: 0 !important; animation: none !important; }
@keyframes hv-fundo-entra { from { opacity: 0; } to { opacity: 1; } }
.fancybox-wrap.modal-comprar-ajax-status { opacity: 1 !important; animation: hv-gaveta-entra .5s cubic-bezier(.22,1,.36,1) both !important; will-change: transform; }
@keyframes hv-gaveta-entra { from { transform: translateX(100%); } to { transform: translateX(0); } }
.fancybox-overlay.hv-saindo::before { animation: hv-fundo-sai .38s ease forwards; }
@keyframes hv-fundo-sai { from { opacity: 1; } to { opacity: 0; } }
.fancybox-wrap.modal-comprar-ajax-status.hv-saindo { animation: hv-gaveta-sai .38s cubic-bezier(.4,0,.6,1) forwards !important; }
@keyframes hv-gaveta-sai { from { transform: translateX(0); } to { transform: translateX(100%); } }
/* Indicador de carregamento do Fancybox some (a resposta chega em menos de 1 s) */
#fancybox-loading { display: none !important; }
/* Botao mostra que esta adicionando enquanto espera */
.botao-comprar-ajax { transition: opacity .2s ease, background-color .2s ease; }
.botao-comprar-ajax.disabled, .botao-comprar-ajax[disabled] { opacity: .75; }

/* ---------- v24: gaveta abre no clique (pre-gaveta enquanto a plataforma responde) e animacoes mais rapidas ---------- */
#hv-pre-fundo { position: fixed; inset: 0; z-index: 99998; background: rgba(35,31,32,.35); animation: hv-fundo-entra .25s ease both; }
#hv-pre-gaveta {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 99999; width: min(440px, 100vw); background: #FFFFFF;
  box-shadow: -12px 0 40px rgba(35,31,32,.15); animation: hv-gaveta-entra .3s cubic-bezier(.22,1,.36,1) both;
}
#hv-pre-gaveta .hv-pre-titulo { padding: 26px 28px 20px; border-bottom: 1px solid #E6E6E3; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .16em; color: #231F20; text-align: center; }
#hv-pre-gaveta .hv-pre-item { display: grid; grid-template-columns: 72px 1fr; gap: 14px; margin: 18px 28px 0; }
#hv-pre-gaveta .hv-pre-item i, #hv-pre-gaveta .hv-pre-item b { display: block; background: linear-gradient(90deg, #F4F3EF 0%, #ECEAE3 50%, #F4F3EF 100%); background-size: 200% 100%; animation: hv-brilho 1s linear infinite; }
#hv-pre-gaveta .hv-pre-item i { height: 72px; }
#hv-pre-gaveta .hv-pre-item b { height: 14px; margin-top: 8px; width: 80%; }
@keyframes hv-brilho { from { background-position: 200% 0; } to { background-position: 0 0; } }
/* Quando a pre-gaveta ja esta na tela, a gaveta real entra sem animar (aparece no mesmo lugar) */
body.hv-pre .fancybox-wrap.modal-comprar-ajax-status { animation: none !important; }
body.hv-pre .fancybox-overlay::before { animation: none !important; opacity: 1; }
/* Animacoes mais rapidas */
.fancybox-overlay::before { animation-duration: .25s; }
.fancybox-wrap.modal-comprar-ajax-status { animation-duration: .3s !important; }
body .fancybox-overlay.hv-saindo::before { animation: hv-fundo-sai .26s ease forwards !important; }
body .fancybox-wrap.modal-comprar-ajax-status.hv-saindo { animation: hv-gaveta-sai .26s cubic-bezier(.4,0,1,1) forwards !important; }

/* ---------- v25: esconde o bloco nativo "Social" do rodape (o Instagram entrou no nosso rodape); barra de compra flutuante embaixo ---------- */
#rodape .redes-sociais { display: none !important; }
@media (min-width: 768px) {
  .acoes-flutuante {
    top: auto !important; bottom: 0 !important; left: 0 !important; right: 0 !important; width: auto !important; height: 76px !important;
    padding: 0 28px !important; margin: 0 !important; background: #FFFFFF !important; border: 0 !important; border-top: 1px solid #E6E6E3 !important;
    box-shadow: 0 -8px 24px rgba(35,31,32,.06) !important; border-radius: 0 !important; z-index: 60 !important; box-sizing: border-box;
  }
  .acoes-flutuante[style*="block"] { display: flex !important; align-items: center; gap: 18px; animation: hv-barra-sobe .3s cubic-bezier(.22,1,.36,1) both; }
  @keyframes hv-barra-sobe { from { transform: translateY(100%); } to { transform: translateY(0); } }
  .acoes-flutuante .image { flex: 0 0 52px; width: 52px !important; height: 52px !important; margin: 0 !important; background: #F4F3EF; display: flex; align-items: center; justify-content: center; }
  .acoes-flutuante .image img { max-width: 100% !important; max-height: 100% !important; width: auto !important; height: auto !important; mix-blend-mode: multiply; }
  .acoes-flutuante .nome-produto { flex: 1 1 auto; margin: 0 !important; font-family: 'Cormorant', Georgia, serif !important; font-size: 19px !important; line-height: 1.2 !important; color: #231F20 !important; text-transform: none !important; letter-spacing: 0 !important; width: auto !important; max-width: none !important; }
  .acoes-flutuante .acoes-produto { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; flex: 0 0 auto !important; align-items: center; gap: 22px; margin: 0 !important; padding: 0 !important; position: static !important; width: auto !important; max-width: none !important; }
  .acoes-flutuante .acoes-produto > div { width: auto !important; float: none !important; }
  .acoes-flutuante .preco-produto, .acoes-flutuante .preco-produto * { margin: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 16px !important; font-weight: 600 !important; color: #231F20 !important; }
  .produto .acoes-flutuante .comprar { display: block !important; margin: 0 !important; }
  .acoes-flutuante .comprar .botao-comprar { width: 220px !important; height: 46px !important; margin: 0 !important; display: flex !important; align-items: center; justify-content: center; }
  .acoes-flutuante .comprar .disponibilidade-produto { display: none !important; }
  .acoes-flutuante .close_float { order: 9; position: static !important; margin-left: 4px; color: #8A8A85 !important; font-size: 13px; }
  /* WhatsApp flutuante sobe quando a barra aparece */
  body:has(.acoes-flutuante[style*="block"]) .li-whatsapp a { bottom: 96px !important; transition: bottom .3s ease; }
}

/* ---------- v26: seletor de quantidade com botoes - e + (estilo heraverde.com.br, cantos retos) ---------- */
.produto .comprar { grid-template-columns: 150px 1fr !important; grid-template-areas: "tit tit" "qtd btn" "disp disp"; row-gap: 10px !important; column-gap: 12px !important; }
.produto .comprar::before { content: "QUANTIDADE"; grid-area: tit; display: block; font-family: 'Figtree', sans-serif; font-size: 11.5px; font-weight: 600; letter-spacing: .14em; color: #263F2E; }
.produto .acoes-flutuante .comprar::before { content: none; display: none; }
.produto .comprar label.qtde-adicionar-carrinho {
  grid-area: qtd; display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between;
  width: 150px !important; height: 52px !important; padding: 0 !important; margin: 0 !important; box-sizing: border-box !important;
  border: 1px solid #DDDDD8 !important; background: #FFFFFF; overflow: hidden;
}
.produto .comprar .qtde-carrinho-title { display: none !important; }
.produto .comprar .hv-qtd-btn { flex: 0 0 46px; height: 100%; padding: 0; border: 0; background: none; cursor: pointer; display: flex; align-items: center; justify-content: center; color: #231F20; transition: color .15s ease, background-color .15s ease; }
.produto .comprar .hv-qtd-btn:hover { background: #F4F4F2; }
.produto .comprar .hv-qtd-btn:disabled { color: #C4C4BF; cursor: default; background: none; }
.produto .comprar .hv-qtd-btn svg { width: 16px; height: 16px; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; fill: none; }
.produto .comprar label.qtde-adicionar-carrinho input.qtde-carrinho { flex: 1 1 auto; width: 40px !important; min-width: 0; height: 100% !important; text-align: center !important; border: 0 !important; box-shadow: none !important; background: transparent !important; padding: 0 !important; margin: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 17px !important; font-weight: 600 !important; color: #231F20 !important; -moz-appearance: textfield; appearance: textfield; }
.produto .comprar input.qtde-carrinho::-webkit-inner-spin-button, .produto .comprar input.qtde-carrinho::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.produto .comprar .botao-comprar { grid-area: btn; }
.produto .comprar .disponibilidade-produto { grid-area: disp; }

/* ---------- v27: aviso de limite de estoque no seletor de quantidade; texto de estoque da plataforma no estilo da loja ---------- */
.produto .comprar { grid-template-areas: "tit tit" "qtd btn" "aviso aviso" "disp disp" !important; }
.produto .comprar .hv-qtd-aviso { grid-area: aviso; font-family: 'Figtree', sans-serif; font-size: 12px; color: #8A5A2B; min-height: 0; }
.produto .comprar .hv-qtd-aviso:empty { display: none; }
.produto .disponibilidade-produto, .produto .disponibilidade-produto * { font-family: 'Figtree', sans-serif !important; font-size: 12.5px !important; color: #6B6F6A !important; text-align: left !important; }
.produto .disponibilidade-produto b { color: #263F2E !important; font-weight: 600 !important; }
.produto .disponibilidade-produto .estoque { display: block; margin-top: 2px; }

/* ---------- v28: transicoes como no heraverde.com.br (fundo verde translucido com desfoque, conteudo da sacola aparece com fade) + produtos aparecem ao rolar ---------- */
#hv-pre-fundo, .fancybox-overlay::before { background: rgba(38,63,46,.55) !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
#hv-pre-fundo { animation: hv-fundo-entra .2s ease both; }
#hv-pre-gaveta { animation: hv-gaveta-entra .35s cubic-bezier(.32,.72,0,1) both; }
.fancybox-wrap.modal-comprar-ajax-status { animation-duration: .35s !important; animation-timing-function: cubic-bezier(.32,.72,0,1) !important; }
/* Quando os itens chegam, eles surgem suavemente no lugar dos blocos de carregamento */
body.hv-pre .modal-comprar-ajax-status #carrinho-mini .scroll,
body.hv-pre .modal-comprar-ajax-status #carrinho-mini > table.table-footer,
body.hv-pre .modal-comprar-ajax-status .buttons { animation: hv-conteudo .3s ease both; }
@keyframes hv-conteudo { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
/* Fechar: mesma curva, um pouco mais curto */
body .fancybox-wrap.modal-comprar-ajax-status.hv-saindo { animation: hv-gaveta-sai .28s cubic-bezier(.4,0,1,1) forwards !important; }
body .fancybox-overlay.hv-saindo::before { animation: hv-fundo-sai .28s ease forwards !important; }

/* Produtos, faixa de beneficios e colunas do rodape aparecem aos poucos ao rolar (classe colocada pelo script do cabecalho) */
.hv-anima .listagem li.hv-revela, .hv-anima .hv-beneficios li, .hv-anima .hv-rodape-colunas > div {
  opacity: 0; transform: translateY(18px);
  transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
}
.hv-anima .listagem li.hv-revela.hv-visivel, .hv-anima .hv-beneficios li.hv-visivel, .hv-anima .hv-rodape-colunas > div.hv-visivel { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .hv-anima .listagem li.hv-revela, .hv-anima .hv-beneficios li, .hv-anima .hv-rodape-colunas > div { opacity: 1 !important; transform: none !important; transition: none !important; } }

/* ---------- v29: sacola sem a transicao vertical do tema (top/height 0.7s fazia a sacola "cair" de cima) ---------- */
.fancybox-wrap.modal-comprar-ajax-status, .fancybox-wrap.modal-comprar-ajax-status * { transition-property: none !important; }
.fancybox-wrap.modal-comprar-ajax-status .botao, .fancybox-wrap.modal-comprar-ajax-status .quantidade a { transition-property: background-color, color, border-color !important; transition-duration: .15s !important; }

/* ---------- v31: volta ao design v29 (Cormorant + Figtree, cantos retos, cards sem moldura); fundo off-white #FAFAF7 no lugar do branco ---------- */
body, body.pagina-inicial, body.pagina-produto, body.pagina-categoria, body.pagina-busca, body.pagina-carrinho,
.conteiner-principal, #corpo, #corpo .conteiner, .secao-principal, .secao-banners, #cabecalho, #barraTopo,
.hv-beneficios, #rodape, #rodape .pagamento-selos, .atalhos-mobile, .atalhos-mobile li { background-color: #FAFAF7 !important; }

/* ---------- v32: transicao suave entre paginas (View Transitions, so CSS) e fundo com luz em degrade ---------- */
@view-transition { navigation: auto; }
::view-transition-old(root) { animation: hv-pagina-sai .22s ease both; }
::view-transition-new(root) { animation: hv-pagina-entra .38s cubic-bezier(.22,.61,.36,1) both; }
@keyframes hv-pagina-sai { to { opacity: 0; } }
@keyframes hv-pagina-entra { from { opacity: 0; transform: translateY(8px); } }
/* cabecalho fica parado durante a troca de pagina (so o conteudo faz o fade) */
#cabecalho { view-transition-name: hv-cabecalho; }
::view-transition-group(hv-cabecalho) { animation-duration: .3s; }
@media (prefers-reduced-motion: reduce) { ::view-transition-old(root), ::view-transition-new(root), ::view-transition-group(*) { animation: none !important; } }

/* Fundo: manchas de luz bem suaves (verde e grafite) sobre o off-white, sem imagem e sem script */
body.pagina-inicial #corpo, body.pagina-categoria #corpo, body.pagina-busca #corpo {
  background-image:
    radial-gradient(42vw 42vw at 88% 6%, rgba(63,125,83,.16), transparent 70%),
    radial-gradient(38vw 38vw at 6% 30%, rgba(46,48,52,.07), transparent 70%),
    radial-gradient(46vw 46vw at 92% 62%, rgba(63,125,83,.12), transparent 70%),
    radial-gradient(40vw 40vw at 10% 92%, rgba(139,111,71,.09), transparent 70%) !important;
  background-repeat: no-repeat !important;
}
body.pagina-inicial #corpo .conteiner, body.pagina-inicial .secao-principal, body.pagina-inicial .hv-beneficios,
body.pagina-categoria #corpo .conteiner, body.pagina-categoria .secao-principal,
body.pagina-busca #corpo .conteiner, body.pagina-busca .secao-principal { background-color: transparent !important; }

/* ---------- v33: pagina do carrinho em 2 colunas (itens + resumo fixo), no estilo da loja ---------- */
.finalizar-compra.hv-2col { display: grid; grid-template-columns: minmax(0, 1fr) 380px; column-gap: 56px; align-items: start; padding: 8px 0 64px; }
.finalizar-compra.hv-2col > * { grid-column: 1 / -1; }
.finalizar-compra.hv-2col > .hv-itens { grid-column: 1; }
.finalizar-compra.hv-2col > .hv-resumo { grid-column: 2; position: sticky; top: 96px; }
.finalizar-compra.hv-2col .cabecalho-interno { margin: 0 0 8px !important; }
.finalizar-compra.hv-2col .cabecalho-interno h1 { font-family: 'Cormorant', Georgia, serif !important; font-size: 40px !important; font-weight: 400 !important; line-height: 1.1 !important; color: #231F20 !important; margin: 0 0 6px !important; }
.finalizar-compra.hv-2col .cabecalho-interno h1 .hv-qtd-itens { font-family: 'Figtree', sans-serif; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #6B6F6A; margin-left: 10px; vertical-align: middle; }
.finalizar-compra.hv-2col .cabecalho-interno small { display: none !important; }

/* Itens: lista limpa com linhas finas, sem caixa nem sombra */
.finalizar-compra.hv-2col .caixa-sombreada { box-shadow: none !important; border: 0 !important; background: transparent !important; padding: 0 !important; margin: 0 !important; }
.finalizar-compra.hv-2col .tabela-carrinho, .finalizar-compra.hv-2col .tabela-carrinho tbody { display: block !important; width: 100% !important; border: 0 !important; background: transparent !important; margin: 0 !important; }
.finalizar-compra.hv-2col .tabela-carrinho thead, .finalizar-compra.hv-2col .tabela-carrinho tr.bg-dark { display: none !important; }
.finalizar-compra.hv-2col .tabela-carrinho tbody tr {
  display: grid !important; grid-template-columns: 96px minmax(0, 1fr) auto 110px 28px; align-items: center; column-gap: 22px;
  padding: 22px 0 !important; border-top: 1px solid #E6E6E3 !important; background: transparent !important;
}
.finalizar-compra.hv-2col .tabela-carrinho tbody tr:last-of-type { border-bottom: 1px solid #E6E6E3 !important; }
.finalizar-compra.hv-2col .tabela-carrinho td { display: block !important; padding: 0 !important; border: 0 !important; background: transparent !important; width: auto !important; text-align: left !important; }
.finalizar-compra.hv-2col .tabela-carrinho .conteiner-imagem img { width: 96px !important; height: 96px !important; max-width: none !important; object-fit: contain; background: #F4F3EF; border: 0 !important; padding: 0 !important; }
.finalizar-compra.hv-2col .produto-info > a { font-family: 'Cormorant', Georgia, serif !important; font-size: 20px !important; line-height: 1.2 !important; color: #231F20 !important; }
.finalizar-compra.hv-2col .produto-info ul { margin: 6px 0 0 !important; list-style: none !important; }
.finalizar-compra.hv-2col .produto-info li, .finalizar-compra.hv-2col .produto-info li * { font-family: 'Figtree', sans-serif !important; font-size: 12px !important; font-weight: 400 !important; color: #8A8A85 !important; line-height: 1.6 !important; }
.finalizar-compra.hv-2col .quantidade { display: inline-flex !important; align-items: center; height: 40px; border: 1px solid #DDDDD8; background: #FFFFFF; }
.finalizar-compra.hv-2col .quantidade a { width: 36px; height: 38px; display: inline-flex !important; align-items: center; justify-content: center; font-size: 10px !important; color: #231F20 !important; text-decoration: none !important; }
.finalizar-compra.hv-2col .quantidade a:hover { background: #F4F4F2; }
.finalizar-compra.hv-2col .quantidade input.input-mini { width: 38px !important; height: 38px !important; border: 0 !important; box-shadow: none !important; margin: 0 !important; padding: 0 !important; text-align: center; background: transparent !important; font-family: 'Figtree', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; color: #231F20 !important; }
.finalizar-compra.hv-2col .quantidade .atualizar-quantidade { display: none !important; }
.finalizar-compra.hv-2col .col-item-unit-price { text-align: right !important; }
.finalizar-compra.hv-2col .col-item-unit-price, .finalizar-compra.hv-2col .col-item-unit-price * { font-family: 'Figtree', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; color: #231F20 !important; text-align: right !important; }
.finalizar-compra.hv-2col .excluir a { color: #8A8A85 !important; font-size: 15px !important; text-decoration: none !important; }
.finalizar-compra.hv-2col .excluir a:hover { color: #231F20 !important; }

/* Resumo: coluna fixa ao rolar */
.hv-resumo { background: #FFFFFF; border: 1px solid #E6E6E3; padding: 28px; box-sizing: border-box; }
.hv-resumo .hv-resumo-titulo { font-family: 'Figtree', sans-serif !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .16em; text-transform: uppercase; color: #231F20 !important; margin: 0 0 18px !important; line-height: 1.2 !important; }
.hv-resumo .subtotal, .hv-resumo .total { display: flex !important; justify-content: space-between; align-items: baseline; font-family: 'Figtree', sans-serif; text-align: left !important; }
.hv-resumo .subtotal span { font-size: 14px; color: #6B6F6A; }
.hv-resumo .subtotal strong { font-family: 'Figtree', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; color: #231F20 !important; }
.hv-resumo-frete { margin: 18px 0; padding: 18px 0; border-top: 1px solid #E6E6E3; border-bottom: 1px solid #E6E6E3; }
.hv-resumo #formCalcularFrete, .hv-resumo #formCalcularFrete .control-group { margin: 0 !important; }
.hv-resumo #formCalcularFrete .control-label { float: none !important; width: auto !important; text-align: left !important; padding: 0 0 8px !important; display: block; }
.hv-resumo #formCalcularFrete .control-label b { font-family: 'Figtree', sans-serif; font-size: 11.5px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #231F20; }
.hv-resumo #formCalcularFrete .controls { margin: 0 !important; }
.hv-resumo #formCalcularFrete .input-append { display: flex !important; width: 100%; }
.hv-resumo #calcularFrete { flex: 1 1 auto; width: auto !important; height: 44px !important; box-sizing: border-box; border: 1px solid #DDDDD8 !important; border-right: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 12px !important; margin: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 14px !important; background: #FFFFFF !important; }
.hv-resumo #btn-frete { height: 44px !important; border-radius: 0 !important; border: 1px solid #231F20 !important; background: #FFFFFF !important; box-shadow: none !important; text-shadow: none !important; padding: 0 16px !important; font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .14em; color: #231F20 !important; white-space: nowrap; }
.hv-resumo #btn-frete:hover { background: #231F20 !important; color: #FFFFFF !important; }
.hv-resumo #formCalcularFrete .help-inline { display: block !important; padding: 8px 0 0 !important; }
.hv-resumo #formCalcularFrete .help-inline a { font-family: 'Figtree', sans-serif; font-size: 12px; color: #6B6F6A !important; text-decoration: underline; text-underline-offset: 2px; }
.hv-resumo #formCalcularFrete .help-inline i { display: none; }
.hv-resumo .formas-envio ul { margin: 12px 0 0 !important; list-style: none !important; }
.hv-resumo .formas-envio li { margin: 0 0 8px !important; }
.hv-resumo .formas-envio label.radio { display: flex !important; align-items: center; gap: 8px; flex-wrap: wrap; padding: 10px 12px !important; margin: 0 !important; border: 1px solid #E6E6E3; cursor: pointer; font-family: 'Figtree', sans-serif; font-size: 13px; color: #231F20; }
.hv-resumo .formas-envio label.radio:has(input:checked) { border-color: #263F2E; background: rgba(38,63,46,.04); }
.hv-resumo .formas-envio label.radio input { float: none !important; margin: 0 !important; accent-color: #263F2E; }
.hv-resumo .formas-envio .nome { color: #6B6F6A; margin-left: auto; font-size: 12px; }
.hv-resumo .formas-envio .valor { font-weight: 600; color: #263F2E !important; }
.hv-resumo .total span { font-size: 14px; font-weight: 600; color: #231F20; letter-spacing: .04em; }
.hv-resumo .total strong { font-family: 'Cormorant', Georgia, serif !important; font-size: 30px !important; font-weight: 500 !important; color: #231F20 !important; line-height: 1 !important; }
.hv-resumo .valores-descontos:not(:empty) { margin-top: 8px; font-family: 'Figtree', sans-serif; font-size: 12.5px; color: #6B6F6A; }
.hv-resumo .acao-editar { margin: 22px 0 0 !important; }
.hv-resumo .acao-editar .span12 { display: flex !important; flex-direction: column-reverse; gap: 10px; float: none !important; width: 100% !important; margin: 0 !important; }
.hv-resumo .acao-editar .botao { display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 52px !important; margin: 0 !important; padding: 0 !important; float: none !important; box-sizing: border-box; border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important; font-family: 'Figtree', sans-serif !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase !important; transition: background-color .2s ease, color .2s ease !important; }
.hv-resumo .acao-editar .botao.principal { background: #263F2E !important; border: 1px solid #263F2E !important; color: #FFFFFF !important; }
.hv-resumo .acao-editar .botao.principal:hover { background: #1F3426 !important; }
.hv-resumo .acao-editar .botao.principal i { display: none !important; }
.hv-resumo .acao-editar a.botao { height: 46px !important; background: transparent !important; border: 1px solid #231F20 !important; color: #231F20 !important; }
.hv-resumo .acao-editar a.botao:hover { background: #231F20 !important; color: #FFFFFF !important; }
.hv-resumo .selo-ssl { display: flex !important; justify-content: center; margin-top: 18px; float: none !important; }
.hv-resumo .selo-ssl img { height: 40px; width: auto; opacity: .8; }

@media (max-width: 991px) {
  .finalizar-compra.hv-2col { grid-template-columns: minmax(0, 1fr); }
  .finalizar-compra.hv-2col > .hv-resumo { grid-column: 1; position: static; margin-top: 28px; }
}
@media (max-width: 600px) {
  .finalizar-compra.hv-2col .cabecalho-interno h1 { font-size: 32px !important; }
  .finalizar-compra.hv-2col .tabela-carrinho tbody tr { grid-template-columns: 76px minmax(0, 1fr) auto; grid-template-areas: "img info del" "img qtd preco"; row-gap: 12px; column-gap: 14px; }
  .finalizar-compra.hv-2col .tabela-carrinho .conteiner-imagem { grid-area: img; align-self: start; }
  .finalizar-compra.hv-2col .tabela-carrinho .conteiner-imagem img { width: 76px !important; height: 76px !important; }
  .finalizar-compra.hv-2col .tabela-carrinho td:nth-child(2) { grid-area: info; }
  .finalizar-compra.hv-2col .tabela-carrinho td.clearfix { grid-area: qtd; }
  .finalizar-compra.hv-2col .tabela-carrinho .col-item-unit-price { grid-area: preco; }
  .finalizar-compra.hv-2col .tabela-carrinho td:last-child { grid-area: del; justify-self: end; }
  .finalizar-compra.hv-2col .produto-info > a { font-size: 18px !important; }
  .hv-resumo { padding: 22px 18px; }
}
.finalizar-compra.hv-2col .tabela-carrinho tbody tr { border: 0 !important; border-top: 1px solid #E6E6E3 !important; }
.finalizar-compra.hv-2col .tabela-carrinho tbody tr:last-of-type { border-bottom: 1px solid #E6E6E3 !important; }
.hv-resumo #btn-frete i { margin-right: 8px; }
.hv-resumo .hv-resumo-titulo { text-transform: uppercase !important; }

/* ---------- v34: "Complete sua rotina" na sacola lateral; ajuste do carrinho no celular ---------- */
.modal-comprar-ajax-status .hv-sug { margin: 22px 0 18px; }
.hv-sug-topo { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.hv-sug-titulo { font-family: 'Cormorant', Georgia, serif; font-size: 20px; line-height: 1.2; color: #231F20; }
.hv-sug-nav { display: inline-flex; align-items: center; gap: 4px; font-family: 'Figtree', sans-serif; font-size: 12px; color: #6B6F6A; }
.hv-sug-nav b { font-weight: 500; min-width: 26px; text-align: center; }
.hv-sug-nav button { width: 26px; height: 26px; padding: 0; border: 0; background: none; cursor: pointer; font-size: 20px; line-height: 24px; color: #231F20; }
.hv-sug-nav button:hover { color: #263F2E; }
.hv-sug-janela { overflow: hidden; }
.hv-sug-trilho { display: flex; transition: transform .35s cubic-bezier(.22,.61,.36,1); }
.hv-sug-card { flex: 0 0 100%; box-sizing: border-box; display: grid; grid-template-columns: 64px minmax(0, 1fr) 40px; align-items: center; gap: 14px; padding: 12px; background: #F7F6F1; }
.hv-sug-img img { width: 64px; height: 64px; object-fit: contain; display: block; background: #FFFFFF; }
.hv-sug-nome { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-family: 'Figtree', sans-serif !important; font-size: 13px !important; font-weight: 500; line-height: 1.35 !important; color: #231F20 !important; text-decoration: none !important; }
.hv-sug-preco { display: block; margin-top: 4px; font-family: 'Figtree', sans-serif; font-size: 13px; font-weight: 600; color: #263F2E; }
.hv-sug-add { width: 40px; height: 40px; display: inline-flex !important; align-items: center; justify-content: center; border: 1px solid #263F2E; background: #FFFFFF; color: #263F2E !important; transition: background-color .2s ease, color .2s ease; }
.hv-sug-add:hover { background: #263F2E; color: #FFFFFF !important; }
.hv-sug-add svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linejoin: round; stroke-linecap: round; }
@media (prefers-reduced-motion: reduce) { .hv-sug-trilho { transition: none; } }
@media (max-width: 600px) { .finalizar-compra.hv-2col .tabela-carrinho td.clearfix { justify-self: start; } }
.hv-sug-titulo { font-family: 'Cormorant', Georgia, serif !important; font-size: 21px !important; }
.hv-sug-info, .hv-sug-topo { text-align: left !important; }
/* linhas da sacola so com divisoria embaixo (sem caixa em volta de cada item) */
.modal-comprar-ajax-status .table-body tr { border: 0 !important; border-bottom: 1px solid #E6E6E3 !important; }

/* ---------- v35: checkout no estilo da loja (o CSS avancado tambem vale no checkout; so visual, nada de script) ---------- */
body.carrinho-checkout, body.carrinho-checkout #corpo, body.carrinho-checkout .conteiner, body.carrinho-checkout .secao-principal { background-color: #FAFAF7 !important; }
body.carrinho-checkout #cabecalho { background: #FAFAF7 !important; border-bottom: 1px solid #E6E6E3 !important; }
body.carrinho-checkout .cabecalho-disclaimer, body.carrinho-checkout .cabecalho-disclaimer *:not(i) { font-family: 'Figtree', sans-serif !important; font-size: 11px !important; font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase; color: #6B6F6A !important; }
body.carrinho-checkout .cabecalho-disclaimer i { color: #263F2E !important; font-size: 15px !important; }
/* Identificacao */
body.carrinho-checkout .identificacao-inner { background: #FFFFFF; border: 1px solid #E6E6E3; padding: 40px 28px 36px !important; max-width: 560px; margin: 24px auto 0 !important; box-sizing: border-box; }
body.carrinho-checkout .identificacao hr { display: none !important; }
body.carrinho-checkout .identificacao-title { font-family: 'Cormorant', Georgia, serif !important; font-size: 28px !important; font-weight: 400 !important; color: #231F20 !important; margin: 0 0 20px !important; line-height: 1.2 !important; }
body.carrinho-checkout .email-box, body.carrinho-checkout #formularioLogin .control-group { display: flex !important; gap: 10px; justify-content: center; align-items: stretch; flex-wrap: wrap; }
body.carrinho-checkout #id_email_login { height: 50px !important; width: 320px !important; max-width: 100%; box-sizing: border-box; }
body.carrinho-checkout .submit-email.botao { width: auto !important; height: 50px !important; padding: 0 28px !important; display: inline-flex !important; align-items: center; }
/* Campos e botoes de todo o checkout */
body.carrinho-checkout input[type=text], body.carrinho-checkout input[type=email], body.carrinho-checkout input[type=tel], body.carrinho-checkout input[type=password], body.carrinho-checkout input[type=number], body.carrinho-checkout select {
  height: 44px; border: 1px solid #DDDDD8 !important; border-radius: 0 !important; box-shadow: none !important; background: #FFFFFF !important;
  font-family: 'Figtree', sans-serif !important; font-size: 14px !important; color: #231F20 !important; padding: 0 12px !important; box-sizing: border-box;
}
body.carrinho-checkout input:focus, body.carrinho-checkout select:focus { border-color: #263F2E !important; outline: none !important; box-shadow: 0 0 0 3px rgba(38,63,46,.08) !important; }
body.carrinho-checkout .botao.principal, body.carrinho-checkout button.botao.principal {
  background: #263F2E !important; border: 1px solid #263F2E !important; border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important; color: #FFFFFF !important;
  font-family: 'Figtree', sans-serif !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase !important; transition: background-color .2s ease !important;
}
body.carrinho-checkout .botao.principal:hover { background: #1F3426 !important; }
body.carrinho-checkout .botao:not(.principal) { border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important; font-family: 'Figtree', sans-serif !important; letter-spacing: .1em; }
/* Aviso "Usamos seu e-mail de forma segura" */
body.carrinho-checkout .checkout-alerta-seguro { border: 0 !important; background: transparent !important; box-shadow: none !important; max-width: 560px; margin: 18px auto 44px !important; padding: 0 28px !important; }
body.carrinho-checkout .checkout-alerta-seguro-icon { display: none !important; }
body.carrinho-checkout .checkout-alerta-seguro-tit { font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #231F20 !important; margin: 0 0 10px !important; }
body.carrinho-checkout .checkout-alerta-seguro-item, body.carrinho-checkout .checkout-alerta-seguro-text { font-family: 'Figtree', sans-serif !important; font-size: 13px !important; color: #6B6F6A !important; }
body.carrinho-checkout .checkout-alerta-seguro-item .icon-ok { color: #263F2E !important; font-size: 11px; margin-right: 6px; }
/* Resumo dos produtos */
body.carrinho-checkout .tabela-carrinho { border: 0 !important; box-shadow: none !important; background: #FFFFFF !important; }
body.carrinho-checkout .tabela-carrinho th, body.carrinho-checkout .tabela-carrinho th * { background: transparent !important; font-family: 'Figtree', sans-serif !important; font-size: 11px !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #6B6F6A !important; border-color: #E6E6E3 !important; }
body.carrinho-checkout .tabela-carrinho td { border-color: #E6E6E3 !important; border-left: 0 !important; border-right: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 14px; color: #231F20; vertical-align: middle !important; }
body.carrinho-checkout .tabela-carrinho th { border-left: 0 !important; border-right: 0 !important; }
body.carrinho-checkout .tabela-carrinho td * { font-family: 'Figtree', sans-serif !important; }
body.carrinho-checkout .caixa-sombreada { box-shadow: none !important; border: 1px solid #E6E6E3 !important; border-radius: 0 !important; background: #FFFFFF !important; }
body.carrinho-checkout .tabela-carrinho tr, body.carrinho-checkout .tabela-carrinho tr.bg-dark, body.carrinho-checkout .tabela-carrinho tr td { background: #FFFFFF !important; }
body.carrinho-checkout .tabela-carrinho .valor-total, body.carrinho-checkout .tabela-carrinho .total strong { font-family: 'Cormorant', Georgia, serif !important; font-size: 26px !important; font-weight: 500 !important; color: #231F20 !important; }
body.carrinho-checkout .identificacao-inner .control-group:empty, body.carrinho-checkout .button-auth-google:empty { display: none !important; }

/* ---------- v36: capa da loja em secoes (Para cada momento, Destaques, banners menores, Compre por tipo) + menu Produtos em duas colunas ---------- */
.hv-capa { padding-bottom: 8px; }
.hv-sec { padding: 72px 28px 0; box-sizing: border-box; }
.hv-sec-topo { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.hv-olho { display: block; font-family: 'Figtree', sans-serif; font-size: 11.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #6B6F6A; margin-bottom: 10px; }
.hv-sec-titulo { font-family: 'Cormorant', Georgia, serif !important; font-size: clamp(30px, 3.2vw, 42px) !important; font-weight: 400 !important; line-height: 1.1 !important; color: #231F20 !important; margin: 0 !important; text-transform: none !important; letter-spacing: 0 !important; }
.hv-sec-link, .hv-mais { display: inline-flex; align-items: center; gap: 8px; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #231F20 !important; text-decoration: none !important; white-space: nowrap; }
.hv-sec-link svg, .hv-mais svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; transition: transform .3s ease; }
.hv-sec-link:hover svg, a:hover > .hv-mais svg, a:hover .hv-mais svg { transform: translateX(4px); }

/* 1. Para cada momento: cartoes em tons suaves com o produto em destaque */
.hv-momentos-grade { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.hv-momento { position: relative; display: flex; flex-direction: column; justify-content: space-between; aspect-ratio: 4 / 5; overflow: hidden; background: var(--hv-tom); text-decoration: none !important; color: #231F20 !important; }
.hv-momento-txt { position: relative; z-index: 1; display: block; padding: 28px 28px 0; }
.hv-momento-txt strong { display: block; font-family: 'Cormorant', Georgia, serif !important; font-size: clamp(24px, 2.2vw, 30px); font-weight: 500; line-height: 1.1; color: #231F20; }
.hv-momento-txt em { display: block; margin: 8px 0 14px; font-family: 'Figtree', sans-serif; font-style: normal; font-size: 13.5px; line-height: 1.5; color: #4A4D49; max-width: 26ch; }
.hv-momento-img { position: absolute; left: 0; right: 0; bottom: 0; height: 64%; display: flex; align-items: flex-end; justify-content: center; }
.hv-momento-img img { width: 78%; height: 100%; object-fit: contain; object-position: center bottom; mix-blend-mode: multiply; filter: brightness(1.09) contrast(1.03); -webkit-mask-image: radial-gradient(closest-side, #000 82%, transparent 100%); mask-image: radial-gradient(closest-side, #000 82%, transparent 100%); transform: translateY(6%); transition: transform .6s cubic-bezier(.22,.61,.36,1); }
.hv-momento:hover .hv-momento-img img { transform: translateY(2%) scale(1.04); }

/* 2. Destaques da farmacia: foto de ambiente + produtos */
.hv-vitrine { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.hv-vitrine-foto { position: relative; min-height: 0; background-size: cover; background-position: center; display: flex; align-items: flex-end; }
.hv-vitrine-caixa { margin: 16px; padding: 22px; background: #FAFAF7; max-width: 340px; }
.hv-vitrine-caixa .hv-sec-titulo { font-size: clamp(26px, 2.4vw, 34px) !important; }
.hv-vitrine-caixa p { margin: 12px 0 20px; font-family: 'Figtree', sans-serif; font-size: 14px; line-height: 1.6; color: #4A4D49; }
.hv-botao { display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 24px; background: #263F2E; color: #FFFFFF !important; text-decoration: none !important; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; transition: background-color .2s ease; }
.hv-botao:hover { background: #1F3426; }
.hv-vitrine-produtos.listagem { display: contents !important; }
.hv-vitrine-produtos.listagem .listagem-item { margin: 0 !important; width: auto !important; height: 100%; opacity: 1 !important; transform: none !important; }

/* 3. Dois banners menores */
.hv-minis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.hv-mini { position: relative; display: block; aspect-ratio: 3 / 2; overflow: hidden; text-decoration: none !important; color: #231F20 !important; }
.hv-mini-foto { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform .8s cubic-bezier(.22,.61,.36,1); }
.hv-mini:hover .hv-mini-foto { transform: scale(1.04); }
.hv-mini-caixa { position: absolute; left: 24px; bottom: 24px; max-width: 320px; padding: 24px 26px; background: #FAFAF7; }
.hv-mini-caixa strong { display: block; font-family: 'Cormorant', Georgia, serif !important; font-size: 30px; font-weight: 400; line-height: 1.1; }
.hv-mini-caixa em { display: block; margin: 8px 0 14px; font-family: 'Figtree', sans-serif; font-style: normal; font-size: 13.5px; line-height: 1.5; color: #4A4D49; }

/* 4. Compre por tipo */
.hv-tipos-lista { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 18px; }
.hv-tipo { display: flex; flex-direction: column; align-items: center; gap: 14px; text-decoration: none !important; text-align: center; }
.hv-tipo-img { width: 100%; max-width: 150px; aspect-ratio: 1; border-radius: 50%; background: #EFEDE6; display: flex; align-items: center; justify-content: center; overflow: hidden; transition: background-color .3s ease; }
.hv-tipo-img img { width: 72%; height: 72%; object-fit: contain; mix-blend-mode: multiply; filter: brightness(1.09) contrast(1.03); -webkit-mask-image: radial-gradient(closest-side, #000 82%, transparent 100%); mask-image: radial-gradient(closest-side, #000 82%, transparent 100%); transition: transform .5s cubic-bezier(.22,.61,.36,1); }
.hv-tipo:hover .hv-tipo-img { background: #E6EAE2; }
.hv-tipo:hover .hv-tipo-img img { transform: scale(1.06); }
.hv-tipo strong { font-family: 'Cormorant', Georgia, serif !important; font-size: 19px; font-weight: 500; line-height: 1.2; color: #231F20; }

/* 5. Todos os produtos */
body.hv-capa-pronta #listagemProdutos { padding-top: 72px !important; }
body.hv-capa-pronta #listagemProdutos > .titulo { display: block !important; font-family: 'Cormorant', Georgia, serif !important; font-size: clamp(30px, 3.2vw, 42px) !important; font-weight: 400 !important; text-transform: none !important; letter-spacing: 0 !important; color: #231F20 !important; margin-bottom: 28px !important; }
#hv-todos { display: block; position: relative; top: -110px; }

@media (max-width: 1100px) {
  .hv-momentos-grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hv-tipos-lista { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 132px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
  .hv-tipo { scroll-snap-align: start; }
}
@media (max-width: 1100px) {
  .hv-vitrine { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hv-vitrine-foto { grid-column: 1 / -1; min-height: 300px; }
}
@media (max-width: 860px) {
  .hv-minis { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .hv-vitrine { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 68%; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; padding-bottom: 6px; }
  .hv-vitrine-foto { grid-column: auto; min-height: 0; }
  .hv-vitrine > * { scroll-snap-align: start; }
  .hv-vitrine-caixa { margin: 10px; padding: 18px; }
}
@media (max-width: 600px) {
  .hv-sec { padding: 52px 16px 0; }
  .hv-sec-topo { margin-bottom: 20px; }
  .hv-momentos-grade { gap: 12px; }
  .hv-momento-txt { padding: 18px 16px 0; }
  .hv-momento-txt em { display: none; }
  .hv-momento .hv-mais { display: none; }
  .hv-vitrine-produtos.listagem { gap: 20px 12px; }
  .hv-mini { aspect-ratio: 4 / 3; }
  .hv-mini-caixa { left: 12px; right: 12px; bottom: 12px; max-width: none; padding: 18px; }
  .hv-mini-caixa strong { font-size: 26px; }
}
@media (prefers-reduced-motion: reduce) { .hv-momento-img img, .hv-mini-foto, .hv-tipo-img img { transition: none; } }

/* Menu Produtos em duas colunas: "Por tipo" | "Para cada momento" (categoria com filhos) */
@media (min-width: 768px) {
  #cabecalho .menu.superior:hover .nivel-um, #cabecalho .menu.superior:focus-within .nivel-um { display: grid !important; }
  #cabecalho .menu.superior .nivel-um { grid-template-columns: 250px 260px; grid-auto-flow: row dense; align-content: start; padding: 22px 0 18px !important; }
  #cabecalho .menu.superior .nivel-um::before { content: "Por tipo"; grid-column: 1; padding: 0 22px 10px; font-family: 'Figtree', sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #6B6F6A; }
  #cabecalho .menu.superior .nivel-um > li { grid-column: 1; }
  #cabecalho .menu.superior .nivel-um > li.com-filho { grid-column: 2; grid-row: 1 / span 40; border-left: 1px solid #E6E6E3; }
  #cabecalho .menu.superior .nivel-um > li.com-filho > a { padding: 0 22px 10px !important; background: none !important; }
  #cabecalho .menu.superior .nivel-um > li.com-filho > a .titulo { font-family: 'Figtree', sans-serif !important; font-size: 11px !important; font-weight: 600 !important; letter-spacing: .16em !important; text-transform: uppercase !important; color: #6B6F6A !important; }
  #cabecalho .menu.superior .nivel-um > li.com-filho > a i { display: none !important; }
  #cabecalho .menu.superior .nivel-um > li.com-filho .nivel-dois { display: block !important; position: static !important; visibility: visible !important; opacity: 1 !important; width: auto !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; }
  #cabecalho .menu.superior .nivel-um > li.com-filho .nivel-dois li { display: block !important; float: none !important; border: 0 !important; background: none !important; }
  #cabecalho .menu.superior .nivel-um > li.com-filho .nivel-dois a { display: block !important; padding: 9px 22px !important; font-family: 'Cormorant', Georgia, serif !important; font-size: 19px !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important; color: #231F20 !important; border: 0 !important; background: none !important; }
  #cabecalho .menu.superior .nivel-um > li.com-filho .nivel-dois a:hover { background: #F4F4F2 !important; color: #263F2E !important; }
}
@media (max-width: 1100px) { .hv-vitrine, .hv-tipos-lista { scroll-padding-left: 16px; } }

/* ---------- v37: "Para cada momento" com fotos de ambiente (Unsplash) e caixa de texto clara, como os banners menores ---------- */
.hv-momento.hv-com-foto { justify-content: flex-end; background: #E9E6DF; }
.hv-momento-foto { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform .8s cubic-bezier(.22,.61,.36,1); }
.hv-momento.hv-com-foto:hover .hv-momento-foto { transform: scale(1.04); }
.hv-momento.hv-com-foto .hv-momento-txt { margin: 16px; padding: 20px 20px 18px; background: #FAFAF7; }
.hv-momento.hv-com-foto .hv-momento-txt em { margin: 6px 0 12px; }
@media (max-width: 600px) {
  .hv-momento.hv-com-foto .hv-momento-txt { margin: 8px; padding: 12px 12px 10px; }
  .hv-momento.hv-com-foto .hv-momento-txt strong { font-size: 20px !important; }
}

/* ---------- v38: "Compre por tipo" com icones de linha (Hugeicons, MIT) no lugar das fotos de produto ---------- */
.hv-tipo-img.hv-tipo-icone { background: #EEF1EA; max-width: 132px; transition: background-color .3s ease, transform .4s cubic-bezier(.22,.61,.36,1); }
.hv-tipo-icone svg { width: 42%; height: 42%; color: #263F2E; overflow: visible; }
.hv-tipo-icone svg * { stroke-width: 1.15; }
.hv-tipo:hover .hv-tipo-img.hv-tipo-icone { background: #263F2E; transform: translateY(-3px); }
.hv-tipo:hover .hv-tipo-icone svg { color: #FAFAF7; }
@media (max-width: 600px) { .hv-tipo-img.hv-tipo-icone { max-width: 96px; } }

/* ---------- v39: faixa de beneficios com 5 itens ---------- */
@media (min-width: 768px) {
  .hv-beneficios ul { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .hv-beneficios li { justify-content: flex-start; padding: 20px 16px; gap: 12px; }
  .hv-beneficios li:first-child { padding-left: 0; }
  .hv-beneficios strong { font-size: 11.5px; letter-spacing: .08em; }
  .hv-beneficios span { font-size: 12.5px; }
}
@media (min-width: 768px) and (max-width: 1180px) {
  .hv-beneficios ul { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
  .hv-beneficios li { flex: 0 0 auto; min-width: 230px; scroll-snap-align: start; }
}

/* ---------- v40: cabecalho sem "Meus pedidos" (fica dentro de Minha conta); capa sem a listagem completa;
   Compre por tipo com 5 categorias; faixas de destaque de produto (whey, propolis verde) ---------- */
#cabecalho .acoes-conta li:has(a[href*="/conta/pedido"]), #barraTopo .acoes-conta li:has(a[href*="/conta/pedido"]) { display: none !important; }
body.hv-capa-pronta #listagemProdutos, body.hv-capa-pronta #hv-todos { display: none !important; }
body.hv-capa-pronta .hv-capa { padding-bottom: 80px; }
@media (min-width: 1101px) { .hv-tipos-lista { grid-template-columns: repeat(5, minmax(0, 1fr)); } }

.hv-destaque-caixa { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; min-height: 460px; }
.hv-destaque-txt { padding: 56px 56px 52px; display: flex; flex-direction: column; justify-content: center; }
.hv-destaque-txt p { margin: 16px 0 18px; font-family: 'Figtree', sans-serif; font-size: 15px; line-height: 1.65; max-width: 52ch; }
.hv-destaque-txt ul { list-style: none; margin: 0 0 28px !important; padding: 0 !important; display: grid; gap: 10px; }
.hv-destaque-txt li { display: flex; align-items: center; gap: 12px; font-family: 'Figtree', sans-serif; font-size: 14px; line-height: 1.4; }
.hv-destaque-txt li svg { flex: 0 0 22px; width: 22px; height: 22px; padding: 4px; box-sizing: border-box; border-radius: 50%; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.hv-destaque-acao { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.hv-destaque-preco { font-family: 'Cormorant', Georgia, serif !important; font-size: 30px; font-weight: 500; }
.hv-destaque-fotos { display: flex; align-items: center; justify-content: center; gap: 4%; padding: 40px; }
.hv-destaque-fotos img { width: 44%; max-width: 300px; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; filter: brightness(1.09) contrast(1.03);
  -webkit-mask-image: radial-gradient(closest-side, #000 82%, transparent 100%); mask-image: radial-gradient(closest-side, #000 82%, transparent 100%); }
.hv-destaque-fotos img:only-child { width: 62%; max-width: 380px; }
/* Tema escuro (whey): texto claro sobre o verde, fotos sobre painel claro */
.hv-destaque-escuro .hv-destaque-caixa { background: #263F2E; }
.hv-destaque-escuro .hv-destaque-txt, .hv-destaque-escuro .hv-sec-titulo { color: #FAFAF7 !important; }
.hv-destaque-escuro .hv-olho { color: #C9D3C5; }
.hv-destaque-escuro .hv-destaque-txt p, .hv-destaque-escuro .hv-destaque-txt li { color: #E4E9E1; }
.hv-destaque-escuro .hv-destaque-txt li svg { stroke: #263F2E; background: #C9D3C5; }
.hv-destaque-escuro .hv-destaque-preco { color: #FAFAF7; }
.hv-destaque-escuro .hv-botao { background: #FAFAF7; color: #263F2E !important; }
.hv-destaque-escuro .hv-botao:hover { background: #FFFFFF; }
.hv-destaque-escuro .hv-destaque-fotos { background: #EFEDE6; }
/* Tema claro (propolis): foto a esquerda em tom de mel */
.hv-destaque-claro .hv-destaque-caixa { background: #FFFFFF; border: 1px solid #E6E6E3; }
.hv-destaque-claro .hv-destaque-fotos { order: -1; background: #F3EBD9; }
.hv-destaque-claro .hv-destaque-txt p, .hv-destaque-claro .hv-destaque-txt li { color: #4A4D49; }
.hv-destaque-claro .hv-destaque-txt li svg { stroke: #FFFFFF; background: #263F2E; }
.hv-destaque-claro .hv-destaque-preco { color: #231F20; }
@media (max-width: 860px) {
  .hv-destaque-caixa { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .hv-destaque-fotos { order: -1; padding: 28px; }
  .hv-destaque-txt { padding: 32px 24px 36px; }
}

/* ---------- v43: "Nossas linhas" (tipos) logo abaixo da faixa de beneficios, so com o rotulo ---------- */
.hv-capa > .hv-tipos:first-child { padding-top: 44px; }
.hv-tipos > .hv-olho { text-align: center; margin-bottom: 22px; }

/* ---------- v44: cabecalho em uma linha: "Produtos +" (como no v9/v36) + "A Farmacia" (link para heraverde.com.br);
   busca curta sempre visivel a partir de 1366px (abaixo disso, a lupa que abre ao clicar); botao "Manipule sua receita" em contorno.
   Substitui o menu em segunda linha (v41) e a busca central (v42), que foram removidos. ---------- */
@media (min-width: 768px) {
  #cabecalho .hv-nav-extra { grid-column: 2; grid-row: 1; justify-self: start; align-self: center; margin-left: 160px; z-index: 5; display: flex; gap: 32px; }
  #cabecalho .hv-nav-extra a {
    display: inline-block; padding: 14px 0 13px; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .14em;
    text-transform: uppercase; color: #231F20 !important; text-decoration: none !important; border-bottom: 1px solid transparent; transition: color .2s ease, border-color .25s ease;
  }
  #cabecalho .hv-nav-extra a:hover { color: #263F2E !important; border-bottom-color: #263F2E; }
  /* o item "A Farmacia" da lista de categorias so aparece no menu do celular */
  #cabecalho .menu.superior .nivel-um > li.hv-li-farmacia { display: none !important; }
}
@media (max-width: 767px) { #cabecalho .hv-nav-extra { display: none !important; } }

/* Botao "Manipule sua receita": contorno verde, preenche ao passar o mouse */
@media (min-width: 1024px) {
  html body #rodape .tel-whatsapp a {
    background: transparent !important; border: 1px solid #263F2E !important; height: 42px; padding: 0 18px !important; gap: 10px;
    transition: background-color .25s ease, opacity .15s ease !important;
  }
  html body #rodape .tel-whatsapp a::after { content: "MANIPULE SUA RECEITA" !important; color: #263F2E !important; transition: color .25s ease; }
  html body #rodape .tel-whatsapp a i {
    width: 18px !important; height: 18px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23263F2E' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.963 12h14.074c.977 0 1.466 0 1.768.375c.302.376.209.787.023 1.609a9.02 9.02 0 0 1-4.075 5.676c-.392.24-.559.738-.347 1.144A.82.82 0 0 1 15.674 22H8.326a.82.82 0 0 1-.732-1.196c.212-.406.045-.903-.347-1.144a9.02 9.02 0 0 1-4.075-5.676c-.186-.822-.279-1.233.023-1.609S3.985 12 4.963 12Z'/%3E%3Cpath d='m17.459 12l1.55-3.719c.175-.419.606-.629 1.038-.701c.374-.062.672-.239.831-.527c.397-.718-.21-1.859-1.355-2.55s-2.397-.668-2.793.05c-.16.289-.157.646-.022 1.015c.156.427.197.92-.063 1.288L13 12'/%3E%3Cpath d='M6.502 5.502L10 9M8.6 3.403c1.546 1.546 1.16 3.039 0 4.198c-1.158 1.159-2.651 1.545-4.197 0c-1.546-1.546-1.4-5.597-1.4-5.597s4.052-.147 5.598 1.399'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }
  html body #rodape .tel-whatsapp a:hover { background: #263F2E !important; }
  html body #rodape .tel-whatsapp a:hover::after { color: #FFFFFF !important; }
  html body #rodape .tel-whatsapp a:hover i { filter: brightness(0) invert(1); }
}

/* Busca curta sempre visivel em telas largas */
@media (min-width: 1366px) {
  html body #cabecalho .busca.busca {
    grid-column: 2 !important; grid-row: 1 !important; justify-self: end !important; align-self: center;
    width: 260px !important; height: auto !important; margin: 0 300px 0 0 !important; position: relative;
  }
  html body #cabecalho .busca.busca form {
    position: relative !important; top: auto !important; right: auto !important; transform: none !important; width: 100% !important;
    height: 40px !important; display: flex !important; align-items: center; z-index: 1;
    background: #FFFFFF !important; border: 1px solid #DDDDD8 !important; transition: border-color .2s ease, box-shadow .2s ease;
  }
  html body #cabecalho .busca.busca input, html body #cabecalho .busca.busca .input-busca {
    cursor: text !important; color: #231F20 !important; width: 100% !important; height: 38px !important; padding: 0 40px 0 14px !important;
    background: transparent !important; border: 0 !important; box-shadow: none !important; font-family: 'Figtree', sans-serif !important; font-size: 13.5px !important;
  }
  html body #cabecalho .busca.busca input::placeholder { color: #8A8A85 !important; }
  html body #cabecalho .busca.busca .botao-busca {
    pointer-events: auto !important; position: absolute !important; right: 6px !important; top: 50% !important; transform: translateY(-50%);
    width: 28px; height: 28px; color: #263F2E !important; font-size: 15px !important;
  }
  html body #cabecalho .busca.busca form:focus-within { width: 100% !important; border-color: #263F2E !important; box-shadow: 0 0 0 3px rgba(38,63,46,.08); }
  body:has(#cabecalho .busca form:focus-within) #rodape .tel-whatsapp a { opacity: 1 !important; pointer-events: auto !important; }
  html body #rodape .tel-whatsapp a { right: 160px !important; }
}

/* ---------- v45: "Os mais procurados": foto + carrossel (3 visiveis, setas revelam ate 5) ---------- */
.hv-vitrine-produtos.listagem { display: block !important; grid-column: span 3; position: relative; overflow: hidden; }
.hv-vitrine-trilho { display: flex; column-gap: 22px; height: 100%; transition: transform .5s cubic-bezier(.22,.61,.36,1); }
.hv-vitrine-trilho > .listagem-item { flex: 0 0 calc((100% - 44px) / 3); }
.hv-vit-seta {
  position: absolute; top: 34%; z-index: 3; width: 44px; height: 44px; padding: 0; border-radius: 50%;
  background: #FAFAF7; border: 1px solid #E6E6E3; box-shadow: 0 6px 18px rgba(35,31,32,.10);
  font: 300 28px/40px 'Figtree', sans-serif; color: #231F20; cursor: pointer; transition: background-color .2s ease, color .2s ease;
}
.hv-vit-seta:hover { background: #263F2E; color: #FFFFFF; border-color: #263F2E; }
.hv-vit-ant { left: 10px; }
.hv-vit-prox { right: 10px; }
.hv-vit-seta[hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) { .hv-vitrine-trilho { transition: none; } }
@media (max-width: 600px) {
  .hv-vitrine { display: block !important; overflow: visible !important; }
  .hv-vitrine-foto { min-height: 300px !important; margin-bottom: 16px; }
  .hv-vitrine-produtos.listagem { overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 0; }
  .hv-vitrine-trilho { transform: none !important; column-gap: 12px; }
  .hv-vitrine-trilho > .listagem-item { flex: 0 0 68%; scroll-snap-align: start; }
  .hv-vit-seta { display: none !important; }
}

/* ---------- v46: mais respiro entre as faixas da capa (sem os dois banners menores, retirados do codigo da capa) ---------- */
.hv-sec { padding-top: 104px; }
.hv-capa > .hv-tipos:first-child { padding-top: 60px; }
body.hv-capa-pronta .hv-capa { padding-bottom: 112px; }
@media (max-width: 600px) {
  .hv-sec { padding-top: 68px; }
  .hv-capa > .hv-tipos:first-child { padding-top: 40px; }
  body.hv-capa-pronta .hv-capa { padding-bottom: 72px; }
}

/* ---------- v47: faixa da Propolis Verde em HTML (substitui a faixa clara do v40 e o banner em imagem):
   texto | ilustracao da vassourinha | 4 diferenciais; fontes do site; a faixa inteira leva ao produto ---------- */
.hv-prop-caixa {
  display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) minmax(0, 1fr); align-items: center; gap: 48px;
  padding: 72px 64px; background: #263F2E; color: #FAFAF7 !important; text-decoration: none !important;
}
.hv-prop-caixa .hv-olho { color: #D2B77A; }
.hv-prop-caixa .hv-sec-titulo { color: #FAFAF7 !important; font-size: clamp(38px, 4vw, 56px) !important; }
.hv-prop-sub { margin: 6px 0 0; font-family: 'Cormorant', Georgia, serif !important; font-style: italic; font-size: clamp(20px, 1.8vw, 25px); line-height: 1.25; color: #E4D9C3; }
.hv-prop-txt > p:not(.hv-prop-sub) { margin: 22px 0 30px; font-family: 'Figtree', sans-serif; font-size: 15px; line-height: 1.7; color: #E4E9E1; max-width: 50ch; }
.hv-prop-acao { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.hv-prop-caixa .hv-botao { background: #FAFAF7; color: #263F2E !important; gap: 10px; }
.hv-prop-caixa .hv-botao svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s ease; }
.hv-prop-caixa:hover .hv-botao { background: #FFFFFF; }
.hv-prop-caixa:hover .hv-botao svg { transform: translateX(3px); }
.hv-prop-nota { font-family: 'Figtree', sans-serif; font-size: 13px; color: #C9D3C5; }
.hv-prop-arte { margin: 0; text-align: center; }
.hv-prop-arte img { display: block; width: 100%; max-width: 400px; height: auto; margin: 0 auto; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.hv-prop-caixa:hover .hv-prop-arte img { transform: scale(1.015) rotate(-1deg); }
.hv-prop-arte figcaption { margin-top: 16px; font-family: 'Figtree', sans-serif; font-size: 12.5px; letter-spacing: .02em; color: #C9D3C5; }
.hv-prop-arte figcaption i { font-family: 'Cormorant', Georgia, serif; font-size: 15px; }
.hv-prop-itens { list-style: none; margin: 0 !important; padding: 0 !important; }
.hv-prop-itens li { display: flex; gap: 18px; align-items: flex-start; padding: 20px 0; border-top: 1px solid rgba(210, 183, 122, .28); }
.hv-prop-itens li:first-child { border-top: 0; padding-top: 0; }
.hv-prop-itens li:last-child { padding-bottom: 0; }
.hv-prop-ico { flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid #D2B77A; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.hv-prop-ico svg { width: 19px; height: 19px; fill: none; stroke: #D2B77A; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.hv-prop-itens strong { display: block; font-family: 'Cormorant', Georgia, serif !important; font-size: 23px; font-weight: 500; line-height: 1.15; color: #FAFAF7; }
.hv-prop-itens li span:not(.hv-prop-ico) { display: block; margin-top: 5px; font-family: 'Figtree', sans-serif; font-size: 13.5px; line-height: 1.55; color: #D5DCD2; }
@media (max-width: 1180px) {
  .hv-prop-caixa { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding: 56px 44px; gap: 40px 48px; }
  .hv-prop-arte { grid-row: span 2; }
}
@media (max-width: 767px) {
  .hv-prop-caixa { display: flex; flex-direction: column; align-items: stretch; gap: 32px; padding: 44px 22px 48px; text-align: left; }
  .hv-prop-arte { order: -1; }
  .hv-prop-arte img { max-width: 280px; }
  .hv-prop-itens { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 18px; }
  .hv-prop-itens li { flex-direction: column; gap: 12px; padding: 0; border: 0; }
  .hv-prop-itens strong { font-size: 19px; }
  .hv-prop-itens li span:not(.hv-prop-ico) { font-size: 12.5px; }
  .hv-prop-acao { order: 9; flex-direction: column; align-items: stretch; text-align: center; gap: 14px; }
  .hv-prop-acao .hv-botao { width: 100%; }
}

/* ---------- v55 (14/11/2026): video da capa retirado; a capa volta a usar o carrossel de banners.
   Os blocos v48/v49 do video ficam guardados no arquivo local css_hera_verde_li.css. ---------- */
.hv-video-capa { display: none !important; }

/* ---------- v50: checkout (etapa do e-mail) com o mesmo layout do carrinho: titulo, etapa a esquerda e
   "Resumo do pedido" fixo a direita. So CSS; as etapas seguintes ainda nao foram vistas e ficam como estao ---------- */
@media (min-width: 992px) {
  body.carrinho-checkout .campos-pedido:has(> #login-content) {
    display: grid; grid-template-columns: minmax(0, 1fr) 380px; column-gap: 56px; align-items: start;
    max-width: 1240px; margin: 0 auto; padding: 18px 0 72px;
  }
  body.carrinho-checkout .campos-pedido:has(> #login-content)::before {
    content: "Finalizar compra"; grid-column: 1 / -1; font-family: 'Cormorant', Georgia, serif; font-size: 40px; line-height: 1.1; color: #231F20; margin: 0 0 22px;
  }
  body.carrinho-checkout .campos-pedido:has(> #login-content) > #login-content { grid-column: 1; grid-row: 2; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) > .checkout-alerta-seguro { grid-column: 1; grid-row: 3; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) > .row-fluid:has(.resumo-compra) { grid-column: 2; grid-row: 2 / span 2; position: sticky; top: 24px; }
}
body.carrinho-checkout .campos-pedido:has(> #login-content) .row-fluid, body.carrinho-checkout .campos-pedido:has(> #login-content) .span12 { width: 100% !important; margin: 0 !important; float: none !important; }
/* Etapa: caixa branca alinhada a esquerda, como os itens do carrinho */
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner { max-width: none; margin: 0 !important; padding: 36px 36px 34px !important; text-align: left; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-title { text-align: left !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .email-box,
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .control-group { justify-content: flex-start; }
body.carrinho-checkout .campos-pedido:has(> #login-content) #id_email_login { width: 360px !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) > .checkout-alerta-seguro { max-width: none; margin: 22px 0 0 !important; padding: 0 !important; }

/* Resumo do pedido: mesmo painel do carrinho */
body.carrinho-checkout .campos-pedido:has(> #login-content) .resumo-compra { padding: 28px !important; margin: 0 !important; box-sizing: border-box; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .resumo-compra::before {
  content: "Resumo do pedido"; display: block; margin: 0 0 6px; font-family: 'Figtree', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #231F20;
}
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho,
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tbody { display: block !important; width: 100% !important; margin: 0 !important; background: transparent !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho thead { display: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tbody tr:not(.bg-dark) {
  display: grid !important; grid-template-columns: 56px minmax(0, 1fr) auto; grid-template-areas: "img info preco" "img qtd preco";
  column-gap: 14px; row-gap: 2px; align-items: center; padding: 16px 0 !important; border-bottom: 1px solid #E6E6E3;
}
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho td { display: block !important; padding: 0 !important; border: 0 !important; width: auto !important; text-align: left !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho td.phone-pullleft { display: contents !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .checkout-item-imagem { grid-area: img; width: 56px !important; height: 56px !important; margin: 0 !important; float: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .checkout-item-imagem img { width: 56px !important; height: 56px !important; max-width: none !important; object-fit: contain; background: #F4F3EF; border: 0 !important; padding: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .produto-info { grid-area: info; margin: 0 !important; float: none !important; width: auto !important; font-family: 'Cormorant', Georgia, serif !important; font-size: 17px; line-height: 1.2; color: #231F20; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .produto-info ul { margin: 3px 0 0 !important; list-style: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .produto-info li, body.carrinho-checkout .campos-pedido:has(> #login-content) .produto-info li * { font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 400 !important; color: #8A8A85 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .conteiner-qtd { grid-area: qtd; font-family: 'Figtree', sans-serif; font-size: 12px; color: #6B6F6A; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .conteiner-qtd div::before { content: "Qtd. "; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .conteiner-preco { grid-area: preco; text-align: right !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .conteiner-preco, body.carrinho-checkout .campos-pedido:has(> #login-content) .conteiner-preco * { font-family: 'Figtree', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: #231F20 !important; }
/* Subtotal, frete e total */
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark { display: flex !important; justify-content: space-between; align-items: baseline; padding: 10px 0 0 !important; background: transparent !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark > td:empty { display: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.desconto-tr.hide { display: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td, body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td * { background: transparent !important; font-family: 'Figtree', sans-serif !important; font-size: 14px !important; color: #6B6F6A !important; font-weight: 400 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark .padding-preco, body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark .padding-preco * { color: #231F20 !important; font-weight: 600 !important; font-size: 15px !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total { margin-top: 14px; padding-top: 16px !important; border-top: 1px solid #E6E6E3; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total td:first-child, body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total td:first-child * { color: #231F20 !important; font-weight: 600 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total .visible-phone { display: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total .preco-carrinho-total { font-family: 'Cormorant', Georgia, serif !important; font-size: 30px !important; font-weight: 500 !important; line-height: 1 !important; color: #231F20 !important; }
@media (max-width: 991px) {
  body.carrinho-checkout .campos-pedido:has(> #login-content) { display: flex; flex-direction: column; padding: 12px 0 48px; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) > .row-fluid:has(.resumo-compra) { margin-top: 28px !important; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner { padding: 28px 20px !important; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) #id_email_login { width: 100% !important; }
}
/* v50 (ajustes): sem as bordas da tabela original, linhas alinhadas e total numa linha so */
@media (min-width: 992px) {
  body.carrinho-checkout .campos-pedido:has(> #login-content) { grid-template-rows: auto auto auto 1fr; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) > .row-fluid:has(.resumo-compra) { grid-row: 2 / 5; }
}
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho, body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr,
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho td { border: 0 !important; box-shadow: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tbody tr:not(.bg-dark) { border-bottom: 1px solid #E6E6E3 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total { border-top: 1px solid #E6E6E3 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner form, body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .form-horizontal { max-width: none !important; width: auto !important; margin: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .conteiner-qtd div { text-align: left !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td.text-right { flex: 1 1 auto; text-align: left !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td.padding-preco, body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td.padding-preco > div { text-align: right !important; white-space: nowrap; width: auto !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .control-group { margin: 0 !important; width: auto !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .email-box { margin: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .control-group::before,
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .control-group::after { display: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td.text-right { flex: 1 1 0; min-width: 0; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.bg-dark td.padding-preco { flex: 0 0 auto; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .tabela-carrinho tr.tr-checkout-total .total { display: flex !important; justify-content: flex-end; }
/* Cliente que ja tem cadastro: senha + OK na mesma linha do e-mail/Continuar, links discretos abaixo */
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .submit-email.botao,
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data #id_botao_login { height: 50px !important; width: 153px !important; box-sizing: border-box; justify-content: center; padding: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data { margin-top: 12px; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .control-group { display: grid !important; grid-template-columns: 360px 153px; justify-content: start; column-gap: 0; row-gap: 16px; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .senha-box { grid-column: 1; grid-row: 1; margin: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data #id_senha_login { width: 100% !important; height: 50px !important; margin: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data #id_botao_login { grid-column: 2; grid-row: 1; margin: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .esqueci-senha,
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .fazer-cadastro {
  grid-row: 2; justify-self: start; align-self: start; margin: 0 !important; padding: 0 !important; line-height: 1.4 !important;
  font-family: 'Figtree', sans-serif !important; font-size: 12.5px !important; color: #6B6F6A !important; text-decoration: underline !important; text-underline-offset: 3px;
}
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .esqueci-senha { grid-column: 1; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .fazer-cadastro { grid-column: 2; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .esqueci-senha:hover,
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .fazer-cadastro:hover { color: #231F20 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data i { display: none !important; }
@media (max-width: 600px) {
  body.carrinho-checkout .campos-pedido:has(> #login-content) .email-box { flex: 1 1 100%; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .submit-email.botao { width: 100% !important; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .control-group { grid-template-columns: minmax(0, 1fr) 96px; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data #id_botao_login { width: 96px !important; }
}
body.carrinho-checkout .campos-pedido:has(> #login-content) #formularioLogin .control-group { gap: 0 !important; flex-wrap: nowrap; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .submit-email.botao { flex: 0 0 153px; margin: 0 !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .email-box { flex: 0 0 360px; }
@media (max-width: 600px) {
  body.carrinho-checkout .campos-pedido:has(> #login-content) #formularioLogin .control-group { flex-wrap: wrap; row-gap: 10px !important; }
  body.carrinho-checkout .campos-pedido:has(> #login-content) .email-box, body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .submit-email.botao { flex: 1 1 100%; }
}
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .submit-email.botao { position: static !important; min-width: 0 !important; max-width: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .submit-email.botao[style*="display: none"] { display: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .identificacao-inner .control-group { max-width: none !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data #id_botao_login { min-width: 0 !important; max-width: none !important; position: static !important; }
body.carrinho-checkout .campos-pedido:has(> #login-content) .login-data .control-group { row-gap: 18px !important; }

/* ---------- v51: celular mais proximo do computador: cabecalho com menu, logo, busca e sacola; grade com 2 produtos
   por linha e botao abaixo do preco; sacola lateral compacta (altura real da tela); aviso de cookies e links do rodape ---------- */
@media (max-width: 767px) {
  /* Cabecalho: barra fixa de 60px com menu (esq.), logo (centro), busca e sacola (dir.) */
  html body .atalhos-mobile { height: 60px !important; background: #FAFAF7 !important; border: 0 !important; border-bottom: 1px solid #E6E6E3 !important; box-shadow: none !important; z-index: 1000 !important; }
  html body .atalhos-mobile ul { height: 60px; margin: 0 !important; }
  html body .atalhos-mobile li:has(.icon-home), html body .atalhos-mobile li:has(.icon-user), html body .atalhos-mobile li.vazia { display: none !important; }
  html body .atalhos-mobile li.fundo-principal { position: absolute !important; right: 4px; top: 6px; width: 48px !important; height: 48px !important; background: transparent !important; border: 0 !important; }
  html body .atalhos-mobile li.fundo-principal a { display: flex !important; align-items: center; justify-content: center; width: 48px !important; height: 48px !important; top: 0 !important; color: #231F20 !important; font-size: 21px !important; }
  .hv-busca-toggle { position: fixed; top: 6px; right: 52px; z-index: 1001; width: 48px; height: 48px; padding: 0; border: 0; background: transparent; color: #231F20; display: flex; align-items: center; justify-content: center; }
  .hv-busca-toggle svg { width: 21px; height: 21px; fill: none !important; stroke: #231F20 !important; stroke-width: 1.7; stroke-linecap: round; }
  /* o #cabecalho tem view-transition-name (v32), que isola a camada; sem isto a busca e o menu abertos ficam sob o video */
  html body #cabecalho { position: relative; z-index: 1001 !important; }
  html body #cabecalho > .conteiner { height: 60px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; }
  html body #cabecalho > .conteiner > .row-fluid, html body #cabecalho .conteudo-topo, html body #cabecalho .conteudo-topo .inferior, html body #cabecalho .busca-mobile { height: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; }
  html body #cabecalho .logo { height: 0 !important; margin: 0 !important; }
  html body #cabecalho .logo a { position: fixed !important; top: 0; left: 50%; transform: translateX(-50%); z-index: 1001; height: 60px; display: flex !important; align-items: center; }
  html body #cabecalho .logo img { height: 30px !important; width: auto !important; max-width: 170px !important; }
  html body #cabecalho .atalho-menu {
    position: fixed !important; top: 6px; left: 4px; z-index: 1001; width: 48px !important; height: 48px !important; margin: 0 !important; padding: 0 !important;
    border: 0 !important; border-radius: 0 !important; box-shadow: none !important; font-size: 0 !important; color: transparent !important;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23231F20' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M4 7h16M4 12h16M4 17h16'/%3E%3C/svg%3E") center / 23px no-repeat !important;
  }
  html body #cabecalho .atalho-menu::before { display: none !important; }
  /* Busca: escondida; abre abaixo da barra pelo botao da lupa */
  html body #cabecalho .busca-mobile .busca { display: none !important; }
  html body.hv-busca-aberta #cabecalho .busca-mobile .busca {
    display: block !important; position: fixed !important; top: 60px; left: 0; right: 0; width: auto !important; height: auto !important; margin: 0 !important;
    padding: 10px 12px !important; background: #FAFAF7 !important; border: 0 !important; border-bottom: 1px solid #E6E6E3 !important; border-radius: 0 !important; z-index: 999;
  }
  html body.hv-busca-aberta #cabecalho .busca-mobile .busca form { position: relative; margin: 0 !important; }
  html body.hv-busca-aberta #cabecalho .busca-mobile .busca input { width: 100% !important; height: 44px !important; box-sizing: border-box; margin: 0 !important; padding: 0 44px 0 14px !important; background: #FFFFFF !important; border: 1px solid #DDDDD8 !important; border-radius: 0 !important; box-shadow: none !important; font-family: 'Figtree', sans-serif !important; font-size: 15px !important; color: #231F20 !important; }
  html body.hv-busca-aberta #cabecalho .busca-mobile .busca .botao-busca { position: absolute !important; right: 4px !important; top: 50% !important; transform: translateY(-50%); width: 36px !important; height: 36px !important; background: transparent !important; color: #263F2E !important; border: 0 !important; box-shadow: none !important; }
  /* Menu de categorias: painel abaixo da barra */
  html body #cabecalho .menu.superior { height: 0 !important; margin: 0 !important; }
  html body #cabecalho .menu.superior .nivel-um {
    position: fixed !important; top: 60px; left: 0; right: 0; max-height: calc(100dvh - 60px); overflow-y: auto; z-index: 999;
    margin: 0 !important; padding: 6px 0 14px !important; background: #FAFAF7 !important; border-bottom: 1px solid #E6E6E3 !important; box-shadow: 0 16px 30px rgba(35,31,32,.08);
  }
  html body #cabecalho .menu.superior .nivel-um > li { display: block !important; width: auto !important; margin: 0 !important; border: 0 !important; border-bottom: 1px solid #ECECE8 !important; background: transparent !important; }
  html body #cabecalho .menu.superior .nivel-um > li > a { display: block !important; padding: 15px 22px !important; font-family: 'Figtree', sans-serif !important; font-size: 12.5px !important; font-weight: 600 !important; letter-spacing: .12em !important; text-transform: uppercase !important; color: #231F20 !important; background: transparent !important; text-align: left !important; }
  html body #cabecalho .menu.superior .nivel-um > li > a * { font: inherit !important; color: inherit !important; letter-spacing: inherit !important; }
  html body #cabecalho .menu.superior .nivel-dois { position: static !important; display: block !important; width: auto !important; margin: -6px 0 8px !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: transparent !important; }
  html body #cabecalho .menu.superior .nivel-dois a { display: block !important; padding: 9px 22px 9px 34px !important; font-family: 'Figtree', sans-serif !important; font-size: 14px !important; font-weight: 400 !important; text-transform: none !important; letter-spacing: 0 !important; color: #4A4D49 !important; text-align: left !important; }

  /* Grade de produtos: 2 por linha, botao abaixo do preco como no computador */
  .listagem > ul { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 12px; row-gap: 30px; margin: 0 !important; }
  .listagem > ul > li.listagem-linha, .listagem > ul > li.listagem-linha > ul { display: contents !important; }
  .listagem > ul > li.listagem-linha > ul > li { display: flex !important; width: auto !important; margin: 0 !important; float: none !important; }
  .listagem > ul::before, .listagem > ul::after, .listagem > ul > li.listagem-linha::before, .listagem > ul > li.listagem-linha::after,
  .listagem > ul > li.listagem-linha > ul::before, .listagem > ul > li.listagem-linha > ul::after { display: none !important; content: none !important; }
  .listagem .listagem-item { position: relative; display: flex !important; flex-direction: column; width: 100%; margin: 0 !important; padding: 0 !important; }
  .listagem .listagem-item .imagem-produto { width: 100% !important; max-width: none !important; margin: 0 !important; }
  .listagem .listagem-item .info-produto { flex: 1 1 auto; padding: 0 !important; }
  .listagem .listagem-item .nome-produto { font-size: 16px !important; line-height: 1.25 !important; }
  .listagem .listagem-item .acoes-produto-responsiva { display: none !important; }
  .listagem .listagem-item .acoes-produto {
    display: block !important; position: static !important; opacity: 1 !important; visibility: visible !important;
    margin: 10px 0 0 !important; padding: 0 !important; width: 100% !important; background: transparent !important;
  }
  .listagem .listagem-item .acoes-produto .botao-comprar {
    display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 40px !important; padding: 0 !important; margin: 0 !important;
    background: transparent !important; border: 1px solid #231F20 !important; border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important;
    color: transparent !important; font-size: 0 !important; position: relative; z-index: 2;
  }
  .listagem .listagem-item .acoes-produto .botao-comprar i { display: none !important; }
  .listagem .listagem-item .acoes-produto .botao-comprar::after { content: "ADICIONAR À SACOLA"; font-family: 'Figtree', sans-serif; font-size: 10px; font-weight: 600; letter-spacing: .08em; color: #231F20; white-space: nowrap; }

  /* Sacola lateral: altura real da tela (barra do navegador do celular) e rodape compacto */
  .fancybox-wrap.modal-comprar-ajax-status { height: 100dvh !important; }
  .fancybox-wrap.modal-comprar-ajax-status .fancybox-skin, .fancybox-wrap.modal-comprar-ajax-status .fancybox-outer, .fancybox-wrap.modal-comprar-ajax-status .fancybox-inner { height: 100% !important; }
  .modal-comprar-ajax-status #comprar-ajax-status > .sucesso > .head.visible-phone { display: none !important; }
  .modal-comprar-ajax-status .buttons { flex-direction: row-reverse !important; gap: 8px !important; padding: 12px 16px calc(14px + env(safe-area-inset-bottom)) !important; flex: 0 0 auto; }
  .modal-comprar-ajax-status .buttons .botao { flex: 1 1 0; height: 46px !important; font-size: 10.5px !important; letter-spacing: .08em !important; }
}

/* Aviso de cookies (LGPD) no estilo da loja */
html body #avisoCookies { background: #FAFAF7 !important; border-top: 1px solid #E6E6E3 !important; box-shadow: 0 -10px 30px rgba(35,31,32,.07) !important; z-index: 1002 !important; }
html body #avisoCookies .conteiner { display: flex !important; align-items: center; gap: 24px; max-width: 1240px; margin: 0 auto !important; padding: 16px 28px !important; box-sizing: border-box; }
html body #avisoCookies p { flex: 1 1 auto; margin: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 13px !important; line-height: 1.5 !important; color: #4A4D49 !important; text-align: left !important; }
html body #avisoCookies p a { color: #263F2E !important; font-weight: 600; text-decoration: underline !important; text-underline-offset: 2px; }
html body #avisoCookies .botao { flex: 0 0 auto; height: 42px !important; padding: 0 26px !important; margin: 0 !important; background: #263F2E !important; border: 1px solid #263F2E !important; border-radius: 0 !important; box-shadow: none !important; text-shadow: none !important; color: #FFFFFF !important; font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase !important; }
@media (max-width: 767px) {
  html body #avisoCookies .conteiner { flex-direction: column; align-items: stretch; gap: 12px; padding: 14px 16px calc(14px + env(safe-area-inset-bottom)) !important; }
  html body #avisoCookies p { font-size: 12.5px !important; }
  html body #avisoCookies .botao { width: 100% !important; }
}

/* Rodape: links das paginas institucionais */
.hv-rodape-paginas { display: flex; flex-wrap: wrap; gap: 8px 28px; padding: 18px 28px; border-top: 1px solid rgba(255,255,255,.12); }
.hv-rodape-paginas a { font-family: 'Figtree', sans-serif; font-size: 12.5px; color: rgba(255,255,255,.78) !important; text-decoration: none !important; }
.hv-rodape-paginas a:hover { color: #FFFFFF !important; text-decoration: underline !important; text-underline-offset: 3px; }
@media (max-width: 767px) { .hv-rodape-paginas { padding: 16px; gap: 10px 20px; } }

/* ---------- v52: "Os mais procurados" sem a foto: so o titulo e o carrossel na largura toda (4 visiveis, setas ate 8) ---------- */
.hv-vitrine-foto { display: none !important; }
.hv-vitrine { grid-template-columns: minmax(0, 1fr) !important; }
.hv-vitrine-produtos.listagem { grid-column: 1 / -1 !important; }
.hv-vitrine-trilho > .listagem-item { flex: 0 0 calc((100% - 66px) / 4); }
.hv-vit-ant { left: -6px; }
.hv-vit-prox { right: -6px; }
@media (max-width: 1100px) and (min-width: 601px) { .hv-vitrine-trilho > .listagem-item { flex-basis: calc((100% - 44px) / 3); } }
@media (max-width: 600px) { .hv-vitrine-trilho > .listagem-item { flex: 0 0 46%; } }

/* ---------- v53: cupom de desconto no resumo do carrinho (a linha original fica escondida no layout de 2 colunas) ---------- */
.hv-resumo-cupom { margin: 0 0 18px; padding: 0 0 18px; border-bottom: 1px solid #E6E6E3; }
.hv-resumo-cupom form, .hv-resumo-cupom .control-group, .hv-resumo-cupom .controls { margin: 0 !important; }
.hv-resumo-cupom .control-label { float: none !important; width: auto !important; text-align: left !important; padding: 0 0 8px !important; display: block;
  font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #231F20 !important; }
.hv-resumo-cupom .input-append { display: flex !important; width: 100%; }
.hv-resumo-cupom #usarCupom { flex: 1 1 auto; width: auto !important; height: 44px !important; box-sizing: border-box; border: 1px solid #DDDDD8 !important; border-right: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 12px !important; margin: 0 !important; font-family: 'Figtree', sans-serif !important; font-size: 14px !important; background: #FFFFFF !important; text-transform: uppercase; }
.hv-resumo-cupom #btn-cupom { height: 44px !important; border-radius: 0 !important; border: 1px solid #231F20 !important; background: #FFFFFF !important; box-shadow: none !important; text-shadow: none !important; padding: 0 16px !important; font-family: 'Figtree', sans-serif !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #231F20 !important; white-space: nowrap; }
.hv-resumo-cupom #btn-cupom:hover { background: #231F20 !important; color: #FFFFFF !important; }
.hv-resumo-cupom, .hv-resumo-cupom * { font-family: 'Figtree', sans-serif; }
.hv-resumo-cupom .help-inline, .hv-resumo-cupom .alert, .hv-resumo-cupom small, .hv-resumo-cupom p { display: block; margin: 8px 0 0 !important; padding: 0 !important; font-size: 12.5px !important; color: #6B6F6A !important; background: transparent !important; border: 0 !important; }
.hv-resumo-cupom a { color: #263F2E !important; text-decoration: underline; }

/* ---------- v54: checkout (dados, entrega e pagamento) com menos colunas: Dados e Entrega lado a lado,
   Pagamento na largura toda (o formulario do cartao estava espremido em 1/3 da coluna) ---------- */
@media (min-width: 992px) {
  body.carrinho-checkout #formularioCheckout > .row-fluid { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; align-items: stretch; }
  body.carrinho-checkout #formularioCheckout > .row-fluid::before, body.carrinho-checkout #formularioCheckout > .row-fluid::after { display: none !important; }
  body.carrinho-checkout #formularioCheckout > .row-fluid > .span4 { width: auto !important; margin: 0 !important; float: none !important; }
  body.carrinho-checkout #formularioCheckout > .row-fluid > .span4:nth-child(3) { grid-column: 1 / -1; }
  body.carrinho-checkout #formularioCheckout > .row-fluid > .span4 > .caixa-sombreada { height: 100%; box-sizing: border-box; margin: 0 !important; }
}
@media (max-width: 991px) {
  body.carrinho-checkout #formularioCheckout > .row-fluid > .span4 { width: 100% !important; margin: 0 0 16px !important; float: none !important; }
}
body.carrinho-checkout #formularioCheckout .caixa-sombreada { padding: 24px 26px !important; }
/* Titulos das secoes no estilo do site */
body.carrinho-checkout #formularioCheckout legend.titulo {
  font-family: 'Figtree', sans-serif !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase !important;
  color: #231F20 !important; border-bottom: 1px solid #E6E6E3 !important; padding: 0 0 12px !important; margin: 0 0 16px !important; width: 100%;
}
body.carrinho-checkout #formularioCheckout legend.titulo i { color: #263F2E !important; margin-right: 6px; }
body.carrinho-checkout #formularioCheckout legend.titulo a, body.carrinho-checkout #formularioCheckout legend.titulo small {
  font-size: 11.5px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 400 !important; color: #6B6F6A !important;
}
/* Cartao: campo do codigo de seguranca com largura confortavel */
body.carrinho-checkout #formas-pagamento-wrapper input[placeholder="CVV"] { width: 120px !important; }
@media (max-width: 767px) { body.carrinho-checkout #formularioCheckout .caixa-sombreada { padding: 18px 16px !important; } }
