/* Staging polish: existing brand tokens handle both forced and automatic themes. */
footer.unified-footer{display:block;max-width:none;width:100%;padding:48px 0 24px;margin:48px 0 0;background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:1rem;line-height:1.6;border-top:1px solid var(--color-border)}
.unified-footer .footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;width:100%;max-width:1152px;padding-inline:20px;margin-inline:auto}
.unified-footer .footer-brand strong{font-family:var(--font-display);font-size:1.5rem;color:var(--color-heading)}
.unified-footer p{margin:10px 0;max-width:none;font-size:inherit;overflow-wrap:anywhere}
.unified-footer .footer-contact{margin:0;padding:0;min-width:0}
.unified-footer .footer-contact h2{font-family:var(--font-body);font-size:1rem;line-height:1.6;margin:0 0 12px;color:var(--color-heading)}
.unified-footer a{color:var(--color-link);overflow-wrap:anywhere;text-underline-offset:.2em}
.unified-footer .footer-copyright{grid-column:1/-1;font-size:.85rem;color:var(--color-text-muted);margin:0}
.booking-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px}
.booking[hidden]{display:none}
body[data-public-layout] .booking-section{margin-top:32px;padding-top:0}
.booking-section .booking{height:680px}
.hl-video-load{font-family:var(--font-body)}
.hl-video-load:focus-visible,.booking-actions :focus-visible,.unified-footer a:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:3px}
.nav-scroll-next{display:none}
/* Flex-shrinking bilingual spans could reduce dropdown text to zero width. */
header.site-header.common-site-header .public-nav-menu a{display:block;color:var(--color-text);font-size:1rem;animation:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
header.site-header.common-site-header .public-nav-menu a .t{white-space:normal;overflow-wrap:normal}
@media(max-width:900px){
  body[data-public-layout] .public-page-toc{position:static;inset:auto;margin:0 0 24px auto;z-index:auto}
  .unified-footer .footer-grid{grid-template-columns:1fr 1fr}
  .unified-footer .footer-brand{grid-column:1/-1}
}
@media(max-width:600px){
  .unified-footer .footer-grid{grid-template-columns:1fr}
  header.site-header.common-site-header .site-nav{position:relative;padding-right:44px}
  header.site-header.common-site-header .site-nav>ul{mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent)!important;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent)!important}
  header.site-header.common-site-header .site-nav.nav-at-end>ul{mask-image:none!important;-webkit-mask-image:none!important}
  .nav-scroll-next{display:grid;place-items:center;position:absolute;right:0;top:0;width:44px;height:44px;padding:0;border:0;background:var(--color-bg);color:var(--color-text);font:24px var(--font-body);cursor:pointer}
  .nav-scroll-next:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:-3px}
}
