/* 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;
    }
}

/* Match the Home remembered-places banner to the compact CTA scale. */
main > .home-memory-line-ref { min-height: 320px; }
main > .home-memory-line-ref :is(.home-memory-line-main, .home-memory-line-script) {
    line-height: 1.15;
    white-space: normal;
}
main > .home-memory-line-ref .home-memory-line-main { font-size: 27.6px; }
main > .home-memory-line-ref .home-memory-line-script { font-size: 44px; }
@media (max-width: 980px) {
    main > .home-memory-line-ref { min-height: 300px; }
    main > .home-memory-line-ref .home-memory-line-main { font-size: 25.3px; }
    main > .home-memory-line-ref .home-memory-line-script { font-size: 40px; }
}
@media (max-width: 640px) {
    main > .home-memory-line-ref .home-memory-line-main { font-size: 22px; }
    main > .home-memory-line-ref .home-memory-line-script { font-size: clamp(26px, 8vw, 32px); }
}

/* Let more of the lagoon landscape show behind the larger text. */
main > .home-memory-line-ref::after { background: rgba(18, 18, 16, .24); }

/* Give the remembered-places banner more separation from Your Stay. */
main > .home-memory-line-ref { margin-top: 32px; }
@media (max-width: 640px) {
    main > .home-memory-line-ref { margin-top: 24px; }
}

/* 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, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-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, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) {
        --full-width-banner-height: clamp(352px, 56vh, 544px);
    }
}
@media (max-width: 980px) {
    main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) {
        --full-width-banner-height: clamp(320px, 42vh, 480px);
    }
}
main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) > img,
main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) > picture > img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
