/* Page-specific live text over the existing artwork; actions stay on this page. */
.interior-page main>.page-breadcrumb{padding:12px 6%;margin:0;background:var(--cream,#faf6ed);font-size:15px;gap:8px 12px}
.interior-page .page-hero.page-banner{position:relative;display:grid;grid-template-columns:1fr;isolation:isolate;min-height:380px;background:#102c38;border-bottom:0;overflow:hidden;color:#fff3d9}
.page-banner .page-hero-photo{position:absolute;inset:0;width:100%;height:100%;min-height:0;z-index:-2;order:initial;background-color:#183d47}
.page-banner .page-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.page-banner:not(.banner-compact)::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#061d2de8,#061d2d72 75%,#061d2d35),linear-gradient(0deg,#051b2bbe,transparent 90%)}
.page-banner .page-hero-copy{padding:70px 6% 44px;align-self:end;max-width:1000px;box-sizing:border-box;min-width:0;position:relative}
.page-banner h1{font:400 clamp(36px,4.2vw,64px)/1.08 Georgia,serif;letter-spacing:-.025em;color:#fff3d9;margin:0 0 16px;max-width:22ch;text-shadow:0 1px 2px #000b,0 0 1px #0007}
.page-banner .page-hero-intro{font-size:clamp(17px,1.5vw,21px);line-height:1.5;color:#fff3d9;max-width:55ch;text-shadow:0 1px 2px #000b;margin:0}
.page-banner .page-hero-actions{margin-top:24px;display:block}
.page-banner .page-hero-primary{display:inline-flex;align-items:center;gap:26px;min-height:50px;padding:13px 22px;background:#fff0cc;color:#102c38;border:1px solid #f9e3b0;border-radius:4px;font-size:17px;line-height:1.4;max-width:100%;box-shadow:0 1px 3px #0006;text-shadow:none}
.page-banner .page-hero-primary:hover{background:#ffe5aa;color:#102c38}
.page-banner .page-hero-primary:focus-visible{outline:3px solid #fff;outline-offset:5px}
.page-banner .page-hero-photo figcaption{position:absolute;bottom:10px;right:16px;left:auto;padding:3px 8px;background:#071c2cc9;color:#fff3d9;font-size:11px;line-height:1.4;z-index:2;width:auto;max-width:40%;margin:0}
.interior-page .page-banner.banner-compact{min-height:0;background:#eaf0ed;color:#142e38;overflow:visible}
.banner-compact .page-hero-copy{padding:26px 6% 32px;max-width:1100px}
.banner-compact h1{color:#142e38;text-shadow:none;font-size:clamp(32px,3.5vw,48px);max-width:30ch}
.banner-compact .page-hero-intro{color:#203b45;text-shadow:none}
.banner-compact .page-hero-primary{background:#142e38;color:#fff3d9;border-color:#142e38;box-shadow:none}
.banner-compact .page-hero-primary:focus-visible{outline-color:#914626}
/* The accommodation form follows the short destination banner without another heading. */
.accommodation-page .page-banner{min-height:280px}
.accommodation-page .page-banner .page-hero-copy{padding:36px 6% 30px;max-width:900px;width:100%}
.accommodation-page .page-banner .page-hero-photo{height:100%;min-height:0;order:initial}
.accommodation-page .page-banner .page-hero-intro{font-size:18px;max-width:48ch}
.stay-form-section{padding-block:22px 32px;max-width:760px}
.accommodation-page .stay-form-section .stay-search{max-width:100%;margin:0}
.accommodation-page .stay-form-section .expedia-widget-shell{background:transparent;box-shadow:none;padding:0}
[id]{scroll-margin-top:90px}
@media(max-width:800px){
 .interior-page main>.page-breadcrumb{padding:10px 5%;font-size:15px}
 .interior-page .page-hero.page-banner{display:grid;min-height:340px}
 .page-banner .page-hero-copy{padding:60px 5% 30px;max-width:100%;width:100%}
 .page-banner h1{font-size:clamp(34px,8.5vw,44px);max-width:23ch;margin-bottom:12px}
 .page-banner .page-hero-intro{font-size:17px;line-height:1.45;max-width:48ch}
 .page-banner .page-hero-actions{margin-top:20px}
 .page-banner .page-hero-primary{font-size:16px;min-height:48px;padding:12px 20px}
 .page-banner:not(.banner-compact)::after{background:linear-gradient(0deg,#061d2df5,#061d2d9e 65%,#061d2d30)}
 .interior-page .page-banner.banner-compact{min-height:0}
 .banner-compact .page-hero-copy{padding:24px 5% 28px}
 .banner-compact h1{font-size:34px}
 .accommodation-page .page-hero.page-banner{min-height:230px}
 .accommodation-page .page-banner .page-hero-copy{padding:28px 5%}
 .accommodation-page .page-banner .page-hero-intro{font-size:16px}
 .stay-form-section{width:92%;padding-block:18px 26px}
}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
