.elementor-6545 .elementor-element.elementor-element-959c43c{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-6545 .elementor-element.elementor-element-959c43c:not(.elementor-motion-effects-element-type-background), .elementor-6545 .elementor-element.elementor-element-959c43c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF00;}.elementor-6545 .elementor-element.elementor-element-8301b6d img{width:20%;}.elementor-6545 .elementor-element.elementor-element-b6c7686{width:100%;max-width:100%;text-align:center;}.elementor-6545 .elementor-element.elementor-element-b6c7686 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:65px;letter-spacing:-5px;}.elementor-6545 .elementor-element.elementor-element-c031300{width:var( --container-widget-width, 55% );max-width:55%;--container-widget-width:55%;--container-widget-flex-grow:0;text-align:center;font-size:17px;}.elementor-6545 .elementor-element.elementor-element-c031300.elementor-element{--align-self:center;}.elementor-6545 .elementor-element.elementor-element-40e23a0.elementor-element{--align-self:center;}.elementor-6545 .elementor-element.elementor-element-5707043{--display:flex;}.elementor-6545 .elementor-element.elementor-element-99e7ecc.elementor-element{--align-self:center;}.elementor-6545 .elementor-element.elementor-element-ae72161{--display:flex;--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:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-6545 .elementor-element.elementor-element-dfb082e{--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;}.elementor-6545 .elementor-element.elementor-element-e84a629{--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;--justify-content:center;}.elementor-6545 .elementor-element.elementor-element-a760ca7{width:100%;max-width:100%;text-align:start;}.elementor-6545 .elementor-element.elementor-element-a760ca7 > .elementor-widget-container{margin:25px 25px 0px 25px;}.elementor-6545 .elementor-element.elementor-element-a760ca7 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:22px;font-weight:400;letter-spacing:-2.3px;color:#A0A0A0;}.elementor-6545 .elementor-element.elementor-element-c1a80ad{width:100%;max-width:100%;text-align:start;}.elementor-6545 .elementor-element.elementor-element-c1a80ad > .elementor-widget-container{margin:0px 25px 50px 25px;}.elementor-6545 .elementor-element.elementor-element-c1a80ad .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:44px;letter-spacing:-2.7px;}.elementor-6545 .elementor-element.elementor-element-6afe8d0{width:100%;max-width:100%;text-align:start;font-size:17px;}.elementor-6545 .elementor-element.elementor-element-6afe8d0 > .elementor-widget-container{margin:0px 25px 25px 25px;}.elementor-6545 .elementor-element.elementor-element-6afe8d0.elementor-element{--align-self:center;}.elementor-6545 .elementor-element.elementor-element-0e25ec2{--display:flex;}.elementor-6545 .elementor-element.elementor-element-a889d83{width:100%;max-width:100%;text-align:center;}.elementor-6545 .elementor-element.elementor-element-a889d83 > .elementor-widget-container{margin:25px 25px 0px 25px;}.elementor-6545 .elementor-element.elementor-element-a889d83 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:22px;font-weight:400;letter-spacing:-2.3px;color:#A0A0A0;}.elementor-6545 .elementor-element.elementor-element-bef33ac{width:100%;max-width:100%;text-align:center;}.elementor-6545 .elementor-element.elementor-element-bef33ac > .elementor-widget-container{margin:0px 25px 50px 25px;}.elementor-6545 .elementor-element.elementor-element-bef33ac .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:44px;letter-spacing:-2.7px;}.elementor-6545 .elementor-element.elementor-element-b24a35e > .elementor-widget-container{margin:50px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-6f98d24{--display:flex;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6545 .elementor-element.elementor-element-66077b0{width:100%;max-width:100%;text-align:center;}.elementor-6545 .elementor-element.elementor-element-66077b0 > .elementor-widget-container{margin:0px 25px 50px 25px;}.elementor-6545 .elementor-element.elementor-element-66077b0.elementor-element{--align-self:flex-end;}.elementor-6545 .elementor-element.elementor-element-66077b0 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:43px;letter-spacing:-2.7px;}.elementor-6545 .elementor-element.elementor-element-23f4375{--display:flex;}.elementor-6545 .elementor-element.elementor-element-1412e2f{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:10px 10px;--row-gap:10px;--column-gap:10px;--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-9d40bc1 > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-9d40bc1{text-align:start;}.elementor-6545 .elementor-element.elementor-element-9d40bc1 .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-15a8105 > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-15a8105{text-align:start;}.elementor-6545 .elementor-element.elementor-element-15a8105 .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-5c58fe0 > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-5c58fe0{text-align:start;}.elementor-6545 .elementor-element.elementor-element-5c58fe0 .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-759039c{--display:flex;}.elementor-6545 .elementor-element.elementor-element-9adf64a{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:10px 10px;--row-gap:10px;--column-gap:10px;--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-0b754ff > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-0b754ff{text-align:start;}.elementor-6545 .elementor-element.elementor-element-0b754ff img{opacity:1;}.elementor-6545 .elementor-element.elementor-element-0b754ff .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-4a2e584 > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-4a2e584{text-align:start;}.elementor-6545 .elementor-element.elementor-element-4a2e584 img{opacity:1;}.elementor-6545 .elementor-element.elementor-element-4a2e584 .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-44ac8d2{--display:flex;}.elementor-6545 .elementor-element.elementor-element-094aaf3{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:10px 10px;--row-gap:10px;--column-gap:10px;--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-f90ee8b > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-f90ee8b{text-align:start;}.elementor-6545 .elementor-element.elementor-element-f90ee8b .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-5286193 > .elementor-widget-container{border-style:none;}.elementor-6545 .elementor-element.elementor-element-5286193{text-align:start;}.elementor-6545 .elementor-element.elementor-element-5286193 .widget-image-caption{font-family:"Poppins", Sans-serif;font-weight:300;font-style:normal;}.elementor-6545 .elementor-element.elementor-element-1befd95{--display:flex;}.elementor-6545 .elementor-element.elementor-element-be2ccbb{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-3ed583d{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-color:#000000;--n-tabs-title-color-active:#FFFFFF;}.elementor-6545 .elementor-element.elementor-element-3ed583d > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected='false']:not( :hover ){background:#F7F7F7;}.elementor-6545 .elementor-element.elementor-element-3ed583d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#FF5A00;background-color:transparent;background-image:linear-gradient(180deg, #FF5A00 0%, #FF7208 100%);}.elementor-6545 .elementor-element.elementor-element-3ed583d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-6545 .elementor-element.elementor-element-3ed583d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#FF5A00;background-color:transparent;background-image:linear-gradient(180deg, #FF5A00 0%, #FF7208 100%);}:where( .elementor-6545 .elementor-element.elementor-element-3ed583d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-content ) > .e-con{background-color:#FFFFFF00;border-style:none;}.elementor-6545 .elementor-element.elementor-element-3ed583d > .elementor-widget-container{border-radius:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-3ed583d [data-touch-mode="false"] .e-n-tab-title[aria-selected="false"]:hover{--n-tabs-title-color-hover:#FFFFFF;}.elementor-6545 .elementor-element.elementor-element-cb03047{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4{width:100%;max-width:100%;text-align:start;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4 > .elementor-widget-container{margin:0px 25px 50px 25px;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4.elementor-element{--align-self:flex-end;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:43px;letter-spacing:-2.7px;}.elementor-6545 .elementor-element.elementor-element-c34219e > .elementor-widget-container{margin:50px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-65f830d > .elementor-widget-container{margin:50px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-4a6d78a > .elementor-widget-container{margin:50px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-2983521{--display:flex;}.elementor-6545 .elementor-element.elementor-element-5def59a{--display:flex;}.elementor-6545 .elementor-element.elementor-element-9de4b3e > .elementor-widget-container{margin:100px 100px 100px 100px;}:root{--page-title-display:none;}body.elementor-page-6545{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(max-width:1024px){.elementor-6545 .elementor-element.elementor-element-1412e2f{--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-9adf64a{--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-094aaf3{--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-be2ccbb{--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-cb03047{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-6545 .elementor-element.elementor-element-8301b6d img{width:54%;}.elementor-6545 .elementor-element.elementor-element-b6c7686 > .elementor-widget-container{margin:0px 20px 0px 20px;}.elementor-6545 .elementor-element.elementor-element-b6c7686{text-align:center;}.elementor-6545 .elementor-element.elementor-element-b6c7686 .elementor-heading-title{font-size:32px;letter-spacing:-2.6px;}.elementor-6545 .elementor-element.elementor-element-c031300 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-c031300{--container-widget-width:295px;--container-widget-flex-grow:0;width:var( --container-widget-width, 295px );max-width:295px;text-align:center;}.elementor-6545 .elementor-element.elementor-element-dfb082e{--margin-top:20px;--margin-bottom:20px;--margin-left:20px;--margin-right:20px;}.elementor-6545 .elementor-element.elementor-element-e84a629{--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;--justify-content:center;--margin-top:15px;--margin-bottom:15px;--margin-left:15px;--margin-right:15px;}.elementor-6545 .elementor-element.elementor-element-a760ca7 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-a760ca7{text-align:center;}.elementor-6545 .elementor-element.elementor-element-c1a80ad > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-c1a80ad{text-align:center;}.elementor-6545 .elementor-element.elementor-element-c1a80ad .elementor-heading-title{font-size:28px;letter-spacing:-2px;}.elementor-6545 .elementor-element.elementor-element-6afe8d0 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-6afe8d0{text-align:center;}.elementor-6545 .elementor-element.elementor-element-0e25ec2{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6545 .elementor-element.elementor-element-a889d83 > .elementor-widget-container{margin:15px 15px 0px 15px;}.elementor-6545 .elementor-element.elementor-element-bef33ac > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-bef33ac{text-align:center;}.elementor-6545 .elementor-element.elementor-element-bef33ac .elementor-heading-title{font-size:28px;letter-spacing:-2px;}.elementor-6545 .elementor-element.elementor-element-b24a35e > .elementor-widget-container{margin:20px 20px 20px 20px;}.elementor-6545 .elementor-element.elementor-element-66077b0 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-66077b0{text-align:center;}.elementor-6545 .elementor-element.elementor-element-66077b0 .elementor-heading-title{font-size:28px;letter-spacing:-2px;}.elementor-6545 .elementor-element.elementor-element-1412e2f{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-6545 .elementor-element.elementor-element-9adf64a{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-6545 .elementor-element.elementor-element-094aaf3{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-6545 .elementor-element.elementor-element-be2ccbb{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-6545 .elementor-element.elementor-element-3ed583d{--n-tabs-heading-wrap:nowrap;--n-tabs-heading-overflow-x:scroll;--n-tabs-title-white-space:nowrap;--n-tabs-title-border-radius:15px 15px 15px 15px;}.elementor-6545 .elementor-element.elementor-element-cb03047{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4{text-align:center;}.elementor-6545 .elementor-element.elementor-element-1cd6fe4 .elementor-heading-title{font-size:28px;letter-spacing:-2px;}}@media(min-width:768px){.elementor-6545 .elementor-element.elementor-element-dfb082e{--width:50%;}.elementor-6545 .elementor-element.elementor-element-e84a629{--width:50%;}}/* Start custom CSS for html, class: .elementor-element-e996ef1 */.bg-design {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  overflow: hidden;
  z-index: -1;
}

/* GRID SUAVE */
.bg-design::before {
  content: "";
  position: absolute;
  width: 200%;
  height: 200%;
  background-image: 
    linear-gradient(rgba(255, 77, 0, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 77, 0, 0.05) 1px, transparent 1px);
  background-size: 70px 70px;
  animation: gridMove 25s linear infinite;
  top: -50%;
  left: -50%;
}

/* GLOW LARANJA PREMIUM */
.bg-design::after {
  content: "";
  position: absolute;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255, 77, 0, 0.12), transparent 70%);
  top: 30%;
  left: 70%;
  transform: translate(-50%, -50%);
  filter: blur(90px);
}

/* ANIMAÇÃO SUAVE */
@keyframes gridMove {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(70px, 70px);
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b6c7686 */.gradient-text {
  background: linear-gradient(90deg, #FF4D00, #FF8A00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-aec05fd */.image-wrapper {
  position: relative;
  display: inline-block;
  border-radius: 20px;
  overflow: visible; /* importante pra badge sair */
}

/* IMAGEM */
.image-wrapper img {
  display: block;
  width: 100%;
  border-radius: 20px;
}

/* BADGE REDONDA */
.badge-circle {
  position: absolute;
  top: -25px;
  right: -25px;

  width: 110px;
  height: 110px;
  border-radius: 50%;

  background: linear-gradient(135deg, #ff4d00, #ff7a00);

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  color: #fff;
  text-align: center;

  font-family: 'Poppins', sans-serif;

  box-shadow:
    0 15px 35px rgba(255, 77, 0, 0.35),
    inset 0 2px 6px rgba(255,255,255,0.25);

  transition: all 0.4s ease;
}

/* TEXTO */
.badge-circle span {
  font-size: 1.9rem;
  font-weight: 600;
  line-height: 1;
}

.badge-circle small {
  font-size: 0.7rem;
  opacity: 0.9;
  line-height: 1.2;
}

/* HOVER PREMIUM */
.image-wrapper:hover .badge-circle {
  transform: rotate(-8deg) scale(1.1);
  box-shadow:
    0 25px 50px rgba(255, 77, 0, 0.45),
    inset 0 2px 8px rgba(255,255,255,0.35);
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a760ca7 */.gradient-text {
  background: linear-gradient(90deg, #FF4D00, #FF8A00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c1a80ad */.gradient-text {
  background: linear-gradient(90deg, #FF4D00, #FF8A00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-bef33ac */.gradient-text {
  background: linear-gradient(90deg, #FF4D00, #FF8A00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-66077b0 */.gradient-text {
  background: linear-gradient(90deg, #FF4D00, #FF8A00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-15a8105 *//* ===== GRID ===== */
.portfolio-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-10px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
        transform 0.7s cubic-bezier(.22,.61,.36,1),
        filter 0.5s ease;
}

.portfolio-img:hover img {
    transform: scale(1.05); /* leve zoom premium */
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.95) 20%,
        rgba(10,0,0,0.55) 80%,
        rgba(100,20,20,0.4) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::after {
    opacity: 0.25;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 60%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::before {
    opacity: 1;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {
    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.1px;
    margin-bottom: 6px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.85;
    margin-bottom: 10px;
}

/* ===== LINHA PREMIUM (hover) ===== */
.portfolio-img figcaption::after,
.portfolio-img .elementor-widget-container p::after {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background: #FF4D00;
    margin-top: 8px;

    transition: width .5s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5c58fe0 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-0b754ff *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-4a2e584 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5286193 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-15a8105 *//* ===== GRID ===== */
.portfolio-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-10px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
        transform 0.7s cubic-bezier(.22,.61,.36,1),
        filter 0.5s ease;
}

.portfolio-img:hover img {
    transform: scale(1.05); /* leve zoom premium */
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.95) 20%,
        rgba(10,0,0,0.55) 80%,
        rgba(100,20,20,0.4) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::after {
    opacity: 0.25;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 60%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::before {
    opacity: 1;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {
    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.1px;
    margin-bottom: 6px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.85;
    margin-bottom: 10px;
}

/* ===== LINHA PREMIUM (hover) ===== */
.portfolio-img figcaption::after,
.portfolio-img .elementor-widget-container p::after {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background: #FF4D00;
    margin-top: 8px;

    transition: width .5s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5c58fe0 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-0b754ff *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-4a2e584 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5286193 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-15a8105 *//* ===== GRID ===== */
.portfolio-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-10px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
        transform 0.7s cubic-bezier(.22,.61,.36,1),
        filter 0.5s ease;
}

.portfolio-img:hover img {
    transform: scale(1.05); /* leve zoom premium */
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.95) 20%,
        rgba(10,0,0,0.55) 80%,
        rgba(100,20,20,0.4) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::after {
    opacity: 0.25;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 60%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::before {
    opacity: 1;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {
    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.1px;
    margin-bottom: 6px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.85;
    margin-bottom: 10px;
}

/* ===== LINHA PREMIUM (hover) ===== */
.portfolio-img figcaption::after,
.portfolio-img .elementor-widget-container p::after {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background: #FF4D00;
    margin-top: 8px;

    transition: width .5s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5c58fe0 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-0b754ff *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-4a2e584 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5286193 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-15a8105 *//* ===== GRID ===== */
.portfolio-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-10px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
        transform 0.7s cubic-bezier(.22,.61,.36,1),
        filter 0.5s ease;
}

.portfolio-img:hover img {
    transform: scale(1.05); /* leve zoom premium */
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.95) 20%,
        rgba(10,0,0,0.55) 80%,
        rgba(100,20,20,0.4) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::after {
    opacity: 0.25;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 60%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::before {
    opacity: 1;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {
    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.1px;
    margin-bottom: 6px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.85;
    margin-bottom: 10px;
}

/* ===== LINHA PREMIUM (hover) ===== */
.portfolio-img figcaption::after,
.portfolio-img .elementor-widget-container p::after {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background: #FF4D00;
    margin-top: 8px;

    transition: width .5s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5c58fe0 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-0b754ff *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-4a2e584 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5286193 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-15a8105 *//* ===== GRID ===== */
.portfolio-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-10px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
        transform 0.7s cubic-bezier(.22,.61,.36,1),
        filter 0.5s ease;
}

.portfolio-img:hover img {
    transform: scale(1.05); /* leve zoom premium */
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.95) 20%,
        rgba(10,0,0,0.55) 80%,
        rgba(100,20,20,0.4) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::after {
    opacity: 0.25;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 60%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;

    pointer-events: none; /* 🔥 CORREÇÃO DO CLICK */
}

.portfolio-img:hover::before {
    opacity: 1;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {
    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.1px;
    margin-bottom: 6px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.85;
    margin-bottom: 10px;
}

/* ===== LINHA PREMIUM (hover) ===== */
.portfolio-img figcaption::after,
.portfolio-img .elementor-widget-container p::after {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background: #FF4D00;
    margin-top: 8px;

    transition: width .5s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5c58fe0 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-0b754ff *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-4a2e584 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5286193 *//* ===== GRID ===== */
.portfolio-column {
    display:flex;
    flex-direction:column;
    gap:20px;
}

/* ===== CARD ===== */
.portfolio-img {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    z-index: 0;

    transition: transform .4s cubic-bezier(.22,.61,.36,1);
}

.portfolio-img:hover {
    transform: translateY(-6px);
}

/* ===== IMAGEM ===== */
.portfolio-img img {
    width: 100%;
    display: block;
    border-radius: 10px;

    transition: 
    transform 0.7s cubic-bezier(.22,.61,.36,1),
    filter 0.5s ease;
}

.portfolio-img:hover img 
    filter: brightness(0.6) contrast(1.1);
}

/* ===== OVERLAY PRETO PREMIUM ===== */
.portfolio-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.15) 20%,
        rgba(0,0,0,0.55) 20%,
        rgba(0,0,0,0.85) 100%
    );

    opacity: 0;
    transition: .5s cubic-bezier(.22,.61,.36,1);
    z-index: 1;
}

.portfolio-img:hover::after {
    opacity: 0.1;
}

/* ===== BRILHO PRETO (PROFUNDIDADE) ===== */
.portfolio-img::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;

    background: radial-gradient(
        circle at 10% 100%,
        rgba(0,0,0,0.35),
        transparent 75%
    );

    opacity: 0;
    transition: .6s cubic-bezier(.22,.61,.36,1);
    z-index: 0;
}

.portfolio-img:hover::before {
    opacity: 0;
}

/* ===== TEXTO ===== */
.portfolio-img figcaption,
.portfolio-img .elementor-widget-container p {

    position: absolute;
    bottom: 40px;
    left: 30px;
    color: #FFF;
    opacity: 0;
    transform: translateY(20px);

    transition: all .6s cubic-bezier(.22,.61,.36,1);

    z-index: 3;
}

/* ===== TÍTULO ===== */
.portfolio-img figcaption strong,
.portfolio-img .elementor-widget-container p strong {
    display: block;
    color: #FF4D00;
    font-size: 16px;
    font-weight: 600;
   
    letter-spacing: 0.1px;
}

/* ===== DESCRIÇÃO ===== */
.portfolio-img figcaption span,
.portfolio-img .elementor-widget-container p span {
    display: block;
    font-size: 15px;
    opacity: 0.8;
    
}


/* crescer no hover */
.portfolio-img:hover figcaption::after,
.portfolio-img:hover .elementor-widget-container p::after {
    width: 100%;
}

/* ===== ENTRADA SUAVE ===== */
.portfolio-img:hover figcaption,
.portfolio-img:hover .elementor-widget-container p {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1cd6fe4 */.gradient-text {
  background: linear-gradient(90deg, #FF4D00, #FF8A00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c34219e */.icon-box{
  position:relative;
  padding:32px;
  border-radius:18px;
  background:#fff;
  border:1px solid #eee;
  transition:all .35s ease;
  overflow:hidden;
}

/* glow de fundo */
.icon-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(255,90,0,0.08), transparent 60%);
  opacity:0;
  transition:opacity .4s ease;
}

/* hover geral */
.icon-box:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,0,0.3);
  box-shadow:0 20px 60px rgba(0,0,0,0.08);
}

.icon-box:hover::before{
  opacity:1;
}

/* ÍCONE */
.icon-box-icon{
  width:56px;
  height:56px;
  border-radius:14px;
  background:#f7f7f7;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  transition:all .35s ease;
}

.icon-box-icon svg{
  color:#666;
  transition:.3s;
}

.icon-box:hover .icon-box-icon{
  background:rgba(255,90,0,0.1);
  transform:scale(1.05);
}

.icon-box:hover .icon-box-icon svg{
  color:#FF5A00;
}

/* TEXTO */
.icon-box-title{
  font-size:22px;
  font-weight:500;
  margin-bottom:8px;
  letter-spacing:-0.02em;
}

.icon-box-desc{
  font-size:14px;
  color:#666;
  line-height:1.6;
}

/* linha animada */
.icon-box-line{
  position:absolute;
  bottom:0;
  left:0;
  height:2px;
  width:0;
  background:#FF5A00;
  transition:width .4s ease;
}

.icon-box:hover .icon-box-line{
  width:100%;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-65f830d */.icon-box{
  position:relative;
  padding:32px;
  border-radius:18px;
  background:#fff;
  border:1px solid #eee;
  transition:all .35s ease;
  overflow:hidden;
}

/* glow de fundo */
.icon-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(255,90,0,0.08), transparent 60%);
  opacity:0;
  transition:opacity .4s ease;
}

/* hover geral */
.icon-box:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,0,0.3);
  box-shadow:0 20px 60px rgba(0,0,0,0.08);
}

.icon-box:hover::before{
  opacity:1;
}

/* ÍCONE */
.icon-box-icon{
  width:56px;
  height:56px;
  border-radius:14px;
  background:#f7f7f7;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  transition:all .35s ease;
}

.icon-box-icon svg{
  color:#666;
  transition:.3s;
}

.icon-box:hover .icon-box-icon{
  background:rgba(255,90,0,0.1);
  transform:scale(1.05);
}

.icon-box:hover .icon-box-icon svg{
  color:#FF5A00;
}

.icon-box-title{
  font-size:25px;
  font-weight:500;
  margin-bottom:8px;
  letter-spacing:-0.02em;

  background:linear-gradient(90deg,#FF5A00,#FF8C40);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.icon-box-desc{
  font-size:14px;
  color:#666;
  line-height:1.6;
}

/* linha animada */
.icon-box-line{
  position:absolute;
  bottom:0;
  left:0;
  height:2px;
  width:0;
  background:#FF5A00;
  transition:width .4s ease;
}

.icon-box:hover .icon-box-line{
  width:100%;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a6d78a */.icon-box{
  position:relative;
  padding:32px;
  border-radius:18px;
  background:#fff;
  border:1px solid #eee;
  transition:all .35s ease;
  overflow:hidden;
}

/* glow de fundo */
.icon-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(255,90,0,0.08), transparent 60%);
  opacity:0;
  transition:opacity .4s ease;
}

/* hover geral */
.icon-box:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,0,0.3);
  box-shadow:0 20px 60px rgba(0,0,0,0.08);
}

.icon-box:hover::before{
  opacity:1;
}

/* ÍCONE */
.icon-box-icon{
  width:56px;
  height:56px;
  border-radius:14px;
  background:#f7f7f7;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  transition:all .35s ease;
}

.icon-box-icon svg{
  color:#666;
  transition:.3s;
}

.icon-box:hover .icon-box-icon{
  background:rgba(255,90,0,0.1);
  transform:scale(1.05);
}

.icon-box:hover .icon-box-icon svg{
  color:#FF5A00;
}

.icon-box-title{
  font-size:25px;
  font-weight:500;
  margin-bottom:8px;
  letter-spacing:-0.02em;

  background:linear-gradient(90deg,#FF5A00,#FF8C40);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.icon-box-desc{
  font-size:14px;
  color:#666;
  line-height:1.6;
}

/* linha animada */
.icon-box-line{
  position:absolute;
  bottom:0;
  left:0;
  height:2px;
  width:0;
  background:#FF5A00;
  transition:width .4s ease;
}

.icon-box:hover .icon-box-line{
  width:100%;
}/* End custom CSS */