/* ===== Floating Ingredients — hero section only, zero bleed ===== */

#floating-ingredients {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 2;
    overflow: hidden;
}

.float-ingredient {
    position: absolute;
    line-height: 0;
}

.float-ingredient svg {
    width: 100%;
    height: 100%;
    display: block;
}

/* Pause all when hero is out of viewport */
#floating-ingredients.paused .float-ingredient {
    animation-play-state: paused;
}

/* Six unique drift paths so no two elements move in sync */
@keyframes floatIngA {
    0%   { transform: translate(0px,   0px)   rotate(0deg);   }
    100% { transform: translate(16px, -20px)  rotate(360deg); }
}
@keyframes floatIngB {
    0%   { transform: translate(0px,  0px)  rotate(0deg);    }
    100% { transform: translate(-18px, 14px) rotate(-360deg); }
}
@keyframes floatIngC {
    0%   { transform: translate(0px, 0px)  rotate(0deg);  }
    100% { transform: translate(12px, 22px) rotate(200deg); }
}
@keyframes floatIngD {
    0%   { transform: translate(0px,   0px)   rotate(0deg);   }
    100% { transform: translate(-14px, -18px) rotate(-200deg); }
}
@keyframes floatIngE {
    0%   { transform: translate(0px, 0px)  rotate(0deg);  }
    100% { transform: translate(18px, 10px) rotate(280deg); }
}
@keyframes floatIngF {
    0%   { transform: translate(0px,  0px)  rotate(0deg);   }
    100% { transform: translate(-10px, 20px) rotate(-280deg); }
}
