







.boot {
  position: fixed; inset: 0;
  z-index: var(--z-boot);
  display: grid; place-items: center;
  padding: var(--gutter);
  overflow: hidden;
}

.boot__panel { position: absolute; inset: 0; background: var(--ink-900); }

.boot__inner,
.boot__gate,
.boot__negado {
  grid-area: 1 / 1; 
  position: relative;
  display: flex; flex-direction: column; align-items: center;
  text-align: center;
}

.boot__inner { gap: var(--s-5); }

.boot__ring {
  position: absolute; top: 50%; left: 50%;
  width: 240px; height: 240px;
  transform: translate(-50%, -50%) rotate(-90deg);
  pointer-events: none;
}
.boot__ring circle {
  fill: none;
  stroke: var(--amber);
  stroke-width: 1.5;
}
.boot__logo { width: 132px; height: 132px; }

.boot--rapido .boot__logo { width: 88px; height: 88px; }

.boot__meta { display: flex; flex-direction: column; align-items: center; gap: var(--s-2); }
.boot__label {
  font-size: var(--fs-eyebrow); font-weight: 600;
  letter-spacing: var(--tr-eyebrow); text-transform: uppercase; color: var(--muted);
}
.boot__count {
  font-family: var(--font-display);
  font-size: 1.75rem; font-weight: 800;
  letter-spacing: -0.02em; color: var(--amber);
}
.boot__count::after { content: '%'; font-size: 0.6em; margin-left: 2px; }

.boot__gate, .boot__negado {
  gap: var(--s-4);
  max-width: 440px;
}
.boot__gate h2, .boot__negado h2 { font-size: var(--fs-xl); }
.boot__gate p, .boot__negado p { font-size: var(--fs-sm); color: var(--muted); }
.boot__gate-acoes { display: flex; gap: var(--s-3); flex-wrap: wrap; justify-content: center; margin-top: var(--s-3); }
.boot__gate-legal { font-size: var(--fs-xs); color: var(--faint); margin-top: var(--s-3); }









.header__inner--centro {
  display: grid;
  


  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: var(--s-4);
}
.header__inner--centro .header__nav { justify-self: start; }
.header__inner--centro .header__actions { justify-self: end; }





.header__esquerda {
  display: flex;
  align-items: center;
  gap: var(--s-4);
}




.header__esquerda > .header__burger { flex: none; }
.header__inner--centro .header__esquerda { grid-column: 1; justify-self: start; }








.header__inner--centro .header__brand { grid-column: 2; }
.header__inner--centro .header__actions { grid-column: 3; }


.header__brand--moeda { display: grid; place-items: center; }
.header__brand--moeda img {
  height: clamp(34px, 4vw, 44px);
  width: auto;
}








.header__selo { display: grid; place-items: center; flex: none; }
.header__selo img {
  height: clamp(30px, 3.4vw, 38px);
  width: auto;
  


  background-color: transparent;
}




.header__brand--wordmark { display: grid; place-items: center; }
.header__brand--wordmark img {
  height: clamp(19px, 2.1vw, 26px);
  width: auto;
  max-width: min(200px, 34vw);
  object-fit: contain;
  background-color: transparent;
  









  border-radius: 0;
}




@media (max-width: 640px) {
  .header__brand--wordmark { display: none; }
}







.busca--icone { position: relative; display: flex; align-items: center; }
.busca--icone .busca__campo {
  width: 0; padding-inline: 0; border: 0; opacity: 0;
  transition: width var(--d-micro) var(--ease), opacity var(--d-micro) var(--ease);
}


.busca--icone.is-aberta .busca__campo,
.busca--icone .busca__campo:focus {
  width: clamp(180px, 26vw, 320px);
  padding-inline: var(--s-3);
  opacity: 1;
  border: 1px solid var(--line);
}
.busca--icone .busca__painel { right: 0; left: auto; min-width: clamp(260px, 32vw, 380px); }































.hero--claro {
  background: var(--hero-sangria, #f2f0f1);
  border-bottom: 1px solid rgba(5, 5, 5, 0.08);
  transition: background-color var(--d-macro) var(--ease-inout);
}
.hero--claro .hero__veu { background: transparent; }



.hero--claro .hero__title { color: var(--wmc-ink); }
.hero--claro .hero__title em { color: var(--amber-lo); }







.hero--claro .hero__conteudo { justify-items: center; }
.hero--claro .hero__content {
  align-items: center;
  text-align: center;
  max-width: min(72%, 780px);
}



.hero--claro .hero__title,
.hero--claro .hero__lead {
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.85), 0 0 18px rgba(255, 255, 255, 0.7);
}





























.section--esteira {
  padding-block: var(--s-5);
  


  min-height: 15svh;
  display: grid; align-items: center;
}

.esteira {
  display: flex;
  gap: var(--s-8);
  overflow: hidden;
  

  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
          mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.esteira__pista {
  display: flex; align-items: center;
  gap: var(--s-8);
  flex: none;
  margin: 0; padding: 0; list-style: none;
  









  min-width: 100%;
  justify-content: space-around;
  

  animation: esteira-anda 30s linear infinite;
}



@keyframes esteira-anda {
  to { transform: translateX(calc(-100% - var(--s-8))); }
}









.esteira__pista img {
  






  --h-selo: clamp(34px, 3.5vw, 56px);
  height: var(--h-selo);
  width: auto;
  




  background-color: transparent;
  

  object-fit: contain;
  opacity: 0.86;
  transition: opacity var(--d-micro) var(--ease);
}
.esteira__pista img:hover { opacity: 1; }































.esteira__pista img[src$="rep-a-outra-chopp.png"]   { height: calc(var(--h-selo) * 0.95); } 
.esteira__pista img[src$="rep-ecobier-lager.png"]   { height: calc(var(--h-selo) * 0.92); } 
.esteira__pista img[src$="rep-a-outra.png"]         { height: calc(var(--h-selo) * 0.87); } 
.esteira__pista img[src$="rep-gunven.png"]          { height: calc(var(--h-selo) * 0.76); } 
.esteira__pista img[src$="rep-ecobier-premium.png"] { height: calc(var(--h-selo) * 0.76); } 
.esteira__pista img[src$="rep-acquissima.png"]      { height: calc(var(--h-selo) * 0.70); } 
.esteira__pista img[src$="rep-ecobier.png"]         { height: calc(var(--h-selo) * 0.69); } 
.esteira__pista img[src$="rep-haller.png"]          { height: calc(var(--h-selo) * 0.52); } 


















html.tema-claro .esteira__pista img[src$="rep-gunven.png"] {
  content: url('../assets/img/marcas/rep-gunven-preta.png');
}












@media (prefers-reduced-motion: reduce) {
  .esteira__pista {
    animation-duration: 48s !important;
    animation-iteration-count: infinite !important;
  }
}




























.pagina-home .header.is-fora { transform: none; }

.pagina-home .header {
  background: var(--ink-900);
  border-bottom-color: var(--line);
}

















.section--compacta { --section-y: clamp(40px, 4.2vw, 72px); }
.section--compacta .section-head { margin-bottom: var(--s-5); }
.section--compacta .section-head h2 { font-size: var(--fs-xl); }













.hero {
  position: relative;
  




  width: 100%;
  










  height: 66.7svh;
  min-height: 260px;   
  

  






  display: flex; align-items: flex-start;
  padding-top: calc(var(--h-total) + var(--s-7));
  padding-bottom: var(--s-4);
  overflow: hidden;
}


.hero__fundo {
  position: absolute; inset: 0;
  z-index: 0;
  overflow: hidden;
  
















  transform: translateY(calc(10% + var(--cortina-y, 0px)));
}



























.pagina-home .header,
.pagina-home .header.is-stuck {
  background: var(--ink-900);
  border-bottom-color: var(--line);
}








.saia { display: none; }

.saia__svg { display: block; width: 100%; }
.saia__path { fill: var(--ink-900); }































.pagina-home .header__actions > :is(.cart-btn, :has(.cart-btn)) { order: 1; }
.pagina-home .header__actions > :is(.header__busca, :has(.header__busca)) {
  order: 2;
  flex: none;
}
























.pagina-home .header__busca.busca--icone {
  min-width: 0;
  max-width: none;
}














.pagina-home .header__busca.busca--icone:is(.is-aberta, :focus-within) {
  min-width: 200px;
  max-width: 460px;
}


















.header__burger { display: inline-grid; }











































.nav-recolhida .header,
.nav-recolhida .saia {
  transform: translateY(calc(var(--nav-sobe, 200px) * -1));
}














.header {
  transition:
    transform var(--d-meso) var(--ease-inout),
    background-color var(--d-meso) var(--ease),
    border-color var(--d-meso) var(--ease);
}
.saia { transition: transform var(--d-meso) var(--ease-inout); }












.nav-puxador {
  --pux-disco: 72px;
  --pux-moeda: 46px;

  position: fixed;
  top: var(--s-3);
  left: 50%;
  z-index: var(--z-header);
  width: var(--pux-disco);
  height: var(--pux-disco);
  display: grid;
  place-items: center;
  padding: 0;
  border-radius: 50%;
  


  background: var(--ink-900);
  border: 1px solid var(--line);
  cursor: pointer;

  




  transform: translate(-50%, -12px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity var(--d-meso) var(--ease-inout),
    transform var(--d-meso) var(--ease-inout),
    border-color var(--d-micro) var(--ease),
    visibility 0s linear var(--d-meso);
}

.nav-puxador img {
  width: var(--pux-moeda);
  height: var(--pux-moeda);
  background: transparent;
  transition: transform var(--d-micro) var(--ease);
}


.nav-puxador:hover,
.nav-puxador:focus-visible { border-color: var(--amber-40); }
.nav-puxador:hover img { transform: scale(1.06); }

@media (prefers-reduced-motion: reduce) {
  .nav-puxador:hover img { transform: none; }
}


.nav-recolhida .nav-puxador {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
  transition-delay: 0s;
}


@media (max-width: 600px) {
  .nav-puxador { --pux-disco: 60px; --pux-moeda: 38px; }
}



















@media (prefers-reduced-motion: reduce) {
  .header {
    transition-duration: var(--d-meso), var(--d-meso), var(--d-meso) !important;
  }
  .saia { transition-duration: var(--d-meso) !important; }
  .nav-puxador {
    transition-duration: var(--d-meso), var(--d-meso), var(--d-micro), 0s !important;
  }
}




html:not(.js) .pagina-home .header {
  background: var(--ink-900);
  border-bottom-color: var(--line);
}



















.hero__img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: contain;
  object-position: center;
  transform-origin: center;
  





  background-color: transparent;
}







.hero__img.is-ativa { will-change: transform; }

.hero__fundo [data-camada] { pointer-events: none; }




.hero__setas {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-inline: clamp(var(--s-3), 2vw, var(--s-6));
  pointer-events: none;   
}













.hero__seta {
  pointer-events: auto;
  display: grid; place-items: center;
  width: 44px; height: 44px;   
  border: 1px solid color-mix(in srgb, var(--wmc-ink) 20%, transparent);
  border-radius: 50%;
  background: transparent;
  color: color-mix(in srgb, var(--wmc-ink) 55%, transparent);
  opacity: 0.4;
  transition: border-color var(--d-micro) var(--ease), color var(--d-micro) var(--ease),
              background-color var(--d-micro) var(--ease), opacity var(--d-micro) var(--ease);
}
.hero__seta:hover,
.hero__seta:focus-visible {
  opacity: 1;
  border-color: var(--primary);
  color: var(--primary);
  background: color-mix(in srgb, var(--wmc-ink) 5%, transparent);
}
.hero__seta svg { width: 18px; height: 18px; }
.hero__seta-ico--volta { transform: rotate(180deg); }



.hero__fundo:not(:has([data-arte] ~ [data-arte])) ~ .hero__setas { display: none; }









.hero__img[data-arte] {
  opacity: 0;
  















  transition: opacity var(--d-meso) var(--ease-inout);
}
.hero__img[data-arte].is-ativa { opacity: 1; }



html.no-js .hero__img[data-arte] { opacity: 1; }




@media (prefers-reduced-motion: reduce) {
  .hero__img[data-arte] { transition: none; }
}



.hero__veu {
  position: absolute; inset: 0;
  background: rgba(5, 5, 5, 0.38);
}





.hero__conteudo {
  position: relative; z-index: 1; width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}

.hero__content {
  display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-5);
  





  max-width: min(40%, 560px);
}





.hero__title {
  font-size: clamp(2.2rem, 4vw, 3.9rem);
  font-weight: 900; letter-spacing: var(--tr-hero);
}
.hero__title > span,
.hero__title > em { display: block; }

.hero__title em { font-style: normal; color: var(--amber); }

.hero__lead { font-size: var(--fs-md); color: var(--text); max-width: 44ch; }

.hero__acoes { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-2); }

.hero__stats {
  display: flex; flex-wrap: wrap; gap: var(--s-6);
  margin-top: var(--s-5); padding-top: var(--s-5);
  border-top: 1px solid rgba(251, 239, 221, 0.16);
}
.hero__stat { display: flex; flex-direction: column; gap: 2px; }
.hero__stat b {
  font-family: var(--font-display);
  font-size: var(--fs-lg); font-weight: 800; color: var(--cream);
  letter-spacing: -0.02em;
}
.hero__stat span {
  font-size: var(--fs-xs); color: var(--muted);
  letter-spacing: 0.06em; text-transform: uppercase;
}








.hero__vitrine {
  display: grid;
  gap: var(--s-4);
  justify-items: end;
  min-height: 232px;  
}

.hero-card {
  display: grid;
  grid-template-columns: 72px 1fr;
  grid-template-areas: 'foto txt' 'foto preco';
  align-items: center;
  column-gap: var(--s-4);
  row-gap: var(--s-2);
  width: min(100%, 380px);
  padding: var(--s-4);
  background: var(--ink-800);
  border: 1px solid var(--gold-24);
  border-radius: var(--r-md);
  transition: border-color var(--d-micro) var(--ease);
}
.hero-card:hover { border-color: var(--amber-40); }

.hero-card:nth-child(2) { transform: translateX(calc(var(--s-7) * -1)); }

.hero-card__foto {
  grid-area: foto;
  width: 72px; aspect-ratio: 4 / 5;
  border-radius: var(--r-sm);
  overflow: hidden;
  background: var(--ink-850);
}
.hero-card__foto img { width: 100%; height: 100%; object-fit: cover; }

.hero-card__txt { grid-area: txt; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.hero-card__marca {
  font-size: 0.625rem; font-weight: 700;
  letter-spacing: var(--tr-label); text-transform: uppercase; color: var(--amber);
}
.hero-card__nome {
  font-family: var(--font-display);
  font-size: var(--fs-sm); font-weight: 700; line-height: var(--lh-snug);
  color: var(--cream);
  transition: color var(--d-micro) var(--ease);
}
.hero-card__nome:hover { color: var(--amber); }
.hero-card__meta { font-size: var(--fs-xs); color: var(--faint); }

.hero-card__preco {
  grid-area: preco;
  display: inline-flex; align-items: center; gap: var(--s-2);
  justify-self: start;
  min-height: 32px;
  font-size: var(--fs-xs); font-weight: 600;
  letter-spacing: 0.06em; color: var(--muted);
  transition: color var(--d-micro) var(--ease);
}
.hero-card__preco:hover { color: var(--amber); }
.hero-card__preco svg { width: 13px; height: 13px; flex: none; color: var(--gold); }
.hero-card__preco:hover svg { color: var(--amber); }





.hero-card__preco--liberado { color: var(--amber); }
.hero-card__preco--liberado svg { color: var(--amber); }
.hero-card__preco--liberado:hover { color: var(--cream); }
.hero-card__preco--liberado:hover svg { color: var(--cream); }





.valores {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-block: 1px solid var(--line);
}
.valor {
  display: flex; flex-direction: column; gap: var(--s-3);
  padding: var(--s-7) var(--s-5);
  border-right: 1px solid var(--line);
}
.valor:last-child { border-right: 0; }
.valor svg { width: 24px; height: 24px; color: var(--amber); }
.valor h3 { font-size: var(--fs-md); font-weight: 700; }
.valor p { font-size: var(--fs-sm); color: var(--muted); }



.valores--garantias { min-height: 132px; }
.valores--garantias .valor { padding: var(--s-5); gap: var(--s-2); }
.valores--garantias .valor h3 { font-size: var(--fs-base); }
.valores--garantias .valor svg { width: 20px; height: 20px; }





.grid-categorias {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--s-3);
}









@media (min-width: 901px) {
  .grid-categorias.is-recolhida > [data-categoria-extra] { display: none; }
}
.categorias-mais {
  display: flex;
  justify-content: center;
  margin-top: var(--s-5);
}
.categorias-mais .btn__icon { transition: transform var(--d-micro) var(--ease); }
.categorias-mais [aria-expanded="true"] .btn__icon { transform: rotate(180deg); }
@media (max-width: 900px) {
  .categorias-mais { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .categorias-mais .btn__icon { transition: none; }
}





.card-categoria::before { background: rgba(5, 5, 5, 0.66); }



.card-categoria__resumo { color: var(--on-media-soft); }





.grid-produtos {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(252px, 1fr));
  gap: var(--s-4);
}


























.regua {
  position: relative;
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: var(--r-card);
  padding: var(--s-5);
}
@media (max-width: 900px) {
  .regua { padding: var(--s-4); }
  







  .regua__paginas { display: none; }
}




.regua__paginas {
  display: flex; justify-content: center; gap: var(--s-2);
  

  height: 7px;
  margin-top: var(--s-4);
}
.regua__paginas:empty { display: none; }
.regua__ponto {
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--line-strong);
  transition: background-color var(--d-micro) var(--ease);
}
.regua__ponto.is-atual { background: var(--amber); }

.regua__seta {
  position: absolute;
  



  top: var(--s-5);
  bottom: calc(var(--s-5) + 7px + var(--s-4));
  margin-block: auto;
  z-index: 3;
  display: grid; place-items: center;
  width: 48px; height: 48px;
  background: var(--surface-card);
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  color: var(--cream);
  transition: border-color var(--d-micro) var(--ease), color var(--d-micro) var(--ease),
              background-color var(--d-micro) var(--ease), opacity var(--d-micro) var(--ease);
}



.regua__seta--volta { left: calc(var(--s-5) * -1); }
.regua__seta--avanca { right: calc(var(--s-5) * -1); }
.regua__seta:hover { border-color: var(--amber); color: var(--amber); background: var(--surface-raised); }


.regua__seta[disabled] { opacity: 0.3; pointer-events: none; }
.regua__seta svg { width: 18px; height: 18px; }
.regua__seta-ico--volta { transform: rotate(180deg); }

@media (max-width: 900px) { .regua__seta { display: none; } }

.regua__pista {
  display: flex;
  gap: var(--s-4);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  
  padding-block: var(--s-1);
  





}
.regua__pista::-webkit-scrollbar { display: none; }















.regua__pista { --por-vista: 6; scroll-snap-type: x mandatory; }
.regua__pista > * {
  flex: 0 0 calc((100% - (var(--por-vista) - 1) * var(--s-4)) / var(--por-vista));
  scroll-snap-align: start;
}















@media (max-width: 1619px) { .regua__pista { --por-vista: 5; } }
@media (max-width: 1349px) { .regua__pista { --por-vista: 4; } }
@media (max-width: 1079px) { .regua__pista { --por-vista: 3; } }














@media (min-width: 901px) {
  

  .regua__pista { cursor: grab; }
  .regua__pista.is-arrastando {
    cursor: grabbing;
    
    scroll-behavior: auto;
  }
  .regua__pista.is-arrastando img { pointer-events: none; }
}
.regua__pista .preco-lock { white-space: nowrap; }

.regua__pista.is-vazia,
.is-vazia .regua__pista { display: block; }








.section-head__row--centro {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.section-head__topo {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: var(--s-3);
}
.secao-conta {
  display: inline-flex; align-items: center;
  padding: 3px 10px;
  border: 1px solid var(--gold-24);
  border-radius: var(--r-pill);
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: var(--tr-label); text-transform: uppercase;
  color: var(--gold);
}
.secao-conta[hidden] { display: none; }





#selecao .card-produto__flag { display: none; }




.card-produto__minimo {
  margin-top: var(--s-2);
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--amber);
}
.card-produto__minimo:empty { display: none; }






.card-produto__link { padding-block: 14px; }









@keyframes esqueleto-pulsa {
  0%, 100% { opacity: 1; }
  50%      { opacity: 0.45; }
}

.skeleton-categoria,
.skeleton-card {
  background: var(--ink-800);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  overflow: hidden;
}
.skeleton-categoria { min-height: 260px; animation: esqueleto-pulsa 1.6s var(--ease-inout) infinite; }

.skeleton-card {
  display: flex; flex-direction: column;
  animation: esqueleto-pulsa 1.6s var(--ease-inout) infinite;
}
.skeleton-card__media { display: block; aspect-ratio: 4 / 5; background: var(--ink-700); }
.skeleton-card__linha {
  display: block; height: 12px;
  margin: var(--s-4) var(--s-5) 0;
  border-radius: var(--r-pill);
  background: var(--ink-700);
}
.skeleton-card__linha--curta { width: 45%; margin-bottom: var(--s-5); }








.erro-dados {
  display: flex; flex-direction: column; align-items: center;
  gap: var(--s-4);
  max-width: 56ch;
  margin-inline: auto;
  padding: calc(var(--h-total) + var(--s-9)) var(--gutter) var(--s-9);
  text-align: center;
}
.erro-dados__ico {
  display: grid; place-items: center;
  width: 56px; height: 56px;
  border: 1px solid var(--amber-40);
  border-radius: 50%;
  color: var(--amber);
}
.erro-dados__ico svg { width: 26px; height: 26px; }
.erro-dados h1 { font-size: var(--fs-xl); }
.erro-dados p { color: var(--muted); }
.erro-dados__acoes { display: flex; flex-wrap: wrap; gap: var(--s-3); justify-content: center; margin-top: var(--s-2); }
.erro-dados__detalhe { font-size: var(--fs-xs); color: var(--faint); margin-top: var(--s-4); }





.sobre {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  align-items: center;
  gap: clamp(var(--s-6), 6vw, var(--s-10));
}
.sobre__midia {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: var(--r-md);
  border: 1px solid var(--line);
}
.sobre__midia img {
  width: 100%; height: 120%;
  object-fit: cover;
  will-change: transform;
}
.sobre__texto { display: flex; flex-direction: column; gap: var(--s-5); }
.sobre__lista { display: grid; gap: var(--s-4); margin-top: var(--s-2); }
.sobre__item {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: var(--s-4);
  align-items: start;
  padding-top: var(--s-4);
  border-top: 1px solid var(--line);
}
.sobre__item-num {
  font-family: var(--font-display);
  font-size: var(--fs-sm); font-weight: 800; color: var(--amber);
  letter-spacing: 0.06em;
}
.sobre__item h3 { font-size: var(--fs-md); font-weight: 700; margin-bottom: 3px; }
.sobre__item p { font-size: var(--fs-sm); color: var(--muted); }






.numeros { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: var(--s-5); }
.numero { display: flex; flex-direction: column; gap: var(--s-2); }
.numero b {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 5.5vw, 4.5rem);
  font-weight: 900; letter-spacing: -0.04em; color: var(--cream);
  line-height: 1;
}
.numero span {
  font-size: var(--fs-xs); letter-spacing: var(--tr-label);
  text-transform: uppercase; color: var(--muted);
}





.local {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: var(--s-5);
  align-items: stretch;
}

.local__painel, .local__mapa { min-width: 0; }

.local__painel {
  display: flex; flex-direction: column;
  gap: var(--s-6);
  padding: var(--s-6);
  background: var(--ink-800);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
}

.local__lista { display: grid; gap: var(--s-5); }
.local__item { display: grid; grid-template-columns: 44px 1fr; gap: var(--s-4); align-items: start; }
.local__ico {
  display: grid; place-items: center;
  width: 44px; height: 44px;
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  color: var(--amber);
}
.local__ico svg { width: 20px; height: 20px; }
.local__rot {
  display: block;
  font-size: var(--fs-xs); font-weight: 600;
  letter-spacing: var(--tr-label); text-transform: uppercase; color: var(--faint);
  margin-bottom: 3px;
}
.local__val {
  display: block;
  font-size: var(--fs-base); color: var(--cream); font-weight: 500;
}
a.local__val { transition: color var(--d-micro) var(--ease); }
a.local__val:hover { color: var(--amber); }

.local__acoes { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: auto; }
.local__acoes .btn { flex: 1; min-width: 160px; }

.local__mapa {
  position: relative;
  min-height: 340px;
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  overflow: hidden;
  background: var(--ink-850);
}
.local__mapa iframe {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  border: 0;
  

  filter: invert(0.9) hue-rotate(180deg) contrast(0.9) saturate(0.85);
}


@media (prefers-reduced-motion: reduce) {
  .local__mapa iframe { filter: none; }
}
.local__mapa-ver {
  position: absolute; right: var(--s-3); bottom: var(--s-3);
  z-index: 2;
  display: inline-flex; align-items: center; gap: var(--s-2);
  min-height: 44px;
  padding: 9px var(--s-4);
  background: var(--ink-900);
  border: 1px solid var(--line-strong);
  border-radius: var(--r-md);
  font-size: var(--fs-xs); font-weight: 600;
  letter-spacing: 0.04em; color: var(--cream);
  transition: border-color var(--d-micro) var(--ease), color var(--d-micro) var(--ease);
}
.local__mapa-ver:hover { border-color: var(--amber); color: var(--amber); }
.local__mapa-ver svg { width: 14px; height: 14px; }




.local__mapa--espera { display: grid; place-items: center; padding: var(--s-6); }
.local__mapa-convite {
  display: flex; flex-direction: column; align-items: center; gap: var(--s-3);
  text-align: center;
  max-width: 40ch;
}
.local__mapa-ico {
  display: grid; place-items: center;
  width: 44px; height: 44px;
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  color: var(--gold);
}
.local__mapa-ico svg { width: 20px; height: 20px; }
.local__mapa-end { font-size: var(--fs-base); font-weight: 600; color: var(--cream); }
.local__mapa-nota { font-size: var(--fs-xs); color: var(--faint); }
.local__mapa-convite .btn { min-height: 44px; margin-top: var(--s-2); }

@media (max-width: 900px) {
  .local { grid-template-columns: 1fr; }
  

  .local__mapa { min-height: 0; height: 320px; }
}
@media (max-width: 600px) {
  .local__painel { padding: var(--s-5); }
  .local__acoes .btn { min-width: 100%; }
}





.chamada {
  position: relative;
  display: flex; flex-direction: column; align-items: center;
  gap: var(--s-5);
  padding: clamp(var(--s-8), 8vw, var(--s-10)) var(--s-5);
  text-align: center;
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  overflow: hidden;
}
.chamada__ring { inset: -30% 0 auto; width: 720px; margin-inline: auto; left: 50%; transform: translateX(-50%); }
.chamada > * { position: relative; z-index: 1; }
.chamada h2 { font-size: var(--fs-2xl); max-width: 18ch; }
.chamada p { color: var(--muted); max-width: 52ch; }
.chamada__acoes { display: flex; flex-wrap: wrap; gap: var(--s-3); justify-content: center; }





.chamada--split {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(var(--s-6), 4vw, var(--s-8));
  text-align: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  overflow: visible;
}


.chamada--split .chamada__ring { display: none; }
.chamada__texto {
  display: flex; flex-direction: column; align-items: center;
  gap: var(--s-5); width: 100%; max-width: 620px; min-width: 0;
}
.chamada--split .chamada__texto h2 { max-width: 20ch; }
.chamada--split .chamada__acoes { justify-content: center; }





.comercial {
  position: relative; z-index: 1;
  display: flex; flex-direction: column; align-items: center;
  gap: var(--s-5);
}



.comercial__aro {
  position: relative;
  width: clamp(230px, 30vw, 380px);
  aspect-ratio: 1;
  flex: none;
}


.comercial__palco {
  position: absolute; inset: 0;
  border-radius: 50%;
  overflow: hidden;
  background: var(--ink-850);
  border: 2px solid var(--amber);
  isolation: isolate;
}

.comercial__slide {
  position: absolute; inset: 0;
  margin: 0;
  opacity: 0;
  transform: scale(1.06);
  transition: opacity var(--d-macro) var(--ease), transform 6s linear;
  will-change: opacity;
}
.comercial__slide.is-ativa {
  opacity: 1;
  transform: scale(1);
  z-index: 2;
}

.comercial__slide[data-quebrada] { display: none; }

.comercial__slide img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center 20%;
}


.comercial__badge {
  position: absolute; right: 8%; bottom: 8%;
  z-index: 3;
  display: grid; place-items: center;
  width: 46px; height: 46px;
  background: var(--amber); color: var(--accent-foreground);
  border: 3px solid var(--ink-850);
  border-radius: 50%;
}
.comercial__badge svg { width: 22px; height: 22px; }


.comercial__legenda {
  display: flex; flex-direction: column; gap: 3px;
  text-align: center; min-height: 3.2em;
}
.comercial__legenda.is-in { animation: legendaEntra var(--d-meso) var(--ease); }
.comercial__nome {
  font-family: var(--font-display);
  font-size: var(--fs-lg); font-weight: 800; color: var(--cream);
  letter-spacing: -0.015em;
}
.comercial__cargo {
  font-size: var(--fs-xs); font-weight: 600;
  letter-spacing: var(--tr-label); text-transform: uppercase; color: var(--amber);
}

@keyframes legendaEntra {
  from { opacity: 0; transform: translate3d(0, 8px, 0); }
  to   { opacity: 1; transform: none; }
}



.comercial__pontos { display: flex; justify-content: center; gap: var(--s-1); }
.comercial__ponto {
  display: grid; place-items: center;
  width: 44px; height: 44px;
}
.comercial__ponto::before {
  content: '';
  display: block;
  width: 22px; height: 4px;
  border-radius: var(--r-pill);
  background: var(--line-strong);
  transition: background-color var(--d-micro) var(--ease), width var(--d-micro) var(--ease);
}
.comercial__ponto:hover::before { background: var(--muted); }
.comercial__ponto.is-ativo::before { width: 26px; background: var(--amber); }

@media (prefers-reduced-motion: reduce) {
  .comercial__slide { transition: opacity var(--d-micro) linear; transform: none; }
  .comercial__slide.is-ativa { transform: none; }
  .comercial__legenda.is-in { animation: none; }
}





.pagina-topo {
  padding-top: calc(var(--h-total) + var(--s-8));
  padding-bottom: var(--s-7);
  border-bottom: 1px solid var(--line);
}
.pagina-topo__inner { display: flex; flex-direction: column; gap: var(--s-4); }
.pagina-topo h1 { font-size: var(--fs-2xl); }
.pagina-topo p { color: var(--muted); max-width: var(--measure); }

.migalha { display: flex; align-items: center; gap: var(--s-2); font-size: var(--fs-xs); color: var(--faint); }





.migalha:empty { min-height: 19px; }
.migalha a { transition: color var(--d-micro) var(--ease); }
.migalha a:hover { color: var(--amber); }
.migalha svg { width: 12px; height: 12px; }







.transicao {
  position: fixed;
  inset: 0;
  z-index: var(--z-boot);
  background: var(--ink-900);
  pointer-events: all;
}







.marcas-dobra {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--d-meso) var(--ease-inout);
}
.marcas-dobra.is-aberta { grid-template-rows: 1fr; }
.marcas-dobra__conteudo { overflow: hidden; min-height: 0; }


.marcas-acoes {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--s-3);
  margin-top: var(--s-2);
}





.marcas-abrir {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--s-2);
  min-height: 44px;   
  padding: 13px 24px;
  background: var(--ink-800);
  border: 1px solid var(--line-strong);
  border-radius: var(--r-pill);
  color: var(--cream);
  font-size: var(--fs-xs);
  font-weight: 800;
  letter-spacing: var(--tr-label);
  text-transform: uppercase;
  line-height: 1;
  transition:
    background var(--d-micro) var(--ease),
    border-color var(--d-micro) var(--ease),
    color var(--d-micro) var(--ease);
}
.marcas-abrir:hover {
  background: var(--amber);
  border-color: var(--amber);
  color: var(--accent-foreground);
}



.marcas-abrir::before {
  content: '';
  position: absolute;
  inset: -1px;
  border: 1px solid var(--amber);
  border-radius: inherit;
  opacity: 0;
  pointer-events: none;
  animation: marcas-abrir-anel 3.2s var(--ease) infinite;
}
.marcas-abrir[aria-expanded="true"]::before { animation: none; }
@keyframes marcas-abrir-anel {
  0%        { opacity: 0; transform: scale(1); }
  12%       { opacity: 0.9; }
  48%, 100% { opacity: 0; transform: scale(1.35, 1.9); }
}
@media (prefers-reduced-motion: reduce) {
  .marcas-abrir::before { animation: none; }
}


.marcas-abrir__rotulos {
  display: inline-grid;
  justify-items: center;
  overflow: hidden;
}
.marcas-abrir__rotulo {
  grid-area: 1 / 1;
  transition:
    transform var(--d-meso) var(--ease-inout),
    opacity var(--d-meso) var(--ease-inout);
}
.marcas-abrir__rotulo--fechar { transform: translateY(120%); opacity: 0; }
.marcas-abrir[aria-expanded="true"] .marcas-abrir__rotulo { transform: translateY(-120%); opacity: 0; }
.marcas-abrir[aria-expanded="true"] .marcas-abrir__rotulo--fechar { transform: translateY(0); opacity: 1; }

.marcas-abrir__seta {
  width: 16px; height: 16px;
  transition: transform var(--d-meso) var(--ease-inout);
}
.marcas-abrir[aria-expanded="true"] .marcas-abrir__seta { transform: rotate(180deg); }












.blocos-marcas {
  display: grid;
  gap: 0;
  

  --sangria: max(var(--gutter), calc((100% - var(--container-wide)) / 2 + var(--gutter)));
}














.blocos-marcas__par {
  display: grid;
  gap: 0;
  align-items: start;
}

@media (min-width: 901px) {
  .blocos-marcas__par { grid-template-columns: 1fr 1fr; }

  

  .blocos-marcas__par--solo { grid-template-columns: 1fr; }
}








.bloco-marca {
  --acento: var(--amber);
  overflow: hidden;
  transition: box-shadow var(--d-micro) var(--ease);
}
.bloco-marca:hover {
  box-shadow: inset 0 3px 0 var(--acento), inset 0 -3px 0 var(--acento);
}




.bloco-marca.is-expandido {
  box-shadow: inset 0 3px 0 var(--acento), inset 0 -3px 0 var(--acento);
}

.bloco-marca__topo {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  text-align: left;
  cursor: pointer;
}








.bloco-marca__banner {
  width: 100%;
  height: auto;
  max-height: 46vh;
  object-fit: cover;
  object-position: center top;
}




.bloco-marca__auto {
  display: grid;
  grid-template-columns: 148px 1fr;
  align-items: center;
  gap: clamp(var(--s-5), 4vw, var(--s-8));
  padding: var(--s-5) var(--sangria, var(--s-6));
  min-height: 168px;
  background: var(--ink-850);
}


.bloco-marca__foto {
  width: 148px;
  aspect-ratio: 1 / 1;
  border-radius: var(--r-md);
  overflow: hidden;
  background: #fff;
}
.bloco-marca__foto img {
  width: 100%; height: 100%;
  object-fit: contain;
  background-color: transparent;
  transition: transform var(--d-meso) var(--ease);
}
.bloco-marca__topo:hover .bloco-marca__foto img { transform: scale(1.05); }

.bloco-marca__texto { display: flex; flex-direction: column; gap: var(--s-2); min-width: 0; }
.bloco-marca__nome {
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 4.5vw, 3.4rem);
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--acento);
}
.bloco-marca__itens {
  font-size: var(--fs-xs);
  font-weight: 600;
  letter-spacing: var(--tr-eyebrow);
  text-transform: uppercase;
  color: var(--muted);
}


.bloco-marca__abrir {
  position: absolute;
  right: clamp(var(--s-4), 3vw, var(--s-6));
  top: 50%;
  transform: translateY(-50%);
  width: 44px; height: 44px;
  display: grid; place-items: center;
  background: rgba(5, 5, 5, 0.6);
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  color: var(--cream);
  

  transition: border-color var(--d-micro) var(--ease),
              color var(--d-micro) var(--ease);
}





.bloco-marca__topo:hover .bloco-marca__abrir {
  border-color: var(--amber);
  color: var(--amber);
}
.bloco-marca__abrir svg {
  width: 18px; height: 18px;
  transition: transform var(--d-meso) var(--ease-inout);
}


.bloco-marca.is-expandido .bloco-marca__abrir svg { transform: rotate(180deg); }


.bloco-marca__painel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--d-meso) var(--ease-inout);
}
.bloco-marca.is-aberto .bloco-marca__painel { grid-template-rows: 1fr; }






@media (prefers-reduced-motion: no-preference) {
  .bloco-marca.is-aberto .grid-produtos > * {
    animation: bloco-item-entra var(--d-meso) var(--ease) backwards;
  }
  .bloco-marca.is-aberto .grid-produtos > :nth-child(2) { animation-delay: 60ms; }
  .bloco-marca.is-aberto .grid-produtos > :nth-child(3) { animation-delay: 120ms; }
  .bloco-marca.is-aberto .grid-produtos > :nth-child(4) { animation-delay: 180ms; }
  .bloco-marca.is-aberto .grid-produtos > :nth-child(n+5) { animation-delay: 240ms; }
}
@keyframes bloco-item-entra {
  from { opacity: 0; transform: translateY(16px); }
}







.bloco-marca__conteudo { overflow: hidden; min-height: 0; }
.bloco-marca__interno {
  position: relative;
  isolation: isolate;
  display: flex; flex-direction: column; gap: var(--s-5);
  padding: var(--s-6) var(--sangria, var(--s-5)) var(--s-7);
  border-top: 1px solid var(--line);
  background: var(--ink-850); 
}








@media (min-width: 901px) {
  .bloco-marca__interno .grid-produtos {
    grid-template-columns: repeat(auto-fit, minmax(240px, 300px));
    justify-content: center;
  }
}



.bloco-marca__fundo {
  position: absolute; inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}
.bloco-marca__fundo img {
  width: 100%; height: 100%;
  object-fit: cover;
  filter: blur(16px) saturate(1.1);
  transform: scale(1.15); 
}
.bloco-marca__fundo::after {
  content: '';
  position: absolute; inset: 0;
  background: rgba(5, 5, 5, 0.66);
}



.bloco-marca__fundo.is-proprio img { filter: none; transform: none; }
.bloco-marca__fundo.is-proprio::after { background: rgba(5, 5, 5, 0.42); }

@media (max-width: 620px) {
  .bloco-marca__auto {
    grid-template-columns: 96px 1fr;
    min-height: 128px;
    padding: var(--s-4);
  }
  .bloco-marca__foto { width: 96px; }
  


  .bloco-marca__abrir { right: var(--s-3); }
  .bloco-marca__abrir svg { width: 16px; height: 16px; }
}










.btn-add__ok { display: none; }
.btn-add.is-ok .btn-add__mais { display: none; }
.btn-add.is-ok .btn-add__ok { display: block; }
.btn-add.is-ok {
  --btn-bg: var(--amber-12);
  --btn-bd: var(--amber);
  --btn-fg: var(--amber);
}












.pagina-topo--compacta {
  padding-top: calc(var(--h-total) + var(--s-6));
  padding-bottom: var(--s-5);
}
.pagina-topo--compacta .pagina-topo__inner { gap: var(--s-3); }
.pagina-topo--compacta h1 { font-size: var(--fs-xl); }
.pagina-topo--compacta p { font-size: var(--fs-sm); max-width: 76ch; }






.section--catalogo { padding-block: var(--s-5); }

























.grid-produtos.grid-produtos--denso {
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--s-3);
}






















:is(.grid-produtos--denso, .regua__pista) .card-produto__media { aspect-ratio: 1 / 1; }



:is(.grid-produtos--denso, .regua__pista) .card-produto__flag { top: var(--s-2); left: var(--s-2); padding: 4px 8px; }

:is(.grid-produtos--denso, .regua__pista) .card-produto__body {
  gap: var(--s-1);
  padding: var(--s-4) var(--s-4) var(--s-3);
}
:is(.grid-produtos--denso, .regua__pista) .card-produto__name { font-size: var(--fs-base); }
:is(.grid-produtos--denso, .regua__pista) .card-produto__meta { gap: var(--s-1) var(--s-3); padding-top: var(--s-3); }
:is(.grid-produtos--denso, .regua__pista) .card-produto__minimo { margin-top: var(--s-1); }











:is(.grid-produtos--denso, .regua__pista) .card-produto__foot { padding: var(--s-3) var(--s-4); gap: var(--s-2); }
:is(.grid-produtos--denso, .regua__pista) .card-produto__foot .preco { min-width: 0; }
:is(.grid-produtos--denso, .regua__pista) .card-produto__foot .btn { padding-inline: var(--s-3); }
:is(.grid-produtos--denso, .regua__pista) .preco__valor { font-size: var(--fs-md); }





:is(.grid-produtos--denso, .regua__pista) .preco-lock,
.compra .preco-lock,
.linha-item .preco-lock { white-space: nowrap; }













.filtros {
  


  position: sticky; top: var(--h-total);
  z-index: var(--z-sticky);
  padding-block: var(--s-3);
  background: var(--ink-900);
  border-bottom: 1px solid var(--line);
}
.filtros__linha { display: flex; align-items: center; gap: var(--s-3); flex-wrap: wrap; }
.filtros__linha + .filtros__linha { margin-top: var(--s-2); }



.filtros .search { flex: 0 1 300px; min-width: 180px; }


.filtros__cabeca,
.filtros__pe,
.filtros__scrim,
.filtros__abrir { display: none; }

.filtros__barra {
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--s-3);
  margin-top: var(--s-2);
}
.filtros__resultado {
  font-size: var(--fs-xs); font-weight: 600;
  letter-spacing: var(--tr-label); text-transform: uppercase;
  color: var(--faint);
}
.filtros__ativos {
  display: inline-grid; place-items: center;
  min-width: 20px; height: 20px; padding-inline: 6px;
  background: var(--amber); color: var(--accent-foreground);
  font-size: 0.625rem; font-weight: 800;
  border-radius: var(--r-pill);
}

@media (max-width: 900px) {
  .pagina-topo { padding-top: calc(var(--h-total) + var(--s-7)); }
  .pagina-topo--compacta { padding-top: calc(var(--h-total) + var(--s-5)); }

  .filtros__barra { margin-top: 0; }
  .filtros__abrir { display: inline-flex; min-height: 44px; }
  






  











  .filtros__painel {
    position: fixed; inset: 0 0 0 auto;
    


    z-index: calc(var(--z-drawer) + 1);
    width: min(380px, 100%);
    display: flex; flex-direction: column;
    background: var(--ink-850);
    border-left: 1px solid var(--line);
    transform: translate3d(100%, 0, 0);
    visibility: hidden;
    




    transition: transform var(--d-meso) var(--ease-inout),
                visibility var(--d-meso) var(--ease-inout);
  }
  .filtros.is-aberta ~ .filtros__painel { transform: translate3d(0, 0, 0); visibility: visible; }

  .filtros__scrim {
    display: block;
    position: fixed; inset: 0;
    z-index: var(--z-drawer);
    background: rgba(5, 5, 5, 0.82);
    opacity: 0; visibility: hidden;
    transition: opacity var(--d-meso) var(--ease), visibility var(--d-meso) var(--ease);
  }
  .filtros.is-aberta ~ .filtros__scrim { opacity: 1; visibility: visible; }

  .filtros__cabeca {
    display: flex; align-items: center; justify-content: space-between;
    gap: var(--s-4);
    padding: var(--s-4) var(--s-5);
    border-bottom: 1px solid var(--line);
    flex: none;
  }
  .filtros__titulo { font-size: var(--fs-lg); }

  .filtros__corpo {
    flex: 1;
    overflow-y: auto; overscroll-behavior: contain;
    padding: var(--s-5);
  }
  .filtros__pe {
    display: flex; gap: var(--s-3);
    padding: var(--s-4) var(--s-5);
    border-top: 1px solid var(--line);
    background: var(--ink-800);
    flex: none;
  }
  .filtros__pe .btn { flex: 1; min-height: 44px; }

  

  .filtros__painel .filtros__linha { display: block; }
  .filtros__painel .filtros__linha + .filtros__linha { margin-top: var(--s-5); }
  .filtros__painel .filtros__linha > * + * { margin-top: var(--s-3); }
  .filtros__painel .search,
  .filtros__painel .select { width: 100%; min-width: 0; }
  .filtros__painel .select select { width: 100%; }
  .filtros__painel .chips { flex-wrap: wrap; }
  .filtros__painel .chip { display: inline-flex; align-items: center; min-height: 44px; }
}





.produto {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(var(--s-6), 4vw, var(--s-8));
  align-items: start;
}

















[data-produto]:empty { min-height: 74vh; }
[data-grid]:empty { min-height: 80vh; }















.produto__midia {
  position: relative;
  aspect-ratio: 1 / 1;
  


  width: min(100%, 460px);
  margin-inline: auto;
  overflow: hidden;
  border-radius: var(--r-md);
  border: 1px solid var(--line);
  

  background: #fff;
  padding: var(--s-3);
}


.produto__midia img {
  width: 100%; height: 100%;
  object-fit: contain;
  background-color: transparent;
}
.produto__flag {
  position: absolute; top: var(--s-4); left: var(--s-4);
  padding: 6px 12px;
  background: var(--amber); color: var(--accent-foreground);
  font-size: var(--fs-xs); font-weight: 800;
  letter-spacing: var(--tr-label); text-transform: uppercase;
  border-radius: var(--r-pill);
}






.galeria { display: flex; flex-direction: column; gap: var(--s-3); }
.galeria__tira {
  display: flex; gap: var(--s-2);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  padding-block: 2px;
}
.galeria__tira::-webkit-scrollbar { display: none; }



.galeria__mini {
  flex: 0 0 68px;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  background: #fff;
  padding: 3px;
  opacity: 0.55;
  transition: opacity var(--d-micro) var(--ease), border-color var(--d-micro) var(--ease);
}
.galeria__mini img {
  width: 100%; height: 100%;
  object-fit: contain;
  background-color: transparent;
}
.galeria__mini:hover { opacity: 1; }
.galeria__mini.is-ativa { opacity: 1; border-color: var(--amber); }



.produto__info {
  display: flex; flex-direction: column; gap: var(--s-3);
  position: sticky; top: calc(var(--h-total) + var(--s-4));
}
.produto__marca {
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: var(--tr-eyebrow); text-transform: uppercase; color: var(--amber);
}










.produto__nome {
  font-size: clamp(1.5rem, 1.1rem + 1.1vw, 2.125rem);
  line-height: 1.12;
}
.produto__desc { color: var(--muted); max-width: 48ch; }

.ficha {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  overflow: hidden;
}


.ficha__item { display: flex; flex-direction: column; gap: 3px; padding: var(--s-2) var(--s-3); background: var(--ink-800); }


.ficha__item--largo { grid-column: 1 / -1; }





@media (min-width: 1200px) {
  .ficha { grid-template-columns: repeat(3, 1fr); }
  .ficha__item--largo { grid-column: auto; }
}
.ficha__rot {
  display: flex; align-items: center; gap: 6px;
  font-size: var(--fs-xs); letter-spacing: var(--tr-label);
  text-transform: uppercase; color: var(--faint);
}
.ficha__rot svg { width: 13px; height: 13px; color: var(--gold); }
.ficha__val { font-size: var(--fs-base); font-weight: 600; color: var(--cream); }




.ficha__val--forte {
  font-family: var(--font-display);
  font-size: var(--fs-lg);
  font-weight: 900;
  line-height: 1.05;
  color: var(--amber);
}










.variedade { display: flex; flex-direction: column; gap: var(--s-3); }
.variedade__rot {
  display: flex; align-items: center; gap: 6px;
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: var(--tr-label); text-transform: uppercase; color: var(--faint);
}
.variedade__rot svg { width: 13px; height: 13px; color: var(--gold); }

.variedade__lista { display: flex; flex-wrap: wrap; gap: var(--s-3); }
.variedade__op {
  display: flex; flex-direction: column; gap: 2px;
  min-height: 44px;
  padding: var(--s-3) var(--s-4);
  text-align: left;
  color: var(--cream);
  background: var(--ink-800);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  cursor: pointer;
  transition:
    border-color var(--d-micro) var(--ease),
    background var(--d-micro) var(--ease),
    color var(--d-micro) var(--ease);
}
.variedade__op:hover { border-color: var(--amber); }
.variedade__op:focus-visible { outline: 2px solid var(--amber); outline-offset: 2px; }
.variedade__nome { font-size: var(--fs-sm); font-weight: 700; letter-spacing: 0.01em; }
.variedade__un { font-size: var(--fs-xs); color: var(--faint); }



.variedade__op.is-ativa {
  background: var(--amber);
  border-color: var(--amber);
  color: var(--accent-foreground);
}
.variedade__op.is-ativa .variedade__un { color: var(--accent-foreground); opacity: 0.72; }




.compra {
  display: flex; flex-direction: column; gap: var(--s-2);
  padding: var(--s-3);
  background: var(--ink-800);
  border: 1px solid var(--amber-24);
  border-radius: var(--r-md);
}
.compra__topo { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s-4); flex-wrap: wrap; }
.compra__qtd { display: flex; flex-direction: column; align-items: flex-end; gap: var(--s-2); }


.compra__minimo {
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: 0.04em; color: var(--amber);
}
.compra__minimo:empty { display: none; }



.compra__acoes { display: grid; gap: var(--s-3); }
.compra__nota { font-size: var(--fs-xs); color: var(--faint); }





.compra__acoes .btn--lg { padding: 15px 32px; }

















[data-relacionados-secao] { padding-block: var(--s-5) var(--s-7); }
[data-relacionados-secao] .section-head { gap: var(--s-2); margin-bottom: var(--s-3); }
[data-relacionados-secao] .display-3 { font-size: var(--fs-lg); }





.carrinho { display: grid; grid-template-columns: 1fr 380px; gap: var(--s-7); align-items: start; }

.linha-item {
  display: grid;
  grid-template-columns: 88px 1fr auto;
  gap: var(--s-4);
  align-items: center;
  padding: var(--s-4);
  background: var(--ink-800);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
}
.linha-item + .linha-item { margin-top: var(--s-3); }



.linha-item__foto {
  width: 88px; aspect-ratio: 1;
  object-fit: contain; border-radius: var(--r-sm);
  background: #fff;
}
.linha-item__nome {
  font-family: var(--font-display);
  font-size: var(--fs-base); font-weight: 700; color: var(--cream);
  transition: color var(--d-micro) var(--ease);
}
.linha-item__nome:hover { color: var(--amber); }
.linha-item__meta { font-size: var(--fs-xs); color: var(--faint); margin-top: 3px; }



.linha-item__minimo {
  display: inline-flex; align-items: center; gap: 5px;
  margin-top: var(--s-2);
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: 0.04em; color: var(--faint);
}
.linha-item__minimo svg { width: 13px; height: 13px; flex: none; }
.linha-item__minimo.is-abaixo { color: var(--amber); }
.linha-item__ctrl { display: flex; align-items: center; gap: var(--s-4); margin-top: var(--s-3); }
.linha-item__preco { text-align: right; min-width: 106px; }


.mini-item__minimo {
  margin-top: var(--s-2);
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: 0.04em; color: var(--faint);
}
.mini-item__minimo.is-abaixo { color: var(--amber); }

.resumo {
  position: sticky; top: calc(var(--h-total) + var(--s-4));
  display: flex; flex-direction: column; gap: var(--s-4);
  padding: var(--s-6);
  background: var(--ink-800);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
}
.resumo h2 { font-size: var(--fs-lg); }
.resumo__linha { display: flex; justify-content: space-between; gap: var(--s-4); font-size: var(--fs-sm); color: var(--muted); }
.resumo__total {
  display: flex; justify-content: space-between; align-items: baseline; gap: var(--s-4);
  padding-top: var(--s-4);
  border-top: 1px solid var(--line);
}
.resumo__total b {
  font-family: var(--font-display);
  font-size: var(--fs-xl); font-weight: 800;
  letter-spacing: -0.02em; color: var(--cream);
}
.resumo__aviso {
  display: flex; gap: var(--s-3);
  padding: var(--s-4);
  border: 1px solid var(--amber-24);
  background: var(--amber-06);
  border-radius: var(--r-sm);
  font-size: var(--fs-xs); color: var(--text);
}
.resumo__aviso svg { width: 16px; height: 16px; color: var(--amber); flex: none; }





@media (max-width: 1279px) {
  




  .hero__content { max-width: min(38%, 420px); }
  .hero__veu { background: rgba(5, 5, 5, 0.44); }
}

@media (max-width: 1180px) {
  .valores { grid-template-columns: repeat(2, 1fr); }
  .valor:nth-child(2) { border-right: 0; }
  .valor:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 1023px) {
  

  .grid-categorias { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1024px) {
  








  .carrinho { grid-template-columns: minmax(0, 1fr); }
  .resumo { position: static; }
  .produto { grid-template-columns: minmax(0, 1fr); }
  .produto__info { position: static; }
  .numeros { grid-template-columns: repeat(2, 1fr); row-gap: var(--s-7); }
  



}





@media (max-width: 900px) {
  



  















  .hero {
    display: flex;
    flex-direction: column;
    


    align-items: center;
    


    aspect-ratio: auto;
    min-height: 0;            
    padding-bottom: 0;
    gap: var(--s-6);
  }
  .hero__content { max-width: 100%; }

  



  



  .hero__fundo {
    position: relative;
    order: 2;
    aspect-ratio: 1672 / 941;
    height: auto;
    width: 100%;
  }
  .hero__img { object-position: center; }

  
  .hero__veu { display: none; }

  .hero__conteudo { order: 1; }

  

  .grid-categorias {
    display: flex;
    gap: var(--s-3);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin-inline: calc(var(--gutter) * -1);
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
  }
  .grid-categorias::-webkit-scrollbar { display: none; }
  .grid-categorias > * { flex: 0 0 min(80vw, 300px); scroll-snap-align: start; }

  

  




  .regua__pista { --por-vista: 1; }
}




.card-produto__foot .btn,
.card-produto__foot .preco-lock { min-height: 44px; }

@media (max-width: 860px) {
  .sobre { grid-template-columns: 1fr; }
  .sobre__midia { aspect-ratio: 16 / 10; }
  .produto__info { position: static; }

  


  .comercial__aro { width: min(74vw, 320px); }
  .chamada--split .chamada__acoes { flex-direction: column; align-items: stretch; width: 100%; }
  .chamada--split .chamada__acoes .btn { width: 100%; white-space: normal; }
}

@media (max-width: 620px) {
  .grid-produtos { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: var(--s-3); }
  .card-produto__body { padding: var(--s-4); }
  .card-produto__foot { padding: var(--s-3) var(--s-4); flex-direction: column; align-items: stretch; gap: var(--s-3); }
  .card-produto__foot .btn { width: 100%; }
  


  .valores--garantias .valor { padding: var(--s-4); }
  .valores--garantias .valor p { font-size: var(--fs-xs); }
  .ficha { grid-template-columns: 1fr; }
  


  .hero { padding-top: calc(var(--h-total) + var(--s-5)); padding-bottom: var(--s-6); }
  .hero__content { gap: var(--s-4); }
  

  .hero__stats {
    display: grid; grid-template-columns: repeat(3, 1fr);
    gap: var(--s-3);
    margin-top: var(--s-3); padding-top: var(--s-4);
  }
  .hero__stat b { font-size: var(--fs-md); }
  .hero__acoes { width: 100%; }
  



  .hero__acoes .btn {
    flex: 1 1 100%;
    white-space: normal;
    padding: 15px var(--s-5);
    font-size: var(--fs-sm);
  }
  .linha-item { grid-template-columns: 64px 1fr; row-gap: var(--s-3); }
  .linha-item__foto { width: 64px; }
  .linha-item__preco { grid-column: 1 / -1; text-align: left; }
  .hero__selo { width: 84px; height: 84px; right: -2%; }
  .boot__logo { width: 100px; height: 100px; }
  .boot__ring { width: 190px; height: 190px; }

  
  .pagina-topo { padding-top: calc(var(--h-total) + var(--s-5)); padding-bottom: var(--s-5); }

  




  .grid-produtos.grid-produtos--denso {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--s-2);
  }
  :is(.grid-produtos--denso, .regua__pista) .card-produto__body { padding: var(--s-3); }
  :is(.grid-produtos--denso, .regua__pista) .card-produto__name { font-size: var(--fs-sm); }
  





  :is(.grid-produtos--denso, .regua__pista) .card-produto__link { padding-block: 16px; }
  :is(.grid-produtos--denso, .regua__pista) .card-produto__meta { gap: 2px var(--s-2); padding-top: var(--s-2); }
  :is(.grid-produtos--denso, .regua__pista) .card-produto__foot { padding: var(--s-3); gap: var(--s-2); }
  :is(.grid-produtos--denso, .regua__pista) .preco__valor { font-size: var(--fs-md); }
}





.historia {
  display: flex;
  flex-direction: column;
  gap: clamp(var(--s-9), 10vw, var(--s-10));
}

.historia-cap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(var(--s-6), 5vw, var(--s-9));
  align-items: center;
}

.historia-cap:nth-child(even) .historia-cap__midia { order: 2; }

.historia-cap__midia {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: var(--r-md);
  border: 1px solid var(--line);
  background: var(--ink-850);
}
.historia-cap__midia img {
  width: 100%; height: 100%;
  object-fit: cover;
}



.historia-cap__marco {
  display: block;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(1.6rem, 3.2vw, 2.6rem);
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--amber);
}
.historia-cap__texto h2 {
  margin-top: var(--s-4);
  font-size: var(--fs-xl);
}
.historia-cap__texto p {
  margin-top: var(--s-4);
  color: var(--muted);
  max-width: 52ch;
}

.historia-acoes {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--s-3);
  margin-top: var(--s-2);
}

@media (max-width: 860px) {
  .historia-cap { grid-template-columns: 1fr; gap: var(--s-5); }
  .historia-cap:nth-child(even) .historia-cap__midia { order: 0; }
  .historia-cap__midia { aspect-ratio: 16 / 10; }
}











.footer__col a {
  padding-block: 12px;   
  min-width: 44px;       
}












.hero__tema {
  position: absolute;
  




  bottom: clamp(var(--s-4), 3vw, var(--s-6));
  right: clamp(var(--s-3), 2vw, var(--s-6));
  z-index: 3;                 
}
.hero__tema-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;           
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  















  background: #626162;
  color: #fff;                
  font: 600 var(--fs-14, 14px)/1 var(--fonte-corpo, inherit);
  letter-spacing: .01em;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.hero__tema-btn:hover {
  
  background: #3D3C3D;
  border-color: rgba(255, 255, 255, .38);
}
.hero__tema-btn:active { transform: scale(.97); }
.hero__tema-btn:focus-visible {
  outline: 2px solid var(--accent, #F26522);
  outline-offset: 2px;
}




.hero__tema-ico {
  width: 15px; height: 15px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .18);
}
html.tema-claro .hero__tema-ico {
  background: transparent;
  box-shadow: inset -4px 2px 0 0 currentColor;   
}

@media (max-width: 560px) {
  

  .hero__tema-btn { padding: 0; width: 44px; justify-content: center; }
  .hero__tema-btn [data-tema-rotulo] { display: none; }
}















.filtros {
  transition: transform var(--d-meso, .35s) var(--ease-inout, ease-in-out);
  will-change: transform;
}




.nav-recolhida .filtros {
  transform: translateY(calc(-100% - var(--h-total)));
  


  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .filtros { transition: none; }
  .nav-recolhida .filtros { transform: none; pointer-events: auto; }
}




.filtros-fab { display: none; }

@media (max-width: 900px) {
  .filtros-fab {
    position: fixed;
    right: var(--s-4, 16px);
    

    bottom: calc(var(--s-4, 16px) + env(safe-area-inset-bottom, 0px));
    z-index: var(--z-sticky);
    display: grid;
    place-items: center;
    width: 52px; height: 52px;      
    border-radius: 50%;
    background: var(--amber);
    color: var(--accent-foreground);
    border: 0;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .38);
    transition: transform var(--d-micro, .18s) var(--ease, ease);
  }
  .filtros-fab:active { transform: scale(.94); }
  .filtros-fab:focus-visible { outline: 2px solid var(--accent, #F26522); outline-offset: 3px; }
  .filtros-fab__ico { width: 22px; height: 22px; }

  
  .filtros.is-aberta ~ .filtros-fab { display: none; }
}
