/* Free consultation page */
.consultation { background: #f1f6fc; padding: 40px 20px 90px; color: #18283e; }
.consultation-intro { max-width: 860px; margin: 0 auto 36px; text-align: center; }
.consultation-intro > a, .consultation-intro > span { font-size: 14px; }
.consultation-eyebrow { color: #165bc2; font-size: 13px; font-weight: 700; letter-spacing: .15em; margin-top: 30px; }
.consultation-intro h1 { font-size: clamp(28px, 4vw, 48px); line-height: 1.5; margin: 12px 0 20px; }
.consultation-intro p { line-height: 1.9; }
.consultation-card { width: 100%; max-width: none; box-sizing: border-box; margin: auto; padding: clamp(24px, 5vw, 56px); background: #fff; border-radius: 20px; box-shadow: 0 12px 45px #132b4d0d; }
.consultation-card h2 { font-size: clamp(22px, 3vw, 30px); margin: 0 0 16px; padding: 0; border: 0; text-align: left; }
.consultation-card h2::before, .consultation-card h2::after { display: none; }
.consultation-form { display: flex; flex-direction: column; gap: 10px; }
.consultation-form > label { margin-top: 18px; font-weight: 700; }
.consultation-form label span { font-size: 12px; padding: 3px 8px; margin-left: 8px; background: #e8f1ff; color: #174b9e; border-radius: 4px; }
.consultation-form label .optional { background: #f0f2f5; color: #526171; }
.consultation-form input:not([type=checkbox]):not([type=hidden]), .consultation-form textarea { box-sizing: border-box; width: 100%; min-width: 0; font: inherit; font-size: 16px; padding: 14px; border: 1px solid #adbccc; border-radius: 8px; color: #18283e; background: #fff; }
.consultation-form textarea { resize: vertical; }
.consultation-form :focus-visible { outline: 3px solid #1674c9; outline-offset: 3px; }
.consultation-form small { color: #526171; }
.consultation-privacy { background: #f1f6fc; padding: 20px; margin-top: 22px; border-radius: 8px; font-size: 14px; }
.consultation-privacy p { margin: 8px 0 0; }
.consultation-form .consultation-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; }
.consultation-consent input { width: 20px; height: 20px; flex-shrink: 0; margin-top: 4px; }
.consultation-form button { width: 100%; border: 0; border-radius: 8px; background: #155ac0; color: #fff; padding: 19px 12px; margin-top: 22px; font: inherit; font-size: 18px; font-weight: 700; cursor: pointer; }
.consultation-form button:hover { background: #104794; }
.consultation-form button:disabled { background: #63758b; cursor: not-allowed; }
.consultation-notice { padding: 20px; border: 1px solid #a9cbe6; background: #edf7ff; border-radius: 8px; }
.consultation-errors { padding: 18px; color: #842322; border: 1px solid #c97b7b; background: #fff4f3; border-radius: 8px; }
.consultation-help { text-align: center; font-size: 14px; margin-top: 28px; overflow-wrap: anywhere; }
.consultation-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 599px) { .consultation-intro p br { display: none; } .consultation { padding-inline: 14px; } }