/* ROWS */
div.row {
    box-sizing: border-box;
    margin: 0 auto;
}
div.row div.row-wrapper {
    box-sizing: border-box;
    margin: 0 auto;
    width: 100%;
}
div.tab-content div.row div.row-wrapper {
    padding-left: 0 !important;
    width: 100% !important;
}
div.row div.row-inner-wrapper {
    /*margin-left: -20px;
    margin-right: -20px;*/
}
div.row.row-stretch-row-content-no-padding div.row-inner-wrapper {
    margin-left: 0;
    margin-right: 0;
}
div.row.row-stretch-default {
    max-width: 100%;
    width: 1140px;
}
div.row.row-stretch-row {
    width: 100%;
}
div.row.row-stretch-row div.row-wrapper {
    max-width: 100%;
    width: 1140px;
}
div.row.row-stretch-row-content {
    width: 100%;
}
div.row.row-stretch-row-content div.row-wrapper {
    width: 100%;
}
div.row.row-stretch-row-content-no-padding {
    padding-left: 0;
    padding-right: 0;
}
div.row.row-stretch-row-content-no-padding div.row-wrapper {
    width: 100%;
}

div.row.row-equal-heights > div.row-wrapper > div.row-inner-wrapper {
    /*box-sizing: border-box;
    display: table;
    table-layout: fixed;
    width: 100%;*/
    box-sizing: border-box;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: 100%;
    overflow: hidden;
}
/*div.row.row-equal-heights.row-content-top > div.row-wrapper > div.row-inner-wrapper {
    align-content: flex-start;
    align-items: flex-start;
}
div.row.row-equal-heights.row-content-middle > div.row-wrapper > div.row-inner-wrapper {
    align-content: center;
    align-items: center;
}
div.row.row-equal-heights.row-content-bottom > div.row-wrapper > div.row-inner-wrapper {
    align-content: flex-end;
    align-items: flex-end;
}*/

div.row::after,
div.row::before {
    content: " ";
    display: table;
}
div.row::after {
    clear: both;
}

/* COLUMNS */
div.col {
    box-sizing: border-box;
    float: left;
    padding-left: 20px;
    padding-right: 20px;
    min-height: 1px;
}
div.tab-content div.col {
    padding-left: 0;
    padding-right: 0;
}
div.row-stretch-row-content-no-padding > div.row-wrapper > div.row-inner-wrapper > div.col {
    padding-left: 0;
    padding-right: 0;
}
div.col.col-sz-1 {
    width: 8.33%;
}
div.col.col-sz-2 {
    width: 16.66%;
}
div.col.col-sz-3 {
    width: 25%;
}
div.col.col-sz-4 {
    width: 33.33%;
}
div.col.col-sz-5 {
    width: 41.66%;
}
div.col.col-sz-6 {
    width: 50%;
}
div.col.col-sz-7 {
    width: 58.33%;
}
div.col.col-sz-8 {
    width: 66.66%;
}
div.col.col-sz-9 {
    width: 75%;
}
div.col.col-sz-10 {
    width: 83.33%;
}
div.col.col-sz-11 {
    width: 91.66%;
}
div.col.col-sz-12 {
    width: 100%;
}
div.row.row-equal-heights > div.row-wrapper > div.row-inner-wrapper > div.col {
    /*display: table-cell;
    float: none !important;
    height: 100%;*/
    float: none !important;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 auto;
    -ms-flex: 1 auto;
    flex: 1 auto;
    overflow: hidden;
    display: grid;
}
div.row.row-equal-heights > div.row-wrapper > div.row-inner-wrapper > div.col > div.col-wrapper {
    /*display: table;
    height: 100%;
    table-layout: fixed;
    width: 100%;*/
    box-sizing: border-box;
    display: grid;
}
div.row.row-full-height > div.row-wrapper > div.row-inner-wrapper {
    height: 100vh;
}
div.row.row-full-height:not(.row-equal-heights) > div.row-wrapper > div.row-inner-wrapper > div.col,
div.row.row-full-height:not(.row-equal-heights) > div.row-wrapper > div.row-inner-wrapper > div.col > div.col-wrapper {
    height: 100%;
}

div.row.row-content-top > div.row-wrapper > div.row-inner-wrapper > div.col > div.col-wrapper {
    align-self: start;
}
div.row.row-content-middle > div.row-wrapper > div.row-inner-wrapper > div.col > div.col-wrapper {
    align-self: stretch;
}
div.row.row-content-bottom > div.row-wrapper > div.row-inner-wrapper > div.col > div.col-wrapper {
    align-self: end;
}
div.col-wrapper::after,
div.col-wrapper::before {
    content: " ";
    display: table;
}

/* DESKTOP responsive */
@media only screen and (max-width: 1140px) {

    div.row.row-stretch-default,
    div.row.row-stretch-row div.row-wrapper {
        width: 100%;
    }

}

/* TABLET responsive */
@media only screen and (max-width: 991px) {

    body {
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }

}

/* PHONE responsive */
@media only screen and (max-width: 767px) {

    div.row.row-equal-heights > div.row-wrapper > div.row-inner-wrapper {
        display: block;
    }
    div.col {
        display: block !important;
        flex: none;
        float: none;
        min-height: 0;
        width: 100% !important;
    }

}