.pips-language-menu { max-height: min(70dvh, 30rem); overflow-y: auto; min-width: 12rem; }
.pips-language-menu [aria-current="true"] { background: #e0f0e9; font-weight: 700; }
.pips-language-picker .dropdown-toggle { white-space: normal; min-height: 2.25rem; }
.pips-login-language { position: absolute; top: 1rem; left: 1rem; z-index: 1060; padding: .35rem; background: white; border-radius: .5rem; }
body, button, input, select, textarea { font-family: Inter, "Segoe UI", Arial, sans-serif; }
[data-pips-key] { overflow-wrap: anywhere; }
.method-card, .button-group .btn, .btn-start, .btn-login { white-space: normal; overflow-wrap: anywhere; }
.navbar .pips-language-picker { max-width: 16rem; }
.footer { position: relative; }
body { padding-bottom: 0; }
.split-panel { min-width: 0; }
.split-container { min-height: calc(100dvh - 7rem); height: auto; }
body .login-wrapper { min-height: calc(100dvh - 8rem); height: auto; }
body .login-form-container { padding-block: 3rem; }
.login-form-wrapper, .login-showcase { min-width: 0; }
.login-showcase h1 { font-size: clamp(2rem, 4vw, 3.2rem); }
main:has(.login-wrapper) { height: auto; min-height: calc(100dvh - 8rem); overflow: visible; }
body .banner-strip-fixed { position: relative; bottom: auto; flex-shrink: 0; }
.wizard-step { overflow-y: auto; max-height: 76dvh; }
.details-compact .form-floating > label { white-space: normal; height: auto; }
body .details-compact .form-floating > .form-control, body .details-compact .form-floating > .form-select { min-height: 4.25rem; padding-top: 2rem; }
.details-compact .form-floating > label { max-width: 100%; }
@media(max-width: 767.98px) {
  .pips-login-language { max-width: calc(100vw - 6rem); }
  .login-showcase { padding: 5rem 1.5rem 2rem; }
  .login-form-wrapper { padding: 1.5rem; }
  .button-group { flex-wrap: wrap; }
  .button-group .btn { flex: 1 1 8rem; }
}
