/* 
Theme Name: Nelson's Mustang
Version: 1.0
Author: PIXONAUTS Studio
Author URI: https://pixonauts.com/
*/

@font-face {
    font-family: "Titillium Web";
    src: url(fonts/Titillium_Web/TitilliumWeb-Regular.ttf) format('truetype');
    font-weight: 400;
    font-style: normal
}
@font-face {
    font-family: "Titillium Web";
    src: url(fonts/Titillium_Web/TitilliumWeb-Italic.ttf) format('truetype');
    font-weight: 400;
    font-style: italic
}
@font-face {
    font-family: "Titillium Web";
    src: url(fonts/Titillium_Web/TitilliumWeb-SemiBold.ttf) format('truetype');
    font-weight: 600;
    font-style: normal
}

address,
cite,
dfn,
em,
i {
    font-style: italic
}

figure,
sub,
sup {
    position: relative
}

fieldset,
input[type=checkbox],
input[type=radio] {
    padding: 0
}

pre,
textarea {
    overflow: auto
}

audio,
hr,
ins,
mark {
    display: inline-block
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
hr.animated-line:before,
hr:after,
nav,
section {
    display: block
}

audio,
figure img,
img,
pre {
    max-width: 100%
}

a:hover,
ins,
mark {
    text-decoration: none
}

body,
html {
    font-family: "Titillium Web", sans-serif;
    font-weight: 400;
    font-size: 1.125rem;
    height: 100%;
    width: 100%;
    color: #282828;
    background-color: #fff;
    user-select: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none
}
@media only screen and (min-width:1280px) {
    body,
    html {
        font-size: 1.25rem;
    }
}

html {
    box-sizing: border-box;
    margin-right: 0 !important;
    overflow: visible !important
}

body,
body.smooth-scroll,
figure.has-parallax {
    overflow: hidden
}

body {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-transition: opacity .2s ease-in-out .2s;
    transition: opacity .2s ease-in-out .2s
}

body.hidden {
    opacity: 0
}

main {
    -webkit-transition: background .5s ease-in-out;
    transition: background .5s ease-in-out
}

a,
abbr,
acronym,
address,
applet,
big,
body,
caption,
cite,
code,
dd,
del,
dfn,
div,
dl,
dt,
em,
fieldset,
font,
form,
h1,
h2,
h3,
h4,
h5,
h6,
html,
iframe,
ins,
kbd,
label,
legend,
li,
object,
ol,
p,
pre,
q,
s,
samp,
small,
span,
strike,
strong,
sub,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
tr,
tt,
ul,
var {
    border: 0;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline
}

address,
dd,
dl,
pre,
table {
    margin-bottom: 24px
}

.ctx h1,
.ctx h2,
.ctx h3,
.ctx h4,
.ctx h5,
.ctx h6 {
    margin-bottom: 1rem
}

.play-audio audio {
    width: 100%
}

abbr[title] {
    border-bottom: 1px dotted #2b2b2b;
    cursor: help
}

.light-content .light-section b,
.light-content .light-section strong,
strong {
    font-weight: 600;
    color: #282828
}
b {
    font-weight: 500;
    color: #282828
}

.dark-section strong,
.light-content b,
.light-content strong {
    font-weight: 600;
    color: #fff
}
.dark-section b {
    font-weight: 500;
    color: #fff
}

ins,
mark {
    background: #282828;
    color: #fff;
    padding: 2px 8px;
    border-radius: 2px
}

.dark-section ins,
.dark-section mark,
.light-content ins,
.light-content mark {
    background: #fff;
    color: #000
}

.light-content .light-section ins,
.light-content .light-section mark {
    background: #111;
    color: #fff
}

code,
kbd,
pre,
samp,
tt,
var {
    font-family: monospace, serif;
    font-size: 15px;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
    line-height: 1.6
}

pre {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 12px;
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
    background-color: rgba(0, 0, 0, .05)
}

.dark-section pre,
.light-content pre {
    background-color: rgba(255, 255, 255, .05);
    color: #fff
}

.light-content .light-section pre {
    background-color: rgba(0, 0, 0, .05);
    color: #282828
}

.light-content .light-section li,
.light-content .light-section p,
li {
    color: #282828
}

@media only screen and (min-width:576px) {
    .column-2 {
        column-count: 2;
        column-gap: 40px
    }
    .column-2 p,
    .column-2 ul,
    .column-3 p,
    .column-3 ul {
        page-break-inside: avoid;
        -webkit-column-break-inside: avoid;
        break-inside: avoid
    }
}

@media only screen and (min-width:992px) {
    .column-2 {
        column-gap: 60px
    }
    .column-3 {
        column-count: 3;
        column-gap: 40px
    }
    .column-3 p,
    .column-3 ul {
        page-break-inside: avoid;
        -webkit-column-break-inside: avoid;
        break-inside: avoid
    }
}

small {
    font-size: smaller;
    line-height: 1.5
}

big {
    font-size: 125%
}

.nowrap {
    white-space: nowrap
}

sub,
sup {
    font-size: 75%;
    height: 0;
    line-height: 0;
    vertical-align: baseline
}

sup {
    bottom: 1ex
}

sub {
    top: .5ex
}

dt {
    font-weight: 700
}

ol,
ul {
    margin: 20px 0 25px 20px
}

ul {
    list-style: disc
}

ol {
    list-style: decimal
}

li>ol,
li>ul {
    margin: 20px 0 15px 25px
}

li {
    line-height: 1.6;
    margin-bottom: 1rem
}
@media only screen and (min-width:1280px) {
    li {
        margin-bottom: 1.125rem
    }
}

.dark-section li,
.dark-section tr,
.light-content li,
.light-content tr {
    color: #ccc
}

.dark-section a,
.dark-section h1,
.dark-section h2,
.dark-section h3,
.dark-section h4,
.dark-section h5,
.dark-section h6,
.light-content .light-section thead tr,
.light-content a,
.light-content h1,
.light-content h2,
.light-content h3,
.light-content h4,
.light-content h5,
.light-content h6,
.white-header a,
figcaption,
thead tr {
    color: #fff
}

figure {
    margin: 0
}

.full figure.has-parallax {
    overflow: hidden;
    height: 100vh
}

.has-parallax-content>img {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    object-position: center;
    object-fit: cover;
}

figcaption {
    background-color: rgba(0, 0, 0, .3);
    bottom: 0;
    font-weight: 400;
    font-size: 10px;
    padding: 5px 10px;
    position: absolute;
    right: 0;
    z-index: 10;
    border-radius: 0
}

fieldset {
    border: 1px solid rgba(0, 0, 0, .1);
    margin: 0 0 24px
}

legend {
    white-space: normal
}

button,
input {
    line-height: normal
}

input,
textarea {
    background-image: -webkit-linear-gradient(hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0))
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    cursor: pointer
}

button[disabled],
input[disabled] {
    cursor: default
}

input[type=search] {
    -webkit-appearance: textfield
}

input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

textarea {
    vertical-align: top
}

table {
    border-collapse: separate;
    border-spacing: 0;
    border-width: 1px 0 0 1px;
    width: 100%;
    color: #444
}

table.cars {
    color: #282828;
    border: 0;
}

.relative {
    position: relative!important;
}

.oh {
    overflow: hidden
}

.no-margins,
hr {
    margin: 0
}

.light-content .light-section thead,
thead {
    background-color: #000;
    color: #fff
}

.dark-section thead,
.light-content thead {
    background-color: #fff
}

.dark-section thead tr,
.light-content .light-section h1,
.light-content .light-section h2,
.light-content .light-section h3,
.light-content .light-section h4,
.light-content .light-section h5,
.light-content .light-section h6,
.light-content .white-header a,
.light-content thead tr {
    color: #282828
}

.light-content .light-section tr,
tr {
    color: #282828
}

caption,
td,
th {
    font-weight: 400;
    text-align: left
}

td,
th {
    border-width: 0 1px 1px 0;
    padding: 10px
}

hr,
hr.animated-line {
    padding-top: 35px;
    padding-bottom: 35px;
    height: 2px
}

del {
    color: #767676
}

hr {
    border: 0;
    border-top: 2px solid rgba(0, 0, 0, .3);
    width: 100%;
    float: none;
    opacity: 1 !important;
    transform: translateY(0) !important
}

.dark-section hr,
.light-content hr {
    border-top-color: #fff
}

.light-content .light-section hr {
    border-top-color: rgba(0, 0, 0, .3)
}

hr.animated-line {
    border-top: 0
}

hr.animated-line:before {
    content: "";
    width: 0;
    height: 2px;
    background: #dfdfdf
}

.dark-section hr.animated-line:before,
.light-content hr.animated-line:before {
    background: #fff
}

.light-content .light-section hr.animated-line:before {
    background: #000
}

hr.animated.animated-line:before {
    width: 80px;
    -webkit-transition: width .7s ease-in-out .1s;
    transition: width .7s ease-in-out .1s
}
.list__grid hr.animated.animated-line:before {
    width: 100%;
}

hr:after {
    clear: both;
    content: " ";
    height: 0;
    visibility: hidden
}

::selection {
    background: #000;
    color: #fff;
    text-shadow: none
}

::-moz-selection {
    background: #000;
    color: #fff;
    text-shadow: none
}

img {
    border: 0;
    vertical-align: middle;
    height: auto
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Titillium Web", sans-serif;
    font-weight: 600;
    color: #282828
}

.big-title {
    font-size: 5rem;
}

.h1,
h1 {
    font-size: 4rem;
    line-height: 1.1
}

.h1 span,
.h2 span,
.h3 span,
h1 span,
h2 span,
h3 span {
    display: table;
}

h1.inline-title span,
h2.inline-title span,
h3.inline-title span {
    display: inline-table;
    margin-right: .7vw
}

.h2,
h2 {
    font-size: 3rem;
    line-height: 1.2
}

.h3,
h3 {
    font-size: 3.25rem;
    line-height: 1.2
}

.h4,
.h5,
h4,
h5 {
    line-height: 1.3
}

.h4,
h4 {
    font-size: 2.75rem
}

.h5,
h5 {
    font-size: 1.75rem
}

.h6,
h6 {
    font-size: 1.25rem;
    line-height: 1.5
}

h6.has-icon {
    padding-left: 20px;
    box-sizing: border-box;
    display: inline-block;
    width: auto;
    position: relative
}

h6.has-icon::before {
    font: var(--fa-font-solid);
    content: "\f101";
    font-size: 12px;
    line-height: inherit;
    text-align: left;
    position: absolute;
    left: 0
}

p {
    font-size: 1.125rem;
    margin-bottom: 1.125rem;
    line-height: 1.6;
    color: #282828
}
p:last-of-type {
    margin-bottom: 0;
}
.lead p,
p.lead {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
}

p.caption {
    font-size: .8125rem;
    line-height: 1.3;
    margin: .5rem 0 0
}

@media only screen and (min-width:480px) {
    .lead p,
    p.lead {
        font-size: 1.375rem;
        margin-bottom: 1.375rem;
    }
}

@media only screen and (min-width:1025px) {
    .lead p,
    p.lead {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }
}

@media only screen and (min-width:991px) {
    p.caption {
        line-height: 1.5
    }
}

@media only screen and (min-width:1280px) {
    p {
        font-size: 1.25rem;
        margin-bottom: 1.25rem
    }
}

@media only screen and (min-width:1440px) {
    .lead p,
    p.lead {
        font-size: 1.75rem;
        margin-bottom: 1.75rem;
    }
}

.dark-section p,
.light-content p {
    color: #fff
}
.dark-content p {
    color: #000000
}

.bigger {
    font-size: 24px
}

.smaller {
    font-size: 12px;
    line-height: 2
}

.container {
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box
}

.container::after {
    clear: both;
    content: " ";
    display: table
}

a:active,
a:hover {
    outline: 0;
    color: #000
}

.light-content .light-section a,
a {
    text-decoration: none;
    color: #000;
    outline: 0
}

.wpcf7-form-control-wrap {
    display: inline-block;
    width: 100%;
}
.wpcf7-not-valid-tip {
    position: absolute;
    left: 0;
    width: 100%;
    font-size: 1rem;
    top: 60px;
}
.pb-1 .wpcf7-not-valid-tip {
    bottom: -.75rem!important;
}
.pb-2 .wpcf7-not-valid-tip,
.pb-3 .wpcf7-not-valid-tip {
    bottom: -1rem!important;
}
.pb-4 .wpcf7-not-valid-tip {
    bottom: -1.375rem;
}
.pb-4 .mb-4 .wpcf7-not-valid-tip {
    bottom: -.875rem!important;
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
    box-sizing: border-box
}

.row *,
.row ::after,
.row ::before {
    box-sizing: border-box
}

.row-xs {
    margin-right: -5px;
    margin-left: -5px;
}
.row-xs>[class*=col-] {
    padding-left: 5px;
    padding-right: 5px
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters>.col,
.no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0
}

.col,
.col-1,
.col-10,
.col-11,
.col-12,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    box-sizing: border-box
}

.col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%
}

.row-cols-1>* {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.row-cols-2>* {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.row-cols-3>* {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%
}

.row-cols-4>* {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.row-cols-5>* {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%
}

.row-cols-6>* {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%
}

.col-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.col-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%
}

.col-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%
}

.col-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%
}

.col-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%
}

.col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%
}

.col-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%
}

.col-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%
}

.col-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%
}

.col-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    -ms-flex-order: -1;
    order: -1
}

.order-last {
    -ms-flex-order: 13;
    order: 13
}

.order-0 {
    -ms-flex-order: 0;
    order: 0
}

.order-1 {
    -ms-flex-order: 1;
    order: 1
}

.order-2 {
    -ms-flex-order: 2;
    order: 2
}

.order-3 {
    -ms-flex-order: 3;
    order: 3
}

.order-4 {
    -ms-flex-order: 4;
    order: 4
}

.order-5 {
    -ms-flex-order: 5;
    order: 5
}

.order-6 {
    -ms-flex-order: 6;
    order: 6
}

.order-7 {
    -ms-flex-order: 7;
    order: 7
}

.order-8 {
    -ms-flex-order: 8;
    order: 8
}

.order-9 {
    -ms-flex-order: 9;
    order: 9
}

.order-10 {
    -ms-flex-order: 10;
    order: 10
}

.order-11 {
    -ms-flex-order: 11;
    order: 11
}

.order-12 {
    -ms-flex-order: 12;
    order: 12
}

.offset-1 {
    margin-left: 8.333333%
}

.offset-2 {
    margin-left: 16.666667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.333333%
}

.offset-5 {
    margin-left: 41.666667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.333333%
}

.offset-8 {
    margin-left: 66.666667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.333333%
}

.offset-11 {
    margin-left: 91.666667%
}

@media (min-width:576px) {
    .col-sm {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }
    .row-cols-sm-1>* {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .row-cols-sm-2>* {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .row-cols-sm-3>* {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .row-cols-sm-4>* {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .row-cols-sm-5>* {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }
    .row-cols-sm-6>* {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-sm-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }
    .col-sm-1 {
        -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }
    .col-sm-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-sm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-sm-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .col-sm-5 {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }
    .col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-sm-7 {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }
    .col-sm-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }
    .col-sm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-sm-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }
    .col-sm-11 {
        -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }
    .col-sm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-sm-first {
        -ms-flex-order: -1;
        order: -1
    }
    .order-sm-last {
        -ms-flex-order: 13;
        order: 13
    }
    .order-sm-0 {
        -ms-flex-order: 0;
        order: 0
    }
    .order-sm-1 {
        -ms-flex-order: 1;
        order: 1
    }
    .order-sm-2 {
        -ms-flex-order: 2;
        order: 2
    }
    .order-sm-3 {
        -ms-flex-order: 3;
        order: 3
    }
    .order-sm-4 {
        -ms-flex-order: 4;
        order: 4
    }
    .order-sm-5 {
        -ms-flex-order: 5;
        order: 5
    }
    .order-sm-6 {
        -ms-flex-order: 6;
        order: 6
    }
    .order-sm-7 {
        -ms-flex-order: 7;
        order: 7
    }
    .order-sm-8 {
        -ms-flex-order: 8;
        order: 8
    }
    .order-sm-9 {
        -ms-flex-order: 9;
        order: 9
    }
    .order-sm-10 {
        -ms-flex-order: 10;
        order: 10
    }
    .order-sm-11 {
        -ms-flex-order: 11;
        order: 11
    }
    .order-sm-12 {
        -ms-flex-order: 12;
        order: 12
    }
    .offset-sm-0 {
        margin-left: 0
    }
    .offset-sm-1 {
        margin-left: 8.333333%
    }
    .offset-sm-2 {
        margin-left: 16.666667%
    }
    .offset-sm-3 {
        margin-left: 25%
    }
    .offset-sm-4 {
        margin-left: 33.333333%
    }
    .offset-sm-5 {
        margin-left: 41.666667%
    }
    .offset-sm-6 {
        margin-left: 50%
    }
    .offset-sm-7 {
        margin-left: 58.333333%
    }
    .offset-sm-8 {
        margin-left: 66.666667%
    }
    .offset-sm-9 {
        margin-left: 75%
    }
    .offset-sm-10 {
        margin-left: 83.333333%
    }
    .offset-sm-11 {
        margin-left: 91.666667%
    }
}

@media (min-width:712px) {
    .row-md-n {
        margin-right: -15px!important;
        margin-left: -15px!important;
    }
    .row-md-n>[class*=col-] {
        padding-left: 15px!important;
        padding-right: 15px!important
    }
    .col-md {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }
    .row-cols-md-1>* {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .row-cols-md-2>* {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .row-cols-md-3>* {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .row-cols-md-4>* {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .row-cols-md-5>* {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }
    .row-cols-md-6>* {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-md-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }
    .col-md-1 {
        -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }
    .col-md-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-md-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-md-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .col-md-5 {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }
    .col-md-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-md-7 {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }
    .col-md-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }
    .col-md-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-md-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }
    .col-md-11 {
        -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }
    .col-md-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-md-first {
        -ms-flex-order: -1;
        order: -1
    }
    .order-md-last {
        -ms-flex-order: 13;
        order: 13
    }
    .order-md-0 {
        -ms-flex-order: 0;
        order: 0
    }
    .order-md-1 {
        -ms-flex-order: 1;
        order: 1
    }
    .order-md-2 {
        -ms-flex-order: 2;
        order: 2
    }
    .order-md-3 {
        -ms-flex-order: 3;
        order: 3
    }
    .order-md-4 {
        -ms-flex-order: 4;
        order: 4
    }
    .order-md-5 {
        -ms-flex-order: 5;
        order: 5
    }
    .order-md-6 {
        -ms-flex-order: 6;
        order: 6
    }
    .order-md-7 {
        -ms-flex-order: 7;
        order: 7
    }
    .order-md-8 {
        -ms-flex-order: 8;
        order: 8
    }
    .order-md-9 {
        -ms-flex-order: 9;
        order: 9
    }
    .order-md-10 {
        -ms-flex-order: 10;
        order: 10
    }
    .order-md-11 {
        -ms-flex-order: 11;
        order: 11
    }
    .order-md-12 {
        -ms-flex-order: 12;
        order: 12
    }
    .offset-md-0 {
        margin-left: 0
    }
    .offset-md-1 {
        margin-left: 8.333333%
    }
    .offset-md-2 {
        margin-left: 16.666667%
    }
    .offset-md-3 {
        margin-left: 25%
    }
    .offset-md-4 {
        margin-left: 33.333333%
    }
    .offset-md-5 {
        margin-left: 41.666667%
    }
    .offset-md-6 {
        margin-left: 50%
    }
    .offset-md-7 {
        margin-left: 58.333333%
    }
    .offset-md-8 {
        margin-left: 66.666667%
    }
    .offset-md-9 {
        margin-left: 75%
    }
    .offset-md-10 {
        margin-left: 83.333333%
    }
    .offset-md-11 {
        margin-left: 91.666667%
    }
}

@media (min-width:992px) {
    .row-l {
        margin-right: -30px;
        margin-left: -30px;
    }
    .row-l>[class*=col-] {
        padding-left: 30px;
        padding-right: 30px
    }
    .col-lg {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }
    .row-cols-lg-1>* {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .row-cols-lg-2>* {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .row-cols-lg-3>* {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .row-cols-lg-4>* {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .row-cols-lg-5>* {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }
    .row-cols-lg-6>* {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-lg-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }
    .col-lg-1 {
        -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }
    .col-lg-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-lg-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-lg-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .col-lg-5 {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }
    .col-lg-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-lg-7 {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }
    .col-lg-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }
    .col-lg-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-lg-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }
    .col-lg-11 {
        -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }
    .col-lg-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-lg-first {
        -ms-flex-order: -1;
        order: -1
    }
    .order-lg-last {
        -ms-flex-order: 13;
        order: 13
    }
    .order-lg-0 {
        -ms-flex-order: 0;
        order: 0
    }
    .order-lg-1 {
        -ms-flex-order: 1;
        order: 1
    }
    .order-lg-2 {
        -ms-flex-order: 2;
        order: 2
    }
    .order-lg-3 {
        -ms-flex-order: 3;
        order: 3
    }
    .order-lg-4 {
        -ms-flex-order: 4;
        order: 4
    }
    .order-lg-5 {
        -ms-flex-order: 5;
        order: 5
    }
    .order-lg-6 {
        -ms-flex-order: 6;
        order: 6
    }
    .order-lg-7 {
        -ms-flex-order: 7;
        order: 7
    }
    .order-lg-8 {
        -ms-flex-order: 8;
        order: 8
    }
    .order-lg-9 {
        -ms-flex-order: 9;
        order: 9
    }
    .order-lg-10 {
        -ms-flex-order: 10;
        order: 10
    }
    .order-lg-11 {
        -ms-flex-order: 11;
        order: 11
    }
    .order-lg-12 {
        -ms-flex-order: 12;
        order: 12
    }
    .offset-lg-0 {
        margin-left: 0
    }
    .offset-lg-1 {
        margin-left: 8.333333%
    }
    .offset-lg-2 {
        margin-left: 16.666667%
    }
    .offset-lg-3 {
        margin-left: 25%
    }
    .offset-lg-4 {
        margin-left: 33.333333%
    }
    .offset-lg-5 {
        margin-left: 41.666667%
    }
    .offset-lg-6 {
        margin-left: 50%
    }
    .offset-lg-7 {
        margin-left: 58.333333%
    }
    .offset-lg-8 {
        margin-left: 66.666667%
    }
    .offset-lg-9 {
        margin-left: 75%
    }
    .offset-lg-10 {
        margin-left: 83.333333%
    }
    .offset-lg-11 {
        margin-left: 91.666667%
    }
}

@media (min-width:1280px) {
    .col-xl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }
    .row-cols-xl-1>* {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .row-cols-xl-2>* {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .row-cols-xl-3>* {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .row-cols-xl-4>* {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .row-cols-xl-5>* {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }
    .row-cols-xl-6>* {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-xl-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }
    .col-xl-1 {
        -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }
    .col-xl-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }
    .col-xl-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-xl-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }
    .col-xl-5 {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }
    .col-xl-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-xl-7 {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }
    .col-xl-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }
    .col-xl-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-xl-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }
    .col-xl-11 {
        -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }
    .col-xl-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-xl-first {
        -ms-flex-order: -1;
        order: -1
    }
    .order-xl-last {
        -ms-flex-order: 13;
        order: 13
    }
    .order-xl-0 {
        -ms-flex-order: 0;
        order: 0
    }
    .order-xl-1 {
        -ms-flex-order: 1;
        order: 1
    }
    .order-xl-2 {
        -ms-flex-order: 2;
        order: 2
    }
    .order-xl-3 {
        -ms-flex-order: 3;
        order: 3
    }
    .order-xl-4 {
        -ms-flex-order: 4;
        order: 4
    }
    .order-xl-5 {
        -ms-flex-order: 5;
        order: 5
    }
    .order-xl-6 {
        -ms-flex-order: 6;
        order: 6
    }
    .order-xl-7 {
        -ms-flex-order: 7;
        order: 7
    }
    .order-xl-8 {
        -ms-flex-order: 8;
        order: 8
    }
    .order-xl-9 {
        -ms-flex-order: 9;
        order: 9
    }
    .order-xl-10 {
        -ms-flex-order: 10;
        order: 10
    }
    .order-xl-11 {
        -ms-flex-order: 11;
        order: 11
    }
    .order-xl-12 {
        -ms-flex-order: 12;
        order: 12
    }
    .offset-xl-0 {
        margin-left: 0
    }
    .offset-xl-1 {
        margin-left: 8.333333%
    }
    .offset-xl-2 {
        margin-left: 16.666667%
    }
    .offset-xl-3 {
        margin-left: 25%
    }
    .offset-xl-4 {
        margin-left: 33.333333%
    }
    .offset-xl-5 {
        margin-left: 41.666667%
    }
    .offset-xl-6 {
        margin-left: 50%
    }
    .offset-xl-7 {
        margin-left: 58.333333%
    }
    .offset-xl-8 {
        margin-left: 66.666667%
    }
    .offset-xl-9 {
        margin-left: 75%
    }
    .offset-xl-10 {
        margin-left: 83.333333%
    }
    .offset-xl-11 {
        margin-left: 91.666667%
    }
}

.clearfix::after {
    display: block;
    clear: both;
    content: ""
}

.d-none {
    display: none !important
}

.d-inline {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-block {
    display: block !important
}

.d-table {
    display: table !important
}

.d-table-row {
    display: table-row !important
}

.d-table-cell {
    display: table-cell !important
}

.d-flex {
    display: -ms-flexbox !important;
    display: flex !important
}

.d-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important
}

@media (min-width:576px) {
    .d-sm-none {
        display: none !important
    }
    .d-sm-inline {
        display: inline !important
    }
    .d-sm-inline-block {
        display: inline-block !important
    }
    .d-sm-block {
        display: block !important
    }
    .d-sm-table {
        display: table !important
    }
    .d-sm-table-row {
        display: table-row !important
    }
    .d-sm-table-cell {
        display: table-cell !important
    }
    .d-sm-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }
    .d-sm-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

@media (min-width:712px) {
    .d-md-none {
        display: none !important
    }
    .d-md-inline {
        display: inline !important
    }
    .d-md-inline-block {
        display: inline-block !important
    }
    .d-md-block {
        display: block !important
    }
    .d-md-table {
        display: table !important
    }
    .d-md-table-row {
        display: table-row !important
    }
    .d-md-table-cell {
        display: table-cell !important
    }
    .d-md-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }
    .d-md-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

@media (min-width:992px) {
    .d-lg-none {
        display: none !important
    }
    .d-lg-inline {
        display: inline !important
    }
    .d-lg-inline-block {
        display: inline-block !important
    }
    .d-lg-block {
        display: block !important
    }
    .d-lg-table {
        display: table !important
    }
    .d-lg-table-row {
        display: table-row !important
    }
    .d-lg-table-cell {
        display: table-cell !important
    }
    .d-lg-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }
    .d-lg-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

@media (min-width:1200px) {
    .d-xl-none {
        display: none !important
    }
    .d-xl-inline {
        display: inline !important
    }
    .d-xl-inline-block {
        display: inline-block !important
    }
    .d-xl-block {
        display: block !important
    }
    .d-xl-table {
        display: table !important
    }
    .d-xl-table-row {
        display: table-row !important
    }
    .d-xl-table-cell {
        display: table-cell !important
    }
    .d-xl-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }
    .d-xl-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

@media print {
    .d-print-none {
        display: none !important
    }
    .d-print-inline {
        display: inline !important
    }
    .d-print-inline-block {
        display: inline-block !important
    }
    .d-print-block {
        display: block !important
    }
    .d-print-table {
        display: table !important
    }
    .d-print-table-row {
        display: table-row !important
    }
    .d-print-table-cell {
        display: table-cell !important
    }
    .d-print-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }
    .d-print-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

@media (min-width:576px) {
    .text-sm-left {
        text-align: left !important
    }
    .text-sm-right {
        text-align: right !important
    }
    .text-sm-center {
        text-align: center !important
    }
}

@media (min-width:712px) {
    .text-md-left {
        text-align: left !important
    }
    .text-md-right {
        text-align: right !important
    }
    .text-md-center {
        text-align: center !important
    }
}

@media (min-width:992px) {
    .text-lg-left {
        text-align: left !important
    }
    .text-lg-right {
        text-align: right !important
    }
    .text-lg-center {
        text-align: center !important
    }
}

@media (min-width:1200px) {
    .text-xl-left {
        text-align: left !important
    }
    .text-xl-right {
        text-align: right !important
    }
    .text-xl-center {
        text-align: center !important
    }
}

.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden
}

.embed-responsive::before {
    display: block;
    content: ""
}

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.embed-responsive-21by9::before {
    padding-top: 42.857143%
}

.embed-responsive-16by9::before {
    padding-top: 56.25%
}

.embed-responsive-4by3::before {
    padding-top: 75%
}

.embed-responsive-1by1::before {
    padding-top: 100%
}

.embed-responsive.big-podcast::before {
    padding-top: 390px
}

.embed-responsive.small-podcast::before {
    padding-top: 145px
}

.flex-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important
}

.flex-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important
}

.flex-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important
}

.flex-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important
}

.flex-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important
}

.flex-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important
}

.flex-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important
}

.flex-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important
}

.flex-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important
}

.flex-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important
}

.flex-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important
}

.flex-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important
}

.justify-content-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important
}

.justify-content-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important
}

.justify-content-center {
    -ms-flex-pack: center !important;
    justify-content: center !important
}

.justify-content-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important
}

.justify-content-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important
}

.align-items-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important
}

.align-items-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important
}

.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important
}

.align-items-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important
}

.align-items-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important
}

.align-content-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important
}

.align-content-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important
}

.align-content-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important
}

.align-content-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important
}

.align-content-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important
}

.align-content-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important
}

.align-self-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important
}

.align-self-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important
}

.align-self-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important
}

.align-self-center {
    -ms-flex-item-align: center !important;
    align-self: center !important
}

.align-self-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important
}

.align-self-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important
}

@media (min-width:576px) {
    .flex-sm-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }
    .flex-sm-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }
    .flex-sm-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }
    .flex-sm-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }
    .flex-sm-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }
    .flex-sm-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }
    .flex-sm-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }
    .flex-sm-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }
    .flex-sm-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }
    .flex-sm-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }
    .flex-sm-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }
    .flex-sm-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }
    .justify-content-sm-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }
    .justify-content-sm-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }
    .justify-content-sm-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }
    .justify-content-sm-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }
    .justify-content-sm-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }
    .align-items-sm-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }
    .align-items-sm-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }
    .align-items-sm-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }
    .align-items-sm-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }
    .align-items-sm-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }
    .align-content-sm-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }
    .align-content-sm-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }
    .align-content-sm-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }
    .align-content-sm-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }
    .align-content-sm-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }
    .align-content-sm-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }
    .align-self-sm-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }
    .align-self-sm-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }
    .align-self-sm-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }
    .align-self-sm-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }
    .align-self-sm-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }
    .align-self-sm-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width:712px) {
    .flex-md-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }
    .flex-md-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }
    .flex-md-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }
    .flex-md-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }
    .flex-md-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }
    .flex-md-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }
    .flex-md-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }
    .flex-md-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }
    .flex-md-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }
    .flex-md-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }
    .flex-md-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }
    .flex-md-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }
    .justify-content-md-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }
    .justify-content-md-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }
    .justify-content-md-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }
    .justify-content-md-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }
    .justify-content-md-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }
    .align-items-md-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }
    .align-items-md-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }
    .align-items-md-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }
    .align-items-md-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }
    .align-items-md-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }
    .align-content-md-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }
    .align-content-md-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }
    .align-content-md-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }
    .align-content-md-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }
    .align-content-md-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }
    .align-content-md-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }
    .align-self-md-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }
    .align-self-md-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }
    .align-self-md-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }
    .align-self-md-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }
    .align-self-md-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }
    .align-self-md-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width:992px) {
    .flex-lg-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }
    .flex-lg-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }
    .flex-lg-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }
    .flex-lg-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }
    .flex-lg-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }
    .flex-lg-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }
    .flex-lg-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }
    .flex-lg-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }
    .flex-lg-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }
    .flex-lg-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }
    .flex-lg-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }
    .flex-lg-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }
    .justify-content-lg-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }
    .justify-content-lg-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }
    .justify-content-lg-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }
    .justify-content-lg-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }
    .justify-content-lg-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }
    .align-items-lg-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }
    .align-items-lg-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }
    .align-items-lg-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }
    .align-items-lg-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }
    .align-items-lg-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }
    .align-content-lg-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }
    .align-content-lg-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }
    .align-content-lg-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }
    .align-content-lg-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }
    .align-content-lg-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }
    .align-content-lg-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }
    .align-self-lg-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }
    .align-self-lg-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }
    .align-self-lg-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }
    .align-self-lg-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }
    .align-self-lg-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }
    .align-self-lg-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width:1200px) {
    .flex-xl-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }
    .flex-xl-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }
    .flex-xl-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }
    .flex-xl-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }
    .flex-xl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }
    .flex-xl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }
    .flex-xl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }
    .flex-xl-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }
    .flex-xl-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }
    .flex-xl-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }
    .flex-xl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }
    .flex-xl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }
    .justify-content-xl-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }
    .justify-content-xl-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }
    .justify-content-xl-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }
    .justify-content-xl-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }
    .justify-content-xl-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }
    .align-items-xl-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }
    .align-items-xl-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }
    .align-items-xl-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }
    .align-items-xl-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }
    .align-items-xl-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }
    .align-content-xl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }
    .align-content-xl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }
    .align-content-xl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }
    .align-content-xl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }
    .align-content-xl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }
    .align-content-xl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }
    .align-self-xl-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }
    .align-self-xl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }
    .align-self-xl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }
    .align-self-xl-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }
    .align-self-xl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }
    .align-self-xl-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal
}

.w-25 {
    width: 25% !important
}

.w-50 {
    width: 50% !important
}

.w-75 {
    width: 75% !important
}

.w-100 {
    width: 100% !important
}

.w-auto {
    width: auto !important
}

.h-25 {
    height: 25% !important
}

.h-50 {
    height: 50% !important
}

.h-75 {
    height: 75% !important
}

.h-100 {
    height: 100% !important
}

.h-auto {
    height: auto !important
}

.mw-100 {
    max-width: 100% !important
}

.mh-100 {
    max-height: 100% !important
}

.min-vw-100 {
    min-width: 100vw !important
}

.min-vh-100 {
    min-height: 100vh !important
}

.vw-100 {
    width: 100vw !important
}

.vh-100 {
    height: 100vh !important
}

@media only screen and (min-width:992px) {
    .vh-lg-100 {
        height: 100vh !important
    }
}

.abs {
    position: absolute;
    z-index: 5;
}
.abs.top {
    top: 20px;
}
.abs.bottom {
    bottom: 20px;
}
.abs.right {
    right: 20px;
}
.abs.left {
    left: 20px;
}

.m-0 {
    margin: 0 !important
}

.mt-0,
.my-0 {
    margin-top: 0 !important
}

.mr-0,
.mx-0 {
    margin-right: 0 !important
}

@media only screen and (min-width:992px) {
    .mt-c {
        margin-top: 30px;
    }
    .mnt-c {
        position: relative;
        margin-top: -30px;
        z-index: 5;
    }
    .pt-c {
        padding-top: 30px;
    }
    .pb-c {
        padding-bottom: 30px;
    }
}
@media only screen and (min-width:1440px) {
    .mt-c {
        margin-top: 40px;
    }
    .mnt-c {
        margin-top: -40px;
    }
    .pt-c {
        padding-top: 40px;
    }
    .pb-c {
        padding-bottom: 40px;
    }
}

.mb-0,
.my-0 {
    margin-bottom: 0 !important
}

.ml-0,
.mx-0 {
    margin-left: 0 !important
}

.m-1 {
    margin: .25rem !important
}

.mt-1,
.my-1 {
    margin-top: .25rem !important
}

.mr-1,
.mx-1 {
    margin-right: .25rem !important
}

.mb-1,
.my-1 {
    margin-bottom: .25rem !important
}

.ml-1,
.mx-1 {
    margin-left: .25rem !important
}

.m-2 {
    margin: .5rem !important
}

.mt-2,
.my-2 {
    margin-top: .5rem !important
}

.mr-2,
.mx-2 {
    margin-right: .5rem !important
}

.mb-2,
.my-2 {
    margin-bottom: .5rem !important
}

.ml-2,
.mx-2 {
    margin-left: .5rem !important
}

.m-3 {
    margin: 1rem !important
}

.mt-3,
.my-3 {
    margin-top: 1rem !important
}

.mr-3,
.mx-3 {
    margin-right: 1rem !important
}

.mb-3,
.my-3 {
    margin-bottom: 1rem !important
}

.ml-3,
.mx-3 {
    margin-left: 1rem !important
}

.m-4 {
    margin: 1.5rem !important
}

.mt-4,
.my-4 {
    margin-top: 1.5rem !important
}

.mr-4,
.mx-4 {
    margin-right: 1.5rem !important
}

.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important
}

.ml-4,
.mx-4 {
    margin-left: 1.5rem !important
}

.m-5 {
    margin: 3rem !important
}

.mt-5,
.my-5 {
    margin-top: 3rem !important
}

.mt-6,
.my-6 {
    margin-top: 5rem !important
}

.mr-5,
.mx-5 {
    margin-right: 3rem !important
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important
}

.mb-6,
.my-6 {
    margin-bottom: 5rem !important
}

.ml-5,
.mx-5 {
    margin-left: 3rem !important
}

.p-0 {
    padding: 0 !important
}

.pt-0,
.py-0 {
    padding-top: 0 !important
}

.pr-0,
.px-0 {
    padding-right: 0 !important
}

.pb-0,
.py-0 {
    padding-bottom: 0 !important
}

.pl-0,
.px-0 {
    padding-left: 0 !important
}

.p-1 {
    padding: .25rem !important
}

.pt-1,
.py-1 {
    padding-top: .25rem !important
}

.pr-1,
.px-1 {
    padding-right: .25rem !important
}

.pb-1,
.py-1 {
    padding-bottom: .25rem !important
}

.pl-1,
.px-1 {
    padding-left: .25rem !important
}

.p-2 {
    padding: .5rem !important
}

.pt-2,
.py-2 {
    padding-top: .5rem !important
}

.pr-2,
.px-2 {
    padding-right: .5rem !important
}

.pb-2,
.py-2 {
    padding-bottom: .5rem !important
}

.pl-2,
.px-2 {
    padding-left: .5rem !important
}

.p-3 {
    padding: 1rem !important
}

.pt-3,
.py-3 {
    padding-top: 1rem !important
}

.pr-3,
.px-3 {
    padding-right: 1rem !important
}

.pb-3,
.py-3 {
    padding-bottom: 1rem !important
}

.pl-3,
.px-3 {
    padding-left: 1rem !important
}

.p-4 {
    padding: 1.5rem !important
}

.pt-4,
.py-4 {
    padding-top: 1.5rem !important
}

.pr-4,
.px-4 {
    padding-right: 1.5rem !important
}

.pb-4,
.py-4 {
    padding-bottom: 1.5rem !important
}

.pl-4,
.px-4 {
    padding-left: 1.5rem !important
}

.p-5 {
    padding: 3rem !important
}

.pt-5,
.py-5 {
    padding-top: 3rem !important
}

.pt-6,
.py-6 {
    padding-top: 5rem !important
}

.pr-5,
.px-5 {
    padding-right: 3rem !important
}

.pb-5,
.py-5 {
    padding-bottom: 3rem !important
}

.pb-6,
.py-6 {
    padding-bottom: 5rem !important
}

.pl-5,
.px-5 {
    padding-left: 3rem !important
}

.m-n1 {
    margin: -.25rem !important
}

.mt-n1,
.my-n1 {
    margin-top: -.25rem !important
}

.mr-n1,
.mx-n1 {
    margin-right: -.25rem !important
}

.mb-n1,
.my-n1 {
    margin-bottom: -.25rem !important
}

.ml-n1,
.mx-n1 {
    margin-left: -.25rem !important
}

.m-n2 {
    margin: -.5rem !important
}

.mt-n2,
.my-n2 {
    margin-top: -.5rem !important
}

.mr-n2,
.mx-n2 {
    margin-right: -.5rem !important
}

.mb-n2,
.my-n2 {
    margin-bottom: -.5rem !important
}

.ml-n2,
.mx-n2 {
    margin-left: -.5rem !important
}

.m-n3 {
    margin: -1rem !important
}

.mt-n3,
.my-n3 {
    margin-top: -1rem !important
}

.mr-n3,
.mx-n3 {
    margin-right: -1rem !important
}

.mb-n3,
.my-n3 {
    margin-bottom: -1rem !important
}

.ml-n3,
.mx-n3 {
    margin-left: -1rem !important
}

.m-n4 {
    margin: -1.5rem !important
}

.mt-n4,
.my-n4 {
    margin-top: -1.5rem !important
}

.mr-n4,
.mx-n4 {
    margin-right: -1.5rem !important
}

.mb-n4,
.my-n4 {
    margin-bottom: -1.5rem !important
}

.ml-n4,
.mx-n4 {
    margin-left: -1.5rem !important
}

.m-n5 {
    margin: -3rem !important
}

.mt-n5,
.my-n5 {
    margin-top: -3rem !important
}

.mr-n5,
.mx-n5 {
    margin-right: -3rem !important
}

.mb-n5,
.my-n5 {
    margin-bottom: -3rem !important
}

.ml-n5,
.mx-n5 {
    margin-left: -3rem !important
}

.m-auto {
    margin: auto !important
}

.mt-auto,
.my-auto {
    margin-top: auto !important
}

.mr-auto,
.mx-auto {
    margin-right: auto !important
}

.mb-auto,
.my-auto {
    margin-bottom: auto !important
}

.ml-auto,
.mx-auto {
    margin-left: auto !important
}

@media (min-width:576px) {
    .m-sm-0 {
        margin: 0 !important
    }
    .mt-sm-0,
    .my-sm-0 {
        margin-top: 0 !important
    }
    .mr-sm-0,
    .mx-sm-0 {
        margin-right: 0 !important
    }
    .mb-sm-0,
    .my-sm-0 {
        margin-bottom: 0 !important
    }
    .ml-sm-0,
    .mx-sm-0 {
        margin-left: 0 !important
    }
    .m-sm-1 {
        margin: .25rem !important
    }
    .mt-sm-1,
    .my-sm-1 {
        margin-top: .25rem !important
    }
    .mr-sm-1,
    .mx-sm-1 {
        margin-right: .25rem !important
    }
    .mb-sm-1,
    .my-sm-1 {
        margin-bottom: .25rem !important
    }
    .ml-sm-1,
    .mx-sm-1 {
        margin-left: .25rem !important
    }
    .m-sm-2 {
        margin: .5rem !important
    }
    .mt-sm-2,
    .my-sm-2 {
        margin-top: .5rem !important
    }
    .mr-sm-2,
    .mx-sm-2 {
        margin-right: .5rem !important
    }
    .mb-sm-2,
    .my-sm-2 {
        margin-bottom: .5rem !important
    }
    .ml-sm-2,
    .mx-sm-2 {
        margin-left: .5rem !important
    }
    .m-sm-3 {
        margin: 1rem !important
    }
    .mt-sm-3,
    .my-sm-3 {
        margin-top: 1rem !important
    }
    .mr-sm-3,
    .mx-sm-3 {
        margin-right: 1rem !important
    }
    .mb-sm-3,
    .my-sm-3 {
        margin-bottom: 1rem !important
    }
    .ml-sm-3,
    .mx-sm-3 {
        margin-left: 1rem !important
    }
    .m-sm-4 {
        margin: 1.5rem !important
    }
    .mt-sm-4,
    .my-sm-4 {
        margin-top: 1.5rem !important
    }
    .mr-sm-4,
    .mx-sm-4 {
        margin-right: 1.5rem !important
    }
    .mb-sm-4,
    .my-sm-4 {
        margin-bottom: 1.5rem !important
    }
    .ml-sm-4,
    .mx-sm-4 {
        margin-left: 1.5rem !important
    }
    .m-sm-5 {
        margin: 3rem !important
    }
    .mt-sm-5,
    .my-sm-5 {
        margin-top: 3rem !important
    }
    .mt-sm-6,
    .my-sm-6 {
        margin-top: 5rem !important
    }
    .mr-sm-5,
    .mx-sm-5 {
        margin-right: 3rem !important
    }
    .mb-sm-5,
    .my-sm-5 {
        margin-bottom: 3rem !important
    }
    .mb-sm-6,
    .my-sm-6 {
        margin-bottom: 5rem !important
    }
    .ml-sm-5,
    .mx-sm-5 {
        margin-left: 3rem !important
    }
    .p-sm-0 {
        padding: 0 !important
    }
    .pt-sm-0,
    .py-sm-0 {
        padding-top: 0 !important
    }
    .pr-sm-0,
    .px-sm-0 {
        padding-right: 0 !important
    }
    .pb-sm-0,
    .py-sm-0 {
        padding-bottom: 0 !important
    }
    .pl-sm-0,
    .px-sm-0 {
        padding-left: 0 !important
    }
    .p-sm-1 {
        padding: .25rem !important
    }
    .pt-sm-1,
    .py-sm-1 {
        padding-top: .25rem !important
    }
    .pr-sm-1,
    .px-sm-1 {
        padding-right: .25rem !important
    }
    .pb-sm-1,
    .py-sm-1 {
        padding-bottom: .25rem !important
    }
    .pl-sm-1,
    .px-sm-1 {
        padding-left: .25rem !important
    }
    .p-sm-2 {
        padding: .5rem !important
    }
    .pt-sm-2,
    .py-sm-2 {
        padding-top: .5rem !important
    }
    .pr-sm-2,
    .px-sm-2 {
        padding-right: .5rem !important
    }
    .pb-sm-2,
    .py-sm-2 {
        padding-bottom: .5rem !important
    }
    .pl-sm-2,
    .px-sm-2 {
        padding-left: .5rem !important
    }
    .p-sm-3 {
        padding: 1rem !important
    }
    .pt-sm-3,
    .py-sm-3 {
        padding-top: 1rem !important
    }
    .pr-sm-3,
    .px-sm-3 {
        padding-right: 1rem !important
    }
    .pb-sm-3,
    .py-sm-3 {
        padding-bottom: 1rem !important
    }
    .pl-sm-3,
    .px-sm-3 {
        padding-left: 1rem !important
    }
    .p-sm-4 {
        padding: 1.5rem !important
    }
    .pt-sm-4,
    .py-sm-4 {
        padding-top: 1.5rem !important
    }
    .pr-sm-4,
    .px-sm-4 {
        padding-right: 1.5rem !important
    }
    .pb-sm-4,
    .py-sm-4 {
        padding-bottom: 1.5rem !important
    }
    .pl-sm-4,
    .px-sm-4 {
        padding-left: 1.5rem !important
    }
    .p-sm-5 {
        padding: 3rem !important
    }
    .pt-sm-5,
    .py-sm-5 {
        padding-top: 3rem !important
    }
    .pt-sm-6,
    .py-sm-6 {
        padding-top: 5rem !important
    }
    .pr-sm-5,
    .px-sm-5 {
        padding-right: 3rem !important
    }
    .pb-sm-5,
    .py-sm-5 {
        padding-bottom: 3rem !important
    }
    .pb-sm-6,
    .py-sm-6 {
        padding-bottom: 5rem !important
    }
    .pl-sm-5,
    .px-sm-5 {
        padding-left: 3rem !important
    }
    .m-sm-n1 {
        margin: -.25rem !important
    }
    .mt-sm-n1,
    .my-sm-n1 {
        margin-top: -.25rem !important
    }
    .mr-sm-n1,
    .mx-sm-n1 {
        margin-right: -.25rem !important
    }
    .mb-sm-n1,
    .my-sm-n1 {
        margin-bottom: -.25rem !important
    }
    .ml-sm-n1,
    .mx-sm-n1 {
        margin-left: -.25rem !important
    }
    .m-sm-n2 {
        margin: -.5rem !important
    }
    .mt-sm-n2,
    .my-sm-n2 {
        margin-top: -.5rem !important
    }
    .mr-sm-n2,
    .mx-sm-n2 {
        margin-right: -.5rem !important
    }
    .mb-sm-n2,
    .my-sm-n2 {
        margin-bottom: -.5rem !important
    }
    .ml-sm-n2,
    .mx-sm-n2 {
        margin-left: -.5rem !important
    }
    .m-sm-n3 {
        margin: -1rem !important
    }
    .mt-sm-n3,
    .my-sm-n3 {
        margin-top: -1rem !important
    }
    .mr-sm-n3,
    .mx-sm-n3 {
        margin-right: -1rem !important
    }
    .mb-sm-n3,
    .my-sm-n3 {
        margin-bottom: -1rem !important
    }
    .ml-sm-n3,
    .mx-sm-n3 {
        margin-left: -1rem !important
    }
    .m-sm-n4 {
        margin: -1.5rem !important
    }
    .mt-sm-n4,
    .my-sm-n4 {
        margin-top: -1.5rem !important
    }
    .mr-sm-n4,
    .mx-sm-n4 {
        margin-right: -1.5rem !important
    }
    .mb-sm-n4,
    .my-sm-n4 {
        margin-bottom: -1.5rem !important
    }
    .ml-sm-n4,
    .mx-sm-n4 {
        margin-left: -1.5rem !important
    }
    .m-sm-n5 {
        margin: -3rem !important
    }
    .mt-sm-n5,
    .my-sm-n5 {
        margin-top: -3rem !important
    }
    .mr-sm-n5,
    .mx-sm-n5 {
        margin-right: -3rem !important
    }
    .mb-sm-n5,
    .my-sm-n5 {
        margin-bottom: -3rem !important
    }
    .ml-sm-n5,
    .mx-sm-n5 {
        margin-left: -3rem !important
    }
    .m-sm-auto {
        margin: auto !important
    }
    .mt-sm-auto,
    .my-sm-auto {
        margin-top: auto !important
    }
    .mr-sm-auto,
    .mx-sm-auto {
        margin-right: auto !important
    }
    .mb-sm-auto,
    .my-sm-auto {
        margin-bottom: auto !important
    }
    .ml-sm-auto,
    .mx-sm-auto {
        margin-left: auto !important
    }
}

@media (min-width:712px) {
    .m-md-0 {
        margin: 0 !important
    }
    .mt-md-0,
    .my-md-0 {
        margin-top: 0 !important
    }
    .mr-md-0,
    .mx-md-0 {
        margin-right: 0 !important
    }
    .mb-md-0,
    .my-md-0 {
        margin-bottom: 0 !important
    }
    .ml-md-0,
    .mx-md-0 {
        margin-left: 0 !important
    }
    .m-md-1 {
        margin: .25rem !important
    }
    .mt-md-1,
    .my-md-1 {
        margin-top: .25rem !important
    }
    .mr-md-1,
    .mx-md-1 {
        margin-right: .25rem !important
    }
    .mb-md-1,
    .my-md-1 {
        margin-bottom: .25rem !important
    }
    .ml-md-1,
    .mx-md-1 {
        margin-left: .25rem !important
    }
    .m-md-2 {
        margin: .5rem !important
    }
    .mt-md-2,
    .my-md-2 {
        margin-top: .5rem !important
    }
    .mr-md-2,
    .mx-md-2 {
        margin-right: .5rem !important
    }
    .mb-md-2,
    .my-md-2 {
        margin-bottom: .5rem !important
    }
    .ml-md-2,
    .mx-md-2 {
        margin-left: .5rem !important
    }
    .m-md-3 {
        margin: 1rem !important
    }
    .mt-md-3,
    .my-md-3 {
        margin-top: 1rem !important
    }
    .mr-md-3,
    .mx-md-3 {
        margin-right: 1rem !important
    }
    .mb-md-3,
    .my-md-3 {
        margin-bottom: 1rem !important
    }
    .ml-md-3,
    .mx-md-3 {
        margin-left: 1rem !important
    }
    .m-md-4 {
        margin: 1.5rem !important
    }
    .mt-md-4,
    .my-md-4 {
        margin-top: 1.5rem !important
    }
    .mr-md-4,
    .mx-md-4 {
        margin-right: 1.5rem !important
    }
    .mb-md-4,
    .my-md-4 {
        margin-bottom: 1.5rem !important
    }
    .ml-md-4,
    .mx-md-4 {
        margin-left: 1.5rem !important
    }
    .m-md-5 {
        margin: 3rem !important
    }
    .mt-md-5,
    .my-md-5 {
        margin-top: 3rem !important
    }
    .mt-md-6,
    .my-md-6 {
        margin-top: 5rem !important
    }
    .mr-md-5,
    .mx-md-5 {
        margin-right: 3rem !important
    }
    .mb-md-5,
    .my-md-5 {
        margin-bottom: 3rem !important
    }
    .mb-md-6,
    .my-md-6 {
        margin-bottom: 5rem !important
    }
    .ml-md-5,
    .mx-md-5 {
        margin-left: 3rem !important
    }
    .p-md-0 {
        padding: 0 !important
    }
    .pt-md-0,
    .py-md-0 {
        padding-top: 0 !important
    }
    .pr-md-0,
    .px-md-0 {
        padding-right: 0 !important
    }
    .pb-md-0,
    .py-md-0 {
        padding-bottom: 0 !important
    }
    .pl-md-0,
    .px-md-0 {
        padding-left: 0 !important
    }
    .p-md-1 {
        padding: .25rem !important
    }
    .pt-md-1,
    .py-md-1 {
        padding-top: .25rem !important
    }
    .pr-md-1,
    .px-md-1 {
        padding-right: .25rem !important
    }
    .pb-md-1,
    .py-md-1 {
        padding-bottom: .25rem !important
    }
    .pl-md-1,
    .px-md-1 {
        padding-left: .25rem !important
    }
    .p-md-2 {
        padding: .5rem !important
    }
    .pt-md-2,
    .py-md-2 {
        padding-top: .5rem !important
    }
    .pr-md-2,
    .px-md-2 {
        padding-right: .5rem !important
    }
    .pb-md-2,
    .py-md-2 {
        padding-bottom: .5rem !important
    }
    .pl-md-2,
    .px-md-2 {
        padding-left: .5rem !important
    }
    .p-md-3 {
        padding: 1rem !important
    }
    .pt-md-3,
    .py-md-3 {
        padding-top: 1rem !important
    }
    .pr-md-3,
    .px-md-3 {
        padding-right: 1rem !important
    }
    .pb-md-3,
    .py-md-3 {
        padding-bottom: 1rem !important
    }
    .pl-md-3,
    .px-md-3 {
        padding-left: 1rem !important
    }
    .p-md-4 {
        padding: 1.5rem !important
    }
    .pt-md-4,
    .py-md-4 {
        padding-top: 1.5rem !important
    }
    .pr-md-4,
    .px-md-4 {
        padding-right: 1.5rem !important
    }
    .pb-md-4,
    .py-md-4 {
        padding-bottom: 1.5rem !important
    }
    .pl-md-4,
    .px-md-4 {
        padding-left: 1.5rem !important
    }
    .p-md-5 {
        padding: 3rem !important
    }
    .pt-md-5,
    .py-md-5 {
        padding-top: 3rem !important
    }
    .pt-md-6,
    .py-md-6 {
        padding-top: 5rem !important
    }
    .pr-md-5,
    .px-md-5 {
        padding-right: 3rem !important
    }
    .pb-md-5,
    .py-md-5 {
        padding-bottom: 3rem !important
    }
    .pb-md-6,
    .py-md-6 {
        padding-bottom: 5rem !important
    }
    .pl-md-5,
    .px-md-5 {
        padding-left: 3rem !important
    }
    .m-md-n1 {
        margin: -.25rem !important
    }
    .mt-md-n1,
    .my-md-n1 {
        margin-top: -.25rem !important
    }
    .mr-md-n1,
    .mx-md-n1 {
        margin-right: -.25rem !important
    }
    .mb-md-n1,
    .my-md-n1 {
        margin-bottom: -.25rem !important
    }
    .ml-md-n1,
    .mx-md-n1 {
        margin-left: -.25rem !important
    }
    .m-md-n2 {
        margin: -.5rem !important
    }
    .mt-md-n2,
    .my-md-n2 {
        margin-top: -.5rem !important
    }
    .mr-md-n2,
    .mx-md-n2 {
        margin-right: -.5rem !important
    }
    .mb-md-n2,
    .my-md-n2 {
        margin-bottom: -.5rem !important
    }
    .ml-md-n2,
    .mx-md-n2 {
        margin-left: -.5rem !important
    }
    .m-md-n3 {
        margin: -1rem !important
    }
    .mt-md-n3,
    .my-md-n3 {
        margin-top: -1rem !important
    }
    .mr-md-n3,
    .mx-md-n3 {
        margin-right: -1rem !important
    }
    .mb-md-n3,
    .my-md-n3 {
        margin-bottom: -1rem !important
    }
    .ml-md-n3,
    .mx-md-n3 {
        margin-left: -1rem !important
    }
    .m-md-n4 {
        margin: -1.5rem !important
    }
    .mt-md-n4,
    .my-md-n4 {
        margin-top: -1.5rem !important
    }
    .mr-md-n4,
    .mx-md-n4 {
        margin-right: -1.5rem !important
    }
    .mb-md-n4,
    .my-md-n4 {
        margin-bottom: -1.5rem !important
    }
    .ml-md-n4,
    .mx-md-n4 {
        margin-left: -1.5rem !important
    }
    .m-md-n5 {
        margin: -3rem !important
    }
    .mt-md-n5,
    .my-md-n5 {
        margin-top: -3rem !important
    }
    .mr-md-n5,
    .mx-md-n5 {
        margin-right: -3rem !important
    }
    .mb-md-n5,
    .my-md-n5 {
        margin-bottom: -3rem !important
    }
    .ml-md-n5,
    .mx-md-n5 {
        margin-left: -3rem !important
    }
    .m-md-auto {
        margin: auto !important
    }
    .mt-md-auto,
    .my-md-auto {
        margin-top: auto !important
    }
    .mr-md-auto,
    .mx-md-auto {
        margin-right: auto !important
    }
    .mb-md-auto,
    .my-md-auto {
        margin-bottom: auto !important
    }
    .ml-md-auto,
    .mx-md-auto {
        margin-left: auto !important
    }
}

@media (min-width:992px) {
    .m-lg-0 {
        margin: 0 !important
    }
    .mt-lg-0,
    .my-lg-0 {
        margin-top: 0 !important
    }
    .mr-lg-0,
    .mx-lg-0 {
        margin-right: 0 !important
    }
    .mb-lg-0,
    .my-lg-0 {
        margin-bottom: 0 !important
    }
    .ml-lg-0,
    .mx-lg-0 {
        margin-left: 0 !important
    }
    .m-lg-1 {
        margin: .25rem !important
    }
    .mt-lg-1,
    .my-lg-1 {
        margin-top: .25rem !important
    }
    .mr-lg-1,
    .mx-lg-1 {
        margin-right: .25rem !important
    }
    .mb-lg-1,
    .my-lg-1 {
        margin-bottom: .25rem !important
    }
    .ml-lg-1,
    .mx-lg-1 {
        margin-left: .25rem !important
    }
    .m-lg-2 {
        margin: .5rem !important
    }
    .mt-lg-2,
    .my-lg-2 {
        margin-top: .5rem !important
    }
    .mr-lg-2,
    .mx-lg-2 {
        margin-right: .5rem !important
    }
    .mb-lg-2,
    .my-lg-2 {
        margin-bottom: .5rem !important
    }
    .ml-lg-2,
    .mx-lg-2 {
        margin-left: .5rem !important
    }
    .m-lg-3 {
        margin: 1rem !important
    }
    .mt-lg-3,
    .my-lg-3 {
        margin-top: 1rem !important
    }
    .mr-lg-3,
    .mx-lg-3 {
        margin-right: 1rem !important
    }
    .mb-lg-3,
    .my-lg-3 {
        margin-bottom: 1rem !important
    }
    .ml-lg-3,
    .mx-lg-3 {
        margin-left: 1rem !important
    }
    .m-lg-4 {
        margin: 1.5rem !important
    }
    .mt-lg-4,
    .my-lg-4 {
        margin-top: 1.5rem !important
    }
    .mr-lg-4,
    .mx-lg-4 {
        margin-right: 1.5rem !important
    }
    .mb-lg-4,
    .my-lg-4 {
        margin-bottom: 1.5rem !important
    }
    .ml-lg-4,
    .mx-lg-4 {
        margin-left: 1.5rem !important
    }
    .m-lg-5 {
        margin: 3rem !important
    }
    .mt-lg-5,
    .my-lg-5 {
        margin-top: 3rem !important
    }
    .mt-lg-6,
    .my-lg-6 {
        margin-top: 5rem !important
    }
    .mt-lg-c {
        margin-top: 25px!important;
    }
    .mr-lg-5,
    .mx-lg-5 {
        margin-right: 3rem !important
    }
    .mb-lg-5,
    .my-lg-5 {
        margin-bottom: 3rem !important
    }
    .mb-lg-6,
    .my-lg-6 {
        margin-bottom: 5rem !important
    }
    .ml-lg-5,
    .mx-lg-5 {
        margin-left: 3rem !important
    }
    .p-lg-0 {
        padding: 0 !important
    }
    .pt-lg-0,
    .py-lg-0 {
        padding-top: 0 !important
    }
    .pr-lg-0,
    .px-lg-0 {
        padding-right: 0 !important
    }
    .pb-lg-0,
    .py-lg-0 {
        padding-bottom: 0 !important
    }
    .pl-lg-0,
    .px-lg-0 {
        padding-left: 0 !important
    }
    .p-lg-1 {
        padding: .25rem !important
    }
    .pt-lg-1,
    .py-lg-1 {
        padding-top: .25rem !important
    }
    .pr-lg-1,
    .px-lg-1 {
        padding-right: .25rem !important
    }
    .pb-lg-1,
    .py-lg-1 {
        padding-bottom: .25rem !important
    }
    .pl-lg-1,
    .px-lg-1 {
        padding-left: .25rem !important
    }
    .p-lg-2 {
        padding: .5rem !important
    }
    .pt-lg-2,
    .py-lg-2 {
        padding-top: .5rem !important
    }
    .pr-lg-2,
    .px-lg-2 {
        padding-right: .5rem !important
    }
    .pb-lg-2,
    .py-lg-2 {
        padding-bottom: .5rem !important
    }
    .pl-lg-2,
    .px-lg-2 {
        padding-left: .5rem !important
    }
    .p-lg-3 {
        padding: 1rem !important
    }
    .pt-lg-3,
    .py-lg-3 {
        padding-top: 1rem !important
    }
    .pr-lg-3,
    .px-lg-3 {
        padding-right: 1rem !important
    }
    .pb-lg-3,
    .py-lg-3 {
        padding-bottom: 1rem !important
    }
    .pl-lg-3,
    .px-lg-3 {
        padding-left: 1rem !important
    }
    .p-lg-4 {
        padding: 1.5rem !important
    }
    .pt-lg-4,
    .py-lg-4 {
        padding-top: 1.5rem !important
    }
    .pr-lg-4,
    .px-lg-4 {
        padding-right: 1.5rem !important
    }
    .pb-lg-4,
    .py-lg-4 {
        padding-bottom: 1.5rem !important
    }
    .pl-lg-4,
    .px-lg-4 {
        padding-left: 1.5rem !important
    }
    .p-lg-5 {
        padding: 3rem !important
    }
    .pt-lg-5,
    .py-lg-5 {
        padding-top: 3rem !important
    }
    .pt-lg-6,
    .py-lg-6 {
        padding-top: 5rem !important
    }
    .pr-lg-5,
    .px-lg-5 {
        padding-right: 3rem !important
    }
    .pb-lg-5,
    .py-lg-5 {
        padding-bottom: 3rem !important
    }
    .pb-lg-6,
    .py-lg-6 {
        padding-bottom: 5rem !important
    }
    .pl-lg-5,
    .px-lg-5 {
        padding-left: 3rem !important
    }
    .m-lg-n1 {
        margin: -.25rem !important
    }
    .mt-lg-n1,
    .my-lg-n1 {
        margin-top: -.25rem !important
    }
    .mr-lg-n1,
    .mx-lg-n1 {
        margin-right: -.25rem !important
    }
    .mb-lg-n1,
    .my-lg-n1 {
        margin-bottom: -.25rem !important
    }
    .ml-lg-n1,
    .mx-lg-n1 {
        margin-left: -.25rem !important
    }
    .m-lg-n2 {
        margin: -.5rem !important
    }
    .mt-lg-n2,
    .my-lg-n2 {
        margin-top: -.5rem !important
    }
    .mr-lg-n2,
    .mx-lg-n2 {
        margin-right: -.5rem !important
    }
    .mb-lg-n2,
    .my-lg-n2 {
        margin-bottom: -.5rem !important
    }
    .ml-lg-n2,
    .mx-lg-n2 {
        margin-left: -.5rem !important
    }
    .m-lg-n3 {
        margin: -1rem !important
    }
    .mt-lg-n3,
    .my-lg-n3 {
        margin-top: -1rem !important
    }
    .mr-lg-n3,
    .mx-lg-n3 {
        margin-right: -1rem !important
    }
    .mb-lg-n3,
    .my-lg-n3 {
        margin-bottom: -1rem !important
    }
    .ml-lg-n3,
    .mx-lg-n3 {
        margin-left: -1rem !important
    }
    .m-lg-n4 {
        margin: -1.5rem !important
    }
    .mt-lg-n4,
    .my-lg-n4 {
        margin-top: -1.5rem !important
    }
    .mr-lg-n4,
    .mx-lg-n4 {
        margin-right: -1.5rem !important
    }
    .mb-lg-n4,
    .my-lg-n4 {
        margin-bottom: -1.5rem !important
    }
    .ml-lg-n4,
    .mx-lg-n4 {
        margin-left: -1.5rem !important
    }
    .m-lg-n5 {
        margin: -3rem !important
    }
    .mt-lg-n5,
    .my-lg-n5 {
        margin-top: -3rem !important
    }
    .mr-lg-n5,
    .mx-lg-n5 {
        margin-right: -3rem !important
    }
    .mb-lg-n5,
    .my-lg-n5 {
        margin-bottom: -3rem !important
    }
    .ml-lg-n5,
    .mx-lg-n5 {
        margin-left: -3rem !important
    }
    .m-lg-auto {
        margin: auto !important
    }
    .mt-lg-auto,
    .my-lg-auto {
        margin-top: auto !important
    }
    .mr-lg-auto,
    .mx-lg-auto {
        margin-right: auto !important
    }
    .mb-lg-auto,
    .my-lg-auto {
        margin-bottom: auto !important
    }
    .ml-lg-auto,
    .mx-lg-auto {
        margin-left: auto !important
    }
}

@media (min-width:1200px) {
    .m-xl-0 {
        margin: 0 !important
    }
    .mt-xl-0,
    .my-xl-0 {
        margin-top: 0 !important
    }
    .mr-xl-0,
    .mx-xl-0 {
        margin-right: 0 !important
    }
    .mb-xl-0,
    .my-xl-0 {
        margin-bottom: 0 !important
    }
    .ml-xl-0,
    .mx-xl-0 {
        margin-left: 0 !important
    }
    .m-xl-1 {
        margin: .25rem !important
    }
    .mt-xl-1,
    .my-xl-1 {
        margin-top: .25rem !important
    }
    .mr-xl-1,
    .mx-xl-1 {
        margin-right: .25rem !important
    }
    .mb-xl-1,
    .my-xl-1 {
        margin-bottom: .25rem !important
    }
    .ml-xl-1,
    .mx-xl-1 {
        margin-left: .25rem !important
    }
    .m-xl-2 {
        margin: .5rem !important
    }
    .mt-xl-2,
    .my-xl-2 {
        margin-top: .5rem !important
    }
    .mr-xl-2,
    .mx-xl-2 {
        margin-right: .5rem !important
    }
    .mb-xl-2,
    .my-xl-2 {
        margin-bottom: .5rem !important
    }
    .ml-xl-2,
    .mx-xl-2 {
        margin-left: .5rem !important
    }
    .m-xl-3 {
        margin: 1rem !important
    }
    .mt-xl-3,
    .my-xl-3 {
        margin-top: 1rem !important
    }
    .mr-xl-3,
    .mx-xl-3 {
        margin-right: 1rem !important
    }
    .mb-xl-3,
    .my-xl-3 {
        margin-bottom: 1rem !important
    }
    .ml-xl-3,
    .mx-xl-3 {
        margin-left: 1rem !important
    }
    .m-xl-4 {
        margin: 1.5rem !important
    }
    .mt-xl-4,
    .my-xl-4 {
        margin-top: 1.5rem !important
    }
    .mr-xl-4,
    .mx-xl-4 {
        margin-right: 1.5rem !important
    }
    .mb-xl-4,
    .my-xl-4 {
        margin-bottom: 1.5rem !important
    }
    .ml-xl-4,
    .mx-xl-4 {
        margin-left: 1.5rem !important
    }
    .m-xl-5 {
        margin: 3rem !important
    }
    .mt-xl-5,
    .my-xl-5 {
        margin-top: 3rem !important
    }
    .mt-xl-6,
    .my-xl-6 {
        margin-top: 5rem !important
    }
    .mr-xl-5,
    .mx-xl-5 {
        margin-right: 3rem !important
    }
    .mb-xl-5,
    .my-xl-5 {
        margin-bottom: 3rem !important
    }
    .mb-xl-6,
    .my-xl-6 {
        margin-bottom: 5rem !important
    }
    .ml-xl-5,
    .mx-xl-5 {
        margin-left: 3rem !important
    }
    .p-xl-0 {
        padding: 0 !important
    }
    .pt-xl-0,
    .py-xl-0 {
        padding-top: 0 !important
    }
    .pr-xl-0,
    .px-xl-0 {
        padding-right: 0 !important
    }
    .pb-xl-0,
    .py-xl-0 {
        padding-bottom: 0 !important
    }
    .pl-xl-0,
    .px-xl-0 {
        padding-left: 0 !important
    }
    .p-xl-1 {
        padding: .25rem !important
    }
    .pt-xl-1,
    .py-xl-1 {
        padding-top: .25rem !important
    }
    .pr-xl-1,
    .px-xl-1 {
        padding-right: .25rem !important
    }
    .pb-xl-1,
    .py-xl-1 {
        padding-bottom: .25rem !important
    }
    .pl-xl-1,
    .px-xl-1 {
        padding-left: .25rem !important
    }
    .p-xl-2 {
        padding: .5rem !important
    }
    .pt-xl-2,
    .py-xl-2 {
        padding-top: .5rem !important
    }
    .pr-xl-2,
    .px-xl-2 {
        padding-right: .5rem !important
    }
    .pb-xl-2,
    .py-xl-2 {
        padding-bottom: .5rem !important
    }
    .pl-xl-2,
    .px-xl-2 {
        padding-left: .5rem !important
    }
    .p-xl-3 {
        padding: 1rem !important
    }
    .pt-xl-3,
    .py-xl-3 {
        padding-top: 1rem !important
    }
    .pr-xl-3,
    .px-xl-3 {
        padding-right: 1rem !important
    }
    .pb-xl-3,
    .py-xl-3 {
        padding-bottom: 1rem !important
    }
    .pl-xl-3,
    .px-xl-3 {
        padding-left: 1rem !important
    }
    .p-xl-4 {
        padding: 1.5rem !important
    }
    .pt-xl-4,
    .py-xl-4 {
        padding-top: 1.5rem !important
    }
    .pr-xl-4,
    .px-xl-4 {
        padding-right: 1.5rem !important
    }
    .pb-xl-4,
    .py-xl-4 {
        padding-bottom: 1.5rem !important
    }
    .pl-xl-4,
    .px-xl-4 {
        padding-left: 1.5rem !important
    }
    .p-xl-5 {
        padding: 3rem !important
    }
    .pt-xl-5,
    .py-xl-5 {
        padding-top: 3rem !important
    }
    .pt-xl-6,
    .py-xl-6 {
        padding-top: 5rem !important
    }
    .pr-xl-5,
    .px-xl-5 {
        padding-right: 3rem !important
    }
    .pb-xl-5,
    .py-xl-5 {
        padding-bottom: 3rem !important
    }
    .pb-xl-6,
    .py-xl-6 {
        padding-bottom: 5rem !important
    }
    .pl-xl-5,
    .px-xl-5 {
        padding-left: 3rem !important
    }
    .m-xl-n1 {
        margin: -.25rem !important
    }
    .mt-xl-n1,
    .my-xl-n1 {
        margin-top: -.25rem !important
    }
    .mr-xl-n1,
    .mx-xl-n1 {
        margin-right: -.25rem !important
    }
    .mb-xl-n1,
    .my-xl-n1 {
        margin-bottom: -.25rem !important
    }
    .ml-xl-n1,
    .mx-xl-n1 {
        margin-left: -.25rem !important
    }
    .m-xl-n2 {
        margin: -.5rem !important
    }
    .mt-xl-n2,
    .my-xl-n2 {
        margin-top: -.5rem !important
    }
    .mr-xl-n2,
    .mx-xl-n2 {
        margin-right: -.5rem !important
    }
    .mb-xl-n2,
    .my-xl-n2 {
        margin-bottom: -.5rem !important
    }
    .ml-xl-n2,
    .mx-xl-n2 {
        margin-left: -.5rem !important
    }
    .m-xl-n3 {
        margin: -1rem !important
    }
    .mt-xl-n3,
    .my-xl-n3 {
        margin-top: -1rem !important
    }
    .mr-xl-n3,
    .mx-xl-n3 {
        margin-right: -1rem !important
    }
    .mb-xl-n3,
    .my-xl-n3 {
        margin-bottom: -1rem !important
    }
    .ml-xl-n3,
    .mx-xl-n3 {
        margin-left: -1rem !important
    }
    .m-xl-n4 {
        margin: -1.5rem !important
    }
    .mt-xl-n4,
    .my-xl-n4 {
        margin-top: -1.5rem !important
    }
    .mr-xl-n4,
    .mx-xl-n4 {
        margin-right: -1.5rem !important
    }
    .mb-xl-n4,
    .my-xl-n4 {
        margin-bottom: -1.5rem !important
    }
    .ml-xl-n4,
    .mx-xl-n4 {
        margin-left: -1.5rem !important
    }
    .m-xl-n5 {
        margin: -3rem !important
    }
    .mt-xl-n5,
    .my-xl-n5 {
        margin-top: -3rem !important
    }
    .mr-xl-n5,
    .mx-xl-n5 {
        margin-right: -3rem !important
    }
    .mb-xl-n5,
    .my-xl-n5 {
        margin-bottom: -3rem !important
    }
    .ml-xl-n5,
    .mx-xl-n5 {
        margin-left: -3rem !important
    }
    .m-xl-auto {
        margin: auto !important
    }
    .mt-xl-auto,
    .my-xl-auto {
        margin-top: auto !important
    }
    .mr-xl-auto,
    .mx-xl-auto {
        margin-right: auto !important
    }
    .mb-xl-auto,
    .my-xl-auto {
        margin-bottom: auto !important
    }
    .ml-xl-auto,
    .mx-xl-auto {
        margin-left: auto !important
    }
}
	
#ball,
#magic-cursor {
    pointer-events: none
}

#ball p,
.full-container {
    position: relative;
    overflow: hidden
}

#ball i,
#ball.with-icon i {
    width: 76px
}

.inner,
.preloader-wrap .inner {
    vertical-align: middle
}

.outer {
    display: table;
    width: 100%;
    height: 100%
}

.inner {
    display: table-cell;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

#ball,
#ball i.arrow-icon,
#ball-drag-x,
#ball-drag-y,
#ball-loader,
.content-row,
.preloader-wrap .inner,
.preloader-wrap .outer,
i.arrow-icon {
    box-sizing: border-box
}

.dark-section-wrapper,
.full,
.light-section-wrapper {
    position: relative;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    max-width: 1000% !important;
    width: 100vw !important
}
.show-loader .dark-section-wrapper {
    background-color: #000!important
}
.show-loader .light-section-wrapper {
    background-color: #fff!important
}

.content-row,
.large,
.small {
    margin: 0 auto
}

.dark-section-container,
.light-section-container {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto
}

.content-row {
    position: relative;
    width: 100%;
    z-index: 1;
    opacity: 1
}
.content-max-width {
    box-sizing: border-box;
    padding-left: 80px;
    padding-right: 80px;
    max-width: 1600px;
    margin: 0 auto;
}

.content-full-width {
    box-sizing: border-box;
    padding-left: 80px;
    padding-right: 80px;
    max-width: 100%
}
.content-margin-left {
    margin-left: 34vw;
    width: 66vw;
	height: 100%;
    padding-right: 80px;
	position: relative;
	box-sizing: border-box;
}

#main-page-content.first .content-row.first {
    padding-top: 220px;
}

.content-row::after {
    clear: both;
    content: " ";
    display: table
}

.full-container {
    width: 100%;
    max-width: 100vw;
    height: auto
}

.small {
    max-width: 1024px;
    width: 100%
}

.large {
    max-width: 1380px;
    width: 100%
}

.row_padding_top {
    padding-top: 8vw
}
.home-first.row_padding_top {
    padding-top: calc(8vw + 20vh)
}
@media only screen and (orientation: portrait) {
    .home-first.row_padding_top {
        padding-top: calc(8vw + 15vh)
    }
}

.row_padding_bottom {
    padding-bottom: 8vw
}

.row_padding_left {
    padding-left: 80px
}

.row_padding_right {
    padding-right: 80px
}

.row_padding_all {
    padding: 4vw 80px
}

#rotate-device {
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    background-color: #111;
    background-image: url(images/rotate.png);
    background-size: 100px 100px;
    background-position: center;
    background-repeat: no-repeat;
    display: none
}

i.arrow-icon {
    border: solid #000;
    border-width: 0 3px 3px 0;
    display: block;
    position: relative;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px
}

.dark-content .item i.arrow-icon,
.light-content i.arrow-icon {
    border: solid #fff;
    border-width: 0 3px 3px 0
}

.dark-content .change-header i.arrow-icon,
.light-content .change-header i.arrow-icon {
    border: solid #000;
    border-width: 0 3px 3px 0
}

i.arrow-icon::after {
    content: "";
    position: absolute;
    width: 28px;
    height: 3px;
    top: 7px;
    left: -6px;
    background-color: #000;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg)
}

.dark-content .item i.arrow-icon::after,
.light-content #ball i.arrow-icon:after,
.light-content .change-header i.arrow-icon::after,
.light-content i.arrow-icon:after {
    background-color: #fff
}

.dark-content .change-header i.arrow-icon::after,
.light-content .change-header i.arrow-icon::after {
    background-color: #000
}

#magic-cursor {
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 30px;
    z-index: 10000;
    -webkit-transition: opacity .2s ease-in-out .5s;
    transition: opacity .2s ease-in-out .5s
}
.hidden-ball #magic-cursor {
    opacity: 0 !important;
    visibility: hidden
}

#ajax-loader {
    position: fixed;
    width: 60px;
    height: 60px;
    border: 2px solid #999;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    pointer-events: none;
    z-index: 10000;
    opacity: 0;
    display: none;
    box-sizing: border-box;
    -webkit-transition: opacity 0.2s ease-in-out 0.1s;
    transition: opacity 0.2s ease-in-out 0.1s;
}
.touch #ajax-loader {
    display: block;
}
.ajax-loader {
    width: 80px;
    height: 80px;
    position: absolute;
    background-color: transparent;
    border-right: 2px solid transparent;
    border-bottom: 2px solid #999;
    border-left: 2px solid transparent;
    border-top: 2px solid transparent;
    border-radius: 80px;
    box-sizing: border-box;
    opacity: 0;
    -webkit-transform: translate(-12px, -12px) rotate(0deg);
    transform: translate(-12px, -12px) rotate(0deg);
    -webkit-animation: rotating-2 0.8s ease-in-out infinite;
    animation: rotating-2 0.8s ease-in-out infinite;
    -webkit-transition: opacity 0.2 ease-in-out 0;
    transition: opacity 0.2 ease-in-out 0;
}
.touch .show-loader #ajax-loader,
.touch .show-loader .ajax-loader {
    opacity: 1;
}

#ball {
    position: fixed;
    width: 80px;
    height: 80px;
    border: 2px solid transparent;
    border-radius: 50%;
    pointer-events: none;
    opacity: 1;
    box-sizing: border-box;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    -webkit-transition: border-color 0.2s ease-in-out 0;
    transition: border-color 0.2s ease-in-out 0;
}
.show-loader #ball {
    border-color: #999!important;
}

.mfp-zoom-out-cur #ball {
    opacity: 0;
    -webkit-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out
}

#ball::after,
#ball:before {
    text-align: center;
    transition: .15s cubic-bezier(.215, .61, .355, 1);
    color: #999;
    opacity: 0;
    position: absolute;
    left: 32px
}

#ball-loader,
.light-content #ball-loader {
    border-bottom: 4px solid #999
}

#ball:before {
    font: var(--fa-font-solid);
    content: "\f106";
    font-size: 14px;
    width: 8px;
    height: 16px;
    line-height: 16px;
    top: -42px;
    transform: translateY(-20px);
    -webkit-transform: translateY(-20px)
}

#ball-drag-x::before,
#ball::after {
    font: var(--fa-font-solid);
    width: 8px;
    height: 16px
}

#ball::after {
    content: "\f107";
    font-size: 14px;
    line-height: 16px;
    top: 100px;
    transform: translateY(20px);
    -webkit-transform: translateY(20px)
}

.light-content #ball:after,
.light-content #ball:before {
    color: #999
}

#ball i,
#ball p,
#ball.over-movie i,
.drag-cursor-white #ball i,
.drag-cursor-white #ball-drag-x:after,
.drag-cursor-white #ball-drag-x:before,
.drag-cursor-white #ball.with-icon i,
.light-content #ball i,
.light-content #ball p,
.light-content #ball-drag-x:after,
.light-content #ball-drag-x:before,
.light-content #ball-drag-y:after,
.light-content #ball-drag-y:before,
.light-content #ball.with-icon i,
.scale-drag-horizontal #ball:after,
.scale-drag-horizontal #ball:before {
    color: #fff
}

.scale-drag-horizontal #ball:after,
.scale-drag-horizontal #ball:before,
.scale-up #ball:after,
.scale-up #ball:before {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    transition: .3s cubic-bezier(.215, .61, .355, 1)
}

.scale-up.scale-drag #ball-drag-x:after,
.scale-up.scale-drag #ball-drag-x:before,
.scale-up.scale-drag #ball-drag-y:after,
.scale-up.scale-drag #ball-drag-y:before,
.scale-up.scale-none #ball:after,
.scale-up.scale-none #ball:before {
    opacity: 0
}

#ball-drag-x,
#ball-drag-y {
    position: absolute;
    width: 72px;
    height: 72px;
    pointer-events: none;
    opacity: 1
}

#ball-drag-x::before {
    content: "\f053";
    font-size: 14px;
    line-height: 16px;
    text-align: center;
    position: absolute;
    left: -37px;
    top: 30px;
    color: #000;
    opacity: 0;
    transform: translateX(-20px);
    -webkit-transform: translateX(-20px);
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#ball-drag-x::after,
#ball-drag-y:before {
    font: var(--fa-font-solid);
    width: 8px;
    color: #000;
    height: 16px;
    transition: .2s cubic-bezier(.215, .61, .355, 1);
    opacity: 0;
    position: absolute;
    text-align: center
}

#ball-drag-x::after {
    content: "\f054";
    font-size: 14px;
    line-height: 16px;
    right: -40px;
    left: auto;
    top: 30px;
    transform: translateX(20px);
    -webkit-transform: translateX(20px)
}

.cursor-black #ball.over-movie i,
.cursor-black #ball.with-icon i,
.drag-cursor-black #ball i,
.drag-cursor-black #ball-drag-x:after,
.drag-cursor-black #ball-drag-x:before,
.drag-cursor-black #ball.with-icon i,
.light-content #ball.with-icon.dark-icon i {
    color: #000
}

.scale-drag-x #ball-drag-x:after,
.scale-drag-x #ball-drag-x:before {
    opacity: 1;
    transform: translateX(0);
    -webkit-transform: translateX(0);
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#ball-drag-y:before {
    content: "\f077";
    font-size: 14px;
    line-height: 16px;
    left: 32px;
    top: -40px;
    transform: translateY(-20px);
    -webkit-transform: translateY(-20px)
}

#ball-drag-y::after {
    font: var(--fa-font-solid);
    content: "\f078";
    font-size: 14px;
    width: 8px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    position: absolute;
    left: 32px;
    top: 100px;
    color: #000;
    opacity: 0;
    transform: translateY(20px);
    -webkit-transform: translateY(20px);
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

.percentage,
.percentage-intro,
.percentage::after {
    line-height: 20px;
    color: rgba(255, 255, 255, 1)
}

.scale-drag-y #ball-drag-y:after,
.scale-drag-y #ball-drag-y:before {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#ball i {
    height: 80px;
    line-height: 78px;
    text-align: center;
    font-size: 14px;
    display: block;
    opacity: 1;
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#ball p {
    width: 66px;
    height: 16px;
    line-height: 16px;
    padding-top: 0;
    padding-left: 5px;
    margin: 0;
    text-align: center;
    font-size: 11px;
    font-weight: 600;
    display: block !important;
    opacity: 1;
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#ball p.first {
    padding-top: 22px
}

.scale-up #ball i {
    opacity: 0;
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#ball.over-movie i.fa-pause,
#ball.over-movie.pause-movie i.fa-play,
#ball.with-icon i:nth-child(2),
.disable-ajaxload .preloader-wrap,
.disable-cursor #magic-cursor,
.touch #magic-cursor {
    display: none
}

#ball.close-icon i {
    width: 75px;
    height: 76px;
    font-size: 14px
}

#ball.over-movie i.fa-play,
#ball.over-movie.pause-movie i.fa-pause {
    display: block
}

#ball-loader {
    width: 100px;
    height: 100px;
    position: absolute;
    background-color: transparent;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    border-top: 4px solid transparent;
    border-radius: 100px;
    opacity: 0;
    -webkit-transform: translate(-14px, -14px) rotate(0);
    transform: translate(-14px, -14px) rotate(0);
    -webkit-animation: .8s ease-in-out infinite rotating;
    animation: .8s ease-in-out infinite rotating;
    -webkit-transition: opacity ease-in-out;
    transition: opacity ease-in-out
}

.show-loader #ball-loader {
    opacity: 1!important;
    -webkit-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out
}

@keyframes rotating {
    0% {
        -webkit-transform: translate(-14px, -14px) rotate(0);
        transform: translate(-14px, -14px)) rotate(0)
    }
    95% {
        -webkit-transform: translate(-14px, -14px) rotate(350deg);
        transform: translate(-14px, -14px) rotate(350deg)
    }
    100% {
        -webkit-transform: translate(-14px, -14px) rotate(360deg);
        transform: translate(-14px, -14px) rotate(360deg)
    }
}
@keyframes rotating-2 {
    0% {
        -webkit-transform: translate(-12px, -12px) rotate(0);
        transform: translate(-12px, -12px)) rotate(0)
    }
    95% {
        -webkit-transform: translate(-12px, -12px) rotate(350deg);
        transform: translate(-12px, -12px) rotate(350deg)
    }
    100% {
        -webkit-transform: translate(-12px, -12px) rotate(360deg);
        transform: translate(-12px, -12px) rotate(360deg)
    }
}

.scale-drag .move-title,
.scale-drag a,
.scale-up #burger-wrapper,
.scale-up .button-wrap,
.scale-up .disable-drag,
.scale-up .hide-ball,
.scale-up a,
.show-loader a,
.show-loader nav,
scale-up .link {
    pointer-events: none !important
}

#ball i.arrow-icon {
    border: solid #000;
    border-width: 3px 3px 0 0;
    display: block;
    position: absolute;
    top: 28px;
    left: 30px;
    height: 20px;
    width: 20px
}

.light-content #ball i.arrow-icon {
    border: solid #fff;
    border-width: 3px 3px 0 0
}

#ball i.arrow-icon:after {
    content: "";
    position: absolute;
    width: 30px;
    height: 3px;
    top: 8px;
    left: -8px;
    background-color: #000;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg)
}

.preloader-wrap {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    bottom: 0;
    background-color: #000;
    z-index: 1800;
    text-align: center
}

.percentage-intro,
.percentage-wrapper {
    position: absolute;
    margin-bottom: 20px;
    bottom: 40px;
    height: 20px
}

.preloader-wrap .outer {
    padding: 0
}

.percentage-wrapper {
    right: 80px
}

.percentage-intro {
    left: 80px;
    font-weight: 600
}

.percentage {
    opacity: 1;
    font-weight: 600;
    width: 30px;
    height: 100px;
    display: table;
    margin: 0 auto
}

.percentage::after {
    content: "%";
    width: 20px;
    height: 20px;
}
.trackbar {
    width: auto;
    height: inherit;
    margin: 0 auto;
    display: table;
    position: relative;
    padding: 20px;
    opacity: 1
}

.loadbar {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden
}

.hold-progress-bar {
    width: 0%;
    height: 0;
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    overflow: hidden
}

.preloader-intro {
    position: relative;
    display: block;
}
.preloader-intro img {
    width: 80vw;
    max-width: 1024px;
}
	
#header-container,
header {
    box-sizing: border-box;
    width: 100%
}

#burger-wrapper,
#logo,
nav.open {
    pointer-events: initial
}

#logo a.disable,
.burger-dots #menu-burger,
.open #logo a,
header,
nav {
    pointer-events: none
}

header {
    height: 120px;
    left: 0;
    top: 0;
    background: rgba(255, 255, 255, 0);
    position: fixed;
    z-index: 1000;
    -webkit-transition: background .1s ease-in-out 0s, border-color .1s ease-in-out 0s, top .7s;
    transition: background .1s ease-in-out 0s, border-color .1s ease-in-out 0s, top .7s
}
header.white-header {
    background: rgba(30, 36, 40, 1)!important;
}

header.home-header.white-header,
header.scrol,
header.wbg.autocenter-scrol {
    top: -105%
}

#header-container {
    height: inherit;
    padding: 20px 80px;
    margin: 0 auto;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    flex-flow: nowrap row;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    z-index: 20;
    opacity: 0
}

#logo img.black-logo,
.dark-content .white-header.dark-content #logo img.black-logo,
.dark-content-header #logo img.black-logo,
.fullscreen-menu.dark-content .dark-content-header #logo img.black-logo,
.fullscreen-menu.light-content .dark-content-header #logo img.white-logo,
.header-visible #header-container,
.light-content #logo img.white-logo,
.light-content .white-header.over-white-section #logo img.white-logo,
.light-content-header #logo img.white-logo,
.menu-open.light-content .slide-in #logo img.white-logo,
.show-loader1 .light-content .white-header #logo img.white-logo,
.white-header #logo img.white-logo {
    opacity: 1
}

#countdown-wrapper {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    background: #282828;
    color: #959ea3;
    font-size: 12px;
    z-index: 1;
    padding: 8px 16px;
    text-align: center;
    min-width: 278px;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
}
#countdown-wrapper #countdown {
    display: inline-block;
}

#logo {
    position: relative;
    z-index: 10
}

#logo a {
    display: block;
    -webkit-transition: transform .5s ease-in-out .1s;
    transition: transform .5s ease-in-out .1s
}

#logo img {
    -webkit-transition: opacity .15s ease-in-out;
    width: auto
}

#logo img {
    display: block;
    height: 70px;
    max-width: none;
    transition: opacity .15s ease-in-out
}

.dark-content .white-header.dark-content #logo img.white-logo,
.dark-content-header #logo img.white-logo,
.fullscreen-menu.dark-content .dark-content-header #logo img.white-logo,
.fullscreen-menu.light-content .dark-content-header #logo img.black-logo,
.light-content #logo img.black-logo,
.light-content-header #logo img.black-logo {
    opacity: 0
}

#logo img.white-logo {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.dark-content header.dark-content.over-white-section #logo img.white-logo {
    opacity: 0 !important
}

.dark-content-header .button-text,
.fullscreen-menu.dark-content .light-content-header .button-text {
    color: #000 !important
}

.dark-content header.dark-content.over-white-section #logo img.black-logo {
    opacity: 1 !important
}

@media only screen and (min-width:1025px) {
    .classic-menu .flexnav,
    .classic-menu nav {
        width: auto;
        display: block;
        position: relative
    }
    .classic-menu .before-span,
    .classic-menu .menu-timeline {
        transform: translateY(0) !important;
        opacity: 1 !important
    }
    .classic-menu nav {
        top: 0;
        -webkit-transition: .2s ease-in-out .5s;
        transition: .2s ease-in-out .5s;
        height: 60px!important;
        margin: 10px auto;
        background-color: transparent !important
    }
    .classic-menu .flexnav {
        max-height: 60px
    }
    .classic-menu .flexnav .touch-button {
        background: 0 0;
        display: none
    }
    .classic-menu .flexnav li ul li a.link::before,
    .flexnav .touch-button .navicon,
    .fullscreen-menu .flexnav .touch-button .navicon,
    .fullscreen-menu .flexnav a.link::before,
    .fullscreen-menu .flexnav li ul:after {
        display: none
    }
    .classic-menu .flexnav li {
        background: 0 0;
        padding: 20px 15px
    }
    .classic-menu .flexnav li::after {
        content: '/';
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: -5px;
        font-family: "Open Sans";
    }
    .classic-menu .flexnav li:last-child::after {
        display: none;
    }
    .classic-menu .menu-timeline {
        pointer-events: initial
    }
    .classic-menu .flexnav li:last-child {
        padding-right: 0
    }
    .classic-menu .flexnav li a {
        background: 0 0;
        padding: 0 5px;
        position: relative;
        border-left: none;
        color: #282828;
        font-size: 14px;
        font-weight: 400;
        line-height: 20px;
        display: block;
        overflow: hidden;
        -webkit-transition: .15s ease-in-out;
        transition: .15s ease-in-out
    }
    .no-touch .classic-menu .flexnav:hover li a,
    .no-touch .classic-menu .flexnav:hover li::after {
        opacity: .4
    }
    .classic-menu.white-header .flexnav li a,
    .fullscreen-menu.invert-header .flexnav li a,
    .fullscreen-menu.light-content .flexnav li a,
    .light-content .classic-menu .flexnav li a,
    .light-content .classic-menu .flexnav li::after,
    .no-touch .classic-menu .flexnav li:hover a,
    .no-touch .light-content .classic-menu .flexnav li:hover a {
        opacity: 1;
        color: #fff
    }
    .fullscreen-menu.invert-header.dark-content .flexnav li a,
    .no-touch .classic-menu .flexnav li:hover a {
        opacity: 1;
        color: #282828
    }
    .classic-menu .flexnav li a span {
        position: relative;
        display: block;
        -webkit-transition: -webkit-transform .2s;
        transition: transform .2s;
        transform-origin: 100% 0%
    }
    .classic-menu .flexnav li a span::before,
    .fullscreen-menu .flexnav li a span::before {
        position: absolute;
        top: 100%;
        width: 100%;
        left: 0;
        content: attr(data-hover)
    }
    .classic-menu .flexnav li ul:after,
    .classic-menu .flexnav ul li ul:after {
        content: '';
        position: absolute;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 10px 9px;
        border-color: transparent transparent #000;
        display: block
    }
    .no-touch .classic-menu .flexnav li:hover a span,
    .no-touch .fullscreen-menu .flexnav li:hover a span {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
        transform-origin: 0% 0%
    }
    .classic-menu .flexnav li ul li a {
        padding: 0 20px 20px;
        background-color: transparent;
        font-size: 14px;
        font-weight: 500;
        text-transform: none;
        color: #fff !important;
        opacity: .6;
        -webkit-transition: 50ms ease-in-out;
        -moz-transition: 50ms ease-in-out;
        -o-transition: 50ms ease-in-out;
        -ms-transition: 50ms ease-in-out;
        transition: 50ms ease-in-out
    }
    .classic-menu .flexnav li ul li a:hover,
    .no-touch .classic-menu .flexnav li ul li a.active,
    .no-touch .fullscreen-menu .flexnav li a:hover,
    .no-touch .fullscreen-menu .flexnav li:hover a,
    .no-touch .fullscreen-menu .flexnav:hover li ul li:hover>a {
        opacity: 1
    }
    .classic-menu .flexnav li>ul li {
        margin-left: 0;
        padding: 0;
        opacity: 1 !important;
        transform: none !important
    }
    .classic-menu .flexnav li>ul li::after {
        display: none
    }
    .classic-menu .flexnav li ul {
        min-width: 180px;
        -webkit-transform: translate3d(0, 30px, 0);
        transform: translate3d(0, 30px, 0);
        display: block !important;
        opacity: 0 !important;
        height: inherit !important;
        overflow: visible !important;
        visibility: hidden;
        left: 15px;
        top: 60px;
        padding-top: 20px;
        background: #282828;
        border-radius: 3px;
        -webkit-transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s ease-in-out !important;
        transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s ease-in-out !important
    }
    .classic-menu .flexnav li:last-child ul {
        left: auto;
        right: -10px
    }
    .classic-menu .flexnav li ul ul {
        left: 5px !important
    }
    .classic-menu .flexnav li ul:after {
        top: -6px;
        left: 20px
    }
    .classic-menu .flexnav li:last-child ul:after {
        left: auto;
        right: 20px
    }
    .classic-menu .flexnav ul li ul:after {
        top: 15px;
        left: -10px;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg)
    }
    .classic-menu .flexnav li ul li>ul,
    .classic-menu .flexnav li ul.open ul.open {
        top: -5px;
        z-index: 10
    }
    .classic-menu .flexnav li:last-child ul li>ul,
    .classic-menu .flexnav li:last-child ul.open ul.open {
        margin-left: -100%;
        left: -5px !important;
        right: auto;
        top: 0
    }
    .classic-menu .flexnav li:last-child ul li ul::after {
        right: -10px;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg)
    }
    .classic-menu .flexnav ul li ul li a,
    .classic-menu .flexnav ul li ul li ul li a {
        background: #000
    }
    .classic-menu .flexnav li ul.flexnav-show {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1 !important;
        visibility: visible;
        -webkit-transition: opacity .2s ease-in-out .1s, visibility .2s ease-in-out, transform .2s ease-in-out .1s;
        transition: opacity .2s ease-in-out .1s, visibility .2s ease-in-out, transform .2s ease-in-out .1s
    }
    .fullscreen-menu .nav-height {
        overflow-y: scroll;
        position: relative;
        height: 100%;
        padding: 40px 30px 40px 0;
        width: calc(100% + 30px);
        box-sizing: border-box
    }
    .fullscreen-menu nav {
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        box-sizing: border-box;
        visibility: visible;
        pointer-events: none;
        opacity: 0;
        padding: 20px 0;
        -webkit-transition: .2s ease-in .6s;
        transition: .2s ease-in .6s
    }
    .fullscreen-menu nav.open {
        visibility: visible;
        pointer-events: initial;
        opacity: 1;
        -webkit-transition: .2s ease-out;
        transition: .2s ease-out
    }
    .fullscreen-menu .flexnav {
        max-height: 2000px;
        -webkit-transition: .2s ease-in .6s;
        transition: .2s ease-in .6s;
        display: table;
        width: auto;
        padding: 0 20px;
        box-sizing: border-box;
        margin: 0 auto;
        float: none
    }
    .fullscreen-menu .flexnav.flexnav-show {
        -webkit-transition: .3s ease-out .2s;
        transition: .3s ease-out .2s
    }
    .fullscreen-menu .flexnav li {
        text-align: center;
        padding: 0;
        box-sizing: border-box;
        float: none;
        margin-bottom: 10px
    }
    .fullscreen-menu .menu-timeline {
        opacity: 0;
        opacity: 1
    }
    .fullscreen-menu .flexnav .touch-button {
        width: 100%;
        display: block;
        height: 50px
    }
    .fullscreen-menu .flexnav li ul li .touch-button {
        height: 32px
    }
    .fullscreen-menu .flexnav li.link {
        border-bottom: none
    }
    .fullscreen-menu .flexnav li a {
        font-weight: 600;
        font-size: 32px;
        line-height: 1.3;
        padding: 0;
        -webkit-transition: .1s ease-in-out;
        transition: .1s ease-in-out;
    }
	.fullscreen-menu .flexnav li a {
		color:#000;
	}
	.fullscreen-menu.invert-header .flexnav li a {
		color: #fff;
	}
	.no-touch .fullscreen-menu .flexnav:hover li a, 
    .no-touch .fullscreen-menu .flexnav.hover li a {
		opacity:0.3;
	}
	.no-touch .fullscreen-menu .flexnav li:hover a, 
    .fullscreen-menu .flexnav li a.active{
		opacity:1;
	}
    .no-touch .fullscreen-menu .flexnav:hover li a.active{
		opacity:1;
	}
	.no-touch .fullscreen-menu .flexnav:hover li ul li a {
		opacity:0.3;
	}
	.no-touch .fullscreen-menu .flexnav:hover li ul li a.active, 
    .no-touch .fullscreen-menu .flexnav:hover li:hover a.active,
    .no-touch .fullscreen-menu .flexnav:hover li ul li:hover > a {
		opacity:1;
	}
    .fullscreen-menu .flexnav li ul {
        margin-bottom: 20px;
        position: relative;
        left: 0
    }
    .fullscreen-menu .flexnav li ul li {
        margin-top: 5px;
        margin-bottom: 0
    }
    .fullscreen-menu .flexnav li ul li a {
        padding: 5px 0;
        font-size: 18px;
        line-height: 1.2;
        font-weight: 500;
        border-top: none;
        text-transform: none
    }
    .fullscreen-menu .flexnav ul li ul li a {
        background: 0 0
    }
    .fullscreen-menu .flexnav li ul li>ul,
    .fullscreen-menu .flexnav li ul.open ul.open {
        margin-left: 0;
        top: 0
    }
    .fullscreen-menu .menu-timeline .before-span {
        opacity: 0;
        display: block;
        -webkit-transform: translateY(120px);
        transform: translateY(120px)
    }
    .fullscreen-menu .flexnav li,
    .fullscreen-menu .flexnav li a {
        background-color: transparent;
        border: 0
    }
    .fullscreen-menu .flexnav li a span {
        position: relative;
        display: block;
        -webkit-transition: -webkit-transform .2s;
        transition: transform .2s;
        transform-origin: 100% 0%;
        overflow: hidden
    }
    .fullscreen-menu .open .flexnav li a span {
        overflow: visible
    }
    .no-touch .fullscreen-menu .flexnav li.hover a span {
        -webkit-transform: translateY(-100%) !important;
        transform: translateY(-100%) !important;
        transform-origin: 0% 0%
    }
}

@media only screen and (min-width:1280px) {
    .classic-menu .flexnav li {
        background: 0 0;
        padding: 20px 25px
    }
}

@media only screen and (min-width:1600px) {
    #countdown-wrapper {
        top: -30px;
    }
    .classic-menu nav {
        position: absolute;
        top: 20px;
        left: 50%;
        transform: translateX(-50%);
    }
    .fullscreen-menu .flexnav li a {
        font-size: 42px
    }
    .fullscreen-menu .flexnav li ul li a {
        font-size: 24px;
        line-height: 1.2
    }
}

nav,
nav.open {
    -webkit-transition: ease-in;
    transition: ease-in;
    background: 0 0
}

#burger-wrapper {
    width: 40px;
    height: 40px;
    float: right;
    top: 0;
    right: 0;
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    cursor: pointer
}

#burger-wrapper .touch-button,
.classic-menu .button-wrap.right.menu {
    display: none
}

.burger-dots #menu-burger {
    top: 0;
    width: 25px;
    height: 25px;
    position: relative;
    margin: 0 auto;
    z-index: 2
}

.menu-overlay #menu-burger {
    display: block
}

.burger-dots #menu-burger span {
    display: block;
    position: absolute;
    height: 5px;
    width: 5px;
    border-radius: 5px;
    background-color: #000;
    opacity: 1;
    top: 10px;
    left: 0;
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: background-color 50ms ease-in-out, transform .2s ease-in-out, height .2s ease-in-out, width .2s ease-in-out, top .2s ease-in-out, left .2s ease-in-out;
    transition: background-color 50ms ease-in-out, transform .2s ease-in-out, height .2s ease-in-out, width .2s ease-in-out, top .2s ease-in-out, left .2s ease-in-out
}

.burger-dots #menu-burger span:first-child {
    left: 0
}

.burger-dots #menu-burger span:nth-child(2),
.button-wrap.right.menu.burger-dots .icon-wrap:hover #menu-burger span:first-child,
.button-wrap.right.menu.burger-dots .icon-wrap:hover #menu-burger span:nth-child(3) {
    left: 10px
}

.burger-dots #menu-burger span:nth-child(3) {
    left: 20px
}

.button-wrap.right.menu.burger-dots .icon-wrap:hover #menu-burger.open span:first-child,
.button-wrap.right.menu.burger-dots .icon-wrap:hover #menu-burger.open span:nth-child(3) {
    left: 3px
}

.burger-dots #menu-burger.open span:first-child {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 12px;
    height: 2px;
    width: 20px;
    left: 3px
}

.burger-dots #menu-burger.open span:nth-child(2) {
    -webkit-transform: scale(0);
    transform: scale(0)
}

.burger-dots #menu-burger.open span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 12px;
    height: 2px;
    width: 20px;
    left: 3px
}

.button-wrap.right.burger-lines {
    right: -30px
}

.burger-lines #menu-burger {
    width: 30px;
    height: 38px;
    position: relative;
    margin: 0 auto;
    z-index: 2;
    pointer-events: none
}

.burger-lines #menu-burger span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    opacity: 1;
    right: 0;
    background-color: #282828;
    -webkit-transition: all .2s cubic-bezier(.785,.135,.15,.86);
    transition: all .2s cubic-bezier(.785,.135,.15,.86);
}

.burger-lines #menu-burger span:first-child {
    top: 10px
}
.burger-lines #menu-burger span:nth-child(2) {
    top: 18px;
}
.burger-lines #menu-burger span:nth-child(3) {
    top: 26px
}
.burger-lines #menu-burger.open span:first-child {
    transform: translateY(8px) rotate(45deg)
}
.burger-lines #menu-burger.open span:nth-child(2) {
    width: 0;
    opacity: 0;
}
.burger-lines #menu-burger.open span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
}

.light-content #menu-burger span,
.light-content .white-header.over-white-section #menu-burger span,
.show-loader1 .light-content .white-header #menu-burger span,
.white-header #menu-burger span {
    background-color: #fff
}

.dark-content-header #menu-burger span,
.fullscreen-menu.dark-content .light-content-header #menu-burger span {
    background-color: #000 !important
}

.fullscreen-menu.light-content .dark-content-header #menu-burger span,
.light-content-header #menu-burger span {
    background-color: #fff !important
}

.fullscreen-menu.light-content .dark-content-header .button-text,
.light-content-header .button-text {
    color: #fff !important
}

footer,
#footer-container {
    box-sizing: border-box;
    bottom: 0;
    background-color: #1e2428;
    color: #5c656c;
}

.footer-middle,
footer {
    width: 100%;
    pointer-events: none;
    left: 0
}
.footer-right {
    position: relative;
    float: right;
    text-align: right;
    width: auto;
    display: table;
    height: 100%;
    pointer-events: initial;
    box-sizing: border-box;
}
.footer-right div {
    position: relative;
    display: table;
    top: 25px;
    width: auto;
    height: 30px;
    line-height: 30px;
    color: #5c656c;
    overflow: hidden;
}

.copyright,
footer {
    text-align: center;
    overflow: hidden
}

.copyright,
.footer-middle {
    margin: 0 auto;
    display: table
}

.copyright,
.socials-text,
.footer-right div {
    font-size: .875rem;
    font-weight: 600;
}

#content-scroll {
    z-index: 1;
    position: relative
}

.smooth-scroll #content-scroll {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    overflow: hidden
}

.scroll-content {
    cursor: default !important
}

.scale-up .scroll-content {
    cursor: grabbing !important
}

.scrollbar-track {
    background: 0 0 !important
}

.contact-img {
    width: 100%
}

.contact-info {
    padding: 30px 20px;
    height: 100%;
    background: #fff
}

.contact-info.gray {
    background: #eee
}

.contact-info .contact-name {
    font-size: 1.25rem;
    margin-bottom: .25rem;
    font-weight: 500
}

.contact-info p {
    font-size: 1rem;
    line-height: 1.3
}

.contact-info p.icon {
    position: relative;
    display: inline-block;
    line-height: 1;
    padding-left: 25px
}

.contact-info p.icon .fa {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

#footer-container a.f-link,
#footer-container a.social-link,
.contact-info a.f-link {
    display: inline-block;
    overflow: hidden
}
#footer-container a.social-link {
    height: 30px;
    line-height: 30px;
}

#footer-container a.f-link,
#footer-container a.social-link,
#footer-container a.f-link:hover,
#footer-container a.social-link:hover {
    color: #5c656c;
    cursor: pointer
}

#footer-container a.f-link span,
#footer-container a.social-link span.first,
.contact-info a.f-link span {
    position: relative;
    display: block;
    -webkit-transition: -webkit-transform .2s;
    transition: transform .2s;
    transform-origin: 100% 0%
}

.socials-icon,
.socials-wrap,
.socials-wrap:hover .socials-text {
    transition: .2s cubic-bezier(.215, .61, .355, 1)
}

#footer-container a.f-link span::before,
.contact-info a.f-link span::before {
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0;
    content: attr(data-hover)
}
#footer-container a.social-link span.last {
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0;
}

#footer-container a.f-link:hover span,
#footer-container a.social-link:hover span.first,
.button-wrap:hover .button-text span,
.contact-info a.f-link:hover span {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    transform-origin: 0% 0%
}

@media only screen and (min-width:480px) {
    .contact-info .contact-name {
        font-size: calc(1rem + 1vw);
        margin-bottom: .375rem
    }
    .contact-info p.icon {
        padding-left: 30px
    }
}

@media only screen and (min-width:712px) {
    .contact-person .col-12 {
        flex: 1
    }
    .contact-info {
        padding: 30px
    }
}

@media only screen and (min-width:991px) {
    .contact-info {
        padding: 60px 40px
    }
    .contact-info p {
        font-size: calc(1rem + .42vw)
    }
    .contact-info p.icon {
        padding-left: 35px
    }
}

@media only screen and (min-width:1600px) {
    .contact-info {
        padding: 60px
    }
}

footer {
    position: relative;
    height: 120px;
    z-index: 900
}

footer.fixed,
footer.showcase-footer {
    position: fixed
}

#footer-container {
    padding: 0 80px;
    margin: 20px auto;
    height: 80px;
    opacity: 0;
    position: absolute;
    width: 100%;
    left: 0
}

.footer-middle {
    position: absolute;
    height: inherit
}

.copyright,
.socials-wrap {
    position: relative;
    box-sizing: border-box
}

.button-wrap,
.copyright,
.socials-wrap {
    pointer-events: initial
}

.copyright {
    top: 25px;
    width: auto;
    height: 30px;
    line-height: 30px;
    color: #5c656c;
    padding: 0 20px;
    max-width: 820px
}

.socials li,
.socials-icon {
    margin-left: 10px;
    float: right
}

.dark-section .button-icon,
.dark-section .button-text,
.light-content .button-icon,
.light-content .button-text,
.light-content .white-header.over-white-section .button-text,
.show-loader1 .light-content .white-header .button-text,
.white-header .button-icon,
.white-header .button-text {
    color: #fff
}

#footer-container .button-icon,
#footer-container .button-text{
    color: #5c656c
}

.socials-wrap {
    float: right;
    color: #5c656c;
    width: 240px;
    height: 160px
}

footer .socials-wrap {
    margin-top: 0
}

.socials-text {
    float: right;
    line-height: 40px;
    transform: translateY(20px)
}

.socials-icon {
    width: 30px;
    font-size: 14px;
    text-align: right;
    transform: scale(1) translateY(20px)
}

.button-wrap.left .icon-wrap,
.icon-wrap {
    float: left
}

.button-wrap,
.socials {
    width: auto;
    position: relative
}

.socials-icon:after,
.socials-text:after {
    content: "";
    clear: both;
    display: table
}

.socials {
    height: auto;
    line-height: 30px;
    margin: 20px auto 0;
    text-align: center;
    bottom: 0;
    display: table;
}

.socials-wrap .socials {
    display: inline-block;
    width: 100%;
    text-align: right
}

.socials li {
    margin-right: 0;
    list-style: none;
    color: #5c656c;
    font-size: 1.25rem;
    margin-bottom: 0;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    z-index: 2;
    -webkit-transition: background .4s ease-in-out;
    transition: background .4s ease-in-out
}

.socials li:last-child {
    margin-left: 0
}

.socials li a {
    color: #5c656c;
    font-size: 1.25rem;
    font-weight: 600;
    display: block;
    width: 40px;
    text-align: center;
    -webkit-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out
}

.socials li a:hover {
    color: #5c656c;
    opacity: 1
}

.button-wrap {
    cursor: pointer;
    top: 0;
    display: table
}

.button-wrap:after {
    clear: both;
    content: " ";
    display: block;
    height: 0;
    visibility: hidden
}

.button-wrap.left {
    float: left;
    left: -32px
}

.button-wrap.right {
    float: right;
    right: -26px
}

#main .button-wrap.left {
    float: none;
    left: -24px
}

#main .button-wrap.button-link.left {
    float: none;
    left: -20px
}

#main .button-wrap.right {
    float: none;
    right: auto
}

#main .button-wrap.button-link.right {
    right: -2px
}

.icon-wrap {
    width: 80px;
    height: 80px;
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center
}

.button-icon,
.button-icon i {
    height: 40px;
    width: 40px;
    line-height: 40px;
    text-align: center
}

#main .icon-wrap {
    width: 60px;
    height: 60px
}

#main .text-align-right .button-wrap.right,
.button-wrap.right .icon-wrap {
    float: right
}

.button-icon {
    color: #000;
    font-size: 18px
}

.dark-content .white-header.dark-content .button-text,
.light-content .light-section .button-icon,
.light-content .light-section .button-text,
.light-content .white-header .button-icon,
.light-content .white-header .button-text {
    color: #282828
}

#main .button-icon i {
    line-height: 40px
}

#main .button-icon i.fa.fa-arrow-right {
    font-size: 14px
}

.button-text {
    font-weight: 600;
    font-size: .875rem;
    line-height: 30px;
    margin: 25px 0;
    overflow: hidden;
    width: auto;
    padding: 0 10px;
    color: #282828;
    -webkit-transition: color 50ms ease-in-out;
    transition: color 50ms ease-in-out
}

#main #hero-footer .button-text span::after {
    content: none
}

#main .button-text {
    font-size: 16px;
    line-height: 30px;
    font-weight: 400;
    margin: 15px 0;
    transition: transform .2s ease-out
}

#main #hero .button-text {
    font-weight: 600;
    font-size: 1rem
}

#main .large-btn .button-text {
    font-size: 18px !important;
    font-weight: 500;
    margin: 15px 0;
    transition: transform .2s ease-out
}

.button-wrap.left .button-text {
    text-align: left;
    float: left
}

.button-wrap.right .button-text {
    text-align: right;
    float: right;
    padding-left: 0
}

.button-text span {
    position: relative;
    display: inline-block;
    -webkit-transition: -webkit-transform .2s;
    transition: transform .2s;
    width: auto;
    text-align: center;
    transform-origin: 100% 0%
}

#main .button-link .button-text,
.button-link .button-text {
    overflow: visible;
    transition: padding .3s ease-out
}

.button-link.left .button-text {
    padding-left: 0
}

.button-link.left:hover .button-text {
    padding-left: 10px
}

.button-link .button-text span::before {
    content: '';
    position: absolute;
    bottom: 1px;
    left: 0;
    width: 100%;
    height: 1px;
    background: rgba(0, 0, 0, 1);
    transform: scaleX(1);
    transform-origin: right;
    transition: transform .3s ease-out
}

.button-link.left .button-text span::before {
    transform-origin: left
}

.dark-section .button-link .button-text span::before,
.light-content .button-link .button-text span::before {
    background: rgba(255, 255, 255, 1)
}

.light-content .light-section .button-link .button-text span::before {
    background: rgba(0, 0, 0, 1)
}
.green.button-link .button-text span::before {
    background: #78ad94
}

.button-wrap.button-link:hover .button-text span {
    transform: translateY(0);
    -webkit-transform: translateY(0)
}

.button-link:hover .button-text span::before {
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transform-origin: left
}

.button-link.left:hover .button-text span::before {
    transform-origin: right
}

.button-link .button-icon i {
    background-color: transparent;
    font-size: 14px;
    border-radius: 100%;
    box-sizing: border-box;
    transition: .3s ease-out;
    overflow: hidden
}
.button-link.right .button-icon i {
    text-indent: -20px;
}

.button-link:hover .button-icon i {
    background-color: #000;
    color: #fff;
    transform: scale(1.2);
    text-indent: 0;
}

.dark-section .button-link:hover .button-icon i,
.light-content .button-link:hover .button-icon i {
    background-color: #fff;
    color: #000;
}
.button-link.green .button-icon i {
    color: #78ad94;
}
.button-link.green:hover .button-icon i {
    background-color: #78ad94;
    color: #fff;
    text-indent: 0;
}

.light-content .light-section .button-link:hover .button-icon i {
    background-color: #000;
    color: #fff;
}

.button-wrap.left .button-text span {
    text-align: left
}

.button-wrap.right .button-text span {
    text-align: right
}

.button-text span::before {
    position: absolute;
    width: auto;
    top: 100%;
    left: 0;
    content: attr(data-hover)
}

.header-middle .button-text span::before {
    content: attr(data-on)
}

nav,
nav.open {
    -webkit-transition: ease-in;
    transition: ease-in;
    background: 0 0
}

.dark-section input,
.dark-section textarea,
.light-content input,
.light-content textarea {
    color: #fff;
}

.light-content .light-section input,
.light-content .light-section textarea {
    color: #000000;
}

.table,
.table th,
.table td {
    border: 1px solid rgba(0, 0, 0, 0.1);
}
.light-content .table,
.light-content .table th,
.light-content .table td {
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.table {
    border-collapse: separate;
    border-spacing: 0;
    border-width: 1px 0 0 1px;
    margin-bottom: 24px;
    width: 100%;
}
caption,
th,
td {
    font-weight: 400;
    text-align: left;
}
.table th {
    border-width: 0 1px 1px 0;
    padding: 10px;
}
.table td {
    border-width: 0 1px 1px 0;
    padding: 10px;
}
table.reference-info {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}
table.reference-info tr {
    color: #fff;
}
.light-content table.reference-info tr {
    color: #171719;
}
table.reference-info th {
    width: 250px;
    padding: 0 0 10px 0;
    vertical-align: top;
}
table.reference-info td {
    padding: 0 0 10px 0;
    vertical-align: top;
}

.btn-group,
.btn-group-vertical {
    position: relative;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: middle
}

.btn-group-vertical>.btn,
.btn-group>.btn {
    position: relative;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

.btn-group-vertical>.btn:hover,
.btn-group>.btn:hover {
    z-index: 1
}

.btn-group-vertical>.btn.active,
.btn-group-vertical>.btn:active,
.btn-group-vertical>.btn:focus,
.btn-group>.btn.active,
.btn-group>.btn:active,
.btn-group>.btn:focus {
    z-index: 1
}

.btn-toolbar {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.btn-toolbar .input-group {
    width: auto
}

.btn-group>.btn-group:not(:first-child),
.btn-group>.btn:not(:first-child) {
    margin-left: -1px
}

.btn-group>.btn-group:not(:last-child)>.btn,
.btn-group>.btn:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.btn-group>.btn-group:not(:first-child)>.btn,
.btn-group>.btn:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.dropdown-toggle-split {
    padding-right: .5625rem;
    padding-left: .5625rem
}

.dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after {
    margin-left: 0
}

.dropleft .dropdown-toggle-split::before {
    margin-right: 0
}

.btn-group-sm>.btn+.dropdown-toggle-split,
.btn-sm+.dropdown-toggle-split {
    padding-right: .375rem;
    padding-left: .375rem
}

.btn-group-lg>.btn+.dropdown-toggle-split,
.btn-lg+.dropdown-toggle-split {
    padding-right: .75rem;
    padding-left: .75rem
}

.btn-group-vertical {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: center;
    justify-content: center
}

.btn-group-vertical>.btn,
.btn-group-vertical>.btn-group {
    width: 100%
}

.btn-group-vertical>.btn-group:not(:first-child),
.btn-group-vertical>.btn:not(:first-child) {
    margin-top: -1px
}

.btn-group-vertical>.btn-group:not(:last-child)>.btn,
.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle) {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

.btn-group-vertical>.btn-group:not(:first-child)>.btn,
.btn-group-vertical>.btn:not(:first-child) {
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.btn-group-toggle>.btn,
.btn-group-toggle>.btn-group>.btn {
    margin-bottom: 0
}

.btn-group-toggle>.btn input[type=checkbox],
.btn-group-toggle>.btn input[type=radio],
.btn-group-toggle>.btn-group>.btn input[type=checkbox],
.btn-group-toggle>.btn-group>.btn input[type=radio] {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none
}

.input-group {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%
}

.input-group>.custom-file,
.input-group>.custom-select,
.input-group>.form-control,
.input-group>.form-control-plaintext {
    position: relative;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
    min-width: 0;
    margin-bottom: 0
}

.input-group>.custom-file+.custom-file,
.input-group>.custom-file+.custom-select,
.input-group>.custom-file+.form-control,
.input-group>.custom-select+.custom-file,
.input-group>.custom-select+.custom-select,
.input-group>.custom-select+.form-control,
.input-group>.form-control+.custom-file,
.input-group>.form-control+.custom-select,
.input-group>.form-control+.form-control,
.input-group>.form-control-plaintext+.custom-file,
.input-group>.form-control-plaintext+.custom-select,
.input-group>.form-control-plaintext+.form-control {
    margin-left: -1px
}

.input-group>.custom-file .custom-file-input:focus~.custom-file-label,
.input-group>.custom-select:focus,
.input-group>.form-control:focus {
    z-index: 3
}

.input-group>.custom-file .custom-file-input:focus {
    z-index: 4
}

.input-group>.custom-select:not(:last-child),
.input-group>.form-control:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.input-group>.custom-select:not(:first-child),
.input-group>.form-control:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.input-group>.custom-file {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

.input-group>.custom-file:not(:last-child) .custom-file-label,
.input-group>.custom-file:not(:last-child) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.input-group>.custom-file:not(:first-child) .custom-file-label {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.input-group-append,
.input-group-prepend {
    display: -ms-flexbox;
    display: flex
}

.input-group-append .btn,
.input-group-prepend .btn {
    position: relative;
    z-index: 2
}

.input-group-append .btn:focus,
.input-group-prepend .btn:focus {
    z-index: 3
}

.input-group-append .btn+.btn,
.input-group-append .btn+.input-group-text,
.input-group-append .input-group-text+.btn,
.input-group-append .input-group-text+.input-group-text,
.input-group-prepend .btn+.btn,
.input-group-prepend .btn+.input-group-text,
.input-group-prepend .input-group-text+.btn,
.input-group-prepend .input-group-text+.input-group-text {
    margin-left: -1px
}

.input-group-prepend {
    margin-right: -1px
}

.input-group-append {
    margin-left: -1px
}

.input-group-text {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding: .375rem .75rem;
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: .25rem
}

.input-group-text input[type=checkbox],
.input-group-text input[type=radio] {
    margin-top: 0
}

.input-group-lg>.custom-select,
.input-group-lg>.form-control:not(textarea) {
    height: calc(1.5em + 1rem + 2px)
}

.input-group-lg>.custom-select,
.input-group-lg>.form-control,
.input-group-lg>.input-group-append>.btn,
.input-group-lg>.input-group-append>.input-group-text,
.input-group-lg>.input-group-prepend>.btn,
.input-group-lg>.input-group-prepend>.input-group-text {
    padding: .5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: .3rem
}

.input-group-sm>.custom-select,
.input-group-sm>.form-control:not(textarea) {
    height: calc(1.5em + .5rem + 2px)
}

.input-group-sm>.custom-select,
.input-group-sm>.form-control,
.input-group-sm>.input-group-append>.btn,
.input-group-sm>.input-group-append>.input-group-text,
.input-group-sm>.input-group-prepend>.btn,
.input-group-sm>.input-group-prepend>.input-group-text {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: .2rem
}

.input-group-lg>.custom-select,
.input-group-sm>.custom-select {
    padding-right: 1.75rem
}

.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),
.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),
.input-group>.input-group-append:not(:last-child)>.btn,
.input-group>.input-group-append:not(:last-child)>.input-group-text,
.input-group>.input-group-prepend>.btn,
.input-group>.input-group-prepend>.input-group-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.input-group>.input-group-append>.btn,
.input-group>.input-group-append>.input-group-text,
.input-group>.input-group-prepend:first-child>.btn:not(:first-child),
.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),
.input-group>.input-group-prepend:not(:first-child)>.btn,
.input-group>.input-group-prepend:not(:first-child)>.input-group-text {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.custom-control,
.wpcf7-radio .wpcf7-list-item,
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-acceptance .wpcf7-list-item {
    position: relative;
    display: block;
    padding-left: 25px;
    min-height: 25px;
}

.custom-control-inline,
.wpcf7-radio .wpcf7-list-item,
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-acceptance .wpcf7-list-item {
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-right: 1rem!important;
    margin-left: 0!important
}

.custom-control-input,
.wpcf7-radio input,
.wpcf7-checkbox input,
.wpcf7-acceptance input {
    position: absolute;
    left: 0;
    z-index: -1;
    width: 16px;
    height: 20px;
    opacity: 0
}

.custom-control-input:checked~.custom-control-label::before,
.wpcf7-radio input:checked~.wpcf7-list-item-label::before,
.wpcf7-checkbox input:checked~.wpcf7-list-item-label::before,
.wpcf7-acceptance input:checked~.wpcf7-list-item-label::before {
    color: #fff;
    border-color: #000;
    background-color: #000
}

.custom-control-input:focus~.custom-control-label::before,
.wpcf7-radio input:focus~.wpcf7-list-item-label::before,
.wpcf7-checkbox input:focus~.wpcf7-list-item-label::before,
.wpcf7-acceptance input:focus~.wpcf7-list-item-label::before {
    box-shadow: 0 0 0 .2rem rgba(0, 0, 0, .25)
}

.custom-control-input:focus:not(:checked)~.custom-control-label::before,
.wpcf7-radio input:focus:not(:checked)~.wpcf7-list-item-label::before,
.wpcf7-checkbox input:focus:not(:checked)~.wpcf7-list-item-label::before,
.wpcf7-acceptance input:focus:not(:checked)~.wpcf7-list-item-label::before {
    border-color: #444
}

.custom-control-input:not(:disabled):active~.custom-control-label::before,
.wpcf7-radio input:not(:disabled):active~.wpcf7-list-item-label::before,
.wpcf7-checkbox input:not(:disabled):active~.wpcf7-list-item-label::before,
.wpcf7-acceptance input:not(:disabled):active~.wpcf7-list-item-label::before {
    color: #fff;
    background-color: #444;
    border-color: #444
}

.custom-control-input:disabled~.custom-control-label,
.custom-control-input[disabled]~.custom-control-label {
    color: #6c757d
}

.custom-control-input:disabled~.custom-control-label::before,
.custom-control-input[disabled]~.custom-control-label::before {
    background-color: #e9ecef
}

.custom-control-label,
.wpcf7-radio .wpcf7-list-item-label,
.wpcf7-checkbox .wpcf7-list-item-label,
.wpcf7-acceptance .wpcf7-list-item-label {
    position: relative;
    display: inline-block;
    padding: 0;
    margin-bottom: 0;
    vertical-align: top;
    font-size: 1rem;
    line-height: 1.2
}

.custom-control-label::before,
.wpcf7-radio .wpcf7-list-item-label::before,
.wpcf7-checkbox .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item-label::before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -25px;
    display: block;
    width: 16px;
    height: 16px;
    pointer-events: none;
    content: "";
    background-color: #fff;
    border: #000000 solid 1px
}

.custom-control-label::after,
.wpcf7-radio .wpcf7-list-item-label::after,
.wpcf7-checkbox .wpcf7-list-item-label::after,
.wpcf7-acceptance .wpcf7-list-item-label::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -24.5px;
    display: block;
    width: 16px;
    height: 16px;
    content: "";
    background-position: center center;
    background-size: 10px 10px;
    background-repeat: no-repeat;
}
.wpcf7-checkbox .wpcf7-list-item-label::after,
.wpcf7-acceptance .wpcf7-list-item-label::after {
    background-size: 12px 12px;
}

.custom-checkbox .custom-control-label::before,
.wpcf7-checkbox .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item-label::before {
    border-radius: 0
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::after,
.wpcf7-checkbox input:checked~.wpcf7-list-item-label::after,
.wpcf7-acceptance input:checked~.wpcf7-list-item-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")
}

.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before,
.wpcf7-checkbox input:indeterminate~.wpcf7-list-item-label::before,
.wpcf7-acceptance input:indeterminate~.wpcf7-list-item-label::before {
    border-color: #000;
    background-color: #000
}

.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after,
.wpcf7-checkbox input:indeterminate~.wpcf7-list-item-label::after,
.wpcf7-acceptance input:indeterminate~.wpcf7-list-item-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")
}

.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before,
.wpcf7-checkbox input::disabled:checked~.wpcf7-list-item-label::before,
.wpcf7-acceptance input::disabled:checked~.wpcf7-list-item-label::before {
    background-color: rgba(0, 0, 0, .5)
}

.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before,
.wpcf7-checkbox input::disabled:indeterminate~.wpcf7-list-item-label::before,
.wpcf7-acceptance input::disabled:indeterminate~.wpcf7-list-item-label::before {
    background-color: rgba(0, 0, 0, .5)
}

.custom-radio .custom-control-label::before,
.wpcf7-radio .wpcf7-list-item-label::before {
    border-radius: 50%
}

.custom-radio .custom-control-input:checked~.custom-control-label::after,
.wpcf7-radio input:checked~.wpcf7-list-item-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")
}

.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before,
.wpcf7-radio input:disabled:checked~.wpcf7-list-item-label::before {
    background-color: rgba(0, 0, 0, .5)
}

.custom-switch {
    padding-left: 2.25rem
}

.custom-switch .custom-control-label::before {
    left: -2.25rem;
    width: 1.75rem;
    pointer-events: all;
    border-radius: .5rem
}

.custom-switch .custom-control-label::after {
    top: calc(.25rem + 2px);
    left: calc(-2.25rem + 2px);
    width: calc(1rem - 4px);
    height: calc(1rem - 4px);
    background-color: #adb5bd;
    border-radius: .5rem;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-transform .15s ease-in-out;
    transition: transform .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    transition: transform .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-transform .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .custom-switch .custom-control-label::after {
        transition: none
    }
}

.custom-switch .custom-control-input:checked~.custom-control-label::after {
    background-color: #fff;
    -webkit-transform: translateX(.75rem);
    transform: translateX(.75rem)
}

.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before {
    background-color: rgba(0, 123, 255, .5)
}

.custom-select {
    display: inline-block;
    width: 100%;
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem 1.75rem .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    vertical-align: middle;
    background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.custom-select:focus {
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25)
}

.custom-select:focus::-ms-value {
    color: #495057;
    background-color: #fff
}

.custom-select[multiple],
.custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: .75rem;
    background-image: none
}

.custom-select:disabled {
    color: #6c757d;
    background-color: #e9ecef
}

.custom-select::-ms-expand {
    display: none
}

.custom-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057
}

.custom-select-sm {
    height: calc(1.5em + .5rem + 2px);
    padding-top: .25rem;
    padding-bottom: .25rem;
    padding-left: .5rem;
    font-size: .875rem
}

.custom-select-lg {
    height: calc(1.5em + 1rem + 2px);
    padding-top: .5rem;
    padding-bottom: .5rem;
    padding-left: 1rem;
    font-size: 1.25rem
}

.custom-file {
    position: relative;
    display: inline-block;
    width: 100%;
    height: calc(1.5em + .75rem + 2px);
    margin-bottom: 0
}

.custom-file-input {
    position: relative;
    z-index: 2;
    width: 100%;
    height: calc(1.5em + .75rem + 2px);
    margin: 0;
    opacity: 0
}

.custom-file-input:focus~.custom-file-label {
    border-color: #80bdff;
    box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25)
}

.custom-file-input:disabled~.custom-file-label,
.custom-file-input[disabled]~.custom-file-label {
    background-color: #e9ecef
}

.custom-file-input:lang(en)~.custom-file-label::after {
    content: "Browse"
}

.custom-file-input~.custom-file-label[data-browse]::after {
    content: attr(data-browse)
}

.custom-file-label {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: .25rem
}

.custom-file-label::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(1.5em + .75rem);
    padding: .375rem .75rem;
    line-height: 1.5;
    color: #495057;
    content: "Browse";
    background-color: #e9ecef;
    border-left: inherit;
    border-radius: 0 .25rem .25rem 0
}

.custom-range {
    width: 100%;
    height: 1.4rem;
    padding: 0;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.custom-range:focus {
    outline: 0
}

.custom-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(0, 123, 255, .25)
}

.custom-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(0, 123, 255, .25)
}

.custom-range:focus::-ms-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(0, 123, 255, .25)
}

.custom-range::-moz-focus-outer {
    border: 0
}

.custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -.25rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    -webkit-appearance: none;
    appearance: none
}

@media (prefers-reduced-motion:reduce) {
    .custom-range::-webkit-slider-thumb {
        -webkit-transition: none;
        transition: none
    }
}

.custom-range::-webkit-slider-thumb:active {
    background-color: #b3d7ff
}

.custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: .5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem
}

.custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -moz-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    -moz-appearance: none;
    appearance: none
}

@media (prefers-reduced-motion:reduce) {
    .custom-range::-moz-range-thumb {
        -moz-transition: none;
        transition: none
    }
}

.custom-range::-moz-range-thumb:active {
    background-color: #b3d7ff
}

.custom-range::-moz-range-track {
    width: 100%;
    height: .5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem
}

.custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: .2rem;
    margin-left: .2rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -ms-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    appearance: none
}

@media (prefers-reduced-motion:reduce) {
    .custom-range::-ms-thumb {
        -ms-transition: none;
        transition: none
    }
}

.custom-range::-ms-thumb:active {
    background-color: #b3d7ff
}

.custom-range::-ms-track {
    width: 100%;
    height: .5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: .5rem
}

.custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem
}

.custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem
}

.custom-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd
}

.custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default
}

.custom-range:disabled::-moz-range-thumb {
    background-color: #adb5bd
}

.custom-range:disabled::-moz-range-track {
    cursor: default
}

.custom-range:disabled::-ms-thumb {
    background-color: #adb5bd
}

.custom-control-label::before,
.wpcf7-radio .wpcf7-list-item-label::before,
.custom-file-label,
.custom-select {
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .custom-control-label::before,
    .wpcf7-radio .wpcf7-list-item-label::before,
    .wpcf7-checkbox .wpcf7-list-item-label::before,
    .custom-file-label,
    .custom-select {
        transition: none
    }
}

.filters-wrapper {
    position: relative;
    display: block;
    box-sizing: border-box;
    overflow: hidden;
}
.filters-wrapper.media {
    width: 100%;
    margin-bottom: 15px
}
.filters-wrapper.format {
    width: 100%
}
.filters-dropdownHeader {
    cursor: pointer;
    position: relative;
    color: #000000;
    white-space: nowrap;
    -webkit-transition: all .3s;
    transition: all .3s
}
.filters-dropdownHeaderText {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    text-transform: uppercase;
    line-height:1rem;
    color: #777;
}
.filters-dropdownHeaderText span {
    display: inline-block;
    text-transform: none;
    white-space: nowrap;
    color: #000000;
}
.filters-dropdownHeader::after {
    font: var(--fa-font-solid);
    content: "\f107";
    display: inline-block;
    margin-left: .25rem;
    font-size: .875rem;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: all .3s;
    transition: all .3s
}
.filters-dropdownHeader.active::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.filters-dropdown {
    display: none;
    width: 100%;
    margin: 0;
    padding: 15px 0;
    background: #fff;
}
#filter-wrapper .fail-message {
    display: none;
    padding: 40px 0 0;
    text-align: center;
    -webkit-transition: 150ms;
    -moz-transition: 150ms;
    transition: 150ms
}
#filter-wrapper .fail-message span {
    display: inline-block;
    vertical-align: middle;
    font-weight: 700
}
#filter-wrapper.fail .fail-message {
    display: block
}
#filter-wrapper .mix {
    display: none
}
@media only screen and (min-width:712px) {
    .filters-wrapper {
        display: inline-block;
        vertical-align: top;
    }
    .filters-wrapper.media {
        width: 50%;
        margin-bottom: 0;
    }
    .filters-wrapper.format {
        width: 49%
    }
    .filters-dropdownHeaderText {
        font-size: 1.125rem;
    }
    .filters-wrapper:nth-child(2) {
        padding-left: 0.5rem
    }
    #filter-wrapper .fail-message {
        padding: 60px 0 0;
    }
}
@media only screen and (min-width:1280px) {
    .filters-wrapper.media {
        width: 33.33%
    }
    .custom-control,
    .wpcf7-radio .wpcf7-list-item,
    .wpcf7-checkbox .wpcf7-list-item,
    .wpcf7-acceptance .wpcf7-list-item {
        padding-left: 35px;
        min-height: 35px;
        margin-right: 1.25rem!important
    }

    .custom-control-input,
    .wpcf7-radio input,
    .wpcf7-checkbox input,
    .wpcf7-acceptance input {
        width: 24px;
    }
    .custom-control-label,
    .wpcf7-radio .wpcf7-list-item-label,
    .wpcf7-checkbox .wpcf7-list-item-label,
    .wpcf7-acceptance .wpcf7-list-item-label {
        font-size: 1.125rem
    }
    .custom-control-label::before,
    .wpcf7-radio .wpcf7-list-item-label::before,
    .wpcf7-checkbox .wpcf7-list-item-label::before,
    .wpcf7-acceptance .wpcf7-list-item-label::before {
        left: -35px;
        width: 24px;
        height: 24px;
    }
    .custom-control-label::after,
    .wpcf7-radio .wpcf7-list-item-label::after,
    .wpcf7-checkbox .wpcf7-list-item-label::after,
    .wpcf7-acceptance .wpcf7-list-item-label::after {
        left: -34.5px;
        width: 24px;
        height: 24px;
        background-size: 14px 14px;
    }
    .wpcf7-checkbox .wpcf7-list-item-label::after,
    .wpcf7-acceptance .wpcf7-list-item-label::after {
        background-size: 15px 15px;
    }
}

#app,
.grid__item-hidden,
.grid__item-img--large {
    opacity: 0;
    pointer-events: none
}

#app,
#project-holder,
.grid__item-hidden {
    pointer-events: none
}

#app,
.clone-wrapper {
    height: 100vh;
    top: 0;
    overflow: hidden
}

#app,
.clone-container,
.clone-wrapper,
.thumb-container,
.thumb-page,
.thumb-wrapper {
    width: 100%;
    left: 0
}

#filters-overlay,
.thumb-container,
.thumb-page,
.thumb-wrapper {
    visibility: hidden;
    position: fixed
}

#filters,
#project-holder.open,
#show-filters.enabled {
    pointer-events: initial
}

#filters,
#filters li a {
    display: inline-block;
    z-index: 15
}

#app,
#filters li,
.clone-wrapper,
.item-appear,
.item-wrap-media,
.thumb-wrapper {
    overflow: hidden
}

#app {
    position: fixed;
    -webkit-transition: .1s ease-in-out .3s;
    transition: .1s ease-in-out .3s
}

#project-holder #main,
#project-holder #main-page-content,
.above.item,
.item.active .item-caption,
.item.active .item-icons,
.load-project-thumb #app,
.load-project-thumb-with-title #app,
.load-project-thumb-with-title-and-scale #app {
    opacity: 1
}

.grid__item-img--large {
    position: absolute
}

.grid__item-hidden {
    position: fixed
}

#project-holder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100
}

#show-filters,
.item {
    pointer-events: none
}

#showcase-height {
    position: relative;
    width: 100vw;
    height: 0
}

.clone-wrapper {
    position: fixed;
    z-index: 100;
    opacity: 1
}

.clone-container {
    overflow: hidden;
    height: 100%;
    position: absolute;
    top: 0;
    opacity: 1
}

#close-filters,
#filters-overlay,
.thumb-container,
.thumb-page,
.thumb-wrapper {
    height: 100vh;
    top: 0
}

.thumb-wrapper {
    z-index: 100;
    opacity: 1
}

.thumb-container {
    z-index: 100;
    opacity: 1;
    background-color: #161717
}

.item,
.item-appear,
.vertical-parallax {
    z-index: 0
}

.thumb-page {
    cursor: pointer;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat
}

#show-filters,
.show-filters-wrap {
    width: 80px;
    height: 80px;
    cursor: pointer
}

#show-filters {
    font-size: 12px;
    color: #000;
    opacity: 0;
    display: block;
    position: fixed;
    left: 48px;
    bottom: 30px;
    background: 0 0;
    transform-origin: 0 0;
    z-index: 100
}

.light-content #filters li a,
.light-content #filters li a:hover,
.light-content #show-filters,
.light-content .below-caption .change-header .item-subtitle,
.light-content .below-caption .change-header .item-title,
.light-content .below-caption .item-subtitle,
.light-content .below-caption .item-title,
.light-content .item-subtitle,
.light-content .item-date,
.light-content .item-title {
    color: #000
}

.show-filters-wrap {
    float: right;
    top: 0;
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center
}

.open-filters {
    height: 46px;
    width: 46px;
    text-align: center;
    line-height: 46px;
    font-size: 16px;
    cursor: pointer;
    position: relative
}

#filters li a {
    font-weight: 500;
    font-size: 2.75rem;
    line-height: 1.25
}

#filters-overlay {
    z-index: 15;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    box-sizing: border-box;
    -webkit-transition: .1s ease-in-out .6s;
    transition: .1s ease-in-out .6s
}

#filters-overlay.active {
    opacity: 1;
    visibility: visible;
    -webkit-transition: .3s ease-in-out .2s;
    transition: .3s ease-in-out .2s
}

#close-filters {
    position: fixed !important;
    width: 100vw;
    left: 0;
    right: 0;
    bottom: 0
}

#filters-overlay .outer {
    width: 100%;
    margin: 0 auto;
    padding: 70px 80px;
    box-sizing: border-box
}

#filters-overlay .inner {
    vertical-align: bottom;
    position: relative;
    pointer-events: none;
    text-align: left
}

.filters-wrap {
    position: relative;
    width: 100%;
    max-height: 0;
    opacity: 0;
    margin-top: 100px;
    transition: .6s cubic-bezier(.895, .03, .685, .22) .2s;
    -webkit-transition: .6s cubic-bezier(.895, .03, .685, .22) .2s
}

.portfolio-wrap {
    margin: 0 auto;
    position: relative;
    box-sizing: border-box
}

.filters-wrap.active {
    opacity: 1;
    max-height: 100px;
    transition: 1s cubic-bezier(.165, .84, .44, 1);
    -webkit-transition: 1s cubic-bezier(.165, .84, .44, 1)
}

#filters {
    height: auto;
    position: relative;
    width: auto;
    padding: 0;
    margin: 0
}

#filters li {
    display: block;
    opacity: 1;
    position: relative;
    margin: 10px 0;
    text-align: left
}

#filters li a {
    color: #000;
    opacity: 0;
    position: relative;
    -webkit-transition: color .15s ease-in-out, padding .25s ease-in-out;
    transition: color .15s ease-in-out, padding .25s ease-in-out
}

#filters:hover li a {
    color: rgba(0, 0, 0, .4)
}

#filters li a:hover {
    color: #000;
    padding-left: 40px
}

.light-content #filters:hover li a {
    color: rgba(255, 255, 255, .4)
}

#filters li a::after {
    content: "";
    position: absolute;
    width: 0;
    height: 3px;
    top: calc(50% - 2px);
    left: 0;
    background-color: #000;
    -webkit-transition: .25s ease-in-out;
    transition: .25s ease-in-out
}

.light-content #filters li a::after {
    background-color: #fff
}

#filters li a:hover::after {
    width: 20px
}

.isotope,
.isotope .isotope-item {
    -webkit-transition-duration: 1.8s;
    -moz-transition-duration: 1.8s;
    -ms-transition-duration: 1.8s;
    -o-transition-duration: 1.8s;
    transition-duration: 1.8s
}

.isotope {
    -webkit-transition-property: height, width;
    -moz-transition-property: height, width;
    -ms-transition-property: height, width;
    -o-transition-property: height, width;
    transition-property: height, width
}

.isotope .isotope-item {
    -webkit-transition-property: -webkit-transform, opacity;
    -moz-transition-property: -moz-transform, opacity;
    -ms-transition-property: -ms-transform, opacity;
    -o-transition-property: -o-transform, opacity;
    transition-property: transform, opacity
}

.portfolio-wrap {
    width: 100%;
    padding: 0;
    min-height: 50vh
}

.portfolio {
    -webkit-transition: height .5s ease-out;
    transition: height .5s ease-out
}

.portfolio:after {
    content: "";
    display: table;
    clear: both
}

.item {
    display: block;
    position: relative;
    box-sizing: border-box;
    margin: 0;
    width: 100%;
    overflow: hidden
}

.item.hover {
    z-index: 1
}

.landing-grid:before {	
	content:"";
	position:absolute;
	bottom:0;
	width:100%;
	height:20vw;
	background-color:#f7f7f7;
	z-index:0;
	-webkit-transition: opacity 0.15s ease-out;
	transition: opacity 0.15s ease-out;
}
.light-content .landing-grid:before {
	background-color:#333;
}
.show-loader .landing-grid:before {
	opacity:0;
}

.two-grid .item {
    margin-bottom: 30px;
}

.landing-grid .item {
	width: 50%;
	height: 32vw;
}
.landing-grid .item:nth-child(1) {
	width: 34vw;
	margin-top:18vw;
	height: 19.125vw;
}
.landing-grid .item:nth-child(2) {
	width: 66vw;
	margin-top:0;
	height: 37.125vw;
}
.landing-grid .item:nth-child(3),
.landing-grid .item:nth-child(4) {
	width: 50vw;
	height: 28.125vw;
}
.landing-grid .item:nth-last-child(2) {
	width: 66vw;
	margin-top:0;
	height: 37.125vw;
}
.landing-grid .item:nth-last-child(1) {
	width: 34vw;
	margin-top:0;
	height: 19.125vw;
}

.see-all-works {
	position: absolute;
	left: calc(66vw + 60px);
	bottom: 35px;
	height: 60px;
	top: auto;
}

.item-image::after,
.load-project-thumb .item-image::after {
    content: "";
    height: 60%;
    position: absolute;
    left: 0;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 100%);
    bottom: 0
}

.item-parallax {
    height: 100%;
    width: 100%;
    position: absolute;
    pointer-events: initial
}

.item-appear,
.item-content {
    position: relative;
    width: 100%;
    height: 100%
}

.disable-ajaxload .item-wrap-media,
.item-caption,
.item-icons,
.item-image::after {
    pointer-events: none
}

.item-appear {
    position: relative;
    display: block;
    box-sizing: border-box;
}

.item-image::after {
    opacity: 0;
    width: 100%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 100%);
    -webkit-transition: .6s ease-in-out;
    transition: .6s ease-in-out
}

.load-project-thumb .item-image::after {
    opacity: 1;
    width: 100%;
    pointer-events: none;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 100%);
    -webkit-transition: .6s ease-in-out;
    transition: .6s ease-in-out
}

.item-content {
    opacity: 1
}

.fade-scaleout-effect .item-content {
    opacity: 0;
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition: 1s cubic-bezier(.165, .84, .44, 1) .2s;
    transition: 1s cubic-bezier(.165, .84, .44, 1) .2s
}

.fade-scaleout-effect .active .item-content {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.item-wrap {
    width: 100%;
    height: 100%;
    position: absolute;
}

.item-image,
.item-wrap-media {
    position: relative;
    width: 100%;
    height: auto
}

.item-wrap-media {
    z-index: 0;
    box-sizing: border-box;
    overflow: hidden;
}

.item-wrap-media .grid__item-img {
    z-index: 100;
    cursor: pointer;
    pointer-events: initial;
    position: relative;
    box-sizing: border-box;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 1s cubic-bezier(.165, .84, .44, 1);
    transition: 1s cubic-bezier(.165, .84, .44, 1);
}
.item-wrap-media .grid__item-video {
    position: absolute;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    overflow: hidden !important;
    top: 0;
    left: 0;
    z-index: 120;
    pointer-events: none;
}
.item-wrap-media .grid__item-video video {
    width: 100%;
    height: auto;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 1s cubic-bezier(.165, .84, .44, 1);
    transition: 1s cubic-bezier(.165, .84, .44, 1);
}
.no-touch .item:hover .item-wrap-media .grid__item-img,
.no-touch .item:hover .item-wrap-media .grid__item-video video {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}
.item.above .item-wrap-media .grid__item-img,
.no-touch .item.above:hover .item-wrap-media .grid__item-img,
.item.above .item-wrap-media .grid__item-video video,
.no-touch .item.above:hover .item-wrap-media .grid__item-video video {
    -webkit-transform: scale(1)!important;
    transform: scale(1)!important
}

.item-wrap-image {
	width: 100%;
	height: 100%;
	position:relative;
	z-index:0;
	overflow:hidden;
	-webkit-transform:scale(1.05);
	transform: scale(1.05);
	-webkit-transition: all 1s cubic-bezier(.165,.84,.44,1) 0s;	
	transition: all 1s cubic-bezier(.165,.84,.44,1) 0s;			
}
.item:hover .item-appear .item-wrap-image,
.above  .item-wrap-image {		
	-webkit-transform:scale(1);
	transform: scale(1);			
}

.item-image {
    display: block;
    z-index: 1;
    height: 100%;
    width: 100%;
    object-position: center;
    object-fit: cover
}

.portfolio .item-image {
    cursor: pointer
}

.scale-fitthumbs .above.item {
    opacity: 1 !important
}

.item-caption-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    box-sizing: border-box;
    overflow: hidden;
    pointer-events: none;
}


.item-caption {
    z-index: 10;
    position: absolute;
    bottom: 0;
    height: auto;
    padding: 30px 40px;
    box-sizing: border-box;
    width: 100%;
    cursor: default;
    -webkit-transition: .2s ease-out .4s;
    transition: .2s ease-out .4s
}
.below-caption .item-caption {
    position: relative;
    bottom: -20px;
    padding: 0 10px
}

.item-title {
    font-weight: 500;
    font-size: calc(1.75rem + .125vw);
    line-height: 1.25;
    margin: 0 0 7px;
    display: block;
    position: relative;
    color: #fff;
}
.item-subtitle {
    display: block;
    font-size: calc(1rem + .125vw);
    font-weight: 500;
    line-height: 1.25;
    margin-bottom: 10px;
    color: #fff;
    overflow:hidden;
}

.below-caption .item-subtitle {
    position: absolute;
    bottom: -70px;
    opacity: 0;
    color: #000;
    -webkit-transition: .2s ease-out;
    transition: .2s ease-out
}

.below-caption .item:hover .item-subtitle {
    bottom: -55px;
    opacity: .6
}

.item-date {
    font-size: 18px;
    line-height: 28px;
    color: #fff;
    overflow: hidden
}

.below-caption .item-title,
.light-content .item-subtitle,
.light-content .item-date,
.light-content .item-title {
    color: #fff
}

.below-caption .item-title {
    font-size: 24px;
    line-height: 36px
}

.item-subtitle div,
.item-date div,
.item-title div {
    display: block;
    overflow: hidden
}

.item-title span {
    display: block;
    margin: 0;
    min-width: 10px;
    width: auto;
    box-sizing: border-box;
}
.item-subtitle span {
    min-width: 10px;
    display: inline-block;
    margin: 0 4px 0 0;
    width: auto;
    box-sizing: border-box;
}
.item-date {
    display: block;
    margin-bottom: 0
}
.item-date span {
    min-width: 10px;
    width: auto;
    display: block;
    margin: 0;
    box-sizing: border-box;
    -webkit-transform: translateY(30px);
    opacity: 0
}

.below-caption .item-arrow,
.below-caption .item-date {
    display: none
}

.item-arrow {
    width: auto;
    height: auto;
    position: relative;
    display: block;
    margin-bottom: 30px;
}
.item-arrow svg {
    width: 15px;
    height: 15px;
    vertical-align: baseline;
    position: relative !important;
    display: inline-block;
    margin: 0 0 0 4px;
    font-size: 1.9em;
    line-height: 2em;
    overflow: visible;
    color: #fff;
}

.item-arrow svg g {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}

.no-touch .trigger-item:hover .item-arrow svg g {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.listing {
    list-style: none;
    overflow: hidden;
    position: relative;
    margin: 0;
    padding: 0;
}
.listing img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100vh
}
.listing li {
    width: 80%;
    padding-left: 0;
    padding-right: 0;
    margin: 0;
    clear: both;
    float: left;
    position: relative;
}
.listing > li:nth-child(1) {
    margin: 0 10%;
}
.listing > li:nth-child(3n + 2) {
    float: right;
    text-align: right
}
.listing > li:nth-child(3n + 3) {
    margin-right: 5%;
}
.listing > li:nth-child(6n + 6) {
    margin-left: 5%;
}

@media only screen and (max-width: 1466px) {
    .content-full-width,
    .content-max-width {
        padding-left: 60px;
        padding-right: 60px
    }
    #main-page-content.first .content-row.first {
        padding-top: 200px;
    }
    .content-margin-left {
        padding-right: 60px;
    }
	#logo img {
		height: 60px;
	}
	
	.row_padding_all {
		padding-left: 60px;
		padding-right: 60px;
	}
	
	.row_padding_left {
		padding-left:60px;
	}
	
	.row_padding_right {
		padding-right:60px;
	}
	
	.percentage-wrapper {
		right: 60px;
		bottom: 40px;
	}
	
	.percentage-intro {
		left: 60px;
		bottom: 40px;
	}
	
	header {
    	height: 100px;
	}
	
	#header-container {
		padding: 10px 60px;
	}
	
	.flexnav li {
    	padding: 20px;
	}
	
	footer {
    	height: 100px;
	}
	
	#footer-container {
    	padding: 0 60px;
		margin: 10px auto;
	}
    
    #filters-overlay .outer {
        padding: 60px
    }
    #show-filters {
        left: 26px;
        bottom: 20px
    }
    .overlapping-grid .item {
        width: calc(50% - 90px)
    }
    .overlapping-grid .item:nth-of-type(odd) {
        transform: translateX(60px);
        -webkit-transform: translateX(60px)
    }
    .overlapping-grid .item:nth-of-type(2n+2) {
        margin-left: 120px
    }
    .overlapping-grid .item:nth-child(2) {
        margin-top: calc(25% - 20px);
    }
    .item-caption {
        padding: 20px 30px
    }
    .landing-grid .item-caption {
        padding: 40px;
    }
    .item-title {
        font-size: 1.5rem;
    }
    .item-subtitle {
        font-size: 1rem;
    }
    .item-icons {
        padding: 40px 30px
    }
	
}

@media only screen and (max-width: 1280px) {
    .content-margin-left {
        width: calc(100vw - (50vw - 390px));
        margin-left:calc(50vw - 390px);
    }
    #hero-footer.landing {
        display: none;
    }
	.landing-grid::before {
		height: 50vw;
	}
	.landing-grid .item:nth-child(1) {
		width: calc(100% - (50% - 390px));
		margin-top: 0;
		margin-left:calc(50% - 390px);
		height: 45vw;
	}
    .landing-grid .item:nth-child(2) {
		width: 50%;
		margin: 0;
		height: 30vw;
	}
    .landing-grid .item:nth-child(3),
    .landing-grid .item:nth-child(4) {
		height: 30vw;
	}
    .landing-grid .item:nth-last-child(2) {
		width: 50%;
		margin:0;
		height: 30vw;
	}
	.landing-grid .item:nth-last-child(1) {
		width: calc(100% - (50% - 390px));
		margin-top: 0;
		height: 45vw;
	}
    .see-all-works {
		position: relative;
		left: 0;
		bottom: auto;
		height: auto;
        width: 100%;
        overflow: hidden;
        padding-top: 20px;
        padding-left: 60px;
        background: #f7f7f7;
        opacity: 1!important;
        transform: translateY(0)!important;
	}
    .landing-grid .item-caption {
        padding: 30px 60px
    }
    .item-title {
        font-size: 2.25vw;
    }
    .item-subtitle {
        font-size: 1.55vw;
        margin-bottom: 5px
    }
}

@media only screen and (max-width: 1199px) {
	#footer-container .button-wrap.left .button-text {
        display: none;
    }
    .embed-responsive.small-podcast::before {
        padding-top: 170px
    }
}

@media only screen and (max-width: 1045px) {
    .embed-responsive.big-podcast::before {
        padding-top: 270px
    }
	
}

@media only screen and (max-width: 1024px) {
    .content-full-width,
    .content-max-width {
        padding-left: 40px;
        padding-right: 40px
    }
    .content-margin-left {
        padding-right: 40px;
    }
    .landing-grid .item-caption {
        padding: 25px 40px
    }
    .see-all-works {
		padding-left: 40px;
	}
	.parallax-wrap {
		transform:none!important;
	}
	.parallax-element {
		transform:none!important;
	}
	.has-parallax figcaption {
		display:none;
	}
	.destroy {
		display:none;
	}
	.row_padding_left {
		padding-left: 0px;
	}
	.row_padding_right {
		padding-right: 0px;
	}
	.full.row_padding_left {
		padding-left: 40px;
	}
	.full.row_padding_right {
		padding-right: 40px;
	}
	.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 0px;
		padding-right: 0px;
	}
	.full.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 40px;
		padding-right: 40px;
	}
	#magic-cursor {
		display:none;
	}
	.percentage-wrapper {
		right: 40px;
		bottom: 20px;
	}
	.percentage-intro {
		left: 40px;
		bottom: 20px;
	}
	header {
		height:80px;
	}
	#header-container {
    	padding: 0;
		margin: 0 auto;
	}
	.header-middle,
	header .button-text {
		display: none;
	}
	#logo {
        left: 40px;
	}
	#logo img {
        height: 55px;
	}
	.button-wrap.right.menu {
		right: 10px;
	}
	nav {
		height: 100vh;
        min-height: 100vh;
		position: fixed;
        top: 0;
		width: 100%;
		box-sizing: border-box;
		visibility: visible;
		pointer-events:none;
		opacity:0;
		padding:20px 0;		
		-webkit-transition: all 0.2s ease-in 0.6s;
		transition: all 0.2s ease-in 0.6s;
	}
	
	nav.open {
        min-height: 100vh;
		visibility:visible;
		pointer-events:initial;
		opacity:1;
		background-color: transparent;
		-webkit-transition: all 0.2s ease-out;
		transition: all 0.2s ease-out;
	}
	
	.nav-height {
		position: relative;
		height: 100%;
		padding: 40px 0;
		width: 100%;
		box-sizing: border-box;
		overflow-y: auto;
	}
	
	.flexnav {
		padding: 0 20px;
    	max-height: 2000px;
		display: table;
		width: auto;
		margin: 0 auto;
		text-align:center;
		box-sizing:border-box;
		background: transparent;
		-webkit-transition: all 0.2s ease-in 0.6s;
		transition: all 0.2s ease-in 0.6s;
	}
	
	.flexnav.flexnav-show {
		-webkit-transition: all .3s ease-out 0.2s;
		transition: all .3s ease-out 0.2s;	
	}
	
	.flexnav.opacity {
		opacity: 1;
	}
	
	.flexnav li {
		padding:0;
        margin-bottom: 15px;
		-webkit-transition: color .15s ease-out 0s;
		transition: color .15s ease-out 0s;	
	}
	
	.no-touch .flexnav:hover li  {
		color:rgba(255,255,255,0.7)
	}
	
	.no-touch .flexnav li:hover {
		color:rgba(255,255,255,1)
	}
    
	.flexnav li ul li {
        margin-top: 5px;
        margin-bottom: 0;
	}
	
	.flexnav li a, .flexnav li ul li a {
    	background: transparent;
	}
	
	.flexnav li a {
		font-weight:600;
		font-size: 32px;
		line-height: 1.3;
        opacity: .7;
		padding:0;
		border:none;
		-webkit-transition: all .1s ease-in-out 0s;
		transition: all .1s ease-in-out 0s;
	}
	
	.flexnav li a {
		color:#000;
	}
	
	.invert-header .flexnav li a,
    .light-content .flexnav li a {
		color: #fff;
	}
	
    .invert-header.dark-content .flexnav li a {
		color: #000;
	}
    
	.no-touch .flexnav:hover li a {
		opacity:0.7;
	}
	
	.no-touch .flexnav li:hover a, .flexnav li a.active{
		opacity:1;
	}
	
	.flexnav li ul {
		margin-bottom:15px;
	}
	
	.flexnav li ul li a {
		padding: 10px 0;
		font-weight: 600;
		text-transform:none;
		font-size: 18px;
		line-height: 1.2;
		border-top: none;
		opacity:0.7;
		-webkit-text-stroke:none;
	}
	
	.no-touch .flexnav li ul li:hover a, .flexnav li ul li a.active{
		opacity:1;
	}
	
	.no-touch .flexnav:hover li ul li a {
		opacity:0.7;
	}
	
	.no-touch .flexnav:hover li ul li a.active, .no-touch .flexnav:hover li ul li:hover > a {
		opacity:1;
	}
	
	.flexnav ul li ul li a {
		background: transparent;
	}
	
	.flexnav li ul li ul li a {
		padding: 10px 40px;	
	}
	
	.flexnav .touch-button {
		width: 100%;
		display: block;
		height:40px;
	}
	
	.flexnav li ul li .touch-button {
		height:32px;
	}
	
	.flexnav .touch-button .navicon {
		display:none;
	}
	
	#menu-burger span.touch-button {
		display:none;
	}
	
	.classic-menu .button-wrap.right.menu {
		display: block;
	}
	
	footer {
		height: 80px;
	}
	
	#footer-container {
		margin: 0px auto;
		padding: 0 40px;
		height: 80px;
	}
	
	.footer-button-wrap {
    	bottom: 80px;
	}
	
	.socials-wrap {
		width: 240px;
		height: 40px;
		float:right;
		margin:0 auto;
		right:-10px;
		transform: translateX(0px) translateY(20px)!important;
		-webkit-transform: translateX(0px) translateY(20px)!important;
	}
	
	.socials-icon, .socials-text {
		display:none;
	}
	
	.socials-wrap .socials {
		margin-top: 5px;
		text-align: right;
		transform: translateX(0px);
		-webkit-transform: translateX(0px);	
	}
	
	.socials li {
		margin-right: 10px;
		line-height: 30px;
		height: 30px;
		width: 30px;
        font-size: 1rem;
		margin: 0 5px auto;
		display: inline-block;
		float: none;
	}
	
	.socials li a {
		height: 30px;
		width: 30px;
        font-size: 1rem;
		line-height: 30px;
	}
    
    #show-filters,
    .show-filters-wrap {
        width: 46px;
        height: 46px
    }
    #filters-overlay .outer {
        padding: 40px 40px 80px
    }
    #filters li a {
        font-size: 24px;
        line-height: 40px
    }
    #show-filters {
        left: 22px;
        bottom: 14px
    }
    #show-filters[data-tooltip][data-placement=top]::before {
        display: none
    }
    #portfolio {
        padding-bottom: 0!important;
    }
    .overlapping-grid .item {
        margin: 0 0 125px;
        width: 70%
    }
    .overlapping-grid .item:nth-of-type(odd) {
        transform: translateX(40px);
        -webkit-transform: translateX(40px)
    }
    .overlapping-grid .item:nth-of-type(2n+2) {
        margin-left: calc(30% - 40px)
    }
    .overlapping-grid .item:nth-child(2) {
        margin-top: 0
    }
    .overlapping-grid .item:last-child {
        margin-bottom: 125px
    }
    .embed-responsive.big-podcast::before {
        padding-top: 370px
    }
}

@media only screen and (max-width: 992px) {	
    header {
        border-top: 0;
    }
    #countdown-wrapper {
        display: none;
    }
    .content-full-width,
    .content-max-width {
        padding-left: 30px;
        padding-right: 30px
    }
    .content-margin-left {
        width: 100%;
        margin-left: 0;
        padding-left: 30px;
        padding-right: 30px;
    }
    #main-page-content.first .content-row.first {
        padding-top: 180px;
    }
	.landing-grid .item {
		width: 100%!important;
		margin: 0!important;
		height: 64vw!important;
	}
	.button-wrap.right.menu.burger-lines {
		right: 0px;
	}
	#logo {
		left: 30px;
	}
    hr,
    hr.animated-line {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .embed-responsive.big-podcast::before {
        padding-top: 270px
    }
    .landing-grid .item-caption,
    .item-caption {
        padding: 30px;
    }
    .item-title {
        font-size: 4vw;
        margin-bottom: 5px;
    }
    .item-subtitle {
        font-size: 2.5vw;
    }

    .see-all-works {
		padding-left: 30px;
	}
	.two-grid {
		margin-left: -30px;
        margin-right: -30px;
	}
	.two-grid .item {
		margin-bottom: 0;
        padding: 0;
	}
    .listing > li {
        float: none !important;
        width: auto !important;
        margin: 0 !important;
        text-align: center
    }
	.copyright {
		text-align:center;
        line-height: 25px;
	}
    .footer-right {
        display: none;
    }
}


@media only screen and (max-width: 767px) {	
	figcaption {
		background-color: rgba(0,0,0,0.3);
		bottom: 0px;
		font-size: 10px;
		padding: 5px 10px;
		right: 0px;
		border-radius: 0;
	}
	
	.row_padding_top {
		padding-top:10vw;
	}
	
	.row_padding_bottom {
		padding-bottom:10vw;
	}
	
	.row_padding_left {
		padding-left: 0px;
	}
	
	.row_padding_right {
		padding-right: 0px;
	}
	
	.full.row_padding_left {
		padding-left: 30px;
	}
	
	.full.row_padding_right {
		padding-right: 30px;
	}
	
	.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.full.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 30px;
		padding-right: 30px;
	}
	
	.percentage-wrapper {
		right: 30px;
		bottom: 10px;
	}
	
	.percentage-intro {
		left: 30px;
		bottom: 10px;
	}
	
	.flexnav li {
        margin-bottom: 10px;
	}
    
	.flexnav li ul li {
        margin-top: 5px;
        margin-bottom: 0;
	}
    
    .flexnav li ul li a {
        padding: 5px 0;
    }
	
    footer {
        height: 70px;
    }
    
	#footer-container {
        height: 70px;
		padding: 25px 30px 0;
	}
	
	#footer-container #backtotop.button-wrap.left {
		float: none;
		top:0;
		left: 0;
		right: 0;
		position: absolute;
		display:block;
        z-index: 10
	}
	
	#backtotop.button-wrap.left .icon-wrap {
		float: none;
		position: absolute;
		right: 0;
		left: auto;
		margin: auto;
		top: 0px;
        width: 70px;
        height: 70px;
	}
	
	.footer-middle {
		max-width: 1180px;
		height:auto;
		position: relative;
		margin: 0 auto;
		left: 0;
		width: 100%;
		top: 0px;
	}
	
	.copyright {
        max-width: none;
        display: block;
		margin: 0;
		left: 0;
		top: 0;
        padding: 0;
		text-align:center;
        height: auto;
        line-height: 1.5
	}
	
	footer.showcase-footer .arrows-wrap {
		right: auto;
		left: -30px;
		float: left;
		margin: auto;
	}
	
	footer.showcase-footer .socials-wrap {
		width: 170px;
		float: right;
		left: auto;
		right: 0;
		top: 0;
	}
	
	.socials-wrap {
		width:100%;
		float: none;
        display: block;
		left: 0;
		right: auto;
		top: 0;
		margin: 0;
        text-align: center;
        transform: translateX(0px) translateY(0px) !important;
        -webkit-transform: translateX(0px) translateY(0px) !important;
	}
	
	.socials-wrap .socials {
		text-align: center;
	}
	
	.socials li {
		margin: 0 0px auto;
	}
    #filters-overlay .outer {
        padding: 30px 30px 80px
    }
    #show-filters {
        left: 12px;
        bottom: 10px
    }
    .overlapping-grid .item {
        margin: 0 0 100px;
    }
    .overlapping-grid .item:nth-of-type(odd) {
        transform: translateX(30px);
        -webkit-transform: translateX(30px)
    }
    .overlapping-grid .item:nth-of-type(2n+2) {
        margin-left: calc(30% - 30px)
    }
    .overlapping-grid .item:last-child {
        margin-bottom: 100px
    }
}

@media only screen and (max-width: 711px) {	
    footer,
    #footer-container {
        height: 100px;
    }
}

@media only screen and (max-width: 690px) {	
    .embed-responsive.small-podcast::before {
        padding-top: 200px
    }
    .item-icons {
        display: none;
    }
}

@media only screen and (max-width: 634px) {	
    .embed-responsive.big-podcast::before {
        padding-top: 450px
    }
}

@media only screen and (max-width: 580px) {	
    .embed-responsive.small-podcast::before {
        padding-top: 560px
    }
    table.reference-info th,
    table.reference-info td {
        display: block;
        width: 100%;
    }
    table.reference-info td {
        padding-bottom: 1rem;
    }
}


@media only screen and (max-width: 479px) {	
    .content-full-width,
    .content-max-width {
        padding-left: 20px;
        padding-right: 20px
    }
    .content-margin-left {
        padding-left: 20px;
        padding-right: 20px;
    }
	.flexnav li a {
		font-size: 24px;
	}
	h1,.h1,
    h2,.h2 {
        line-height: 1.2
    }
    h3,.h3,
    h4,.h4 {
        line-height: 1.3
    }
    h5,.h5,
    h6,.h6 {
        line-height: 1.5
    }
	.big-title {
        font-size: 2.5rem;
	}
	h1,.h1 {
		font-size:2rem;
	}
	
	h2,.h2 {
		font-size: 1.75rem;
	}
	
	h3,.h3 {
		font-size:1.5rem;
		margin-left:-1px;
	}
	
	h4,.h4 {
		font-size:1.25rem;	
	}
	
	h5,.h5 {
		font-size:1.125rem;
	}
	
	h6,.h6{
		font-size:1rem;
	}
    
	#main-page-content.first .content-row.first {
		padding-top: 140px;
	}
	
	.row_padding_top {
		padding-top:12vw;
	}
	
	.row_padding_bottom {
		padding-bottom:12vw;
	}
		
	.row_padding_left {
		padding-left: 0px;
	}
	
	.row_padding_right {
		padding-right: 0px;
	}
	
	.full.row_padding_left {
		padding-left: 20px;
	}
	
	.full.row_padding_right {
		padding-right: 20px;
	}
	
	.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.full.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 20px;
		padding-right: 20px;
	}
	
	hr {
		height: 10px;
	}
    
	.percentage-wrapper {
		right: 20px;
		bottom: 10px;
	}
	
	.percentage-intro {
		left: 20px;
		bottom: 10px;
	}
	
	#logo {
		left: 15px;
	}
    
	#logo img {
		height: 40px;
	}

    .button-wrap.menu.burger-lines .icon-wrap {
        width: 60px;
        height: 60px;
    }
	
	.button-wrap.right.menu {
		right: -10px;
	}
	
	.button-wrap.right.menu.burger-lines {
		right: 10px;
	}
    
    footer {
        height: 85px;
    }
    
	#footer-container {
        height: 85px;
		padding: 15px 0;
	}
    
	#footer-container #backtotop.button-wrap.left {
        display: none
	}
	
	footer.showcase-footer #footer-container {
		padding: 0px 20px;
	}
	
	.copyright {
		left: 0px;
	}
	
	.socials-wrap {
		float: none;
		left: 0;
		right: auto;
	}
	
	.arrows-wrap {
		left: -10px;
		width: 80px;
	}
	
	.prev-wrap, .next-wrap {
    	width: 40px;
	}
	
	footer.showcase-footer .arrows-wrap {
		right: 0;
		left: 0;
		float: none;
		margin: auto;
	}
	
	footer.showcase-footer .arrows-wrap {
		width: 100%;
	}
	
	footer.showcase-footer .prev-wrap, footer.showcase-footer .next-wrap {
    	width: 60px;
	}
	
	footer.showcase-footer .footer-middle {
		top: 0px;
	}
	
	footer.showcase-footer .showcase-subtitles-wrap {
		left: 0;
	}
	
	footer.showcase-footer .socials-wrap {
		display:none;
	}
	
	.button-text {
		display:none;
	}
	
	#main-page-content .button-text, #hero .button-text {
		display:block;
	}
    
    #filters-overlay .outer {
        padding: 20px 20px 80px
    }
    #show-filters {
        left: 2px;
        bottom: 2px
    }
    #home-references .trigger-item {
        margin-bottom: 12vw;
    }
    .overlapping-grid .item {
        margin: 0 0 75px;
    }
    .overlapping-grid .item:nth-of-type(odd) {
        transform: translateX(20px);
        -webkit-transform: translateX(20px)
    }
    .overlapping-grid .item:nth-of-type(2n+2) {
        margin-left: calc(30% - 20px)
    }
    .overlapping-grid .item:last-child {
        margin-bottom: 75px
    }
    .see-all-works {
		padding-left: 20px;
	}
    .landing-grid .item-caption,
    .item-caption {
        padding: 15px 20px
    }
	.two-grid {
		margin-left: -20px;
        margin-right: -20px;
	}
    .below-caption .item-title {
        font-size: 6vw;
    }
    .item-title {
        font-size: 5.5vw;
    }
    .item-subtitle {
        font-size: 3.75vw;
    }
    .embed-responsive.small-podcast::before {
        padding-top: 150%
    }
}

@media only screen and (max-width: 359px) {	
	#logo img {
		height: 35px;
	}
    
}

@media only screen and (orientation: landscape) {
    .show-landscape {
        display: block!important;
    }
    .show-portrait {
        display: none!important;
    }
}
@media only screen and (orientation: portrait) {
    .show-landscape {
        display: none!important;
    }
    .show-portrait {
        display: block!important;
    }
}

@media only screen and (min-device-width : 375px) and (max-device-width : 667px) and (orientation : landscape) {
	#rotate-device {
		display:block;
	}
}