body{color:#3c4046;background:#fff;margin:0;font-family:"M PLUS Rounded 1c",system-ui,sans-serif}a{color:#1677a8}a:hover{color:#0e5a82}.staffs{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.sway{animation-name:staffSway;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}.drift{animation-name:staffDrift;animation-timing-function:linear;animation-iteration-count:infinite}.hop{transform-box:fill-box;transform-origin:50% 100%;filter:drop-shadow(0 4px 4px #1a466e40);animation-iteration-count:infinite}@keyframes staffDrift{0%{transform:translate(0)}to{transform:translate(-1440px)}}@keyframes staffSway{0%{transform:translateY(-14px)}to{transform:translateY(14px)}}@keyframes noteHop{0%{transform:translateY(0)}to{transform:translateY(-9px)}}@keyframes noteSpin{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}@media (prefers-reduced-motion:reduce){.sway,.drift,.hop{animation:none}}html{scroll-behavior:smooth}html[data-wii],html[data-wii] *{cursor:none!important}.rip{z-index:9998;pointer-events:none;width:0;height:0;scale:var(--z,1);position:fixed;top:0;left:0}.rip>span{opacity:0;border-radius:2px;width:7px;height:12px;position:absolute;top:-6px;left:-3.5px}.rip>span:nth-child(3n){border-radius:50%;width:8px;height:8px;top:-4px;left:-4px}.rip.go>span{animation:.85s cubic-bezier(.15,.75,.3,1) forwards cfBurst}@keyframes cfBurst{0%{opacity:1;transform:translate(0)rotate(0)scale(.5)}15%{opacity:1;transform:translate(calc(var(--dx) * .55),calc(var(--dy) * .55)) rotate(calc(var(--r) * .3)) scale(1)}60%{opacity:1}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 22px)) rotate(var(--r)) scale(.9)}}@keyframes cfFade{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.rip.go>span{transform:translate(calc(var(--dx) * .5),calc(var(--dy) * .5));animation:.5s ease-out forwards cfFade}}.boot-logo{animation:.7s cubic-bezier(.2,1.4,.4,1) both bootPop}.boot-name{animation:.6s cubic-bezier(.2,.8,.2,1) .25s both bootUp}.boot-sub{animation:.6s cubic-bezier(.2,.8,.2,1) .4s both bootUp}.boot-btn{animation:.6s cubic-bezier(.2,.8,.2,1) .6s both bootUp,1.6s ease-in-out 1.2s infinite bootPulse}.gb-stk{animation:.45s cubic-bezier(.2,1.5,.4,1) both gbIn}@keyframes gbIn{0%{opacity:0;scale:.2}to{opacity:1;scale:1}}.boot-tile{animation:.7s cubic-bezier(.2,1.3,.4,1) both bootPop}.boot-bar{animation:.7s cubic-bezier(.2,.8,.2,1) .2s both bootBar}@keyframes bootBar{0%{transform:translateY(100%)}to{transform:none}}.boot-fill{animation:1.5s cubic-bezier(.4,0,.2,1) both bootFill}@keyframes bootFill{0%{width:6%}25%{width:34%}40%{width:46%}65%{width:80%}82%{width:88%}to{width:100%}}.boot-shine{animation:.6s linear infinite bootShine}@keyframes bootShine{0%{background-position:0 0}to{background-position:22.6px 0}}.boot-dots:after{content:"";animation:1.2s steps(4,end) infinite bootDots}@keyframes bootDots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@keyframes bootPop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes bootUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes bootPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.boot-logo,.boot-name,.boot-sub,.boot-btn,.boot-tile,.boot-bar,.boot-shine{animation:none}.boot-fill{animation-duration:.6s}}.shift,.focus-root,.boot,.ipod>.dots,.mini>*,.np{zoom:var(--z,1)}.np{z-index:47;opacity:.85;max-width:260px;transition:opacity .2s,translate .2s cubic-bezier(.2,.8,.2,1);animation:.5s cubic-bezier(.2,.8,.2,1) npIn;position:fixed;bottom:16px;left:16px}.np:hover,.np:focus-visible{opacity:1;translate:0 -2px}@keyframes npIn{0%{opacity:0;translate:0 12px}}.sp-btn svg{transition:stroke .2s}.sp-btn:hover svg,.sp-btn:focus-visible svg{stroke:#1db954}.np-eq{align-items:flex-end;gap:1.5px;height:8px;display:inline-flex}.np-eq span{transform-origin:bottom;background:#1db954;border-radius:2px;width:2px;height:100%;animation:.9s ease-in-out infinite npEq}.np-eq span:nth-child(2){animation-delay:-.3s}.np-eq span:nth-child(3){animation-delay:-.6s}@keyframes npEq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}@media (width<=699px){.np{max-width:calc(100% - 24px);bottom:12px;left:12px}}@media (prefers-reduced-motion:reduce){.np{animation:none}.np-eq span{animation:none;transform:scaleY(.6)}}.shift{isolation:isolate;min-height:calc(100vh / var(--z,1));box-sizing:border-box;flex-direction:column;justify-content:center;display:flex}header.shift{justify-content:flex-start}.shift>:not(.bleed):not(canvas){width:100%}.mini{z-index:48;bottom:16px;left:calc((100% - 260px * var(--z,1)) / 2);position:fixed;transform:translate(-50%)}@media (width<=1099px){.mini{left:12px;right:160px;transform:none}.mini-progress{display:none!important}}footer.shift{padding-bottom:140px!important}.pill{transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s,border-color .2s,color .2s}.pill:hover,.pill:focus-visible{transform:translateY(-3px)scale(1.06);color:#0b3550!important;background:linear-gradient(#a6e6fb 0%,#34beed 100%)!important;border-color:#1a9ccb!important;box-shadow:inset 0 2px #ffffffb3!important}.rv-item{transition:opacity .7s,translate .8s cubic-bezier(.2,.8,.2,1),scale .8s cubic-bezier(.2,.8,.2,1)}[data-armed] .rv-item:not([data-in]){opacity:0;translate:0 60px;scale:.95}.flap{transform-origin:50% 0;transform-style:preserve-3d;animation:3.4s ease-in-out infinite flap;position:relative}.flap:hover{animation-duration:2s}@keyframes flap{0%{transform:rotateX(0)rotate(0)}25%{transform:rotateX(6deg)rotate(-.6deg)}50%{transform:rotateX(-2.5deg)rotate(.4deg)}75%{transform:rotateX(4deg)rotate(-.2deg)}to{transform:rotateX(0)rotate(0)}}.proj{cursor:pointer}.proj-inner,.slab3d{transform-style:preserve-3d}.slab-layer{border-radius:inherit;pointer-events:none;position:absolute;inset:-4px}.slab-face{box-sizing:border-box;background:linear-gradient(160deg,#fff 0%,#f2f4f7 55%,#dfe3e9 100%);border:3px solid #d5dae1;inset:-3px;transform:translateZ(.25px);box-shadow:inset 0 3px #fff}.slab-face~*{transform:translateZ(.5px)}.skill-use{transition:background-color .2s}.skill-use:hover,.skill-use:focus-visible{background:#f4f7fa!important}.dots:has(>.slab3d.proj){--dx:28px;--dy:28px;perspective-origin:calc(100% + 500px) calc(100% + 500px);transition:perspective-origin .5s cubic-bezier(.2,.8,.2,1),opacity .7s,translate .8s cubic-bezier(.2,.8,.2,1),scale .8s cubic-bezier(.2,.8,.2,1)}.dots:has(>.slab3d.proj:hover){perspective-origin:50%}.proj-screen{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.proj-back{transition:translate .35s cubic-bezier(.2,.8,.2,1),scale .35s cubic-bezier(.2,.8,.2,1)}.proj-glare{border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle at var(--gx,50%) var(--gy,30%),#ffffffb3,#fff0 50%);z-index:3;transition:opacity .3s;position:absolute;inset:0}.proj:hover .proj-glare{opacity:1}.proj-cta{transition:scale .25s cubic-bezier(.2,.8,.2,1)}.proj:hover .proj-cta{scale:1.07}@media (prefers-reduced-motion:reduce){.flap{animation:none}[data-armed] .rv-item:not([data-in]){opacity:1;translate:none;scale:none}}.dots{position:relative}.dots:before{content:"";transform:translate(var(--dx,14px),var(--dy,14px));background-image:radial-gradient(var(--dot,#9ad9f0) 1.6px,transparent 1.9px);border-radius:inherit;z-index:-1;pointer-events:none;background-size:7px 7px;position:absolute;inset:0}.dots-sm:before{background-image:radial-gradient(var(--dot,#9ad9f0) 1.3px,transparent 1.6px);background-size:5px 5px;transform:translate(5px,5px)}.ipod{transform-origin:100%;z-index:50;position:fixed;top:50%;right:24px;transform:translateY(-50%)scale(.84)}@media (width<=1099px){.ipod{transform-origin:100% 100%;top:auto;bottom:12px;right:12px;transform:scale(.54)}}.nav-btn{display:none}@media (width<=699px){.ipod{display:none}.nav-open .ipod{display:block;transform-origin:bottom!important;inset:auto auto 88px 50%!important;transform:translate(-50%)scale(.86)!important}.mini{bottom:12px!important;left:12px!important;right:12px!important;transform:none!important}.mini>div{justify-content:space-between;gap:8px!important;padding:6px 8px 6px 6px!important}.nav-btn{display:inline-flex!important}.flow-arrow{width:44px!important;height:44px!important;margin-bottom:96px!important}.flow-row{gap:4px!important}footer.shift{padding-bottom:120px!important}}@media (width>=1100px){.shift{padding-right:260px!important}.bleed{margin-right:-260px!important;padding-right:260px!important}}.reveal{transition:opacity .7s,transform .7s cubic-bezier(.2,.8,.2,1)}.reveal.pre{opacity:0;transform:translateY(48px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal.pre{opacity:1;transform:none}}
