:root{--ink:#2f1c11;--body:#5f554e;--paper:#fffaf1;--pink:#fa03a9;--lime:#d8f27a;--rust:#a34a21;--cream:#f2ece4;--frame:980px;--gutter:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{min-height:100vh;margin:0;background:var(--cream);color:var(--body);font-family:Avenir,"Century Gothic","Trebuchet MS",sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
button,input{font:inherit}a{color:inherit;text-underline-offset:3px}.frame{width:min(var(--frame),calc(100% - var(--gutter)*2));margin-inline:auto}
.skip-link{position:fixed;z-index:999;top:6px;left:6px;padding:8px 12px;background:#fff;color:#000;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-bar{height:78px;background:#fff}.site-bar-inner{display:flex;height:78px;align-items:center;justify-content:space-between;gap:25px}.brand{color:var(--ink);font-size:27px;font-weight:800;letter-spacing:-.045em;text-decoration:none}.brand span{color:var(--pink)}.site-bar-label{color:#766a61;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hero{position:relative;overflow:hidden;padding:58px 0 62px;background:var(--ink);color:#fff}.hero::before,.hero::after{position:absolute;width:260px;height:260px;border:22px solid var(--pink);border-radius:50%;content:"";opacity:.16}.hero::before{top:-190px;left:-80px}.hero::after{right:-110px;bottom:-205px;border-color:var(--lime)}.hero-inner{position:relative;z-index:1}.kicker-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.kicker{margin:0;color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.stamp{display:inline-block;padding:8px 12px;border:2px solid var(--pink);color:#fff;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transform:rotate(3deg)}
.hero h1{max-width:820px;margin:34px 0 8px;color:#fff;font-size:clamp(42px,8vw,84px);font-weight:900;letter-spacing:-.06em;line-height:.91}.hero h1 span{display:block;color:var(--pink)}.subtitle{margin:24px 0 30px;color:#fff;font-size:clamp(21px,3vw,31px);font-weight:800}.credit{max-width:750px;margin:0;padding-left:18px;border-left:4px solid var(--lime);color:#e8ddd4;font-size:15px}.credit a{color:#fff;font-weight:800}
.quiz-shell{padding-top:34px;padding-bottom:75px}.intro{display:grid;grid-template-columns:1.4fr 1fr;gap:45px;align-items:start;margin-bottom:30px;padding:24px 27px;border:1px solid #d8cabe;background:rgba(255,250,241,.72)}.intro p{margin:0;font-size:17px}.intro .smallprint{color:#6a5a50;font-size:13px}.quiz-runner,.results{scroll-margin-top:95px}
.progress-row{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:0 0 10px}.progress-row p{margin:0;color:var(--ink);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.progress-row progress{width:min(60%,520px);height:9px;border:0;border-radius:0;background:#dfd3c8;accent-color:var(--pink)}.progress-row progress::-webkit-progress-bar{background:#dfd3c8}.progress-row progress::-webkit-progress-value{background:var(--pink)}.progress-row progress::-moz-progress-bar{background:var(--pink)}
.question-card{position:relative;min-height:410px;padding:46px 52px 42px;border-top:8px solid var(--pink);background:var(--paper);box-shadow:12px 12px 0 rgba(47,28,17,.12)}.question-card::after{position:absolute;right:30px;bottom:23px;color:#e6d9cd;font-size:66px;font-weight:900;content:"?";transform:rotate(8deg)}
.question-category,.answer-category,.score-overline{margin:0 0 10px;color:var(--rust);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.question-card h2{max-width:780px;margin:0 0 38px;color:var(--ink);font-size:clamp(23px,3.5vw,36px);letter-spacing:-.025em;line-height:1.12}.question-card label{display:block;margin:0 0 7px;color:var(--ink);font-size:13px;font-weight:800}.question-card input{position:relative;z-index:1;width:100%;height:58px;padding:10px 14px;border:2px solid #ad9c90;border-radius:0;background:#fff;color:var(--ink);font-size:19px;outline:none}.question-card input:focus{border-color:var(--pink);box-shadow:0 0 0 4px rgba(250,3,169,.14)}
.question-actions{position:relative;z-index:1;display:flex;justify-content:space-between;gap:15px;margin-top:32px}.primary-button,.secondary-button{min-height:48px;padding:11px 20px;border:2px solid var(--ink);border-radius:0;font-size:14px;font-weight:800;cursor:pointer}.primary-button{background:var(--ink);color:#fff}.primary-button:hover,.primary-button:focus-visible{border-color:var(--pink);background:var(--pink);color:#fff}.secondary-button{background:transparent;color:var(--ink)}.secondary-button:hover:not(:disabled),.secondary-button:focus-visible:not(:disabled){background:#eadfd4}.secondary-button:disabled{cursor:not-allowed;opacity:.35}
.score-card{position:relative;padding:43px 46px 44px;overflow:hidden;background:var(--ink);color:#fff;text-align:center}.score-card::before{position:absolute;top:-75px;left:calc(50% - 145px);width:290px;height:145px;border:19px solid var(--lime);border-radius:50%;content:"";opacity:.18}.score-card .score-overline{color:var(--lime)}.score-number{display:flex;align-items:baseline;justify-content:center;margin:4px 0;color:#fff;line-height:1}.score-number strong{color:var(--pink);font-size:96px;letter-spacing:-.06em}.score-number span{font-size:30px}.score-card h2{margin:5px 0 7px;color:#fff;font-size:34px}.score-card>p:not(.score-overline):not(.score-number){max-width:600px;margin:0 auto 25px;color:#e5d9cf;font-size:16px}.score-card .primary-button{border-color:#fff}.score-card .primary-button:hover{border-color:var(--lime);background:var(--lime);color:var(--ink)}
.scale{padding:34px 34px 36px;background:var(--paper)}.scale h2{margin:0 0 20px;color:var(--ink);font-size:22px}.scale-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.scale-band{display:grid;min-height:96px;align-content:start;gap:8px;padding:13px 10px;border-top:4px solid #cfc0b4;background:#eee5dc}.scale-band strong{color:var(--ink);font-size:21px}.scale-band span{font-size:12px;line-height:1.2}.scale-band.is-current{border-color:var(--pink);background:var(--lime)}
.answer-review{margin-top:30px;padding:37px 37px 12px;background:#fff}.review-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:24px}.review-heading h2{margin:0;color:var(--ink);font-size:29px}.review-heading>p{max-width:300px;margin:0;color:#6f6258;font-size:13px}.answer-review ol{margin:0;padding:0;list-style:none}.answer-review li{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:22px 0;border-top:1px solid #ded3ca}.answer-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;font-size:22px;font-weight:900}.is-correct .answer-mark{background:#ddef9b;color:#263500}.is-wrong .answer-mark{background:#fee0ef;color:#9f005b}.answer-review h3{margin:0 0 9px;color:var(--ink);font-size:17px}.answer-review li p{margin:4px 0;font-size:14px}.answer-review .answer-category{margin-bottom:5px;font-size:10px}.correct-answer{margin-top:11px!important;padding:11px 13px;background:#fff1f8;color:#4c1a36}
footer{padding:25px 0 30px;background:#fff;color:#675a51}.footer-inner{display:flex;justify-content:space-between;gap:45px}.footer-inner p{max-width:455px;margin:0;font-size:12px}.footer-inner a{font-weight:800}
[hidden]{display:none!important}
@media(max-width:800px){.scale-grid{grid-template-columns:repeat(3,1fr)}.intro{grid-template-columns:1fr;gap:16px}}
@media(max-width:600px){:root{--gutter:16px}.site-bar{height:68px}.site-bar-inner{height:68px}.brand{font-size:23px}.site-bar-label{max-width:120px;text-align:right}.hero{padding:38px 0 45px}.kicker-row{align-items:flex-start;flex-direction:column}.stamp{align-self:flex-end;margin-top:-8px}.hero h1{margin-top:22px;font-size:48px}.question-card{min-height:430px;padding:34px 22px 31px;box-shadow:7px 7px 0 rgba(47,28,17,.12)}.question-card h2{font-size:25px}.question-actions{align-items:stretch;flex-direction:column-reverse}.question-actions button{width:100%}.progress-row{align-items:flex-start;flex-direction:column;gap:8px}.progress-row progress{width:100%}.score-card{padding:38px 22px}.score-number strong{font-size:80px}.scale{padding:28px 20px}.scale-grid{grid-template-columns:1fr 1fr}.answer-review{padding:28px 20px 5px}.review-heading{align-items:start;flex-direction:column;gap:10px}.answer-review li{grid-template-columns:36px 1fr}.answer-mark{width:30px;height:30px}.footer-inner{flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.stamp{transform:none}}
