/* China covers use full-bleed landscape photography. Existing lower sections stay intact. */
body.home .spj-reviewed-cover .spj-carousel__slide img { width: 100%; margin: 0; object-fit: cover; }
body.home .spj-cover--terracotta-army img { object-position: 60% 44%; }
body.home .spj-cover--forbidden-city img { object-position: 52% 50%; }
body.home .spj-cover--lujiazui-night img { object-position: 53% 65%; }
body.home .spj-reviewed-cover__overlay { align-items: flex-end; background: linear-gradient(0deg,rgba(12,27,21,.6),rgba(12,27,21,.08) 48%,transparent 65%); }
body.home .spj-reviewed-cover__copy { width: min(560px,50%); padding: 1.25rem 1.5rem; background: rgba(15,34,24,.38); }
body.home .spj-reviewed-cover__copy h1 { font-size: clamp(2.8rem,4vw,4.2rem); }
body.home .spj-reviewed-cover__eyebrow { margin-bottom: .9rem; font-size: .7rem; }
body.home .spj-reviewed-cover__standfirst { margin-top: 1rem; max-width: 36ch; }
body.home .spj-reviewed-cover .spj-carousel__dots { right: 1.4rem; left: auto; transform: none; }
/* Four starting routes remain readable as a balanced two-by-two editorial spread. */
.spj-itineraries:has(> .spj-itinerary-card:nth-child(4):last-child) { grid-template-columns: repeat(2,minmax(0,1fr)); }
@media (max-width: 760px) {
 body.home .spj-reviewed-cover .spj-carousel__slide { height: clamp(540px,82svh,720px); min-height: 540px; }
 body.home .spj-reviewed-cover__overlay { position: absolute; inset: 0; display: flex; align-items: flex-end; padding: 1.3rem 1.25rem 3.4rem; background: linear-gradient(0deg,rgba(12,27,21,.7),transparent 72%); }
 body.home .spj-reviewed-cover__copy { width: 100%; max-width: 440px; padding: 1rem; background: rgba(15,34,24,.38); }
 body.home .spj-reviewed-cover__copy h1 { font-size: clamp(2.3rem,9vw,3.3rem); }
 body.home .spj-reviewed-cover__standfirst { font-size: 1rem; line-height: 1.5; }
 body.home .spj-cover--lujiazui-night img { object-position: 55% 65%; }
 body.home .spj-reviewed-cover .spj-carousel__dots { top: auto; bottom: 1rem; }
 body.home .spj-reviewed-cover .spj-carousel__nav { top: 40%; }
 body.home .spj-reviewed-cover .spj-carousel__slide figcaption { top: 1rem; bottom: auto; right: 1rem; padding: .35rem .5rem; background: rgba(15,34,24,.4); }
 .spj-itineraries:has(> .spj-itinerary-card:nth-child(4):last-child) { grid-template-columns: minmax(0,1fr); }
}

/* Panda cover: keep the whole animal clear of the poster text. */
body.home .spj-reviewed-cover .spj-cover--panda { background: #183f33; }
body.home .spj-reviewed-cover .spj-cover--panda img { width: 72%; margin-left: auto; object-fit: cover; object-position: center 20%; }
body.home .spj-reviewed-cover__media:has(.spj-cover--panda.is-active) .spj-reviewed-cover__copy { max-width: 450px; }
@media (max-width: 760px) {
 body.home .spj-reviewed-cover .spj-cover--panda img { width: 100%; height: 100%; margin: 0; object-fit: cover; object-position: center; }
 body.home .spj-reviewed-cover__media:has(.spj-cover--panda.is-active) .spj-reviewed-cover__overlay { background: linear-gradient(0deg,rgba(12,27,21,.45),transparent 65%); }
}

/* The approved landscape panda restores the same image scale as the China covers. */
body.home .spj-reviewed-cover .spj-cover--panda img { width: 100%; height: 100%; margin: 0; object-fit: cover; object-position: center 12%; }
body.home .spj-reviewed-cover__media:has(.spj-cover--panda.is-active) .spj-reviewed-cover__copy { max-width: 450px; }
.spj-city-life__photo { margin: 0 0 1rem; }
.spj-city-life__photo img { display: block; width: 100%; aspect-ratio: 3/2; object-fit: cover; }
@media (max-width: 760px) {
 body.home .spj-reviewed-cover .spj-cover--panda img { object-position: center; }
 body.home .spj-reviewed-cover__media:has(.spj-cover--panda.is-active) .spj-reviewed-cover__copy { padding: .8rem; }
 body.home .spj-reviewed-cover__media:has(.spj-cover--panda.is-active) .spj-reviewed-cover__copy h1 { font-size: 2.1rem; }
}

/* Eight China lifestyle stories remain comfortable on narrow screens. */
@media (max-width: 760px) {
 body.home .spj-city-life__grid { grid-template-columns: minmax(0,1fr); }
 body.home .spj-city-life__story { grid-column: 1; }
}
