.qf{border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);background:#fff;padding:clamp(24px,3.4vw,44px)}.qf-hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.qf-steps{gap:8px;margin:0 0 28px;padding:0;list-style:none;display:none}.qf[data-enhanced=true] .qf-steps{display:flex}.qf-step{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);flex-direction:column;flex:1;gap:6px;font-size:.7rem;font-weight:600;display:flex}.qf-step:before{content:"";background:var(--line);height:3px;transition:background .3s var(--ease-brand);border-radius:999px}.qf-step[data-state=current]{color:var(--purple)}.qf-step[data-state=current]:before,.qf-step[data-state=done]:before{background:var(--gold)}.qf-step[data-state=done]{color:var(--muted)}.qf-fieldset{border:0;margin:0 0 28px;padding:0}.qf[data-enhanced=true] .qf-fieldset{margin-bottom:0}.qf-legend{font-family:var(--font-display);color:var(--purple-deep);margin:0 0 6px;padding:0;font-size:1.5rem;font-weight:600}.qf-hint{color:var(--muted);margin:0 0 22px;font-size:.92rem}.qf-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.qf-field{flex-direction:column;gap:7px;display:flex}.qf-field.qf-wide{grid-column:1/-1}.qf-label{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-size:.78rem;font-weight:600}.qf-optional{color:var(--muted);letter-spacing:.04em;text-transform:none;font-weight:500}.qf-input,.qf-select,.qf-textarea{width:100%;font-family:var(--font-sans);color:var(--ink);background:var(--cream);border:1px solid var(--line);transition:border-color .2s var(--ease-brand), background .2s var(--ease-brand);border-radius:12px;padding:13px 15px;font-size:1rem}.qf-textarea{resize:vertical;min-height:140px}.qf-input:hover,.qf-select:hover,.qf-textarea:hover{border-color:var(--purple-mid)}.qf-input:focus,.qf-select:focus,.qf-textarea:focus{border-color:var(--purple);background:#fff}.qf-input[aria-invalid=true],.qf-textarea[aria-invalid=true]{background:#fdf6f5;border-color:#b3261e}.qf-error{font-family:var(--font-sans);color:#b3261e;font-size:.82rem}.qf-note{font-family:var(--font-sans);color:var(--muted);margin:10px 0 0;font-size:.82rem}.qf-swatches{flex-wrap:wrap;gap:10px;display:flex}.qf-sw{cursor:pointer;width:38px;height:38px;transition:transform .2s var(--ease-brand), border-color .2s var(--ease-brand);border:2px solid #0000;border-radius:50%;padding:0;box-shadow:inset -3px -4px 8px #00000024}.qf-sw[aria-pressed=true]{border-color:var(--purple-deep);box-shadow:0 0 0 3px #4a2b7a2e,inset -3px -4px 8px #00000024}@media (prefers-reduced-motion:no-preference){.qf-sw:hover{transform:scale(1.12)}}.qf-group{flex-direction:column;gap:10px;display:flex}.qf-group-label{font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:600}.qf-cards{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.qf-card{border:1px solid var(--line);cursor:pointer;background:var(--cream);transition:border-color .2s var(--ease-brand), background .2s var(--ease-brand);border-radius:12px;align-items:flex-start;gap:10px;padding:13px 15px;display:flex}.qf-card:hover{border-color:var(--purple-mid)}.qf-card:has(input:checked){border-color:var(--purple);background:#fff}.qf-card input{accent-color:var(--purple);flex:none;margin-top:3px}.qf-card-body{flex-direction:column;gap:2px;display:flex}.qf-card-title{font-family:var(--font-sans);font-size:.94rem;font-weight:600}.qf-card-hint{color:var(--muted);font-size:.82rem}.qf-nav{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;padding-top:24px;display:flex}.qf-nav .qf-spacer{flex:1}.qf[data-enhanced=true] .qf-nojs-submit{display:none}.qf-status{font-family:var(--font-sans);color:var(--muted);font-size:.86rem}.qf-success{text-align:center;padding:clamp(20px,3vw,40px) 0}.qf-success-mark{color:#2f6b34;background:#eef7ee;border:1px solid #bcd9bd;border-radius:50%;place-items:center;width:62px;height:62px;margin:0 auto 20px;display:grid}.qf-success h2{margin:0 0 12px}.qf-success p{color:var(--muted);max-width:52ch;margin:0 auto 10px}.qf-success-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px;display:flex}@media (width<=640px){.qf-grid,.qf-cards{grid-template-columns:1fr}.qf-nav .qf-spacer{display:none}.qf-nav>*{width:100%}}
