/* Only photo-specific crops and gallery counts; preserve the approved layout. */
#journey .journey-opening-photo > img { object-position: 45% 32%; }
#journey .journey-photo-frame { height: clamp(320px,27vw,390px); overflow: hidden; }
#journey .journey-photo-frame img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 42%; transform: none; }
#journey .day-media img, #journey .day-media:hover img,
#journey .day-media-grid img, #journey .day-media-grid figure:hover img,
#journey .day-media-grid figure:not(:first-child) img { transform: none; }
#journey .days :is(#day01,#day02,#day03,#day04,#day05) .day-media-grid { display: grid; grid-template-columns: 1.5fr 1fr; grid-template-rows: repeat(2,minmax(0,1fr)); height: clamp(380px,36vw,500px); gap: 10px; }
#journey .days :is(#day01,#day02,#day03,#day04,#day05) .day-media-grid > figure { grid-column: auto; grid-row: auto; min-width: 0; min-height: 0; aspect-ratio: auto; }
#journey .days :is(#day01,#day02,#day03,#day04,#day05) .day-media-grid > figure:first-child { grid-column: 1; grid-row: 1 / 3; }
#journey .day-media-grid figcaption { max-width: calc(100% - 20px); font-size: 12px; line-height: 1.5; }
#experience-design .dining-gallery { grid-template-columns: 1fr; grid-template-rows: auto; }
#experience-design .dining-gallery figure:first-child { grid-column: auto; grid-row: auto; aspect-ratio: 4 / 3; }
#experience-design .dining-gallery img, #experience-design .dining-gallery figure:hover img { transform: none; }
.stay-gallery.stay-gallery--atmosphere { display: block; }
.stay-gallery--atmosphere .stay-gallery-main { width: 100%; aspect-ratio: auto; }
.stay-gallery--atmosphere .stay-gallery-main img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.stay-gallery--atmosphere .stay-gallery-source { margin-top: 12px; }
.together-moments .moment--01 .moment-photo > img { object-position: 38% center; }
.together-moments .moment--02 .moment-photo > img { object-position: center; }
.together-moments .moment--03 .moment-photo > img { object-position: center; }
@media (max-width: 760px) {
  #journey .days :is(#day01,#day02,#day03,#day04,#day05) .day-media-grid { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: auto auto; height: auto; gap: 8px; }
  #journey .days :is(#day01,#day02,#day03,#day04,#day05) .day-media-grid > figure { aspect-ratio: 4 / 3; }
  #journey .days :is(#day01,#day02,#day03,#day04,#day05) .day-media-grid > figure:first-child { grid-column: 1 / -1; grid-row: 1; aspect-ratio: 3 / 2; }
  #journey .day-media-grid figcaption { inset: auto 6px 6px 6px; max-width: none; padding: 5px 6px; letter-spacing: 0; }
  #journey .journey-photo-frame { height: 260px; }
  #experience-design .dining-gallery { grid-template-rows: none; }
}
