@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');
/* Linha do botão 'Buscar mais ofertas' centralizada */

.wzk_load-more-btn-row {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 30px 0 0 0;
}
:root {
  /* Fonts */
  --wzk_font: Lato;

  /* font sizes */
  --font-size-2xs: 14px;
  --font-size-sm: 16px;
  --font-size-base: 16px;
  --font-size-lg: 20px;

  /* Colors */
  --color-gainsboro: #e8e8e8;
  --color-gray-100: #1e1e21;
  --color-text-mzk: #42210B;

  /* Gaps */
  --gap-5xs: 8px;
  --gap-base: 16px;
  --gap-5xl: 24px;

  /* Paddings */
  --padding-9xs: 4px;
  --padding-5xs: 8px;
  --padding-3xs: 10px;
  --padding-mini: 15px;
  --padding-4xl: 23px;
  --padding-21xl: 40px;

  /* Border radiuses */
  --br-9xs: 4px;
  --br-8xs: 5px;
  --br-31xl: 50px;

  /* Figma Variables */

  /* Number Variables */
  --Radius-border-radius-sm: 5px;
  --Spacing-spacing-nano: 8px;
}

.wzk_category {
  position: relative;
  text-transform: uppercase;
  font-weight: 600;
}
.wzk_description1 {
  position: relative;
  font-size: var(--font-size-lg);
  line-height: 140%;
  color: var(--color-text-mzk);
  display: flex;
  align-items: center;
}
.wzk_content {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 18px;
}
.wzk_brand-filter-title,
.wzk_brand-name {
  position: relative;
  line-height: 135%;
}
.wzk_brand-filter-title {
  font-size: var(--font-size-lg);
  color:  var(--color-text-mzk);
  opacity: 0.8;
}
.wzk_brand-name {
  font-weight: 500;
}
.wzk_icon {
  height: 6px;
  width: 12px;
  position: relative;
}
.wzk_brand-filter-option {
  height: 40px;
  border-radius: var(--br-31xl);
  border: 1px solid var(--color-text-mzk);
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  padding: var(--padding-5xs) var(--padding-mini);
  gap: 9px;
}
.wzk_brand-filter-container1,
.wzk_brand-filter-option1,
.wzk_brand-filter-options {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
}
.wzk_brand-filter-option1 {
  height: 40px;
  border-radius: var(--br-31xl);
  border: 1px solid var(--color-text-mzk);
  box-sizing: border-box;
  padding: var(--padding-5xs) var(--padding-mini);
  gap: 10px;
}
.wzk_brand-filter-container1 {
  gap: 15px;
}
.wzk_brand-filter-container,
.wzk_description {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}
.wzk_brand-filter-container {
  height: 40px;
  flex-direction: row;
  font-size: var(--font-size-base);
  color: var(--color-text-mzk);
}
.wzk_description {
  flex-direction: column;
  gap: var(--gap-5xl);
}
.wzk_image-icon {
  align-self: stretch;
  height: 251px;
  position: relative;
  border-radius: var(--br-9xs);
  max-width: 100%;
  overflow: hidden;
  flex-shrink: 0;
  object-fit: cover;
}
.wzk_brand_cat {
  position: relative;
  line-height: var(--font-size-sm);
  text-transform: uppercase;
}
.wzk_link {
  border-radius: var(--br-8xs);
  background-color: var(--color-gainsboro);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  padding: var(--padding-9xs);
  color: #444;
  font-family: var(--wzk_font);
}
.wzk_product-name {
  position: relative;
  font-size: var(--font-size-lg);
  line-height: 135%;
  font-weight: 500;
  opacity: 0.8;
}
.wzk_product-details {
  align-self: stretch;
  position: relative;
  font-size: var(--font-size-sm);
  line-height: 23px;
  opacity: 0.5;
  display: -webkit-box; /* Garante compatibilidade com navegadores baseados em WebKit */
  -webkit-line-clamp: 2; /* Limita a 2 linhas */
  -webkit-box-orient: vertical; /* Define o comportamento de orientação */
  overflow: hidden; /* Esconde o texto excedente */
  text-overflow: ellipsis; /* Adiciona reticências ao final do texto */
}
.wzk_content1 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--gap-5xs);
}
.wzk_texto {
  position: relative;
  font-size: var(--font-size-lg);
  line-height: 100%;
  font-family: var(--wzk_font);
  color: var(--color-text-mzk);
  text-align: left;
}
.wzk_button,
.wzk_button1 {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.wzk_button1 {
  flex: 1;
  border-radius: var(--Radius-border-radius-sm);
  justify-content: center;
  padding: var(--padding-3xs) var(--padding-4xl);
}
.wzk_button {
  cursor: pointer;
  border: 0;
  padding: 0;
  background-color: transparent;
  justify-content: flex-start;
  align-self: stretch; /* Faz o botão ocupar toda a largura do card */
}
.wzk_card-container,
.wzk_cards,
.wzk_description2 {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.wzk_description2 {
  flex-grow: 1; /* Faz a descrição ocupar o espaço restante */
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* Garante que o botão fique no final */
  gap: var(--gap-5xl);
  width: 100%; /* Faz o card ocupar toda a largura disponível */
}
.wzk_card-container,
.wzk_cards {
  width: 300px;
}
.wzk_card-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* Garante que o botão fique no final */
  gap: var(--gap-base);
  height: 100%; /* Faz o card ocupar toda a altura disponível */
  position: relative; /* Necessário para o link ocupar todo o card */
}

.wzk_card-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  text-decoration: none; /* Remove sublinhado do link */
  color: inherit; /* Mantém a cor do texto */
}

.wzk_cards {
  flex-direction: row;
  position: relative;
  max-width: 600px;
  width: 300px;
}
.wzk_cards-parent {
  align-self: stretch;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 30px;
  font-size: var(--font-size-2xs);
  font-family: var(--wzk_font);
}
.wzk_progress,
.wzk_scroll-icon {
  position: absolute;
  left: 0;
}
.wzk_scroll-icon {
  top: 2px;
  border-radius: var(--br-9xs);
  max-height: 100%;
  width: 100%;
  height: 100%;
}
.wzk_progress {
  top: 0;
  border-radius: 20px;
  background-color: var(--color-text-mzk);
  width: 75.6px;
  height: 4px;
  z-index: 1;
}
.wzk_scroll {
  width: 1289px;
  height: 4px;
  position: relative;
}
.wzk_description-parent {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 54px;
  z-index: 0;
  text-align: left;
  font-size: 20px;
  color:  var(--color-text-mzk);
  font-family: var(--wzk_font);
}
.wzk_arrow-icon,
.wzk_subtract-icon {
  height: 40px;
  width: 40px;
  position: relative;
  object-fit: contain;
  z-index: 2;
  border-radius: 50%; /* Torna as setas circulares */
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px; /* Tamanho da seta */
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.wzk_arrow-icon[disabled],
.wzk_subtract-icon[disabled] {
  cursor: not-allowed; /* Cursor desabilitado */
  opacity: 0.5; /* Reduz a opacidade quando desabilitado */
}

.wzk_navigation {
  width: 100%;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 10;
  cursor: pointer;
}
.wzk_sesso {
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  line-height: normal;
  letter-spacing: normal;
  padding: 40px;
}
@media screen and (max-width: 1350px) {
  .wzk_cards-parent {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 1024px) {
  .wzk_brand-filter-container1 {
    flex-direction: column;
    align-items: flex-start;
  }
  .wzk_type_3 .wzk_carousel-track {
    gap:60px !important;
  }
}
@media screen and (max-width: 800px) {
  .wzk_brand-filter-container1 {
    flex-wrap: wrap;
  }
  .wzk_brand-filter-container {
    height: auto;
  }
  .wzk_description-parent {
    gap: 27px;
  }
  .wzk_type_3 .wzk_carousel-track {
    gap:60px !important;
  }
}
@media screen and (max-width: 450px) {
  .wzk_category {
    font-size: var(--font-size-base);
  }
}
@media screen and (max-width: 400px) {
  .wzk_card-container,
  .wzk_cards {
    width: 270px; /* Define a largura máxima dos cards */
  }
}

/* Garante que o container do carrossel esconda overflow */
.wzk_carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.wzk_carousel-track {
  display: flex;
  transition: transform 0.3s ease;
  will-change: transform;
  cursor: grab;
  gap: 30px;
}


.wzk_scroll {
  width: 100%;
  height: 4px;
  background-color: #e0e0e0;
  margin-top: 10px;
  position: relative;
  overflow: hidden;
}

.wzk_progress {
  height: 100%;
  width: 0%;
  background-color: #008f43;
  transition: width 0.3s ease;
}

.wzk_brand-select {
  /* appearance: none; */
  background: transparent;
  border: none;
  font-size: var(--font-size-base);
  font-family: var(--wzk_font);
  color: var(--color-text-mzk);
  flex: 1;
  outline: none;
  padding: 8px 12px; /* Respiro interno */
  cursor: pointer;
  border-radius: 8px; /* Arredondado */
  background-color: transparent; /* fundo branco */
  width: 180px; /* Define uma largura fixa */
}

.wzk_brand-select option {
  padding: 10px;
  color: #444 !important; /* Respiro entre os itens */
}

.wzk_skeleton .wzk_skeleton-box {
  background-color: #e0e0e0;
  border-radius: 4px;
  animation: shimmer 1.5s infinite linear;
}

.wzk_skeleton .wzk_image-icon {
  width: 100%;
  height: 150px;
}

.wzk_skeleton .wzk_link,
.wzk_skeleton .wzk_product-name,
.wzk_skeleton .wzk_product-details,
.wzk_skeleton .wzk_button {
  height: 20px;
  margin: 10px 0;
}

.wzk_skeleton .wzk_button {
  width: 50%;
  height: 30px;
}

@keyframes shimmer {
  0% {
    background-position: -200px 0;
  }
  100% {
    background-position: 200px 0;
  }
}

.wzk_type_3 .wzk_cards-parent {
  display: block;
}

.wzk_type_3 .wzk_carousel-track {
  display: grid;
    grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

@media (max-width: 1024px) {
  .wzk_type_3 .wzk_carousel-track {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .wzk_type_3 .wzk_carousel-track {
    grid-template-columns: 1fr;
  }
}

.wzk_type_3 .wzk_cards {
  width: 100%;
  max-width: 100%;
  min-width: 215px;
}

.wzk_type_3 .wzk_card-container {
  width: 100%;
  min-width: 0;
}
