/*--------------------------------------------------------------
    Flex library:
    This is a short framework independent flex class library.
--------------------------------------------------------------*/

.flex {
    margin: 0;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.justify-right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.justify-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.space-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.space-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
}

.align-items-start{
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
}

.align-items-center{
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.flex-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.no-wrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.flex-basis-20 {
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
}

.flex.menu>li {
    margin: 0 6px;
    padding: 0;
    border: none;
}

.flex.menu>li:last-child {
    margin-right: 0;
}

.flex-menu.space-between>li {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.flex-menu.space-between.full-menu>li {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    text-align: center;
    margin: 0;
}

/* Media Queries (Mobile First) */

@media (min-width: 992px) {

    .md-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .md-space-between {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .md-justify-left {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .md-justify-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .md-align-items-start{
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
    }
    
    .md-align-items-center{
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }

    .md-flex-flow-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-flow: column !important;
        flex-flow: column !important;
    }

    .md-flex-flow-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-flow: row !important;
        flex-flow: row !important;
    }

    .md-flex-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .md-space-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .md-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .md-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .md-no-flex {
        display: block !important;
    }

    .md-wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .md-two-btns>li {
        width: 49%;
    }

}

@media (min-width: 768px) {

    .sm-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .sm-menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .mixed-menu>ul,
    .mixed-menu {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }


    .sm-flex-flow-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-flow: column !important;
        flex-flow: column !important;
    }

    .sm-flex-flow-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-flow: row !important;
        flex-flow: row !important;
    }

    .sm-flex-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .sm-space-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .sm-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .sm-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .sm-justify-left {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .sm-justify-right {
        -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .sm-justify-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .sm-space-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .sm-align-items-start{
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
    }
    
    .sm-align-items-center{
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }

    .sm-no-flex {
        display: block !important;
    }

    .sm-wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .sm-two-btns>li {
        width: 49%;
    }

}