/* One header, scoped away from marketing and dashboard styles. */
/* grid, not flex+margin:auto — the logo (36px) and the actions block (Book now +
   Account, ~200px+) are very different widths, so the old "margin:0 auto on the
   links" trick centered the links in the space *between* them rather than on the
   bar itself, visibly skewing the nav toward the logo side. A 1fr/auto/1fr grid
   centers the middle column against the full bar width regardless of how
   lopsided the two ends are. */
#siteNav{box-sizing:border-box;position:sticky;top:0;z-index:100;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;width:100%;max-width:none;min-height:72px;margin:0;padding:0 clamp(20px,4vw,56px);background:#08080a;border-bottom:1px solid #29292b;color:#f0ede8;font:400 14px/1.4 'DM Sans',sans-serif}
#siteNav *{box-sizing:border-box}
#siteNav a{color:inherit;text-decoration:none;letter-spacing:0;text-transform:none;font:inherit}
#siteNav button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #48484a;background:transparent;color:inherit;padding:9px 12px;font:inherit;text-transform:none;letter-spacing:0;cursor:pointer;border-radius:2px;box-shadow:none;transform:none;opacity:1;min-height:42px}
#siteNav button:hover,#siteNav .abridge-book:hover{background:#242426;transform:none}
#siteNav a:focus-visible,#siteNav button:focus-visible{outline:2px solid #f0ede8;outline-offset:4px}
#siteNav .abridge-logo{grid-column:1;justify-self:start;flex:none;display:block}
#siteNav .abridge-logo img{display:block;width:36px;height:30px;object-fit:contain}
#siteNav .abridge-links{grid-column:2;justify-self:center;display:flex;align-items:center;gap:clamp(16px,2vw,28px);margin:0;padding:0;position:static}
#siteNav .abridge-links a{color:#b7b4ae;white-space:nowrap;padding:24px 0}
#siteNav .abridge-links a:hover,#siteNav a[aria-current=page]{color:#f0ede8;text-decoration:underline;text-underline-offset:6px}
#siteNav .abridge-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:16px}
#siteNav .abridge-book{border:1px solid #b7b4ae;padding:10px 16px;white-space:nowrap;border-radius:2px}
#siteNav .abridge-account{position:relative;white-space:nowrap}
#siteNav .abridge-account>a{display:inline-block;padding:12px 0}
#siteNav .abridge-account-panel{position:absolute;right:0;top:calc(100% + 8px);width:224px;padding:8px;background:#101012;border:1px solid #48484a}
#siteNav [hidden]{display:none!important}
#siteNav .abridge-account-panel p{white-space:normal;overflow-wrap:anywhere;padding:8px;margin:0;color:#b7b4ae;font-size:13px}
#siteNav .abridge-account-summary{display:flex;flex-direction:column;gap:2px;padding:0 8px 10px;margin:-4px 0 4px;border-bottom:1px solid #29292b}
#siteNav .abridge-account-summary span{color:#b7b4ae;font-size:12px}
#siteNav .abridge-account-summary strong{color:#f0ede8;font-weight:600}
#siteNav .abridge-account-panel a,#siteNav .abridge-account-panel button{display:block;text-align:left;width:100%;padding:12px 8px;border:0}
#siteNav .abridge-account-panel a:hover{background:#242426}
#siteNav .abridge-notification-box{margin:6px 0;border-top:1px solid #29292b;border-bottom:1px solid #29292b;padding:6px 0}
#siteNav .abridge-notification-heading{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;color:#b7b4ae;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
#siteNav .abridge-notification-heading button{display:inline-block;width:auto;min-height:0;padding:2px 0;color:#b7b4ae;font-size:10px;text-decoration:underline}
#siteNav .abridge-notification{display:block;width:100%;padding:8px;border:0;border-radius:0;color:#b7b4ae;background:transparent;text-align:left;cursor:pointer}
#siteNav .abridge-notification.is-unread{color:#f0ede8;background:#1a1a1d}
#siteNav .abridge-notification:hover{background:#242426}
#siteNav .abridge-notification span,#siteNav .abridge-notification small{display:block;white-space:normal;overflow-wrap:anywhere}
#siteNav .abridge-notification small{margin-top:3px;color:#8e8c87;font-size:11px;line-height:1.35}
#siteNav .abridge-notification-muted{display:block;padding:8px;color:#8e8c87;font-size:11px}
#siteNav .abridge-menu-toggle{display:none}
body:has(#siteNav):not(.customer-site)>.page{padding-top:32px}
@media(max-width:1050px){
  #siteNav{min-height:64px;gap:16px}
  #siteNav .abridge-menu-toggle{display:inline-flex;border:0;padding:8px}
  #siteNav .abridge-links{display:none;position:absolute;top:100%;left:0;right:0;padding:16px 24px;max-height:calc(100dvh - 64px);overflow-y:auto;background:#08080a;border-bottom:1px solid #48484a}
  #siteNav .abridge-links.is-open{display:grid;gap:0}
  #siteNav .abridge-links a{padding:14px 0}
  #siteNav .abridge-actions{margin-left:auto;gap:12px}
  #siteNav .abridge-account-panel{right:-46px}
}
@media(max-width:380px){#siteNav{padding:0 16px}#siteNav .abridge-actions{gap:8px}#siteNav .abridge-book{padding:10px}#siteNav button{padding:9px}}
@media(prefers-reduced-motion:reduce){#siteNav *{transition:none}}

/* Shared keyboard and form affordances, using the established studio palette. */
.abridge-skip{position:fixed;top:8px;left:8px;z-index:1000;padding:12px 18px;background:#f0ede8;color:#08080a;transform:translateY(-200%)}
.abridge-skip:focus{transform:none}
:focus-visible{outline:2px solid #bdb9b2;outline-offset:4px}
.password-visibility{display:block;width:auto;margin:6px 0 12px;padding:6px 10px;min-height:32px;background:transparent;color:inherit;border:1px solid #666;font:inherit;font-size:13px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Keep account controls usable on short screens and long notification lists. */
#siteNav .abridge-account-panel{max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain}

/* Administrator's read-only staff view, using the existing studio palette. */
.staff-view-banner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:14px 24px; background:#252219; color:#f4f0e8; border-bottom:1px solid #c9a86a; font-family:inherit; }
.staff-view-banner strong, .staff-view-banner span { display:block; }
.staff-view-banner span { margin-top:4px; font-size:14px; color:#d9d0bf; }
.staff-view-banner button { width:auto; margin:0; padding:8px 14px; border:1px solid #c9a86a; border-radius:6px; background:transparent; color:#f4f0e8; font:inherit; cursor:pointer; }
.staff-view-banner p { flex-basis:100%; margin:0; }

.staff-view-banner a { color:#f4f0e8; text-decoration:underline; }

/* Bell + signed-in name in the top bar (notifications moved out of the account menu). */
#siteNav .abridge-account{display:flex;align-items:center;gap:6px}
#siteNav .abridge-bell{position:relative;width:42px;padding:0;border:0}
#siteNav .abridge-bell[aria-expanded="true"]{background:#242426}
#siteNav .abridge-bell-badge{position:absolute;top:5px;right:4px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#c9a86a;color:#08080a;font:700 10px/17px 'DM Sans',sans-serif;font-style:normal;text-align:center;box-shadow:0 0 0 2px #08080a}
#siteNav .abridge-account-toggle{gap:8px;padding:5px 8px 5px 5px;border-color:#29292b}
#siteNav .abridge-avatar{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:1px solid #48484a;border-radius:50%;background:#1a1a1d;font:700 13px/1 'DM Sans',sans-serif}
#siteNav .abridge-account-name{max-width:10ch;overflow:hidden;text-overflow:ellipsis;font-weight:500}
#siteNav .abridge-account-panel{width:min(300px,calc(100vw - 32px))}
#siteNav .abridge-account-panel.abridge-notification-box{margin:0;padding:8px;border:1px solid #48484a}
#siteNav .abridge-notification-box #abridgeNotifications{display:flex;flex-direction:column;gap:2px}
#siteNav .abridge-account-panel #abridgeEnablePush{margin-top:8px;text-align:center;border:1px solid #48484a;font-size:12px}
@media(max-width:480px){body:not(.staff-app) #siteNav .abridge-account-name{display:none}body:not(.staff-app) #siteNav .abridge-account-toggle{padding:5px}}
