/* Direct, light consultation surface: full available desktop width. */
body[data-current="contact"] .consultation-section { padding:32px 0 64px; background:#f1f6f8; }
body[data-current="contact"] .consultation-section::before { display:none; }
body[data-current="contact"] .consultation-direct { display:block; width:calc(100% - clamp(48px,6vw,144px)); max-width:none; margin:0 auto; border:0; background:none; box-shadow:none; opacity:1; transform:none; }
.consultation-direct .consultation-form { position:relative; padding:0; background:#fff; border:1px solid #d8e4e9; border-radius:6px; box-shadow:0 16px 44px #07253b09; overflow:hidden; }
.consultation-form::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,#078b93,#69bec0 48%,#d5b66f); }
.consultation-form-top { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.62fr); gap:clamp(28px,4vw,64px); align-items:center; padding:30px clamp(26px,3vw,52px); background:linear-gradient(115deg,#f8fbfc,#eef6f6); border-bottom:1px solid #d8e4e9; }
.consultation-form-title .eyebrow { margin:0 0 12px; font-size:.75rem; color:#087d87; }
.consultation-form-title h1 { max-width:850px; margin:0; font-size:clamp(1.55rem,2.05vw,2.3rem); line-height:1.22; letter-spacing:-.035em; font-weight:750; }
.consultation-direct .form-progress { grid-template-columns:1fr 36px 1fr; gap:16px; margin:0; padding:0; border:0; }
.consultation-direct .form-progress > span { grid-template-columns:42px auto; gap:10px; }
.consultation-direct .form-progress b { width:42px; height:42px; border-radius:4px; font-size:1rem; }
.consultation-direct .form-progress small { font-size:.875rem; letter-spacing:0; }
.consultation-direct .form-progress > span.is-active b { color:#fff; border-color:#087d87; background:#087d87; box-shadow:0 5px 12px #087d871a; }
.consultation-direct .form-progress > span.is-complete b { background:#e2f1ed; border-color:#a6d0c3; color:#116950; box-shadow:none; }
.consultation-direct .form-step { padding:28px clamp(26px,3vw,52px) 32px; }
.consultation-direct .form-step-heading { margin-bottom:24px; scroll-margin-top:120px; }
.consultation-direct .form-step-heading > span { font-size:.75rem; }
.consultation-direct .form-step-heading h2 { margin:6px 0 8px; font-size:clamp(1.4rem,1.8vw,1.85rem); line-height:1.25; letter-spacing:-.03em; }
.consultation-direct .form-step-heading p { font-size:1rem; }
.consultation-direct .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 28px; }
.consultation-direct .field > span { font-size:.875rem; letter-spacing:0; }
.consultation-direct .field input,.consultation-direct .field textarea { min-height:58px; border-radius:4px; background:#f9fbfc; font-size:1rem; border-color:#bacdd5; }
.consultation-direct .field input:hover,.consultation-direct .field textarea:hover { border-color:#7b9ea9; }
.consultation-direct .field input:focus,.consultation-direct .field textarea:focus { border-color:#087d87; box-shadow:0 0 0 3px #087d8720; background:#fff; }
.consultation-direct .form-step-actions { margin-top:28px; padding-top:24px; border-top:1px solid #e0e9ed; }
.consultation-direct .form-step-actions p { max-width:360px; font-size:.875rem; }
.consultation-direct .btn { border-radius:4px; }
.consultation-direct .btn small { font-size:.875rem; }
.consultation-direct .form-block legend { font-size:1rem; }
.consultation-direct .field-hint,.consultation-direct .form-block legend small { font-size:.875rem; }
.consultation-direct .topic-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.consultation-direct .topic-option:last-child { grid-column:auto; }
.consultation-direct .topic-option > span { height:100%; min-height:110px; padding:22px 44px 22px 18px; border-radius:4px; grid-template-columns:24px 1fr; }
.consultation-direct .topic-option b { font-size:.75rem; }
.consultation-direct .topic-option strong { font-size:1rem; line-height:1.35; overflow-wrap:normal; hyphens:none; }
.consultation-direct .topic-option small { font-size:.875rem; line-height:1.5; }
.consultation-direct .topic-option input:checked + span { background:#eef8f7; box-shadow:inset 3px 0 #087d87; transform:none; }
.consultation-direct .topic-option > span::after { border-radius:3px; }
.consultation-direct .time-grid { gap:14px; }
.consultation-direct .time-grid span { min-height:80px; padding:14px; border-radius:4px; }
.consultation-direct .time-grid strong { font-size:1rem; }
.consultation-direct .time-grid small { font-size:.875rem; }
.consultation-direct .time-grid input:checked + span { background:#eaf5f3; border-color:#087d87; color:#07253b; transform:none; box-shadow:inset 0 -3px #087d87; }
.consultation-direct .time-grid input:checked + span small { color:#416674; }
.consultation-direct .consent { font-size:.875rem; }
.consultation-direct .form-back { font-size:.875rem; }
.consultation-direct .form-error { font-size:.875rem; }
.consultation-reassurance { display:grid; grid-template-columns:1fr 1fr 1.15fr 1.25fr; gap:20px; align-items:center; padding:28px 0 0; }
.consultation-reassurance > div { display:flex; align-items:center; gap:12px; }
.consultation-check { display:grid; place-items:center; width:32px; height:32px; flex-shrink:0; border:1px solid #b9d5d5; border-radius:50%; color:#087d87; background:#e6f2f2; font-weight:750; }
.consultation-reassurance p { margin:0; }
.consultation-reassurance p strong,.consultation-reassurance p span { display:block; }
.consultation-reassurance p strong { font-size:.9375rem; color:#07253b; }
.consultation-reassurance p span { margin-top:3px; color:#486171; font-size:.875rem; }
.consultation-direct-phone { display:block; padding-left:26px; border-left:1px solid #cbdce2; text-decoration:none; }
.consultation-direct-phone > span { display:block; color:#486171; font-size:.875rem; }
.consultation-direct-phone strong { display:block; margin-top:4px; color:#087d87; font-size:clamp(1rem,1.5vw,1.4rem); }
.consultation-direct-phone b { margin-left:12px; }
.consultation-direct-phone:hover strong { color:#07253b; }
.consultation-direct-phone:focus-visible { outline:2px solid #087d87; outline-offset:5px; }
@media(min-width:1400px){.consultation-direct .topic-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.consultation-direct .topic-option > span{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;min-height:165px;padding:22px}.consultation-direct .topic-option small{margin:0}}
@media(max-width:1050px){
 .consultation-form-top { grid-template-columns:1fr; gap:24px; }
 .consultation-direct .form-progress { max-width:480px; }
 .consultation-reassurance { grid-template-columns:1fr 1fr; gap:24px; }
 .consultation-direct .topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .consultation-direct .topic-option:last-child { grid-column:1/-1; }
}
@media(max-width:600px){
 body[data-current="contact"] .consultation-section { padding:16px 0 32px; }
 body[data-current="contact"] .consultation-direct { width:calc(100% - 24px); }
 .consultation-form-top { padding:22px 18px; gap:22px; }
 .consultation-form-title .eyebrow { font-size:.6875rem; margin-bottom:10px; padding-left:0; letter-spacing:.05em; }
 .consultation-form-title .eyebrow::before { display:none; }
 .consultation-form-title h1 { font-size:1.4rem; line-height:1.25; }
 .consultation-direct .form-progress { gap:10px; grid-template-columns:1fr 16px 1fr; }
 .consultation-direct .form-progress > span { grid-template-columns:30px auto; gap:7px; }
 .consultation-direct .form-progress b { width:30px; height:30px; font-size:.875rem; }
 .consultation-direct .form-progress small { font-size:.75rem; }
 .consultation-direct .form-step { padding:22px 18px 24px; }
 .consultation-direct .form-step-heading { margin-bottom:22px; scroll-margin-top:88px; }
 .consultation-direct .form-step-heading h2 { font-size:1.3rem; }
 .consultation-direct .form-step-heading p { font-size:.9375rem; }
 .consultation-direct .form-grid { grid-template-columns:1fr; gap:18px; }
 .consultation-direct .form-step-actions { gap:14px; margin-top:24px; padding-top:22px; }
 .consultation-direct .form-step-actions p { font-size:.8125rem; text-align:left; }
 .consultation-direct .btn { width:100%; min-width:0; padding:15px 14px; font-size:.875rem; }
 .consultation-direct .btn small { font-size:.75rem; }
 .consultation-direct .btn-arrow { width:32px; height:32px; }
 .consultation-direct .topic-grid { grid-template-columns:1fr; gap:10px; }
 .consultation-direct .topic-option:last-child { grid-column:auto; }
 .consultation-direct .topic-option > span { min-height:100px; padding:18px 42px 18px 12px; column-gap:8px; }
 .consultation-direct .topic-option strong { font-size:.9375rem; }
 .consultation-direct .time-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .consultation-direct .time-grid span { padding:12px 8px; }
 .consultation-direct .time-grid strong { font-size:.875rem; }
 .consultation-direct .time-grid small { font-size:.8125rem; }
 .consultation-direct .consent { font-size:.8125rem; }
 .consultation-direct .form-submit-row { flex-direction:column-reverse; align-items:stretch; }
 .consultation-direct .form-back { width:fit-content; align-self:center; }
 .consultation-reassurance { grid-template-columns:1fr; padding:24px 10px 0; gap:18px; }
 .consultation-direct-phone { border-left:0; border-top:1px solid #cbdce2; padding:20px 0 0; margin-top:2px; }
 .consultation-direct-phone strong { font-size:1.25rem; }
}
@media(prefers-reduced-motion:reduce){.consultation-direct .form-step{animation:none}}

/* v99 — direct contact, clear progress and a calm, light form. */
body[data-current="contact"] .consultation-section {background:linear-gradient(130deg,#edf5f6,#f7fafb);padding-block:32px 48px}
.consultation-direct .consultation-form {border-color:#c9dde2;border-radius:3px;box-shadow:0 18px 48px #0634480b}
.consultation-form-top {padding-block:28px;background:linear-gradient(110deg,#fff,#eef6f7)}
.consultation-form-title .eyebrow {font-size:.875rem;line-height:1.6;letter-spacing:.035em}
.consultation-form-title h1 {font-size:clamp(1.55rem,2.1vw,2.2rem);font-weight:700;line-height:1.25;max-width:840px}
.consultation-direct .form-progress {grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:12px}
.consultation-direct .form-progress>span {padding:12px;background:#fff;border:1px solid #ccdfe3;color:#476171;grid-template-columns:36px minmax(0,1fr);gap:10px;min-height:66px}
.consultation-direct .form-progress>span.is-active {background:#eaf5f5;border-color:#81b7bf;color:#073347}
.consultation-direct .form-progress>span.is-complete {background:#f5f9f8;border-color:#c4dbd5}
.consultation-direct .form-progress b {width:36px;height:36px;border-radius:2px}
.consultation-direct .form-progress small {font-size:.875rem;line-height:1.5}
.consultation-direct .form-step-heading>span {font-size:.875rem;letter-spacing:.04em}
.consultation-direct .form-step-heading h2 {font-weight:700;font-size:clamp(1.4rem,1.85vw,1.9rem)}
.consultation-direct .form-step-heading p {font-size:1rem;line-height:1.7}
.consultation-direct .field>span {color:#25495b;font-weight:650}
.consultation-direct .field input,.consultation-direct .field textarea {border-radius:2px;background:#fbfdfe;border-color:#b7cfd7;transition:border-color .15s,box-shadow .15s}
.consultation-direct .field input:focus,.consultation-direct .field textarea:focus {outline:none;box-shadow:0 0 0 3px #0b859322;border-color:#087d88}
.consultation-direct .field input:user-invalid {border-color:#b42318;background:#fff9f8}
.consultation-direct .btn {font-size:1rem;text-align:left;border-radius:2px}
.consultation-direct .btn small {font-size:.875rem;line-height:1.6}
.consultation-direct .topic-grid {grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.consultation-direct .topic-option {grid-column:span 2}
.consultation-direct .topic-option:nth-last-child(-n+2) {grid-column:span 3}
.consultation-direct .topic-option>span {display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:12px;row-gap:6px;align-content:center;min-height:126px;padding:24px 48px 24px 20px;background:#fbfdfe;border-color:#c5dbe1;border-radius:2px}
.consultation-direct .topic-option b {font-size:.875rem;grid-row:1/3;align-self:start;line-height:1.6;letter-spacing:0}
.consultation-direct .topic-option strong {font-size:1rem;line-height:1.4}
.consultation-direct .topic-option small {font-size:.875rem;line-height:1.6;margin:0}
.consultation-direct .topic-option:hover>span {border-color:#6ca9b3}
.consultation-direct .topic-option input:checked+span {background:#edf7f6;border-color:#087d88;box-shadow:inset 3px 0 #087d88}
.consultation-direct .topic-option>span::after {top:24px;right:18px}
.consultation-direct .topic-option input:focus-visible+span,.consultation-direct .time-grid input:focus-visible+span {outline:3px solid #087d88;outline-offset:3px}
.consultation-direct .time-grid span {min-height:88px;background:#fbfdfe;border-color:#c5dbe1;border-radius:2px}
.consultation-direct .time-grid strong {font-size:1rem;line-height:1.4}
.consultation-direct .time-grid small {font-size:.875rem;line-height:1.6}
.consultation-direct .consent {padding:20px;background:#f4f8f9;border:1px solid #d2e2e6;font-size:.875rem;line-height:1.75;border-radius:2px}
.consultation-direct .form-back {min-height:44px;padding:10px 0;font-size:.875rem}
.consultation-direct .form-submit-row {gap:24px}
.consultation-direct .form-step-actions p {font-size:.875rem;line-height:1.7}
.consultation-reassurance {gap:14px;align-items:stretch;padding-top:24px}
.consultation-reassurance>div,.consultation-direct-phone {padding:20px;background:#fff;border:1px solid #cddfe4;min-width:0;box-shadow:0 8px 24px #05364b04}
.consultation-reassurance>div {gap:14px;align-items:flex-start}
.consultation-check {border-radius:2px;width:30px;height:30px}
.consultation-reassurance p strong {font-size:1rem;line-height:1.5}
.consultation-reassurance p span {font-size:.875rem;line-height:1.65}
.consultation-direct-phone {border-top:2px solid #bba15f;display:flex;flex-direction:column;justify-content:center}
.consultation-direct-phone strong {font-size:clamp(1rem,1.4vw,1.25rem);white-space:nowrap}
.consultation-direct-phone b {margin-left:6px}
@media(max-width:1200px){
 .consultation-form-top {grid-template-columns:1fr;gap:22px}
 .consultation-direct .form-progress {max-width:560px}
 .consultation-reassurance {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1050px){
 .consultation-direct .topic-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .consultation-direct .topic-option,.consultation-direct .topic-option:nth-last-child(-n+2) {grid-column:auto}
 .consultation-direct .topic-option:last-child {grid-column:1/-1}
}
@media(min-width:1700px){
 .consultation-direct .topic-grid {grid-template-columns:repeat(5,minmax(0,1fr))}
 .consultation-direct .topic-option,.consultation-direct .topic-option:nth-last-child(-n+2) {grid-column:auto}
 .consultation-direct .topic-option>span {grid-template-columns:1fr;min-height:168px;padding:24px}
 .consultation-direct .topic-option b {grid-row:auto}
}
@media(max-width:600px){
 body[data-current="contact"] .consultation-section {padding-block:16px 32px}
 .consultation-form-top {padding:20px 18px;gap:18px}
 .consultation-form-title .eyebrow {font-size:.875rem}
 .consultation-form-title h1 {font-size:1.35rem;line-height:1.3}
 .consultation-direct .form-progress {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
 .consultation-direct .form-progress i {display:none}
 .consultation-direct .form-progress>span {padding:9px 8px;grid-template-columns:24px minmax(0,1fr);gap:6px;min-height:54px}
 .consultation-direct .form-progress b {width:24px;height:28px;font-size:.875rem}
 .consultation-direct .form-progress small {font-size:.8125rem;line-height:1.5}
 .consultation-direct .form-step-heading h2 {font-size:1.35rem}
 .consultation-direct .form-grid {gap:18px}
 .consultation-direct .btn {font-size:.875rem;padding:16px 14px}
 .consultation-direct .topic-grid {grid-template-columns:1fr;gap:12px}
 .consultation-direct .topic-option,.consultation-direct .topic-option:nth-last-child(-n+2),.consultation-direct .topic-option:last-child {grid-column:1}
 .consultation-direct .topic-option>span {padding:20px 40px 20px 14px;grid-template-columns:22px minmax(0,1fr);column-gap:8px;min-height:116px}
 .consultation-direct .topic-option>span::after {right:12px;top:20px;width:18px;height:18px}
 .consultation-direct .topic-option strong {font-size:.9375rem}
 .consultation-direct .time-grid span {padding:14px 8px}
 .consultation-direct .time-grid strong {font-size:.875rem}
 .consultation-direct .consent {padding:16px;font-size:.875rem}
 .consultation-reassurance {grid-template-columns:1fr;padding:22px 0 0;gap:10px}
 .consultation-reassurance>div,.consultation-direct-phone {padding:18px}
 .consultation-direct-phone {margin:0}
 .consultation-direct-phone strong {font-size:1.25rem}
}
@media(prefers-reduced-motion:reduce){.consultation-direct input,.consultation-direct textarea{transition:none}}
