/* v1.9.10.26 — One immersive first viewport on public pages, without duplicating the reserve form. */
.public-body.hv-unified:not(.home-public) .hvu-main > :is(.hv-catalog-masthead,.hv-product-hero,.hv-booking-hero,.hvu-generic-hero),
.public-body.hv-unified:not(.home-public) .hvu-main > :is(.hv-catalog-masthead,.hv-product-hero,.hv-booking-hero,.hvu-generic-hero)[class] {
  height:100svh!important; min-height:100svh!important; max-height:none!important;
  width:100%; margin:0!important; padding:0!important; box-sizing:border-box;
  overflow:hidden; isolation:isolate; position:relative;
}
/* When old inner-page booking selectors set a mobile size, maintain full-viewport treatment. */
@media(max-width:760px){
 .public-body.hv-unified:not(.home-public) .hvu-main > :is(.hv-catalog-masthead,.hv-product-hero,.hv-booking-hero,.hvu-generic-hero)[class]{height:100svh!important;min-height:100svh!important;max-height:none!important}
}
/* The transparent top bar floats directly on the image, exactly as it does on Home. */
.public-body.hv-unified:not(.home-public)[data-hvu-transparent="1"] .hv-global-header.hvi-header:not(.hve-header-stuck){background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
/* The new cue is integrated into each page's real hero, not its search results. */
.public-body.hv-unified:not(.home-public) .hvu-main .hvu-scroll-cue {
 position:absolute!important;z-index:35!important;bottom:clamp(16px,3.6vh,38px)!important;
 left:50%!important;right:auto!important;top:auto!important;transform:translateX(-50%)!important;
 border:0!important;box-shadow:none!important;background:transparent!important;color:white!important;
 display:flex!important;flex-direction:column!important;align-items:center!important;gap:7px!important;
 width:max-content!important;max-width:calc(100% - 35px)!important;
 padding:5px 12px!important;text-align:center!important;text-shadow:0 2px 12px rgba(0,0,0,.65)!important;
 cursor:pointer!important;font-family:Arial,Helvetica,sans-serif!important;
}
.public-body.hv-unified:not(.home-public) .hvu-scroll-cue .hvi-scroll-title{font:400 clamp(18px,2.15vw,31px)/1.15 Arial,Helvetica,sans-serif!important;letter-spacing:.025em!important}
.public-body.hv-unified:not(.home-public) .hvu-scroll-cue .hvi-scroll-small{font:700 8px/1.4 Arial,sans-serif!important;letter-spacing:.24em!important}
.public-body.hv-unified:not(.home-public) .hvu-scroll-cue svg{display:block;width:30px;height:30px;margin-top:3px;transition:transform .2s ease}
.public-body.hv-unified:not(.home-public) .hvu-scroll-cue:hover svg{transform:translateY(5px)}
.public-body.hv-unified:not(.home-public) .hv-catalog-title,
.public-body.hv-unified:not(.home-public) .hv-product-hero-copy,
.public-body.hv-unified:not(.home-public) .hvu-generic-hero-copy{z-index:6!important}
/* Ensure the catalogue starts AFTER the full-screen image, with search results remaining accessible. */
.public-body.hv-unified:not(.home-public) .hvu-search-summary {
 display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;
 background:var(--hvu-navy,#071d33);color:white;padding:clamp(25px,3vw,45px) max(24px,calc((100% - 1260px)/2));
 border:0;scroll-margin-top:56px;box-sizing:border-box;
}
.public-body.hv-unified .hvu-search-copy{flex:1 1 320px;min-width:0;display:grid;gap:9px}
.public-body.hv-unified .hvu-search-eyebrow{font:700 9px/1.4 Arial,sans-serif;letter-spacing:.22em;color:#e5c689}
.public-body.hv-unified .hvu-search-copy strong{font:400 clamp(26px,3vw,40px)/1.15 Georgia,'Times New Roman',serif;color:white}
.public-body.hv-unified .hvu-search-copy p{margin:0;max-width:670px;font:400 13px/1.65 Arial,sans-serif;color:#d6e1ee}
.public-body.hv-unified .hvu-search-actions{display:flex;flex-wrap:wrap;align-items:center;gap:13px}
.public-body.hv-unified .hvu-search-actions a{color:#e6c888;text-decoration:none;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.035em;padding:11px 8px}
.public-body.hv-unified .hvu-search-actions button{display:inline-flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.66);background:transparent;color:white;cursor:pointer;font:700 10px/1.2 Arial,sans-serif;letter-spacing:.13em;padding:13px 18px;min-height:43px}
.public-body.hv-unified .hvu-search-actions button:hover{background:var(--hvu-gold,#bd9c58);color:#081e32;border-color:var(--hvu-gold,#bd9c58)}
/* Keep the shared reservation pane readable with two form types, optional promo, and small screens. */
.public-body.hv-unified .hvu-modal-promo{display:grid;gap:8px;margin-top:13px!important}
.public-body.hv-unified .hvu-modal-promo>span{font:700 9px/1.35 Arial,sans-serif;letter-spacing:.13em;color:#435268}
.public-body.hv-unified .hvu-modal-promo input{box-sizing:border-box;width:100%;min-width:0;padding:11px 12px;border:1px solid #d1d8e2;border-radius:2px;background:#fff;color:#142844;font:400 13px Arial,sans-serif}
.public-body.hv-unified .hvi-reserve-panel{max-height:calc(100dvh - 24px);overflow-y:auto}
.public-body.hv-unified .hvu-theme-note{grid-column:1/-1;font-size:12px}
@media(max-width:760px){
 .public-body.hv-unified:not(.home-public) .hvu-search-summary{padding:25px 20px;gap:22px}
 .public-body.hv-unified .hvu-search-actions{width:100%;justify-content:space-between}
 .public-body.hv-unified .hvu-search-actions button{font-size:9px;letter-spacing:.06em}
 .public-body.hv-unified:not(.home-public) .hvu-scroll-cue{bottom:max(16px,env(safe-area-inset-bottom))!important}
}
@media(prefers-reduced-motion:reduce){.public-body.hv-unified .hvu-scroll-cue svg{transition:none}}

/* A scoped booking panel has a descriptive label, not an unnecessary switcher. */
.public-body.hv-unified .hvu-modal-context{
 display:block;margin:12px 0 22px;padding:0 0 13px;border-bottom:1px solid #dce1e8;
 font:700 10px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.16em;color:#9a7639;
}
