.elementor-8664 .elementor-element.elementor-element-58bfe8d:not(.elementor-motion-effects-element-type-background), .elementor-8664 .elementor-element.elementor-element-58bfe8d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-8664 .elementor-element.elementor-element-58bfe8d{border-style:solid;border-width:1px 0px 1px 0px;border-color:#D5D8DC;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:50px;padding:40px 0px 40px 0px;}.elementor-8664 .elementor-element.elementor-element-58bfe8d > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-8664 .elementor-element.elementor-element-891f32e{text-align:center;}.elementor-8664 .elementor-element.elementor-element-891f32e .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:28px;font-weight:400;color:#FFFFFF;}.elementor-8664 .elementor-element.elementor-element-379d131{--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:80px;--margin-left:0px;--margin-right:0px;}.elementor-8664 .elementor-element.elementor-element-9299a06 .elementor-post__thumbnail__link{padding-bottom:calc( 0.8 * 100% );}.elementor-8664 .elementor-element.elementor-element-9299a06:after{content:"0.8";position:absolute;color:transparent;}.elementor-8664 .elementor-element.elementor-element-9299a06{--grid-column-gap:15px;}.elementor-8664 .elementor-element.elementor-element-9299a06 .elementor-portfolio__filter{color:var( --e-global-color-primary );}.elementor-8664 .elementor-element.elementor-element-9299a06 .elementor-portfolio__filter.elementor-active{color:var( --e-global-color-accent );}.elementor-8664 .elementor-element.elementor-element-5435235{border-style:solid;border-width:1px 0px 0px 0px;border-color:#E6E6E6;padding:40px 0px 45px 0px;}.elementor-8664 .elementor-element.elementor-element-a278104{text-align:center;}.elementor-8664 .elementor-element.elementor-element-a278104 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:22px;font-weight:500;-webkit-text-stroke-color:#000;stroke:#000;color:#000000;}.elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button{background-color:var( --e-global-color-primary );--icon-indent:8px;border-radius:90px 90px 90px 90px;}.elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button:hover, .elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button:focus{background-color:var( --e-global-color-accent );color:#FFFFFF;}.elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button .elementor-button-content-wrapper{gap:8px;}.elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button:hover svg, .elementor-8664 .elementor-element.elementor-element-8f0e1ed .elementor-button:focus svg{fill:#FFFFFF;}@media(max-width:1024px) and (min-width:768px){.elementor-8664 .elementor-element.elementor-element-eb26bd0{width:100%;}}/* Start custom CSS *//* =========================================================
   CODI — Materiais: Portfolio / filtros / títulos
   Classe aplicada ao widget: codi-materiais-portfolio
   ========================================================= */
.elementor-posts-container.elementor-has-item-ratio .elementor-post__thumbnail img {
    left: calc(50% + 0px) !important;
    
    top: calc(50% + 0px) !important;}

/* =========================================================
   FILTROS DO PORTFOLIO
   ========================================================= */

.codi-materiais-portfolio .elementor-portfolio__filters {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-end !important;
  gap: clamp(28px, 4vw, 52px) !important;
  margin: 0 0 32px !important;
  padding: 0 !important;
}

/* Esconder o filtro genérico "Materiais" */
.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="172"] {
  display: none !important;
}

/* Estilo base dos filtros */
.codi-materiais-portfolio .elementor-portfolio__filter {
  position: relative !important;
  margin: 0 !important;
  padding: 5px 3px 8px !important;
  color: #4f4f4f !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  letter-spacing: 0.045em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  opacity: 0.9 !important;

  background-image: linear-gradient(
    90deg,
    rgba(59, 71, 153, 0),
    #3b4799 18%,
    #3b4799 82%,
    rgba(59, 71, 153, 0)
  );
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: 0 2px;

  transition:
    color 180ms ease,
    opacity 180ms ease,
    background-size 220ms ease !important;
}

/* Trocar visualmente "All" por "TODOS" */
.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="__all"] {
  font-size: 0 !important;
}

.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="__all"]::before {
  content: "TODOS";
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  letter-spacing: 0.045em !important;
}

/* Hover — sem salto, só cor e sublinhado fluido */
.codi-materiais-portfolio .elementor-portfolio__filter:hover {
  color: #3b4799 !important;
  opacity: 1 !important;
  background-size: 100% 2px;
}

/* Filtro ativo — limpo, sem fundo */
.codi-materiais-portfolio .elementor-portfolio__filter.elementor-active {
  color: #111d42 !important;
  opacity: 1 !important;
  background-size: 100% 2px;
}

/* Contadores fixos */
.codi-materiais-portfolio .elementor-portfolio__filter::after {
  position: absolute;
  top: -6px;
  right: -11px;
  color: #a5a5a5;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.9;
}

/* Total e categorias */
.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="__all"]::after {
  content: "39";
}

.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="171"]::after {
  content: "23";
}

.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="173"]::after {
  content: "4";
}

.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="174"]::after {
  content: "1";
}

.codi-materiais-portfolio .elementor-portfolio__filter[data-filter="175"]::after {
  content: "11";
}


/* =========================================================
   ITEMS DO PORTFOLIO
   Título/categoria por baixo da imagem
   ========================================================= */


.codi-materiais-portfolio .elementor-post__thumbnail__link {
border: 1px solid #e9ecf1;
}

.codi-materiais-portfolio .elementor-portfolio-item {
  overflow: visible !important;
  padding-bottom: 62px !important;
  margin-bottom: 55px !important;
}

.codi-materiais-portfolio .elementor-post__thumbnail__link {
  overflow: visible !important;
}

/* Mantém overlay absoluto, mas deslocado para baixo da imagem */
.codi-materiais-portfolio .elementor-portfolio-item__overlay,
.codi-materiais-portfolio .elementor-portfolio-item:hover .elementor-portfolio-item__overlay {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  bottom: auto !important;
  height: auto !important;
  min-height: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  background: transparent !important;
  padding: 15px 8px 0 !important;
  pointer-events: none !important;
}

/* Título sempre visível */
.codi-materiais-portfolio .elementor-portfolio-item__title {
  display: block !important;
  margin: 0 !important;
  color: #333333 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  text-align: center !important;
}

/* Categoria técnica por baixo do título */
.codi-materiais-portfolio .elementor-portfolio-item__overlay::after {
  display: block !important;
  margin-top: 8px !important;
  color: #9a9a9a !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

.codi-materiais-portfolio .elementor-portfolio-item.category-fdm .elementor-portfolio-item__overlay::after {
  content: "[ FDM ]";
}

.codi-materiais-portfolio .elementor-portfolio-item.category-polyjet .elementor-portfolio-item__overlay::after {
  content: "[ POLYJET ]";
}

.codi-materiais-portfolio .elementor-portfolio-item.category-saf .elementor-portfolio-item__overlay::after {
  content: "[ SAF ]";
}

.codi-materiais-portfolio .elementor-portfolio-item.category-sla .elementor-portfolio-item__overlay::after {
  content: "[ SLA ]";
}


/* =========================================================
   RESPONSIVO
   ========================================================= */

@media (max-width: 767px) {
  .codi-materiais-portfolio .elementor-portfolio__filters {
    gap: 18px !important;
    margin-bottom: 34px !important;
  }

  .codi-materiais-portfolio .elementor-portfolio__filter {
    font-size: 13px !important;
    padding: 5px 3px 8px !important;
  }

  .codi-materiais-portfolio .elementor-portfolio__filter[data-filter="__all"]::before {
    font-size: 13px !important;
  }

  .codi-materiais-portfolio .elementor-portfolio__filter::after {
    top: -6px;
    right: -8px;
    font-size: 9px;
  }

  .codi-materiais-portfolio .elementor-portfolio-item {
    padding-bottom: 58px !important;
    margin-bottom: 38px !important;
  }

  .codi-materiais-portfolio .elementor-portfolio-item__title {
    font-size: 18px !important;
  }

  .codi-materiais-portfolio .elementor-portfolio-item__overlay::after {
    font-size: 11px !important;
  }
}


/* =========================================================
   HOVER IMAGENS — zoom suave centrado + escurecimento ligeiro
   Corrige possível movimento inicial no carregamento
   ========================================================= */

.codi-materiais-portfolio .elementor-post__thumbnail {
  overflow: hidden !important;
}

.codi-materiais-portfolio .elementor-post__thumbnail img {
  transform: translate(-50%, -50%) scale(1) !important;
  transform-origin: center center !important;
  filter: brightness(100%) !important;
  transition:
    transform 420ms ease,
    filter 320ms ease !important;
}

/* Hover */
.codi-materiais-portfolio .elementor-portfolio-item:hover .elementor-post__thumbnail img {
  transform: translate(-50%, -50%) scale(1.075) !important;
  filter: brightness(99%) !important;
}

@media (prefers-reduced-motion: reduce) {
  .codi-materiais-portfolio .elementor-post__thumbnail img {
    transition: none !important;
  }
}/* End custom CSS */