:root{--ground:#f3f1fa;--ink:#221c3a;--ink-soft:#4b4566;--paper:#fff;--coral:#ff6f59;--coral-soft:#ffe3dc;--yellow:#ffd166;--teal:#1f6f63;--teal-soft:#e1f1ec;--lilac:#d9d3f0;--line:#c9c2e6;--display:Fredoka, "Trebuchet MS", sans-serif;--body:Figtree, Verdana, sans-serif}*{box-sizing:border-box}body{background:var(--ground);color:var(--ink);font-family:var(--body);margin:0}button{cursor:pointer;font-family:inherit}:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.page{flex-direction:column;min-height:100vh;padding:0 clamp(16px,4vw,64px) 48px;display:flex}.nav,.main{width:100%;max-width:1240px;margin-inline:auto}.nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:22px 0;display:flex}.brand{font-family:var(--display);font-size:22px;font-weight:700}.nav-actions{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.link{min-height:44px;color:var(--ink);background:0 0;border:0;padding:0 8px;font-size:15px;font-weight:500;text-decoration:underline}.lang{background:var(--paper);border-radius:999px;gap:4px;padding:4px;display:flex}.lang-btn{min-width:48px;min-height:40px;color:var(--ink);background:0 0;border:0;border-radius:999px;font-size:14px;font-weight:700}.lang-btn.is-current{background:var(--ink);color:var(--paper)}.main{flex-wrap:wrap;flex:auto;align-items:center;gap:clamp(24px,4vw,64px);padding-top:16px;display:flex}.scene-wrap{flex-direction:column;flex:440px;align-items:center;gap:12px;min-width:0;display:flex}.drag-hint{text-align:center;color:var(--ink-soft);margin:0;font-size:14px}.panel{flex-direction:column;flex:999 460px;gap:22px;min-width:0;display:flex}.scene{cursor:default;-webkit-user-select:none;user-select:none;aspect-ratio:1;border-radius:40px;width:100%;max-width:540px;position:relative;overflow:hidden}.sun{aspect-ratio:1;border-radius:50%;width:18%;position:absolute}.moon{aspect-ratio:1;background:#f4f1de;border-radius:50%;width:16%;position:absolute;top:110%;left:8%}.hill{border-radius:50%;position:absolute}.hill-left{background:#8cc7a1;width:72%;height:30%;bottom:-8%;left:-12%}.hill-right{background:#6fb58c;width:80%;height:34%;bottom:-12%;right:-18%}.avatars{position:absolute;inset:0}.avatars,.hill{pointer-events:none}.scene.is-live .sun,.scene.is-live .moon{cursor:grab;touch-action:none}.scene.is-live .sun:active,.scene.is-live .moon:active{cursor:grabbing}.avatar{opacity:0;width:auto;height:83%;transition:opacity .3s,transform .55s cubic-bezier(.2,1.5,.4,1);position:absolute;bottom:-3%;left:50%;transform:translate(-38%)scale(.96)}.avatar.is-active{opacity:1;transform:translate(-50%)}.glow,.stars{opacity:0;pointer-events:none;transition:opacity .9s;position:absolute;inset:0}.glow{background:linear-gradient(#0000 25%,#ffd16640 55%,#ff8a4c99)}.scene.is-glow .glow,.scene.is-night .stars{opacity:1}.stars span{background:#f4f1de;border-radius:50%;animation:2.4s ease-in-out infinite twinkle;position:absolute}@keyframes twinkle{50%{opacity:.25;transform:scale(.7)}}.cloud{opacity:.85;pointer-events:none;background:#fff;border-radius:999px;width:22%;height:6.5%;transition:opacity .9s;animation:55s linear infinite drift;position:absolute}.cloud:before,.cloud:after{content:"";aspect-ratio:1;background:inherit;border-radius:50%;position:absolute}.cloud:before{width:40%;bottom:35%;left:16%}.cloud:after{width:30%;bottom:25%;left:46%}.cloud-a{animation-delay:-12s;top:26%}.cloud-b{width:16%;animation-duration:75s;animation-delay:-45s;top:40%}.scene.is-night .cloud{opacity:0}@keyframes drift{0%{transform:translate(-160%)}to{transform:translate(680%)}}.avatar-hit{cursor:pointer;background:0 0;border:0;border-radius:40% 40% 0 0;width:40%;height:72%;position:absolute;bottom:0;left:30%}.clock{background:var(--paper);font-family:var(--display);border-radius:999px;padding:8px 18px;font-size:22px;font-weight:600;position:absolute;top:5%;left:5%}.bubble{background:var(--paper);transform-origin:0 100%;border-radius:20px 20px 20px 4px;max-width:44%;padding:12px 16px;font-size:16px;font-weight:500;line-height:1.35;display:grid;position:absolute;top:5%;right:5%}.bubble>span{grid-area:1/1}.bubble-ghost{visibility:hidden}h1,h2{font-family:var(--display);text-wrap:balance;margin:0;font-weight:700}h1{font-size:clamp(40px,5.4vw,76px);line-height:1}h2{font-size:clamp(34px,4.2vw,60px);line-height:1.02}.lead{text-wrap:pretty;max-width:620px;margin:0;font-size:clamp(18px,1.45vw,21px);line-height:1.5}.question{font-family:var(--display);margin:0;font-size:21px;font-weight:600}.personas{flex-direction:column;gap:12px;max-width:560px;display:flex}.persona{text-align:left;background:var(--paper);min-height:72px;color:var(--ink);border:0;border-radius:20px;align-items:center;gap:16px;padding:14px 20px;transition:transform .15s;display:flex}.persona:hover{transform:translate(6px)}.persona-dot{border-radius:50%;flex:none;width:36px;height:36px}.persona-text{flex-direction:column;gap:2px;display:flex}.persona-title{font-family:var(--display);font-size:20px;font-weight:600}.persona-sub{color:var(--ink-soft);font-size:15px}.hours{flex-wrap:wrap;gap:8px;display:flex}.hour{background:var(--paper);min-width:76px;min-height:44px;color:var(--ink);font-family:var(--display);border:0;border-radius:999px;padding:0 14px;font-size:16px;font-weight:600}.hour.is-done{background:var(--lilac)}.hour.is-current{background:var(--ink);color:var(--paper)}.for-you{background:var(--teal-soft);border-radius:16px;align-items:flex-start;gap:12px;max-width:620px;padding:14px 18px;font-size:16px;line-height:1.45;display:flex}.for-you-dot{background:var(--teal);border-radius:50%;flex:none;width:12px;height:12px;margin-top:6px}.choice,.flashback{flex-direction:column;gap:12px;max-width:620px;display:flex}.options{flex-direction:column;gap:8px;display:flex}.option{text-align:left;border:2px solid var(--line);background:var(--paper);min-height:52px;color:var(--ink);border-radius:16px;padding:12px 18px;font-size:16px;font-weight:500}.option:hover{border-color:var(--ink)}.option.is-picked{border-color:var(--ink);background:var(--coral);font-weight:700}.option.is-picked.is-right{border-color:var(--teal);background:#bfe8d2}.reveal.is-right{background:#d3f0e0}.reveal,.flash-card{border-radius:16px;flex-direction:column;gap:6px;padding:16px 18px;font-size:16px;line-height:1.5;display:flex}.reveal{background:var(--coral-soft)}.flash-toggle{border:2px dashed var(--ink);min-height:44px;color:var(--ink);background:0 0;border-radius:999px;align-self:flex-start;padding:0 18px;font-size:15px;font-weight:700}.flash-card{background:var(--ink);color:var(--paper)}.flash-card strong{font-family:var(--display);color:var(--yellow);font-size:20px;font-weight:600}.contact,.steps{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cta{background:var(--yellow);min-height:56px;color:var(--ink);font-family:var(--display);border-radius:999px;align-items:center;padding:0 28px;font-size:19px;font-weight:600;text-decoration:none;display:inline-flex}.cta-plain{background:var(--paper)}.step{background:var(--paper);min-height:52px;color:var(--ink);border:0;border-radius:999px;padding:0 22px;font-size:16px;font-weight:700}.step-next{background:var(--ink);color:var(--paper);padding:0 26px}.now{background:var(--paper);border-radius:20px;flex-wrap:wrap;align-self:flex-start;align-items:center;gap:4px 10px;padding:8px 16px;font-size:15px;line-height:1.4;display:flex}.now .link{padding:0;font-weight:700}.now .link:disabled{color:var(--teal);cursor:default;text-decoration:none}.now-dot{background:var(--line);border-radius:50%;flex:none;width:10px;height:10px}.now-dot.is-live{background:var(--coral);animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5;transform:scale(1.5)}}.ping{z-index:10;background:var(--ink);width:min(380px,100vw - 24px);color:var(--paper);border-radius:22px;flex-direction:column;gap:12px;padding:18px 20px 20px;animation:.45s cubic-bezier(.2,1.4,.4,1) ping-in;display:flex;position:fixed;bottom:clamp(12px,3vw,32px);right:clamp(12px,3vw,32px);box-shadow:0 18px 40px #221c3a4d}@keyframes ping-in{0%{opacity:0;transform:translateY(40px)}}.ping p{margin:0;font-size:16px;line-height:1.45}.ping-head{text-transform:uppercase;letter-spacing:.06em;color:var(--yellow);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.ping-badge{background:var(--coral);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite pulse}.confetti{pointer-events:none;position:absolute;top:40%;left:50%}.confetti span{opacity:0;border-radius:2px;width:9px;height:9px;animation:.95s ease-out forwards confetti;position:absolute}@keyframes confetti{0%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(var(--x), calc(var(--y) + 40px)) rotate(var(--turn))}}.ping-text strong{color:var(--yellow)}.ping p.ping-ask{font-family:var(--display);font-size:18px;font-weight:600}.ping-result.is-match{background:#1f6f63;border-radius:12px;padding:10px 12px}.ping-options{flex-wrap:wrap;gap:8px;display:flex}.ping-option{background:var(--paper);min-height:44px;color:var(--ink);border:0;border-radius:999px;flex:auto;padding:0 14px;font-size:15px;font-weight:700}.ping-option:hover{background:var(--yellow)}.ping .step-next{background:var(--yellow);color:var(--ink);align-self:flex-start}.closing{background:var(--ink);max-width:620px;color:var(--paper);border-radius:24px;flex-direction:column;gap:14px;padding:24px;display:flex}.closing p{margin:0}.closing-title{font-family:var(--display);text-wrap:balance;font-size:clamp(22px,2.2vw,28px);font-weight:600;line-height:1.2}.closing-score{color:var(--yellow);font-size:16px}.flow{background:var(--paper);border-radius:24px;flex-direction:column;gap:14px;max-width:620px;padding:22px;display:flex}.flow p{margin:0}.flow-intro{font-size:16px;line-height:1.45}.flow-picker{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.flow-picker-label{min-width:78px;color:var(--ink-soft);font-size:14px;font-weight:700}.flow-pill{border:2px solid var(--line);background:var(--paper);min-height:44px;color:var(--ink);border-radius:999px;padding:0 16px;font-size:15px;font-weight:500}.flow-pill.is-current{border-color:var(--ink);background:var(--ink);color:var(--paper)}.flow-pill:disabled{cursor:default}.flow-steps{flex-direction:column;margin:4px 0;padding:0;list-style:none;display:flex}.flow-step{color:var(--ink-soft);align-items:flex-start;gap:14px;padding:0 0 18px;font-size:16px;line-height:1.4;transition:color .3s;display:flex;position:relative}.flow-step strong{text-transform:uppercase;letter-spacing:.06em;font-size:12px;display:block}.flow-step:not(:last-child):before{content:"";background:var(--line);width:2px;transition:background .3s;position:absolute;top:22px;bottom:0;left:10px}.flow-step:last-child{padding-bottom:0}.flow-dot{border:2px solid var(--line);background:var(--paper);border-radius:50%;flex:none;width:22px;height:22px;transition:background .3s,border-color .3s}.flow-step.is-active{color:var(--ink)}.flow-step.is-active .flow-dot{border-color:var(--coral);background:var(--coral);animation:.7s ease-in-out infinite pulse}.flow-step.is-done{color:var(--ink)}.flow-step.is-done .flow-dot{border-color:var(--teal);background:var(--teal)}.flow-step.is-done:not(:last-child):before{background:var(--teal)}.flow-step.is-active:not(:last-child):before{background:linear-gradient(var(--coral), var(--coral)) no-repeat, var(--line);animation:.7s linear forwards flow-down}@keyframes flow-down{0%{background-size:100% 0%}to{background-size:100% 100%}}@keyframes flow-across{0%{background-size:0% 100%}to{background-size:100% 100%}}.flow-done{background:#d3f0e0;border-radius:14px;padding:12px 14px;font-size:16px;font-weight:700;line-height:1.4}.flow .step-next{align-self:flex-start}.flow .step-next:disabled{opacity:.6;cursor:wait}.facts{flex-direction:column;gap:12px;max-width:620px;display:flex}.facts-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;display:grid}.fact{background:var(--paper);border-radius:18px;flex-direction:column;gap:4px;padding:16px 18px;font-size:16px;line-height:1.45;display:flex}.fact strong{font-family:var(--display);color:var(--teal);font-size:18px;font-weight:600}.game-ask{margin:0;font-size:16px}.testimonials{flex-direction:column;gap:12px;max-width:620px;display:flex}.testimonial{background:var(--paper);border-radius:18px;align-items:flex-start;gap:14px;margin:0;padding:16px 18px;display:flex}.testimonial-initial{background:var(--yellow);width:40px;height:40px;font-family:var(--display);border-radius:12px;flex:none;place-items:center;font-size:20px;font-weight:700;display:grid}.testimonial figcaption{color:var(--ink-soft);font-size:14px;line-height:1.4}.testimonial figcaption strong{color:var(--ink)}.testimonial blockquote{text-wrap:pretty;margin:6px 0 0;font-size:16px;line-height:1.5}.testimonials-source{color:var(--ink-soft);margin:0;font-size:13px}.summary{background:var(--paper);width:min(640px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--ink);border:0;border-radius:28px;padding:clamp(24px,4vw,40px);overflow:auto}.summary::backdrop{background:#221c3a99}.summary h2:focus{outline:none}.summary h2{font-size:clamp(28px,4vw,40px)}.summary-role{color:var(--teal);margin:10px 0 0;font-weight:700}.summary ul{flex-direction:column;gap:10px;margin:20px 0;padding-left:20px;font-size:17px;line-height:1.45;display:flex}.summary-tools{color:var(--ink-soft);margin:0 0 24px;font-size:15px}.summary .step{background:var(--ground)}.agent[open]{flex-direction:column;gap:14px;display:flex}.agent p{margin:0}.agent-intro{color:var(--ink-soft);font-size:15px;line-height:1.45}.agent-log{background:var(--ground);border-radius:18px;flex-direction:column;gap:10px;min-height:140px;max-height:44vh;padding:14px;display:flex;overflow-y:auto}.agent-suggestions{flex-wrap:wrap;gap:8px;display:flex}.agent-suggestions .flow-pill{text-align:left;min-height:44px;padding:8px 16px;line-height:1.3}.agent-turn{background:var(--paper);border-radius:16px 16px 16px 4px;align-self:flex-start;max-width:92%;padding:10px 14px;font-size:16px;line-height:1.5}.agent-turn strong{text-transform:uppercase;letter-spacing:.06em;color:var(--teal);font-size:12px;display:block}.agent-turn.is-user{background:var(--ink);color:var(--paper);border-radius:16px 16px 4px;align-self:flex-end}.agent-turn.is-user strong{color:var(--yellow)}.agent-turn.is-busy{color:var(--ink-soft);font-style:italic}.agent-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.agent-label{flex:100%;font-size:15px;font-weight:700}.agent-form input{border:2px solid var(--line);background:var(--ground);min-height:52px;color:var(--ink);font:inherit;border-radius:14px;flex:220px;padding:12px 14px;font-size:16px}.agent-form input:focus{border-color:var(--ink);outline:none}.agent-form .step-next:disabled{opacity:.6;cursor:default}.agent-limit{background:var(--teal-soft);border-radius:18px;flex-direction:column;align-items:flex-start;gap:12px;padding:16px 18px;font-weight:700;line-height:1.45;display:flex}.agent-foot{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;font-size:14px;display:flex}.agent-teaser{background:var(--paper);border-radius:20px;flex-wrap:wrap;align-items:center;gap:12px 16px;max-width:620px;padding:16px 18px;font-size:16px;line-height:1.45;display:flex}.agent-teaser p{flex:240px;margin:0}.form{flex-direction:column;gap:16px;margin:16px 0;display:flex}.form-intro,.form-status{margin:0;font-size:17px;line-height:1.45}.form-status{color:var(--teal);margin:16px 0;font-weight:700}.form-status.is-error{color:#a3301c;margin:0}.form label{flex-direction:column;gap:6px;font-size:15px;font-weight:700;display:flex}.form input,.form textarea{border:2px solid var(--line);background:var(--ground);width:100%;min-height:48px;color:var(--ink);font:inherit;resize:vertical;border-radius:14px;padding:12px 14px;font-size:16px;font-weight:400}.form input:focus,.form textarea:focus{border-color:var(--ink);outline:none}.form .form-trap{display:none}.form .cta{cursor:pointer;border:0;align-self:flex-start}.form .cta:disabled{opacity:.6;cursor:wait}button.cta{border:0}@media (width>=900px){.main.is-day{align-items:flex-start}.main.is-day .scene-wrap{position:sticky;top:24px}.flow{max-width:none}.flow-steps{flex-direction:row}.flow-step{flex-direction:column;flex:1 1 0;gap:8px;padding:0 12px 0 0;font-size:14px}.flow-step:not(:last-child):before{width:auto;height:2px;inset:10px 4px auto 26px}.flow-step.is-active:not(:last-child):before{animation-name:flow-across}}@media (width<=640px){.ping{width:100%;margin-top:24px;position:sticky;bottom:12px;right:auto}.scene{border-radius:28px;max-width:340px}.bubble{padding:10px 12px;font-size:14px}.clock{padding:6px 14px;font-size:18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.summary .step-next{background:var(--ink)}
