.kids{--k-yellow:#ffc929;--k-yellow-soft:#fff4d4;--k-pink:#ff6b9a;--k-pink-soft:#ffe3ec;--k-blue:#38b6f0;--k-blue-soft:#dff3fd;--k-mint:#2bc48a;--k-mint-soft:#dbf6ea;--k-grape:#9b6bff;--k-grape-soft:#ece4ff;--k-orange:#ff8a3d;--k-orange-soft:#ffe9da}.k-c-yellow{--kc:var(--k-yellow);--kc-soft:var(--k-yellow-soft)}.k-c-pink{--kc:var(--k-pink);--kc-soft:var(--k-pink-soft)}.k-c-blue{--kc:var(--k-blue);--kc-soft:var(--k-blue-soft)}.k-c-mint{--kc:var(--k-mint);--kc-soft:var(--k-mint-soft)}.k-c-grape{--kc:var(--k-grape);--kc-soft:var(--k-grape-soft)}.k-c-orange{--kc:var(--k-orange);--kc-soft:var(--k-orange-soft)}.k-tinted{background:var(--k-yellow-soft)}.k-btn-primary{background:var(--k-pink);color:#fff;position:relative}.k-btn-primary:hover{background:#f2558a}.k-confetti{pointer-events:none;position:absolute;top:50%;left:50%}.k-confetti i{border-radius:2px;width:8px;height:12px;margin:-6px 0 0 -4px;animation:.85s cubic-bezier(.2,.7,.3,1) forwards k-confetti;position:absolute}@keyframes k-confetti{to{transform:rotate(var(--a)) translateY(calc(var(--d) * -1)) rotate(var(--r)) scale(.6);opacity:0}}.k-course{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px clamp(40px,6vw,96px);display:grid}.k-facts{grid-template-columns:1fr 1fr;gap:12px;display:grid}.k-facts li{border-radius:var(--radius);background:var(--kc-soft);flex-direction:column;padding:20px;display:flex}.k-fact-emoji{font-size:28px;line-height:1}.k-fact-label{font-size:var(--fs-xs);color:var(--text-muted);margin-top:16px}.k-fact-value{font-size:var(--fs-h3);color:var(--ink);margin-top:2px;font-weight:600;line-height:1.3}.k-year-section{padding-top:0}.k-year-head{max-width:640px}.k-year{gap:clamp(48px,8vh,96px);margin:clamp(40px,6vh,64px) 0 0;padding:0;list-style:none;display:grid}.k-row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.k-row--reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.k-row--reverse .k-row-media{order:2}.k-row-media{position:relative}.k-row-media img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);background:var(--kc-soft);width:100%;display:block}.k-row-emoji{background:var(--kc);border:5px solid var(--surface);border-radius:50%;place-items:center;width:76px;height:76px;font-size:34px;animation:5s ease-in-out infinite k-float;display:grid;position:absolute;bottom:-18px;right:-18px}.k-row--reverse .k-row-emoji{left:-18px;right:auto}.k-row-kicker{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:10px;font-weight:600;display:inline-flex}.k-row-num{border-radius:var(--radius-pill);background:var(--kc-soft);min-width:36px;height:28px;color:var(--ink);place-items:center;padding:0 10px;display:grid}.k-row-title{letter-spacing:-.03em;color:var(--ink);margin:14px 0 0;font-size:clamp(26px,2.6vw,38px);font-weight:600;line-height:1.1}.k-row-desc{max-width:460px;font-size:var(--fs-lead);color:var(--text);margin:14px 0 0;line-height:1.6}.k-row-build{border-radius:var(--radius);background:var(--kc-soft);max-width:460px;font-size:var(--fs-body);color:var(--ink);align-items:flex-start;gap:12px;margin:24px 0 0;padding:16px 18px;display:flex}.k-row-build>span:last-child{flex-direction:column;gap:2px;display:flex}.k-row-build strong{font-size:var(--fs-xs);color:var(--text-muted);font-weight:600}.k-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid;position:relative}.k-steps[data-reveal]{opacity:1;transform:none}.k-step{border-radius:var(--radius);background:var(--surface);opacity:0;transition:opacity .5s ease, transform .6s var(--ease);transition-delay:calc(.15s + var(--i) * .15s);padding:24px;transform:translateY(16px)}.k-steps.is-visible .k-step{opacity:1;transform:none}.k-step-icon{background:var(--kc);width:56px;height:56px;transition:transform .45s var(--ease-spring);border-radius:50%;place-items:center;font-size:26px;display:grid;position:relative}.k-step:hover .k-step-icon{transform:scale(1.1)rotate(-8deg)}.k-step-num{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:grid;position:absolute;top:-4px;right:-4px}.k-step-title{font-size:var(--fs-h3);color:var(--ink);margin:20px 0 0;font-weight:600}.k-step-text{font-size:var(--fs-body);color:var(--text);margin:6px 0 0;line-height:1.55}.k-projects{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:32px;display:grid}.k-project{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);animation:k-up .45s var(--ease) backwards;animation-delay:calc(var(--i) * 40ms);flex-direction:column;transition:transform .4s cubic-bezier(.34,1.5,.5,1);display:flex;overflow:hidden}.k-project:hover{transform:translateY(-6px)rotate(-2deg)}.k-project:nth-child(2n):hover{transform:translateY(-6px)rotate(2deg)}.k-project-media{aspect-ratio:5/4;background:radial-gradient(circle at 25% 20%, #ffffffb3, transparent 55%), var(--kc-soft);place-items:center;display:grid}.k-project-emoji{animation:4.5s ease-in-out infinite k-float;animation-delay:calc(var(--i) * -.6s);font-size:64px;line-height:1}.k-project-body{padding:16px 16px 18px}.k-project-type{font-size:var(--fs-xs);color:var(--ink);font-weight:600}.k-project-type:before{content:"";background:var(--kc);border-radius:50%;width:8px;height:8px;margin-inline-end:6px;display:inline-block}.k-project-title{letter-spacing:-.02em;color:var(--ink);margin:6px 0 0;font-size:clamp(19px,1.5vw,22px);font-weight:600;line-height:1.2}.k-project-meta{font-size:var(--fs-sm);color:var(--text-muted);margin:6px 0 0}.k-project-meta strong{color:var(--ink);font-weight:600}.k-marquee{gap:16px;margin-top:40px;display:grid}.k-marquee-row{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.k-marquee-track{flex-shrink:0;gap:16px;padding-inline-end:16px;animation:45s linear infinite k-marquee;display:flex}.k-marquee-row--reverse .k-marquee-track{animation-duration:52s;animation-direction:reverse}.k-marquee-row:hover .k-marquee-track{animation-play-state:paused}.k-quote{border-radius:var(--radius);background:var(--surface);border-top:4px solid var(--kc);flex-direction:column;justify-content:space-between;width:360px;padding:22px;display:flex}.k-quote-text{font-size:var(--fs-body);color:var(--ink);margin:0;line-height:1.55}.k-quote-author{align-items:center;gap:12px;margin-top:18px;display:flex}.k-avatar{background:var(--kc-soft);border-radius:50%;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.k-quote-author>span:last-child{font-size:var(--fs-xs);color:var(--text-muted);flex-direction:column;display:flex}.k-quote-author strong{font-size:var(--fs-sm);color:var(--ink);font-weight:600}.k-booking{border-radius:var(--radius-lg);background:var(--k-yellow-soft);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:32px;padding:clamp(32px,5vw,64px);display:grid;overflow:hidden}.k-booking-actions{margin-top:28px}.k-booking-art{grid-template-columns:repeat(3,1fr);justify-items:center;gap:16px;display:grid}.k-booking-art span{aspect-ratio:1;background:var(--surface);width:clamp(64px,7vw,96px);animation:5s ease-in-out infinite k-float;animation-delay:calc(var(--i) * -.8s);border-radius:50%;place-items:center;font-size:clamp(30px,3.2vw,44px);display:grid}.k-booking-art span:nth-child(2n){margin-top:36px}@keyframes k-up{0%{opacity:0;transform:translateY(16px)}}@keyframes k-float{0%,to{translate:0;rotate:-4deg}50%{translate:0 -10px;rotate:4deg}}@keyframes k-marquee{to{transform:translate(-100%)}}@media (width<=1080px){.k-projects,.k-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.k-course,.k-booking{grid-template-columns:1fr}.k-row,.k-row--reverse{grid-template-columns:1fr;gap:28px}.k-row--reverse .k-row-media{order:0}.k-row-emoji,.k-row--reverse .k-row-emoji{width:64px;height:64px;font-size:28px;bottom:-22px;left:auto;right:12px}.k-booking-art{display:none}}@media (width<=700px){.k-projects{gap:12px}.k-project-emoji{font-size:48px}.k-project-title{font-size:16px}.k-steps{grid-template-columns:1fr}.k-quote{width:290px}}@media (prefers-reduced-motion:reduce){.kids *,.kids :before,.kids :after{transition:none!important;animation:none!important}.k-step{opacity:1;transform:none}.k-marquee-row{overflow-x:auto}}
