html,body{width:100%;height:100%;min-width:0!important;overflow:hidden!important}
body{overscroll-behavior:none}
.client-portal{
  width:100%;
  height:100dvh;
  min-height:0!important;
  padding:clamp(10px,2vh,20px) clamp(14px,4vw,72px)!important;
  overflow:hidden!important;
  grid-template-rows:auto minmax(0,1fr) auto;
}
.portal-nav{min-height:clamp(54px,8vh,70px)}
.portal-main{
  min-width:0;
  min-height:0;
  gap:clamp(20px,5vw,80px);
  padding:clamp(12px,3.5vh,38px) 0!important;
}
.portal-intro-panel,.portal-access-panel{min-width:0;max-height:100%}
.portal-access-panel{padding:clamp(22px,3.5vh,42px) clamp(20px,3vw,42px)!important}
.portal-kicker{margin:clamp(14px,3vh,30px) 0 10px}
.portal-intro-panel h1{font-size:clamp(48px,min(6.2vw,10vh),88px)}
.portal-lead{margin:clamp(12px,2.2vh,22px) 0;font-size:clamp(13px,1.3vw,16px)}
.portal-metrics{margin-top:clamp(12px,2.5vh,28px)}
.portal-metrics .tech-status{padding:clamp(7px,1.2vh,10px)}
.portal-runtime{margin-top:clamp(8px,1.5vh,14px)}
.portal-flow{margin-top:clamp(9px,1.8vh,20px)}
.portal-page-footer{min-width:0;min-height:24px}

@media(max-width:950px){
  .portal-main{grid-template-columns:1fr;place-items:center;padding:12px 0!important}
  .portal-intro-panel{display:none}
  .portal-access-panel{width:min(100%,620px)!important;justify-self:center!important}
}
@media(max-width:600px){
  .client-portal{padding:8px 12px!important}
  .portal-nav{min-height:52px}
  .portal-brand>span{width:38px;height:38px}.portal-brand img{width:30px}
  .portal-brand strong{font-size:14px}.portal-brand small{display:none}
  .portal-main{padding:8px 0!important}
  .portal-access-panel{padding:18px 16px!important}
  .portal-access-heading{display:block}.portal-access-heading>span{display:none}
  .portal-access-heading p{margin-bottom:5px}.portal-access-heading h2{font-size:24px}
  .portal-access-help{margin:8px 0 12px}
  .selected-system{margin-bottom:12px;padding:9px}
  .portal-login-fields{grid-template-columns:1fr!important;gap:10px!important}
  .portal-form{gap:11px!important}.portal-form input:not([type=checkbox]){height:44px;min-height:44px}
  .portal-form>button[type=submit]{min-height:46px;margin-top:0}
  .portal-support{display:none}
  .portal-page-footer{justify-content:center;padding:4px 0!important}
  .portal-page-footer>*:not(:first-child){display:none!important}
}

@media(max-height:720px){
  .portal-support{display:none}
  .portal-access-help{margin:7px 0 10px}
  .selected-system{margin-bottom:10px;padding:8px}
  .portal-form{gap:10px!important}.portal-form-options{margin-top:0}
  .portal-form input:not([type=checkbox]){height:42px;min-height:42px}
  .portal-form>button[type=submit]{min-height:44px;margin-top:0}
}

@media(max-height:560px){
  .portal-nav{min-height:42px}.portal-brand>span{width:34px;height:34px}.portal-brand img{width:27px}
  .portal-main{padding:4px 0!important}
  .portal-access-panel{padding:12px 15px!important}
  .selected-system,.portal-access-help,.portal-page-footer{display:none!important}
  .portal-access-heading h2{font-size:21px}
}
