@charset "UTF-8";

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

main {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animated.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.animated.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s
}

.animated.bounceIn,
.animated.bounceOut,
.animated.flipOutX,
.animated.flipOutY {
    -webkit-animation-duration: .75s;
    animation-duration: .75s
}

@-webkit-keyframes bounce {

    20%,
    53%,
    80%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0)
    }

    70% {
        -webkit-animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0)
    }

    90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0)
    }
}

@keyframes bounce {

    20%,
    53%,
    80%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0)
    }

    70% {
        -webkit-animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        animation-timing-function: cubic-bezier(.755, .050, .855, .060);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0)
    }

    90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0)
    }
}

.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom
}

@-webkit-keyframes flash {

    50%,
    from,
    to {
        opacity: 1
    }

    25%,
    75% {
        opacity: 0
    }
}

@keyframes flash {

    50%,
    from,
    to {
        opacity: 1
    }

    25%,
    75% {
        opacity: 0
    }
}

.flash {
    -webkit-animation-name: flash;
    animation-name: flash
}

@-webkit-keyframes pulse {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }

    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05)
    }

    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

@keyframes pulse {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }

    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05)
    }

    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse
}

@-webkit-keyframes rubberBand {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }

    30% {
        -webkit-transform: scale3d(1.25, .75, 1);
        transform: scale3d(1.25, .75, 1)
    }

    40% {
        -webkit-transform: scale3d(.75, 1.25, 1);
        transform: scale3d(.75, 1.25, 1)
    }

    50% {
        -webkit-transform: scale3d(1.15, .85, 1);
        transform: scale3d(1.15, .85, 1)
    }

    65% {
        -webkit-transform: scale3d(.95, 1.05, 1);
        transform: scale3d(.95, 1.05, 1)
    }

    75% {
        -webkit-transform: scale3d(1.05, .95, 1);
        transform: scale3d(1.05, .95, 1)
    }

    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

@keyframes rubberBand {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }

    30% {
        -webkit-transform: scale3d(1.25, .75, 1);
        transform: scale3d(1.25, .75, 1)
    }

    40% {
        -webkit-transform: scale3d(.75, 1.25, 1);
        transform: scale3d(.75, 1.25, 1)
    }

    50% {
        -webkit-transform: scale3d(1.15, .85, 1);
        transform: scale3d(1.15, .85, 1)
    }

    65% {
        -webkit-transform: scale3d(.95, 1.05, 1);
        transform: scale3d(.95, 1.05, 1)
    }

    75% {
        -webkit-transform: scale3d(1.05, .95, 1);
        transform: scale3d(1.05, .95, 1)
    }

    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

.rubberBand {
    -webkit-animation-name: rubberBand;
    animation-name: rubberBand
}

@-webkit-keyframes shake {

    from,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0)
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0)
    }
}

@keyframes shake {

    from,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0)
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0)
    }
}

.shake {
    -webkit-animation-name: shake;
    animation-name: shake
}

@-webkit-keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg)
    }

    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg)
    }

    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg)
    }

    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg)
    }

    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg)
    }

    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg)
    }

    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg)
    }

    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg)
    }

    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.headShake {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-name: headShake;
    animation-name: headShake
}

@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg)
    }

    to {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
        transform: rotate3d(0, 0, 1, 0deg)
    }
}

@keyframes swing {
    20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg)
    }

    to {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
        transform: rotate3d(0, 0, 1, 0deg)
    }
}

.swing {
    -webkit-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing
}

@-webkit-keyframes tada {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }

    10%,
    20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

@keyframes tada {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }

    10%,
    20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

.tada {
    -webkit-animation-name: tada;
    animation-name: tada
}

@-webkit-keyframes wobble {
    from {
        -webkit-transform: none;
        transform: none
    }

    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg)
    }

    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)
    }

    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)
    }

    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)
    }

    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

@keyframes wobble {
    from {
        -webkit-transform: none;
        transform: none
    }

    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg)
    }

    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)
    }

    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)
    }

    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)
    }

    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

.wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble
}

@-webkit-keyframes jello {

    11.1%,
    from,
    to {
        -webkit-transform: none;
        transform: none
    }

    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg)
    }

    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg)
    }

    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg)
    }

    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg)
    }

    66.6% {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
        transform: skewX(-.78125deg) skewY(-.78125deg)
    }

    77.7% {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
        transform: skewX(.390625deg) skewY(.390625deg)
    }

    88.8% {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
        transform: skewX(-.1953125deg) skewY(-.1953125deg)
    }
}

@keyframes jello {

    11.1%,
    from,
    to {
        -webkit-transform: none;
        transform: none
    }

    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg)
    }

    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg)
    }

    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg)
    }

    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg)
    }

    66.6% {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
        transform: skewX(-.78125deg) skewY(-.78125deg)
    }

    77.7% {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
        transform: skewX(.390625deg) skewY(.390625deg)
    }

    88.8% {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
        transform: skewX(-.1953125deg) skewY(-.1953125deg)
    }
}

.jello {
    -webkit-animation-name: jello;
    animation-name: jello;
    -webkit-transform-origin: center;
    transform-origin: center
}

@-webkit-keyframes bounceIn {

    20%,
    40%,
    60%,
    80%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        -webkit-transform: scale3d(.97, .97, .97);
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

@keyframes bounceIn {

    20%,
    40%,
    60%,
    80%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        -webkit-transform: scale3d(.97, .97, .97);
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1)
    }
}

.bounceIn {
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn
}

@-webkit-keyframes bounceInDown {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0)
    }

    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

@keyframes bounceInDown {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0)
    }

    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown
}

@-webkit-keyframes bounceInLeft {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0);
        transform: translate3d(-3000px, 0, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(25px, 0, 0);
        transform: translate3d(25px, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0)
    }

    90% {
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

@keyframes bounceInLeft {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0);
        transform: translate3d(-3000px, 0, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(25px, 0, 0);
        transform: translate3d(25px, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0)
    }

    90% {
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

.bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft
}

@-webkit-keyframes bounceInRight {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    from {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0);
        transform: translate3d(3000px, 0, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(-25px, 0, 0);
        transform: translate3d(-25px, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0)
    }

    90% {
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

@keyframes bounceInRight {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    from {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0);
        transform: translate3d(3000px, 0, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(-25px, 0, 0);
        transform: translate3d(-25px, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0)
    }

    90% {
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0)
    }

    to {
        -webkit-transform: none;
        transform: none
    }
}

.bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight
}

@-webkit-keyframes bounceInUp {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0);
        transform: translate3d(0, 3000px, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }

    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }

    90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0)
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes bounceInUp {

    60%,
    75%,
    90%,
    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0);
        transform: translate3d(0, 3000px, 0)
    }

    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }

    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }

    90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0)
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp
}

@-webkit-keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }

    50%,
    55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
}

@keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }

    50%,
    55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
}

.bounceOut {
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut
}

@-webkit-keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0)
    }
}

@keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0)
    }
}

.bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown
}

@-webkit-keyframes bounceOutLeft {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(20px, 0, 0);
        transform: translate3d(20px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0)
    }
}

@keyframes bounceOutLeft {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(20px, 0, 0);
        transform: translate3d(20px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0)
    }
}

.bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft
}

@-webkit-keyframes bounceOutRight {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(-20px, 0, 0);
        transform: translate3d(-20px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0)
    }
}

@keyframes bounceOutRight {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(-20px, 0, 0);
        transform: translate3d(-20px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0)
    }
}

.bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight
}

@-webkit-keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0)
    }
}

@keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0)
    }
}

.bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp
}

@-webkit-keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}

@-webkit-keyframes fadeInDownBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInDownBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig
}

@-webkit-keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInLeftBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInLeftBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

@-webkit-keyframes fadeInRightBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInRightBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@-webkit-keyframes fadeInUpBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInUpBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig
}

@-webkit-keyframes fadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes fadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeOutDown {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes fadeOutDown {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

.fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown
}

@-webkit-keyframes fadeOutDownBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0)
    }
}

@keyframes fadeOutDownBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0)
    }
}

.fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig
}

@-webkit-keyframes fadeOutLeft {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes fadeOutLeft {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft
}

@-webkit-keyframes fadeOutLeftBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0)
    }
}

@keyframes fadeOutLeftBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0)
    }
}

.fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig
}

@-webkit-keyframes fadeOutRight {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes fadeOutRight {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

.fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight
}

@-webkit-keyframes fadeOutRightBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0)
    }
}

@keyframes fadeOutRightBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0)
    }
}

.fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig
}

@-webkit-keyframes fadeOutUp {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

@keyframes fadeOutUp {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp
}

@-webkit-keyframes fadeOutUpBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0)
    }
}

@keyframes fadeOutUpBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0)
    }
}

.fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig
}

@-webkit-keyframes flip {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
        transform: perspective(400px) scale3d(.95, .95, .95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

@keyframes flip {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
        transform: perspective(400px) scale3d(.95, .95, .95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

.animated.flip {
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-animation-name: flip;
    animation-name: flip
}

@-webkit-keyframes flipInX {
    from {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }
}

@keyframes flipInX {
    from {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }
}

.flipInX {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX
}

@-webkit-keyframes flipInY {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }
}

@keyframes flipInY {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }
}

.flipInY {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY
}

@-webkit-keyframes flipOutX {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }

    30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1
    }

    to {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0
    }
}

@keyframes flipOutX {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }

    30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1
    }

    to {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0
    }
}

.flipOutX {
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipOutY {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }

    30% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1
    }

    to {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0
    }
}

@keyframes flipOutY {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }

    30% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1
    }

    to {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0
    }
}

.flipOutY {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY
}

@-webkit-keyframes lightSpeedIn {
    from {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0
    }

    60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 1
    }

    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
        opacity: 1
    }

    to {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes lightSpeedIn {
    from {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0
    }

    60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 1
    }

    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
        opacity: 1
    }

    to {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes lightSpeedOut {
    from {
        opacity: 1
    }

    to {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0
    }
}

@keyframes lightSpeedOut {
    from {
        opacity: 1
    }

    to {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0
    }
}

.lightSpeedOut {
    -webkit-animation-name: lightSpeedOut;
    animation-name: lightSpeedOut;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in
}

@-webkit-keyframes rotateIn {
    from {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateIn {
    from {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn
}

@-webkit-keyframes rotateInDownLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInDownLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft
}

@-webkit-keyframes rotateInDownRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInDownRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight
}

@-webkit-keyframes rotateInUpLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInUpLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft
}

@-webkit-keyframes rotateInUpRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -90deg);
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInUpRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -90deg);
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight
}

@-webkit-keyframes rotateOut {
    from {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 1
    }

    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0
    }
}

@keyframes rotateOut {
    from {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 1
    }

    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0
    }
}

.rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut
}

@-webkit-keyframes rotateOutDownLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }
}

@keyframes rotateOutDownLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }
}

.rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft
}

@-webkit-keyframes rotateOutDownRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

@keyframes rotateOutDownRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

.rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight
}

@-webkit-keyframes rotateOutUpLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

@keyframes rotateOutUpLeft {
    from {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

.rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft
}

@-webkit-keyframes rotateOutUpRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpRight {
    from {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1
    }

    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0
    }
}

.rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight
}

@-webkit-keyframes hinge {
    0% {
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%,
    60% {
        -webkit-transform: rotate3d(0, 0, 1, 80deg);
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40%,
    80% {
        -webkit-transform: rotate3d(0, 0, 1, 60deg);
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1
    }

    to {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0
    }
}

@keyframes hinge {
    0% {
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%,
    60% {
        -webkit-transform: rotate3d(0, 0, 1, 80deg);
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40%,
    80% {
        -webkit-transform: rotate3d(0, 0, 1, 60deg);
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1
    }

    to {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0
    }
}

.hinge {
    -webkit-animation-name: hinge;
    animation-name: hinge
}

@-webkit-keyframes rollIn {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes rollIn {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn
}

@-webkit-keyframes rollOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg)
    }
}

@keyframes rollOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg)
    }
}

.rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut
}

@-webkit-keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn
}

@-webkit-keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown
}

@-webkit-keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft
}

@-webkit-keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight
}

@-webkit-keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp
}

@-webkit-keyframes zoomOut {
    from {
        opacity: 1
    }

    50% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    to {
        opacity: 0
    }
}

@keyframes zoomOut {
    from {
        opacity: 1
    }

    50% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    to {
        opacity: 0
    }
}

.zoomOut {
    -webkit-animation-name: zoomOut;
    animation-name: zoomOut
}

@-webkit-keyframes zoomOutDown {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomOutDown {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomOutDown {
    -webkit-animation-name: zoomOutDown;
    animation-name: zoomOutDown
}

@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
        transform: scale(.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center
    }
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
        transform: scale(.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center
    }
}

.zoomOutLeft {
    -webkit-animation-name: zoomOutLeft;
    animation-name: zoomOutLeft
}

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
        transform: scale(.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center
    }
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
        transform: scale(.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center
    }
}

.zoomOutRight {
    -webkit-animation-name: zoomOutRight;
    animation-name: zoomOutRight
}

@-webkit-keyframes zoomOutUp {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomOutUp {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomOutUp {
    -webkit-animation-name: zoomOutUp;
    animation-name: zoomOutUp
}

@-webkit-keyframes slideInDown {
    from {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInDown {
    from {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown
}

@-webkit-keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft
}

@-webkit-keyframes slideInRight {
    from {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInRight {
    from {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight
}

@-webkit-keyframes slideInUp {
    from {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInUp {
    from {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.slideInUp {
    -webkit-animation-name: slideInUp;
    animation-name: slideInUp
}

@-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-keyframes slideOutLeft {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes slideOutLeft {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

.slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft
}

@-webkit-keyframes slideOutRight {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes slideOutRight {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

.slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight
}

@-webkit-keyframes slideOutUp {
    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 slideOutUp {
    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)
    }
}

.slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp
}

body.compensate-for-scrollbar {
    overflow: hidden
}

.fancybox-active {
    height: auto
}

.fancybox-is-hidden {
    left: -9999px;
    margin: 0;
    position: absolute !important;
    top: -9999px;
    visibility: hidden
}

.fancybox-container {
    -webkit-backface-visibility: hidden;
    height: 100%;
    left: 0;
    outline: 0;
    position: fixed;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    transform: translateZ(0);
    width: 100%;
    z-index: 99992
}

.fancybox-container * {
    box-sizing: border-box
}

.fancybox-bg,
.fancybox-inner,
.fancybox-outer,
.fancybox-stage {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.fancybox-outer {
    -webkit-overflow-scrolling: touch;
    overflow-y: auto
}

.fancybox-bg {
    background: #1e1e1e;
    opacity: 0;
    transition-duration: inherit;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.47, 0, .74, .71)
}

.fancybox-is-open .fancybox-bg {
    opacity: .9;
    transition-timing-function: cubic-bezier(.22, .61, .36, 1)
}

.fancybox-caption,
.fancybox-infobar,
.fancybox-navigation .fancybox-button,
.fancybox-toolbar {
    direction: ltr;
    opacity: 0;
    position: absolute;
    transition: opacity .25s ease, visibility 0s ease .25s;
    visibility: hidden;
    z-index: 99997
}

.fancybox-show-caption .fancybox-caption,
.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-nav .fancybox-navigation .fancybox-button,
.fancybox-show-toolbar .fancybox-toolbar {
    opacity: 1;
    transition: opacity .25s ease 0s, visibility 0s ease 0s;
    visibility: visible
}

.fancybox-infobar {
    color: #ccc;
    font-size: 13px;
    -webkit-font-smoothing: subpixel-antialiased;
    height: 44px;
    left: 0;
    line-height: 44px;
    min-width: 44px;
    mix-blend-mode: difference;
    padding: 0 10px;
    pointer-events: none;
    top: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.fancybox-toolbar {
    right: 0;
    top: 0
}

.fancybox-stage {
    direction: ltr;
    overflow: visible;
    transform: translateZ(0);
    z-index: 99994
}

.fancybox-is-open .fancybox-stage {
    overflow: hidden
}

.fancybox-slide {
    -webkit-backface-visibility: hidden;
    display: none;
    height: 100%;
    left: 0;
    outline: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: absolute;
    text-align: center;
    top: 0;
    transition-property: transform, opacity;
    white-space: normal;
    width: 100%;
    z-index: 99994
}

.fancybox-slide:before {
    content: "";
    display: inline-block;
    font-size: 0;
    height: 100%;
    vertical-align: middle;
    width: 0
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--current,
.fancybox-slide--next,
.fancybox-slide--previous {
    display: block
}

.fancybox-slide--image {
    overflow: hidden;
    padding: 44px 0
}

.fancybox-slide--image:before {
    display: none
}

.fancybox-slide--html {
    padding: 6px
}

.fancybox-content {
    background: #fff;
    display: inline-block;
    margin: 0;
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: relative;
    text-align: left;
    vertical-align: middle
}

.fancybox-slide--image .fancybox-content {
    animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    -webkit-backface-visibility: hidden;
    background: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 0;
    max-width: none;
    overflow: visible;
    padding: 0;
    position: absolute;
    top: 0;
    transform-origin: top left;
    transition-property: transform, opacity;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 99995
}

.fancybox-can-zoomOut .fancybox-content {
    cursor: zoom-out
}

.fancybox-can-zoomIn .fancybox-content {
    cursor: zoom-in
}

.fancybox-can-pan .fancybox-content,
.fancybox-can-swipe .fancybox-content {
    cursor: grab
}

.fancybox-is-grabbing .fancybox-content {
    cursor: grabbing
}

.fancybox-container [data-selectable=true] {
    cursor: text
}

.fancybox-image,
.fancybox-spaceball {
    background: 0 0;
    border: 0;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    padding: 0;
    position: absolute;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%
}

.fancybox-spaceball {
    z-index: 1
}

.fancybox-slide--iframe .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--video .fancybox-content {
    height: 100%;
    overflow: visible;
    padding: 0;
    width: 100%
}

.fancybox-slide--video .fancybox-content {
    background: #000
}

.fancybox-slide--map .fancybox-content {
    background: #e5e3df
}

.fancybox-slide--iframe .fancybox-content {
    background: #fff
}

.fancybox-iframe,
.fancybox-video {
    background: 0 0;
    border: 0;
    display: block;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%
}

.fancybox-iframe {
    left: 0;
    position: absolute;
    top: 0
}

.fancybox-error {
    background: #fff;
    cursor: default;
    max-width: 400px;
    padding: 40px;
    width: 100%
}

.fancybox-error p {
    color: #444;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
    padding: 0
}

.fancybox-button {
    background: rgba(30, 30, 30, .6);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    height: 44px;
    margin: 0;
    padding: 10px;
    position: relative;
    transition: color .2s;
    vertical-align: top;
    visibility: inherit;
    width: 44px
}

.fancybox-button,
.fancybox-button:link,
.fancybox-button:visited {
    color: #ccc
}

.fancybox-button:hover {
    color: #fff
}

.fancybox-button:focus {
    outline: 0
}

.fancybox-button.fancybox-focus {
    outline: 1px dotted
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
    color: #888;
    cursor: default;
    outline: 0
}

.fancybox-button div {
    height: 100%
}

.fancybox-button svg {
    display: block;
    height: 100%;
    overflow: visible;
    position: relative;
    width: 100%
}

.fancybox-button svg path {
    fill: currentColor;
    stroke-width: 0
}

.fancybox-button--fsenter svg:nth-child(2),
.fancybox-button--fsexit svg:first-child,
.fancybox-button--pause svg:first-child,
.fancybox-button--play svg:nth-child(2) {
    display: none
}

.fancybox-progress {
    background: #ff5268;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: scaleX(0);
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    z-index: 99998
}

.fancybox-close-small {
    background: 0 0;
    border: 0;
    border-radius: 0;
    color: #ccc;
    cursor: pointer;
    opacity: .8;
    padding: 8px;
    position: absolute;
    right: -12px;
    top: -44px;
    z-index: 401
}

.fancybox-close-small:hover {
    color: #fff;
    opacity: 1
}

.fancybox-slide--html .fancybox-close-small {
    color: currentColor;
    padding: 10px;
    right: 0;
    top: 0
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
    overflow: hidden
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
    display: none
}

.fancybox-navigation .fancybox-button {
    background-clip: content-box;
    height: 100px;
    opacity: 0;
    position: absolute;
    top: calc(50% - 50px);
    width: 70px
}

.fancybox-navigation .fancybox-button div {
    padding: 7px
}

.fancybox-navigation .fancybox-button--arrow_left {
    left: 0;
    left: env(safe-area-inset-left);
    padding: 31px 26px 31px 6px
}

.fancybox-navigation .fancybox-button--arrow_right {
    padding: 31px 6px 31px 26px;
    right: 0;
    right: env(safe-area-inset-right)
}

.fancybox-caption {
    background: linear-gradient(0deg, rgba(0, 0, 0, .85) 0, rgba(0, 0, 0, .3) 50%, rgba(0, 0, 0, .15) 65%, rgba(0, 0, 0, .075) 75.5%, rgba(0, 0, 0, .037) 82.85%, rgba(0, 0, 0, .019) 88%, transparent);
    bottom: 0;
    color: #eee;
    font-size: 14px;
    font-weight: 400;
    left: 0;
    line-height: 1.5;
    padding: 75px 44px 25px;
    pointer-events: none;
    right: 0;
    text-align: center;
    z-index: 99996
}

@supports (padding:max(0px)) {
    .fancybox-caption {
        padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left))
    }
}

.fancybox-caption--separate {
    margin-top: -50px
}

.fancybox-caption__body {
    max-height: 50vh;
    overflow: auto;
    pointer-events: all
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
    color: #ccc;
    text-decoration: none
}

.fancybox-caption a:hover {
    color: #fff;
    text-decoration: underline
}

.fancybox-loading {
    animation: a 1s linear infinite;
    background: 0 0;
    border: 4px solid #888;
    border-bottom-color: #fff;
    border-radius: 50%;
    height: 50px;
    left: 50%;
    margin: -25px 0 0 -25px;
    opacity: .7;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 50px;
    z-index: 99999
}

@keyframes a {
    to {
        transform: rotate(1turn)
    }
}

.fancybox-animated {
    transition-timing-function: cubic-bezier(0, 0, .25, 1)
}

.fancybox-fx-slide.fancybox-slide--previous {
    opacity: 0;
    transform: translate3d(-100%, 0, 0)
}

.fancybox-fx-slide.fancybox-slide--next {
    opacity: 0;
    transform: translate3d(100%, 0, 0)
}

.fancybox-fx-slide.fancybox-slide--current {
    opacity: 1;
    transform: translateZ(0)
}

.fancybox-fx-fade.fancybox-slide--next,
.fancybox-fx-fade.fancybox-slide--previous {
    opacity: 0;
    transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.fancybox-fx-fade.fancybox-slide--current {
    opacity: 1
}

.fancybox-fx-zoom-in-out.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(1.5, 1.5, 1.5)
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(.5, .5, .5)
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
    opacity: 1;
    transform: scaleX(1)
}

.fancybox-fx-rotate.fancybox-slide--previous {
    opacity: 0;
    transform: rotate(-1turn)
}

.fancybox-fx-rotate.fancybox-slide--next {
    opacity: 0;
    transform: rotate(1turn)
}

.fancybox-fx-rotate.fancybox-slide--current {
    opacity: 1;
    transform: rotate(0)
}

.fancybox-fx-circular.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0)
}

.fancybox-fx-circular.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(100%, 0, 0)
}

.fancybox-fx-circular.fancybox-slide--current {
    opacity: 1;
    transform: scaleX(1) translateZ(0)
}

.fancybox-fx-tube.fancybox-slide--previous {
    transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg)
}

.fancybox-fx-tube.fancybox-slide--next {
    transform: translate3d(100%, 0, 0) scale(.1) skew(10deg)
}

.fancybox-fx-tube.fancybox-slide--current {
    transform: translateZ(0) scale(1)
}

@media (max-height:576px) {
    .fancybox-slide {
        padding-left: 6px;
        padding-right: 6px
    }

    .fancybox-slide--image {
        padding: 6px 0
    }

    .fancybox-close-small {
        right: -6px
    }

    .fancybox-slide--image .fancybox-close-small {
        background: #4e4e4e;
        color: #f2f4f6;
        height: 36px;
        opacity: 1;
        padding: 6px;
        right: 0;
        top: 0;
        width: 36px
    }

    .fancybox-caption {
        padding-left: 12px;
        padding-right: 12px
    }

    @supports (padding:max(0px)) {
        .fancybox-caption {
            padding-left: max(12px, env(safe-area-inset-left));
            padding-right: max(12px, env(safe-area-inset-right))
        }
    }
}

.fancybox-share {
    background: #f4f4f4;
    border-radius: 3px;
    max-width: 90%;
    padding: 30px;
    text-align: center
}

.fancybox-share h1 {
    color: #222;
    font-size: 35px;
    font-weight: 700;
    margin: 0 0 20px
}

.fancybox-share p {
    margin: 0;
    padding: 0
}

.fancybox-share__button {
    border: 0;
    border-radius: 3px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 5px 10px;
    min-width: 130px;
    padding: 0 15px;
    text-decoration: none;
    transition: all .2s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap
}

.fancybox-share__button:link,
.fancybox-share__button:visited {
    color: #fff
}

.fancybox-share__button:hover {
    text-decoration: none
}

.fancybox-share__button--fb {
    background: #3b5998
}

.fancybox-share__button--fb:hover {
    background: #344e86
}

.fancybox-share__button--pt {
    background: #bd081d
}

.fancybox-share__button--pt:hover {
    background: #aa0719
}

.fancybox-share__button--tw {
    background: #1da1f2
}

.fancybox-share__button--tw:hover {
    background: #0d95e8
}

.fancybox-share__button svg {
    height: 25px;
    margin-right: 7px;
    position: relative;
    top: -1px;
    vertical-align: middle;
    width: 25px
}

.fancybox-share__button svg path {
    fill: #fff
}

.fancybox-share__input {
    background: 0 0;
    border: 0;
    border-bottom: 1px solid #d7d7d7;
    border-radius: 0;
    color: #5d5b5b;
    font-size: 14px;
    margin: 10px 0 0;
    outline: 0;
    padding: 10px 15px;
    width: 100%
}

.fancybox-thumbs {
    background: #ddd;
    bottom: 0;
    display: none;
    margin: 0;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding: 2px 2px 4px;
    position: absolute;
    right: 0;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    width: 212px;
    z-index: 99995
}

.fancybox-thumbs-x {
    overflow-x: auto;
    overflow-y: hidden
}

.fancybox-show-thumbs .fancybox-thumbs {
    display: block
}

.fancybox-show-thumbs .fancybox-inner {
    right: 212px
}

.fancybox-thumbs__list {
    font-size: 0;
    height: 100%;
    list-style: none;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    position: absolute;
    position: relative;
    white-space: nowrap;
    width: 100%
}

.fancybox-thumbs-x .fancybox-thumbs__list {
    overflow: hidden
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
    width: 7px
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3)
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
    background: #2a2a2a;
    border-radius: 10px
}

.fancybox-thumbs__list a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: rgba(0, 0, 0, .1);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    float: left;
    height: 75px;
    margin: 2px;
    max-height: calc(100% - 8px);
    max-width: calc(50% - 4px);
    outline: 0;
    overflow: hidden;
    padding: 0;
    position: relative;
    -webkit-tap-highlight-color: transparent;
    width: 100px
}

.fancybox-thumbs__list a:before {
    border: 6px solid #ff5268;
    bottom: 0;
    content: "";
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .2s cubic-bezier(.25, .46, .45, .94);
    z-index: 99991
}

.fancybox-thumbs__list a:focus:before {
    opacity: .5
}

.fancybox-thumbs__list a.fancybox-thumbs-active:before {
    opacity: 1
}

@media (max-width:576px) {
    .fancybox-thumbs {
        width: 110px
    }

    .fancybox-show-thumbs .fancybox-inner {
        right: 110px
    }

    .fancybox-thumbs__list a {
        max-width: calc(100% - 10px)
    }
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 200;
    src: url(../fonts/Lato-Light.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Lato-Regular.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 600;
    src: url(../fonts/Lato-Semibold.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/Lato-Bold.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 800;
    src: url(../fonts/Lato-Black.woff2) format("woff2")
}

@font-face {
    font-family: Fira;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/FiraSans-Regular.woff2) format("woff2")
}

.owl-carousel,
.owl-carousel .owl-item {
    -webkit-tap-highlight-color: transparent;
    position: relative
}

.owl-carousel {
    display: none;
    width: 100%;
    z-index: 1
}

.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden
}

.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0)
}

.owl-carousel .owl-item,
.owl-carousel .owl-wrapper {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0)
}

.owl-carousel .owl-item {
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-touch-callout: none
}

.owl-carousel .owl-item img {
    display: block;
    width: 100%
}

.owl-carousel .owl-dots.disabled,
.owl-carousel .owl-nav.disabled {
    display: none
}

.no-js .owl-carousel,
.owl-carousel.owl-loaded {
    display: block
}

.owl-carousel .owl-dot,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-prev {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel button.owl-dot {
    background: 0 0;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit
}

.owl-carousel.owl-loading {
    opacity: 0;
    display: block
}

.owl-carousel.owl-hidden {
    opacity: 0
}

.owl-carousel.owl-refresh .owl-item {
    visibility: hidden
}

.owl-carousel.owl-drag .owl-item {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.owl-carousel.owl-rtl {
    direction: rtl
}

.owl-carousel.owl-rtl .owl-item {
    float: right
}

.owl-carousel .animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.owl-carousel .owl-animated-in {
    z-index: 0
}

.owl-carousel .owl-animated-out {
    z-index: 1
}

.owl-carousel .fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

.owl-height {
    -webkit-transition: height .5s ease-in-out;
    -o-transition: height .5s ease-in-out;
    transition: height .5s ease-in-out
}

.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    -webkit-transition: opacity .4s ease;
    -o-transition: opacity .4s ease;
    transition: opacity .4s ease
}

.owl-carousel .owl-item .owl-lazy:not([src]),
.owl-carousel .owl-item .owl-lazy[src^=""] {
    max-height: 0
}

.owl-carousel .owl-item img.owl-lazy {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.owl-carousel .owl-video-wrapper {
    position: relative;
    height: 100%;
    background: #000
}

.owl-carousel .owl-video-play-icon {
    position: absolute;
    height: 80px;
    width: 80px;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-top: -40px;
    background: url(owl.video.play.png) no-repeat;
    cursor: pointer;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transition: -webkit-transform .1s ease;
    transition: -webkit-transform .1s ease;
    -o-transition: transform .1s ease;
    transition: transform .1s ease;
    transition: transform .1s ease, -webkit-transform .1s ease
}

.owl-carousel .owl-video-play-icon:hover {
    -ms-transform: scale(1.3, 1.3);
    -webkit-transform: scale(1.3, 1.3);
    transform: scale(1.3, 1.3)
}

.owl-carousel .owl-video-playing .owl-video-play-icon,
.owl-carousel .owl-video-playing .owl-video-tn {
    display: none
}

.owl-carousel .owl-video-tn {
    opacity: 0;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    -webkit-transition: opacity .4s ease;
    -o-transition: opacity .4s ease;
    transition: opacity .4s ease
}

.owl-carousel .owl-video-frame {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%
}

::-webkit-input-placeholder {
    color: #666
}

::-moz-placeholder {
    color: #666
}

:-ms-input-placeholder {
    color: #666
}

::-ms-input-placeholder {
    color: #666
}

::placeholder {
    color: #666
}

::-moz-selection {
    background-color: #005cab;
    color: #fff
}

::selection {
    background-color: #005cab;
    color: #fff
}

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 {
    font-size: 16px;
    min-width: 320px;
    position: relative;
    line-height: 1.2;
    font-family: Lato, sans-serif;
    overflow-x: hidden;
    color: #000
}

body.no_scroll {
    overflow: hidden
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

a,
button,
label {
    outline: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.container {
    max-width: 1170px;
    margin: auto
}

.ul_reset {
    list-style-type: none;
    padding: 0;
    margin: 0
}

.bg_reset {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center
}

.row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px;
    position: relative
}

.col1,
.col12,
.col20,
.col3,
.col4,
.col5,
.col6,
.col7,
.col8 {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 10px;
    padding-left: 10px
}

.col6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.col2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66%;
    -ms-flex: 0 0 16.66%;
    flex: 0 0 16.66%;
    max-width: 16.66%
}

.col4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33%;
    -ms-flex: 0 0 33.33%;
    flex: 0 0 33.33%;
    max-width: 33.33%
}

.col3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.col8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66%;
    -ms-flex: 0 0 66.66%;
    flex: 0 0 66.66%;
    max-width: 66.66%
}

.col12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.col5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66%;
    -ms-flex: 0 0 41.66%;
    flex: 0 0 41.66%;
    max-width: 41.66%
}

.col7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33%;
    -ms-flex: 0 0 58.33%;
    flex: 0 0 58.33%;
    max-width: 58.33%
}

.col20 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 20%;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%
}

.col1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33%;
    -ms-flex: 0 0 8.33%;
    flex: 0 0 8.33%;
    max-width: 8.33%
}

.dotted {
    border-bottom: 1px dotted rgba(105, 105, 105, .5)
}

.button {
    color: #fff;
    background: #005cab;
    font-size: 13px;
    font-weight: 700;
    border-radius: 4px;
    padding: 20px 80px;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
    -webkit-transition: background .25s ease;
    -o-transition: background .25s ease;
    transition: background .25s ease;
    cursor: pointer
}

.button:hover {
    background: #006ac5
}

.button:active {
    background: #004e92
}

.project_button {
    font-size: 12px;
    color: #005cab;
    width: 100%;
    text-align: center;
    display: block;
    text-transform: uppercase;
    font-weight: 800;
    padding: 15px;
    text-decoration: none;
    border-radius: 4px;
    border: 1px solid #005cab;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.project_button:hover {
    background: #005cab;
    color: #fff
}

#consulting_popup,
#viewing {
    display: none
}

.hidden_input {
    display: none
}

.production_page .header_mobile,
.products_page .header_mobile,
.project_page .header_mobile,
.work_page .header_mobile,
.works_page .header_mobile {
    -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, .05);
    box-shadow: 0 5px 5px rgba(0, 0, 0, .05)
}

.mobile_nav {
    position: absolute;
    top: 113px;
    background: rgba(255, 255, 255, .96);
    z-index: 2;
    left: 0;
    width: 100%;
    display: none;
    border-top: 1px solid #ececec;
    max-height: calc(100vh - 110px);
    overflow: auto
}

.mobile_nav a {
    font-size: 18px;
    font-weight: 600;
    color: #0f0f0f;
    text-decoration: none;
    display: block;
    padding: 17px
}

.mobile_nav li {
    border-bottom: 1px solid #ececec
}

.project_image_bg {
    position: relative
}

.project_image_bg img {
    width: 100%
}

.fixed_info {
    background: rgba(0, 0, 0, .7);
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 20;
    height: 58px
}

.fixed_info .col4 {
    border-right: 1px solid #363c3d
}

.fixed_info .col4:last-child {
    border: none
}

.slider_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .7);
    background-image: url(/img/dec.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

.fixed_info_item {
    display: block;
    color: #fff;
    text-decoration: none;
    position: relative;
    padding-left: 45px;
    line-height: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 58px;
    font-size: 15px
}

.fixed_info_item svg {
    fill: #fff;
    width: 23px;
    height: 23px;
    position: absolute;
    left: 12px;
    top: 17px
}

.header_mobile {
    position: relative;
    background: #fff;
    width: 100%
}

.header_mobile.scroll {
    position: fixed;
    top: -60px;
    z-index: 20
}

.mobile_sub a {
    position: relative
}

.mobile_sub b {
    font-weight: 600
}

.menu_button {
    width: 25px;
    height: 16px;
    position: relative;
    z-index: 2
}

.menu_button span {
    position: absolute;
    display: block;
    height: 3px;
    width: 100%;
    background: #005cab;
    top: 0;
    left: 0;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.menu_button span:nth-child(2) {
    top: 6px
}

.menu_button span:nth-child(3) {
    top: 12px
}

.menu_button.active span:nth-child(1) {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 5px
}

.menu_button.active span:nth-child(2) {
    opacity: 0
}

.menu_button.active span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 5px
}

.header_mobile_top {
    padding: 5px 0;
    border-bottom: 1px solid #f4f4f4;
    height: 60px;
    display: flex;
    align-items: center;
}

.header_mobile_top .logo {
    display: inline-block
}

.header_mobile_top .logo img {
    width: 180px
}

.header_mobile_top .col6:last-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.header_mobile_bottom {
    background: #fff;
    line-height: 1;
    height: 53px
}

.header_mobile_bottom .col1 {
    padding: 18px 0;
    padding-left: 18px
}

.header_mobile_bottom .col6:last-child {
    padding: 0
}

.header_mobile_bottom .top__phone {
    line-height: 1;
    font-size: 17px;
    top: 0;
    padding: 18px 0
}

.header_mobile_bottom .top__phone img {
    width: 14px;
    position: relative;
    top: 1px
}

.button_production {
    background: #f4f4f4;
    padding: 18px;
    font-size: 17px;
    font-weight: 700;
    position: relative;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease
}

.button_production:after {
    content: '';
    width: 7px;
    height: 7px;
    border-bottom: 1px solid #3a3a3a;
    border-left: 1px solid #3a3a3a;
    display: inline-block;
    position: absolute;
    right: 18px;
    top: 22px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    z-index: 2;
    -webkit-transition: border-color .2s ease;
    -o-transition: border-color .2s ease;
    transition: border-color .2s ease
}

.button_production.active {
    background: #005cab;
    color: #fff
}

.button_production.active:after {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    border-color: #fff;
    top: 25px
}

.mobile_sub_show {
    width: 45px;
    height: 35px;
    position: absolute;
    right: 0;
    top: 9px;
    border-left: 1px solid #ececec
}

.mobile_sub_show:after {
    content: '';
    width: 7px;
    height: 7px;
    border-bottom: 1px solid #434343;
    border-left: 1px solid #434343;
    display: inline-block;
    position: absolute;
    right: 20px;
    top: 15px;
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
    z-index: 2
}

.mobile_sub_menu {
    position: absolute;
    top: 0;
    background: #fff;
    width: 100%;
    display: none;
    z-index: 20;
    min-height: 100%;
    max-height: calc(100vh - 110px)
}

.mobile_sub_head {
    font-size: 18px;
    color: #005cab;
    font-weight: 600;
    text-align: center;
    padding: 18px;
    border-bottom: 1px solid #ececec;
    position: relative
}

.mobile_sub_head svg {
    fill: #005cab;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    width: 20px;
    height: 16px;
    position: absolute;
    left: 18px;
    top: 20px
}

.top_nav__list li {
    display: inline-block;
    margin-right: 30px;
    line-height: 1
}

.top_nav__link {
    color: #696969;
    font-size: 14px;
    text-decoration: none;
    font-weight: 600;
    line-height: 1;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

.top_nav__link:hover {
    color: #005cab
}

#project_info .content_block.project_info__text {
    padding: 0
}

.top__line {
    padding-top: 10px;
    padding-bottom: 13px;
    border-bottom: 1px solid #f4f4f4
}

.project_catalog__img img {
    width: 100%
}

.top_nav__right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.call__ordering {
    font-size: 15px;
    font-weight: 500;
    color: #005cab;
    text-decoration: none;
    padding: 0px 0px 0px 20px;
}

.call__ordering svg {
    width: 17px;
    height: 17px;
    fill: #005cab
}

.all_link {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3
}

.top__phone {
    color: #000;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    display: inline-block;
    margin-left: 50px;
    position: relative;
    top: 2px;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

.top__phone:hover {
    color: #005cab
}

.lang__list {
    margin-left: 40px;
    display: none
}

.lang__list li {
    display: inline-block
}

.lang__list li .lang_list__link {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    display: inline-block;
    background: 0 0;
    padding: 2px 8px;
    border-radius: 2px;
    text-decoration: none;
    font-weight: 700;
    color: #000
}

.lang__list li.active .lang_list__link {
    background: #005cab;
    color: #fff
}

.bottom_line__row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: center
}

.main__nav ul {
    cursor: pointer
}

.main__nav ul li {
    display: inline-block;
    margin-left: 50px
}

.main__nav ul li:hover:after {
    border-color: #005cab
}

.main__nav ul li:hover>.main_nav__link {
    color: #005cab
}

.main__nav>ul>li {
    padding: 20px 0
}

.main_nav__link {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    text-decoration: none;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

.main_nav__link:hover {
    color: #005cab
}

.main_nav__link.active {
    color: #005cab
}

.sub_menu_min ul li .main_nav__link.active {
    color: #005cab
}

.logo img {
    width: 225px
}

.sub_menu_min ul {
    background: rgba(0, 0, 0, .85);
    position: absolute;
    top: 65px;
    left: 0;
    z-index: 2;
    width: 150px;
    display: none
}

.sub_menu_min ul li {
    display: block;
    margin: 0
}

.sub_menu_min ul li .main_nav__link {
    color: #fff;
    font-size: 14px;
    display: block;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    padding: 15px 20px;
    border-left: 2px solid transparent;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.sub_menu_min ul li .main_nav__link:hover {
    color: #005cab;
    border-left-color: #005cab
}

.sub_menu_min ul li:last-child .main_nav__link {
    border-bottom: none
}

.sub_menu_max,
.sub_menu_min {
    position: relative
}

.sub_menu_max:after,
.sub_menu_min:after {
    display: none !important;
    content: '';
    width: 10px;
    height: 10px;
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(-45deg) scale(.7);
    -ms-transform: rotate(-45deg) scale(.7);
    transform: rotate(-45deg) scale(.7);
    right: -18px;
    top: 22px;
    -webkit-transition: border-color .25s ease;
    -o-transition: border-color .25s ease;
    transition: border-color .25s ease;
}

.bottom__line {
    padding: 5px 0
}

main.scroll {
    padding-top: 113px
}

.home_first__head {
    font-size: 46px;
    color: #fff;
    font-weight: 800;
    max-width: 780px;
    margin: 0;
    -webkit-transition: all .3s ease .75s;
    -o-transition: all .3s ease .75s;
    transition: all .3s ease .75s;
    opacity: 0;
    -webkit-transform: translate(0, 20px);
    -ms-transform: translate(0, 20px);
    transform: translate(0, 20px)
}

.home_first_hr {
    background: #fff;
    width: 0;
    height: 3px;
    margin: 45px 0;
    opacity: 0;
    -webkit-transition: all .3s ease .8s;
    -o-transition: all .3s ease .8s;
    transition: all .3s ease .8s
}

.home_first__text {
    color: #fff;
    font-size: 20px;
    font-weight: 200;
    max-width: 750px;
    margin-bottom: 45px;
    -webkit-transition: all .3s ease .85s;
    -o-transition: all .3s ease .85s;
    transition: all .3s ease .85s;
    opacity: 0;
    -webkit-transform: translate(0, 20px);
    -ms-transform: translate(0, 20px);
    transform: translate(0, 20px)
}

.home_first__slider .owl-item.active .home_first__head {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0)
}

.home_first__slider .owl-item.active .home_first_hr {
    opacity: 1;
    width: 240px
}

.home_first__slider .owl-item.active .home_first__text {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0)
}

.home_first__slider .owl-item.active .button {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0)
}

.home_first__slider .item {
    padding: 140px 0
}

.home_first__slider .item .button {
    -webkit-transition: all .3s ease .9s;
    -o-transition: all .3s ease .9s;
    transition: all .3s ease .9s;
    opacity: 0;
    -webkit-transform: translate(0, 20px);
    -ms-transform: translate(0, 20px);
    transform: translate(0, 20px)
}

.home_first__slider .item,
.home_first__slider .video_bg {
    position: relative
}

.home_first__slider .item .container,
.home_first__slider .video_bg .container {
    position: relative
}

.home_first__slider .item .lb-bg-video-tag,
.home_first__slider .video_bg .lb-bg-video-tag {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.header_scroll {
    -webkit-box-shadow: 0 3px 5px 0 rgba(50, 50, 50, .2);
    box-shadow: 0 3px 5px 0 rgba(50, 50, 50, .2);
    display: none
}

.header_scroll .main__nav ul li {
    margin-left: 0;
    margin-right: 50px
}

.header_scroll .bottom_line__row {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.header_scroll .sub_menu_min ul {
    top: 59px
}

#home_first {
    background: #f5f5f5
}

.owl-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    margin-top: -26px
}

.owl-prev {
    width: 52px;
    height: 52px;
    background: rgba(255, 255, 255, .15) !important;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transition: background .25s ease;
    -o-transition: background .25s ease;
    transition: background .25s ease
}

.owl-prev svg {
    fill: #fff;
    width: 16px;
    height: 22px;
    -webkit-transition: fill .25s ease;
    -o-transition: fill .25s ease;
    transition: fill .25s ease
}

.owl-prev:hover {
    background: #fff !important
}

.owl-prev:hover svg {
    fill: #005cab
}

.owl-next {
    width: 52px;
    height: 52px;
    background: rgba(255, 255, 255, .15) !important;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transition: background .25s ease;
    -o-transition: background .25s ease;
    transition: background .25s ease
}

.owl-next svg {
    fill: #fff;
    width: 16px;
    height: 22px;
    -webkit-transition: fill .25s ease;
    -o-transition: fill .25s ease;
    transition: fill .25s ease
}

.owl-next:hover {
    background: #fff !important
}

.owl-next:hover svg {
    fill: #005cab
}

.owl-dots {
    text-align: center;
    position: relative;
    top: -50px
}

.owl-dot {
    outline: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: none
}

.owl-dot span {
    width: 10px;
    height: 10px;
    border: 2px solid #fff;
    border-radius: 100%;
    display: inline-block;
    margin: 0 20px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.owl-dot.active span {
    background: #fff;
    border-color: transparent;
    width: 10px;
    height: 10px
}

.max__menu {
    background: rgba(255, 255, 255, .95);
    position: absolute;
    top: 120px;
    left: 0;
    right: 0;
    z-index: 4;
    padding: 40px 0;
    display: none
}

.max__menu .container {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0
}

.max__menu.scroll {
    position: fixed;
    z-index: 5;
    top: 50px
}

.max_menu__list {
    margin-bottom: 40px;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid
}

.max_menu__list li a {
    font-size: 14px;
    color: #000;
    display: inline-block;
    padding: 10px 0;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease;
    text-decoration: none
}

.max_menu__list li a:hover {
    color: #005cab
}

.max_menu__list a.active {
    color: #005cab
}

.max_menu__list .max_menu__head a {
    padding: 0
}

.max_menu__head {
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 800;
    margin-bottom: 15px
}

.head_section {
    font-size: 42px;
    margin: 0;
    font-weight: 800
}

#our_products {
    padding: 50px 0;
    background: #f5f5f5
}

.our_products__item {
    height: 330px;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    overflow: hidden
}

.our_products__item:before {
    content: '';
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(34, 34, 34, 0)), to(#222));
    background-image: -o-linear-gradient(top, rgba(34, 34, 34, 0) 0, #222 100%);
    background-image: linear-gradient(to bottom, rgba(34, 34, 34, 0) 0, #222 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.our_products__item>* {
    position: relative
}

.our_products_item__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.our_products_item__img img {
    width: 100%
}

.our_products__name {
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    padding-left: 20px;
    position: relative;
    z-index: 2
}

.our_products__price {
    padding-left: 20px;
    padding-bottom: 30px;
    padding-top: 10px;
    position: relative;
    z-index: 2
}

.our_products__price div {
    background: #005cab;
    color: #fff;
    display: inline-block;
    border-radius: 2px;
    padding: 3px 10px
}

.our_products__content {
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .95);
    padding: 20px 25px;
    opacity: 0;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    z-index: 3
}

.our_products__content .button {
    position: absolute;
    left: 25px;
    bottom: 20px;
    padding: 15px 40px
}

.our_products__text {
    font-size: 14px;
    line-height: 1.5;
    overflow: hidden;
    height: 80%
}

.our_products__item {
    margin-bottom: 20px
}

.our_products__item:hover .our_products__content {
    opacity: 1;
    top: 0
}

.our_products__item.tall {
    height: 680px
}

.our_products__item.tall .our_products__content {
    top: 0;
    left: 20%
}

.our_products__item.tall:hover .our_products__content {
    left: 0
}

.our_products__row {
    margin-top: 40px
}

#our_projects {
    background-image: url(/img/our_projects_bg.jpg);
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 58% 100%;
    padding: 60px 0
}

#our_projects .button {
    padding: 20px 40px;
    margin-top: 40px
}

.our_projects__head {
    text-align: right;
    color: #fff;
    margin-bottom: 20px
}

.our_projects__name {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.1
}

.our_projects__loc {
    font-size: 18px;
    color: #696969;
    margin: 20px 0
}

.our_projects__loc img {
    width: 13px !important;
    display: inline !important
}

.our_projects__price {
    color: #005cab;
    font-size: 27px;
    font-weight: 800;
    margin-bottom: 15px
}

.our_projects__price span {
    font-size: 31px
}

.our_projects__price b {
    font-weight: 600
}

.our_projects__text {
    font-size: 18px;
    font-weight: 200;
    line-height: 1.6;
    margin-bottom: 25px
}

.our_projects_right {
    text-align: right
}

.our_projects_right img {
    max-width: 680px;
    display: inline !important;
    border: 3px solid rgba(255, 255, 255, .2)
}

.our_projects_slider .owl-prev {
    background: #eaeaea !important
}

.our_projects_slider .owl-prev svg {
    fill: #202020
}

.our_projects_slider .owl-prev:hover {
    background: #005cab !important
}

.our_projects_slider .owl-prev:hover svg {
    fill: #fff
}

.our_projects_slider .owl-dots {
    text-align: right;
    bottom: -10px;
    top: auto;
    max-width: 1270px;
    margin: auto;
    padding-right: 60px
}

.our_projects_slider .owl-dots .owl-dot span {
    margin: 0 15px;
    background: #fff;
    border-color: transparent;
    width: 10px;
    height: 10px
}

.our_projects_slider .owl-dots .owl-dot.active span {
    width: 10px;
    height: 10px;
    border-color: #fff;
    background: 0 0
}

.our_projects_slider .owl-item .col5 {
    opacity: 0;
    -webkit-transition: all .25s ease .75s;
    -o-transition: all .25s ease .75s;
    transition: all .25s ease .75s;
    padding-top: 20px
}

.our_projects_slider .owl-item.active .col5 {
    opacity: 1;
    padding-top: 0
}

#choose_product {
    color: #fff
}

#choose_product .owl-dots {
    bottom: 50px;
    top: auto;
    position: absolute;
    left: 0;
    right: 0
}

#choose_product .owl-dots .owl-dot span {
    margin: 0 15px;
    background: #fff;
    border-color: transparent;
    width: 10px;
    height: 10px
}

#choose_product .owl-dots .owl-dot.active span {
    width: 10px;
    height: 10px;
    border-color: #fff;
    background: 0 0
}

.choose_product__slider {
    position: relative
}

.choose_product__slider .item {
    padding: 100px 0
}

.choose_product__head {
    font-size: 42px;
    font-weight: 800
}

.hoose_product_hr {
    width: 277px;
    height: 2px;
    background: #fff;
    margin: 20px 0 25px
}

.choose_product__text {
    font-size: 18px;
    font-weight: 200
}

.choose_product__content {
    max-width: 578px;
    background: rgba(15, 15, 15, .7);
    padding: 50px 60px;
    opacity: 0;
    -webkit-transform: translate(0, 10%);
    -ms-transform: translate(0, 10%);
    transform: translate(0, 10%);
    -webkit-transition: all .3s ease .75s;
    -o-transition: all .3s ease .75s;
    transition: all .3s ease .75s
}

.choose_product__content .button {
    padding: 20px 40px;
    margin-top: 30px
}

.choose_product__slider .owl-item.active .choose_product__content {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0)
}

#confidence {
    padding: 60px 0;
    position: relative
}

.confidence_bg {
    background: #f5f5f5;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 50%
}

.confidence_bg:before {
    content: '';
    position: absolute;
    right: -40px;
    top: 67px;
    border: 20px solid #f5f5f5;
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent
}

.confidence_left {
    padding-right: 70px
}

.confidence_left .head_section {
    margin-bottom: 30px
}

.confidence__slider img {
    max-width: 130px;
    -webkit-filter: grayscale(100);
    filter: grayscale(100);
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    display: inline-block !important
}

.confidence__slider .col4 {
    padding: 30px 0
}

.confidence__slider .col4:hover img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
}

.confidence__slider .col4:nth-child(3n+2) {
    text-align: center
}

.confidence__slider .col4:nth-child(3n+3) {
    text-align: right
}

.confidence_right {
    padding-left: 70px
}

.confidence_right .head_section {
    margin-bottom: 50px
}

.confidence_right img {
    width: 450px
}

.confidence__slider .owl-nav,
.sert_slider .owl-nav {
    background: #eaeaea;
    height: 52px;
    width: 104px;
    top: -50px;
    right: 0;
    left: auto
}

.confidence__slider .owl-nav svg,
.sert_slider .owl-nav svg {
    fill: #202020
}

.confidence__slider .row,
.sert_slider .row {
    margin: 0
}

.sert_slider .item img,
.sert_slider .item picture {
    max-width: 480px
}

.sert_slider .owl-nav {
    top: -70px
}

.footer {
    background: #171717;
    padding: 40px 0 30px
}

.footer__phone {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding: 0px 0px 0px 20px;
}

.contacts_phone__img,
.footer_phone__img {
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 15px
}

.contacts_phone,
.footer_phone__item {
    padding-left: 25px;
    position: relative
}

.contacts_phone:first-child,
.footer_phone__item:first-child {
    margin-right: 50px
}

.contacts__content,
.footer_phone__content {
    border-left: 1px solid #2f2f2f;
    padding-left: 15px
}

.contacts__content span,
.footer_phone__content span {
    color: #8c8c8c;
    display: block;
    font-size: 14px;
    margin-bottom: 10px;
    white-space: nowrap
}

.contacts__content a,
.footer_phone__content a {
    color: #fff;
    display: block;
    font-size: 16px;
    font-weight: 800;
    text-decoration: none;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease;
    white-space: nowrap
}

.contacts__content a:hover,
.footer_phone__content a:hover {
    color: #005cab
}

.footer__email {
    margin-top: 20px;
    max-width: 370px
}

.footer__email a {
    font-size: 15px;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px dotted #005cab;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

.footer__email a:hover {
    color: #005cab
}

.footer__email address {
    font-style: normal;
    font-size: 14px;
    color: #8c8c8c;
    display: inline-block;
    margin: 10px 0 0
}

.footer__copy {
    color: #8c8c8c;
    font-size: 14px;
    border-top: 1px solid #2f2f2f;
    max-width: 425px;
    padding-top: 30px;
    margin: 50px 0px 0px 20px;
}

.footer_head {
    color: #fff;
    font-size: 17px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 30px;
    margin-top: 20px;
    padding-left: 20px
}

.footer__nav {
    padding-left: 20px
}

.footer__nav li {
    margin-bottom: 15px
}

.footer__nav a {
    color: #e3e3e3;
    font-size: 15px;
    text-decoration: none;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

.footer__nav a:hover {
    color: #005cab
}

.last_project {
    padding-left: 20px
}

.last_projec__date {
    font-size: 13px;
    color: #8c8c8c;
    margin-bottom: 10px
}

.last_projec__name {
    font-size: 15px;
    text-decoration: none;
    text-decoration: none;
    color: #e3e3e3
}

.last_project__item {
    margin-bottom: 20px
}

.footer_bottom {
    border-top: 1px solid #2f2f2f;
    margin-top: 30px;
    padding-top: 25px
}

.footer_bottom .container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.footer_bottom__nav li {
    display: inline-block;
    margin-right: 30px
}

.footer_bottom__nav li a {
    font-size: 14px;
    color: #e3e3e3;
    text-decoration: none;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

.footer_bottom__nav li a:hover {
    color: #005cab
}

.footer__soc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.footer__soc ul {
    cursor: pointer
}

.footer__soc ul li {
    display: inline-block;
    margin-left: 15px
}

.footer__soc ul li a svg {
    fill: #fff;
    -webkit-transition: fill .25s ease;
    -o-transition: fill .25s ease;
    transition: fill .25s ease
}

.footer__soc ul li:hover a svg {
    fill: #005cab
}

.footer__soc ul li .vk svg {
    width: 25px;
    height: 20px
}

.footer__soc ul li .tw svg {
    width: 22px;
    height: 18px
}

.footer__soc ul li .in svg {
    width: 16px;
    height: 16px
}

.footer__soc ul li .fc svg {
    width: 16px;
    height: 16px
}

.footer__soc ul li .wh {
    position: relative;
    top: 2px
}

.footer__soc ul li .wh svg {
    width: 18px;
    height: 18px
}

.footer_soc__text {
    font-size: 12px;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    position: relative;
    padding-left: 60px;
    line-height: 1.5;
    position: relative;
    top: 4px
}

.footer_soc__text:before {
    content: '';
    width: 27px;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 15px;
    top: 7px
}

.products_page #our_products {
    background: #fff;
    padding-top: 30px;
    padding-bottom: 0
}

.contacts_page .header,
.products_page .header,
.work_page .header,
.works_page .header {
    -webkit-box-shadow: 0 3px 5px 0 rgba(100, 100, 100, .08);
    box-shadow: 0 3px 5px 0 rgba(100, 100, 100, .08);
    margin-bottom: 20px
}

.breadcrumbs {
    max-width: 1170px;
    margin: auto
}

.breadcrumbs li {
    display: inline-block;
    font-size: 14px;
    position: relative;
    margin-right: 40px;
    color: #696969
}

.breadcrumbs li:before {
    content: '';
    width: 5px;
    height: 5px;
    border: 1px solid #9c9c9c;
    border-left-color: transparent;
    border-bottom-color: transparent;
    display: inline-block;
    position: absolute;
    top: 6px;
    right: -25px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.breadcrumbs li:last-child:before {
    display: none
}

.breadcrumbs li a {
    color: #005cab;
    text-decoration: none
}

.breadcrumbs li a img {
    width: 14px;
    margin-right: 5px
}

.content_block {
    font-size: 17px;
    font-weight: 200;
    line-height: 1.4;
    padding-bottom: 50px
}

.content_block p {
    margin: 20px 0
}

.portfolio_filter {
    margin-top: 20px
}

.portfolio_filter fieldset,
.portfolio_filter_m fieldset {
    width: 100%;
    padding: 0;
    border: none;
    position: relative
}

.portfolio_filter fieldset:before,
.portfolio_filter_m fieldset:before {
    content: '';
    width: 5px;
    height: 5px;
    border: 1px solid #505050;
    border-left-color: transparent;
    border-bottom-color: transparent;
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    right: 12px;
    bottom: 18px
}

.portfolio_filter_m .col6:first-child,
.portfolio_filter_m .col6:nth-child(2),
.portfolio_filter_m .col6:nth-child(3) {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.portfolio_select {
    width: 100%;
    border: 1px solid #000;
    border-radius: 3px;
    padding: 10px 13px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 25px
}

.portfolio_select option {
    width: 100%
}

.portfolio_select option[disabled] {
    display: none
}

.portfolio_filter__title {
    font-size: 15px;
    color: #696969;
    margin-bottom: 5px
}

.portfolio_row {
    margin-top: 20px
}

#portfolio {
    padding-top: 30px;
    padding-bottom: 50px
}

#portfolio .container {
    position: relative
}

.portfolio_item__img {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.portfolio_item__img img,
.portfolio_item__img source {
    width: 100%
}

.portfolio_item {
    height: 290px;
    position: relative;
    padding: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-bottom: 20px;
    overflow: hidden
}

.portfolio_item:before {
    content: '';
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(#222));
    background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0, #222 100%);
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, #222 100%);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-transition: opacity .25s ease;
    -o-transition: opacity .25s ease;
    transition: opacity .25s ease;
    z-index: 1
}

.portfolio_item_hover {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    opacity: 0;
    -webkit-transition: opacity .25s ease;
    -o-transition: opacity .25s ease;
    transition: opacity .25s ease;
    z-index: 2
}

.portfolio_item_hover .button {
    background: #fff;
    color: #0f0f0f;
    font-size: 12px;
    font-weight: 800;
    margin: 20px;
    letter-spacing: 1px;
    padding: 20px 60px
}

.portfolio_item:hover .portfolio_item__img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
}

.portfolio_item:hover:before {
    opacity: 0
}

.portfolio_item:hover .portfolio_item_hover {
    opacity: 1
}

.portfolio_item:hover .portfolio__name,
.portfolio_item:hover .portfolio_tag {
    opacity: 0
}

.portfolio__name {
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    position: relative;
    margin-bottom: 15px;
    -webkit-transition: opacity .25s ease;
    -o-transition: opacity .25s ease;
    transition: opacity .25s ease;
    z-index: 2
}

.portfolio_tag {
    position: relative;
    -webkit-transition: opacity .25s ease;
    -o-transition: opacity .25s ease;
    transition: opacity .25s ease;
    z-index: 2
}

.portfolio_tag span {
    display: inline-block;
    font-size: 16px;
    color: #fff;
    border-radius: 2px;
    background: #005cab;
    padding: 7px 15px;
    font-weight: 600
}

.show_more {
    background: #eaeaea;
    width: 100%;
    text-align: center;
    color: #000;
    font-size: 16px;
    font-weight: 800;
    border-radius: 4px;
    padding: 20px;
    cursor: pointer;
    border: none;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease
}

.show_more svg {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    position: relative;
    top: 4px;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease
}

.show_more:hover {
    background: #005cab;
    color: #fff
}

.show_more:hover svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    fill: #fff
}

@-webkit-keyframes show_more_loading {
    from {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes show_more_loading {
    from {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.show_more.show_more_loading svg {
    -webkit-animation: show_more_loading 1s infinite linear;
    animation: show_more_loading 1s infinite linear;
    -webkit-transition: none;
    -o-transition: none;
    transition: none
}

.show_more.show_more_loading:hover img {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0)
}

#work {
    padding-top: 30px;
    padding-bottom: 50px
}

.work__location {
    color: #696969;
    font-size: 18px;
    margin: 10px 0
}

.work__location img {
    width: 16px;
    position: relative;
    top: 2px;
    margin-right: 5px
}

.work__image {
    width: 100%
}

.work__image img {
    width: 100%
}

.work__text {
    color: #0f0f0f;
    font-size: 16px;
    font-weight: 200;
    line-height: 1.3;
    padding-right: 50px
}

.work__text p {
    margin: 15px 0
}

.work__text ul {
    padding-left: 20px
}

.work__text img {
    width: 100% !important;
    max-width: 800px;
    height: auto !important
}

#text_section {
    padding: 30px 0
}

#work_video {
    padding-bottom: 40px
}

.work_video_str {
    height: 390px;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    text-decoration: none;
    padding: 15px;
    overflow: hidden;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.work_video_str_js {
    display: none
}

.work_video_str_js:first-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.owl-carousel.owl-loaded.work_video_str_js {
    display: none
}

.owl-carousel.owl-loaded.work_video_str_js:first-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.work_video_top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 20px
}

.subproject_tabs,
.work_video_tabs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.work_video_str_img {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.subproject_tab,
.work_video_tab {
    margin-left: 20px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    border-bottom: 1px solid transparent;
    padding: 5px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.subproject_tab.active,
.work_video_tab.active {
    color: #005cab;
    border-color: #005cab
}

.work_photo__head,
.work_video__head {
    font-size: 24px
}

.work_video_str__name {
    background: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 13px 22px;
    position: relative
}

.work_video_str__name img {
    width: 22px !important
}

.work_video_str__name span {
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
    padding: 7px;
    color: #0f0f0f;
    padding-left: 20px;
    margin-left: 20px;
    border-left: 1px solid #ccc
}

.work_photo__item {
    position: relative;
    overflow: hidden;
    display: block;
    border-radius: 4px;
    overflow: hidden;
    margin: 20px 0
}

.work_photo__item .work_photo__img,
.work_photo__item img {
    border-radius: 4px;
    height: 100%;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    display: block;
    width: 100%;
}

.work_photo__item:hover .work_photo_view {
    bottom: 0;
    opacity: 1
}

#work_photo {
    padding: 40px 0
}

.work_photo_view {
    background: #005cab;
    position: absolute;
    bottom: -50px;
    left: 0;
    width: 100%;
    display: block;
    text-align: center;
    padding: 10px 0 15px 0;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    opacity: 0;
    color: #fff;
}

.work_photo_view img {
    width: 26px;
    display: inline-block
}

.work_photo_view span {
    color: #fff;
    font-size: 12px;
    position: relative;
    top: -2px;
    font-weight: 800;
    text-transform: uppercase
}

.header_scroll {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 15
}

.play_icon {
    position: absolute;
    width: 50px;
    height: 50px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: opacity .25s ease;
    -o-transition: opacity .25s ease;
    transition: opacity .25s ease
}

.vid_main {
    position: relative;
    display: block
}

.vid_main .play_icon {
    opacity: .7
}

.vid_main:hover .play_icon {
    opacity: 1
}

.unit {
    position: relative
}

#mse2_mfilter .btn_more {
    width: 100% !important
}

.unit_text {
    display: inline-block;
    position: absolute;
    top: 13px;
    left: 20px;
    font-weight: 700;
    text-transform: uppercase;
    opacity: 0
}

#jGrowl {
    z-index: 999999999999999 !important
}

.form_price {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: #f5f5f5;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 20px 40px;
    margin-bottom: -10px
}

.form_price .calc_price_str {
    margin-bottom: 0
}

#hello {
    display: none;
    width: 100%;
    max-width: 492px
}

.popup_win {
    display: none;
    width: 100%;
    max-width: 492px
}

.head_form {
    font-size: 24px;
    font-weight: 800
}

.text_form {
    font-size: 17px;
    font-weight: 200;
    margin: 20px 0
}

.form_str {
    position: relative;
    margin-bottom: 10px
}

.form_str .button {
    border: none;
    margin-top: 20px
}

.form_str input,
.form_str textarea {
    border: 1px solid #e4e4e4;
    border-radius: 4px;
    width: 100%;
    padding: 15px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.form_str select {
    border: 1px solid #000;
    border-radius: 4px;
    width: 100%;
    padding: 15px;
    font-size: 16px;
    font-weight: 600;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url(/img/icon/13.svg);
    background-repeat: no-repeat;
    background-position: 97% 50%;
    background-size: 12px
}

.form_str span {
    display: inline-block;
    font-size: 16px;
    font-weight: 200;
    color: #696969;
    position: absolute;
    top: 15px;
    left: 7px;
    background: 0 0;
    padding: 0 10px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.phone_input.error {
    border-color: red
}

.form_str.active input,
.form_str.active textarea {
    border-color: #005cab
}

.form_str.active span {
    top: -7px;
    font-size: 12px;
    font-weight: 400;
    color: #005cab;
    background: #fff
}

.radio_block {
    padding: 0;
    border: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 10px 0
}

.radio_block_item {
    margin-right: 20px
}

.radio_block label {
    position: relative;
    padding-left: 20px;
    cursor: pointer
}

.radio_block label:before {
    content: '';
    width: 13px;
    height: 13px;
    border: 1px solid #000;
    display: inline-block;
    border-radius: 100%;
    position: absolute;
    left: 0;
    top: 2px
}

.radio_block label:after {
    content: '';
    width: 9px;
    height: 9px;
    border-radius: 100%;
    background: #005cab;
    display: inline-block;
    position: absolute;
    left: 3px;
    top: 5px;
    opacity: 0;
    -webkit-transition: opacity .2s ease;
    -o-transition: opacity .2s ease;
    transition: opacity .2s ease
}

.radio_block input {
    display: none
}

.radio_block input:checked~label:after {
    opacity: 1
}

.check_box label {
    font-size: 15px;
    font-weight: 200;
    position: relative;
    padding-left: 24px;
    cursor: pointer
}

.check_box label:before {
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    border: 1px solid #000;
    border-radius: 2px;
    position: absolute;
    left: 0;
    top: -2px;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease
}

.check_box label:after {
    content: '';
    display: inline-block;
    border: 1px solid #fff;
    border-top-color: transparent;
    border-left-color: transparent;
    width: 0;
    height: 0;
    position: absolute;
    left: 5px;
    top: -1px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease
}

.check_box input {
    display: none
}

.check_box input:checked~label:before {
    background: #005cab;
    border-color: #005cab
}

.check_box input:checked~label:after {
    width: 5px;
    height: 9px
}

.portfolio_features__head {
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 20px
}

#portfolio_features {
    padding-top: 40px;
    padding-bottom: 60px
}

#portfolio_features .button {
    padding: 20px 50px
}

.portfolio_features__list {
    border-bottom: 1px solid #e6e6e6;
    padding-bottom: 20px
}

.portfolio_features__list li {
    font-size: 15px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 7px 0
}

.portfolio_features__price {
    color: #005cab;
    font-size: 30px;
    font-weight: 800;
    margin: 20px 0
}

.portfolio_features__left {
    max-width: 400px
}

.portfolio_features_img {
    width: 100%
}

.portfolio_features_img img {
    width: 100%
}

.work_page #portfolio {
    background: #f5f5f5;
    padding: 60px 0
}

.portfolio__head {
    margin-bottom: 30px
}

.production_video,
.project_video {
    max-height: 600px;
    min-height: 400px;
    position: relative;
    overflow: hidden
}

.project_img_top {
    height: 600px
}

.project_video {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 100vh
}

.project_video video {
    width: 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

.project_page .breadcrumbs {
    margin: 20px auto
}

#project_info {
    padding-bottom: 50px
}

#project_info .content_block {
    padding: 20px 0 30px
}

.project_info__img {
    width: 100%
}

.project_info__img img {
    width: 100%
}

.project_advantage__head {
    font-size: 24px
}

.production_info__list,
.project_advantage__list {
    padding-top: 20px
}

.production_info__list li,
.project_advantage__list li {
    font-size: 16px;
    font-weight: 200;
    padding-left: 22px;
    margin-bottom: 13px;
    position: relative;
    line-height: 1.3
}

.production_info__list li:before,
.project_advantage__list li:before {
    content: '';
    position: absolute;
    width: 12px;
    height: 5px;
    border: 1px solid #005cab;
    border-right-color: transparent;
    border-top-color: transparent;
    position: absolute;
    left: 0;
    top: 5px;
    -webkit-transform: rotate(-50deg);
    -ms-transform: rotate(-50deg);
    transform: rotate(-50deg)
}

.project_info__right {
    padding: 20px 0 30px 20px
}

.project_info__right .button {
    padding: 20px 40px;
    margin-top: 20px
}

#project_info .work_video_bottom {
    margin: 30px 0
}

.project_catalog__item {
    text-align: center;
    background: #fff;
    border-radius: 4px;
    padding: 40px 25px 30px;
    position: relative;
    margin-bottom: 20px;
    overflow: hidden;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    -webkit-box-shadow: 0 0 7px 0 rgba(50, 50, 50, 0);
    box-shadow: 0 0 7px 0 rgba(50, 50, 50, 0)
}

.project_catalog__item:hover {
    -webkit-box-shadow: 0 0 7px 0 rgba(50, 50, 50, .2);
    box-shadow: 0 0 7px 0 rgba(50, 50, 50, .2)
}

.project_catalog__item:hover .project_catalog__content {
    top: 1px;
    opacity: 1
}

.project_catalog__name {
    font-size: 16px;
    font-weight: 800;
    text-align: left;
    min-height: 55px;
    margin: 13px 0;
    line-height: 1.4
}

#project_catalog {
    background: #f5f5f5;
    padding: 50px 0
}

.project_catalog__cat {
    text-align: left;
    font-size: 14px;
    color: #696969
}

.project_catalog__price {
    color: #005cab;
    font-size: 16px;
    text-align: left;
    margin-bottom: 20px;
    font-family: Fira, sans-serif
}

.project_catalog__price span {
    font-size: 18px;
    font-family: Lato, sans-serif;
    font-weight: 800
}

.project_catalog__content {
    text-align: left;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 55%;
    padding: 25px;
    background: #fff;
    top: 10px;
    min-height: 264px;
    opacity: 0;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.project_catalog__content .button {
    padding: 15px;
    width: 100%;
    text-align: center
}

.project_catalog__h {
    font-size: 16px;
    font-weight: 600
}

.project_catalog__list {
    padding: 20px 0 5px;
    border-bottom: 1px solid #005cab;
    margin-bottom: 20px
}

.project_catalog__list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: 13px;
    padding-bottom: 15px
}

.project_catalog__head {
    margin-bottom: 30px
}

.project_page #work_photo {
    padding: 50px 0
}

.project_page #work_photo .work_photo__head {
    font-size: 42px
}

#calc_section {
    padding: 50px 0 0;
    background: #f5f5f5
}

#calc_section>.row {
    margin: 0
}

#calc_section>.row>.col4,
#calc_section>.row>.col8 {
    padding: 0
}

.calc_section__tab {
    padding: 0;
    border: none;
    position: relative;
    z-index: 1
}

.calc_section_tab_item {
    margin-right: 5px;
    display: inline-block;
    position: relative;
    top: 5px
}

.calc_section_tab_item input {
    display: none
}

.calc_section_tab_item input:checked~label {
    background: #005cab;
    color: #fff;
    padding: 25px 40px;
    -webkit-transform: translate(0, -5px);
    -ms-transform: translate(0, -5px);
    transform: translate(0, -5px);
    top: 1px
}

.calc_section_tab_item input:checked~label:before {
    opacity: 1
}

.calc_section_tab_item label {
    font-size: 16px;
    cursor: pointer;
    font-weight: 800;
    padding: 20px 40px;
    display: inline-block;
    background: #eaeaea;
    border-radius: 4px 4px 0 0;
    -webkit-transition: background .2s ease, color .2s ease;
    -o-transition: background .2s ease, color .2s ease;
    transition: background .2s ease, color .2s ease;
    position: relative
}

.calc_section_tab_item label:before {
    content: '';
    border: 10px solid #005cab;
    position: absolute;
    left: 50%;
    bottom: -20px;
    border-left-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    -webkit-transform: scale(1, 1.2) translate(-50%, 0);
    -ms-transform: scale(1, 1.2) translate(-50%, 0);
    transform: scale(1, 1.2) translate(-50%, 0);
    opacity: 0
}

.calc_section_tab_item label:hover {
    background: #005cab;
    color: #fff
}

.calc_section__head {
    margin-bottom: 30px
}

.calc_video_block {
    text-align: right;
    overflow: hidden;
    height: 100%
}

.calc_video_str {
    position: relative;
    display: none;
    width: 100%;
    height: 100%
}

.calc_video_str:first-child {
    display: inline-block
}

.calc_video_str>div {
    width: 100%;
    height: 100%;
    background: #fff
}

.calc_video_tab,
.calc_video_tab_2 {
    position: absolute;
    top: 5%;
    left: 5%;
    z-index: 2;
    overflow: hidden;
    padding: 0;
    border: none;
    width: 160px
}

.calc_video_tab div,
.calc_video_tab_2 div {
    float: left;
    width: 70px;
    background: 0 0;
    margin-right: 10px
}

.calc_video_tab div input,
.calc_video_tab_2 div input {
    display: none
}

.calc_video_tab div input:checked~label,
.calc_video_tab_2 div input:checked~label {
    color: #000;
    border-color: #000
}

.calc_video_tab div label,
.calc_video_tab_2 div label {
    font-size: 13px;
    font-weight: 800;
    color: #555;
    border-bottom: 1px solid #555;
    display: inline-block;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-transform: uppercase;
    cursor: pointer;
    padding-bottom: 5px
}

.calc_video_tab div label:hover,
.calc_video_tab_2 div label:hover {
    color: #000;
    border-color: #000
}

.calc_video_tab_2 div label {
    color: #333;
    padding-bottom: 10px;
    border-color: #333
}

.calc_video_tab_2 div label svg {
    width: 17px;
    height: 17px;
    position: relative;
    top: 3px;
    fill: #333;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.calc_video_tab_2 div label:hover {
    color: #fff;
    border-color: #fff
}

.calc_video_tab_2 div label:hover svg {
    fill: #fff
}

.calc_video_tab_2 div input:checked~label {
    color: #fff;
    border-color: #fff
}

.calc_video_tab_2 div input:checked~label svg {
    fill: #fff
}

.calc_control {
    background: #fff;
    position: relative
}

.calc_title {
    font-size: 18px;
    font-weight: 700
}

.help {
    display: inline-block;
    width: 18px;
    height: 18px;
    font-size: 12px;
    line-height: 20px;
    cursor: pointer;
    text-align: center;
    color: #fff;
    font-weight: 700;
    border-radius: 100%;
    background: #c5c5c5;
    margin-left: 7px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.calc_control {
    padding: 20px 30px 0;
    max-width: 470px
}

.edizm_block {
    padding: 0;
    border: none;
    display: inline-block
}

.edizm_block label {
    cursor: pointer
}

.edizm_block label span {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 2px 7px;
    letter-spacing: 1px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    border-radius: 3px;
    background: 0 0
}

.edizm_block label span:first-child {
    background: #005cab;
    color: #fff
}

.edizm_block input {
    display: none
}

.edizm_block input:checked~label span:first-child {
    color: #000;
    background: 0 0
}

.edizm_block input:checked~label span:last-child {
    background: #005cab;
    color: #fff
}

.calc_control_top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#slider-height,
#slider-step,
#slider-width {
    background: #005cab;
    width: 100%;
    height: 4px;
    position: relative;
    top: -2px
}

#slider-height span,
#slider-step span,
#slider-width span {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 4px solid #005cab;
    border-radius: 100%;
    position: absolute;
    top: -7px;
    background: #fff;
    -webkit-transition: all .1s ease;
    -o-transition: all .1s ease;
    transition: all .1s ease;
    -webkit-box-shadow: 0 0 7px 0 rgba(50, 50, 50, 0);
    box-shadow: 0 0 7px 0 rgba(50, 50, 50, 0)
}

#slider-height span:hover,
#slider-step span:hover,
#slider-width span:hover {
    -webkit-box-shadow: 0 0 7px 0 rgba(50, 50, 50, .4);
    box-shadow: 0 0 7px 0 rgba(50, 50, 50, .4)
}

#step .calc_text {
    display: block;
    border: 1px solid #000;
    font-size: 16px;
    font-weight: 700;
    padding: 12px 20px;
    border-radius: 4px 4px 0 0;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    margin-bottom: 0
}

#step .calc_text:before {
    content: '';
    width: 10px;
    height: 10px;
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(-45deg) scale(.7);
    -ms-transform: rotate(-45deg) scale(.7);
    transform: rotate(-45deg) scale(.7);
    right: 18px;
    top: 15px
}

.select_menu {
    border: 1px solid #000;
    position: absolute;
    padding: 10px 0;
    width: 100%;
    background: #fff;
    border-radius: 0 0 4px 4px;
    max-height: 270px;
    overflow: auto;
    display: none;
    z-index: 2;
    border-top-color: transparent
}

.select_menu li {
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    padding: 2px 20px
}

.select_menu li:hover {
    color: #005cab;
    cursor: pointer
}

.list_open {
    display: block
}

.calc_item {
    position: relative;
    margin-bottom: 20px
}

.calc_item input {
    width: 100%;
    border: 1px solid #eaeaea;
    border-radius: 4px 4px 0 0;
    padding: 12px 20px
}

.calc_title {
    margin-bottom: 7px
}

.calc_text {
    color: #696969;
    font-size: 15px;
    margin-bottom: 10px
}

.delivery_block {
    display: block
}

.delivery_block_item {
    margin-bottom: 10px
}

.garant_block {
    padding: 0;
    border: none;
    height: 20px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
    position: relative
}

.garant_block label {
    position: relative;
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 100%;
    background: #c5c5c5;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.garant_block input {
    display: none
}

.garant_block input:checked~label {
    background: #fff;
    border: 4px solid #005cab
}

.garant_bar1 {
    position: absolute;
    height: 4px;
    background: #c5c5c5;
    width: 100%;
    left: 0;
    top: 7px
}

.garant_bar2 {
    position: absolute;
    height: 4px;
    background: #005cab;
    width: 0%;
    left: 0;
    top: 7px;
    -webkit-transition: width .2s ease;
    -o-transition: width .2s ease;
    transition: width .2s ease
}

.garant_block_item {
    position: absolute;
    top: 0
}

.garant_block_item:nth-child(4) {
    left: 110px
}

.garant_block_item:nth-child(5) {
    right: 0
}

.garant_block_item label {
    cursor: pointer
}

#slider-height,
#slider-step,
#slider-width {
    cursor: pointer
}

.garant_block.step2 .garant_bar2 {
    width: 50%
}

.garant_block.step2 .garant_block_item:nth-child(3) label {
    background: #005cab
}

.garant_block.step3 .garant_bar2 {
    width: 100%
}

.garant_block.step3 .garant_block_item:nth-child(3) label,
.garant_block.step3 .garant_block_item:nth-child(4) label {
    background: #005cab
}

.check_box_garant {
    margin-top: 5px;
    margin-left: 2px
}

.calc_price_block {
    background: #f5f5f5;
    padding: 30px 30px 30px;
    max-width: 470px;
    position: relative
}

.calc_price_block .col7 {
    padding-left: 0
}

.calc_price_block .calc_text {
    margin-bottom: 0
}

.calc_price_block .button {
    width: 100%;
    padding: 20px;
    border: none;
    font-weight: 800
}

.calc_price {
    font-size: 24px;
    font-weight: 800;
    color: #005cab
}

.calc_price_button {
    border-radius: 4px;
    border: 1px solid #005cab;
    width: 100%;
    padding: 10px 0;
    font-size: 14px;
    font-weight: 800;
    color: #005cab;
    margin-bottom: 10px;
    cursor: pointer
}

.calc_price_str {
    margin-bottom: 10px
}

.calc_section_item {
    position: absolute;
    width: 800px;
    top: 0;
    height: 100%;
    right: 0;
    background: #f5f5f5;
    -webkit-transition: width .25s ease;
    -o-transition: width .25s ease;
    transition: width .25s ease
}

.calc_section_item .row {
    margin: 0;
    height: 100%
}

.calc_section_item .row .col5,
.calc_section_item .row .col7 {
    padding: 0
}

.calc_section_row {
    height: 670px;
    overflow: hidden
}

.calc_section_row .col8 {
    height: 100%
}

.calc_option__head {
    background: #eaeaea;
    font-size: 17px;
    color: #000;
    font-weight: 500;
    padding: 20px 30px;
    letter-spacing: .5px
}

.calc_option__head:before {
    content: '';
    width: 9px;
    height: 2px;
    background: #000;
    display: inline-block;
    position: relative;
    top: -5px;
    margin-right: 10px
}

.calc_option_wrap {
    background: #fff;
    padding: 15px 25px;
    -webkit-box-shadow: inset 5px 0 10px 0 rgba(50, 50, 50, .1);
    box-shadow: inset 5px 0 10px 0 rgba(50, 50, 50, .1);
    position: relative
}

.calc_option__list {
    margin-bottom: 20px;
    white-space: nowrap
}

.calc_option__list li {
    padding: 5px 0;
    white-space: nowrap
}

.calc_option__list li label {
    cursor: pointer
}

.calc_option__h {
    font-weight: 18px;
    font-weight: 700;
    margin-bottom: 10px
}

#project_desc {
    padding: 50px 0 0
}

.project_desc__option {
    font-size: 24px;
    font-weight: 800;
    margin-top: 5px
}

.project_desc__icon {
    width: 35px;
    height: 35px;
    fill: #005cab;
    position: absolute;
    left: 0;
    top: 5px
}

.project_desc__item {
    position: relative;
    padding-left: 50px;
    margin-top: 40px
}

.project_desc__n {
    color: #696969;
    font-size: 16px;
    margin-bottom: 5px
}

.project_desc__s {
    font-size: 18px;
    font-weight: 800
}

.project_desc__img {
    width: 100%;
    display: block;
    line-height: 1
}

.project_desc__img img {
    width: 100%
}

.calc_video_str div.scr_par {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: 0 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 13px
}

.project_desc__photo {
    max-width: 450px;
    margin: auto;
    display: block;
    width: 100%
}

.project_desc__photo img {
    width: 100%
}

.project_desc__b {
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 20px
}

.project_desc__list {
    overflow: hidden
}

.project_desc__list li {
    font-size: 15px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 13px;
    position: relative
}

.project_desc__list li span {
    background: #fff;
    position: relative
}

.project_desc__list li span:last-child {
    padding-left: 5px;
    text-align: right
}

.project_desc__list li span:first-child {
    padding-right: 5px
}

.project_desc__list li:before {
    content: '';
    border-bottom: 2px dotted #cbcbcb;
    position: absolute;
    width: 100%;
    display: block;
    bottom: 3px;
    left: 0
}

.project_desc__row {
    margin-bottom: 50px
}

#screen_param {
    position: relative;
    padding: 70px 0;
    overflow: hidden
}

.screen_param_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.screen_param_bg * {
    height: 100%
}

.help_block {
    background: #fff;
    width: 300px;
    left: 50px;
    position: absolute;
    top: 0;
    padding: 25px;
    min-height: 100%;
    -webkit-transition: left .4s cubic-bezier(.68, .01, .15, .99);
    -o-transition: left .4s cubic-bezier(.68, .01, .15, .99);
    transition: left .4s cubic-bezier(.68, .01, .15, .99);
    -webkit-box-shadow: inset -5px 0 10px 0 rgba(50, 50, 50, .1), -5px 0 10px 0 rgba(50, 50, 50, .1);
    box-shadow: inset -5px 0 10px 0 rgba(50, 50, 50, .1), -5px 0 10px 0 rgba(50, 50, 50, .1)
}

.help_block img {
    width: 100%
}

.help_block .calc_title {
    margin-bottom: 10px
}

.help_block p {
    margin: 5px 0
}

.screen_param__list {
    max-width: 500px
}

.screen_param__list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    color: #fff;
    font-size: 15px;
    margin-bottom: 10px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.screen_param__list li span {
    display: inline-block
}

.screen_param__list li span:first-child {
    padding-right: 5px
}

.screen_param__list li span:last-child {
    padding-left: 5px;
    text-align: right
}

.dotted_span {
    border-bottom: 2px dotted #5b5b5b;
    display: inline-block;
    width: 30px;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    height: 5px
}

.project_desc__head {
    color: #fff;
    margin-bottom: 20px
}

#project_desc .project_desc__head {
    color: #000
}

.subproject_top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#subproject_section {
    background: #f5f5f5;
    padding: 70px 0
}

.subproject_imgs {
    margin-top: 20px
}

.subproject_img {
    display: none;
    width: 100%
}

.subproject_img:first-child {
    display: block
}

.subproject_img img {
    width: 100%
}

.project_page #our_products {
    background: #fff
}

.about__text {
    max-width: 600px
}

#about {
    padding: 30px 0 0
}

.about__img {
    width: 100%
}

.about__img img {
    width: 100%;
    margin-bottom: 30px
}

.team__img {
    width: 100%
}

.team__img img {
    width: 100%
}

#team {
    background: #f5f5f5;
    padding: 70px 0
}

#text_photo {
    padding: 30px 0
}

.team__head {
    margin-bottom: 30px
}

.team__item {
    background: #fff;
    border-radius: 4px;
    margin-bottom: 10px
}

.team__name {
    font-size: 18px;
    font-weight: 800;
    padding: 20px 20px 15px;
    line-height: 1.3
}

.team__name__prof {
    color: #696969;
    font-size: 14px;
    padding: 0 20px 30px;
    line-height: 1.3
}

.team__row {
    margin-right: -5px;
    margin-left: -5px
}

.team__row .col3 {
    padding-left: 5px;
    padding-right: 5px
}

.videoPoster {
    position: absolute;
    top: 0;
    min-width: 100%;
    min-height: 100%;
    left: 0
}

.production_video {
    display: block;
    position: relative;
    height: auto;
    padding: 100px 0 130px
}

.production_video video {
    position: absolute;
    top: 0;
    min-width: 100%;
    min-height: 100%;
    left: 0
}

.production_video .home_first__head {
    opacity: 1;
    margin-bottom: 20px
}

.production_video .home_first__text {
    opacity: 1;
    font-size: 17px;
    line-height: 1.4
}

.production_video .button {
    padding: 20px 40px
}

.production_info__sert {
    width: 100%;
    max-width: 300px
}

.production_info__sert img {
    width: 100%;
    max-width: 300px
}

#production_info {
    padding: 20px 0
}

.production_page .breadcrumbs {
    margin-top: 30px
}

.production_info__head {
    margin-bottom: 20px;
    font-size: 24px
}

.production_info__h {
    font-size: 24px
}

.production__row {
    margin-bottom: 50px
}

.production__row .button {
    margin-top: 20px
}

.production__row .col6:first-child {
    border-top: 2px solid #f4f4f4;
    border-bottom: 2px solid #f4f4f4;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 51%;
    -ms-flex: 0 0 51%;
    flex: 0 0 51%;
    max-width: 51%
}

.production__row .col6:last-child {
    padding-left: 0;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 49%;
    -ms-flex: 0 0 49%;
    flex: 0 0 49%;
    max-width: 49%
}

.production__num {
    font-size: 22px;
    font-weight: 700;
    color: #005cab;
    margin: 20px 0 15px
}

.production_image {
    width: 100%
}

.production_image img {
    width: 100%
}

.arrows {
    background: #fff;
    position: absolute;
    bottom: -20px;
    width: 50px;
    height: 50px;
    right: 0
}

.arrows span {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-bottom: 1px solid #005cab;
    border-left: 1px solid #005cab;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    left: 22px
}

@-webkit-keyframes icon-mouse-1-go {
    0% {
        opacity: .3
    }

    100% {
        opacity: 0;
        top: 10px
    }
}

@keyframes icon-mouse-1-go {
    0% {
        opacity: .3
    }

    100% {
        opacity: 0;
        top: 10px
    }
}

@-webkit-keyframes icon-mouse-2-go {
    0% {
        opacity: .6
    }

    100% {
        opacity: 0;
        top: 25px
    }
}

@keyframes icon-mouse-2-go {
    0% {
        opacity: .6
    }

    100% {
        opacity: 0;
        top: 25px
    }
}

@-webkit-keyframes icon-mouse-3-go {
    0% {
        opacity: .9
    }

    100% {
        opacity: 0;
        top: 40px
    }
}

@keyframes icon-mouse-3-go {
    0% {
        opacity: .9
    }

    100% {
        opacity: 0;
        top: 40px
    }
}

span.icon-mouse-1 {
    opacity: .3;
    top: 0;
    -webkit-animation: icon-mouse-1-go 1s infinite;
    animation: icon-mouse-1-go 1s infinite
}

span.icon-mouse-2 {
    opacity: .6;
    top: 20px;
    -webkit-animation: icon-mouse-2-go 1s infinite .1s;
    animation: icon-mouse-2-go 1s infinite .1s
}

span.icon-mouse-3 {
    outline: .9;
    top: 35px;
    -webkit-animation: icon-mouse-3-go 1s infinite .2s;
    animation: icon-mouse-3-go 1s infinite .2s
}

#production_video {
    background: #f5f5f5;
    padding: 70px 0 20px
}

#production_video .work_video_tabs {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin: 0 0 20px
}

#production_video .work_video_tabs .work_video_tab {
    margin-left: 0;
    margin-right: 20px
}

.production_video_head {
    margin-bottom: 20px
}

.production_video__slider {
    margin-bottom: 70px
}

.features_num {
    font-weight: 600;
    font-size: 60px
}

.features_head {
    font-size: 22px;
    font-weight: 700;
    height: 52px
}

.features_text {
    font-size: 15px;
    font-weight: 200
}

.features_item.left1 {
    padding-left: 70px
}

.features_item.left2 {
    padding-left: 50px
}

#features_section {
    padding: 70px 0
}

.features_item.big1,
.features_item.big2 {
    background-repeat: no-repeat;
    padding-left: 50px;
    background-position: center left
}

.features_item.big2 {}

.features_section_head {
    margin-bottom: 50px
}

.features__row {
    margin-bottom: 0px
}

.production_page #work_photo {
    background: #f5f5f5;
    padding: 70px 0
}

.production_page #work_photo .work_photo__head {
    font-size: 42px;
    margin-bottom: 30px
}

#partners_section {
    padding: 70px 0 20px
}

.partners_section__head {
    margin-bottom: 40px
}

.partners_item {
    margin-bottom: 50px;
    height: 40px;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: -webkit-filter .25s ease;
    transition: -webkit-filter .25s ease;
    -o-transition: filter .25s ease;
    transition: filter .25s ease;
    transition: filter .25s ease, -webkit-filter .25s ease
}

.partners_item:hover {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
}

.partners_img {
    height: 100%
}

.partners_img img {
    height: 100%
}

.partners_row .col20:nth-child(5n+2) .partners_item {
    text-align: center
}

.partners_row .col20:nth-child(5n+3) .partners_item {
    text-align: center
}

.partners_row .col20:nth-child(5n+4) .partners_item {
    text-align: center
}

#view_all {
    padding: 60px 0 50px;
    background: #f5f5f5
}

.view_all__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border: 1px solid #005cab;
    border-radius: 4px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 55px;
    padding: 0 20px;
    text-decoration: none;
    margin-bottom: 20px;
    background: 0 0;
    -webkit-transition: background .25s ease;
    -o-transition: background .25s ease;
    transition: background .25s ease
}

.view_all__item span {
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #005cab;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease;
    padding-bottom: 2px
}

.view_all__item:hover {
    background: #005cab
}

.view_all__item:hover span {
    color: #fff
}

.view_all__head {
    margin-bottom: 30px
}

#call_back {
    padding: 70px 0
}

#call_back .button {
    border: none;
    width: 100%;
    padding: 18px 40px;
    text-align: center
}

#call_back .check_box {
    margin-top: 15px
}

#call_back .check_box label {
    display: block;
    font-size: 15px;
    line-height: 1.3
}

#call_back .check_box label:before {
    top: 1px
}

#call_back .check_box label:after {
    top: 2px
}

.call_back__text {
    font-size: 17px;
    font-weight: 200;
    margin: 10px 0 30px
}

#contacts {
    padding: 30px 0 70px
}

#contacts address {
    font-size: 14px;
    font-style: normal;
    line-height: 1.4
}

#contacts .contacts__content {
    border: none;
    margin: 20px 0
}

#contacts .contacts__content a {
    color: #005cab;
    text-decoration: underline;
}

#contacts .contacts__content span {
    margin-bottom: 5px
}

#contacts .call__ordering {
    margin-top: 13px;
    display: block
}

.contacts_item__img {
    width: 63px;
    height: 63px;
    fill: #005cab
}

.contacts_item {
    margin-top: 30px;
    max-width: 340px
}

.contacts_item__head {
    font-size: 24px;
    font-weight: 800;
    margin: 20px 0
}

.contacts__mail {
    color: #005cab;
    text-decoration: none;
    border-bottom: 1px dotted #005cab
}

.contacts__time {
    font-size: 14px;
    line-height: 1.4;
    color: #0f0f0f;
    margin-top: 20px
}

.contacts_phone_big {
    position: relative
}

.contacts_phone_big .contacts_phone__img {
    width: 17px;
    height: 17px;
    top: 7px
}

.contacts_phone_big .contacts__content {
    padding-left: 30px
}

.contacts_phone_big .contacts__content a {
    font-size: 24px;
    display: inline
}

.contacts_phone_big .contacts__content b {
    color: #005cab
}

.contacts_page #call_back {
    background: #f5f5f5;
    padding: 50px 0
}

.contacts_page .call_back__head {
    font-size: 24px
}

#regional_offices {
    padding: 60px 0 70px
}

.regional_offices__head {
    margin-bottom: 30px
}

.countries_list li {
    display: inline-block;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    padding: 10px 7px;
    border-bottom: 2px solid #eaeaea;
    margin-right: 30px;
    color: #0f0f0f;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.countries_list li.active {
    color: #005cab;
    border-color: #005cab
}

.cities_list {
    margin: 20px 0 10px
}

.cities_list li {
    display: inline-block;
    font-size: 14px;
    font-weight: 800;
    background: #eaeaea;
    padding: 15px 25px;
    border-radius: 4px;
    line-height: 1;
    margin-right: 5px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 10px
}

.cities_list li.active {
    background: #005cab;
    color: #fff
}

.cities_block_head {
    font-size: 24px;
    font-weight: 800;
    line-height: 1.4
}

.cities_block {
    padding-top: 20px;
    overflow: hidden
}

.map {
    margin-top: 10px;
    width: 100%
}

.cities_item_head {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 12px
}

.cities_item {
    margin-top: 30px
}

.cities_phone {
    font-size: 16px;
    font-weight: 600;
    color: #0f0f0f;
    text-decoration: none;
    display: block
}

.cities_phone img {
    width: 15px;
    margin-right: 5px;
    position: relative;
    top: 3px
}

.cities_mail {
    font-size: 15px;
    color: #005cab;
    display: block;
    text-decoration: none;
    margin-top: 12px
}

.cities_mail span {
    border-bottom: 1px dotted #005cab;
    font-weight: 500
}

.cities_mail img {
    width: 15px;
    margin-right: 5px;
    position: relative;
    top: 4px
}

.cities_list {
    display: none
}

.cities_list:first-child {
    display: block
}

.cities_block .col5 {
    display: none
}

.cities_block .col5:first-child {
    display: block
}

.cities_str {
    display: none
}

.cities_str:first-child {
    display: block
}

.calc_preloader {
    position: absolute;
    background-color: rgba(0, 0, 0, .7);
    background-image: url(/img/load.svg);
    top: 0;
    height: 100%;
    left: 0;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 70px;
    display: none
}

.contact_form_button {
    opacity: .5;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.calc_option_block {
    width: 470px
}

.calc_info_block {
    width: 330px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.calc_option {
    overflow: hidden
}

.calc_info_block_bg {
    position: absolute;
    background: #005cab;
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 0%;
    cursor: pointer
}

.portfolio_switch {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    right: 15px;
    top: 6px
}

.switch_item {
    width: 31px;
    height: 31px;
    border: 1px solid #000;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: border-color .25s ease;
    -o-transition: border-color .25s ease;
    transition: border-color .25s ease;
    margin-left: 10px;
    border-color: #005cab
}

.switch_item svg {
    width: 21px;
    height: 21px;
    fill: #005cab;
    -webkit-transition: fill .25s ease;
    -o-transition: fill .25s ease;
    transition: fill .25s ease
}

.switch_item .square {
    width: 21px;
    height: 21px;
    background: #005cab;
    -webkit-transition: background .25s ease;
    -o-transition: background .25s ease;
    transition: background .25s ease
}

.portfolio_filter_head {
    font-size: 18px;
    color: #005cab;
    font-weight: 800;
    background: #f4f4f4;
    padding: 15px;
    position: relative
}

.portfolio_filter_head svg {
    fill: #005cab;
    width: 16px;
    height: 17px
}

.portfolio_filter_head:before {
    content: '';
    width: 8px;
    height: 8px;
    border-left: 1px solid #005cab;
    border-bottom: 1px solid #005cab;
    position: absolute;
    right: 15px;
    top: 20px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    display: inline-block
}

.portfolio_filter_head.active:before {
    top: 20px;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg)
}

.portfolio_filter_m {
    background: #f4f4f4;
    padding: 0 15px 15px;
    display: none
}

.portfolio_filter_m fieldset {
    margin-bottom: 15px
}

.portfolio_filter_m .portfolio_filter__title {
    margin-bottom: 10px
}

.portfolio_row_m {
    margin-left: -5px;
    margin-right: -5px
}

.portfolio_row_m .col6 {
    padding-left: 5px;
    padding-right: 5px
}

.portfolio_row_m .portfolio_item__img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    min-height: 100%;
    width: 100%
}

.portfolio_row_m .portfolio_item__img img {
    min-height: 100%;
    width: 100%
}

.portfolio_row_m .portfolio_item {
    margin-bottom: 10px
}

.portfolio_row_m .portfolio_item:before {
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(86, 34, 34, 0)), color-stop(80%, #222));
    background-image: -o-linear-gradient(top, rgba(86, 34, 34, 0) 0, #222 80%);
    background-image: linear-gradient(to bottom, rgba(86, 34, 34, 0) 0, #222 80%);
    opacity: 1 !important
}

.portfolio_row_m .portfolio__name,
.portfolio_row_m .portfolio_tag {
    opacity: 1 !important
}

.portfolio_row_m .portfolio_tag span {
    margin-bottom: 5px;
    font-size: 13px
}

.portfolio_row_m .portfolio_tag span:last-child {
    background: #fff;
    color: #0f0f0f;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase
}

.portfolio_row_m.small .col6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33%;
    -ms-flex: 0 0 33.33%;
    flex: 0 0 33.33%;
    max-width: 33.33%
}

.portfolio_row_m.small .portfolio_item {
    height: 200px;
    padding: 10px
}

.portfolio_row_m.small .portfolio_tag span {
    font-size: 12px
}

.portfolio_row_m.small .portfolio__name {
    font-size: 17px;
    margin-bottom: 5px
}

#work.work_m .work__text {
    padding-right: 0;
    padding-top: 70px
}

.work_text__more {
    font-size: 16px;
    font-weight: 600;
    border-bottom: 1px dotted #005cab;
    color: #005cab;
    display: none
}

.contacts_m_tabs {
    margin: 13px 0
}

.contacts_m_tab {
    display: inline-block;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    color: #0f0f0f;
    border-bottom: 2px solid #eaeaea;
    padding-bottom: 8px;
    margin-right: 10px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.contacts_m_tab.active {
    color: #005cab;
    border-color: #005cab
}

.contacts_m_item {
    display: none
}

.contacts_m_item:first-child {
    display: block
}

.contacts_m_items .col3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 230px;
    -ms-flex: 0 0 230px;
    flex: 0 0 230px;
    max-width: 230px
}

.contacts_m_items .contacts__mail {
    margin-top: 15px;
    display: inline-block
}

#page_404 {
    text-align: center;
    padding: 50px 0
}

#page_404 h1 {
    font-size: 150px;
    margin: 0;
    line-height: 1;
    color: #005cab
}

#page_404 p {
    font-size: 20px;
    max-width: 600px;
    margin: auto
}

#page_404 ul {
    max-width: 100px;
    text-align: left;
    margin: 20px auto 0
}

#page_404 ul li {
    margin: 5px 0
}

#page_404 ul li a {
    color: #000;
    text-decoration: none;
    -webkit-transition: color .25s ease;
    -o-transition: color .25s ease;
    transition: color .25s ease
}

#page_404 ul li a:hover {
    color: #005cab
}

.text_photo__img {
    width: 100%
}

.help_text {
    font-size: 12px
}

.help_text ul {
    padding-left: 25px;
    margin: 5px 0
}

#calc_section.calcMiniSection {
    padding-bottom: 70px;
    background: #f5f5f5;
    position: relative
}

#calc_section.calcMiniSection .calc_preloader {
    z-index: 10
}

#calc_section.calcMiniSection .calc_section__tab {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#calc_section.calcMiniSection .calc_section_tab_item label {
    padding: 18px 24px;
    top: -1px;
    white-space: nowrap
}

#calc_section.calcMiniSection .calc_section_tab_item {
    margin-right: 0
}

#calc_section.calcMiniSection .calc_section_tab_item input:checked~label {
    padding: 20px 24px
}

#calc_section.calcMiniSection .calc_section_tab_item label:before {
    display: none
}

#calc_section.calcMiniSection .calc_option_block {
    width: 100%;
    -webkit-box-shadow: 0 0 10px 0 rgba(50, 50, 50, .2);
    box-shadow: 0 0 10px 0 rgba(50, 50, 50, .2)
}

#calc_section.calcMiniSection .calc_control {
    max-width: 100%
}

#calc_section.calcMiniSection .calc_control {
    padding-bottom: 50px
}

#calc_section.calcMiniSection .calc_section_row {
    height: auto
}

#calc_section.calcMiniSection .calc_option__head {
    margin-bottom: 20px
}

#calc_section.calcMiniSection .calc_option__h {
    margin-bottom: 15px
}

#calc_section.calcMiniSection .calc_control .calc_title {
    margin-bottom: 10px
}

#calc_section.calcMiniSection .calc_price_block {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    height: 100%;
    padding-right: 0;
    background: 0 0
}

#calc_section.calcMiniSection .delivery_block_item {
    margin-bottom: 13px
}

#calc_section.calcMiniSection .check_box_garant {
    margin-top: 9px
}

#calc_section.calcMiniSection .calc_price_block .calc_text {
    margin-bottom: 8px
}

#calc_section.calcMiniSection .calc_price_button {
    padding: 14px 0;
    margin-bottom: 20px
}

#calc_section.calcMiniSection .calc_price_str {
    margin-bottom: 15px
}

.check_box {
    margin-bottom: 10px
}

.calcSmallBottomItem_noTitle {
    padding-top: 29px
}

.delivery_garanty_str {
    margin-bottom: 30px
}

.rub {
    font-family: Fira, sans-serif
}

@media only screen and (max-width:1720px) {
    .calc_video_str video {
        width: auto;
        height: 100%
    }
}

@media only screen and (max-width:1500px) {

    .production_video,
    .project_video {
        max-height: 500px
    }
}

@media only screen and (max-width:1400px) {
    .calc_section_item {
        width: 540px
    }

    .calc_info_block {
        width: 65px
    }

    .calc_option__head {
        white-space: nowrap;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        text-align: left;
        position: absolute;
        cursor: pointer;
        top: 80px;
        right: -74px;
        z-index: 2
    }

    .calc_info_block_bg {
        height: 100%;
        opacity: 1
    }

    .calc_info_block.active {
        width: 330px
    }

    .calc_info_block.active .calc_option__head {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        position: relative;
        top: 0;
        right: 0
    }

    .calc_info_block.active .calc_info_block_bg {
        height: 0
    }

    .calc_section_item.active {
        width: 800px
    }
}

@media only screen and (max-width:1200px) {
    .container {
        padding: 0 15px
    }

    .header_mobile_bottom {
        margin-right: -15px;
        margin-left: -15px
    }

    .header_scroll .main__nav ul li {
        margin-right: 25px
    }

    .breadcrumbs {
        padding-left: 10px
    }

    .top_nav__list li {
        margin-right: 20px
    }

    .top__phone {
        margin-left: 20px
    }

    .lang__list {
        margin-left: 20px
    }

    .main__nav ul li {
        margin-left: 25px
    }

    .home_first__slider .item {
        padding: 100px 0
    }

    .home_first_hr {
        margin: 25px 0
    }

    .home_first__text {
        margin-bottom: 25px
    }

    .home_first__head {
        font-size: 36px
    }

    .main_nav__link {
        font-size: 15px
    }

    .our_products__name {
        font-size: 18px
    }

    .our_products_item__img img {
        height: 100%;
        width: auto
    }

    .confidence_left .head_section,
    .confidence_right .head_section {
        font-size: 34px
    }

    .screen_param__list li {
        font-size: 13px
    }
}

@media only screen and (max-width:1250px) {
    .project_video {
        height: auto;
        min-height: auto
    }

    .project_video video {
        position: relative;
        top: 0;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    .production_video {
        max-height: none;
        height: auto;
        min-height: auto
    }
}

@media only screen and (max-width:1000px) {
    .our_products__item:before {
        background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(86, 34, 34, 0)), color-stop(80%, #222));
        background-image: -o-linear-gradient(top, rgba(86, 34, 34, 0) 0, #222 80%);
        background-image: linear-gradient(to bottom, rgba(86, 34, 34, 0) 0, #222 80%)
    }

    .our_products__item img {
        min-width: 100%
    }

    .footer_phone__item {
        margin-right: 20px !important
    }

    .footer {
        padding-bottom: 0px
    }

    .footer__email {
        margin-top: 0
    }

    .footer__email a {
        line-height: 1
    }

    .footer__logo {
        display: inline-block;
        margin-bottom: 20px
    }

    .footer__logo img {
        width: 205px
    }

    .footer_m {
        padding-top: 25px
    }

    .footer__soc {
        margin-top: 40px
    }

    .footer__soc ul li {
        margin-left: 0;
        margin-right: 15px
    }

    .footer_accordeon {
        margin-top: 30px
    }

    .footer_accordeon dl {
        background: #171717;
        border-top: 1px solid #2c2c2c;
        border-bottom: 1px solid #2c2c2c;
        margin: 0;
        -webkit-transition: all .25s ease;
        -o-transition: all .25s ease;
        transition: all .25s ease
    }

    .footer_accordeon dl:last-child {
        border-top: none
    }

    .footer_accordeon dl.active {
        background: #1e1e1e
    }

    .footer_accordeon dl.active .footer_head span {
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg);
        top: 25px
    }

    .footer_accordeon dd {
        margin-left: 0;
        padding: 10px 0
    }

    .last_project__item {
        padding-left: 15px
    }

    .footer_head {
        margin: 0;
        font-size: 15px;
        padding: 20px 15px;
        position: relative
    }

    .footer_head span {
        display: inline-block;
        width: 10px;
        height: 10px;
        border-left: 1px solid #cdcdcd;
        border-bottom: 1px solid #cdcdcd;
        position: absolute;
        right: 20px;
        top: 22px;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .footer__nav {
        padding-left: 15px
    }

    .footer_bottom__nav {
        padding: 20px 0
    }

    .footer__copy {
        margin: 0;
        max-width: 100%;
        border: none;
        padding-top: 10px
    }

    #confidence {
        padding: 0
    }

    .confidence_first {
        background: #f5f5f5;
        padding: 50px 0 30px
    }

    .confidence_first .head_section {
        margin-bottom: 20px
    }

    .confidence__slider .owl-nav,
    .sert_slider .owl-nav {
        top: -35px
    }

    .confidence_second {
        padding: 50px 0
    }

    .confidence_second .head_section {
        margin-bottom: 20px
    }

    .breadcrumbs {
        padding: 15px 15px;
        border: 1px solid #ececec
    }

    .choose_product__head {
        font-size: 33px
    }

    .content_block {
        padding-bottom: 30px
    }

    .work__location {
        margin: 10px 0 15px
    }

    .work_text_js p {
        display: none
    }

    .work_text_js p:first-child {
        display: block
    }

    .subproject_tab,
    .work_video_tab {
        border-bottom-color: #eaeaea;
        border-bottom-width: 2px
    }

    .portfolio_features__list {
        border: none;
        padding-top: 50px
    }

    .portfolio_features__price {
        border-top: 1px solid #e6e6e6;
        padding-top: 20px;
        margin-top: 0
    }

    .project_page .breadcrumbs {
        margin: 0
    }

    .project_info__head {
        margin: 20px 0 15px
    }

    .project_info__text {
        margin-bottom: 20px
    }

    #project_catalog .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 33.33%;
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%
    }

    .project_catalog__item .col5,
    .project_catalog__item .col7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row.calc_section_row .col4,
    .row.calc_section_row .col8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .calc_section_item {
        position: relative;
        height: 670px
    }

    .calc_section_row {
        height: auto
    }

    #screen_param .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .screen_param__list {
        max-width: 100%
    }

    .about__head {
        margin-bottom: 20px
    }

    .team_row__slider .team__item {
        -webkit-transform: scale(.8);
        -ms-transform: scale(.8);
        transform: scale(.8);
        -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
    }

    .team_row__slider .center .team__item {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    .team_row__slider .owl-dots {
        top: 10px
    }

    .team_row__slider .owl-dots .owl-dot span {
        background-color: #e1e1e1;
        border-color: #f5f5f5
    }

    .team_row__slider .owl-dots .owl-dot.active span {
        border-color: #1b1b1b
    }

    .team__name {
        padding-bottom: 10px
    }

    .production_page .breadcrumbs {
        margin-top: 0
    }

    .production_video {
        padding: 40px 0 60px
    }

    .home_first__text {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
        margin-top: 50px
    }

    .work_video_str_img {
        height: 100%
    }

    .work_video_str_img img {
        height: 100%;
        width: auto
    }

    .features__row {
        border-bottom: 1px solid #f4f4f4;
        padding-bottom: 40px
    }

    .features__row:last-child {
        border: none;
        padding-bottom: 0
    }
}

@media only screen and (max-width:900px) {
    #call_back .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    #our_products .row .col4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .head_section {
        font-size: 33px
    }

    .our_projects__name {
        font-size: 26px
    }

    #our_projects .button {
        margin-top: 0
    }

    .confidence_left .head_section,
    .confidence_right .head_section {
        font-size: 31px
    }

    #work_photo .row {
        margin-left: -5px;
        margin-right: -5px
    }

    #work_photo .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 33.33%;
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%;
        padding-left: 5px;
        padding-right: 5px
    }

    .work_photo__img {
        width: 100%;
        height: auto
    }

    .work_photo__img img {
        width: 100%;
        height: auto
    }

    .work_photo__item {
        margin-bottom: 10px
    }

    .project_desc__row>.col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .project_desc__head {
        margin-bottom: 10px
    }

    .project_desc__item {
        margin-top: 20px
    }

    .project_desc__img img {
        margin-top: 20px
    }

    .project_desc__photo {
        display: none
    }

    .project_desc__row {
        margin-bottom: 30px
    }

    .production_video .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    #partners_section .col20 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 33.33%;
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%
    }

    #partners_section .col20 .partners_item {
        text-align: left
    }

    #view_all .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 33.33%;
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%
    }
}

@media only screen and (max-width:800px) {
    .project_img_top {
        height: 400px;
        background-position: center;
        background-size: auto 100%;
        background-repeat: no-repeat
    }

    #page_404 h1 {
        font-size: 150px
    }

    .about__text>* {
        display: none
    }

    .about__text>:first-child {
        display: block
    }

    .work_text__more {
        display: inline-block
    }

    .footer_m .col6 .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .footer_phone__item {
        margin-bottom: 25px
    }

    .footer__email {
        margin-bottom: 10px
    }

    .portfolio_row_m.big .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .portfolio_row_m.small .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    #work.work_m .row .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    #work.work_m .work__text {
        padding-top: 10px
    }

    #project_info.project_info_m .col5,
    #project_info.project_info_m .col7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    #production_info .col4,
    #production_info .col8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    #production_info .col4 {
        text-align: center
    }

    .row.production__row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-flow: column-reverse;
        -ms-flex-flow: column-reverse;
        flex-flow: column-reverse
    }

    .row.production__row .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        border-top: none
    }

    .row.production__row .col6:first-child {
        padding-bottom: 15px
    }

    .row.production__row .production__num {
        position: absolute;
        top: -53px;
        right: 10px;
        background: #fff;
        z-index: 1;
        width: 40px;
        height: 30px;
        text-align: center;
        font-size: 20px;
        line-height: 1.6
    }

    .production_info__h {
        font-size: 24px;
        margin-top: 20px;
        padding-left: 20px
    }

    .production_info__list {
        padding-left: 20px
    }

    .arrows {
        right: 50%;
        -webkit-transform: scale(.7) translate(50%, 0);
        -ms-transform: scale(.7) translate(50%, 0);
        transform: scale(.7) translate(50%, 0);
        width: 30px
    }

    .arrows span {
        left: 10px
    }

    .production__row {
        margin-bottom: 40px
    }

    .production__row:last-child .arrows {
        display: none
    }

    .production__row:nth-child(4) {
        padding-top: 20px
    }

    .production__row .button {
        padding: 20px 40px;
        margin-bottom: 20px
    }

    .cities_block .row .col5,
    .cities_block .row .col7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .map {
        margin-top: 40px
    }
}

@media only screen and (max-width:700px) {
    .work__text {
        padding-right: 0
    }

    #our_projects {
        background-image: url(/img/our_projects_bg_m.jpg);
        background-size: auto
    }

    .our_projects__head {
        text-align: left
    }

    .our_projects_slider .row {
        -webkit-flex-wrap: wrap-reverse;
        -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse
    }

    .our_projects_slider .col5,
    .our_projects_slider .col7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .our_projects_right {
        text-align: left
    }

    .our_projects_right img {
        max-width: 400px
    }

    .our_projects__name {
        margin-top: 15px;
        font-size: 26px
    }

    .our_projects_slider .owl-dots .owl-dot span {
        background-color: #e1e1e1
    }

    .our_projects_slider .owl-dots .owl-dot.active span {
        border-color: #000
    }

    .our_projects_slider .owl-dots {
        text-align: center;
        padding-right: 0
    }

    .our_projects__price span {
        font-size: 26px
    }

    .our_projects__text {
        font-size: 17px;
        line-height: 1.4
    }

    .work_video_top {
        display: block
    }

    .subproject_tabs,
    .work_video_tabs {
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        margin-top: 10px
    }

    .subproject_tab,
    .work_video_tab {
        margin-left: 0;
        margin-right: 10px
    }

    .work_video_str {
        height: 320px;
        padding: 0
    }

    .work_video_str__name {
        padding-left: 2px
    }

    .work_video_str__name span {
        font-size: 17px
    }

    #work_photo .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    #project_catalog .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    #work_photo .work_photo__item .work_photo_view {
        bottom: 0;
        opacity: 1;
        font-size: 12px;
        padding: 10px 0px;
    }

    #screen_param,
    #subproject_section {
        padding: 40px 0
    }

    .production_video__slider .work_video_str {
        height: 280px
    }

    .production_video__slider .work_video_str__name {
        background: #f5f5f5
    }

    .production_video__slider .owl-item img {
        width: auto
    }

    .features__row .col4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .features_item.left1,
    .features_item.left2 {
        padding-left: 0
    }
}

@media only screen and (max-width:600px) {
    .home_first__slider .item {
        background-size: cover
    }

    .confidence__slider .owl-nav,
    .sert_slider .owl-nav {
        height: 40px;
        width: 80px
    }

    #our_products .row .col4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .home_first__head {
        font-size: 33px
    }

    .portfolio_row_m.small .portfolio_tag span:last-child {
        display: none
    }

    #portfolio_features.portfolio_features_m {
        padding-top: 10px
    }

    #portfolio_features.portfolio_features_m .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    #portfolio_features.portfolio_features_m .button {
        padding: 20px 35px
    }

    .portfolio_features__left {
        max-width: 100%
    }

    .portfolio_features__list {
        padding-top: 10px
    }

    .portfolio_features__price {
        font-size: 26px
    }

    #team,
    .work_page #portfolio {
        padding: 40px 0
    }

    .project_advantage__head {
        font-size: 24px
    }

    .project_info__right {
        padding-left: 0
    }

    .project_advantage__list {
        padding-top: 10px
    }

    .project_desc__row {
        margin-bottom: 10px
    }

    .project_desc__row:first-child {
        margin-bottom: 20px
    }

    #about .col5,
    #about .col7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .owl-next,
    .owl-prev {
        width: 40px;
        height: 40px
    }

    .owl-nav {
        top: 40%
    }

    #production_video {
        padding: 40px 0
    }

    .production_video__slider {
        margin-bottom: 40px
    }

    #partners_section {
        padding: 50px 0 20px
    }

    #partners_section .col20 .partners_img img {
        width: 100%;
        height: auto
    }

    #text_photo .col3,
    #view_all .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col600 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
}

@media only screen and (max-width:500px) {
    .project_img_top {
        height: 188px
    }

    #call_back {
        padding: 40px 0 30px !important
    }

    #call_back .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .features__row .features_item {
        padding-left: 10px
    }

    #production_video {
        padding-bottom: 10px
    }

    #features_section {
        padding: 50px 0 10px
    }

    .features_num {
        font-size: 50px
    }

    .features_head {
        font-size: 15px
    }

    .features_head {
        height: 40px
    }

    .features_item {
        margin-bottom: 20px
    }

    .features_item.big1,
    .features_item.big2 {
        background-size: 0px;
        padding-left: 0px
    }

    .header_mobile_bottom .col1 {
        padding-left: 10px
    }

    .header_mobile_bottom .top__phone {
        margin-left: 12px;
        font-size: 13px;
        white-space: nowrap;
        margin-top: 2px
    }

    .header_mobile_bottom .top__phone img {
        display: none
    }

    #our_products {
        padding: 30px 0 40px
    }

    .our_products__row {
        margin-top: 20px
    }

    #our_projects .button {
        width: 100%;
        text-align: center
    }

    .show_more {
        line-height: 1;
        padding: 15px 0 22px
    }

    .show_more svg {
        margin-right: 5px
    }

    #our_projects {
        padding: 40px 0
    }

    .our_products__item {
        height: 290px
    }

    .choose_product__slider .item .container {
        padding: 0
    }

    .choose_product__content {
        max-width: 450px;
        padding: 50px 20px
    }

    .portfolio_row_m.small .portfolio_tag span {
        font-size: 7px
    }

    .portfolio_row_m.small .portfolio__name {
        font-size: 10px
    }

    .portfolio_row_m.small .portfolio_item {
        height: 155px
    }

    .production_info__list li,
    .project_advantage__list li {
        font-size: 15px
    }

    .content_block {
        font-size: 15px
    }

    .project_info__right .button {
        width: 100%;
        text-align: center;
        padding: 20px
    }

    #project_info .work_video_bottom {
        margin: 10px 0
    }

    #project_catalog .col3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .project_catalog__item {
        padding: 20px 15px 15px
    }

    .project_catalog__item .col5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 41.66%;
        -ms-flex: 0 0 41.66%;
        flex: 0 0 41.66%;
        max-width: 41.66%
    }

    .project_catalog__item .col7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 58.33%;
        -ms-flex: 0 0 58.33%;
        flex: 0 0 58.33%;
        max-width: 58.33%
    }

    .project_catalog__name {
        margin: 5px 0
    }

    .project_catalog__price {
        margin-bottom: 10px
    }

    .project_page #work_photo {
        padding: 30px 0
    }

    .project_desc__option {
        font-size: 19px
    }

    .project_desc__n {
        font-size: 14px
    }

    .project_desc__s {
        font-size: 17px
    }

    .project_desc__list li {
        font-size: 12px
    }

    .screen_param__list li {
        font-size: 12px
    }

    .subproject_top {
        display: block
    }

    .subproject_tabs {
        margin: 12px 0
    }

    .production_page #work_photo {
        padding: 50px 0
    }

    .production_page #work_photo .work_photo__head {
        font-size: 33px
    }

    .view_all__item span {
        font-size: 13px
    }

    #view_all {
        padding: 40px 0
    }

    #view_all .row {
        margin-left: -7px;
        margin-right: -7px
    }

    #view_all .row .col3 {
        padding-left: 7px;
        padding-right: 7px
    }

    .view_all__item {
        margin-bottom: 14px
    }

    #partners_section {
        padding-bottom: 0
    }

    #contacts {
        padding-bottom: 40px
    }

    .countries_list li {
        margin-right: 10px
    }

    #regional_offices {
        padding: 40px 0
    }

    .map {
        margin-top: 40px
    }

    .cities_block {
        padding-top: 0
    }

    .call_back__text {
        margin: 20px 0
    }

    .fancybox-content {
        padding: 30px 20px
    }
}

@media only screen and (max-width:410px) {
    .features__row .features_item {
        padding-left: 0
    }

    .features_text {
        font-size: 12px
    }

    #confidence .head_section {
        font-size: 24px
    }

    .confidence__slider img {
        max-width: 80px
    }

    .confidence__slider .col4 {
        padding: 20px 0
    }

    .footer_m .col6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .footer__soc {
        margin: 10px 0 20px
    }

    .footer_bottom__nav li {
        margin-right: 20px;
        margin-bottom: 10px
    }

    .fixed_info_item {
        font-size: 13px;
        padding-left: 35px
    }

    .fixed_info_item svg {
        left: 2px
    }

    .head_section,
    .project_page #work_photo .work_photo__head {
        font-size: 28px
    }

    .project_advantage__head {
        font-size: 24px
    }

    .project_button {
        padding: 10px;
        font-size: 9px
    }

    .project_desc__n {
        font-size: 12px
    }

    .project_desc__s {
        font-size: 14px
    }

    .project_desc__list li {
        font-size: 10px
    }

    .project_desc__list li span {
        white-space: nowrap
    }

    .project_desc__b {
        font-size: 20px
    }

    .screen_param__list li {
        font-size: 10px
    }

    .screen_param__list li span {
        white-space: nowrap
    }

    .production_info__h {
        font-size: 20px;
        padding-left: 10px
    }

    .production_info__list {
        padding-left: 10px
    }

    .work_photo_view {
        padding: 0
    }

    .view_all__item span {
        font-size: 11px
    }

    .contacts_m_tab {
        font-size: 10px;
        margin-right: 5px
    }

    .contacts_m_items .contacts__mail {
        margin-top: 0
    }

    .project_catalog__name {
        min-height: auto
    }
}

@media only screen and (max-width:1440px) {
    #calc_section.calcMiniSection .calc_option__head {
        position: static;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
}

@media only screen and (max-width:1200px) {
    #calc_section.calcMiniSection .calc_section_tab_item label {
        padding: 18px 15px
    }
}

@media only screen and (max-width:1100px) {
    .col1100 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .col1100_6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    #calc_section.calcMiniSection {
        padding-bottom: 40px
    }

    #calc_section.calcMiniSection .calc_price_block {
        padding-bottom: 15px
    }

    #calc_section.calcMiniSection .calc_control {
        padding-bottom: 30px
    }

    #calc_section.calcMiniSection .calc_section__tab {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    #calc_section.calcMiniSection .calc_section_tab_item {
        width: 32.5%
    }

    #calc_section.calcMiniSection .calc_section_tab_item label {
        width: 100%;
        text-align: center
    }

    #calc_section.calcMiniSection .calc_option__head {
        margin-bottom: 0
    }

    #calc_section.calcMiniSection .calc_option__h {
        margin-top: 10px
    }

    .calcSmallBottomItem_noTitle:nth-child(2) {
        margin-bottom: 10px
    }

    .calcSmallBottomItem_noTitle:nth-child(4) {
        margin-top: 15px
    }
}

@media only screen and (max-width:850px) {
    #calc_section.calcMiniSection .calc_section__tab {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    #calc_section.calcMiniSection .calc_section_tab_item {
        width: auto
    }

    #calc_section.calcMiniSection .calc_section_tab_item label {
        padding: 18px 50px
    }
}

@media only screen and (max-width:800px) {
    #calc_section.calcMiniSection .calc_section_tab_item label {
        padding: 18px 35px
    }
}

@media only screen and (max-width:750px) {
    #calc_section.calcMiniSection .calc_section_tab_item label {
        padding: 18px 28px
    }
}

@media only screen and (max-width:700px) {
    #calc_section.calcMiniSection .calc_section__tab {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    #calc_section.calcMiniSection .calc_section_tab_item {
        width: 100%;
        margin-bottom: 5px
    }

    .delivery_garanty_str {
        margin-bottom: 10px
    }
}

@media only screen and (max-width:500px) {
    .col500 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .calcSmallBottomItem_noTitle {
        padding-top: 20px;
        margin-bottom: 0 !important;
        margin-top: 0 !important
    }

    #calc_section.calcMiniSection .calc_text {
        white-space: nowrap
    }

    #calc_section.calcMiniSection .calc_control {
        padding: 25px 20px 20px
    }

    #calc_section.calcMiniSection .calc_price_block {
        padding-left: 0
    }

    #calc_section.calcMiniSection .calc_price_block .button {
        padding-left: 10px;
        padding-right: 10px;
        font-size: 11px
    }

    #calc_section.calcMiniSection .garant_block_item:nth-child(4) {
        left: 46%
    }

    .calc_price {
        font-size: 18px;
        white-space: nowrap
    }

    .delivery_garanty_str {
        margin-bottom: 0
    }
}