.elementor-334 .elementor-element.elementor-element-d8d079f{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-ba30c0d{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-458a73e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-334 .elementor-element.elementor-element-cccf576{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-b343d29{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-7abad86{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-7abad86:not(.elementor-motion-effects-element-type-background), .elementor-334 .elementor-element.elementor-element-7abad86 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-334 .elementor-element.elementor-element-7abad86.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-334 .elementor-element.elementor-element-d8d19fd{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 30px 0px;text-align:center;}.elementor-334 .elementor-element.elementor-element-d8d19fd .elementor-heading-title{font-family:"Instrument Sans", Sans-serif;font-size:32px;font-weight:600;text-transform:uppercase;color:#000000;}body.elementor-page-334{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-334 .elementor-element.elementor-element-ba30c0d{--width:50%;}.elementor-334 .elementor-element.elementor-element-cccf576{--width:50%;}.elementor-334 .elementor-element.elementor-element-7abad86{--content-width:1300px;}}@media(max-width:767px){.elementor-334 .elementor-element.elementor-element-d8d079f{--content-width:100%;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-334 .elementor-element.elementor-element-ba30c0d{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-458a73e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-334 .elementor-element.elementor-element-b343d29{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-7abad86{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-d8d19fd .elementor-heading-title{font-size:26px;}.elementor-334 .elementor-element.elementor-element-b12b459{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS *//* ==========================================================================
   AW Product Card — Design System
   ========================================================================== */

body.elementor-page-334 .aw-card-media {
  display: flex;
  flex-direction: column;
  position: relative;
  font-family: 'Instrument Sans', sans-serif;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  height: 100%;
}

/* ==========================================================================
   FIX GRID — Elementor gera colunas em px absolutos
   ========================================================================== */
.elementor-loop-container.elementor-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-loop-container.elementor-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  .elementor-loop-container.elementor-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    overflow-x: hidden !important;
  }
}

/* Cada item ocupa a altura total da row */
.elementor-loop-container .elementor-loop-item {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
.elementor-loop-item .elementor-widget-container {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* ==========================================================================
   Carousel
   ========================================================================== */
body.elementor-page-334 .aw-card-carousel {
  position: relative;
  overflow: hidden;
  width: 100%;
  flex-shrink: 0;
}
body.elementor-page-334 .aw-card-carousel .swiper,
body.elementor-page-334 .aw-card-carousel .aw-swiper {
  overflow: hidden !important;
  position: relative;
  z-index: 1;
  width: 100% !important;
}
body.elementor-page-334 .aw-card-carousel .swiper-wrapper {
  display: flex !important;
  width: 100% !important;
}
body.elementor-page-334 .aw-card-carousel .swiper-slide {
  aspect-ratio: 1 / 1;
  width: 100% !important;
  min-width: 100% !important;
  flex-shrink: 0;
  overflow: hidden;
}
body.elementor-page-334 .aw-card-carousel .swiper-slide img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center center; display: block;
}
body.elementor-page-334 .aw-card-media__link {
  display: block; color: inherit; text-decoration: none;
  position: relative; z-index: 1; overflow: hidden; width: 100%;
}

/* ---------- Setas ---------- */
body.elementor-page-334 .aw-nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 38px; height: 38px; border-radius: 50%; border: none;
  background: rgba(30,30,30,.45);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  cursor: pointer; z-index: 20;
  opacity: 0; visibility: hidden;
  transition: opacity .2s ease, visibility .2s ease, background .15s;
  pointer-events: auto !important; touch-action: manipulation;
  padding: 0; display: flex; align-items: center; justify-content: center;
}
body.elementor-page-334 .aw-prev { left: 8px; }
body.elementor-page-334 .aw-next { right: 8px; }
body.elementor-page-334 .aw-card-carousel:hover .aw-nav,
body.elementor-page-334 .aw-card-carousel .aw-nav.is-touch-visible { opacity: 1; visibility: visible; }
body.elementor-page-334 .aw-nav:hover { background: rgba(10,10,10,.72); }
body.elementor-page-334 .aw-nav svg  { display: block; width: 14px; height: auto; flex-shrink: 0; }
body.elementor-page-334 .aw-nav span { display: inline-flex; align-items: center; }
body.elementor-page-334 .aw-nav.is-disabled { opacity: .22 !important; filter: grayscale(1); }
body.elementor-page-334 .aw-nav.swiper-button-disabled { pointer-events: auto !important; }

/* ---------- Badge ---------- */
body.elementor-page-334 .aw-badge {
  position: absolute; top: 10px; left: 10px; z-index: 6;
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 10px 5px 8px; border-radius: 999px;
  background: #111111; color: #fff;
  font-family: 'Instrument Sans', sans-serif;
  font-size: 11px; font-weight: 600; letter-spacing: .06em;
  text-transform: uppercase; line-height: 1; box-shadow: none;
}
body.elementor-page-334 .aw-badge__icon { display: flex; align-items: center; flex-shrink: 0; }
body.elementor-page-334 .aw-badge__icon svg { width: 13px; height: 13px; display: block; }

/* ==========================================================================
   Meta — ALTURA UNIFORME
   flex:1 faz o meta crescer para preencher o espaço
   as ações ficam sempre coladas na base via margin-top:auto no spacer
   ========================================================================== */
body.elementor-page-334 .aw-card-meta {
  margin-top: 14px;
  display: flex;
  flex-direction: column;
  flex: 1; /* cresce para preencher a célula */
  width: 100%;
  text-align: center;
  min-height: 0;
}

/* FIX 3: padding lateral no título */
body.elementor-page-334 .aw-card-title {
  width: 100%;
  margin-bottom: 8px;
  padding: 0 15px; /* 15px esquerda e direita conforme pedido */
  box-sizing: border-box;
}
body.elementor-page-334 .aw-card-title__link {
  font-family: 'Instrument Sans', sans-serif;
  font-size: 15px; font-weight: 600; line-height: 1.25;
  color: #111; text-decoration: none; display: block;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  letter-spacing: .02em; transition: opacity .15s;
  text-transform: uppercase; /* uppercase conforme pedido */
}
body.elementor-page-334 .aw-card-title__link:hover { opacity: .7; }

body.elementor-page-334 .aw-card-price { width: 100%; }
body.elementor-page-334 .aw-price {
  width: 100%; display: flex; align-items: baseline;
  justify-content: center; gap: 8px; flex-wrap: wrap;
}
body.elementor-page-334 .aw-price__current,
body.elementor-page-334 .aw-price__sale {
  font-family: 'Instrument Sans', sans-serif;
  font-size: 16px; font-weight: 600; color: #111; line-height: 1.1;
}
/* Preço promocional em vermelho — igual ao Quick View */
body.elementor-page-334 .aw-price__sale { color: #c0392b; }
body.elementor-page-334 .aw-price__regular {
  font-family: 'Instrument Sans', sans-serif;
  font-size: 13px; font-weight: 600; color: #999;
  text-decoration: line-through; line-height: 1.1;
}

/* Swatches — min-height reserva espaço mesmo sem swatches */
body.elementor-page-334 .aw-swatches {
  display: flex; gap: 8px; flex-wrap: wrap;
  justify-content: center; min-height: 38px;
  align-items: center; margin-top: 8px;
}
body.elementor-page-334 .aw-swatch {
  width: 18px; height: 18px; border-radius: 50%; padding: 0;
  border: 1.5px solid rgba(0,0,0,.14); background: #ddd;
  cursor: pointer; transition: transform .14s ease, box-shadow .14s ease; flex-shrink: 0;
}
body.elementor-page-334 .aw-swatch:hover { transform: scale(1.15); }
body.elementor-page-334 .aw-swatch.is-active { box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(0,0,0,.2); }

/* Spacer: empurra os botões para a base — margin-top:auto é o truque */
body.elementor-page-334 .aw-card-spacer { flex: 1; min-height: 0; }

/* Ações fixadas na base — margin-top:auto empurra para baixo independente do conteúdo */
body.elementor-page-334 .aw-card-actions {
  width: 100%; display: flex; justify-content: center;
  gap: 6px;
  margin-top: auto; /* CHAVE: empurra para a base sem precisar de spacer */
  padding-top: 12px;
}

body.elementor-page-334 .aw-btn {
  display: inline-flex; align-items: center; justify-content: center;
  height: 44px; padding: 0 16px; border-radius: 0;
  font-family: 'Instrument Sans', sans-serif;
  font-size: 12px; font-weight: 600; letter-spacing: .07em;
  text-transform: uppercase; text-decoration: none;
  cursor: pointer; border: none;
  transition: background .15s, opacity .15s, transform .1s;
  white-space: nowrap; gap: 6px; box-sizing: border-box; flex-shrink: 0;
}

/* Botão VER */
body.elementor-page-334 .aw-btn--ghost {
  background: transparent; border: 1.5px solid rgba(0,0,0,.12);
  color: #111; padding: 0 14px; min-width: 44px;
}
body.elementor-page-334 .aw-btn--ghost:hover { border-color: rgba(0,0,0,.3); }
body.elementor-page-334 .aw-btn--ghost .aw-btn__icon { display: flex; align-items: center; justify-content: center; }
body.elementor-page-334 .aw-btn--ghost .aw-btn__icon svg { width: 20px; height: auto; display: block; }

/* Botão COMPRAR */
body.elementor-page-334 .aw-btn--primary { background: #111; color: #fff; flex: 1; }
body.elementor-page-334 .aw-btn--primary:hover  { background: #2a2a2a; }
body.elementor-page-334 .aw-btn--primary:active { transform: scale(.98); }
body.elementor-page-334 .aw-btn--primary .aw-btn__label-mobile { display: none; }

/* FIX 4: variante fora de estoque no card */
body.elementor-page-334 .aw-card-stock-tag {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 12px; border-radius: 999px;
  background: #BB4848; color: #fff;
  font-family: 'Instrument Sans', sans-serif;
  font-size: 10px; font-weight: 600; letter-spacing: .06em;
  text-transform: uppercase; line-height: 1;
  box-shadow: 0 2px 8px rgba(187,72,72,.3);
  margin: 6px auto 0;
}
body.elementor-page-334 .aw-card-stock-tag::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%;
  background: rgba(255,255,255,.7); flex-shrink: 0;
}

/* ==========================================================================
   Mobile ≤ 520px
   ========================================================================== */
@media (max-width: 520px) {
  body.elementor-page-334 .aw-card-carousel .aw-nav { width: 28px; height: 28px; }
  body.elementor-page-334 .aw-nav svg { width: 11px; }
  body.elementor-page-334 .aw-card-title__link { font-size: 12px; }
  body.elementor-page-334 .aw-price__current,
  body.elementor-page-334 .aw-price__sale      { font-size: 13px; }
  body.elementor-page-334 .aw-price__regular   { font-size: 11px; }
  body.elementor-page-334 .aw-card-meta        { margin-top: 8px; }
  body.elementor-page-334 .aw-card-title       { margin-bottom: 4px; padding: 0 10px; }
  body.elementor-page-334 .aw-swatches         { min-height: 28px; margin-top: 4px; gap: 6px; }
  body.elementor-page-334 .aw-swatch           { width: 14px; height: 14px; }
  body.elementor-page-334 .aw-card-actions     { margin-top: 8px; gap: 5px; }
  body.elementor-page-334 .aw-btn              { height: 38px; font-size: 11px; }
  body.elementor-page-334 .aw-btn--ghost       { width: 38px; min-width: 38px; padding: 0; }
  body.elementor-page-334 .aw-btn--ghost .aw-btn__icon svg { width: 16px; }
  body.elementor-page-334 .aw-btn--primary .aw-btn__label-desktop { display: none; }
  body.elementor-page-334 .aw-btn--primary .aw-btn__label-mobile  { display: inline; }
}/* End custom CSS */