body.auth-page { min-height: 100vh; background: linear-gradient(135deg, #eef8fd, #f7fbfe); }
.auth-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr); }
.auth-aside { display: grid; place-items: center; padding: 3rem; background: linear-gradient(135deg, #083a5a, #1572b6); color: #fff; }
.auth-aside-content { max-width: 480px; }
.auth-aside h1 { font-size: clamp(2.3rem, 4vw, 4rem); font-weight: 800; line-height: 1.05; }
.auth-aside p { color: #dcefff; font-size: 1.1rem; }
.auth-aside .home-hero-kicker { color: #fdd835; font-size: .8rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.auth-trust { display: flex; gap: .7rem; margin-top: 2rem; color: #fdd835; font-weight: 700; }
.auth-panel { display: grid; align-content: center; padding: 2rem; }
.auth-brand { display: inline-block; margin-bottom: 2rem; }
.auth-card { width: 100%; max-width: 460px; margin: auto; padding: 2rem; border: 0; border-radius: 1.25rem; box-shadow: 0 1rem 2.5rem rgba(12,79,122,.13); }
.auth-card h2 { color: var(--color-azul-oscuro); font-weight: 800; }
.auth-card .form-control { min-height: 48px; border-color: #cfe0eb; }
.auth-card .form-control:focus { border-color: var(--color-azul); box-shadow: 0 0 0 .2rem rgba(21,114,182,.15); }
.auth-help { color: #667085; font-size: .92rem; }
@media (max-width: 991.98px) { .auth-shell { grid-template-columns: 1fr; } .auth-aside { display: none; } .auth-panel { min-height: 100vh; } }
