@import '../bootstrap/css/bootstrap.min.css';
@import '../../assets/style.css';
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&family=Special+Gothic+Expanded+One&display=swap');
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: "Noto Sans TC", "Special Gothic Expanded One", sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
  color: #FFFFFF;
  background: #005bac;
  position: relative;
  overflow-x: hidden;
  background-color: #fff;
}
.wrapper {
  animation: fadeIn 1s ease-in-out forwards;
  opacity: 0;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
:root {
  --primary-color: #005bac;
  --red: #cf3346;
  --blue: #005bac;
  --text: #212529;
}
ul, li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
p {
  margin-bottom: 0;
}
a {
  text-decoration: none;
  transition: all 0.5s ease-in-out;
  cursor: pointer;
  display: inline-block;
  color: #005bac;
}
a:hover {
  transition: all 0.3s;
  color: var(--blue);
}
button {
  font-size: 15px;
  text-decoration: none;
  transition: all 0.5s ease-in-out;
  cursor: pointer;
  display: inline-block;
  color: #fff;
}
button:hover {
  transition: all 0.3s;
  color: var(--primary-color);
}
.boild {
  font-weight: 700;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: "Special Gothic Expanded One", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  h2, .h2 {
    font-size: 40px;
  }
}
h3, .h3 {
  font-size: 50px;
}
@media only screen and (max-width: 1024px) {
  h3, .h3 {
    font-size: 30px;
  }
}
h4, .h4 {
  font-size: 40px;
}
@media only screen and (max-width: 767px) {
  h4, .h4 {
    font-size: 30px;
  }
}
h5, .h5 {
  font-size: 22px;
}
h6, .h6 {
  font-size: 15px;
}
.fs-14 {
  font-size: 14px;
}
.fs-16 {
  font-size: 16px;
}
.fs-17 {
  font-size: 17px;
}
.fs-18 {
  font-size: 18px;
  line-height: 1.7;
}
.fs-20 {
  font-size: 20px;
}
.fs-21 {
  font-size: 21px;
}
.fs-24 {
  font-size: 24px;
}
.fs-30 {
  font-size: 30px;
}
.fs-36 {
  font-size: 36px;
}
.fs-42 {
  font-size: 42px;
}
.mr-0 {
  margin-right: 0;
}
.pt-128 {
  padding-top: 128px;
}
.mt--16 {
  margin-top: -16px;
}
.mt-15 {
  margin-top: 15px;
}
.mt-17 {
  margin-top: 17px;
}
.mb--30 {
  margin-bottom: -30px;
}
.mt--23 {
  margin-top: -23px;
}
.mt-5 {
  margin-top: 5px !important;
}
.mt-9 {
  margin-top: 9px;
}
.mt-12 {
  margin-top: 12px;
}
.mt-15 {
  margin-top: 15px !important;
}
.mt-16 {
  margin-top: 16px !important;
}
.mt-19 {
  margin-top: 19px;
}
.mt-20 {
  margin-top: 20px;
}
.mt-21 {
  margin-top: 21px;
}
.mt-24 {
  margin-top: 24px;
}
.mt-25 {
  margin-top: 25px;
}
.mt-27 {
  margin-top: 27px;
}
.mt-28 {
  margin-top: 28px;
}
.mt-29 {
  margin-top: 29px;
}
.mt-30 {
  margin-top: 30px;
}
.mt-35 {
  margin-top: 35px;
}
.mt-37 {
  margin-top: 37px;
}
.mt-40 {
  margin-top: 40px;
}
.mt-42 {
  margin-top: 42px;
}
.mt-48 {
  margin-top: 48px;
}
.mt-45 {
  margin-top: 45px;
}
.mt-50 {
  margin-top: 50px;
}
.mt-51 {
  margin-top: 51px;
}
.mt-52 {
  margin-top: 52px;
}
.mt-53 {
  margin-top: 53px;
}
.mt-61 {
  margin-top: 61px;
}
.mt-67 {
  margin-top: 67px;
}
.mt-104 {
  margin-top: 104px;
}
.mt-107 {
  margin-top: 107px;
}
.mt-200 {
  margin-top: 200px;
}
.mt-223 {
  margin-top: 223px;
}
.mb-0 {
  margin-bottom: 0;
}
.pd-0 {
  padding: 0 !important;
}
.mb-6 {
  margin-bottom: 6px !important;
}
.mb-7 {
  margin-bottom: 7px;
}
.mb-10 {
  margin-bottom: 10px;
}
.mb-13 {
  margin-bottom: 13px;
}
.mb-14 {
  margin-bottom: 14px;
}
.mb-15 {
  margin-bottom: 15px;
}
.mb-17 {
  margin-bottom: 17px;
}
.mb-19 {
  margin-bottom: 19px;
}
.mb-20 {
  margin-bottom: 20px;
}
.mb-25 {
  margin-bottom: 25px;
}
.mb-26 {
  margin-bottom: 26px;
}
.mb-28 {
  margin-bottom: 28px;
}
.mb-29 {
  margin-bottom: 29px;
}
.mb-30 {
  margin-bottom: 30px;
}
.mb-31 {
  margin-bottom: 31px;
}
.mb-33 {
  margin-bottom: 33px;
}
.mb-34 {
  margin-bottom: 34px;
}
.mb-37 {
  margin-bottom: 37px;
}
.mb-41 {
  margin-bottom: 41px;
}
.mb-43 {
  margin-bottom: 43px;
}
.mb-46 {
  margin-bottom: 46px;
}
.mb-50 {
  margin-bottom: 50px;
}
.mb-53 {
  margin-bottom: 53px;
}
.mb-58 {
  margin-bottom: 58px;
}
.mr-28 {
  margin-right: 28px;
}
.pt-12 {
  padding-top: 12px;
}
.pt-24 {
  padding-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .pd-0 {
    padding: 0;
  }
}
.pb-team {
  padding: 0 150px;
  margin-top: 38px;
}
@media only screen and (max-width: 1024px) {
  .pb-team {
    padding: 0;
    margin-top: 0;
  }
}
.line-h17 {
  line-height: 1.7;
}
.container {
  max-width: 1140px;
  width: 100%;
  margin: auto;
}
.container.big {
  max-width: 1650px;
}
.row > * {
  padding-left: 15px;
  padding-right: 15px;
}
.wrapper {
  height: 100%;
  overflow: hidden;
  width: 100%;
}
@media only screen and (max-width: 1200px) {
  .wrapper {
    background: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .rev {
    flex-direction: column-reverse;
  }
}
.center {
  text-align: center;
}
.bg-1 {
  background: #130F40;
}
.bg-2 {
  background: #010F33;
}
@keyframes move5 {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
.mouse-cursor {
  position: fixed;
  left: 0;
  top: 0;
  pointer-events: none;
  border-radius: 50%;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  visibility: hidden;
}
.cursor-inner {
  margin-left: -3px;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  z-index: 100;
  background-color: var(--primary-color);
  -webkit-transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, opacity 0.3s ease-in-out;
  transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.cursor-inner.cursor-hover {
  margin-left: -20px;
  margin-top: -20px;
  width: 40px;
  height: 40px;
  background-color: var(--primary-color);
  opacity: 0.3;
}
.cursor-outer {
  margin-left: -15px;
  margin-top: -15px;
  width: 30px;
  height: 30px;
  border: 2px solid var(--primary-color);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 100;
  opacity: 0.5;
  -webkit-transition: all 0.08s ease-out;
  transition: all 0.08s ease-out;
}
.cursor-outer.cursor-hover {
  opacity: 0;
}
body[data-magic-cursor=hide] .mouse-cursor {
  display: none;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  z-index: -1111;
}
@keyframes animate-1 {
  0%, 100% {
    transform: translateY(0vh) translateX(0vmin);
  }
  50% {
    transform: translateY(-1.5vh) translateX(5vmin);
  }
}
@keyframes animate-2 {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-15vmin);
  }
}
@keyframes animate-3 {
  0%, 100% {
    transform: translateY(0vh);
  }
  50% {
    transform: translateY(-5vmin);
  }
}
@keyframes animate-4 {
  0%, 100% {
    transform: translateY(0vh);
  }
  50% {
    transform: translateY(10vmin);
  }
}
@keyframes animate-5 {
  0%, 100% {
    transform: translateY(0vh) translateX(0vmin);
  }
  50% {
    transform: translateY(-1.5vh) translateX(5vmin);
  }
}
.shape {
  content: "";
  position: absolute;
  width: 2000px;
  height: 2000px;
  top: -70%;
  left: -60%;
  z-index: -1;
  background: radial-gradient(34.98% 34.98% at 50% 50%, #725BDA 0%, rgba(6, 19, 45, 0) 100%);
  opacity: 0.5;
}
.shape.right {
  left: auto;
  right: -60%;
}
.shape.s3 {
  z-index: -2;
  width: 800px;
  height: 800px;
  background: linear-gradient(239.67deg, #0057FF -10.29%, #7FF805 197.14%);
  opacity: 0.6;
  mix-blend-mode: normal;
  filter: blur(150px);
  left: auto !important;
  top: 15% !important;
  right: -20%;
}
/* ====================== [Start Text Animation] ====================== */
span, a {
  display: inline-block;
  text-decoration: none;
}
.splitting.animated .char {
  -webkit-animation: fadeInUp 0.4s cubic-bezier(0.3, 0, 0.7, 1) both;
  animation: fadeInUp 0.4s cubic-bezier(0.3, 0, 0.7, 1) both;
  -webkit-animation-delay: calc(30ms * var(--char-index));
  animation-delay: calc(30ms * var(--char-index));
}
.splitting .whitespace {
  width: 9px;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
.splitting.text.animated .char {
  -webkit-animation: fadeIn 0.3s cubic-bezier(0.3, 0, 0.7, 1) both;
  animation: fadeIn 0.3s cubic-bezier(0.3, 0, 0.7, 1) both;
  -webkit-animation-delay: calc(10ms * var(--char-index));
  animation-delay: calc(10ms * var(--char-index));
}
.splitting.text .whitespace {
  width: 4px;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.imgio {
  position: relative;
}
.imgio .cimgio {
  position: absolute;
  height: 100%;
  width: 100%;
  bottom: 0;
  right: 0;
  background: #fff;
  visibility: visible !important;
  -webkit-transition: all 0.5s linear;
  -o-transition: all 0.5s linear;
  transition: all 0.5s linear;
  -webkit-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.imgio .animated {
  height: 0;
}
.cimgio[data-delay="100"] {
  -webkit-transition-delay: 0.1s;
  -o-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.cimgio[data-delay="200"] {
  -webkit-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.cimgio[data-delay="300"] {
  -webkit-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.cimgio[data-delay="400"] {
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
.cimgio[data-delay="500"] {
  -webkit-transition-delay: 0.5s;
  -o-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.cimgio[data-delay="600"] {
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
.cimgio[data-delay="700"] {
  -webkit-transition-delay: 0.7s;
  -o-transition-delay: 0.7s;
  transition-delay: 0.7s;
}
.cimgio[data-delay="800"] {
  -webkit-transition-delay: 0.8s;
  -o-transition-delay: 0.8s;
  transition-delay: 0.8s;
}
.cimgio[data-delay="900"] {
  -webkit-transition-delay: 0.9s;
  -o-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
.cimgio[data-delay="1s"] {
  -webkit-transition-delay: 1s;
  -o-transition-delay: 1s;
  transition-delay: 1s;
}
.title span {
  font-weight: bold;
}
.heading-title span {
  font-weight: bold;
}
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  height: 98px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header.is-fixed {
  position: fixed;
  opacity: 0;
  visibility: hidden;
  background: transparent;
  top: -100%;
  transition: all 0.4s ease-in-out;
  z-index: 9999;
  left: 0;
  width: 100%;
}
.header.is-fixed.is-fixed.is-small {
  position: fixed;
  top: -1px;
  opacity: 1;
  visibility: visible;
  height: 80px;
}
.header.is-fixed.is-small {
  position: fixed;
  top: 0;
  opacity: 1;
  z-index: 9999;
  height: 60px;
  left: 0;
  width: 100%;
  visibility: visible;
}
.header .header__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header .header__right {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.header .header__right .mobile-button {
  display: none;
  position: absolute;
  right: 15px;
  width: 26px;
  height: 26px;
  background-color: transparent;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-left: 30px;
}
@media only screen and (max-width: 1024px) {
  .header .header__right .mobile-button {
    display: block;
  }
}
.header .header__right .mobile-button::before, .header .header__right .mobile-button::after {
  content: "";
  position: absolute;
  height: 3px;
  width: 100%;
  left: 0;
  top: 50%;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}
.header .header__right .mobile-button::before, .header .header__right .mobile-button::after, .header .header__right .mobile-button span {
  background-color: #ffffff;
  -webkit-transition: all ease 0.3s;
  -moz-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.header .header__right .mobile-button::before {
  -webkit-transform: translate3d(0, -7px, 0);
  -moz-transform: translate3d(0, -7px, 0);
  transform: translate3d(0, -7px, 0);
}
.header .header__right .mobile-button::after {
  -webkit-transform: translate3d(0, 7px, 0);
  -moz-transform: translate3d(0, 7px, 0);
  transform: translate3d(0, 7px, 0);
}
.header .header__right .mobile-button span {
  position: absolute;
  width: 100%;
  height: 3px;
  left: 0;
  top: 50%;
  overflow: hidden;
  text-indent: 200%;
}
.header .header__right .mobile-button.active::before {
  -webkit-transform: rotate3d(0, 0, 1, 45deg);
  -moz-transform: rotate3d(0, 0, 1, 45deg);
  transform: rotate3d(0, 0, 1, 45deg);
}
.header .header__right .mobile-button.active::after {
  -webkit-transform: rotate3d(0, 0, 1, -45deg);
  -moz-transform: rotate3d(0, 0, 1, -45deg);
  transform: rotate3d(0, 0, 1, -45deg);
}
.header .header__right .mobile-button.active span {
  opacity: 0;
}
.header .header__right .main-nav .menu {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.header .header__right .main-nav .menu li {
  position: relative;
  padding: 30px 0;
  padding-right: 40px;
}
.header .header__right .main-nav .menu li:nth-last-child(1) {
  padding-right: 0;
}
.header .header__right .main-nav .menu li a {
  position: relative;
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.6px;
}
@media only screen and (max-width: 1200px) {
  .header .header__right .main-nav .menu li {
    padding-right: 30px;
  }
  .header .header__right .main-nav .menu li a {
    font-size: 14px;
  }
}
.header .header__right .main-nav .menu li .sub-menu {
  position: absolute;
  top: 50px;
  left: 0;
  width: 240px;
  z-index: 99;
  border-radius: 5px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateY(35px);
  -moz-transform: translateY(35px);
  -ms-transform: translateY(35px);
  -o-transform: translateY(35px);
  transform: translateY(35px);
  background: #fff;
  box-shadow: 0 0 1.25rem rgba(30, 34, 40, 0.06);
}
.header .header__right .main-nav .menu li .sub-menu li {
  padding: 15px 20px;
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.header .header__right .main-nav .menu li .sub-menu li:last-child {
  border: none;
}
.header .header__right .main-nav .menu li .sub-menu li::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--primary-color);
  transition: width 0.3s ease-in-out;
}
.header .header__right .main-nav .menu li .sub-menu li:hover::before, .header .header__right .main-nav .menu li .sub-menu li.current-item::before {
  width: 100%;
}
.header .header__right .main-nav .menu li .sub-menu li a {
  color: #000;
  font-size: 14px;
}
.header .header__right .main-nav .menu li .sub-menu li a::before, .header .header__right .main-nav .menu li .sub-menu li a::after {
  display: none;
}
.header .header__right .main-nav .menu li .sub-menu li:hover a {
  color: var(--primary-color);
}
.header .header__right .main-nav .menu li .sub-menu li.current-item > a {
  color: var(--primary-color);
}
.header .header__right .main-nav .menu li:hover .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(26px);
}
.header .header__right .main-nav .menu li.menu-item-has-children > a:after {
  color: rgba(255, 255, 255, 0.5);
  font-family: "icomoon";
  content: "\e90a";
  font-size: 7px;
  font-weight: 400;
  position: absolute;
  right: -15px;
  top: 6px;
}
.header .header__right .group-button {
  display: flex;
  margin-left: 80px;
}
@media only screen and (max-width: 991px) {
  .header {
    position: fixed;
  }
}
@media only screen and (max-width: 1200px) {
  .header .header__right .group-button {
    margin-left: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .header .header__right .group-button {
    display: none;
  }
}
.header .header__right .group-button a {
  font-family: "Inter";
  font-size: 16px;
  font-weight: 700;
  margin-left: 20px;
  padding: 10px 40px;
}
.header .header__action {
  display: flex;
  align-items: center;
}
.header .header__action .action-btn {
  margin-right: 25px;
}
.header__logo {
  margin-left: 30px;
}
.header__logo img {
  width: 150px;
}
@media only screen and (max-width: 1024px) {
  .header .header__action {
    margin-right: 40px;
  }
}
.header #main-nav-mobi {
  display: block;
  margin: 0 auto;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 999999;
  box-shadow: 0px 3px 16px rgba(47, 83, 109, 0.12);
  height: 100vh;
  overflow: auto;
}
.header #main-nav-mobi ul {
  padding: 0;
  background: #ffff;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.header #main-nav-mobi ul li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  position: relative;
}
.header #main-nav-mobi ul li:last-child {
  border: 0;
}
.header #main-nav-mobi ul li a {
  padding: 12px 30px;
  color: #181818;
  font-size: 16px;
  font-weight: 600;
}
.header #main-nav-mobi ul li .arrow {
  cursor: pointer;
  font-size: 20px;
  line-height: 48px;
  position: absolute;
  right: 15px;
  text-align: center;
  top: 0;
  width: 48px;
  transition: 0.3s all ease-in-out;
  font-size: 14px;
}
.header #main-nav-mobi ul li .arrow::before {
  font-family: "icomoon";
  content: "\e90a";
  display: inline-block;
  transition: 0.3s all ease-in-out;
  color: #070A29;
}
.header #main-nav-mobi ul li .arrow.active::before {
  transform: rotate(-180deg);
}
.header #main-nav-mobi ul li ul > li:first-child {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}
.header #main-nav-mobi ul li ul li {
  padding-left: 20px;
}
.header #main-nav-mobi ul li.current-item > a {
  color: var(--primary-color);
}
.header .menu-current-item > a, .header .current-item a {
  color: var(--primary-color);
}
.header .menu-current-item > a::after {
  color: var(--primary-color) !important;
}
.header.style-3 {
  height: 88px;
}
.header.style-3 .group-button a {
  font-size: 16px;
  font-weight: 700;
  margin-left: 18px;
  padding: 8px 32px;
}
.header.style-3 .group-button .btn-action-outline.style-1 {
  border-color: #2E72D2;
  padding: 10px 32px;
}
.header.style-3 .group-button .btn-action-outline.style-1::before {
  background: #2E72D2;
}
.header.style-3 .header__right .main-nav {
  margin-right: 0%;
}
.header.style-4 {
  height: 88px;
  border: none;
}
.header.style-4 .group-button {
  margin-right: -40px;
}
.header.style-4 .group-button a {
  padding: 10px 40px;
}
.header.style-4 .header__right .main-nav .menu li a {
  font-size: 17px;
  font-weight: 400;
}
.header.style-5 {
  height: 84px;
  border: none;
}
.header.style-5 .group-button a {
  font-family: "Russo One";
  font-weight: 400;
  font-size: 14px;
  padding: 8px 38px;
}
.header.style-5 .header__right .main-nav .menu li a {
  text-transform: uppercase;
  letter-spacing: 1px;
}
.header.style-7 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  height: 80px;
}
.header.style-7 .group-button a {
  font-size: 14px;
  padding: 10px 40px;
}
.header.style-7 .header__right .main-nav .menu li a {
  font-size: 14px;
  font-weight: 400;
}
.header.style-8 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  height: 80px;
  border: none;
}
.header.style-8 .group-button a {
  font-size: 14px;
  font-weight: 700;
  padding: 10px 40px;
  border: 2px solid #48D6D2;
  border-radius: 12px;
}
.header.style-8 .group-button a::before {
  background: #48D6D2;
}
.action-btn {
  position: relative;
  overflow: hidden;
  font-weight: 700;
  padding: 5px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}
.action-btn span {
  background-color: #cf3346;
  padding: 11px 20px 12px;
  border-radius: 999px;
  color: #fff;
  transition: all 0.3s ease-in-out;
  position: relative;
  overflow: hidden;
  font-size: 16px;
  display: inline-block;
}
.action-btn svg {
  width: 30px;
  height: auto;
  fill: #fff;
  margin-right: 10px;
}
.action-btn span.big {
  padding: 14px 50px 16px;
  font-size: 1.4rem;
}
.action-btn span::after {
  background: linear-gradient(45deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 20%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.2) 80%, rgba(255, 255, 255, 0) 100%);
  content: "";
  height: 200%;
  left: -200%;
  opacity: 0;
  position: absolute;
  top: -50%;
  transition: all 0.5s ease-out;
  width: 200%;
  transform: rotate(25deg);
  z-index: 1;
}
.action-btn:hover span {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(207, 51, 70, 0.6); /*添加微微發光效果 */
}
.action-btn:hover span::after {
  left: 100%;
  opacity: 1;
  transition: all 0.6s ease-in-out;
}
/* 添加文字內容的相對定位，確保在光效之上 */
.action-btn span > * {
  position: relative;
  z-index: 2;
}
.action-btn.s1 span {
  background: linear-gradient(264.28deg, rgba(255, 255, 255, 0) -38.2%, rgba(255, 255, 255, 0.1) 103.12%);
}
#scroll-top {
  position: fixed;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  z-index: 999;
  right: 14px;
  bottom: 23px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 1);
  border: 1px solid #005bac;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blue)
}
#scroll-top span {
  transform: rotate(-180deg);
  display: block;
  font-size: 12px;
}
#scroll-top.show {
  right: 15px;
  opacity: 1;
  visibility: visible;
}
#scroll-top:hover {
  transform: translateY(-7%);
}
.block-text .sub-heading {
  width: 110px;
  height: 110px;
  line-height: 1.3;
  padding: 0px;
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 1s ease-in-out;
  position: relative;
  top: 40px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.block-text .sub-heading:hover {
  transform: translate(-50%, -50%) rotateY(-360deg);
}
.block-text .sub-heading span {
  background-color: #fff;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.block-text .sub-heading.bk {
  width: 110px;
  height: 110px;
  line-height: 1.3;
  padding: 0px;
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(4px);
  border: 1px solid #005bac;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 1s ease-in-out;
  position: relative;
  top: 40px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.block-text .sub-heading.bk:hover {
  transform: translate(-50%, -50%) rotateY(-360deg);
}
.block-text .sub-heading.bk span {
  background-color: #005bac;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.block-text .heading {
  margin-bottom: 0px;
  text-transform: none;
  font-size: 4rem;
  line-height: 1.1;
  font-family: "Noto Sans TC", sans-serif;
  font-weight: 800;
}
.block-text .heading .en {
  margin-bottom: 0px;
  text-transform: none;
  font-size: 4.4rem;
  letter-spacing: 0.1rem;
  line-height: 1.1;
  font-weight: 600;
  font-family: "Special Gothic Expanded One", sans-serif;
}
.block-text .heading2 {
  margin-bottom: 60px;
  margin-top: 4px;
  text-transform: none;
  font-size: 2.4rem;
  line-height: 1.2;
  font-family: "Noto Sans TC", sans-serif;
  font-weight: 600;
}
.block-text .heading2 .en {
  margin-bottom: 60px;
  margin-top: 4px;
  text-transform: none;
  font-size: 2.8rem;
  line-height: 1.2;
  font-family: "Special Gothic Expanded One", sans-serif;
  font-weight: 600;
}
.banner .banner__right .image {
  margin-bottom: 30px;
  text-transform: none;
  font-size: 2.4rem;
  line-height: 1.1;
  font-family: "Noto Sans TC", sans-serif;
  font-weight: 800;
}
.block-text .heading3 {
  margin-bottom: 0px;
  text-transform: none;
  font-size: 2.4rem;
  line-height: 1.1;
  font-weight: 600;
  font-family: "Noto Sans TC", sans-serif;
}
.block-text .heading3 .en {
  margin-bottom: 0px;
  text-transform: none;
  font-size: 2.8rem;
  letter-spacing: 0.1rem;
  line-height: 1.1;
  font-weight: 600;
  font-family: "Special Gothic Expanded One", sans-serif;
}
.block-text .heading3 .en2 {
  margin-bottom: 0px;
  text-transform: none;
  font-size: 3rem;
  letter-spacing: 0.1rem;
  line-height: 1.1;
  font-weight: 600;
  font-family: "Special Gothic Expanded One", sans-serif;
}
.block-text .heading4 {
  margin-bottom: 0px;
  margin-top: 0px;
  text-transform: none;
  font-size: 1.6rem;
  line-height: 1.2;
  font-family: "Noto Sans TC", sans-serif;
  font-weight: 600;
}
.block-text .heading4 .en {
  margin-bottom: 0px;
  margin-top: 0px;
  text-transform: none;
  font-size: 3rem;
  line-height: 1.2;
  font-family: "Special Gothic Expanded One", sans-serif;
  font-weight: 600;
  padding: 0 4px;
}
.block-text .action-btn span {
  padding: 16px 30px 20px;
  line-height: 1;
  font-size: 1.1rem
}
.banner {
  position: relative;
  padding-top: 200px;
  max-width: 1260px;
  margin-left: auto;
  margin-right: auto;
}
.banner.s4 {
  background-repeat: no-repeat;
  background-image: url(../../assets/images/bg-index.jpg);
  background-size: 100% auto;
  background-color: #fff;
  max-width: 1500px;
}
.banner .block-text .heading span.s1 {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
}
.banner .block-text .heading span.s1::after {
  content: "";
  width: 317.39px;
  height: 64.77px;
  position: absolute;
  bottom: -57px;
  left: -63px;
  background: url("../../../assets/images/icon/Line.png") no-repeat;
}
.banner .block-text .desc {
  padding-right: 130px;
  margin-bottom: 40px;
  font-size: 16px;
}
@media only screen and (max-width: 1200px) {
  .banner .block-text .desc {
    padding: 0;
  }
}
.banner .banner__left {
  padding: 127px 0;
}
@media only screen and (max-width: 767px) {
  .banner .banner__left {
    padding: 40px 0 60px;
  }
}
.banner .banner__left .pay {
  margin-top: 130px;
}
.banner .banner__left .pay h6 {
  text-transform: none;
  margin-bottom: 20px;
}
.banner .banner__left .pay .list {
  display: flex;
  align-items: center;
}
.banner .banner__left .pay .list p {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.3);
  margin-right: 16px;
}
.banner .banner__left .pay .list ul {
  display: flex;
}
.banner .banner__left .pay .list ul li {
  margin-right: 20px;
}
.banner .banner__left .pay .list ul li a span {
  font-size: 33px;
  opacity: 0.3;
  transition: all 0.3s ease-in-out;
}
.banner .banner__left .pay .list ul li a:hover span {
  opacity: 1;
}
.banner .banner__right {
  padding: 83px 0 50px;
  position: relative;
}
.banner .banner__right .image {
  width: 551px;
  height: 600px;
  margin-left: auto;
  margin-right: 74px;
  box-shadow: 0px 16px 36px rgba(0, 0, 0, 0.25);
  border-radius: 130px;
  position: relative;
}
.banner .banner__right .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 130px;
  position: relative;
  z-index: 2;
}
.banner .banner__right .image::before, .banner .banner__right .image:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  border-radius: 130px;
}
.banner .banner__right .image::before {
  transform: rotate(-17deg);
}
.banner .banner__right .image:after {
  transform: rotate(-7deg);
}
@media only screen and (max-width: 767px) {
  .banner .banner__right .image {
    width: 100%;
  }
}
.banner .banner__right .price {
  display: flex;
  align-items: center;
  padding: 20px;
  background: #fff;
  border-radius: 30px;
  position: absolute;
  top: 168px;
  right: 0;
  z-index: 3;
  animation: animate-1 15s linear 0s infinite;
}
.banner .banner__right .price .icon {
  margin-right: 15px;
  filter: drop-shadow(0px 15px 20px rgba(164, 128, 255, 0.5));
}
.banner .banner__right .price p {
  color: #000000;
  font-size: 14px;
}
.banner .banner__right .price h5 {
  color: #000000;
}
.banner .banner__right .owner {
  display: flex;
  align-items: center;
  padding: 20px;
  background: #fff;
  border-radius: 30px;
  position: absolute;
  top: 400px;
  right: -10px;
  z-index: 3;
  animation: animate-3 5s linear 0s infinite;
}
.banner .banner__right .owner .image {
  margin-right: 10px;
  min-width: 70px;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  overflow: hidden;
}
.banner .banner__right .owner .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner .banner__right .owner p {
  color: #333;
  font-size: 15px;
}
.banner .banner__right .owner h5 {
  color: #333;
}
.banner.s2 {
  padding: 73px 0 120px;
}
.banner.s2 .shape {
  top: -40%;
  left: -30%;
}
.banner.s2 .shape.right {
  left: auto;
  top: -85%;
}
@media only screen and (max-width: 767px) {
  .banner.s2 {
    padding: 73px 0 250px;
  }
}
.banner.s2 .block-text .sub-heading {
  margin-bottom: 15px;
}
.banner.s2 .block-text .heading {
  margin-bottom: 28px;
}
.banner.s2 .block-text p {
  padding: 0 285px;
  font-size: 17px;
  font-size: 16px;
}
@media only screen and (max-width: 1200px) {
  .banner.s2 .block-text p {
    padding: 0;
  }
}
.banner.s2 .block-text .action-btn span {
  padding: 19px 55px;
}
.banner.s2 .bannerSwiper {
  margin-top: 100px;
}
.banner.s2 .swiper-cards .swiper-slide {
  background: transparent !important;
  box-shadow: none;
}
.banner.s2 .swiper-3d, .banner.s2 .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1800px;
}
.banner.s2 .banner__main {
  margin-top: 21px;
  display: flex;
}
@media only screen and (max-width: 767px) {
  .banner.s2 .banner__main {
    flex-wrap: wrap;
  }
  .banner.s2 .banner__main .card-box:first-child {
    margin-left: 20px;
    margin-top: 60px;
    transform: rotate(-7deg);
  }
  .banner.s2 .banner__main .card-box:last-child {
    transform: translateX(34px) translateY(150px) rotate(4deg);
    z-index: 1;
  }
}
@media only screen and (max-width: 767px) {
  .banner.s2.s3 {
    padding: 73px 0 50px;
  }
}
.card-box {
  width: 350px;
  padding: 0;
  border-radius: 0;
  height: auto;
  z-index: 3;
}
.card-box .top {
  margin-bottom: 20px;
}
.card-box .top span {
  font-size: 30px;
  margin-right: 13px;
}
.card-box .top h6 {
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  margin-bottom: -5px;
}
.card-box .top h6.price {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%), #FFFFFF;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  margin-top: 5px;
  margin-bottom: 0;
  font-size: 20px;
}
.card-box .content .image {
  height: 349px;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 17px;
}
.card-box .content .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}
.card-box .content .info {
  align-items: center;
}
.card-box .content .info img {
  min-width: 50px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  object-fit: cover;
  margin-right: 13px;
}
.card-box .content .info h6 {
  font-weight: 600;
  font-size: 14px;
  margin-bottom: 2px;
}
.card-box .content .info p {
  font-weight: 300;
  font-size: 14px;
}
.card-box:hover .content .image img {
  transform: scale(1.1);
}
.banner.s3 .shape {
  top: -90%;
}
.banner.s3 .shape.right {
  top: -40%;
}
.banner.s3 .banner__left {
  padding: 158px 0;
}
@media only screen and (max-width: 1024px) {
  .banner.s3 .banner__left {
    padding: 40px 0;
  }
}
.banner.s3 .banner__left .block-text .heading {
  margin-bottom: 19px;
}
.banner.s3 .banner__left .block-text .desc {
  margin-bottom: 45px;
}
.banner.s3 .banner__left .block-text .action-btn {
  margin-right: 15px;
}
.banner.s3 .banner__left .block-text .action-btn span {
  padding: 18px 65px;
}
.banner.s3 .banner__left .block-text .action-btn.s1 span {
  padding: 17px 30px;
}
.banner.s3 .banner__left .couter-list {
  margin-top: 123px;
}
.banner.s3 .banner__left .couter-list .couter-box {
  margin-right: 102px;
  max-width: 105px;
}
.banner.s3 .banner__left .couter-list .couter-box:last-child {
  margin-right: 0;
}
.banner.s3 .banner__left .couter-list .couter-box::after {
  height: 70px;
  top: 0px;
  right: -59px;
}
.banner.s3 .banner__left .couter-list .couter-box .numb span {
  font-size: 22px;
  position: absolute;
  right: -14px;
  top: 3px;
}
.banner.s3 .banner__right {
  padding: 93px 108px 93px 77px;
}
.banner.s3 .banner__right .image-1 {
  animation: animate-1 15s linear 0s infinite;
}
@media only screen and (max-width: 1200px) {
  .banner.s3 .banner__right {
    padding: 60px 0 80px;
  }
  .banner.s3 .banner__right .image-1 {
    width: 100%;
  }
  .banner.s3 .banner__right .image-1 img {
    width: 100%;
  }
}
.banner-box {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(2px);
  border-radius: 20px;
  padding: 20px 26px 0px 14px;
}
.banner-box .top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 14px;
  margin-bottom: 27px;
}
.banner-box .top .title {
  font-weight: 600;
  font-size: 26px;
}
.banner-box .top .wishlist {
  display: flex;
  align-items: center;
}
.banner-box .top .wishlist .icon {
  width: 30px;
  height: 30px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
}
.banner-box .top .wishlist p {
  margin-bottom: 0;
}
.banner-box .main {
  display: flex;
}
.banner-box .main p {
  color: rgba(255, 255, 255, 0.5);
}
.banner-box .main .info {
  margin-right: 72px;
}
.banner-box .main .info h4 {
  font-size: 26px;
  margin-top: 9px;
  margin-bottom: 5px;
}
.banner-box .main .coundown p {
  margin-bottom: 8px;
}
.banner-box .main .coundown .countdown__item {
  font-family: "Conthrax";
  font-weight: 600;
  font-size: 26px;
  color: #FFFFFF;
  margin-right: 50px;
  position: relative;
  text-align: center;
}
.banner-box .main .coundown .countdown__item:last-child {
  margin: 0;
}
.banner-box .main .coundown .countdown__item:last-child::before {
  display: none;
}
.banner-box .main .coundown .countdown__item::after {
  position: absolute;
  bottom: -25px;
  left: 0;
  right: 0;
  font-weight: 300;
  font-size: 14px;
  font-family: "Readex Pro";
  color: rgba(255, 255, 255, 0.5);
}
.banner-box .main .coundown .countdown__item::before {
  content: "";
  position: absolute;
  right: -19px;
  top: 17px;
  width: 1px;
  height: 22px;
  background: rgba(255, 255, 255, 0.1);
}
.banner-box .main .coundown .countdown__item:nth-child(1)::after {
  content: "Days";
}
.banner-box .main .coundown .countdown__item:nth-child(2)::after {
  content: "Hours";
}
.banner-box .main .coundown .countdown__item:nth-child(3)::after {
  content: "Minutes";
}
.banner-box .main .coundown .countdown__item:nth-child(4)::after {
  content: "Seconds";
}
@media only screen and (max-width: 767px) {
  .banner-box .main {
    flex-wrap: wrap;
  }
  .banner-box .main .info {
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .banner-box .main .coundown {
    margin: 30px auto;
    text-align: center;
  }
}
.banner-box .button {
  text-align: center;
  margin-top: 22px;
}
.banner-box .button a {
  margin-bottom: -40px;
}
.banner-box .button a span {
  padding: 19px 24px 19px 62px;
}
.banner-box .button a span svg {
  margin-left: 40px;
}
.footer {
  position: relative;
  background-color: #255aa6;
  padding: 40px 0 20px;
  background-image: url(../../assets/images/bg-3.jpg);
  background-size: 140% auto;
  background-repeat: no-repeat;
  background-position: -40px top;
}
.footer .block-text .heading {
  margin-bottom: 16px;
}
.footer .footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 30px 0;
}
.footer .footer__bottom div p {
  font-weight: 300;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.2);
}
.footer .footer__bottom .list {
  display: flex;
  margin-bottom: 16px;
  margin-left: 22px;
}
.footer .footer__bottom .list li {
  margin: 0 16px;
}
.footer .footer__bottom .list li a {
  font-weight: 600;
  font-size: 13px;
}
.footer .footer__bottom .list-social {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
}
.footer .footer__bottom .list-social li {
  margin: 0 5px;
}
.footer .footer__bottom .list-social li:last-child {
  margin-right: 0;
}
.footer .footer__bottom .list-social li a {
  min-width: 38px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer .footer__bottom .list-social li a:hover {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
}
@media only screen and (max-width: 1024px) {
  .footer .footer__bottom {
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer .footer__bottom div {
    width: 100%;
    margin: 30px 0;
  }
  .footer .footer__bottom div .list {
    justify-content: center;
    flex-wrap: wrap;
  }
  .footer .footer__bottom div .list li {
    margin: 0 10px;
  }
}
.form {
  text-align: center;
  margin-top: 39px;
}
.form .form-control {
  max-width: 540px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(2px);
  border-radius: 10px;
  margin: 0 auto;
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-weight: 300;
  font-size: 14px;
  color: #fff;
  padding: 15px;
  box-shadow: none;
}
.form .form-control:focus {
  border-color: var(--primary-color);
}
.form button {
  margin-top: 14px;
}
.form button span {
  padding: 15px 40px;
}
.footer.s1 {
  padding: 0 0 20px;
}
.footer.s1 .footer__bottom {
  padding: 25px 0;
}
@-webkit-keyframes pulse-grow-on-hover {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
.footer.style-2 {
  padding-bottom: 30px;
}
.footer.style-2 .footer__main {
  display: flex;
}
.footer.style-2 .footer__main .info-left {
  width: 30%;
}
.footer.style-2 .footer__main .info-left .list-social {
  justify-content: flex-start;
  margin-top: 16px;
}
.footer.style-2 .footer__main .info-left .list-social li:first-child {
  margin-left: 0;
}
.footer.style-2 .footer__main .right {
  width: 70%;
  padding-left: 47px;
  padding-top: 2px;
}
.footer.style-2 .footer__main .right .top {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .footer.style-2 .footer__main .right .top {
    flex-wrap: wrap;
  }
  .footer.style-2 .footer__main .right .top .widget {
    width: 50%;
    margin: 0;
  }
  .footer.style-2 .footer__main .right .top .widget:last-child {
    padding-left: 0;
    padding-top: 30px;
    width: 100%;
  }
  .footer.style-2 .footer__main .right .top .widget:last-child .form .form-control {
    max-width: 100%;
  }
}
.footer.style-2 .footer__main .right .bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 51px;
}
.footer.style-2 .footer__main .right .bottom p {
  font-weight: 300;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.3);
}
.footer.style-2 .footer__main .right .bottom .list {
  display: flex;
  margin-right: 9px;
}
.footer.style-2 .footer__main .right .bottom .list li {
  margin-left: 41px;
}
.footer.style-2 .footer__main .right .bottom .list li a {
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 12px;
}
@media only screen and (max-width: 767px) {
  .footer.style-2 .footer__main .right .bottom {
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
  }
  .footer.style-2 .footer__main .right .bottom .list {
    margin-top: 20px;
  }
  .footer.style-2 .footer__main .right .bottom .list li {
    margin: 0 10px;
  }
}
@media only screen and (max-width: 1200px) {
  .footer.style-2 .footer__main {
    flex-wrap: wrap;
  }
  .footer.style-2 .footer__main .info-left {
    width: 100%;
  }
  .footer.style-2 .footer__main .right {
    width: 100%;
    padding-left: 0;
    padding-top: 40px;
  }
}
.widget {
  margin-right: 80px;
}
.widget:last-child {
  margin-right: 0;
  width: 49%;
  padding-left: 9px;
}
.widget li a {
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 14px;
}
.widget h5 {
  font-size: 18px;
  text-transform: none;
}
.widget li {
  margin-bottom: 10px;
}
.widget li:first-child {
  margin-bottom: 45px;
}
.widget form {
  text-align: left;
}
.widget form p {
  margin-top: 45px;
  margin-bottom: 10px;
  margin-bottom: 14px;
}
.widget form .form-group {
  position: relative;
}
.widget form .form-group button {
  position: absolute;
  right: 15px;
  top: 4px;
  background: none;
  border: none;
  outline: none;
}
/* Magnific Popup CSS */
.about__video {
  position: relative;
}
.about__video img {
  border-radius: 20px;
}
@media only screen and (max-width: 1024px) {
  .about__video img {
    width: 100%;
  }
}
.about__video .wrap-video a {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 112px;
  height: 112px;
  border-radius: 50%;
  top: 38.5%;
  left: 44%;
  background: rgba(255, 255, 255, 0.4);
}
.about__video .wrap-video a span {
  font-size: 45px;
}
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #3f3f3f;
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}
.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.mfp-align-top .mfp-container:before {
  display: none;
}
.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}
.mfp-ajax-cur {
  cursor: progress;
}
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: pointer;
}
.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}
.mfp-auto-cursor .mfp-content {
  cursor: auto;
}
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.mfp-loading.mfp-figure {
  display: none;
}
.mfp-hide {
  display: none !important;
}
.mfp-preloader {
  color: #cccccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}
.mfp-preloader a {
  color: #cccccc;
}
.mfp-preloader a:hover {
  color: white;
}
.mfp-s-ready .mfp-preloader {
  display: none;
}
.mfp-s-error .mfp-content {
  display: none;
}
button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: white;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}
.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
}
.mfp-close:active {
  top: 1px;
}
.mfp-close-btn-in .mfp-close {
  color: #333333;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: white;
  background: transparent;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}
.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #cccccc;
  font-size: 12px;
  line-height: 18px;
}
.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.mfp-arrow:active {
  margin-top: -54px;
}
.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
}
.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}
.mfp-arrow:after, .mfp-arrow .mfp-a {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}
.mfp-arrow:before, .mfp-arrow .mfp-b {
  border-top-width: 21px;
  border-bottom-width: 21px;
}
.mfp-arrow-left {
  left: 0;
}
.mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
  border-right: 17px solid white;
  margin-left: 31px;
}
.mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
  margin-left: 25px;
  border-right: 27px solid #3f3f3f;
}
.mfp-arrow-right {
  right: 0;
}
.mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
  border-left: 17px solid white;
  margin-left: 39px;
}
.mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
  border-left: 27px solid #3f3f3f;
}
.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
  top: -40px;
}
.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: black;
}
.mfp-arrow.mfp-arrow-left.mfp-prevent-close, .mfp-arrow.mfp-arrow-right.mfp-prevent-close {
  background: transparent;
}
/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}
/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}
.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444444;
}
.mfp-figure small {
  color: #bdbdbd;
  display: block;
  font-size: 12px;
  line-height: 14px;
}
.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}
.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-wrap: break-word;
  padding-right: 36px;
}
.mfp-image-holder .mfp-content {
  max-width: 100%;
}
@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure {
    /* The shadow behind the image */
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}
@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}
.mfp-ie7 .mfp-img {
  padding: 0;
}
.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px;
}
.mfp-ie7 .mfp-container {
  padding: 0;
}
.mfp-ie7 .mfp-content {
  padding-top: 44px;
}
.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0;
}
/* animate in */
.my-mfp-slide-bottom.mfp-ready .mfp-content {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
/* animate out */
.my-mfp-slide-bottom.mfp-removing .mfp-content {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}
/* Dark overlay, start state */
.my-mfp-slide-bottom.mfp-bg {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
/* animate in */
.my-mfp-slide-bottom.mfp-ready.mfp-bg {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  filter: alpha(opacity=80);
  opacity: 0.8;
}
/* animate out */
.my-mfp-slide-bottom.mfp-removing.mfp-bg {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
}
.about {
  padding: 0 0 100px;
  position: relative;
}
.about .block-text {
  padding: 116px 0 116px 35px;
}
@media only screen and (max-width: 1200px) {
  .about .block-text {
    padding: 80px 0;
  }
}
.about .about__right .images {
  position: relative;
}
.about .about__right .images .img1 {
  width: 420px;
  height: 533px;
  object-fit: cover;
  border-radius: 110px;
  margin: 60px 0 0 -4px;
  z-index: 3;
  position: relative;
}
.about .about__right .images .img2, .about .about__right .images .img3, .about .about__right .images .img4, .about .about__right .images .img5 {
  position: absolute;
  border-radius: 20%;
}
.about .about__right .images .img2 {
  width: 111px;
  height: 107px;
  object-fit: cover;
  top: 300px;
  left: -160px;
  animation: animate-2 15s linear 0s infinite;
}
.about .about__right .images .img3 {
  width: 222px;
  height: 222px;
  object-fit: cover;
  bottom: -93px;
  left: -108px;
  animation: animate-3 15s linear 0s infinite;
}
.about .about__right .images .img4 {
  width: 90px;
  height: 90px;
  object-fit: cover;
  bottom: -109px;
  left: 129px;
  animation: animate-4 15s linear 0s infinite;
}
.about .about__right .images .img5 {
  width: 255px;
  height: auto;
  object-fit: cover;
  bottom: -120px;
  right: 0px;
  z-index: 4;
  animation: animate-5 15s linear 0s infinite;
}
.about .about__right .images::after {
  content: "";
  position: absolute;
  top: 56px;
  right: 125px;
  z-index: 1;
  width: 420px;
  height: 533px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 110px;
  transform: rotate(10deg);
}
@media only screen and (max-width: 767px) {
  .about .about__right .images::after {
    display: none;
  }
  .about .about__right .images .img1 {
    width: 100%;
  }
  .about .about__right .images .img2 {
    left: -15px;
    z-index: 3;
  }
  .about .about__right .images .img3 {
    left: -100px;
    bottom: -170px;
  }
  .about .about__right .images .img5 {
    right: -70px;
  }
}
@media only screen and (max-width: 1200px) {
  .about .about__right {
    padding-bottom: 70px;
  }
  .about .about__right .images {
    max-width: 540px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 1024px) {
  .about .about__right .images {
    max-width: 500px;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 767px) {
  .about .about__right .images {
    max-width: 100%;
  }
}
.about.s2 {
  padding: 0 0 150px;
}
.about.s2 .shape {
  top: -30%;
}
.about.s2 .shape.right {
  top: -60%;
}
@media only screen and (max-width: 767px) {
  .about.s2 {
    padding: 0 0 80px;
  }
}
.about.s2 .about__main img {
  margin-bottom: 30px;
}
@media only screen and (max-width: 1200px) {
  .about.s2 .about__main img {
    width: 100%;
  }
}
.about.s2 .block-text .heading {
  margin-bottom: 38px;
}
.about.s2 .action-btn span {
  padding: 15px 24px;
}
.about.s3 {
  padding: 90px 0 0;
}
@media only screen and (max-width: 1024px) {
  .about.s3 {
    padding: 60px 0 0;
  }
}
.about.s3 .block-text {
  padding-right: 30px !important;
}
.about.s3 .card-box:first-child {
  margin-left: 117px;
  transform: rotate(9deg);
  margin-top: 48px;
}
@media only screen and (max-width: 1200px) {
  .about.s3 .card-box:first-child {
    margin: 80px auto 0;
  }
}
@media only screen and (max-width: 767px) {
  .about.s3 .card-box:first-child {
    width: 100%;
  }
}
.about.s3 .card-box.sm {
  width: 236px;
  padding: 15px 14px 15px 10px;
}
.about.s3 .card-box.sm .top {
  margin-bottom: 10px;
}
.about.s3 .card-box.sm .top h6 {
  font-size: 8px;
}
.about.s3 .card-box.sm .top h6.price {
  font-size: 12px;
}
.about.s3 .card-box.sm .top span {
  font-size: 25px;
  margin-right: 3px;
}
.about.s3 .card-box.sm .content .image {
  height: 208px;
  margin-bottom: 13px;
}
.about.s3 .card-box.sm .content .info img {
  width: 30px;
  height: 30px;
  margin-right: 10px;
}
.about.s3 .card-box.sm .content .info h6 {
  font-size: 9px;
}
.about.s3 .card-box.sm .content .info p {
  font-size: 8px;
}
@media only screen and (max-width: 1200px) {
  .about.s3 .card-box.sm {
    margin: 0 auto;
  }
}
.about.s3 .card-box:last-child {
  transform: translateX(-150px) translateY(-194px) rotate(-13deg);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .about.s3 .card-box:last-child {
    transform: translateX(0px) translateY(0px) rotate(-13deg);
    margin-bottom: 40px;
  }
}
.speciality {
  padding: 50px 0 90px;
  position: relative;
  background-color: #005bac;
  background-image: url(../../assets/images/bg-1.jpg);
  background-size: 110% auto;
  background-repeat: no-repeat;
  background-position: left 0px;
}
.speciality .container {
  max-width: 1260px;
}
.speciality .container .row > * {
  padding-left: 10px;
  padding-right: 10px;
}
.speciality .block-text p {
  padding: 0 300px;
}
.speciality.s2 {
  padding: 0;
  position: relative;
  background-color: transparent;
  background-image: none;
  background-size: 110% auto;
  background-repeat: no-repeat;
  background-position: left 0px;
  margin: 40px 0 50px;
}
@media only screen and (max-width: 1200px) {
  .speciality .block-text p {
    padding: 0;
  }
}
.speciality.s1 {
  padding: 0 0 78px;
}
.speciality.s1 .block-text .heading {
  margin-bottom: 2px;
}
.speciality.s1 .speciality-box .title {
  padding: 0 15px;
}
.speciality-box {
  text-align: center;
  margin-top: 110px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 73.86%);
  backdrop-filter: blur(4px);
  position: relative;
  padding: 65px 25px 10px;
  border-radius: 15px;
}
.speciality-box .icon {
  background: linear-gradient(289.89deg, #DEC7FF -23.71%, #5C27FE 96.09%);
  backdrop-filter: blur(4px);
  width: 180px;
  height: 180px;
  min-width: 180px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 1s ease-in-out;
  position: absolute;
  top: -18px;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow: hidden;
  object-fit: cover;
}
.speciality-box .icon img {
  width: 100%;
  height: 100%;
}
.speciality-box .title {
  margin-bottom: 14px;
  font-size: 26px;
  line-height: 1.4;
  margin-top: 8px;
}
.speciality-box.s3 .title {
  margin-bottom: 10px;
  font-size: 26px;
  margin-top: 22px;
}
.speciality-box p {
  margin-bottom: 14px;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255, 255, 255, .7);
  font-weight: 400;
}
.speciality-box .number {
  color: rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease-in-out;
  margin-top: 18px;
  position: relative;
  z-index: 999;
}
.speciality-box:hover .icon {
  transform: translate(-50%, -50%) rotateY(-360deg);
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.9), 0 0 100px rgba(0, 150, 255, 0.5), 0 0 170px rgba(0, 150, 255, 0.5);
  filter: brightness(1.2);
  transition: transform 0.8s, box-shadow 0.8s, filter 0.8s;
}
.speciality-box:hover .number {
  color: white;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.7), 0 0 20px rgba(255, 255, 255, 0.4), 0 0 30px rgba(255, 255, 255, 0.2);
}
.portfolio {
  position: relative;
  padding: 50px 0 90px;
}
.portfolio .container {
  max-width: 1140px;
}
.portfolio .block-text .heading {
  margin-bottom: 0px;
}
.portfolio .portfolio__right .image {
  animation: animate-1 15s linear 0s infinite;
}
@media only screen and (max-width: 767px) {
  .portfolio .portfolio__right .image {
    width: 100%;
  }
  .portfolio .portfolio__right .image img {
    width: 100%;
  }
}
.portfolio-box {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 73.86%);
  backdrop-filter: blur(4px);
  border-radius: 16px;
  position: relative;
  padding: 40px 23px;
  display: flex;
  margin-bottom: 19px;
}
.portfolio-box .step {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(4px);
  border-radius: 100px;
  position: absolute;
  top: -15px;
  left: 22px;
  padding: 6px 16px;
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%), #FFFFFF;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-weight: 600;
  font-size: 12px;
  font-family: "Conthrax";
}
.portfolio-box .icon {
  margin-right: 17px;
}
.portfolio-box .content {
  border-left: 1px solid rgba(255, 255, 255, 0.1);
  padding-left: 16px;
}
.portfolio-box .content .title {
  margin-top: 4px;
  margin-bottom: 10px;
}
.project {
  position: relative;
  padding: 110px 0 100px;
}
.project h3 {
  color: var(--blue);
}
.project p, .schedule p {
  color: #333;
  font-size: 1.2rem;
  line-height: 1.8;
  font-weight: 500;
  margin-top: 20px;
}
.project .shape {
  top: 0;
}
.project .container {
  max-width: 1322px;
}
.project.s2 {
  padding: 97px 0 32px;
}
.project.s2 .shape {
  top: -70%;
}
.project.s2 .block-text .heading {
  margin-bottom: 39px;
}
.project.s2 .container {
  max-width: 1780px;
}
.project.s2 .container .project-box {
  margin-bottom: 30px;
  padding: 19px;
}
.project.s2 .container .project-box .content .title {
  letter-spacing: -1.3px;
}
.project.s3 {
  padding: 215px 0 36px;
}
@media only screen and (max-width: 1024px) {
  .project.s3 {
    padding: 80px 0;
  }
}
.project.s3 .project-swiper {
  margin-top: 37px;
  max-width: 540px;
}
.project.s3 .project-swiper .swiper-button-next {
  right: 17%;
}
.project.s3 .project-swiper .swiper-button-prev {
  left: 17%;
}
.project.s3 .project-swiper .swiper-slide .project-box .image {
  height: 500px;
}
.project.s3 .project-swiper .swiper-slide.swiper-slide-active .project-box .image {
  height: 500px;
}
.swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: rgba(255, 255, 255, 0.2);
  opacity: 1;
  margin: 0 5px !important;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 3px solid #FFFFFF;
  background: transparent;
}
.project-swiper, .project-swiper-3 {
  margin-top: 40px;
  overflow: visible;
}
.project-swiper .swiper-pagination-bullet, .project-swiper-3 .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background-color: #005bac;
  opacity: .4;
  margin: 0 5px !important;
}
.project-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active, .project-swiper-3 .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: none;
  background: #005bac;
  opacity: 1;
}
.project-swiper .swiper-button-next, .project-swiper .swiper-button-prev, .project-swiper-3 .swiper-button-next, .project-swiper-3 .swiper-button-prev {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  top: auto;
  bottom: -10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.project-swiper .swiper-button-next::after, .project-swiper .swiper-button-prev::after, .project-swiper-3 .swiper-button-next::after, .project-swiper-3 .swiper-button-prev::after {
  display: none;
}
.project-swiper .swiper-button-next:hover, .project-swiper .swiper-button-prev:hover, .project-swiper-3 .swiper-button-next:hover, .project-swiper-3 .swiper-button-prev:hover {
  background-color: rgba(0, 91, 172, .1);
}
.project-swiper .swiper-button-next, .project-swiper-3 .swiper-button-next {
  right: 36%;
}
.project-swiper .swiper-button-prev, .project-swiper-3 .swiper-button-prev {
  left: 36%;
}
.project-swiper .swiper-button-next svg, .project-swiper .swiper-button-prev svg {
  width: 20px;
}
.banner.s2 .swiper-button-next, .banner.s2 .swiper-button-prev, .banner.s3 .swiper-button-next, .banner.s3 .swiper-button-prev, .banner.s4 .swiper-button-next, .banner.s4 .swiper-button-prev {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0);
  bottom: 30%;
  top: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
  border: 1px solid #005bac;
  padding: 13px;
  box-sizing: border-box;
}
.banner.s2 .swiper-button-next::after, .banner.s2 .swiper-button-prev::after, .banner.s3 .swiper-button-next::after, .banner.s3 .swiper-button-prev::after, .banner.s4 .swiper-button-next::after, .banner.s4 .swiper-button-prev::after {
  display: none;
}
.banner.s2 .swiper-button-next:hover, .banner.s2 .swiper-button-prev:hover, .banner.s3 .swiper-button-next:hover, .banner.s3 .swiper-button-prev:hover, .banner.s4 .swiper-button-next:hover, .banner.s4 .swiper-button-prev:hover {
  background: rgba(255, 255, 255, 0);
}
.banner.s2 .swiper-button-next, .banner.s3 .swiper-button-next, .banner.s4 .swiper-button-next {
  right: 10%;
}
@media only screen and (max-width: 1600px) {
  .banner.s2 .swiper-button-next, .banner.s3 .swiper-button-next, .banner.s4 .swiper-button-next {
    right: 5%;
  }
}
@media only screen and (max-width: 1400px) {
  .banner.s2 .swiper-button-next, .banner.s3 .swiper-button-next, .banner.s4 .swiper-button-next {
    /*display: none;*/
  }
}
.banner.s2 .swiper-button-prev, .banner.s3 .swiper-button-prev, .banner.s4 .swiper-button-prev {
  left: 5%;
}
@media only screen and (max-width: 1600px) {
  .banner.s2 .swiper-button-prev, .banner.s3 .swiper-button-prev, .banner.s4 .swiper-button-prev {
    left: 5%;
  }
}
@media only screen and (max-width: 1400px) {
  .banner.s2 .swiper-button-prev, .banner.s3 .swiper-button-prev, .banner.s4 .swiper-button-prev {
    /*display: none;*/
  }
}
.project-box {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(4px);
  border-radius: 26px;
  padding: 0px;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: 90px;
}
.project-box .image {
  height: 375px;
  border-radius: 20px;
  overflow: hidden;
}
.project-box .image a {
  width: 100%;
  height: 100%;
}
.project-box .image a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}
.project-box .content {
  position: absolute;
  padding: 17px;
  bottom: 20px;
  left: 20px;
  right: 20px;
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(4px);
  text-align: center;
  border-radius: 11px;
}
.project-box .content a:hover {
  color: #fff;
}
.project-box .content span {
  font-size: 16px;
  letter-spacing: 1px;
  display: block;
  margin-top: 3px;
  font-weight: 500;
}
.project-box:hover .image img {
  transform: scale(1.1);
}
.roadmap {
  position: relative;
  padding: 0;
}
.roadmap .img-line {
  position: absolute;
  top: 30%;
  left: 0;
  z-index: -2;
}
.roadmap .shape {
  top: 0;
}
.roadmap .container {
  max-width: 1140px;
}
.roadmap.s2 {
  padding: 69px 0 47px;
}
.roadmap.s2 .shape {
  top: -60%;
}
@media only screen and (max-width: 1024px) {
  .roadmap.s2 {
    padding: 30px 0 47px;
  }
}
.roadmap.s2 .container {
  max-width: 1590px;
}
.roadmap.s2 .block-text .heading {
  margin-bottom: 47px;
}
.roadmap-swiper .roadmap-box {
  margin-top: 45px;
  width: 100%;
  padding: 35px 17px;
}
.roadmap-swiper .roadmap-box .title {
  padding-bottom: 11px;
  margin-bottom: 19px;
}
.roadmap-swiper .roadmap-box .title::after {
  height: 1px;
}
.roadmap-swiper .roadmap-box::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: -43px;
  left: 50%;
  width: 1px;
  height: 28px;
  background: #1F223E;
}
.roadmap-swiper .roadmap-box::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -54px;
  left: 46%;
  width: 19px;
  height: 19px;
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%), #FFFFFF;
  border: 4px solid #1F223E;
  border-radius: 50%;
}
.roadmap__main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 90px;
  position: relative;
}
.roadmap__main::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -40px;
  left: 50%;
  right: 50%;
  background: #1F223E;
  height: 104%;
  width: 1px;
}
.roadmap__main .icon {
  position: absolute;
  top: -52px;
  left: 49.5%;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: linear-gradient(264.28deg, #005bac -38.2%, #005bac 103.12%), #005bac;
}
.roadmap__main .icon.bottom {
  top: auto;
  bottom: 0;
}
@media only screen and (max-width: 767px) {
  .roadmap__main::after {
    left: auto;
    right: 0;
  }
}
.roadmap__main.s1 {
  position: relative;
  margin-top: 0;
}
.roadmap__main.s1::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0px;
  left: 0;
  background: #1F223E;
  height: 1px;
  width: 100%;
}
.roadmap__main.s1 .swiper-button-next, .roadmap__main.s1 .swiper-button-prev {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  top: 111px;
}
.roadmap__main.s1 .swiper-button-next::after, .roadmap__main.s1 .swiper-button-prev::after {
  display: none;
}
.roadmap__main.s1 .swiper-button-next:hover, .roadmap__main.s1 .swiper-button-prev:hover {
  background: #703FFE;
}
.roadmap__main.s1 .swiper-button-prev {
  left: -95px;
}
.roadmap__main.s1 .swiper-button-next {
  right: -95px;
}
.roadmap__main.s1 .swiper-pagination {
  bottom: 19px;
}
.roadmap__main.s1 .roadmap-box {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 73.86%);
  border: none;
}
.button {
  text-align: center;
  margin-top: 38px;
}
.button a span {
  padding: 14px 24px;
}
.roadmap-box {
  width: calc(50% - 30px);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 73.86%);
  backdrop-filter: blur(4px);
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  margin-right: 30px;
  margin-left: 0;
  padding: 37px 30px;
  margin-bottom: 34px;
}
.roadmap-box::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 48%;
  right: -28px;
  width: 28px;
  height: 1px;
  background: #1F223E;
}
.roadmap-box::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 43%;
  right: -40px;
  width: 19px;
  height: 19px;
  background: linear-gradient(264.28deg, #005bac -38.2%, #005bac 103.12%), #005bac;
  border: 4px solid #005bac;
  border-radius: 50%;
}
.roadmap-box.right {
  margin-left: 30px;
  margin-right: 0;
  transform: translateY(112px);
}
.roadmap-box.right::before {
  right: auto;
  left: -28px;
}
.roadmap-box.right::after {
  right: auto;
  left: -40px;
}
.roadmap-box .time {
  backdrop-filter: blur(4px);
  border-radius: 999px;
  position: absolute;
  top: -15px;
  left: 29px;
  padding: 6px 16px;
  border: 1px solid var(--blue);
  color: var(--blue);
  font-weight: 600;
  font-size: 15px;
  font-family: "Special Gothic Expanded One", sans-serif;
}
.roadmap-box .title {
  position: relative;
  padding-bottom: 14px;
  margin-bottom: 21px;
  letter-spacing: -1.5px;
  color: var(--blue)
}
.roadmap-box .title::after {
  content: "";
  width: 60px;
  height: 4px;
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  border-radius: 1.2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.roadmap-box p {
  color: var(--text);
}
@media only screen and (max-width: 767px) {
  .roadmap-box {
    width: 100%;
  }
  .roadmap-box.right {
    transform: translateY(0);
    margin: 0;
    margin-bottom: 34px;
    margin-right: 30px;
  }
  .roadmap-box.right::before {
    left: auto;
    right: -28px;
  }
  .roadmap-box.right::after {
    left: auto;
    right: -40px;
  }
}
.team {
  position: relative;
  padding: 30px 0 105px;
}
.team .container {
  max-width: 1140px;
}
.team .team-swiper {
  margin-top: 40px;
}
.team.s2 {
  padding: 30px 0 69px;
}
.team.s2 .img-line {
  position: absolute;
  z-index: -2;
  top: -85%;
  left: 0;
}
.team.s2 .block-text .heading {
  margin-bottom: 38px;
}
.team.s2 .team-box {
  margin-bottom: 30px;
}
.team.s2 .team-box .image .list-social {
  position: absolute;
  top: 50%;
  left: 50%;
  right: 50%;
  margin-top: 0;
  transform: translate(-50%, -60%);
  opacity: 0;
  transition: all 0.5s ease-in-out;
  z-index: 9;
}
.team.s2 .team-box .image .list-social li a {
  background: #fff;
  transition: all 0.5s ease-in-out;
}
.team.s2 .team-box .image .list-social li a span::before {
  color: var(--primary-color);
  transition: all 0.3s ease-in-out;
}
.team.s2 .team-box .image .list-social li a:hover {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
}
.team.s2 .team-box .image .list-social li a:hover span::before {
  color: #fff;
}
.team.s2 .team-box:hover .list-social {
  position: absolute;
  opacity: 1;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 1200px) {
  .team .swiper-button-next, .team .swiper-button-prev {
    display: none;
  }
}
.team-box .image {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(4px);
  padding: 12px;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.1);
  height: 255px;
  border-radius: 20px;
  overflow: hidden;
}
.team-box .image::after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.13) 0px, rgba(255, 255, 255, 0.13) 77%, rgba(255, 255, 255, 0.5) 92%, rgba(255, 255, 255, 0));
  content: "";
  height: 200%;
  left: -210%;
  opacity: 0;
  position: absolute;
  top: -50%;
  transition: all 0.7s ease 0s;
  width: 200%;
}
.team-box .image a {
  width: 100%;
  height: 100%;
}
.team-box .image a img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  object-fit: cover;
}
.team-box .image .list-social li a {
  width: 38px;
  height: 38px;
}
.team-box .content {
  margin-top: 33px;
  text-align: center;
}
.team-box .content .name {
  letter-spacing: -1.5px;
  margin-bottom: 7px;
}
.team-box:hover .image::after {
  left: -30%;
  opacity: 1;
  top: -20%;
  transition-duration: 0.7s, 0.7s, 0.15s;
  transition-property: left, top, opacity;
  transition-timing-function: linear;
}
.list-social {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 32px;
}
.list-social li {
  margin: 0 5px;
}
.list-social li a {
  min-width: 38px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
}
.list-social li a:hover {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
}
.brands {
  margin-top: 40px;
}
.brands .sub-heading span {
  color: #fff;
  background: transparent;
  -webkit-text-fill-color: #fff;
  text-transform: none;
}
.brands.s2 {
  margin-top: 49px;
}
.brands.s3 {
  margin-top: 108px;
}
.brands-swiper {
  margin-top: 25px;
}
.brands-swiper .swiper-slide a {
  opacity: 0.2;
}
.brands-swiper .swiper-slide a:hover {
  opacity: 1;
}
.testimonials {
  position: relative;
  background-color: #005bac;
  background-image: url(../../assets/images/map.jpg);
  background-size: cover;
  background-attachment: fixed
}
.testimonials p {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.5;
}
.testimonials .container {
  max-width: 1782px;
}
.testimonials .testimonials__main {
  padding: 110px 15px 40px;
}
.testimonials.s2 .testimonials__main {
  padding: 78px 15px;
  border: none;
}
@media only screen and (max-width: 767px) {
  .testimonials.s2 .testimonials__main {
    padding: 50px 15px;
  }
}
.testimonials.s3 {
  padding: 0 0 141px;
}
@media only screen and (max-width: 1024px) {
  .testimonials.s3 {
    padding: 0 0 80px;
  }
}
.testimonials.s3 .testimonials__main {
  padding: 68px 0;
}
.box-testimonial {
  max-width: 1000px;
  margin: 0 auto;
}
.box-testimonial img {
  margin-bottom: 25px;
}
.box-testimonial .text {
  font-weight: 400;
  font-size: 20px;
  margin-top: 20px;
  line-height: 1.6;
}
.box-testimonial .info {
  text-align: center;
  margin-top: 30px;
}
.box-testimonial .info img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  object-position: right;
  border-radius: 50%;
  margin-bottom: 22px;
}
.box-testimonial .info .name {
  font-size: 18px;
  margin-bottom: 6px;
}
.box-testimonial .info p {
  font-weight: 300;
  font-size: 14px;
}
.testimonials-swiper {
  margin-top: 53px;
}
.testimonials-swiper.s2 {
  max-width: 1110px;
  padding-top: 77px;
  margin-top: 38px;
}
.testimonials-swiper.s2 .box-testimonial {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 51.68%);
  padding: 40px 20px 0;
  border-radius: 20px;
}
.testimonials-swiper.s2 .box-testimonial .image {
  width: 116px;
  height: 116px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.37);
  padding: 5px;
  margin: -117px auto 0;
}
.testimonials-swiper.s2 .box-testimonial .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.testimonials-swiper.s2 .box-testimonial .info {
  margin-top: 22px;
}
.testimonials-swiper.s2 .box-testimonial .info img {
  width: auto;
  height: auto;
  margin-top: 11px;
  margin-bottom: 11px;
}
.testimonials-swiper.s2 .box-testimonial .text {
  font-weight: 300;
  font-size: 16px;
}
.faq {
  position: relative;
  padding: 96px 0 129px;
}
.faq.schedule {
  position: relative;
  padding: 96px 0 129px;
  background-image: url(../../assets/images/text-gotcha-blue.svg), url(../../assets/images/bg-2.jpg);
  background-repeat: no-repeat, no-repeat;
  background-size: 120px auto, 110% auto;
  background-attachment: fixed, fixed;
}
.faq .heading {
  color: var(--blue);
}
@media only screen and (max-width: 1024px) {
  .faq {
    padding: 90px 0;
  }
}
.faq.s2 {
  padding: 22px 0 87px;
}
.faq.s3 {
  padding: 22px 0 48px;
}
.faq.s3 .block-text .heading {
  margin-right: -25px;
}
.faq.s3 .menu-tab {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 30px;
  padding-bottom: 0;
  border: none;
}
.faq.s3 .menu-tab li {
  margin-bottom: 10px;
  margin-left: 0;
  margin-right: 10px;
}
.faq.s3 .menu-tab li:last-child {
  margin-bottom: 0;
}
.faq.s3 .image {
  animation: animate-3 5s linear 0s infinite;
}
@media only screen and (max-width: 1024px) {
  .faq.s3 .image img {
    width: 100%;
  }
}
.faq__main {
  margin: 0 auto;
  margin-top: 39px;
  max-width: 1116px;
}
.faq__main ul {
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 30px;
  margin-bottom: 30px;
}
.faq__main.school-tabs {
  margin-top: 30px;
}
.school-tabs ul.menu-tab {
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .faq__main ul {
    flex-wrap: wrap;
    margin-bottom: 0;
    margin: 0 30px;
  }
}
.faq__main ul li {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(2px);
  border-radius: 999px;
  padding: 12px 25px;
  margin: 0 5px;
  cursor: pointer;
  border: 1px solid var(--blue);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}
.faq__main ul li:hover {
  background: var(--blue);
  backdrop-filter: blur(2px);
  border-radius: 999px;
  padding: 12px 25px;
  margin: 0 5px;
  cursor: pointer;
  border: 1px solid var(--blue);
  color: #fff;
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(37, 90, 166, 0.4);
}
.faq__main ul li::after {
  content: "";
  position: absolute;
  bottom: -100%;
  left: -150%;
  width: 200%;
  height: 300%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0) 100%);
  transform: rotate(35deg);
  transition: all 0.5s ease;
  opacity: 0;
  z-index: 1;
  pointer-events: none;
}
.faq__main ul li:hover::after {
  bottom: -20%;
  left: 100%;
  opacity: 1;
  transition: all 0.6s ease-in-out;
}
.faq__main ul li.active {
  background-color: var(--blue);
}
.faq__main ul li h6 {
  color: var(--blue);
  font-size: 1.1rem;
  position: relative;
  z-index: 2;
}
.faq__main ul li:hover h6 {
  color: #fff;
}
.faq__main ul li.active h6 {
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .faq__main ul li {
    margin-bottom: 10px;
  }
}
.flat-accordion .flat-toggle {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(2px);
  border-radius: 6px;
  padding: 16px 16px 16px 20px;
  margin-bottom: 12px;
  cursor: pointer;
}
.flat-accordion .flat-toggle .toggle-title {
  text-transform: none;
  position: relative;
}
.flat-accordion .flat-toggle .toggle-title span {
  margin-right: 29px;
}
.flat-accordion .flat-toggle .toggle-title span.icon-plus {
  position: absolute;
  right: 0;
  top: 2px;
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .flat-accordion .flat-toggle {
    padding: 16px 30px 16px 20px;
  }
  .flat-accordion .flat-toggle .toggle-title span.icon-plus {
    right: -15px;
  }
}
.flat-accordion .toggle-content {
  display: none;
  margin-top: 15px;
}
.create {
  padding: 0;
}
@media only screen and (max-width: 1024px) {
  .create {
    padding: 0 0 100px;
  }
}
.create .container {
  max-width: 1140px;
}
.create__main {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  border-radius: 26px;
  position: relative;
}
.create__main::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  z-index: 0;
}
.create__main .content {
  position: relative;
  z-index: 1;
  padding: 32px 30px 29px;
}
.create__main .content h4 {
  font-size: 30px;
  text-transform: none;
  margin-bottom: 13px;
}
.create__main .content .action-btn {
  margin-top: 30px;
}
.create__main .content .action-btn span {
  padding: 15px 44px;
  background: linear-gradient(265.05deg, #FFCB52 -6.15%, #FF7B02 106.32%);
}
.create__main img {
  position: absolute;
  right: 17px;
  top: -112px;
  animation: animate-1 15s linear 0s infinite;
}
@media only screen and (max-width: 767px) {
  .create__main img {
    position: relative;
    top: 0;
    right: 0;
  }
}
.couter__main {
  background-color: rgba(0, 91, 172, 1);
  border-radius: 26px;
  padding: 50px 50px;
  position: relative;
  margin-bottom: 120px;
  background-image: url(../../assets/images/bg-3.jpg);
  background-size: 200% auto;
  background-position: center -300px;
  z-index: 3;
}
.couter__main h4 {
  font-size: 1.6rem;
}
.couter__main .image {
  animation: animate-1 15s linear 0s infinite;
  position: absolute;
  right: 100px;
  bottom: -60px;
}
.couter-list {
  display: block;
  padding-right: 200px;
}
@media only screen and (max-width: 767px) {
  .couter-list {
    flex-wrap: wrap;
  }
}
.couter-box {
  text-align: left;
  margin-right: 0px;
  position: relative;
  margin-bottom: 30px;
}
.couter-box a {
  color: #fff !important;
  border: 1px solid #fff;
  border-radius: 999px;
  padding: 3px 12px;
  font-size: 15px;
  margin-top: 4px;
}
.couter-box a svg {
  width: 30px;
  height: 30px;
}
.couter-box .icon {
  width: 66px;
  height: 66px;
  border-radius: 60%;
  background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0.5) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 12px;
}
.couter-box .numb {
  margin-bottom: 4px;
}
.couter-box:last-child {
  margin: 0;
}
.couter-box:last-child:after {
  display: none;
}
@media only screen and (max-width: 767px) {
  .couter-box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 30px;
  }
  .couter-box::after {
    display: none;
  }
}
.blog {
  padding: 0 0 100px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .blog {
    padding: 0 0 60px;
  }
}
.blog .block-text .heading {
  margin-bottom: 39px;
}
.blog.s3 {
  padding: 100px 0 75px;
}
@media only screen and (max-width: 767px) {
  .blog-box {
    margin-bottom: 50px;
  }
}
.blog-box .image {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(4px);
  padding: 14px;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.1);
  height: 351px;
  border-radius: 20px;
  overflow: hidden;
}
.blog-box .image::after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.13) 0px, rgba(255, 255, 255, 0.13) 77%, rgba(255, 255, 255, 0.5) 92%, rgba(255, 255, 255, 0));
  content: "";
  height: 200%;
  left: -210%;
  opacity: 0;
  position: absolute;
  top: -50%;
  transition: all 0.7s ease 0s;
  width: 200%;
}
.blog-box .image a {
  width: 100%;
  height: 100%;
}
.blog-box .image a img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  object-fit: cover;
}
.blog-box .content {
  margin-top: 30px;
}
.blog-box .content .meta {
  margin-bottom: 8px;
}
.blog-box .content .meta p {
  display: flex;
  align-items: center;
  justify-content: center;
}
.blog-box .content .meta p svg {
  margin-right: 10px;
}
.blog-box .content .title {
  font-size: 18px;
  line-height: 1.4;
}
.blog-box:hover .image::after {
  left: -30%;
  opacity: 1;
  top: -20%;
  transition-duration: 0.7s, 0.7s, 0.15s;
  transition-property: left, top, opacity;
  transition-timing-function: linear;
}
.token {
  position: relative;
  margin-top: -49px;
}
.token .token__main {
  margin-top: 68px;
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  border-radius: 16px;
  padding: 31px;
}
.token-list li {
  display: flex;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 20px;
  margin-bottom: 23px;
}
.token-list li:last-child {
  border: none;
  margin: 0;
  padding: 0;
}
.token-list li .name {
  display: flex;
  min-width: 148px;
}
.token-list li .name svg {
  margin-right: 14px;
}
.token-list li h6 {
  font-size: 14px;
  text-transform: uppercase;
}
.page-about .about {
  padding: 106px 0 150px;
}
.page-about .portfolio {
  padding: 97px 0 41px;
}
.page-about .team {
  padding: 0 0 140px;
}
@media only screen and (max-width: 1024px) {
  .page-about .team {
    padding: 0 0 80px;
  }
}
.page-roadmap .roadmap {
  padding: 106px 0 0;
}
.page-roadmap .project.s2 {
  padding: 53px 0 49px;
}
.page-team .team {
  padding: 104px 0 110px;
}
.touch__main {
  background: #005bac;
  backdrop-filter: blur(2px);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  margin-top: 40px;
}
.touch__main .info {
  width: 34.3%;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  padding: 50px 30px 0 40px;
  position: relative;
}
.touch__main .info h5 {
  position: relative;
  padding-bottom: 30px;
  margin-bottom: 0px;
  line-height: 1.3;
}
.touch__main .info h5 .en {
  font-family: "Special Gothic Expanded One", sans-serif;
  font-size: 2.2rem;
  padding: 0 5px;
}
.touch__main .info .list li {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 13px;
}
.touch__main .info .list li svg {
  margin-right: 8px;
}
.touch__main .info .list li p {
  font-weight: 300;
  font-size: 16px;
}
.touch__main .info .image {
  margin-left: 10px;
  margin-top: 20px;
  width: 220px;
}
.touch__main .info .image img {
  width: 100%;
  height: auto;
  transition: all 1s ease-in-out;
  position: relative;
  top: 110px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.touch__main .info .image img:hover {
  transform: translate(-50%, -50%) rotateY(-360deg);
}
@media only screen and (max-width: 1024px) {
  .touch__main {
    flex-wrap: wrap;
  }
  .touch__main .info {
    width: 100%;
  }
  .touch__main .form-box {
    padding: 60px 15px;
  }
}
.form-box {
  margin-top: 0;
  width: 65.7%;
  padding: 48px 42px 80px;
  text-align: left;
}
.form-box .row {
  margin-bottom: 23px;
}
.form-box .col {
  padding-left: 10px;
  padding-right: 10px;
}
.form-box label {
  font-weight: 400;
  font-size: 16px;
}
.form-box input.form-control, .form-box select, .form-box textarea {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(2px);
  border-radius: 6px;
  padding: 12px 15px;
  font-weight: 300;
  font-size: 14px;
  font-family: "Readex Pro";
  box-shadow: none;
  color: #fff;
  outline: none;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.form-box input.form-control:focus-visible, .form-box select:focus-visible, .form-box textarea:focus-visible {
  border-color: rgba(255, 255, 255, .8);
}
.form-box select option {
  color: #070A29;
}
.form-box textarea {
  width: 100%;
  border-color: rgba(255, 255, 255, 0.1);
  outline: none;
  height: 160px;
}
.form-box textarea:focus-visible {
  border-color: var(--primary-color);
}
.form-box .action-btn {
  margin-top: -7px;
  width: auto;
}
.form-box .action-btn span {
  padding: 14px 40px 15px !important;
  color: #fff !important;
  font-weight: 600;
}
section.touch {
  padding: 0px 0 170px;
  background-image: url(../../assets/images/text-gotcha-blue.svg);
  background-position: left top;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: 110px auto;
}
.touch h3 {
  color: var(--blue);
}
.map__main iframe {
  width: 100%;
  border-radius: 16px;
  height: 545px;
}
.page-contact .faq {
  padding: 94px 0 48px;
}
.nft .shape {
  top: 0;
}
.filter {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}
.filter .widget-search {
  position: relative;
  width: 350px;
  margin-bottom: 10px;
}
.filter .widget-search input {
  padding: 16px 13px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(2px);
  color: #fff;
  border-radius: 10px;
  box-shadow: none;
  outline: none;
  border: none;
  width: 100%;
}
.filter .widget-search .btn-search {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.filter .dropdown {
  position: relative;
  margin-left: 10px;
  width: 180px;
}
.filter .dropdown a {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(2px);
  border-radius: 10px;
  padding: 15px;
  width: 100%;
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 14px;
  margin-bottom: 10px;
}
.filter .dropdown a:hover {
  color: #fff;
}
.filter .dropdown ul {
  position: absolute;
  width: 100%;
  background: #070A29;
  padding: 10px 20px;
  opacity: 0;
  visibility: hidden;
  border-radius: 10px;
  cursor: pointer;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  -o-transform: translateY(30px);
  transform: translateY(30px);
  transition: all 0.3s ease;
}
.filter .dropdown ul.show {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
.filter .dropdown ul li {
  padding: 5px 0;
}
@media only screen and (max-width: 767px) {
  .filter {
    flex-wrap: wrap;
  }
}
.nft {
  padding: 106px 0;
}
.nft .container {
  max-width: 1324px;
}
.nft-item {
  background: #282B46;
  border-radius: 24px;
  padding: 14px 14px 8px;
  transition: all 0.3s ease-in-out;
  margin-bottom: 30px;
}
.nft-item .card-media {
  width: 100%;
  height: 272px;
  border-radius: 24px;
  overflow: hidden;
  margin-bottom: 21px;
}
.nft-item .card-media a {
  width: 100%;
  height: 100%;
}
.nft-item .card-media a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}
.nft-item .card-title {
  margin-bottom: 18px;
}
.nft-item .card-title a {
  font-size: 18px;
}
.nft-item .meta-info {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
}
.nft-item .meta-info .author {
  display: flex;
  align-items: center;
}
.nft-item .meta-info .author .avatar {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 9px;
}
.nft-item .meta-info .author .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.nft-item .meta-info .author .info span {
  font-weight: 400;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.3);
  display: block;
}
.nft-item .meta-info .author .info a {
  font-weight: 600;
  font-size: 14px;
}
.nft-item .meta-info .wishlist-button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center;
  color: #fff;
}
.nft-item .meta-info .wishlist-button span {
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 12px;
}
.nft-item .card-bottom {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 16px;
}
.nft-item .card-bottom .price {
  display: flex;
  align-items: center;
}
.nft-item .card-bottom .price span {
  font-size: 20px;
  margin-right: 7px;
}
.nft-item .card-bottom .price .price-details span {
  font-weight: 400;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.3);
}
.nft-item .card-bottom .price .price-details h6 {
  font-size: 14px;
}
.nft-item .card-bottom .sc-button {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  border-radius: 8px;
  padding: 8px 20px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.nft-item .card-bottom .sc-button::after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.13) 0px, rgba(255, 255, 255, 0.13) 77%, rgba(255, 255, 255, 0.5) 92%, rgba(255, 255, 255, 0));
  content: "";
  height: 200%;
  left: -210%;
  opacity: 0;
  position: absolute;
  top: -50%;
  transition: all 0.7s ease 0s;
  width: 200%;
}
.nft-item .card-bottom .sc-button:hover::after {
  left: -30%;
  opacity: 1;
  top: -20%;
  transition-duration: 0.7s, 0.7s, 0.15s;
  transition-property: left, top, opacity;
  transition-timing-function: linear;
}
.nft-item:hover {
  transform: translateY(-10px);
}
.nft-item:hover .card-media a img {
  transform: scale(1.1);
}
.widget-search {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
}
.widget-search input {
  padding: 16px 13px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(2px);
  color: #fff;
  border-radius: 10px;
  box-shadow: none;
  outline: none;
  border: none;
  width: 100%;
}
.widget-search input::placeholder {
  color: #fff;
}
.widget-search .btn-search {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.bloglist {
  padding: 106px 0;
}
@media only screen and (max-width: 1024px) {
  .bloglist {
    padding: 60px 0;
  }
}
.bloglist__main {
  display: flex;
}
.bloglist__main .list {
  width: 75%;
  padding-right: 49px;
}
.bloglist__main .sidebar {
  width: 25%;
  padding-left: 23px;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}
.bloglist__main .sidebar .widget-search {
  margin-bottom: 36px;
}
.bloglist__main .sidebar .widget-sidebar {
  margin-bottom: 34px;
}
.bloglist__main .sidebar .widget-sidebar .heading {
  font-size: 18px;
  position: relative;
  padding-bottom: 14px;
  margin-bottom: 20px;
}
.bloglist__main .sidebar .widget-sidebar .heading::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 1px;
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  border-radius: 1.2px;
}
.bloglist__main .sidebar .widget-sidebar ul {
  padding-left: 16px;
}
.bloglist__main .sidebar .widget-sidebar ul li {
  list-style: disc;
  margin-bottom: 10px;
}
.bloglist__main .sidebar .widget-sidebar ul li:last-child {
  margin-bottom: 0;
}
.bloglist__main .sidebar .widget-sidebar ul li a {
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 16px;
}
.bloglist__main .sidebar .widget-sidebar ul li a span {
  color: rgba(255, 255, 255, 0.5);
}
.bloglist__main .sidebar .widget-sidebar.recent ul {
  padding: 0;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li {
  display: flex;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 19px;
  margin-bottom: 20px;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .image {
  width: 76px;
  height: 76px;
  min-width: 76px;
  border-radius: 6px;
  overflow: hidden;
  margin-right: 14px;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .image a {
  width: 100%;
  height: 100%;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .image a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .content .meta {
  margin-bottom: 10px;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .content .meta a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .content .meta a svg {
  margin-right: 5px;
}
.bloglist__main .sidebar .widget-sidebar.recent ul li .content .title {
  font-family: "Conthrax";
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
}
.bloglist__main .sidebar .widget-sidebar.tag ul {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
}
.bloglist__main .sidebar .widget-sidebar.tag ul li {
  list-style: none;
  margin-right: 8px;
}
.bloglist__main .sidebar .widget-sidebar.tag ul li a {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(2px);
  border-radius: 6px;
  padding: 10px 16px;
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 14px;
}
.bloglist__main .sidebar .widget-sidebar.tag ul li a:hover {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
  color: #fff;
}
@media only screen and (max-width: 1200px) {
  .bloglist__main {
    flex-wrap: wrap;
  }
  .bloglist__main .list {
    width: 100%;
    padding-right: 0;
  }
  .bloglist__main .sidebar {
    width: 100%;
    margin-top: 60px;
    padding-left: 0;
    border: none;
  }
}
.blog-box-2 {
  display: flex;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 30px;
  margin-bottom: 30px;
}
.blog-box-2 .image {
  background: linear-gradient(89.95deg, rgba(255, 255, 255, 0.05) -2.98%, rgba(255, 255, 255, 0.008) 49.65%, rgba(255, 255, 255, 0.05) 102.98%);
  backdrop-filter: blur(2px);
  border-radius: 26px;
  overflow: hidden;
  padding: 10px;
  height: 240px;
  width: 350px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.blog-box-2 .image a {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 26px;
}
.blog-box-2 .image a img {
  width: 100%;
  height: 100%;
  border-radius: 26px;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}
.blog-box-2 .content {
  width: calc(100% - 350px);
  padding-left: 30px;
}
.blog-box-2 .content .meta {
  margin-bottom: 8px;
}
.blog-box-2 .content .meta p {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: rgba(255, 255, 255, 0.5);
}
.blog-box-2 .content .meta p svg {
  margin-right: 10px;
}
.blog-box-2 .content .title {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .blog-box-2 {
    flex-wrap: wrap;
  }
  .blog-box-2 .image {
    width: 100%;
  }
  .blog-box-2 .content {
    width: 100%;
    padding-top: 30px;
    padding-left: 0;
  }
}
.blog-box-2:hover .image a img {
  transform: scale(1.1);
}
.create {
  position: relative;
}
.partner {
  position: relative;
  padding: 106px 0 11px;
}
.partner .block-text .heading {
  margin-bottom: 60px;
}
.partner .brands-swiper {
  margin-top: 50px;
}
.page-advisor .team.s2 {
  padding: 107px 0 69px;
}
.page-advisor .team.s2 .team-box .content .name {
  margin-bottom: 0;
}
.page-advisor .partner {
  padding: 3px 0 11px;
}
.page-advisor .faq {
  padding: 96px 0 89px;
}
.pagination ul {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.pagination ul li {
  margin: 0 5px;
}
.pagination ul li a {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  font-weight: 600;
  font-size: 20px;
  color: #fff;
}
.pagination ul li a:hover {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
}
.widget-join {
  background: url("../../../assets/images/background/join.png") no-repeat;
  background-size: cover;
  text-align: center;
  padding: 23px 25px 17px;
  border-radius: 6px;
}
@media only screen and (max-width: 1200px) {
  .widget-join {
    padding: 50px 20px;
  }
}
.widget-join h5 {
  font-size: 20px;
  margin-top: 20px;
  margin-bottom: 52px;
}
.widget-join .action-btn {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
}
.widget-join .action-btn span {
  padding: 15px 52px;
}
.list.details .title {
  margin-bottom: 17px;
}
.list.details p svg {
  margin-right: 7px;
}
.line {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  margin: 23px 0;
}
.content-d {
  display: flex;
  margin-top: 40px;
}
.content-d .list-social {
  margin-top: 0;
  margin-right: 30px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
.content-d .list-social li {
  margin: 0;
  margin-bottom: 10px;
}
.content-d .main p.boild {
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 26px;
}
.content-d .main .image {
  width: 100%;
  margin-bottom: 27px;
}
.content-d .main .image img {
  width: 100%;
  height: 403px;
  object-fit: cover;
  margin-bottom: 14px;
}
.content-d .main .image p {
  font-size: 12px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.5);
}
.content-d .main p {
  font-weight: 300;
  font-size: 16px;
}
.content-d .main .bottom {
  display: flex;
  align-items: center;
  margin-top: 33px;
}
.content-d .main .bottom p {
  font-size: 12px;
  margin-right: 12px;
}
.content-d .main .bottom .list-tag {
  display: flex;
}
.content-d .main .bottom .list-tag li {
  margin-right: 4px;
}
.content-d .main .bottom .list-tag li a {
  padding: 6px 8px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  border-radius: 6px;
  font-family: "Readex Pro";
  font-weight: 400;
  font-size: 12px;
}
.content-d .main .bottom .list-tag li a:hover {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%);
}
.bottom {
  margin-top: 40px;
}
.bottom .recent {
  display: flex;
  justify-content: space-between;
  margin: 0 -10px;
}
.bottom .recent .ac {
  display: flex;
  align-items: center;
  background: url("../../../assets/images/background/recent.png") no-repeat;
  background-size: cover;
  background-position: center center;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 6px;
  margin: 0 10px;
  padding: 15px 10px 15px 17px;
  position: relative;
}
.bottom .recent .ac::before {
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
}
.bottom .recent .ac svg {
  margin-right: 10px;
  position: relative;
  z-index: 1;
}
.bottom .recent .ac.next {
  flex-direction: row-reverse;
  padding: 15px 14px 15px 10px;
  background: url("../../../assets/images/background/recent-2.png") no-repeat;
}
.bottom .recent .ac.next svg {
  margin-right: 0;
  margin-left: 22px;
}
.bottom .recent .ac.next .meta a svg {
  margin-left: 0;
}
.bottom .recent .ac div {
  position: relative;
  z-index: 1;
}
.bottom .recent .ac div .meta {
  margin-bottom: 6px;
}
.bottom .recent .ac div .meta a {
  font-family: "Readex Pro";
  font-weight: 300;
  font-size: 14px;
}
.bottom .recent .ac div .meta a svg {
  margin-right: 5px;
}
.bottom .recent .ac div .title {
  font-size: 14px;
  margin-bottom: 0;
}
.bottom .comment {
  margin-top: 44px;
}
.bottom .comment h5 {
  margin-bottom: 26px;
}
.bottom .form-box {
  width: 100%;
  padding: 0;
  margin-top: 41px;
}
.comment-box {
  display: flex;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 20px;
  margin-top: 19px;
}
.comment-box.s1 {
  border: none;
  padding: 0;
  margin: 0;
}
.comment-box.rep {
  margin-left: 65px;
}
.comment-box .avt {
  width: 50px;
  height: 50px;
  min-width: 50px;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 14px;
}
.comment-box .avt img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.comment-box .info .name {
  margin-bottom: 5px;
}
.comment-box .info .meta {
  margin-bottom: 13px;
}
.comment-box .info .text {
  margin-bottom: 13px;
}
.comment-box .info a {
  font-family: "Readex Pro";
  font-weight: 700;
  font-size: 14px;
}
.page-details .footer .footer__bottom {
  padding: 22px 0;
}
.page-visions .about {
  padding: 80px 0 216px;
  overflow: hidden;
}
.page-visions .about .block-text {
  padding: 96px 0 43px;
}
.page-visions .about .block-text:last-child {
  padding: 0;
}
.page-visions .about .about__right {
  margin-left: 117px;
}
.page-visions .about .about__right .images::after {
  right: 8px;
  transform: rotate(-10deg);
}
.page-visions .about .about__right .images .img2 {
  top: 147px;
  left: auto;
  right: -87px;
  z-index: 3;
}
.page-visions .about .about__right .images .img3 {
  left: auto;
  right: -95px;
  bottom: -117px;
}
.page-visions .about .about__right .images .img4 {
  bottom: -89px;
  left: 197px;
}
.page-visions .about .about__right .images .img5 {
  right: auto;
  left: -87px;
  bottom: -69px;
}
.page-visions .faq {
  padding: 96px 0 91px;
}
.page-help .faq {
  padding: 105px 0 102px;
}
@media only screen and (max-width: 1024px) {
  .page-help .faq {
    padding: 60px 0;
  }
}
.page-help .faq .widget-search {
  max-width: 540px;
  margin: 25px auto 30px;
}
.page-help .faq .faq__main {
  margin-top: 61px;
}
.page-help .faq .faq__main .action-btn span {
  padding: 14px 28px;
}
.watch-video {
  padding: 0 0 100px;
  position: relative;
}
.watch-video__main {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(2px);
  border-radius: 26px;
  padding: 16px;
  margin-top: 39px;
}
.watch-video__main .main {
  background: url("../../../assets/images/background/watch.png") no-repeat;
  background-position: center center;
  padding: 30px 15px 0;
  border-radius: 26px;
  text-align: center;
}
.watch-video__main .main h5 {
  margin-bottom: 33px;
}
@media only screen and (max-width: 1024px) {
  .watch-video__main .main img {
    width: 100%;
  }
}
.wrap-video {
  margin-bottom: 27px;
}
.wrap-video a {
  margin: 0 auto;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  animation: 2s pulse-anim2 infinite;
}
@keyframes pulse-anim2 {
  0% {
    box-shadow: rgba(255, 255, 255, 0.4) 0 0 0 0;
  }
  100% {
    box-shadow: rgba(255, 255, 255, 0.1) 0 0 0 10px;
  }
}
.assets {
  position: relative;
}
.assets .shape {
  top: -130%;
}
.assets .container {
  max-width: 1750px;
}
.assets .block-text {
  padding: 0 400px;
}
@media only screen and (max-width: 1200px) {
  .assets .block-text {
    padding: 0;
  }
}
.assets .block-text .heading {
  margin-bottom: 42px;
}
.assets .assets__main {
  margin-top: 33px;
}
.assets .assets__main h5 {
  margin-bottom: 30px;
}
.assets .assets__main img {
  margin-left: -15px;
  width: 100%;
}
.participants {
  padding: 107px 0 99px;
}
@media only screen and (max-width: 1024px) {
  .participants {
    padding: 60px 0;
  }
}
.participants .block-text .heading {
  margin-bottom: 40px;
}
.participants .par-bot {
  margin-top: 50px;
  padding: 0 100px;
}
@media only screen and (max-width: 1024px) {
  .participants .par-bot {
    padding: 0;
  }
}
.participants .par-bot a span {
  padding: 15px 54px;
}
/* Modal Popup  */
.popup .modal-content {
  border-radius: 20px !important;
  border: none !important;
  box-shadow: 0px 3px 16px rgba(47, 83, 109, 0.12) !important;
  background-color: #070A29;
  width: 100%;
  position: relative;
  display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  flex-direction: column;
}
.popup .modal-content input {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #fff;
  box-shadow: none;
  outline: none;
}
.popup .modal-content input:focus {
  border-color: var(--primary-color);
}
.popup .modal-body {
  padding: 25px;
}
.modal-body .price {
  font-weight: 500;
  font-size: 16px;
}
.modal-body .quantity {
  color: var(--primary-color2);
}
.modal-body .btn.btn-primary:hover {
  opacity: 0.8;
}
.modal-content .close {
  overflow: hidden;
  height: 30px;
  width: 30px;
  border-radius: 50px;
  position: absolute;
  right: -15px;
  top: -15px;
  background-color: #070A29;
  border: none;
  outline: none;
  z-index: 10 !important;
  opacity: 1;
  box-shadow: 0px 3px 16px rgba(47, 83, 109, 0.12);
}
.modal-content .close:hover {
  opacity: 1;
}
.modal-content .close span {
  font-size: 15px;
  color: var(--primary-color2);
}
.modal-body h4 {
  text-align: center;
  font-size: 30px;
}
.modal {
  z-index: 999999 !important;
}
.modal-open .modal {
  overflow: hidden !important;
  padding-right: 0 !important;
}
.modal-dialog-centered {
  display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  align-items: center;
  min-height: calc(100% - 1rem);
  max-width: 500px;
  margin: 1.75rem auto;
}
.modal.fade.popup.show {
  padding-right: 0 !important;
}
.bannerSwiper {
  position: relative;
}
.cardSwiper {
  padding: 100px 0;
}
.cardSwiper .swiper-slide.swiper-slide-prev {
  transform: translateY(-10px) rotate(20deg) !important;
}
.cardSwiper .swiper-slide.swiper-slide-active {
  transform: rotate(0) !important;
  z-index: 9 !important;
}
.cardSwiper .swiper-slide.swiper-slide-next {
  transform: translateY(-10px) rotate(-20deg) !important;
}
section.banner.s3.s2 .container {
  max-width: 1230px;
}
section.banner.s3.s2 .container .swiper-button-next, section.banner.s3.s2 .container .swiper-button-prev {
  bottom: 0%;
}
section.banner.s3.s2 .container .swiper-button-next {
  right: 46%;
}
section.banner.s3.s2 .container .swiper-button-prev {
  left: 46%;
}
.card-box.s2 {
  width: 700px;
}
.card-box.s2 .content {
  position: absolute;
  top: 50px;
  left: 40px;
}
@media only screen and (max-width: 767px) {
  .card-box.s2 {
    width: auto;
  }
}
.card-box.s2 .image {
  /*height: 612px;*/
  border-radius: 0px;
  overflow: hidden;
  margin-bottom: 0px;
}
.card-box.s2 .image img {
  width: 100%;
  height: auto;
  object-fit: contain;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 767px) {
  .card-box.s2 .image {
    width: 100%;
  }
}
.banner.s4 .swiper-button-next, .banner.s4 .swiper-button-prev {
  bottom: 40%;
  z-index: 9999;
}
.rdSwiper2 {
  padding-bottom: 0px;
}
.banner.s4 .swiper-button-prev {
  left: 0px;
}
.banner.s4 .swiper-button-next {
  right: 0px;
}
.banner.s4 .swiper-pagination {
  bottom: 20px;
  left: 0px;
}
@media only screen and (max-width: 1024px) {
  .banner.s4 .swiper-pagination {
    left: 0;
  }
}
.banner.s4 .swiper-pagination .swiper-pagination-bullet {
  width: 70px;
  height: 6px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.1);
}
.banner.s4 .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #fff;
}
.bannerSwiper3 {
  padding-top: 100px;
}
@media only screen and (max-width: 1024px) {
  .bannerSwiper3 {
    padding-top: 0;
  }
}
.banner.s3 .right-c .swiper-button-prev {
  bottom: 49%;
  left: 49%;
}
.banner.s3 .right-c .swiper-button-next {
  bottom: 57%;
  right: auto;
  left: 49%;
}
.right-c {
  padding-left: 200px;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .right-c {
    padding-left: 0;
  }
}
.container-fluid.s4 {
  max-width: 1750px;
}
.cardSwiper4 {
  padding: 100px 0 0;
}
.banner.s2 .container-fluid.s4 .swiper-button-prev, .banner.s2 .container-fluid.s4 .swiper-button-next {
  bottom: 10%;
}
.banner.s2 .container-fluid.s4 .swiper-button-prev {
  left: 46%;
}
.banner.s2 .container-fluid.s4 .swiper-button-next {
  right: 46%;
}
.pd {
  padding: 0 460px;
}
@media only screen and (max-width: 1400px) {
  .pd {
    padding: 0;
  }
}
.cardSwiper5 {
  padding: 100px 0 100px;
}
.cardSwiper5 .swiper-slide .card-box.s2 {
  width: 350px;
  height: 430px;
  padding: 0;
}
@media only screen and (max-width: 600px) {
  .cardSwiper5 .swiper-slide .card-box.s2 {
    width: 100%;
  }
}
.cardSwiper5 .swiper-slide .card-box.s2 .image {
  height: 100%;
}
.cardSwiper5 .swiper-slide .card-box.s2 .content {
  top: 30px;
  left: 30px;
  display: none;
}
.cardSwiper5 .swiper-slide .card-box.s2 .top {
  position: absolute;
  bottom: 20px;
  left: 20px;
  margin-bottom: 0;
  display: none !important;
}
.cardSwiper5 .swiper-slide.swiper-slide-active .card-box.s2 .content, .cardSwiper5 .swiper-slide.swiper-slide-active .card-box.s2 .top {
  display: block !important;
}
.preloader {
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999999;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.clear-loading {
  text-align: center;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -50px;
  margin-left: -50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
.loading-effect-2 {
  width: 100px;
  height: 100px;
}
.loading-effect-2 > span, .loading-effect-2 > span:before, .loading-effect-2 > span:after {
  content: "";
  display: block;
  border-radius: 50%;
  border: 2px solid var(--primary-color);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.loading-effect-2 > span {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-left-color: transparent;
  -webkit-animation: effect-2 2s infinite linear;
  -moz-animation: effect-2 2s infinite linear;
  -ms-animation: effect-2 2s infinite linear;
  -o-animation: effect-2 2s infinite linear;
  animation: effect-2 2s infinite linear;
}
.loading-effect-2 > span:before {
  width: 75%;
  height: 75%;
  border-right-color: transparent;
}
.loading-effect-2 > span:after {
  width: 50%;
  height: 50%;
  border-bottom-color: transparent;
}
@-webkit-keyframes effect-2 {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes effect-2 {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.page-title {
  position: relative;
  background: url("../../../assets/images/background/bg-banner.png") no-repeat;
  padding: 24px 0;
}
.page-title .shape {
  top: -110%;
  left: -20%;
  width: 800px;
  height: 800px;
}
.page-title .page-title__body {
  background: linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(2px);
  border-radius: 26px;
  padding: 16px;
}
.page-title .page-title__main {
  background: linear-gradient(264.28deg, #DEC7FF -38.2%, #5C27FE 103.12%), linear-gradient(89.96deg, rgba(255, 255, 255, 0.05) 0.03%, rgba(255, 255, 255, 0.008) 49.67%, rgba(255, 255, 255, 0.05) 99.96%);
  backdrop-filter: blur(2px);
  border-radius: 26px;
  padding: 30px;
  text-align: center;
}
.page-title .page-title__main .bottom {
  padding-top: 35px;
  margin-top: 30px;
  position: relative;
}
.page-title .page-title__main .bottom::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  right: 50%;
  transform: translate(-50%, -50%);
  height: 1px;
  width: 96px;
  background: rgba(255, 255, 255, 0.1);
}
.page-title .page-title__main .bottom p {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 10px;
}
.page-title .page-title__main .bottom .list-social {
  margin-top: 0;
}
.page-title .breacrumb {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 15px;
}
.page-title .breacrumb li {
  margin: 0 16px;
  font-weight: 300;
  font-size: 14px;
  color: #fff;
  font-family: "Readex Pro";
}
.page-title .breacrumb li a {
  font-weight: 300;
  font-size: 14px;
  color: #C2C3C5;
  font-family: "Readex Pro";
}
.page-title .breacrumb li a:hover {
  color: var(--primary-color);
}
/*----------------------add----------------------*/
.cardSwiper2 {
  overflow: visible;
}
.cardSwiper2 .swiper-slide .image img {
  width: 100%;
  height: auto;
  transition: all 0.3s ease;
}
.cardSwiper2 .swiper-slide:not(.swiper-slide-active) .image img {
  filter: blur(10px);
  opacity: 0;
}
.top-banner {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  margin-bottom: 0px;
}
.top-banner:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #005bac;
  transform-origin: bottom right;
  transform: skewY(6deg) translateY(91%);
}
.blue-diagonal-shape {
  position: relative;
  width: 100%;
  height: 160px;
  overflow: hidden;
  margin-bottom: 40px;
}
.blue-diagonal-shape::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f00;
  transform-origin: bottom right;
  transform: skewY(5deg) translateY(50%);
}
.cardSwiper2 .swiper-pagination {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
  z-index: 10;
}
/* 分頁指示器點的基本樣式 - 改為橫線 */
.cardSwiper2 .swiper-pagination-bullet {
  width: 40px !important; /* 橫線寬度 */
  height: 6px !important; /* 橫線高度 */
  display: inline-block;
  border-radius: 0; /* 方形而非圓形 */
  background: rgba(255, 255, 255, 0.5); /* 半透明白色 */
  margin: 0 5px;
  opacity: 1;
  cursor: pointer;
}
.project-swiper .swiper-pagination-bullet {
  background: #005bac
}
/* 當前活動頁的分頁指示器樣式 */
.cardSwiper2 .swiper-pagination-bullet-active {
  background: #fff;
  opacity: 1;
}
.project-swiper {
  margin-top: 0;
}
.project-swiper .swiper-slide {
  margin-right: 24px !important;
}
.btn-line {
  background-color: #39cd00;
  color: #fff;
  font-weight: 600;
  padding: 2px 15px 2px 42px;
  border-radius: 999px;
  background-image: url("../../assets/images/icon-line.svg");
  background-repeat: no-repeat;
  background-position: 16px center;
  background-size: 22px auto;
  font-size: 1rem;
}
.btn-line:hover {
  color: #fff !important;
}
.pic-1 {
  position: relative;
  width: 100%;
  height: 0;
}
.pic-1-in {
  position: absolute;
  width: 220px;
  height: auto;
  z-index: 999;
  top: -380px;
  left: 490px;
}
.pic-1-in img {
  width: 100%;
  height: auto;
}
.bg-2 {
  background-image: url("../../assets/images/bg-2.jpg");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-color: #fff;
  background-attachment: fixed;
}
.wave-top {
  height: 60px;
  overflow: hidden;
  background: transparent;
  line-height: 0;
}
.wave-top svg {
  display: block;
  width: 100%;
  height: 100%;
}
.plan-box {
  padding: 50px 40px 40px;
  color: white;
}
/* 表單樣式 */
.form-box {
  max-width: 100%;
  margin: 0 auto;
}
.form-box .row {
  margin-bottom: 20px;
}
.form-control {
  width: 100%;
  padding: 10px 15px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 16px !important;
  font-weight: 400 !important;
  background-color: #fff !important; /* 白色底色 */
  color: #333 !important; /* 文字顏色 */
}
.form-label {
  display: block;
  font-size: 17px !important;
  font-weight: 600 !important;
  margin-bottom: 8px;
  color: #FFF;
}
/* Radio 按鈕樣式 */
.radio-group, .checkbox-group {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 5px;
}
.channels-group {
  gap: 6px 20px;
}
.custom-radio, .custom-checkbox {
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  font-size: 16px;
  user-select: none;
}
.custom-radio input, .custom-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.radio-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #f4f4f4;
  border: 1px solid #ddd;
  border-radius: 50%;
}
.checkbox-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #f4f4f4;
  border: 1px solid #ddd;
  border-radius: 3px;
}
/* 懸停時的樣式 */
.custom-radio:hover input ~ .radio-checkmark, .custom-checkbox:hover input ~ .checkbox-checkmark {
  background-color: #fff;
}
/* 選中時的樣式 */
.custom-radio input:checked ~ .radio-checkmark {
  background-color: var(--red);
  border-color: var(--red);
}
.custom-checkbox input:checked ~ .checkbox-checkmark {
  background-color: var(--red);
  border-color: var(--red);
}
/* 選中標記 */
.radio-checkmark:after, .checkbox-checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
.custom-radio input:checked ~ .radio-checkmark:after, .custom-checkbox input:checked ~ .checkbox-checkmark:after {
  display: block;
}
.custom-radio .radio-checkmark:after {
  top: 4px;
  left: 5px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: white;
}
.custom-checkbox .checkbox-checkmark:after {
  left: 7px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
/* 其它選項和文字欄位在同一行 */
.other-option-container {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%;
}
.other-input {
  width: 200px;
  margin-left: 15px;
}
/* 驗證碼組樣式 */
.captcha-group {
  display: flex;
  align-items: center;
}
.captcha-input {
  flex: 1;
}
.captcha-container {
  display: flex;
  align-items: center;
  margin-left: 10px;
}
.captcha-image {
  height: 42px;
}
.refresh-captcha {
  background: #255aa6;
  color: white;
  border: none;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  margin-left: 10px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.refresh-captcha:hover {
  background: #1d4580;
}
.form-box span {
  font-size: 16px;
  color: rgba(255, 255, 255, .8)
}
.plan-box {
  position: relative;
  overflow: hidden;
}
.plan-box .banner {
  padding-top: 90px;
}
.plan-box p {
  font-size: 1.1rem;
  line-height: 1.7;
  font-weight: 400;
  margin-top: 5px;
}
.plan-container {
  width: 100%;
  max-width: 800px;
  margin: 50px auto;
  /* 添加背景圖片以顯示透明效果 */
  background: url('/api/placeholder/800/500') center/cover;
  padding: 20px;
  border-radius: 12px;
}
/* 計劃方塊的漸層背景 - 從上方透明到下方藍色 */
.plan-box {
  overflow: hidden; /* 確保溢出的線條被隱藏 */
}
/* 白色線條的容器 */
.white-lines-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200px;
  opacity: 1
}
/* 線條的基本樣式 */
.white-line {
  position: absolute;
  width: 100%;
  left: 0;
  animation: waveUp 4s ease-in-out infinite; /* 線條向上浮動的動畫 */
}
/* 20條線條設置 - 從上到下均勻間距和遞減的不透明度和粗細 */
.white-line:nth-child(1) {
  top: 0px;
  height: 10px;
  background-color: rgba(255, 255, 255, 1.0);
  animation-delay: 0s;
}
.white-line:nth-child(2) {
  top: 10px;
  height: 9.5px;
  background-color: rgba(255, 255, 255, 0.95);
  animation-delay: 0.1s;
}
.white-line:nth-child(3) {
  top: 20px;
  height: 9px;
  background-color: rgba(255, 255, 255, 0.9);
  animation-delay: 0.2s;
}
.white-line:nth-child(4) {
  top: 30px;
  height: 8.5px;
  background-color: rgba(255, 255, 255, 0.85);
  animation-delay: 0.3s;
}
.white-line:nth-child(5) {
  top: 40px;
  height: 8px;
  background-color: rgba(255, 255, 255, 0.8);
  animation-delay: 0.4s;
}
.white-line:nth-child(6) {
  top: 50px;
  height: 7.5px;
  background-color: rgba(255, 255, 255, 0.75);
  animation-delay: 0.5s;
}
.white-line:nth-child(7) {
  top: 60px;
  height: 7px;
  background-color: rgba(255, 255, 255, 0.7);
  animation-delay: 0.6s;
}
.white-line:nth-child(8) {
  top: 70px;
  height: 6.5px;
  background-color: rgba(255, 255, 255, 0.65);
  animation-delay: 0.7s;
}
.white-line:nth-child(9) {
  top: 80px;
  height: 6px;
  background-color: rgba(255, 255, 255, 0.6);
  animation-delay: 0.8s;
}
.white-line:nth-child(10) {
  top: 90px;
  height: 5.5px;
  background-color: rgba(255, 255, 255, 0.55);
  animation-delay: 0.9s;
}
.white-line:nth-child(11) {
  top: 100px;
  height: 5px;
  background-color: rgba(255, 255, 255, 0.5);
  animation-delay: 1.0s;
}
.white-line:nth-child(12) {
  top: 110px;
  height: 4.5px;
  background-color: rgba(255, 255, 255, 0.45);
  animation-delay: 1.1s;
}
.white-line:nth-child(13) {
  top: 120px;
  height: 4px;
  background-color: rgba(255, 255, 255, 0.4);
  animation-delay: 1.2s;
}
.white-line:nth-child(14) {
  top: 130px;
  height: 3.5px;
  background-color: rgba(255, 255, 255, 0.35);
  animation-delay: 1.3s;
}
.white-line:nth-child(15) {
  top: 140px;
  height: 3px;
  background-color: rgba(255, 255, 255, 0.3);
  animation-delay: 1.4s;
}
.white-line:nth-child(16) {
  top: 150px;
  height: 2.5px;
  background-color: rgba(255, 255, 255, 0.25);
  animation-delay: 1.5s;
}
.white-line:nth-child(17) {
  top: 160px;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.2);
  animation-delay: 1.6s;
}
.white-line:nth-child(18) {
  top: 170px;
  height: 1.5px;
  background-color: rgba(255, 255, 255, 0.15);
  animation-delay: 1.7s;
}
.white-line:nth-child(19) {
  top: 180px;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.1);
  animation-delay: 1.8s;
}
.white-line:nth-child(20) {
  top: 190px;
  height: 0.5px;
  background-color: rgba(255, 255, 255, 0.05);
  animation-delay: 1.9s;
}
/* 向上浮動的動畫定義 */
@keyframes waveUp {
  0% {
    transform: translateY(0); /* 起始位置 */
  }
  50% {
    transform: translateY(-8px); /* 中間位置 - 向上移動8px */
  }
  100% {
    transform: translateY(-18px); /* 結束位置 - 向上移動18px並淡出 */
    opacity: 0;
  }
}
.bg-3 {
  background-color: #005bac;
  background-image: url("../../assets/images/bg-3.jpg");
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: 170% auto;
  background-position: left -100px;
}
.p-style-1 {
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.8;
  font-weight: 400;
  margin-top: 6px;
  margin-bottom: 40px;
}
.p-style-1 a {
  color: #fff !important;
  text-decoration: none;
  border: 1px solid #fff !important;
  border-radius: 999px !important;
  display: inline-block;
  padding: 6px 12px;
  line-height: 1;
}
.p-style-2 {
  color: rgba(255, 255, 255, .7);
  font-size: 15px !important;
  line-height: 1.8;
  font-weight: 400;
  margin-top: 6px;
  margin-bottom: 0px;
  text-align: center;
}
.p-style-3 {
  font-size: 1.1rem !important;
  letter-spacing: 0.05rem !important;
}
.p-style-4 {
  font-size: 1rem !important;
  margin-top: 7px;
  font-weight: 400 !important;
  border-left: 1px solid #fff;
  padding: 0 0 0 15px;
}
.logo img {
  height: 40px;
}
.text-p1 {
  font-size: 17px;
  color: rgba(255, 255, 255, .9);
  margin-bottom: 20px;
  line-height: 1.6;
}
.title-style-1 {
  display: inline-block;
  width: auto;
  border-bottom: 2px solid #fff;
  font-size: 1.3rem;
  margin-top: 25px;
}
.title-style-2 {
  display: inline-block;
  width: auto;
  font-family: "Noto Sans TC", sans-serif !important;
  font-size: 1.4rem !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
  font-style: italic;
  margin-top: 15px !important;
  padding-left: 34px;
  position: relative;
}
.title-style-2 svg {
  position: absolute;
  left: -5px;
}
.no-icon {
  background-color: #fff;
  color: var(--blue);
  width: 24px;
  height: 24px;
  text-align: center;
  border-radius: 999px;
  font-size: 1rem;
  line-height: 22px;
  margin-right: 5px;
  display: inline-block;
  font-weight: 900;
  font-style: italic;
  padding-right: 3px;
}
/* Lightbox 樣式 */
.lightbox {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.3s ease;
  opacity: 0;
}
.lightbox.show {
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 1;
}
.lightbox-content {
  position: relative;
  background-color: #fff;
  margin: 5% auto;
  padding: 0;
  border-radius: 8px;
  width: 80%;
  max-width: 700px;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  opacity: 0;
  transform: scale(0.9) translateY(-20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  background-image: url(../../assets/images/bg-2.jpg);
  background-size: 300% auto;
  background-position: center top;
}
.lightbox.show .lightbox-content {
  opacity: 1;
  transform: scale(1) translateY(0);
}
.lightbox-header {
  padding: 25px 30px 5px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.lightbox-header h3 {
  margin: 0;
  font-size: 1.5rem;
  color: #222;
}
@keyframes slideInDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.lightbox-body {
  padding: 10px 30px 20px;
  overflow-y: auto;
  flex: 1;
}
.lightbox-body h4 {
  margin-top: 15px;
  margin-bottom: 5px;
  font-size: 1.2rem;
  color: #333;
}
.lightbox-body p, .lightbox-body ul {
  margin-bottom: 2px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: #555;
  font-weight: 400;
}
.lightbox-body ul {
  padding-left: 20px;
}
.lightbox-body li {
  padding-left: 0px;
  list-style-type: disc;
}
.lightbox-footer {
  padding: 20px 20px 28px;
  border-top: 1px solid #e5e5e5;
  text-align: center;
}
.close-btn {
  color: #222;
  background: none;
  border: none;
  font-size: 28px;
  cursor: pointer;
  padding: 0;
  margin: 0;
  margin-top: -10px;
}
.close-btn:hover {
  color: #222;
}
.btn-agree {
  padding: 8px 40px;
  background-color: #cf3346;
  color: white;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 500;
}
.btn-agree:hover {
  background-color: #cf3346;
  color: #fff !important;
  transform: scale(1.05) translateY(0px);
}
/* 增加隱私權條款連結的動畫效果 */
.privacy-agreement a {
  position: relative;
  transition: color 0.3s ease;
}
.privacy-agreement a:after {
  content: '';
  position: absolute;
  width: 0;
  height: 1px;
  bottom: -2px;
  left: 2px;
  right: 2px;
  background-color: #fff;
  transition: width 0.3s ease;
}
.privacy-agreement a:hover:after {
  width: 100%;
}
/* 按鈕動畫效果 */
.btn-agree {
  transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.btn-agree:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.btn-agree:active {
  transform: translateY(0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
/* 隱私權同意區塊樣式 */
.privacy-agreement {
  margin-top: 10px;
  margin-bottom: 0px;
  padding-top: 1rem;
  padding-left: .5rem;
  border-top: 1px solid rgba(255, 255, 255, .4);
}
.privacy-agreement a {
  color: #fff;
  text-decoration: none;
}
.privacy-agreement a:hover {
  text-decoration: none;
}
.tables-container {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}
/*表格*/
.table-wrapper {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(255, 255, 255, 0.08);
  flex: 1;
  min-width: 300px;
  transition: all 0.3s ease;
  position: relative;
}
.table-wrapper:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(255, 255, 255, 0.12);
}
table {
  width: 100%;
  border-collapse: collapse;
}
th {
  background-color: #002346;
  color: #fff;
  font-weight: 500;
  padding: 14px 30px;
  font-size: 18px;
  border: none;
  position: relative;
  overflow: hidden;
}
/* 表頭光澤動畫效果 */
th::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.1), transparent);
  transform: skewX(-15deg) translateX(-100%);
  transition: transform 0.6s;
}
table:hover th::after {
  transform: skewX(-15deg) translateX(100%);
}
td {
  padding: 10px 30px;
  border-bottom: 1px solid rgba(0, 35, 70, 0.1);
  font-size: 17px;
  color: #222;
  font-weight: 400;
  background: transparent;
}
tr:hover td {
  background-color: rgba(255, 255, 255, 0.5);
}
.points {
  font-weight: bold;
  font-size: 22px;
  color: #007DCF;
  font-family: "Special Gothic Expanded One", sans-serif;
  display: flex;
  align-items: center;
  justify-content: flex-start
}
.points svg {
  width: 26px;
  height: 26px;
  position: relative;
  margin-right: 12px;
  margin-top: -4px;
  filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.1));
  transition: transform 0.3s ease;
}
tr:hover .points svg {
  transform: rotate(15deg) scale(1.45);
}
/* 流動光澤效果 */
.table-wrapper::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0) 100%);
  background-size: 200% 100%;
  animation: shimmer 3s infinite;
  pointer-events: none;
  z-index: 1;
}
@keyframes shimmer {
  0% {
    background-position: -100% 0;
  }
  100% {
    background-position: 100% 0;
  }
}
@media (max-width: 768px) {
  .tables-container {
    flex-direction: column;
  }
  .table-wrapper {
    margin-bottom: 20px;
  }
  .title h1 {
    font-size: 24px;
  }
  th {
    padding: 20px;
    font-size: 16px;
  }
  td {
    padding: 10px 20px;
    font-size: 16px;
  }
  .points {
    font-size: 18px;
  }
}
/* 動畫效果 */
@keyframes fadeIn2 {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.table-wrapper {
  animation: fadeIn2 0.6s ease-out forwards;
}
.table-wrapper:nth-child(1) {
  animation-delay: 0.1s;
}
.table-wrapper:nth-child(2) {
  animation-delay: 0.3s;
}
.speciality-box.s3 {
  text-align: center;
  margin-top: 110px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 73.86%);
  backdrop-filter: blur(4px);
  position: relative;
  padding: 65px 30px 10px;
  border-radius: 15px;
}
.speciality-box.s3 .icon {
  background: linear-gradient(289.89deg, #DEC7FF -23.71%, #5C27FE 96.09%);
  backdrop-filter: blur(4px);
  width: 180px;
  height: 180px;
  min-width: 180px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 1s ease-in-out;
  position: absolute;
  top: -18px;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow: hidden;
  object-fit: cover;
}
.speciality-box.s3 .icon img {
  width: 100%;
  height: 100%;
}
.speciality-box.s3:hover .icon {
  transform: translate(-50%, -50%) rotateY(-360deg);
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.9), 0 0 100px rgba(0, 150, 255, 0.5), 0 0 170px rgba(0, 150, 255, 0.5);
  filter: brightness(1.2);
  transition: transform 0.8s, box-shadow 0.8s, filter 0.8s;
}
.schedule-tabs {
  margin-top: 20px;
}
/*行程表*/
.timeline .event-date {
  display: inline-block;
  padding: 8px 20px;
  border: 2px solid var(--blue);
  border-radius: 30px;
  color: var(--blue);
  font-weight: 600;
  margin: 20px 0;
}
/* Timeline styles */
.timeline {
  position: relative;
  padding: 0;
  margin: 80px auto 0;
}
.timeline::after {
  content: '';
  position: absolute;
  width: 1px;
  background-color: #222;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -1px;
}
.timeline .event {
  position: relative;
  margin-bottom: 0px; /* Further reduced from 40px to 25px */
  margin-top: -45px;
}
.timeline .dot {
  position: absolute;
  width: 24px;
  height: 24px;
  background-color: var(--blue);
  border: 4px solid white;
  border-radius: 50%;
  z-index: 1;
  left: 50%;
  transform: translateX(-50%);
}
.timeline .connector {
  position: absolute;
  height: 1px;
  background-color: #222;
  top: 12px;
  z-index: 0;
}
.timeline .left-connector {
  right: 50%;
  width: 30px;
  margin-right: 8px;
}
.timeline .right-connector {
  left: 50%;
  width: 30px;
  margin-left: 8px;
}
.timeline .content-container {
  position: relative;
  width: 45%;
  padding-top: 0;
  margin-top: -5px;
}
.timeline .left {
  float: left;
  text-align: right;
  padding-right: 20px; /* Reduced from 40px */
}
.timeline .right {
  float: right;
  text-align: left;
  padding-left: 20px; /* Reduced from 40px */
}
.timeline .time-badge {
  display: inline-block;
  padding: 2px;
  color: var(--blue);
  border-bottom: 2px solid var(--blue);
  border-radius: 0px;
  font-weight: 600;
  margin-bottom: 2px;
  font-size: 20px;
  letter-spacing: 1px;
  font-family: "Special Gothic Expanded One", sans-serif;
}
.timeline .event-title {
  color: var(--blue);
  font-weight: 800;
  font-size: 1.4rem;
  position: relative;
  padding-bottom: 5px;
  padding-top: 3px;
}
/*.timeline .left .event-title::after,
        .timeline .right .event-title::after {
            content: '';
            position: absolute;
            width: 50px;
            height: 3px;
            background-color: var(--blue);
            bottom: 0;
        }*/
.timeline .left .event-title::after {
  right: 0;
}
.timeline .right .event-title::after {
  left: 0;
}
.timeline .event-content {
  margin-bottom: 15px;
}
.timeline .event-content p {
  color: #333;
  font-size: 1.1rem;
  line-height: 1.7;
  font-weight: 400;
  margin-top: 0px;
}
.timeline .prize {
  color: #cf3346;
}
.timeline .prize .event-title {
  color: #cf3346;
}
.prize .event-title::after {
  background-color: #cf3346;
}
/* Clear floats */
.timeline .event::after {
  content: "";
  display: table;
  clear: both;
}
/* Top and bottom dots */
.timeline .top-dot, .timeline .bottom-dot {
  position: absolute;
  width: 10px;
  height: 10px;
  background-color: var(--blue);
  border-radius: 50%;
  z-index: 1;
  left: 50%;
  transform: translateX(-50%);
}
.timeline .top-dot {
  top: -30px;
}
.timeline .bottom-dot {
  bottom: -30px; /* Adjusted from -100px */
}
/*學校*/
/* Responsive layout */
@media screen and (max-width: 768px) {
  .timeline::after {
    left: 31px;
  }
  .timeline .content-container {
    width: 85%;
    padding-left: 70px;
    padding-right: 25px;
  }
  .timeline .left, .timeline .right {
    float: right;
    text-align: left;
    padding-left: 70px;
    padding-right: 25px;
  }
  .timeline .left .event-title::after, .timeline .right .event-title::after {
    left: 0;
    right: auto;
  }
  .timeline .dot {
    left: 30px;
    transform: none;
  }
  .timeline .top-dot, .timeline .bottom-dot {
    left: 30px;
    transform: none;
  }
  .timeline .connector.left-connector, .timeline .connector.right-connector {
    left: 30px;
    width: 40px;
    margin-left: 8px;
    right: auto;
    margin-right: 0;
  }
}
.numb img {
  width: 30px;
  height: 30px;
  margin: -4px 5px 0 0;
}
.vs-phone {
  display: none !important;
}
.vs-pc {
  display: block !important
}
@media screen and (max-width: 1280px) {
  .card-box.s2 {
    width: 470px;
  }
  .plan-box .btn-line {
    position: relative;
    margin-left: 8px;
  }
  .about .block-text {
    padding: 116px 0 90px 0;
  }
  .about .about__right .images .img2 {
    width: 111px;
    height: 107px;
    object-fit: cover;
    top: 300px;
    left: -70px;
    animation: animate-2 15s linear 0s infinite;
  }
  .couter__main .image {
    right: 50px;
  }
  .banner.s4 {
    background-position: center 40px;
  }
  .touch__main .info {
    width: 30%;
  }
  .form-box {
    width: 70%;
  }
}
@media screen and (max-width: 767px) {
  .vs-phone {
    display: block !important;
  }
  .vs-pc {
    display: none !important;
  }
  .banner.s4 {
    background-repeat: no-repeat;
    background-image: url(../../assets/images/bg-index-phone.jpg);
    background-size: 100% auto;
    background-color: #fff;
    max-width: 1500px;
    background-position: left 0;
    padding-top: 270px;
  }
  .banner.s4 .swiper-pagination {
    bottom: 0px;
  }
  .header__logo {
    margin-left: 0px;
  }
  .header .header__action {
    margin-right: 0px;
  }
  .header__logo img {
    width: 110px;
  }
  .action-btn span {
    padding: 7px 14px 8px;
    font-size: 14px;
  }
  .header .header__action .action-btn {
    margin-right: 0;
  }
  .container.big {
    padding: 0 10px;
  }
  .header {
    height: 70px;
  }
  .speciality {
    background-size: 190% auto;
    background-image: url("../../assets/images/bg-1-phone.jpg");
    background-position: center top;
  }
  .block-text .heading {
    font-size: 2rem;
  }
  .block-text .heading .en {
    font-size: 2.4rem;
  }
  .block-text .heading2 {
    font-size: 1.3rem;
    margin-top: 10px;
  }
  .speciality .container .row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
  .speciality-box .number {
    font-size: 3rem !important;
  }
  .bg-2 {
    background-attachment: scroll;
    background-size: 250% auto;
    background-position: center top;
  }
  .couter-list {
    padding-right: 0px;
  }
  .couter__main .image img {
    width: 200px !important;
  }
  .about .about__right .images .img1 {
    border-radius: 50px;
  }
  .card-box.s2 {
    width: 380px;
  }
  .banner.s4 .swiper-button-next, .banner.s4 .swiper-button-prev {
    bottom: 50%;
  }
  .touch__main .info {
    width: 100%;
    padding: 40px 25px 0 25px;
  }
  .form-box {
    width: 100%;
  }
  .form-label {
    margin-top: 10px;
  }
  .touch__main .form-box {
    padding: 30px 25px 60px;
  }
  .project-swiper .swiper-button-next, .project-swiper-3 .swiper-button-next {
    right: 10%;
  }
  .project-swiper .swiper-button-prev, .project-swiper-3 .swiper-button-prev {
    left: 10%;
  }
  .block-text .heading3 {
    font-size: 1.4rem;
  }
  .block-text .heading3 br {
    display: none;
  }
  .block-text .heading3 .en {
    font-size: 1.6rem;
  }
  .banner .banner__right .image, .banner .banner__right .image img {
    border-radius: 50px;
    max-width: 100%;
  }
  .banner .banner__right .image {
    height: 350px;
  }
  .banner .banner__right .owner {
    right: -40px;
  }
  .banner .banner__right .owner .image {
    min-width: 50px;
    width: 50px;
    height: 50px;
  }
  .banner .banner__right .owner h5 {
    font-size: 1.2rem;
  }
  .banner .banner__right {
    padding: 0px 0 50px;
  }
  .banner .banner__right .owner {
    top: 200px;
  }
  .about .block-text {
    padding: 10px 0 60px 0;
  }
  .about .about__right .images .img1 {
    height: 400px;
    margin: 0px 0 0 -4px;
  }
  .about .about__right .images .img4 {
    left: 40px;
    bottom: -140px;
  }
  .about .about__right .images .img2 {
    left: -100px;
    top: 100px;
  }
  .faq.schedule {
    background-image: none, url(../../assets/images/bg-2.jpg);
    background-repeat: no-repeat, no-repeat;
    background-size: 60px auto, 200% auto;
    background-attachment: scroll, scroll;
    padding: 96px 0 90px;
  }
  .timeline .dot {
    left: 17px;
  }
  .timeline .left, .timeline .right {
    padding-left: 5px;
  }
  .timeline .event {
    margin-top: 0;
  }
  .couter__main {
    margin-bottom: 200px;
    padding: 40px 25px 100px;
  }
  .couter__main .image {
    bottom: -190px;
  }
  .testimonials {
    background-position: center top;
  }
  .plan-box {
    padding: 50px 20px 0px;
  }
  .plan-box .btn-line {
    position: relative;
    margin: 5px 0;
  }
  .project p, .schedule p {
    font-size: 16px;
    line-height: 1.7;
    margin-top: 15px;
  }
  .faq__main ul li {
    width: 100%;
    padding: 10px 5px;
    text-align: center;
  }
  .speciality-box p {
    padding-bottom: 20px;
  }
  .col-auto.mt-30 {
    margin-top: 10px;
  }
  .project p br {
    display: none;
  }
  section.touch {
    padding: 0px 0 210px;
    background-image: url(../../assets/images/text-gotcha-blue-phone.svg);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-size: 100% auto;
  }
  .block-text .heading {
    font-weight: 700;
  }
  .block-text .heading4 {
    font-size: 1.2rem;
    display: inline-block;
    margin-top: 15px;
    line-height: 1.4;
    border-bottom: 1px solid rgba(255, 255, 255, .7);
    padding-bottom: 20px;
  }
  .block-text .heading4 .en {
    font-size: 1.4rem;
    display: inline-block
  }
  .project {
    padding: 110px 0 50px;
  }
  .plan-box p {
    font-size: 1rem;
    line-height: 1.7;
    font-weight: 400;
    margin-top: 5px;
  }
  .title-style-2 br {
    display: none;
  }
  .banner .banner__right .owner {
    padding: 18px 20px;
  }
  .title-style-1 {
    font-size: 1.1rem;
  }
  .about .about__right .images .img5 {
    width: 200px;
    right: -40px;
  }
  .p-style-1 {
    color: #fff;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 35px;
  }
  .p-style-1 a {
    padding: 4px 12px;
  }
  .table-wrapper {
    margin: 0 5px;
  }
  .speciality.s2 {
    margin-top: 20px;
  }
  .speciality-box.s3 {
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-auto.mt-35 {
    margin-top: 0px;
  }
  .portfolio {
    padding: 50px 0 60px;
  }
  .timeline {
    margin: 0px auto 0;
  }
  .timeline .event-content p {
    font-size: 1rem;
  }
  .timeline .event-content {
    margin-bottom: 25px;
  }
  .timeline .connector.left-connector, .timeline .connector.right-connector {
    display: none;
  }
  .action-btn span.big {
    padding: 14px 40px 16px;
    font-size: 1.2rem;
  }
  .couter-box a {
    padding: 2px 12px;
    font-size: 14px;
    margin-top: 5px;
  }
  .testimonials .testimonials__main {
    padding: 110px 15px 25px;
  }
  .cardSwiper2 .swiper-pagination-bullet {
    width: 30px !important;
  }
  .bg-3 {
    background-color: #005bac;
    background-image: url("../../assets/images/bg-1-phone.jpg");
    background-repeat: repeat;
    background-attachment: scroll;
    background-size: 170% auto;
    background-position: left -100px;
  }
  .testimonials {
    position: relative;
    background-color: #005bac;
    background-image: url(../../assets/images/map-phone.jpg);
    background-size: cover;
    background-attachment: scroll
  }
  .timeline .top-dot, .timeline .bottom-dot {
    left: 26px;
  }
}
/*--------------學校--------------*/
.school-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0px;
}
.school-card {
  display: block;
  width: calc(25% - 0px);
  background-color: rgba(0, 91, 172, 0);
  border-radius: 0px;
  overflow: hidden;
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-bottom: 1px solid var(--blue);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0);
  transition: all 0.3s ease-in-out;
}
.school-card:hover {
  background-color: rgba(0, 91, 172, 0);
  filter: brightness(1.1);
  transition: transform 0.8s, box-shadow 0.8s, filter 0.8s;
}
.school-card img {
  border-radius: 9999px;
  transition: transform 0.3s ease;
  width: 100%;
}
.school-card:hover img {
  transform: scale(1.2);
  transform: rotateY(-360deg);
  filter: brightness(1.1);
  transition: transform 0.8s, box-shadow 0.8s, filter 0.8s;
  transition: transform 0.8s ease;
}
.school-grid {
  position: relative;
}
.school-grid .card-inner-horizontal {
  display: flex;
  align-items: center;
  height: 100%;
}
.school-grid .card-image-horizontal {
  flex: 0 0 70px;
  margin: 20px 12px 20px 20px;
}
.school-grid .card-image-horizontal img {
  width: 74px;
  height: 74px;
  object-fit: cover;
  border-radius: 999px;
}
.school-grid .card-text-horizontal {
  padding: 20px 40px 20px 0;
  flex: 1;
}
.school-grid .card-text-horizontal h3 {
  font-size: 17px;
  color: var(--blue);
  padding: 0;
  margin: 0;
  line-height: 1.4;
}
.school-grid .card-text-horizontal .category {
  color: #777;
  font-size: 0.85rem;
  margin-bottom: 3px;
  margin-top: 0;
  line-height: 1.6;
}
.school-grid .badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 99px;
  font-size: 0.75rem;
  font-weight: 500;
}
.school-grid .badge-warning {
  background-color: #f7d351;
  color: #222;
}
.school-grid .badge-danger {
  background-color: #cf3346;
  color: #fff;
}
.school-grid .badge-primary {
  background-color: #005bac;
  color: #fff;
}
.school-grid .badge-secondary {
  background-color: #fff;
  color: #005bac;
  border: 1px solid #005bac;
}
.school-filter-wrapper {
  text-align: center;
  margin-bottom: 25px;
  margin-top: 25px;
}
.school-select-container {
  display: inline-block;
  position: relative;
}
.school-filter-select {
  font-weight: bold;
  font-size: 1rem;
  color: #1e4ea4;
  border: 1px solid #1e4ea4 !important;
  border-radius: 999px;
  padding: 10px 60px 10px 40px;
  background: white;
  appearance: none;
  text-align: center;
  text-align-last: center;
  cursor: pointer;
  background-image: url(../../assets/images/icon-down.svg);
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  margin: 6px 5px;
  width: 220px;
}
.school-card {
  position: relative;
}
.favorite-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  position: absolute;
  top: 8px;
  right: 0px;
  z-index: 2;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.heart-icon {
  width: 24px;
  height: 24px;
  fill: #ccc;
  transition: fill 0.3s ease;
}
.favorite-btn.active .heart-icon {
  fill: #e60039;
}
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.school-grid .school-card {
  animation: fadeUp 0.5s ease-in-out both;
}
@media screen and (max-width: 1024px) {
  .school-grid .school-card {
    width: calc(33.333% - 16px);
  }
}
@media screen and (max-width: 768px) {
  .school-grid .school-card {
    width: calc(50% - 12px);
  }
}
@media screen and (max-width: 580px) {
  .school-grid .school-card {
    width: 100%;
  }
  .school-grid .card-image-horizontal {
    flex: 0 0 70px;
    margin: 16px 12px 16px 20px;
  }
  .school-grid .card-text-horizontal {
    padding: 16px 5px 16px 0;
  }
  .school-grid {
    margin-bottom: 20px;
  }
}
/*--------活動流程--------*/
.event-schedule .day-label {
  font-size: 32px;
  font-weight: 800;
  color: var(--blue);
  margin-bottom: 20px;
  text-align: center;
}
.schedule-box {
  background: rgba(255, 255, 255, .8);
  border-radius: 16px;
  padding: 40px 20px 40px 40px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.05);
  height: 100%;
}
.schedule-list {
  list-style: none;
  padding-left: 0;
  font-size: 17px;
  color: #333;
}
.schedule-list li {
  margin-bottom: 16px;
  line-height: 1.7;
  font-weight: 400;
}
.schedule-list li strong {
  color: #005bac;
  width: 100%;
  font-weight: 700;
  font-size: 20px;
  margin-right: 10px;
}
.schedule-list img {
    display: inline-block;
    width: 130px;
    height: auto;
    position: relative;
    margin-top: -1.2rem;
}
.footer-contact {
  color: white;
  padding: 0;
}
.footer-contact .container {
  max-width: 1200px;
  margin: auto;
  padding: 50px 20px 90px;
}
.footer-contact a {
  color: #fff
}
.footer-contact a:hover {
  color: rgba(255, 255, 255, .8)
}
.contact-grid {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 40px;
  text-align: center;
}
.contact-item img {
  width: 80px;
  height: 80px;
  margin-bottom: 12px;
}
.contact-item p {
  font-size: 18px;
  line-height: 1.6;
  margin: 0;
  font-weight: 400;
}
.contact-item span {
  display: block;
  font-size: 14px;
  color: #d0e9ff;
  margin-top: 6px;
  opacity: .6;
}
.logo-box {
  text-align: center;
  margin-bottom: 1rem;
  padding-top: 2.8rem;
  border-top: 1px solid rgba(255, 255, 255, .2);
  position: relative;
}
.logo-box:before {
    content: "贊助單位";
    position: relative;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 500;
    display: flex;
    justify-content: center;
    top: -1.9rem;
}
/* 需要將每個logo包在一個容器中 */
.logo-item {
  display: inline-block;
  position: relative;
  margin: 0 28px;
}
.logo-box img {
  height: 32px;
  width: auto;
  opacity: .8;
  transition: all 0.3s ease;
  transform-origin: center;
  cursor: pointer;
}
.logo-box img:hover {
  opacity: 1;
  transform: scale(1.1);
}
/* 泡泡對話框樣式 */
.bubble-tooltip {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 15px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  padding: 8px 25px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.05rem;
  white-space: nowrap;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transform: translateX(-50%) translateY(-10px) scale(0.8);
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  z-index: 1000;
}
/* 泡泡箭頭 */
.bubble-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-top-color: #764ba2;
}
/* 懸停時顯示泡泡 */
.logo-item:hover .bubble-tooltip {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0) scale(1);
  animation: bubbleIn 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
/* 泡泡彈出動畫 */
@keyframes bubbleIn {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(-20px) scale(0.3) rotate(-10deg);
  }
  50% {
    transform: translateX(-50%) translateY(-5px) scale(1.05) rotate(2deg);
  }
  100% {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scale(1) rotate(0deg);
  }
}
/* 可選：脈動效果
.logo-item:hover {
    animation: pulse 2s infinite;
} */
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(102, 126, 234, 0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(102, 126, 234, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(102, 126, 234, 0);
  }
}
@media (max-width: 767px) {
  .schedule-box {
    padding: 40px 20px;
    border: 1px solid rgba(0, 91, 172, .6)
  }
  .schedule-list li {
    font-size: 16px;
    line-height: 1.7
  }
  .event-schedule .day-label {
    font-size: 26px;
  }
  .footer {
    padding: 10px 0 20px;
    background-size: cover;
    background-position: 0px top;
  }
  .footer-contact .container {
    padding: 30px 20px 50px;
  }
}
/*===============*/
/* 手機號碼輸入框容器 */
.phone-verification-group {
  display: flex;
  gap: 8px;
  width: 100%;
}
/* 新增的手機輸入容器 */
.phone-input-container {
  display: flex;
  flex: 1;
  background-color: white;
  border-radius: 8px;
  overflow: hidden;
  height: 48px;
}
/* 國碼選擇區域 */
.country-code-wrapper {
  position: relative;
  min-width: 140px;
  border-right: 1px solid #ddd;
}
/* 國碼下拉選單樣式 */
.country-code-select {
  width: 100%;
  height: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23255aa6' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 8px center !important;
  background-repeat: no-repeat !important;
  background-size: 25px auto !important;
  padding: 0 32px 0 12px;
  cursor: pointer;
  font-size: 16px;
  border: none;
  color: #333;
}
.country-code-select:focus {
  outline: none;
}
/* 手機號碼輸入框 */
.phone-input-wrapper {
  flex: 1;
}
.phone-input {
  width: 100%;
  height: 100%;
  border: none;
  padding: 0 15px;
  font-size: 16px;
  color: #666;
}
.phone-input:focus {
  outline: none;
}
.phone-input::placeholder {
  color: #aaa;
}
/* 發送驗證碼按鈕 */
.btn-send-code {
  background: linear-gradient(135deg, #cf3346 0%, #cf3346 100%);
  color: white;
  border: none;
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 14px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.3s ease;
  min-width: 100px;
  flex: 0 0 auto;
}
.btn-send-code:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(102, 126, 234, 0.3);
  color: #fff;
}
/* 驗證碼區域 */
.verification-group {
  display: flex;
  gap: 8px;
}
.verification-input {
  flex: 1;
  height: 48px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  padding: 0 15px;
  font-size: 16px;
}
.verification-input:focus {
  border-color: #255aa6;
  outline: none;
  box-shadow: 0 0 0 3px rgba(37, 90, 166, 0.1);
}
.btn-verify-code {
  background: linear-gradient(135deg, #4CAF50 0%, #45a049 100%);
  color: white;
  border: none;
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 15px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.3s ease;
  min-width: 80px;
}
.btn-verify-code:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(76, 175, 80, 0.3);
  color: #fff;
}
/* 特殊情況樣式 */
.special-case-group {
  padding-top: 0px;
}
.help-text {
  font-size: 14px;
  color: rgba(255, 255, 255, .8);
  margin: 5px 0 0 30px;
  font-style: italic;
}
.help-text2 {
    font-size: 15px;
    color: rgba(255, 255, 255, .9);
    margin: 0px;
    font-style: normal;
    top: -.2rem;
    position: relative;
}
/* 下拉選單樣式 - 統一修復版 */
.form-control[name="under_12_count"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23255aa6' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 25px auto !important;
  padding-right: 40px;
  cursor: pointer;
  border: 1px solid #d1d5db;
  border-radius: 6px;
}
.form-control[name="under_12_count"]:focus {
  border-color: #255aa6;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23255aa6' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  outline: none;
  box-shadow: 0 0 0 3px rgba(37, 90, 166, 0.1);
}
/* 倒數計時樣式 */
.btn-send-code.countdown {
  background: #6c757d;
  cursor: not-allowed;
}
/* 驗證成功樣式 */
.verification-input.verified {
  border-color: #28a745;
  background-color: #f8fff9;
}
.phone-input.verified {
  border-color: #28a745;
  background-color: #f8fff9;
}
.country-code-select.verified {
  border-color: #28a745;
  background-color: #f8fff9;
}
/* 原有的 captcha 樣式 */
.captcha-group {
  display: flex;
  align-items: center;
}
.captcha-image {
  height: 40px;
  border-radius: 8px;
  transition: transform 0.3s ease;
}
.captcha-container {
  position: relative;
  cursor: pointer;
  display: inline-block;
}
.captcha-container:hover .captcha-image {
  transform: scale(1.05);
  border-color: #1e4ea4;
  box-shadow: 0 0 8px rgba(30, 78, 164, 0.3);
}
.refresh-icon {
  position: absolute;
  bottom: -28px;
  right: 50%;
  transform: translateX(50%);
  opacity: 0.7;
  transition: transform 0.3s ease, opacity 0.3s;
}
.captcha-container:hover .refresh-icon {
  transform: translateX(50%) scale(1.2);
  opacity: 1;
}
#success-lightbox .lightbox-body h4 {
  color: var(--blue) !important;
  font-size: 1.6rem;
  letter-spacing: 0.05rem;
}
#success-lightbox .ticket-info {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  text-align: center;
  border: 2px dashed var(--blue);
  margin-top: 1rem;
}
#success-lightbox .ticket-number {
  font-size: 2.5rem;
  font-weight: 900;
  color: var(--blue);
  margin: .6rem 0 1rem;
  letter-spacing: 0px;
  line-height: 1;
}
#success-lightbox .ticket-no {
  font-size: 1.2rem;
  color: var(--blue);
  font-weight: 600;
}
.qrcode-box {
  display: inline-block;
  border: 3px solid #39cd00;
  border-radius: 20px;
  background-color: #fff;
  text-align: center;
  padding: 2rem 2rem 1rem;
  margin-top: .8rem;
}
.qrcode-box img {
  width: 180px;
  height: auto;
  margin: 0 5px;
}
.qrcode-box h5 {
  font-size: 1.2rem;
  margin-bottom: .8rem;
  background-image: url(../../assets/images/icon-line.svg);
  background-color: #39cd00;
  background-repeat: no-repeat;
  background-size: 38px auto;
  background-position: 20px center;
  color: #fff;
  display: inline-block;
  width: auto;
  padding: 1rem 3rem 1rem 4.4rem;
  border-radius: 999px;
  margin-top: -5rem;
}
.qrcode-box-in {
  width: auto;
  display: inline-block;
  margin-right: 30px;
  text-align: center;
  background-color: #fff;
}
.qrcode-box-in p {
  font-size: 1rem;
}
/* 響應式設計 */
@media (max-width:1240px) {
    .logo-item {
        margin: 10px 18px 20px;
    }
}
@media (max-width: 768px) {
  .phone-verification-group {
    flex-direction: column;
  }
  .country-code-select {
    flex: none;
    width: 100%;
  }
  .phone-input {
    width: 100%;
  }
  .btn-send-code, .btn-verify-code {
    width: 100%;
    margin-top: 0px;
    margin-bottom: 8px;
  }
  .verification-group {
    margin-top: 10px;
    flex-direction: column;
  }
  .school-filter-select {
    min-width: 150px;
    padding: 10px 30px 10px 10px;
  }
}
@media (max-width: 576px) {
  .phone-verification-group {
    gap: 10px;
  }
  .country-code-select {
    font-size: 13px;
  }
  .about {
    padding: 0 0 50px;
  }
  .logo-item {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    margin-top: 5px;
  }
  .qrcode-box h5 {
    padding: .7rem 0 .7rem;
    font-size: 1rem;
    display: block;
    margin-top: .3rem;
    background-image: none;
    border-radius: 14px;
  }
  .qrcode-box {
    padding: 0 5px 0px;
  }
  .qrcode-box-in {
    margin: 0 auto 15px;
  }
  .school-filter-select {
    width: 250px;
    max-width: 90%;
    padding: 10px 60px 10px 40px;
  }
    .logo-item:nth-child(5) img {
       height: 40px;
    }
   .logo-item:nth-child(6) img {
       height: 50px;
    }
  .logo-item:nth-child(7) img {
       height:40px;
    }
}
@media (max-width: 480px) {
  .country-code-wrapper {
    min-width: 120px;
  }
  .country-code-select {
    font-size: 14px;
    padding: 0 28px 0 8px;
  }
  .phone-input {
    font-size: 14px;
    padding: 0 10px;
  }
.schedule-list img {
    display: inline-block;
    width: 120px;
    height: auto;
    position: relative;
    margin-top: -.8rem;
}
}