.header .bee-trigger{order:2;flex-shrink:0;width:44px;height:44px;border:1px solid #d5b34d;border-radius:50%;background:#fff2ba;font-size:24px;cursor:pointer;display:grid;place-items:center}.bee-trigger:focus-visible,.bee-dismiss:focus-visible{outline:3px solid #2373d0;outline-offset:4px}.bee-overlay{position:fixed;inset:0;z-index:2100;pointer-events:none;overflow:hidden}.bee-flight{position:absolute;top:24%;left:50%;width:min(540px,94vw);display:flex;align-items:center;filter:drop-shadow(0 8px 12px #0004);animation:bee-arrival 9.8s ease-in-out both}.bee-message{flex:1;padding:20px 18px;border:2px solid #a37815;border-radius:8px 3px 3px 8px;background:linear-gradient(110deg,#fff8d5,#ffda62);color:#25200e;font-size:clamp(16px,2.5vw,24px);font-weight:700;line-height:1.35;text-align:center}.bee-rope{width:22px;border-top:2px dashed #6c5731;flex-shrink:0}.flying-bee{width:110px;flex-shrink:0;overflow:visible;animation:bee-bob .7s ease-in-out infinite alternate}.bee-wing{transform-origin:75px 55px;animation:bee-flutter .12s ease-in-out infinite alternate}.bee-dismiss{position:absolute;right:18px;top:18px;width:44px;height:44px;border:1px solid #c5ac58;border-radius:50%;background:#fff2ba;color:#25200e;font-size:26px;cursor:pointer;pointer-events:auto}
@keyframes bee-arrival{0%{transform:translateX(calc(-50vw - 110%)) rotate(-4deg)}24%,75%{transform:translateX(-50%) rotate(0)}100%{transform:translateX(calc(50vw + 10%)) rotate(-3deg)}}
@keyframes bee-bob{from{transform:translateY(-4px) rotate(-3deg)}to{transform:translateY(4px) rotate(3deg)}}
@keyframes bee-flutter{from{transform:scaleY(.55) rotate(-8deg)}to{transform:scaleY(1) rotate(8deg)}}
@media(max-width:700px){.header .bee-trigger{order:3;width:40px;height:40px}.header nav{order:4}.bee-message{padding:15px 10px}.flying-bee{width:78px}.bee-rope{width:12px}}
@media(prefers-reduced-motion:reduce){.bee-flight{animation:none;transform:translateX(-50%)}.flying-bee,.bee-wing{animation:none}}
@media(max-width:700px){.header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px}.header .theme-toggle{grid-column:1;grid-row:1}.header .brand{grid-column:2 / 4;grid-row:1;justify-self:end}.header .menu-toggle{grid-column:2;grid-row:2;justify-self:end}.header .bee-trigger{grid-column:3;grid-row:2}.header nav{grid-column:1 / -1;grid-row:3;width:100%}}
/* Monochrome bee and banner, with a gentle wave through the flight. */
.header .bee-trigger{background:#fff;color:#111;border-color:#555;font-size:0}
.header .bee-trigger span{font-size:24px;filter:grayscale(1) contrast(1.5)}
.bee-message{background:#fff;color:#111;border-color:#111;box-shadow:inset 0 0 0 3px #eee}
.bee-rope{border-color:#111}
.flying-bee{filter:grayscale(1) contrast(8)}
.bee-dismiss{background:#fff;color:#111;border-color:#111}
@keyframes bee-arrival{
 0%{transform:translate(calc(-50vw - 110%),20px) rotate(-4deg)}
 24%{transform:translate(-50%,-20px) rotate(-2deg)}
 36%{transform:translate(-50%,14px) rotate(2deg)}
 48%{transform:translate(-50%,-20px) rotate(-2deg)}
 60%{transform:translate(-50%,14px) rotate(2deg)}
 75%{transform:translate(-50%,-20px) rotate(-2deg)}
 100%{transform:translate(calc(50vw + 10%),16px) rotate(3deg)}
}
/* Free flight: preserve the minimalist silhouette and reveal its dotted route. */
.bee-flight{left:0;top:0;width:110px;display:block;animation:none;filter:drop-shadow(0 0 2px white) drop-shadow(0 4px 6px #0003);will-change:transform}
.flying-bee{width:100%;filter:none;animation:none;display:block}
.header .bee-trigger span{filter:none}
.bee-trail{position:absolute;inset:0;overflow:visible;transition:opacity 1s}
.bee-trail-dots{fill:none;stroke:#292929;stroke-width:3;stroke-dasharray:1 14;stroke-linecap:round;filter:drop-shadow(0 0 1px white)}
html[data-theme=night] .bee-trail-dots{stroke:#ffda52;filter:none}
.bee-finished .bee-trail{opacity:0}
@media(max-width:700px){.bee-flight{width:80px}}
@media(prefers-reduced-motion:reduce){.bee-trail{display:none}}

.header .bee-trigger{width:auto;min-height:44px;height:auto;padding:10px 14px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap;background:#fff2ba;color:#181307;border-color:#c7a742}
@media(max-width:700px){.header .bee-trigger{width:auto;min-height:40px;font-size:11px;padding:9px 12px}}
