/* The showcase shares Xixiaji's paper/ink layout. Images come from the mini program. */
.chaoxi-hero { min-height: 660px; padding-block: 38px 48px; }
.chaoxi-tagline { margin: 0 0 18px; color: var(--ink); font-size: 21px; line-height: 1.7; letter-spacing: .06em; }
.chaoxi-page .account-section-heading h2, .chaoxi-page .account-section-heading > p { text-wrap: balance; }
.chaoxi-visual { position: relative; height: 555px; margin: 0; isolation: isolate; }
.chaoxi-visual .account-art { top: 22px; right: -55px; width: 123%; opacity: .28; }
.chaoxi-home { position: absolute; top: 2px; right: 62px; width: 232px; height: auto; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 14px 40px var(--account-shadow); transform: rotate(3deg); }
.chaoxi-travel-art { position: absolute; left: -5px; bottom: 90px; width: 250px; height: auto; transform: rotate(-5deg); filter: drop-shadow(0 7px 10px var(--account-shadow)); }
.chaoxi-visual figcaption { position: absolute; bottom: 0; inset-inline: 0; color: var(--muted); font-family: var(--sans); font-size: 12px; line-height: 1.8; text-align: center; }
.chaoxi-memory-note { display: grid; grid-template-columns: 1.25fr 1fr; align-items: center; gap: 24px; }
.chaoxi-memory-note img { display: block; width: 100%; height: auto; transform: rotate(-3deg); }
.chaoxi-memory-note p { margin: 0; font-size: 17px; line-height: 1.8; }
.chaoxi-memory-note p + p { margin-top: 9px; color: var(--muted); }
.chaoxi-vocabulary-note { display: flex; align-items: center; gap: 28px; }
.chaoxi-vocabulary-note img { display: block; width: 48%; height: auto; }
.chaoxi-vocabulary-note p { max-width: 8em; margin: 0; font-size: 18px; line-height: 1.8; }
.chaoxi-small-things { padding-block: 48px 54px; border-top: 1px solid var(--line); }
.chaoxi-small-things .account-section-heading { margin-bottom: 26px; }
.chaoxi-daily-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 38px; margin: 0; padding: 0; list-style: none; }
.chaoxi-daily-list > li { display: grid; grid-template-columns: 86px minmax(0, 1fr); gap: 6px 18px; align-content: start; }
.chaoxi-daily-list img { grid-row: 1 / 3; align-self: center; display: block; width: 100%; height: auto; }
.chaoxi-daily-list h3 { margin: 0; font-weight: 400; font-size: 20px; line-height: 1.6; letter-spacing: .03em; }
.chaoxi-daily-list p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.9; }

@media (max-width: 1100px) {
  .chaoxi-tagline { font-size: 19px; }
  .chaoxi-home { right: 28px; width: 222px; }
  .chaoxi-travel-art { left: -5px; width: 210px; }
  .chaoxi-memory-note { gap: 16px; }
  .chaoxi-memory-note p { font-size: 15px; }
  .chaoxi-vocabulary-note { gap: 20px; }
  .chaoxi-vocabulary-note p { font-size: 16px; }
  .chaoxi-daily-list { gap: 26px; }
  .chaoxi-daily-list > li { grid-template-columns: 1fr; gap: 12px; }
  .chaoxi-daily-list img { grid-row: auto; width: 120px; }
  .chaoxi-daily-list h3 { font-size: 19px; }
}
@media (max-width: 767px) {
  .chaoxi-hero { min-height: auto; padding-block: 44px 35px; gap: 30px; }
  .chaoxi-tagline { font-size: 19px; margin-bottom: 16px; }
  .chaoxi-visual { height: 520px; }
  .chaoxi-home { right: 26px; width: 208px; }
  .chaoxi-travel-art { left: 0; bottom: 72px; width: min(56%, 210px); }
  .chaoxi-visual .account-art { right: -12px; top: 54px; width: 110%; }
  .chaoxi-visual figcaption { font-size: 11px; }
  .chaoxi-memory-note { grid-template-columns: 1.1fr 1fr; gap: 20px; }
  .chaoxi-memory-note img { max-width: 220px; }
  .chaoxi-memory-note p { font-size: 16px; }
  .chaoxi-travel-flow { grid-template-columns: 1fr; gap: 18px; }
  .chaoxi-travel-flow li { flex-direction: row; justify-content: space-between; gap: 12px; }
  .chaoxi-travel-flow li + li::before { content: none; }
  .chaoxi-vocabulary-note { gap: 24px; }
  .chaoxi-vocabulary-note img { max-width: 220px; }
  .chaoxi-small-things { padding-block: 34px 40px; }
  .chaoxi-daily-list { grid-template-columns: 1fr; gap: 26px; }
  .chaoxi-daily-list > li { grid-template-columns: 112px minmax(0, 1fr); gap: 6px 22px; }
  .chaoxi-daily-list img { grid-row: 1 / 3; width: 100%; }
}
@media (max-width: 380px) {
  .chaoxi-home { right: 12px; width: 200px; }
  .chaoxi-visual { height: 500px; }
  .chaoxi-tagline { font-size: 17px; }
  .chaoxi-memory-note { gap: 16px; }
  .chaoxi-memory-note p { font-size: 14px; }
  .chaoxi-travel-flow span { font-size: 14px; }
  .chaoxi-travel-flow small { font-size: 11px; }
}
@media (forced-colors: active) {
  .chaoxi-visual .account-art { display: none; }
}
