/** banner-section **/

.banner-section {
  position: relative;
  overflow: hidden;
  background-color: #fff;
}

.banner-section .pattern-layer {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom center;
}

.banner-carousel .slide-item {
  position: relative;
  padding: 280px 0px 350px 0px;
}

.banner-carousel .slide-item:before {
  position: absolute;
  content: '';
  background: linear-gradient(90deg, #020d26 0%, rgba(2, 13, 38, 0.8) 50%, rgba(2, 13, 38, 0) 100%);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  z-index: 1;
}

.banner-carousel .content-box {
  max-width: 550px;
}

.banner-carousel .slide-item .bg-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 8000ms linear;
  -moz-transition: all 8000ms linear;
  -ms-transition: all 8000ms linear;
  -o-transition: all 8000ms linear;
  transition: all 8000ms linear;
}

.banner-carousel .active .slide-item .bg-layer {
  -webkit-transform: scale(1.25);
  -ms-transform: scale(1.25);
  transform: scale(1.25);
}

.banner-carousel .content-box .sub-title {
  margin-bottom: 20px;
  color: #fff;
  opacity: 0;
  -webkit-transform: translateY(-50px);
  -moz-transform: translateY(-50px);
  -ms-transform: translateY(-50px);
  -o-transform: translateY(-50px);
  transform: translateY(-50px);
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
}

.banner-carousel .content-box .sub-title:before {
  background: #fff;
}

.banner-carousel .active .content-box .sub-title {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 1000ms;
  -moz-transition-delay: 1000ms;
  -ms-transition-delay: 1000ms;
  -o-transition-delay: 1000ms;
  transition-delay: 1000ms;
}

.banner-carousel .content-box h2 {
  font-size: 80px;
  line-height: 70px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 20px;
  opacity: 0;
  -webkit-transform: translateY(50px);
  -moz-transform: translateY(50px);
  -ms-transform: translateY(50px);
  -o-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
}

.banner-carousel .active .content-box h2 {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 1000ms;
  -moz-transition-delay: 1000ms;
  -ms-transition-delay: 1000ms;
  -o-transition-delay: 1000ms;
  transition-delay: 1000ms;
}

.banner-carousel .content-box h2 span {
  display: block;
  font-size: 64px;
  font-weight: 400;
}

.banner-carousel .content-box p {
  font-size: 20px;
  line-height: 32px;
  color: #fff;
  margin-bottom: 40px;
  opacity: 0;
  -webkit-transform: translateY(50px);
  -moz-transform: translateY(50px);
  -ms-transform: translateY(50px);
  -o-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
}

.banner-carousel .active .content-box p {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 1200ms;
  -moz-transition-delay: 1200ms;
  -ms-transition-delay: 1200ms;
  -o-transition-delay: 1200ms;
  transition-delay: 1200ms;
}

.banner-carousel .content-box .btn-box {
  opacity: 0;
  -webkit-transform: translateY(50px);
  -moz-transform: translateY(50px);
  -ms-transform: translateY(50px);
  -o-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
}

.banner-carousel .active .content-box .btn-box {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 1400ms;
  -moz-transition-delay: 1400ms;
  -ms-transition-delay: 1400ms;
  -o-transition-delay: 1400ms;
  transition-delay: 1400ms;
}

.banner-section .slide-item .pattern-layer {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 476px;
  height: 100%;
  background-repeat: no-repeat;
  z-index: 1;
}


/** banner-style-two **/

.banner-style-two {
  position: relative;
  padding: 280px 0px 245px 0px;
}

.banner-style-two .bg-layer {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.banner-style-two .bg-layer:before {
  position: absolute;
  content: '';
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 51.77%);
}

.banner-style-two .bg-color {
  position: absolute;
  left: 0px;
  top: 0px;
  width: calc(50% - 235px);
  height: 100%;
  background: var(--secondary-color);
}

.banner-style-two .content-box {
  position: relative;
  display: block;
  max-width: 600px;
}

.banner-style-two .content-box h2 {
  font-size: 80px;
  line-height: 80px;
  color: #fff;
  margin-bottom: 20px;
}

.banner-style-two .content-box h2 span {
  display: block;
  font-size: 64px;
  font-weight: 400;
}

.banner-style-two .content-box p {
  font-size: 20px;
  line-height: 32px;
  color: #fff;
  margin-bottom: 40px;
}

.banner-style-two .pattern-layer {
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 449px;
  height: 795px;
  background-repeat: no-repeat;
}

.banner-style-two .content-box .theme-btn:hover {}

.banner-style-two .content-box .theme-btn span {
  background: #fff;
}


/** banner-style-three **/

.banner-style-three {
  position: relative;
  background: linear-gradient(102.73deg, #37AA67 0.76%, #08349E 99.64%);
  overflow: hidden;
}

.banner-style-three .inner-box {
  position: relative;
  padding: 280px 0px 255px 0px;
}

.banner-style-three .content-box {
  position: relative;
  display: block;
}

.banner-style-three .content-box .sub-title {
  color: #fff !important;
}

.banner-style-three .content-box .sub-title:before {
  background: rgba(255, 255, 255, 1) !important;
}

.banner-style-three .content-box h2 {
  position: relative;
  display: block;
  font-size: 80px;
  line-height: 70px;
  color: #fff;
  margin-bottom: 22px;
}

.banner-style-three .content-box h2 span {
  display: block;
  font-size: 64px;
  font-weight: 400;
}

.banner-style-three .content-box p {
  font-size: 20px;
  line-height: 32px;
  color: #fff;
  max-width: 620px;
  margin-bottom: 41px;
}

.banner-style-three .content-box .theme-btn {
  background: #fff !important;
}

.banner-style-three .content-box .theme-btn:hover {
  color: #fff !important;
}

.banner-style-three .image-box {
  position: absolute;
  right: 0px;
  bottom: 0px;
}

.banner-style-three .image-box .support-box {
  position: absolute;
  left: -70px;
  bottom: 125px;
  width: 330px;
  background: #fff;
  border-radius: 120px;
  padding: 26px 30px 27px 110px;
}

.banner-style-three .image-box .support-box .icon-box {
  position: absolute;
  display: inline-block;
  left: 20px;
  top: 20px;
  width: 70px;
  height: 70px;
  line-height: 70px;
  text-align: center;
  border-radius: 50%;
  font-size: 30px;
  z-index: 1;
}

.banner-style-three .image-box .support-box .icon-box:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  border-radius: 50%;
  z-index: -1;
  opacity: 0.14;
}

.banner-style-three .image-box .support-box span {
  position: relative;
  display: block;
  font-size: 18px;
  line-height: 28px;
  font-family: var(--title-font);
  font-weight: 600;
}

.banner-style-three .image-box .support-box a {
  position: relative;
  display: inline-block;
  font-size: 24px;
  line-height: 28px;
  font-family: var(--title-font);
  font-weight: 700;
  color: var(--title-color);
}

.banner-style-three .image-box .support-box a:hover {}

.banner-style-three .pattern-layer .pattern-1 {
  position: absolute;
  left: 0px;
  bottom: 90px;
  width: 711px;
  height: 811px;
  background-repeat: no-repeat;
}

.banner-style-three .pattern-layer .pattern-2 {
  position: absolute;
  right: 0px;
  bottom: 0px;
  width: 1389px;
  height: 718px;
  background-repeat: no-repeat;
  opacity: 0.07;
}

.banner-style-three .pattern-layer .pattern-3 {
  position: absolute;
  right: 0px;
  bottom: 0px;
  width: 1278px;
  height: 900px;
  background-repeat: no-repeat;
}

.banner-style-three .pattern-layer .pattern-4 {
  position: absolute;
  top: 268px;
  right: 300px;
  width: 166px;
  height: 166px;
  background-repeat: no-repeat;
}

.banner-style-three .pattern-layer .pattern-5 {
  position: absolute;
  top: 390px;
  right: 745px;
  width: 209px;
  height: 209px;
  background-repeat: no-repeat;
}


/** banner-style-four **/

.banner-style-four {
  position: relative;
  background-color: #fff;
  padding: 300px 0px 127px 0px;
}

.banner-style-four .content-box {
  position: relative;
  display: block;
}

.banner-style-four .content-box h2 {
  display: block;
  font-size: 80px;
  line-height: 70px;
  margin-bottom: 22px;
}

.banner-style-four .content-box h2 span {
  display: block;
  font-size: 64px;
  font-weight: 400;
}

.banner-style-four .content-box p {
  font-size: 20px;
  line-height: 32px;
  color: var(--title-color);
  max-width: 540px;
  margin-bottom: 40px;
}

.banner-style-four .content-box .funfact-inner {
  position: relative;
  display: flex;
  align-items: center;
}

.banner-style-four .content-box .funfact-inner .single-item {
  position: relative;
  display: block;
  width: 135px;
  text-align: center;
  margin-right: 100px;
}

.banner-style-four .content-box .funfact-inner .single-item:last-child {
  margin: 0px !important;
}

.banner-style-four .content-box .funfact-inner .single-item .count-outer {
  position: absolute;
  display: inline-block;
  left: 0px;
  top: 5px;
  width: 100%;
  text-align: center;
  font-size: 128px;
  line-height: 80px;
  font-family: var(--title-font);
  color: var(--title-color);
  font-weight: 500;
  opacity: 0.05;
}

.banner-style-four .content-box .funfact-inner .single-item h3 {
  position: relative;
  display: block;
  font-size: 24px;
  line-height: 30px;
  text-transform: uppercase;
}

.banner-style-four .image-layer {
  position: absolute;
  top: -74px;
  right: 0px;
  width: 967px;
  height: 967px;
  border-radius: 500px 0px 500px 500px;
  overflow: hidden;
}

.banner-style-four .image-layer .bg-layer {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 500px 0px 500px 500px;
}

.banner-style-four .image-layer .bg-layer:before {
  position: absolute;
  content: '';
  background: linear-gradient(-45deg, rgba(56, 171, 104, 0.8) 10.1%, rgba(6, 65, 195, 0.8) 89.76%);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
}

.banner-style-four .image-layer .image {
  position: absolute;
  left: 100px;
  bottom: -30px;
}

.banner-style-four .pattern-layer {
  position: absolute;
  left: 0px;
  top: 160px;
  width: 265px;
  height: 736px;
  background-repeat: no-repeat;
}


/** banner-style-five **/

.banner-style-five {
  position: relative;
  padding: 195px 0px 125px 0px;
  background: linear-gradient(180deg, rgba(55, 170, 103, 0.5) 0%, rgba(227, 255, 233, 0) 94.78%);
}

.banner-style-five .content-box {
  position: relative;
  display: block;
}

.banner-style-five .content-box h2 {
  display: block;
  font-size: 80px;
  line-height: 70px;
  margin-bottom: 22px;
}

.banner-style-five .content-box h2 span {
  display: block;
  font-size: 64px;
  font-weight: 400;
}

.banner-style-five .content-box p {
  font-size: 20px;
  line-height: 32px;
  color: var(--title-color);
  margin-bottom: 40px;
}

.banner-style-five .image-box {
  position: relative;
  display: block;
  margin-left: 53px;
  margin-right: 29px;
}

.banner-style-five .image-box img {
  width: 100%;
}

.banner-style-five .image-box .image-shape .shape-1 {
  position: absolute;
  left: -83px;
  top: 114px;
  width: 242px;
  height: 244px;
  background-repeat: no-repeat;
}

.banner-style-five .image-box .image-shape .shape-2 {
  position: absolute;
  left: -96px;
  bottom: 25px;
  width: 203px;
  height: 228px;
  background-repeat: no-repeat;
}

.banner-style-five .image-box .image-shape .shape-3 {
  position: absolute;
  top: 142px;
  right: -100px;
  width: 179px;
  height: 199px;
  background-repeat: no-repeat;
}

.banner-style-five .pattern-layer .pattern-1 {
  position: absolute;
  left: 0px;
  top: 170px;
  width: 265px;
  height: 736px;
  background-repeat: no-repeat;
}

.banner-style-five .pattern-layer .pattern-2 {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 547px;
  height: 448px;
  background-repeat: no-repeat;
}