@charset "UTF-8";
:root {
  --fs-12px: 0.75rem;
  --fs-14px: 0.875rem;
  --fs-16px: 1rem;
  --fs-18px: 1.125rem;
  --fs-20px: 1.25rem;
  --fs-22px: 1.375rem;
  --fs-24px: 1.5rem;
  --fs-26px: 1.625rem;
  --fs-28px: 1.75rem;
  --fs-30px: 1.875rem;
  --fs-32px: 2rem;
  --fs-34px: 2.125rem;
  --fs-36px: 2.25rem;
  --fs-38px: 2.375rem;
  --fs-40px: 2.5rem;
  --fs-42px: 2.625rem;
  --fs-44px: 2.75rem;
  --fs-46px: 2.875rem;
  --fs-48px: 3rem;
  --fs-50px: 3.125rem;
}

*, *::before, *::after, h1, h2, h3, h4, h5, h6 {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

ul, ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

button, input, textarea {
  background: transparent;
  border: none;
  font-family: inherit;
}
button:focus, input:focus, textarea:focus {
  outline: none;
}

html {
  font-size: 1rem;
  overflow-anchor: none;
}
@media (min-width: 751px) and (max-width: 1440px) {
  html {
    font-size: clamp(0.875rem, 1.1111111111vw, 1rem);
  }
}

body {
  font-family: "Noto Sans TC", sans-serif;
  line-height: 1.5;
  color: #333;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
}

.soundbox-sale {
  color: #333;
  background-color: black;
  cursor: default;
}
.soundbox-sale *,
.soundbox-sale *::before,
.soundbox-sale *::after {
  box-sizing: border-box;
}
.soundbox-sale small {
  color: inherit;
}
.soundbox-sale .lg-view {
  display: block;
}
.soundbox-sale .sm-view {
  display: none;
}
.soundbox-sale .soundBox-section {
  position: relative;
  z-index: 0;
  padding: 0 1.25rem;
  color: #fff;
}
.soundbox-sale .soundBox-section img {
  display: block;
  width: 100%;
  max-width: 100%;
}
.soundbox-sale .soundBox-section .section-content {
  max-width: 75rem;
  margin: 0 auto 1.5625rem;
}
.soundbox-sale .soundBox-section .heading {
  font-size: 2.625rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-section .heading {
    font-size: clamp(0.875rem, 2.9166666667vw, 2.625rem);
  }
}
.soundbox-sale .soundBox-section .heading {
  line-height: 1.55;
  font-weight: 700;
  text-align: center;
  color: #fff;
}
.soundbox-sale .soundBox-section .sub-heading {
  font-size: 2.625rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-section .sub-heading {
    font-size: clamp(0.875rem, 2.9166666667vw, 2.625rem);
  }
}
.soundbox-sale .soundBox-section .sub-heading {
  line-height: 1.14;
  font-weight: 700;
  text-align: center;
  color: #ffba4b;
}
.soundbox-sale .soundBox-section .highlight {
  color: #129a92;
}
.soundbox-sale .table-outter {
  width: 100%;
  overflow: auto;
}
.soundbox-sale .table-outter::-webkit-scrollbar {
  height: 0.5rem;
  -webkit-appearance: none;
}
.soundbox-sale .table-outter::-webkit-scrollbar-thumb {
  background-color: #333;
  border-radius: 0;
  outline: 1px solid #333;
}
.soundbox-sale .table-outter::-webkit-scrollbar-track {
  box-shadow: inset 0 0 2px rgba(128, 128, 128, 0.4);
}
.soundbox-sale .table-outter::-webkit-scrollbar:hover {
  height: 0.75rem;
}
.soundbox-sale .soundBox-b {
  padding-top: 1.5625rem;
  padding-bottom: 3.125rem;
}
.soundbox-sale .soundBox-b .section-header {
  margin-bottom: 1.25rem;
}
.soundbox-sale .soundBox-b .heading {
  margin-bottom: 0.3125rem;
}
.soundbox-sale .soundBox-b .heading .text-small {
  display: inline-block;
  font-size: 1.5625rem;
  line-height: 1.44;
}
.soundbox-sale .soundBox-b .sub-heading {
  margin-bottom: 0.3125rem;
}
.soundbox-sale .soundBox-b .top-text {
  font-size: 1.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .top-text {
    font-size: clamp(0.875rem, 1.6666666667vw, 1.5rem);
  }
}
.soundbox-sale .soundBox-b .top-text {
  line-height: 1.25;
  font-weight: 400;
  text-align: center;
}
.soundbox-sale .soundBox-b .top-text .mobile-show {
  display: none;
}
.soundbox-sale .soundBox-b .l-grid {
  display: flex;
  overflow: hidden;
  min-height: 22.625rem;
  color: #333;
  background-image: url(https://www.homeplus.net.tw/cable/images/manual_upload/soundbox-disney/images/b-1.webp);
  background-size: auto 100%;
}
.soundbox-sale .soundBox-b .l-grid__left {
  position: relative;
  width: 30rem;
}
.soundbox-sale .soundBox-b .l-grid__right {
  width: calc(100% - 30rem);
  padding: 0.9375rem 1.875rem 0 0;
}
.soundbox-sale .soundBox-b .scroll-text {
  display: none;
  text-align: center;
}
.soundbox-sale .soundBox-b .l-table {
  width: 100%;
  margin-top: 1.75rem;
  font-size: 1.375rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .l-table {
    font-size: clamp(0.875rem, 1.5277777778vw, 1.375rem);
  }
}
.soundbox-sale .soundBox-b .l-table {
  line-height: 1.36;
  font-weight: 700;
  font-family: arial, "Noto Sans TC", sans-serif;
  text-align: center;
  border-collapse: collapse;
}
.soundbox-sale .soundBox-b .l-table td {
  height: 3.75rem;
  padding: 0.625rem 0.3125rem;
  border: 1px solid #0e3671;
  background-color: #efefef;
}
.soundbox-sale .soundBox-b .l-table td.highlight {
  color: #0e3671;
  font-weight: 700;
  background-color: #daeaf9;
}
.soundbox-sale .soundBox-b .l-table .l-table__header {
  font-size: 1.875rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .l-table .l-table__header {
    font-size: clamp(0.875rem, 2.0833333333vw, 1.875rem);
  }
}
.soundbox-sale .soundBox-b .l-table .l-table__header {
  line-height: 1.1;
  text-align: center;
}
.soundbox-sale .soundBox-b .l-table .l-table__header th {
  padding: 0.75rem 0.3125rem;
  border: 1px solid #0e3671;
  background-color: #dbdbdb;
}
.soundbox-sale .soundBox-b .l-table .l-table__header th.highlight {
  position: relative;
  color: #fff;
  background-color: #0e3671;
}
.soundbox-sale .soundBox-b .l-table .l-table__header th.highlight::before {
  content: "";
  position: absolute;
  top: -1.75rem;
  left: -0.875rem;
  width: 3.125rem;
  height: 2.625rem;
  background-image: url(https://www.homeplus.net.tw/cable/images/manual_upload/soundbox-disney/images/b-2.png);
  background-size: 100% auto;
}
.soundbox-sale .soundBox-b .l-table .l-table__header th:nth-child(1) {
  width: 5.625rem;
  border: 0;
  background-color: transparent;
}
.soundbox-sale .soundBox-b .l-table .l-table__header th:nth-child(2), .soundbox-sale .soundBox-b .l-table .l-table__header th:nth-child(3) {
  width: 18.75rem;
}
.soundbox-sale .soundBox-b .l-table .l-table__left {
  width: 5.625rem;
  font-size: 1rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .l-table .l-table__left {
    font-size: clamp(0.875rem, 1.1111111111vw, 1rem);
  }
}
.soundbox-sale .soundBox-b .l-table .l-table__left {
  line-height: 1.25;
  color: #211716;
  background-color: #fff;
}
.soundbox-sale .soundBox-b .bottom-text {
  margin-top: 0.5rem;
  font-size: 0.875rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .bottom-text {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.soundbox-sale .soundBox-b .bottom-text {
  line-height: 1.43;
  font-weight: 500;
  text-align: center;
}
@media (min-width: 751px) and (max-width: 1140px) {
  .soundbox-sale .soundBox-b .heading .text-small {
    display: block;
  }
  .soundbox-sale .soundBox-b .l-grid {
    display: block;
    overflow: hidden;
    background-image: none;
    background-color: #fff;
  }
  .soundbox-sale .soundBox-b .l-grid__left {
    width: 100%;
  }
  .soundbox-sale .soundBox-b .l-grid__left .sm-view {
    display: none;
  }
  .soundbox-sale .soundBox-b .l-grid__right {
    width: 100%;
    padding: 0.9375rem 1.875rem;
  }
}
@media (max-width: 750px) {
  .soundbox-sale .lg-view {
    display: none;
  }
  .soundbox-sale .sm-view {
    display: block;
  }
  .soundbox-sale .soundBox-section {
    padding: 0 1.25rem;
  }
  .soundbox-sale .soundBox-section .section-content {
    max-width: 100%;
    margin-bottom: 1.25rem;
  }
  .soundbox-sale .soundBox-section .heading {
    font-size: 1.5625rem;
    line-height: 1.4;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-section .heading {
    font-size: clamp(0.875rem, 1.7361111111vw, 1.5625rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-section .sub-heading {
    font-size: 1.25rem;
    line-height: 1.2;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-section .sub-heading {
    font-size: clamp(0.875rem, 1.3888888889vw, 1.25rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b {
    padding-top: 1.5625rem;
    padding-bottom: 1.5625rem;
  }
  .soundbox-sale .soundBox-b .section-header {
    max-width: 100%;
    margin: 0 auto 0.9375rem;
  }
  .soundbox-sale .soundBox-b .heading .text-small {
    display: block;
    font-size: 0.75rem;
    line-height: 1.5;
    font-weight: 500;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .heading .text-small {
    font-size: clamp(0.875rem, 0.8333333333vw, 0.75rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b .top-text {
    font-size: 1rem;
    line-height: 1.25;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .top-text {
    font-size: clamp(0.875rem, 1.1111111111vw, 1rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b .top-text br {
    display: none;
  }
  .soundbox-sale .soundBox-b .top-text .mobile-show {
    display: block;
  }
  .soundbox-sale .soundBox-b .l-grid {
    display: block;
    background-image: none;
    background-color: #fff;
  }
  .soundbox-sale .soundBox-b .l-grid__left {
    width: 100%;
  }
  .soundbox-sale .soundBox-b .l-grid__right {
    width: 100%;
    padding: 0.9375rem;
  }
  .soundbox-sale .soundBox-b .scroll-text {
    display: block;
    margin-bottom: 0.3125rem;
    font-size: 0.75rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .scroll-text {
    font-size: clamp(0.875rem, 0.8333333333vw, 0.75rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b .l-table {
    min-width: 30rem;
    margin-top: 0.875rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .l-table {
    font-size: clamp(0.875rem, 1.0416666667vw, 0.9375rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b .l-table td {
    height: 3rem;
    padding: 0.625rem 0.3125rem;
  }
  .soundbox-sale .soundBox-b .l-table .l-table__header {
    font-size: 1.125rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .l-table .l-table__header {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b .l-table .l-table__header th {
    padding: 0.75rem 0.3125rem;
  }
  .soundbox-sale .soundBox-b .l-table .l-table__header th.highlight::before {
    top: -0.875rem;
    left: -0.4375rem;
    width: 1.5625rem;
    height: 1.3125rem;
  }
  .soundbox-sale .soundBox-b .l-table .l-table__header th:nth-child(1) {
    width: 4.375rem;
  }
  .soundbox-sale .soundBox-b .l-table .l-table__header th:nth-child(2), .soundbox-sale .soundBox-b .l-table .l-table__header th:nth-child(3) {
    width: 12.5rem;
  }
  .soundbox-sale .soundBox-b .l-table .l-table__left {
    width: 4.375rem;
    font-size: 0.75rem;
    line-height: 1.33;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .l-table .l-table__left {
    font-size: clamp(0.875rem, 0.8333333333vw, 0.75rem);
  }
}
@media (max-width: 750px) {
  .soundbox-sale .soundBox-b .bottom-text {
    margin-top: 0.3125rem;
    font-size: 0.75rem;
    line-height: 1.5;
    text-align: left;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox-sale .soundBox-b .bottom-text {
    font-size: clamp(0.875rem, 0.8333333333vw, 0.75rem);
  }
}

.mainWrapper {
  width: 100%;
  min-height: 100vh;
  box-sizing: border-box;
  padding: 0;
  background: black;
}
@media (max-width: 750px) {
  .mainWrapper {
    overflow-x: hidden;
  }
}

h1 {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0;
  z-index: -1;
}

.container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

.flex-row {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.flex-column {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.relative {
  position: relative;
}

.hidden-desktop {
  display: none;
}
@media (max-width: 750px) {
  .hidden-desktop {
    display: block;
  }
}

.check-list {
  width: 100%;
  margin: 48px 0 24px;
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .check-list {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
.check-list {
  font-weight: 700;
  line-height: 1.5;
  list-style-type: none;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .check-list {
    margin: 3.33vw 0 1.67vw;
  }
}
@media (max-width: 750px) {
  .check-list {
    margin: 24px 0 0;
  }
}
.check-list li {
  display: list-item;
  white-space: nowrap;
  margin-bottom: 0.25rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .check-list li {
    margin-bottom: 0.28vw;
  }
}
@media (max-width: 750px) {
  .check-list li {
    margin-bottom: 0.25rem;
    white-space: normal;
  }
}
.check-list li::before {
  content: "??;
  color: white;
  margin-right: 8px;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .check-list li::before {
    margin-right: 0.56vw;
  }
}
@media (max-width: 750px) {
  .check-list li::before {
    margin-right: 8px;
  }
}

.notes {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .notes {
    gap: 0.28vw;
  }
  .notes p {
    white-space: nowrap;
  }
}
@media (max-width: 750px) {
  .notes {
    gap: 4px;
    text-align: center;
  }
}
.notes p {
  font-size: 0.875rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .notes p {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.notes p {
  color: white;
}

.container-fluid {
  width: 100%;
}

.container-fluid__soundbox {
  position: relative;
  width: 100%;
  min-height: 750px;
  background-image: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/kv-soundbox.webp);
  background-size: contain;
  background-position: right;
  background-repeat: no-repeat;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__soundbox {
    min-height: 52.08vw;
  }
}
@media (max-width: 750px) {
  .container-fluid__soundbox {
    min-height: auto;
    background-size: inherit;
    background-position: center;
  }
}

html.js .container-fluid__bn {
  opacity: 0;
  transform: scale(0);
}
html.js .container-fluid__bn__slogan1,
html.js .container-fluid__bn__slogan2,
html.js .container-fluid__bn__slogan3 {
  opacity: 0;
}

.container-fluid__bn {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 42.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__bn {
    aspect-ratio: 1440/838;
    height: auto;
    min-height: 0;
  }
}
@media (max-width: 750px) {
  .container-fluid__bn {
    aspect-ratio: 1440/838;
    height: auto;
    min-height: 0;
  }
}
.container-fluid__bn__bg {
  position: absolute;
  inset: -2%;
  z-index: 0;
  background: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/bn-bg.webp) no-repeat center center;
  background-size: cover;
  transform-origin: center center;
  will-change: transform, filter;
}
.container-fluid__bn__slogan1 {
  position: absolute;
  top: 194px;
  right: calc((100vw - 1440px) / 2 + 44px);
  z-index: 1;
  width: 470px;
  height: 235px;
  transform: translate(-50%, -50%);
}
.container-fluid__bn__slogan1 .container-fluid__bn__slogan-inner {
  width: 100%;
  height: 100%;
  background: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/bn-slogan-1.webp) no-repeat center center;
  background-size: cover;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__bn__slogan1 {
    top: 28.14%;
    left: 67%;
    right: auto;
    width: 40.64%;
    height: auto;
    aspect-ratio: 470/235;
  }
  .container-fluid__bn__slogan1 .container-fluid__bn__slogan-inner {
    background-size: contain;
  }
}
@media (max-width: 750px) {
  .container-fluid__bn__slogan1 {
    top: 28.14%;
    left: 67%;
    right: auto;
    width: 40.64%;
    height: auto;
    aspect-ratio: 470/235;
    transform: translate(-50%, -50%);
  }
  .container-fluid__bn__slogan1 .container-fluid__bn__slogan-inner {
    background-size: contain;
  }
}
.container-fluid__bn__slogan2 {
  position: absolute;
  top: 408px;
  right: calc((100vw - 1440px) / 2 - 40px);
  z-index: 1;
  width: 617px;
  height: 182px;
  transform: translate(-50%, -50%);
}
.container-fluid__bn__slogan2 .container-fluid__bn__slogan-inner {
  width: 100%;
  height: 100%;
  background: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/bn-slogan-2.webp) no-repeat center center;
  background-size: contain;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__bn__slogan2 {
    top: 59.65%;
    left: 63%;
    right: auto;
    width: 49.8%;
    height: auto;
    aspect-ratio: 617/182;
  }
  .container-fluid__bn__slogan2 .container-fluid__bn__slogan-inner {
    background-size: contain;
  }
}
@media (max-width: 750px) {
  .container-fluid__bn__slogan2 {
    top: 59.65%;
    left: 63%;
    right: auto;
    width: 49.8%;
    height: auto;
    aspect-ratio: 617/182;
    transform: translate(-50%, -50%);
  }
  .container-fluid__bn__slogan2 .container-fluid__bn__slogan-inner {
    background-size: contain;
  }
}
.container-fluid__bn__slogan3 {
  position: absolute;
  top: 508px;
  right: calc((100vw - 1440px) / 2 + 20px);
  z-index: 1;
  width: 574px;
  height: 83px;
  transform: translate(-50%, -50%);
}
.container-fluid__bn__slogan3 .container-fluid__bn__slogan-inner {
  width: 100%;
  height: 100%;
  background: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/bn-slogan-3.webp) no-repeat center center;
  background-size: cover;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__bn__slogan3 {
    top: 75.6%;
    left: 61%;
    right: auto;
    width: 47.86%;
    height: auto;
    aspect-ratio: 574/83;
  }
  .container-fluid__bn__slogan3 .container-fluid__bn__slogan-inner {
    background-size: contain;
  }
}
@media (max-width: 750px) {
  .container-fluid__bn__slogan3 {
    top: 75.6%;
    left: 61%;
    right: auto;
    width: 47.86%;
    height: auto;
    aspect-ratio: 574/83;
    transform: translate(-50%, -50%);
  }
  .container-fluid__bn__slogan3 .container-fluid__bn__slogan-inner {
    background-size: contain;
  }
}

.charge-btn-group {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  margin: 2rem 0;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .charge-btn-group {
    gap: 1.67vw;
    margin: 2.22vw 0;
  }
}
@media (max-width: 750px) {
  .charge-btn-group {
    gap: 1.5rem;
    margin: 2rem 0;
  }
}

.charge-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 50px;
  padding: 4px 16px;
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .charge-btn {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
.charge-btn {
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .charge-btn {
    padding: 0.28vw 1.11vw;
  }
}
@media (max-width: 750px) {
  .charge-btn {
    padding: 4px 16px;
  }
}
.charge-btn-primary {
  background: #16c0b6;
  color: #fff;
  transition: background-color 0.2s ease;
}
.charge-btn-primary:hover {
  background: color-mix(in srgb, #16c0b6 82%, white 18%);
  color: #fff;
}
.charge-btn-primary:active {
  background: color-mix(in srgb, #16c0b6 72%, white 28%);
  color: #fff;
}

.pricing {
  width: 100%;
  padding: 0 2rem 2.5rem;
  background: black;
}
.pricing h4 {
  width: 100%;
  color: white;
  text-align: center;
  padding: 1rem 0;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .pricing {
    padding: 0 2.22vw 2.78vw;
  }
}
@media (max-width: 750px) {
  .pricing {
    padding: 0 0.5rem;
  }
}
.pricing__title {
  font-size: 3rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .pricing__title {
    font-size: clamp(0.875rem, 3.3333333333vw, 3rem);
  }
}
.pricing__title {
  line-height: 1.2;
  font-weight: 700;
  color: #fff;
  margin: 0 0 4rem;
  padding: 0;
  text-align: center;
  letter-spacing: 0.3rem;
}
@media (max-width: 750px) {
  .pricing__title {
    font-size: 2.25rem;
    margin: 0 0 2rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .pricing__title {
    font-size: clamp(0.875rem, 2.5vw, 2.25rem);
  }
}

.section-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 4rem 0;
  padding: 0;
  font-size: 3rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .section-title {
    font-size: clamp(0.875rem, 3.3333333333vw, 3rem);
  }
}
.section-title {
  line-height: 1.2;
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: 0.3rem;
}
.section-title__bottom {
  margin: 4rem 0 80px;
}
@media (max-width: 750px) {
  .section-title {
    font-size: 2rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .section-title {
    font-size: clamp(0.875rem, 2.2222222222vw, 2rem);
  }
}
.section-title__line {
  display: block;
}
.section-title__line__underline {
  padding-bottom: 16px;
  position: relative;
}
.section-title__line__underline:after {
  content: "";
  bottom: -16px;
  left: 0;
  position: absolute;
  width: 50%;
  transform: translateX(50%);
  height: 8px;
  background: #ffd987;
}
.section-title__line:first-child:not(:only-child) {
  margin-bottom: 12px;
}

.pricing-tables {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .pricing-tables {
    gap: 2.22vw;
  }
}
@media (max-width: 750px) {
  .pricing-tables {
    gap: 2rem;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    cursor: grab;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-top: 16px;
  }
  .pricing-tables::-webkit-scrollbar {
    display: none;
  }
  .pricing-tables.is-dragging {
    cursor: grabbing;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
  .pricing-tables.is-dragging * {
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
}

.pricing-table {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1px;
  width: 100%;
  color: #333;
}
@media (max-width: 750px) {
  .pricing-table {
    flex-shrink: 0;
    width: 720px;
    min-width: 720px;
  }
}
.pricing-table__row {
  display: contents;
}
.pricing-table__cell {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  min-height: 3.2rem;
  padding: 0.75rem 1rem;
  font-size: 1.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .pricing-table__cell {
    font-size: clamp(0.875rem, 1.6666666667vw, 1.5rem);
  }
}
.pricing-table__cell {
  font-weight: 700;
  line-height: 1.4;
  background: #fff;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .pricing-table__cell {
    min-height: 3.56vw;
    padding: 0.83vw 1.11vw;
  }
}
@media (max-width: 750px) {
  .pricing-table__cell {
    min-height: 3.2rem;
    padding: 0.8rem 0;
    font-size: 1.125rem;
    line-height: 1.3;
    text-align: center;
  }
  .pricing-table__cell small {
    font-size: 1rem;
  }
}
.pricing-table__cell.relative {
  position: relative;
}
.pricing-table__cell.relative picture {
  position: absolute;
  top: -20%;
  right: 36%;
  z-index: 1;
  width: 38%;
  pointer-events: none;
  transform: translate(50%, -50%) rotate(30deg);
}
@media (max-width: 750px) {
  .pricing-table__cell.relative picture {
    top: 4%;
    right: 32%;
    width: 48%;
  }
}
.pricing-table__cell.relative picture img {
  display: block;
  width: 100%;
  height: auto;
}
.pricing-table__cell--label {
  flex-direction: column;
}
.pricing-table__cell--span-2 {
  grid-column: span 2;
  flex-direction: column;
}
.pricing-table__cell--span-rows-3 {
  grid-row: span 3;
}

.pricing-table__cell.text-red {
  color: #ff2e3e;
}

.pricing-table__cell.text-secondary {
  color: #888;
}

.pricing-table__cell.text-tertiary {
  background: #cfcfcf !important;
}

.pricing-table:not(.pricing-table--light) .pricing-table__row--header > .pricing-table__cell:first-child,
.pricing-table:not(.pricing-table--light) .pricing-table__cell--label {
  background: #333;
  color: #fff;
}
.pricing-table:not(.pricing-table--light) .pricing-table__row--header > .pricing-table__cell:first-child small,
.pricing-table:not(.pricing-table--light) .pricing-table__cell--label small {
  font-size: 0.875rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .pricing-table:not(.pricing-table--light) .pricing-table__row--header > .pricing-table__cell:first-child small,
  .pricing-table:not(.pricing-table--light) .pricing-table__cell--label small {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.pricing-table:not(.pricing-table--light) .pricing-table__row--header > .pricing-table__cell:not(:first-child) {
  background: #16c0b6;
  color: #fff;
}

.pricing-table--light .pricing-table__row--header .pricing-table__cell {
  background: #c6e4f3;
  color: #888;
}
.pricing-table--light .pricing-table__cell--label {
  background: #c6e4f3;
  color: #888;
}

.card-list {
  display: flex;
  gap: 3rem;
  width: 100%;
  margin-bottom: 4rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card-list {
    gap: 3.33vw;
  }
}
@media (max-width: 750px) {
  .card-list {
    gap: 1rem;
    flex-wrap: nowrap;
    width: calc(100% + 1.5rem);
    margin-right: calc(-1 * 1.5rem);
    padding-right: 1.5rem;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    cursor: grab;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .card-list::-webkit-scrollbar {
    display: none;
  }
  .card-list.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
  .card-list.is-dragging * {
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
}

.card {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  min-height: 36.75rem;
  padding: 0 0.5rem 0.5rem;
  overflow: hidden;
  background: linear-gradient(-90deg, #0084a8 0%, #16c0b6 100%);
  border-radius: 2.25rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card {
    min-height: 40.83vw;
    padding: 0 0.56vw 0.56vw;
    border-radius: 2.5vw;
  }
}
@media (max-width: 750px) {
  .card {
    flex: 0 0 calc(100% - 1.5rem - 1rem);
    width: calc(100% - 2.5rem - 1rem);
    min-width: 0;
    max-width: 346px;
    min-height: 36.75rem;
    padding: 0 0.5rem 0.5rem;
    border-radius: 2.25rem;
    scroll-snap-align: start;
  }
}
.card__header {
  display: flex;
  flex: 0 0 40%;
  flex-direction: column;
  align-items: center;
  padding: 2rem 1.5rem 0;
  text-align: center;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__header {
    padding: 2.22vw 1.67vw 0;
  }
}
@media (max-width: 750px) {
  .card__header {
    padding: 2rem 1.5rem 0;
  }
}
.card__header picture {
  z-index: 2;
}
.card__title {
  font-size: 2rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__title {
    font-size: clamp(0.875rem, 2.2222222222vw, 2rem);
  }
}
.card__title {
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.3rem;
}
.card__price-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
}
.card__price-row h2 {
  font-size: 2rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__price-row h2 {
    font-size: clamp(0.875rem, 2.2222222222vw, 2rem);
  }
}
.card__price-row h2 {
  line-height: 1.2;
  font-weight: 700;
  color: #f4e13d;
}
.card__price-row h3 {
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__price-row h3 {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
.card__price-row h3 {
  font-weight: 700;
  color: #fff;
}
.card__header small {
  font-size: 1rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__header small {
    font-size: clamp(0.875rem, 1.1111111111vw, 1rem);
  }
}
.card__header small {
  color: #fff;
}
.card__body {
  position: relative;
  display: flex;
  flex: 1 1 60%;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 0.25rem;
  padding: 0 16px 24px;
  background-color: #fff;
  border-radius: 0 0 2.25rem 2.25rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__body {
    padding: 0 1.11vw 1.67vw;
    border-radius: 0 0 2.5vw 2.5vw;
  }
}
@media (max-width: 750px) {
  .card__body {
    padding: 0 16px 24px;
    border-radius: 0 0 2.25rem 2.25rem;
  }
}
.card__body::before {
  content: "";
  position: absolute;
  top: 5rem;
  left: 50%;
  width: 100%;
  height: 10rem;
  transform: translate(-50%, -100%);
  background-color: #fff;
  border-radius: 50%;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__body::before {
    top: 5.56vw;
    height: 11.11vw;
  }
}
@media (max-width: 750px) {
  .card__body::before {
    top: 5rem;
    height: 10rem;
  }
}
.card__content {
  width: 100%;
  z-index: 1;
}
.card__content ul {
  width: 100%;
  margin: 0;
  padding-left: 2rem;
  font-size: 1rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__content ul {
    font-size: clamp(0.875rem, 1.1111111111vw, 1rem);
  }
}
.card__content ul {
  font-weight: 400;
  line-height: 1.5;
  color: #333;
  list-style-type: disc;
  list-style-position: outside;
}
.card__content ul li {
  display: list-item;
  margin-bottom: 0.25rem;
}
.card__content ul li span {
  display: inline;
  font-size: 1.375rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__content ul li span {
    font-size: clamp(0.875rem, 1.5277777778vw, 1.375rem);
  }
}
.card__content ul li span {
  font-weight: 700;
  color: #333;
}
.card__content ul li small {
  display: inline;
  font-size: 0.875rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__content ul li small {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.card__content ul li small {
  color: #333;
}
.card__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 100%;
  z-index: 1;
  flex-shrink: 0;
}
.card__footer h2 {
  font-size: 2rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .card__footer h2 {
    font-size: clamp(0.875rem, 2.2222222222vw, 2rem);
  }
}
.card__footer h2 {
  font-weight: 700;
  text-align: center;
  color: #333;
}
.card__footer h2.text-red {
  color: #ff2e3e;
}
.card__footer .charge-btn-group {
  width: 100%;
  margin: 0;
  gap: 8px;
}

.soundbox {
  width: 100%;
  padding: 0 2rem 2.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox {
    padding: 0 2.22vw 2.78vw;
  }
}
@media (max-width: 750px) {
  .soundbox {
    padding: 0 1.5rem 2rem;
  }
}
.soundbox__heading {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.8rem;
}
.soundbox__heading span {
  white-space: nowrap;
  font-weight: 700;
  font-size: 2.625rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__heading span {
    font-size: clamp(0.875rem, 2.9166666667vw, 2.625rem);
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__heading {
    gap: 0.89vw;
  }
}
@media (max-width: 750px) {
  .soundbox__heading {
    gap: 0rem;
    flex-direction: column;
  }
  .soundbox__heading span {
    white-space: normal;
  }
}
.soundbox__content {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  padding: 0 4rem;
  color: white;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__content {
    padding: 0 8.89vw;
  }
}
@media (max-width: 750px) {
  .soundbox__content {
    flex-direction: column;
    padding: 0 0.5rem;
  }
}
.soundbox__content > :nth-child(1) {
  flex: 0 0 60%;
}
.soundbox__content > :nth-child(2) {
  flex: 0 0 40%;
}
.soundbox__content span {
  font-size: 2.625rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__content span {
    font-size: clamp(0.875rem, 2.9166666667vw, 2.625rem);
  }
}
.soundbox__icons {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
  gap: 16px;
  width: 100%;
  border-radius: 22px;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 40px 16px;
  color: white;
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
.soundbox__icons {
  border: 2px solid #ffd987;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons {
    gap: 1.11vw;
    border-radius: 1.53vw;
    padding: 2.78vw 1.11vw;
  }
}
@media (max-width: 750px) {
  .soundbox__icons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: stretch;
    justify-items: center;
    gap: 2rem;
    border-radius: 22px;
    padding: 2rem 1rem;
    font-size: 0.875rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.soundbox__icons .flex-column {
  min-height: 100px;
  justify-content: space-between;
  gap: 8px;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons .flex-column {
    min-height: 6.94vw;
    gap: 0.56vw;
  }
}
@media (max-width: 750px) {
  .soundbox__icons .flex-column {
    width: 100%;
    min-height: auto;
    align-items: center;
    text-align: center;
    gap: 0.5rem;
  }
}
.soundbox__icons__footer {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 32px 0;
  color: white;
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons__footer {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons__footer {
    padding: 2.22vw 0;
  }
}
@media (max-width: 750px) {
  .soundbox__icons__footer {
    gap: 4px;
    padding: 2rem 0;
  }
}
.soundbox__icons__footer-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons__footer-item {
    gap: 1.11vw;
  }
}
@media (max-width: 750px) {
  .soundbox__icons__footer-item {
    flex: 1;
    flex-direction: column;
    gap: 0.5rem;
    text-align: center;
    font-size: 0.875rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .soundbox__icons__footer-item {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.soundbox__icons__footer .text-separator {
  flex-shrink: 0;
  width: 1px;
  height: 28px;
  display: block;
  margin: 0 32px;
  border-left: 1px solid #ffd987;
}
@media (max-width: 750px) {
  .soundbox__icons__footer .text-separator {
    height: 58px;
    margin: 0;
  }
}

.container-fluid__ktv {
  position: relative;
  width: 100%;
  min-height: 35.5rem;
  display: flex;
  flex-direction: column;
  background-color: #3d0760;
  background-image: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/ktv-bg.webp);
  background-size: contain;
  background-position: right;
  background-repeat: no-repeat;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__ktv {
    min-height: 39.44vw;
  }
}
@media (max-width: 750px) {
  .container-fluid__ktv {
    background-image: url(https://www.homeplus.net.tw/cable/images/manual_upload/i-charge/images/ktv-bg-s.webp);
    min-height: calc(100vw * 1180 / 749);
    background-size: 100% auto;
    background-position: center top;
    background-repeat: no-repeat;
    background-color: black;
  }
}
.container-fluid__ktv .container {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 35.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .container-fluid__ktv .container {
    min-height: 39.44vw;
  }
}
@media (max-width: 750px) {
  .container-fluid__ktv .container {
    min-height: auto;
  }
}

.ktv {
  width: 100%;
  flex: 1;
  min-height: 35.5rem;
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .ktv {
    min-height: 39.44vw;
    padding: 0 2.22vw;
  }
}
@media (max-width: 750px) {
  .ktv {
    min-height: auto;
    padding: 0 24px;
  }
}
.ktv .notes {
  margin-top: 1.2rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .ktv .notes {
    margin-top: 1.33vw;
  }
}
@media (max-width: 750px) {
  .ktv .notes {
    margin-top: 1.2rem;
  }
}
.ktv__content {
  display: flex;
  flex: 1;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  min-height: 35.5rem;
  padding: 0 4rem;
  color: white;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}
@media (min-width: 751px) and (max-width: 1440px) {
  .ktv__content {
    min-height: 39.44vw;
    padding: 0 4.44vw;
  }
}
@media (max-width: 750px) {
  .ktv__content {
    flex-direction: column;
    min-height: auto;
    padding: 0;
    justify-content: space-between;
  }
}
.ktv__content .notes {
  align-items: flex-start;
}
.ktv__content .hidden-desktop {
  display: none;
}
@media (max-width: 750px) {
  .ktv__content .hidden-desktop {
    display: block;
  }
}
.ktv__content .hidden-mobile {
  display: block;
}
@media (max-width: 750px) {
  .ktv__content .hidden-mobile {
    display: none;
  }
}
@media (max-width: 750px) {
  .ktv__content .check-list li {
    white-space: normal;
  }
}
.ktv__content .flex-column {
  flex: 0 0 40%;
  align-items: flex-start;
  justify-content: center;
  min-width: 0;
  min-height: 35.5rem;
  z-index: 1;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .ktv__content .flex-column {
    min-height: 39.44vw;
  }
}
@media (max-width: 750px) {
  .ktv__content .flex-column {
    flex: none;
    width: 100%;
    min-height: auto;
    padding-top: 32px;
  }
}
.ktv__content .flex-column > img {
  width: 15rem;
  height: auto;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .ktv__content .flex-column > img {
    width: 16.67vw;
  }
}
@media (max-width: 750px) {
  .ktv__content .flex-column > img {
    width: 18rem;
    margin: 0 auto;
  }
}
.ktv__content > img {
  flex: 0 0 60%;
  align-self: stretch;
  min-width: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom center;
     object-position: bottom center;
}
@media (max-width: 750px) {
  .ktv__content > img {
    display: none;
  }
}

.disney {
  width: 100%;
  gap: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.disney .section-title {
  margin: 32px 0 0;
  letter-spacing: 0.3rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney {
    padding: 2.22vw;
    gap: 2.22vw;
  }
  .disney .section-title {
    margin: 2.22vw 0;
  }
}
@media (max-width: 750px) {
  .disney {
    padding: 0 1.5rem 2rem;
    gap: 1.5rem;
  }
}
.disney__block {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  overflow: hidden;
  width: 100%;
  height: 240px;
  border: 1px solid #00534b;
  border-radius: 1.375rem;
  background: linear-gradient(180deg, #000 0%, #00534b 100%);
  color: #fff;
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block {
    height: 16.67vw;
    border-radius: 1.53vw;
  }
}
@media (max-width: 750px) {
  .disney__block {
    flex-direction: column;
    align-items: stretch;
    height: 340px;
    border-radius: 1rem;
    font-size: 1.125rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .disney__block {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
.disney__block > .flex-column {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  overflow: hidden;
  width: calc(100% - 39.75rem);
  min-width: 0;
  padding: 16px 64px;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block > .flex-column {
    width: calc(100% - 44.17vw);
    padding: 4.44vw 8.89vw;
  }
}
@media (max-width: 750px) {
  .disney__block > .flex-column {
    order: 1;
    width: 100%;
    padding: 72px 24px;
  }
}
.disney__block > picture {
  display: flex;
  flex: 0 0 39.75rem;
  overflow: hidden;
  align-self: stretch;
  width: 39.75rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block > picture {
    flex: 0 0 44.17vw;
    width: 44.17vw;
  }
}
@media (max-width: 750px) {
  .disney__block > picture {
    display: block;
    flex: none;
    order: 2;
    align-self: auto;
    width: 100%;
  }
}
.disney__block > picture img {
  width: 100%;
  height: 100%;
  min-height: 100%;
  flex: 1;
}
@media (max-width: 750px) {
  .disney__block > picture img {
    flex: none;
    height: auto;
    min-height: 0;
  }
}
.disney__block .flex-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  gap: 1.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row {
    gap: 1.67vw;
  }
}
@media (max-width: 750px) {
  .disney__block .flex-row {
    gap: 1rem;
  }
}
.disney__block .flex-row picture {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 6.9375rem;
  min-width: 0;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row picture {
    width: 7.71vw;
  }
}
@media (max-width: 750px) {
  .disney__block .flex-row picture {
    width: 72px;
  }
}
.disney__block .flex-row picture img {
  width: 100%;
  height: auto;
}
.disney__block .flex-row > .flex-column {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  gap: 0.5rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row > .flex-column {
    gap: 0.56vw;
  }
}
@media (max-width: 750px) {
  .disney__block .flex-row > .flex-column {
    gap: 0.5rem;
  }
}
.disney__block .flex-row > .flex-column span {
  font-size: 1.625rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row > .flex-column span {
    font-size: clamp(0.875rem, 1.8055555556vw, 1.625rem);
  }
}
.disney__block .flex-row > .flex-column span {
  line-height: 1.2;
  font-weight: 700;
  color: #fff;
}
@media (max-width: 750px) {
  .disney__block .flex-row > .flex-column span {
    font-size: 1.25rem;
  }
}
@media (max-width: 750px) and (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row > .flex-column span {
    font-size: clamp(0.875rem, 1.3888888889vw, 1.25rem);
  }
}
.disney__block .flex-row > .flex-column small {
  display: block;
  font-size: 0.875rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row > .flex-column small {
    font-size: clamp(0.875rem, 0.9722222222vw, 0.875rem);
  }
}
.disney__block .flex-row > .flex-column small {
  font-weight: 700;
}
.disney__block .flex-row > .flex-column p {
  font-size: 1.125rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .disney__block .flex-row > .flex-column p {
    font-size: clamp(0.875rem, 1.25vw, 1.125rem);
  }
}
.disney__block .flex-row > .flex-column p {
  line-height: 1.3;
  font-weight: 700;
}
@media (max-width: 750px) {
  .disney__block.reverse > picture {
    order: 2;
  }
  .disney__block.reverse > .flex-column {
    order: 1;
  }
}

.plan {
  display: flex;
  flex-direction: column;
  padding: 0 0 32px;
  gap: 2rem;
  margin-top: 48px;
}
.plan .flex-row {
  gap: 32px;
}
.plan .section-title {
  margin: 32px 0 0;
  letter-spacing: 0.3rem;
}
@media (min-width: 751px) and (max-width: 1440px) {
  .plan {
    gap: 2.22vw;
    padding: 2.22vw;
    margin-top: 3.33vw;
  }
  .plan .flex-row {
    gap: 2.22vw;
  }
  .plan .section-title {
    margin: 0 0 2.22vw 0;
  }
}
@media (max-width: 750px) {
  .plan {
    gap: 1.5rem;
    padding: 0 24px 32px;
    margin-top: 0;
  }
  .plan .flex-row {
    flex-direction: column;
    gap: 32px;
  }
  .plan .section-title {
    margin: 32px 0 0;
  }
}/*# sourceMappingURL=styles.css.map */
