/* fredoka-regular - latin */
@font-face {
    font-display: swap;
    font-family: 'Fredoka';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/fredoka-v17-latin-regular.woff2') format('woff2');
}

/* quicksand-regular - latin */
@font-face {
    font-display: swap;
    font-family: 'Quicksand';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/quicksand-v37-latin-regular.woff2') format('woff2');
}

/* special-elite-regular - latin */
@font-face {
    font-display: swap;
    font-family: 'Special Elite';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/special-elite-v20-latin-regular.woff2') format('woff2'); 
}

/* Retro CRT Overlay */
.crt-filter {
    filter: contrast(1.08) brightness(1.02) saturate(1.15);
}

    .crt-filter::before {
        content: " ";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.04), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.04));
        z-index: 9999;
        background-size: 100% 3px, 6px 100%;
        pointer-events: none;
    }

body {
    background-color: #FFF0F3;
}

.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #FFE1E6;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #FFA1B0;
    border-radius: 3px;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

.floating-squirrel {
    animation: float 4s ease-in-out infinite;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fadeIn {
    animation: fadeIn 0.3s ease-in-out forwards;
}