/* ───── Floating animations ───── */
@keyframes float-vertical {
	0%, 100% { translate: 0 0; }
	50% { translate: 0 calc(-1 * var(--float-amp, 10px)); }
}

@keyframes float-horizontal {
	0%, 100% { translate: 0 0; }
	50% { translate: var(--float-amp, 10px) 0; }
}

@keyframes float-both-0 {
	0%   { translate: 0 0; }
	15%  { translate: calc(0.8 * var(--float-amp, 10px)) calc(-0.6 * var(--float-amp, 10px)); }
	35%  { translate: calc(-0.4 * var(--float-amp, 10px)) calc(-1 * var(--float-amp, 10px)); }
	55%  { translate: calc(-0.9 * var(--float-amp, 10px)) calc(0.3 * var(--float-amp, 10px)); }
	75%  { translate: calc(0.3 * var(--float-amp, 10px)) calc(0.7 * var(--float-amp, 10px)); }
	100% { translate: 0 0; }
}

@keyframes float-both-1 {
	0%   { translate: 0 0; }
	20%  { translate: calc(-0.7 * var(--float-amp, 10px)) calc(-0.8 * var(--float-amp, 10px)); }
	40%  { translate: calc(0.5 * var(--float-amp, 10px)) calc(-0.3 * var(--float-amp, 10px)); }
	60%  { translate: calc(0.9 * var(--float-amp, 10px)) calc(0.6 * var(--float-amp, 10px)); }
	80%  { translate: calc(-0.4 * var(--float-amp, 10px)) calc(0.9 * var(--float-amp, 10px)); }
	100% { translate: 0 0; }
}

@keyframes float-both-2 {
	0%   { translate: 0 0; }
	12%  { translate: calc(0.6 * var(--float-amp, 10px)) calc(0.5 * var(--float-amp, 10px)); }
	30%  { translate: calc(1 * var(--float-amp, 10px)) calc(-0.4 * var(--float-amp, 10px)); }
	50%  { translate: calc(-0.3 * var(--float-amp, 10px)) calc(-0.9 * var(--float-amp, 10px)); }
	70%  { translate: calc(-0.8 * var(--float-amp, 10px)) calc(0.2 * var(--float-amp, 10px)); }
	88%  { translate: calc(0.2 * var(--float-amp, 10px)) calc(0.8 * var(--float-amp, 10px)); }
	100% { translate: 0 0; }
}

@keyframes float-both-3 {
	0%   { translate: 0 0; }
	17%  { translate: calc(-0.9 * var(--float-amp, 10px)) calc(0.4 * var(--float-amp, 10px)); }
	33%  { translate: calc(-0.5 * var(--float-amp, 10px)) calc(-0.7 * var(--float-amp, 10px)); }
	50%  { translate: calc(0.7 * var(--float-amp, 10px)) calc(-0.9 * var(--float-amp, 10px)); }
	67%  { translate: calc(0.9 * var(--float-amp, 10px)) calc(0.5 * var(--float-amp, 10px)); }
	83%  { translate: calc(-0.2 * var(--float-amp, 10px)) calc(0.8 * var(--float-amp, 10px)); }
	100% { translate: 0 0; }
}
