/* Full desktop navigation; compact only at narrow widths or when text no longer fits. */
.site-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap!important;gap:24px;min-width:0}
.site-header>nav{display:flex;flex-wrap:nowrap;white-space:nowrap;flex:none}
.site-header>nav>a{white-space:nowrap;flex:none}
.site-header>.mark{flex:none;white-space:nowrap;min-height:44px;display:inline-block;line-height:44px}
.site-header>.header-cta{flex:none;white-space:nowrap;gap:.65rem;line-height:1.3}
.header-cta>svg{flex:none}
.booking-label-short{display:none!important}
.booking-label-full{white-space:nowrap;color:inherit!important}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px!important;min-width:0}
.footer-links>a{display:inline-flex;align-items:center;min-height:44px;white-space:normal;overflow-wrap:anywhere}
.client-back-home{display:none;align-items:center;min-height:44px;flex:none;white-space:nowrap;gap:.6rem;font-size:.9375rem}
.site-header.header-fit-compact>nav:not(.header-measure-nav){display:none!important}
.client-entry .site-header.header-fit-compact>.header-cta,.signin-page .site-header.header-fit-compact>.header-cta,.workspace-welcome .site-header.header-fit-compact>.header-cta:not(.header-measure-cta){display:none!important}
.site-header.header-fit-compact>.client-back-home{display:inline-flex}
/* Hidden inert copies measure full desktop links even while the compact row is shown. */
.site-header>.header-measure-nav,.site-header>.header-measure-cta{position:fixed!important;left:-10000px!important;top:0!important;visibility:hidden!important;pointer-events:none!important;width:max-content!important;max-width:none!important;display:flex!important;flex-wrap:nowrap!important;white-space:nowrap!important}
.signin-page{--client-gutter:clamp(20px,6vw,24px)}
.signin-page .signin-main{width:calc(100% - 112px);padding-inline:0;min-width:0}
.signin-main h1,.signin-message,.signin-help{overflow-wrap:anywhere}
.shared-sites .signin-button{overflow-wrap:anywhere}
.signin-contact{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1100px){
 .masthead.navigation-bar .site-header>.header-cta:not(.header-measure-cta){display:inline-flex}
 .site-header.wrap{width:calc(100% - 48px);padding-block:16px;min-height:84px}
 .site-header>.mark{font-size:2rem}.footer-meta{min-width:0}
 .site-header>nav:not(.header-measure-nav){display:none!important}
 .client-entry .site-header>.header-cta:not(.header-measure-cta),.signin-page .site-header>.header-cta:not(.header-measure-cta),.workspace-welcome .site-header>.header-cta:not(.header-measure-cta){display:none!important}
 .site-header>.client-back-home{display:inline-flex}
}
@media(max-width:850px){
  .signin-page .wrap,.signin-page .signin-main{width:calc(100% - 2 * var(--client-gutter));max-width:720px}
  .signin-page .signin-main{padding-top:40px;padding-bottom:48px}
  .signin-main h1{font-size:clamp(2rem,8vw,3rem);line-height:1.15}
  .signin-message{font-size:1.0625rem;line-height:1.6}
  .shared-sites{grid-template-columns:minmax(0,1fr);margin:24px 0 28px;gap:12px}
  .shared-sites .signin-button{min-height:76px;padding:20px;font-size:1.125rem;line-height:1.4}
  .signin-account-actions{gap:12px}
  .signin-account-actions button{font-size:.875rem;max-width:100%}
  .signin-contact{margin-left:0}
  .signin-help{font-size:1rem}
}
@media(max-width:600px){
  .site-header.wrap{width:calc(100% - 40px);gap:16px}
  .site-header .booking-label-full,.device>.brand .booking-label-full{display:none!important}
  .site-header .booking-label-short,.device>.brand .booking-label-short{display:inline!important;white-space:nowrap;color:inherit}
  .site-header>.header-cta{padding:.7rem 1rem;font-size:.9375rem;gap:.5rem;min-height:44px}
  .site-header .header-cta-icon{width:1.125rem;height:1.125rem}
}

/* Keep the narrow mobile shell consistent at every outer viewport width. */
.device>.brand .booking-label-full{display:none!important}
.device>.brand .booking-label-short{display:inline!important;white-space:nowrap;color:inherit}
@media(max-width:1100px){.site-header .booking-label-full{display:none!important}.site-header .booking-label-short{display:inline!important;color:inherit}.masthead.navigation-bar{background:#101010;color:#fff}.masthead.navigation-bar .site-header>.mark{color:#fff}}

/* A circle sits on the text baseline, never the flex centre. */
.site-header>.mark{display:block!important;line-height:44px}
.site-header>.mark>span{vertical-align:baseline}
