:root{--bg:#f7f1ea;--paper:#fffdf8;--ink:#3d2b24;--heading:#6d4638;--muted:#826f66;--line:#dccdc1;--clay:#b66b4e;--sand:#f2ddca;--display:"Cormorant Garamond",Georgia,serif;--body:Lora,Georgia,serif;--ui:Inter,Arial,sans-serif}*{box-sizing:border-box}html{font-size:17px}body{margin:0;min-height:100vh;background:linear-gradient(160deg,#f7f1ea 0%,#f1e6db 100%);color:var(--ink);font:1rem/1.65 var(--body)}.shell{width:min(100% - 2rem,680px);margin:auto}header{border-bottom:1px solid var(--line);background:rgba(247,241,234,.9)}header .shell{min-height:63px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font:600 1.35rem var(--display);color:var(--heading)}.brand span{color:var(--clay)}header p{margin:0;color:var(--muted);font:600 .62rem var(--ui);letter-spacing:.07em;text-align:right;text-transform:uppercase}.quiz-shell{padding:2.3rem 0 3.4rem}.intro,.result{padding:1.5rem;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 35px rgba(61,43,36,.08)}.eyebrow{margin:0 0 .75rem;font:700 .68rem var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--clay)}h1,h2,h3{margin:0;font:500 clamp(2.35rem,10vw,3.8rem)/1.05 var(--display);letter-spacing:-.025em;color:var(--heading)}h3{font-size:clamp(1.85rem,7vw,2.4rem)}.intro>p:not(.eyebrow),.result>p:not(.eyebrow){margin:1rem 0 1.35rem;color:var(--muted)}.intro-points{display:grid;gap:.55rem;margin:0 0 1.5rem;padding:0;list-style:none;font:.78rem/1.45 var(--ui);color:var(--heading)}.intro-points li{padding-left:1.4rem;position:relative}.intro-points li:before{content:'•';position:absolute;left:.35rem;color:var(--clay);font-size:1.25rem;line-height:.8}.button{width:100%;min-height:56px;display:flex;align-items:center;justify-content:center;border:0;border-radius:5px;background:var(--clay);color:#fff;text-align:center;text-decoration:none;font:700 .85rem/1.3 var(--ui);padding:.9rem 1rem;cursor:pointer;transition:transform .2s ease,background .2s ease}.button:hover,.button:focus-visible{background:#a55d43;transform:translateY(-1px)}.intro small{display:block;margin-top:1rem;text-align:center;color:var(--muted);font:.68rem/1.5 var(--ui)}.progress-wrap{margin:0 0 1.55rem}.progress-wrap span{display:block;margin-bottom:.45rem;font:700 .68rem var(--ui);letter-spacing:.08em;color:var(--clay);text-transform:uppercase}.progress{height:5px;background:#e8ddd4;border-radius:4px;overflow:hidden}.progress i{display:block;width:14.28%;height:100%;background:var(--clay);transition:width .25s ease}.question{padding:0;border:0;margin:0}.question legend{margin:0 0 .75rem;padding:0;font:500 clamp(2rem,8vw,3.1rem)/1.1 var(--display);color:var(--heading)}.question-context{margin:0 0 1.25rem;color:var(--muted);font:.86rem/1.58 var(--body)}.question button{display:block;width:100%;min-height:66px;margin:.72rem 0;padding:1rem 1.05rem;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);text-align:left;font:.84rem/1.48 var(--ui);cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.question button:hover,.question button:focus-visible{border-color:var(--clay);outline:2px solid transparent;background:#fff7f0;transform:translateY(-1px)}.diagnosis,.result-practice{margin:1.3rem 0;padding:1rem 1.05rem;border-left:3px solid var(--clay);background:#f7ede5}.diagnosis span,.result-practice strong{display:block;font:700 .68rem var(--ui);letter-spacing:.08em;text-transform:uppercase;color:var(--clay)}.diagnosis p,.result-practice p{margin:.38rem 0 0;color:var(--heading)}.offer-bridge{margin:1.5rem 0;padding:1.3rem;background:var(--sand);border-radius:7px}.offer-bridge .eyebrow{margin-bottom:.5rem}.offer-bridge h3{margin-bottom:.8rem}.offer-bridge p{margin:.5rem 0 .9rem;color:var(--heading)}.offer-bridge ul{margin:0;padding:0;list-style:none;font:.77rem/1.55 var(--ui);color:var(--heading)}.offer-bridge li{padding:.3rem 0 .3rem 1.35rem;position:relative}.offer-bridge li:before{content:'✓';position:absolute;left:0;color:var(--clay);font-weight:700}.restart{display:block;margin:1.1rem auto 0;border:0;background:none;color:var(--muted);font:.76rem var(--ui);text-decoration:underline;cursor:pointer}footer{padding:1.4rem 0 2rem;text-align:center;color:var(--muted);font:.68rem var(--ui)}@media(min-width:700px){.quiz-shell{padding:5.5rem 0}.intro,.result{padding:3.25rem}.button{width:auto;padding-inline:1.65rem}.result .button{width:100%}.question button{padding:1rem 1.2rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
