/* font */
@font-face {
    font-family: 'Vazirmatn';
    src: url('/static/font/Vazirmatn[wght].woff2') format('woff2 supports variations'),
    url('/static/font/Vazirmatn[wght].woff2') format('woff2-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn RD';
    src: url('/static/font/Vazirmatn-RD[wght].woff2') format('woff2 supports variations'),
    url('/static/font/Vazirmatn-RD[wght].woff2') format('woff2-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'YekanBakh';
    src: url('/static/font/YekanBakh_FaNum_Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'YekanBakh';
    src: url('/static/font/YekanBakh_FaNum_Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'YekanBakh';
    src: url('/static/font/YekanBakh_FaNum_Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'YekanBakh';
    src: url('/static/font/YekanBakh_FaNum_Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* general */
html {
    scroll-behavior: smooth;
}

body {
    font-family: 'YekanBakh', Tahoma, sans-serif;
}

.english-font {
    font-family: "Archivo Black", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.prose :is(p, h1, h2, h3, h4, h5, h6, ul, ol, li, blockquote, strong, em, u, s, span) {
    all: revert !important;
    text-align: justify !important;
    line-height: 1.6 !important;
}

.prose a {
    color: revert !important;
    text-decoration: underline !important;
}

.htmx-indicator {
    opacity: 0;
    pointer-events: none;
    transition: opacity 200ms ease-in;
}

.htmx-request .htmx-indicator {
    opacity: 1;
}

.htmx-request.htmx-indicator {
    opacity: 1;
}

/* ANIMATION */
@keyframes float-hero-plane {
    0% {
        transform: translate(-50%, -50%) translateY(0px) rotate(1deg);
    }
    50% {
        transform: translate(-50%, -50%) translateY(-15px) rotate(-1deg);
    }
    100% {
        transform: translate(-50%, -50%) translateY(0px) rotate(1deg);
    }
}

.animate-float-hero {
    animation: float-hero-plane 6s ease-in-out infinite;
}

@keyframes float-element {
    0% {
        transform: translateY(0px) rotate(0deg);
    }
    33% {
        transform: translateY(-10px) rotate(5deg);
    }
    66% {
        transform: translateY(5px) rotate(-5deg);
    }
    100% {
        transform: translateY(0px) rotate(0deg);
    }
}

.animate-floating {
    animation: float-element 8s ease-in-out infinite;
}

@keyframes orbit {
    0% {
        transform: translateX(0px) scale(1) translateZ(100px);
        z-index: 20;
        opacity: 1;
    }
    25% {
        transform: translateX(180px) scale(0.7) translateZ(0);
        z-index: 10;
        opacity: 0.8;
    }
    50% {
        transform: translateX(0px) scale(0.4) translateZ(-100px);
        z-index: 5;
        opacity: 0.5;
    }
    75% {
        transform: translateX(-180px) scale(0.7) translateZ(0);
        z-index: 10;
        opacity: 0.8;
    }
    100% {
        transform: translateX(0px) scale(1) translateZ(100px);
        z-index: 20;
        opacity: 1;
    }
}
