/* Articulated, grounded motion. Characters never move learning controls. */
.changAdventure{display:block;width:100%;height:auto;overflow:visible}
.pathHome .trailChang:has(.changAdventure){width:142px!important;right:-5px!important;top:calc(50% - 66px)}
.changGround{transform-origin:127px 229px}.changCharacter{transform-origin:127px 226px}.changHead{transform-origin:127px 140px}.changEyes{transform-origin:127px 95px}.changEarLeft{transform-origin:75px 83px}.changEarRight{transform-origin:178px 83px}.changTrunk{transform-origin:143px 112px}.changWaveArm{transform-origin:87px 160px}.changSpark{transform-origin:221px 59px}
@media(prefers-reduced-motion:no-preference){
 .changEyes{animation:changBlink 6.4s infinite}
 .chang-wave .changTrunk{animation:changTrunkWave 5.6s ease-in-out infinite}
 .chang-wave .changWaveArm{animation:changHello 5.6s ease-in-out infinite}
 .changEarLeft{animation:changEarLeft 7.8s ease-in-out infinite}.changEarRight{animation:changEarRight 7.8s ease-in-out .15s infinite}
 .chang-read .changHead{animation:changRead 7s ease-in-out infinite}.chang-read .changLook{animation:changReadEyes 7s ease-in-out infinite}
 .chang-explore .changHead{animation:changLookAround 8s ease-in-out infinite}.chang-explore .changMap{animation:changMap 8s ease-in-out infinite;transform-origin:126px 185px}
 .chang-celebrate .changCharacter{animation:changCelebrate 4.8s ease-in-out infinite}.chang-celebrate .changGround{animation:changShadow 4.8s ease-in-out infinite}.changConfetti{animation:changConfetti 4.8s ease-in-out infinite;transform-origin:127px 70px}
 .chang-water .changTrunk{animation:changWaterTrunk 7s ease-in-out infinite}.changWater{animation:changWater 7s ease-in-out infinite}.waterArc{animation:changWaterFlow 1.2s linear infinite}.waterDrop{animation:changDrop 1.3s ease-in infinite}.drop2{animation-delay:.4s}.drop3{animation-delay:.8s}.changRipple{animation:changRipple 2s ease-out infinite;transform-origin:210px 227px}
 .changSpark{animation:changSpark 7s ease-in-out infinite}
}
@keyframes changBlink{0%,43%,47%,83%,87%,100%{transform:scaleY(1)}45%,85%{transform:scaleY(.08)}}
@keyframes changTrunkWave{0%,25%,75%,100%{transform:rotate(0)}40%{transform:rotate(-12deg)}57%{transform:rotate(9deg)}}
@keyframes changHello{0%,22%,80%,100%{transform:rotate(0)}35%,60%{transform:rotate(14deg)}47%,70%{transform:rotate(-7deg)}}
@keyframes changEarLeft{0%,48%,72%,100%{transform:none}58%{transform:rotate(6deg)}64%{transform:rotate(-2deg)}}
@keyframes changEarRight{0%,48%,72%,100%{transform:none}58%{transform:rotate(-6deg)}64%{transform:rotate(2deg)}}
@keyframes changRead{0%,65%,100%{transform:none}25%,50%{transform:rotate(4deg) translateY(2px)}}
@keyframes changReadEyes{0%,65%,100%{transform:none}25%,50%{transform:translateY(3px)}}
@keyframes changLookAround{0%,20%,90%,100%{transform:none}40%,60%{transform:rotate(-5deg)}75%{transform:rotate(3deg)}}
@keyframes changMap{0%,55%,100%{transform:none}65%,80%{transform:rotate(-3deg) translateY(-2px)}}
@keyframes changCelebrate{0%,15%,45%,100%{transform:none}25%{transform:translateY(-9px) rotate(-3deg)}35%{transform:translateY(-4px) rotate(3deg)}}
@keyframes changShadow{0%,15%,45%,100%{transform:scaleX(1);opacity:.14}25%,35%{transform:scaleX(.8);opacity:.08}}
@keyframes changConfetti{0%,15%{opacity:0;transform:translateY(8px)}25%,40%{opacity:1;transform:translateY(-5px)}55%,100%{opacity:0;transform:translateY(8px)}}
@keyframes changWaterTrunk{0%,12%,88%,100%{transform:rotate(12deg)}25%,70%{transform:rotate(0)}}
@keyframes changWater{0%,18%,80%,100%{opacity:0}28%,68%{opacity:1}}
@keyframes changWaterFlow{to{stroke-dashoffset:-30}}
@keyframes changDrop{from{transform:translate(0,-7px);opacity:0}25%{opacity:1}to{transform:translate(-3px,16px);opacity:0}}
@keyframes changRipple{from{transform:scale(.6);opacity:.6}to{transform:scale(1.8);opacity:0}}
@keyframes changSpark{0%,65%,100%{opacity:.7;transform:none}75%{opacity:1;transform:rotate(12deg)}85%{opacity:.7;transform:rotate(-8deg)}}
@media(min-width:761px){.pathHome .trailChang:has(.changAdventure){width:174px!important;right:-15px!important;top:calc(50% - 80px)}}
@media(max-width:360px){.pathHome .trailChang:has(.changAdventure){width:123px!important;right:-6px!important}}
@media(prefers-reduced-motion:reduce){.changAdventure *{animation:none!important}.changWater,.changConfetti{display:none}}
