:root{--berry: #9C1559;--berry-dark: #6B0F3D;--berry-50: #FBEEF4;--berry-100: #F2D3E0;--cream-fill: #EBE5DA;--cream-bg: #F8F5EE;--cream-card: #FEFDFA;--tan: #C7B99A;--tan-light: #E8DFCA;--olive: #655240;--olive-dark: #47382A;--ink: #2E2B25;--ink-2: #4A453D;--muted: #7A756A;--faint: #A8A296;--border: rgba(46, 43, 37, .12);--border-strong: rgba(46, 43, 37, .22);--hover: #F2EDE2}*{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100vh}body{font-family:Georgia,Iowan Old Style,Cambria,Times,serif;font-size:16px;line-height:1.6}h1,h2,h3,h4,.btn,.pillar-preview .name,.tiny,.eyebrow,.horizon-head .label,.brand,.progress,.wheel-title,.summary-pillar .p-name,.q-label,.q-hint,.choice,.check,.legend-item,.num{font-family:-apple-system,BlinkMacSystemFont,Inter,Helvetica Neue,Arial,sans-serif}.app{max-width:1000px;margin:0 auto;padding:28px 24px 80px}.topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;margin-bottom:28px;border-bottom:.5px solid var(--border)}.brand-wrap{display:flex;align-items:center;gap:10px}.brand-mark{width:26px;height:26px;object-fit:contain}.brand{font-size:12px;font-weight:500;color:var(--berry);letter-spacing:1px;text-transform:uppercase}.progress{display:flex;gap:4px;align-items:center}.progress-dot{width:22px;height:3px;border-radius:2px;background:var(--border)}.progress-dot.active{background:var(--berry)}.progress-dot.done{background:var(--berry-100)}h1{font-family:Georgia,serif;font-size:38px;font-weight:400;letter-spacing:-.3px;line-height:1.15;color:var(--ink)}h2{font-family:Georgia,serif;font-size:26px;font-weight:400;letter-spacing:-.2px;line-height:1.25;margin-bottom:8px;color:var(--ink)}h3{font-size:17px;font-weight:500;letter-spacing:0;color:var(--ink)}h4{font-size:13px;font-weight:500;color:var(--muted);letter-spacing:1px;text-transform:uppercase}p{color:var(--ink-2)}.muted{color:var(--muted);font-size:14px}.tiny{font-size:11px;color:var(--berry);letter-spacing:1.5px;text-transform:uppercase;font-weight:500}.card{background:var(--cream-card);border:.5px solid var(--border);border-radius:8px;padding:28px 32px;margin-bottom:16px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:4px;font-family:inherit;font-size:14px;font-weight:500;letter-spacing:.3px;cursor:pointer;border:none;transition:background .15s,transform .05s}.btn:active{transform:scale(.985)}.btn-primary{background:var(--berry);color:#fff}.btn-primary:hover{background:var(--berry-dark)}.btn-ghost{background:transparent;color:var(--ink-2);border:.5px solid var(--border-strong)}.btn-ghost:hover{background:var(--hover)}.btn-link{background:transparent;color:var(--muted);padding:8px 14px}.btn-link:hover{color:var(--ink)}.nav-row{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.welcome-hero{padding:52px 48px 44px;text-align:left;position:relative;overflow:hidden}.welcome-hero:before{content:"";position:absolute;inset:0;background-image:var(--tree-bg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.22;pointer-events:none;z-index:0}.welcome-hero>*{position:relative;z-index:1}.flourish{display:block;width:220px;max-width:60%;height:auto;margin:32px auto 28px;opacity:.8;pointer-events:none}.welcome-hero .tm{color:var(--berry);font-weight:400}.welcome-hero p.lead{font-family:Georgia,serif;font-size:17px;margin-top:18px;color:var(--ink-2);max-width:680px;line-height:1.65}.pillars-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:36px 0 24px}.pillar-preview{padding:18px 14px;text-align:center;border-radius:6px;border:.5px solid var(--border);background:var(--cream-card)}.pillar-preview .name{font-size:12px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--berry);margin-bottom:4px}.pillar-preview .sub{font-size:11px;color:var(--muted);letter-spacing:.3px}.how-it-works{display:flex;gap:28px;margin:32px 0 4px}.how-step{flex:1}.how-step .num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--berry-50);color:var(--berry);font-size:12px;font-weight:500;margin-bottom:10px}.pillar-head{padding:40px 42px 34px;border-bottom:.5px solid var(--border);margin-bottom:28px}.pillar-head .eyebrow{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-weight:500}.pillar-head h1{font-size:48px;letter-spacing:-.8px}.pillar-head .pillar-sub{font-size:17px;color:var(--berry);margin-top:6px;letter-spacing:.5px}.pillar-head .pillar-desc{font-family:Georgia,serif;font-size:15px;color:var(--ink-2);margin-top:18px;max-width:720px;line-height:1.7}.horizon-section{margin-bottom:40px}.horizon-head{display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:4px;margin-bottom:18px;background:var(--cream-fill);color:var(--olive-dark)}.horizon-head .dot{width:9px;height:9px;border-radius:50%;background:var(--olive)}.horizon-head .label{font-size:13px;font-weight:500;letter-spacing:1.2px;text-transform:uppercase}.horizon-head .hint{font-size:12px;margin-left:auto;opacity:.75;letter-spacing:.3px}.question-block{padding:0 8px 8px;margin-bottom:26px}.q-label{font-family:Georgia,serif;font-size:16px;font-weight:400;color:var(--ink);margin-bottom:14px;line-height:1.55}.q-hint{font-size:13px;color:var(--muted);margin-bottom:12px;font-style:italic}.choice-list{display:flex;flex-direction:column;gap:8px}.choice{display:flex;align-items:center;gap:12px;padding:12px 16px;border:.5px solid var(--border);border-radius:4px;cursor:pointer;background:var(--cream-card);transition:all .12s;font-size:14px;line-height:1.5;color:var(--ink-2)}.choice:hover{border-color:var(--berry-100);background:#fefbfc}.choice.selected{border-color:var(--berry);background:var(--berry-50);color:var(--ink)}.choice .radio{flex-shrink:0;width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-strong);display:flex;align-items:center;justify-content:center}.choice.selected .radio{border-color:var(--berry)}.choice.selected .radio:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--berry)}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.check{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border:.5px solid var(--border);border-radius:4px;cursor:pointer;background:var(--cream-card);transition:all .12s;font-size:14px;line-height:1.4;color:var(--ink-2)}.check:hover{border-color:var(--berry-100)}.check.checked{border-color:var(--berry);background:var(--berry-50);color:var(--ink)}.check .box{flex-shrink:0;margin-top:2px;width:16px;height:16px;border-radius:3px;border:1.5px solid var(--border-strong);display:flex;align-items:center;justify-content:center;background:#fff}.check.checked .box{border-color:var(--berry);background:var(--berry)}.check.checked .box:after{content:"";width:5px;height:9px;border:solid white;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin-bottom:2px}.skip-row{text-align:center;margin-top:12px;font-size:13px;color:var(--faint)}.skip-link{color:var(--muted);text-decoration:underline;cursor:pointer}.skip-link:hover{color:var(--ink)}.results-wrap{padding:44px 44px 28px}.wheels-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}@media(max-width:900px){.wheels-row{grid-template-columns:1fr;gap:24px}}.wheel-card{background:var(--cream-card);border:.5px solid var(--border);border-radius:6px;padding:20px 16px 18px;text-align:center}.wheel-card .wheel-title{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--berry);font-weight:500;margin-bottom:2px}.wheel-card .wheel-sub{font-family:Georgia,serif;font-size:13px;color:var(--muted);font-style:italic;margin-bottom:14px}.wheel-card svg{width:100%;height:auto;max-width:260px;margin:0 auto;display:block}.summary-section{margin-top:36px;padding-top:28px;border-top:.5px solid var(--border)}.summary-section h3{font-family:Georgia,serif;font-size:22px;font-weight:400;margin-bottom:18px}.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}@media(max-width:720px){.summary-grid{grid-template-columns:1fr}}.summary-pillar{padding:16px 18px;border:.5px solid var(--border);border-radius:6px;background:var(--cream-card)}.summary-pillar .p-name{font-size:12px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--berry);margin-bottom:12px}.summary-pillar .p-rows{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:13px}.summary-pillar .hz{font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);padding-top:1px}.summary-pillar .val{color:var(--ink-2);font-family:Georgia,serif;font-size:13px}.summary-pillar .goals{margin-top:12px;padding-top:12px;border-top:.5px solid var(--border)}.summary-pillar .goals-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-weight:500}.summary-pillar .goals-list{font-size:13px;color:var(--ink-2);line-height:1.55}.interpretation{background:var(--cream-fill);border-left:3px solid var(--berry);border-radius:0 6px 6px 0;padding:22px 26px;margin-top:28px;font-family:Georgia,serif;font-size:15px;color:var(--olive-dark);line-height:1.65}.interpretation strong{color:var(--berry-dark);font-weight:500}.results-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:28px;padding-top:20px;border-top:.5px solid var(--border)}@media(max-width:720px){.pillars-grid{grid-template-columns:repeat(2,1fr)}.how-it-works{flex-direction:column;gap:16px}.check-grid{grid-template-columns:1fr}.welcome-hero,.pillar-head,.results-wrap{padding:28px 22px}h1{font-size:28px}.pillar-head h1{font-size:34px}}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes drawPath{to{stroke-dashoffset:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.anim-hidden{opacity:0}.r1{animation:fadeUp .9s .1s forwards cubic-bezier(.16,1,.3,1)}.r2{animation:fadeUp .9s .35s forwards cubic-bezier(.16,1,.3,1)}.r3{animation:fadeUp .9s .65s forwards cubic-bezier(.16,1,.3,1)}.r4{animation:fadeUp .9s .95s forwards cubic-bezier(.16,1,.3,1)}.r5{animation:fadeUp .9s 1.3s forwards cubic-bezier(.16,1,.3,1)}.r6{animation:fadeUp .9s 1.7s forwards cubic-bezier(.16,1,.3,1)}.narrative-stage{min-height:540px;padding:56px 60px 44px;position:relative;display:flex;flex-direction:column}.narr-eyebrow{font-family:-apple-system,Inter,sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--berry);font-weight:500}.narr-headline{font-family:Georgia,serif;font-size:52px;font-weight:400;letter-spacing:-.8px;line-height:1.08;color:var(--ink);margin-top:14px;max-width:760px}.narr-body{font-family:Georgia,serif;font-size:18px;line-height:1.65;color:var(--ink-2);max-width:620px;margin-top:20px}.narr-subtext{font-family:-apple-system,Inter,sans-serif;font-size:14px;color:var(--muted);margin-top:16px;letter-spacing:.2px;font-style:italic}.narr-quote{font-family:Georgia,serif;font-size:42px;font-weight:400;letter-spacing:-.5px;line-height:1.2;color:var(--berry-dark);margin-top:28px;max-width:780px}.narr-quote:before{content:'"';color:var(--berry);font-size:68px;line-height:.5;margin-right:4px;vertical-align:-.3em;opacity:.5}.narr-visual{margin:28px 0 12px}.narr-visual svg{display:block;max-width:100%;height:auto}.narr-nav{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:36px}.chapter-dots{display:flex;gap:6px}.chapter-dot{width:22px;height:2px;border-radius:1px;background:var(--border-strong);opacity:.4;transition:all .3s}.chapter-dot.active{background:var(--berry);opacity:1;width:40px}.chapter-dot.done{background:var(--berry);opacity:.6}.skip-intro{position:absolute;top:20px;right:24px;font-size:12px;color:var(--muted);letter-spacing:.5px;text-decoration:none;cursor:pointer;padding:6px 10px;border-radius:4px;transition:all .15s}.skip-intro:hover{color:var(--berry);background:var(--berry-50)}.narr-btn-row{display:flex;gap:10px}.timeline-svg{max-width:720px;margin:24px 0}.wheel-build{max-width:340px;margin:16px 0}.climb-svg{max-width:180px;margin:24px 0 8px}@media(max-width:720px){.narrative-stage{padding:36px 24px 28px;min-height:420px}.narr-headline{font-size:32px}.narr-quote{font-size:26px}.narr-body{font-size:16px}}
