
    #navbar.rnr-site-header { position:fixed; inset:0 0 auto; z-index:10020; height:78px; display:flex; align-items:center; background:rgba(5,5,5,.95); backdrop-filter:blur(15px); border-bottom:1px solid rgba(224,197,132,.2); color:#F0E2C0; font-family:'Cormorant Garamond',Georgia,serif; }
    #navbar.rnr-site-header *, #mobile-menu.rnr-site-drawer * { box-sizing:border-box; }
    .rnr-site-header-inner { width:min(100%,1280px); height:100%; margin:0 auto; padding:0 1.5rem; display:flex; align-items:center; justify-content:space-between; position:relative; }
    .rnr-site-brand { display:flex; min-width:44px; min-height:44px; align-items:center; gap:.75rem; color:inherit; text-decoration:none; }
    .rnr-site-brand img { width:auto; height:2.5rem; transition:transform .25s ease; }
    .rnr-site-brand:hover img { transform:scale(1.05); }
    .rnr-site-brand-copy { display:flex; flex-direction:column; }
    .rnr-site-brand-name { color:#E0C584; font-size:.875rem; font-weight:700; line-height:1; letter-spacing:.2em; }
    .rnr-site-brand-subtitle { color:#F0E2C0; margin-top:.35rem; font-size:.65rem; line-height:1; letter-spacing:.4em; text-transform:uppercase; opacity:.72; }
    .rnr-site-portal-title { display:none; position:absolute; left:50%; max-width:calc(100% - 18rem); overflow:hidden; color:#F0E2C0; font:700 .92rem/1.1 Arial,sans-serif; letter-spacing:.08em; text-align:center; text-overflow:ellipsis; text-transform:uppercase; transform:translateX(-50%); white-space:nowrap; }
    .rnr-site-social { position:absolute; left:50%; display:flex; align-items:center; gap:.5rem; transform:translateX(-50%); }
    .rnr-site-social a, .rnr-site-mobile-social a { width:2rem; height:2rem; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; color:#E0C584; background:rgba(240,226,192,.05); transition:color .2s,background .2s; }
    .rnr-site-social a:hover, .rnr-site-mobile-social a:hover { color:#F0E2C0; background:rgba(224,197,132,.14); }
    .rnr-site-social svg, .rnr-site-mobile-social svg, .rnr-site-portal svg, .rnr-site-mobile-portal svg, .rnr-site-menu-button svg, .rnr-site-mobile-button svg, .rnr-site-close svg { width:1rem; height:1rem; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
    .rnr-site-actions { display:flex; align-items:center; gap:1rem; margin-left:auto; }
    .rnr-site-portal-actions { display:flex; align-items:center; gap:.1rem; margin-left:auto; }
    #navbar.rnr-site-header--portal .rnr-site-actions { display:flex; margin-left:auto; }
    #navbar.rnr-site-header--portal .rnr-site-portal-actions .rnr-site-mobile-button { display:inline-flex; margin-left:0; }
    .rnr-site-portal, .rnr-site-nav-link { position:relative; color:#F0E2C0; font-size:.8rem; font-weight:600; letter-spacing:.15em; text-decoration:none; text-transform:uppercase; }
    .rnr-site-portal { display:inline-flex; align-items:center; gap:.35rem; color:#E0C584; }
    .rnr-site-nav-link::after, .rnr-site-portal::after { content:''; position:absolute; bottom:-5px; left:0; width:0; height:1px; background:#E0C584; transition:width .25s ease; }
    .rnr-site-nav-link:hover::after, .rnr-site-nav-active::after, .rnr-site-portal:hover::after { width:100%; }
    .rnr-site-nav-active { color:#E0C584; }
    .rnr-site-menu-wrap { position:relative; }
    .rnr-site-menu-button, .rnr-site-mobile-button, .rnr-site-close { border:0; color:#E0C584; background:transparent; cursor:pointer; }
    .rnr-site-menu-button { display:inline-flex; align-items:center; gap:.5rem; padding:.5rem .75rem; border:1px solid rgba(224,197,132,.3); border-radius:4px; background:rgba(240,226,192,.05); font:inherit; font-size:.8rem; font-weight:700; letter-spacing:.15em; }
    .rnr-site-menu-button:hover, .rnr-site-mobile-button:hover, .rnr-site-close:hover { background:rgba(224,197,132,.1); }
    .rnr-site-dropdown { position:absolute; right:0; top:calc(100% + .75rem); z-index:510; width:16rem; padding:.5rem; border:1px solid rgba(224,197,132,.3); border-radius:.5rem; background:rgba(5,5,5,.97); box-shadow:0 20px 45px rgba(0,0,0,.45); backdrop-filter:blur(15px); }
    .rnr-site-dropdown[hidden] { display:none; }
    .rnr-site-dropdown .rnr-site-nav-link { display:block; padding:.55rem .75rem; border-radius:.25rem; font-size:.75rem; }
    .rnr-site-dropdown .rnr-site-nav-link:hover { color:#E0C584; background:rgba(224,197,132,.1); }
    .rnr-site-dropdown .rnr-site-nav-active { color:#E0C584; background:rgba(224,197,132,.14); box-shadow:inset 3px 0 0 #E0C584; }
    .rnr-site-dropdown .rnr-site-nav-link::after { display:none; }
    #navbar.rnr-site-header .rnr-site-mobile-button { display:none; width:2.75rem; height:2.75rem; margin-left:auto; padding:0; align-items:center; justify-content:center; border:0!important; border-radius:.35rem; background:transparent!important; color:#E0C584!important; box-shadow:none!important; }
    #navbar.rnr-site-header .rnr-site-mobile-button svg { width:1.5rem; height:1.5rem; }
    .rnr-site-mobile-actions { display:none; align-items:center; gap:.1rem; margin-left:auto; }
    #navbar.rnr-site-header .rnr-site-mobile-actions .rnr-site-mobile-button { margin-left:0; }
    #navbar.rnr-site-header #portal-header-theme-toggle { width:auto; height:2.75rem; gap:.28rem; padding:0 .38rem; }
    #navbar.rnr-site-header #portal-header-theme-toggle svg { width:1.1rem; height:1.1rem; }
    .rnr-site-theme-label, #portal-header-zoom-label { font:700 .58rem/1 Arial,sans-serif; letter-spacing:.04em; white-space:nowrap; }
    #navbar.rnr-site-header #portal-header-zoom { display:none; position:static; width:auto; min-width:4.7rem; height:2.75rem; margin:0; padding:0 .45rem; transform:none; border:1px solid rgba(224,197,132,.28)!important; }
    #mobile-menu-backdrop.rnr-site-backdrop { position:fixed; inset:0; z-index:10030; background:rgba(0,0,0,.7); opacity:0; pointer-events:none; transition:opacity .25s ease; }
    #mobile-menu-backdrop.rnr-site-open, #mobile-menu-backdrop.open { opacity:1; pointer-events:auto; }
    #mobile-menu.rnr-site-drawer { position:fixed; top:0; left:0; right:auto; z-index:10040; width:74vw; max-width:320px; height:100dvh; overflow-y:auto; background:#050505; border-left:0; border-right:1px solid rgba(224,197,132,.3); box-shadow:16px 0 36px rgba(0,0,0,.45); transform:translateX(-100%); transition:transform .35s cubic-bezier(.4,0,.2,1); color:#F0E2C0; font-family:'Cormorant Garamond',Georgia,serif; }
    #mobile-menu.rnr-site-drawer.rnr-site-open, #mobile-menu.rnr-site-drawer.open { transform:translateX(0); }
    .rnr-site-drawer-inner { padding:1.25rem; }
    .rnr-site-drawer-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:1.25rem; }
    .rnr-site-drawer-title { color:#E0C584; font-size:.78rem; font-weight:700; letter-spacing:.2em; }
    .rnr-site-close { padding:.5rem; border-radius:.35rem; }
    .rnr-site-mobile-links { display:flex; flex-direction:column; gap:1rem; }
    .rnr-site-mobile-link { font-size:.76rem; font-weight:700; line-height:1.25; letter-spacing:.16em; }
    .rnr-site-mobile-link::after { display:none; }
    .rnr-site-mobile-link.rnr-site-nav-active { padding-left:.65rem; border-left:2px solid #E0C584; }
    .rnr-site-mobile-portal { display:inline-flex; align-items:center; gap:.45rem; margin-top:.5rem; padding-top:1rem; border-top:1px solid rgba(224,197,132,.2); }
    .rnr-site-mobile-social { display:flex; justify-content:center; gap:.75rem; margin-top:1.5rem; padding-top:1rem; border-top:1px solid rgba(224,197,132,.2); }
    html.rnr-site-menu-open, body.rnr-site-menu-open { overflow:hidden!important; height:100%; }
    @media (max-width:767px) { #navbar.rnr-site-header { height:64px; backdrop-filter:blur(8px); } .rnr-site-header-inner { padding:0 1rem; } .rnr-site-brand img { height:2rem; } .rnr-site-brand-copy, .rnr-site-social, .rnr-site-actions { display:none; } .rnr-site-mobile-actions { display:flex; } #navbar.rnr-site-header .rnr-site-mobile-button { display:inline-flex; } #navbar.rnr-site-header--portal .rnr-site-actions { display:flex; } #navbar.rnr-site-header--portal .rnr-site-mobile-actions { display:none; } }
    @media (min-width:768px) and (max-width:1023px) { #navbar.rnr-site-header--portal { height:64px; backdrop-filter:blur(8px); } #navbar.rnr-site-header--portal .rnr-site-header-inner { padding:0 1rem; } #navbar.rnr-site-header--portal .rnr-site-brand img { height:2rem; } #navbar.rnr-site-header--portal .rnr-site-brand-copy, #navbar.rnr-site-header--portal .rnr-site-social { display:none; } }
    @media (max-width:1023px) { #navbar.rnr-site-header--portal { display:flex!important; } #navbar-spacer { display:block!important; } #navbar.rnr-site-header--portal #portal-header-theme-toggle { position:absolute; left:3.5rem; } #navbar.rnr-site-header--portal #portal-header-zoom { display:inline-flex; } #navbar.rnr-site-header--portal .rnr-site-portal-title { display:block; max-width:calc(100% - 12rem); font-size:.76rem; letter-spacing:.05em; } }
    @media (max-width:639px) { #navbar.rnr-site-header--portal #portal-header-theme-label { display:none; } #navbar.rnr-site-header--portal #portal-header-theme-toggle { width:2.75rem; } }
    @media (max-width:359px) { #navbar.rnr-site-header--portal .rnr-site-brand { visibility:hidden; } #navbar.rnr-site-header--portal #portal-header-theme-toggle { left:.25rem; } #navbar.rnr-site-header--portal .rnr-site-portal-title { max-width:calc(100% - 9rem); font-size:.68rem; } }

/* Shared public navigation: exact Book-Now presentation. Keep booking-only layout in Book-Now. */
@font-face { font-family:'RNR Header Serif'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/book-now-v2/fonts/cffac5d5.woff2') format('woff2'); }
@font-face { font-family:'RNR Header Sans'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/book-now-v2/fonts/17730625.woff2') format('woff2'); }
#navbar.rnr-site-header:not(.rnr-site-header--portal) { height:60px!important; font-family:'RNR Header Serif',Georgia,serif; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-brand img { height:2.05rem; }
@media(max-width:767px) { #navbar.rnr-site-header:not(.rnr-site-header--portal) { height:54px!important; } }
/* ===== Header polish (positions unchanged) ===== */
#navbar.rnr-site-header:not(.rnr-site-header--portal) { background: rgba(10,11,13,.72) !important; -webkit-backdrop-filter: blur(18px) saturate(1.2); backdrop-filter: blur(18px) saturate(1.2); border-bottom: 0 !important; transition: background .25s ease, box-shadow .25s ease; }
#navbar.rnr-site-header:not(.rnr-site-header--portal)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(224,197,132,.45) 20%, rgba(224,197,132,.45) 80%, transparent); pointer-events: none; }
#navbar.rnr-site-header:not(.rnr-site-header--portal).is-scrolled { background: rgba(8,9,11,.9) !important; box-shadow: 0 10px 30px -18px rgba(0,0,0,.9); }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-brand-name { font-family: "RNR Header Serif", Georgia, serif !important; font-size: 1rem !important; font-weight: 600 !important; letter-spacing: .18em !important; background: linear-gradient(180deg, #ffe2a8, #f2c982); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-brand-subtitle { color: #f4ead4 !important; opacity: .8 !important; font-family: "RNR Header Sans", sans-serif !important; font-size: .6rem !important; font-weight: 600; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-social { gap: .9rem !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-social a { width: 1.6rem !important; height: 1.6rem !important; border-radius: 0 !important; background: none !important; color: #d9b977 !important; transition: color .15s ease, transform .15s ease !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-social a:hover { color: #ffe2a8 !important; background: none !important; transform: translateY(-1px); }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-social a:focus-visible, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal:focus-visible, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button:focus-visible { outline: 2px solid #E0C584; outline-offset: 3px; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button { display: inline-flex !important; align-items: center; gap: .5rem; min-height: 38px; padding: 0 .95rem !important; border-radius: 5px !important; background: linear-gradient(135deg, rgb(45,51,59) 0%, rgb(29,33,39) 60%, rgb(22,25,29) 100%); border: 1px solid rgba(221,229,239,.16); box-shadow: inset 0 1px 0 rgba(246,241,233,.08); color: #f4ead4 !important; font: 600 .78rem/1 "RNR Header Sans", sans-serif !important; letter-spacing: .08em !important; text-decoration: none !important; transition: border-color .15s ease, color .15s ease; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal svg { width: 1rem; height: 1rem; color: #E0C584; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal:hover, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button:hover, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button[aria-expanded="true"] { border-color: rgba(224,197,132,.55) !important; color: #fff !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button svg { color: #E0C584; transition: transform .2s ease; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button[aria-expanded="true"] svg { transform: rotate(180deg); }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-dropdown { top: calc(100% + .5rem) !important; padding: .35rem !important; border: 1px solid rgba(221,229,239,.16) !important; border-radius: 6px !important; background: linear-gradient(135deg, rgb(38,43,50) 0%, rgb(26,29,34) 60%, rgb(20,23,27) 100%) !important; box-shadow: inset 0 1px 0 rgba(246,241,233,.08), 0 18px 40px -12px rgba(0,0,0,.8) !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-dropdown .rnr-site-nav-link { position: relative; padding: .55rem .8rem !important; border-radius: 4px !important; color: #e9e0d2 !important; font: 500 .9rem/1.2 "RNR Header Sans", sans-serif !important; letter-spacing: .01em !important; text-transform: none !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-dropdown .rnr-site-nav-link:hover { background: rgba(224,197,132,.08) !important; color: #fff !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-dropdown .rnr-site-nav-active { color: #ffe2a8 !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-dropdown .rnr-site-nav-active::before { content: ""; position: absolute; left: 0; top: 25%; bottom: 25%; width: 2px; border-radius: 2px; background: #E0C584; }
@media (prefers-reduced-motion: reduce) { #navbar.rnr-site-header:not(.rnr-site-header--portal), #navbar.rnr-site-header:not(.rnr-site-header--portal) * { transition: none !important; } }

/* Header actions: quiet text buttons (no boxes) */
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-actions { gap: 0 !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button { min-height: 38px; padding: 0 .9rem !important; border: 0 !important; border-radius: 4px !important; background: none !important; box-shadow: none !important; color: #f4ead4 !important; font: 600 .76rem/1 "RNR Header Sans", sans-serif !important; letter-spacing: .14em !important; transition: color .15s ease, background .15s ease; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal:hover, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button:hover, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button[aria-expanded="true"] { background: rgba(224,197,132,.07) !important; color: #ffe2a8 !important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-wrap { position: relative; padding-left: .5rem; margin-left: .5rem; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-wrap::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 18px; transform: translateY(-50%); background: rgba(224,197,132,.28); }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-portal::after, #navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button::after { content: none !important; display: none !important; }

@media(max-width:760px) {
  /* Header: menu on the left (replaces the logo), social icons centred, compact portal icon on the right. */
  #navbar .rnr-site-header-inner { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; align-items: center; column-gap: 8px; }
  #navbar .rnr-site-brand { display: none; }
  #navbar .rnr-site-mobile-button { grid-area: 1 / 1; justify-self: start; }
  #navbar .rnr-site-social { grid-area: 1 / 2; justify-self: center; position: static; left: auto; transform: none; margin: 0; display: flex; justify-content: center; align-items: center; gap: 4px; }
  #navbar .rnr-site-social a { display: grid; place-items: center; width: 40px; height: 44px; }
  #navbar .rnr-site-social svg { width: 18px; height: 18px; }
  #navbar .rnr-site-actions { grid-area: 1 / 3; display: flex; justify-self: end; }
  #navbar .rnr-site-portal { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; gap: 0; font-size: 0; letter-spacing: 0; border: 0; background: none; }
  #navbar .rnr-site-portal svg { width: 22px; height: 22px; }
  #navbar .rnr-site-portal span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  #navbar .rnr-site-actions > :not(.rnr-site-portal) { display: none; }
  #navbar .rnr-site-actions { gap: 0; padding: 0; margin: 0; width: 44px; }

}

/* Existing public themes use important navigation colors; the shared header owns its presentation. */
#navbar.rnr-site-header:not(.rnr-site-header--portal) { font-size:14px; box-shadow:none!important; }
body.rnr-public-surface:not(.easy-view) #navbar.rnr-site-header:not(.rnr-site-header--portal) { background:rgba(10,11,13,.72)!important; border-bottom:0!important; box-shadow:none!important; }
body.rnr-public-surface:not(.easy-view) #navbar.rnr-site-header:not(.rnr-site-header--portal).is-scrolled { background:rgba(8,9,11,.9)!important; box-shadow:0 10px 30px -18px rgba(0,0,0,.9)!important; }
body.rnr-public-surface:not(.easy-view) #mobile-menu.rnr-site-drawer { background:#050505!important; border-left:0!important; border-right:1px solid rgba(224,197,132,.3)!important; box-shadow:16px 0 36px rgba(0,0,0,.45)!important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) :is(a,button), #mobile-menu.rnr-site-drawer :is(a,button) { text-shadow:none!important; filter:none!important; cursor:pointer!important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) button:hover { box-shadow:none!important; }
#mobile-menu.rnr-site-drawer { font-family:'RNR Header Serif',Georgia,serif; }

body[data-shared-header-inset].rnr-header-mounted { padding-top:calc(var(--rnr-header-inset,0px) + 60px)!important; }
@media(max-width:767px) { body[data-shared-header-inset].rnr-header-mounted { padding-top:calc(var(--rnr-header-inset,0px) + 54px)!important; } }

/* Closed navigation must not cast a shadow over a form or remain keyboard-reachable. */
#mobile-menu.rnr-site-drawer:not(.rnr-site-open) { visibility:hidden; pointer-events:none; }

/* Form-wide button minimums must not change the approved navigation sizing. */
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-mobile-button { min-height:44px!important; height:44px!important; }
#navbar.rnr-site-header:not(.rnr-site-header--portal) .rnr-site-menu-button { min-height:38px!important; height:38px!important; }
