@charset "UTF-8";
.scroll-to-bullets a::after {
  display: none !important;
}

.bannerhome {
  position: relative;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .bannerhome .section-content,
  .bannerhome .slider {
    height: 901px !important;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.bannerhome .layer-row-item {
  position: relative;
}
.bannerhome .img-inner img {
  width: 100%;
  height: 901px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media (max-width: 1023px) {
  .bannerhome .img-inner img {
    height: 600px;
  }
}
@media (max-width: 767px) {
  .bannerhome .img-inner img {
    height: 480px;
  }
}
.bannerhome .content-overlay-inner {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  margin: 0 !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bannerhome .content-overlay-inner .col-inner {
  pointer-events: auto;
}
.bannerhome .content-overlay-inner > .col:first-child > .col-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 158px;
  padding-top: 0;
  height: 100%;
}
@media (max-width: 1280px) {
  .bannerhome .content-overlay-inner > .col:first-child > .col-inner {
    padding-left: 80px;
  }
}
@media (max-width: 1023px) {
  .bannerhome .content-overlay-inner > .col:first-child > .col-inner {
    padding-left: 40px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-top: 60px;
  }
}
@media (max-width: 767px) {
  .bannerhome .content-overlay-inner > .col:first-child > .col-inner {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 40px;
  }
}
.bannerhome .content-overlay-inner > .col:last-child > .col-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 100%;
  padding-right: 80px;
}
@media (max-width: 1023px) {
  .bannerhome .content-overlay-inner > .col:last-child > .col-inner {
    display: none;
  }
}
.bannerhome .text-heading h1, .bannerhome .text-heading h2, .bannerhome .text-heading h3 {
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 40px;
  line-height: 49px;
  text-transform: uppercase;
  margin: 0 0 24px 0;
  max-width: 757px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.24%, #DED2AF), color-stop(51.47%, #DBBA82), color-stop(89.71%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13.24%, #DBBA82 51.47%, #CEB899 89.71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: none;
  -webkit-filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}
@media (max-width: 1280px) {
  .bannerhome .text-heading h1, .bannerhome .text-heading h2, .bannerhome .text-heading h3 {
    font-size: 34px;
    line-height: 42px;
  }
}
@media (max-width: 1023px) {
  .bannerhome .text-heading h1, .bannerhome .text-heading h2, .bannerhome .text-heading h3 {
    font-size: 26px;
    line-height: 34px;
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .bannerhome .text-heading h1, .bannerhome .text-heading h2, .bannerhome .text-heading h3 {
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 16px;
  }
}
.bannerhome .text-desc p {
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 32px;
  line-height: 39px;
  color: #ffffff;
  margin: 0;
  max-width: 878px;
}
@media (max-width: 1280px) {
  .bannerhome .text-desc p {
    font-size: 24px;
    line-height: 32px;
  }
}
@media (max-width: 1023px) {
  .bannerhome .text-desc p {
    font-size: 18px;
    line-height: 26px;
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .bannerhome .text-desc p {
    font-size: 14px;
    line-height: 22px;
  }
}
.bannerhome .text-desc {
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .bannerhome .text-desc {
    margin-bottom: 24px;
  }
}
.bannerhome .btn-wrap {
  margin-top: 0;
}
.bannerhome .btn-wrap .btn-consult {
  display: inline-block;
  width: 531px;
  height: 73px;
  line-height: 73px;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 32px;
  color: #072542;
  text-decoration: none;
  border-radius: 47px;
  background: -webkit-gradient(linear, left top, right top, color-stop(-7.53%, #BE9074), color-stop(22.35%, #FFE0C8), color-stop(49.51%, #FFDCC3), color-stop(77.21%, #FFDFC8), color-stop(105.46%, #BD9174));
  background: linear-gradient(90deg, #BE9074 -7.53%, #FFE0C8 22.35%, #FFDCC3 49.51%, #FFDFC8 77.21%, #BD9174 105.46%);
  -webkit-filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  -webkit-transition: -webkit-filter 0.3s ease, -webkit-transform 0.2s ease;
  transition: -webkit-filter 0.3s ease, -webkit-transform 0.2s ease;
  transition: filter 0.3s ease, transform 0.2s ease;
  transition: filter 0.3s ease, transform 0.2s ease, -webkit-filter 0.3s ease, -webkit-transform 0.2s ease;
  pointer-events: auto;
}
.bannerhome .btn-wrap .btn-consult:hover {
  -webkit-filter: drop-shadow(0px 6px 12px rgba(0, 0, 0, 0.4)) brightness(1.05);
          filter: drop-shadow(0px 6px 12px rgba(0, 0, 0, 0.4)) brightness(1.05);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
@media (max-width: 1280px) {
  .bannerhome .btn-wrap .btn-consult {
    width: 420px;
    height: 60px;
    line-height: 60px;
    font-size: 24px;
  }
}
@media (max-width: 1023px) {
  .bannerhome .btn-wrap .btn-consult {
    width: 320px;
    height: 52px;
    line-height: 52px;
    font-size: 18px;
    border-radius: 30px;
  }
}
@media (max-width: 767px) {
  .bannerhome .btn-wrap .btn-consult {
    width: 260px;
    height: 46px;
    line-height: 46px;
    font-size: 15px;
    border-radius: 26px;
  }
}
.bannerhome .image-placeholder-wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.bannerhome .image-placeholder {
  width: 631px;
  height: 496px;
  background: #D9D9D9;
  border-radius: 4px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media (max-width: 1280px) {
  .bannerhome .image-placeholder {
    width: 480px;
    height: 380px;
  }
}
.bannerhome .slider::after,
.bannerhome .img::after {
  content: "";
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(25, 37, 66, 0.86)), color-stop(35%, rgba(23, 42, 77, 0.78)), to(rgba(0, 94, 188, 0)));
  background: linear-gradient(0deg, rgba(25, 37, 66, 0.86) 0%, rgba(23, 42, 77, 0.78) 35%, rgba(0, 94, 188, 0) 100%);
  height: 250px;
  width: 100%;
  position: absolute;
  bottom: 0;
  z-index: 9;
  pointer-events: none;
}
.bannerhome .slider::before {
  content: "";
  background: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0.37)), to(rgba(0, 94, 188, 0)));
  background: linear-gradient(270deg, rgba(255, 255, 255, 0.37) 0%, rgba(0, 94, 188, 0) 100%);
  height: 100%;
  width: 300px;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 9;
  pointer-events: none;
}
.bannerhome .flickity-page-dots {
  position: unset;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  margin: 0 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  counter-reset: dot;
}
@media (min-width: 1024px) {
  .bannerhome .flickity-page-dots {
    bottom: 150px !important;
    position: absolute;
  }
}
.bannerhome .flickity-page-dots .dot {
  counter-increment: dot;
  position: relative;
  width: 37px;
  height: 37px;
  margin: 0;
  border-width: unset !important;
  border-color: transparent !important;
  background: #192542 !important;
  border-radius: 50%;
  opacity: 1;
  cursor: pointer;
}
.bannerhome .flickity-page-dots .dot::after {
  content: "";
  position: absolute;
  inset: 0;
  left: -5px !important;
  top: -3px !important;
  width: 40px;
  height: 40px;
  padding: 3px;
  border-radius: 50%;
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C)) !important;
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%) !important;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.bannerhome .flickity-page-dots .dot::before {
  content: counter(dot);
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  -webkit-text-fill-color: transparent;
  font-family: "SF Pro Display", sans-serif;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.bannerhome .flickity-page-dots .dot.is-selected {
  background: #FFF1B8 !important;
  -webkit-box-shadow: 0 0 20px 10px rgba(255, 241, 184, 0.6), 0 0 40px 20px rgba(255, 241, 184, 0.3);
          box-shadow: 0 0 20px 10px rgba(255, 241, 184, 0.6), 0 0 40px 20px rgba(255, 241, 184, 0.3);
}
.bannerhome .flickity-page-dots .dot.is-selected::before {
  color: #000;
  font-weight: 600;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.bannerhome .flickity-page-dots .dot:hover::before {
  color: #000;
}
.bannerhome .flickity-nav {
  position: absolute;
  bottom: 50px;
}
@media (min-width: 1024px) {
  .bannerhome .flickity-nav {
    bottom: 150px;
  }
}
.bannerhome .flickity-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 12px;
  z-index: 99999;
  width: 100%;
}
.bannerhome .flickity-nav .flickity-page-dots {
  position: unset !important;
}
.bannerhome .flickity-nav .flickity-prev-next-button {
  position: unset;
  margin: 0;
  opacity: 1 !important;
  z-index: 99999;
  border: unset !important;
  border-radius: 100%;
  width: 36px;
}
.bannerhome .flickity-nav .flickity-prev-next-button svg {
  background: #192542 !important;
  border: unset !important;
}
.bannerhome .flickity-nav .flickity-prev-next-button svg path {
  display: none;
}
.bannerhome .flickity-nav .flickity-prev-next-button.previous::before {
  content: "←";
  position: absolute;
  font-size: 30px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  z-index: 999;
  font-family: "SF Pro Display", sans-serif;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.bannerhome .flickity-nav .flickity-prev-next-button.next::before {
  content: "→";
  position: absolute;
  font-size: 30px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  z-index: 999;
  font-family: "SF Pro Display", sans-serif;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.bannerhome .flickity-nav .flickity-prev-next-button * {
  opacity: 1 !important;
}
.bannerhome .flickity-nav .flickity-prev-next-button::after {
  content: "";
  position: absolute;
  inset: 0;
  left: -2px !important;
  top: 0 !important;
  width: 40px;
  height: 40px;
  padding: 3px;
  border-radius: 50%;
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.bannerhome > .flickity-prev-next-button {
  bottom: 150px;
  top: auto;
  margin: 0;
  opacity: 1 !important;
  z-index: 99999;
  border: unset !important;
}
.bannerhome > .flickity-prev-next-button svg {
  background: #192542 !important;
  border: unset !important;
}
.bannerhome > .flickity-prev-next-button svg path {
  display: none;
}
@media (min-width: 1024px) {
  .bannerhome > .flickity-prev-next-button.previous {
    left: 35%;
  }
}
.bannerhome > .flickity-prev-next-button.previous::before {
  content: "←";
  position: absolute;
  font-size: 30px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  z-index: 999;
  font-family: "SF Pro Display", sans-serif;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
@media (min-width: 1024px) {
  .bannerhome > .flickity-prev-next-button.next {
    right: 35%;
  }
}
.bannerhome > .flickity-prev-next-button.next::before {
  content: "→";
  position: absolute;
  font-size: 30px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  z-index: 999;
  font-family: "SF Pro Display", sans-serif;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.bannerhome > .flickity-prev-next-button * {
  opacity: 1 !important;
}
.bannerhome > .flickity-prev-next-button::after {
  content: "";
  position: absolute;
  inset: 0;
  left: -2px !important;
  top: 0 !important;
  width: 40px;
  height: 40px;
  padding: 3px;
  border-radius: 50%;
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #B99645), color-stop(32%, #C6A450), color-stop(40%, #ECD272), color-stop(50%, #F6E996), color-stop(59%, #E5BE55), color-stop(68%, #E1AF3C));
  background: linear-gradient(90deg, #B99645 20%, #C6A450 32%, #ECD272 40%, #F6E996 50%, #E5BE55 59%, #E1AF3C 68%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
@media (max-width: 1023px) {
  .bannerhome .content-overlay-inner {
    position: absolute !important;
    top: 0;
    left: 0;
    height: 100%;
  }
  .bannerhome .content-overlay-inner > .col:first-child > .col-inner {
    padding-top: 50px;
    padding-left: 40px;
    padding-right: 20px;
  }
  .bannerhome .image-placeholder-col {
    display: none;
  }
}
@media (max-width: 767px) {
  .bannerhome .img-inner img {
    height: 480px;
  }
  .bannerhome .content-overlay-inner > .col:first-child > .col-inner {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 30px;
  }
}

.ds-gallery-section {
  position: relative;
  background: radial-gradient(ellipse at 30% 40%, #1a2e4a 0%, #0d1b2e 50%, #080f1c 100%);
  padding: 60px 80px;
  overflow: hidden;
}
.ds-gallery-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='400' height='400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 0;
}
.ds-gallery-section > .row {
  position: relative;
  z-index: 1;
}
.ds-gallery-section .ds-gallery-heading {
  text-align: center;
  margin-bottom: 40px;
}
.ds-gallery-section .ds-gallery-heading h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: clamp(32px, 4vw, 64px);
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.24%, #DED2AF), color-stop(51.47%, #DBBA82), color-stop(89.71%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13.24%, #DBBA82 51.47%, #CEB899 89.71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  -webkit-filter: drop-shadow(6px 4px 17px rgba(0, 0, 0, 0.39)) drop-shadow(24px 18px 30px rgba(0, 0, 0, 0.34));
          filter: drop-shadow(6px 4px 17px rgba(0, 0, 0, 0.39)) drop-shadow(24px 18px 30px rgba(0, 0, 0, 0.34));
  margin: 0;
}
.ds-gallery-section .ds-gallery-grid-wrap {
  display: block;
  width: 100%;
}
.ds-gallery-section .ds-gallery-grid-wrap .ds-gallery-grid {
  width: 100%;
}
.ds-gallery-section .ds-gallery-grid-wrap .ds-gallery-grid .row-inner {
  display: contents;
}
.ds-gallery-section .ds-gallery-grid-wrap .ds-gallery-grid [class*=col_inner] {
  padding: 0 !important;
}
.ds-gallery-section .ds-gallery-item {
  border-radius: 7px;
  overflow: hidden;
  position: relative;
  aspect-ratio: 334/199;
  cursor: pointer;
}
.ds-gallery-section .ds-gallery-item > div {
  border: 1px solid rgba(222, 186, 130, 0.6);
  -webkit-box-shadow: 0 0 20px rgba(222, 186, 130, 0.2);
          box-shadow: 0 0 20px rgba(222, 186, 130, 0.2);
  border-radius: 7px;
}
@media (min-width: 1200px) {
  .ds-gallery-section .ds-gallery-item {
    -ms-flex-preferred-size: 20% !important;
        flex-basis: 20% !important;
    max-width: 20% !important;
  }
}
@media (min-width: 1024px) and (max-width: 1200px) {
  .ds-gallery-section .ds-gallery-item {
    -ms-flex-preferred-size: 25% !important;
        flex-basis: 25% !important;
    max-width: 25% !important;
  }
}
.ds-gallery-section .ds-gallery-item::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 7px;
  border: 1.5px solid rgba(222, 186, 130, 0);
  -webkit-transition: border-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: border-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
  pointer-events: none;
  z-index: 2;
}
.ds-gallery-section .ds-gallery-item:hover .ds-gallery-img img {
  -webkit-transform: scale(1.06);
          transform: scale(1.06);
}
.ds-gallery-section .ds-gallery-item .ds-gallery-img {
  display: block;
  width: 100%;
  height: 100%;
}
.ds-gallery-section .ds-gallery-item .ds-gallery-img .image-wrapper,
.ds-gallery-section .ds-gallery-item .ds-gallery-img figure,
.ds-gallery-section .ds-gallery-item .ds-gallery-img a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 7px;
}
.ds-gallery-section .ds-gallery-item .ds-gallery-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 7px;
}
.ds-gallery-section .ds-gallery-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
  right: 30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  gap: 6px;
  z-index: 10;
}
.ds-gallery-section .ds-gallery-nav .ds-nav-item {
  font-family: "SF Pro Display", "SF Pro", -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 510;
  font-size: 24px;
  line-height: 29px;
  color: rgba(255, 255, 255, 0.7);
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  -webkit-transition: color 0.2s ease, -webkit-transform 0.2s ease;
  transition: color 0.2s ease, -webkit-transform 0.2s ease;
  transition: color 0.2s ease, transform 0.2s ease;
  transition: color 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease;
  display: block;
}
.ds-gallery-section .ds-gallery-nav .ds-nav-item:hover {
  color: #ffffff;
  -webkit-transform: translateX(-4px);
          transform: translateX(-4px);
}
.ds-gallery-section .ds-gallery-nav .ds-nav-item.ds-nav-active {
  font-size: 48px;
  line-height: 57px;
  font-weight: 600;
  color: #F2C67B;
  border: 0.5px solid #ffffff;
  padding: 0 6px;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 60px;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}
.ds-gallery-section .ds-gallery-nav .ds-nav-item.ds-nav-active:hover {
  -webkit-transform: none;
          transform: none;
}
@media (max-width: 1024px) {
  .ds-gallery-section {
    padding: 50px 50px 50px 40px;
  }
  .ds-gallery-section .ds-gallery-grid-wrap .ds-gallery-grid {
    -ms-grid-columns: 1fr 12px 1fr 12px 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }
  .ds-gallery-section .ds-gallery-nav {
    right: 10px;
  }
  .ds-gallery-section .ds-gallery-nav .ds-nav-item {
    font-size: 18px;
  }
  .ds-gallery-section .ds-gallery-nav .ds-nav-item.ds-nav-active {
    font-size: 36px;
    min-width: 46px;
  }
}
@media (max-width: 768px) {
  .ds-gallery-section {
    padding: 40px 20px;
  }
  .ds-gallery-section .ds-gallery-heading {
    margin-bottom: 24px;
  }
  .ds-gallery-section .ds-gallery-grid-wrap .ds-gallery-grid {
    -ms-grid-columns: 1fr 10px 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}
@media (max-width: 480px) {
  .ds-gallery-section {
    padding: 30px 16px;
  }
  .ds-gallery-section .ds-gallery-grid-wrap .ds-gallery-grid {
    -ms-grid-columns: 1fr 8px 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }
}

.ds-danhmuc-section {
  position: relative;
  background-color: #00122e;
  /* Tiêu đề chính */
}
.ds-danhmuc-section .ds-danhmuc-heading h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: clamp(32px, 5vw, 64px);
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 20px;
  /* Gradient từ Figma */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.24%, #DED2AF), color-stop(51.47%, #DBBA82), color-stop(89.71%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13.24%, #DBBA82 51.47%, #CEB899 89.71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  /* Shadow hiệu ứng 3D */
  -webkit-filter: drop-shadow(8px 6px 5.4px rgba(0, 0, 0, 0.47));
          filter: drop-shadow(8px 6px 5.4px rgba(0, 0, 0, 0.47));
}
.ds-danhmuc-section {
  /* Mô tả dự án */
}
.ds-danhmuc-section .ds-danhmuc-desc {
  max-width: 1256px;
  margin: 0 auto 50px;
  margin-bottom: 0 !important;
}
.ds-danhmuc-section .ds-danhmuc-desc p {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: clamp(15px, 1.5vw, 20px);
  line-height: 1.4;
  color: #FFFFFF;
  text-align: center;
  margin-bottom: 0 !important;
}
.ds-danhmuc-section {
  /* Grid Layout */
}
.ds-danhmuc-section .ds-danhmuc-grid {
  max-width: 1700px;
  margin: 0 auto;
}
.ds-danhmuc-section .ds-danhmuc-grid .ds-danhmuc-card .col-inner {
  background: rgba(213, 237, 255, 0.17);
  border: 1px solid rgba(222, 186, 130, 0.25);
  border-radius: 18px;
  padding: 10px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  height: 100%;
  overflow: hidden;
  border-color: #DBBA82;
}
.ds-danhmuc-section .ds-danhmuc-grid .ds-danhmuc-card .col-inner:hover {
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px);
  -webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.5);
          box-shadow: 0 15px 30px rgba(0, 0, 0, 0.5);
}
.ds-danhmuc-section .ds-danhmuc-grid .ds-danhmuc-card .col-inner::after {
  content: "";
  position: absolute;
  top: -10px;
  top: auto;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  bottom: auto;
  background-image: url("../../img/anhsang.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 20;
  height: 20px;
  width: 100px;
  pointer-events: none;
}
.ds-danhmuc-section {
  /* Xử lý hình ảnh */
}
.ds-danhmuc-section .ds-card-img {
  margin-bottom: 0 !important;
}
.ds-danhmuc-section .ds-card-img img {
  width: 100%;
  height: 230px;
  -o-object-fit: cover;
     object-fit: cover;
  border: 1px solid #DBBA82;
  margin-bottom: 0 !important;
  border-radius: 18px !important;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
.ds-danhmuc-section {
  /* Label text dưới ảnh */
}
.ds-danhmuc-section .ds-card-label {
  padding: 15px 10px 5px 10px;
}
.ds-danhmuc-section .ds-card-label p {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.25;
  color: #FFFFFF;
  text-align: center;
  text-transform: uppercase;
  margin: 0;
  letter-spacing: 0.5px;
}
.ds-danhmuc-section {
  /* Hiệu ứng đặc biệt cho thẻ 360 */
}
.ds-danhmuc-section .ds-card-360 .ds-image-wrapper {
  position: relative;
}
.ds-danhmuc-section .ds-card-360 .ds-360-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  pointer-events: none;
}
.ds-danhmuc-section .ds-card-360 .ds-360-overlay p {
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  font-size: clamp(30px, 4vw, 50px);
  color: #FFFFFF;
  text-shadow: 0 0 20px rgba(255, 255, 255, 0.4);
  margin: 0;
}
.ds-danhmuc-section .ds-card-360 .ds-card-img img {
  -webkit-filter: brightness(0.8);
          filter: brightness(0.8);
}
.ds-danhmuc-section {
  /* Responsive */
}
@media (max-width: 1024px) {
  .ds-danhmuc-section .ds-danhmuc-grid {
    padding: 0 15px;
  }
  .ds-danhmuc-section .ds-card-img img {
    height: 200px;
  }
}
@media (max-width: 549px) {
  .ds-danhmuc-section .ds-danhmuc-section {
    padding: 40px 0;
  }
  .ds-danhmuc-section .ds-card-img img {
    height: 180px;
    width: 100%;
  }
  .ds-danhmuc-section .ds-danhmuc-heading h2 {
    font-size: 28px;
  }
}

/* ===================================
   DIGISKY PRODUCTS & SERVICES - STACK VERSION
   Using ux_stack and ux_image_box
   =================================== */
.contact-info-section-digisky {
  position: relative;
  overflow: hidden;
  min-height: 800px;
}
.contact-info-section-digisky .section-bg {
  position: absolute;
  inset: 0;
}
.contact-info-section-digisky .section-bg img.bg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.contact-info-section-digisky .contact-info-top {
  z-index: 99999;
}
.contact-info-section-digisky .contact-info-bottom {
  position: absolute;
  right: 6px;
  z-index: -1;
  bottom: -21px;
  top: auto;
}
.contact-info-section-digisky .section-content {
  position: relative;
  z-index: 2;
}
@media (min-width: 1024px) {
  .contact-info-section-digisky .section-content {
    padding: 120px 0 39px 0;
  }
}
.contact-info-section-digisky .contact-wrapper {
  max-width: 1400px;
  margin: 0 auto;
}
.contact-info-section-digisky .contact-address,
.contact-info-section-digisky .contact-details {
  position: relative;
}
.contact-info-section-digisky .contact-address p,
.contact-info-section-digisky .contact-details p {
  padding-left: 50px;
}
.contact-info-section-digisky .contact-address i,
.contact-info-section-digisky .contact-details i {
  color: #f8f6c5;
  position: absolute;
  left: 0;
  top: 5px;
}
.contact-info-section-digisky .contact-address p,
.contact-info-section-digisky .contact-details p {
  font-family: "SF Pro Display", "SF Pro", sans-serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 1.45;
  margin: 0 0 28px;
}
.contact-info-section-digisky .contact-address a,
.contact-info-section-digisky .contact-address a:hover,
.contact-info-section-digisky .contact-details a,
.contact-info-section-digisky .contact-details a:hover {
  color: white;
}
.contact-info-section-digisky .contact-address span,
.contact-info-section-digisky .contact-details span {
  text-decoration: underline;
}
.contact-info-section-digisky .contact-box-col {
  padding: 45px 60px 45px 60px;
  color: #ffffff;
}
.contact-info-section-digisky .contact-box-col .social-icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.contact-info-section-digisky .contact-box-col .social-icons span {
  margin: 50px 0px 0px 0px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: white;
  font-size: 24px;
  font-weight: normal;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.contact-info-section-digisky .contact-box-col .social-icons .button.icon:hover,
.contact-info-section-digisky .contact-box-col .social-icons .button {
  background-color: #f8f6c5 !important;
  border-color: transparent !important;
  opacity: 1;
  margin-right: 10px;
  -webkit-box-shadow: unset !important;
          box-shadow: unset !important;
  margin-bottom: 0 !important;
}
.contact-info-section-digisky .contact-box-col .social-icons .button.icon:hover i,
.contact-info-section-digisky .contact-box-col .social-icons .button i {
  color: #021c37 !important;
}
.contact-info-section-digisky .contact-box-col .social-icons .facebook {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.contact-info-section-digisky .contact-box-col .social-icons .facebook .icon-facebook {
  position: absolute;
  bottom: -5px;
  top: auto;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 23px;
}
.contact-info-section-digisky .contact-box-col .social-icons .tiktok {
  border-radius: 5px !important;
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
.contact-info-section-digisky .contact-box-col .social-icons .tiktok i {
  font-size: 22px;
}
.contact-info-section-digisky .contact-box-col .social-icons .youtube {
  min-width: auto;
  min-height: auto;
  background: transparent !important;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.contact-info-section-digisky .contact-box-col .social-icons .youtube i {
  color: #f8f6c5 !important;
  font-size: 35px;
}
@media (max-width: 849px) {
  .contact-info-section-digisky .contact-box-col {
    border-radius: 24px;
    padding: 45px 30px 40px;
  }
}
.contact-info-section-digisky .contact-form-box .col-inner::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 28px;
  background: linear-gradient(135deg, rgb(217, 217, 217) 0%, rgba(115, 115, 115, 0) 64%);
  opacity: 0.63;
}
.contact-info-section-digisky .contact-form-box .col-inner {
  padding: 40px;
}
@media (max-width: 849px) {
  .contact-info-section-digisky .contact-form-box .col-inner {
    padding: 20px;
  }
}
.contact-info-section-digisky .contact-form-box .col-inner {
  border-radius: 40px;
  border: 5px solid #ECD681;
}
.contact-info-section-digisky .contact-form-box .form-title {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 48px;
  background: -webkit-gradient(linear, left top, right top, from(#D3C6B4), color-stop(57%, #CEB899));
  background: linear-gradient(90deg, #D3C6B4 0%, #CEB899 57%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  margin-bottom: 30px;
}
.contact-info-section-digisky .contact-form-box .form-group {
  margin-bottom: 20px;
}
.contact-info-section-digisky .contact-form-box .form-group input,
.contact-info-section-digisky .contact-form-box .form-group textarea {
  width: 100%;
  background-color: white !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 15px 30px !important;
  font-family: "Montserrat", sans-serif;
  font-size: 30px;
  color: #898989;
}
.contact-info-section-digisky .contact-form-box .form-group input::-webkit-input-placeholder, .contact-info-section-digisky .contact-form-box .form-group textarea::-webkit-input-placeholder {
  color: #898989;
  font-size: 20px !important;
}
.contact-info-section-digisky .contact-form-box .form-group input::-moz-placeholder, .contact-info-section-digisky .contact-form-box .form-group textarea::-moz-placeholder {
  color: #898989;
  font-size: 20px !important;
}
.contact-info-section-digisky .contact-form-box .form-group input:-ms-input-placeholder, .contact-info-section-digisky .contact-form-box .form-group textarea:-ms-input-placeholder {
  color: #898989;
  font-size: 20px !important;
}
.contact-info-section-digisky .contact-form-box .form-group input::-ms-input-placeholder, .contact-info-section-digisky .contact-form-box .form-group textarea::-ms-input-placeholder {
  color: #898989;
  font-size: 20px !important;
}
.contact-info-section-digisky .contact-form-box .form-group input::placeholder,
.contact-info-section-digisky .contact-form-box .form-group textarea::placeholder {
  color: #898989;
  font-size: 20px !important;
}
.contact-info-section-digisky .contact-form-box .form-group textarea {
  border-radius: 20px !important;
  height: 170px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}
.contact-info-section-digisky .contact-form-box .form-group-btn {
  position: relative;
  margin-top: 50px !important;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
}
.contact-info-section-digisky .contact-form-box .form-group-btn::after {
  content: "→";
  position: absolute;
  top: 50%;
  font-weight: bold;
  font-size: 20px;
  color: #072542 !important;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
  right: 50px;
  left: auto;
  font-family: "SF Pro Display", sans-serif;
}
.contact-info-section-digisky .contact-form-box .form-group-btn input {
  margin-top: 0 !important;
}
.contact-info-section-digisky .contact-form-box p {
  text-align: center;
}
.contact-info-section-digisky .contact-form-box .wpcf7-spinner {
  position: absolute;
}
.contact-info-section-digisky .contact-form-box .form-submit-btn {
  width: 290px;
  margin: 0 auto;
  margin-top: 40px;
  font-family: "SF Pro", sans-serif;
  color: #464646 !important;
  background: -webkit-gradient(linear, left top, right top, from(#DED2AF), color-stop(49%, #DBBA82), to(#CEB899));
  background: linear-gradient(90deg, #DED2AF 0%, #DBBA82 49%, #CEB899 100%);
  border-radius: 23px !important;
  padding: 12px 32px;
  border: none;
  font-size: 24px;
  font-weight: 600;
  cursor: pointer;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  line-height: 1;
}
.contact-info-section-digisky .contact-form-box .form-submit-btn:hover {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.contact-info-section-digisky .contact-title h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 40px;
  /* Optional: tăng độ mượt nếu cần */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.contact-info-section-digisky .contact-title h2 span {
  /* Optional: tăng độ mượt nếu cần */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 48px;
}
.contact-info-section-digisky .contact-title h2 {
  line-height: 1.05;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1%, #DED2AF), color-stop(32%, #DBBA82), color-stop(63%, #DED2AF), to(#CEB899));
  background: linear-gradient(180deg, #DED2AF 1%, #DBBA82 32%, #DED2AF 63%, #CEB899 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  margin: 0 0 30px;
  text-transform: uppercase;
  letter-spacing: -0.5px;
}
.contact-info-section-digisky .contact-location-title p,
.contact-info-section-digisky .contact-contact-title p {
  font-family: "SF Pro Display", "SF Pro", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 1.15;
  margin: 0 0 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.contact-info-section-digisky .contact-location-title p i,
.contact-info-section-digisky .contact-contact-title p i {
  font-size: 42px;
  margin-right: 12px;
  color: #ffffff;
}
.contact-info-section-digisky .btn-contact-newtecons {
  margin-top: 15px;
}
.contact-info-section-digisky .btn-contact-profile {
  margin-bottom: 0px;
}
.contact-info-section-digisky .btn-contact-newtecons,
.contact-info-section-digisky .btn-contact-profile {
  background: -webkit-gradient(linear, left top, right top, from(#DED2AF), color-stop(49%, #DBBA82), to(#CEB899));
  background: linear-gradient(90deg, #DED2AF 0%, #DBBA82 49%, #CEB899 100%);
  color: #072542;
  font-family: "SF Pro Display", sans-serif;
  font-weight: 600;
  font-size: 25px;
  line-height: 1.2;
  border: none;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.contact-info-section-digisky .btn-contact-newtecons:hover,
.contact-info-section-digisky .btn-contact-profile:hover {
  background: #072542 !important;
  color: white;
}
@media (max-width: 849px) {
  .contact-info-section-digisky .btn-contact-newtecons,
  .contact-info-section-digisky .btn-contact-profile {
    font-size: 20px;
    padding: 10px 24px;
  }
}
@media (max-width: 849px) {
  .contact-info-section-digisky {
    min-height: auto;
  }
  .contact-info-section-digisky .contact-box-col {
    width: 100%;
    margin: 0 auto;
    max-width: 90%;
  }
}

.listlogo {
  background: url("image.png") center center no-repeat !important;
  background-size: cover !important;
  position: relative;
  overflow: hidden;
}
.listlogo .listlogo__row {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.listlogo .listlogo__row .col-inner {
  padding: 0 !important;
}
.listlogo .listlogo__row .col {
  width: 50% !important;
  max-width: 50% !important;
  -webkit-box-flex: 50% !important;
      -ms-flex: 50% !important;
          flex: 50% !important;
}
@media (min-width: 768px) {
  .listlogo .listlogo__row .col {
    width: 25% !important;
    max-width: 25% !important;
    -webkit-box-flex: 25% !important;
        -ms-flex: 25% !important;
            flex: 25% !important;
  }
}
@media (min-width: 1024px) {
  .listlogo .listlogo__row .col {
    width: 12.5% !important;
    max-width: 12.5% !important;
    -webkit-box-flex: 12.5% !important;
        -ms-flex: 12.5% !important;
            flex: 12.5% !important;
  }
}
@media (min-width: 1024px) {
  .listlogo .listlogo__number .col {
    width: 20% !important;
    max-width: 20% !important;
    -webkit-box-flex: 20% !important;
        -ms-flex: 20% !important;
            flex: 20% !important;
  }
}
.listlogo::before {
  content: "";
  background: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0.37)), to(rgba(0, 94, 188, 0)));
  background: linear-gradient(270deg, rgba(255, 255, 255, 0.37) 0%, rgba(0, 94, 188, 0) 100%);
  height: 100%;
  width: 350px;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 9;
  pointer-events: none;
}
.listlogo .doi-tac-title h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 64px;
  line-height: 78px;
  text-transform: uppercase;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13%, #DED2AF), color-stop(51%, #DBBA82), color-stop(90%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13%, #DBBA82 51%, #CEB899 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: 8px 6px 5.4px rgba(0, 0, 0, 0.47);
}
.listlogo .ux_image img {
  -webkit-filter: drop-shadow(0px 0px 1px #DBBA82) drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.25)) drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0px 0px 1px #DBBA82) drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.25)) drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}
.listlogo .stat-number {
  font-family: "Inter", sans-serif;
  font-weight: 700;
  line-height: 91px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13%, #DED2AF), color-stop(51%, #DBBA82), color-stop(90%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13%, #DBBA82 51%, #CEB899 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: block;
  margin-bottom: 0;
}
.listlogo .stat-number p {
  margin-bottom: 0;
  font-size: 75px !important;
}
.listlogo .text p {
  font-size: 30px;
}
@media (max-width: 768px) {
  .listlogo .doi-tac-title h2 {
    font-size: 48px;
  }
  .listlogo .stat-number {
    font-size: 52px;
  }
}

/* =============================================
   DIGISKY - ĐA DẠNG LOẠI HÌNH DỰ ÁN
   ============================================= */
.ds-dadang-section {
  position: relative;
  overflow: hidden;
  background: -webkit-gradient(linear, left top, left bottom, from(#0a1428), to(#1a2339));
  background: linear-gradient(180deg, #0a1428 0%, #1a2339 100%);
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  /* ==================== HEADING & DESC ==================== */
}
.ds-dadang-section .ds-dadang-heading {
  text-align: center;
  margin-bottom: 16px;
}
.ds-dadang-section .ds-dadang-heading h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: clamp(32px, 5.2vw, 64px);
  line-height: 1.22;
  text-transform: uppercase;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.24%, #DED2AF), color-stop(51.47%, #DBBA82), color-stop(89.71%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13.24%, #DBBA82 51.47%, #CEB899 89.71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: 8px 6px 5.4px rgba(0, 0, 0, 0.47);
  margin: 0;
}
.ds-dadang-section .ds-dadang-desc {
  text-align: center;
  max-width: 831px;
  margin: 0 auto 48px;
}
.ds-dadang-section .ds-dadang-desc p {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: clamp(16px, 1.6vw, 20px);
  line-height: 1.4;
  color: #ffffff;
  margin: 0;
}
.ds-dadang-section {
  /* ==================== GRID 4 CARDS ==================== */
}
.ds-dadang-section .ds-dadang-grid {
  margin: 0 !important;
}
.ds-dadang-section {
  /* ==================== CARD ==================== */
}
.ds-dadang-section .ds-dadang-card::after {
  content: "";
  position: absolute;
  top: auto;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  bottom: 20px !important;
  background-image: url(../../img/anhsang.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 20;
  height: 20px;
  width: 100px;
  pointer-events: none;
}
.ds-dadang-section .ds-dadang-card > .col-inner {
  background: rgba(10, 20, 40, 0.65);
  border: 3px solid rgba(222, 186, 130, 0.45);
  border-radius: 19px;
  overflow: hidden;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.ds-dadang-section .ds-dadang-card > .col-inner:hover {
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px);
  -webkit-box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);
          box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);
  border-color: rgba(222, 186, 130, 0.7);
}
.ds-dadang-section {
  /* Main Image */
}
.ds-dadang-section .ds-card-main-img {
  border-radius: 19px 19px 0 0;
  overflow: hidden;
  margin-bottom: 5px !important;
}
.ds-dadang-section .ds-card-main-img img {
  width: 100%;
  height: 215px;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
}
.ds-dadang-section .ds-dadang-card:hover .ds-card-main-img img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ds-dadang-section {
  /* Thumbnails Grid */
}
.ds-dadang-section .ds-thumbs-grid {
  margin: 0 !important;
}
.ds-dadang-section .ds-thumb-item {
  padding: 5px !important;
}
.ds-dadang-section .ds-thumb-item .col-inner {
  overflow: hidden;
  position: relative;
  padding: 0;
}
.ds-dadang-section .ds-thumb-item .col-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(98.47% 98.47% at 50% 50%, rgba(217, 217, 217, 0) 32.69%, rgba(255, 161, 78, 0.4) 72%, rgba(255, 146, 67, 0.54) 92%);
  border: 1px solid rgba(255, 236, 204, 0.55);
  opacity: 0.85;
  pointer-events: none;
  z-index: 1;
}
.ds-dadang-section .ds-thumb-item .col-inner img {
  width: 100%;
  height: 102px;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
.ds-dadang-section .ds-thumb-item:hover img {
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}
.ds-dadang-section {
  /* Label */
}
.ds-dadang-section .ds-card-label {
  padding: 0 12px 0 22px;
  text-align: center;
  margin-top: 0px;
  height: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.ds-dadang-section .ds-card-label p {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: clamp(15px, 1.3vw, 24px);
  line-height: 1.35;
  text-transform: uppercase;
  color: #ffffff;
  margin: 0;
}
.ds-dadang-section {
  /* ==================== RESPONSIVE ==================== */
}
@media (max-width: 1024px) {
  .ds-dadang-section .ds-dadang-grid {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
  .ds-dadang-section .ds-card-main-img img {
    height: 190px;
  }
  .ds-dadang-section .ds-thumb-item img {
    height: 88px;
  }
}
@media (max-width: 768px) {
  .ds-dadang-section {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .ds-dadang-section .ds-dadang-grid {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .ds-dadang-section .ds-card-main-img img {
    height: 200px;
  }
  .ds-dadang-section .ds-thumb-item img {
    height: 95px;
  }
}
@media (max-width: 480px) {
  .ds-dadang-section .ds-dadang-desc {
    margin-bottom: 32px;
  }
}

.ds-ecosystem-section {
  position: relative;
  overflow: hidden;
}
.ds-ecosystem-section .ds-title-main h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 40px;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 20px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.24%, #DED2AF), color-stop(51.47%, #DBBA82), color-stop(89.71%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13.24%, #DBBA82 51.47%, #CEB899 89.71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: 8px 6px 5.4px rgba(0, 0, 0, 0.47);
}
@media (min-width: 1024px) {
  .ds-ecosystem-section .ds-title-main h2 {
    font-size: 64px;
    line-height: 78px;
  }
}
.ds-ecosystem-section .ds-description p {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  color: #FFFFFF;
  max-width: 1232px;
  margin: 0 auto 40px;
}
@media (min-width: 1024px) {
  .ds-ecosystem-section .ds-description p {
    font-size: 20px;
  }
}
.ds-ecosystem-section .ds-card-title h3 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.2;
  text-align: center;
  margin-top: 15px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.24%, #DED2AF), color-stop(51.47%, #DBBA82), color-stop(89.71%, #CEB899));
  background: linear-gradient(180deg, #DED2AF 13.24%, #DBBA82 51.47%, #CEB899 89.71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
@media (min-width: 1024px) {
  .ds-ecosystem-section .ds-card-title h3 {
    font-size: 24px;
  }
}
.ds-ecosystem-section .img {
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.ds-ecosystem-section .img:hover {
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}
.ds-ecosystem-section .img .img-inner {
  border-radius: 0 0 0 18px;
  overflow: hidden;
}
.ds-ecosystem-section .img .img-inner img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 849px) {
  .ds-ecosystem-section {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .ds-ecosystem-section .ds-title-main h2 {
    font-size: 28px;
    text-shadow: 4px 3px 3px rgba(0, 0, 0, 0.4);
  }
  .ds-ecosystem-section .row {
    margin-bottom: 0;
  }
  .ds-ecosystem-section .col {
    padding-bottom: 20px;
  }
}