
/* NW Hospitality 2.3.1 — mobile login and install safety layer. */
body.nwm-access-hub-page,
body.nwm-members-webapp-page{overflow-x:hidden!important}

.nwm-access-panel,
.nwm-access-form,
.nwm-login-card,
#nwm_members_loginform{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}

.nwm-access-form{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;overflow:visible!important;isolation:isolate}
.nwm-access-form>label,
.nwm-access-form>.nwm-access-meta,
.nwm-access-form>.nwm-access-submit{position:relative!important;inset:auto!important;float:none!important;clear:both!important;width:100%!important;min-width:0!important;margin:0!important;grid-column:1/-1!important;transform:none!important}
.nwm-access-form>label{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
.nwm-password-field{position:relative!important;display:block!important;width:100%!important;min-width:0!important;min-height:54px!important;overflow:visible!important}
.nwm-access-form input[type=text],
.nwm-access-form input[type=email],
.nwm-access-form input[type=password],
.nwm-access-form input[type=search]{position:relative!important;display:block!important;inset:auto!important;width:100%!important;max-width:none!important;height:54px!important;min-height:54px!important;margin:0!important;padding:13px 54px 13px 14px!important;-webkit-appearance:none!important;appearance:none!important;box-sizing:border-box!important;transform:none!important}
.nwm-access-form input[type=text],
.nwm-access-form input[type=email],
.nwm-access-form input[type=search]{padding-right:14px!important}
.nwm-password-toggle{position:absolute!important;z-index:5!important;top:7px!important;right:7px!important;bottom:auto!important;left:auto!important;display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;margin:0!important;padding:0!important;transform:none!important}
.nwm-access-submit{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;margin-top:2px!important;padding:13px 20px!important;overflow:visible!important}

#nwm_members_loginform{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
#nwm_members_loginform p{position:relative!important;inset:auto!important;float:none!important;clear:both!important;width:100%!important;min-width:0!important;margin:0!important;grid-column:1/-1!important}
#nwm_members_loginform label{display:block!important;margin:0 0 7px!important}
#nwm_members_loginform input[type=text],
#nwm_members_loginform input[type=password]{position:relative!important;display:block!important;width:100%!important;height:52px!important;min-height:52px!important;margin:0!important;padding:13px 14px!important;font-size:16px!important;box-sizing:border-box!important;-webkit-appearance:none!important;appearance:none!important}
#nwm_members_loginform .login-submit,
#nwm_members_loginform input[type=submit]{position:relative!important;inset:auto!important;float:none!important;clear:both!important;display:flex!important;width:100%!important;min-height:52px!important;margin:0!important;transform:none!important}

.nwm-access-install-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-top:24px;padding:14px;border:1px solid #e1d5c7;border-radius:14px;background:#fff;color:#293832;box-shadow:0 8px 24px rgba(48,35,26,.06)}
.nwm-access-install-button{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;margin:0!important;padding:11px 16px!important;border:0!important;border-radius:10px!important;background:#293832!important;color:#fff!important;font-size:.86rem!important;font-weight:800!important;white-space:nowrap!important;box-shadow:none!important}
.nwm-access-install-card span{color:#66716c;font-size:.78rem;line-height:1.45}

body.nwm-pwa-banner-open{padding-bottom:max(128px,calc(env(safe-area-inset-bottom) + 112px))!important}
body.nwm-pwa-banner-open .nwm-access-hub{padding-bottom:28px!important}

@media(max-width:700px){
  .nwm-access-panel{padding:30px 18px calc(30px + env(safe-area-inset-bottom))!important;overflow:visible!important}
  .nwm-access-form{gap:16px!important}
  .nwm-access-submit{margin-top:0!important}
  .nwm-access-install-card{grid-template-columns:1fr;text-align:center}
  .nwm-access-install-button{width:100%!important}
  .nwm-pwa-install-banner{max-height:calc(100dvh - 24px);overflow:auto}
}

@media(max-width:420px){
  .nwm-access-panel{padding-left:15px!important;padding-right:15px!important}
  .nwm-access-copy h2{font-size:2rem!important}
}
