@tailwind components;
@tailwind utilities;

@layer components {
    .all-\[unset\] {
        all: unset;
    }
}
@font-face {
    font-family: "Fivo Sans";
    src: url("../fonts/fivo/fivo-sans.thin.otf") format("opentype");
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: "Quicksand";
    src: url("../fonts/quicksand/Quicksand-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "Quicksand";
    src: url("../fonts/quicksand/Quicksand-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Quicksand";
    src: url("../fonts/quicksand/Quicksand-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Quicksand";
    src: url("../fonts/quicksand/Quicksand-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: "Quicksand";
    src: url("../fonts/quicksand/Quicksand-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "Fivo Sans";
    src: url("../fonts/fivo/fivo-sans.heavy.otf") format("opentype");
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: "Fivo Sans";
    src: url("../fonts/fivo/fivo-sans.black.otf") format("opentype");
    font-weight: 900;
    font-style: normal;
}

@layer base {
    body {
        @apply bg-background text-foreground;
        font-family: "Fivo Sans", Helvetica, sans-serif;
    }
}

:root {
    --body-1-bold-font-family: "Quicksand", Helvetica;
    --body-1-bold-font-size: 17px;
    --body-1-bold-font-style: normal;
    --body-1-bold-font-weight: 700;
    --body-1-bold-letter-spacing: 0px;
    --body-1-bold-line-height: 140%;
    --body-1-font-family: "Quicksand", Helvetica;
    --body-1-font-size: 17px;
    --body-1-font-style: normal;
    --body-1-font-weight: 400;
    --body-1-letter-spacing: 0px;
    --body-1-line-height: 140%;
    --body-2-bold-font-family: "Quicksand", Helvetica;
    --body-2-bold-font-size: 15px;
    --body-2-bold-font-style: normal;
    --body-2-bold-font-weight: 700;
    --body-2-bold-letter-spacing: 0px;
    --body-2-bold-line-height: 130%;
    --body-2-font-family: "Quicksand", Helvetica;
    --body-2-font-size: 15px;
    --body-2-font-style: normal;
    --body-2-font-weight: 400;
    --body-2-letter-spacing: 0px;
    --body-2-line-height: 130%;
    --drop-shadow-400:
        0px 4px 4px -4px rgba(12, 12, 13, 0.05),
        0px 16px 32px -4px rgba(12, 12, 13, 0.1);
    --h1-bold-font-family: "Quicksand", Helvetica;
    --h1-bold-font-size: 54px;
    --h1-bold-font-style: normal;
    --h1-bold-font-weight: 700;
    --h1-bold-letter-spacing: 0px;
    --h1-bold-line-height: 120.00000762939453%;
    --h2-bold-font-family: "Quicksand", Helvetica;
    --h2-bold-font-size: 45px;
    --h2-bold-font-style: normal;
    --h2-bold-font-weight: 700;
    --h2-bold-letter-spacing: 0px;
    --h2-bold-line-height: 120.00000762939453%;
    --h4-bold-font-family: "Quicksand", Helvetica;
    --h4-bold-font-size: 31px;
    --h4-bold-font-style: normal;
    --h4-bold-font-weight: 700;
    --h4-bold-letter-spacing: 0px;
    --h4-bold-line-height: 120.00000762939453%;
    --h6-bold-font-family: "Quicksand", Helvetica;
    --h6-bold-font-size: 22px;
    --h6-bold-font-style: normal;
    --h6-bold-font-weight: 700;
    --h6-bold-letter-spacing: 0px;
    --h6-bold-line-height: 140%;
    --h6-font-family: "Quicksand", Helvetica;
    --h6-font-size: 22px;
    --h6-font-style: normal;
    --h6-font-weight: 400;
    --h6-letter-spacing: 0px;
    --h6-line-height: 140%;
    --h7-font-family: "Quicksand", Helvetica;
    --h7-font-size: 18px;
    --h7-font-style: normal;
    --h7-font-weight: 400;
    --h7-letter-spacing: 0px;
    --h7-line-height: 120.00000762939453%;
    --primary-color-1: rgba(0, 153, 255, 1);
    --primary-color-2: rgba(254, 241, 80, 1);
    --primary-color-3: rgba(0, 0, 0, 1);
    --primary-color-4: rgba(255, 255, 255, 1);
    --secondary-color-1: rgba(234, 234, 234, 1);
    --secondary-color-11: rgba(70, 183, 108, 1);
    --secondary-color-3: rgba(0, 99, 172, 1);
    --secondary-color-4: rgba(135, 211, 237, 1);
    --secondary-color-9: rgba(179, 173, 238, 1);
}

:root {
    --animate-spin: spin 1s linear infinite;
}

.animate-fade-in {
    animation: fade-in 1s var(--animation-delay, 0s) ease forwards;
}

.animate-fade-up {
    animation: fade-up 1s var(--animation-delay, 0s) ease forwards;
}

.animate-marquee {
    animation: marquee var(--duration) infinite linear;
}

.animate-marquee-vertical {
    animation: marquee-vertical var(--duration) linear infinite;
}

.animate-shimmer {
    animation: shimmer 8s infinite;
}

.animate-spin {
    animation: var(--animate-spin);
}

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

@keyframes image-glow {
    0% {
        opacity: 0;
        animation-timing-function: cubic-bezier(0.74, 0.25, 0.76, 1);
    }

    10% {
        opacity: 0.7;
        animation-timing-function: cubic-bezier(0.12, 0.01, 0.08, 0.99);
    }

    to {
        opacity: 0.4;
    }
}

@keyframes fade-in {
    0% {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes fade-up {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes shimmer {
    0%,
    90%,
    to {
        background-position: calc(-100% - var(--shimmer-width)) 0;
    }

    30%,
    60% {
        background-position: calc(100% + var(--shimmer-width)) 0;
    }
}

@keyframes marquee {
    0% {
        transform: translate(0);
    }

    to {
        transform: translateX(calc(-100% - var(--gap)));
    }
}

@keyframes marquee-vertical {
    0% {
        transform: translateY(0);
    }

    to {
        transform: translateY(calc(-100% - var(--gap)));
    }
}

@layer base {
    :root {
        --background: 0 0% 100%;
        --foreground: 222.2 47.4% 11.2%;

        --muted: 210 40% 96.1%;
        --muted-foreground: 215.4 16.3% 46.9%;

        --popover: 0 0% 100%;
        --popover-foreground: 222.2 47.4% 11.2%;

        --border: 214.3 31.8% 91.4%;
        --input: 214.3 31.8% 91.4%;

        --card: transparent;
        --card-foreground: 222.2 47.4% 11.2%;

        --primary: 222.2 47.4% 11.2%;
        --primary-foreground: 210 40% 98%;

        --secondary: 210 40% 96.1%;
        --secondary-foreground: 222.2 47.4% 11.2%;

        --accent: 210 40% 96.1%;
        --accent-foreground: 222.2 47.4% 11.2%;

        --destructive: 0 100% 50%;
        --destructive-foreground: 210 40% 98%;

        --ring: 215 20.2% 65.1%;

        --radius: 0.5rem;
    }

    .dark {
        --background: 224 71% 4%;
        --foreground: 213 31% 91%;

        --muted: 223 47% 11%;
        --muted-foreground: 215.4 16.3% 56.9%;

        --accent: 216 34% 17%;
        --accent-foreground: 210 40% 98%;

        --popover: 224 71% 4%;
        --popover-foreground: 215 20.2% 65.1%;

        --border: 216 34% 17%;
        --input: 216 34% 17%;

        --card: transparent;
        --card-foreground: 213 31% 91%;

        --primary: 210 40% 98%;
        --primary-foreground: 222.2 47.4% 1.2%;

        --secondary: 222.2 47.4% 11.2%;
        --secondary-foreground: 210 40% 98%;

        --destructive: 0 63% 31%;
        --destructive-foreground: 210 40% 98%;

        --ring: 216 34% 17%;

        --radius: 0.5rem;
    }
}

@layer base {
    * {
        @apply border-border;
    }

    body {
        @apply bg-background text-foreground;
        font-feature-settings:
            "rlig" 1,
            "calt" 1;
    }
}
