@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&display=swap";:root{--ink:#173b3c;--muted:#3e5a57;--paper:#f7f5ef;--card:#fffdf8;--line:#dbe3dc;--coral:#e97058;--mint:#d8e9de;--blue:#2a7270}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}.shell{max-width:1040px;margin:auto;padding:26px 24px 80px;position:relative}.hero{padding:4px 0 8px}.eyebrow,.review-badge{font-family:DM Mono,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.hero h1{font-size:32px;line-height:1.2;letter-spacing:-.03em;margin:0;font-weight:600}.hero-lede{font-size:16px;line-height:1.5;max-width:62ch;color:var(--muted);margin:10px 0 22px}.progress-wrap{max-width:680px}.progress-meta{display:flex;justify-content:space-between;font:13px/1.3 DM Sans,sans-serif;color:var(--ink);margin-bottom:8px}.progress-track{height:6px;background:#e4e8e2;border-radius:99px;overflow:hidden}.progress-track div{height:100%;width:100%;transform:scaleX(0);transform-origin:left center;background:var(--ink);border-radius:99px;transition:transform .2s cubic-bezier(.16,1,.3,1)}.intro-card,.profile-card,.question-group,.review-card,.success-card{background:var(--card);border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:28px 30px}.intro-card{padding-top:22px}.intro-card h2,.section-heading h2,.review-card h2,.success-card h2{margin:0;font-size:20px;letter-spacing:-.03em}.intro-card p,.section-heading p,.review-card p,.success-card p{margin:7px 0 0;color:var(--muted);line-height:1.5}.section-heading{margin-bottom:20px}.section-heading.compact{margin-bottom:18px}.section-kicker{margin:0 0 4px;font:500 12px DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.profile-grid{display:grid;grid-template-columns:2fr 2fr 1fr 1.35fr;column-gap:14px;row-gap:7px}.profile-grid label{display:grid;grid-template-rows:subgrid;grid-row:span 2;font-size:12px;font-weight:600}.field-caption{align-self:end;line-height:1.3}.open-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.optional{font-weight:400;color:var(--muted);font-size:11px;margin-left:6px}.profile-grid input,.open-field textarea{border:1px solid var(--line);border-radius:9px;padding:12px;background:#fff;font:14px DM Sans;color:var(--ink);outline:none}.profile-grid input{height:44px}.profile-grid input:focus,.open-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a72701c}.questions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.question{border:1px solid var(--line);border-radius:13px;padding:17px 17px 14px;min-width:0}.question legend{padding:0;display:flex;gap:11px;line-height:1.42;font-size:14px;font-weight:600;width:100%}.question-number{font:500 12px DM Mono,monospace;color:var(--ink);background:#e7eeea;border-radius:6px;padding:4px 6px;height:fit-content;flex:none}.choice-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:16px}.choice{position:relative;cursor:pointer}.choice input,.topic-choice input{position:absolute;opacity:0}.choice-mark{display:block;text-align:center;border:1px solid var(--line);border-radius:8px;padding:8px 3px;font:500 14px DM Mono,monospace;background:#fff}.choice-label{display:block;color:var(--muted);font-size:9px;text-align:center;margin-top:5px;line-height:1.2;min-height:22px}.choice input:checked+.choice-mark{background:var(--ink);color:#fff;border-color:var(--ink)}.choice input:focus-visible+.choice-mark,.topic-choice input:focus-visible~span{outline:3px solid #8dc3bb}.statement-row{grid-template-columns:1fr;gap:8px}.statement-row .choice-mark{min-height:44px;display:flex;align-items:center;justify-content:flex-start;text-align:left;padding:10px 12px;font:500 14px DM Sans,sans-serif;line-height:1.35}.question:has(.statement-row){grid-column:1/-1}.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.topic-choice{position:relative;display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:9px;font-size:13px;cursor:pointer}.topic-number{font:500 12px DM Mono;color:var(--blue);width:20px}.topic-choice input:checked~span{color:var(--ink)}.topic-choice:has(input:checked){background:var(--mint);border-color:#a8cdb8}.field-hint{font:13px DM Sans,sans-serif;color:var(--muted);margin:14px 0 0}.open-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.open-field:last-child{grid-column:1/-1}.open-field textarea{resize:vertical;line-height:1.5}.review-card{display:flex;justify-content:space-between;align-items:center;background:var(--mint);border-color:#b9d5c2}.review-count{font:500 18px DM Sans,sans-serif;color:var(--blue)}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin:28px 0}.primary-button,.secondary-button{border:1px solid var(--ink);border-radius:999px;padding:14px 20px;background:var(--ink);color:#fff;font:600 14px DM Sans;cursor:pointer}.primary-button:disabled{opacity:.65;cursor:wait}.secondary-button{background:transparent;color:var(--ink)}.form-error{color:#b43f32;font-size:13px;margin:0}.success-card{text-align:center;padding:65px 24px}.success-mark{width:54px;height:54px;background:var(--mint);border-radius:50%;display:grid;place-items:center;font-size:28px;margin:0 auto 18px}.success-card p:not(.eyebrow){max-width:490px;margin:10px auto 22px}.success-card h2{font-size:32px}.success-card .eyebrow{margin:0}.success-card[hidden],.review-card[hidden]{display:none}@media(max-width:760px){.shell{padding:18px 14px 55px}.hero h1{font-size:28px}.intro-card,.profile-card,.question-group,.review-card,.success-card{padding:22px 17px}.profile-grid,.questions,.open-grid,.topic-grid{grid-template-columns:1fr}.form-actions{align-items:stretch;flex-direction:column-reverse}.primary-button{width:100%}.open-field:last-child{grid-column:auto}.choice-label{font-size:8px}.section-heading{gap:11px}}.scale-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scale-row .choice-mark{min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 10px;font:600 13px DM Sans,sans-serif;line-height:1.25}@media(max-width:760px){.scale-row{grid-template-columns:1fr}}
