/* Flight v3: independent wing hinges + continuous drift, not a whole-image bob. */
.bee-flight{width:clamp(330px,32vw,500px);aspect-ratio:1374/1145;perspective:1100px;filter:drop-shadow(0 18px 15px #33210828);transform-origin:50% 50%;contain:layout style;isolation:isolate}
.bee-hover,.bee-rig{position:relative;width:100%;height:100%;transform-style:preserve-3d;will-change:transform}
.bee-hover{animation:bee-roam 12s cubic-bezier(.45,0,.55,1) infinite;animation-play-state:paused}
.bee-rig{transform:rotateY(var(--flight-yaw,0deg)) rotateZ(var(--flight-bank,0deg));perspective:1000px}
.bee-body{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:5;backface-visibility:visible;transform:translateZ(2px)}
.bee-wing{position:absolute;display:block;will-change:transform;backface-visibility:visible;transform-origin:3% 95%;transform-style:preserve-3d;animation-play-state:paused!important;pointer-events:none;filter:blur(.25px)}
.bee-wing img{display:block;width:100%;height:100%;max-width:none;object-fit:fill}
/* Sprite base (3%,95%) hinges on the thorax at (47.5%,43%). */
.bee-wing-near{width:70%;height:56%;left:45.4%;top:-10.2%;opacity:.87;z-index:4;animation:bee-near-beat .19s ease-in-out infinite}
.bee-wing-far{width:63%;height:50.4%;left:45.61%;top:-4.88%;opacity:.66;z-index:1;animation:bee-far-beat .19s ease-in-out infinite;animation-delay:-.035s}
.bee-wing-near-hind{width:50%;height:40%;left:46%;top:5%;opacity:.46;z-index:3;animation:bee-near-hind-beat .19s ease-in-out infinite;animation-delay:-.006s}
.bee-wing-far-hind{width:43%;height:34.4%;left:46.21%;top:10.32%;opacity:.44;z-index:2;animation:bee-far-hind-beat .19s ease-in-out infinite;animation-delay:-.041s}
.bee-flight.flying .bee-hover,.bee-flight.flying .bee-wing{animation-play-state:running!important}
@keyframes bee-near-beat{0%,100%{transform:rotate(10deg) rotate3d(.68,-.78,0,-32deg) scaleY(1)}50%{transform:rotate(-12deg) rotate3d(.68,-.78,0,72deg) scaleY(.67)}}
@keyframes bee-far-beat{0%,100%{transform:rotate(-62deg) rotate3d(.8,.6,0,37deg) scaleY(.96)}50%{transform:rotate(-30deg) rotate3d(.8,.6,0,-70deg) scaleY(.68)}}
@keyframes bee-near-hind-beat{0%,100%{transform:rotate(27deg) rotate3d(.68,-.78,0,-30deg)}50%{transform:rotate(8deg) rotate3d(.68,-.78,0,72deg) scaleY(.66)}}
@keyframes bee-far-hind-beat{0%,100%{transform:rotate(-82deg) rotate3d(.8,.6,0,36deg)}50%{transform:rotate(-48deg) rotate3d(.8,.6,0,-70deg) scaleY(.68)}}
@keyframes bee-roam{0%,100%{transform:translate3d(-14px,8px,0) rotateZ(-4deg) rotateY(-9deg) rotateX(3deg)}22%{transform:translate3d(23px,-17px,7px) rotateZ(3deg) rotateY(8deg) rotateX(-3deg)}48%{transform:translate3d(7px,-30px,0) rotateZ(7deg) rotateY(13deg) rotateX(4deg)}74%{transform:translate3d(-25px,-6px,-5px) rotateZ(-2deg) rotateY(-7deg) rotateX(-2deg)}}
@media(max-width:700px){.bee-flight{width:245px;perspective:750px}.bee-hover{animation-name:bee-roam-mobile}}
@media(max-width:370px){.bee-flight{width:225px}}
@keyframes bee-roam-mobile{0%,100%{transform:translate3d(-7px,5px,0) rotateZ(-4deg) rotateY(-8deg)}25%{transform:translate3d(12px,-10px,0) rotateZ(3deg) rotateY(8deg)}50%{transform:translate3d(4px,-19px,0) rotateZ(6deg) rotateY(12deg)}75%{transform:translate3d(-13px,-3px,0) rotateZ(-2deg) rotateY(-6deg)}}
@media(prefers-reduced-motion:reduce){.bee-flight{display:none}.bee-hover,.bee-wing{animation:none!important}}
/* Flight v4: six live legs and pointer/touch destinations. */
.bee-stage{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:9;contain:paint}
.bee-stage .bee-flight{position:absolute}
.bee-facing{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateY(var(--flight-facing,0deg));transition:transform 1.1s cubic-bezier(.25,.65,.25,1);will-change:transform}
.bee-aim{position:absolute;left:50%;top:56%;width:1px;height:1px;opacity:0;pointer-events:none}
.bee-leg{position:absolute;display:block;transform-origin:12% 8%;will-change:transform;backface-visibility:visible;animation:bee-leg-flex 2.3s ease-in-out infinite;animation-play-state:paused!important;pointer-events:none}
.bee-leg img{display:block;width:100%;height:100%;max-width:none;object-fit:fill;mask-image:linear-gradient(to bottom,transparent 0%,#000 8%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 8%)}
.bee-leg-front-near{width:17%;height:30.6%;left:34.96%;top:50.55%;--leg-angle:33deg;--leg-mirror:1;--leg-depth:4px;animation-delay:-.1s;z-index:7}
.bee-leg-middle-near{width:18%;height:32.4%;left:41.84%;top:54.41%;--leg-angle:9deg;--leg-mirror:1;--leg-depth:4px;animation-delay:-.65s;z-index:7}
.bee-leg-rear-near{width:20%;height:36%;left:51.6%;top:54.12%;--leg-angle:-24deg;--leg-mirror:1;--leg-depth:4px;animation-delay:-1.05s;z-index:7}
.bee-leg-front-far{width:13%;height:23.4%;left:34.94%;top:48.13%;--leg-angle:16deg;--leg-mirror:-1;--leg-depth:-3px;animation-delay:-.85s;z-index:0;opacity:.75;filter:brightness(.85)}
.bee-leg-middle-far{width:14%;height:25.2%;left:39.82%;top:51.98%;--leg-angle:-20deg;--leg-mirror:-1;--leg-depth:-3px;animation-delay:-.3s;z-index:0;opacity:.75;filter:brightness(.85)}
.bee-leg-rear-far{width:16%;height:28.8%;left:48.08%;top:52.7%;--leg-angle:-45deg;--leg-mirror:-1;--leg-depth:-3px;animation-delay:-1.4s;z-index:0;opacity:.75;filter:brightness(.85)}
.bee-flight.flying .bee-leg{animation-play-state:running!important}
.bee-flight.guided .bee-hover{animation-name:bee-guided-hover;animation-duration:4.8s}
.flight-target{position:absolute;width:30px;height:30px;border:1px solid #967128b3;border-radius:50%;opacity:0;box-shadow:0 0 0 5px #fff9dc33;pointer-events:none;z-index:12;transform:translate(-50%,-50%)}
@keyframes bee-leg-flex{0%,100%{transform:translateZ(var(--leg-depth)) rotate(calc(var(--leg-angle) - 9deg)) scaleX(var(--leg-mirror)) scaleY(.94)}45%{transform:translateZ(var(--leg-depth)) rotate(calc(var(--leg-angle) + 13deg)) scaleX(var(--leg-mirror)) scaleY(1.03)}72%{transform:translateZ(var(--leg-depth)) rotate(calc(var(--leg-angle) + 3deg)) scaleX(var(--leg-mirror)) scaleY(.97)}}
@keyframes bee-guided-hover{0%,100%{transform:translate3d(-3px,2px,0) rotateZ(-1deg) rotateY(-3deg)}35%{transform:translate3d(4px,-5px,0) rotateZ(1deg) rotateY(3deg)}70%{transform:translate3d(-2px,-2px,0) rotateZ(-1deg) rotateY(-2deg)}}
@media(prefers-reduced-motion:reduce){.bee-leg,.bee-hover,.bee-wing{animation:none!important}.bee-facing{transition:none!important}.flight-target{display:none}}
