@media (max-width: 820px) {
  .login-fundo { align-items: start; padding: 14px; }
  .login { width: min(560px, 100%); border-width: 5px; border-radius: 22px; }
  .login-container { grid-template-columns: 1fr; min-height: 0; }
  .imagem-left { z-index: 0; height: clamp(170px, 29vh, 230px); }
  .imagem-left .imagem-desktop { right: -2%; bottom: -28%; width: 72%; object-position: center bottom; }
  .login-identidade-personalizada .imagem-left .imagem-desktop { width: 100%; object-position: center; }
  .login-hero-texto { top: 18px; left: 22px; }
  .login-hero-texto strong { font-size: clamp(17px, 4.8vw, 23px); }
  .login-hero-texto span { display: none; }
  .imagem-left::after { bottom: -22%; height: 40%; }
  .login-dados-right { z-index: 1; min-height: 0; justify-content: flex-start; gap: 18px; margin-top: -30px; padding: 42px clamp(20px, 7vw, 42px) 30px; border-radius: 30px 30px 0 0; box-shadow: 0 -12px 30px rgba(7,36,82,.09); }
  .login-marca { justify-content: center; }
  .login-boas-vindas { text-align: center; }
  .login-marca-logo { width: 52px; height: 52px; flex-basis: 52px; }
  .login-marca-textos > strong { font-size: 22px; }
  .login-boas-vindas { margin-top: 8px; }
  .h2-titulo { font-size: 25px; }
  .login-boas-vindas p { margin-top: 5px; font-size: 13px; }
  .voltar-cliente { top: 16px; left: 16px; }
}
@media (max-width: 480px) {
  .login-fundo { padding: 0; }
  .login { width: 100%; min-height: 100vh; border: 0; border-radius: 0; box-shadow: none; }
  .imagem-left { height: clamp(175px, 26vh, 220px); }
  .login-dados-right { min-height: 0; margin-top: -28px; padding: 40px 18px 24px; border-radius: 28px 28px 0 0; }
  .login-marca { gap: 11px; }
  .login-marca-logo { width: 46px; height: 46px; flex-basis: 46px; }
  .login-marca-textos > strong { font-size: 19px; }
  .h2-titulo { font-size: 23px; }
  .botao-entrar { min-height: 50px; font-size: 14px; }
  .voltar-cliente { top: 12px; left: 12px; }
}
@media (max-height: 650px) and (max-width: 820px) {
  .imagem-left { height: 125px; }
  .login-dados-right { padding-top: 32px; }
}
