/* ===== Style quiz ===== */
.sq-wrap{max-width:760px;margin:0 auto;padding:38px 24px 90px}

.sq-hero{text-align:center;margin-bottom:32px}
.sq-hero h1{font-family:'Fraunces',serif;font-size:clamp(32px,5vw,48px);font-weight:600;letter-spacing:-.5px}
.sq-hero h1 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.sq-hero p{color:var(--ink-soft);font-size:17px;margin-top:12px;max-width:560px;margin-left:auto;margin-right:auto}

.sq-form{display:flex;flex-direction:column;gap:22px}
.sq-q{background:var(--card);border:1px solid #f3e6ee;border-radius:18px;padding:22px 24px;box-shadow:var(--shadow-sm)}
.sq-q h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:16.5px;font-weight:700;margin-bottom:14px;color:var(--ink)}
.sq-q h2 em{font-style:normal;font-weight:500;color:var(--ink-soft);font-size:14px}

.q-opts{display:flex;flex-wrap:wrap;gap:10px}
.q-opt{cursor:pointer;position:relative}
.q-opt input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.q-opt span{display:block;padding:11px 18px;border-radius:12px;border:1.5px solid #ecdfe8;background:#fff;font-weight:600;font-size:14.5px;color:var(--ink);transition:border-color .15s,background .15s,color .15s}
.q-opt:hover span{border-color:var(--purple)}
.q-opt:has(input:checked) span{border-color:var(--purple);background:rgba(139,63,232,.09);color:var(--purple)}
.q-opt input:focus-visible + span{box-shadow:0 0 0 3px rgba(139,63,232,.18)}

.sq-submit{align-self:center;background:var(--grad);color:#fff;font-family:inherit;font-weight:700;font-size:16px;padding:15px 40px;border:none;border-radius:14px;cursor:pointer;box-shadow:0 14px 34px -14px rgba(139,63,232,.7);transition:transform .12s}
.sq-submit:hover{transform:translateY(-2px)}
.sq-note{text-align:center;font-size:12.5px;color:var(--ink-soft);margin-top:-6px}
.sq-note a{color:var(--purple);font-weight:600}

@media(max-width:560px){.sq-wrap{padding:24px 16px 70px}.sq-q{padding:18px 18px}}
