.bg-cream-warm {
  background-color: rgb(245 235 229);
}

.bg-cream-rose {
  background-color: rgb(240 226 220);
}

.ime-home-v1-story-copy {
  text-align: center;
}

.ime-home-v1-line {
  transform-origin: center;
}

.ime-home-v1-illustration {
  width: min(100%, 28rem);
}

.ime-home-v1-illustration svg {
  max-height: 100%;
}

.ime-home-v1-story-section .ime-home-v1-story-art {
  inset: auto !important;
  position: absolute !important;
  top: 50% !important;
  right: clamp(2rem, 8vw, 8rem) !important;
  width: min(42vw, 30rem) !important;
  height: min(58vh, 31rem) !important;
  transform: translateY(-50%) !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 12 !important;
  padding: 0 !important;
}

.ime-home-v1-story-section .ime-home-v1-story-art > div,
.ime-home-v1-story-section .ime-home-v1-story-art > svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
  opacity: 1 !important;
}

.ime-home-v1-story-section .ime-home-v1-story-art svg {
  display: block !important;
  height: 100% !important;
  overflow: visible !important;
  width: 100% !important;
}

.ime-home-v1-story-section .ime-home-v1-copy-frame {
  justify-content: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  text-align: left !important;
}

.ime-home-v1-story-section .ime-home-v1-copy {
  align-items: flex-start !important;
  margin-left: clamp(2rem, 8vw, 7rem) !important;
  margin-right: auto !important;
  max-width: 36rem !important;
  opacity: 1 !important;
  text-align: left !important;
  transform: none !important;
}

.ime-home-v1-story-section .ime-home-v1-kicker {
  margin-bottom: 1.5rem !important;
}

.ime-home-v1-story-section .ime-home-v1-title {
  filter: none !important;
  font-family: var(--ime-story-title-font, ChenYuluoyan, var(--font-sans-tc), "Microsoft JhengHei", "微軟正黑", "Noto Sans TC", "PingFang TC", sans-serif) !important;
  font-size: clamp(1.6rem, 4vw, 2.8rem) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-shadow: none !important;
}

.ime-home-v1-story-section .ime-home-v1-body {
  line-height: 2 !important;
  max-width: 36rem !important;
  text-shadow: none !important;
}

.ime-home-v1-story-section.ime-home-v1-slide-dark .ime-home-v1-title {
  color: rgb(250 247 242) !important;
}

.ime-home-v1-story-section.ime-home-v1-slide-dark .ime-home-v1-kicker,
.ime-home-v1-story-section.ime-home-v1-slide-dark .ime-home-v1-body {
  color: rgb(250 247 242 / 0.42) !important;
}

.ime-home-v1-story-section.ime-home-v1-slide-light .ime-home-v1-title {
  color: rgb(10 10 10 / 0.9) !important;
}

.ime-home-v1-story-section.ime-home-v1-slide-light .ime-home-v1-kicker,
.ime-home-v1-story-section.ime-home-v1-slide-light .ime-home-v1-body {
  color: rgb(10 10 10 / 0.52) !important;
}

.ime-home-v1-story-section.ime-home-v1-slide-light > div[class~="z-[15]"] {
  opacity: 0 !important;
}

.ime-home-v1-story-section.ime-home-v1-slide-light > div[class~="z-[1]"] {
  opacity: 0.16 !important;
}

.ime-home-v1-story-section .ime-home-v1-source-copy-hidden {
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  left: clamp(3rem, 8vw, 8.5rem);
  max-width: 36rem;
  position: absolute;
  text-align: left;
  top: 50%;
  transform: translateY(-50%);
  width: min(36rem, calc(52vw - 5rem));
  z-index: 25;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-kicker {
  font-family: var(--font-display), var(--font-sans-tc), "Microsoft JhengHei", "微軟正黑", "Noto Sans TC", "PingFang TC", sans-serif;
  font-size: 0.78rem;
  letter-spacing: 0.32em;
  margin-bottom: 1.5rem;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-title {
  filter: none !important;
  font-family: var(--ime-story-title-font, ChenYuluoyan, var(--font-sans-tc), "Microsoft JhengHei", "微軟正黑", "Noto Sans TC", "PingFang TC", sans-serif) !important;
  font-size: clamp(1.95rem, 3.4vw, 3.25rem) !important;
  font-weight: 600 !important;
  line-height: 1.28 !important;
  margin: 0;
  text-shadow: none !important;
  white-space: pre-line;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-body {
  font-family: var(--font-sans-tc), sans-serif;
  font-size: clamp(1rem, 1.08vw, 1.12rem);
  line-height: 2;
  margin: 2rem 0 0;
  max-width: 36rem;
  text-shadow: none !important;
  white-space: pre-line;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-dark .ime-home-v1-title {
  color: rgb(250 247 242) !important;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-dark .ime-home-v1-kicker,
.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-dark .ime-home-v1-body {
  color: rgb(250 247 242 / 0.58) !important;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-light .ime-home-v1-title {
  color: rgb(10 10 10 / 0.88) !important;
}

.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-light .ime-home-v1-kicker,
.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-light .ime-home-v1-body {
  color: rgb(10 10 10 / 0.58) !important;
}

@media (min-width: 1024px) {
  .ime-home-v1-story-copy {
    text-align: left;
  }

  .ime-home-v1-line {
    margin-left: 0;
    margin-right: 0;
    transform-origin: left center;
  }
}

@media (max-width: 1023px) {
  .ime-home-v1-story-section .ime-home-v1-generated-copy {
    align-items: center;
    bottom: 10vh;
    left: 50%;
    max-width: min(34rem, calc(100vw - 3rem));
    text-align: center;
    top: auto;
    transform: translateX(-50%);
    width: min(34rem, calc(100vw - 3rem));
  }

  .ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-title {
    font-size: clamp(1.6rem, 7vw, 2.45rem) !important;
  }

  .ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-body {
    max-width: min(31rem, calc(100vw - 3rem));
  }

  .ime-home-v1-story-section .ime-home-v1-story-art {
    left: 50% !important;
    right: auto !important;
    top: 14% !important;
    width: min(80vw, 24rem) !important;
    height: min(34vh, 18rem) !important;
    transform: translateX(-50%) !important;
  }

  .ime-home-v1-story-section .ime-home-v1-copy-frame {
    align-items: flex-end !important;
    padding-bottom: 12vh !important;
    text-align: center !important;
  }

  .ime-home-v1-story-section .ime-home-v1-copy {
    align-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: min(34rem, calc(100vw - 3rem)) !important;
    text-align: center !important;
  }
}

section.ime-home-v1-story-section {
  height: 100vh !important;
  min-height: 100vh !important;
  position: sticky !important;
  top: 0 !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

section.ime-home-v1-story-section .ime-home-v1-source-copy-hidden {
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

section.ime-home-v1-story-section .ime-home-v1-generated-copy {
  align-items: center !important;
  display: flex !important;
  flex-direction: column !important;
  inset: 0 !important;
  justify-content: center !important;
  left: 0 !important;
  margin: 0 auto !important;
  max-width: none !important;
  padding: clamp(5.5rem, 10vh, 8rem) clamp(1.5rem, 8vw, 8rem) clamp(4rem, 8vh, 7rem) !important;
  pointer-events: none !important;
  position: absolute !important;
  text-align: center !important;
  top: 0 !important;
  transform: none !important;
  width: 100% !important;
  z-index: 35 !important;
}

section.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-kicker {
  color: var(--ime-story-accent, #b8953f) !important;
  font-family: var(--font-display), var(--font-sans-tc), "Microsoft JhengHei", "微軟正黑", "Noto Sans TC", "PingFang TC", sans-serif !important;
  font-size: clamp(0.76rem, 1vw, 0.96rem) !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  margin: 0 0 clamp(1rem, 2.4vh, 1.7rem) !important;
  opacity: 0.78 !important;
}

section.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-title {
  color: var(--ime-story-text, #fffaf4) !important;
  filter: none !important;
  font-family: var(--ime-story-title-font, ChenYuluoyan, var(--font-sans-tc), "Microsoft JhengHei", "微軟正黑", "Noto Sans TC", "PingFang TC", sans-serif) !important;
  font-size: var(--ime-story-title-size, clamp(2.55rem, 6.4vw, 5.65rem)) !important;
  font-weight: var(--ime-story-title-weight, 400) !important;
  letter-spacing: 0 !important;
  line-height: var(--ime-story-title-line-height, 1.05) !important;
  margin: 0 auto !important;
  max-width: min(64rem, 86vw) !important;
  text-align: center !important;
  text-shadow: 0 18px 42px rgba(14, 8, 24, 0.42) !important;
  white-space: pre-line !important;
}

section.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-body {
  color: var(--ime-story-text, #fffaf4) !important;
  font-family: var(--ime-story-body-font, var(--font-sans-tc), "Noto Sans TC", sans-serif) !important;
  font-size: var(--ime-story-body-size, clamp(0.98rem, 1.2vw, 1.16rem)) !important;
  line-height: var(--ime-story-body-line-height, 2.1) !important;
  margin: 2rem auto 0 !important;
  max-width: min(48rem, 82vw) !important;
  opacity: 0.66 !important;
  text-align: center !important;
  text-shadow: 0 10px 28px rgba(14, 8, 24, 0.36) !important;
  white-space: pre-line !important;
}

section.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-dark .ime-home-v1-title,
section.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-light .ime-home-v1-title,
section.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-dark .ime-home-v1-body,
section.ime-home-v1-story-section .ime-home-v1-generated-copy.ime-home-v1-slide-light .ime-home-v1-body {
  color: var(--ime-story-text, #fffaf4) !important;
}

section.ime-home-v1-story-section[data-ime-custom-media="true"] .ime-home-v1-story-art {
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

section.ime-home-v1-story-section[data-ime-story-active="1"] .ime-home-v1-generated-copy .ime-home-v1-body {
  opacity: 0.56 !important;
}

section.ime-home-v1-story-section[data-ime-story-active="2"] .ime-frontstage-story-background,
section.ime-home-v1-story-section[data-ime-story-active="3"] .ime-frontstage-story-background {
  opacity: 0.64;
}

@media (max-width: 1023px) {
  section.ime-home-v1-story-section {
    height: calc(var(--ime-mobile-vh, 1vh) * 100) !important;
    min-height: calc(var(--ime-mobile-vh, 1vh) * 100) !important;
    overflow: hidden !important;
  }

  section[data-ime-section-key^="home_story_"] .ime-frontstage-story-background {
    height: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    opacity: 0.54 !important;
    transform: translateZ(0) !important;
    will-change: transform, opacity !important;
  }

  section[data-ime-section-key="home_story_01"] .ime-frontstage-story-background {
    opacity: 0.5 !important;
  }

  section.ime-home-v1-story-section .ime-home-v1-generated-copy {
    bottom: auto !important;
    justify-content: center !important;
    left: 0 !important;
    max-width: none !important;
    padding: clamp(4.6rem, calc(var(--ime-mobile-vh, 1vh) * 13), 6.1rem) 1.35rem clamp(3.2rem, calc(var(--ime-mobile-vh, 1vh) * 8), 4.4rem) !important;
    top: 0 !important;
    transform: none !important;
    width: 100% !important;
    will-change: contents !important;
  }

  section.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-title {
    font-size: var(--ime-story-title-size, clamp(2.2rem, 13vw, 4.15rem)) !important;
    max-width: min(34rem, 92vw) !important;
    text-shadow: 0 14px 34px rgba(80, 43, 74, 0.22) !important;
  }

  section.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-body {
    font-size: var(--ime-story-body-size, 0.96rem) !important;
    max-width: min(31rem, 88vw) !important;
    opacity: 0.72 !important;
    text-shadow: 0 10px 26px rgba(80, 43, 74, 0.18) !important;
  }

  section.ime-home-v1-story-section .ime-home-v1-generated-copy .ime-home-v1-kicker {
    margin-bottom: clamp(0.85rem, calc(var(--ime-mobile-vh, 1vh) * 2), 1.25rem) !important;
  }
}
