@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local('Nunito Regular'), local('Nunito-Regular'), url(https://fonts.gstatic.com/s/nunito/v12/XRXV3I6Li01BKofINeaB.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: local('Nunito SemiBold'), local('Nunito-SemiBold'), url(https://fonts.gstatic.com/s/nunito/v12/XRXW3I6Li01BKofA6sKUYevI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: local('Nunito Bold'), local('Nunito-Bold'), url(https://fonts.gstatic.com/s/nunito/v12/XRXW3I6Li01BKofAjsOUYevI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.block-galleryimage-default {
  width: 100%;
}
.block-galleryimage-default .wrapper-gallery-item {
  width: 100%;
  height: 290px;
  margin-bottom: 30px;
  overflow: hidden;
  position: relative;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-galleryimage-default .wrapper-gallery-item {
    height: 255px;
  }
}
.block-galleryimage-default .wrapper-gallery-item:hover .layer-content::after {
  opacity: 1;
  -webkit-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 1, 1);
  transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 1, 1);
}
.block-galleryimage-default .wrapper-gallery-item:hover .layer-content h3,
.block-galleryimage-default .wrapper-gallery-item:hover .layer-content .description {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}
.block-galleryimage-default .wrapper-gallery-item:hover .layer-grey {
  background-color: rgba(0, 0, 0, 0.5);
}
.block-galleryimage-default .wrapper-gallery-item:hover .img-box-service {
  opacity: 0.7;
  -webkit-transform: scale3d(1.05, 1.05, 1);
  transform: scale3d(1.05, 1.05, 1);
}
.block-galleryimage-default .wrapper-gallery-item .img-box-service {
  width: 100%;
  height: 100%;
  webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  opacity: 0.8;
}
.block-galleryimage-default .wrapper-gallery-item .img-box-service div {
  width: 100%;
  height: 100%;
  padding-bottom: calc(100% * 290 / 380);
  position: relative;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-galleryimage-default .wrapper-gallery-item .img-box-service div {
    padding-bottom: calc(100% * 255 / 329);
  }
}
.block-galleryimage-default .wrapper-gallery-item .img-box-service div img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-position: center;
  object-fit: cover;
}
.block-galleryimage-default .wrapper-gallery-item .layer-grey {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: rgba(5, 4, 57, 0.4);
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
}
.block-galleryimage-default .wrapper-gallery-item .layer-content {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  padding: 30px;
}
.block-galleryimage-default .wrapper-gallery-item .layer-content::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  content: '';
  opacity: 0;
  -webkit-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
  transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
}
.block-galleryimage-default .wrapper-gallery-item .layer-content h3 {
  font-size: 24px;
  font-weight: 600;
  line-height: 23px;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding-top: 20%;
  webkit-transform: scale3d(0.8, 0.8, 1);
  transform: scale3d(0.8, 0.8, 1);
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content h3 {
    padding-top: 15%;
    margin-bottom: 0;
  }
}
.block-galleryimage-default .wrapper-gallery-item .layer-content h3 a {
  color: #FFFFFF;
}
.block-galleryimage-default .wrapper-gallery-item .layer-content .description {
  opacity: 0;
  padding: 10px 35px;
  webkit-transform: scale3d(0.8, 0.8, 1);
  transform: scale3d(0.8, 0.8, 1);
  webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
}
@media (min-width: 0) and (max-width: 409px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content .description {
    padding: 10px 10px;
  }
}
@media (min-width: 410px) and (max-width: 599px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content .description {
    padding: 10px 10px;
  }
}
@media (min-width: 600px) and (max-width: 767px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content .description {
    padding: 10px 10px;
  }
}
.block-galleryimage-default .wrapper-gallery-item .layer-content .description p {
  font-size: 15px;
  color: #FFFFFF;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  height: 68px;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 0) and (max-width: 409px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content .description p {
    height: 61px;
  }
}
@media (min-width: 410px) and (max-width: 599px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content .description p {
    height: 61px;
  }
}
@media (min-width: 600px) and (max-width: 767px) {
  .block-galleryimage-default .wrapper-gallery-item .layer-content .description p {
    height: 61px;
  }
}
