/* Логотип: вентилятор, который запускается и выходит «в норму» */
.brand-mark{overflow:visible}
.brand-fan,.brand-core,.brand-pulse{transform-box:view-box;transform-origin:16px 16px}
.brand-pulse{opacity:0;stroke-width:1}
.brand-letter{display:inline-block}

/* Наведение: лопасти делают один оборот */
@media(hover:hover){.brand:hover .brand-fan{animation:brand-hover-spin 1.1s cubic-bezier(.25,.8,.25,1)}}

/* Первое появление */
.logo-intro .brand-ring{stroke-dasharray:100;stroke-dashoffset:100;animation:brand-draw .9s cubic-bezier(.65,0,.35,1) .15s forwards}
.logo-intro .brand-blade{stroke-dasharray:100;stroke-dashoffset:100;animation:brand-draw .45s cubic-bezier(.3,0,.2,1) forwards}
.logo-intro .brand-blade:nth-child(1){animation-delay:.6s}
.logo-intro .brand-blade:nth-child(2){animation-delay:.72s}
.logo-intro .brand-blade:nth-child(3){animation-delay:.84s}
.logo-intro .brand-fan{animation:brand-spin-up 1.9s cubic-bezier(.12,.55,.2,1) .7s both}
.logo-intro .brand-core{animation:brand-core-pop .55s cubic-bezier(.3,1.7,.5,1) 1.55s both}
.logo-intro .brand-pulse{animation:brand-pulse 1.1s cubic-bezier(.2,.6,.3,1) 1.75s both}
.logo-intro .brand-letter{opacity:0;animation:brand-letter-in .8s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(1s + var(--i) * .075s)}
.logo-intro .brand-desc{opacity:0;animation:brand-fade-up .7s cubic-bezier(.2,.8,.2,1) 1.6s forwards}
/* Оранжевая линия под НОРМА: прорисовывается при появлении и остаётся */
.header .brand-word{position:relative}
.header .brand-word::after{content:'';position:absolute;left:0;right:.1em;top:1.2em;height:1px;background:linear-gradient(90deg,transparent,var(--orange) 30%,var(--orange) 70%,transparent);opacity:.85;transform-origin:left;pointer-events:none}
.logo-intro .brand-word::after{transform:scaleX(0);animation:brand-sweep 1.1s cubic-bezier(.6,0,.2,1) 1.35s forwards}
@media(max-width:850px){.header .brand-word::after{top:1.25em}}

@keyframes brand-draw{to{stroke-dashoffset:0}}
@keyframes brand-spin-up{from{transform:rotate(-900deg)}to{transform:rotate(0)}}
@keyframes brand-core-pop{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes brand-pulse{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(1.9)}}
@keyframes brand-letter-in{from{opacity:0;transform:translateY(55%);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes brand-fade-up{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes brand-sweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes brand-hover-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}

@media(prefers-reduced-motion:reduce){
 .logo-intro .brand-ring,.logo-intro .brand-blade{stroke-dashoffset:0}
 .logo-intro *,.logo-intro .brand-word::after,.brand:hover .brand-fan{animation:none!important}
 .logo-intro .brand-letter,.logo-intro .brand-desc{opacity:1}
 .logo-intro .brand-word::after{transform:none}
}
