/* 手机画册：成对照片、错落插图与留白。 */
#story { width: 100%; padding: 58px 28px 0; background: #fff; }
.story-prelude { display: flex; align-items: center; gap: 24px; margin-bottom: 58px; }
.story-inset { width: 50%; }
.story-inset img { height: auto; aspect-ratio: 1 / 1.05; }
.story-prelude > p { flex: 1; font: 19px/1.5 Georgia, serif; color: #6f655b; }
.story-prelude > p span { display: block; margin-top: 13px; font: 10px/1.8 var(--serif); color: var(--muted); }
.story-main-photo { width: 88%; margin-left: auto; }
.story-main-photo img { height: auto; aspect-ratio: 3 / 4; }
.story-copy { text-align: center; margin-top: 30px; padding: 0 5px 45px; }
.story-copy h2, .together-copy h2 { font-size: 18px; letter-spacing: 1px; }
.story-copy .letter-copy { font-size: 14px; margin-top: 18px; }
.story-together { margin: 12px -28px 0; padding: 46px 28px 42px; background: #f5f2e8; }
.together-photo { width: 74%; }
.together-photo img { height: auto; aspect-ratio: 4 / 3; }
.together-copy { margin: 32px 0 0 18%; }
.small-script { font: italic 30px Georgia, serif; color: var(--brown); margin-bottom: 20px; }
.together-copy .letter-copy { font-size: 14px; margin-top: 18px; }
.promise { margin-top: 50px; }
.promise-photo { width: 86%; margin-left: auto; }
.promise-photo img { height: auto; aspect-ratio: 4 / 3; filter: none; }
.promise-copy { margin-top: 32px; padding-bottom: 48px; text-align: center; }
.promise-word { font: italic 44px Georgia, serif; letter-spacing: -1px; margin-bottom: 28px; }
.promise-word span { color: var(--wine); }
.promise-copy h2 { font-size: 20px; letter-spacing: 1px; }
.promise-copy > p:last-child { max-width: 320px; margin: 24px auto 0; color: var(--muted); font: 14px/2.3 var(--serif); }
@media(min-width: 600px) {
  #story { padding-inline: 48px; }
  .story-together { margin-inline: -48px; padding-inline: 48px; }
  .story-prelude > p { font-size: 23px; }
}
