@charset "UTF-8";
/* ========================
  🎨 Design Tokens - Variables
======================== */
/* Color */
/* Breakpoints（對齊 Bootstrap） */
/* Font Family */
/* Section Spacing */
/*
  content-edge：內容版心與瀏覽器邊界的預設距離
  section-py：section 上下留白
  如果不需要上下 padding，可用 .section-py--mobile-0 等類別局部去除。
*/
/* Section Spacing - Mobile */
/* Section Spacing - Desktop */
/* Text Block Padding */
/* 1. 關閉瀏覽器原生的平滑滾動（絕對不能留！） */
html {
  scroll-behavior: auto !important;
}

/* 2. 確保 body 與 html 的高度運作正常 */
html.lenis,
html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

/* 3. 讓帶有 data-lenis-prevent 的局部滾動區塊（如條款彈窗）正常運作 */
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

@media (max-width: 991px) {
  .text-nowrap-mobile {
    white-space: nowrap;
  }
}

.txt-title {
  margin-bottom: 1.5em;
}

.page-zh-title {
  font-size: calc(36 * var(--vw-base));
  font-weight: 600;
}
@media (max-width: 991px) {
  .page-zh-title {
    font-size: calc(30 * var(--vw-base));
  }
}

.page-en-title {
  font-size: calc(42 * var(--vw-base));
  font-family: "Cinzel";
  letter-spacing: 0.15em;
}
@media (max-width: 991px) {
  .page-en-title {
    font-size: calc(32 * var(--vw-base));
  }
}

.btn-submit-txt {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.6;
}
.btn-submit-txt span {
  font-family: "Cinzel";
}

.txt-body p {
  font-size: calc(23 * var(--vw-base));
}
@media (max-width: 991px) {
  .txt-body p {
    font-size: calc(16 * var(--vw-base));
  }
}

body {
  background-image: url(../images/img/banner-bg.jpg);
  background-size: cover;
  background-attachment: fixed;
}
@media (max-width: 991px) {
  body {
    background-image: url(../images/img/banner-bg-m.jpg);
    background-size: auto;
    background-repeat: repeat-y;
    background-attachment: scroll;
  }
}

.banner {
  overflow-x: hidden;
  aspect-ratio: 16/9;
}
@media (max-width: 991px) {
  .banner {
    aspect-ratio: 611/1081;
  }
}

.page03 {
  overflow-x: hidden;
}
.page03 .row {
  --bs-gutter-x: 0;
  background-color: #ad804a;
}
.page03 {
  --txt-py: calc(150 * var(--vw-base));
  --txt-px: calc(72 * var(--vw-base));
}
.page03 .card-title {
  font-size: calc(36 * var(--vw-base));
  font-family: "Noto Serif TC", "PMingLiU", serif;
  font-weight: 600;
  line-height: 1.65;
}
.page03 .deco-txt::after {
  content: "台北華爾街核心，迎來世界的仰望";
  font-size: calc(36 * var(--vw-base));
  font-weight: 600;
  font-family: "Noto Serif TC", "PMingLiU", serif;
  position: absolute;
  color: #fff;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
  letter-spacing: 0.13em;
  white-space: nowrap;
}
@media (max-width: 991px) {
  .page03 .deco-txt::after {
    font-size: calc(24 * var(--vw-base));
    top: 10%;
  }
}
@media (max-width: 991px) {
  .page03 {
    --txt-py: calc(72 * var(--vw-base));
    --txt-px: calc(33 * var(--vw-base));
  }
  .page03 .col-lg-5 {
    aspect-ratio: 610/520;
    overflow-y: auto;
  }
  .page03 .card-title {
    font-size: calc(24 * var(--vw-base));
  }
  .page03 .page-en-title {
    letter-spacing: 0.225em;
  }
}

.page04 .row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  background-color: #ad804a;
}
.page04 .txt-title {
  border-bottom: 1px solid #fff;
}
.page04 .img-caption {
  display: flex;
  align-items: center;
}
.page04 .img-caption span {
  font-size: calc(39 * var(--vw-base));
}
@media (max-width: 991px) {
  .page04 .img-caption span {
    font-size: calc(26 * var(--vw-base));
  }
}
.page04 {
  --content-edge: calc(120 * var(--vw-base));
  --section-py: calc(85 * var(--vw-base));
  --txt-py: calc(50 * var(--vw-base));
}
.page04 .card-title {
  font-size: calc(36 * var(--vw-base));
  font-family: "Noto Serif TC", "PMingLiU", serif;
  font-weight: 600;
  line-height: 1.65;
}
@media (max-width: 991px) {
  .page04 {
    --content-edge: calc(66 * var(--vw-base));
    --section-py: calc(40 * var(--vw-base));
    --txt-py: calc(20 * var(--vw-base));
  }
  .page04 .card-title {
    font-size: calc(24 * var(--vw-base));
  }
}
@media (min-width: 992px) {
  .page04 .col-lg-7 .img-wrap,
  .page04 .col-lg-7 .img-wrap a,
  .page04 .col-lg-7 .img-cover {
    height: 100%;
  }
  .page04 .col-lg-7 .img-cover {
    aspect-ratio: unset;
  }
}

.page05-pc .top-box {
  padding-bottom: calc(172 * var(--vw-base));
  padding-left: calc(122 * var(--vw-base));
  padding-right: calc(173 * var(--vw-base));
}
.page05-pc {
  --txt-px: calc(67 * var(--vw-base));
}
.page05-pc .swiper-wrapper {
  --swiper-wrapper-transition-timing-function: ease-in-out;
}
.page05-pc .page05-sign {
  position: absolute;
  left: calc(30 * var(--vw-base));
  bottom: calc(70 * var(--vw-base));
  width: calc(210 * var(--vw-base));
  pointer-events: none;
}
.page05-pc .page05-sign--5 {
  width: calc(600 * var(--vw-base));
}
.page05-pc .bottom-box {
  --bs-gutter-x: 0;
  transform: translateX(-10%);
}
.page05-pc .bottom-box .card-box {
  background-color: #367464;
  display: flex;
  align-items: center;
}
.page05-pc .bottom-box .card-box .card-title {
  font-size: calc(23 * var(--vw-base));
  font-family: "Noto Serif TC", "PMingLiU", serif;
}
.page05-pc .bottom-box .card-box .card-body {
  font-size: calc(23 * var(--vw-base));
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

.page05-m .row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
}
.page05-m .bottom-box {
  background-color: #367464;
  padding-bottom: calc(126 * var(--vw-base));
  padding-inline: calc(38 * var(--vw-base));
}
.page05-m .up-box {
  padding-bottom: calc(27 * var(--vw-base));
}
.page05-m .case-box {
  transform: translateY(-20%);
}
.page05-m .up-box--5 {
  position: relative;
}
.page05-m .sign-box--5 {
  position: relative;
  z-index: 2;
}
.page05-m .sign-box--5 .img-wrap {
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(300 * var(--vw-base));
}

.page06 {
  overflow-x: hidden;
  aspect-ratio: 16/9;
}
@media (min-width: 992px) {
  .page06 {
    display: flex;
    align-items: center;
  }
}
@media (max-width: 991px) {
  .page06 {
    aspect-ratio: 610/1126;
  }
}

.page07 .row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
}
.page07 .txt-title {
  border-bottom: 1px solid #367464;
}
.page07 .imgSwiper {
  overflow: hidden;
  aspect-ratio: var(--ratio);
}
@media (max-width: 991px) {
  .page07 .imgSwiper {
    aspect-ratio: var(--ratio-m, var(--ratio));
  }
}
.page07 .imgSwiper .swiper-wrapper {
  height: 100%;
}
.page07 .imgSwiper .swiper-slide {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 991px) {
  .page07 .imgSwiper .swiper-slide {
    align-items: center;
  }
}
.page07 .imgSwiper .swiper-slide:not(.swiper-slide-active) {
  opacity: 0 !important;
  transition: none !important;
}
.page07 .imgSwiper .img-wrap {
  width: 100%;
}

.page08 {
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
}
.page08 .swiper-title {
  font-size: calc(23 * var(--vw-base));
  font-weight: 600;
  font-family: "Noto Serif TC", "PMingLiU", serif;
}
.page08 .top-box {
  border-bottom: 0.5px solid #fff;
}
@media (max-width: 991px) {
  .page08 {
    aspect-ratio: 610/1530;
    align-items: end;
  }
  .page08 .swiper-title {
    font-size: calc(16 * var(--vw-base));
  }
}

.page09 .txt-title::after {
  content: "";
  display: inline-block;
  flex: 1;
  height: 1px;
  background-color: #367464;
  margin-block: auto;
}
.page09 iframe {
  display: block;
  width: 100%;
  aspect-ratio: 543/315;
}

.page10 .page-en-title {
  font-size: calc(73 * var(--vw-base));
}
.page10 .page-zh-title {
  font-size: calc(36 * var(--vw-base));
}
.page10 .info-item {
  padding-block: calc(20 * var(--vw-base));
}
.page10 .info-item .info-title {
  font-size: calc(24 * var(--vw-base));
  font-family: "Noto Serif TC", "PMingLiU", serif;
  color: #367464;
  font-weight: 600;
}
.page10 .info-item .info-txt {
  font-size: calc(20 * var(--vw-base));
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}
@media (max-width: 991px) {
  .page10 .txt-title::after {
    content: "";
    display: inline-block;
    flex: 1;
    height: 1px;
    background-color: #367464;
    margin-block: auto;
  }
  .page10 .info-item .info-title {
    font-size: calc(24 * var(--vw-base));
  }
  .page10 .info-item .info-txt {
    font-size: calc(20 * var(--vw-base));
  }
  .page10 .page-en-title {
    font-size: calc(32 * var(--vw-base));
  }
  .page10 .page-zh-title {
    font-size: calc(24 * var(--vw-base));
  }
}

.page11 {
  overflow: hidden;
}
.page11.section-py {
  padding-top: calc(142 * var(--vw-base));
  padding-bottom: calc(211 * var(--vw-base));
}
@media (max-width: 991px) {
  .page11.section-py {
    padding-top: calc(52 * var(--vw-base));
    padding-bottom: calc(142 * var(--vw-base));
  }
}
.page11 .form-floating .form-control {
  font-family: "Noto Serif TC", "PMingLiU", serif;
}
.page11 .btn-submit-txt {
  font-family: "Noto Serif TC", "PMingLiU", serif;
}
.page11 .info-txt {
  font-size: calc(14 * var(--vw-base));
  color: #231815;
}
.page11::before {
  content: "";
  background-image: url(../images/img/page11-deco.png);
  background-repeat: no-repeat;
  background-size: cover;
  aspect-ratio: 2142/481;
  position: absolute;
  width: 104%;
  bottom: -11%;
  left: -2%;
}
@media (max-width: 991px) {
  .page11::before {
    background-image: url(../images/img/page11-deco-m.png);
    aspect-ratio: 611/138;
    width: 100%;
    bottom: 0%;
    left: 0%;
  }
}

/* 強制將 AOS 的移動距離從 100px 縮小到 20px ~ 30px */
[data-aos=fade-up] {
  transform: translate3d(0, 25px, 0) !important;
}

[data-aos=fade-down] {
  transform: translate3d(0, -25px, 0) !important;
}

[data-aos=fade-right] {
  transform: translate3d(-25px, 0, 0) !important;
}

[data-aos=fade-left] {
  transform: translate3d(25px, 0, 0) !important;
}

/* 當 AOS 觸發顯示時，回歸原位 */
[data-aos].aos-animate {
  transform: translate3d(0, 0, 0) !important;
}/*# sourceMappingURL=style.css.map */