@keyframes spinny {
    0% {
        transform-origin: 50%;
        transform: translate(-50%, -50%) rotateZ(0deg);
    }
    100% {
        transform: translate(-50%, -50%) rotateZ(360deg);
    }
}

.spinny-loader {
    position: absolute;
    width: 140px;
    height: 140px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.spinny-loader > div {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60px;
    height: 60px;
    transform: translate(-50%, -50%);
    border-radius: 200px;
    background-color: var(--color-secondary);
}

.spinny-loader::before,
.spinny-loader::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 200px;
    border-style: solid;
    border-width: 15px;
    border-color: var(--color-secondary) transparent var(--color-secondary) transparent;
    animation-name: spinny;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}

.spinny-loader::after {
    width: 140px;
    height: 140px;
    animation-duration: 2s;
    animation-direction: alternate-reverse;
}

.spinny-loader::before {
    width: 100px;
    height: 100px;
    animation-duration: 1.5s;
}

.featured-events-section {
    position: relative;
    min-height: 300px; /* Ensure space for spinner */
    background-color: transparent;
}

.event-image-container {
    position: relative;
    min-height: 200px; /* Ensure space for spinner */
}

.spinny-loader.hide {
    display: none;
}
