/* Фирменная анимация LAB PRO «Отбор»: ромб из знака + ракета со следом.
   Источник: tools/motion/labpro/, копирует в сайт tools/motion/apply.py. */

/* Первый экран: вместо двух свечений сцена «Отбор» */
.m-aurora>.m-glow,.m-aurora::after{display:none!important}
.hero{position:relative;overflow:hidden}
.hero>.wrap{position:relative}
.lp-otbor{display:block;pointer-events:none}
@media(min-width:1000px){
  .hero.lp-has-scene>.wrap>:not(.facts):not(.lp-otbor){max-width:600px}
  .hero.lp-has-scene.lp-full h1{font-size:clamp(32px,3.5vw,46px)}
  .hero .lp-otbor{position:absolute;right:0;top:0}
}
@media(max-width:999px){
  .hero .lp-otbor.lp-mini{display:none}
  .hero .lp-otbor.lp-big{width:100%;height:300px;margin:18px 0 -6px}
}

/* Шапка: рамка вокруг логотипа заполняется по мере чтения, шапка сжимается */
.brand{position:relative}
.lp-hring{position:absolute;pointer-events:none;overflow:visible}
header.top .wrap,.brand img{transition:height .35s ease,width .35s ease}
@media(min-width:621px){
  header.top.lp-small .wrap{height:56px}
  header.top.lp-small .brand img{width:42px;height:42px}
}

/* Золотые кнопки: при наведении и нажатии вылетает след ракеты */
.btn.gold{position:relative;overflow:hidden;isolation:isolate}
.lp-trail{position:absolute;left:-6px;bottom:-10px;width:70px;height:46px;pointer-events:none;z-index:-1;opacity:0}
.lp-trail path{fill:none;stroke:#fff;stroke-linecap:round;stroke-dasharray:80;stroke-dashoffset:80}
.lp-trail.go{animation:lp-trail-move .9s cubic-bezier(.2,.7,.2,1) forwards}
.lp-trail.go path{animation:lp-trail-draw .9s cubic-bezier(.2,.7,.2,1) forwards}
.lp-trail.go path:nth-child(2){animation-delay:.05s}.lp-trail.go path:nth-child(3){animation-delay:.1s}
@keyframes lp-trail-move{0%{opacity:.75;transform:translate(0,0)}70%{opacity:.55}100%{opacity:0;transform:translate(90%,-40%)}}
@keyframes lp-trail-draw{to{stroke-dashoffset:0}}

/* Шаги: ромб с номером загорается по очереди */
.lp-steps .step b{display:inline-grid;place-items:center;width:46px;height:46px;font-size:20px;position:relative;margin-bottom:10px;color:#9a8f80;transition:color .5s}
.lp-steps .step b::before{content:"";position:absolute;inset:7px;transform:rotate(45deg);border:2px solid #d9cfbf;border-radius:3px;transition:background .5s,border-color .5s,box-shadow .5s;z-index:-1}
.lp-steps .step{position:relative;isolation:isolate;border-top-color:#e8dfcf;transition:border-color .6s}
.lp-steps .step::after{content:"";position:absolute;left:0;top:-4px;height:4px;width:100%;background:var(--gold);border-radius:14px 14px 0 0;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.lp-steps .step.lp-on b{color:#262626}
.lp-steps .step.lp-on b::before{background:linear-gradient(135deg,#E8C583,#C9A061);border-color:#E8C583;box-shadow:0 6px 18px -6px rgba(232,197,131,.9)}
.lp-steps .step.lp-on::after{transform:scaleX(1)}
.lp-steps .step.m-spot::before{display:none}

/* Бенто «Цифры» (страница подбора) */
.lp-bento{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto;gap:16px}
.lp-bento .bx{background:#2f2f2f;border:1px solid #4C4C4C;border-radius:16px;padding:20px;min-width:0;position:relative;overflow:hidden;color:#e6e0d6}
.lp-bento .bx h3{color:var(--gold);font-size:30px;line-height:1.1;margin:0 0 6px;font-weight:800}
.lp-bento .bx p{margin:0;font-size:15px;color:#cfc7b8}
.lp-bento .b-main{grid-row:span 2;display:flex;flex-direction:column;gap:14px}
.lp-bento .b-main h3{font-size:clamp(34px,4vw,48px)}
.lp-bento .roles span{opacity:.25;transition:opacity .4s,border-color .4s,background .4s}
.lp-bento .roles span.lp-on{opacity:1;border-color:var(--gold);background:rgba(232,197,131,.08)}
.lp-cal{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:14px}
.lp-cal i{display:grid;place-items:center;height:34px;border-radius:8px;border:1px solid #4C4C4C;font-style:normal;font-size:12px;color:#9a948b;transition:background .4s,color .4s,border-color .4s}
.lp-cal i.lp-on{background:linear-gradient(135deg,#E8C583,#C9A061);color:#262626;border-color:transparent;font-weight:800}
.lp-fin{display:flex;gap:8px;margin-top:14px;perspective:400px}
.lp-fin i{flex:1;height:42px;border-radius:8px;background:#3a3a3a;border:1px solid #555;transform:rotateY(90deg);transition:transform .6s cubic-bezier(.2,.8,.2,1),background .4s;position:relative}
.lp-fin i::after{content:"";position:absolute;left:50%;top:9px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#E8C583}
.lp-fin i::before{content:"";position:absolute;left:50%;bottom:7px;width:22px;height:9px;margin-left:-11px;border-radius:9px 9px 3px 3px;background:#E8C583;opacity:.7}
.lp-fin i.lp-on{transform:rotateY(0)}
.lp-fin i.lp-pick{background:#4a3f2c;border-color:#E8C583;box-shadow:0 0 18px -4px rgba(255,192,20,.7)}
.lp-range{height:10px;border-radius:5px;background:#3a3a3a;margin-top:16px;position:relative;overflow:hidden}
.lp-range i{position:absolute;top:0;bottom:0;left:70%;width:0;background:linear-gradient(90deg,#805D31,#E8C583);border-radius:5px;transition:width 1s cubic-bezier(.2,.8,.2,1),left 1s cubic-bezier(.2,.8,.2,1)}
.lp-range i.lp-on{left:46.7%;width:20%}
.lp-scale{position:relative;height:18px;font-size:12px;color:#8f897f;margin-top:6px}.lp-scale span{position:absolute;top:0}.lp-scale span:nth-child(2),.lp-scale span:nth-child(3){transform:translateX(-50%);color:var(--gold)}
.lp-bento .b-wide{grid-column:span 2}
.lp-bento .bx.m-spot:hover{transform:translateY(-3px)}
@media(max-width:900px){.lp-bento{grid-template-columns:1fr 1fr}.lp-bento .b-main{grid-column:span 2;grid-row:auto}}
@media(max-width:560px){.lp-bento{grid-template-columns:1fr}.lp-bento .b-main,.lp-bento .b-wide{grid-column:auto}}

/* Подвал: ромб, ракета уходит вверх */
.lp-foot{max-width:1160px;margin:0 auto 34px;padding:0 20px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.lp-foot svg{flex:none;width:92px;height:92px;overflow:visible}
.lp-foot .t{flex:1;min-width:220px}
.lp-foot b{display:block;color:#fff;font-size:clamp(20px,2.6vw,28px);line-height:1.2;font-weight:800}
.lp-foot span{color:#a9a39b;font-size:14px}
.lp-foot .btn{display:inline-block}
.lp-foot .lp-rk{transition:transform 1.4s cubic-bezier(.5,0,.2,1),opacity 1.4s}
.lp-foot .lp-tr path{stroke-dasharray:60;stroke-dashoffset:60;transition:stroke-dashoffset 1.2s cubic-bezier(.3,.6,.2,1)}
.lp-foot.lp-on .lp-tr path{stroke-dashoffset:0}
.lp-foot.lp-on .lp-rk{transform:translate(14px,-16px)}
footer>.lp-foot{border-bottom:1px solid #3a3a3a;padding-bottom:30px}

@media(prefers-reduced-motion:reduce){
  .lp-trail{display:none}
  .lp-steps .step b,.lp-steps .step b::before,.lp-steps .step::after,.lp-bento *,.lp-foot *{transition:none!important}
}
.lp-bento .bx p.big-num{font-size:clamp(34px,4vw,48px);color:var(--gold);line-height:1.1;font-weight:800}
.btn{vertical-align:middle}

/* «Узнаёте себя?»: иллюстрация отбора. Из троих кандидатов выделяется один, над ним ромб из знака */
.lp-pains{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:28px;align-items:center}
.lp-pains .pains{order:1}
.lp-pick{order:2;width:100%;max-width:400px;height:auto;justify-self:center}
@media (max-width:760px){.lp-pains{grid-template-columns:1fr;gap:18px}.lp-pick{order:0;max-width:280px}}
.lp-pick .pk{transform-box:fill-box;transform-origin:50% 100%;transition:opacity .6s ease,transform .7s cubic-bezier(.3,1.4,.5,1)}
.lp-pick .pk-dia{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1s ease .9s}
.lp-pick.lp-wait .pk{opacity:0;transform:translateY(16px)}
.lp-pick.lp-wait .pk-dia{stroke-dashoffset:1}
.lp-pick.lp-go .pk{opacity:1;transform:none}
.lp-pick.lp-go .pk1,.lp-pick.lp-go .pk3{opacity:.45;transition-delay:.15s,.15s}
.lp-pick.lp-go .pk2{transform:scale(1.04);transition-delay:.3s}
.lp-pick.lp-go .pk-dia{stroke-dashoffset:0}

/* Кейсы на странице найма: карточка приподнимается и подсвечивается золотом */
.card.case{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.card.case:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 14px 30px rgba(128,93,49,.12)}
@media (prefers-reduced-motion:reduce){.lp-pick .pk,.lp-pick .pk-dia,.card.case{transition:none}}
