/* =========================================================
   PAYLANCE — приветствие при первом заходе с телефона
   Показывается один раз, дальше не мешает.
   ========================================================= */
.wel{position:fixed;inset:0;z-index:100000;background:#FBFBFA;display:flex;flex-direction:column;
  font-family:Manrope,-apple-system,sans-serif;opacity:0;animation:welin .45s cubic-bezier(.22,.7,.3,1) forwards}
@keyframes welin{to{opacity:1}}
.wel.out{animation:welout .4s cubic-bezier(.5,0,.75,0) forwards}
@keyframes welout{to{opacity:0;transform:scale(1.02)}}

.wel__skip{position:absolute;right:14px;top:calc(12px + env(safe-area-inset-top));z-index:3;
  font-size:13px;font-weight:700;color:#8B93A1;background:rgba(255,255,255,.8);backdrop-filter:blur(8px);
  border:0;border-radius:999px;padding:9px 15px}

/* бесконечная лента фотографий: три колонки едут, экран живёт */
.wel__art{flex:1 1 auto;min-height:0;position:relative;overflow:hidden}
.wel__cols{position:absolute;top:50%;left:50%;width:164%;height:186%;
  transform:translate(-50%,-50%) rotate(-12deg);
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.wel__col{position:relative;overflow:hidden}
.wel__strip{display:flex;flex-direction:column;gap:14px;will-change:transform;
  animation:welRoll 34s linear infinite}
.wel__col:nth-child(2) .wel__strip{animation-duration:26s;animation-direction:reverse}
.wel__col:nth-child(3) .wel__strip{animation-duration:42s}
@keyframes welRoll{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(0,calc(-50% - 7px),0)}
}
.wel__strip figure{margin:0;flex:0 0 auto;height:138px;border-radius:20px;overflow:hidden;
  background:#EFEEEA;box-shadow:0 18px 36px -26px rgba(15,23,42,.45)}
.wel__strip img{width:100%;height:100%;object-fit:cover;display:block}
.wel__fade{position:absolute;left:0;right:0;bottom:0;height:30%;pointer-events:none;
  background:linear-gradient(180deg,rgba(251,251,250,0),#FBFBFA 88%)}
@media(prefers-reduced-motion:reduce){.wel__strip{animation:none}}

/* карточка с текстом */
.wel__card{flex:0 0 auto;display:flex;flex-direction:column;
  padding:24px 22px calc(18px + env(safe-area-inset-bottom));text-align:center;position:relative;z-index:2}
.wel__slides{overflow:hidden;transition:height .38s cubic-bezier(.22,.7,.3,1)}
.wel__track{display:flex;align-items:flex-start;transition:transform .42s cubic-bezier(.22,.7,.3,1)}
.wel__slide{flex:0 0 100%;padding:0 4px}
.wel__slide h2{margin:0 0 10px;font-size:29px;font-weight:800;letter-spacing:-.035em;line-height:1.14;color:#0F172A}
.wel__slide p{margin:0;font-size:14px;line-height:1.55;color:#5A6373;font-weight:500}
.wel__slide .hl{color:#0F172A;font-weight:800}

/* три шага */
.wel__steps{display:flex;gap:8px;margin-top:18px}
.wel__steps div{flex:1;background:#fff;border:1px solid #E8EAEE;border-radius:15px;padding:11px 8px}
.wel__steps b{display:block;font-size:11.5px;font-weight:800;color:#0F172A;line-height:1.25}
.wel__steps span{display:block;font-size:10px;color:#8B93A1;font-weight:600;margin-top:3px;line-height:1.3}
.wel__steps i{display:flex;width:24px;height:24px;border-radius:8px;background:#EDF1F7;color:#0F172A;
  align-items:center;justify-content:center;font-size:11px;font-weight:800;font-style:normal;margin:0 auto 7px}

.wel__dots{display:flex;gap:6px;justify-content:center;margin:22px 0 14px;flex:0 0 auto}
.wel__dots span{width:6px;height:6px;border-radius:50%;background:#D8DCE3;transition:width .3s,background .3s}
.wel__dots span.on{width:20px;background:#0F172A}

.wel__btn{width:100%;min-height:54px;border:0;border-radius:999px;background:#0F172A;color:#fff;
  font:inherit;font-size:15px;font-weight:700;letter-spacing:-.01em;
  transition:transform .2s cubic-bezier(.22,.7,.3,1)}
.wel__btn:active{transform:scale(.975)}
.wel__second{margin-top:10px;width:100%;min-height:48px;border:0;background:transparent;font:inherit;
  font-size:13.5px;font-weight:700;color:#5A6373}

@media(min-width:761px){.wel{display:none}}
@media(prefers-reduced-motion:reduce){.wel,.wel__track{animation:none;transition:none}}

/* пока открыто приветствие, баннер cookie ждёт своей очереди */
html.pl-wel-open #plCookieBanner{display:none!important}
