* {
	margin: 0;
	padding: 0;
}
body {
	margin: 0;
	height: 100vh;
	overflow: hidden;
	position: relative;
	background: black;
	font-family: Finger Paint;
	padding: 0;
	height: 100vh;
	width: 100vw;
	color: #fff;
}

span {
	height: 50px;
	width: 50px;
	border-radius: 50%;
	position: absolute;
	pointer-events: none;
	transform: translate(-50%, -50%);
	box-shadow: 0 -3px 5px #fff inset, 0 -10px 25px #ddf1e4 inset,
		0 2px 2px #fff inset, 2px 0 5px #fff inset, -2px 0 5px #fff inset,
		0 5px 25px #fff inset;
	animation: animate 5s linear forwards;
}

@keyframes animate {
	0% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 1;
		filter: hue-rotate(0deg);
	}
	100% {
		transform: translate(-50%, -1000%) scale(0);
		opacity: 0;
		filter: hue-rotate(720deg);
	}
}

#cursor {
	position: absolute;
	pointer-events: none;
}
#cursor::after {
	content: attr(data-after);
	font-size: 50px;
}

.bubble {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 215px;
	height: 215px;
	border-radius: 100%;
	box-shadow: 0 -3px 5px #fff inset, 0 -10px 25px #ddf1e4 inset,
		0 2px 2px #fff inset, 2px 0 5px #fff inset, -2px 0 5px #fff inset,
		0 5px 25px #fff inset;
	position: relative;
}
.bubble div {
	text-align: center;
}
.bubble::after {
	content: "";
	position: absolute;
	top: -25px;
	right: -10px;
	width: 70px;
	height: 70px;
	border-radius: 100%;
	box-shadow: 0 -3px 5px #fff inset, 0 -10px 25px #ddf1e4 inset,
		0 2px 2px #fff inset, 2px 0 5px #fff inset, -2px 0 5px #fff inset,
		0 5px 25px #fff inset;
	opacity: 0.5;
	z-index: -1;
	animation: float 6s ease-in-out infinite alternate;
}
.bubble::before {
	content: "";
	position: absolute;
	top: -18px;
	left: 40px;
	width: 20px;
	height: 20px;
	border-radius: 100%;
	box-shadow: 0 -3px 5px #fff inset, 0 -10px 25px #ddf1e4 inset,
		0 2px 2px #fff inset, 2px 0 5px #fff inset, -2px 0 5px #fff inset,
		0 5px 25px #fff inset;
	opacity: 0.4;
	z-index: -2;
	animation: float 3s ease-in-out infinite alternate;
}

a{
    font-family: sans-serif;
    color: white;
    font-size: 6rem;
    position: fixed;
    bottom: 0;
    left: 0;
}

@keyframes float {
	0% {
		transform: translatey(0px);
		box-shadow: 0 -3px 5px #fff inset, 0 -10px 25px #ddf1e4 inset,
			0 2px 2px #fff inset, 2px 0 5px #fff inset, -2px 0 5px #fff inset,
			0 5px 25px #fff inset;
	}
	50% {
		transform: translatey(-10px);
		box-shadow: 0 -3px 5px #fff inset, 0 -10px 25px #ddf1e4 inset,
			0 2px 2px #fff inset, 2px 0 5px #fff inset, -2px 0 5px #fff inset,
			0 5px 25px #fff inset;
	}
	100% {
		transform: translatey(0px);
		box-shadow: 0 -3px 5px #333 inset, 0 -10px 25px #ddf1e4 inset,
			0 2px 2px #333 inset, 2px 0 5px #333 inset, -2px 0 5px #fff inset,
			0 5px 25px #fff inset;
	}
}


.box {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 1; /* Set initial opacity to fully visible */
	background: #000000;
	z-index: 10; /* Higher value to bring it in front */
}
