@keyframes sceneIn{0%{opacity:0;filter:blur(6px);transform:scale(1.05)translateZ(0)}60%{opacity:1}to{opacity:1;filter:blur();transform:scale(1)translateZ(0)}}@keyframes sceneOut{0%{opacity:1;filter:blur();transform:scale(1)}to{opacity:0;filter:blur(8px);transform:scale(.95)translateY(8px)}}@keyframes sidebarIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{0%{opacity:0;transform:translateY(14px)scale(.98)}60%{opacity:1}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cascadeIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes checkIn{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes markerIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}60%{opacity:1;transform:translate(-50%,-50%)scale(1.3)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes heroNumber{0%{opacity:0;filter:blur(20px);transform:scale(.4)}60%{opacity:1;filter:blur();transform:scale(1.05)}to{opacity:1;filter:blur();transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes markerPop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes subtleSway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes sweep{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}@keyframes beatIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:root{--bg:#fff;--bg-2:#dbeef7;--bg-2-soft:#eaf5fb;--navy:#1a2a3a;--navy-soft:#2a3d52;--text-body:#2d3436;--text-muted:#414651;--green:#0faa76;--green-glow:#14c98a;--ink-60:#1a2a3a99;--ink-40:#1a2a3a66;--ink-15:#1a2a3a26;--ink-08:#1a2a3a14;--ink-04:#1a2a3a0a;--sans:"Barlow", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text-body);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;width:100vw;height:100vh;margin:0;padding:0;font-weight:400;overflow:hidden}#root{width:100%;height:100%}.serif{font-family:var(--sans);letter-spacing:-.02em;color:var(--navy);font-weight:700}.serif-bold{font-family:var(--sans);letter-spacing:-.025em;color:var(--navy);font-weight:700}.label{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.mono{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:500}.pill{background:var(--navy);color:#fff;font-family:var(--sans);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:60px;justify-content:center;align-items:center;gap:10px;padding:18px 32px;font-size:14px;font-weight:600;transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s,background .22s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #1a2a3a2e}.pill:hover{transform:translateY(-1px)scale(1.01);box-shadow:0 12px 32px #1a2a3a47}.pill:active{transform:translateY(0)scale(.99)}.pill-primary{background:var(--green);color:#fff;box-shadow:inset 0 1px #ffffff40,0 10px 30px #0faa7647}.pill-primary:hover{box-shadow:inset 0 1px #ffffff4d,0 14px 40px #0faa7666,0 0 0 6px #0faa7624}.pill-secondary{background:var(--bg-2);color:var(--text-body);box-shadow:none;border-radius:0}.pill-secondary:hover{box-shadow:none;background:#c9e4f0}.pill-ghost{color:var(--navy);border:1px solid var(--ink-15);box-shadow:none;background:0 0}.pill-ghost:hover{background:var(--ink-04);box-shadow:none}.field{border:1px solid var(--ink-15);width:100%;font-family:var(--sans);color:var(--navy);background:#fff;border-radius:8px;outline:none;padding:18px 20px;font-size:16px;transition:all .22s;display:block}.field:focus{border-color:var(--green);background:#fff;box-shadow:0 0 0 4px #0faa7624,0 8px 24px #0faa761a}.stage{perspective:1600px;transform-style:preserve-3d;position:absolute;inset:0}.scene{transform-origin:50%;will-change:transform, opacity, filter;position:absolute;inset:0}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.6)}}.pulse-dot{background:var(--navy);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulseDot}.progress-track{background:var(--bg-2);border-radius:2px;height:2px;position:relative;overflow:visible}.progress-fill{background:var(--navy);border-radius:2px;transition:width .7s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0 auto 0 0}.progress-comet{background:linear-gradient(90deg, transparent, #0faa7600 0%, #0faa76b3 70%, var(--green-glow) 100%);filter:blur(2px);pointer-events:none;border-radius:999px;width:60px;height:6px;transition:left .7s cubic-bezier(.2,.7,.2,1);position:absolute;top:50%;transform:translateY(-50%)}.progress-comet:after{content:"";background:var(--green-glow);filter:blur(.5px);width:10px;height:10px;box-shadow:0 0 12px var(--green-glow), 0 0 28px #0faa768c;border-radius:50%;position:absolute;top:50%;right:-2px;transform:translateY(-50%)}.glass{-webkit-backdrop-filter:blur(28px)saturate(140%);border:1px solid var(--bg-2);background:#ffffffbf;box-shadow:inset 0 1px #fffc,0 30px 80px #1a2a3a1a,0 6px 18px #1a2a3a0d}.scroll-y{scrollbar-width:thin;overflow-y:auto}.depth-card{border:1px solid var(--ink-08);cursor:pointer;background:#fff;border-radius:12px;transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s,border-color .28s;position:relative;overflow:hidden}.depth-card:hover{background:var(--bg-2-soft);border-color:var(--bg-2);transform:translateY(-3px);box-shadow:0 24px 60px #1a2a3a1a,0 6px 16px #1a2a3a0f}.depth-card.selected{border-color:var(--green);box-shadow:0 0 0 1px var(--green), 0 24px 60px #0faa762e, 0 6px 16px #0faa761a;background:#fff}.depth-card.dim{opacity:.55}.ripple{pointer-events:none;background:radial-gradient(circle,#0faa7673,#0faa7600);border-radius:50%;animation:.7s cubic-bezier(.2,.7,.2,1) forwards rippleAnim;position:absolute;transform:translate(-50%,-50%)scale(0)}@keyframes rippleAnim{to{opacity:0;transform:translate(-50%,-50%)scale(8)}}.stripe-placeholder{background-image:repeating-linear-gradient(135deg,#1a2a3a0d 0 6px,#1a2a3a00 6px 12px);background-color:var(--bg-2-soft)}@keyframes slowRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dot-sep{vertical-align:middle;opacity:.5;background:currentColor;border-radius:50%;width:3px;height:3px;margin:0 12px;display:inline-block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--ink-15);border-radius:999px}::-webkit-scrollbar-track{background:0 0}.intro-logo{position:absolute;top:32px;left:80px}.tried-card[data-selected=false]:hover{transform:scale(1.02);background:#dbeef7!important;border-color:#c9e4f0!important}@media (width<=768px){body,html{font-size:15px}.intro-grid{grid-template-rows:38vh 1fr!important;grid-template-columns:1fr!important}.intro-stat{font-size:120px!important}.intro-stat-sub{font-size:20px!important}.intro-left{border-bottom:1px solid var(--ink-08)}.intro-right{gap:18px!important;padding:24px 20px 100px!important}.intro-logo{margin-bottom:6px;position:static!important;top:auto!important;left:auto!important}.intro-left{padding:24px 20px 80px!important}.intro-headline{font-size:clamp(28px,8vw,36px)!important}.qframe{padding:124px 16px 160px!important}.qframe h1{max-width:100%!important;margin-bottom:10px!important;font-size:clamp(22px,5.6vw,26px)!important;line-height:1.15!important}.qframe .q-subtitle{max-width:100%!important;margin-bottom:18px!important;font-size:13px!important;line-height:1.45!important}.qframe>div:first-child{margin-bottom:18px!important}.qframe>div:first-child .pill{min-height:0!important;padding:8px 14px!important;font-size:12px!important}.qframe>div:first-child .label{letter-spacing:.12em!important;color:var(--navy)!important;font-size:11px!important;font-weight:600!important}.qframe>div:first-child .mono{display:none!important}.age-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}.q3-layout{grid-template-rows:auto!important;grid-template-columns:1fr!important;gap:14px!important}.q3-inspector{display:none!important}.norwood-thumbs{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.norwood-thumbs button{text-align:center!important;flex-direction:column!important;align-items:center!important;gap:4px!important;padding:8px!important}.norwood-thumbs button>div:first-child{width:44px!important;height:50px!important}.norwood-thumbs button>div:last-child>div:first-child{font-size:11px!important;line-height:1.1!important}.norwood-thumbs button>div:last-child>div:last-child{display:none!important}.family-chips{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px;flex-wrap:nowrap!important;overflow:auto hidden!important}.family-chips>*{scroll-snap-align:start;flex:none!important}.family-chips::-webkit-scrollbar{height:0}.tried-grid>.tried-card{aspect-ratio:auto!important;min-height:96px!important;padding:16px 20px!important}.mobile-mini-pill{height:36px!important;font-size:11px!important;top:8px!important}.depth-indicator{-webkit-backdrop-filter:blur(8px)saturate(140%);background:linear-gradient(#ffffffeb 0%,#ffffffd9 70%,#fff0 100%);gap:8px!important;padding:8px 16px 16px!important;top:56px!important;left:0!important;right:0!important}.depth-indicator .progress-track,.depth-indicator .progress-fill{border-radius:4px!important;height:4px!important}.depth-indicator .progress-comet{width:70px!important;height:8px!important}.depth-indicator .mono{color:var(--navy)!important;letter-spacing:.06em!important;font-size:11px!important;font-weight:600!important;line-height:1.2!important}.depth-indicator .pulse-dot{background:var(--green)!important;width:8px!important;height:8px!important}.pill{min-height:48px!important;padding:0 22px!important}.result-grid{grid-template-rows:auto auto!important;grid-template-columns:1fr!important}.result-body{padding:24px 16px 96px!important}.kit-card{padding:18px 16px 22px!important}.kit-strip{gap:6px!important}.kit-card .pill{letter-spacing:.03em!important;padding:0 18px!important;font-size:12px!important}.section1-grid{grid-template-columns:1fr!important;gap:20px!important}.section1-grid>div:first-child{max-width:200px;margin:0 auto}.qframe{padding-bottom:80px!important}.age-grid{flex:none!important;grid-auto-rows:110px!important;align-content:start!important;gap:10px!important}.age-grid>button{height:110px!important;min-height:0!important}.age-grid .age-card-visual{flex:0 0 56px!important;min-height:0!important;max-height:56px!important;padding:4px!important}.age-grid .age-card-visual>div:first-child{width:40px!important;height:48px!important}.age-grid>button>div:last-child{padding:8px 12px 10px!important}.age-grid>button>div:last-child>div:first-child{font-size:20px!important;line-height:1!important}.age-grid>button>div:last-child>div:last-child{margin-top:2px!important;font-size:10px!important}.family-chips{flex-wrap:wrap!important;gap:8px!important;padding-bottom:0!important;overflow:visible!important}.family-chips>button{flex:none!important;padding:10px 16px!important;font-size:13px!important}.q4-layout{grid-template-columns:1fr!important;gap:16px!important}.q4-layout>div:last-child{display:none!important}.tried-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.tried-grid>.tried-card{aspect-ratio:1/1.05!important;gap:8px!important;min-height:0!important;padding:14px 10px!important}.tried-grid>.tried-card>div:nth-child(2){font-size:14px!important}.tried-grid>.tried-card>div:nth-child(3){font-size:11px!important;line-height:1.3!important}.tried-grid>.tried-card svg{width:24px!important;height:24px!important}.depth-card,.depth-card:hover{transform:none!important}}.mobile-mini-pill{z-index:50;-webkit-backdrop-filter:blur(12px)saturate(140%);border:1px solid var(--ink-08);cursor:pointer;background:#ffffffd9;border-radius:999px;align-items:center;gap:10px;height:40px;padding:0 14px;display:flex;position:fixed;top:12px;left:16px;right:16px;box-shadow:0 4px 14px #0f1e320f}.mobile-mini-pill .label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60);font-size:10px;font-weight:600}.mobile-mini-pill .status{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:600;overflow:hidden}.mobile-mini-pill .chev{color:var(--ink-40);flex-shrink:0}.drawer-backdrop{z-index:60;opacity:0;pointer-events:none;background:#0f1e3259;transition:opacity .3s;position:fixed;inset:0}.drawer-backdrop.open{opacity:1;pointer-events:auto}.bottom-drawer{z-index:70;background:var(--bg);border-top:1px solid var(--ink-08);border-radius:22px 22px 0 0;flex-direction:column;height:56px;transition:top .38s cubic-bezier(.2,.8,.2,1),height .38s cubic-bezier(.2,.8,.2,1),border-radius .38s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;inset:auto 0 0;box-shadow:0 -10px 40px #0f1e321f}.bottom-drawer.half{height:60vh;top:auto;bottom:0}.bottom-drawer.full{border-radius:16px 16px 0 0;height:auto;top:52px;bottom:0}.drawer-handle{cursor:grab;flex-shrink:0;justify-content:center;align-items:center;padding:10px 0 6px;display:flex}.drawer-handle:before{content:"";background:var(--ink-15);border-radius:999px;width:36px;height:4px}.drawer-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:4px 20px 10px;display:flex}.drawer-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60);font-size:11px;font-weight:600}.drawer-close{background:var(--bg-2);border:1px solid var(--ink-08);cursor:pointer;width:32px;height:32px;color:var(--navy);border-radius:50%;justify-content:center;align-items:center;display:flex}.drawer-body{-webkit-overflow-scrolling:touch;flex:1;padding:0 16px 24px;overflow-y:auto}.mobile-sticky-cta{z-index:40;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 60%, #fff0);gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-sticky-cta .pill{flex:1;min-height:52px}@media (width<=768px){button,[role=button],.pill{min-height:44px}.timeline-thumb{width:40px!important;height:40px!important}.timeline-thumb:after{content:"";position:absolute;inset:-10px}}
