.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-22728 .elementor-element.elementor-element-0c87947{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-tp-portfolio-details-list .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-tp-portfolio-details-list .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-22728 .elementor-element.elementor-element-cd36b65 .elementor-repeater-item-775ccdb .port-details-icon i{font-size:20px;}.elementor-22728 .elementor-element.elementor-element-cd36b65 .elementor-repeater-item-bac5688 .port-details-icon i{font-size:20px;}.elementor-22728 .elementor-element.elementor-element-cd36b65 .elementor-repeater-item-e114b22 .port-details-icon i{font-size:20px;}.elementor-22728 .elementor-element.elementor-element-cd36b65 .elementor-repeater-item-de3c298 .port-details-icon i{font-size:20px;}.elementor-22728 .elementor-element.elementor-element-cd36b65 > .elementor-widget-container{margin:-90px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-cd36b65 .tp-el-content-subtitle{color:var( --e-global-color-1a58204 );}.elementor-22728 .elementor-element.elementor-element-cd36b65 .tp-el-content-subtitle i::after{background-color:var( --e-global-color-1a58204 );}.elementor-22728 .elementor-element.elementor-element-cd36b65 .tp-el-content-title{background:transparent;-webkit-background-clip:text;-webkit-text-fill-color:#FFFFFF;color:#FFFFFF;}.elementor-22728 .elementor-element.elementor-element-cd36b65 .tp-el-content-info-item{margin-bottom:32px;}.elementor-22728 .elementor-element.elementor-element-cd36b65 .tp-el-content-info-item span{color:var( --e-global-color-secondary );}.elementor-22728 .elementor-element.elementor-element-cd36b65 .tp-el-content-info-item h4{color:var( --e-global-color-text );}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-22728 .elementor-element.elementor-element-3ae281c{--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-widget-media-carousel .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-media-carousel .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-media-carousel .elementor-carousel-image-overlay{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-22728 .elementor-element.elementor-element-80805db.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-22728 .elementor-element.elementor-element-80805db .elementor-main-swiper .swiper-slide{border-width:0px 0px 0px 0px;border-radius:0px;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-80805db .elementor-swiper-button{font-size:20px;}#elementor-lightbox-slideshow-80805db .elementor-video-container{width:100%;}.elementor-22728 .elementor-element.elementor-element-b5652ae{--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-widget-animated-headline .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-animated-headline .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-animated-headline .elementor-headline-plain-text{color:var( --e-global-color-secondary );}.elementor-widget-animated-headline .elementor-headline{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-animated-headline{--dynamic-text-color:var( --e-global-color-secondary );}.elementor-widget-animated-headline .elementor-headline-dynamic-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-animated-headline .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-accent );}.elementor-22728 .elementor-element.elementor-element-674759b{--animation-duration:1200ms;--dynamic-text-color:var( --e-global-color-1a58204 );}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline{text-align:center;font-family:"Abel", Sans-serif;font-weight:600;}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline-plain-text{color:var( --e-global-color-1a58204 );}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline-dynamic-text{font-family:"Anton", Sans-serif;font-weight:300;text-transform:uppercase;z-index:auto;}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline .elementor-headline-dynamic-wrapper{text-shadow:0px 0px 31px rgba(150.4234375, 104.01092859820089, 102.35333899456522, 0.84);}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-secondary );stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline-dynamic-wrapper svg{z-index:2;}.elementor-widget-text-editor .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-22728 .elementor-element.elementor-element-25a34de > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-25a34de{text-align:left;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-22728 .elementor-element.elementor-element-52e4822 > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-52e4822{text-align:left;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-22728 .elementor-element.elementor-element-122d2a3 > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-122d2a3{text-align:left;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-22728 .elementor-element.elementor-element-d1a63a0{--display:flex;}.elementor-widget-theme-post-content .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-theme-post-content .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-theme-post-content{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-22728 .elementor-element.elementor-element-b985f32{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:30px;--padding-bottom:20px;--padding-left:15px;--padding-right:15px;}.elementor-22728 .elementor-element.elementor-element-b985f32:not(.elementor-motion-effects-element-type-background), .elementor-22728 .elementor-element.elementor-element-b985f32 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-22728 .elementor-element.elementor-element-b985f32 > .elementor-shape-bottom .elementor-shape-fill, .elementor-22728 .elementor-element.elementor-element-b985f32 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#FFFFFF;}.elementor-22728 .elementor-element.elementor-element-b985f32 > .elementor-shape-bottom svg, .elementor-22728 .elementor-element.elementor-element-b985f32 > .e-con-inner > .elementor-shape-bottom svg{height:70px;}.elementor-22728 .elementor-element.elementor-element-b985f32 > .elementor-shape-bottom, .elementor-22728 .elementor-element.elementor-element-b985f32 > .e-con-inner > .elementor-shape-bottom{z-index:2;pointer-events:none;}body.elementor-page-22728:not(.elementor-motion-effects-element-type-background), body.elementor-page-22728 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-22728 .elementor-element.elementor-element-80805db.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}}@media(max-width:767px){.elementor-22728 .elementor-element.elementor-element-3ae281c{--margin-top:-27%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-22728 .elementor-element.elementor-element-80805db.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:0px;}.elementor-22728 .elementor-element.elementor-element-80805db{width:100%;max-width:100%;}.elementor-22728 .elementor-element.elementor-element-80805db > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-80805db .elementor-swiper-button{font-size:0px;}.elementor-22728 .elementor-element.elementor-element-b5652ae{--margin-top:-4vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22728 .elementor-element.elementor-element-674759b > .elementor-widget-container{margin:-4vw 0vw 0vw 0vw;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-674759b{z-index:10;}.elementor-22728 .elementor-element.elementor-element-674759b .elementor-headline{font-size:3rem;}.elementor-22728 .elementor-element.elementor-element-25a34de > .elementor-widget-container{margin:0vw 5vw 0vw 5vw;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-25a34de{z-index:0;text-align:center;}.elementor-22728 .elementor-element.elementor-element-52e4822 > .elementor-widget-container{margin:0vw 5vw 0vw 5vw;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-52e4822{text-align:center;}.elementor-22728 .elementor-element.elementor-element-122d2a3 > .elementor-widget-container{margin:0vw 5vw 0vw 5vw;padding:0px 0px 0px 0px;}.elementor-22728 .elementor-element.elementor-element-122d2a3{text-align:center;}.elementor-22728 .elementor-element.elementor-element-b68bdfb > .elementor-widget-container{margin:0px 0px 20px 0px;}}/* Start custom CSS for tp-portfolio-details-list, class: .elementor-element-cd36b65 */ul {
  list-style-position: inside;   /* bullets inline with text */
  margin: 0;
  padding: 0;
}

ul li {
  text-indent: -1em;  /* pulls first line left */
  padding-left: 1em;  /* pushes wrapped lines back so they align */
}
/* ACT TITLE: stop single-word breaks (scoped to this element only) */
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title,
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title .act-title{
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  white-space: normal !important;
}

/* If the theme is using flex wrappers that allow wrapping, kill that here */
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title,
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title *{
  flex-wrap: nowrap !important;
}

/* If letters are being wrapped in spans/divs, force them to behave as one word */
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title .act-title,
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title .act-title *{
  display: inline-block !important;
  white-space: nowrap !important;
}
.elementor-22728 .elementor-element.elementor-element-cd36b65 .project-details-1-title .act-title{
  font-size: clamp(34px, 6vw, 70px) !important; /* tweak min/max if needed */
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-80805db *//* ===== Media Carousel: show FULL image (no crop) + keep top aligned ===== */

/* 1) Make slides auto-height and prevent odd stretching */
.elementor-22728 .elementor-element.elementor-element-80805db .elementor-main-swiper,
.elementor-22728 .elementor-element.elementor-element-80805db .swiper,
.elementor-22728 .elementor-element.elementor-element-80805db .swiper-wrapper,
.elementor-22728 .elementor-element.elementor-element-80805db .swiper-slide {
  height: auto !important;
}

/* 2) The Media Carousel uses a DIV with background-image */
.elementor-22728 .elementor-element.elementor-element-80805db .elementor-carousel-image{
  width: 100%;
  height: auto !important;

  /* Keep the whole image visible */
  background-size: contain !important;
  background-position: top center !important;
  background-repeat: no-repeat !important;

  /* Keep a consistent aspect ratio (700x492) so the carousel expands correctly */
  aspect-ratio: 700 / 492;

  /* Bottom 10% fade (90% solid -> 0% at bottom) */
  -webkit-mask-image: linear-gradient(to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 90%,
    rgba(0,0,0,0) 100%
  );
  mask-image: linear-gradient(to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 90%,
    rgba(0,0,0,0) 100%
  );
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

/* 3) If your carousel ever outputs real <img> tags too, handle those as well */
.elementor-22728 .elementor-element.elementor-element-80805db .swiper-slide img{
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: top center;

  /* optional: apply same fade to <img> too */
  -webkit-mask-image: linear-gradient(to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 90%,
    rgba(0,0,0,0) 100%
  );
  mask-image: linear-gradient(to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 90%,
    rgba(0,0,0,0) 100%
  );
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}/* End custom CSS */
/* Start custom CSS *//* If the shadow is coming from a background overlay */
.elementor-element-9acd350 > .e-con-inner,
.elementor-element-9acd350 .elementor-background-overlay {
    box-shadow: none !important;
    filter: none !important;
}
body .body-overlay.opened {
    display: none !important;
    pointer-events: none !important;
}/* End custom CSS */