:root{--ink:#0a0a0a;--paper:#fff;--muted:#5b5b5b;--line:#e6e6e6;--soft:#f5f5f4;--red:#e10600;--red-hot:#ff2a1f}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}body{flex-direction:column;min-height:100vh;margin:0;font-family:Archivo,ui-sans-serif,system-ui,sans-serif;font-size:17px;line-height:1.5;display:flex}::selection{background:var(--red);color:#fff}.red{color:var(--red)}.top{justify-content:space-between;align-items:center;padding:20px clamp(16px,4vw,40px);display:flex}.logo{color:var(--ink);display:inline-flex}.logo-mark{height:16px;display:inline-block}.logo-mark svg{width:auto;height:100%;display:block}.top-note{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:600}.progress{background:var(--line);height:3px}.progress-fill{background:var(--red);width:0;height:100%;transition:width .35s}.on-results .progress{visibility:hidden}main{flex:1;width:100%;max-width:860px;margin:0 auto;padding:clamp(32px,7vw,88px) clamp(16px,4vw,40px) 64px}.screen{display:none}.screen.is-active{animation:.35s both rise;display:block}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.screen.is-active{animation:none}}.kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 18px;font-size:13px;font-weight:700}.mega{letter-spacing:-.04em;text-transform:uppercase;margin:0;font-size:clamp(52px,11vw,120px);font-weight:900;font-stretch:112%;line-height:.9}.q{letter-spacing:-.03em;margin:0;font-size:clamp(28px,5vw,46px);font-weight:800;font-stretch:105%;line-height:1.05}.lede{color:#2b2b2b;max-width:40em;margin:24px 0 0;font-size:clamp(18px,2.2vw,21px)}.lede.small{color:var(--muted);font-size:17px}.chips{flex-wrap:wrap;gap:8px;margin:28px 0 36px;padding:0;list-style:none;display:flex}.chips li{border:1.5px solid var(--ink);text-transform:uppercase;letter-spacing:.06em;padding:6px 12px;font-size:14px;font-weight:700}.btn{cursor:pointer;background:var(--ink);color:#fff;font:inherit;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));border:0;align-items:center;gap:12px;padding:18px 28px;font-size:17px;font-weight:800;text-decoration:none;transition:background .15s;display:inline-flex}.btn:hover,.btn:focus-visible{background:var(--red)}.btn:disabled{opacity:.6;cursor:wait}.btn-invert{background:var(--red)}.btn-invert:hover,.btn-invert:focus-visible{color:var(--ink);background:#fff}.bands{border-top:1.5px solid var(--ink);grid-template-columns:repeat(4,1fr);gap:0;margin:56px 0 0;padding:0;list-style:none;display:grid}.bands li{flex-direction:column;padding:12px 12px 0 0;display:flex}.band-range{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.band-name{text-transform:uppercase;letter-spacing:.02em;font-size:15px;font-weight:800}@media (width<=520px){.bands{grid-template-columns:repeat(2,1fr)}}.answers{gap:10px;margin-top:32px;display:grid}.answer{text-align:left;cursor:pointer;background:var(--paper);width:100%;color:var(--ink);border:1.5px solid var(--line);font:inherit;align-items:center;gap:16px;padding:18px 20px;font-size:18px;font-weight:500;transition:border-color .12s,background .12s;display:flex}.answer:hover{border-color:var(--ink)}.answer:focus-visible{outline:3px solid var(--red);outline-offset:2px}.answer[aria-checked=true]{border-color:var(--ink);background:var(--ink);color:#fff}.answer-key{opacity:.55;border:1.5px solid;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.back{cursor:pointer;font:inherit;color:var(--muted);background:0 0;border:0;margin-top:28px;padding:4px 0;font-size:15px}.back:hover{color:var(--ink)}.form{gap:16px;max-width:520px;margin-top:32px;display:grid}.form label{gap:6px;font-size:14px;font-weight:700;display:grid}.form input{font:inherit;border:1.5px solid var(--line);color:var(--ink);background:#fff;border-radius:0;padding:14px 16px;font-size:17px;font-weight:400}.form input:focus{border-color:var(--ink);outline:none}.opt{color:var(--muted);font-weight:400}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-error{min-height:1em;color:var(--red);margin:0;font-size:15px;font-weight:600}.form .btn{justify-self:start}.fine{color:var(--muted);margin:4px 0 0;font-size:13px}.fine a{color:inherit}.score-row{flex-wrap:wrap;align-items:flex-end;gap:20px;display:flex}.score{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(110px,22vw,220px);font-weight:900;font-stretch:115%;line-height:.82}.score .of{letter-spacing:0;color:var(--muted);margin-left:6px;font-size:.22em}.band-tag{background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;padding:8px 14px;font-size:20px;font-weight:900}.meter{border-top:6px solid var(--ink);margin:32px 0 40px;display:flex;position:relative}.meter span{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-left:1.5px solid var(--line);padding-top:8px;padding-left:6px;font-size:12px;font-weight:700}.meter span:first-child{border-left:0;padding-left:0}.meter i{background:var(--red);width:4px;height:20px;transition:left 1.1s cubic-bezier(.2,.8,.2,1);position:absolute;top:-13px;left:0;transform:translate(-50%)}@media (width<=520px){.meter span{font-size:10px}}.section-label{letter-spacing:.12em;text-transform:uppercase;margin:56px 0 18px;font-size:13px;font-weight:800}.cats{gap:26px;display:grid}.cat-head{text-transform:uppercase;letter-spacing:.01em;justify-content:space-between;align-items:baseline;font-size:20px;font-weight:800;display:flex}.cat-score{font-variant-numeric:tabular-nums}.bar{background:var(--soft);height:10px;margin-top:8px}.bar i{background:var(--ink);width:0;height:100%;transition:width 1s cubic-bezier(.2,.8,.2,1);display:block}.cat.is-weakest .bar i{background:var(--red)}.cat.is-weakest .cat-name:after{content:"  · biggest gap";color:var(--red);letter-spacing:.08em;font-size:13px}.cat-text{color:#2b2b2b;max-width:42em;margin:10px 0 0}.fix{border-left:6px solid var(--red);margin-top:48px;padding:4px 0 4px 22px}.fix .kicker{margin-bottom:10px}.fix-text{letter-spacing:-.01em;margin:0;font-size:clamp(20px,2.6vw,26px);font-weight:700;line-height:1.25}.moves{counter-reset:m;gap:12px;margin:0;padding:0;list-style:none;display:grid}.moves li{counter-increment:m;border-top:1.5px solid var(--line);gap:16px;padding:16px 0;font-size:18px;display:flex}.moves li:before{content:"0" counter(m);color:var(--red);font-weight:900}.cta{background:var(--ink);color:#fff;margin-top:64px;padding:clamp(28px,5vw,56px)}.kicker.light,.fine.light{color:#a3a3a3}.cta-title{letter-spacing:-.035em;text-transform:uppercase;margin:0;font-size:clamp(32px,5.5vw,56px);font-weight:900;font-stretch:110%;line-height:.98}.cta-text{color:#e5e5e5;max-width:36em;margin:18px 0 0;font-size:18px}.cta .btn{margin-top:28px}.cta .fine{margin-top:16px}.foot{color:var(--muted);border-top:1px solid var(--line);padding:28px clamp(16px,4vw,40px);font-size:13px}.report{border:1.5px solid var(--ink);box-shadow:10px 10px 0 var(--soft);background:#fff}.report-head{background:var(--ink);color:#fff;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.report-kicker{letter-spacing:.12em;text-transform:uppercase;color:#a3a3a3;margin:0;font-size:12px;font-weight:700}.report-title{letter-spacing:-.02em;margin:4px 0 0;font-size:24px;font-weight:900}.report-tag{border:1.5px solid var(--red);color:var(--red);letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;font-size:12px;font-weight:800;transform:rotate(-4deg)}.report-grid{grid-template-columns:1fr 1fr;display:grid}.report-block{border-top:1.5px solid var(--line);padding:20px 22px}.report-block:nth-child(odd):not(.wide){border-right:1.5px solid var(--line)}.report-block.wide{grid-column:1/-1}.report-label{letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:800}.report-note{letter-spacing:.04em;text-transform:none;color:var(--muted);margin-left:6px;font-weight:600}.rp-cats{gap:8px;display:grid}.rp-cat{grid-template-columns:70px 1fr 28px;align-items:center;gap:10px;font-size:14px;font-weight:600;display:grid}.rp-bar{background:var(--soft);height:6px}.rp-bar i{background:var(--ink);height:100%;display:block}.rp-num{text-align:right;font-variant-numeric:tabular-nums}.rp-list{gap:8px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.rp-list li{align-items:center;display:flex}.rp-list span{color:var(--muted);margin-left:auto;font-size:13px}.rdot{border-radius:50%;flex:none;width:10px;height:10px;margin-right:10px}.rdot-ready{background:var(--ink)}.rdot-work{box-shadow:inset 0 0 0 2px var(--ink)}.rdot-locked{background:var(--red)}.rp-table{border-collapse:collapse;width:100%;font-size:15px}.rp-table th{text-align:left;color:var(--muted);padding:0 8px 8px 0;font-size:12px;font-weight:700}.rp-table td{border-top:1px solid var(--line);padding:10px 8px 10px 0}.rp-table td:not(:first-child),.rp-table th:not(:first-child){white-space:nowrap;text-align:right}.rp-road{grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.rp-road li{border-top:4px solid var(--ink);padding:10px 12px 0 0;font-size:14px}.rp-road li:first-child{border-top-color:var(--red)}.rp-road strong{letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:13px;display:block}.report-foot{border-top:1.5px solid var(--line);color:var(--muted);margin:0;padding:14px 22px;font-size:14px}@media (width<=620px){.report-grid{grid-template-columns:1fr}.report-block:nth-child(odd):not(.wide){border-right:0}.rp-road{grid-template-columns:1fr;gap:10px}.rp-table th:nth-child(4),.rp-table td:nth-child(4){display:none}}.goal{background:var(--soft);margin-top:40px;padding:28px clamp(20px,4vw,32px)}.goal .kicker{margin-bottom:8px}.goal-title{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(24px,3.4vw,32px);font-weight:900;line-height:1.1}.goal .moves li:first-child{border-top:0}.report-focus{letter-spacing:.06em;text-transform:uppercase;color:var(--red);margin:6px 0 0;font-size:13px;font-weight:700}.rp-table td.rp-moves{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800}.rp-table tr.is-goal td.rp-moves{color:var(--red)}.rp-table tr.is-goal td:first-child{font-weight:700}
