/* =====================================================================
   Estilo "essencial" — camada por cima do style.css (carregada depois
   dele, só quando tema.estilo = "essencial"). Tudo aqui fica sob
   [data-estilo="essencial"], então os outros estilos não são tocados.

   Clima: moda feminina, muito branco, DM Sans leve (títulos 300/400,
   preço 600), paleta neutra com um rosado-terroso nos painéis, botão
   cheio quase preto e botão de contorno branco sobre foto/painel.
   Contraste (AA, 4,5): texto #3B3F47 sobre branco 10,6 e sobre o rosé da
   faixa 7,4; secundário #6B6F77 sobre branco 5,0 (não vai sobre o fundo
   da foto: lá dá 4,4); branco sobre #14161B 18,1. Branco sobre o rosado
   #A68B81 dá 3,2, então os painéis usam --painel-aa, o rosado escurecido
   pelo build até passar (#877169, 4,6).
   ===================================================================== */

@font-face {
  font-family: 'DM Sans';
  src: url('/assets/dm-sans.9fea608a.woff2') format('woff2');
  font-weight: 300 600;
  font-style: normal;
  font-display: swap;
}

/* ---------------------------------------------------------------- tokens */
[data-estilo="essencial"] {
  --fundo: #FFFFFF; --texto: #3B3F47; --texto-2: #6B6F77;
  --marca: #14161B; --acento: var(--cor-acento, #A68B81); --faixa-topo: #E6D5CC;
  --fundo-foto: var(--cor-fundo-foto, #F5EEEA); --borda: #E9E4E0;
  --raio-card: 0; --raio-botao: 2px;
  --fonte-titulo: "DM Sans", system-ui, sans-serif;
  --fonte-texto: "DM Sans", system-ui, sans-serif;
  --espaco-secao: clamp(48px, 7vw, 88px);
  --painel: var(--painel-aa, #877169);
  --h-topo: 72px;

  /* os tokens do style.css apontam pros do estilo */
  --bg: var(--fundo);
  --ink: var(--texto);
  --muted: var(--texto-2);
  --line: var(--borda);
  --accent: var(--painel);
  --areia: var(--fundo-foto);
  --serif: var(--fonte-titulo);
  --sans: var(--fonte-texto);
  --sobre-marca: #fff;
  --sobre-marca-fraco: #fff;
  --marca-escura: #000;
  --caixa-alta: .06em;
}
[data-estilo="essencial"] body { font-size: 15px; background: var(--fundo); overflow-x: clip; letter-spacing: .01em; }
[data-estilo="essencial"] h1,
[data-estilo="essencial"] h2,
[data-estilo="essencial"] h3 { font-weight: 400; letter-spacing: 0; }
[data-estilo="essencial"] :focus-visible { outline: 2px solid var(--marca); outline-offset: 2px; }
[data-estilo="essencial"] .etiqueta,
[data-estilo="essencial"] .rot { font: 400 12px/1.4 var(--fonte-texto); letter-spacing: .06em; color: var(--texto-2); }

/* botão de contorno (sobre foto ou painel herda a cor do texto: branco) */
[data-estilo="essencial"] .btn-contorno {
  display: inline-flex; align-items: center; justify-content: center; width: fit-content; min-height: 44px;
  padding: 0 28px; border: 1px solid currentColor; border-radius: var(--raio-botao); color: inherit;
  font: 400 13px/1 var(--fonte-texto); letter-spacing: .08em; text-transform: uppercase; text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
/* botão de contorno escuro (fundo branco) */
[data-estilo="essencial"] .btn-linha-es {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 28px;
  border: 1px solid var(--texto); border-radius: var(--raio-botao); color: var(--texto); text-decoration: none;
  font: 400 14px/1 var(--fonte-texto); letter-spacing: .02em; transition: background-color .15s ease, color .15s ease;
}
[data-estilo="essencial"] .btn-linha-es:hover { background: var(--marca); border-color: var(--marca); color: #fff; }

/* ------------------------------------------------- títulos de seção */
[data-estilo="essencial"] .secao-tit {
  font: 300 26px/1.2 var(--fonte-titulo); color: var(--texto); text-align: center;
  margin: var(--espaco-secao) 0 24px; padding: 0 16px; scroll-margin-top: 90px;
}
[data-estilo="essencial"] .secao-tit::before,
[data-estilo="essencial"] .secao-tit::after { content: none; }
/* título à esquerda com "Ver mais" à direita */
[data-estilo="essencial"] .secao-cab {
  display: flex; align-items: baseline; justify-content: space-between; gap: 16px;
  margin: var(--espaco-secao) auto 20px;
}
[data-estilo="essencial"] .secao-cab .secao-tit { margin: 0; padding: 0; text-align: left; font-size: 22px; }
[data-estilo="essencial"] .ver-mais {
  flex: none; font-size: 14px; color: var(--texto); text-decoration: underline; text-underline-offset: 4px;
  padding: 10px 0;
}

/* -------------------------------------------- faixa do topo com setas */
[data-estilo="essencial"] .faixa {
  background: var(--faixa-topo); color: var(--texto); font: 400 13px/1.3 var(--fonte-texto);
  letter-spacing: .01em; text-transform: none; padding: 0; white-space: normal;
}
/* fundo rosé de ponta a ponta; setas e mensagem numa coluna de até 720 px */
[data-estilo="essencial"] .faixa-setas {
  display: flex; align-items: center; justify-content: center; padding: 0 max(0px, calc((100% - 720px) / 2));
}
[data-estilo="essencial"] .faixa-msgs { flex: 1; min-width: 0; margin: 0; padding: 10px 0; text-align: center; }
[data-estilo="essencial"] .faixa-msg { display: none; animation: es-faixa .35s ease both; }
[data-estilo="essencial"] .faixa-setas[data-atual="0"] .faixa-msg:nth-child(1),
[data-estilo="essencial"] .faixa-setas[data-atual="1"] .faixa-msg:nth-child(2),
[data-estilo="essencial"] .faixa-setas[data-atual="2"] .faixa-msg:nth-child(3) { display: block; }
[data-estilo="essencial"] .faixa-seta {
  flex: none; width: 44px; height: 38px; border: 0; background: none; cursor: pointer; color: var(--texto);
  font-size: 22px; line-height: 1; padding: 0 0 3px;
}
@keyframes es-faixa { from { opacity: 0; } to { opacity: 1; } }

/* ------------------------------------------------------------ cabeçalho */
[data-estilo="essencial"] .topo { background: var(--fundo); border-bottom: 1px solid var(--borda); }
[data-estilo="essencial"] .topo[data-rolou] { box-shadow: 0 2px 12px rgba(20, 22, 27, .06); }
[data-estilo="essencial"] .marca {
  font: 400 18px/1.15 var(--fonte-titulo); letter-spacing: .14em; text-transform: uppercase; color: var(--texto);
  white-space: normal; min-width: 0; max-width: 100%;
}
[data-estilo="essencial"] .marca span { font: 400 10px/1 var(--fonte-texto); letter-spacing: .2em; color: var(--texto-2); }
[data-estilo="essencial"] .menu a { font: 400 14px/1 var(--fonte-texto); letter-spacing: .01em; text-transform: none; color: var(--texto); white-space: nowrap; }
[data-estilo="essencial"] .carrinho-qtd { background: var(--marca); color: #fff; font-weight: 600; }

/* ------------------------------------------------------------------ hero */
[data-estilo="essencial"] .hero { background: var(--fundo-foto); }
[data-estilo="essencial"] .hero-tit { font: 300 34px/1.1 var(--fonte-titulo); text-transform: uppercase; letter-spacing: .04em; }
[data-estilo="essencial"] .hero-cta {
  background: transparent; color: #fff; border: 1px solid #fff; border-radius: var(--raio-botao);
  font: 400 13px/1 var(--fonte-texto); letter-spacing: .08em; padding: 15px 28px;
}
[data-estilo="essencial"] .hero-slide:hover .hero-cta { background: #fff; color: var(--texto); }
[data-estilo="essencial"] .hero-seta { background: rgba(255, 255, 255, .9); border-radius: 50%; width: 40px; height: 40px; margin: 0 12px; font-size: 24px; color: var(--texto); }
[data-estilo="essencial"] .hero-pontos button::before { border-radius: 0; width: 16px; height: 2px; top: 11px; left: 4px; }

/* hero dividido: celular = foto em cima, painel embaixo */
[data-estilo="essencial"] .hero-slide--dividido {
  display: grid; grid-template-columns: minmax(0, 1fr); height: auto; color: #fff; background: var(--painel);
}
[data-estilo="essencial"] .hero-slide--dividido .hero-foto { position: relative; order: -1; display: block; aspect-ratio: 4 / 5; overflow: hidden; }
[data-estilo="essencial"] .hero-slide--dividido .hero-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; }
[data-estilo="essencial"] .hero-painel {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 12px;
  background: var(--painel); color: #fff; padding: 32px 24px 44px;
}
[data-estilo="essencial"] .hero-painel .hero-tit { text-shadow: none; }
[data-estilo="essencial"] .hero-painel .hero-sub { font-size: 15px; line-height: 1.5; opacity: 1; max-width: 36ch; }
[data-estilo="essencial"] .hero-painel .btn-contorno { margin-top: 8px; }
[data-estilo="essencial"] .hero-slide--dividido:hover .btn-contorno { background: #fff; color: var(--painel); }
[data-estilo="essencial"] .hero--dividido .hero-pontos { bottom: auto; top: calc(100vw * 1.25 - 30px); }
[data-estilo="essencial"] .hero--dividido .hero-seta { top: calc(100vw * .625); }

/* ------------------------------------------------- faixa de vantagens */
[data-estilo="essencial"] .vantagens-ac {
  list-style: none; margin: 0; padding: 18px 8px; border-bottom: 1px solid var(--borda);
  display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
[data-estilo="essencial"] .vantagens-ac::-webkit-scrollbar { display: none; }
[data-estilo="essencial"] .vantagens-ac li {
  flex: 0 0 82%; scroll-snap-align: start; display: flex; align-items: center; justify-content: center; gap: 10px;
  padding: 4px 12px; font-size: 13px; line-height: 1.35; color: var(--texto);
}
[data-estilo="essencial"] .vantagens-ac strong { font-weight: 600; }
[data-estilo="essencial"] .vantagens-ac svg { width: 26px; height: 26px; color: var(--texto); flex: none; }

/* --------------------------------------------------- carrosséis */
[data-estilo="essencial"] .carrossel { position: relative; }
[data-estilo="essencial"] .trilho-cards { gap: 12px; scroll-snap-type: x mandatory; scroll-padding-inline: 16px; padding-bottom: 4px; }
[data-estilo="essencial"] .trilho-cards .card { width: calc((100% - 24px) / 2.2); max-width: none; }
[data-estilo="essencial"] .car-seta { display: none; }

/* ------------------------------------------------------ Explore (3:4) */
[data-estilo="essencial"] .trilho-explore {
  display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 16px;
  scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
[data-estilo="essencial"] .trilho-explore::-webkit-scrollbar { display: none; }
[data-estilo="essencial"] .explore-card {
  position: relative; flex: none; width: 78%; aspect-ratio: 3 / 4; overflow: hidden; scroll-snap-align: start;
  background: var(--fundo-foto); color: #fff; text-decoration: none;
}
[data-estilo="essencial"] .explore-card picture,
[data-estilo="essencial"] .explore-card img { position: absolute; inset: 0; width: 100%; height: 100%; }
[data-estilo="essencial"] .explore-card img { object-fit: cover; object-position: 50% 25%; transition: transform .4s ease; }
[data-estilo="essencial"] .explore-card:hover img { transform: scale(1.03); }
[data-estilo="essencial"] .explore-txt {
  position: absolute; inset: auto 0 0 0; display: flex; flex-direction: column; align-items: center; gap: 16px;
  padding: 96px 16px 28px; background: linear-gradient(to top, rgba(20, 22, 27, .55), rgba(20, 22, 27, 0));
}
[data-estilo="essencial"] .explore-tit { font: 300 34px/1.05 var(--fonte-titulo); text-transform: uppercase; letter-spacing: .04em; text-align: center; }
[data-estilo="essencial"] .explore-card:hover .btn-contorno { background: #fff; color: var(--texto); }

/* ----------------------------------------------------------------- card */
[data-estilo="essencial"] .grade { gap: 28px 12px; }
[data-estilo="essencial"] .grade .card { contain-intrinsic-size: auto 380px; }
[data-estilo="essencial"] .card-link { display: flex; flex-direction: column; color: var(--texto); text-decoration: none; height: 100%; }
[data-estilo="essencial"] .card-es .card-foto { display: block; aspect-ratio: 3 / 4; background: var(--fundo-foto); border-radius: 0; }
[data-estilo="essencial"] .card-faixa {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 6px 8px;
  background: rgba(230, 213, 204, .94); color: var(--texto); text-align: center;
  font: 400 11px/1.3 var(--fonte-texto); letter-spacing: 0;
}
/* "Novo" discreto, em texto, no canto da foto (fora do fluxo: os preços
   da mesma linha da grade ficam alinhados com ou sem ele) */
[data-estilo="essencial"] .card-es { position: relative; }
[data-estilo="essencial"] .card-novo {
  position: absolute; top: 8px; left: 8px; z-index: 2; padding: 3px 7px; background: rgba(255, 255, 255, .9);
  font-size: 11px; line-height: 1.2; letter-spacing: .1em; text-transform: uppercase; color: var(--texto);
}
[data-estilo="essencial"] .card-es .card-nome {
  margin: 10px 0 0; font: 400 14px/1.35 var(--fonte-texto); color: var(--texto); letter-spacing: .01em;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
[data-estilo="essencial"] .card-es .card-preco { margin-top: 6px; font: 600 16px/1.3 var(--fonte-texto); color: var(--texto); font-variant-numeric: tabular-nums; }
[data-estilo="essencial"] .card-cond { font-size: 12px; line-height: 1.4; color: var(--texto-2); }
[data-estilo="essencial"] .card-link:hover .card-nome { text-decoration: underline; text-underline-offset: 3px; }
[data-estilo="essencial"] .card--esgotado .card-preco { color: var(--texto-2); }

/* --------------------------------------------------- editorial (faixa) */
[data-estilo="essencial"] .editorial { margin-top: var(--espaco-secao); }
[data-estilo="essencial"] .editorial-in { display: block; position: relative; color: #fff; text-decoration: none; background: var(--painel); }
[data-estilo="essencial"] .editorial-in picture { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--fundo-foto); }
[data-estilo="essencial"] .editorial-in img { width: 100%; height: 100%; object-fit: cover; }
[data-estilo="essencial"] .editorial-txt { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px 24px 36px; }
[data-estilo="essencial"] .editorial-tit { font: 300 32px/1.1 var(--fonte-titulo); text-transform: uppercase; letter-spacing: .04em; }
[data-estilo="essencial"] .editorial-sub { font-size: 15px; }
[data-estilo="essencial"] .editorial-link {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 28px; border: 1px solid #fff;
  border-radius: var(--raio-botao); font-size: 13px; letter-spacing: .08em; text-transform: uppercase;
}

/* ---------------------------------------------- editorial em painel */
[data-estilo="essencial"] .editorial-painel { margin-top: var(--espaco-secao); }
[data-estilo="essencial"] .painel {
  display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center;
  background: var(--painel); color: #fff; text-decoration: none; padding: 40px 24px 44px;
}
[data-estilo="essencial"] .painel picture { display: block; width: min(70%, 320px); aspect-ratio: 4 / 3; overflow: hidden; margin-bottom: 8px; }
[data-estilo="essencial"] .painel img { width: 100%; height: 100%; object-fit: cover; }
[data-estilo="essencial"] .painel-tit { font: 400 30px/1.15 var(--fonte-titulo); max-width: 16ch; }
[data-estilo="essencial"] .painel-sub { font-size: 15px; line-height: 1.5; max-width: 40ch; }
[data-estilo="essencial"] .painel:hover .btn-contorno { background: #fff; color: var(--painel); }

/* ------------------------------------------------ coleção com texto */
[data-estilo="essencial"] .colecao { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-top: var(--espaco-secao); }
[data-estilo="essencial"] .colecao-txt { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
[data-estilo="essencial"] .colecao-tit { margin: 0; font: 300 26px/1.2 var(--fonte-titulo); color: var(--texto); }
[data-estilo="essencial"] .colecao-txt p { margin: 0; font-size: 15px; line-height: 1.8; color: var(--texto); max-width: 52ch; }
[data-estilo="essencial"] .colecao-txt .btn-linha-es { margin-top: 8px; }
/* o carrossel da coleção já está dentro do .wrap: sem padding duplo */
[data-estilo="essencial"] .colecao-car { min-width: 0; margin: 0 -16px; }

/* ------------------------------------------------- filtros da grade */
[data-estilo="essencial"] .barra-filtros { border: 0; }
[data-estilo="essencial"] .barra-filtros-in { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 8px; align-items: center; }
[data-estilo="essencial"] .chips { gap: 6px; padding: 2px 0; }
[data-estilo="essencial"] .chip {
  padding: 10px 14px; border-radius: var(--raio-botao); background: #fff; border: 1px solid var(--borda); box-shadow: none;
  font: 400 13px/1 var(--fonte-texto); letter-spacing: .01em; text-transform: none; color: var(--texto); align-items: center;
}
[data-estilo="essencial"] .chip .n { font-size: 11px; color: var(--texto-2); }
[data-estilo="essencial"] .chip[aria-current='true'] { background: var(--marca); border-color: var(--marca); color: #fff; box-shadow: none; }
[data-estilo="essencial"] .chip[aria-current='true'] .n { color: #fff; }
[data-estilo="essencial"] .ordem { border: 0; padding: 0; }
[data-estilo="essencial"] .ordem select {
  font: 400 13px/1 var(--fonte-texto); text-transform: none; letter-spacing: .01em; color: var(--texto);
  background: #fff; border: 1px solid var(--borda); border-radius: var(--raio-botao); padding: 10px;
}
[data-estilo="essencial"] .tams {
  grid-column: 1 / -1; display: flex; align-items: center; gap: 6px; scroll-margin-top: 100px;
  overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding: 2px 0;
}
[data-estilo="essencial"] .tams::-webkit-scrollbar { display: none; }
[data-estilo="essencial"] .tams-rot { flex: none; min-width: 64px; font-size: 13px; color: var(--texto-2); }
[data-estilo="essencial"] .chip-tam {
  flex: none; min-width: 44px; height: 40px; padding: 0 12px; border-radius: var(--raio-botao); white-space: nowrap;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; border: 1px solid var(--borda); color: var(--texto); text-decoration: none; font: 400 13px/1 var(--fonte-texto);
}
[data-estilo="essencial"] .chip-tam[aria-current='true'] { border-color: var(--marca); box-shadow: inset 0 0 0 1px var(--marca); }

/* ---------------------------------------------------------------- rodapé */
[data-estilo="essencial"] .rodape {
  background: #FAF8F6; color: var(--texto); margin-top: var(--espaco-secao); border-top: 1px solid var(--borda);
}
[data-estilo="essencial"] .rodape a { color: var(--texto); }
[data-estilo="essencial"] .rodape .marca-pe { font: 400 18px/1.15 var(--fonte-titulo); letter-spacing: .14em; text-transform: uppercase; }
[data-estilo="essencial"] .rodape .rot { color: var(--texto); font-weight: 600; letter-spacing: .02em; }
[data-estilo="essencial"] .rodape .rot-fina,
[data-estilo="essencial"] .rodape .entrega,
[data-estilo="essencial"] .rodape .creditos { color: var(--texto-2); opacity: 1; }
[data-estilo="essencial"] .rodape .entrega { border-top-color: var(--borda); letter-spacing: .01em; }

/* ------------------------------------------------------- página da peça */
[data-estilo="essencial"] .migalha { font-size: 13px; color: var(--texto-2); }
[data-estilo="essencial"] .palco,
[data-estilo="essencial"] .mini { background: var(--fundo-foto); }
[data-estilo="essencial"] .produto h1 { font: 400 26px/1.25 var(--fonte-titulo); color: var(--texto); }
[data-estilo="essencial"] .produto .etiqueta { color: var(--texto-2); }
[data-estilo="essencial"] .preco-grande { font: 600 24px/1.25 var(--fonte-texto); color: var(--texto); display: flex; flex-direction: column; gap: 2px; }
[data-estilo="essencial"] .preco-grande span { margin: 0; font: 400 13px/1.4 var(--fonte-texto); letter-spacing: .01em; text-transform: none; color: var(--texto-2); }
[data-estilo="essencial"] .preco-grande .pix { color: var(--texto); font-weight: 600; }
[data-estilo="essencial"] .rot-grade { color: var(--texto); }
[data-estilo="essencial"] .tam-btn {
  min-width: 52px; border: 1px solid #CFC9C4; border-radius: var(--raio-botao); background: #fff; color: var(--texto);
  font: 400 14px/1 var(--fonte-texto); letter-spacing: .01em;
}
[data-estilo="essencial"] .tam-btn:hover:not(:disabled) { border-color: var(--texto); }
[data-estilo="essencial"] .tam-btn[aria-pressed='true'] { background: var(--marca); border-color: var(--marca); color: #fff; }
[data-estilo="essencial"] .tam-btn:disabled { background: #fff; border-color: var(--borda); color: var(--texto-2); }
[data-estilo="essencial"] .stepper { border-radius: var(--raio-botao); }
[data-estilo="essencial"] .btn-add,
[data-estilo="essencial"] .btn-primario,
[data-estilo="essencial"] .bp-btn {
  border-radius: var(--raio-botao); background: var(--marca); color: #fff;
  font: 400 14px/1 var(--fonte-texto); letter-spacing: .06em; text-transform: uppercase;
}
[data-estilo="essencial"] .btn-add { width: 100%; min-height: 52px; }
[data-estilo="essencial"] .bp-btn span { font-weight: 600; }
[data-estilo="essencial"] .btn-add:hover:not(:disabled),
[data-estilo="essencial"] .btn-primario:hover:not(:disabled) { background: #000; }
[data-estilo="essencial"] .det summary { font: 400 14px/1.2 var(--fonte-texto); letter-spacing: .01em; text-transform: none; color: var(--texto); }
[data-estilo="essencial"] .det p { color: var(--texto); }
[data-estilo="essencial"] .det .nota { color: var(--texto-2); }
[data-estilo="essencial"] .sugestoes .secao-tit { font-size: 22px; }

/* ------------------------------------------------- drawer e /como-comprar */
[data-estilo="essencial"] .drawer-titulo,
[data-estilo="essencial"] .vazio-pedido .vazio-t { font-weight: 400; }
[data-estilo="essencial"] .btn-enviar,
[data-estilo="essencial"] .form input,
[data-estilo="essencial"] .btn-linha { border-radius: var(--raio-botao); }
[data-estilo="essencial"] .cartao,
[data-estilo="essencial"] .tabela-tam { border-radius: 0; }

/* ---------------------------------------------------------- telas maiores */
@media (min-width: 640px) {
  [data-estilo="essencial"] .trilho-cards { gap: 16px; }
  [data-estilo="essencial"] .trilho-cards .card { width: calc((100% - 2 * 16px) / 3); }
  [data-estilo="essencial"] .trilho-explore { gap: 16px; }
  [data-estilo="essencial"] .explore-card { width: calc((100% - 32px) / 2.4); }
  [data-estilo="essencial"] .grade { gap: 40px 16px; }
  [data-estilo="essencial"] .card-faixa { font-size: 12px; letter-spacing: .01em; }
  [data-estilo="essencial"] .secao-tit { font-size: 30px; }
  [data-estilo="essencial"] .vantagens-ac li { flex-basis: 50%; }
  [data-estilo="essencial"] .colecao-car { margin: 0 -24px; }
}
/* hero dividido: lado a lado a partir de 721 px (painel 2/5, foto 3/5) */
@media (min-width: 721px) {
  [data-estilo="essencial"] .hero-slide--dividido { grid-template-columns: 2fr 3fr; min-height: clamp(360px, 45vw, 560px); aspect-ratio: auto; }
  [data-estilo="essencial"] .hero-slide--dividido .hero-foto { order: 0; aspect-ratio: auto; }
  [data-estilo="essencial"] .hero-painel { padding: 32px clamp(24px, 5vw, 72px); }
  [data-estilo="essencial"] .hero-painel .hero-tit { font-size: clamp(32px, 4vw, 48px); }
  [data-estilo="essencial"] .hero--dividido .hero-pontos { top: auto; bottom: 8px; left: 40%; }
  [data-estilo="essencial"] .hero--dividido .hero-seta { top: 50%; }
}
@media (min-width: 960px) {
  [data-estilo="essencial"] .menu a { padding: 28px 14px; }
  [data-estilo="essencial"] .menu a:hover { box-shadow: inset 0 -1px var(--texto); }
  [data-estilo="essencial"] .marca { font-size: 20px; white-space: nowrap; }
  [data-estilo="essencial"] .hero-slide:not(.hero-slide--dividido) { aspect-ratio: 16 / 7; }
  [data-estilo="essencial"] .hero-tit { font-size: 48px; }
  /* vantagens: as 4 numa linha, com separador vertical */
  [data-estilo="essencial"] .vantagens-ac { overflow: visible; justify-content: center; padding: 22px max(24px, calc((100% - 1280px) / 2)); }
  [data-estilo="essencial"] .vantagens-ac li { flex: 1 1 0; padding: 4px 16px; }
  [data-estilo="essencial"] .vantagens-ac li + li { border-left: 1px solid var(--borda); }
  [data-estilo="essencial"] .trilho-cards .card { width: calc((100% - 3 * 16px) / 4); }
  [data-estilo="essencial"] .explore-card { width: calc((100% - 32px) / 3.3); }
  [data-estilo="essencial"] .car-seta {
    display: flex; align-items: center; justify-content: center; position: absolute; top: 40%; z-index: 3;
    width: 40px; height: 40px; padding: 0 0 3px; border: 0; border-radius: 50%; cursor: pointer;
    background: rgba(255, 255, 255, .92); box-shadow: 0 1px 6px rgba(20, 22, 27, .12); color: var(--texto);
    font-size: 24px; line-height: 1; opacity: .9; transition: opacity .15s ease;
  }
  [data-estilo="essencial"] .car-seta:hover { opacity: 1; }
  [data-estilo="essencial"] .car-ant { left: max(4px, calc((100% - 1280px) / 2 - 8px)); }
  [data-estilo="essencial"] .car-prox { right: max(4px, calc((100% - 1280px) / 2 - 8px)); }
  [data-estilo="essencial"] .editorial-in { display: grid; grid-template-columns: 3fr 2fr; }
  [data-estilo="essencial"] .editorial-in picture { aspect-ratio: auto; min-height: 420px; }
  [data-estilo="essencial"] .editorial-txt { justify-content: center; padding: 40px clamp(32px, 5vw, 72px); }
  [data-estilo="essencial"] .editorial-tit { font-size: 44px; }
  /* painel: foto pequena à esquerda e o texto à direita */
  [data-estilo="essencial"] .painel {
    display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); grid-auto-rows: auto; column-gap: 56px; row-gap: 14px;
    align-content: center; align-items: center; text-align: left; max-width: 1040px; margin: 0 auto; padding: 56px;
  }
  [data-estilo="essencial"] .painel picture { grid-row: 1 / span 3; width: 100%; margin: 0; }
  [data-estilo="essencial"] .painel > :not(picture) { grid-column: 2; justify-self: start; }
  [data-estilo="essencial"] .painel-tit { font-size: 38px; align-self: end; }
  [data-estilo="essencial"] .painel .btn-contorno { align-self: start; }
  /* coleção: texto à esquerda, carrossel à direita (2 cards) */
  [data-estilo="essencial"] .colecao { grid-template-columns: 2fr 3fr; gap: 48px; align-items: center; }
  [data-estilo="essencial"] .colecao--so-texto { grid-template-columns: minmax(0, 1fr); }
  [data-estilo="essencial"] .colecao-tit { font-size: 32px; }
  [data-estilo="essencial"] .colecao-car { margin: 0; }
  [data-estilo="essencial"] .colecao-car .trilho-cards { padding: 0; }
  [data-estilo="essencial"] .colecao-car .trilho-cards .card { width: calc((100% - 16px) / 2); }
  [data-estilo="essencial"] .colecao-car .car-ant { left: -20px; }
  [data-estilo="essencial"] .colecao-car .car-prox { right: -20px; }
  [data-estilo="essencial"] .grade { gap: 48px 20px; }
  [data-estilo="essencial"] .produto h1 { font-size: 32px; }
  [data-estilo="essencial"] .secao-cab .secao-tit { font-size: 26px; }
}
@media (min-width: 960px) and (max-width: 1199px) {
  [data-estilo="essencial"] .marca { font-size: 16px; letter-spacing: .08em; }
  [data-estilo="essencial"] .menu a { padding-left: 9px; padding-right: 9px; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  [data-estilo="essencial"] .faixa-msg { animation: none; }
  [data-estilo="essencial"] .explore-card img,
  [data-estilo="essencial"] .btn-contorno { transition: none; }
  [data-estilo="essencial"] .explore-card:hover img { transform: none; }
}
