:root{color:#202d2a;font-synthesis:none;--ink:#202d2a;--teal:#23695e;--line:#d9ddd3;--muted:#55645e;background:#fbf9f4;font-family:Avenir Next,Avenir,Segoe UI,sans-serif;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button{cursor:pointer}button,a,input{touch-action:manipulation}:focus-visible{outline-offset:5px;outline:3px solid #23695e}h1:focus,main:focus{outline:none}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em;overflow-wrap:anywhere;line-height:1.12}h1{font-size:clamp(3rem,6.5vw,6.4rem);font-weight:750}h2{font-size:clamp(1.8rem,3vw,2.7rem);font-weight:650}h3{letter-spacing:-.025em;font-size:1.2rem}p+p{margin-top:1rem}.wrap{width:min(1240px,100% - 80px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:110px;display:flex}.brand{letter-spacing:-.04em;align-items:center;gap:12px;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--teal);color:#fff;border-radius:50%;place-items:center;width:39px;height:39px;font-size:1.65rem;line-height:1;display:grid}.header-note,.micro{color:var(--muted);font-size:.8rem;line-height:1.65}.skip{z-index:10;background:var(--ink);color:#fff;border-radius:10px;padding:12px 20px;position:fixed;top:-100px;left:16px}.skip:focus{top:16px}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin-bottom:22px;font-size:.72rem;font-weight:700;display:block}.hero{grid-template-columns:1.08fr 1fr;align-items:center;gap:20px;padding-block:80px 76px;display:grid}.hero h1{margin-bottom:28px;font-size:clamp(3rem,5.6vw,5.6rem);line-height:1.02}.dot{color:#c46148}.lead{color:var(--muted);font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.65}.button{border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:30px;min-height:58px;padding:15px 27px;font-size:.95rem;font-weight:650;text-decoration:none;transition:background-color .18s,transform .18s;display:inline-flex}.button.primary{background:var(--teal);color:#fff}.button.secondary{color:var(--ink);border-color:var(--ink);background:0 0}.hero .button{margin-top:32px;margin-bottom:14px}.button span{font-size:1.3rem;line-height:1}@media (hover:hover){.button.primary:hover{background:#194f46;transform:translateY(-2px)}.button.secondary:hover{background:#e8ece3}}.hero-scene{isolation:isolate;background:#eff0e6;border-radius:45% 45% 20px 20px;height:470px;position:relative}.scene-note{color:var(--teal);font-size:.85rem;line-height:1.5;position:absolute;top:35px;left:30px;transform:rotate(-5deg)}.scene-sun{background:#efcc76;border-radius:50%;width:98px;height:98px;position:absolute;top:48px;right:45px}.scene-ground{z-index:-1;background:#d9dfd1;border-radius:50%;width:90%;height:50px;position:absolute;bottom:83px;left:5%}.scene-people{bottom:90px;align-items:end;height:245px;display:flex;position:absolute;inset-inline:6%}.scene-people .character{flex-shrink:0;width:25%;height:auto;margin-left:-6%}.scene-people .character:first-child{margin-left:0;transform:translateY(-5px)rotate(-6deg)}.scene-people .character:nth-child(2){transform:translateY(12px)rotate(5deg)}.scene-people .character:nth-child(3){transform:translateY(-17px)}.scene-people .character:nth-child(4){transform:translateY(14px)rotate(-4deg)}.scene-people .character:nth-child(5){transform:rotate(7deg)}.scene-cloud{opacity:.9;background:#fffdf8;border-radius:20px;width:74px;height:22px;position:absolute;top:120px;left:18%}.scene-cloud:before{content:"";background:inherit;border-radius:50%;width:34px;height:30px;position:absolute;top:-12px;left:16px}.character{color:#293a34;display:block;overflow:visible}.character .shadow{fill:#293a34;opacity:.08}.character .no-stroke{stroke:none}.character .fill-ink{fill:#293a34}.character .fill-none{fill:none}.character .fill-paper{fill:#fbf9f4}.character .fill-teal{fill:#71a599}.character .fill-coral{fill:#db947e}.character .fill-yellow{fill:#ebca77}.character .fill-lilac{fill:#b4b5ce}.character .fill-green{fill:#a8c8a8}.character .skin-1{fill:#f1c6a0}.character .skin-2{fill:#c98e66}.character .skin-3{fill:#f6d4b6}.character .skin-4{fill:#8d5b40}.character .skin-5{fill:#e3ad84}.character .cheeks{fill:#e2846c;opacity:.45}.stats-page{max-width:720px;padding:32px 0}.stats-page h1{margin-bottom:28px;font-size:clamp(2.2rem,4.5vw,3.6rem)}.stats-card{background:#e6ede6;border-radius:22px;flex-direction:column;justify-content:center;align-items:flex-start;padding:38px;display:flex;position:relative}.tiny-star{color:var(--teal);margin-bottom:22px;font-size:2.5rem;line-height:1}#stats{color:var(--teal);font-size:1.2rem;font-weight:650}#stats-number{letter-spacing:-.07em;margin-bottom:15px;font-size:clamp(3.5rem,6vw,5.3rem);line-height:1.1;display:block}.stats-label{max-width:260px;margin-top:10px;font-weight:650;line-height:1.4}.directions-section{padding-top:92px}.directions-section h2{margin-bottom:36px}.direction-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.direction-card{border:1px solid var(--line);background:#fffdf8;border-radius:18px;padding:22px 20px 26px;position:relative}.card-number{color:var(--muted);letter-spacing:.1em;font-size:.7rem;font-weight:600;display:block}.direction-card .character{max-width:100%;height:170px;margin:14px auto 20px}.direction-card h3{min-height:3.6em;margin-bottom:12px}.direction-card p{color:var(--muted);font-size:.8rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:36px;margin-top:90px;padding-block:26px 36px;font-size:.72rem;display:flex}.site-footer>div{max-width:530px}.site-footer p{margin:0}.site-footer details{font-size:inherit;margin-top:4px}.site-footer summary{min-height:36px}.notice{color:#534324;background:#f7e9c7;border-radius:12px;margin-top:24px;padding:18px 22px;font-size:.9rem}.page-top{justify-content:space-between;align-items:center;gap:20px;padding-top:32px;display:flex}.page-top .eyebrow{margin-bottom:0}.back-link{align-items:center;min-height:44px;font-size:.85rem;text-decoration:none;display:inline-flex}.progress-panel{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fbf9f4f0;margin-bottom:36px;padding:14px 0;position:sticky;top:0}#progress-text{font-size:.85rem;font-weight:700}progress{width:100%;height:8px;accent-color:var(--teal);background:#e4e6dc;border:0;border-radius:10px;display:block}progress::-webkit-progress-bar{background:#e4e6dc;border-radius:10px}progress::-webkit-progress-value{background:var(--teal);border-radius:10px;transition:width .3s}progress::-moz-progress-bar{background:var(--teal);border-radius:10px}.quiz{max-width:720px;margin-inline:auto;padding:8px 0}.quiz-title{margin-bottom:10px;font-size:clamp(1.7rem,3vw,2.4rem)}.quiz-hint{color:var(--muted);margin-bottom:20px}.progress-panel>div{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:10px;display:flex}.card-stage{touch-action:pan-y;margin:-4px;padding:4px;overflow:hidden}fieldset{border:1px solid var(--line);background:#fffdf8;border-radius:24px;flex-direction:column;min-width:0;margin:0;padding:28px 32px 26px;display:flex;box-shadow:0 10px 30px #202d2a0f}legend{float:left;letter-spacing:-.01em;width:100%;padding:0;font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:650;line-height:1.45}legend:focus{outline:none}.question-number{width:max-content;color:var(--teal);letter-spacing:.06em;background:#e6ede6;border-radius:8px;margin-bottom:16px;padding:3px 10px;font-size:.8rem;display:block}fieldset .choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:28px}.card-nav{justify-content:space-between;gap:12px;margin-top:18px;display:flex}.card-nav .button{gap:12px;min-height:52px}.card-nav .button[hidden]{display:none}.card-nav .button:disabled{opacity:.4;cursor:default;transform:none}@keyframes enter-next{0%{opacity:0;transform:translate(40px)}}@keyframes enter-prev{0%{opacity:0;transform:translate(-40px)}}fieldset.enter-next{animation:.32s ease-out enter-next}fieldset.enter-prev{animation:.32s ease-out enter-prev}.choices{clear:both;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.choice{border:1.5px solid var(--line);background:#fffdf8;border-radius:14px;justify-content:center;align-items:center;min-height:56px;padding:12px 8px;font-weight:600;transition:background-color .18s,border-color .18s,color .18s,transform .12s;display:flex;position:relative}.choice input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.choice:has(input:checked){background:var(--teal);border-color:var(--teal);color:#fff;animation:.28s ease-out pop}.choice:has(input:focus-visible){outline:3px solid var(--teal);outline-offset:3px}.choice:active{transform:scale(.97)}@media (hover:hover){.choice:not(:has(input:checked)):hover{border-color:var(--teal);background:#f1f4ec}}fieldset:has(input:checked){border-color:#c9d8cc}fieldset:has(input:checked) .question-number{background:var(--teal);color:#fff}.result-disclaimer{color:var(--muted);max-width:620px;margin-top:25px;font-size:.9rem}.results-grid{gap:24px;display:grid}.result-card{border:1px solid var(--line);background:#fffdf8;border-radius:22px;grid-template-columns:240px 1fr;display:grid;overflow:hidden}.result-art{background:#edf0e6;justify-content:center;align-items:center;padding:25px;display:flex;position:relative}.result-art .card-number{position:absolute;top:24px;left:24px}.result-art .character{max-width:100%;height:245px}.result-card:nth-child(2) .result-art{background:#f4e8df}.result-card:nth-child(3) .result-art{background:#f4edcf}.result-card:nth-child(4) .result-art{background:#eceaf3}.result-card:nth-child(5) .result-art{background:#e6eee5}.result-body{padding:34px 40px}.result-body .eyebrow{margin-bottom:12px}.result-body h2{margin-bottom:16px;font-size:clamp(1.6rem,2.6vw,2.3rem)}.score{color:var(--teal);font-size:1.1rem;font-weight:700}.cell{background:#e4e6dc;border-radius:6px;width:26px;height:10px}.cell.filled{background:var(--teal);animation:.4s ease-out both fill}.cell:nth-child(2){animation-delay:60ms}.cell:nth-child(3){animation-delay:.12s}.cell:nth-child(4){animation-delay:.18s}.cell:nth-child(5){animation-delay:.24s}.cell:nth-child(6){animation-delay:.3s}.result-hero{grid-template-columns:300px 1fr;align-items:center;gap:48px;padding:36px 0 28px;display:grid}.result-hero-art{isolation:isolate;background:#eff0e6;border-radius:45% 45% 24px 24px;justify-content:center;align-items:flex-end;height:320px;padding-bottom:14px;display:flex;position:relative}.result-hero-art .scene-sun{z-index:-1;width:64px;height:64px;top:30px;right:30px}.result-hero-art .character{height:260px}.result-hero h1{margin-bottom:20px;font-size:clamp(2.6rem,5vw,4.4rem)}.journey{border:1px solid var(--line);background:#fffdf8;border-radius:22px;margin-bottom:32px;padding:32px 36px}.journey h2{margin-bottom:20px}.path{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.path-group{gap:3px;display:flex}.path .cell{flex:1;width:auto;height:14px}.path-group:nth-child(2) .cell{animation-delay:.35s}.path-group:nth-child(3) .cell{animation-delay:.7s}.path-group:nth-child(4) .cell{animation-delay:1.05s}.path-group:nth-child(5) .cell{animation-delay:1.4s}.path-legend{color:var(--muted);margin-top:12px;font-size:.85rem}.focus{margin-top:18px;font-weight:600}.focus .text-button{padding:0;font-weight:600}.result-card.is-focus{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal)}.badge{color:#fff;letter-spacing:.02em;background:#c46148;border-radius:20px;padding:4px 10px;font-size:.7rem;font-weight:700;position:absolute;top:20px;right:20px}.closing-actions{flex-wrap:wrap;gap:12px;margin:28px 0 15px;display:flex}.section-lead{color:var(--muted);max-width:640px;margin:-18px 0 32px}details{color:var(--muted);margin-top:1rem;font-size:.9rem}summary{cursor:pointer;color:var(--teal);align-items:center;min-height:44px;font-weight:600;display:flex}details p{margin-top:4px}.result-body>p:not(.score){color:var(--muted);font-size:.9rem}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.step-list{gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.step{color:var(--muted);border:1.5px dashed #c9cfc4;border-radius:14px;align-items:center;gap:12px;padding:10px 14px;font-size:.92rem;line-height:1.4;display:flex}.step-number{border:1.5px solid #c9cfc4;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:.8rem;font-weight:700;display:grid}.step.done{color:var(--ink);background:#fbf1d3;border:1.5px solid #e5c56c;font-weight:600}.medal{flex-shrink:0;width:28px;height:32px}.medal .ribbon-l{fill:#23695e}.medal .ribbon-r{fill:#c46148}.medal .disc{fill:#ebca77;stroke:#b98f2e;stroke-width:1.5px}.medal .star{fill:#fffdf8}.step.done .medal{animation:.5s ease-out both pop}.step-list .step.done:nth-child(2) .medal{animation-delay:80ms}.step-list .step.done:nth-child(3) .medal{animation-delay:.16s}.step-list .step.done:nth-child(4) .medal{animation-delay:.24s}.step-list .step.done:nth-child(5) .medal{animation-delay:.32s}.step-list .step.done:nth-child(6) .medal{animation-delay:.4s}.next-step{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.next-step h3{letter-spacing:0;margin-bottom:10px;font-size:.8rem}.next-step p{font-size:.95rem}.closing-card{background:#e6ede6;border-radius:24px;margin-top:56px;padding:48px}.closing-card h2{margin-bottom:20px}.closing-card>p{max-width:620px}.reset-row{margin-top:35px}.text-button{color:var(--teal);text-underline-offset:4px;background:0 0;border:0;padding:12px 0;text-decoration:underline}@media (width<=1000px){.wrap{width:calc(100% - 48px)}.hero{grid-template-columns:1fr 1fr;padding-block:55px}.hero-scene{height:370px}.scene-people{bottom:80px}.scene-note{font-size:.72rem;left:22px}.scene-sun{width:70px;height:70px;right:24px}.direction-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=680px){.wrap{width:calc(100% - 32px)}.site-header{min-height:78px}.brand{gap:9px;font-size:1rem}.brand-mark{width:34px;height:34px}.header-note{display:none}.hero{grid-template-columns:1fr;gap:26px;padding-block:38px 28px}.hero h1{margin-bottom:22px}.eyebrow{letter-spacing:.07em;margin-bottom:18px;font-size:.64rem}.hero .button{margin-top:24px}.hero-scene{border-radius:22px;height:230px}.scene-people{bottom:32px;height:170px;inset-inline:9%}.scene-people .character{max-height:155px}.scene-ground{height:30px;bottom:30px}.scene-note{font-size:.65rem;top:18px;left:18px}.scene-sun{width:50px;height:50px;top:18px;right:24px}.scene-cloud{top:54px;left:38%;transform:scale(.7)}.stats-card{position:relative}.tiny-star{font-size:2rem;position:absolute;top:25px;right:25px}#stats{max-width:calc(100% - 35px)}#stats-number{font-size:3.5rem}.directions-section{padding-top:48px}.direction-grid{grid-template-columns:1fr;gap:12px}.direction-card{grid-template-columns:72px 1fr;gap:0 18px;padding:22px;display:grid}.direction-card .character{grid-area:1/1/4;height:130px;margin:auto}.direction-card .card-number{grid-column:2;margin-bottom:8px}.direction-card h3{min-height:0;margin-bottom:9px;font-size:1.1rem}.direction-card p{grid-column:2}.site-footer{flex-direction:column;gap:16px;margin-top:48px;padding-block:24px}.page-top{flex-wrap:wrap;gap:4px;padding-top:18px}.page-top .eyebrow{width:100%;margin-top:10px}.hero h1{font-size:clamp(2.3rem,10vw,3.4rem)}.progress-panel{margin-bottom:24px}.choices{gap:8px}.choice{min-height:56px;font-size:1rem}.quiz{padding-top:14px}.quiz-hint{margin-bottom:14px;font-size:.9rem}fieldset{border-radius:20px;min-height:0;padding:22px 18px 18px}fieldset .choices{grid-template-columns:1fr;padding-top:22px}.question-number{margin-bottom:12px}.quiz-title{margin-bottom:0;font-size:1.45rem}.quiz-hint{display:none}.quiz .progress-panel{margin-top:10px;margin-bottom:16px}.page-top:has(+.quiz) .eyebrow{display:none}.card-nav .button{flex:1;padding-inline:14px}.stats-card{border-radius:18px;padding:25px}.progress-panel{margin-inline:-16px;padding:12px 16px}.result-hero{grid-template-columns:1fr;gap:22px;padding:22px 0 18px}.result-hero-art{border-radius:22px;height:240px}.result-hero-art .character{height:200px}.result-hero h1{margin-bottom:14px;font-size:2.4rem}.journey{border-radius:18px;padding:24px 20px}.path{gap:5px}.path-group{gap:2px}.path .cell{border-radius:4px;height:12px}.closing-actions{flex-direction:column}.step{padding:10px 12px;font-size:.9rem}.closing-actions .button{width:100%}.section-lead{margin-top:-22px}.result-card{grid-template-columns:1fr}.result-art{height:175px}.result-art .character{height:155px}.result-body{padding:26px 22px}.result-body .eyebrow{letter-spacing:.06em}.closing-card{margin-top:28px;padding:28px 22px}.notice{padding:16px}}@keyframes bob{50%{transform:translateY(-5px)}}@keyframes blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes wave{0%,55%,to{transform:rotate(0)}65%{transform:rotate(-16deg)}75%{transform:rotate(8deg)}85%{transform:rotate(-12deg)}}@keyframes cheer-l{50%{transform:rotate(8deg)}}@keyframes cheer-r{50%{transform:rotate(-8deg)}}@keyframes reach{50%{transform:translateY(-6px)rotate(-3deg)}}@keyframes float{50%{transform:translateY(-6px)}}@keyframes twinkle{0%,to{opacity:.2;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}@keyframes sway{50%{transform:rotate(7deg)}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}@keyframes fill{0%{transform:scaleX(0)}}@keyframes pop{40%{transform:scale(1.05)}}@keyframes sun{50%{transform:scale(1.08)}}@keyframes drift{50%{transform:translate(14px)}}.character .body{animation:3.2s ease-in-out infinite bob}.character .eyes{transform-box:fill-box;transform-origin:50%;animation:5s infinite blink}.character .arm-l{transform-box:view-box;transform-origin:42px 120px}.character .arm-r{transform-box:view-box;transform-origin:118px 120px}.mood-wave .arm-r{animation:2.6s ease-in-out infinite wave}.mood-cheer .arm-l{animation:1.4s ease-in-out infinite cheer-l}.mood-cheer .arm-r{animation:1.4s ease-in-out infinite cheer-r}.mood-reach .arm-r{animation:2s ease-in-out infinite reach}.character .prop{animation:2.8s ease-in-out infinite float}.character .sparkles path{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite twinkle}.character .sparkles path+path{animation-delay:.9s}.character .sprout{transform-box:fill-box;transform-origin:50% 100%;animation:3s ease-in-out infinite sway}.scene-people .character:nth-child(2) .body,.direction-card:nth-child(2) .body{animation-delay:-.6s}.scene-people .character:nth-child(3) .body,.direction-card:nth-child(3) .body{animation-delay:-1.2s}.scene-people .character:nth-child(4) .body,.direction-card:nth-child(4) .body{animation-delay:-1.8s}.scene-people .character:nth-child(5) .body,.direction-card:nth-child(5) .body{animation-delay:-2.4s}.scene-people .character:nth-child(2n) .eyes{animation-delay:-2s}.scene-sun{animation:6s ease-in-out infinite sun}.scene-cloud{animation:9s ease-in-out infinite drift}#main{animation:.45s ease-out both rise}.result-hero,.journey,.result-card,.closing-card{animation:.55s ease-out both rise}.journey{animation-delay:.1s}.result-card:first-child{animation-delay:.2s}.result-card:nth-child(2){animation-delay:.28s}.result-card:nth-child(3){animation-delay:.36s}.result-card:nth-child(4){animation-delay:.44s}.result-card:nth-child(5){animation-delay:.52s}.cell.filled{transform-origin:0}@media (hover:hover){.direction-card:hover .body{animation-duration:.8s}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
