/*=============== FONT ================*/
@font-face {
    font-family: "Cairo";
    src: url("../fonts/Cairo-VariableFont_slnt\,wght.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
}

/*=============== ANIMATION ================*/

/*=============== VARIABLES CSS ===============*/
:root {

    /*========== Colors ==========*/
    --red: #F70004;
    --red-gradient: linear-gradient(94.77deg, #A81B1C 23.26%, #BA1B1C 66.94%, #F70104 95.21%);
    --yellow: #F7B803;
    --white: #FFFFFF;



    /*========== Font and typography ==========*/
    --body-font: "Cairo", sans-serif;


    /*========== Font weight ==========*/
    --font-light: 300;
    --font-regular: 400;
    --font-medium: 500;
    --font-semi-bold: 600;
    --font-bold: 700;

    /*========== z index ==========*/
    --z-tooltip: 10;
    --z-fixed: 100;
}

/*=============== BASE ===============*/
* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

input,
button {
    outline: none;
    border: none;
}

ul {
    list-style: none;
}

a {
    text-decoration: none;
}

body {
    position: relative;
    font-family: var(--body-font);
}

.btn {
    display: flex;
    justify-content: center;
    align-items: center;
}

/*=============== SCROLL BAR ===============*/
::-webkit-scrollbar {
    width: 0.6rem;
    background-color: rgba(232, 234, 235, 0.364);
    border-radius: 0.2rem;
}

::-webkit-scrollbar-thumb {
    background: rgb(142, 140, 140);
    border-radius: 10px;
    transition: all 0.3s ease-in-out;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--red-gradient);
}

/*=============== REUSABLE CSS CLASSES ===============*/
.container {
    max-width: 1250px;
    margin: 0 auto;
}

.section {
    padding-block: 5rem 3rem;
    padding-inline: 3rem;
}


/*=============== HEADER & NAV ===============*/
.header {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0 auto;
    width: 100%;
    height: 79px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: var(--z-fixed);
    background-color: #FAFCFF;
    padding-inline: 40px;

    .nav {
        position: relative;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;

        .nav__logo {
            width: 117px;
            height: 37px;

            img {
                width: 100%;
                height: 100%;
            }
        }

        .nav__menu {
            display: flex;
            justify-content: center;
            align-items: center;

            .nav__list {
                display: flex;
                justify-content: center;
                align-items: center;
                gap: 24px;

                .nav__link {
                    font-size: 16px;
                    font-weight: var(--font-medium);
                    color: #0F161E;
                    transition: color 0.3s ease;

                    &:hover {
                        color: var(--yellow);
                    }

                    &.active-link {
                        color: var(--yellow);
                        font-weight: var(--font-bold);
                    }


                }

            }
        }


        .nav__actions {
            display: flex;
            align-items: center;
            gap: 14px;
        }

        .btn,
        .nav__btn {
            gap: 10px;
            padding: 9px 22px;
            background-color: #18181B;
            color: var(--white);
            border-radius: 6px;
            font-size: 14px;
            font-weight: var(--font-bold);
            transition: all 0.3s ease-in-out;
            display: inline-flex;
            align-items: center;
            justify-content: center;

            i {
                font-size: 20px;
                color: var(--white);
            }

            &:hover {
                background-color: var(--yellow);
            }
        }

        /* زرار المنيو */
        .nav__toggle {
            display: none;
            justify-content: center;
            align-items: center;
            cursor: pointer;
            z-index: 900;
            padding: 4px;
            transition: transform 0.2s ease;

            &:hover {
                transform: scale(1.08);
            }
        }

        /* زرار القفل */
        .nav__close {
            display: none;
        }

        .btn__mobile {
            display: none;
        }
    }
}


/*=============== FOOTER ===============*/
.footer {
    position: relative;
    overflow: hidden;
    background: #171717;
    padding-top: 55px;
    padding-bottom: 20px;

    .footer__container {
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;

        .footer__content {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            padding-inline: 1rem;

            .footer__content__group {
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 28px;
                width: 100%;
                text-align: center;

                .logo__footer {
                    width: 142px;
                    display: flex;
                    justify-content: center;
                    align-items: center;

                    img {
                        width: 100%;
                        height: auto;
                        display: block;
                        object-fit: contain;
                    }
                }

                .footer__list {
                    width: 100%;

                    ul {
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        gap: 46px;
                        width: 100%;
                        list-style: none;
                        padding: 0;
                        margin: 0;

                        .footer__link {
                            font-size: 16px;
                            font-weight: var(--font-regular);
                            color: var(--white);
                            text-decoration: none;
                            transition: color 0.25s ease, transform 0.2s ease;
                            display: inline-block;

                            &:hover {
                                color: var(--yellow);
                                transform: translateY(-2px);
                            }
                        }
                    }
                }

                .social {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    gap: 18px;
                    margin-top: 2px;
                    margin-bottom: 10px;

                    a {
                        width: 42px;
                        height: 42px;
                        border-radius: 50%;
                        background-color: #FFFFFF;
                        color: #171717;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        font-size: 20px;
                        text-decoration: none;
                        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
                        transition: all 0.25s ease;

                        &:hover {
                            background-color: var(--yellow);
                            color: #171717;
                            transform: translateY(-3px) scale(1.06);
                            box-shadow: 0 6px 18px rgba(254, 185, 23, 0.35);
                        }
                    }
                }
            }
        }

        .copy__right {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            padding-block: 22px 6px;
            border-top: 1px solid rgba(255, 255, 255, 0.12);
            text-align: center;

            p {
                font-size: 14.5px;
                font-weight: var(--font-regular);
                color: #A1A1AA;
                letter-spacing: 0.2px;
            }
        }
    }

    &::after {
        content: '';
        position: absolute;
        top: -30%;
        right: -8%;
        width: 320px;
        height: 320px;
        border-radius: 50%;
        background-color: #E83834;
        filter: blur(220px);
        pointer-events: none;
    }

    &::before {
        content: '';
        position: absolute;
        top: 45%;
        right: -12%;
        transform: translateY(-50%);
        width: 280px;
        height: 280px;
        border-radius: 50%;
        background-color: var(--yellow);
        filter: blur(220px);
        pointer-events: none;
    }

    .circle__red {
        content: '';
        position: absolute;
        bottom: -20%;
        left: -10%;
        width: 320px;
        height: 320px;
        border-radius: 50%;
        background-color: #E83834;
        filter: blur(220px);
        pointer-events: none;
    }

    .circle__yellow {
        content: '';
        position: absolute;
        bottom: -50%;
        left: -2%;
        width: 280px;
        height: 280px;
        border-radius: 50%;
        background-color: var(--yellow);
        filter: blur(220px);
        pointer-events: none;
    }
}



/*=============== RESPONSIVE ===============*/
@media (max-width: 1200px) {

    /*===============HEADER & NAV===============*/
    .header {

        .nav {
            padding-inline: 25px;

            .nav__list {
                gap: 20px;
            }

            .btns {
                gap: 10px;

                .btn {
                    padding: 8px 18px;
                    font-size: 13px;
                }
            }
        }
    }

    /*===============FOOTER===============*/
    .footer {
        .footer__container {
            .footer__content {
                .footer__content__group {
                    gap: 26px;

                    .footer__list {
                        ul {
                            gap: 32px;

                            .footer__link {
                                font-size: 15.5px;
                            }
                        }
                    }
                }
            }
        }
    }
}


@media (max-width: 991px) {

    /*===============HEADER & NAV===============*/
    .header {
        height: 72px;
        padding-inline: 30px;

        .nav {
            .nav__toggle {
                display: flex;
            }

            .nav__menu {
                position: fixed;
                top: 78px;
                left: 20px;
                width: 260px;
                max-width: calc(100vw - 40px);
                background: linear-gradient(180deg, #A81B1C 0%, #BA1B1C 35%, #D40C10 70%, #F70004 100%);
                border: 1px solid rgba(255, 255, 255, 0.2);
                border-radius: 14px;
                box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
                flex-direction: column;
                justify-content: center;
                align-items: center;
                padding: 24px 16px;
                transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s ease;
                z-index: 999;
                opacity: 0;
                visibility: hidden;
                transform: translateY(-12px) scale(0.95);
                pointer-events: none;

                .nav__list {
                    flex-direction: column;
                    gap: 16px;
                    width: 100%;
                    align-items: center;

                    .nav__item {
                        width: 100%;
                        display: flex;
                        justify-content: center;
                    }

                    .nav__link {
                        font-size: 18px;
                        font-weight: var(--font-bold);
                        color: var(--white);
                        text-align: center;
                        display: inline-block;
                        padding: 6px 16px;
                        transition: all 0.2s ease;

                        &.active-link {
                            background-color: var(--white);
                            color: var(--red) !important;
                            font-size: 19px;
                            font-weight: 800;
                            border-radius: 6px;
                            padding: 8px 36px;
                            box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
                        }

                        &:hover:not(.active-link) {
                            opacity: 0.85;
                            transform: scale(1.05);
                        }
                    }
                }
            }

            .nav__menu.show-menu {
                opacity: 1;
                visibility: visible;
                transform: translateY(0) scale(1);
                pointer-events: auto;
            }

            .nav__close {
                display: none;
            }
        }
    }

    /*===============FOOTER===============*/
    .footer {
        padding-top: 48px;

        .footer__container {
            .footer__content {
                padding-inline: 1.5rem;

                .footer__content__group {
                    gap: 24px;

                    .logo__footer {
                        width: 135px;
                    }

                    .footer__list {
                        ul {
                            flex-wrap: nowrap;
                            gap: clamp(12px, 2.2vw, 24px);

                            .footer__link {
                                font-size: 14.5px;
                                white-space: nowrap;
                            }
                        }
                    }

                    .social {
                        gap: 16px;
                        margin-top: 2px;
                        margin-bottom: 8px;

                        a {
                            width: 38px;
                            height: 38px;
                            font-size: 18px;
                        }
                    }
                }
            }

            .copy__right {
                padding-block: 20px 5px;

                p {
                    font-size: 14px;
                }
            }
        }
    }

}

@media (max-width: 768px) {

    /*===============HEADER & NAV===============*/
    .header {
        height: 62px;
        padding-inline: 16px;

        .nav {
            padding-inline: 0;

            .nav__logo {
                width: 95px;
            }

            .nav__actions {
                gap: 12px;

                .nav__btn,
                .btn {
                    background: none;
                    padding: 0;
                    color: #18181B;

                    span {
                        display: none;
                    }

                    i {
                        font-size: 26px;
                        color: #18181B;
                        transition: color 0.2s ease, transform 0.2s ease;
                    }

                    &:hover {
                        background: none;

                        i {
                            color: #25D366;
                            transform: scale(1.1);
                        }
                    }
                }
            }

            .nav__menu {
                top: 68px;
                left: 14px;
                width: 250px;
            }
        }
    }

    /*===============FOOTER===============*/
    .footer {
        padding-top: 42px;
        padding-bottom: 18px;

        .footer__container {
            .footer__content {
                padding-inline: 1rem;

                .footer__content__group {
                    gap: 22px;

                    .logo__footer {
                        width: 128px;
                    }

                    .footer__list {
                        ul {
                            flex-direction: column-reverse;
                            gap: 16px;
                            align-items: center;

                            .footer__link {
                                font-size: 15.5px;
                                font-weight: 500;
                            }
                        }
                    }

                    .social {
                        gap: 16px;
                        margin-top: 4px;
                        margin-bottom: 8px;

                        a {
                            width: 40px;
                            height: 40px;
                            font-size: 19px;
                        }
                    }
                }
            }

            .copy__right {
                padding-block: 18px 4px;

                p {
                    font-size: 13.5px;
                }
            }
        }

        &::after,
        &::before,
        .circle__red,
        .circle__yellow {
            width: 180px;
            height: 180px;
            filter: blur(120px);
            opacity: 0.5;
        }
    }

}

@media (max-width: 576px) {

    /*===============HEADER & NAV===============*/
    .header {

        .nav {
            padding-inline: 15px;

            .nav__menu {
                top: 75px;
            }
        }
    }

    /*===============FOOTER===============*/
    .footer {
        padding-top: 36px;
        padding-bottom: 16px;

        .footer__container {
            .footer__content {
                padding-inline: 0.75rem;

                .footer__content__group {
                    gap: 20px;

                    .logo__footer {
                        width: 120px;
                    }

                    .footer__list {
                        ul {
                            gap: 14px;

                            .footer__link {
                                font-size: 15px;
                            }
                        }
                    }

                    .social {
                        gap: 14px;
                        margin-top: 2px;
                        margin-bottom: 6px;

                        a {
                            width: 38px;
                            height: 38px;
                            font-size: 18px;
                        }
                    }
                }
            }

            .copy__right {
                padding-block: 16px 4px;

                p {
                    font-size: 13px;
                }
            }
        }
    }
}