.elementor-1993 .elementor-element.elementor-element-b5c5bda{--display:flex;--min-height:642px;--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:1;}.elementor-1993 .elementor-element.elementor-element-b5c5bda:hover::before, .elementor-1993 .elementor-element.elementor-element-b5c5bda:hover > .elementor-background-video-container::before, .elementor-1993 .elementor-element.elementor-element-b5c5bda:hover > .e-con-inner > .elementor-background-video-container::before, .elementor-1993 .elementor-element.elementor-element-b5c5bda > .elementor-background-slideshow:hover::before, .elementor-1993 .elementor-element.elementor-element-b5c5bda > .e-con-inner > .elementor-background-slideshow:hover::before{--background-overlay:'';}.elementor-1993 .elementor-element.elementor-element-b5c5bda:hover{--overlay-opacity:0.5;}.elementor-1993 .elementor-element.elementor-element-e4092ff{--display:flex;--min-height:400px;--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-1993 .elementor-element.elementor-element-ca92a53{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 80px) 0px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon-wrapper{text-align:center;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon{font-size:112px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon svg{height:112px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon-wrapper svg{width:auto;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1993 .elementor-element.elementor-element-db23dfe{width:var( --container-widget-width, 372px );max-width:372px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 24px) 0px;--container-widget-width:372px;--container-widget-flex-grow:0;text-align:center;}.elementor-1993 .elementor-element.elementor-element-db23dfe .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:36px;font-weight:800;text-transform:uppercase;line-height:40px;letter-spacing:0px;color:#FFFFFF;}.elementor-1993 .elementor-element.elementor-element-77ff58c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-1993 .elementor-element.elementor-element-77ff58c .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:14px;font-weight:300;line-height:22px;letter-spacing:0px;color:#FFFFFF;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1993 .elementor-element.elementor-element-7a87aab{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1993 .elementor-element.elementor-element-7a87aab:hover img{opacity:0.3;}.elementor-1993 .elementor-element.elementor-element-7a87aab img{transition-duration:0.6s;}@media(min-width:768px){.elementor-1993 .elementor-element.elementor-element-b5c5bda{--width:592px;}.elementor-1993 .elementor-element.elementor-element-e4092ff{--width:474px;}}@media(max-width:1024px){.elementor-1993 .elementor-element.elementor-element-b5c5bda{--min-height:500px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1993 .elementor-element.elementor-element-e4092ff{--min-height:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1993 .elementor-element.elementor-element-ca92a53{margin:32px 32px calc(var(--kit-widget-spacing, 0px) + 32px) 32px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon{font-size:60px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon svg{height:60px;}.elementor-1993 .elementor-element.elementor-element-db23dfe{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;}.elementor-1993 .elementor-element.elementor-element-db23dfe .elementor-heading-title{font-size:32px;line-height:32px;}}@media(max-width:767px){.elementor-1993 .elementor-element.elementor-element-b5c5bda{--min-height:400px;--justify-content:center;}.elementor-1993 .elementor-element.elementor-element-e4092ff{--min-height:0px;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1993 .elementor-element.elementor-element-ca92a53{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 32px) 0px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon{font-size:60px;}.elementor-1993 .elementor-element.elementor-element-ca92a53 .elementor-icon svg{height:60px;}.elementor-1993 .elementor-element.elementor-element-db23dfe{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 24px) 0px;}.elementor-1993 .elementor-element.elementor-element-db23dfe .elementor-heading-title{font-size:22px;line-height:24px;letter-spacing:-1.1px;}.elementor-1993 .elementor-element.elementor-element-7a87aab{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for image, class: .elementor-element-7a87aab */.elementor-1993 .elementor-element.elementor-element-7a87aab {
  position: relative;
  width: 592px;
  height: 642px;
  overflow: hidden;
}

.elementor-1993 .elementor-element.elementor-element-7a87aab img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}

/* --- Mobile --- */
@media (max-width: 768px) {
  .elementor-1993 .elementor-element.elementor-element-7a87aab {
    width: 350px;
    height: 100%;
    margin: 0 auto; /* centraliza o widget na tela */
  }

  .elementor-1993 .elementor-element.elementor-element-7a87aab img {
    width: 350px;
    height: 100%;
    object-fit: cover;
    object-position: center center;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b5c5bda *//* --- Desktop (hover ativo) --- */
@media (min-width: 1024px) {
  .project {
    position: relative;
  }

  .project::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0);   /* transparente inicialmente */
    transition: background 0.6s ease;
    z-index: 1;
  }

  .project-content {
    position: absolute;
    bottom: -10%;                  
    width: 475px;
    color: #fff;
    opacity: 0;
    z-index: 2;                     
    transition: all 0.6s ease;
  }

  .project:hover::after {
    background: rgba(0, 0, 0, 0.6); 
  }

  .project:hover .project-content {
    bottom: 40px;                 
    opacity: 1;                    
  }
}

/* --- Mobile (sempre visível, largura 300px) --- */
@media (max-width: 1024px) {
  .project {
      height: 450px;
    position: relative;
  }

  .project::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6); /* já aplica o overlay */
    z-index: 1;
  }

  .project-content {
    position: absolute;
    bottom: 20px;  /* ajusta para ficar dentro do card */
    width: 280px;  /* largura fixa */
    color: #fff;
    opacity: 1;    /* sempre visível */
    z-index: 2;    
  }
}


@media (max-width: 767px) {
  .project {
    position: relative;
  }

  .project::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6); /* já aplica o overlay */
    z-index: 1;
  }

  .project-content {
    position: absolute;
    bottom: 20px;  /* ajusta para ficar dentro do card */
    width: 300px;  /* largura fixa */
    color: #fff;
    opacity: 1;    /* sempre visível */
    z-index: 2;    
  }
}/* End custom CSS */