:root { --swiper-theme-color:#ffffff; }
body, div, span, header, footer, nav, section, aside, article, ul, dl, dt, dd, li, a, p, h1, h2, h3, h4, h5, h6, i, b, textarea, button, input, select, figure, figcaption {
  padding:0;
  margin:0;
  list-style:none;
  font-style:normal;
  text-decoration:none !important;
  border:none;
  color:#333333;
  font-weight:normal;
  box-sizing:border-box;
  scrollbar-width:none;
}
::-webkit-scrollbar-track {
  -webkit-box-shadow:inset 0 0 1px rgba(0,0,0,0);
  border-radius:10px;
  background-color:#f5f5f5;
}
::-webkit-scrollbar-thumb {
  border-radius:10px;
  -webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.3);
  background-color:#555555;
}
video::-webkit-media-controls { display:none !important; }
input[type="button"], input[type="submit"], input[type="search"], input[type="text"], input[type="tel"], input[type="email"], input[type="reset"] { -webkit-appearance:none; }
textarea { -webkit-appearance:none; }
html, body { width:100%; }
.clear:after {
  content:'';
  display:block;
  clear:both;
}
.clear { zoom:1; }
.back_img {
  background-repeat:no-repeat;
  background-size:100% 100%;
}
.margin { margin:0 auto; }
.fl { float:left; }
.fr { float:right; }
.hide { display:none; }
.show { display:block; }
.ellipsis {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.paddingTop { padding-top:1.95rem; }
.animation_opactiy { animation:backOpacity 2s ease-in-out infinite; }
.btn-default { text-shadow:none !important; }
@keyframes backOpacity {
  0% {
    opacity:1;
  }
  25% {
    opacity:.5;
  }
  50% {
    opacity:1;
  }
  75% {
    opacity:.5;
  }
  100% {
    opacity:1;
  }
}
.row.no-gutter {
  margin-left:0;
  margin-right:0;
}
.row.no-gutter [class*='col-'] {
  padding-right:0;
  padding-left:0;
}
html {
  background:#ffffff !important;
  line-height:normal;
}
html, body {
  overscroll-behavior:none;
  width:100vw;
  overflow-x:hidden;
}
.fixedPage { position:fixed; }
.container { padding:0 !important; }
.hoverPurple { color:#dd62ff; }
.darkGreen { color:#17352e; }
.tcGreen { color:#713580; }
.darkGrey { color:#c1c8c7; }
.lightGrey { color:#f3f5f4; }
.black { color:#000000; }
.fff { color:#ffffff; }
.textCenter { text-align:center; }
.textLeft { text-align:left; }
.fs5426 { font-size:50px; }
.fs544026 { font-size:50px; }
.fs5434 { font-size:50px; }
.fs4426 { font-size:44px; }
.fs3121 { font-size:31px; }
.fs544426 { font-size:50px; }
.fs544444 { font-size:50px; }
.fs202214 { font-size:18px; }
.fs2214 { font-size:20px; }
.fs222014 { font-size:20px; }
.fs483621 { font-size:48px; }
.fs3621 { font-size:34px; }
.fs36 { font-size:34px; }
.fs3626 { font-size:34px; }
.fs362826 { font-size:34px; }
.fs3628 { font-size:34px; }
.fs362614 { font-size:34px; }
.fs1814 { font-size:18px; }
.fs2414 { font-size:22px; }
.fs2014 { font-size:18px; }
.fs24 { font-size:22px; }
.fs2420 { font-size:22px; }
.mb4020 { margin-bottom:40px; }
.mb4010 { margin-bottom:40px; }
.mb80 { margin-bottom:80px; }
.mb100 { margin-bottom:100px; }
.mb10080 { margin-bottom:100px; }
.mb1008040 { margin-bottom:100px; }
.mb8040 { margin-bottom:80px; }
.mb8020 { margin-bottom:80px; }
.mb802020 { margin-bottom:80px; }
.mb800 { margin-bottom:80px; }
.mb6020 { margin-bottom:60px; }
.mb16080 { margin-bottom:160px; }
.mb20 { margin-bottom:18px; }
.mb10 { margin-bottom:10px; }
.width80 {
  width:80%;
  margin-left:10%;
  margin-right:10%;
}
.width85 {
  width:85%;
  margin-left:7.5%;
  margin-right:7.5%;
}
.background-card-overlay {
  position:absolute;
  width:0;
  height:0;
  top:0;
  left:0;
}
.showDesktop { display:block; }
.showTablet { display:block; }
.showMobile { display:none; }
.hiddenDesktop { display:none; }
.hiddenTablet { display:none; }
.hiddenMobile { display:block; }
.textContentpadding { padding:0 22.36364%; }
.maxcontent {
  max-width:1562px;
  margin:0 auto;
}
.bannerTextSection, #ourPeoplePage, .contentTextSection, #not_found { margin-top:90px; }
#header .nav>li>a { padding:0; }
.animated {
  -webkit-animation-fill-mode:none !important;
  animation-fill-mode:none !important;
}
.overOneLine {
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
}
.overTwoLine {
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.overThreeLine {
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
}
.overFiveLine {
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
}
.nav>li>a:hover, .nav>li>a:focus { background-color:transparent; }
@media (max-width:767px) {
  .fs5426 { font-size:26px; }
  .fs544026 { font-size:26px; }
  .fs544426 { font-size:26px; }
  .fs544444 { font-size:44px; }
  .fs4426 { font-size:26px; }
  .fs3626 { font-size:26px; }
  .fs362826 { font-size:26px; }
  .fs3628 { font-size:28px; }
  .fs483621 { font-size:21px; }
  .fs362614 { font-size:14px; }
  .fs3121 { font-size:21px; }
  .fs5434 { font-size:34px; }
  .fs2014 { font-size:14px; }
  .fs2214 { font-size:14px; }
  .fs222014 { font-size:14px; }
  .fs202214 { font-size:14px; }
  .fs3621 { font-size:21px; }
  .fs1814 { font-size:14px; }
  .fs2414 { font-size:14px; }
  .fs2420 { font-size:18px; }
  .mb4020 { margin-bottom:18px; }
  .mb4010 { margin-bottom:10px; }
  .mb10080 { margin-bottom:80px; }
  .mb1008040 { margin-bottom:40px; }
  .mb8040 { margin-bottom:40px; }
  .mb8020 { margin-bottom:18px; }
  .mb802020 { margin-bottom:18px; }
  .mb800 { margin-bottom:0; }
  .mb6020 { margin-bottom:18px; }
  .mb16080 { margin-bottom:80px; }
  .showMobile { display:block; }
  .hiddenMobile { display:none; }
  .showDesktop, .showTablet { display:none; }
  .hiddenDesktop, .hiddenTablet { display:block; }
  .textContentpadding { padding:0 10%; }
  .bannerTextSection, #ourPeoplePage, .contentTextSection, #not_found { margin-top:70px; }
}
@media (min-width: 768px) and (max-width:1024px) {
  .fs544426 { font-size:44px; }
  .fs544026 { font-size:40px; }
  .fs544444 { font-size:44px; }
  .fs362826 { font-size:28px; }
  .fs362614 { font-size:26px; }
  .fs483621 { font-size:34px; }
  .fs202214 { font-size:20px; }
  .fs222014 { font-size:18px; }
  .mb1008040 { margin-bottom:80px; }
  .mb802020 { margin-bottom:18px; }
  .showTablet { display:block; }
  .showDesktop { display:none; }
  .hiddenMobile { display:block; }
  .hiddenDesktop { display:block; }
}
#homePage { width:100%; }
#homePage .topBanner { position:relative; }
#homePage .topBanner .img {
  width:100%;
  height:100vh;
  overflow:hidden;
}
#homePage .topBanner .img img {
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover;
}
#homePage .topBanner .text {
  position:absolute;
  top:0;
  left:0;
  z-index:5;
}
#homePage .topBanner .text .textCompontent .container .top { display:none; }
#homePage .topBanner .text .textCompontent .container .title { color:#ffffff; }
#homePage .topBanner .text .textCompontent .container .description {
  color:#ffffff;
  max-width:600px;
}
#homePage .topBanner .text .readMore span {
  color:#F6D3E1;
  margin-right:5px;
  font-weight:600;
  vertical-align:middle;
}
#homePage .topBanner .text .readMore img {
  width:30px;
  vertical-align:bottom;
  transition:margin-left 0.4s;
}
#homePage .topBanner .text .readMore .readmoreimg {
  display:inline-block;
  transition:all 0.3s linear;
}
#homePage .topBanner .text .readMore .readmoreimg svg { vertical-align:middle; }
#homePage .topBanner .text .readMore .readmoreimg svg path { fill:#F6D3E1; }
#homePage .topBanner .text .readMore a { height:30px; }
#homePage .topBanner .text .readMore a:hover .readmoreimg { margin-left:10px; }
#homePage .topBanner .centerLeftText {
  top:60%;
  left:10%;
  transform:translate(0,-50%);
}
#homePage .imgtextSection .imgtextComponent .left {
  position:relative;
  max-height:500px;
}
#homePage .imgtextSection .imgtextComponent .left img { position:absolute; }
#homePage .textSection {
  width:100%;
  padding:0 109px;
}
#homePage .imgHoverSection2 .content {
  width:100%;
  overflow:hidden;
}
#homePage .imgHoverSection2 .content .item {
  width:calc(33.333333333333%);
  float:left;
}
#homePage .ourClientSection .swiper-container {
  width:100%;
  height:auto;
  margin-left:auto;
  margin-right:auto;
}
#homePage .ourClientSection .swiper-slide {
  text-align:center;
  font-size:18px;
  background:#ffffff;
  border:solid 1px rgba(151,151,151,0.25);
  background-color:#ffffff;
  display:-webkit-box;
  display:-ms-flexbox;
  display:-webkit-flex;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  -webkit-justify-content:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  -webkit-align-items:center;
  align-items:center;
  max-width:188px;
  margin-top:15px;
}
#homePage .ourClientSection .swiper-slide .img {
  display:inline-block;
  width:100%;
  height:0;
  padding-bottom:100%;
}
#homePage .ourClientSection .swiper-slide .img img {
  width:90%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  filter:grayscale(100%);
}
#homePage .ourClientSection .swiper-slide .img:hover img { filter:grayscale(0); }
#homePage .ourClientSection .swiper-pagination {
  position:unset;
  margin-top:20px;
}
#homePage .ourClientSection .swiper-pagination .swiper-pagination-bullet {
  width:12px;
  height:12px;
  margin-right:16px;
  outline:none;
  background:#713580;
  opacity:.2;
}
#homePage .ourClientSection .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { opacity:1; }
#homePage .ourClientSection .content {
  width:90%;
  margin:0 auto;
  padding:0;
  max-width:1222px;
}
#homePage .ourClientSection .textCompontent { max-width:1222px; }
#homePage .imgCarouselSection .background-card-overlay {
  width:100%;
  height:100%;
  background:#17352e;
  opacity:.7;
}
@media (max-width:767px) {
  #homePage .topBanner .centerLeftText {
    left:5%;
    bottom:15%;
    top:unset;
    transform:unset;
    width:90%;
  }
  #homePage .topBanner .text .tpoText { margin-bottom:40px; }
  #homePage .topBanner .text .textCompontent .container .description { width:90%; }
  #homePage .topBanner .text .readMore svg {
    width:20px;
    height:20px;
  }
  #homePage .imgtextSection { margin-bottom:0; }
  #homePage .imgtextSection .imgtextComponent .left { display:none; }
  #homePage .imgtextSection .imgtextComponent .left img { position:unset; }
  #homePage .imgtextSection .imgtextComponent .right .text { padding:0 30px 80px; }
  #homePage .imgtextSection .imgtextComponent .right .text .top { display:block; }
  #homePage .textSection { padding:0 25px; }
  #homePage .imgHoverSection .content .item { width:100%; }
  #homePage .ourClientSection .content {
    width:100%;
    padding:0 0 0 25px;
  }
  #homePage .ourClientSection .swiper-slide .img img { filter:grayscale(0); }
  #homePage .ourClientSection .swiper-pagination { margin-top:10px; }
  #homePage .ourClientSection .swiper-pagination .swiper-pagination-bullet {
    width:8px;
    height:8px;
    margin-right:8px;
  }
  #homePage .homeService.imgHoverGreenSection .textCompontent .description { display:none; }
}
.bannerContainer {
  position:relative;
  width:100%;
  height:100%;
}
.bannerItemWrap {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  min-height:933px;
}
.bannerItemWrap svg {
  width:100%;
  height:100%;
}
.bannerItemWrap.road img {
  z-index:1;
  animation-name:road-animate;
  animation-duration:2s;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  transform-origin:right top;
  animation-delay:1.5s;
  opacity:0;
  transform:rotate(2deg);
  top:-5%;
}
.bannerItemWrap.area svg {
  z-index:1;
  animation-name:road-animate;
  animation-duration:2s;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  transform-origin:right top;
  animation-delay:1.5s;
  opacity:0;
  transform:rotate(2deg);
}
.bannerItemWrap.dots svg {
  z-index:1;
  animation-name:dot-animate;
  animation-duration:2s;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  transform-origin:right top;
  animation-delay:3.5s;
  opacity:0;
  transform:rotate(0deg);
}
#dots1 {
  animation-name:dots-animate2;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  animation-duration:3s;
  animation-delay:1s;
}
#dots2 {
  animation-name:dots-animate2;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  animation-duration:3s;
  animation-delay:2s;
}
#dots3 {
  animation-name:dots-animate2;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  animation-duration:3s;
  animation-delay:3s;
}
#circles {
  animation-name:area-animate2;
  animation-iteration-count:1;
  animation-fill-mode:forwards;
  animation-duration:3s;
  animation-delay:3s;
}
@media (min-width: 768px) and (max-width:1024px) {
  #homePage .topBanner .centerLeftText {
    left:5%;
    top:65%;
  }
  #homePage .topBanner .text .textCompontent .container .description { width:70%; }
  #homePage .imgtextSection .imgtextComponent .left img { position:unset; }
  #homePage .textSection { padding:0; }
  #homePage .textSection .textCompontent {
    width:70%;
    margin:0 auto;
  }
  #homePage .imgCarouselSection .textCompontent {
    width:75%;
    margin:0 auto;
  }
  #homePage .imgHoverSection .content .item { width:50%; }
}
@media (min-width: 1900px) {
  #homePage .topBanner .centerLeftText { left:calc((100vw - 1562px + 240px) / 2); }
}
@media (max-width:1440px) {
  .bannerItemWrap {
    width:1440px;
    height:100%;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
  }
}
@keyframes dot-animate {
  0% {
    opacity:0;
  }
  100% {
    opacity:1;
  }
}
@keyframes dots-animate2 {
  0% {
    fill:rgba(104,138,113,0);
  }
  100% {
    fill:rgba(104,138,113,1);
  }
}
@keyframes area-animate2 {
  0% {
    fill:rgba(221,228,219,0);
  }
  100% {
    fill:rgba(221,228,219,0.1);
  }
}
@keyframes road-animate {
  0% {
    transform:rotate(2deg);
    opacity:0;
  }
  100% {
    transform:rotate(0);
    opacity:0.5;
  }
}
