/* HCH Nav v1 (typography B) - upscale dropdowns (desktop #access + mobile .mobilex-menu drawer). STYLE ONLY.
   No markup, label, URL, order or menu-structure change. No JS, no web fonts, no images.
   Desktop: scoped to .header_wrapper #access ul.menu (WP Rentals header). Mobile: .mobilewrapper .mobilex-menu.
   Kill switch: wp-content/mu-plugins/hch-nav-v1/DISABLED. */

/* ---------- desktop: top level ---------- */
.header_wrapper #access ul.menu>li>a.menu-item-link{position:relative;transition:color .18s ease}
.header_wrapper #access ul.menu>li>a.menu-item-link::after{content:"";position:absolute;left:50%;bottom:18px;width:0;height:2px;border-radius:2px;background:#6CC3B8;transform:translateX(-50%);transition:width .2s ease}
.header_wrapper #access ul.menu>li:hover>a.menu-item-link::after,
.header_wrapper #access ul.menu>li:has(a:focus-visible)>a.menu-item-link::after,
.header_wrapper #access ul.menu>li.current-menu-item>a.menu-item-link::after{width:calc(100% - 10px);max-width:44px}
.header_wrapper #access ul.menu>li:hover>a.menu-item-link,
.header_wrapper #access ul.menu>li:has(a:focus-visible)>a.menu-item-link,
.header_wrapper #access ul.menu>li>a.menu-item-link:focus-visible{color:#0F5F56}
.header_wrapper.transparent_header #access ul.menu>li:hover>a.menu-item-link,
.header_wrapper.transparent_header #access ul.menu>li:has(a:focus-visible)>a.menu-item-link,
.header_wrapper.transparent_header #access ul.menu>li>a.menu-item-link:focus-visible{color:#9FE3DA}
.header_wrapper #access ul.menu>li.current-menu-item>a.menu-item-link,
.header_wrapper #access ul.menu>li.current-menu-parent>a.menu-item-link,
.header_wrapper #access ul.menu>li.current-menu-ancestor>a.menu-item-link{color:inherit}
.header_wrapper #access ul.menu>li>a.menu-item-link:focus-visible{outline:2px solid #6CC3B8;outline-offset:-14px;border-radius:12px}

/* ---------- desktop: dropdown panel ---------- */
.header_wrapper #access ul.menu>li>ul.sub-menu{
  top:70px!important;left:-10px;margin:0;width:340px;max-width:calc(100vw - 32px);padding:8px;
  background:linear-gradient(180deg,#14283F 0%,#0D192A 100%);
  border:1px solid rgba(255,255,255,.09);border-radius:16px;
  box-shadow:0 28px 60px -18px rgba(6,14,26,.55),0 6px 18px rgba(6,14,26,.22),inset 0 1px 0 rgba(255,255,255,.06);
  line-height:1.35;transform:translateY(10px);
  transition:opacity .18s ease,transform .2s cubic-bezier(.2,.7,.2,1),visibility 0s linear .2s}
.header_wrapper #access ul.menu>li>ul.sub-menu::after{display:none!important}
.header_wrapper #access ul.menu>li>ul.sub-menu::before{content:"";position:absolute;left:18px;right:18px;top:0;height:2px;border-radius:0 0 2px 2px;background:linear-gradient(90deg,rgba(108,195,184,0),#6CC3B8 30%,#6CC3B8 70%,rgba(108,195,184,0))}
.header_wrapper #access ul.menu>li:hover>ul.sub-menu,
.header_wrapper #access ul.menu>li:has(a:focus-visible)>ul.sub-menu{visibility:visible;opacity:1;transform:translateY(0);transition-delay:0s}
.header_wrapper #access ul.menu>li>ul.sub-menu>li{display:block;width:100%;height:auto;border:0}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link{
  position:relative;display:flex;align-items:center;gap:12px;padding:11px 32px 11px 14px!important;margin:1px 0;border-radius:11px;
  color:#E6ECF3!important;background:transparent!important;
  font:600 14.5px/1.35 "Open Sans","Helvetica Neue",Arial,sans-serif;letter-spacing:.005em;white-space:normal;
  transition:background-color .15s ease,color .15s ease}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link::before{content:""!important;position:static!important;flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:rgba(108,195,184,.45);font-family:inherit!important;transition:background-color .15s ease,box-shadow .15s ease}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link::after{content:"";position:absolute;right:16px;top:50%;margin-top:-4px;width:7px;height:7px;border-top:2px solid #6CC3B8;border-right:2px solid #6CC3B8;transform:translateX(-4px) rotate(45deg);opacity:0;transition:opacity .15s ease,transform .15s ease}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:hover,
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:focus-visible{background:rgba(108,195,184,.14)!important;color:#fff!important;padding-left:14px!important;padding-right:32px!important}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:hover::before,
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:focus-visible::before{background:#6CC3B8;box-shadow:0 0 0 4px rgba(108,195,184,.18)}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:hover::after,
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:focus-visible::after{opacity:1;transform:translateX(0) rotate(45deg)}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link:focus-visible{outline:2px solid #6CC3B8;outline-offset:-2px}
.header_wrapper #access ul.menu>li>ul.sub-menu>li.current-menu-item>a.menu-item-link{color:#fff!important;background:rgba(255,255,255,.06)!important}
.header_wrapper #access ul.menu>li>ul.sub-menu>li.current-menu-item>a.menu-item-link::before{background:#6CC3B8}

/* ---------- mobile drawer (left nav drawer only; user drawer untouched) ---------- */
.mobilewrapper .snap-drawer-left{background:linear-gradient(180deg,#0D192A 0%,#132741 100%);border:0;box-shadow:10px 0 36px rgba(6,14,26,.35)}
.mobilewrapper .snap-drawer-left .mobilemenu-close{color:#E6ECF3}
.mobilewrapper .mobilex-menu{background:transparent!important;margin-top:52px;padding:0 12px 28px}
.mobilewrapper .mobilex-menu>li{border-bottom:1px solid rgba(255,255,255,.07)!important;background:transparent!important}
.mobilewrapper .mobilex-menu>li:last-child{border-bottom:0!important}
.mobilewrapper .mobilex-menu li:hover{background:transparent!important}
.mobilewrapper .mobilex-menu>li>a{display:block;padding:14px 40px 14px 12px!important;margin:4px 0;border-radius:11px;color:#F1F5F9!important;font:600 15.5px/1.35 "Open Sans","Helvetica Neue",Arial,sans-serif;letter-spacing:.005em;transition:background-color .15s ease,color .15s ease}
.mobilewrapper .mobilex-menu li>a:hover,.mobilewrapper .mobilex-menu li>a:focus{background:rgba(108,195,184,.13);color:#fff!important}
.mobilewrapper .mobilex-menu li>a:focus-visible{outline:2px solid #6CC3B8;outline-offset:-2px}
.mobilewrapper .mobilex-menu .menu-item-has-children>a:after{right:14px!important;top:50%;margin-top:-10px;color:#6CC3B8;font-size:16px;transition:transform .2s ease}
.mobilewrapper .mobilex-menu .menu-item-has-children:has(>.sub-menu[style*="block"])>a{color:#9FE3DA!important}
.mobilewrapper .mobilex-menu .menu-item-has-children:has(>.sub-menu[style*="block"])>a:after{transform:rotate(180deg)}
.mobilewrapper .mobilex-menu .sub-menu{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06);border-radius:14px;margin:2px 0 12px!important;padding:6px!important}
.mobilewrapper .mobilex-menu .sub-menu li{border:0!important;background:transparent!important}
.mobilewrapper .mobilex-menu .sub-menu a{position:relative;display:block;padding:13px 12px 13px 30px!important;margin:1px 0;border-radius:10px;color:#CBD5E1!important;font:500 14.5px/1.35 "Open Sans","Helvetica Neue",Arial,sans-serif}
.mobilewrapper .mobilex-menu .sub-menu a::before{content:"";position:absolute;left:13px;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:rgba(108,195,184,.55)}
.mobilewrapper .mobilex-menu .sub-menu a:hover::before,.mobilewrapper .mobilex-menu .sub-menu a:focus::before{background:#6CC3B8}

/* ---------- typography refinement (Option B: weight 400 + wider spacing) - lighter, more elegant menu text ----------
   The site loads Open Sans as ONE variable woff2 (wght 300-800) but declares only the 300/400/700/900 faces, so 500/600
   currently snap to 400/700. "HCH Nav Sans" maps the SAME file (same URL, so no extra download) with a weight range, so the
   menu gets a true 400 without changing how any other text on the site renders. Fallback = the site's own Open Sans. */
@font-face{font-family:"HCH Nav Sans";font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/opensans/v44/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
.header_wrapper #access ul.menu>li>a.menu-item-link{font-family:"HCH Nav Sans","Open Sans","Helvetica Neue",Arial,sans-serif!important;font-weight:400!important;font-size:14.5px!important;letter-spacing:.025em;color:#3F4859;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li>a.menu-item-link{font-size:15px!important;color:rgba(255,255,255,.92);text-shadow:0 1px 12px rgba(6,14,26,.28)}
.header_wrapper #access ul.menu>li.current-menu-item>a.menu-item-link,
.header_wrapper #access ul.menu>li.current-menu-parent>a.menu-item-link,
.header_wrapper #access ul.menu>li.current-menu-ancestor>a.menu-item-link{color:#14283F}
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li.current-menu-item>a.menu-item-link,
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li.current-menu-parent>a.menu-item-link,
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li.current-menu-ancestor>a.menu-item-link,
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li:hover>a.menu-item-link,
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li:has(a:focus-visible)>a.menu-item-link{color:#fff}
.header_wrapper #access ul.menu>li:hover>a.menu-item-link,
.header_wrapper #access ul.menu>li:has(a:focus-visible)>a.menu-item-link{color:#0F5F56}
#all_wrapper .header_wrapper.transparent_header #access ul.menu>li:hover>a.menu-item-link{color:#fff}
/* soft top scrim behind the transparent header only (homepage hero), masked to the right half so the logo/left side is untouched, so the lighter menu text keeps >= 4.5:1 even over bright windows/sky */
#all_wrapper .header_wrapper.transparent_header::before{content:"";position:absolute;left:0;right:0;top:0;height:150px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(10,20,36,.66) 0%,rgba(10,20,36,.58) 46px,rgba(10,20,36,.30) 96px,rgba(10,20,36,0) 150px);-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 30%,#000 62%);mask-image:linear-gradient(90deg,transparent 0%,transparent 30%,#000 62%)}
.header_wrapper #access ul.menu>li>ul.sub-menu>li>a.menu-item-link{font-family:"HCH Nav Sans","Open Sans","Helvetica Neue",Arial,sans-serif;font-weight:400;letter-spacing:.025em}
.mobilewrapper .mobilex-menu>li>a{font-family:"HCH Nav Sans","Open Sans","Helvetica Neue",Arial,sans-serif;font-weight:400;letter-spacing:.025em}
.mobilewrapper .mobilex-menu .sub-menu a{font-family:"HCH Nav Sans","Open Sans","Helvetica Neue",Arial,sans-serif;font-weight:400;letter-spacing:.025em}

@media (prefers-reduced-motion:reduce){
 .header_wrapper #access ul.menu>li>ul.sub-menu,.header_wrapper #access ul.menu>li>ul.sub-menu *,.header_wrapper #access ul.menu>li>a.menu-item-link::after,.mobilewrapper .mobilex-menu *{transition:none!important}
 .header_wrapper #access ul.menu>li>ul.sub-menu{transform:none}
}

/* ---- mobile header fix (option B, more stylish) - typography B unchanged.
   Scoped to the mobile bar only (theme shows .mobile_header at max-width:1180px).
   Slimmer 64px bar, optically centered logo with clearer padding, refined hairline.
   Desktop .header_wrapper / #access / logo are not targeted. */
@media (max-width:1180px){
  .mobile_header{
    height:64px;
    box-sizing:border-box;
    background:#fff;
    border-bottom:1px solid #E3E8EF;
    box-shadow:0 1px 0 rgba(13,25,42,.04);
    display:block;
    float:left;
    width:100%;
    position:relative;
  }
  .mobile-trigger,
  .mobile-trigger-user{
    position:absolute;
    top:0;
    width:52px;
    height:64px;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:2;
    cursor:pointer;
  }
  .mobile-trigger{left:4px}
  .mobile-trigger-user{right:4px;left:auto}
  .mobile_header .mobile-trigger i,
  .mobile_header .mobile-trigger-user i{
    margin:0!important;
  }
  .mobile-logo{
    position:absolute;
    left:56px;
    right:56px;
    top:0;
    bottom:0;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:1;
  }
  .mobile-logo a{
    display:flex;
    align-items:center;
    justify-content:center;
    /* a little more padding below than above so the tight 'CORPORATE HOUSING'
       lettering in the SVG is optically centered and not flush with the bar */
    padding:10px 8px 12px;
    box-sizing:border-box;
    max-height:100%;
  }
  .mobile-logo img{
    position:static!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    margin:0;
    display:block;
    width:80px!important;
    height:38px!important;
    max-width:80px!important;
    max-height:38px!important;
    object-fit:contain;
  }
}
