/* Four winter moments in a shared frame, with original photo colours. */
#memories .memory-mosaic { display: grid; grid-template-columns: minmax(0,1fr); gap: 5px; border-radius: 18px; overflow: hidden; background: #142733; }
#memories .memory-tile { position: relative; min-width: 0; aspect-ratio: 2.1; overflow: hidden; }
#memories .memory-tile img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; border-radius: 0; filter: saturate(.78) contrast(.96) brightness(.98); }
#memories .memory-tile--people img { object-position: 50% 65%; }
#memories .memory-tile--detail img { object-position: 57% center; filter: saturate(.7) contrast(.96) brightness(.95); }
#memories .memory-tile--street img { object-position: 50% 57%; }
#memories .memory-tile--porch img { object-position: 50% 42%; filter: saturate(.67) sepia(.12) contrast(.92) brightness(1.14); }
#memories .memory-tile--selfie img { object-position: 50% 43%; filter: saturate(.62) sepia(.12) contrast(.92) brightness(.98); }
#memories .memory-tile--kimono img { object-position: 50% 40%; filter: saturate(.65) sepia(.12) contrast(.92) brightness(.99); }
#memories .memory-tile::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: rgba(30,44,49,.07); }
#memories .memory-verse { z-index: 1; }
#memories .memory-verse { position: absolute; top: 22px; right: 16px; writing-mode: vertical-rl; color: #fffdf9; font-family: 'Noto Serif TC',serif; font-size: 13px; letter-spacing: .22em; line-height: 1.8; text-shadow: 0 1px 10px rgba(0,0,0,.65); }
#memories .memory-tile--street .memory-verse { color: #203845; text-shadow: 0 1px 8px rgba(255,253,249,.8); }
@media(max-width:760px) {
  #memories .memory-mosaic { border-radius: 14px; gap: 4px; }
  #memories .memory-tile { aspect-ratio: 2.1; }
  #memories .memory-verse { top: 14px; right: 10px; font-size: 12px; letter-spacing: .12em; }
}
#memories .memory-mosaic { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; }
#memories .memory-tile { aspect-ratio: 1.1; }
#memories .memory-tile img { filter: none; }
#memories .memory-tile::after { display: none; }
#memories .memory-tile--jump img { object-position: 50% 68%; }
#memories .memory-tile--play { background: #e8eef3; }
#memories .memory-tile--play img { object-fit: contain; object-position: center; }
#memories .memory-tile--lift img { object-position: 60% 58%; }
#memories .memory-tile--hike img { object-position: 52% center; }
@media(max-width:760px) { #memories .memory-tile { aspect-ratio: 1; } }
