:root{--porcelain: #faf8f3;--card: #ffffff;--ink: #2b2724;--ink-soft: #6f675d;--ink-faint: #9a9184;--gold: #a6885a;--gold-deep: #82683f;--line: #e9e2d6;--serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--accent: var(--gold)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background:var(--porcelain);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}.shell{max-width:640px;margin:0 auto;padding:20px 20px 48px;min-height:100dvh;display:flex;flex-direction:column}.brand{text-align:center;padding:10px 0 4px}.brand .mark{font-family:var(--serif);font-weight:600;font-size:15px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink)}.brand .sub{font-size:10.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-deep);margin-top:2px}.progress{display:flex;justify-content:center;gap:10px;padding:18px 0 8px}.pdot{width:7px;height:7px;border-radius:50%;background:var(--line);transition:all .35s ease}.pdot.on{background:var(--gold);transform:scale(1.25)}.pdot.done{background:var(--gold-deep)}.screen{flex:1;display:flex;flex-direction:column;animation:rise .5s ease both}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.eyebrow{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-deep);text-align:center;margin:22px 0 10px}h1,.display{font-family:var(--serif);font-weight:500;text-align:center}h1{font-size:clamp(30px,7vw,42px);line-height:1.15}.lede{text-align:center;color:var(--ink-soft);max-width:46ch;margin:14px auto 0;font-size:15.5px}.btn{display:inline-block;font-family:var(--sans);font-size:13px;letter-spacing:.22em;text-transform:uppercase;padding:16px 34px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:var(--porcelain);cursor:pointer;transition:all .25s ease;-webkit-tap-highlight-color:transparent}.btn:hover{background:var(--gold-deep);border-color:var(--gold-deep)}.btn:disabled{opacity:.35;cursor:default}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{border-color:var(--gold-deep);color:var(--gold-deep);background:transparent}.btn-row{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:28px;flex-wrap:wrap}.linklike{background:none;border:none;color:var(--ink-faint);font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:10px}.linklike:hover{color:var(--gold-deep)}.groups{display:flex;gap:8px;overflow-x:auto;padding:18px 2px 6px;scrollbar-width:none}.groups::-webkit-scrollbar{display:none}.gpill{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);cursor:pointer;font-size:13px;color:var(--ink-soft);transition:all .2s ease;-webkit-tap-highlight-color:transparent}.gpill .dot{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}.gpill.on{border-color:var(--gold);color:var(--ink);box-shadow:0 0 0 1px var(--gold)}.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px;padding:14px 2px}.chip{aspect-ratio:1;border-radius:14px;border:1px solid rgba(0,0,0,.1);cursor:pointer;position:relative;transition:transform .18s ease;-webkit-tap-highlight-color:transparent}.chip:hover{transform:scale(1.05)}.chip.sel{outline:3px solid var(--gold);outline-offset:2px}.chip.sel:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;text-shadow:0 1px 4px rgba(0,0,0,.55)}.hint{font-size:12.5px;color:var(--ink-faint);text-align:center}.bands{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 6px}.band{padding:16px 8px;border:1px solid var(--line);border-radius:14px;background:var(--card);font-size:14px;text-align:center;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.band.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}input.email{width:100%;max-width:420px;margin:22px auto 0;display:block;padding:16px 20px;font-size:16px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);text-align:center;outline:none}input.email:focus{border-color:var(--gold)}.analyzing{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px}.orb{width:74px;height:74px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--gold);animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fact{font-family:var(--serif);font-style:italic;font-size:19px;color:var(--ink-soft);text-align:center;max-width:40ch;animation:rise .6s ease both}.result-head{text-align:center;margin-top:10px}.season-name{font-family:var(--serif);font-size:clamp(44px,11vw,64px);font-weight:500;color:var(--accent);line-height:1.05}.season-blurb{font-family:var(--serif);font-style:italic;font-size:19px;color:var(--ink-soft);margin-top:6px}.bloom{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0 6px}.bloom .swatch{aspect-ratio:1;border-radius:16px;border:1px solid rgba(0,0,0,.08);animation:bloom .55s cubic-bezier(.2,.8,.3,1.2) both}@keyframes bloom{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.swatch-name{font-size:10.5px;color:var(--ink-faint);text-align:center;margin-top:4px;line-height:1.3}.sw-cell{display:flex;flex-direction:column}.section{margin-top:40px}.section>.eyebrow{margin-top:0}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px}.celeb{display:flex;gap:16px;align-items:center}.celeb img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid var(--line)}.celeb .initials{width:84px;height:84px;border-radius:50%;background:var(--porcelain);border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:26px;color:var(--gold-deep)}.celeb .who{font-family:var(--serif);font-size:22px}.celeb .why{font-size:13.5px;color:var(--ink-soft)}.attrib{font-size:10.5px;color:var(--ink-faint);margin-top:10px;line-height:1.5}.prods{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px}.prod{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .2s ease;display:block}.prod:hover{transform:translateY(-3px)}.prod img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--porcelain)}.prod .pbody{padding:12px 14px 14px}.prod .pname{font-size:13.5px;line-height:1.35}.prod .pshade{font-size:12px;color:var(--gold-deep);margin-top:2px}.prod .pprice{font-size:13px;color:var(--ink-soft);margin-top:6px}.footnote{font-size:11px;color:var(--ink-faint);text-align:center;margin-top:34px;line-height:1.6}.brand-logo{height:54px;width:auto;max-width:240px;object-fit:contain}.photo-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:20px;text-align:center}.mode-title{font-family:var(--serif);font-size:19px}.photo-card .hint{max-width:44ch;margin:6px auto 0}.or-div{display:flex;align-items:center;gap:14px;margin:26px 0 18px;color:var(--ink-faint);font-size:11px;letter-spacing:.24em;text-transform:uppercase}.or-div:before,.or-div:after{content:"";flex:1;height:1px;background:var(--line)}.video-wrap{margin-top:20px;text-align:center}.video-wrap video{width:100%;max-width:420px;border-radius:18px;border:1px solid var(--line);background:#000}.depth-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.depth-card{aspect-ratio:3 / 4;border-radius:14px;border:1px solid rgba(0,0,0,.08);cursor:pointer;position:relative;transition:transform .18s ease;-webkit-tap-highlight-color:transparent;padding:0}.depth-card:hover{transform:translateY(-2px)}.depth-card.sel{outline:3px solid var(--gold);outline-offset:2px}.depth-card span{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:11px;letter-spacing:.06em;color:#fffffff2;text-shadow:0 1px 5px rgba(0,0,0,.45)}.tone-cards{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px}.tone-card{display:grid;grid-template-columns:28px auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card);cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.tone-card.sel{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.tone-dot{width:26px;height:26px;border-radius:50%;border:1px solid rgba(0,0,0,.1);grid-row:1 / span 2}.tone-label{font-size:14.5px;font-weight:600}.tone-exp{grid-column:2;font-size:12.5px;color:var(--ink-soft);line-height:1.45}.cand-row{display:flex;gap:14px;justify-content:center;margin-top:20px}.cand{width:76px;height:76px;border-radius:18px;border:1px solid rgba(0,0,0,.1);cursor:pointer;transition:transform .18s ease;-webkit-tap-highlight-color:transparent}.cand:hover{transform:scale(1.05)}.cand.sel{outline:3px solid var(--gold);outline-offset:2px}.eye-dot{display:inline-block;width:13px;height:13px;border-radius:50%;vertical-align:-2px;border:1px solid rgba(0,0,0,.15)}.foundation-lines{margin-top:12px}.foundation-lines .fline{font-size:13.5px;padding:8px 0;border-top:1px solid var(--line)}.foundation-lines .fline:first-child{border-top:none}.foundation-lines .fbrand{color:var(--ink-soft);font-size:12px}@media(min-width:560px){.bloom{grid-template-columns:repeat(6,1fr)}.prods{grid-template-columns:repeat(4,1fr)}.bands{grid-template-columns:repeat(6,1fr)}.tone-cards{grid-template-columns:repeat(3,1fr)}.tone-card{grid-template-columns:28px auto}}
