/* A quiet garden breeze: fixed edge lanes leave content and portrait unobstructed. */
.garden-breeze{--edge-lane:clamp(28px,calc((100vw - 1160px)/2 - 18px),110px);position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:20;contain:strict}
.garden-piece{position:absolute;top:-80px;width:var(--size);height:auto;object-fit:contain;opacity:0;pointer-events:none}
.garden-breeze:not([data-garden-state="running"]){display:none}
.garden-breeze[data-garden-state="running"] .garden-piece{animation:garden-fall var(--duration) var(--delay) linear infinite}
@keyframes garden-fall{0%{transform:translate3d(0,-35px,0) rotate(-25deg);opacity:0}8%{opacity:.65}35%{transform:translate3d(var(--drift),36vh,0) rotate(30deg)}65%{transform:translate3d(0,69vh,0) rotate(70deg);opacity:.65}94%{opacity:.6}100%{transform:translate3d(var(--drift),calc(100vh + 160px),0) rotate(var(--turn));opacity:0}}
.garden-control{position:fixed;bottom:24px;left:18px;z-index:32;background:#FAF7F2;color:#184E50;border:1px solid #946449;border-radius:24px;padding:10px 14px;font:12px/1.4 Inter,sans-serif;min-height:44px;box-shadow:none}
.garden-control:hover{background:#EFE3D6}.garden-control:focus-visible{outline:3px solid #184E50;outline-offset:4px}.garden-control:disabled{cursor:default}
@media(max-width:767px){.garden-breeze{--edge-lane:22px}.garden-desktop{display:none}.garden-piece{width:calc(var(--size)*.7)}.garden-control{bottom:88px;left:10px;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.garden-breeze{display:none}.garden-piece{animation:none;will-change:auto}}

/* Keep the control in the breadcrumb row, away from reading and contact areas. */
.breadcrumbs .garden-control{position:static;margin-inline-start:auto;flex-shrink:0;z-index:auto}
@media(max-width:767px){.breadcrumbs:has(.garden-control){flex-wrap:wrap;gap:8px 12px}.breadcrumbs .garden-control{padding:8px 10px;font-size:11px}.garden-breeze{mask-image:linear-gradient(to right,#000 0 16px,transparent 20px calc(100% - 20px),#000 calc(100% - 16px) 100%)}}

/* Global spring edition: sparse drift over content, including on phones. */
.garden-breeze{mask-image:none}
.garden-home-tools{display:flex;justify-content:flex-end;min-height:52px;padding-block:4px}
.garden-home-tools .garden-control{position:static;margin:0;font-size:11px;z-index:auto}
@media(max-width:767px){.garden-breeze{mask-image:none}.garden-piece{width:var(--size)}.garden-home-tools{min-height:48px}}
/* Compact visual control, retaining a 44px touch area. */
.garden-control,.breadcrumbs .garden-control,.garden-home-tools .garden-control{min-height:44px;padding:4px 10px;border:0;border-radius:4px;background:transparent;font-size:11px;font-weight:500;color:#184E50;text-decoration:underline;text-decoration-color:#bba38e;text-underline-offset:4px}
.garden-control:hover{background:#EFE3D6;text-decoration-color:#184E50}.garden-control:focus-visible{outline:2px solid #184E50;outline-offset:2px}
