/* global */
*,
*::after,
*::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;

    /* user-select: none; */
    font: inherit;
}

/* ::-webkit-scrollbar{
    width: 0;
    height: 0;
  } */
/* ::selection{
    background: $main_color;
    color: $white_color;
  } */
/* remove arrows on inputs */
::-webkit-outer-spin-button,
::-webkit-inner-spin-button {
    display: none;
}


::-webkit-scrollbar {
    width: 0;
    height: 0;
}

/* ::selection{
    background: $main_color;
    color: $white_color;
  } */
/* remove arrows on inputs */
/* ::-webkit-outer-spin-button,
  ::-webkit-inner-spin-button{
    display: none;
  }
   */

/* make images responsive */
img,
picture,
video,
svg {
    display: block;
    max-width: var(--fullWidth);
}

img {
    height: auto;
}

/* make inputs, and form elements  uinherit the fornts */
input,
textarea,
button,
select {
    font: inherit;
    outline: none;
}

p {
    text-align: justify;
    line-height: 2.4rem;
    font-weight: 300;
    font-size: var(--paraSize);
}



a {
    text-decoration: none;
    color: inherit;
}

/* flex box -> flex_justify-content_align-items */
.f_cls {
    display: flex;
}

.f_cc {
    display: flex;
    align-items: center;
    justify-content: center;
}

.f_cs {
    display: flex;
    align-items: start;
    justify-content: center;
}

.f_bc {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.f_be {
    display: flex;
    align-items: end;
    justify-content: space-between;
}

.f_bs {
    display: flex;
    align-items: start;
    justify-content: space-between;
}

.f_es {
    display: flex;
    align-items: start;
    justify-content: flex-end;
}

.f_st {
    display: flex;
    align-items: start;
}

.f_sc {
    display: flex;
    align-items: center;
    justify-content: start;
}

.f_ec {
    display: flex;
    align-items: center;
    justify-content: end;
}

.f_ss {
    display: flex;
    align-items: start;
    justify-content: start;
}

.f_se {
    display: flex;
    align-items: end;
    justify-content: start;
}

.f_aic {
    display: flex;
    align-items: center;
}

.f_ais {
    display: flex;
    align-items: start;
}

.f_aie {
    display: flex;
    align-items: end;
}

.f_jcs {
    display: flex;
    justify-content: start;
}

.f_jcc {
    display: flex;
    justify-content: center;
}

.f_jcb {
    display: flex;
    justify-content: space-between;
}

.f_jce {
    display: flex;
    justify-content: end;
}

.f_col {
    display: flex;
    flex-direction: column;
}

.hidden {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.f_col_cs {
    display: flex;
    align-items: start;
    justify-content: center;
    flex-direction: column;
}

.f_col_sc {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
}
.f_col_cc {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

/* grid */

.g_cls {
    display: grid;
}

.g_collapse {
    display: grid;
    grid-template-rows: 0fr;

    .collapsible {
        overflow-y: hidden;
    }

    &.expand {
        grid-template-rows: 1fr;
    }
}

.g_m300 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300, 1fr));
}

.g_m280 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280, 1fr));
}

.i_grid {
    display: inline grid;
    grid-auto-flow: row;
}


/* buttons */

/* btn styles */
.circular {
    border-radius: 50%;
}

.br_0 {
    border-radius: 0px;
}

.br_2 {
    border-radius: 2px;
}

.br_3 {
    border-radius: 3px;
}

.br_4 {
    border-radius: 4px;
}

.br_5 {
    border-radius: 5px;
}

.br_6 {
    border-radius: 6px;
}

.br_7 {
    border-radius: 7px;
}

.br_8 {
    border-radius: 8px;
}

.br_9 {
    border-radius: 9px;
}

.br_10 {
    border-radius: 10px;
}

.br_11 {
    border-radius: 11px;
}

.br_12 {
    border-radius: 12px;
}

.br_13 {
    border-radius: 13px;
}

.br_14 {
    border-radius: 14px;
}

.br_15 {
    border-radius: 15px;
}

.br_16 {
    border-radius: 16px;
}

.br_17 {
    border-radius: 17px;
}

.br_18 {
    border-radius: 18px;
}

.br_19 {
    border-radius: 19px;
}

.br_20 {
    border-radius: 20px;
}

.borderless {
    border: 0;
}

.shadow {
    box-shadow: 0px 1px 4px 0px rgba(225, 225, 225, 0.16);
}

.shadow_hover {
    transition: 200ms ease;

    &:hover {
        box-shadow: 0px 1px 4px 0px rgba(225, 225, 225, 0.16);
    }

}

.bgi_fixed {
    background-position: center;
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
}

.bgi {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.transparent {
    background: transparent;
}

.hidden {
    opacity: 0;
    pointer-events: none;
}

.visible {
    opacity: 1;
    pointer-events: initial;
}

.outlined {
    border-width: 1px;
    border-style: solid;
}
.upper {
    text-transform: uppercase;
}

.btn {
    text-align: center;
    transition: all 250ms ease;
    cursor: pointer;
    color: inherit;
    padding: 4px 2rem;
}

.shake {
    transition: 300ms ease;

    .shake_zoom {
        transition: 300ms ease;
    }

    &:hover {
        transform: translateY(-4px);

        .shake_zoom {
            transform: scale(1.035);
        }
    }

}

/* padding */
.p_2 {
    padding: 2px;
}

.pt_2 {
    padding-top: 2px;
}

.pl_2 {
    padding-left: 2px;
}

.pr_2 {
    padding-right: 2px;
}

.pb_2 {
    padding-bottom: 2px;
}


.p_4 {
    padding: 4px;
}
.pbt_4_4 {
    padding: 4px;
}

.pt_4 {
    padding-top: 4px;
}

.pl_4 {
    padding-left: 4px;
}

.pr_4 {
    padding-right: 4px;
}

.pb_4 {
    padding-bottom: 4px;
}


.p_6 {
    padding: 6px;
}

.pt_6 {
    padding-top: 6px;
}

.pl_6 {
    padding-left: 6px;
}

.pr_6 {
    padding-right: 6px;
}

.pb_6 {
    padding-bottom: 6px;
}


.p_8 {
    padding: 8px;
}

.pt_8 {
    padding-top: 8px;
}

.pl_8 {
    padding-left: 8px;
}

.pr_8 {
    padding-right: 8px;
}

.pb_8 {
    padding-bottom: 8px;
}


.p_10 {
    padding: 10px;
}

.pt_10 {
    padding-top: 10px;
}

.pl_10 {
    padding-left: 10px;
}

.pr_10 {
    padding-right: 10px;
}

.pb_10 {
    padding-bottom: 10px;
}


.p_12 {
    padding: 12px;
}

.pt_12 {
    padding-top: 12px;
}

.pl_12 {
    padding-left: 12px;
}

.pr_12 {
    padding-right: 12px;
}

.pb_12 {
    padding-bottom: 12px;
}


.p_14 {
    padding: 14px;
}

.pt_14 {
    padding-top: 14px;
}

.pl_14 {
    padding-left: 14px;
}

.pr_14 {
    padding-right: 14px;
}

.pb_14 {
    padding-bottom: 14px;
}


.p_16 {
    padding: 16px;
}

.pt_16 {
    padding-top: 16px;
}

.pl_16 {
    padding-left: 16px;
}

.pr_16 {
    padding-right: 16px;
}

.pb_16 {
    padding-bottom: 16px;
}




.p_18 {
    padding: 18px;
}

.pt_18 {
    padding-top: 18px;
}

.pl_18 {
    padding-left: 18px;
}

.pr_18 {
    padding-right: 18px;
}

.pb_18 {
    padding-bottom: 18px;
}


.p_20 {
    padding: 20px;
}

.pt_20 {
    padding-top: 20px;
}

.pl_20 {
    padding-left: 20px;
}

.pr_20 {
    padding-right: 20px;
}

.pb_20 {
    padding-bottom: 20px;
}


.p_22 {
    padding: 22px;
}

.pt_22 {
    padding-top: 22px;
}

.pl_22 {
    padding-left: 22px;
}

.pr_22 {
    padding-right: 22px;
}

.pb_22 {
    padding-bottom: 22px;
}


.p_24 {
    padding: 24px;
}

.pt_24 {
    padding-top: 24px;
}

.pl_24 {
    padding-left: 24px;
}

.pr_24 {
    padding-right: 24px;
}

.pb_24 {
    padding-bottom: 24px;
}


.p_26 {
    padding: 26px;
}

.pt_26 {
    padding-top: 26px;
}

.pl_26 {
    padding-left: 26px;
}

.pr_26 {
    padding-right: 26px;
}

.pb_26 {
    padding-bottom: 26px;
}




.p_28 {
    padding: 28px;
}

.pt_28 {
    padding-top: 28px;
}

.pl_28 {
    padding-left: 28px;
}

.pr_28 {
    padding-right: 28px;
}

.pb_28 {
    padding-bottom: 28px;
}




.p_30 {
    padding: 30px;
}

.pt_30 {
    padding-top: 30px;
}

.pl_30 {
    padding-left: 30px;
}

.pr_30 {
    padding-right: 30px;
}

.pb_30 {
    padding-bottom: 30px;
}







.m_2 {
    margin: 2px;
}

.mt_2 {
    margin-top: 2px;
}

.ml_2 {
    margin-left: 2px;
}

.mr_2 {
    margin-right: 2px;
}

.mb_2 {
    margin-bottom: 2px;
}


.m_4 {
    margin: 4px;
}

.mt_4 {
    margin-top: 4px;
}

.ml_4 {
    margin-left: 4px;
}

.mr_4 {
    margin-right: 4px;
}

.mb_4 {
    margin-bottom: 4px;
}


.m_6 {
    margin: 6px;
}

.mt_6 {
    margin-top: 6px;
}

.ml_6 {
    margin-left: 6px;
}

.mr_6 {
    margin-right: 6px;
}

.mb_6 {
    margin-bottom: 6px;
}


.m_8 {
    margin: 8px;
}

.mt_8 {
    margin-top: 8px;
}

.ml_8 {
    margin-left: 8px;
}

.mr_8 {
    margin-right: 8px;
}

.mb_8 {
    margin-bottom: 8px;
}


.m_10 {
    margin: 10px;
}

.mt_10 {
    margin-top: 10px;
}

.ml_10 {
    margin-left: 10px;
}

.mr_10 {
    margin-right: 10px;
}

.mb_10 {
    margin-bottom: 10px;
}


.m_12 {
    margin: 12px;
}

.mt_12 {
    margin-top: 12px;
}

.ml_12 {
    margin-left: 12px;
}

.mr_12 {
    margin-right: 12px;
}

.mb_12 {
    margin-bottom: 12px;
}


.m_14 {
    margin: 14px;
}

.mt_14 {
    margin-top: 14px;
}

.ml_14 {
    margin-left: 14px;
}

.mr_14 {
    margin-right: 14px;
}

.mb_14 {
    margin-bottom: 14px;
}


.m_16 {
    margin: 16px;
}

.mt_16 {
    margin-top: 16px;
}

.ml_16 {
    margin-left: 16px;
}

.mr_16 {
    margin-right: 16px;
}

.mb_16 {
    margin-bottom: 16px;
}


.m_18 {
    margin: 18px;
}

.mt_18 {
    margin-top: 18px;
}

.ml_18 {
    margin-left: 18px;
}

.mr_18 {
    margin-right: 18px;
}

.mb_18 {
    margin-bottom: 18px;
}


.m_20 {
    margin: 20px;
}

.mt_20 {
    margin-top: 20px;
}

.ml_20 {
    margin-left: 20px;
}

.mr_20 {
    margin-right: 20px;
}

.mb_20 {
    margin-bottom: 20px;
}


.m_22 {
    margin: 22px;
}

.mt_22 {
    margin-top: 22px;
}

.ml_22 {
    margin-left: 22px;
}

.mr_22 {
    margin-right: 22px;
}

.mb_22 {
    margin-bottom: 22px;
}


.m_24 {
    margin: 24px;
}

.mt_24 {
    margin-top: 24px;
}

.ml_24 {
    margin-left: 24px;
}

.mr_24 {
    margin-right: 24px;
}

.mb_24 {
    margin-bottom: 24px;
}


.m_26 {
    margin: 26px;
}

.mt_26 {
    margin-top: 26px;
}

.ml_26 {
    margin-left: 26px;
}

.mr_26 {
    margin-right: 26px;
}

.mb_26 {
    margin-bottom: 26px;
}
.weight_300{
    font-weight: 300;
}
.weight_400{
    font-weight: 400;
}
.weight_500{
    font-weight: 500;
}
.weight_500{
    font-weight: 500;
}
.weight_600{
    font-weight: 600;
}
.weight_700{
    font-weight: 700;
}


/* set root size */
html {
    /* default = 16px, 1 rem = 16px*/
    /* 10 */

    scroll-behavior: smooth;
    font-size: 62.5%;
    /*1rem = 10px*/

}

body {
    background-color: var(--darkColor);
    width: var(--vWidth);
    min-width: var(--svWidth);
    color: var(--textColor);
    font-family: var(--textFamily);
}