
.align-left {
	text-align: left;
}

.align-right {
	text-align: right;
}

.align-center {
	text-align: center;
}


.light-theme {
	color: black;
}

.dark-theme {
	color: white;
}

.pure-black {
	filter: brightness(0);
}

.pure-white {
	filter: brightness(0) invert(1);
}

img.hover-rotate {
	transition: transform 3s ease;
}

img:hover.hover-rotate {
	transform: rotate(90deg) scale(1.3);
}


.hover-spin {
  --hover-spin-speed: 10;
  animation: spin calc(60s / var(--hover-spin-speed)) linear infinite;
  animation-play-state: paused;
}

.hover-spin:hover {
  animation-play-state: running;
}

.natural-spin {
  --natural-spin-speed: 10;
  animation: spin calc(60s / var(--natural-spin-speed)) linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0turn);
  }
  to {
    transform: rotate(1turn);
  }
}