/* Сдержанный декор внутри фирменной колонки подвала. */
.trek-winter-scene{position:relative;width:100%;max-width:300px;height:88px;margin-top:16px;overflow:hidden;pointer-events:none;user-select:none}
.trek-winter-scene__story{display:block;width:100%;height:100%}
/* Static fallback for reduced motion, unsupported observers or no scripting. */
.tw-base { transform: translate(380px, 178px); }
.tw-middle { transform: translate(380px, 132px); }
.tw-arm--left, .tw-arm--right { transform-origin: 29px 130px; }
.tw-snowball--left, .tw-snowball--right,
.tw-splash--left, .tw-splash--right { opacity: 0; }

@media (prefers-reduced-motion: no-preference) {
    /* 0-10s: roll and stack; 11-18s: exchange two snowballs. */
    [data-winter-ready] .tw-actor--left { animation: tw-push-left 20s linear infinite; }
    [data-winter-ready] .tw-actor--right { animation: tw-push-right 20s linear infinite; }
    [data-winter-ready] .tw-base { animation: tw-base 20s linear infinite; }
    [data-winter-ready] .tw-base-roll { animation: tw-roll-base 20s linear infinite; }
    [data-winter-ready] .tw-middle { animation: tw-stack 20s linear infinite; }
    [data-winter-ready] .tw-middle-roll { animation: tw-roll-middle 20s linear infinite; }
    [data-winter-ready] .tw-new-friend { animation: tw-finish 20s linear infinite; }
    [data-winter-ready] .tw-arm--left { animation: tw-arm-left 20s ease-in-out infinite; }
    [data-winter-ready] .tw-arm--right { animation: tw-arm-right 20s ease-in-out infinite; }
    [data-winter-ready] .tw-snowball--left { animation: tw-throw-left 20s linear infinite; }
    [data-winter-ready] .tw-snowball--right { animation: tw-throw-right 20s linear infinite; }
    [data-winter-ready] .tw-splash--right { animation: tw-hit-right 20s linear infinite; }
    [data-winter-ready] .tw-splash--left { animation: tw-hit-left 20s linear infinite; }
    .trek-winter-scene[data-winter-ready] .tw-motion { animation-play-state: paused; }
    .trek-winter-scene[data-winter-playing] .tw-motion { animation-play-state: running; }
}
@keyframes tw-push-left {
    0%, 4%, 38%, 100% { transform: translateX(0); }
    28%, 30% { transform: translateX(133px); }
}
@keyframes tw-push-right {
    0%, 26%, 56%, 100% { transform: translateX(0); }
    44%, 48% { transform: translateX(133px); }
}
@keyframes tw-base {
    0%, 4% { transform: translate(240px, 190px) scale(.62); opacity: 1; }
    28%, 94% { transform: translate(380px, 178px) scale(1); opacity: 1; }
    99%, 100% { transform: translate(380px, 178px) scale(1); opacity: 0; }
}
@keyframes tw-roll-base {
    0%, 4% { transform: rotate(0); }
    28%, 100% { transform: rotate(440deg); }
}
@keyframes tw-stack {
    0%, 26% { transform: translate(520px, 191px) scale(.72); opacity: 1; }
    44% { transform: translate(380px, 186px) scale(1); opacity: 1; }
    49%, 94% { transform: translate(380px, 132px) scale(1); opacity: 1; }
    99%, 100% { transform: translate(380px, 132px) scale(1); opacity: 0; }
}
@keyframes tw-roll-middle {
    0%, 26% { transform: rotate(0); }
    44%, 100% { transform: rotate(-410deg); }
}
@keyframes tw-finish {
    0%, 48% { opacity: 0; transform: translateY(13px); }
    53%, 94% { opacity: 1; transform: translateY(0); }
    99%, 100% { opacity: 0; transform: translateY(0); }
}
@keyframes tw-arm-left {
    0%, 4%, 38%, 55%, 67%, 100% { transform: rotate(0); }
    8%, 16%, 24% { transform: rotate(31deg); }
    12%, 20%, 28%, 30% { transform: rotate(45deg); }
    58% { transform: rotate(48deg); }
    60%, 63% { transform: rotate(-45deg); }
    84% { transform: rotate(-18deg); }
    88% { transform: rotate(0); }
}
@keyframes tw-arm-right {
    0%, 26%, 56%, 72%, 86%, 100% { transform: rotate(0); }
    30%, 38% { transform: rotate(31deg); }
    34%, 42%, 44% { transform: rotate(45deg); }
    48% { transform: rotate(-30deg); }
    68% { transform: rotate(-18deg); }
    75% { transform: rotate(48deg); }
    77%, 80% { transform: rotate(-45deg); }
}
@keyframes tw-throw-left {
    0%, 57.9% { opacity: 0; transform: translate(243px, 122px); }
    58% { opacity: 1; transform: translate(243px, 122px); }
    60% { opacity: 1; transform: translate(241px, 91px); }
    62% { opacity: 1; transform: translate(295px, 57px); }
    64% { opacity: 1; transform: translate(362px, 43px); }
    66% { opacity: 1; transform: translate(430px, 48px); }
    68% { opacity: 1; transform: translate(495px, 70px); }
    70% { opacity: 1; transform: translate(549px, 109px); }
    70.1%, 100% { opacity: 0; transform: translate(549px, 109px); }
}
@keyframes tw-throw-right {
    0%, 74.9% { opacity: 0; transform: translate(517px, 122px); }
    75% { opacity: 1; transform: translate(517px, 122px); }
    77% { opacity: 1; transform: translate(519px, 91px); }
    79% { opacity: 1; transform: translate(465px, 57px); }
    81% { opacity: 1; transform: translate(398px, 43px); }
    83% { opacity: 1; transform: translate(330px, 48px); }
    85% { opacity: 1; transform: translate(265px, 70px); }
    87% { opacity: 1; transform: translate(211px, 109px); }
    87.1%, 100% { opacity: 0; transform: translate(211px, 109px); }
}
@keyframes tw-hit-right {
    0%, 69.9%, 74%, 100% { opacity: 0; }
    70%, 71% { opacity: 1; }
}
@keyframes tw-hit-left {
    0%, 86.9%, 91%, 100% { opacity: 0; }
    87%, 88% { opacity: 1; }
}
