/* NEXSORK "alive" слой: появяване при скрол, 3D наклон + блясък на картите, светлина в героя, прогрес лента */
#alive-bar{position:fixed;left:0;top:0;height:3px;width:100%;z-index:60;transform-origin:0 50%;transform:scaleX(var(--p,0));
 background:linear-gradient(90deg,#2563ff,#22d3ee 60%,#a78bfa);box-shadow:0 0 12px rgba(34,211,238,.7);pointer-events:none}
.top{transition:box-shadow .3s,backdrop-filter .3s,background-color .3s}
.top.scrolled{box-shadow:0 10px 30px -12px rgba(5,12,30,.55);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}

/* появяване */
.rv{opacity:0;transform:translateY(28px) scale(.985);filter:blur(4px);
 transition:opacity .75s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .75s cubic-bezier(.2,.7,.2,1) var(--d,0s),filter .75s ease var(--d,0s)}
.rv.in{opacity:1;transform:none;filter:none}

/* 3D наклон и блясък */
.prop,.nxc,.hv2cities.four a,.hv2guides a,.hv2promo .pic{position:relative}
.tilt{transform-style:flat;will-change:transform;
 transform:perspective(900px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg)) translateY(var(--ty,0px))!important;
 transition:transform .18s ease-out,box-shadow .25s!important}
.tilt.rest{transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .4s!important}
.tilt.hot{--ty:-5px;box-shadow:0 26px 48px -22px rgba(10,30,90,.55)}
.glr{position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity .25s;
 background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.34),rgba(255,255,255,0) 60%);mix-blend-mode:soft-light}
.tilt.hot .glr{opacity:1}

/* герой: светлина след курсора + блестящо заглавие */
.hv2hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;mix-blend-mode:screen;
 background:radial-gradient(560px circle at var(--hx,72%) var(--hy,30%),rgba(70,150,255,.30),rgba(34,211,238,.10) 45%,transparent 70%);transition:background-position .2s}
@keyframes aliveShine{to{background-position:-250% 0}}
.hv2hero h1{background:linear-gradient(100deg,#fff 0%,#fff 38%,#9fd6ff 48%,#fff 58%,#fff 100%);background-size:250% 100%;
 -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:aliveShine 7s linear infinite}
