﻿/* global styles */
html, body, *:not(i) {
    font-family: Almarai-regular !important;
}

@font-face {
    font-family: "Almarai-light";
    src: url("../fonts/Almarai-Light.ttf");
    font-weight: 300;
}

@font-face {
    font-family: "Almarai-regular";
    src: url("../fonts/Almarai-Regular.ttf");
    font-weight: 400;
}

@font-face {
    font-family: "Almarai-bold";
    src: url("../fonts/Almarai-Bold.ttf");
    font-weight: bold;
}

@font-face {
    font-family: "Almarai-extrabold";
    src: url("../fonts/Almarai-Bold.ttf");
    font-weight: bolder;
}

:root {
    --primary-color: #498c7c;
    --primary-light-color: #c2d9d3;
    --text-color: #3a3c3b;
    --background-color: #e1efec;
}

* {
    outline: none;
}


body,
html {
    font-family: "Almarai-regular";
    font-weight: 400;
    font-size: 12px;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.page-content {
    background-color: var(--background-color);
    flex: 1;
}

@media screen and (min-width: 576px) {
    body {
        font-size: 14px;
    }
}

/* navbar styles */
.navbar {
    background-color: var(--background-color) !important;
}

    .navbar .nav-content {
        width: 100%;
        display: flex;
        flex-wrap: inherit;
        align-items: center;
        justify-content: space-between;
        background-color: var(--background-color);
        padding: 0.5rem 1.5rem;
        transition: 0.3s;
        margin-top: 3rem;
    }

    .navbar .navbar-brand .brand-logo {
        height: 10rem;
        max-height: 10rem;
    }

ul.navbar-nav {
    margin: 0 auto;
    column-gap: 1rem;
    row-gap: 1rem;
}

.navbar .navbar-nav {
    height: 4.5rem;
    font-size: 1.3rem;
}

    .navbar .navbar-nav .nav-item .nav-link {
        height: 100%;
        display: flex;
        align-items: center;
    }

        .navbar .navbar-nav .nav-item .nav-link.active {
            font-family: "Almarai-extrabold";
            background-color: var(--primary-color);
            color: white;
            position: relative;
            border-radius: 0.33rem;
        }

            .navbar .navbar-nav .nav-item .nav-link.active::before {
                content: "";
                position: absolute;
                width: 80%;
                height: 5px;
                background-color: var(--primary-light-color);
                bottom: 0;
                left: 10%;
                border-radius: 5px;
            }

    .navbar .navbar-nav .dropdown .dropdown-toggle::after {
        margin-right: 0.5rem;
        content: "";
        height: 0.7rem;
        width: 0.7rem;
        border: 1px solid;
        border-color: transparent black black transparent;
        transform: rotate(45deg);
    }

    .navbar .navbar-nav .dropdown .dropdown-toggle.active::after {
        border-color: transparent white white transparent;
    }

    .navbar .navbar-nav .nav-item .dropdown-menu {
        box-shadow: 0px 30px 30px 10px #5362730f;
        border: none;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        font-size: 1.2rem;
    }

    .navbar .navbar-nav .nav-item .dropdown-item {
        border-radius: 0.25rem;
    }

        .navbar .navbar-nav .nav-item .dropdown-item.active,
        .navbar .navbar-nav .nav-item .dropdown-item:active {
            background-color: #a4c5bd;
            /* variable from bootstrap ==> */
            color: var(--bs-dropdown-link-color);
        }

.navbar .navbar-collapse .signIn-btn {
    height: 4.5rem;
    background-color: var(--primary-color);
    color: white;
    text-decoration: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    white-space: pre;
}

/* footer styles */
footer {
    padding: 2.5rem 0 1.7rem;
    background-color: #f5fffd;
}

    footer .logo img {
        height: 8rem;
        max-width: 100%;
    }

    footer .direct-links a:hover,
    footer .contact a:hover {
        text-decoration: underline !important;
    }

@media (min-width: 1200px) {
    .container {
        max-width: 1320px;
    }
}

@media (min-width: 1400px) {
    .container {
        max-width: 1500px;
    }
}

@media screen and (max-width: 991px) {
    .navbar .navbar-brand .brand-logo {
        height: 7rem;
    }

    .navbar .nav-content {
        border-radius: 2rem !important;
    }

    .navbar .navbar-nav {
        height: auto;
    }

    .navbar .navbar-collapse .signIn-btn {
        width: fit-content;
        height: auto;
    }
}

@media (min-width: 992px) {
    .justify-content-lg-between {
        justify-content: center !important;
    }
}


/* sign-in form styles */
#signInForm .sign-in-form {
    margin: 0 5px;
}

    #signInForm .sign-in-form .logo {
        width: 8rem;
        height: 10rem;
    }

        #signInForm .sign-in-form .logo img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }

    #signInForm .sign-in-form .title {
        font-size: 2rem;
        margin-top: 1rem;
        margin-bottom: 1rem;
    }

    #signInForm .sign-in-form .description {
        font-size: 1.7rem;
        margin-bottom: 1.5rem;
    }

    #signInForm .sign-in-form .form-group .form-label {
        font-size: 1.5rem;
    }

    #signInForm .sign-in-form .form-group .form-control {
        font-size: 1.7rem;
        height: 3.5rem;
        padding-right: 4rem;
    }

        #signInForm .sign-in-form .form-group .form-control::placeholder {
            font-size: 1.5rem;
        }

        #signInForm .sign-in-form .form-group .form-control:focus {
            border-color: var(--primary-color);
            box-shadow: 0 0 0 0.25rem rgb(73 140 124 / 25%);
        }

    #signInForm .sign-in-form .form-group .input.checkbox label {
        cursor: pointer;
    }

    #signInForm .sign-in-form .form-group .input.checkbox .checkmark {
        display: inline-block;
        width: 1.6rem;
        height: 1.6rem;
        border-radius: 0.5rem;
        background-color: #f9f5ff;
        border: 2px solid #bbd0cb;
        transition: all 0.2s;
        vertical-align: middle;
    }

        #signInForm .sign-in-form .form-group .input.checkbox .checkmark::after {
            content: "✔";
            position: absolute;
            width: 100%;
            color: var(--primary-color);
            top: 40%;
            transform: rotate(20deg) translate(-30%, -40%) scale(0);
            transition: transform 0.2s;
        }

    #signInForm
    .sign-in-form
    .form-group
    .input.checkbox
    input:checked ~ .checkmark {
        border-color: var(--primary-color);
    }

        #signInForm
        .sign-in-form
        .form-group
        .input.checkbox
        input:checked ~ .checkmark::after {
            transform: rotate(20deg) translate(-30%, -40%) scale(0.7);
        }

#signInForm form .buttons {
    margin-top: 2rem;
}

    #signInForm form .buttons .btn {
        height: 4rem;
        font-size: 1.6rem;
    }

    #signInForm form .buttons .submit {
        background-color: var(--primary-color);
        border-color: var(--primary-color);
        margin-bottom: 1rem;
    }

    #signInForm form .buttons .cancel {
        border-color: var(--primary-color);
        color: var(--primary-color);
    }

#signInForm .sign-in-form .form-group .input .icon {
    position: absolute;
    bottom: 15%;
    right: 1.33rem;
}

#signInForm .modal-body::-webkit-scrollbar {
    width: 8px;
}

#signInForm .modal-body::-webkit-scrollbar-thumb {
    background-color: var(--primary-color);
    border-radius: 100px;
}

#signInForm .modal-body::-webkit-scrollbar-track {
    background: transparent;
}

@media (max-width: 574px) {
    #signInForm form .buttons .btn {
        height: 3rem;
        font-size: 1.4rem;
    }
}
