@keyframes kdRipple { to { transform: translate(-50%, -50%) scale(4); opacity: 0; } }
@keyframes kdPulse { 0%{box-shadow:0 0 0 0 rgba(22,189,78,.45),0 14px 34px rgba(22,189,78,.35)} 70%{box-shadow:0 0 0 13px rgba(22,189,78,0),0 14px 34px rgba(22,189,78,.35)} 100%{box-shadow:0 0 0 0 rgba(22,189,78,0),0 14px 34px rgba(22,189,78,.35)} }
@keyframes kdZoomHero { from{transform:scale(1)} to{transform:scale(1.04)} }
.kd-hero:before{content:"";position:absolute;inset:0;background:var(--kd-hero-image);background-size:cover;background-position:center;animation:kdZoomHero 12s ease-in-out infinite alternate;z-index:-1}.kd-hero{isolation:isolate}.kd-reveal-up,.kd-reveal-left,.kd-reveal-right{opacity:0;transition:opacity .72s ease,transform .72s ease}.kd-reveal-up{transform:translateY(28px)}.kd-reveal-left{transform:translateX(-28px)}.kd-reveal-right{transform:translateX(28px)}.kd-reveal-up.is-visible,.kd-reveal-left.is-visible,.kd-reveal-right.is-visible{opacity:1;transform:translate(0)}.kd-student-mini,.kd-rank-card,.kd-placement-grid div,.kd-practical-card,.kd-testimonial-card,.kd-branch-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.kd-student-mini:hover,.kd-rank-card:hover,.kd-placement-grid div:hover,.kd-testimonial-card:hover,.kd-branch-card:hover{transform:translateY(-5px);box-shadow:var(--kd-shadow)}.kd-play,.kd-featured-play{animation:kdPlayPulse 2s infinite}.kd-play:hover,.kd-featured-play:hover{transform:scale(1.08)}.kd-featured-play:hover{transform:translate(-50%,-50%) scale(1.08)}@keyframes kdPlayPulse{0%,100%{box-shadow:0 0 0 0 rgba(247,148,29,.35),0 8px 18px rgba(0,0,0,.2)}70%{box-shadow:0 0 0 10px rgba(247,148,29,0),0 8px 18px rgba(0,0,0,.2)}}.kd-header .kd-logo-mark{position:relative;overflow:hidden}.kd-header .kd-logo-mark:after{content:"";position:absolute;inset:-45%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-140%) rotate(18deg);animation:kdLogoShine 4.6s infinite}@keyframes kdLogoShine{0%,60%{transform:translateX(-140%) rotate(18deg)}90%,100%{transform:translateX(140%) rotate(18deg)}}
@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.kd-reveal-up,.kd-reveal-left,.kd-reveal-right{opacity:1;transform:none}}
