103 lines
2.8 KiB
CSS
103 lines
2.8 KiB
CSS
.floating-gradient-background-container {
|
|
--circle-size: 80%;
|
|
--circle-size-small: 60%;
|
|
--blending: hard-light;
|
|
}
|
|
|
|
.floating-gradient-background-circle-one {
|
|
background: radial-gradient(circle at center, var(--color-background-accent) 0, rgba(255, 255, 255, 0) 50%) no-repeat;
|
|
mix-blend-mode: var(--blending);
|
|
width: var(--circle-size);
|
|
height: var(--circle-size);
|
|
top: calc(50% - var(--circle-size-small) / 2);
|
|
left: calc(50% - var(--circle-size-small) / 2);
|
|
transform-origin: center center;
|
|
animation: moveVertical 20s ease infinite;
|
|
}
|
|
|
|
.floating-gradient-background-circle-two {
|
|
background: radial-gradient(circle at center, var(--color-accent) 0, rgba(255, 255, 255, 0) 50%) no-repeat;
|
|
mix-blend-mode: var(--blending);
|
|
width: var(--circle-size);
|
|
height: var(--circle-size);
|
|
top: calc(50% - var(--circle-size-small) / 2);
|
|
left: calc(50% - var(--circle-size-small) / 2);
|
|
transform-origin: calc(50% - 400px);
|
|
animation: moveInCircle 20s reverse infinite;
|
|
}
|
|
|
|
.floating-gradient-background-circle-three {
|
|
background: radial-gradient(circle at center, var(--color-primary-cta) 0, rgba(255, 255, 255, 0) 50%) no-repeat;
|
|
mix-blend-mode: var(--blending);
|
|
width: var(--circle-size-small);
|
|
height: var(--circle-size-small);
|
|
top: calc(50% - var(--circle-size) / 2 + 200px);
|
|
left: calc(50% - var(--circle-size) / 2 - 500px);
|
|
transform-origin: calc(50% + 400px);
|
|
animation: moveInCircle 30s linear infinite;
|
|
}
|
|
|
|
.floating-gradient-background-circle-four {
|
|
background: radial-gradient(circle at center, var(--color-background-accent) 0, rgba(255, 255, 255, 0) 50%) no-repeat;
|
|
mix-blend-mode: var(--blending);
|
|
width: var(--circle-size-small);
|
|
height: var(--circle-size-small);
|
|
top: calc(50% - var(--circle-size) / 2);
|
|
left: calc(50% - var(--circle-size) / 2);
|
|
transform-origin: calc(50% - 200px);
|
|
animation: moveHorizontal 30s ease infinite;
|
|
}
|
|
|
|
.floating-gradient-background-circle-five {
|
|
background: radial-gradient(circle at center, var(--color-primary-cta) 0, rgba(255, 255, 255, 0) 50%) no-repeat;
|
|
mix-blend-mode: var(--blending);
|
|
width: calc(var(--circle-size-small) * 2);
|
|
height: calc(var(--circle-size-small) * 2);
|
|
top: calc(50% - var(--circle-size));
|
|
left: calc(50% - var(--circle-size));
|
|
transform-origin: calc(50% - 800px) calc(50% + 200px);
|
|
animation: moveInCircle 20s ease infinite;
|
|
}
|
|
|
|
@keyframes moveInCircle {
|
|
0% {
|
|
transform: rotate(0deg);
|
|
}
|
|
|
|
50% {
|
|
transform: rotate(180deg);
|
|
}
|
|
|
|
100% {
|
|
transform: rotate(360deg);
|
|
}
|
|
}
|
|
|
|
@keyframes moveVertical {
|
|
0% {
|
|
transform: translateY(-50%);
|
|
}
|
|
|
|
50% {
|
|
transform: translateY(50%);
|
|
}
|
|
|
|
100% {
|
|
transform: translateY(-50%);
|
|
}
|
|
}
|
|
|
|
@keyframes moveHorizontal {
|
|
0% {
|
|
transform: translateX(-50%) translateY(-10%);
|
|
}
|
|
|
|
50% {
|
|
transform: translateX(50%) translateY(10%);
|
|
}
|
|
|
|
100% {
|
|
transform: translateX(-50%) translateY(-10%);
|
|
}
|
|
}
|