/*
  ENCAIXE RESPONSIVO DO LOGIN

  Em telas desktop, a composição aprovada é mantida em uma prancheta virtual
  de 2037 x 893 px. O fit-viewport.js reduz essa prancheta uniformemente até
  caber na área visível, reproduzindo o aspecto obtido com zoom de 67% sem
  depender da configuração do navegador e sem criar barras de rolagem.

  Este arquivo vem antes de ajustes-visuais.css para que os ajustes manuais
  feitos no Pinegrow continuem tendo prioridade.
*/

@media (min-width: 901px) {
  body.login-fit-desktop {
    width: 100%;
    height: 100vh;
    min-height: 0;
    overflow: hidden;
  }

  :where(body.login-fit-desktop) .login-shell {
    position: fixed;
    top: var(--login-fit-top, 0);
    left: var(--login-fit-left, 0);
    width: 2037px;
    height: 893px;
    min-height: 0;
    transform: scale(var(--login-fit-scale, 1));
    transform-origin: top left;
  }

  /* Neutraliza a compactação acionada pela pouca altura da janela real. */
  :where(body.login-fit-desktop) .institutional-header {
    height: 160px;
  }

  :where(body.login-fit-desktop) .institutional-header img {
    width: 497px;
    height: auto;
    object-fit: contain;
  }

  :where(body.login-fit-desktop) .brand-glow {
    width: 760px;
  }

  :where(body.login-fit-desktop) .battalion-shield {
    width: 510px;
    height: auto;
    max-width: none;
    max-height: none;
  }

  :where(body.login-fit-desktop) .form-panel {
    padding-top: 184px;
    padding-bottom: 54px;
    overflow: hidden;
  }

  :where(body.login-fit-desktop) .form-card {
    width: 540px;
  }

  :where(body.login-fit-desktop) .form-heading {
    margin-bottom: 50px;
  }

  :where(body.login-fit-desktop) .form-heading h1 {
    margin-bottom: 10px;
    font-size: 3.55rem;
  }

  :where(body.login-fit-desktop) .form-heading p {
    font-size: 1.3rem;
  }

  :where(body.login-fit-desktop).login-page label {
    margin-bottom: 10px;
    font-size: 1.18rem;
  }

  :where(body.login-fit-desktop).login-page input {
    min-height: 66px;
    padding: 0 58px 0 69px;
    font-size: 1.24rem;
  }

  :where(body.login-fit-desktop) .password-box input {
    padding-right: 102px;
  }

  :where(body.login-fit-desktop) .field-icon {
    left: 21px;
    width: 27px;
    height: 27px;
  }

  :where(body.login-fit-desktop).login-page small {
    margin: 8px 0 30px;
    font-size: .98rem;
  }

  :where(body.login-fit-desktop) .message {
    min-height: 28px;
    margin: 10px 0 4px;
    font-size: 1rem;
  }

  :where(body.login-fit-desktop).login-page .primary-button {
    min-height: 66px;
    font-size: 1.28rem;
  }

  :where(body.login-fit-desktop) .access-notice {
    margin-top: 52px;
    padding-top: 31px;
    gap: 15px;
  }

  :where(body.login-fit-desktop) .access-notice svg {
    width: 31px;
    height: 35px;
  }

  :where(body.login-fit-desktop) .access-notice p {
    font-size: .92rem;
  }
}
