:root{--bg-mint: #d8ece6;--bg-blush: #f3d9df;--bg-cream: #faf6f3;--ink: #2a1f24;--ink-soft: #5c4a52;--accent: #8b3a4a;--accent-deep: #6e2c3a;--accent-soft: #c47888;--surface: rgba(255, 252, 250, .82);--surface-solid: #fffbf9;--border: rgba(42, 31, 36, .1);--shadow: 0 18px 50px rgba(110, 44, 58, .12);--radius: 18px;--font-display: "Fraunces", Georgia, serif;--font-body: "Manrope", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--max: 720px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--ink);background:radial-gradient(ellipse 90% 70% at 10% 0%,var(--bg-mint) 0%,transparent 55%),radial-gradient(ellipse 80% 60% at 95% 15%,var(--bg-blush) 0%,transparent 50%),radial-gradient(ellipse 70% 50% at 50% 100%,#e8d4c8 0%,transparent 45%),linear-gradient(165deg,#f7f2ee,#ebe8e4);background-attachment:fixed;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:soft-light;z-index:0}#root{position:relative;z-index:1;min-height:100vh}button,input{font:inherit}a{color:inherit}.app{min-height:100vh;display:flex;flex-direction:column}.shell{width:min(100% - 2rem,var(--max));margin-inline:auto}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:3rem 0 4rem;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-12%;bottom:8%;width:min(48vw,380px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff8f6 0%,transparent 45%),radial-gradient(circle at 60% 60%,var(--accent-soft) 0%,transparent 55%),radial-gradient(circle at 50% 50%,var(--bg-mint) 0%,transparent 70%);opacity:.55;filter:blur(2px);animation:floatBlob 9s var(--ease) infinite alternate;pointer-events:none;z-index:-1}@keyframes floatBlob{0%{transform:translate(0) scale(1)}to{transform:translate(-18px,-24px) scale(1.06)}}.brand{font-family:var(--font-display);font-size:clamp(2.75rem,8vw,4.25rem);font-weight:700;letter-spacing:-.03em;line-height:.95;margin:0 0 1.5rem;color:var(--accent-deep);animation:fadeUp .7s var(--ease) both}.hero h1{font-family:var(--font-display);font-size:clamp(1.35rem,3.5vw,1.75rem);font-weight:500;line-height:1.3;margin:0 0 .85rem;max-width:16ch;color:var(--ink);animation:fadeUp .7s var(--ease) .08s both}.hero-lead{margin:0 0 2rem;font-size:1.05rem;line-height:1.55;color:var(--ink-soft);max-width:34ch;animation:fadeUp .7s var(--ease) .16s both}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;animation:fadeUp .7s var(--ease) .24s both}.btn{appearance:none;border:none;cursor:pointer;border-radius:999px;padding:.95rem 1.6rem;font-weight:600;font-size:.95rem;letter-spacing:.01em;transition:transform .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#fffaf8;box-shadow:0 10px 28px #8b3a4a47}.btn-primary:hover{background:var(--accent-deep);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--ink-soft);padding-inline:.5rem}.btn-ghost:hover{color:var(--accent)}.btn-block{width:100%}.btn-outline{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}.btn-outline:hover{background:#8b3a4a0f}.meta-hint{font-size:.85rem;color:var(--ink-soft);opacity:.85}.quiz-screen{min-height:100vh;padding:2rem 0 3rem;display:flex;flex-direction:column}.quiz-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem}.quiz-brand{font-family:var(--font-display);font-weight:650;font-size:1.15rem;color:var(--accent-deep)}.step-label{font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.progress{height:4px;background:#2a1f2414;border-radius:999px;overflow:hidden;margin-bottom:2.25rem}.progress-bar{height:100%;background:linear-gradient(90deg,var(--accent-soft),var(--accent));border-radius:inherit;transition:width .45s var(--ease)}.question-panel{flex:1;display:flex;flex-direction:column;justify-content:center;animation:slideIn .4s var(--ease) both}.question-panel.leaving{animation:slideOut .28s var(--ease) both}@keyframes slideIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-14px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.question-title{font-family:var(--font-display);font-size:clamp(1.45rem,4vw,1.9rem);font-weight:650;line-height:1.25;margin:0 0 1.5rem}.options{display:flex;flex-direction:column;gap:.65rem}.option{text-align:left;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:1rem 1.15rem;cursor:pointer;color:var(--ink);font-weight:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .2s var(--ease),background .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}.option:hover{border-color:var(--accent-soft);transform:translateY(-1px);box-shadow:var(--shadow)}.option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.results-screen{padding:2rem 0 3.5rem;animation:fadeUp .55s var(--ease) both}.results-header{margin-bottom:1.75rem}.results-header .quiz-brand{display:block;margin-bottom:.75rem}.profile-badge{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}.results-header h2{font-family:var(--font-display);font-size:clamp(1.6rem,4.5vw,2.1rem);font-weight:650;margin:0 0 .6rem;line-height:1.2}.results-desc{margin:0;color:var(--ink-soft);line-height:1.55;max-width:42ch}.product-list{display:flex;flex-direction:column;gap:1rem;margin:0 0 2rem;padding:0;list-style:none}.product-card{display:grid;grid-template-columns:96px 1fr;gap:1rem;background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow);animation:fadeUp .5s var(--ease) both;text-decoration:none;color:inherit;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.product-card:nth-child(1){animation-delay:.05s}.product-card:nth-child(2){animation-delay:.12s}.product-card:nth-child(3){animation-delay:.19s}.product-card:nth-child(4){animation-delay:.26s}.product-card:nth-child(5){animation-delay:.33s}.product-card:nth-child(6){animation-delay:.4s}.product-card:nth-child(7){animation-delay:.47s}.product-card:nth-child(8){animation-delay:.54s}.product-card:nth-child(9){animation-delay:.61s}.product-card:hover{transform:translateY(-3px);box-shadow:0 22px 48px #6e2c3a29}.product-img{width:96px;height:96px;border-radius:14px;object-fit:contain;background:#fff;border:1px solid var(--border)}.product-body{display:flex;flex-direction:column;gap:.25rem;min-width:0}.product-brand{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-soft)}.product-name{font-family:var(--font-display);font-size:1.05rem;font-weight:650;margin:0;line-height:1.25}.product-desc{margin:0;font-size:.88rem;color:var(--ink-soft);line-height:1.4}.product-cta{margin-top:auto;padding-top:.4rem;font-size:.82rem;font-weight:700;color:var(--accent)}.empty-results{padding:1.25rem 1rem;border-radius:var(--radius);background:var(--surface-solid);border:1px solid var(--border);color:var(--ink-soft);font-size:.92rem;line-height:1.45;list-style:none}.lead-panel{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);padding:1.35rem 1.25rem 1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeUp .5s var(--ease) .25s both}.lead-panel h3{font-family:var(--font-display);font-size:1.25rem;margin:0 0 .35rem}.lead-panel p{margin:0 0 1.1rem;font-size:.92rem;color:var(--ink-soft);line-height:1.45}.lead-note{margin-bottom:1rem;font-size:.85rem}.privacy-block{margin:0 0 1rem;padding:.85rem .95rem;border-radius:12px;background:#ffffff8c;border:1px solid var(--border)}.privacy-block h4{margin:0 0 .45rem;font-size:.82rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink)}.privacy-block p{margin:0 0 .55rem;font-size:.8rem;line-height:1.45}.privacy-block p:last-child{margin-bottom:0}.consent-row{display:flex;align-items:flex-start;gap:.55rem;margin-bottom:1rem;font-size:.82rem;line-height:1.4;color:var(--ink-soft);cursor:pointer}.consent-row input{margin-top:.15rem;accent-color:var(--accent)}.field input:read-only{background:#ffffffa6;color:var(--ink-soft);cursor:not-allowed}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.field label{font-size:.8rem;font-weight:600;color:var(--ink-soft)}.field input{border:1.5px solid var(--border);border-radius:12px;padding:.8rem .95rem;background:#fff;color:var(--ink)}.field input:focus{outline:none;border-color:var(--accent-soft);box-shadow:0 0 0 3px #c4788833}.lead-success{text-align:center;padding:.5rem 0}.lead-success p{margin:.5rem 0 0}.restart-row{margin-top:1.5rem;text-align:center}.disclaimer{margin-top:auto;padding:1.5rem 0 1rem;font-size:.75rem;line-height:1.45;color:var(--ink-soft);opacity:.8;text-align:center}@media(max-width:480px){.product-card{grid-template-columns:76px 1fr;gap:.85rem}.product-img{width:76px;height:76px}}
