.elementor-5776 .elementor-element.elementor-element-4696f13{--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;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-5776 .elementor-element.elementor-element-4696f13:not(.elementor-motion-effects-element-type-background), .elementor-5776 .elementor-element.elementor-element-4696f13 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F4F4;}.elementor-5776 .elementor-element.elementor-element-75568c4{--display:flex;--min-height:100vh;--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:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5776 .elementor-element.elementor-element-8db1df7{--display:flex;--min-height:588px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .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-5776 .elementor-element.elementor-element-4052cc7{width:var( --container-widget-width, 46% );max-width:46%;--container-widget-width:46%;--container-widget-flex-grow:0;z-index:3;}.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-5776 .elementor-element.elementor-element-50210f7 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:12px;font-weight:600;letter-spacing:3.3px;color:#5C5C5C;}.elementor-5776 .elementor-element.elementor-element-0a82001{--display:flex;--min-height:588px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5776 .elementor-element.elementor-element-d76dc84{width:var( --container-widget-width, 46% );max-width:46%;--container-widget-width:46%;--container-widget-flex-grow:0;z-index:3;}.elementor-5776 .elementor-element.elementor-element-ac54b82 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:12px;font-weight:600;letter-spacing:3.3px;color:#5C5C5C;}.elementor-5776 .elementor-element.elementor-element-b05325b{--display:flex;--min-height:588px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5776 .elementor-element.elementor-element-cbb13a6{width:var( --container-widget-width, 46% );max-width:46%;--container-widget-width:46%;--container-widget-flex-grow:0;z-index:3;}.elementor-5776 .elementor-element.elementor-element-a4f6c88 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:12px;font-weight:600;letter-spacing:3.3px;color:#5C5C5C;}.elementor-5776 .elementor-element.elementor-element-3655891{--display:flex;--min-height:588px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5776 .elementor-element.elementor-element-3655891:not(.elementor-motion-effects-element-type-background), .elementor-5776 .elementor-element.elementor-element-3655891 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#D8D8D8;}@media(max-width:767px){.elementor-5776 .elementor-element.elementor-element-4696f13{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-5776 .elementor-element.elementor-element-75568c4{--width:310px;}.elementor-5776 .elementor-element.elementor-element-4052cc7{--container-widget-width:122px;--container-widget-flex-grow:0;width:var( --container-widget-width, 122px );max-width:122px;}.elementor-5776 .elementor-element.elementor-element-d76dc84{--container-widget-width:122px;--container-widget-flex-grow:0;width:var( --container-widget-width, 122px );max-width:122px;}.elementor-5776 .elementor-element.elementor-element-cbb13a6{--container-widget-width:122px;--container-widget-flex-grow:0;width:var( --container-widget-width, 122px );max-width:122px;}}@media(min-width:768px){.elementor-5776 .elementor-element.elementor-element-4696f13{--content-width:1500px;}.elementor-5776 .elementor-element.elementor-element-8db1df7{--width:21%;}.elementor-5776 .elementor-element.elementor-element-0a82001{--width:21%;}.elementor-5776 .elementor-element.elementor-element-b05325b{--width:21%;}.elementor-5776 .elementor-element.elementor-element-3655891{--width:23%;}}/* Start custom CSS */.portfolio-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.portfolio-card {
  position: relative;
  overflow: hidden;
  border-radius: 0px;
  padding-top: 30px;
  flex: 1 1 calc(33.333% - 24px);
  min-width: 280px;
  min-height: 620px;

}

/* imagem principal */
.portfolio-card .portfolio-image-main,
.portfolio-card .portfolio-image-main .elementor-widget-container,
.portfolio-card .portfolio-image-main img {
  height: 100%;
}

.portfolio-card .portfolio-image-main {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.portfolio-card .portfolio-image-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


/* logo circular */
.portfolio-card .portfolio-logo-circle {
  position: absolute;
  top: 88%;
  left: 50%;
  z-index: 4;
  transform: translate(-50%, -50%);
  width: 132px;
  height: 132px;
}

.portfolio-card .portfolio-logo-circle .elementor-widget-container {
  width: 100%;
  height: 100%;


  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0px;
  box-shadow: 0 0px 0px rgba(0,0,0,0.20);
}

.portfolio-card .portfolio-logo-circle img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* título */
.portfolio-card .portfolio-title {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 5;
  margin: 0;
}

.portfolio-card .portfolio-title .elementor-heading-title,
.portfolio-card .portfolio-title h1,
.portfolio-card .portfolio-title h2,
.portfolio-card .portfolio-title h3 {
  color: #fff;
  margin: 0;
  font-size: 28px;
  line-height: 1.05;
}

/* categoria vertical */
.portfolio-card .portfolio-category-vertical {
  position: absolute;

  top: 50%;
  z-index: 5;
  transform: translateY(500%) rotate(-90deg);
  transform-origin: left top;
  margin: 0;
}

.portfolio-card .portfolio-category-vertical .elementor-heading-title,
.portfolio-card .portfolio-category-vertical h1,
.portfolio-card .portfolio-category-vertical h2,
.portfolio-card .portfolio-category-vertical h3,
.portfolio-card .portfolio-category-vertical p {
  color: #fff;
  margin: 0;
  white-space: nowrap;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.18em;
}


/* transições gerais */
.portfolio-card {
  transition: filter 0.45s ease, opacity 0.45s ease;
}

/* imagem principal */
.portfolio-card .portfolio-image-main,
.portfolio-card .portfolio-image-main .elementor-widget-container,
.portfolio-card .portfolio-image-main .elementor-widget-container > div,
.portfolio-card .portfolio-image-main .elementor-image {
  overflow: hidden;
}

/* força animação no próprio img e cria folga vertical para ele subir sem parecer cortado */
.portfolio-card .portfolio-image-main img {
  position: relative;
  top: 0;
  width: 100%;
  padding-top: 20px;
  height: calc(100% + 24px);
  max-width: none;
  object-fit: cover;
  transform: none;
  transition: top 0.55s ease 0.08s !important;
  will-change: top;
}

/* texto vertical */
.portfolio-card .portfolio-category-vertical {
  transition: top 0.9s ease, opacity 0.65s ease;
}

/* logo circular */
.portfolio-card .portfolio-logo-circle {
  transition: transform 0.38s ease, opacity 0.38s ease;
}

/* grayscale somente quando houver hover em algum card no desktop */
.portfolio-grid:has(.portfolio-card:hover) .portfolio-card {
  filter: grayscale(100%);
  opacity: 0.72;
}

.portfolio-grid:has(.portfolio-card:hover) .portfolio-card:hover {
  filter: grayscale(0%);
  opacity: 1;
}

/* imagem principal sobe no hover desktop */
.portfolio-card:hover .portfolio-image-main img {
  top: -16px;
  transform: none;
}

/* texto vertical sobe no hover desktop */
.portfolio-card:hover .portfolio-category-vertical {
  top: calc(50% - 20px);
}

/* logo circular cresce no hover desktop */
.portfolio-card:hover .portfolio-logo-circle {
  transform: translate(-50%, -50%) scale(1.04);
}

/* MOBILE */
@media (max-width: 767px) {
  /* mantém todos normais por padrão no touch */
  .portfolio-grid .portfolio-card {
    filter: none;
    opacity: 1;
  }

  /* corrige alinhamento do texto vertical no mobile */
  .portfolio-card .portfolio-category-vertical {
    left: 0px;
    top: %;
    transform: translateY(400%) rotate(-90deg);
    transform-origin: left top;
  }

  /* animações no toque ou foco */
  .portfolio-card:active .portfolio-image-main img,
  .portfolio-card:focus-within .portfolio-image-main img {
    top: -16px;
  }

  .portfolio-card:active .portfolio-category-vertical,
.portfolio-card:focus-within .portfolio-category-vertical {
  top: calc(63% - 5px);
}

  .portfolio-card:active .portfolio-logo-circle,
  .portfolio-card:focus-within .portfolio-logo-circle {
    transform: translate(-50%, -50%) scale(1.04);
  }
}/* End custom CSS */