@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;700;900&display=swap");
/* 【重設】 */
/* http://meyerweb.com/eric/tools/css/reset/ 
  v2.0 | 20110126
  License: none (public domain)
*/
main a,
main address,
main article,
main aside,
main audio,
main b,
main blockquote,
main body,
main canvas,
main caption,
main cite,
main code,
main dd,
main del,
main details,
main dfn,
main div,
main dl,
main dt,
main em,
main embed,
main fieldset,
main figcaption,
main figure,
main footer,
main form,
main h1,
main h2,
main h3,
main h4,
main h5,
main h6,
main header,
main hgroup,
main html,
main i,
main iframe,
main img,
main ins,
main kbd,
main label,
main legend,
main li,
main mark,
main menu,
main nav,
main object,
main ol,
main output,
main p,
main pre,
main q,
main ruby,
main s,
main samp,
main section,
main small,
main span,
main strike,
main strong,
main sub,
main summary,
main sup,
main table,
main tbody,
main td,
main tfoot,
main th,
main thead,
main time,
main tr,
main tt,
main u,
main ul,
main var,
main video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  line-height: 1;
}
main article,
main aside,
main details,
main figcaption,
main figure,
main footer,
main header,
main menu,
main nav,
main section {
  display: block;
}
main body {
  line-height: 1;
}
main ol,
main ul {
  list-style: none;
  margin: 0;
}
main blockquote,
main q {
  quotes: none;
}
main blockquote:after,
main blockquote:before,
main q:after,
main q:before {
  content: "";
  content: none;
}
main table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 【變數】 */
:root {
  --root: 16px;
  --canvas: 1920px;
  --header-h: 139px;
  --footer-h: 369px;
  --gutter-wide: 169px;
  --gutter-nav: 269px;
  --content-nav: 1383px;
  --content-card: 1582px;
  --radius-pill: 999px;
  --radius-card: 40px;
  --fieldset-top: 0;
  --kv-bg: #000000;
  --wh: #ffffff;
  --blk: #000000;
  --gray-bg: #eeeeee;
  --ink-kv-btn: #252525;
  --ink-body: #171717;
  --ink-num: #454545;
  --ink-navy: #132656;
  --green-event: #80c269;
  --green-title: #28ab48;
  --blue-acc: #0096ce;
  --yellow: #f9ff5b;
  --soon-stroke: #023254;
  --soon-shadow: #022b8a;
  --dual-from: #4285ec;
  --dual-to: #0bbafb;
  --line-from: #e5ddea;
  --line-to: #bdc2e8;
  --nav-back-a: #f0ac3b;
  --nav-back-b: #ee7e2c;
  --nav-event-a: #2eac48;
  --nav-event-b: #28ab48;
  --nav-detail-a: #259fda;
  --nav-detail-b: #208acb;
  --hover: #8ee7f8;
  --not-hover: #dddddd;
  --sans:
    "Source Han Sans TC", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei",
    sans-serif;
  --family:
    "Noto Sans TC", "微軟正黑體", "Microsoft Jhenghei", "SF Pro TC",
    "PingFang TC", Arial, sans-serif;
}

/* 【圖示】data-uri SVG */
/* 【樣式】 */
*,
html {
  box-sizing: border-box;
  font-size: var(--root);
}

img {
  vertical-align: bottom;
}

.hidden,
[hidden] {
  display: none !important;
}

.rwd,
[rwd] {
  width: 100%;
}

dl,
ol,
ul {
  margin-bottom: 0;
}

body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

[mb] {
  display: none !important;
}

/* 【活動頁】 */
#main-content {
  font-family: var(--sans);
  font-weight: 400;
  color: var(--ink-body);
  background: var(--gray-bg);
  overflow: hidden;
}
#main-content strong {
  font-weight: 700;
}
#main-content em {
  font-style: normal;
  font-weight: 500;
}
#main-content p + p {
  margin-top: 1em;
}
#main-content #event,
#main-content #detail,
#main-content #coming-soon {
  scroll-margin-top: 7.2vw;
}
#main-content [class$=-inner] {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 71.9vw;
}
#main-content [class$=-inner][full] {
  max-width: unset;
}

/* 《 KV 》 */
.kv {
  position: relative;
  overflow: hidden;
}
.kv h1 {
  position: absolute;
  left: 5.8vw;
  top: 13.5vw;
  margin: 0;
  color: #3e282a;
  font-size: 3.2vw;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
}
.kv .btn-kv-register {
  position: absolute;
  left: 14.2vw;
  top: 26.3vw;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 27.8vw;
  padding: 1.1vw 3.3vw 1.3vw;
  background: #3e282a;
  border-radius: 1.5vw;
  color: #ffffff;
  font-size: 3.6vw;
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1;
  white-space: nowrap;
  transition: filter 0.2s ease;
}
.kv .btn-kv-register:hover {
  filter: brightness(1.06);
  text-decoration: none;
}

/* 《 錨點列 》 */
nav.nav {
  display: block;
  flex-wrap: unset;
  padding: 0;
  background: var(--gray-bg);
}
nav.nav .nav-inner {
  padding-top: 2.2vw;
  padding-bottom: 3.5vw;
}
nav.nav .btn-nav-group {
  display: flex;
  justify-content: center;
  gap: 4.4vw;
}
nav.nav .btn-nav-group a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20.7vw;
  height: 5.7vw;
  border-radius: 2.1vw;
  color: var(--wh);
  font-size: 2vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  white-space: nowrap;
  transition: filter 0.2s ease, transform 0.2s ease;
  background: url(../img/btn_bg-nav-back.png) center/cover no-repeat;
}
nav.nav .btn-nav-group a:hover {
  filter: brightness(1.08);
  transform: translateY(-0.1vw);
  text-decoration: none;
}
nav.nav .btn-nav-group .btn-nav-back {
  background-image: url(../img/btn_bg-nav-back.png);
}
nav.nav .btn-nav-group .btn-nav-event {
  background-image: url(../img/btn_bg-nav-event.png);
}
nav.nav .btn-nav-group .btn-nav-detail {
  background-image: url(../img/btn_bg-nav-detail.png);
}
nav.nav .divider {
  width: 100%;
  height: 0.2vw;
  margin-top: 2.3vw;
  border: 0;
  background: var(--ink-navy);
}
nav.nav .tagline {
  width: 70.1vw;
  margin-top: 2.3vw;
  margin-left: auto;
  margin-right: auto;
  color: var(--ink-navy);
  font-size: 1.7vw;
  font-weight: 500;
  line-height: 2.6vw;
  letter-spacing: 0.04em;
  text-align: justify;
}

/* 《 雙重抽獎 》 */
.dual-gifts {
  background: linear-gradient(180deg, var(--dual-from) 0%, var(--dual-to) 100%);
  padding: 3.1vw 0;
}
@media screen and (min-width: 1970px) {
  .dual-gifts .dual-gifts-inner {
    display: flex;
    flex-direction: column;
    max-width: 63vw !important;
  }
}
.dual-gifts .dual-gifts-inner {
  max-width: 69.2vw;
}
.dual-gifts .dual-gifts-title {
  text-align: center;
}
.dual-gifts .dual-gifts-title span {
  display: inline-block;
  margin: 0 auto;
  border-bottom: 0.3vw solid var(--wh);
  color: var(--wh);
  font-size: 2.3vw;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  padding: 0 0.3vw 0.9vw;
}
.dual-gifts .dual-gifts-cards {
  display: flex;
  gap: 1vw;
  margin-top: 2.7vw;
}
.dual-gifts .dual-gifts-note {
  margin: 0.9vw 0 0;
  display: flex;
  justify-content: center;
  border: 0.5vw solid var(--wh);
  border-radius: 0.5vw;
}
.dual-gifts .dual-gifts-note mark {
  background: none;
  color: var(--wh);
  font-size: 1.6vw;
  font-weight: 600;
  line-height: 1;
  padding: 1em 0;
}

/* 《 引導區 》 */
.intro {
  background: var(--gray-bg);
  padding-top: 4vw;
  padding-bottom: 4.8vw;
}
.intro .intro-inner {
  width: 70.5vw;
}
.intro .summary {
  margin: 0;
  color: var(--ink-navy);
  font-size: 1.7vw;
  font-weight: 400;
  line-height: 2.6vw;
  letter-spacing: 0.04em;
  text-align: left;
}
.intro .summary strong {
  font-weight: 700;
  display: block;
  text-align: center;
  margin-bottom: 0.5em;
}
.intro blockquote {
  font-size: 3.6vw;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  color: #999;
  padding-top: 1em;
}
.intro .btn-intro {
  background: url(../img/btn_intro.png) center/cover no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60.5vw;
  height: 13.2vw;
  margin: 2.5vw auto 0;
}
.intro .btn-intro span {
  position: relative;
  top: -0.1em;
  color: var(--ink-navy);
  font-size: 2.9vw;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
}
.intro .btn-intro:hover {
  text-decoration: none;
}
.intro .btn-intro.coming-soon {
  cursor: default;
}
.intro .btn-intro.event-ended {
  width: 46.3vw;
  background: none;
}
.intro .btn-intro + .summary {
  margin-top: 1.5em;
}

/* 段落樣式 */
.ps {
  --naming: "Paragraph Style";
}
.ps li {
  display: flex;
  gap: 0.5vw;
  align-items: flex-start;
}
.ps li + li {
  margin-top: 1.2em;
}
.ps li:last-of-type {
  margin-bottom: 3em;
}
.ps .num,
.ps p,
.ps dl dt,
.ps dl dd {
  font-size: 1.7vw;
  font-weight: 400;
  color: var(--ink-body);
  line-height: 1.4;
}
.ps .num {
  flex: 0 0 2.2vw;
  white-space: nowrap;
  text-align: right;
}
.ps p a {
  color: var(--ink-navy);
}
.ps article {
  flex: 1;
  min-width: 0;
}
.ps dl {
  display: flex;
  gap: 0.5vw;
  align-items: flex-start;
}
.ps dl + dl {
  margin-top: 1.2em;
}
.ps dl dt {
  flex: 0 0 2.2vw;
}
.ps dl dd {
  flex: 1;
  min-width: 0;
}

/* 《 活動辦法 》 */
.event {
  background: var(--green-event);
  padding-top: 6.1vw;
  padding-bottom: 5.9vw;
  border-bottom-right-radius: 8.3vw;
}
.event .event-aligner {
  margin: 0 auto;
  width: 82.3vw;
  padding: 4.1vw 5.2vw 4.1vw;
  background: var(--wh);
  border-radius: 4vw;
}
.event .event-inner {
  position: relative;
}
.event .subtitle {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 5.6vw;
  margin: 0 auto;
  background: url(../img/bg_event-subtitle.png) center/cover no-repeat;
  color: var(--wh);
  font-size: 4.4vw;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: nowrap;
}
.event .subtitle span {
  position: relative;
  top: -0.05em;
}
.event ol {
  margin-top: 4.2vw;
}
.event ol::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.3vw;
  background: #1daf00;
}

/* 《 登記區 》 */
.register {
  padding: 5.5vw 0 4.4vw;
  text-align: center;
}
.register .register-title {
  font-size: 3.1vw;
  font-weight: 900;
  line-height: 1;
  color: #474747;
  text-align: center;
}
.register .cashback {
  margin: 1.8vw auto;
  max-width: 32vw;
}
.register .register-flex {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 3.1vw;
}
.register .register-flex .btn-register {
  position: relative;
  padding-top: 3.4vw;
}
.register .register-flex .btn-register img.popup {
  max-width: 17.7vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 120%);
  z-index: 8;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.32);
}
.register .register-flex .btn-register img.btn-img {
  position: relative;
  z-index: 10;
  max-width: 32.2vw;
}
.register .register-flex .btn-register img.foot {
  max-width: 17.9vw;
  margin-top: 0.9vw;
}
.register .register-flex .btn-register:hover img.popup {
  transform: translate(-50%, 0);
}
.register.ended .register-title {
  line-height: 1.5;
}
.register.ended .register-flex .btn-register {
  cursor: default;
  pointer-events: none;
}

/* 《 更多內容 》 */
.detail {
  background: var(--gray-bg);
  padding-top: 7.1vw;
  padding-bottom: 6.1vw;
}
.detail .detail-aligner {
  margin: 0 auto;
  width: 82.3vw;
  padding: 4.1vw 5.2vw 4.1vw;
  background: var(--wh);
  border-radius: 4vw;
}
.detail .detail-inner {
  position: relative;
}
.detail .subtitle {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 5.6vw;
  margin: 0 auto;
  background: url(../img/bg_detail-subtitle.png) center/cover no-repeat;
  color: var(--wh);
  font-size: 4.4vw;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: nowrap;
}
.detail .subtitle span {
  position: relative;
  top: -0.05em;
}
.detail .accordions {
  width: 100%;
  margin-top: 3.5vw;
}
.detail .accordions::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.3vw;
  background: var(--blue-acc);
}
.detail .acc + .acc {
  margin-top: 2.1vw;
}
.detail .acc:last-of-type {
  margin-bottom: 3em;
}
.detail .acc .descr {
  display: none;
}
.detail .heading {
  display: flex;
  align-items: flex-start;
  gap: 0.4vw;
  cursor: pointer;
}
.detail .heading .dot {
  position: relative;
  flex: 0 0 2.1vw;
  width: 2.1vw;
  height: 2.1vw;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDEiIGhlaWdodD0iNDEiIHZpZXdCb3g9IjAgMCA0MSA0MSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8Y2lyY2xlIGN4PSIyMC41IiBjeT0iMjAuNSIgcj0iMjAuNSIgZmlsbD0iIzAwOTZjZSIvPgogIDxwYXRoIGQ9Ik0xOC43NDYgMjkgMTEgMTNoMy4yMWwzLjk0IDguNjY2cS42MyAxLjM5NiAxLjEyNSAyLjY0MWE2MyA2MyAwIDAgMCAxLjIyNSAyLjY0MWguMTMycS42OTYtMS40MTkgMS4xOTItMi42NDEuNTMtMS4yNDUgMS4xNTktMi42NDFMMjYuODg5IDEzSDMwbC03LjcxMiAxNnoiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==") center/cover no-repeat;
  margin-top: 0.2vw;
  border-radius: 100%;
  transform: rotate(-90deg);
}
.detail .heading .text {
  flex: 1;
  min-width: 0;
  color: var(--blue-acc);
  font-size: 2.1vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}
.detail .acc.active .heading .dot {
  transform: rotate(0);
}
.detail .descr {
  margin-top: 0.5vw;
  padding-left: 2.6vw;
  color: var(--ink-body);
  font-size: 1.7vw;
  font-weight: 400;
  line-height: 2.6vw;
  letter-spacing: 0.02em;
}
.detail .descr li,
.detail .descr dl {
  display: flex;
  gap: 0.4vw;
  align-items: baseline;
}
.detail .descr li + li,
.detail .descr li + dl,
.detail .descr dl + li,
.detail .descr dl + dl {
  margin-top: 0.75em;
}
.detail .descr .num,
.detail .descr dt {
  flex: 0 0 2.2vw;
  color: var(--ink-num);
  font-size: 1.7vw;
  line-height: 2.6vw;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
.detail .descr dt {
  text-align: right;
}
.detail .descr dd p + p {
  margin-top: 0 !important;
}
.detail .descr article,
.detail .descr dd {
  flex: 1;
  min-width: 0;
}

/* 《 注意事項 》 */
.annotation {
  background: var(--wh);
  padding: 3.2vw 0;
}
.annotation p {
  color: #080505;
  font-size: 1.1vw;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
}

/* 【MEDIA QUERIES】 */
@media screen and (max-width: 1920px) {
  body {
    z-index: initial;
  }
}
.dual-gifts-note {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.dual-gifts-note-text {
  max-width: 654px;
  height: auto;
  min-height: 20.8vw; /* ≈ 400/1920，隨寬度縮放；內容多時自動長高 */
  border: 0.5vw solid var(--wh);
  border-radius: 0.5vw;
  margin: 0.9vw 0 0;
  padding: 2em;
}

.dual-gifts-note-text1,
.dual-gifts-note-text2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.dual-gifts-note-paragraph {
  margin-bottom: 4%;
}

.dual-gifts-note-text p {
  font-size: 1.6vw;
  font-weight: 100;
  line-height: 1.5;
  color: #ffffff;
  text-align: left;
}

/* 卡片內文字左右對齊、長英文可斷行，避免右側大量留白 */
.dual-gifts-note-text .dual-gifts-note-paragraph,
.dual-gifts-note-text .dual-gifts-note-hint {
  text-align: justify;
  text-justify: inter-character;
  overflow-wrap: anywhere;
}

.dual-gifts-note-reminder {
  font-size: 1.3vw;
  font-weight: 100;
  line-height: 1.5;
  color: #ffffff;
  text-align: left;
}

@media screen and (min-width: 1970px) {
  .dual-gifts-note-text p,
  .dual-gifts .dual-gifts-note mark {
    font-size: 1.4vw;
  }
  /* 讓「卡片列」與下方「台北首賣會現場加碼抽」提示框同寬、同置中 */
  .dual-gifts .dual-gifts-cards,
  .dual-gifts .dual-gifts-inner > .dual-gifts-note {
    width: 62.3vw;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .dual-gifts {
    /* 兩張卡片各佔一半，撐滿卡片列 */
  }
  .dual-gifts .card-first,
  .dual-gifts .card-second {
    flex: 1 1 0;
    min-width: 0;
  }
  .dual-gifts {
    /* 卡片內的白框跟著卡片寬度，不再固定 654px */
  }
  .dual-gifts .dual-gifts-note-content,
  .dual-gifts .dual-gifts-note-text {
    width: 100%;
    max-width: none;
  }
}
/* 《 平板 768〜1032px 》 */
@media screen and (min-width: 768px) and (max-width: 1032px) {
  .dual-gifts-note-text {
    /* 不再寫死 400px，改為隨寬度縮放、內容多時自動長高 */
    height: auto;
    min-height: 42vw;
    border-width: 3px;
    border-radius: 6px;
    padding: 1.6em;
  }
  .dual-gifts-note-text p {
    font-size: 2.6vw;
  }
  .dual-gifts-note-hint,
  .dual-gifts-note-reminder {
    font-size: 2vw;
  }
  /* 下方「台北首賣會現場加碼抽」提示框：補左右內距，文字不貼邊 */
  .dual-gifts .dual-gifts-inner > .dual-gifts-note {
    padding: 0 2em;
  }
  .dual-gifts .dual-gifts-note mark {
    font-size: 2.4vw;
  }
  .dual-gifts .dual-gifts-note .dual-gifts-note-hint {
    font-size: 2vw;
  }
}
.text-yellow-hint {
  color: #f9ff5b;
  font-weight: 600;
}

.dual-gifts-note-hint-container {
  display: flex;
  justify-content: flex-start;
  width: 95%;
}

.dual-gifts-note-hint {
  background: none;
  color: var(--wh);
  font-size: 1.3vw;
  font-weight: 100;
  line-height: 1;
  padding: 0 0 1em;
  line-height: 1.5;
}

.dual-gifts-note-hint3 {
  text-align: left;
}

.dual-gifts-note-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 749.98px) {
  [pc] {
    display: none !important;
  }
  [mb] {
    display: block !important;
  }
  /* 【活動頁】 */
  #main-content p + p {
    margin-top: 1em;
  }
  #main-content [class$=-inner] {
    width: 100%;
    max-width: unset;
  }
  /* 《 KV 》 */
  .kv h1 {
    left: 0;
    right: 0;
    top: 17vw;
    width: unset;
    margin: auto;
    font-size: 7.5vw;
  }
  .kv .btn-kv-register {
    left: 18.7vw;
    top: 57.3vw;
    width: 60.7vw;
    padding: 2.8vw 8.4vw 3.2vw;
    font-size: 7.9vw;
    border-radius: 3.7vw;
  }
  /* 《 錨點列 》 */
  nav.nav {
    padding: 0;
  }
  nav.nav .nav-inner {
    padding-top: 5.7vw;
    padding-bottom: 8.9vw;
  }
  nav.nav .btn-nav-group {
    gap: 0.9vw;
  }
  nav.nav .btn-nav-group a {
    width: 30.4vw;
    height: 8.4vw;
    font-size: 3.5vw;
    letter-spacing: 0;
  }
  nav.nav .divider {
    max-width: 93.3vw;
    height: 0.4vw;
    margin-top: 5.1vw;
    margin-left: auto;
    margin-right: auto;
  }
  nav.nav .tagline {
    width: auto;
    margin: 5.9vw 5.3vw 0;
    font-size: 4.3vw;
    line-height: 1.8;
  }
  /* 《 雙重抽獎 》 */
  .dual-gifts {
    padding: 8vw 0;
  }
  .dual-gifts .dual-gifts-note-text {
    height: initial;
  }
  .dual-gifts .dual-gifts-note-text p {
    font-size: 4.3vw;
  }
  .dual-gifts .dual-gifts-note-hint {
    font-size: 3.8vw;
  }
  .dual-gifts .dual-gifts-note-reminder {
    width: 74.5vw;
    margin: auto;
    font-size: 3.8vw;
  }
  .dual-gifts .dual-gifts-title span {
    margin: 0 auto;
    width: 82.9vw;
    border-bottom-width: 0.4vw;
    font-size: 6.3vw;
    padding: 0 0 6.7vw;
  }
  .dual-gifts .dual-gifts-cards {
    margin: 5.1vw auto 0;
    flex-direction: column;
    width: 74.5vw;
  }
  .dual-gifts .dual-gifts-note {
    margin: 2.1vw auto 6vw;
    border: 1.1vw solid var(--wh);
    border-radius: 1.2vw;
  }
  .dual-gifts .dual-gifts-note mark {
    display: block;
    font-size: 4.3vw;
    padding: 1.1em 1em;
    line-height: 1.5;
    text-align: justify;
  }
  .dual-gifts .dual-gifts-note mark .dual-gifts-note-hint {
    display: block;
    margin-top: 4%;
    padding: 0;
  }
  /* 《 引導區 》 */
  .intro {
    padding-top: 10.3vw;
    padding-bottom: 12.3vw;
  }
  .intro .summary {
    margin: 0;
    font-size: 4.3vw;
    line-height: 1.8;
    padding: 0 5.3vw;
  }
  .intro blockquote {
    font-size: 8.1vw;
    padding-top: 1em;
  }
  .intro .btn-intro {
    width: 91.6vw;
    height: 41.3vw;
    margin: 6.4vw auto 0;
    background-image: url(../img/btn_intro_MB.png);
  }
  .intro .btn-intro span {
    top: -0.1em;
    font-size: 6.5vw;
    line-height: 1.4;
  }
  .intro .btn-intro.event-ended {
    width: 85.6vw;
    height: 19.2vw;
    margin-top: 5.9vw;
    margin-bottom: 8.5vw;
  }
  .intro .btn-intro + .summary {
    margin-top: 1em;
  }
  /* 段落樣式 */
  .ps li {
    gap: 1.3vw;
  }
  .ps li + li {
    margin-top: 2em;
  }
  .ps li:last-of-type {
    margin-bottom: 3em;
  }
  .ps .num,
  .ps p,
  .ps dl dt,
  .ps dl dd {
    font-size: 4.3vw;
    line-height: 1.5;
    text-align: justify;
  }
  .ps dl {
    gap: 1.3vw;
  }
  .ps dl + dl {
    margin-top: 1.2em;
  }
  /* 《 活動辦法 》 */
  .event {
    padding: 14.5vw 7.6vw 12.7vw;
    border-bottom-right-radius: 13.6vw;
  }
  .event .event-aligner {
    width: 100%;
    padding: 7.2vw 5.6vw;
  }
  .event .subtitle {
    background-image: url(../img/bg_event-subtitle_MB.png);
    height: 10.5vw;
    margin: 0 auto;
    font-size: 8.3vw;
  }
  .event .subtitle span {
    top: -0.05em;
  }
  .event ol {
    margin-top: 5.6vw;
  }
  .event ol::after {
    width: 100%;
    height: 0.7vw;
  }
  /* 《 登記區 》 */
  .register {
    padding: 14.1vw 0 11.2vw;
  }
  .register .register-title {
    font-size: 7.9vw;
    line-height: 1.6;
  }
  .register .cashback {
    max-width: 81.9vw;
    margin: 4.7vw auto;
    padding-bottom: 5.3vw;
  }
  .register .register-flex {
    flex-direction: column;
    padding: 0 4.4vw;
  }
  .register .register-flex .btn-register {
    padding-top: 8.7vw;
  }
  .register .register-flex .btn-register img.popup {
    max-width: 46.8vw;
  }
  .register .register-flex .btn-register img.btn-img {
    max-width: 84.3vw;
  }
  .register .register-flex .btn-register img.foot {
    margin-top: 5.6vw;
    max-width: 71.5vw;
  }
  .register .register-flex .btn-register:first-child img.foot {
    height: 0;
  }
}
@media screen and (max-width: 749.98px) and (any-hover: none) {
  .register .register-flex .btn-register img.popup {
    transform: translate(-50%, 0);
  }
}
@media screen and (max-width: 749.98px) {
  .register.ended .register-title {
    padding: 1em 0;
  }
}
@media screen and (max-width: 749.98px) {
  /* 《 更多內容 》 */
  .detail {
    padding: 14.5vw 7.6vw 12.7vw;
  }
  .detail .detail-aligner {
    width: 100%;
    padding: 7.2vw 5.6vw;
  }
  .detail .subtitle {
    background-image: url(../img/bg_detail-subtitle_MB.png);
    height: 10.5vw;
    margin: 0 auto;
    font-size: 8.3vw;
  }
  .detail .subtitle span {
    top: -0.05em;
  }
  .detail .accordions {
    margin-top: 8.7vw;
  }
  .detail .accordions::after {
    width: 100%;
    height: 0.8vw;
  }
  .detail .acc + .acc {
    margin-top: 5.3vw;
  }
  .detail .acc:last-of-type {
    margin-bottom: 3em;
  }
  .detail .heading {
    gap: 1.1vw;
  }
  .detail .heading .dot {
    flex: 0 0 5.3vw;
    width: 5.3vw;
    height: 5.3vw;
    margin-top: 0.5vw;
  }
  .detail .heading .text {
    font-size: 5.3vw;
    line-height: 1.2;
    position: relative;
    top: -0.075em;
  }
  .detail .descr {
    margin-top: 1.3vw;
    padding-left: 6.5vw;
    font-size: 4.3vw;
  }
  .detail .descr li + li,
  .detail .descr li + dl,
  .detail .descr dl + li,
  .detail .descr dl + dl {
    margin-top: 0.75em;
  }
  .detail .descr .num,
  .detail .descr dt {
    font-size: 4.3vw;
  }
  /* 《 注意事項 》 */
  .annotation {
    padding: 8.3vw 0;
  }
  .annotation p {
    font-size: 2.9vw;
    line-height: 2;
    text-align: justify;
    padding: 0 5.9vw;
  }
}
body.s1 [stage-2],
body.s1 [stage-3] {
  display: none !important;
}

body.s2 [stage-1],
body.s2 [stage-3] {
  display: none !important;
}
body.s2 .detail {
  padding-top: 0;
}

body.s3 [stage-1],
body.s3 [stage-2] {
  display: none !important;
}
body.s3 #event[stage-2] {
  display: block !important;
}
body.s3 .detail {
  padding-top: 0;
}

/*# sourceMappingURL=presale-2026.css.map */
