/* Compact closing CTA banners, approved 2026-09-14.
   These are final rendered heights, including the active desktop proportions preview. */
main > :is(.home-final-ref, .about-book-cta) {
    min-height: 320px;
}
@media (max-width: 980px) {
    main > :is(.home-final-ref, .about-book-cta) {
        min-height: 300px;
    }
}

/* Centre the About CTA against the full banner, not its implicit grid row. */
.about-page > .about-book-cta .about-book-cta-copy {
  grid-area: auto;
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  place-self: auto;
  margin: 0;
}

/* Full-width photo and CTA banners match The Stiltz Stay panorama.
   Approved 2026-09-15. Opening heroes and contained images are excluded.
   Recorded displayed heights are compensated for the page scale (2026-09-16). */
main > :is(.home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image, .stay-breakfast-banner, .contact-camels-banner) {
    --full-width-banner-height: clamp(440px, 56vh, 680px);
    height: calc(var(--full-width-banner-height) / var(--site-page-scale, 1));
    min-height: calc(var(--full-width-banner-height) / var(--site-page-scale, 1));
}
@media (min-width: 981px) and (pointer: fine) {
    main > :is(.home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image, .stay-breakfast-banner, .contact-camels-banner) {
        --full-width-banner-height: clamp(352px, 56vh, 544px);
    }
}
@media (max-width: 980px) {
    main > :is(.home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image, .stay-breakfast-banner, .contact-camels-banner) {
        --full-width-banner-height: clamp(320px, 42vh, 480px);
    }
}
main > :is(.home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image, .stay-breakfast-banner, .contact-camels-banner) > img,
main > :is(.home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image, .stay-breakfast-banner, .contact-camels-banner) > picture > img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

/* Awards photo banner: match the Stay panorama on desktop, approved 2026-09-15.
   Keep its natural stacked content height on phones and tablets. */
@media (min-width: 981px) {
    main > .stay-aerial-story {
        min-height: calc(clamp(440px, 56vh, 680px) / var(--site-page-scale, 1));
        display: flex;
        align-items: center;
    }
}
@media (min-width: 981px) and (pointer: fine) {
    main > .stay-aerial-story {
        min-height: calc(clamp(352px, 56vh, 544px) / var(--site-page-scale, 1));
    }
}

/* Keep the lodge entrance and stone feature in the About panorama crop. */
main.about-page > .about-full-width-image img {
    object-position: 60% 25%;
}
