.elementor .e-daafc78{flex-direction:row;text-align: center;
padding: 52px 20px 34px;
position: relative;

& .elementor-heading-title {
display: inline-block;
position: relative;
margin: 0;
color: #123f5d;
font-size: clamp(38px, 5vw, 64px);
font-weight: 800;
line-height: 1.08;
letter-spacing: -1.8px;
text-transform: capitalize;
text-shadow: 0 8px 28px rgba(26, 103, 153, .12);
}

& .elementor-heading-title::before {
content: "OUR WORK";
display: block;
margin-bottom: 12px;
color: #1e88e5;
font-size: 13px;
font-weight: 800;
line-height: 1;
letter-spacing: 4px;
text-transform: uppercase;
text-shadow: none;
}

& .elementor-heading-title::after {
content: "";
display: block;
width: 78px;
height: 5px;
margin: 18px auto 0;
background: linear-gradient(90deg, #1e88e5 0%, #57c7f3 100%);
border-radius: 999px;
box-shadow: 0 6px 18px rgba(30, 136, 229, .28);
}

@media (max-width: 767px) {
padding: 34px 14px 24px;
& .elementor-heading-title {
  font-size: 36px;
  line-height: 1.15;
  letter-spacing: -1px;
}
& .elementor-heading-title::before {
  margin-bottom: 10px;
  font-size: 11px;
  letter-spacing: 3px;
}
& .elementor-heading-title::after {
  width: 62px;
  height: 4px;
  margin-top: 14px;
}
}\n}.elementor .e-357a399{flex-direction:row;selector {
--gallery-gap: 18px;
padding: 40px 24px 56px;
background: linear-gradient(145deg, #f7fbff 0%, #ffffff 55%, #eef8ff 100%);
border: 1px solid rgba(30, 136, 229, 0.10);
border-radius: 28px;
box-shadow: 0 18px 55px rgba(23, 74, 110, 0.08);
}

selector .ngg-galleryoverview {
display: grid !important;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: var(--gallery-gap);
width: 100% !important;
margin: 0 !important;
clear: both !important;
}

selector .ngg-gallery-thumbnail-box {
float: none !important;
width: 100% !important;
margin: 0 !important;
}

selector .ngg-gallery-thumbnail {
width: 100% !important;
padding: 0 !important;
overflow: hidden;
background: #ffffff;
border: 1px solid rgba(20, 91, 140, 0.10) !important;
border-radius: 18px;
box-shadow: 0 10px 28px rgba(25, 83, 120, 0.12);
transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

selector .ngg-gallery-thumbnail a {
display: block;
position: relative;
overflow: hidden;
border-radius: 17px;
}

selector .ngg-gallery-thumbnail a::after {
content: "";
position: absolute;
inset: 0;
pointer-events: none;
background: linear-gradient(180deg, transparent 55%, rgba(5, 45, 72, .30) 100%);
opacity: 0;
transition: opacity .35s ease;
}

selector .ngg-gallery-thumbnail img {
display: block !important;
width: 100% !important;
height: 230px !important;
margin: 0 !important;
padding: 0 !important;
border: 0 !important;
object-fit: cover;
transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}

selector .ngg-gallery-thumbnail:hover {
transform: translateY(-7px);
border-color: rgba(30, 136, 229, .28) !important;
box-shadow: 0 20px 42px rgba(19, 82, 126, .20);
}

selector .ngg-gallery-thumbnail:hover img {
transform: scale(1.07);
filter: saturate(1.06) contrast(1.03);
}

selector .ngg-gallery-thumbnail:hover a::after {
opacity: 1;
}

@media (max-width: 1024px) {
selector .ngg-galleryoverview {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@media (max-width: 767px) {
selector {
  padding: 24px 14px 36px;
  border-radius: 20px;
}
selector .ngg-galleryoverview {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
selector .ngg-gallery-thumbnail {
  border-radius: 14px;
}
selector .ngg-gallery-thumbnail a {
  border-radius: 13px;
}
selector .ngg-gallery-thumbnail img {
  height: 180px !important;
}
}

@media (max-width: 480px) {
selector .ngg-galleryoverview {
  grid-template-columns: 1fr;
}
selector .ngg-gallery-thumbnail img {
  height: 240px !important;
}
}--gallery-gap: 18px;
padding: 40px 24px 56px;
background: linear-gradient(145deg, #f7fbff 0%, #ffffff 55%, #eef8ff 100%);
border: 1px solid rgba(30, 136, 229, 0.10);
border-radius: 28px;
box-shadow: 0 18px 55px rgba(23, 74, 110, 0.08);

& .ngg-galleryoverview {
display: grid !important;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: var(--gallery-gap);
width: 100% !important;
margin: 0 !important;
clear: both !important;
}

& .ngg-gallery-thumbnail-box {
float: none !important;
width: 100% !important;
margin: 0 !important;
}

& .ngg-gallery-thumbnail {
width: 100% !important;
padding: 0 !important;
overflow: hidden;
background: #ffffff;
border: 1px solid rgba(20, 91, 140, 0.10) !important;
border-radius: 18px;
box-shadow: 0 10px 28px rgba(25, 83, 120, 0.12);
transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

& .ngg-gallery-thumbnail a {
display: block;
position: relative;
overflow: hidden;
border-radius: 17px;
}

& .ngg-gallery-thumbnail a::after {
content: "";
position: absolute;
inset: 0;
pointer-events: none;
background: linear-gradient(180deg, transparent 55%, rgba(5, 45, 72, .30) 100%);
opacity: 0;
transition: opacity .35s ease;
}

& .ngg-gallery-thumbnail img {
display: block !important;
width: 100% !important;
height: 230px !important;
margin: 0 !important;
padding: 0 !important;
border: 0 !important;
object-fit: cover;
transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}

& .ngg-gallery-thumbnail:hover {
transform: translateY(-7px);
border-color: rgba(30, 136, 229, .28) !important;
box-shadow: 0 20px 42px rgba(19, 82, 126, .20);
}

& .ngg-gallery-thumbnail:hover img {
transform: scale(1.07);
filter: saturate(1.06) contrast(1.03);
}

& .ngg-gallery-thumbnail:hover a::after {
opacity: 1;
}

@media (max-width: 1024px) {
& .ngg-galleryoverview {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@media (max-width: 767px) {
padding: 24px 14px 36px;
border-radius: 20px;
& .ngg-galleryoverview {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
& .ngg-gallery-thumbnail img {
  height: 180px !important;
}
}

@media (max-width: 480px) {
& .ngg-galleryoverview {
  grid-template-columns: 1fr;
}
& .ngg-gallery-thumbnail img {
  height: 240px !important;
}
}\n}