
*, ::after, ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fff
}

[tabindex="-1"]:focus:not(:focus-visible) {
    outline: 0 !important
}

hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: .5rem
}

p {
    margin-top: 0;
    margin-bottom: 1rem
}

abbr[data-original-title], abbr[title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit
}

dl, ol, ul {
    margin-top: 0;
    margin-bottom: 1rem
}

ol ol, ol ul, ul ol, ul ul {
    margin-bottom: 0
}

dt {
    font-weight: 700
}

dd {
    margin-bottom: .5rem;
    margin-left: 0
}

blockquote {
    margin: 0 0 1rem
}

b, strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

sub, sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    color: #007bff;
    text-decoration: none;
    background-color: transparent
}

a:hover {
    color: #0056b3;
    text-decoration: underline
}

a:not([href]) {
    color: inherit;
    text-decoration: none
}

a:not([href]):hover {
    color: inherit;
    text-decoration: none
}

code, kbd, pre, samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 1em
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    -ms-overflow-style: scrollbar
}

figure {
    margin: 0 0 1rem
}

img {
    vertical-align: middle;
    border-style: none
}

svg {
    overflow: hidden;
    vertical-align: middle
}

table {
    border-collapse: collapse
}

caption {
    padding-top: .75rem;
    padding-bottom: .75rem;
    color: #6c757d;
    text-align: left;
    caption-side: bottom
}

th {
    text-align: inherit
}

label {
    display: inline-block;
    margin-bottom: .5rem
}

button {
    border-radius: 0
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
}

button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

[role=button] {
    cursor: pointer
}

select {
    word-wrap: normal
}

[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: button
}

[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    padding: 0;
    border-style: none
}

input[type=checkbox], input[type=radio] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0
}

textarea {
    overflow: auto;
    resize: vertical
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0
}

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal
}

progress {
    vertical-align: baseline
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px;
    -webkit-appearance: none
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

output {
    display: inline-block
}

summary {
    display: list-item;
    cursor: pointer
}

template {
    display: none
}

[hidden] {
    display: none !important
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-overflow-style: scrollbar
}

*, ::after, ::before {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

@media (min-width: 641px) {
    .container {
        max-width: 540px
    }
}

@media (min-width: 769px) {
    .container {
        max-width: 720px
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px
    }
}

.container-fluid, .container-lg, .container-md, .container-sm, .container-xl {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

@media (min-width: 641px) {
    .container, .container-sm {
        max-width: 540px
    }
}

@media (min-width: 769px) {
    .container, .container-md, .container-sm {
        max-width: 720px
    }
}

@media (min-width: 992px) {
    .container, .container-lg, .container-md, .container-sm {
        max-width: 960px
    }
}

@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1140px
    }
}

.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px
}

.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, .col-xxl, .col-xxl-1, .col-xxl-10, .col-xxl-11, .col-xxl-12, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6, .col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-auto {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px
}

.col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%
}

.row-cols-1 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.row-cols-2 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.row-cols-3 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.row-cols-4 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.row-cols-5 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%
}

.row-cols-6 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.col-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.col-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.col-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.col-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.col-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.col-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.col-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.col-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
}

.order-last {
    -webkit-box-ordinal-group: 14;
    -ms-flex-order: 13;
    order: 13
}

.order-0 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0
}

.order-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.order-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.order-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

.order-4 {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4
}

.order-5 {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5
}

.order-6 {
    -webkit-box-ordinal-group: 7;
    -ms-flex-order: 6;
    order: 6
}

.order-7 {
    -webkit-box-ordinal-group: 8;
    -ms-flex-order: 7;
    order: 7
}

.order-8 {
    -webkit-box-ordinal-group: 9;
    -ms-flex-order: 8;
    order: 8
}

.order-9 {
    -webkit-box-ordinal-group: 10;
    -ms-flex-order: 9;
    order: 9
}

.order-10 {
    -webkit-box-ordinal-group: 11;
    -ms-flex-order: 10;
    order: 10
}

.order-11 {
    -webkit-box-ordinal-group: 12;
    -ms-flex-order: 11;
    order: 11
}

.order-12 {
    -webkit-box-ordinal-group: 13;
    -ms-flex-order: 12;
    order: 12
}

.offset-1 {
    margin-left: 8.33333%
}

.offset-2 {
    margin-left: 16.66667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.33333%
}

.offset-5 {
    margin-left: 41.66667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.33333%
}

.offset-8 {
    margin-left: 66.66667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.33333%
}

.offset-11 {
    margin-left: 91.66667%
}

@media (min-width: 641px) {
    .col-sm {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-sm-1 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-sm-2 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-sm-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-sm-4 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-sm-5 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-sm-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-sm-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-sm-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-sm-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-sm-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-sm-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-sm-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-sm-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-sm-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-sm-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-sm-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-sm-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-sm-first {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }

    .order-sm-last {
        -webkit-box-ordinal-group: 14;
        -ms-flex-order: 13;
        order: 13
    }

    .order-sm-0 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0
    }

    .order-sm-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .order-sm-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .order-sm-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }

    .order-sm-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4
    }

    .order-sm-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5
    }

    .order-sm-6 {
        -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
        order: 6
    }

    .order-sm-7 {
        -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
        order: 7
    }

    .order-sm-8 {
        -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
        order: 8
    }

    .order-sm-9 {
        -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
        order: 9
    }

    .order-sm-10 {
        -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
        order: 10
    }

    .order-sm-11 {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 11;
        order: 11
    }

    .order-sm-12 {
        -webkit-box-ordinal-group: 13;
        -ms-flex-order: 12;
        order: 12
    }

    .offset-sm-0 {
        margin-left: 0
    }

    .offset-sm-1 {
        margin-left: 8.33333%
    }

    .offset-sm-2 {
        margin-left: 16.66667%
    }

    .offset-sm-3 {
        margin-left: 25%
    }

    .offset-sm-4 {
        margin-left: 33.33333%
    }

    .offset-sm-5 {
        margin-left: 41.66667%
    }

    .offset-sm-6 {
        margin-left: 50%
    }

    .offset-sm-7 {
        margin-left: 58.33333%
    }

    .offset-sm-8 {
        margin-left: 66.66667%
    }

    .offset-sm-9 {
        margin-left: 75%
    }

    .offset-sm-10 {
        margin-left: 83.33333%
    }

    .offset-sm-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 769px) {
    .col-md {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-md-1 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-md-2 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-md-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-md-4 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-md-5 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-md-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-md-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-md-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-md-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-md-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-md-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-md-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-md-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-md-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-md-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-md-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-md-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-md-first {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }

    .order-md-last {
        -webkit-box-ordinal-group: 14;
        -ms-flex-order: 13;
        order: 13
    }

    .order-md-0 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0
    }

    .order-md-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .order-md-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .order-md-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }

    .order-md-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4
    }

    .order-md-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5
    }

    .order-md-6 {
        -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
        order: 6
    }

    .order-md-7 {
        -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
        order: 7
    }

    .order-md-8 {
        -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
        order: 8
    }

    .order-md-9 {
        -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
        order: 9
    }

    .order-md-10 {
        -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
        order: 10
    }

    .order-md-11 {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 11;
        order: 11
    }

    .order-md-12 {
        -webkit-box-ordinal-group: 13;
        -ms-flex-order: 12;
        order: 12
    }

    .offset-md-0 {
        margin-left: 0
    }

    .offset-md-1 {
        margin-left: 8.33333%
    }

    .offset-md-2 {
        margin-left: 16.66667%
    }

    .offset-md-3 {
        margin-left: 25%
    }

    .offset-md-4 {
        margin-left: 33.33333%
    }

    .offset-md-5 {
        margin-left: 41.66667%
    }

    .offset-md-6 {
        margin-left: 50%
    }

    .offset-md-7 {
        margin-left: 58.33333%
    }

    .offset-md-8 {
        margin-left: 66.66667%
    }

    .offset-md-9 {
        margin-left: 75%
    }

    .offset-md-10 {
        margin-left: 83.33333%
    }

    .offset-md-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 992px) {
    .col-lg {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-lg-1 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-lg-2 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-lg-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-lg-4 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-lg-5 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-lg-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-lg-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-lg-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-lg-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-lg-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-lg-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-lg-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-lg-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-lg-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-lg-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-lg-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-lg-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-lg-first {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }

    .order-lg-last {
        -webkit-box-ordinal-group: 14;
        -ms-flex-order: 13;
        order: 13
    }

    .order-lg-0 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0
    }

    .order-lg-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .order-lg-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .order-lg-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }

    .order-lg-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4
    }

    .order-lg-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5
    }

    .order-lg-6 {
        -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
        order: 6
    }

    .order-lg-7 {
        -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
        order: 7
    }

    .order-lg-8 {
        -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
        order: 8
    }

    .order-lg-9 {
        -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
        order: 9
    }

    .order-lg-10 {
        -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
        order: 10
    }

    .order-lg-11 {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 11;
        order: 11
    }

    .order-lg-12 {
        -webkit-box-ordinal-group: 13;
        -ms-flex-order: 12;
        order: 12
    }

    .offset-lg-0 {
        margin-left: 0
    }

    .offset-lg-1 {
        margin-left: 8.33333%
    }

    .offset-lg-2 {
        margin-left: 16.66667%
    }

    .offset-lg-3 {
        margin-left: 25%
    }

    .offset-lg-4 {
        margin-left: 33.33333%
    }

    .offset-lg-5 {
        margin-left: 41.66667%
    }

    .offset-lg-6 {
        margin-left: 50%
    }

    .offset-lg-7 {
        margin-left: 58.33333%
    }

    .offset-lg-8 {
        margin-left: 66.66667%
    }

    .offset-lg-9 {
        margin-left: 75%
    }

    .offset-lg-10 {
        margin-left: 83.33333%
    }

    .offset-lg-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 1200px) {
    .col-xl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-xl-1 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-xl-2 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-xl-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-xl-4 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-xl-5 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-xl-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xl-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-xl-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xl-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-xl-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-xl-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xl-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-xl-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-xl-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xl-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-xl-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-xl-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xl-first {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }

    .order-xl-last {
        -webkit-box-ordinal-group: 14;
        -ms-flex-order: 13;
        order: 13
    }

    .order-xl-0 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0
    }

    .order-xl-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .order-xl-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .order-xl-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }

    .order-xl-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4
    }

    .order-xl-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5
    }

    .order-xl-6 {
        -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
        order: 6
    }

    .order-xl-7 {
        -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
        order: 7
    }

    .order-xl-8 {
        -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
        order: 8
    }

    .order-xl-9 {
        -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
        order: 9
    }

    .order-xl-10 {
        -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
        order: 10
    }

    .order-xl-11 {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 11;
        order: 11
    }

    .order-xl-12 {
        -webkit-box-ordinal-group: 13;
        -ms-flex-order: 12;
        order: 12
    }

    .offset-xl-0 {
        margin-left: 0
    }

    .offset-xl-1 {
        margin-left: 8.33333%
    }

    .offset-xl-2 {
        margin-left: 16.66667%
    }

    .offset-xl-3 {
        margin-left: 25%
    }

    .offset-xl-4 {
        margin-left: 33.33333%
    }

    .offset-xl-5 {
        margin-left: 41.66667%
    }

    .offset-xl-6 {
        margin-left: 50%
    }

    .offset-xl-7 {
        margin-left: 58.33333%
    }

    .offset-xl-8 {
        margin-left: 66.66667%
    }

    .offset-xl-9 {
        margin-left: 75%
    }

    .offset-xl-10 {
        margin-left: 83.33333%
    }

    .offset-xl-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 1300px) {
    .col-xxl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-xxl-1 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-xxl-2 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-xxl-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-xxl-4 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-xxl-5 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-xxl-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xxl-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xxl-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-xxl-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xxl-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xxl-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-xxl-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-xxl-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xxl-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-xxl-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-xxl-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xxl-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-xxl-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-xxl-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xxl-first {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }

    .order-xxl-last {
        -webkit-box-ordinal-group: 14;
        -ms-flex-order: 13;
        order: 13
    }

    .order-xxl-0 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0
    }

    .order-xxl-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .order-xxl-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .order-xxl-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }

    .order-xxl-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4
    }

    .order-xxl-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5
    }

    .order-xxl-6 {
        -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
        order: 6
    }

    .order-xxl-7 {
        -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
        order: 7
    }

    .order-xxl-8 {
        -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
        order: 8
    }

    .order-xxl-9 {
        -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
        order: 9
    }

    .order-xxl-10 {
        -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
        order: 10
    }

    .order-xxl-11 {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 11;
        order: 11
    }

    .order-xxl-12 {
        -webkit-box-ordinal-group: 13;
        -ms-flex-order: 12;
        order: 12
    }

    .offset-xxl-0 {
        margin-left: 0
    }

    .offset-xxl-1 {
        margin-left: 8.33333%
    }

    .offset-xxl-2 {
        margin-left: 16.66667%
    }

    .offset-xxl-3 {
        margin-left: 25%
    }

    .offset-xxl-4 {
        margin-left: 33.33333%
    }

    .offset-xxl-5 {
        margin-left: 41.66667%
    }

    .offset-xxl-6 {
        margin-left: 50%
    }

    .offset-xxl-7 {
        margin-left: 58.33333%
    }

    .offset-xxl-8 {
        margin-left: 66.66667%
    }

    .offset-xxl-9 {
        margin-left: 75%
    }

    .offset-xxl-10 {
        margin-left: 83.33333%
    }

    .offset-xxl-11 {
        margin-left: 91.66667%
    }
}

.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: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important
}

.d-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important
}

@media (min-width: 641px) {
    .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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-sm-inline-flex {
        display: -webkit-inline-box !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

@media (min-width: 769px) {
    .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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-md-inline-flex {
        display: -webkit-inline-box !important;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-lg-inline-flex {
        display: -webkit-inline-box !important;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-xl-inline-flex {
        display: -webkit-inline-box !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

@media (min-width: 1300px) {
    .d-xxl-none {
        display: none !important
    }

    .d-xxl-inline {
        display: inline !important
    }

    .d-xxl-inline-block {
        display: inline-block !important
    }

    .d-xxl-block {
        display: block !important
    }

    .d-xxl-table {
        display: table !important
    }

    .d-xxl-table-row {
        display: table-row !important
    }

    .d-xxl-table-cell {
        display: table-cell !important
    }

    .d-xxl-flex {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-xxl-inline-flex {
        display: -webkit-inline-box !important;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-print-inline-flex {
        display: -webkit-inline-box !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

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

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

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

.flex-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -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 {
    -webkit-box-flex: 1 !important;
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important
}

.flex-grow-0 {
    -webkit-box-flex: 0 !important;
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important
}

.flex-grow-1 {
    -webkit-box-flex: 1 !important;
    -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 {
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important
}

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

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

.justify-content-between {
    -webkit-box-pack: justify !important;
    -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 {
    -webkit-box-align: start !important;
    -ms-flex-align: start !important;
    align-items: flex-start !important
}

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

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

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

.align-items-stretch {
    -webkit-box-align: stretch !important;
    -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;
    -ms-grid-row-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;
    -ms-grid-row-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;
    -ms-grid-row-align: stretch !important;
    align-self: stretch !important
}

@media (min-width: 641px) {
    .flex-sm-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

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

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

    .flex-sm-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -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 {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-sm-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-sm-grow-1 {
        -webkit-box-flex: 1 !important;
        -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 {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

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

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

    .justify-content-sm-between {
        -webkit-box-pack: justify !important;
        -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 {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

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

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

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

    .align-items-sm-stretch {
        -webkit-box-align: stretch !important;
        -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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width: 769px) {
    .flex-md-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

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

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

    .flex-md-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -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 {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-md-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-md-grow-1 {
        -webkit-box-flex: 1 !important;
        -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 {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

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

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

    .justify-content-md-between {
        -webkit-box-pack: justify !important;
        -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 {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

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

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

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

    .align-items-md-stretch {
        -webkit-box-align: stretch !important;
        -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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width: 992px) {
    .flex-lg-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

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

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

    .flex-lg-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -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 {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-lg-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-lg-grow-1 {
        -webkit-box-flex: 1 !important;
        -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 {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

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

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

    .justify-content-lg-between {
        -webkit-box-pack: justify !important;
        -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 {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

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

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

    .align-items-lg-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-lg-stretch {
        -webkit-box-align: stretch !important;
        -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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width: 1200px) {
    .flex-xl-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

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

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

    .flex-xl-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -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 {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-xl-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-xl-grow-1 {
        -webkit-box-flex: 1 !important;
        -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 {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

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

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

    .justify-content-xl-between {
        -webkit-box-pack: justify !important;
        -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 {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

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

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

    .align-items-xl-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-xl-stretch {
        -webkit-box-align: stretch !important;
        -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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important
    }
}

@media (min-width: 1300px) {
    .flex-xxl-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

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

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

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

    .flex-xxl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-xxl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-xxl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-xxl-fill {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-xxl-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-xxl-grow-1 {
        -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-xxl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-xxl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

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

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

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

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

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

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

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

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

    .align-items-xxl-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-xxl-stretch {
        -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-xxl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-xxl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-xxl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-xxl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-xxl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-xxl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-xxl-auto {
        -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important
    }

    .align-self-xxl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-xxl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-xxl-center {
        -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important
    }

    .align-self-xxl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-xxl-stretch {
        -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important
    }
}

.m-0 {
    margin: 0 !important
}

.mt-0, .my-0 {
    margin-top: 0 !important
}

.mr-0, .mx-0 {
    margin-right: 0 !important
}

.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
}

.mr-5, .mx-5 {
    margin-right: 3rem !important
}

.mb-5, .my-5 {
    margin-bottom: 3rem !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
}

.pr-5, .px-5 {
    padding-right: 3rem !important
}

.pb-5, .py-5 {
    padding-bottom: 3rem !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: 641px) {
    .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
    }

    .mr-sm-5, .mx-sm-5 {
        margin-right: 3rem !important
    }

    .mb-sm-5, .my-sm-5 {
        margin-bottom: 3rem !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
    }

    .pr-sm-5, .px-sm-5 {
        padding-right: 3rem !important
    }

    .pb-sm-5, .py-sm-5 {
        padding-bottom: 3rem !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: 769px) {
    .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
    }

    .mr-md-5, .mx-md-5 {
        margin-right: 3rem !important
    }

    .mb-md-5, .my-md-5 {
        margin-bottom: 3rem !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
    }

    .pr-md-5, .px-md-5 {
        padding-right: 3rem !important
    }

    .pb-md-5, .py-md-5 {
        padding-bottom: 3rem !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
    }

    .mr-lg-5, .mx-lg-5 {
        margin-right: 3rem !important
    }

    .mb-lg-5, .my-lg-5 {
        margin-bottom: 3rem !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
    }

    .pr-lg-5, .px-lg-5 {
        padding-right: 3rem !important
    }

    .pb-lg-5, .py-lg-5 {
        padding-bottom: 3rem !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
    }

    .mr-xl-5, .mx-xl-5 {
        margin-right: 3rem !important
    }

    .mb-xl-5, .my-xl-5 {
        margin-bottom: 3rem !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
    }

    .pr-xl-5, .px-xl-5 {
        padding-right: 3rem !important
    }

    .pb-xl-5, .py-xl-5 {
        padding-bottom: 3rem !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
    }
}

@media (min-width: 1300px) {
    .m-xxl-0 {
        margin: 0 !important
    }

    .mt-xxl-0, .my-xxl-0 {
        margin-top: 0 !important
    }

    .mr-xxl-0, .mx-xxl-0 {
        margin-right: 0 !important
    }

    .mb-xxl-0, .my-xxl-0 {
        margin-bottom: 0 !important
    }

    .ml-xxl-0, .mx-xxl-0 {
        margin-left: 0 !important
    }

    .m-xxl-1 {
        margin: .25rem !important
    }

    .mt-xxl-1, .my-xxl-1 {
        margin-top: .25rem !important
    }

    .mr-xxl-1, .mx-xxl-1 {
        margin-right: .25rem !important
    }

    .mb-xxl-1, .my-xxl-1 {
        margin-bottom: .25rem !important
    }

    .ml-xxl-1, .mx-xxl-1 {
        margin-left: .25rem !important
    }

    .m-xxl-2 {
        margin: .5rem !important
    }

    .mt-xxl-2, .my-xxl-2 {
        margin-top: .5rem !important
    }

    .mr-xxl-2, .mx-xxl-2 {
        margin-right: .5rem !important
    }

    .mb-xxl-2, .my-xxl-2 {
        margin-bottom: .5rem !important
    }

    .ml-xxl-2, .mx-xxl-2 {
        margin-left: .5rem !important
    }

    .m-xxl-3 {
        margin: 1rem !important
    }

    .mt-xxl-3, .my-xxl-3 {
        margin-top: 1rem !important
    }

    .mr-xxl-3, .mx-xxl-3 {
        margin-right: 1rem !important
    }

    .mb-xxl-3, .my-xxl-3 {
        margin-bottom: 1rem !important
    }

    .ml-xxl-3, .mx-xxl-3 {
        margin-left: 1rem !important
    }

    .m-xxl-4 {
        margin: 1.5rem !important
    }

    .mt-xxl-4, .my-xxl-4 {
        margin-top: 1.5rem !important
    }

    .mr-xxl-4, .mx-xxl-4 {
        margin-right: 1.5rem !important
    }

    .mb-xxl-4, .my-xxl-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-xxl-4, .mx-xxl-4 {
        margin-left: 1.5rem !important
    }

    .m-xxl-5 {
        margin: 3rem !important
    }

    .mt-xxl-5, .my-xxl-5 {
        margin-top: 3rem !important
    }

    .mr-xxl-5, .mx-xxl-5 {
        margin-right: 3rem !important
    }

    .mb-xxl-5, .my-xxl-5 {
        margin-bottom: 3rem !important
    }

    .ml-xxl-5, .mx-xxl-5 {
        margin-left: 3rem !important
    }

    .p-xxl-0 {
        padding: 0 !important
    }

    .pt-xxl-0, .py-xxl-0 {
        padding-top: 0 !important
    }

    .pr-xxl-0, .px-xxl-0 {
        padding-right: 0 !important
    }

    .pb-xxl-0, .py-xxl-0 {
        padding-bottom: 0 !important
    }

    .pl-xxl-0, .px-xxl-0 {
        padding-left: 0 !important
    }

    .p-xxl-1 {
        padding: .25rem !important
    }

    .pt-xxl-1, .py-xxl-1 {
        padding-top: .25rem !important
    }

    .pr-xxl-1, .px-xxl-1 {
        padding-right: .25rem !important
    }

    .pb-xxl-1, .py-xxl-1 {
        padding-bottom: .25rem !important
    }

    .pl-xxl-1, .px-xxl-1 {
        padding-left: .25rem !important
    }

    .p-xxl-2 {
        padding: .5rem !important
    }

    .pt-xxl-2, .py-xxl-2 {
        padding-top: .5rem !important
    }

    .pr-xxl-2, .px-xxl-2 {
        padding-right: .5rem !important
    }

    .pb-xxl-2, .py-xxl-2 {
        padding-bottom: .5rem !important
    }

    .pl-xxl-2, .px-xxl-2 {
        padding-left: .5rem !important
    }

    .p-xxl-3 {
        padding: 1rem !important
    }

    .pt-xxl-3, .py-xxl-3 {
        padding-top: 1rem !important
    }

    .pr-xxl-3, .px-xxl-3 {
        padding-right: 1rem !important
    }

    .pb-xxl-3, .py-xxl-3 {
        padding-bottom: 1rem !important
    }

    .pl-xxl-3, .px-xxl-3 {
        padding-left: 1rem !important
    }

    .p-xxl-4 {
        padding: 1.5rem !important
    }

    .pt-xxl-4, .py-xxl-4 {
        padding-top: 1.5rem !important
    }

    .pr-xxl-4, .px-xxl-4 {
        padding-right: 1.5rem !important
    }

    .pb-xxl-4, .py-xxl-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-xxl-4, .px-xxl-4 {
        padding-left: 1.5rem !important
    }

    .p-xxl-5 {
        padding: 3rem !important
    }

    .pt-xxl-5, .py-xxl-5 {
        padding-top: 3rem !important
    }

    .pr-xxl-5, .px-xxl-5 {
        padding-right: 3rem !important
    }

    .pb-xxl-5, .py-xxl-5 {
        padding-bottom: 3rem !important
    }

    .pl-xxl-5, .px-xxl-5 {
        padding-left: 3rem !important
    }

    .m-xxl-n1 {
        margin: -.25rem !important
    }

    .mt-xxl-n1, .my-xxl-n1 {
        margin-top: -.25rem !important
    }

    .mr-xxl-n1, .mx-xxl-n1 {
        margin-right: -.25rem !important
    }

    .mb-xxl-n1, .my-xxl-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-xxl-n1, .mx-xxl-n1 {
        margin-left: -.25rem !important
    }

    .m-xxl-n2 {
        margin: -.5rem !important
    }

    .mt-xxl-n2, .my-xxl-n2 {
        margin-top: -.5rem !important
    }

    .mr-xxl-n2, .mx-xxl-n2 {
        margin-right: -.5rem !important
    }

    .mb-xxl-n2, .my-xxl-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-xxl-n2, .mx-xxl-n2 {
        margin-left: -.5rem !important
    }

    .m-xxl-n3 {
        margin: -1rem !important
    }

    .mt-xxl-n3, .my-xxl-n3 {
        margin-top: -1rem !important
    }

    .mr-xxl-n3, .mx-xxl-n3 {
        margin-right: -1rem !important
    }

    .mb-xxl-n3, .my-xxl-n3 {
        margin-bottom: -1rem !important
    }

    .ml-xxl-n3, .mx-xxl-n3 {
        margin-left: -1rem !important
    }

    .m-xxl-n4 {
        margin: -1.5rem !important
    }

    .mt-xxl-n4, .my-xxl-n4 {
        margin-top: -1.5rem !important
    }

    .mr-xxl-n4, .mx-xxl-n4 {
        margin-right: -1.5rem !important
    }

    .mb-xxl-n4, .my-xxl-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-xxl-n4, .mx-xxl-n4 {
        margin-left: -1.5rem !important
    }

    .m-xxl-n5 {
        margin: -3rem !important
    }

    .mt-xxl-n5, .my-xxl-n5 {
        margin-top: -3rem !important
    }

    .mr-xxl-n5, .mx-xxl-n5 {
        margin-right: -3rem !important
    }

    .mb-xxl-n5, .my-xxl-n5 {
        margin-bottom: -3rem !important
    }

    .ml-xxl-n5, .mx-xxl-n5 {
        margin-left: -3rem !important
    }

    .m-xxl-auto {
        margin: auto !important
    }

    .mt-xxl-auto, .my-xxl-auto {
        margin-top: auto !important
    }

    .mr-xxl-auto, .mx-xxl-auto {
        margin-right: auto !important
    }

    .mb-xxl-auto, .my-xxl-auto {
        margin-bottom: auto !important
    }

    .ml-xxl-auto, .mx-xxl-auto {
        margin-left: auto !important
    }
}

::-webkit-input-placeholder {
    color: #232323
}

::-moz-placeholder {
    color: #232323
}

:-ms-input-placeholder {
    color: #232323
}

::-ms-input-placeholder {
    color: #232323
}

::placeholder {
    color: #232323
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    cursor: none;
}

input, textarea {
    outline: 0
}

input:focus:required:invalid, textarea:focus:required:invalid {
    border-color: red
}

input:required:valid, textarea:required:valid {
    border-color: green
}

body, html {
    overflow-x: hidden
}

a, a:focus, a:hover {
    outline: 0 !important
}
b{
    font-family: 'Arial CE';
}
body {
    font-size: 16px;
    min-width: 320px;
    position: relative;
    line-height: 1.65;
    font-family: 'Arial', sans-serif;

    overflow-x: hidden;
    color: #232323;
    opacity: 1;
    -webkit-transition: opacity ease-in-out .7s;
    -o-transition: opacity ease-in-out .7s;
    transition: opacity ease-in-out .7s
}

body.body-hidden {
    height: 100vh !important;
    height: calc(var(--vh, 1vh) * 100) !important;
    overflow: hidden !important
}

body.about-body .fullscreen-block, body.index-body .fullscreen-block, body.project-body .fullscreen-block {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    min-height: 320px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.owl-carousel__wrapper {
    width: 50vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.owl-carousel__wrapper .slider_item, .owl-carousel__wrapper .slider_item-project {
    width: calc((50vw - 120px) / 2) !important;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.owl-carousel__wrapper .video_item {
    width: calc(50vw - 60px) !important;
    height: 100%
}

.owl-carousel__wrapper .video_item .iframe-wrapper {
    height: calc(80vh - 130px);
    padding-bottom: 0;
    position: relative
}

.owl-carousel__wrapper .video_item .iframe-wrapper .iframe-wrapper_mask {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    cursor: pointer
}

.first-letter-small {
    text-transform: lowercase
}

.block-mobile {
    display: none
}

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

.footer-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2
}

#language_switch {
    padding-right: 15px
}

.main-title-wrapper {
    display: block;
    overflow: hidden
}

.info-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding-bottom: 50px;
    padding-top: 15px;
    margin-left: 60px
}

.align-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

#preloader, #preloader-light {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 100;
    background-color: #fff;
    width: 100%;
    height: 100%
}

.fullscreen-block {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden
}

.fullscreen-block .row {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.fullscreen-block .text-content {
    font-size: calc(.5vw + 6px);
    line-height: 1.6vw;
    letter-spacing: -.14px
}

.height-100 {
    height: 100%
}

.display-inline {
    display: inline
}

.flex-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

a {
    color: #232323;
    text-decoration: none;
    opacity: 1
}

a:hover {
    color: #232323;
    text-decoration: none
}

a.link {
    opacity: 1;
    -webkit-transition: opacity .4s ease;
    -o-transition: opacity .4s ease;
    transition: opacity .4s ease
}

a.link:hover {
    opacity: .7;
    text-decoration: none;
    color: #232323
}

.logo-wrapper {
    line-height: .8
}

.logo {
    text-transform: uppercase;
    color: #232323;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: .67;
    letter-spacing: normal;
    text-align: left;
    z-index: 60;
    position: relative;
    font-size: 1.40625em
}

.top-wrapper {
    position: fixed;
    width: auto;
    left: 0;
    right: 0;
    padding-left: 60px;
    padding-right: 60px;
    top: 0;
    height: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 6;
    background-color: transparent;
    -webkit-transition: background-color .3s ease;
    -o-transition: background-color .3s ease;
    transition: background-color .3s ease
}

.top-wrapper.header-white {
    background-color: #fff
}

.container {
    width: 100%;
    max-width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 60px;
    padding-left: 60px;
    padding-top: 30px;
    padding-bottom: 84px;
    margin-left: auto;
    margin-right: auto
}

time {
    font-size: .75em;
    line-height: 1.2
}

.img-responsive {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto
}

.parent {
    background-image: url(data:image/gif;base64,R0lGODlhCgAIAIABAN3d3f///yH5BAEAAAEALAAAAAAKAAgAAAINjAOnyJv2oJOrVXrzKQA7)
}

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

.small-text {
    font-size: .8333vw;
    margin-bottom: 0;
    line-height: 1.2
}

.small-text .bold-text {
    font-size: .625vw
}

.big-text {
    text-transform: uppercase;
    font-size: 3.84375em;
    line-height: .88;
    margin-bottom: 0;
    font-family: ArticulatCFv2-medium, sans-serif;
    font-weight: 500;
    letter-spacing: -2.05px
}

.bigger-text {
    font-size: 7.29vw;
    text-transform: uppercase;
    line-height: .8;
    margin-bottom: 2.29vw;
    font-family: ArticulatCFv2-medium, sans-serif;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: -2.5px;
    display: block;
    text-align: left;
    padding-left: 0;
    width: 100%
}

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

.text-info {
    position: relative
}

.up-text {
    text-transform: uppercase
}

.bold-text {
    font-weight: 600;
    font-family: 'Arial', sans-serif;
}

.medium-text {
    font-weight: 500;
    font-family: ArticulatCFv2-medium, sans-serif
}

.text-content {
    font-size: .9em
}

.text-content a:not(.main-title-wrapper) {
    text-decoration: underline;
    font-family: 'Arial', sans-serif;
}

.text-right {
    text-align: right
}

.text-center {
    text-align: center
}

.position-relative {
    position: relative
}

.footer-awards {
    z-index: 2
}

.awards {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.awards li {
    display: inline-block;
    margin-right: 1.8vw
}

.awards li img {
    max-width: 8vw;
    max-height: 3vw
}


.flex-justify-end {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.text-left {
    text-align: left
}

.text-right {
    text-align: right
}

.row-bottom-info span {
    padding-left: 10%
}

.footer-news {
    pointer-events: none
}

.cursor {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    pointer-events: none
}

.cursor--small {
    width: 5px;
    height: 5px;
    left: -2.5px;
    top: -2.5px;
    border-radius: 50%;
    z-index: 11000;
    background: 0 0
}

.cursor--canvas {
    width: 100vw;
    height: 100vh;
    z-index: 12000
}

.pulse-wrapper-gray {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 99;
    -webkit-transform: translate3d(0, 0, 1px);
    transform: translate3d(0, 0, 1px)
}

.ripple {
    border-radius: 50%;
    background: rgba(0, 0, 0, .28);
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    position: absolute;
    opacity: 1;
    pointer-events: none;
    z-index: 8;
    width: 100vw;
    height: 100vw
}

.rippleEffect {
    -webkit-animation: rippleDrop .6s linear;
    animation: rippleDrop .6s linear;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

@-webkit-keyframes rippleDrop {
    100% {
        -webkit-transform: scale(2.5);
        transform: scale(2.5);
        opacity: 0
    }
}

@keyframes rippleDrop {
    100% {
        -webkit-transform: scale(2.5);
        transform: scale(2.5);
        opacity: 0
    }
}

.pulse-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    pointer-events: none
}

.ripple-white {
    border-radius: 50%;
    background: #fff;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    position: absolute;
    opacity: 1;
    pointer-events: none;
    z-index: 5;
    width: 100vw;
    height: 100vw;
    will-change: transform
}

.ripple-white-effect {
    -webkit-animation: ripple-white-drop .8s linear;
    animation: ripple-white-drop .8s linear;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

@-webkit-keyframes ripple-white-drop {
    100% {
        -webkit-transform: scale(2.5);
        transform: scale(2.5)
    }
}

@keyframes ripple-white-drop {
    100% {
        -webkit-transform: scale(2.5);
        transform: scale(2.5)
    }
}

.ripple-white-reverse {
    border-radius: 50%;
    background-color: #fff;
    -webkit-transform: scale(2.5);
    -ms-transform: scale(2.5);
    transform: scale(2.5);
    position: absolute;
    opacity: 1;
    z-index: 5;
    width: 100vw;
    height: 100vw;
    will-change: transform
}

.ripple-white-reverse-effect {
    -webkit-animation: ripple-white-reverse-drop .8s linear;
    animation: ripple-white-reverse-drop .8s linear;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

@-webkit-keyframes ripple-white-reverse-drop {
    100% {
        -webkit-transform: scale(0);
        transform: scale(0)
    }
}

@keyframes ripple-white-reverse-drop {
    100% {
        -webkit-transform: scale(0);
        transform: scale(0)
    }
}

.roll-down-block {
    -webkit-animation: roll-down .5s ease-in-out;
    animation: roll-down .5s ease-in-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.roll-up-block {
    -webkit-animation: roll-up .5s ease-in-out;
    animation: roll-up .5s ease-in-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes roll-down {
    from {
        width: 0;
        left: -30px
    }
    to {
        width: 34%;
        left: 0
    }
}

@keyframes roll-down {
    from {
        width: 0;
        left: -30px
    }
    to {
        width: 34%;
        left: 0
    }
}

@-webkit-keyframes roll-up {
    from {
        width: 34%;
        left: 0
    }
    to {
        width: 0;
        left: -30px
    }
}

@keyframes roll-up {
    from {
        width: 34%;
        left: 0
    }
    to {
        width: 0;
        left: -30px
    }
}

body:not(.index-body) .sw-topper {
    -webkit-animation: sw-topper .5s ease-in-out;
    animation: sw-topper .5s ease-in-out
}

.index-body .sw-topper {
    visibility: hidden
}

.index-body.ready .sw-topper {
    visibility: visible;
    -webkit-animation: sw-topper .5s ease-in-out;
    animation: sw-topper .5s ease-in-out
}

@-webkit-keyframes sw-topper {
    from {
        width: 0
    }
    to {
        width: 30px
    }
}

@keyframes sw-topper {
    from {
        width: 0
    }
    to {
        width: 30px
    }
}

body:not(.index-body) .sw-bottom {
    -webkit-animation: sw-bottom .5s ease-in-out;
    animation: sw-bottom .5s ease-in-out
}

.index-body .sw-bottom {
    visibility: hidden
}

.index-body.ready .sw-bottom {
    visibility: visible;
    -webkit-animation: sw-bottom .5s ease-in-out;
    animation: sw-bottom .5s ease-in-out
}

@-webkit-keyframes sw-bottom {
    from {
        width: 0
    }
    to {
        width: 45px
    }
}

@keyframes sw-bottom {
    from {
        width: 0
    }
    to {
        width: 45px
    }
}

.slide-link {
    -webkit-transition: -webkit-transform .5s ease;
    transition: -webkit-transform .5s ease;
    -o-transition: transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    visibility: hidden
}

.slide-link.slideInDownLink {
    -webkit-transition: -webkit-transform .5s ease;
    transition: -webkit-transform .5s ease;
    -o-transition: transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0)
}

.slide-in-up {
    visibility: hidden
}

.small-text .slide-in-up {
    visibility: visible
}

@-webkit-keyframes slideOutDown {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes slideOutDown {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

.slideOutDown {
    -webkit-animation-name: slideOutDown;
    animation-name: slideOutDown;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.project-body .slide-in-up, .ready .slide-in-up {
    -webkit-animation: slide-in-up .6s ease-in-out;
    animation: slide-in-up .6s ease-in-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes slide-in-up {
    from {
        -webkit-transform: translate3d(0, 150%, 0);
        transform: translate3d(0, 150%, 0);
        visibility: hidden
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        visibility: visible
    }
}

@keyframes slide-in-up {
    from {
        -webkit-transform: translate3d(0, 150%, 0);
        transform: translate3d(0, 150%, 0);
        visibility: hidden
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        visibility: visible
    }
}

.slide-out-up {
    -webkit-animation: slide-out-up .6s ease-in-out;
    animation: slide-out-up .6s ease-in-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes slide-out-up {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
    to {
        -webkit-transform: translate3d(0, -150%, 0);
        transform: translate3d(0, -150%, 0);
        visibility: hidden
    }
}

@keyframes slide-out-up {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
    to {
        -webkit-transform: translate3d(0, -150%, 0);
        transform: translate3d(0, -150%, 0);
        visibility: hidden
    }
}

.lb-image {
    position: relative;
    z-index: 2
}

.lb-loader {
    z-index: 1
}

.fade-in-left {
    visibility: hidden
}

.ready .fade-in-left {
    -webkit-animation-name: fade-in-left;
    animation-name: fade-in-left;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.project-body .fade-in-left {
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

@-webkit-keyframes fade-in-left {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-10%, 0, 0);
        transform: translate3d(-10%, 0, 0);
        visibility: hidden
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        visibility: visible
    }
}

@keyframes fade-in-left {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-10%, 0, 0);
        transform: translate3d(-10%, 0, 0);
        visibility: hidden
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        visibility: visible
    }
}

.fade-out-left {
    -webkit-animation-name: fade-out-left;
    animation-name: fade-out-left;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes fade-out-left {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-10%, 0, 0);
        transform: translate3d(-10%, 0, 0)
    }
}

@keyframes fade-out-left {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-10%, 0, 0);
        transform: translate3d(-10%, 0, 0)
    }
}

.toggle_menu {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    float: right;
    margin-right: -6px;
    margin-top: 1px;
    position: relative;
    z-index: 100;
    border: none;
    outline: 0 !important;
    display: block;
    background: 0 0;
    -webkit-box-shadow: none !important;
    box-shadow: none !important
}

.sandwich {
    width: 45px;
    height: 45px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 6px;
    margin: auto;
    margin-right: 0;
    z-index: 200;
    display: block;
    -webkit-transition: -webkit-transform .2s ease;
    transition: -webkit-transform .2s ease;
    -o-transition: transform .2s ease;
    transition: transform .2s ease;
    transition: transform .2s ease, -webkit-transform .2s ease
}

.sw-topper {
    display: block;
    position: relative;
    top: 19px;
    width: 30px;
    height: .14em;
    background: #232323;
    border: none;
    border-radius: 4px 4px 4px 4px;
    -webkit-transition: top .2s, width .2s, -webkit-transform .2s;
    transition: top .2s, width .2s, -webkit-transform .2s;
    -o-transition: transform .2s, top .2s, width .2s;
    transition: transform .2s, top .2s, width .2s;
    transition: transform .2s, top .2s, width .2s, -webkit-transform .2s
}

.sw-bottom {
    display: block;
    position: relative;
    width: 45px;
    height: .14em;
    top: 24px;
    background: #232323;
    border: none;
    border-radius: 4px 4px 4px 4px;
    -webkit-transition: top .2s, -webkit-transform .5s;
    transition: top .2s, -webkit-transform .5s;
    -o-transition: transform .5s, top .2s;
    transition: transform .5s, top .2s;
    transition: transform .5s, top .2s, -webkit-transform .5s;
    -webkit-transition-delay: .2s, top .2s;
    -o-transition-delay: .2s, top .2s;
    transition-delay: .2s, top .2s
}

.sandwich.active {
    -webkit-transform: scale(.6);
    -ms-transform: scale(.6);
    transform: scale(.6);
    -webkit-transition: -webkit-transform .2s ease;
    transition: -webkit-transform .2s ease;
    -o-transition: transform .2s ease;
    transition: transform .2s ease;
    transition: transform .2s ease, -webkit-transform .2s ease
}

.sandwich.active .sw-topper {
    width: 45px;
    top: 22px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.sandwich.active .sw-bottom {
    top: 20px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.os-theme-dark > .os-scrollbar-vertical, .os-theme-light > .os-scrollbar-vertical {
    width: 7px
}

.os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    background-color: #232323;
    opacity: .5
}

.top_menu {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: transparent;
    z-index: 50;
    right: 0;
    top: 0;
    display: none;
    overflow-y: scroll;
    overflow-x: hidden
}

.top_menu .top_menu__block {
    width: 39%;
    float: right;
    margin-top: 45px
}

.top_menu .top_menu__block .top_menu__nav {
    margin-top: 100px
}

.top_menu .top_menu__block .top_menu__social {
    margin-top: 65px;
    margin-bottom: 40px
}

.top_menu .top_menu__block .top_menu__social li.follow-link {
    margin-bottom: 8px
}

.top_menu ul {
    text-align: left;
    font-size: 1em;
    list-style: none;
    list-style-image: none !important;
    list-style-position: outside !important;
    list-style-type: none !important;
    padding: 0;
    margin: 0;
    text-transform: uppercase;
    color: #232323;
    font-weight: 400;
    will-change: transform
}

.top_menu li {
    margin: 0;
    padding: 0;
    line-height: 1;
    list-style: none;
    list-style-image: none !important;
    list-style-position: outside !important;
    list-style-type: none !important
}

.top_menu h3, .top_menu li {
    display: block
}

.top_menu h3 {
    font-size: .9em
}

.top_menu a {
    color: #232323;
    display: inline-block;
    font-size: .9em
}

.top_menu a:not(.effect-2) {
    padding: 5px 0
}

.top_menu .top_menu__small_text {
    font-size: .78em;
    line-height: inherit
}

.social {
    list-style: none;
    padding-left: 0
}

.social h3 {
    font-weight: 400;
    margin-bottom: 8px
}

.social li {
    line-height: 1
}

.social li a {
    display: inline-block;
    text-transform: uppercase;
    font-size: .78em;
    padding: 5px 0
}

.hover-link {
    display: inline-block;
    color: #232323;
    -webkit-transition: color .3s ease;
    -o-transition: color .3s ease;
    transition: color .3s ease
}

.hover-link:hover {
    color: #6a6a6a
}

canvas[resize] {
    width: 100%;
    height: 100%
}

.fullscreen-slider-wrapper {
    bottom: 0;
    width: 100%;
    height: calc(100% + 30px);
    position: absolute;
    margin-left: -60px;
    margin-top: -30px
}

.fullscreen-slider-wrapper .fullscreen-slider-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 40%;
    height: 100%;
    z-index: 1
}

.fullscreen-slider-wrapper .fullscreen-slider-bg .slick-list, .fullscreen-slider-wrapper .fullscreen-slider-bg .slick-slide, .fullscreen-slider-wrapper .fullscreen-slider-bg .slick-track {
    height: 100%
}

.fullscreen-slider-wrapper .fullscreen-slider-bg .bg-slide {
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s
}

.fullscreen-slider-wrapper .fullscreen-slider-bg a, .fullscreen-slider-wrapper .fullscreen-slider-bg div {
    width: 100%;
    height: 100%
}

.fullscreen-slider-wrapper .fullscreen-slider {
    width: 59%;
    float: right;
    height: 100%;
    z-index: 2;
    position: relative
}

.fullscreen-slider-wrapper .fullscreen-slider .slick-list, .fullscreen-slider-wrapper .fullscreen-slider .slick-track {
    height: 100%
}

.fullscreen-slider-wrapper .fullscreen-slider a.slick-slide {
    display: block;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat
}

.fullscreen-slider-wrapper .fullscreen-slider .slick-slide {
    height: 100%;
    margin: 0;
    padding: 0;
    float: left;
    outline: 0
}

.fullscreen-slider-wrapper .fullscreen-slider-numbers {
    position: absolute;
    bottom: 10px;
    left: 60px;
    z-index: 2
}

.fullscreen-slider-wrapper .fullscreen-slider-numbers .current-number {
    display: inline-block;
    width: 87px
}

.wow {
    visibility: hidden;
    opacity: 0
}

.big-text-animation {
    display: block;
    overflow: hidden;
    padding-right: 5px;
    letter-spacing: -2.05px
}

.big-text-animation span {
    display: block;
    -webkit-animation-duration: .5s;
    animation-duration: .5s
}

.full-arrow {
    position: absolute;
    z-index: 4;
    height: 100%;
    width: 13%;
    background: 0 0;
    border: none;
    outline: 0;
    text-indent: -9999px;
    top: 0
}

.full-arrow-prev, .slider-arrow-prev {
    left: 0
}

.full-arrow-next, .slider-arrow-next {
    right: 0
}

body.index-body .full-arrow {
    z-index: 3
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(10%, 0, 0);
        transform: translate3d(10%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(10%, 0, 0);
        transform: translate3d(10%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

.flex-row-space-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.lb-dataContainer {
    width: 100% !important;
    position: absolute;
    bottom: 0;
    left: 0
}

.empty-content {
    font-size: 13px
}

.awards-list li {
    clear: both;
    display: block;
    overflow: hidden;
    width: 100%
}

.awards-list_year {
    float: left;
    width: 2.6vw;
    font-size: .83333vw;
    line-height: 1.1
}

.awards-list_description {
    display: inline-block;
    width: calc(100% - 2.6vw);
    float: left;
    margin-bottom: 3vw
}

.awards-list_description span {
    display: inline-block;
    clear: both;
    float: left;
    font-size: .729vw;
    line-height: 1.1
}

.awards-list_description span:not(:empty) {
    margin-bottom: 4px;
    letter-spacing: -.4px
}

.awards-list_description span.awards-list_title {
    font-size: .83333vw;
    text-transform: uppercase;
    letter-spacing: -.4px;
    font-family: ArticulatCFv2-demibold, sans-serif;
    font-weight: 600
}

.awards-list_description span.awards-list_location {
    color: rgba(35, 35, 35, .5)
}

.publications-printed-list, .publications-web-list {
    padding-left: 0;
    list-style: none;
    float: left;
    margin-bottom: 0;
    display: block;
    width: 100%
}

.publications-printed-list li, .publications-web-list li {
    margin-bottom: 25px
}

.publications-printed-list div, .publications-web-list div {
    display: block;
    width: 100%;
    clear: both;
    margin-bottom: 1px
}

.project_title {
    display: inline-block;
    font-size: 1.5625vw;
    text-transform: uppercase;
    line-height: .9;
    font-family: ArticulatCFv2-medium, sans-serif;
    letter-spacing: -.75px;
    font-weight: 500
}

.publications-web-list_year {
    float: left;
    width: 42px;
    font-size: .7291667vw;
    margin-bottom: 6px !important;
    font-family: ArticulatCFv2-medium, sans-serif;
    letter-spacing: -.4px;
    font-weight: 500
}

.publications-printed-list_subtitle, .publications-web-list_subtitle {
    font-size: .83333vw;
    text-transform: uppercase;
    margin-bottom: 4px !important;
    letter-spacing: -.4px;
    font-family: ArticulatCFv2-demibold, sans-serif;
    font-weight: 600;
    line-height: 1.1
}

.publications-printed-list_text, .publications-web-list_text {
    font-size: .7291667vw;
    line-height: 1.3
}

.publications-item {
    overflow: hidden
}

.close-btn {
    margin: 0;
    padding: 0;
    border: none;
    background-color: transparent;
    position: absolute;
    top: 30px;
    right: 60px;
    z-index: 3;
    outline: 0
}

.close-btn img {
    width: 23px;
    height: 23px;
    display: block;
    outline: 0
}

.effect-2 {
    overflow: hidden;
    line-height: inherit;
    padding: 0
}

.effect-2 span {
    position: relative;
    display: inline-block;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    -o-transition: transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s
}

.effect-2 span::before {
    position: absolute;
    top: 100%;
    content: attr(data-hover);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.effect-2:focus span, .effect-2:hover span {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

a, a:focus, a:hover, button, button:focus, button:hover {
    outline: 0 !important
}

.arrow-down {
    display: inline-block;
    width: 20px;
    height: 30px;
    background-image: url(../img/down-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center
}

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

.slick-disabled {
    z-index: 0
}

.lb-outerContainer {
    background-color: transparent
}

.lightbox .lb-image {
    border: none;
    border-radius: 0
}

.menuicon-button {
    display: inline-block;
    position: relative;
    padding: 0;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: .8;
    margin-left: 8px
}

.menuicon-button .menuicon:after, .menuicon-button .menuicon:before {
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s
}

.menuicon-button:hover {
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    opacity: 1
}

.menuicon {
    position: relative;
    width: 1.1rem;
    height: 1.1rem
}

.menuicon:after, .menuicon:before {
    display: block;
    content: "";
    height: .1rem;
    width: 1.1rem;
    background: #232323;
    position: absolute;
    z-index: -1;
    -webkit-transition: .5s .5s;
    -o-transition: .5s .5s;
    transition: .5s .5s
}

.menuicon:before {
    top: .55rem;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0)
}

.menuicon:after {
    top: .55rem;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.open .menuicon:after, .open .menuicon:before {
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s
}

.open.plus .menuicon:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.open.plus .menuicon:after {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg)
}

@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none) {
    .projects-body .fullscreen-block {
        display: table !important;
        height: 100%;
        width: 100%
    }

    .row-projects-info {
        display: table-cell;
        vertical-align: middle
    }

    .project-body .bigger-text {
        font-size: 110px
    }

    body.about-body .title-bottom {
        -webkit-box-flex: 0 !important;
        -ms-flex: none !important;
        flex: none !important
    }

    body.about-body .about-photo-wrapper .about-photo img {
        height: auto !important;
        min-width: 100%;
        width: auto !important;
        max-width: 110% !important
    }
}

body.index-body {
    width: 100vw;
    height: 100vh;
    overflow: hidden
}

body.index-body .fullscreen-block {
    min-height: 320px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: no-wrap;
    flex-wrap: no-wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: end;
    align-content: flex-end
}

body.index-body .pre-title {
    margin-bottom: 17px;
    overflow: hidden
}

body.index-body .about-slide .pre-title {
    margin-left: 43px
}

body.index-body .post-title {
    display: inline-block;
    float: right;
    clear: both;
    margin-top: 15px;
    margin-right: 0
}

body.index-body .about-slide .post-title {
    margin-right: 3.5vw
}

body.index-body .fullscreen-slider .slick-slide {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body.index-body .fullscreen-slider .row {
    margin-left: 0;
    margin-right: 0;
    height: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body.index-body .fullscreen-slider .text-content {
    padding-bottom: 84px
}

body.index-body .footer-index {
    margin-bottom: 0;
    z-index: 4;
    position: absolute;
    right: 60px;
    left: 60px;
    bottom: 15px
}

body.index-body .footer-index .awards-index-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

body.index-body .main-title {
    min-height: 220px;
    margin-bottom: 3vw;
    margin-right: 2vw
}

body.index-body .main-title__text {
    display: inline-block;
    float: right;
    clear: both;
    overflow: hidden;
    font-size: 6vw;
    line-height: .835;
    text-transform: uppercase;
    letter-spacing: -2.5px;
    padding-right: 5px;
    padding-left: 5px;
    padding-top: 0;
    margin-bottom: 0
}

body.index-body .main-title__text:nth-last-child(2), body.index-body .main-title__text:nth-last-child(4) {
    margin-right: 108px
}

body.index-body .main-title__text:nth-last-child(3) {
    margin-right: 20px
}

body.index-body .main-title__text span {
    display: inline-block
}

body.index-body .project-item .main-title__content {
    display: block;
    overflow: hidden;
    float: none;
    width: 50vw;
    margin-left: auto;
    margin-right: auto
}

body.index-body .project-item .main-title__content .main-title-wrapper .main-title__text {
    float: left;
    margin-right: 0
}

body.index-body .project-item .main-title__content .main-title-wrapper .main-title__text:nth-child(1) {
    margin-left: 2.6vw
}

body.index-body .project-item .main-title__content .main-title-wrapper .main-title__text:nth-child(2) {
    float: right;
    margin-right: 2.6vw
}

body.index-body .project-item .main-title__text {
    display: block;
    clear: both;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body.index-body .main-info {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2;
    padding-bottom: 0
}

body.index-body .current-number {
    display: inline-block;
    width: 6vw;
    text-align: left
}

body.index-body .number-text {
    text-align: center
}

body.index-body .awards {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

body.index-body .awards li {
    margin-right: 0;
    margin-left: 2.1vw
}

body.index-body .svg-circle__wrapper {
    width: 19.532vmin;
    position: absolute;
    top: 50%;
    margin-top: -9.766vmin;
    right: 5.45vw;
    z-index: 4;
    display: none
}

body.index-body .svg-circle__wrapper svg#animated {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

body.index-body .svg-circle__wrapper svg#animated circle {
    opacity: .5
}

body.index-body .svg-circle__wrapper svg#animated text {
    font-size: 9px;
    text-transform: uppercase
}

body.projects-body {
    width: 100vw;
    min-height: 100vh;
    height: auto;
    overflow-x: hidden
}

body.projects-body .fullscreen-block {
    padding-bottom: 50px;
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

body.projects-body .projects-list {
    text-align: center;
    list-style: none;
    width: auto;
    display: inline-block;
    padding-left: 0;
    margin: 0 auto;
    float: none;
    position: relative;
    z-index: 2
}

body.projects-body .projects-list li {
    line-height: 1.3;
    -webkit-transition: opacity .4s ease;
    -o-transition: opacity .4s ease;
    transition: opacity .4s ease;
    overflow: hidden
}

body.projects-body .projects-list li.active {
    opacity: .5;
    -webkit-transition: opacity .4s ease;
    -o-transition: opacity .4s ease;
    transition: opacity .4s ease
}

body.projects-body .projects-list li a {
    text-transform: uppercase;
    font-size: 1.40625em;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    letter-spacing: -.75px;
    font-family: ArticulatCFv2-medium, sans-serif;
    font-weight: 500;
    display: block;
    visibility: hidden
}

body.projects-body .projects-list li a:hover {
    color: #d1d1d1
}

body.projects-body .project-thumb {
    overflow: hidden;
    position: absolute;
    width: 30vw;
    height: 100%;
    top: 0;
    right: 0
}

body.projects-body .project-thumb-wrapper {
    position: absolute;
    display: block;
    float: right;
    height: 100vh;
    width: 0;
    right: -50px;
    overflow: hidden
}

body.projects-body .project-thumb-wrapper a {
    height: 100vh;
    width: 30vw;
    display: block;
    float: right;
    background-position: center center;
    background-size: cover
}

body.projects-body .row-projects-info .flex-center {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

body.project-body {
    width: 100vw;
    height: 100vh;
    overflow: hidden
}

body.project-body .fullscreen-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: no-wrap;
    flex-wrap: no-wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    padding-bottom: 70px;
    min-height: 375px
}

body.project-body .row-project-info {
    height: 100%
}

body.project-body .row-project-info .row {
    height: 100%
}

body.project-body .row-project-info .full-arrow-prev {
    left: 15px;
    width: 25%
}

body.project-body .row-project-info .full-arrow-next {
    right: -60px;
    width: 25%
}

body.project-body .owl-carousel__wrapper {
    height: calc(80vh - 100px);
    margin: 14vh 0 5vh 0;
    overflow: hidden;
    position: relative
}

body.project-body .img-wrapper {
    height: auto;
    overflow: hidden;
    display: block
}

body.project-body .owl-item {
    height: calc(80vh - 100px);
    min-height: 275px
}

body.project-body .owl-item img {
    height: calc(80vh - 130px);
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

body.project-body .number-wrapper {
    margin-top: 11px;
    font-size: 12px
}

body.project-body .number-text-top .number-text {
    position: absolute;
    right: 0;
    top: 0;
    line-height: .8;
    font-size: 3.85vw
}

body.project-body .slider-progress {
    padding: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6px
}

body.project-body .slider-progress .slider-dots {
    padding: 0;
    margin: 0;
    width: 100%
}

body.project-body .slider-progress .slider-dots .parent-project-dots:last-child .owl-dot:last-child {
    display: none
}

body.project-body .slider-progress .slider-dots .owl-dot {
    margin: 0;
    padding: 0;
    border: 0;
    position: relative;
    display: block;
    float: left;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    height: 6px;
    background-color: #fff;
    background-size: 100% 100%;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(100%, #232323), to(transparent));
    background-image: -o-linear-gradient(left, #232323 100%, transparent 100%);
    background-image: linear-gradient(to right, #232323 100%, transparent 100%);
    background-repeat: no-repeat
}

body.project-body .slider-progress .slider-dots .owl-dot:last-child {
    margin-right: 0
}

body.project-body .slider-progress .slider-dots .owl-dot.active ~ .owl-dot {
    background-size: 0 100%
}

body.project-body .slider-progress .slider-dots .owl-dot.active {
    -webkit-animation: right 1s ease forwards;
    animation: right 1s ease forwards
}

body.project-body .slider-progress .slider-dots .owl-dot.active.prev {
    -webkit-animation: left 1s ease forwards;
    animation: left 1s ease forwards
}

body.project-body .slider_item-project {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

body.project-body .slider_item-project span {
    text-transform: uppercase;
    font-size: .65em;
    font-family: ArticulatCFv2-medium, sans-serif;
    font-weight: 500
}

body.project-body .slider_item-project h3 {
    font-size: 2.9em;
    text-transform: uppercase;
    line-height: .8;
    font-family: ArticulatCFv2-medium, sans-serif;
    font-weight: 500;
    margin-top: 5px;
    margin-right: 15px;
    letter-spacing: -1.3px
}

body.project-body .parent-project-dots {
    padding: 0;
    margin: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    opacity: 0;
    position: absolute;
    left: 0;
    bottom: 0
}

body.project-body .parent-project-dots.parent-active {
    opacity: 1
}

@-webkit-keyframes right {
    0% {
        background-size: 0 100%
    }
    100% {
        background-size: 100% 100%
    }
}

@keyframes right {
    0% {
        background-size: 0 100%
    }
    100% {
        background-size: 100% 100%
    }
}

@-webkit-keyframes left {
    0% {
        background-size: 100% 100%
    }
    100% {
        background-size: 0 100%
    }
}

@keyframes left {
    0% {
        background-size: 100% 100%
    }
    100% {
        background-size: 0 100%
    }
}

body.project-body .footer-project {
    width: 50%
}

body.project-body .footer-project .row {
    width: 100%
}

body.project-body .animated {
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

body.project-body .owl-nav {
    display: none
}

body.project-body .owl-item.animated, body.project-body .owl-item.firstActiveItem, body.project-body .owl-item.lastActiveItem {
    opacity: 1
}

body.project-body .project-modal {
    background-color: #fff;
    width: 50%;
    height: 100%;
    z-index: 50;
    display: none;
    overflow-y: hidden;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-transition: top .3s ease;
    -o-transition: top .3s ease;
    transition: top .3s ease
}

body.project-body .project-modal.project-modal__opened {
    display: block
}

body.project-body .project-modal .project-modal__info {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 60px 70px 60px 30px;
    overflow-y: scroll;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    overflow-y: scroll;
    opacity: 0
}

body.project-body .project-modal .project-modal__info.animated {
    opacity: 1
}

body.project-body .project-modal .project-modal__title {
    text-transform: uppercase;
    font-size: .9375vw;
    font-family: ArticulatCFv2-medium, sans-serif;
    font-weight: 500;
    display: block;
    clear: both;
    font-family: 'Arial', sans-serif;;
    font-weight: 600;
    margin-bottom: 17px
}

body.project-body .awards-list_description {
    margin-bottom: 30px;
    width: calc(100% - 40px)
}

body.project-body .publications-web-list_subtitle {
    margin-bottom: 3px !important
}

body.project-body .publications-web-list_subtitle p {
    display: inline;
    margin: 0;
    padding: 0
}

body.project-body .publications-web-list li {
    margin-bottom: 13px
}

body.project-body .publications-web-list .hover-link {
    display: block
}

body.project-body .project-modal__awards:not(:empty) {
    padding-bottom: 15px
}

body.project-body .project-modal__about {
    font-size: .8em;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.7;
    letter-spacing: -.16px;
    width: 80%
}

body.project-body .publications-web-list:not(:empty) {
    margin-bottom: 20px
}

body.project-body .project-details {
    width: 100%;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

body.project-body .project-modal .toggle_menu {
    margin-right: 54px;
    margin-top: 11px
}

body.project-body #lightbox .lb-prev {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 15%;
    z-index: 6
}

body.project-body #lightbox .lb-next {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 15%;
    z-index: 6
}

body.project-body #lightbox .lb-outerContainer {
    z-index: 5
}

body.project-body #lightboxOverlay {
    outline: 0 !important;
    width: 100% !important;
    height: calc(var(--vh, 1vh) * 100) !important
}

body.project-body #lightboxOverlay .close-btn {
    top: 25px
}

body.project-body .bigger-text {
    display: inline-block !important;
    position: relative;
    margin-bottom: 2.2vw;
    font-size: 3.84375em
}

body.project-body .bigger-text .title-content {
    position: absolute;
    bottom: 0;
    left: 0
}

body.project-body .bigger-text .title-content div {
    overflow: hidden;
    margin-top: -11px
}

body.project-body .bigger-text .title-content div span {
    display: inline-block;
    padding-top: 12px
}

body.project-body .pulse-gray {
    z-index: 11
}

body.project-body .footer-fixed {
    position: absolute
}

body.project-body .project-details .hover-btn-link {
    display: block;
    margin-right: -15px
}

body.project-body .project-details .hover-btn-link a {
    padding: 15px
}

.menu-toggle {
    height: 16px;
    position: relative;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    display: inline-block;
    margin: 1px auto;
    width: 16px
}

.menu-toggle:hover {
    color: #232323
}

.menu-toggle i:before {
    display: block;
    position: absolute;
    height: 16px;
    width: 1px;
    left: 8px;
    margin-left: -.5px;
    top: 0;
    background: #232323;
    border-radius: 2px;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out
}

.menu-toggle i:after {
    display: block;
    position: absolute;
    height: 1px;
    width: 16px;
    right: 0;
    top: 8px;
    margin-top: -.5px;
    background: #232323;
    border-radius: 2px;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out
}

.menu-toggle i:after, .menu-toggle i:before {
    content: ''
}

.menu-toggle.open i:after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.menu-toggle.open i:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.owl-stage {
    -webkit-transition: 1s !important;
    -o-transition: 1s !important;
    transition: 1s !important
}

body.about-body {
    width: 100vw;
    height: 100vh;
    min-height: 500px;
    overflow: hidden;
}

body.about-body .fullscreen-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    padding-bottom: 50px;
    min-height: 100vh
}

body.about-body .text-content {
    line-height: 1.3
}

body.about-body .row-about-info {
    height: 100%;
    min-height: calc(100vh - 80px)
}

body.about-body .about-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 1;
    flex: 1 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

body.about-body .about-content p {
    margin-bottom: 0
}

body.about-body .title-bottom {
    -webkit-box-flex: 0;
    -ms-flex: 0 0;
    flex: 0 0;
    margin-top: 15px
}

body.about-body .about-photo-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%
}

body.about-body .about-photo-wrapper .about-photo {
    width: 100%;
    height: 100%
}

body.about-body .about-photo-wrapper .about-photo .parent {
    width: 100%;
    height: 100%
}

body.about-body .about-photo-wrapper .about-photo img {
    width: 100%;
    min-height: 100%;
    height: 340px;
    -o-object-fit: cover;
    object-fit: cover
}

body.contacts-body {
    width: 100vw;
    min-height: 100vh
}

body.contacts-body .fullscreen-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    padding-bottom: 50px;
    min-height: 100vh
}

body.contacts-body .contacts {
    height: 100%
}

body.contacts-body .contacts-list {
    list-style: none;
    padding-left: 0;
    text-transform: uppercase;
    margin-top: 30px
}

body.contacts-body .contacts-list li {
    margin-bottom: 60px
}

body.contacts-body .contacts-list li h3 {
    font-family: ArticulatCFv2-demibold, sans-serif;
    font-weight: 600;
    font-size: .84375em;
    letter-spacing: -.5px;
    margin-bottom: 0
}

body.contacts-body .contacts-list li a {
    font-size: .75em;
    letter-spacing: -.4px
}

body.contacts-body .contacts-list li .social li {
    margin-bottom: 0
}

body.contacts-body .contacts-list li .social h3 {
    margin-bottom: 8px
}

body.contacts-body .info-bottom {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-left: 60px
}

body.awards-body {
    width: 100vw;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: hidden
}

body.awards-body .fullscreen-block {
    position: relative;
    padding-bottom: 50px;
    min-height: 100vh
}

body.awards-body .awards-info {
    height: 100%;
    width: 100%;
    margin-bottom: 60px;
    position: relative
}

body.awards-body .full-arrow {
    z-index: 3 !important
}

body.awards-body .owl-carousel__awards {
    margin: 6.15vw 0 3.9vw 0
}

body.awards-body .owl-carousel__awards .awards-images-empty {
    display: block;
    width: calc(50vw - 120px)
}

body.awards-body .owl-carousel__awards .awards-images {
    display: block;
    width: calc((100vw - 240px) / 3);
    height: calc(100vh - 260px);
    overflow: hidden
}

body.awards-body .owl-carousel__awards .awards-images img {
    width: 100%;
    max-width: 100%;
    height: calc(100vh - 260px);
    -o-object-fit: cover;
    object-fit: cover
}

body.awards-body .owl-carousel__awards .awards-item {
    width: calc((100vw - 240px) / 3)
}

body.awards-body .top-wrapper {
    -webkit-box-flex: 0;
    -ms-flex: 0 0;
    flex: 0 0
}

body.awards-body .footer-awards {
    background-color: #fff;
    padding-left: 60px;
    padding-bottom: 30px;
    z-index: 4
}

body.awards-body .footer-awards .info-bottom {
    margin-left: 0;
    padding-bottom: 0
}

body.awards-body .awards-list {
    list-style: none;
    padding-left: 0;
    overflow: hidden;
    margin-top: 2.85vw;
    margin-bottom: 0
}

body.awards-body .awards-images__description {
    display: none
}

body.publications-body {
    width: 100vw;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: hidden
}

body.publications-body .fullscreen-block {
    padding-bottom: 50px;
    min-height: 100vh
}

body.publications-body .publications-info .full-arrow-prev {
    left: 15px;
    width: 25%
}

body.publications-body .publications-info .full-arrow-next {
    right: -60px;
    width: 25%
}

body.publications-body .info-bottom {
    margin-left: 0;
    padding-bottom: 0
}

body.publications-body .owl-carousel__publications {
    margin: 6.15vw 0 3.9vw 0
}

body.publications-body .owl-carousel__publications .publications-images-empty {
    display: block;
    width: calc(60vw - 120px);
    height: calc(100vh - 260px)
}

body.publications-body .owl-carousel__publications .publications-images {
    display: block;
    width: calc((100vw - 300px) / 4);
    height: calc(100vh - 260px);
    overflow: hidden
}

body.publications-body .owl-carousel__publications .publications-images img {
    width: 100%;
    max-width: 100%;
    height: calc(100vh - 260px);
    -o-object-fit: contain;
    object-fit: contain
}

body.publications-body .owl-carousel__publications .publications-item {
    width: calc((100vw - 300px) / 4)
}

body.publications-body .owl-carousel__publications h4 {
    text-transform: uppercase;
    font-size: 1.40625em;
    font-family: 'Arial', sans-serif;;
    margin-bottom: 30px
}

body.publications-body .publications-printed-list {
    margin-top: 2.85vw;
    padding-right: 10px;
    overflow-y: scroll
}

body.publications-body .publications-printed-list .hover-link {
    display: block
}

body.publications-body .footer-publications {
    background-color: #fff;
    padding-left: 60px;
    padding-bottom: 30px
}

body.publications-body .publications-web-list_text p {
    display: inline;
    margin: 0;
    padding: 0
}

body.news-body {
    width: 100vw;
    min-height: 100vh;
    height: auto;
    overflow-x: hidden
}

body.news-body .fullscreen-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    padding-bottom: 50px;
    min-height: 100vh
}

body.news-body .row-news-info {
    -webkit-box-flex: 1;
    -ms-flex: 1 1;
    flex: 1 1;
    position: relative;
    z-index: 1
}

body.news-body .news-item {
    width: 25vw;
    float: left
}

body.news-body .news-item_img {
    width: calc(17vw - 44px);
    height: calc(17vw - 44px);
    overflow: hidden;
    margin-left: 44px;
    margin-bottom: 0;
    float: right;
    position: relative
}

body.news-body .news-item_img img {
    height: calc(17vw - 44px);
    position: absolute;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    left: -100%;
    right: -100%;
    top: -100%;
    bottom: -100%
}

body.news-body .news-item_content {
    overflow: hidden;
    clear: both;
    float: right;
    margin-bottom: 40px;
    padding-top: 11px
}

body.news-body .news-item_content .news-item_date {
    width: 44px;
    float: left
}

body.news-body .news-item_content .news-item_title {
    text-transform: uppercase;
    float: left;
    font-size: .75em;
    line-height: 1.2;
    width: calc(17vw - 44px);
    font-weight: 400
}

body.news-body .col-news-info {
    width: 50vw;
    float: right;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 60px
}

body.new-body {
    width: 100vw;
    min-height: 100vh;
    height: auto;
    overflow-x: hidden
}

body.new-body .fullscreen-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    padding-bottom: 50px;
    min-height: 100vh
}

body.new-body .row-news-info {
    -webkit-box-flex: 1;
    -ms-flex: 1 1;
    flex: 1 1
}

body.new-body .col-news-info {
    width: 47vw;
    float: right;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 60px
}

body.new-body .row-news-bottom {
    position: fixed;
    bottom: 50px;
    width: 100%
}

body.new-body .big-text {
    margin-bottom: 23px
}

body.new-body .article-image {
    margin-bottom: 30px
}

body.new-body .video-wrapper {
    margin-bottom: 30px
}

body.new-body .article-description {
    line-height: 1.5;
    font-size: .9375em;
    width: 80%;
    letter-spacing: -.2px
}

body.new-body .article-content {
    width: 73%;
    margin-right: 9%;
    float: right;
    margin-bottom: 60px;
    margin-top: 40px;
    font-size: .85em;
    line-height: 1.6;
    letter-spacing: -.16px
}

body.new-body .article-content::after {
    content: '';
    display: block;
    clear: both;
    width: 8px;
    height: 8px;
    background-color: #121212;
    margin-top: 30px
}

body.new-body .article-content p {
    margin: 20px 0;
    width: 100%;
    display: inline-block;
    clear: both
}

body.new-body .article-content p:first-child {
    margin-top: 0
}

body.new-body .article-content a {
    font-family: 'Arial', sans-serif;
}

body.new-body .article-content strong {
    font-family: 'Arial', sans-serif;
}

body.new-body .article-content h2, body.new-body .article-content h3, body.new-body .article-content h4, body.new-body .article-content h5, body.new-body .article-content h6 {
    line-height: 1.2
}

body.new-body .article-content blockquote {
    padding: 20px 0;
    margin: 20px 0;
    font-size: 20px;
    line-height: 1.2;
    border-top: #232323 1px solid;
    border-bottom: #232323 1px solid
}

body.new-body .article-content ol li, body.new-body .article-content ul li {
    margin: 10px 0
}

body.new-body .article-content .video {
    margin: 20px 0;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    height: 0
}

body.new-body .article-content .video iframe {
    border: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important
}

body.new-body figure {
    margin-top: 0;
    margin-bottom: -10px
}

body.new-body figure.article-content_figure-vertical-left {
    width: 47%;
    float: left;
    margin-right: 6%
}

body.new-body figure.article-content_figure-vertical-left div img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important
}

body.new-body figure.article-content_figure-vertical-left + figure.article-content_figure-vertical-left {
    margin-right: 0
}

body.new-body figure.article-content_figure-horyzontal div, body.new-body figure.article-content_figure-horyzontal img {
    width: 100% !important
}

body.new-body figure.article-content_figure-horyzontal img {
    max-width: 100% !important;
    height: auto !important
}

body.new-body figcaption {
    font-size: 12px;
    padding-top: 6px;
    display: block;
    clear: both
}

body.new-body .article-sm-info {
    display: none
}

body.new-body .info-bottom {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

body.new-body time {
    display: inline-block;
    margin-bottom: 16px
}

body.new-body .video-wrapper {
    width: 100%;
    height: auto;
    position: relative
}

body.new-body .video-wrapper video {
    width: 100%;
    height: auto;
    z-index: 1
}

body.new-body .video-wrapper .video-mask {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2
}

body.new-body .video-wrapper .iframe__play-btn, body.new-body .video-wrapper .video__play-btn {
    position: absolute;
    left: 30px;
    bottom: 30px;
    border-radius: 100px;
    border: 1px solid #fff;
    text-transform: uppercase;
    color: #fff;
    background-color: transparent;
    width: 48px;
    height: 48px;
    text-align: center;
    font-size: 11px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 1
}

.iframe-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden
}

.iframe-wrapper iframe {
    position: absolute;
    top: -60px;
    left: 0;
    width: 100%;
    height: calc(100% + 120px)
}

@media (min-width: 1920px) {
    .logo {
        font-size: 30px
    }

    .bigger-text {
        font-size: 140px
    }

    .top_menu .social li a, .top_menu a, .top_menu h3 {
        font-size: 19px
    }

    .top_menu a:not(.effect-2), .top_menu h3 {
        padding: 9px 0
    }

    .top_menu .social li a {
        padding: 6px 0
    }

    .top_menu #language_switch {
        font-size: 16px
    }

    .top_menu .top_menu__block .top_menu__nav {
        margin-top: 152px
    }

    body.contacts-body .contacts-list li {
        margin-bottom: 88px
    }

    body.contacts-body .contacts-list li h3 {
        font-size: 18px;
        margin-bottom: 5px
    }

    body.contacts-body .contacts-list li a {
        font-size: 16px
    }

    body.contacts-body .contacts-list li .social li a {
        padding: 7px 0
    }

    body.contacts-body .contacts-list li .social li:first-child a {
        padding: 0 0 7px
    }

    .project_title {
        font-size: 30px
    }

    time {
        font-size: 13px
    }

    .number-wrapper {
        font-size: 13px
    }

    .fullscreen-block .text-content {
        font-size: 16px
    }

    .big-text, .number-text {
        font-size: 80px
    }

    body.new-body .article-content {
        font-size: 16px;
        margin-top: 70px;
        width: 73%;
        margin-right: 9%;
        line-height: 1.8
    }

    body.new-body .article-content p {
        margin-top: 70px
    }

    body.new-body .article-description {
        font-size: 20px;
        margin-top: 40px
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_year {
        width: 50px;
        font-size: 14px
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description {
        width: calc(100% - 50px);
        margin-bottom: 71px
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description span:not(:empty) {
        font-size: 14px
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description span.awards-list_title {
        font-size: 16px
    }

    body.publications-body .owl-carousel__publications .publications-web-list_year {
        font-size: 13px
    }

    body.publications-body .owl-carousel__publications .publications-web-list_subtitle {
        font-size: 18px
    }

    body.publications-body .owl-carousel__publications .publications-web-list_text {
        font-size: 15px
    }

    body.projects-body .projects-list li a {
        font-size: 27px
    }

    body.news-body .news-item_content .news-item_date {
        font-size: 16px;
        width: 60px
    }

    body.news-body .news-item_content .news-item_title {
        font-size: 16px
    }

    body.index-body .main-title__text {
        font-size: 110px
    }

    body.project-body .bigger-text {
        font-size: 140px
    }
}

@media (min-width: 1921px) {
    body.index-body .main-title {
        width: 90%;
        margin: 0 auto 30px
    }

    body.index-body .main-title__text {
        font-size: 100px
    }
}

@media (max-width: 1366px) {
    body.project-body .owl-item img, body.project-body .video_item .iframe-wrapper {
        height: calc(85vh - 230px)
    }
}

@media (max-width: 1300px) {
    body {
        height: auto;
        overflow-y: scroll
    }

    body.project-body .fullscreen-block {
        min-height: 400px
    }

    body.project-body .owl-item img, body.project-body .video_item .iframe-wrapper {
        height: calc(85vh - 170px)
    }

    .awards-list_year {
        font-size: 1.1vw;
        width: 3.2vw
    }

    .awards-list_description {
        width: calc(100% - 3.2vw)
    }

    .awards-list_description span {
        font-size: 1.06vw
    }

    .awards-list_description span.awards-list_title {
        font-size: 1.1vw
    }

    .publications-web-list_year {
        font-size: 1.1vw
    }

    .publications-printed-list_subtitle, .publications-printed-list_text, .publications-web-list_subtitle, .publications-web-list_text {
        font-size: 1.06vw
    }

    body.publications-body {
        height: auto;
        min-height: 100vh
    }

    body.about-body {
        height: auto;
        overflow-y: scroll
    }

    body.about-body .fullscreen-block .text-content {
        font-size: calc(.65vw + 6px)
    }

    body.about-body .about-content {
        margin-top: 60px
    }
}

@media (max-width: 1240px) {
    .owl-carousel__wrapper .slider_item, .owl-carousel__wrapper .slider_item-project {
        width: calc((50vw - 60px) / 2) !important
    }

    .owl-carousel__wrapper .video_item {
        width: calc(50vw - 30px) !important
    }
}

@media (max-width: 1200px) {
    .project_title {
        font-size: 1.79vw
    }

    body.index-body .main-title {
        min-height: 120px !important;
        margin-right: 0 !important
    }

    body.index-body .awards li {
        margin-left: 24px
    }

    .img-wrapper {
        height: 400px
    }

    .big-text, .number-text, body.project-body .bigger-text {
        font-size: 2.3em
    }

    .small-text {
        font-size: 12px
    }

    .small-text .bold-text {
        font-size: 10px
    }

    .footer-index .current-number {
        width: 60px !important
    }

    body.project-body .col-xl-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    body.project-body .col-xl-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    body.project-body .col-xl-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    body.project-body .info-bottom.col-lg-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    body.publications-body .publications-item__img-wrapper img {
        height: auto;
        width: calc((100vw - 660px) / 2)
    }

    body.contacts-body .fullscreen-block {
        height: auto
    }

    body.project-body .slider_item-project h3 {
        font-size: 2em
    }
}

@media screen and (min-width: 1025px) and (max-width: 1200px) {
    body.awards-body .awards-info .col-lg-5, body.publications-body .awards-info .col-lg-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 0px;
        flex: 0 0 0;
        max-width: 0;
        width: 0
    }

    body.awards-body .awards-info .col-lg-7, body.publications-body .awards-info .col-lg-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%
    }

    body.awards-body footer .col-lg-12, body.publications-body footer .col-lg-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
        width: 41.66667%
    }
}

@media screen and (min-width: 1025px) and (max-width: 1200px) {
    body.awards-body .awards-info .col-lg-5, body.publications-body .publications-info .col-lg-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 0px;
        flex: 0 0 0;
        max-width: 0;
        width: 0
    }

    body.awards-body .awards-info .col-lg-7, body.publications-body .publications-info .col-lg-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%
    }

    body.awards-body footer .col-lg-12, body.publications-body footer .col-lg-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
        width: 41.66667%
    }
}

@media screen and (orientation: landscape) and (max-width: 1200px) {
    body.about-body .fullscreen-block .text-content {
        font-size: calc(.95vw + 6px);
        line-height: 1.5;
        padding-right: 0
    }
}

@media screen and (max-width: 1024px) {
    *, .hover-link {
        cursor: pointer !important
    }

    body {
        cursor: default
    }

    .cursor--canvas {
        display: none
    }

    .full-arrow {
        width: 20%
    }

    body.new-body .big-text {
        font-size: 2em
    }

    body.index-body .main-title__text {
        font-size: 5.2vw
    }

    body.index-body .awards {
        display: none
    }

    body.contacts-body .info-bottom {
        margin-left: 0
    }

    body.about-body .bigger-text {
        font-size: 7vw
    }

    body.publications-body .owl-carousel__publications .publications-images-empty {
        height: 0
    }
}

@media screen and (orientation: portrait) and (max-width: 1024px) {
    body.project-body .project-modal .close-btn {
        display: none
    }
}

@media screen and (orientation: portrait) and (max-width: 1024px), screen and (max-width: 769px) {
    body.project-body .col-xl-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    body.project-body .col-xl-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    body.project-body .col-xl-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    body.project-body .info-bottom.col-lg-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    body.project-body .fullscreen-block {
        padding: 3.9vw 30px;
        overflow-y: hidden
    }

    body.project-body .project-details {
        margin-bottom: 2.2vw
    }

    body.project-body .project-details li:nth-child(2) {
        margin-left: 11vw
    }

    body.project-body .project-details li:last-child {
        margin-left: auto
    }

    body.project-body .number-wrapper {
        margin-top: 7px
    }

    body.project-body .info-bottom {
        margin-left: 0
    }

    body.project-body .info-bottom .bigger-text .title-content div {
        margin-top: -6px
    }

    body.project-body .owl-carousel__wrapper {
        position: relative
    }

    body.project-body .owl-carousel__wrapper .owl-right-arrow {
        position: absolute;
        right: 0;
        bottom: 0;
        display: block;
        content: "";
        background-image: url(../img/right-arrow.svg);
        background-size: cover;
        width: 27px;
        height: 24px;
        z-index: 4
    }

    body.project-body .slider-progress {
        display: none
    }

    body.project-body .number-text.block-mobile {
        position: absolute;
        top: 9.95vw;
        right: 30px;
        font-size: 8.6vw
    }

    body.project-body .projects-wrapper {
        min-height: 300px
    }

    body.project-body .project-slider .slick-track {
        height: auto !important
    }

    body.project-body .info-bottom {
        padding-left: 15px;
        padding-right: 15px
    }

    body.project-body .info-bottom .bigger-text {
        font-size: 10.6vw;
        margin-bottom: 6.1vw
    }

    body.project-body .small-text {
        font-size: 2.17vw
    }

    body.project-body .small-text .bold-text {
        font-size: 1.85vw
    }

    body.project-body .col-empty {
        display: none
    }

    body.project-body .number-text-top {
        display: none
    }

    body.project-body .row-project-info {
        margin-top: 13.7vw;
        overflow: hidden;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    body.project-body .owl-carousel {
        height: auto
    }

    body.project-body .owl-carousel__wrapper {
        height: auto;
        margin-bottom: 0;
        margin-top: 0
    }

    body.project-body .slider_item-project {
        height: calc(100vh - 83vw)
    }

    body.project-body .owl-item {
        height: auto;
        min-height: auto;
        opacity: 1
    }

    body.project-body .owl-item img {
        height: calc(100vh - 83vw - 40px);
        height: calc(var(--vh, 1vh) * 100 - 83vw - 40px)
    }

    body.project-body .img-wrapper {
        height: calc(100vh - 83vw - 40px);
        height: calc(var(--vh, 1vh) * 100 - 83vw - 40px)
    }

    body.project-body .slider_item .img-wrapper {
        background-image: url(../img/loading.svg);
        background-repeat: no-repeat;
        background-size: 38px 38px;
        background-position: center center
    }

    body.project-body .project-modal {
        height: auto;
        width: 100%;
        bottom: 0;
        z-index: 4
    }

    body.project-body .project-modal .project-modal__info {
        padding: 12.2vw 30px
    }

    body.project-body .project-modal .project-modal__title {
        font-size: 2.6vw;
        margin-bottom: 3.2vw
    }

    body.project-body .project-modal__about {
        width: 100%
    }

    body.project-body .close-btn {
        top: 6.68vw;
        right: 5.6vw
    }

    body.project-body .footer-project {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        position: relative;
        margin-top: 0;
        width: calc(100% + 30px) !important
    }

    body.project-body .footer-project .row {
        margin-right: 0
    }

    body.project-body .footer-project .row .info-bottom {
        background-color: transparent
    }

    body.project-body .footer-project .bigger-text {
        height: 38.9vw;
        min-height: 56px;
        -webkit-transition: height .5s ease;
        -o-transition: height .5s ease;
        transition: height .5s ease
    }

    body.project-body .project-modal .publications-web-list li {
        width: 46%;
        float: left;
        margin-bottom: 20px
    }

    body.project-body .project-modal .publications-web-list li:nth-child(2n-1) {
        margin-right: 4%;
        clear: both
    }

    body.project-body .project-modal .project-modal__title.project-modal__title-about {
        display: none
    }

    body.project-body .slider_item-project span.small-text {
        font-size: 12px
    }

    body.project-body .slider_item-project h3 {
        font-size: 50px;
        margin-top: 6px
    }

    body.project-body .footer-project {
        width: 100%
    }

    body.project-body .full-arrow {
        display: none
    }

    body.project-body .awards-list_year {
        font-size: 2.34vw;
        line-height: 2.4vw;
        width: 7.03vw
    }

    body.project-body .project-modal__awards:not(:empty) {
        padding-bottom: 6.3vw
    }

    body.project-body .awards-list_description {
        width: calc(100% - 7.03vw);
        margin-bottom: 4.3vw
    }

    body.project-body .awards-list_description span:not(:empty) {
        font-size: 2.08vw
    }

    body.project-body .awards-list_description span.awards-list_title {
        font-size: 2.34vw;
        line-height: 2.4vw
    }

    body.project-body .publications-web-list_subtitle {
        font-size: 2.08vw;
        line-height: 2.6vw
    }

    body.project-body .publications-web-list_text {
        font-size: 2.08vw
    }

    body.project-body .project-modal__about {
        font-size: 2.34vw
    }
}

@media screen and (max-width: 1024px) {
    .project_title {
        font-size: 1.2em
    }

    .lb-details-caption {
        font-size: 2.35vw
    }

    .lb-details {
        padding: 2.6vw 4.6vw 2.35vw
    }

    .lb-container {
        padding-left: 40px;
        padding-right: 40px
    }

    .logo-wrapper {
        padding-left: 0
    }

    .logo {
        font-size: 3.25vw
    }

    .menu-wrapper {
        padding-right: 0
    }

    .top-wrapper {
        height: 8vw;
        padding-left: 45px;
        padding-right: 45px
    }

    body.about-body .container {
        padding-left: 30px;
        padding-right: 30px
    }

    body.awards-body .top-wrapper, body.publications-body .top-wrapper {
        background-color: #fff
    }

    .article-image {
        width: calc(100% + 60px);
        max-width: calc(100% + 60px);
        margin-left: -30px
    }

    .project_title {
        font-size: 3.3854vw
    }

    body.awards-body .big-text, body.awards-body .number-text, body.news-body .big-text, body.news-body .number-text, body.publications-body .big-text, body.publications-body .number-text {
        font-size: 8.333vw
    }

    body.awards-body {
        height: auto;
        overflow-y: scroll
    }

    body.awards-body .owl-carousel__awards {
        margin-right: 0;
        margin-bottom: 0
    }

    body.awards-body .owl-carousel__awards .awards-images {
        width: 100%;
        height: 100%;
        margin-bottom: 6.64vw
    }

    body.awards-body .owl-carousel__awards .awards-images img {
        height: auto
    }

    body.awards-body .owl-carousel__awards .awards-item {
        width: 100%;
        height: auto;
        margin-bottom: 9vw
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list {
        height: auto !important;
        overflow: hidden;
        margin: 7.8125vw 0 0
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list li {
        margin-bottom: 6.5vw
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list li:last-child {
        margin-bottom: 0
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_year {
        font-size: 2.34375vw;
        width: 7.03vw;
        line-height: 1.2
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description {
        margin-bottom: 0;
        width: calc(100% - 7.03vw)
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description span:not(:empty) {
        font-size: 2.0833vw;
        margin-bottom: 6px
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description span.awards-list_title {
        font-size: 2.34375vw;
        line-height: 1.2
    }

    body.awards-body .awards-info {
        margin-bottom: 5vw
    }

    body.awards-body .awards-images__description {
        display: block;
        font-size: 2.0833vw;
        line-height: 1.2;
        margin-top: 3.9vw
    }

    body.awards-body .full-arrow, body.publications-body .full-arrow {
        display: none
    }

    .big-text, .number-text {
        margin-bottom: 0
    }

    body.publications-body {
        height: auto;
        overflow-y: scroll
    }

    body.publications-body .publications-info {
        margin-bottom: 5vw
    }

    body.publications-body .publications-printed-list {
        margin-top: 5.3vw;
        padding-right: 0;
        overflow-y: hidden;
        height: auto !important
    }

    body.publications-body .publications-printed-list li {
        margin-bottom: 5.3vw
    }

    body.publications-body .owl-carousel__publications {
        height: auto !important
    }

    body.publications-body .owl-carousel__publications .publications-images {
        width: 100%;
        height: 100%;
        margin-bottom: 6.64vw
    }

    body.publications-body .owl-carousel__publications .publications-images img {
        height: auto
    }

    body.publications-body .owl-carousel__publications .publications-item {
        width: 100%;
        height: auto;
        margin-bottom: 9vw
    }

    body.publications-body .owl-carousel__publications .publications-item .publications-printed-list {
        height: auto !important;
        overflow: hidden;
        margin: 7.8125vw 0 0
    }

    body.publications-body .owl-carousel__publications .publications-item .publications-printed-list li {
        margin-bottom: 6.5vw
    }

    body.publications-body .owl-carousel__publications .publications-item .publications-printed-list li:last-child {
        margin-bottom: 0
    }

    body.publications-body .owl-carousel__publications .publications-web-list_year {
        font-size: 2.0833vw;
        width: 7.03vw;
        line-height: 1;
        margin-bottom: 2.5vw !important
    }

    body.publications-body .owl-carousel__publications .publications-web-list_subtitle {
        font-size: 2.34375vw
    }

    body.publications-body .owl-carousel__publications .publications-web-list_text {
        font-size: 2.083333vw
    }

    body.publications-body .publications-item__content {
        width: 100%;
        margin-top: 0
    }

    body.publications-body .info-bottom {
        padding-bottom: 20px
    }

    .small-text {
        font-size: 14px;
        margin-bottom: 0
    }

    .bigger-text {
        font-size: 82px
    }

    .social li a {
        padding: 5px 0 12px
    }

    .info-bottom {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        background-color: #fff;
        margin-left: 0;
        padding-left: 45px;
        padding-right: 45px;
        padding-bottom: 20px
    }

    .footer-fixed-sm {
        position: fixed;
        bottom: -4px;
        background-color: #fff;
        left: 0;
        right: 0;
        width: auto;
        padding: 0 !important
    }

    .footer-fixed-sm .info-bottom {
        padding-bottom: 5.7291vw !important
    }

    body.project-body .owl-dots {
        display: none
    }

    body.project-body .number-text-top .number-text {
        top: -3px
    }
}

@media screen and (max-width: 800px) {
    body.project-body .number-text-top .number-text {
        top: -9px
    }
}

@media screen and (max-width: 769px) {
    .owl-carousel__wrapper {
        width: 100%
    }

    .owl-carousel__wrapper .slider_item, .owl-carousel__wrapper .slider_item-project {
        width: auto !important
    }

    body.index-body .small-text {
        font-size: 14px
    }

    body.index-body .small-text .bold-text {
        font-size: 11px
    }

    body.index-body .number-text {
        font-size: 60px
    }

    body.index-body .project-item .main-title__text {
        display: inline-block;
        clear: both;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 100% !important;
        text-align: center;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        text-align: center
    }

    body.index-body .svg-circle__wrapper {
        display: block
    }

    .top_menu li {
        margin-bottom: 13px
    }

    .top_menu li a, .top_menu li h3 {
        font-size: 20px
    }

    .top_menu li a.effect-2, .top_menu li h3.effect-2 {
        font-size: 18px
    }

    .top_menu li h3 {
        margin-bottom: 13px
    }

    .top_menu .social li {
        margin-bottom: 6px
    }

    .top_menu .social li a {
        font-size: 18px
    }

    .top_menu .top_menu__block {
        width: 100%;
        margin-top: 4.6vw
    }

    .top_menu .top_menu__block ul {
        text-align: left;
        width: 50%;
        float: right;
        clear: both
    }

    .top_menu .top_menu__block .top_menu__nav, .top_menu .top_menu__block .top_menu__social {
        margin-top: 120px
    }

    .lb-details .lb-number {
        font-size: 7.8vw
    }

    .block-mobile {
        display: block
    }

    body:not(.awards-body) .fullscreen-block {
        min-height: auto
    }

    body.contacts-body .fullscreen-block {
        min-height: 100vh
    }

    body.projects-body .fullscreen-block {
        min-height: 100vh
    }

    body.index-body .fullscreen-block {
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100);
        max-height: 100vh;
        max-height: calc(var(--vh, 1vh) * 100)
    }

    .col-empty {
        display: none
    }

    .container {
        padding: 3.9vw 30px
    }

    .bgc-white-sm {
        background-color: #fff
    }

    body.projects-body .big-text, body.projects-body .number-text {
        font-size: 64px
    }

    body.projects-body .projects-list {
        margin: 80px auto
    }

    body.projects-body .projects-list li a {
        font-size: 26px;
        line-height: 1.6
    }

    body.projects-body .project-thumb {
        display: none
    }

    body.about-body .row-about-info {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        height: auto;
        min-height: auto
    }

    body.about-body .about-photo-wrapper {
        position: relative;
        height: 50%;
        height: calc(var(--vh, 1vh) * 50);
        overflow: hidden;
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0;
        margin-top: -65px;
        margin-left: -40px;
        margin-right: -40px;
        width: calc(100% + 80px)
    }

    body.about-body .about-photo-wrapper img {
        width: 100%;
        height: auto
    }

    body.about-body .about-content {
        margin-top: 60px;
        margin-bottom: 100px;
        display: block;
        -webkit-box-flex: 1;
        -ms-flex: auto;
        flex: auto
    }

    body.about-body .about-content .text-content {
        font-size: 2.35vw;
        line-height: 1.6
    }

    body.about-body .title-bottom {
        position: fixed;
        bottom: -4px;
        left: 0;
        background-color: #fff;
        width: 100%;
        padding-left: 30px;
        padding-top: 15px;
        padding-bottom: 65px
    }

    body.contacts-body .fullscreen-block {
        padding-bottom: 20px
    }

    body.contacts-body .contacts-info {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0;
        margin-left: 50%;
        margin-top: 40px;
        margin-bottom: 100px;
        padding-left: 0
    }

    body.contacts-body .info-bottom {
        margin-left: 0;
        padding-bottom: 65px
    }

    body.contacts-body .contacts-list li {
        margin-bottom: 90px
    }

    body.contacts-body .contacts-list li h3 {
        font-size: 20px
    }

    body.contacts-body .contacts-list li a {
        font-size: 16px
    }

    body.news-body .fullscreen-block {
        min-height: 100vh
    }

    body.news-body .col-news-info {
        width: 100% !important;
        margin-top: 10.7vw
    }

    body.news-body .col-news-info .news-item {
        width: calc((100vw - 140px) / 2)
    }

    body.news-body .col-news-info .news-item:nth-child(2n) {
        margin-left: 80px
    }

    body.news-body .col-news-info .news-item_img {
        width: calc((100vw - 140px) / 2 - 54px);
        height: calc((100vw - 140px) / 2 - 54px);
        margin-left: 44px
    }

    body.news-body .col-news-info .news-item_content .news-item_title {
        width: calc((100vw - 140px) / 2 - 54px)
    }

    body.news-body .col-news-info .news-item_img img {
        height: calc((100vw - 140px) / 2 - 54px)
    }

    body.news-body .row-news-bottom {
        position: fixed;
        bottom: 0 !important;
        background-color: #fff;
        left: 15px;
        right: 15px;
        width: auto;
        padding: 15px 0
    }

    body.news-body .news-item_content .news-item_date {
        font-size: 16px;
        width: 54px
    }

    body.news-body .news-item_content .news-item_title {
        font-size: 16px
    }

    body.contacts-body .top-wrapper, body.new-body .top-wrapper, body.news-body .top-wrapper {
        background-color: #fff
    }

    .article-image {
        width: calc(100% + 60px);
        max-width: calc(100% + 60px);
        margin-left: -30px
    }

    body.new-body time {
        font-size: 16px
    }

    body.new-body .big-text {
        font-size: 64px
    }

    body.new-body .info-bottom {
        display: none !important
    }

    body.new-body .article-sm-info {
        display: block !important;
        margin-top: 70px;
        margin-bottom: 50px
    }

    body.new-body .article-sm-info h2 {
        width: 55%
    }

    body.new-body .article-sm-info .small-text {
        font-size: 16px
    }

    body.new-body .col-news-info {
        width: 100% !important
    }

    body.new-body .article-content {
        width: 90% !important;
        font-size: 18px
    }

    body.new-body .article-content p {
        margin: 30px 0
    }

    body.new-body .article-content::after {
        width: 12px !important;
        height: 12px !important
    }

    body.new-body figure.article-content_figure-vertical-left {
        width: 100%;
        margin-right: 0
    }

    body.new-body figure.article-content_figure-vertical-left + figure.article-content_figure-vertical-left {
        margin-top: 70px
    }

    body.new-body .article-description {
        width: 100%;
        font-size: 22px
    }

    body.new-body figcaption {
        font-size: 14px
    }

    body.project-body .project-modal {
        top: auto;
        bottom: 0
    }

    body.project-body .slider-progress {
        display: none
    }

    body.project-body .bigger-text .title-content div span {
        padding-top: 8px;
        padding-right: 4px
    }
}

@media screen and (orientation: portrait) and (max-width: 769px),(max-width: 426px) {
    body.index-body .footer-index {
        bottom: 15px
    }

    body.index-body #preloader .number-text {
        text-align: right
    }

    body.index-body #preloader .numbers-wrapper {
        bottom: 15px
    }

    body.index-body .fullscreen-block {
        display: block;
        padding: 30px 0 0
    }

    body.index-body .main-title__text {
        font-size: 82px
    }

    body.index-body .main-title__text:nth-last-child(1), body.index-body .main-title__text:nth-last-child(3) {
        margin-right: 0
    }

    body.index-body .main-title__text:nth-last-child(2) {
        margin-right: 40px
    }

    body.index-body .pre-title {
        margin-left: 0;
        margin-bottom: 15px
    }

    body.index-body .post-title {
        width: 100%;
        margin-right: 0;
        padding-right: 0
    }

    body.index-body .main-title {
        min-height: auto !important;
        margin-bottom: 10px;
        width: 100%
    }

    body.index-body .main-title .main-title__text {
        font-size: 70px
    }

    body.index-body .project-item .main-title__content {
        width: 100%;
        margin-bottom: 8.2vw
    }

    body.index-body .project-item .main-title {
        width: 500px;
        margin-left: auto;
        margin-right: auto !important;
        float: none
    }

    body.index-body .fullscreen-slider {
        height: auto
    }

    body.index-body .fullscreen-slider .slick-list {
        overflow: visible
    }

    body.index-body .fullscreen-slider .about-slide {
        margin-top: -60px
    }

    body.index-body .fullscreen-slider .about-slide .post-title {
        padding-bottom: 0
    }

    body.index-body .fullscreen-slider .row {
        position: relative
    }

    body.index-body .fullscreen-slider .project-item .main-title {
        margin-top: 20px
    }

    body.index-body .fullscreen-slider-wrapper {
        position: relative
    }

    body.index-body .fullscreen-slider-wrapper .fullscreen-slider-bg {
        width: 100%;
        height: 63vh;
        height: calc(var(--vh, 1vh) * 63);
        max-height: 63vh;
        max-height: calc(var(--vh, 1vh) * 63);
        position: relative
    }

    body.index-body .fullscreen-slider-wrapper .fullscreen-slider {
        height: 37vh;
        height: calc(var(--vh, 1vh) * 37);
        max-height: 37vh;
        max-height: calc(var(--vh, 1vh) * 37)
    }

    body.index-body .current-number {
        width: 80px !important
    }

    body.index-body .col__fullscreen-slider-numbers {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        margin-left: -30px
    }

    .fullscreen-block .text-content {
        padding-right: 15px;
        padding-bottom: 0 !important
    }

    .big-text {
        text-transform: uppercase;
        font-size: 2em
    }

    .toggle_menu {
        margin-right: 0
    }

    .small-text {
        font-size: 12px
    }

    .small-text .bold-text {
        font-size: 10px
    }

    .row-project-info .small-text {
        margin-bottom: 0
    }

    .fullscreen-slider-wrapper {
        margin-left: 0;
        left: 0
    }

    .fullscreen-slider-wrapper .fullscreen-slider {
        width: 100%
    }

    .fullscreen-slider-wrapper .fullscreen-slider-numbers {
        left: 30px
    }
}

@media screen and (orientation: portrait) and (max-width: 769px) {
    body.project-body .fullscreen-block {
        overflow: hidden !important
    }
}

@media screen and (orientation: landscape) and (max-width: 769px) {
    body.about-body .fullscreen-block {
        min-height: 100vh;
        height: auto
    }

    body.about-body .fullscreen-block .about-photo-wrapper {
        min-height: 220px
    }

    body.about-body .fullscreen-block .row-about-info {
        height: auto
    }

    body.index-body .main-title .main-title__text, body.index-body .number-text {
        font-size: calc(4.25vw + 6px)
    }

    .big-text, .number-text {
        font-size: 2em
    }

    body.contacts-body .info-bottom {
        padding-bottom: 20px
    }

    body.about-body .title-bottom {
        padding-bottom: 20px
    }

    body.about-body .about-content {
        margin-top: 30px
    }

    body.project-body {
        height: auto
    }

    body.project-body .fullscreen-block {
        height: auto;
        overflow-y: visible
    }

    body.project-body .project-modal {
        z-index: 50
    }

    body.project-body .project-modal .project-modal__info {
        padding: 42px 30px
    }

    body.project-body .img-wrapper {
        height: 60vh;
        height: calc(var(--vh, 1vh) * 60)
    }

    body.project-body .img-wrapper img {
        height: 60vh;
        height: calc(var(--vh, 1vh) * 60)
    }
}

@media (max-width: 640px) {
    .top-wrapper {
        height: 16vw
    }

    .menuicon {
        width: 4.2vw;
        height: 4.2vw
    }

    .menuicon-button {
        margin-left: 2vw
    }

    .menuicon:after, .menuicon:before {
        width: 4.2vw;
        top: 2.1vw
    }

    body.index-body .svg-circle__wrapper {
        width: 29.9vmin;
        margin-top: -14.95vmin;
        right: 3.45vw
    }

    body.index-body .svg-circle__wrapper text {
        font-size: 8px
    }

    body.index-body .main-title .main-title__text {
        font-size: calc(9.25vw + 6px)
    }

    body.index-body .small-text {
        font-size: calc(1.57vw + 6px)
    }

    body.index-body .small-text .bold-text {
        font-size: calc(1.25vw + 6px)
    }

    body.index-body .number-text {
        font-size: calc(9.25vw + 6px)
    }

    body.index-body .fullscreen-slider-wrapper .fullscreen-slider {
        margin-top: -80px
    }

    body.index-body .project-item {
        margin-top: 80px
    }

    body.index-body .numbers-wrapper {
        bottom: 3.9vw
    }

    body.index-body .about-slide .post-title {
        width: auto;
        margin-left: 3.5vw
    }

    .top_menu li {
        margin-bottom: calc(1.16vw + 6px)
    }

    .top_menu li a, .top_menu li h3 {
        font-size: calc(2.3vw + 6px)
    }

    .top_menu li a.effect-2, .top_menu li h3.effect-2 {
        font-size: calc(1.97vw + 6px)
    }

    .top_menu .social li a {
        font-size: calc(1.97vw + 6px)
    }

    .top_menu .top_menu__block {
        margin-top: 6.3vw
    }

    .top_menu .top_menu__block .top_menu__nav, .top_menu .top_menu__block .top_menu__social {
        margin-top: calc(17.8vw + 6px)
    }

    .lb-details-caption {
        font-size: calc(2.5vw + 6px)
    }

    body.projects-body .projects-list li a {
        font-size: calc(3vw + 6px);
        line-height: 1.8
    }

    .big-text, .bigger-text, .lb-details .lb-number, .number-text {
        font-size: 9.375vw !important
    }

    body.index-body .number-text, body.project-body .lb-details .lb-number {
        font-size: 9.375vmin !important
    }

    body.project-body .number-wrapper {
        margin-top: 12px
    }

    body.project-body .owl-carousel__wrapper {
        margin: 0
    }

    body.project-body .number-text.block-mobile {
        font-size: 9.6vw !important;
        top: 14.5vw
    }

    body.project-body .fullscreen-block .bigger-text {
        margin-bottom: 7.5vw;
        height: 45.5vw
    }

    body.project-body .row-project-info {
        margin-top: 6.5vw
    }

    body.project-body .img-wrapper {
        height: calc(100vh - 67.3vw - 150px);
        height: calc(var(--vh, 1vh) * 100 - 67.3vw - 150px)
    }

    body.project-body .img-wrapper img {
        height: calc(100vh - 67.3vw - 150px);
        height: calc(var(--vh, 1vh) * 100 - 67.3vw - 150px)
    }

    body.project-body .small-text {
        font-size: 2.5vw
    }

    body.project-body .small-text .bold-text {
        font-size: 2.3vw
    }

    body.project-body .project-modal .project-modal__info {
        padding: 18.3vw 30px
    }

    body.project-body .slider_item-project {
        height: calc(100vh - 95.5vw)
    }

    body.project-body .slider_item-project span.small-text {
        font-size: 2.1vw
    }

    body.project-body .slider_item-project h3 {
        font-size: 6.13vw
    }

    body.project-body .project-modal .publications-web-list li {
        width: 100%;
        margin-bottom: 8.6vw
    }

    body.project-body .project-modal .publications-web-list li:nth-child(2n-1) {
        margin-right: 0
    }

    body.project-body .project-modal .project-modal__title {
        font-size: 3vw;
        margin-bottom: 6.2vw
    }

    body.project-body .awards-list_year {
        font-size: 3.3vw;
        width: 10.5vw
    }

    body.project-body .awards-list_description span:not(:empty) {
        margin-bottom: 1.2vw
    }

    body.project-body .awards-list_description {
        width: calc(100% - 10.5vw);
        margin-bottom: 8.4vw
    }

    body.project-body .awards-list_description span:not(:empty) {
        font-size: 3.3vw
    }

    body.project-body .awards-list_description span.awards-list_title {
        font-size: 3.3vw
    }

    body.project-body .publications-web-list_subtitle {
        font-size: 3.3vw;
        line-height: 1.1
    }

    body.project-body .publications-web-list_text {
        font-size: 3vw
    }

    body.project-body .project-modal__about {
        font-size: 3.74vw;
        clear: both;
        float: left;
        margin-top: 4vw
    }

    body.project-body .project-modal__awards:not(:empty) {
        padding-bottom: 0
    }

    body.project-body .publications-web-list:not(:empty) {
        margin-bottom: 1vw
    }

    .logo {
        font-size: 4.95vw
    }

    body.contacts-body .contacts-list {
        margin-top: 10px
    }

    body.contacts-body .contacts-list li {
        margin-bottom: calc(11.56vw + 6px)
    }

    body.contacts-body .contacts-list li a, body.contacts-body .contacts-list li h3 {
        font-size: calc(2.186vw + 6px);
        line-height: 1.5
    }

    body.contacts-body .contacts-info {
        margin: calc(19.4vw + 6px) 0 calc(17.9vw + 6px);
        padding-left: 15px
    }

    body.contacts-body .bigger-text {
        margin-bottom: calc(1.5vw + 2px)
    }

    body.contacts-body .info-bottom {
        padding-bottom: calc(5.5vw + 6px)
    }

    .social li a {
        padding: 9px 0
    }

    .big-text, .number-text {
        font-size: 3.6em
    }

    .bigger-text {
        font-size: calc(10.626vw + 6px)
    }

    body.news-body .col-news-info {
        width: 86vw !important;
        float: none;
        margin-left: 5%;
        margin-right: 5%;
        margin-top: 20.5vw
    }

    body.news-body .col-news-info .news-item {
        width: calc(86vw - 60px)
    }

    body.news-body .col-news-info .news-item:nth-child(2n) {
        margin-left: 0
    }

    body.news-body .col-news-info .news-item_img {
        float: left;
        width: calc(86vw - 60px - 20vw);
        height: calc(86vw - 80px - 20vw);
        margin-left: 12vw
    }

    body.news-body .col-news-info .news-item_content .news-item_title {
        width: calc(86vw - 60px - 20vw)
    }

    body.news-body .col-news-info .news-item_img img {
        height: calc(86vw - 80px - 20vw)
    }

    body.news-body .news-item_content {
        float: left
    }

    body.news-body .news-item_content .news-item_date {
        font-size: calc(2.3vw + 6px);
        width: 12vw
    }

    body.news-body .news-item_content .news-item_title {
        font-size: calc(2.3vw + 6px)
    }

    body.new-body time {
        font-size: calc(1.56vw + 6px)
    }

    body.new-body .big-text {
        font-size: calc(9.07vw + 6px)
    }

    body.new-body .article-sm-info {
        margin-top: calc(10vw + 6px);
        margin-bottom: calc(6.87vw + 6px)
    }

    body.new-body .article-sm-info .small-text {
        font-size: calc(1.56vw + 6px)
    }

    body.new-body .article-content {
        font-size: calc(2.82vw + 6px);
        margin-right: 0;
        width: 100% !important
    }

    body.new-body .article-content p {
        margin: calc(4.2vw + 3px) 0
    }

    body.new-body .article-description {
        font-size: calc(3.45vw + 6px)
    }

    body.new-body figcaption {
        font-size: calc(2.82vw + 6px)
    }

    body.new-body figure.article-content_figure-vertical-left + figure.article-content_figure-vertical-left {
        margin-top: calc(8.4vw + 16px)
    }

    body.about-body .fullscreen-block {
        min-height: 100vh;
        height: auto
    }

    body.about-body .about-photo-wrapper {
        height: 40%;
        height: calc(var(--vh, 1vh) * 40);
        min-height: 220px
    }

    body.about-body .about-content {
        margin-top: calc(11vw + 6px)
    }

    body.about-body .about-content .text-content {
        font-size: 3.74vw;
        padding-right: 12vw
    }

    body.about-body .title-bottom {
        margin-top: 0;
        padding-bottom: calc(5.5vw + 6px)
    }

    body.about-body .bigger-text {
        margin-bottom: 3.5vw
    }

    .big-text, .number-text {
        font-size: 2.2em
    }

    .project_title {
        font-size: 5vw
    }

    body.awards-body .owl-carousel__awards {
        margin-top: 15vw
    }

    body.awards-body .owl-carousel__awards .awards-images {
        margin-bottom: 7.65625vw
    }

    body.awards-body .owl-carousel__awards .awards-item {
        margin-bottom: 12vw
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list {
        margin: 9.84375vw 0 0
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list li {
        margin-bottom: 9.84375vw
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_year {
        width: 11vw;
        font-size: 3.125vw;
        line-height: 1.1
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description {
        width: calc(100% - 11vw);
        margin-bottom: 0
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description span:not(:empty) {
        font-size: 3.125vw;
        line-height: 1.1;
        margin-bottom: 4px
    }

    body.awards-body .owl-carousel__awards .awards-item .awards-list_description span.awards-list_title {
        font-size: 3.125vw;
        line-height: 1.1;
        margin-bottom: 4px
    }

    body.awards-body .awards-labels__wrapper .awards-labels .awards li {
        margin-bottom: calc(3.12vw + 6px)
    }

    body.awards-body .awards-images__description {
        font-size: 3.125vw;
        margin-top: 5.78125vw
    }

    body.publications-body .publications-printed-list {
        margin-top: 9.84375vw
    }

    body.publications-body .publications-printed-list li {
        margin-bottom: 9.84375vw
    }

    body.publications-body .owl-carousel__publications {
        margin-top: 15vw
    }

    body.publications-body .owl-carousel__publications .publications-item {
        margin-bottom: 12vw
    }

    body.publications-body .owl-carousel__publications .publications-web-list_year {
        font-size: 3.125vw
    }

    body.publications-body .owl-carousel__publications .publications-web-list_subtitle {
        font-size: 3.4375vw
    }

    body.publications-body .owl-carousel__publications .publications-web-list_text {
        font-size: 3.125vw
    }
}

@media screen and (orientation: landscape) and (max-width: 640px) {
    body.about-body .title-bottom {
        padding-bottom: 20px
    }

    body.about-body .about-content {
        margin-top: 30px
    }

    body.about-body .about-content .text-content {
        font-size: calc(1.7vw + 6px)
    }

    body.about-body .fullscreen-block {
        min-height: 100vh;
        height: auto
    }

    body.about-body .fullscreen-block .about-photo-wrapper {
        min-height: 220px
    }

    body.about-body .fullscreen-block .row-about-info {
        height: auto
    }

    body.about-body .big-text, body.about-body .number-text {
        font-size: 1.8em
    }

    body.index-body .main-title .main-title__text, body.index-body .number-text {
        font-size: calc(4.25vw + 6px)
    }

    body.index-body .small-text {
        font-size: calc(1vw + 6px)
    }

    body.index-body .post-title {
        margin-right: 0
    }

    body.index-body .fullscreen-slider .text-content {
        padding-bottom: 70px
    }

    body.project-body .img-wrapper {
        height: 60vw;
        height: calc(var(--vh, 1vh) * 60)
    }

    body.project-body .img-wrapper img {
        height: 60vw;
        height: calc(var(--vh, 1vh) * 60)
    }

    body.project-body .video_item .iframe-wrapper {
        height: 60vw;
        height: calc(var(--vh, 1vh) * 60)
    }

    body.project-body .project-modal .project-modal__info {
        padding: 34px 30px
    }
}

@media screen and (max-aspect-ratio: 1 / 1) and (min-aspect-ratio: 256 / 325) {
    body.project-body .footer-project .bigger-text {
        height: 30.9vw
    }

    body.project-body .info-bottom .bigger-text {
        margin-bottom: 2vw
    }

    body.project-body .row-project-info {
        margin-top: 0
    }

    body.project-body .img-wrapper {
        height: calc(100vh - 57vw - 40px);
        height: calc(var(--vh, 1vh) * 100 - 57vw - 40px)
    }

    body.project-body .img-wrapper img, body.project-body .video_item .iframe-wrapper {
        height: calc(100vh - 57vw - 40px);
        height: calc(var(--vh, 1vh) * 100 - 57vw - 40px)
    }
}

@media (max-width: 576px) {
    .top_menu .top_menu__block {
        margin-top: 90px
    }

    body.project-body .project-details {
        margin-bottom: 0
    }

    body.project-body .owl-item:empty, body.project-body .slider_item-project {
        display: none !important
    }

    body.project-body .fullscreen-block .bigger-text {
        margin-bottom: 2vw;
        height: 34vw
    }

    body.project-body .info-bottom {
        padding-bottom: 0
    }

    body.project-body .row-project-info {
        margin-top: 2vw
    }

    body.project-body .img-wrapper {
        height: calc(100vh - 42vw - 120px);
        height: calc(var(--vh, 1vh) * 100 - 42vw - 120px)
    }

    body.project-body .img-wrapper img, body.project-body .video_item .iframe-wrapper {
        height: calc(100vh - 42vw - 120px);
        height: calc(var(--vh, 1vh) * 100 - 42vw - 120px)
    }

    body.index-body .main-title .main-title__text {
        font-size: calc(6.25vw + 6px)
    }

    body.index-body .number-text {
        font-size: calc(6.25vw + 6px)
    }

    body.index-body .project-item .main-title {
        width: 100%
    }

    body.index-body .post-title {
        margin-right: 0
    }
}

@media screen and (orientation: portrait) and (max-width: 576px) {
    body.index-body .project-item .main-title {
        width: 80%
    }
}

@media screen and (orientation: landscape) and (max-width: 576px) {
    .logo {
        font-size: calc(1.75vw + 6px)
    }

    body.index-body .main-title .main-title__text {
        font-size: calc(3.25vw + 6px)
    }

    body.index-body .number-text {
        font-size: calc(3.25vw + 6px)
    }

    body.index-body .fullscreen-slider .text-content {
        padding-bottom: 50px
    }

    body.index-body .main-title__text:nth-last-child(2), body.index-body .main-title__text:nth-last-child(4) {
        margin-right: 40px
    }

    body.index-body .about-slide .pre-title {
        margin-left: 0
    }

    .fullscreen-block .text-content {
        padding-right: 0
    }

    .big-text, .bigger-text, .number-text {
        font-size: 1.8em
    }

    body.project-body .img-wrapper {
        height: 80vw;
        height: calc(var(--vh, 1vh) * 80)
    }

    body.project-body .img-wrapper img {
        height: 80vw;
        height: calc(var(--vh, 1vh) * 80)
    }
}

@media (max-width: 425px) {
    body.project-body .owl-carousel__wrapper .owl-right-arrow {
        width: 20px;
        height: 18px;
        bottom: 2px
    }

    body.about-body .about-content .text-content {
        padding-right: 0
    }
}

@media screen and (orientation: landscape) and (max-width: 426px) {
    body.index-body .fullscreen-slider-wrapper .fullscreen-slider-bg {
        height: 50vh;
        height: calc(var(--vh, 1vh) * 50);
        max-height: 50vh;
        max-height: calc(var(--vh, 1vh) * 50)
    }

    body.index-body .fullscreen-slider-wrapper .fullscreen-slider {
        height: 50vh;
        height: calc(var(--vh, 1vh) * 50);
        max-height: 50vh;
        max-height: calc(var(--vh, 1vh) * 50)
    }
}

@media screen and (max-height: 400px) and (min-width: 1200px) {
    .main-title__text {
        font-size: 3.5em
    }

    .number-text {
        font-size: 2.5em
    }
}

@media screen and (orientation: landscape) and (max-height: 500px) {
    body.about-body {
        min-height: 380px
    }

    body.about-body .fullscreen-block {
        height: auto
    }

    body.about-body .bigger-text {
        margin-bottom: 10px
    }
}

@media (max-width: 320px) {
    body.index-body .project-item .main-title {
        width: 100%
    }
}

@media screen and (max-height: 450px) {
    body.project-body .project-modal .close-btn {
        display: block
    }
}

@media screen and (max-width: 320px) {
    body.about-body .fullscreen-block {
        height: auto
    }

    body.about-body .row-about-info {
        height: auto
    }
}

@media (min-width: 1200px) {
    .fullscreen-slider-bg .slick-slide.slick-active .bg-slide {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }
}

.project-modal__opened .project-modal__title, .project-modal__opened .project-modal__content {
    display: block !important;
}
/* cookies */
*.cookies_main{
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.45);
    position: fixed;
    z-index: 999999;
    left: 0;
    right: 0;
    cursor: auto !important;
    padding: 40px;
    display: none;
    top:0;
}
.cookies_main.cookies_main_show{
    display: block;
}
*.cookies_inner{
    max-width: 1000px;
    margin: auto;
    background-color: #FFFFFF;
    padding: 1.875rem;
    border: solid 1px #666666;
    box-shadow: 0 0 10px rgb(0 0 0 / 40%);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    cursor: auto !important;
    width: 80%;
    height: 600px;
    overflow-y: scroll;
}

.cookies_top_tex{
    letter-spacing: 1px;
    font-weight: 500;
    font-size: 35px;
    text-transform: uppercase;
}
.cookies_inner  h3{
    font-size: 30px;
    font-weight: 100;
    letter-spacing: 1px;
    margin-bottom: 1.25rem;
}
.cookies_inner h4{
    margin-bottom: 1.25rem;
    margin-top: 0.2rem;
    color: #1c1c1b;
    font-weight: 500;
}
.terms-container{
    height: 160px;
    overflow-y: scroll;
}
.terms-container p{
    margin-bottom: 1.25rem;
    color: #1c1c1b;
    font-size: 1rem;
    font-weight: normal;
}
.accept_dont{
    display: flex;
    align-items: center;
    margin-top: 20px;
}
.Baccept{
    width: 12rem;
    color: #fff;
    cursor: pointer;
    text-transform: uppercase;
    background: #000;
    line-height: normal;
    border: 1px solid #000;
    padding: 0.6rem 1.2rem 0.5rem;
    margin-right: 1rem;
    transition: background-color 300ms ease-out;
}
.Bacceptnot{
    line-height: normal;
    position: relative;
    text-align: center;
    background-color: #fff;
    border: 1px solid #000;
    /*color: #FFFFFF;*/
    transition: background-color 300ms ease-out;
    text-transform: uppercase;
    padding: 0.6rem 1.2rem 0.5rem;
    width: 12rem;
}
.btm_cookies{
    border: 1px solid #d8d8d8;
    padding: 1.25rem;
    background: #f2f2f2;
    color: #333333;
    margin-top: 10px;
}
.btm_cookies h1{
    margin-bottom: 0.625rem;
    font-size: 1.125rem;
}
.btm_cookies h6{
    font-size: 1rem;
    font-weight: 100;
}
.dont_acceptmian{
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.45);
    position: fixed;
    z-index: 999999;
    left: 0;
    right: 0;
    cursor: auto !important;
    padding: 40px;
    display: none;
    top: 0;
}
.dont_accept{
    max-width: 1000px;
    margin: auto;
    background-color: #FFFFFF;
    padding: 1.875rem;
    border: solid 1px #666666;
    box-shadow: 0 0 10px rgb(0 0 0 / 40%);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    cursor: auto !important;
    width: 80%;
}
.dont_accept a{
    cursor: pointer !important;
}
.impressum-content h1{
    font-size: 40px;
}
.impressum-content p{
    margin-bottom: 20px !important;
}
.impressum-content ul{
    margin-left: 16px;
}
.impressum-content ul li{
    margin-bottom: 10px;
}
.ppc_anchor a{
    text-decoration: none !important;
    border: 1px solid #232323;
    width: 160px;
    display: inline-flex;
    height: 40px;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}
.ppc_anchor a:hover{
    background: #232323;
    color: #fff;
}
.frontP_main{
    padding-top: 20px;
}
.fp_img{
    text-align: center;
}
.fp_box{
    display: flex;
    justify-content: space-between;
}
.fp_singlebox{
    width: 23%;
    background: #aaa;
    border: 5px solid #ddd;
    border: 5px solid #ddd;
    padding: 10px;
    text-align: center;
}
.fp_btmLInks{
    display: flex;
    justify-content: space-between;
    width: 50%;
    margin: auto;
    margin-top: 50px;
}
.fp_btmLInks a{
    text-align: center;
}
.fp_btmLInks h2{
    font-size: 32px;
}
.fp_btmLInks p{
    font-size: 12px;
    text-decoration: underline;
    margin-bottom: 0;
}
.fp-box-deail{
    height: 190px;
}
.fp-box-deail ul{
    margin-left: 40px;
}
.fp-box-deail ul li{
    text-align: left;
}
.fp_singlebox h3{
    font-size: 32px;
}
.fp_singlebox h4{
    font-size: 25px;
    height: 78px;
    overflow: hidden;
}
.fp-box-deail{
    height: 190px;
}
.fh_of {
    height: 680px;
    overflow-y: auto;
    margin-top: 60px;
    width: 100%;
}
@media (max-width:767px){
    .cookies_inner{
        width: 95%;
        padding: 0.875rem;
    }
    .hide_cookies{
        font-size: 11px;
    }
    .dont_accept{
        width: 95%;
        padding: 0.875rem;
    }
}
@media (max-width:575px){
    .ppc_anchor a{
        margin: 5px;
        width: 170px;
    }
    .ppc_anchor{
        text-align: center;
    }
}
.top_menu__small_text select{
    border: none !important;
    font-family: 'Arial', sans-serif;
    color: #232323;
    font-size: 16px;
}
