  :root{
    --bg:#0e1320;--surface:#1a2133;--surface-2:#222a40;--line:#33405c;
    --accent:#ffc24b;--accent-2:#ff9e57;--accent-soft:#ffc24b20;--glow:#ffb24b;
    --sky-1:#1a2742;--sky-2:#2d3a63;--dawn:#ffb36b;
    --text:#f6f3ec;--muted:#a3abc2;
    --serif:'Fraunces',Georgia,serif;--sans:'Hanken Grotesk',system-ui,sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html,body{height:100%}
  body{font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}

  /* DAWN ATMOSPHERE, night lifting into first light. brightens as you progress. */
  .sky{position:fixed;inset:0;z-index:0;pointer-events:none;
    background:linear-gradient(180deg,var(--sky-1) 0%,var(--sky-2) 46%,#5a4d6e 72%,#8a6f72 100%);
    transition:filter 1.2s ease}
  .dawnglow{position:fixed;left:0;right:0;bottom:0;height:62%;z-index:0;pointer-events:none;
    background:radial-gradient(125% 100% at 50% 128%, #ffd98a55 0%, #ffb36b3a 28%, #ff9e5718 48%, transparent 66%);
    animation:breathe 12s ease-in-out infinite}
  .rays{position:fixed;left:0;right:0;bottom:-10%;height:80%;z-index:0;pointer-events:none;opacity:.4;
    background:conic-gradient(from 180deg at 50% 100%, transparent 0deg, #ffe0a022 18deg, transparent 30deg, #ffe0a01c 48deg, transparent 62deg, #ffe0a022 80deg, transparent 96deg, #ffe0a018 116deg, transparent 132deg, #ffe0a022 150deg, transparent 168deg);
    /* Feather the moving layer so its rectangular bounds never cut across the sky. */
    mask-image:linear-gradient(180deg,transparent,#000 30%,#000 80%,transparent),linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
    mask-composite:intersect;
    animation:sway 16s ease-in-out infinite;transform-origin:50% 100%}
  @keyframes sway{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
  .gstar{position:fixed;top:9%;left:50%;width:6px;height:6px;border-radius:50%;z-index:0;pointer-events:none;
    background:#fff;box-shadow:0 0 14px 4px #ffd98a,0 0 50px 14px #ffb24b55;transform:translateX(-50%);
    animation:twinkle 4.5s ease-in-out infinite}
  @keyframes twinkle{0%,100%{opacity:.55;transform:translateX(-50%) scale(.9)}50%{opacity:1;transform:translateX(-50%) scale(1.3)}}
  @keyframes breathe{0%,100%{opacity:.85}50%{opacity:1}}
  /* progressive brightening hook: body[data-lit="1..5"] lifts the sky */
  body[data-lit="1"] .sky{filter:brightness(1.08)}
  body[data-lit="2"] .sky{filter:brightness(1.16)}
  body[data-lit="3"] .sky{filter:brightness(1.24)}
  body[data-lit="4"] .sky{filter:brightness(1.34)}
  body[data-lit="5"] .sky{filter:brightness(1.46)}

.brand{position:relative;z-index:2;text-align:center;padding:28px;font-size:13px;font-weight:700;letter-spacing:.24em}.wrap{position:relative;z-index:2;max-width:780px;margin:auto;padding:45px 24px 65px;min-height:75vh}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.18}h1{font-size:clamp(34px,6vw,58px);margin:16px 0 24px}h2{font-size:30px;margin:16px 0}h3{font-size:22px;margin:22px 0 10px}p{line-height:1.75;margin:14px 0}.hero h1{font-size:clamp(48px,8vw,78px)}.hero .intro{font-size:20px}.eyebrow,.pill{color:var(--accent);font-size:12px;letter-spacing:.15em;text-transform:uppercase}.note,.muted{color:var(--muted);font-size:14px;line-height:1.65}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.cta{padding:16px 24px;background:var(--accent);border:1px solid var(--accent);border-radius:12px;color:#151923;font-weight:700;margin:18px 0;min-height:52px}.secondary{background:#172139;color:var(--text);border-color:#7180a0}.text-button{background:none;border:0;color:var(--accent);text-decoration:underline;padding:12px 0}.actions{display:flex;justify-content:space-between;align-items:center;gap:14px}.cards{display:grid;gap:14px;margin:25px 0}.card,.reading-section,.result-card{padding:25px;background:#111a2ce8;border:1px solid #65718b77;border-radius:18px}.path-card{width:100%;text-align:left;color:var(--text)}.path-card strong{display:block;font:28px var(--serif);margin:10px 0}.featured{border-color:var(--accent)}.progress-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;margin-bottom:12px}.progress{height:5px;background:#ffffff20;border-radius:6px;margin-bottom:30px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent)}fieldset{border:0;min-width:0}legend{width:100%}.question-title{font-size:clamp(29px,4.5vw,42px)}.options{display:grid;gap:10px;margin-top:20px}.option{display:flex;align-items:center;gap:14px;padding:17px;border:1px solid #78839b77;border-radius:12px;background:#141d30ed;line-height:1.5;cursor:pointer;min-height:64px}.option:has(input:checked){border-color:var(--accent);background:#342f2bf5}.option input{flex:0 0 18px;height:18px;accent-color:var(--accent)}.interstitial{text-align:center;padding:50px 0}.interstitial p{font-size:20px}.loading-lines{list-style:none;display:grid;gap:20px;margin:30px 0;color:var(--muted)}.loading-lines .active{color:var(--accent)}.email-label{display:block;margin:24px 0 10px}input[type=email],input.link{width:100%;padding:16px;background:#10182a;color:var(--text);border:1px solid #6c7995;border-radius:10px;font-size:16px}.consent{display:flex;gap:12px;line-height:1.5;margin:22px 0}.consent input{accent-color:var(--accent)}.honeypot{display:none}.error,.status{color:#ffd27d;line-height:1.6}.result-tag{font:italic 25px var(--serif);color:var(--accent)}.preview p{font-size:19px}.bars{display:grid;gap:20px;margin:28px 0}.bar-label{display:flex;justify-content:space-between;margin-bottom:8px}.bar-track{height:8px;border-radius:8px;background:#ffffff20;overflow:hidden}.bar-track span{display:block;height:100%;background:linear-gradient(90deg,#d89837,#ffce73)}.reading-section{margin:18px 0}.reading-section h2{font-size:28px}.reading-section h3{color:#ffd27d}.locked-row{display:flex;gap:16px;align-items:baseline}.section-number{color:var(--accent)}.offer{margin:40px 0}.offer .cards{grid-template-columns:1fr 1fr}.product .cta{width:100%;text-align:left;line-height:1.5}.product-price{font:30px var(--serif);display:block}.weights{display:grid;grid-template-columns:1fr 1fr;gap:12px}.weight{display:flex;justify-content:space-between;padding:12px;border-bottom:1px solid #ffffff22}.private-link{margin-top:30px}.review-banner{padding:16px;border:1px solid var(--accent);color:var(--accent);margin-bottom:25px}.review-links{display:flex;flex-wrap:wrap;gap:14px}.review-links a{color:var(--accent)}#footer{position:relative;z-index:2;text-align:center;color:var(--muted);padding:10px 24px 30px}blockquote{border-left:2px solid var(--accent);padding:6px 16px;margin:16px 0;line-height:1.7;color:var(--muted)}.boot{text-align:center;color:var(--accent);font-size:40px}body[data-stage=question] #footer,body[data-stage=interstitial] #footer,body[data-stage=loading] #footer,body[data-stage=email] #footer{display:none}
@media(max-width:600px){.wrap{padding:24px 18px 45px}.card,.reading-section,.result-card{padding:20px}.offer .cards,.weights{grid-template-columns:1fr}.option{padding:15px 12px}.brand{padding:23px 16px}.hero .intro{font-size:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Restore the original luminous hero and drifting golden dust. */
#motes{position:fixed;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.brand{display:flex;align-items:center;justify-content:center;gap:10px}
.brand-dot{display:block;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,var(--accent) 55%,var(--accent-2));box-shadow:0 0 12px 1px var(--glow)}
.hero h1{position:relative;isolation:isolate;font-size:clamp(40px,7.4vw,66px);line-height:1.02;letter-spacing:-.018em}
.hero h1 em{color:var(--accent);font-style:italic;text-shadow:0 0 24px #ffb24b55,0 0 55px #ff9e5722}
.hero h1::before{content:"";position:absolute;inset:-34% 0;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#ffc24b22,transparent 70%);animation:hero-aura 6s ease-in-out infinite}
@keyframes hero-aura{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
.hero .intro{font-size:clamp(16px,2.4vw,19px);color:#d4d0dd;line-height:1.6;max-width:510px;margin-bottom:26px}
.cta:not(.secondary){background:linear-gradient(100deg,var(--accent),var(--accent-2));border:none;border-radius:100px;box-shadow:0 10px 44px -10px var(--glow);transition:transform .25s,box-shadow .25s}
.cta:not(.secondary):hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 56px -10px var(--glow)}
.path-card.featured{box-shadow:0 0 44px -18px var(--glow)}
.progress span{box-shadow:0 0 12px var(--glow)}
@media(prefers-reduced-motion:reduce){.hero h1::before{animation:none}.cta:not(.secondary){transition:none}.cta:not(.secondary):hover:not(:disabled){transform:none}}
h1[tabindex="-1"]:focus{outline:none}
