:root {
    --dc-primary: #405b73;
    --dc-primary-dark: #31485d;
}

html, body { min-height: 100%; }
body { display: flex; flex-direction: column; color: #26323d; }
main { flex: 1; }
.btn-primary { --bs-btn-bg: var(--dc-primary); --bs-btn-border-color: var(--dc-primary); --bs-btn-hover-bg: var(--dc-primary-dark); --bs-btn-hover-border-color: var(--dc-primary-dark); }
.hero-card { max-width: 800px; padding-top: 8vh !important; }
.hero-card .lead { max-width: 650px; }
.auth-card { max-width: 720px; }
.form-card { max-width: 760px; }
.module-card { transition: transform .15s ease, box-shadow .15s ease; }
.module-card:hover { transform: translateY(-2px); }
.card, .organization-details dd { overflow-wrap: anywhere; }
.organization-details dt { color: #687580; font-weight: 600; }
.organization-details dd { padding-bottom: .75rem; }
.form-control, .form-select, .btn { min-height: 44px; }

@media (max-width: 575.98px) {
    main.container { padding-left: 1rem; padding-right: 1rem; }
    .card-body { padding: 1.25rem !important; }
}
