/* Original logo med separat tekstring og et rolig bevegelig snøunderlag. */
.animated-logo{display:block;width:110px;height:110px;flex-shrink:0;overflow:visible}
.logo-letter-ring{transform-origin:200px 200px;animation:logo-letter-turn 30s linear infinite}
@keyframes logo-letter-turn{to{transform:rotate(-360deg)}}
@media(max-width:1050px){.brand .animated-logo{width:95px;height:95px}}
@media(max-width:980px){.brand .animated-logo{width:80px;height:80px}}
@media(max-width:620px){.brand .animated-logo{width:70px;height:70px}}
@media(max-width:360px){.brand .animated-logo{width:58px;height:58px}}
@media(prefers-reduced-motion:reduce){.logo-letter-ring{animation:none}}
html:not(.logo-ready) .animated-logo *{animation:none!important}

.logo-body-bounce{transform-origin:211px 261px;animation:logo-snow-suspension 2.5s ease-in-out infinite}
.logo-ground-scroll{animation:logo-ground-passing 2.5s linear infinite}
.logo-rolling-belt{animation:logo-track-rolling .625s linear infinite}
.logo-contact-chip{animation:logo-ground-chip .625s linear infinite;opacity:0}
/* Alle periodene deler samme klokke, også etter et sidebytte. */
.logo-letter-ring,.logo-body-bounce,.logo-ground-scroll,.logo-rolling-belt{animation-delay:var(--logo-phase,0s)}
.logo-contact-chip{animation-delay:calc(var(--logo-phase,0s) + var(--logo-chip-offset,0s))}
@keyframes logo-ground-passing{to{transform:translateX(-120px)}}
@keyframes logo-track-rolling{to{stroke-dashoffset:30}}
@keyframes logo-snow-suspension{
 0%,100%{transform:translateY(0) rotate(-.12deg)}
 16%{transform:translateY(-1.2px) rotate(.18deg)}
 33%{transform:translateY(.2px) rotate(-.16deg)}
 50%{transform:translateY(-2px) rotate(.25deg)}
 67%{transform:translateY(-.4px) rotate(-.1deg)}
 83%{transform:translateY(-1px) rotate(.12deg)}
}
@keyframes logo-ground-chip{
 0%{transform:translate(0,0);opacity:0}
 16%{transform:translate(-3px,-2px);opacity:.85}
 48%{transform:translate(-11px,-4px);opacity:.8}
 100%{transform:translate(-23px,3px);opacity:0}
}

.logo-boost-body{transform-origin:211px 261px;animation:logo-idle-gas 2.5s ease-out infinite;animation-delay:var(--logo-phase,0s);transition:opacity .16s ease-out}
.logo-boost-flake{opacity:0;animation:logo-idle-spray 2.5s linear infinite;animation-delay:calc(var(--logo-phase,0s) + var(--burst-delay,0s))}
.logo-trip-landing .logo-boost-flake{animation:none}
.animated-logo.is-boosting .logo-boost-body{opacity:0;transition:none}
.brand[aria-disabled="true"]{cursor:default}
/* Snøen hviler mens scooteren er ute; tekstringen fortsetter å rotere. */
.animated-logo.is-boosting .logo-ground-scroll,
.animated-logo.is-boosting .logo-boost-body,
.animated-logo.is-boosting .logo-body-bounce,
.animated-logo.is-boosting .logo-rolling-belt,
.animated-logo.is-boosting .logo-contact-chip,
.animated-logo.is-boosting .logo-boost-flake{animation-play-state:paused}
.animated-logo.is-boosting .logo-contact-snow,
.animated-logo.is-boosting .logo-boost-snow{opacity:0}
.logo-trip-landing{display:none}
/* Det lille gasspådraget varer under ett sekund, med 1,5 sekunder ro mellom. */
@keyframes logo-idle-gas{
 0%,38%,100%{transform:translateY(0) rotate(0)}
 6%{transform:translateY(1.5px) rotate(.5deg)}
 14%{transform:translateY(-4px) rotate(-1.8deg)}
 25%{transform:translateY(-1px) rotate(.6deg)}
 31%{transform:translateY(-.5px) rotate(-.3deg)}
}
@keyframes logo-idle-spray{
 0%,40%,100%{transform:translate(0,0);opacity:0}
 4%{opacity:.95}
 14%{transform:translate(var(--burst-x-mid),var(--burst-y));opacity:.9}
 28%,39%{transform:translate(var(--burst-x),7px);opacity:0}
}
.logo-excursion{position:fixed;left:0;top:0;z-index:30;pointer-events:none;will-change:transform}
.logo-excursion-stage{position:fixed;inset:0;z-index:30;pointer-events:none;overflow:hidden}
.logo-excursion svg{display:block;width:100%;height:100%;overflow:visible}
.logo-journey-machine{transform-origin:210px 218px}
.journey-snow{animation:journey-snow-flight .65s linear infinite;animation-delay:var(--snow-delay,0s)}
@keyframes journey-snow-flight{
 0%{transform:translate(0,0);opacity:0}
 12%{opacity:.95}
 48%{transform:translate(-20px,-9px);opacity:.9}
 100%{transform:translate(-43px,4px);opacity:0}
}

@media(prefers-reduced-motion:reduce){
 .logo-body-bounce,.logo-ground-scroll,.logo-rolling-belt,.logo-contact-chip,.logo-boost-body,.logo-boost-flake,.animated-logo.is-boosting .logo-boost-flake{animation:none}
 .logo-contact-snow,.logo-boost-snow,.logo-excursion-stage,.logo-excursion{display:none}
}
