body {
	background-color: #f0f4f0;
	color: #2d3e34;
	font-family: 'PT Serif', serif;
}

.visibility-logic-none {
	display: none !important;
	opacity: 0;
	transform: translateY(30px);
}
.visibility-logic-fade {
	display: block !important;
	opacity: 1;
	transform: translateY(0);
	animation: kinetic-rise-flow 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.visibility-logic-show {
	display: block !important;
	opacity: 1;
	transform: translateY(0);
}

@keyframes kinetic-rise-flow {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.glide-hover-drift {
	animation: drift-cycle-steady 6s ease-in-out infinite;
}

@keyframes drift-cycle-steady {
	0% {
		transform: translateY(0px);
	}
	50% {
		transform: translateY(-10px);
	}
	100% {
		transform: translateY(0px);
	}
}

.glow-surge-burst {
	animation: radar-wave-ambient 2s infinite;
}

@keyframes radar-wave-ambient {
	0% {
		box-shadow: 0 0 0 0 rgba(47, 133, 90, 0.5);
	}
	70% {
		box-shadow: 0 0 0 15px rgba(47, 133, 90, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(47, 133, 90, 0);
	}
}
