:root{--ink:#172446;--green:#56d4cb;--mint:#eaf8fb;--paper:#fffdf9;--orange:#ff785f;--line:#d9e2f4;--deep:#2442b4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{font:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #dd355a;outline-offset:4px}.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.wrap{width:min(1380px,calc(100% - 100px));margin:auto}.header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:inline-flex;align-items:center;gap:2px;font-size:25px;letter-spacing:-1.7px;font-weight:800;white-space:nowrap}.logo span:not(.logo-mark){font-weight:500}.logo b{color:#ef4566}.logo-mark{display:grid;grid-template-columns:repeat(2,8px);grid-template-rows:repeat(2,8px);gap:2px;margin-right:8px;transform:rotate(-8deg)}.logo-mark i{background:var(--deep);border-radius:50%}.logo-mark i:nth-child(2){background:#ff725f}.logo-mark i:nth-child(3){background:#36c9c1}.header nav{display:flex;gap:34px;font-size:13px;font-weight:700}.header nav a:hover,.text-link:hover{color:#3157d6}.nav-cta{border:1px solid var(--ink);padding:13px 17px;border-radius:5px;font-size:12px;font-weight:700}.nav-cta span,.button span{margin-left:30px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding:42px 0 65px}.hero-copy{padding:25px 0}.eyebrow,.section-kicker,.art-top,.art-bottom,.art-label,.question-top,.question-tag,.answer-label,.explain-header,.explain-bottom,.plan-number,.coming{font-size:10px;font-weight:800;letter-spacing:.14em}.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow-dot{width:8px;height:8px;border-radius:50%;background:#ff695e}.hero h1,h2{font-size:clamp(54px,6.2vw,94px);line-height:.98;letter-spacing:-.075em;margin:30px 0;font-weight:800}h1 em,h2 em{font-style:normal;color:#3159dc}.hero-copy>p,.practice-heading p,.skills-head p,.plans-head p{font-size:18px;line-height:1.65;max-width:465px;color:#495a77}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;padding:19px 21px;border-radius:5px;font-size:13px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#304fbd}.button-light{background:#fff;color:var(--ink)}.text-link{display:inline-block;font-size:13px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link span{padding-left:20px}.hero-note{display:flex;gap:12px;align-items:center;margin-top:60px;font-size:11px;line-height:1.5;color:#536581}.mini-stars{font-size:32px;color:#f34b6b}.hero-art{height:550px;position:relative;overflow:hidden;background:linear-gradient(145deg,#c4f3f3 0%,#99d4ff 55%,#dab9fa 100%);border-radius:8px}.art-top,.art-bottom{position:absolute;left:25px;right:25px;display:flex;justify-content:space-between;font-size:9px;z-index:3}.art-top{top:26px}.art-bottom{bottom:25px}.art-orbit{border:1px solid #6db8e8;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{width:330px;height:330px}.orbit-two{width:470px;height:470px}.art-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:238px;height:238px;background:#ffd052;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;font-weight:800;font-size:23px;line-height:1.05;letter-spacing:-.05em;z-index:2}.sun-shape{font-size:75px;line-height:1;animation:spin 25s linear infinite}.art-piece{position:absolute;display:flex;align-items:center;justify-content:center;z-index:3;box-shadow:0 8px 25px #3143a626}.piece-one{left:5%;top:22%;gap:9px;background:#fff;width:144px;height:65px;border-radius:5px;font-size:24px;transform:rotate(-10deg)}.piece-one span:nth-child(2){color:#f15d72}.piece-one span:nth-child(3){color:#2eb9b3}.piece-two{right:9%;top:17%;width:85px;height:85px;background:#ffdf70;border-radius:50%;font-size:52px;transform:rotate(15deg)}.piece-three{right:7%;bottom:19%;width:85px;height:85px;background:#fff0fa;border-radius:5px;font-size:55px;color:#e83f70;transform:rotate(12deg)}.art-label{position:absolute;z-index:3;background:var(--deep);color:#fff;padding:10px;font-size:8px}.label-one{left:5%;bottom:26%;transform:rotate(5deg)}.label-two{right:7%;bottom:10%;transform:rotate(-7deg)}.ticker{overflow:hidden;background:var(--deep);color:#ffffff;padding:16px 0;white-space:nowrap;font-size:10px;letter-spacing:.16em;font-weight:800}.ticker div{width:max-content;animation:marquee 35s linear infinite}.ticker b{color:#ffcf50;padding:0 25px}.intro,.skills,.plans{padding-top:110px;padding-bottom:110px}.section-kicker{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;color:#506382}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.intro h2,.practice-heading h2,.skills h2,.plans h2,.parent-inner h2,.closing h2{font-size:clamp(45px,5vw,73px)}.intro-grid>div{max-width:480px;padding-bottom:35px}.intro-grid p,.parent-inner p{line-height:1.75;color:#4d5e79;font-size:15px}.intro-grid .lead{font-size:22px;font-weight:700;line-height:1.3;color:var(--ink)}.intro-grid .text-link,.parent-inner .text-link{margin-top:20px}.practice-section{background:#eaf1ff;padding:100px 0 110px}.practice-heading,.skills-head,.plans-head{display:flex;align-items:end;justify-content:space-between;gap:30px}.practice-heading h2{margin-bottom:15px}.practice-heading p{font-size:15px;margin-bottom:35px}.doodle-star,.plan-star{font-size:95px;color:#f24f70;animation:spin 35s linear infinite}.practice-layout{display:grid;grid-template-columns:1.35fr .8fr;gap:18px}.question-card,.explain-card{background:#fff;border-radius:7px;padding:30px}.question-top,.explain-header,.explain-bottom{display:flex;align-items:center;justify-content:space-between;color:#526486}.pill{background:#d9f6ee;color:#135c55;padding:10px 12px;border-radius:3px}.question-copy{margin-top:45px}.question-tag{color:#365ac9}.question-copy h3,.explain-copy h3{font-size:32px;letter-spacing:-.05em;margin:10px 0}.question-copy p,.explain-copy p{font-size:14px;line-height:1.6;color:#52637d}.sequence{display:flex;align-items:center;gap:10px;margin:35px 0;flex-wrap:wrap}.sequence span{height:76px;width:76px;display:grid;place-items:center;background:#e9f3ff;border-radius:4px;font-size:34px;color:#244bb9}.sequence span:nth-child(even){color:#ed506b}.sequence .missing{background:#fff1ca;border:1px dashed #d88d19;color:#9c510c}.answer-label{color:#54678a;margin-bottom:12px}.answers{display:flex;gap:10px;flex-wrap:wrap}.answer{width:76px;height:66px;border:1px solid #b9c9ec;background:white;border-radius:4px;font-size:30px;color:#244bb9;cursor:pointer;transition:transform .2s,border-color .2s,background .2s}.answer:hover{transform:translateY(-3px);border-color:#3159dc}.answer.selected{background:#ddf7ef;border-color:#168267}.answer.wrong{background:#fff0ef;border-color:#da5364}.feedback{min-height:45px;margin-top:15px;font-size:13px;line-height:1.5;font-weight:700;color:#28516e}.question-footer{border-top:1px solid #dce5f5;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;color:#536481}.next-button,.explain-copy button{border:0;cursor:pointer;background:none;color:var(--ink);font-weight:800;font-size:12px}.next-button span{padding-left:12px}.explain-card{background:#b7e8f2;display:flex;flex-direction:column}.explain-header{color:#2c5373}.explain-header span:last-child{font-size:28px}.explain-visual{height:210px;display:flex;align-items:center;justify-content:center;gap:15px}.explain-visual span{display:grid;place-items:center;width:60px;height:60px;background:#ffffff;border-radius:50%;font-size:28px;color:#3159bf}.explain-visual span:nth-child(even){color:#d8325b;background:#ffe2df}.explain-visual.playing span{animation:pulse .6s ease both}.explain-visual.playing span:nth-child(2){animation-delay:.35s}.explain-visual.playing span:nth-child(3){animation-delay:.7s}.explain-visual.playing span:nth-child(4){animation-delay:1.05s}.explain-copy{background:#fffefa;padding:25px;border-radius:4px}.explain-copy h3{font-size:24px}.explain-copy button{padding:10px 0;color:#244db5}.explain-bottom{margin-top:auto;padding-top:25px}.skills-head p{max-width:360px;font-size:15px;margin-bottom:35px}.skill-list{margin-top:30px}.skill-row{display:grid;grid-template-columns:70px 1fr 160px;align-items:center;border-top:1px solid var(--line);padding:24px 0}.skill-row>span{font-size:11px;color:#596b88}.skill-row h3{font-size:24px;letter-spacing:-.04em;margin:0 0 8px}.skill-row p{margin:0;color:#52637d;font-size:14px}.skill-symbol{text-align:center;font-size:30px;font-weight:800;color:#315bd0}.symbol-pattern{letter-spacing:6px;color:#e64268}.symbol-spatial{font-size:50px}.symbol-word span{font-size:20px;color:#e64268;margin:0 5px}.symbol-logic{font-size:50px;color:#e64268}.parent-section{background:#fff2c9;padding:100px 0}.parent-inner{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.parent-art{height:420px;background:#ffd46c;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;border-radius:6px}.parent-art:before,.parent-art:after{content:'';position:absolute;border:1px solid #edac36;border-radius:50%;width:330px;height:330px}.parent-art:after{width:450px;height:450px}.parent-sun{font-size:140px;color:#f45572;line-height:1;z-index:1;animation:spin 30s linear infinite}.parent-art-text{text-align:center;font-size:25px;font-weight:800;letter-spacing:-.05em;z-index:1}.parent-art>span{position:absolute;bottom:22px;left:25px;font-size:9px;font-weight:800;letter-spacing:.14em}.parent-inner h2{margin:25px 0}.plans-head p{font-size:15px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}.plan{border:1px solid #cddaf1;padding:30px;min-height:310px;display:flex;flex-direction:column;border-radius:5px}.plan.featured{background:#e7edff;border-color:#c5d2ff}.plan-number{color:#536585}.plan h3{font-size:32px;letter-spacing:-.05em;margin:30px 0 6px}.plan p{color:#52637d;font-size:14px;line-height:1.6}.plan-sub{margin:0}.plan-divider{height:1px;background:#c3d1ee;margin:25px 0 10px}.plan-link,.coming{margin-top:auto;padding-top:20px;font-size:12px;font-weight:800}.plan-link span{float:right}.coming{color:#445a91;font-size:10px}.plans-foot{font-size:12px;color:#566783}.closing{background:var(--deep);color:#ffffff;padding:75px 0}.closing-inner{display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:30px}.closing-star{font-size:130px;color:#ffcb4b;animation:spin 30s linear infinite}.closing h2{margin:20px 0 30px}.closing h2 em{color:#ffdf73}.closing-inner>p{align-self:end;color:#d9e3ff;font-size:13px;line-height:1.6}.footer{display:flex;align-items:center;gap:25px;padding:45px 0;flex-wrap:wrap}.footer p{color:#586a85;font-size:12px;margin-right:auto}.footer>a:not(.logo),.footer small{font-size:11px;color:#52627d}.footer small{width:100%}@keyframes spin{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes pulse{50%{transform:translateY(-12px) scale(1.12);box-shadow:0 8px 0 #82c9f1}}
@media(max-width:900px){.wrap{width:min(100% - 40px,700px)}.header{height:76px}.header nav{display:none}.hero{grid-template-columns:1fr;padding-top:15px}.hero h1{font-size:clamp(58px,10vw,80px)}.hero-note{margin-top:30px}.hero-art{height:480px}.intro,.skills,.plans{padding:75px 0}.practice-section{padding:75px 0}.practice-layout{grid-template-columns:1fr}.explain-visual{height:160px}.parent-section{padding:75px 0}.parent-inner{gap:6%}.parent-art{height:350px}.closing-inner{grid-template-columns:100px 1fr}.closing-star{font-size:90px}.closing-inner>p{grid-column:2}}@media(max-width:600px){.wrap{width:calc(100% - 32px)}.logo{font-size:22px}.nav-cta{padding:12px}.nav-cta span{margin-left:10px}.hero{gap:20px}.hero-copy{padding:10px 0}.hero h1{font-size:57px}.hero-copy>p{font-size:16px}.hero-actions{gap:18px}.button{padding:16px}.button span{margin-left:15px}.hero-art{height:380px}.art-center{width:180px;height:180px;font-size:19px}.sun-shape{font-size:55px}.orbit-one{width:260px;height:260px}.orbit-two{width:370px;height:370px}.piece-one{width:112px;height:55px;font-size:20px}.piece-two,.piece-three{width:65px;height:65px;font-size:40px}.intro-grid,.parent-inner{grid-template-columns:1fr}.intro-grid>div{padding-bottom:0}.intro h2,.practice-heading h2,.skills h2,.plans h2,.parent-inner h2,.closing h2{font-size:46px}.section-kicker{font-size:9px}.section-kicker span:last-child{display:none}.doodle-star,.plan-star{font-size:55px}.question-card,.explain-card{padding:20px}.question-copy{margin-top:30px}.sequence span{width:55px;height:55px;font-size:27px}.answer{width:58px;height:58px}.question-footer{align-items:flex-start}.question-footer>span{max-width:150px}.skills-head{display:block}.skill-row{grid-template-columns:35px 1fr 75px}.skill-row h3{font-size:20px}.skill-row p{font-size:12px}.skill-symbol{font-size:20px}.parent-art{height:300px}.parent-inner>div:last-child{padding-top:30px}.plan-grid{grid-template-columns:1fr}.plan{min-height:250px}.closing-inner{grid-template-columns:1fr}.closing-star{font-size:65px}.closing-inner>p{grid-column:auto}.footer{gap:15px}.footer p{width:100%;margin:0}.ticker{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.explain-visual.spatial-playing span:not(:first-child){display:none}.explain-visual.spatial-playing span:first-child{font-size:50px;animation:quarter-turns 3s ease-in-out both}@keyframes quarter-turns{0%,15%{transform:rotate(0)}30%,40%{transform:rotate(90deg)}55%,65%{transform:rotate(180deg)}80%,100%{transform:rotate(270deg)}}

/* Practice library */
.practice-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 14px}
.practice-filters label{display:flex;flex-direction:column;gap:8px;color:#30456f;font-size:12px;font-weight:800}
.practice-filters select{width:100%;min-height:48px;padding:10px 13px;border:1px solid #9fb4e2;border-radius:8px;background:#fff;color:#172446;font:inherit}
.practice-filters select:focus-visible,.step-controls button:focus-visible,.hint-button:focus-visible{outline:3px solid #dd355a;outline-offset:3px}
.practice-note{max-width:900px;margin:0 0 24px;color:#455b7c;font-size:12px;line-height:1.6}
.question-copy p{white-space:pre-wrap}.sequence{margin:22px 0}.question-visual{width:100%;padding:20px;border-radius:8px;background:#e9f3ff;color:#183f9b;white-space:pre-wrap;font-size:clamp(18px,3vw,25px);line-height:1.55;letter-spacing:.04em;overflow-wrap:anywhere}
.answers{display:flex;align-items:stretch}.answer.choice-button{width:auto;min-width:84px;max-width:100%;height:auto;min-height:70px;padding:10px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;line-height:1.3}
.choice-value{font-size:25px;overflow-wrap:anywhere}.choice-label{font-size:11px;font-weight:700;color:#30456f}.choice-button.word-choice .choice-value{font-size:15px}.hint-button{border:0;background:#eaf0ff;color:#244ab0;border-radius:6px;padding:10px 14px;font-size:12px;font-weight:800;cursor:pointer}.hint-text{min-height:1em;color:#30456f;font-size:13px;line-height:1.5}
.explain-visual{min-height:210px;height:auto;flex-wrap:wrap;padding:20px 0}.explain-visual .visual-board{display:block;width:100%;height:auto;padding:20px;background:#fff;border-radius:10px;color:#1f49a4;white-space:pre-wrap;overflow-wrap:anywhere;text-align:center;font-size:clamp(19px,2.2vw,28px);line-height:1.6}
.explain-visual .visual-grid{display:grid;width:auto;height:auto;gap:3px;background:#3456bf;border-radius:8px;padding:5px}.explain-visual .visual-grid span{width:40px;height:40px;border-radius:4px;background:#fff;color:#2442b4;font-size:25px}.explain-visual .visual-grid span:nth-child(even){background:#fff;color:#2442b4}
.explain-visual .visual-marker{width:auto;height:auto;background:transparent;color:#2442b4;font-size:30px}.explain-visual .turn-arrow{width:94px;height:94px;border-radius:50%;background:#fff;color:#2442b4;font-size:54px;transform:rotate(var(--to-angle));animation:turn-arrow .9s ease-in-out both}.explain-visual .turn-caption{width:auto;height:auto;background:transparent;color:#2442b4;font-size:22px}
@keyframes turn-arrow{from{transform:rotate(var(--from-angle))}to{transform:rotate(var(--to-angle))}}
.step-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.step-controls[hidden],[hidden]{display:none!important}.explain-copy .step-controls button,.explain-copy #show-explanation{padding:10px 12px;background:#eaf0ff;color:#244ab0;border-radius:6px}.step-controls button:disabled{opacity:.45;cursor:not-allowed}.explain-copy #show-explanation:hover,.step-controls button:not(:disabled):hover,.hint-button:hover{background:#d9e5ff}
.question-navigation{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.next-button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:600px){.practice-filters{grid-template-columns:1fr}.question-visual{font-size:18px}.answer.choice-button{min-width:72px}.explain-visual .visual-grid span{width:32px;height:32px;font-size:21px}}
@media(prefers-reduced-motion:reduce){.explain-visual .turn-arrow{animation:none;transform:rotate(var(--to-angle))}}
@media(max-width:900px){.header{height:auto;min-height:76px;flex-wrap:wrap;row-gap:0;padding-top:14px}.header nav{display:flex;order:3;flex:0 0 100%;flex-wrap:wrap;gap:10px 18px;padding:14px 0;font-size:12px}}
.turn-lab{margin-top:20px;padding:16px;border:1px solid #b9c9ec;border-radius:8px;background:#fff}.turn-lab h4{margin:0 0 5px;font-size:15px;color:#172446}.turn-lab p{margin:0;font-size:13px}.turn-lab-display{display:flex;align-items:center;gap:12px;margin:12px 0;font-size:13px;color:#30456f}.turn-lab-arrow{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#eaf0ff;color:#2442b4;font-size:30px;transform:rotate(var(--arrow-angle,0deg));transition:transform .35s ease}.turn-lab-controls{display:flex;flex-wrap:wrap;gap:7px}.explain-copy .turn-lab-controls button{padding:9px;background:#eaf0ff;border-radius:6px;color:#244ab0}.turn-lab-controls button:hover{background:#d9e5ff}.turn-lab-controls button:focus-visible{outline:3px solid #dd355a;outline-offset:3px}@media(prefers-reduced-motion:reduce){.turn-lab-arrow{transition:none}}
.rhythm-pattern{margin-top:20px;padding:16px;border-radius:10px;background:#fff1c9;border:1px solid #f3cc68}.rhythm-pattern h4{margin:0 0 5px;color:#172446;font-size:15px}.rhythm-pattern p{margin:0;color:#354968;font-size:13px;line-height:1.5}.rhythm-beats{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 8px}.explain-copy .rhythm-beats button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:54px;min-height:48px;padding:8px;border:1px solid #adbee8;border-radius:10px;background:#fff;color:#2442b4;transition:transform .2s,background .2s}.rhythm-beats button span{font-size:19px;color:#e13f66}.rhythm-beats button b{font-size:18px}.explain-copy .rhythm-beats button:hover,.explain-copy .rhythm-beats button.beat-active{background:#dfe9ff;transform:translateY(-3px)}.rhythm-beats button:focus-visible{outline:3px solid #dd355a;outline-offset:3px}.rhythm-pattern .rhythm-status{min-height:1.5em;font-weight:700}.answer.choice-button{position:relative}.answer.selected:after{content:'✦';position:absolute;right:5px;top:2px;color:#d94669;font-size:16px;animation:answer-sparkle .45s ease-out both}@keyframes answer-sparkle{from{opacity:0;transform:scale(.5) rotate(-35deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.explain-copy .rhythm-beats button{transition:none}.explain-copy .rhythm-beats button:hover,.explain-copy .rhythm-beats button.beat-active{transform:none}.answer.selected:after{animation:none}}
