.consultation-dialog { border:1px solid var(--line); border-radius:28px; padding:32px; width:min(620px, calc(100% - 24px)); max-height:calc(100dvh - 24px); margin:auto; overflow:auto; background:var(--bg-elevated, #fff); color:var(--ink-1); box-shadow:0 24px 100px #0a123040; }
.consultation-dialog::backdrop { background:#0a123080; }
.consultation-dialog > .eyebrow { display:block; padding-right:42px; }
.consultation-dialog h2 { font:500 clamp(28px,5vw,40px)/1.1 var(--font-display); margin:12px 0; padding-right:20px; }
.consultation-dialog h2 em { color:var(--blue); }
.consultation-dialog p { line-height:1.5; }
.consultation-close { position:absolute; right:14px; top:10px; width:44px; height:44px; font-size:28px; border:0; background:transparent; color:inherit; cursor:pointer; }
.consultation-form { display:grid; gap:14px; margin-top:20px; }
.consultation-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.consultation-form label { display:grid; gap:6px; font-size:13px; }
.consultation-form input:not([type=checkbox]), .consultation-form select { width:100%; min-width:0; border:1px solid var(--line); border-radius:10px; padding:11px 12px; font:16px var(--font-body); background:var(--bg); color:var(--ink-1); }
.consultation-form .consultation-consent { display:flex; align-items:flex-start; gap:10px; }
.consultation-consent input { margin-top:3px; width:18px; height:18px; flex-shrink:0; }
.consultation-form small { color:var(--ink-3); line-height:1.5; }
.consultation-form a { color:var(--blue); text-decoration:underline; }
.consultation-form [hidden] { display:none; }
.consultation-status:empty { display:none; }
button:disabled { opacity:.65; cursor:wait; }
:focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
@media(max-width:480px) { .consultation-dialog { padding:28px 20px 22px; } .consultation-grid { grid-template-columns:1fr; } .consultation-form .btn { white-space:normal; } }
