.elementor-3684 .elementor-element.elementor-element-91bfb8c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3684 .elementor-element.elementor-element-91bfb8c:not(.elementor-motion-effects-element-type-background), .elementor-3684 .elementor-element.elementor-element-91bfb8c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3684 .elementor-element.elementor-element-91bfb8c::before, .elementor-3684 .elementor-element.elementor-element-91bfb8c > .elementor-background-video-container::before, .elementor-3684 .elementor-element.elementor-element-91bfb8c > .e-con-inner > .elementor-background-video-container::before, .elementor-3684 .elementor-element.elementor-element-91bfb8c > .elementor-background-slideshow::before, .elementor-3684 .elementor-element.elementor-element-91bfb8c > .e-con-inner > .elementor-background-slideshow::before, .elementor-3684 .elementor-element.elementor-element-91bfb8c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-3684 .elementor-element.elementor-element-01eb9d6{--display:flex;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3684 .elementor-element.elementor-element-2f8937d.elementor-element{--align-self:flex-start;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-3684 .elementor-element.elementor-element-2e85883 > .elementor-widget-container{border-style:none;}.elementor-3684 .elementor-element.elementor-element-2e85883{--main-alignment:right;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-icon-padding:8px 8px 8px 8px;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-3684 .elementor-element.elementor-element-2e85883 .elementor-menu-cart__toggle .elementor-button{box-shadow:0px 0px 8px 0px rgba(0,0,0,0.5);}.elementor-3684 .elementor-element.elementor-element-2e85883 .elementor-menu-cart__main{box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-3684 .elementor-element.elementor-element-2e85883 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-3684 .elementor-element.elementor-element-33068c4{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--overlay-opacity:0.5;--padding-top:12px;--padding-bottom:12px;--padding-left:16px;--padding-right:16px;}.elementor-3684 .elementor-element.elementor-element-33068c4:not(.elementor-motion-effects-element-type-background), .elementor-3684 .elementor-element.elementor-element-33068c4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3684 .elementor-element.elementor-element-33068c4::before, .elementor-3684 .elementor-element.elementor-element-33068c4 > .elementor-background-video-container::before, .elementor-3684 .elementor-element.elementor-element-33068c4 > .e-con-inner > .elementor-background-video-container::before, .elementor-3684 .elementor-element.elementor-element-33068c4 > .elementor-background-slideshow::before, .elementor-3684 .elementor-element.elementor-element-33068c4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-3684 .elementor-element.elementor-element-33068c4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-3684 .elementor-element.elementor-element-d678a2c{--display:flex;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3684 .elementor-element.elementor-element-c2ea7f5{--grid-columns:4;--grid-row-gap:16px;--grid-column-gap:12px;}.elementor-3684 .elementor-element.elementor-element-c2ea7f5 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-3684 .elementor-element.elementor-element-c2ea7f5 .e-loop-item > .elementor-section, .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .e-loop-item > .elementor-section > .elementor-container, .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .e-loop-item > .e-con, .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-3684 .elementor-element.elementor-element-c2ea7f5 .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-3684 .elementor-element.elementor-element-c2ea7f5 .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}.elementor-3684 .elementor-element.elementor-element-851bf69{--display:flex;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-3684 .elementor-element.elementor-element-1dbe2ed > .elementor-widget-container{margin:0px 40px 20px 0px;}body:not(.rtl) .elementor-3684 .elementor-element.elementor-element-1dbe2ed{right:0px;}body.rtl .elementor-3684 .elementor-element.elementor-element-1dbe2ed{left:0px;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed{bottom:0px;z-index:9999;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed .elementor-icon-wrapper{text-align:center;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed.elementor-view-stacked .elementor-icon{background-color:#25D366;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed.elementor-view-framed .elementor-icon, .elementor-3684 .elementor-element.elementor-element-1dbe2ed.elementor-view-default .elementor-icon{color:#25D366;border-color:#25D366;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed.elementor-view-framed .elementor-icon, .elementor-3684 .elementor-element.elementor-element-1dbe2ed.elementor-view-default .elementor-icon svg{fill:#25D366;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed .elementor-icon{font-size:40px;padding:8px;border-radius:50px 50px 50px 50px;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed .elementor-icon svg{height:40px;}@media(max-width:1024px){.elementor-3684 .elementor-element.elementor-element-2e85883{--toggle-icon-padding:8px 8px 8px 8px;}.elementor-3684 .elementor-element.elementor-element-c2ea7f5{--grid-columns:3;}}@media(max-width:767px){.elementor-3684 .elementor-element.elementor-element-91bfb8c{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-3684 .elementor-element.elementor-element-01eb9d6{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--flex-wrap:nowrap;}.elementor-3684 .elementor-element.elementor-element-2e85883{--toggle-icon-padding:8px 8px 8px 8px;}.elementor-3684 .elementor-element.elementor-element-c2ea7f5{--grid-columns:2;}.elementor-3684 .elementor-element.elementor-element-1dbe2ed > .elementor-widget-container{margin:0px 10px 5px 0px;}}/* Start custom CSS for loop-grid, class: .elementor-element-c2ea7f5 */@media (max-width: 767px){
  .elementor-loop-container{
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .elementor-loop-item{
    height: 100%;
  }

  .elementor-loop-item > *{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}

@media (max-width: 767px){
  .elementor-loop-item img{
    aspect-ratio: 1/1;
    object-fit: contain;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-91bfb8c */catalogo-app/* End custom CSS */
/* Start custom CSS *//* ===================================================== */
/* ===================== BASE =========================== */
/* ===================================================== */

#catalogo {
  overflow-x: hidden;
}

#catalogo *{
  box-sizing: border-box;
}

#catalogo .e-con{
  max-width: 100%;
}

/* carrinho base */
#catalogo .elementor-widget-woocommerce-menu-cart{
  max-width: 100%;
}

#catalogo .elementor-menu-cart__wrapper{
  max-width: 100%;
  overflow: hidden;
}


/* ===================================================== */
/* ===================== GRID (FIX REAL) ================ */
/* ===================================================== */

/* 🔥 CORREÇÃO DEFINITIVA (funciona com AJAX + Elementor) */
#catalogo .elementor-loop-container{
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}

/* remove conflitos antigos do Woo */
#catalogo .woocommerce ul.products{
  display: contents !important;
}

#catalogo .woocommerce ul.products li.product{
  width: 100% !important;
  list-style: none;
}

/* RESPONSIVO */
@media (max-width: 1024px) {
  #catalogo .elementor-loop-container{
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 767px) {
  #catalogo .elementor-loop-container{
    grid-template-columns: repeat(2, 1fr) !important;
  }
}


/* ===================================================== */
/* ===================== MOBILE ========================= */
/* ===================================================== */

@media (max-width: 767px){

  #catalogo .elementor-loop-item{
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: hidden;
  }

  #catalogo .elementor-loop-item > *{
    display: flex;
    flex-direction: column;
  }

  #catalogo .elementor-loop-item img{
    width: 100%;
    height: auto;
    display: block;
  }

  #catalogo .elementor-button-wrapper{
    margin-top: auto;
  }

  /* HEADER */
  #catalogo #topo{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
  }

  #catalogo #topo .elementor-widget-site-logo{
    flex: 1;
  }

  #catalogo #topo .elementor-widget-woocommerce-menu-cart{
    flex-shrink: 0;
  }

  /* BOTÕES DO CARRINHO */
  #catalogo .elementor-menu-cart__footer-buttons{
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 15px !important;
  }

  #catalogo .elementor-menu-cart__footer-buttons a{
    width: 100% !important;
    text-align: center !important;
    padding: 12px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
  }

}


/* ===================================================== */
/* ===== HEADER (TABLET + DESKTOP) ====================== */
/* ===================================================== */

@media (min-width: 768px){

  #catalogo #topo{
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
  }

  #catalogo #topo .elementor-widget-site-logo{
    flex: 1 1 auto;
    min-width: 0;
  }

  #catalogo #topo .elementor-widget-site-logo img{
    max-width: 100%;
    height: auto;
    display: block;
  }

  #catalogo #topo .elementor-widget-woocommerce-menu-cart{
    flex: 0 0 auto;
    white-space: nowrap;
  }

}


/* ===================================================== */
/* ================= PAGINAÇÃO ========================== */
/* ===================================================== */

#catalogo .elementor-pagination{
  margin-top: 20px;
}

#catalogo .elementor-pagination .prev::after{
  content: "|";
  margin-left: 10px;
  color: #999;
}


/* ===================================================== */
/* ============== CARRINHO (GLOBAL) ===================== */
/* ===================================================== */

#catalogo .elementor-menu-cart__product-price,
#catalogo .elementor-menu-cart__product-price *{
  color: #000 !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

#catalogo .elementor-menu-cart__product-price del{
  opacity: 0.4;
}


/* ===================================================== */
/* ===== FIX ESTÁVEL DESKTOP/TABLET ===================== */
/* ===================================================== */

@media (min-width: 768px){

  #catalogo .elementor-menu-cart__product-name{
    white-space: normal !important;
    overflow-wrap: break-word !important;
    font-size: 13px;
    line-height: 1.3;
  }

  #catalogo .elementor-menu-cart__product-price{
    display: block;
    margin-top: 4px;
  }

  #catalogo .elementor-menu-cart__footer-buttons{
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 15px !important;
  }

  #catalogo .elementor-menu-cart__footer-buttons a{
    width: 100% !important;
    padding: 12px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
  }

}


/* ===================================================== */
/* ===== FIX MOBILE HEADER (sem overflow) =============== */
/* ===================================================== */

@media (max-width: 767px){

  #catalogo #topo{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }

  #catalogo #topo .elementor-widget-site-logo{
    flex: 1 1 auto;
    min-width: 0;
  }

  #catalogo #topo .elementor-widget-woocommerce-menu-cart{
    flex: 0 1 auto;
    max-width: 40%;
    overflow: hidden;
  }

  #catalogo .elementor-menu-cart__wrapper{
    overflow: hidden;
  }

}


/* ===================================================== */
/* ================= LOADING ============================ */
/* ===================================================== */

body.catalog-loading #catalogo .elementor-loop-container {
  opacity: 0.3;
  transition: opacity 0.2s ease;
}

body.catalog-loading::after {
  content: "Buscando...";
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 12px 20px;
  border-radius: 8px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.1);
  font-size: 14px;
}


/* ===================================================== */
/* ===== FIX BARRA DE BUSCA ============================= */
/* ===================================================== */

#catalog-search {
  width: 100% !important;
  max-width: 100% !important;
  display: block;
}

.elementor-widget-html,
.elementor-widget-html .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
}

/* ===================================================== */
/* ===== BUSCA APP-LIKE (REFINAMENTO VISUAL) ============ */
/* ===================================================== */

#catalog-search {
  padding: 10px 16px !important;
  border-radius: 28px !important;
  border: 1px solid #e5e5e5 !important;
  background: #f9f9f9 !important;
  font-size: 14px !important;
  transition: all 0.2s ease;
}

/* foco elegante */
#catalog-search:focus {
  border-color: #1e1b5a;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* placeholder mais suave */
#catalog-search::placeholder {
  color: #999;
  font-size: 14px;
}

/* ===================================================== */
/* ===== FIX LOOP ITEM (ESSENCIAL PARA AJAX) ============ */
/* ===================================================== */

#catalogo .elementor-loop-item{
  display: flex;
  width: 100%;
}

#catalogo .elementor-loop-item > *{
  width: 100%;
}

/* garante que o card não estoure */
#catalogo .elementor-loop-item .e-con{
  width: 100%;
  max-width: 100%;
}

/* evita overflow interno */
#catalogo .elementor-loop-item *{
  max-width: 100%;
}

/* ===================================================== */
/* ===== RECRIA CARD DO LOOP GRID (AJAX) ================ */
/* ===================================================== */

#catalogo .elementor-loop-item > div {
  background: #fff;
  border-radius: 12px;
  padding: 12px;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* espaçamento interno consistente */
#catalogo .elementor-loop-item .elementor-widget {
  margin-bottom: 8px;
}

/* título mais próximo do original */
#catalogo .elementor-loop-item h2,
#catalogo .elementor-loop-item h3 {
  font-size: 13px;
  text-align: center;
  line-height: 1.3;
}

/* preço */
#catalogo .elementor-loop-item .price {
  text-align: center;
  font-weight: 600;
  margin: 6px 0;
}

/* botão igual ao grid */
#catalogo .elementor-loop-item .elementor-button,
#catalogo .elementor-loop-item .single_add_to_cart_button {
  width: 100%;
  margin-top: auto;
  background: #1e1b5a !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 10px !important;
}/* End custom CSS */