/* KAZ.HOLIDAY: анимированный логотип по ТЗ-7 (слои, CSS-анимации; без GIF/видео). Общий компонент для всех проектов. */
.logo-anim{position:relative;width:250px;aspect-ratio:845/499;flex:none;display:block}
.logo-anim::before{content:"";position:absolute;inset:-18% -14%;background:radial-gradient(closest-side,rgba(247,201,93,.13),transparent 72%);animation:lgGlow 5s ease-in-out 2s infinite alternate;pointer-events:none}
.logo-anim img{position:absolute;inset:0;width:100%;height:100%;display:block;max-width:none;max-height:none;margin:0;padding:0;border:0}
.logo-anim .ls{animation:lgSun 1.5s cubic-bezier(.2,.8,.2,1) .15s both,lgPulse 4.5s ease-in-out 1.8s infinite alternate}
.logo-anim .lm{animation:lgUp .9s cubic-bezier(.2,.8,.2,1) both}
.logo-anim .lw{animation:lgFade .8s ease .7s both,lgWave 4s ease-in-out 1.5s infinite alternate}
.logo-anim .lt{animation:lgWipe .9s cubic-bezier(.3,.7,.2,1) 1s both}
@keyframes lgSun{from{transform:translateY(38%);opacity:0}to{transform:none;opacity:1}}
@keyframes lgPulse{from{filter:drop-shadow(0 0 0 rgba(255,205,40,0))}to{filter:drop-shadow(0 0 16px rgba(255,205,40,.55))}}
@keyframes lgUp{from{transform:translateY(8%);opacity:0}to{transform:none;opacity:1}}
@keyframes lgFade{from{opacity:0}to{opacity:1}}
@keyframes lgWave{from{transform:translateX(-1.6%)}to{transform:translateX(1.6%)}}
@keyframes lgWipe{from{clip-path:inset(0 100% 0 0);opacity:.2}to{clip-path:inset(0 0 0 0);opacity:1}}
@keyframes lgGlow{from{opacity:.55}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.logo-anim *,.logo-anim::before{animation:none!important}}
.logo-anim .ly{animation:lgUp .9s cubic-bezier(.2,.8,.2,1) .1s both,lgYurt 3.6s ease-in-out 1.6s infinite alternate}
@keyframes lgYurt{from{filter:drop-shadow(0 0 3px rgba(255,255,255,.35))}to{filter:drop-shadow(0 0 11px rgba(255,255,255,.95))}}
.logo-anim .lr{transform-origin:32.4% 36.7%;animation:lgSun 1.5s cubic-bezier(.2,.8,.2,1) .15s both,lgRay 2.4s ease-in-out 1.7s infinite alternate}
.logo-anim .r2{animation-delay:.15s,2.0s}.logo-anim .r3{animation-delay:.15s,2.3s}.logo-anim .r4{animation-delay:.15s,2.6s}.logo-anim .r1{animation-delay:.15s,1.7s}
@keyframes lgRay{from{opacity:.55;transform:scale(1);filter:drop-shadow(0 0 0 rgba(255,205,40,0))}to{opacity:1;transform:scale(1.07);filter:drop-shadow(0 0 9px rgba(255,214,70,.95))}}
@media (prefers-reduced-motion:reduce){.logo-anim .lr,.logo-anim .ly{animation:none!important}}
/* обёртка-ссылка: логотип по центру/слева задаёт страница, здесь только сброс оформления ссылки */
a.kh-logo-link{display:block;text-decoration:none;color:inherit;line-height:0}

/* v2: логотип внутри ссылки/блока шапки (подмена текстового логотипа) */
.kh-logo-link{flex:none!important;display:block!important;line-height:0!important;height:auto!important;min-height:0!important;width:auto!important;padding-block:0!important;background:none!important;border:0!important;text-decoration:none}
.kh-logo-link .logo-anim{aspect-ratio:845/499;pointer-events:none}
.kh-logo-link::before,.kh-logo-link::after{content:none!important}

/* v4 (01.11.2026): повторная постановка логотипа после пересоздания шапки страницей — без входа заново, фаза циклов сохраняется */
.logo-anim.kh-seen .ls{animation:lgPulse 4.5s ease-in-out calc(1.8s - var(--kh-e,0s)) infinite alternate}
.logo-anim.kh-seen .lm,.logo-anim.kh-seen .lt,.logo-anim.kh-seen .lw{animation:none}
.logo-anim.kh-seen .lw{animation:lgWave 4s ease-in-out calc(1.5s - var(--kh-e,0s)) infinite alternate}
.logo-anim.kh-seen .ly{animation:lgYurt 3.6s ease-in-out calc(1.6s - var(--kh-e,0s)) infinite alternate}
.logo-anim.kh-seen .lr{animation:lgRay 2.4s ease-in-out calc(1.7s - var(--kh-e,0s)) infinite alternate}
.logo-anim.kh-seen .r2{animation-delay:calc(2.0s - var(--kh-e,0s))}.logo-anim.kh-seen .r3{animation-delay:calc(2.3s - var(--kh-e,0s))}.logo-anim.kh-seen .r4{animation-delay:calc(2.6s - var(--kh-e,0s))}
@media (prefers-reduced-motion:reduce){.logo-anim.kh-seen *{animation:none!important}}
