.consult-planner{background:radial-gradient(ellipse at 15% 10%,color-mix(in srgb,var(--blue) 8%,transparent),transparent 60%),var(--soft);position:relative;isolation:isolate}
.consult-planner>.container>.section-heading .kicker{color:#104fab}
[data-theme=dark] .consult-planner>.container>.section-heading .kicker{color:var(--blue)}
.consult-planner:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--line) 40%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 40%,transparent) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(transparent,#000,transparent)}
.consult-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:32px;align-items:start}
.consult-layout[hidden],.consult-fallback[hidden]{display:none}
.consult-controls{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.consult-controls fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}
.consult-controls legend{font-family:var(--display);font-size:1.05rem;font-weight:750;margin-bottom:14px;line-height:1.5}
.consult-controls legend>span{color:var(--blue);margin-right:10px;font-size:.8rem}
.consult-controls .field{margin-bottom:22px}.consult-controls .field label{line-height:1.5}
.consult-goals{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.consult-choice{display:flex;align-items:start;gap:9px;padding:15px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;transition:background .18s,border-color .18s}
.consult-choice input,.consult-support input{accent-color:var(--blue);width:18px;height:18px;flex:0 0 18px;margin:4px 0 0}
.consult-choice span{min-width:0}.consult-choice strong{display:block;font-size:.92rem;line-height:1.45}.consult-choice small{display:block;font-size:.8rem;line-height:1.5;margin-top:5px;color:var(--muted)}
.consult-choice:has(input:checked){background:color-mix(in srgb,var(--blue) 9%,var(--card));border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.consult-choice:hover,.consult-support:hover{background:color-mix(in srgb,var(--blue) 6%,var(--card));border-color:var(--blue)}
.consult-choice:has(input:focus-visible),.consult-support:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:3px}
.consult-supports{display:grid;gap:8px}.consult-support{display:flex;align-items:start;gap:12px;cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:10px 12px;min-height:46px;font-size:.9rem}
.consult-controls textarea,.consult-draft textarea{font:inherit;font-size:1rem;line-height:1.6;width:100%;resize:vertical;min-height:110px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:12px}
.consult-controls select{font-size:1rem;min-height:48px}.consult-controls small{display:block;margin-top:8px;line-height:1.6;color:var(--muted)}
.consult-controls label>span.small{display:inline}.consult-control-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.consult-reset{color:var(--blue);background:none;border:0;font:inherit;font-size:.85rem;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.consult-board{border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:var(--radius);padding:28px;background:var(--card);box-shadow:var(--shadow);scroll-margin-top:calc(var(--header-height,90px) + 20px);min-width:0}
.consult-board-head{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:18px;align-items:start}.consult-board-head h3{font-size:1.7rem;line-height:1.2;margin:10px 0}.consult-board-head p{font-size:.91rem;line-height:1.65;margin:0;color:var(--muted)}
.consult-board-head picture{height:126px;overflow:hidden;border-radius:12px}.consult-board-head img{height:100%;width:100%;object-fit:cover;object-position:25% center}
.consult-live{border-bottom:1px solid var(--line);padding:16px 0 14px;color:var(--blue);min-height:48px;margin:0 0 22px}
.consult-roadmap{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:18px}.consult-roadmap li{display:flex;align-items:start;gap:15px;position:relative}
.consult-roadmap li:not(:last-child):before{content:"";width:1px;background:var(--line);position:absolute;left:19px;top:38px;height:calc(100% - 20px)}
.consult-step{background:var(--soft);border:1px solid var(--line);width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center;color:var(--blue);font-size:.8rem;font-weight:700}
.consult-roadmap h4,.consult-deliverables h4{font-size:1rem;margin:0 0 5px}.consult-roadmap p{color:var(--muted);font-size:.87rem;line-height:1.65;margin:0}
.consult-deliverables{padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.consult-deliverables ul,.consult-prepare ul{padding-left:20px;font-size:.87rem;line-height:1.7;margin:12px 0}.consult-deliverables .small{margin:14px 0 0}
.consult-prepare,.consult-draft{margin:16px 0;font-size:.88rem}.consult-prepare summary,.consult-draft summary{cursor:pointer;min-height:44px;line-height:1.6;padding:10px 0;color:var(--ink);font-weight:650}
.consult-guide{display:inline-block;font-size:.9rem;min-height:44px;line-height:1.6;padding:10px 0}.consult-share{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.consult-share .btn{font-size:.85rem;min-height:46px}.consult-send-note{margin-bottom:0}.consult-boundary{max-width:100ch;margin:28px 0 0}.consult-draft textarea{min-height:240px}
@media(max-width:1000px){.consult-layout{grid-template-columns:1fr 1fr;gap:18px}.consult-controls,.consult-board{padding:22px}.consult-goals{grid-template-columns:1fr}.consult-board-head{grid-template-columns:1fr}.consult-board-head picture{display:none}}
@media(max-width:720px){.consult-layout{grid-template-columns:1fr;gap:24px}.consult-controls,.consult-board{padding:22px 18px}.consult-goals{grid-template-columns:1fr 1fr}.consult-board-head{grid-template-columns:minmax(0,1fr) 90px}.consult-board-head picture{display:block;height:115px}.consult-share .btn{flex:1 1 150px;text-align:center}.consult-board-head h3{font-size:1.45rem}}
@media(max-width:390px){.consult-goals{grid-template-columns:1fr}.consult-board-head{grid-template-columns:1fr}.consult-board-head picture{display:none}}
@media(prefers-reduced-motion:reduce){.consult-choice{transition:none}}
@media print{.consult-controls,.consult-share,.consult-prepare,.consult-draft,.consult-send-note,.consult-guide{display:none}.consult-layout{display:block}.consult-board{box-shadow:none;break-inside:avoid}.consult-board-head picture{display:none}}
