/* P1-анимации: история короче, сжатие шапки, блик CTA, плавный FAQ, плавающая панель заявки */

/* №16 — история «Поло проходит весь путь»: ~2,5 экрана вместо ~4,7 */
.story-track{min-height:240vh}

/* №9 — шапка: сжимается при прокрутке вниз. margin-bottom компенсирует высоту, чтобы страница не прыгала */
.header{transition:height .22s var(--ease),margin-bottom .22s var(--ease),box-shadow .22s var(--ease)}
.header .logo img{transition:width .22s var(--ease),height .22s var(--ease)}
@media(min-width:951px){
  .header.is-compact{height:64px;margin-bottom:24px;box-shadow:0 8px 24px -14px rgba(16,27,53,.35)}
  .header.is-compact .logo img{width:34px;height:34px}
}

/* №12 — блик на основной кнопке: проходит один раз при наведении; нажатие — лёгкое сжатие */
.btn.primary{position:relative;overflow:hidden;isolation:isolate}
.btn.primary::before{content:"";position:absolute;inset:0 auto 0 0;width:60%;z-index:-1;pointer-events:none;
  background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.34) 50%,transparent 100%);transform:translateX(-120%) skewX(-18deg)}
.btn.primary:hover::before{transform:translateX(260%) skewX(-18deg);transition:transform .6s var(--ease)}
.btn.primary span[aria-hidden]{transition:transform .22s var(--ease)}
.btn.primary:hover span[aria-hidden]{transform:translate(3px,-3px)}
.btn.primary:active{transform:scale(.97);transition-duration:.12s}

/* №22 — плавный FAQ: высота ответа, плюс превращается в крест, текст проявляется с задержкой */
:root{interpolate-size:allow-keywords}
.faq-grid details::details-content{block-size:0;overflow:hidden;transition:block-size .3s var(--ease),content-visibility .3s allow-discrete}
.faq-grid details[open]::details-content{block-size:auto}
.faq-grid details summary:after,.faq-grid details[open] summary:after{
  background:linear-gradient(currentColor,currentColor) center/14px 1px no-repeat,linear-gradient(currentColor,currentColor) center/1px 14px no-repeat;
  transition:transform .3s var(--ease)}
.faq-grid details[open] summary:after{transform:rotate(45deg)}
.faq-grid details[open] p{animation:faq-in .35s var(--ease) .08s both}
@keyframes faq-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* №13 — плавающая панель заявки */
.cta-bar{position:fixed;right:24px;bottom:24px;z-index:45;display:flex;align-items:center;gap:8px;padding:8px;border-radius:12px;
  background:rgba(255,255,255,.94);border:1px solid var(--line);box-shadow:0 18px 40px -18px rgba(16,27,53,.45);backdrop-filter:blur(8px);
  opacity:0;transform:translateY(24px);pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease)}
.cta-bar.is-visible{opacity:1;transform:none;pointer-events:auto}
.cta-bar-phone{display:inline-flex;align-items:center;gap:8px;padding:0 14px;min-height:46px;border-radius:8px;color:var(--ink);font-size:14px;font-weight:500;white-space:nowrap}
.cta-bar-phone:hover{background:var(--paper)}
.cta-bar-btn{min-height:46px;padding:10px 18px;gap:14px}
@media(max-width:650px){
  .cta-bar{left:12px;right:12px;bottom:12px;justify-content:space-between}
  .cta-bar-phone span{display:none}
  .cta-bar-phone{padding:0 12px;border:1px solid var(--line)}
  .cta-bar-btn{flex:1}
  body.cta-bar-on .footer{padding-bottom:90px}
  body.cta-bar-on .header .btn.primary{visibility:hidden}
}

@media(prefers-reduced-motion:reduce){
  .header,.header .logo img,.cta-bar,.btn.primary span[aria-hidden]{transition:none}
  .btn.primary::before{display:none}
  .faq-grid details::details-content{transition:none}
  .faq-grid details summary:after{transition:none}
  .faq-grid details[open] p{animation:none}
}
