/* Kimura Academy: camada de efeitos (Motion). Só transform/opacity, sem mexer no layout. */
.fx-progress{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#9FB6D6,#F4F6FA);z-index:50;pointer-events:none}
.fx-hero{position:relative;overflow:hidden;isolation:isolate}
.fx-aurora{position:absolute;inset:-20% -10% auto -10%;height:120%;z-index:-1;pointer-events:none;filter:blur(70px);opacity:.55}
.fx-aurora i{position:absolute;border-radius:50%;display:block}
.fx-aurora i:nth-child(1){width:520px;height:520px;left:55%;top:-5%;background:radial-gradient(closest-side,#2F5E9E,transparent);animation:fxA 16s ease-in-out infinite alternate}
.fx-aurora i:nth-child(2){width:460px;height:460px;left:5%;top:30%;background:radial-gradient(closest-side,#1d4a5e,transparent);animation:fxB 19s ease-in-out infinite alternate}
.fx-aurora i:nth-child(3){width:380px;height:380px;left:70%;top:45%;background:radial-gradient(closest-side,#9FB6D6,transparent);opacity:.45;animation:fxC 22s ease-in-out infinite alternate}
@keyframes fxA{to{transform:translate(-140px,90px) scale(1.15)}}
@keyframes fxB{to{transform:translate(160px,-60px) scale(.9)}}
@keyframes fxC{to{transform:translate(-90px,-120px) scale(1.2)}}
.fx-spot{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,30%),rgba(159,182,214,.16),transparent 70%);transition:opacity .4s}
.fx-w{display:inline-block;will-change:transform,opacity,filter}
.fx-tilt{transform-style:preserve-3d;will-change:transform}
.fx-glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(500px circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.22),transparent 45%);transition:opacity .3s;z-index:2}
.fx-btn{position:relative;overflow:hidden;will-change:transform}
.fx-btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:fxShine 4.5s ease-in-out infinite;pointer-events:none}
@keyframes fxShine{0%,70%{left:-60%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.fx-aurora i,.fx-btn::after{animation:none}.fx-progress{display:none}}
