/* Cemntus masthead: brand above, guest controls below. */
.site-header{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto 44px;align-items:center;gap:0 16px;min-height:0;padding:22px var(--gutter) 8px;border-bottom:1px solid #ffffff24;background:var(--ink)}
.site-header .wordmark{grid-column:1 / -1;grid-row:1;justify-self:center;align-items:center;gap:15px;margin:0 0 18px;max-width:100%}
.site-header .brand-emblem{width:48px;flex-basis:48px;height:auto;aspect-ratio:204/210}
.site-header .brand-emblem img{width:156.863%;height:auto;max-width:none;left:-28.43%;top:0}
.site-header .brand-name{font-weight:400;font-size:38px;letter-spacing:.14em;line-height:1;white-space:nowrap}
.site-header .brand-name>span{display:block;font-size:15px;line-height:1.5;letter-spacing:.2em;margin-top:10px;text-align:center;color:var(--gold)}
.site-header .header-navigation{grid-column:1;grid-row:2;display:flex;flex-direction:row;align-items:center;justify-self:start;gap:0}
.site-header .header-actions{grid-column:3;grid-row:2;display:flex;flex-direction:row;justify-self:end;gap:0}
.site-header .header-language{grid-column:2;grid-row:2;display:flex;justify-self:center;align-items:center;gap:4px;padding:0;margin:0;border:0}
.site-header .header-language a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:14px;line-height:1;color:var(--paper)}
.site-header .header-language a[aria-current]{color:var(--gold);text-decoration:underline;text-underline-offset:6px}
.site-header .header-language span{color:var(--muted)}
.site-header .header-actions .nav-book{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:transparent;font-size:14px;letter-spacing:.03em;color:var(--paper)}
.site-header .header-actions .nav-book:hover{color:var(--gold)}
.site-header .booking-label-full{display:none}
.site-header .booking-label-short{display:inline}
.site-header .site-menu>summary{width:auto;min-height:44px;justify-content:flex-start;gap:9px;font-size:14px}
.site-header .site-menu>summary>span:not(.menu-lines){display:inline}
.site-header .menu-lines{width:22px;height:7px}
.site-header .site-menu[open] .menu-lines{height:1px}
.site-header .site-menu nav{max-height:calc(100svh - 170px)}
.home-page .hero-copy{padding-top:190px}
@media(max-width:750px){
 .site-header{grid-template-columns:1fr auto 1fr;gap:0 8px;padding:18px 20px 6px}
 .site-header .wordmark{gap:12px;margin-bottom:14px}
 .site-header .brand-emblem{width:42px;flex-basis:42px}
 .site-header .brand-name{font-size:30px;letter-spacing:.12em}
 .site-header .brand-name>span{font-size:14px;letter-spacing:.18em;margin-top:8px}
 .site-header .site-menu nav{max-height:calc(100svh - 150px)}
}
@media(max-width:360px){.site-header{padding-inline:14px}.site-header .brand-name{font-size:28px}.site-header .wordmark{gap:10px}.site-header .brand-emblem{width:38px;flex-basis:38px}}

/* Final navigation hierarchy: core stay decisions first, discovery links second. */
.site-header .site-menu nav{width:min(460px,100vw);padding:18px 32px 26px}
.menu-primary,.menu-secondary{display:grid}
.menu-primary>a{display:flex;align-items:center;min-height:48px;padding:7px 0;border-bottom:1px solid var(--line);font:400 27px/1.25 var(--serif)}
.menu-secondary{grid-template-columns:1fr 1fr;column-gap:20px;padding-top:16px}
.menu-secondary>a{display:flex;align-items:center;min-height:44px;font:400 15px/1.4 var(--sans);color:var(--muted)}
.menu-secondary>a:hover{color:var(--gold)}
.menu-socials{display:flex;flex-wrap:wrap;gap:8px 18px;border-top:1px solid var(--line);margin-top:18px;padding-top:12px}
.site-menu nav .menu-socials>a{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0;font:400 13px/1.4 var(--sans);border:0;color:var(--muted)}
.site-header .site-menu nav>p{margin-top:14px;font-size:12px}
.booking-opening{padding-top:60px}
.booking-opening>.booking-choices{margin-top:38px}
.booking-essentials{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);max-width:800px;color:var(--muted);font-size:14px}
.booking-essentials p{margin-bottom:12px}
.booking-essentials a{color:var(--gold);text-decoration:underline;text-underline-offset:5px}
@media(max-width:750px){.site-header .site-menu nav{padding:12px 24px 20px}.menu-primary>a{font-size:25px;min-height:46px}.menu-secondary{gap:0 14px}.menu-secondary>a{font-size:14px}.booking-opening{padding-top:32px}.booking-opening>.booking-choices{margin-top:26px}.booking-opening>h1{font-size:clamp(42px,11vw,60px)}.hero .intro{max-width:350px}}
