.project-flow{min-height:100vh;padding:calc(var(--nav-height,80px) + 3rem) 0 5rem;background:var(--bg-primary);color:var(--text-primary)}
.project-flow__intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:3rem;align-items:end;padding-bottom:2.5rem}
.project-flow__eyebrow{display:block;margin-bottom:.8rem;color:var(--color-primary);font-size:.75rem;font-weight:800;letter-spacing:.12em}
.project-flow__intro h1{max-width:850px;font:800 clamp(2rem,5vw,4rem)/1.02 var(--font-heading);letter-spacing:-.05em}
.project-flow__intro p{max-width:720px;margin-top:1rem;color:var(--text-secondary);font-size:1rem;line-height:1.7}
.project-flow__assurance{display:grid;gap:.65rem;padding:.25rem 0;background:transparent}
.project-flow__assurance span{display:flex;align-items:center;gap:.6rem;font-size:.875rem;font-weight:650}.project-flow__assurance span:before{content:'✓';display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 16%,transparent);color:var(--color-primary);font-size:.7rem}
.project-flow__workspace{display:grid;grid-template-columns:260px minmax(0,780px);gap:2rem;justify-content:center;align-items:start}
.project-progress{position:sticky;top:calc(var(--nav-height,80px) + 1.5rem);padding:1.25rem;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-surface)}
.project-progress__time{margin-bottom:1rem;color:var(--text-muted);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.project-progress ol{display:grid;gap:.5rem}.project-progress li{display:flex;gap:.75rem;align-items:center;padding:.75rem;border-radius:12px;color:var(--text-muted)}
.project-progress li>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border:1px solid var(--border-color);border-radius:50%;font-weight:800;font-size:.75rem}.project-progress li strong,.project-progress li small{display:block}.project-progress li strong{font-size:.85rem}.project-progress li small{margin-top:.1rem;font-size:.72rem}
.project-progress li.is-active{background:var(--bg-surface-alt);color:var(--text-primary)}.project-progress li.is-active>span,.project-progress li.is-complete>span{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.project-progress li.is-complete{color:var(--text-secondary)}
.project-progress__privacy{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.72rem;line-height:1.5}
.project-card{min-width:0;padding:clamp(1.25rem,4vw,2.5rem);border:1px solid var(--border-color);border-radius:20px;background:var(--bg-surface);box-shadow:var(--shadow-md)}
.project-card__topline{display:flex;justify-content:space-between;gap:1rem;color:var(--text-muted);font-size:.75rem;font-weight:700}.project-card__bar{height:5px;margin:.75rem 0 2rem;overflow:hidden;border-radius:99px;background:var(--bg-surface-alt)}.project-card__bar span{display:block;width:33.333%;height:100%;border-radius:inherit;background:var(--color-primary);transition:width .2s ease}
.project-step{min-width:0;border:0;padding:0;margin:0}.wizard-enhanced .project-step[hidden]{display:none}.project-step legend{font:800 clamp(1.55rem,3vw,2.15rem)/1.1 var(--font-heading);letter-spacing:-.035em}.project-step__lead{margin:.6rem 0 1.6rem;color:var(--text-secondary);line-height:1.6}
.project-goals{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.project-goal{position:relative;display:flex;gap:.85rem;min-height:110px;padding:1rem;border:1px solid var(--border-color);border-radius:14px;cursor:pointer;transition:border-color .15s,background .15s}.project-goal:hover{border-color:var(--color-primary)}.project-goal:has(input:checked){border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-surface))}.project-goal input{position:absolute;opacity:0}.project-goal__mark{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border:1px solid var(--border-color);border-radius:10px;color:var(--color-primary);font-weight:900}.project-goal strong,.project-goal small{display:block}.project-goal strong{font-size:.95rem;line-height:1.35}.project-goal small{margin-top:.35rem;color:var(--text-muted);font-size:.78rem;line-height:1.4}.project-goal:focus-within{outline:3px solid color-mix(in srgb,var(--color-primary) 28%,transparent);outline-offset:2px}
.project-field{margin-top:1.25rem}.project-field__label{display:block;margin-bottom:.5rem;font-size:.83rem;font-weight:750}.project-field__label small{color:var(--text-muted);font-weight:500}.project-field input,.project-field select,.project-field textarea,.project-optional textarea{width:100%;min-height:48px;padding:.75rem .9rem;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-primary);color:var(--text-primary);font:inherit}.project-field textarea,.project-optional textarea{resize:vertical}.project-field input:focus,.project-field select:focus,.project-field textarea:focus,.project-optional textarea:focus{outline:3px solid color-mix(in srgb,var(--color-primary) 24%,transparent);border-color:var(--color-primary)}
.project-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.project-choice-row label{position:relative}.project-choice-row input{position:absolute;opacity:0}.project-choice-row span{display:flex;min-height:52px;align-items:center;padding:.8rem;border:1px solid var(--border-color);border-radius:10px;cursor:pointer;font-size:.85rem;font-weight:650}.project-choice-row input:checked+span{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-surface))}.project-choice-row input:focus+span{outline:3px solid color-mix(in srgb,var(--color-primary) 24%,transparent)}
.project-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.project-contact-note{margin-top:.75rem;color:var(--text-muted);font-size:.76rem;line-height:1.5}.project-optional{margin-top:1.5rem;border-top:1px solid var(--border-color);padding-top:1rem}.project-optional summary{cursor:pointer;color:var(--color-primary);font-size:.85rem;font-weight:700}.project-optional textarea{margin-top:.75rem}
.project-feedback{margin-top:1rem;padding:.8rem 1rem;border:1px solid color-mix(in srgb,#ef4444 40%,var(--border-color));border-radius:10px;background:color-mix(in srgb,#ef4444 8%,var(--bg-surface));color:#ef4444;font-size:.85rem}.project-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:2rem}.project-actions .btn{min-height:48px;min-width:120px}
.project-success{text-align:center;padding:2rem 0}.project-success>span{display:grid;width:58px;height:58px;margin:0 auto 1rem;place-items:center;border-radius:50%;background:#16a34a;color:#fff;font-size:1.4rem}.project-success h2{font:800 2rem var(--font-heading)}.project-success p{max-width:520px;margin:.75rem auto 1.5rem;color:var(--text-secondary);line-height:1.65}
.project-noscript{margin-bottom:3rem;padding:1.25rem;border:1px solid var(--border-color);border-radius:14px;background:var(--bg-surface)}.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-info-link:hover{color:var(--color-primary)!important}
@media(max-width:900px){.project-flow__intro{grid-template-columns:1fr;gap:1.5rem}.project-flow__workspace{grid-template-columns:1fr}.project-progress{position:static}.project-progress ol{grid-template-columns:repeat(3,1fr)}.project-progress li{align-items:flex-start;padding:.7rem;gap:.55rem}.project-progress li div{display:block;min-width:0}.project-progress li strong{font-size:.78rem;line-height:1.25}.project-progress li small{font-size:.68rem;line-height:1.3}.project-progress__privacy{display:none}}
@media(max-width:600px){.project-flow{padding-top:calc(var(--nav-height,70px) + 1.5rem)}.project-flow__intro h1{font-size:2rem}.project-flow__assurance{display:none}.project-progress{padding:.75rem}.project-progress__time{margin-bottom:.65rem}.project-progress li{display:grid;grid-template-columns:26px 1fr}.project-progress li>span{width:26px;height:26px;flex-basis:26px}.project-card{padding:1.1rem;border-radius:14px}.project-goals,.project-choice-row,.project-contact-grid{grid-template-columns:1fr}.project-goal{min-height:88px}.project-actions{justify-content:stretch}.project-actions .btn{flex:1}}
@media(prefers-reduced-motion:reduce){.project-card__bar span,.project-goal{transition:none}}
.project-flow [hidden]{display:none!important}
.project-step legend:focus{outline:none}
@media(max-width:600px){.project-progress li{padding:.55rem .4rem;gap:.35rem;color:var(--text-secondary)}.project-progress li strong{font-size:.72rem}.project-progress li small{font-size:.62rem}}
