@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--ink:#222;--muted:#686868;--line:#e5e5e5;--green:#d71920;--mint:#fff0f0;--paper:#fafafa;--gold:#d71920}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}.page-shell{background:radial-gradient(ellipse at 78% 0%,#fff0f0 0%,transparent 36%),var(--paper);min-height:100vh}.topbar{border-bottom:1px solid #22222214;justify-content:space-between;align-items:center;max-width:1120px;height:78px;margin:auto;padding:0 28px;display:flex}.brand{color:var(--ink);letter-spacing:-1px;align-items:center;gap:10px;font:800 20px Manrope,sans-serif;text-decoration:none;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:9px;place-items:center;width:31px;height:31px;font:italic 700 24px Georgia;display:grid}.brand-dot{color:#d71920}.topbar-note,.eyebrow,.progress-meta,.diagnosis-label{letter-spacing:1.4px;color:var(--muted);font-size:10px;font-weight:700}.content-shell{max-width:850px;margin:0 auto;padding:0 24px}.intro{padding:55px 0 31px}.intro h1{letter-spacing:-2px;margin:13px 0;font:700 clamp(34px,5vw,48px)/1.1 Manrope,sans-serif}.intro h1 em{color:var(--green);font-style:normal}.intro p{color:var(--muted);max-width:520px;margin:0;line-height:1.6}.progress-wrap{margin:0 0 44px}.progress-meta{justify-content:space-between;margin-bottom:10px;font-size:9px;display:flex}.progress-track{background:#e5e5e5;border-radius:4px;height:4px}.progress-bar{background:var(--green);border-radius:4px;height:100%;transition:width .25s}.step-section{padding-bottom:64px}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:19px;display:flex}.section-heading h2,.contact-heading h2{letter-spacing:-.5px;margin:7px 0 0;font:700 21px/1.3 Manrope,sans-serif}.step-caption{color:var(--muted);white-space:nowrap;padding-bottom:4px;font-size:12px}.route-list{gap:10px;display:grid}.route-card{text-align:left;border:1px solid var(--line);width:100%;min-height:88px;color:var(--ink);cursor:pointer;background:#fff;border-radius:13px;align-items:center;gap:18px;padding:17px 20px;transition:all .18s;display:flex}.route-card:hover{border-color:#e28b8f;transform:translateY(-1px);box-shadow:0 7px 20px #d719200c}.route-number,.question-index{color:#8b8b8b;font:700 13px Manrope}.route-copy{flex:1;gap:5px;display:grid}.route-copy strong{font:700 14px Manrope}.route-copy>span{color:var(--muted);font-size:13px;line-height:1.45}.route-card svg{color:var(--green)}.question-stack{gap:15px;display:grid}.question-card{border:1px solid var(--line);background:#fff;border-radius:13px;margin:0;padding:20px}.question-card legend{align-items:flex-start;gap:12px;width:100%;padding:0;font:700 15px/1.4 Manrope;display:flex}.question-index{background:var(--mint);color:var(--green);border-radius:6px;flex:none;padding:4px 6px}.option-list{grid-template-columns:1fr 1fr;gap:8px;margin:17px 0 0 31px;display:grid}.answer-option{border:1px solid var(--line);color:#555;cursor:pointer;border-radius:9px;align-items:flex-start;gap:9px;padding:11px 12px;font-size:12px;line-height:1.45;display:flex}.answer-option.selected{color:var(--ink);background:#fff6f6;border-color:#d71920}.answer-option:has(input:checked){color:var(--ink);background:#fff6f6;border-color:#d71920}.answer-option input{accent-color:var(--green);flex:none;margin:2px 0 0}.button-row{justify-content:space-between;gap:12px;margin-top:8px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:45px;padding:0 17px;font:700 13px Manrope;display:inline-flex}.button:disabled{opacity:.5;cursor:not-allowed}.primary{background:var(--green);color:#fff}.primary:hover:not(:disabled){background:#b8141b}.secondary{color:var(--green);border-color:var(--line);background:#fff}.error-message{color:#a33838;margin:0;font-size:12px}.result-layout{gap:14px;display:grid}.diagnosis-card{color:#fff;background:#242424;border-radius:15px;padding:25px 27px}.diagnosis-label{color:#ffd0d0;align-items:center;gap:7px;display:flex}.diagnosis-card h2{letter-spacing:-.3px;margin:17px 0 11px;font:600 20px/1.45 Manrope}.diagnosis-card>p{color:#e0e0e0;margin:0;font-size:13px;line-height:1.65}.score-note{color:#d5d5d5;border-top:1px solid #ffffff28;justify-content:space-between;margin-top:18px;padding-top:13px;font-size:11px;display:flex}.contact-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:24px 27px}.contact-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.contact-heading h2{max-width:490px;font-size:19px}.contact-heading svg{color:var(--green);flex:none}.contact-intro{color:var(--muted);margin:8px 0 17px;font-size:12px}.contact-form{gap:15px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field{color:#555;gap:6px;font-size:11px;font-weight:700;display:grid}.field input{border:1px solid var(--line);border-radius:7px;outline:none;height:40px;padding:0 11px;font:13px DM Sans}.field input:focus{border-color:#d71920;box-shadow:0 0 0 3px #d7192012}.field.full{grid-column:1/-1}.consent{color:var(--muted);align-items:flex-start;gap:9px;font-size:11px;line-height:1.5;display:flex}.consent input{accent-color:var(--green);margin:2px 0 0}.submit-button{width:100%}.back-link{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:5px 0;font:600 12px DM Sans;display:flex}.state-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;margin:30px 0 70px;padding:38px}.state-card h2{margin:15px 0 8px;font:700 23px Manrope}.state-card p{color:var(--muted);max-width:460px;margin:0 auto 20px;font-size:13px;line-height:1.6}.state-icon{background:var(--mint);width:48px;height:48px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 17px;font:700 23px Manrope;display:grid}.error-state .state-icon{color:#a33838;background:#faeeee}.footer{border-top:1px solid var(--line);color:#777;justify-content:space-between;gap:12px;padding:18px 0 28px;font-size:10px;display:flex}.empty-state{text-align:center;color:var(--muted)}@media (max-width:650px){.topbar{height:65px;padding:0 18px}.content-shell{padding:0 18px}.intro{padding:38px 0 25px}.intro h1{font-size:36px}.progress-wrap{margin-bottom:34px}.section-heading{align-items:flex-start}.section-heading h2{font-size:18px}.route-card{gap:12px;padding:15px}.route-copy>span{font-size:12px}.option-list{grid-template-columns:1fr;margin-left:0}.question-card{padding:16px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-card,.diagnosis-card{padding:21px}.footer{flex-direction:column}.topbar-note{font-size:8px}.button-row .button{padding:0 11px;font-size:12px}}.admin-shell{background:var(--paper);min-height:100vh}.admin-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:70px;padding:0 max(24px,50% - 560px);display:flex}.admin-content{max-width:1100px;margin:55px auto;padding:0 24px}.admin-content h1{margin:10px 0;font:700 34px Manrope}.admin-subtitle{color:var(--muted);margin:0 0 28px;font-size:14px}.login-card{border:1px solid var(--line);background:#fff;border-radius:14px;gap:15px;max-width:420px;padding:26px;display:grid}.login-card h2{margin:0;font:700 20px Manrope}.admin-lock{color:var(--green)}.admin-tools{justify-content:space-between;align-items:center;gap:15px;margin:20px 0;display:flex}.record-count{display:grid}.record-count strong{font:700 27px Manrope}.record-count span,.pager{color:var(--muted);font-size:12px}.admin-actions{flex-wrap:wrap;gap:8px;display:flex}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:auto}.table-wrap table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}.table-wrap th,.table-wrap td{text-align:left;border-bottom:1px solid var(--line);padding:12px 14px}.table-wrap th{letter-spacing:.5px;text-transform:uppercase;color:var(--muted);background:#f7f9f7;font-size:10px}.table-wrap td a{color:var(--green)}.pager{justify-content:space-between;align-items:center;margin:14px 0;display:flex}.pager .button{min-height:36px}@media (max-width:650px){.admin-content{margin:35px auto;padding:0 16px}.admin-content h1{font-size:28px}.admin-header{padding:0 16px}.admin-tools{flex-direction:column;align-items:flex-start}.admin-actions{width:100%}.admin-actions .button{padding:0 10px;font-size:11px}}.field-error{color:#a33838;font-size:11px;font-weight:500}.field input[aria-invalid=true]{border-color:#bf6464;box-shadow:0 0 0 3px #a3383810}.saved-notice{color:var(--green);align-items:flex-start;gap:14px;display:flex}.saved-notice h2{color:var(--ink);margin:0 0 5px;font:700 17px Manrope}.saved-notice p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.privacy-link{color:var(--green);text-underline-offset:2px;font-weight:700}.privacy-link:hover{color:#a50f16}.brand-mark,.progress-bar,.primary{background:var(--green)}.diagnosis-card{background:#242424}.consulting-cta{border:1px solid var(--line);border-left:4px solid var(--green);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;padding:22px 25px;display:flex}.consulting-cta h2{margin:7px 0;font:700 18px Manrope}.consulting-cta p{color:var(--muted);max-width:510px;margin:0;font-size:12px;line-height:1.6}.consulting-cta .button{flex:none}@media (max-width:650px){.consulting-cta{flex-direction:column;align-items:stretch;padding:20px}.consulting-cta .button{width:100%}}.field select,.field .role-other{border:1px solid var(--line);height:40px;color:var(--ink);background:#fff;border-radius:7px;outline:none;padding:0 11px;font:13px DM Sans}.field select:focus,.field .role-other:focus{border-color:var(--green);box-shadow:0 0 0 3px #d7192012}.field select[aria-invalid=true],.field .role-other[aria-invalid=true]{border-color:#bf6464}
