.elementor-11758 .elementor-element.elementor-element-68e393d{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-11758 .elementor-element.elementor-element-9d2748d{--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:flex-start;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11758 .elementor-element.elementor-element-249aa39{--display:flex;--min-height:400px;--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;--overflow:hidden;--overlay-opacity:0.7;--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-11758 .elementor-element.elementor-element-249aa39::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .elementor-background-video-container::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .e-con-inner > .elementor-background-video-container::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .elementor-background-slideshow::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .e-con-inner > .elementor-background-slideshow::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-11758 .elementor-element.elementor-element-249aa39:hover::before, .elementor-11758 .elementor-element.elementor-element-249aa39:hover > .elementor-background-video-container::before, .elementor-11758 .elementor-element.elementor-element-249aa39:hover > .e-con-inner > .elementor-background-video-container::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .elementor-background-slideshow:hover::before, .elementor-11758 .elementor-element.elementor-element-249aa39 > .e-con-inner > .elementor-background-slideshow:hover::before{--background-overlay:'';}.elementor-11758 .elementor-element.elementor-element-249aa39:hover{--overlay-opacity:0.7;}.elementor-11758 .elementor-element.elementor-element-751b676{text-align:center;}.elementor-11758 .elementor-element.elementor-element-751b676 img{width:100%;height:400px;object-fit:cover;object-position:center center;}.elementor-11758 .elementor-element.elementor-element-61dd1b3{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11758 .elementor-element.elementor-element-46f6b44 .elementor-icon-wrapper{text-align:center;}.elementor-11758 .elementor-element.elementor-element-46f6b44.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-6abf06e7 );}.elementor-11758 .elementor-element.elementor-element-46f6b44.elementor-view-framed .elementor-icon, .elementor-11758 .elementor-element.elementor-element-46f6b44.elementor-view-default .elementor-icon{color:var( --e-global-color-6abf06e7 );border-color:var( --e-global-color-6abf06e7 );}.elementor-11758 .elementor-element.elementor-element-46f6b44.elementor-view-framed .elementor-icon, .elementor-11758 .elementor-element.elementor-element-46f6b44.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-6abf06e7 );}.elementor-11758 .elementor-element.elementor-element-46f6b44 .elementor-icon{font-size:25px;}.elementor-11758 .elementor-element.elementor-element-46f6b44 .elementor-icon svg{height:25px;}.elementor-11758 .elementor-element.elementor-element-3fa9694{--display:flex;}.elementor-11758 .elementor-element.elementor-element-6ee19f4{text-align:center;}@media(max-width:767px){.elementor-11758 .elementor-element.elementor-element-249aa39{--min-height:300px;}}/* Start custom CSS for container, class: .elementor-element-9d2748d *//* ===== Portfolio Card (Jevelin-style hover) ===== */
.portfolio-card{
  position: relative;
  overflow: hidden;
  transform: translateZ(0); /* smoother animations */
}

/* If your background is set on the container (Elementor classic bg),
   this gives a subtle zoom effect by scaling the overlay tint + icon layer.
   For true image zoom, use an <img> element (optional block further below). */
.portfolio-card{
  transition: transform .35s ease;
}

/* Gradient + blur overlay */
.portfolio-card::after{
  content:"";
  position:absolute;
  inset:0;
  opacity:0;
  transition: opacity .28s ease;
  /* Jevelin-ish blue overlay with a touch of depth */
  background:
    radial-gradient(120% 120% at 30% 25%, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 45%),
    linear-gradient(135deg, rgba(68,86,255,.72) 0%, rgba(34,54,210,.62) 45%, rgba(18,28,110,.55) 100%);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  z-index: 1;
}

.portfolio-card:hover::after{
  opacity:1;
}

/* Icon overlay layer (centered) */
.portfolio-overlay-icon{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transform: translateY(10px) scale(.92);
  transition: opacity .22s ease, transform .28s ease;
  pointer-events:none;
  z-index: 2; /* above overlay tint */
}

/* Show + bounce-ish */
.portfolio-card:hover .portfolio-overlay-icon{
  opacity:1;
  transform: translateY(0) scale(1);
  pointer-events:auto;
}

/* Icon button styling + glow */
.portfolio-overlay-icon .elementor-icon{
  background: rgba(255,255,255,.96);
  border-radius: 999px;
  width: 56px;
  height: 56px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:
    0 10px 25px rgba(0,0,0,.18),
    0 0 0 6px rgba(255,255,255,.10); /* soft halo ring */
  transition: transform .18s ease, box-shadow .18s ease;
}

/* Micro “pop” on hover (when you hover the icon itself) */
.portfolio-overlay-icon .elementor-icon:hover{
  transform: scale(1.06);
  box-shadow:
    0 14px 32px rgba(0,0,0,.22),
    0 0 0 8px rgba(255,255,255,.12);
}

/* Optional: animate icon in (small bounce) */
@keyframes portfolioIconPop {
  0%   { transform: translateY(12px) scale(.88); }
  60%  { transform: translateY(-2px) scale(1.03); }
  100% { transform: translateY(0) scale(1); }
}
.portfolio-card:hover .portfolio-overlay-icon{
  animation: portfolioIconPop .38s ease both;
}

/* Make sure Elementor's full-card overlay link stays clickable */
.portfolio-card .jet-engine-listing-overlay-link{
  position:absolute;
  inset:0;
  z-index: 3; /* above everything */
}

/* But keep the icon visible above the link (so it doesn't get "covered") */
.portfolio-overlay-icon{
  z-index: 4;
  pointer-events:none; /* still okay since whole card is the link */
}

/* Optional: title spacing */
.portfolio-card + .elementor-element,
.portfolio-card .elementor-heading-title{
  margin-top: 12px;
}/* End custom CSS */