.lead-steps [hidden] { display: none !important; }
.lead-steps .step-status { color: #0072af; font-weight: 700; margin: 0 0 18px; }
.lead-steps .field { position: relative; margin-bottom: 15px; }
.lead-steps .field .error-message {
  position: absolute; top: 100%; left: 0; height: 14px; line-height: 14px;
  color: #b42318; font-size: 11px; white-space: nowrap; pointer-events: none;
}
.lead-steps .field.has-error :is(input, select, textarea) {
  border-color: #d92d20 !important; box-shadow: 0 0 0 1px #d92d20;
}
.lead-steps .field label { display: block; margin-bottom: 5px; font-weight: 600; color: #163b55; }
.lead-steps .field input, .lead-steps .field select, .lead-steps .field textarea {
  display: block; width: 100%; min-height: 48px; padding: 11px 13px;
  border: 1px solid #8ea5b3; border-radius: 7px; background: #fff; color: #18394d;
}
.lead-steps .field textarea { min-height: 90px; resize: vertical; }
.lead-steps .field input:focus-visible, .lead-steps .field select:focus-visible,
.lead-steps .field textarea:focus-visible, .lead-steps button:focus-visible,
.lead-steps a:focus-visible { outline: 3px solid #0072af; outline-offset: 2px; }
.lead-steps .step-actions { display: flex; gap: 10px; margin-top: 20px; }
.lead-steps .step-actions button { min-height: 48px; padding: 12px 20px; border-radius: 7px; font-weight: 700; cursor: pointer; }
.lead-steps .step-actions .next, .lead-steps .step-actions .submit { flex: 1; border: 1px solid #0072af; background: #0072af; color: #fff; }
.lead-steps .step-actions .back { border: 1px solid #7c95a3; background: #fff; color: #163b55; }
.lead-steps .form-note { margin-top: 18px; font-size: 14px; line-height: 1.5; color: #3d5664; }
.lead-steps .form-note a { text-decoration: underline; }
.information-note { margin-top: 20px; padding: 16px 20px; border-left: 4px solid #0072af; background: #eef7fb; color: #214458; line-height: 1.55; }
.plain-list { list-style: none; padding-left: 0; margin: 22px 0; }
.plain-list li { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 14px; line-height: 1.55; }
.plain-list .fa-circle-check { color: #0072af; margin-top: 5px; }
.info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 32px; }
.info-card { background: #fff; border: 1px solid #d6e3e9; border-radius: 12px; padding: 26px; height: 100%; box-shadow: 0 8px 26px rgba(0, 56, 88, .06); }
.info-card h3 { margin: 0 0 12px; font-family: Outfit, sans-serif; font-size: 23px; color: #163b55; }
.info-card p { margin: 0; line-height: 1.65; color: #465b66; }
.site-facts { background: #f3f9fc; padding: 76px 0; }
.site-facts h2, .site-process h2 { font-family: Outfit, sans-serif; color: #163b55; margin-bottom: 16px; }
.site-facts .source-links { margin-top: 20px; }
.site-facts .source-links a { display: inline-block; margin: 0 18px 12px 0; text-decoration: underline; }
.site-process { padding: 76px 0; }
.site-process .eyebrow { color: #0072af; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.site-footer { background: #eaf4f8; padding: 38px 0; color: #24495c; }
.site-footer a { color: #005f93; text-decoration: underline; }
.site-footer p { margin: 8px 0; }
.site-footer nav { display: flex; flex-wrap: wrap; gap: 20px; margin: 15px 0; }
@media (max-width: 767px) { .info-grid { grid-template-columns: 1fr; } .site-facts, .site-process { padding: 50px 0; } }
