:root{--ink:#1a1d21;--muted:#5b6470;--bg:#ffffff;--bg-soft:#f4f6f8;--accent:#1f6f5c;--accent-ink:#ffffff;--border:#dde3e9;--danger:#b3261e;--radius:12px;--maxw:880px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;color:var(--ink);background:var(--bg);font:16px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}h1{font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.2}h1,h2{margin:0 0 .6em}h2{font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.3}h3{font-size:1.1rem;margin:0 0 .4em}p{margin:0 0 1em}a{color:var(--accent)}.btn,button{display:inline-block;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:var(--radius);background:var(--accent);color:var(--accent-ink);font:inherit;font-weight:600;padding:.75rem 1.5rem;cursor:pointer;text-decoration:none;text-align:center}button:disabled{opacity:.6;cursor:default}.btn-secondary,button.back{background:transparent;color:var(--muted);border:1px solid var(--border)}input,select,textarea{width:100%;font:inherit;color:var(--ink);padding:.65rem .8rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);margin-top:.3rem}label{display:block;margin-bottom:1rem;font-weight:600}label span.hint{display:block;font-weight:400;color:var(--muted);font-size:.9rem}.error{color:var(--danger)}.landing section{padding:3.5rem 1.25rem}.landing section>div{max-width:var(--maxw);margin:0 auto}.landing section.alt{background:var(--bg-soft)}.hero{text-align:center;padding-top:5rem}.hero p.sub{font-size:1.15rem;color:var(--muted);max-width:640px;margin:0 auto 2rem}.frame-phrase{font-size:1.15rem;font-style:italic;border-left:4px solid var(--accent);padding-left:1rem}.cards{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:1.5rem}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card h3{color:var(--accent)}.quote{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}.quote cite{display:block;margin-top:.75rem;font-style:normal;font-weight:600}.steps{padding-left:1.2rem}.steps li{margin-bottom:.5rem}.cta-final{text-align:center}details{border-bottom:1px solid var(--border);padding:.75rem 0}details summary{cursor:pointer;font-weight:600}details p{margin-top:.75rem;color:var(--muted)}.narrow,.survey,.wizard{max-width:560px;margin:0 auto;padding:2.5rem 1.25rem 4rem}.progress{height:6px;background:var(--bg-soft);border-radius:3px;overflow:hidden;margin-bottom:1.5rem}.progress div{height:100%;background:var(--accent);transition:width .25s}.counter{color:var(--muted);font-size:.9rem}.wizard-nav{display:flex;gap:.75rem;margin-top:1.5rem}.choice-grid{display:grid;grid-gap:.5rem;gap:.5rem;margin-bottom:1rem}.choice-grid button{background:var(--bg);color:var(--ink);border:1px solid var(--border);font-weight:400;text-align:left}.choice-grid button.selected{border-color:var(--accent);background:#eaf3f0;font-weight:600}.scale{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:.5rem;gap:.5rem;margin:1.25rem 0 .5rem}.scale button{background:var(--bg);color:var(--ink);border:1px solid var(--border);padding:.9rem 0;font-weight:600}.scale button.selected{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem}.survey button.back{margin-top:1.5rem}.project-card{border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}.project-card .status{font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.copy-link{display:flex;gap:.5rem;margin-top:.75rem}.copy-link input{flex:1 1}