/* One alpha-cutout bird. Wing/tail motion is genuine footage, not a static translated sprite. */
.roaming-sky { position:fixed; inset:0; z-index:24; overflow:hidden; pointer-events:none; contain:layout paint; }
.roaming-sky * { pointer-events:none!important; }
.roaming-bird { position:absolute; left:0; top:2px; width:var(--bird-size); height:var(--bird-size); visibility:hidden; }
.roaming-bird[data-ready=true] { visibility:visible; animation:rio-east var(--fly-duration) linear 1 both; will-change:transform; }
.roaming-bird>video,.roaming-bird>img { display:block; width:100%; height:100%; object-fit:contain; background:transparent; border:0; }
.roaming-bird[data-direction=left]>video,.roaming-bird[data-direction=left]>img { transform:scaleX(-1); }
.roaming-bird[data-ready=true][data-direction=left] { animation-name:rio-west; }
.roaming-bird[data-lane="1"] { top:28px; }
.roaming-bird[data-lane="2"] { top:51px; }
@keyframes rio-east {
 0% { transform:translateX(calc(-1 * var(--bird-size))); }
 30% { transform:translate(28vw,14px) rotate(3deg); }
 65% { transform:translate(64vw,-4px) rotate(-2deg); }
 100% { transform:translateX(calc(100vw + var(--bird-size))); }
}
@keyframes rio-west {
 0% { transform:translateX(calc(100vw + var(--bird-size))); }
 35% { transform:translate(63vw,-5px) rotate(2deg); }
 70% { transform:translate(25vw,12px) rotate(-3deg); }
 100% { transform:translateX(calc(-1 * var(--bird-size))); }
}
body[data-motion=off] .roaming-sky,body[data-motion=calm] .roaming-sky,body[data-motion=off] .rio-perch,body[data-motion=calm] .rio-perch { display:none; }
@media(prefers-reduced-motion:reduce) { .roaming-sky,.rio-perch { display:none; } }
@media(max-width:760px) { .roaming-bird[data-lane="2"] { top:37px; } }
/* One global resting Rio replaces the flyby node inside the existing right bamboo frame. */
.rio-perch { position:absolute; left:4px; top:var(--perch-top); width:var(--perch-width); aspect-ratio:1; z-index:3; pointer-events:none; visibility:hidden; }
.rio-perch[data-ready=true] { visibility:visible; }
/* Keep the perched bird above the existing roof artwork, within the frame. */
.tiki-ambience__edge--right:has(.rio-perch) { z-index:2; }
.rio-perch>video,.rio-perch>img { position:static; inset:auto; display:block; width:100%; height:100%; object-fit:contain; object-position:center; border:0; background:transparent; }
@media(max-width:1099px) { .rio-perch { display:none; } }
