/* No travelling decoration or new layout on compact / touch screens. */
.nature-companions,.nature-butterfly,.nature-firefly{display:none}
@media(min-width:1024px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .nature-companions{display:block;position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:12;contain:layout paint}
 .nature-butterfly{display:block;position:fixed;left:0;top:0;width:var(--visitor-size,64px);height:calc(var(--visitor-size,64px) * .96);z-index:12;pointer-events:none;user-select:none;will-change:transform;contain:layout style}
 .nature-butterfly svg{display:block;width:100%;height:100%;overflow:visible}
 .butterfly-body{transform-box:view-box;transform-origin:50px 86px;transition:rotate .5s ease-out}
 .butterfly-wing{transform-box:view-box;animation:butterfly-beat .22s cubic-bezier(.45,0,.55,1) infinite alternate}
 .butterfly-left{transform-origin:48px 51px}.butterfly-right{transform-origin:52px 51px}
 .nature-butterfly[data-flight="rest"] .butterfly-wing{animation:butterfly-rest 5s ease-in-out infinite}
 .butterfly-antenna{transform-box:view-box;animation:butterfly-feeler 3.8s ease-in-out infinite alternate}
 .butterfly-antenna-left{transform-origin:48px 39px}.butterfly-antenna-right{transform-origin:52px 39px;animation-delay:-1.3s}
 .butterfly-glow{animation:butterfly-lantern 4.8s ease-in-out infinite}
 .nature-butterfly[data-flight="fly"] .butterfly-antenna{animation-duration:1.1s}
 .nature-butterfly[data-paused="true"] :is(.butterfly-wing,.butterfly-antenna,.butterfly-glow){animation-play-state:paused}
 .nature-firefly{display:block;position:fixed;left:0;top:0;width:var(--visitor-size,52px);height:var(--visitor-size,52px);z-index:12;pointer-events:none;user-select:none;contain:layout style;will-change:transform}
 .nature-firefly svg{display:block;width:100%;height:100%;overflow:visible}
 .firefly-body{transform-box:view-box;transform-origin:32px 32px}
 .firefly-wing{transform-box:view-box;animation:firefly-wingbeat .09s ease-in-out infinite alternate;transform-origin:32px 30px}
 .firefly-lantern{animation:firefly-glimmer var(--firefly-period,5s) ease-in-out infinite;animation-delay:var(--firefly-delay,0s)}
 .nature-firefly[data-flight="rest"] .firefly-wing{animation:none;transform:scaleX(.25)}
 .nature-firefly[data-flight="rest"] .firefly-lantern circle{opacity:.6}
 .nature-firefly[data-paused="true"] :is(.firefly-wing,.firefly-lantern){animation-play-state:paused}
 .nature-butterfly[data-paused="true"] .butterfly-body{transition:none}
}
@keyframes butterfly-beat{from{transform:scaleX(.25)}to{transform:scaleX(1)}}
@keyframes butterfly-rest{0%,100%{transform:scaleX(.72)}35%{transform:scaleX(1)}52%{transform:scaleX(.88)}72%{transform:scaleX(.75)}}
@keyframes butterfly-feeler{from{transform:rotate(-2deg)}to{transform:rotate(2deg)}}
@keyframes butterfly-lantern{0%,100%{opacity:.62}45%{opacity:1}75%{opacity:.8}}

@keyframes firefly-wingbeat{from{transform:scaleX(.6)}to{transform:scaleX(1)}}
@keyframes firefly-glimmer{0%,100%{opacity:.35}28%{opacity:.58}52%{opacity:1}70%{opacity:.76}}
@media print{.nature-companions,.nature-butterfly,.nature-firefly{display:none!important}}
