/* the footer skyline on the product sites (from sm.css / sm-pages.css, owner 2026-11-03) */
.ftown{height:120px;margin-bottom:48px;--line:rgba(55,120,245,.35);--fill:rgba(55,120,245,.03);border-bottom:1px solid rgba(55,120,245,.25);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
:root[data-theme=dark] .ftown{--line:rgba(190,210,255,.25)}
.ftown svg{width:100%;height:100%;display:block}
.ftown .sign text{fill:rgba(55,120,245,.55)}
.ftown .win.on{fill:#ffd166;stroke:#ffd166}
.ftown .fbus{animation:fbus var(--t) linear infinite;animation-play-state:paused}
.ftown .fbus.b2{animation-direction:reverse;animation-delay:-12s}
.ftown .fwalk{animation:fwalk 60s linear infinite;animation-play-state:paused}
.ftown.live .fbus,.ftown.live .fwalk,.ftown.live .fdash{animation-play-state:running}
.ftown .fdash{stroke-dasharray:18 14;animation:road 1.4s linear infinite;animation-play-state:paused}
.ftown .win{transition:fill .6s,stroke .6s}
.ftown .arm{animation:arm 5s ease-in-out infinite;transform-box:fill-box;transform-origin:0% 50%}
.ftown .smoke circle{animation:smoke 4s ease-in-out infinite}
@keyframes fbus{from{transform:translateX(-120px)}to{transform:translateX(var(--w))}}
@keyframes fwalk{from{transform:translateX(var(--w))}to{transform:translateX(-40px)}}
@keyframes road{to{stroke-dashoffset:-40}}
@keyframes arm{0%,40%{transform:rotate(0)}55%,80%{transform:rotate(-70deg)}100%{transform:rotate(0)}}
.ftown{height:auto!important;min-height:0}
.ftown svg{height:auto!important;max-height:220px}
.ftown .ln{fill:none;stroke:var(--line);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.ftown .bf{fill:var(--fill);stroke:var(--line);stroke-width:2;stroke-linejoin:round}
.ftown .win{fill:transparent;stroke:var(--line);stroke-width:1.6;transition:fill .8s}
.ftown .sign rect{fill:none;stroke:var(--line);stroke-width:1.8}.ftown .sign text{font:700 11px Inter,sans-serif;letter-spacing:.14em}
.ftown{max-width:none}
html[data-theme=dark] .ftown{--line:rgba(190,210,255,.25)}html:not([data-theme=dark]) .ftown{--line:rgba(55,120,245,.35)}
.ftr2 .ftown{width:100vw;margin-left:calc(50% - 50vw);height:150px;margin-bottom:44px;border-bottom:1px solid rgba(55,120,245,.18)}
html[data-theme=dark] .ftr2 .ftown{border-bottom-color:rgba(190,210,255,.12)}
