:root{--green:#0d2b24;--green-2:#153b31;--cream:#f5efe4;--paper:#fffdf8;--gold:#c9a45d;--ink:#17231f;--muted:#6d746f;--line:#ddd7ca;--shadow:0 24px 80px rgba(7,28,23,.15)}
*{box-sizing:border-box}html{min-height:100%;background:var(--cream)}body{margin:0;color:var(--ink);font-family:Manrope,system-ui,sans-serif;background:radial-gradient(circle at 10% 10%,#fffaf0 0,transparent 32%),var(--cream);min-height:100vh}.shell{width:min(1120px,calc(100% - 32px));margin:32px auto 18px}.panel,.result{background:var(--paper);border:1px solid rgba(13,43,36,.12);box-shadow:var(--shadow);border-radius:28px;overflow:hidden;min-height:680px}.hidden{display:none!important}.intro{display:grid;grid-template-columns:1.04fr .96fr}.intro-copy{padding:clamp(42px,7vw,92px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{margin:0 0 18px;color:#836827;font-size:.76rem;font-weight:600;letter-spacing:.16em}.intro h1,.question-wrap h2,.result h2,.loading h2{font-family:"Cormorant Garamond",serif;font-weight:600;line-height:.96;margin:0}.intro h1{font-size:clamp(3.4rem,7vw,6rem);max-width:600px}.lead{font-size:1.06rem;line-height:1.7;color:#535d57;max-width:610px;margin:28px 0}.intro-meta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:34px}.intro-meta span,.chips span{border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-size:.78rem;color:#56615b;background:rgba(255,255,255,.55)}button,.link-btn{font:inherit}.primary{border:0;border-radius:999px;background:var(--green);color:#fff;padding:16px 24px;font-weight:600;cursor:pointer;transition:.2s ease;box-shadow:0 9px 24px rgba(13,43,36,.18)}.primary:hover{background:var(--green-2);transform:translateY(-1px)}.primary span{margin-left:14px}.intro-image{min-height:680px;background:linear-gradient(90deg,rgba(13,43,36,.15),transparent 30%),url('assets/perfume-hero.png') center/cover no-repeat}.quiz{padding:32px clamp(26px,6vw,74px);background:linear-gradient(145deg,#fffdf8,#f8f3e9)}.quiz-head{display:flex;gap:22px;align-items:center}.back{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:white;font-size:1.25rem;cursor:pointer}.progress-wrap{flex:1}.progress-label{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem;margin-bottom:8px}.progress{height:4px;border-radius:4px;background:#e5dfd4;overflow:hidden}.progress span{display:block;height:100%;background:var(--gold);width:12.5%;transition:width .35s ease}.question-wrap{max-width:800px;margin:80px auto}.question-wrap h2{font-size:clamp(2.5rem,5vw,4.4rem)}.hint{color:var(--muted);margin:18px 0 34px;line-height:1.6}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.option{display:flex;align-items:center;gap:16px;text-align:left;border:1px solid var(--line);border-radius:18px;padding:20px;background:#fff;cursor:pointer;color:var(--ink);min-height:76px;transition:.18s ease}.option:hover,.option:focus-visible{border-color:var(--gold);box-shadow:0 10px 30px rgba(67,51,19,.08);transform:translateY(-1px);outline:none}.option-mark{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:50%;background:#edf1ed;color:var(--green);font-size:.8rem;font-weight:600}.option strong{display:block;font-size:.98rem}.option small{display:block;color:var(--muted);line-height:1.4;margin-top:4px}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:50px}.loading h2{font-size:clamp(2.5rem,5vw,4.2rem)}.loading>p:last-child{color:var(--muted)}.orb{width:74px;height:74px;margin-bottom:30px;border:1px solid var(--gold);border-radius:50%;position:relative;animation:pulse 1.5s infinite}.orb:after{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--green)}@keyframes pulse{50%{transform:scale(1.08);box-shadow:0 0 0 16px rgba(201,164,93,.08)}}.result{padding:clamp(34px,6vw,76px);min-height:auto}.result-head{text-align:center;max-width:760px;margin:0 auto 44px}.result h2{font-size:clamp(3rem,6vw,5rem)}.result-head>p:not(.eyebrow){color:var(--muted);font-size:1.03rem;line-height:1.7}.chips{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:22px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:24px;display:flex;flex-direction:column;min-height:285px}.rank{color:var(--gold);font:600 1.6rem "Cormorant Garamond",serif}.brand{margin:22px 0 5px;color:var(--muted);font-size:.73rem;letter-spacing:.12em;text-transform:uppercase}.card h3{font:600 1.8rem/1.05 "Cormorant Garamond",serif;margin:0 0 15px}.card p{color:#5c655f;line-height:1.55;font-size:.9rem;margin:0 0 18px}.why{margin-top:auto!important;color:var(--green)!important;font-weight:600}.format-badge{display:inline-block;margin-top:12px;padding:6px 10px;border-radius:999px;background:#edf1ed;font-size:.72rem;color:var(--green);align-self:flex-start}.gift{margin-top:28px;border-radius:22px;background:var(--green);color:white;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.gift .eyebrow{color:#e0c98f;margin-bottom:7px}.gift h3{font:500 2rem "Cormorant Garamond",serif;margin:0}.gift p{color:#c5d0cc;margin:7px 0 0}.secondary{white-space:nowrap;border:1px solid rgba(255,255,255,.5);background:transparent;color:white;border-radius:999px;padding:13px 18px;cursor:pointer}.result-actions{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:30px}.link-btn{text-decoration:none}.text-btn{border:0;background:none;color:var(--green);text-decoration:underline;cursor:pointer}.note{text-align:center;color:var(--muted);font-size:.78rem;margin:30px auto 0;max-width:720px;line-height:1.55}footer{text-align:center;color:#747b76;font-size:.75rem;padding:8px 0 28px}footer a{color:inherit}@media(max-width:800px){.shell{width:min(100% - 20px,680px);margin:10px auto}.panel,.result{border-radius:20px;min-height:calc(100vh - 70px)}.intro{display:flex;flex-direction:column-reverse}.intro-image{min-height:260px}.intro-copy{padding:34px 25px 40px}.intro h1{font-size:3.6rem}.lead{margin:20px 0}.quiz{padding:22px 20px}.question-wrap{margin:56px auto}.options{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.card{min-height:230px}.gift{align-items:flex-start;flex-direction:column}.result{padding:40px 20px}.result h2{font-size:3.2rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
