.consult-shell{padding:150px 0 100px;min-height:100vh}.progress{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:45px 0 65px}.progress span{height:3px;background:var(--gray-300)}.progress span.active{background:var(--red)}
.step{display:none}.step.active{display:block}.step-count{font:12px var(--mono);color:var(--red);letter-spacing:.12em;text-transform:uppercase}.step h1{font:700 clamp(34px,5vw,62px)/1.02 var(--serif-display);max-width:850px;margin-top:22px}.step-lede{font-size:17px;line-height:1.7;color:var(--graphite);max-width:670px;margin-top:24px}
.choices{margin-top:48px;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--gray-300);border-left:1px solid var(--gray-300)}.choice{position:relative}.choice input{position:absolute;opacity:0}.choice label{display:block;min-height:92px;padding:27px;border-right:1px solid var(--gray-300);border-bottom:1px solid var(--gray-300);font:600 17px var(--serif-display);cursor:pointer;transition:.2s}.choice input:checked+label{background:var(--black);color:var(--white)}.choice label:hover{background:var(--white)}.choice input:checked+label:hover{background:var(--black)}
.field{margin-top:38px;max-width:760px}.field label{display:block;font:11px var(--mono);color:var(--red);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.field textarea,.field input,.field select{width:100%;border:1px solid var(--gray-300);background:var(--white);padding:17px;font:15px var(--sans);border-radius:0}.field textarea{min-height:150px;resize:vertical}.controls{display:flex;gap:12px;margin-top:52px}.controls button{border:0;cursor:pointer}.controls .back{background:transparent;color:var(--black);border:1px solid var(--gray-500)}
.summary{margin-top:45px;border:1px solid var(--gray-300);background:var(--white)}.summary-row{display:grid;grid-template-columns:220px 1fr;padding:20px 24px;border-bottom:1px solid var(--gray-100)}.summary-row:last-child{border:0}.summary-row b{font:11px var(--mono);color:var(--red);text-transform:uppercase}.summary-row span{font-size:14px;line-height:1.55}.privacy-note{margin-top:28px;font:12px/1.7 var(--mono);color:var(--gray-500);max-width:700px}.error{color:var(--red);font-size:13px;margin-top:18px;display:none}
@media(max-width:700px){.choices{grid-template-columns:1fr}.summary-row{grid-template-columns:1fr;gap:8px}.progress{margin-bottom:45px}.consult-shell{padding-top:120px}}
