/* Site-wide readable widths on large displays. Loaded after page styles. */
@media(min-width:1440px){
body>main:not(.contact-page):not(.booking-page):not(.finder){max-width:1440px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}
body>header{max-width:1440px;margin-left:auto;margin-right:auto;box-sizing:border-box;padding-left:48px;padding-right:48px}

main .section,main .ribbon{padding-left:6%!important;padding-right:6%!important}
main>.hero{padding-left:6%!important;padding-right:6%!important}
.sl-main .sight-gallery-stage{height:auto;aspect-ratio:16/9;max-height:600px}
.sl-main .sight-gallery-stage img{display:block;width:100%;height:100%;object-fit:contain;background:#102b40}
.sl-main .sl-details-layout{gap:44px}
}

/* Full-width footer and promotion banner; content widths above remain unchanged. */
body>footer.modern-footer{width:100%;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box;padding-left:max(6%,calc((100% - 1268px)/2))!important;padding-right:max(6%,calc((100% - 1268px)/2))!important}
body>.direct-banner{width:100%;max-width:none;margin:0;box-sizing:border-box}
@media(max-width:750px){body>footer.modern-footer{padding-left:5%!important;padding-right:5%!important}}

/* Breathing room between the homepage promotion and hero. */
body>.direct-banner+main.home-page{padding-top:20px}
@media(max-width:750px){body>.direct-banner+main.home-page{padding-top:16px}}

/* Keep the property introduction with its heading, above both cards. */
.home-page #stays>.section-head{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:30px}
.home-page #stays>.section-head h2{margin-bottom:0}
.home-page #stays>.section-head>p{width:100%;max-width:760px;margin:0;text-align:left;font-size:16px;line-height:1.8}
@media(max-width:750px){.home-page #stays>.section-head{gap:14px;margin-bottom:24px}.home-page #stays>.section-head>p{font-size:15px}}
