*,
:after,
:before {
    padding: 0;
    margin: 0;
    border: 0;
    box-sizing: border-box
}

* {
    box-sizing: border-box;
    outline: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
hr,
menu,
nav,
section {
    display: block
}

a,
hr {
    padding: 0;
    text-decoration: none
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0
}

ins,
mark {
    background-color: #ff9;
    color: #000
}

body {
    line-height: 1
}

nav ul {
    list-style: none
}

ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: none
}

a {
    margin: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0;
    color: #646464
}

ins {
    text-decoration: none
}

mark {
    font-style: italic;
    font-weight: 700
}

del {
    text-decoration: line-through
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

hr {
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0
}

input,
select {
    vertical-align: middle
}

@keyframes rotateme {
    from {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

@-webkit-keyframes rotateme {
    from {
        -webkit-transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(360deg)
    }
}

@-webkit-keyframes shine {
    100% {
        left: 125%
    }
}

@keyframes shine {
    100% {
        left: 125%
    }
}

.rotate-me {
    -webkit-animation-name: rotateme;
    animation-name: rotateme;
    -webkit-animation-duration: 24s;
    animation-duration: 24s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear
}

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;
    backface-visibility: hidden;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
    height: 100%;
    left: 0;
    position: fixed;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    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: .87;
    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, visibility 0s linear .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, visibility 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;
    text-align: center;
    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;
    -webkit-transform: translateZ(0);
    z-index: 99994
}

.fancybox-is-open .fancybox-stage {
    overflow: hidden
}

.fancybox-slide {
    -webkit-backface-visibility: hidden;
    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;
    height: 100%;
    margin-right: -.25em;
    vertical-align: middle;
    width: 0
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--current,
.fancybox-slide--next,
.fancybox-slide--previous {
    display: block
}

.fancybox-slide--next {
    z-index: 99995
}

.fancybox-slide--image {
    overflow: visible;
    padding: 44px 0
}

.fancybox-slide--image:before {
    display: none
}

.fancybox-slide--html {
    padding: 6px 6px 0
}

.fancybox-slide--iframe {
    padding: 44px 44px 0
}

.fancybox-content {
    background: #fff;
    display: inline-block;
    margin: 0 0 6px;
    max-width: 100%;
    overflow: auto;
    padding: 0;
    padding: 24px;
    position: relative;
    text-align: left;
    vertical-align: middle
}

.fancybox-slide--image .fancybox-content {
    -webkit-animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 0;
    margin: 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-drag .fancybox-content {
    cursor: -webkit-grab;
    cursor: grab
}

.fancybox-is-dragging .fancybox-content {
    cursor: -webkit-grabbing;
    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--html .fancybox-content {
    margin-bottom: 6px
}

.fancybox-slide--iframe .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--video .fancybox-content {
    height: 100%;
    margin: 0;
    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;
    height: calc(100% - 44px);
    margin-bottom: 44px
}

.fancybox-iframe,
.fancybox-video {
    background: 0 0;
    border: 0;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%
}

.fancybox-iframe {
    vertical-align: top
}

.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;
    cursor: pointer;
    display: inline-block;
    height: 44px;
    margin: 0;
    outline: 0;
    padding: 10px;
    transition: color .2s;
    vertical-align: top;
    width: 44px
}

.fancybox-button,
.fancybox-button:link,
.fancybox-button:visited {
    color: #ccc
}

.fancybox-button:focus,
.fancybox-button:hover {
    color: #fff
}

.fancybox-button.disabled,
.fancybox-button.disabled:hover,
.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
    color: #888;
    cursor: default
}

.fancybox-button svg {
    display: block;
    overflow: visible;
    position: relative;
    shape-rendering: geometricPrecision
}

.fancybox-button svg path {
    fill: transparent;
    stroke: currentColor;
    stroke-linejoin: round;
    stroke-width: 3
}

.fancybox-button--pause svg path:nth-child(1),
.fancybox-button--play svg path:nth-child(2) {
    display: none
}

.fancybox-button--play svg path,
.fancybox-button--share svg path,
.fancybox-button--thumbs svg path {
    fill: currentColor
}

.fancybox-button--share svg path {
    stroke-width: 1
}

.fancybox-navigation .fancybox-button {
    height: 38px;
    opacity: 0;
    padding: 6px;
    position: absolute;
    top: 50%;
    width: 38px
}

.fancybox-show-nav .fancybox-navigation .fancybox-button {
    transition: opacity .25s, visibility 0s, color .25s
}

.fancybox-navigation .fancybox-button:after {
    content: "";
    left: -25px;
    padding: 50px;
    position: absolute;
    top: -25px
}

.fancybox-navigation .fancybox-button--arrow_left {
    left: 6px
}

.fancybox-navigation .fancybox-button--arrow_right {
    right: 6px
}

.fancybox-close-small {
    background: 0 0;
    border: 0;
    border-radius: 0;
    color: #555;
    cursor: pointer;
    height: 44px;
    margin: 0;
    padding: 6px;
    position: absolute;
    right: 0;
    top: 0;
    width: 44px;
    z-index: 10
}

.fancybox-close-small svg {
    fill: transparent;
    opacity: .8;
    stroke: currentColor;
    stroke-width: 1.5;
    transition: stroke .1s
}

.fancybox-close-small:focus {
    outline: 0
}

.fancybox-close-small:hover svg {
    opacity: 1
}

.fancybox-slide--iframe .fancybox-close-small,
.fancybox-slide--image .fancybox-close-small,
.fancybox-slide--video .fancybox-close-small {
    color: #ccc;
    padding: 5px;
    right: -12px;
    top: -44px
}

.fancybox-slide--iframe .fancybox-close-small:hover svg,
.fancybox-slide--image .fancybox-close-small:hover svg,
.fancybox-slide--video .fancybox-close-small:hover svg {
    background: 0 0;
    color: #fff
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-drag .fancybox-close-small {
    display: none
}

.fancybox-caption {
    bottom: 0;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    left: 0;
    line-height: 1.5;
    padding: 25px 44px;
    right: 0
}

.fancybox-caption:before {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAEtCAQAAABjBcL7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHRJREFUKM+Vk8EOgDAIQ0vj/3+xBw8qIZZueFnIKC90MCAI8DlrkHGeqqGIU6lVigrBtpCWqeRWoHDNqs0F7VNVBVxmHRlvoVqjaYkdnDIaivH2HqZ5+oZj3JUzWB+cOz4G48Bg+tsJ/tqu4dLC/4Xb+0GcF5BwBC0AA53qAAAAAElFTkSuQmCC);
    background-repeat: repeat-x;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: -25px;
    z-index: -1
}

.fancybox-caption:after {
    border-bottom: 1px solid rgba(255, 255, 255, .3);
    content: "";
    display: block;
    left: 44px;
    position: absolute;
    right: 44px;
    top: 0
}

.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 {
    -webkit-animation: a .8s infinite linear;
    animation: a .8s infinite linear;
    background: 0 0;
    border: 6px solid rgba(99, 99, 99, .5);
    border-radius: 100%;
    border-top-color: #fff;
    height: 60px;
    left: 50%;
    margin: -30px 0 0 -30px;
    opacity: .6;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 60px;
    z-index: 99999
}

@-webkit-keyframes a {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(359deg)
    }
}

@keyframes a {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(359deg)
    }
}

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

.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: #fff;
    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>ul {
    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>ul {
    overflow: hidden
}

.fancybox-thumbs-y>ul::-webkit-scrollbar {
    width: 7px
}

.fancybox-thumbs-y>ul::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3)
}

.fancybox-thumbs-y>ul::-webkit-scrollbar-thumb {
    background: #2a2a2a;
    border-radius: 10px
}

.fancybox-thumbs>ul>li {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    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-loading {
    background: rgba(0, 0, 0, .1)
}

.fancybox-thumbs>ul>li {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover
}

.fancybox-thumbs>ul>li:before {
    border: 4px solid #4ea7f9;
    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 .fancybox-thumbs-active:before {
    opacity: 1
}

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT

Copyright (c) 2014 Daniel Eden
*/
.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
}

@-webkit-keyframes bounce {

    0%,
    100%,
    20%,
    53%,
    80% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transform: translate3d(0, 0, 0)
    }

    40%,
    43% {
        transition-timing-function: cubic-bezier(.755, .05, .855, .06);
        transform: translate3d(0, -30px, 0)
    }

    70% {
        transition-timing-function: cubic-bezier(.755, .05, .855, .06);
        transform: translate3d(0, -15px, 0)
    }

    90% {
        transform: translate3d(0, -4px, 0)
    }
}

@keyframes bounce {

    0%,
    100%,
    20%,
    53%,
    80% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transform: translate3d(0, 0, 0)
    }

    40%,
    43% {
        transition-timing-function: cubic-bezier(.755, .05, .855, .06);
        transform: translate3d(0, -30px, 0)
    }

    70% {
        transition-timing-function: cubic-bezier(.755, .05, .855, .06);
        transform: translate3d(0, -15px, 0)
    }

    90% {
        transform: translate3d(0, -4px, 0)
    }
}

.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    transform-origin: center bottom
}

@-webkit-keyframes flash {

    0%,
    100%,
    50% {
        opacity: 1
    }

    25%,
    75% {
        opacity: 0
    }
}

@keyframes flash {

    0%,
    100%,
    50% {
        opacity: 1
    }

    25%,
    75% {
        opacity: 0
    }
}

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

@-webkit-keyframes pulse {
    0% {
        transform: scale3d(1, 1, 1)
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes pulse {
    0% {
        transform: scale3d(1, 1, 1)
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

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

@-webkit-keyframes rubberBand {
    0% {
        transform: scale3d(1, 1, 1)
    }

    30% {
        transform: scale3d(1.25, .75, 1)
    }

    40% {
        transform: scale3d(.75, 1.25, 1)
    }

    50% {
        transform: scale3d(1.15, .85, 1)
    }

    65% {
        transform: scale3d(.95, 1.05, 1)
    }

    75% {
        transform: scale3d(1.05, .95, 1)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes rubberBand {
    0% {
        transform: scale3d(1, 1, 1)
    }

    30% {
        transform: scale3d(1.25, .75, 1)
    }

    40% {
        transform: scale3d(.75, 1.25, 1)
    }

    50% {
        transform: scale3d(1.15, .85, 1)
    }

    65% {
        transform: scale3d(.95, 1.05, 1)
    }

    75% {
        transform: scale3d(1.05, .95, 1)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

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

@-webkit-keyframes shake {

    0%,
    100% {
        transform: translate3d(0, 0, 0)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(-10px, 0, 0)
    }

    20%,
    40%,
    60%,
    80% {
        transform: translate3d(10px, 0, 0)
    }
}

@keyframes shake {

    0%,
    100% {
        transform: translate3d(0, 0, 0)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(-10px, 0, 0)
    }

    20%,
    40%,
    60%,
    80% {
        transform: translate3d(10px, 0, 0)
    }
}

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

@-webkit-keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        transform: rotate3d(0, 0, 1, -5deg)
    }

    100% {
        transform: rotate3d(0, 0, 1, 0deg)
    }
}

@keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        transform: rotate3d(0, 0, 1, -5deg)
    }

    100% {
        transform: rotate3d(0, 0, 1, 0deg)
    }
}

.swing {
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing
}

@-webkit-keyframes tada {
    0% {
        transform: scale3d(1, 1, 1)
    }

    10%,
    20% {
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%,
    50%,
    70%,
    90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%,
    60%,
    80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes tada {
    0% {
        transform: scale3d(1, 1, 1)
    }

    10%,
    20% {
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%,
    50%,
    70%,
    90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%,
    60%,
    80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

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

@-webkit-keyframes wobble {
    0% {
        transform: none
    }

    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg)
    }

    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)
    }

    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)
    }

    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)
    }

    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)
    }

    100% {
        transform: none
    }
}

@keyframes wobble {
    0% {
        transform: none
    }

    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg)
    }

    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)
    }

    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)
    }

    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)
    }

    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)
    }

    100% {
        transform: none
    }
}

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

@-webkit-keyframes bounceIn {

    0%,
    100%,
    20%,
    40%,
    60%,
    80% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        transform: scale3d(.97, .97, .97)
    }

    100% {
        opacity: 1;
        transform: scale3d(1, 1, 1)
    }
}

@keyframes bounceIn {

    0%,
    100%,
    20%,
    40%,
    60%,
    80% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        transform: scale3d(.97, .97, .97)
    }

    100% {
        opacity: 1;
        transform: scale3d(1, 1, 1)
    }
}

.bounceIn {
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn;
    -webkit-animation-duration: .75s;
    animation-duration: .75s
}

@-webkit-keyframes bounceInDown {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0)
    }

    75% {
        transform: translate3d(0, -10px, 0)
    }

    90% {
        transform: translate3d(0, 5px, 0)
    }

    100% {
        transform: none
    }
}

@keyframes bounceInDown {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0)
    }

    75% {
        transform: translate3d(0, -10px, 0)
    }

    90% {
        transform: translate3d(0, 5px, 0)
    }

    100% {
        transform: none
    }
}

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

@-webkit-keyframes bounceInLeft {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0)
    }

    75% {
        transform: translate3d(-10px, 0, 0)
    }

    90% {
        transform: translate3d(5px, 0, 0)
    }

    100% {
        transform: none
    }
}

@keyframes bounceInLeft {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0)
    }

    75% {
        transform: translate3d(-10px, 0, 0)
    }

    90% {
        transform: translate3d(5px, 0, 0)
    }

    100% {
        transform: none
    }
}

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

@-webkit-keyframes bounceInRight {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(3000px, 0, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0)
    }

    75% {
        transform: translate3d(10px, 0, 0)
    }

    90% {
        transform: translate3d(-5px, 0, 0)
    }

    100% {
        transform: none
    }
}

@keyframes bounceInRight {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(3000px, 0, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0)
    }

    75% {
        transform: translate3d(10px, 0, 0)
    }

    90% {
        transform: translate3d(-5px, 0, 0)
    }

    100% {
        transform: none
    }
}

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

@-webkit-keyframes bounceInUp {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0, 3000px, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0)
    }

    75% {
        transform: translate3d(0, 10px, 0)
    }

    90% {
        transform: translate3d(0, -5px, 0)
    }

    100% {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes bounceInUp {

    0%,
    100%,
    60%,
    75%,
    90% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0, 3000px, 0)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0)
    }

    75% {
        transform: translate3d(0, 10px, 0)
    }

    90% {
        transform: translate3d(0, -5px, 0)
    }

    100% {
        transform: translate3d(0, 0, 0)
    }
}

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

@-webkit-keyframes bounceOut {
    20% {
        transform: scale3d(.9, .9, .9)
    }

    50%,
    55% {
        opacity: 1;
        transform: scale3d(1.1, 1.1, 1.1)
    }

    100% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }
}

@keyframes bounceOut {
    20% {
        transform: scale3d(.9, .9, .9)
    }

    50%,
    55% {
        opacity: 1;
        transform: scale3d(1.1, 1.1, 1.1)
    }

    100% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }
}

.bounceOut {
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut;
    -webkit-animation-duration: .75s;
    animation-duration: .75s
}

@-webkit-keyframes bounceOutDown {
    20% {
        transform: translate3d(0, 10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        transform: translate3d(0, -20px, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }
}

@keyframes bounceOutDown {
    20% {
        transform: translate3d(0, 10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        transform: translate3d(0, -20px, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }
}

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

@-webkit-keyframes bounceOutLeft {
    20% {
        opacity: 1;
        transform: translate3d(20px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }
}

@keyframes bounceOutLeft {
    20% {
        opacity: 1;
        transform: translate3d(20px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }
}

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

@-webkit-keyframes bounceOutRight {
    20% {
        opacity: 1;
        transform: translate3d(-20px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }
}

@keyframes bounceOutRight {
    20% {
        opacity: 1;
        transform: translate3d(-20px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }
}

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

@-webkit-keyframes bounceOutUp {
    20% {
        transform: translate3d(0, -10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        transform: translate3d(0, 20px, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }
}

@keyframes bounceOutUp {
    20% {
        transform: translate3d(0, -10px, 0)
    }

    40%,
    45% {
        opacity: 1;
        transform: translate3d(0, 20px, 0)
    }

    100% {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }
}

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

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

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

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

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

@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes fadeOutDown {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }
}

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

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }
}

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

@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }
}

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

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }
}

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

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }
}

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

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }
}

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

@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }
}

@keyframes fadeOutUp {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }
}

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

@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }
}

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

@-webkit-keyframes flip {
    0% {
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        transform: perspective(400px) scale3d(.95, .95, .95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    100% {
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

@keyframes flip {
    0% {
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        transform: perspective(400px) scale3d(.95, .95, .95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    100% {
        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 {
    0% {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transition-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }

    100% {
        transform: perspective(400px)
    }
}

@keyframes flipInX {
    0% {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transition-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }

    100% {
        transform: perspective(400px)
    }
}

.flipInX {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX
}

@-webkit-keyframes flipInY {
    0% {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transition-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }

    100% {
        transform: perspective(400px)
    }
}

@keyframes flipInY {
    0% {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transition-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }

    100% {
        transform: perspective(400px)
    }
}

.flipInY {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY
}

@-webkit-keyframes flipOutX {
    0% {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1
    }

    100% {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0
    }
}

@keyframes flipOutX {
    0% {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1
    }

    100% {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0
    }
}

.flipOutX {
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipOutY {
    0% {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1
    }

    100% {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0
    }
}

@keyframes flipOutY {
    0% {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1
    }

    100% {
        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-animation-duration: .75s;
    animation-duration: .75s
}

@-webkit-keyframes lightSpeedIn {
    0% {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0
    }

    60% {
        transform: skewX(20deg);
        opacity: 1
    }

    80% {
        transform: skewX(-5deg);
        opacity: 1
    }

    100% {
        transform: none;
        opacity: 1
    }
}

@keyframes lightSpeedIn {
    0% {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0
    }

    60% {
        transform: skewX(20deg);
        opacity: 1
    }

    80% {
        transform: skewX(-5deg);
        opacity: 1
    }

    100% {
        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 {
    0% {
        opacity: 1
    }

    100% {
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0
    }
}

@keyframes lightSpeedOut {
    0% {
        opacity: 1
    }

    100% {
        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 {
    0% {
        transform-origin: center;
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0
    }

    100% {
        transform-origin: center;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateIn {
    0% {
        transform-origin: center;
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0
    }

    100% {
        transform-origin: center;
        transform: none;
        opacity: 1
    }
}

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

@-webkit-keyframes rotateInDownLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }

    100% {
        transform-origin: left bottom;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInDownLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }

    100% {
        transform-origin: left bottom;
        transform: none;
        opacity: 1
    }
}

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

@-webkit-keyframes rotateInDownRight {
    0% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    100% {
        transform-origin: right bottom;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInDownRight {
    0% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    100% {
        transform-origin: right bottom;
        transform: none;
        opacity: 1
    }
}

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

@-webkit-keyframes rotateInUpLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    100% {
        transform-origin: left bottom;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInUpLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    100% {
        transform-origin: left bottom;
        transform: none;
        opacity: 1
    }
}

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

@-webkit-keyframes rotateInUpRight {
    0% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0
    }

    100% {
        transform-origin: right bottom;
        transform: none;
        opacity: 1
    }
}

@keyframes rotateInUpRight {
    0% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0
    }

    100% {
        transform-origin: right bottom;
        transform: none;
        opacity: 1
    }
}

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

@-webkit-keyframes rotateOut {
    0% {
        transform-origin: center;
        opacity: 1
    }

    100% {
        transform-origin: center;
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0
    }
}

@keyframes rotateOut {
    0% {
        transform-origin: center;
        opacity: 1
    }

    100% {
        transform-origin: center;
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0
    }
}

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

@-webkit-keyframes rotateOutDownLeft {
    0% {
        transform-origin: left bottom;
        opacity: 1
    }

    100% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }
}

@keyframes rotateOutDownLeft {
    0% {
        transform-origin: left bottom;
        opacity: 1
    }

    100% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }
}

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

@-webkit-keyframes rotateOutDownRight {
    0% {
        transform-origin: right bottom;
        opacity: 1
    }

    100% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

@keyframes rotateOutDownRight {
    0% {
        transform-origin: right bottom;
        opacity: 1
    }

    100% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

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

@-webkit-keyframes rotateOutUpLeft {
    0% {
        transform-origin: left bottom;
        opacity: 1
    }

    100% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

@keyframes rotateOutUpLeft {
    0% {
        transform-origin: left bottom;
        opacity: 1
    }

    100% {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

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

@-webkit-keyframes rotateOutUpRight {
    0% {
        transform-origin: right bottom;
        opacity: 1
    }

    100% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpRight {
    0% {
        transform-origin: right bottom;
        opacity: 1
    }

    100% {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0
    }
}

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

@-webkit-keyframes hinge {
    0% {
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%,
    60% {
        transform: rotate3d(0, 0, 1, 80deg);
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40%,
    80% {
        transform: rotate3d(0, 0, 1, 60deg);
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1
    }

    100% {
        transform: translate3d(0, 700px, 0);
        opacity: 0
    }
}

@keyframes hinge {
    0% {
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%,
    60% {
        transform: rotate3d(0, 0, 1, 80deg);
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40%,
    80% {
        transform: rotate3d(0, 0, 1, 60deg);
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1
    }

    100% {
        transform: translate3d(0, 700px, 0);
        opacity: 0
    }
}

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

@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

@keyframes rollIn {
    0% {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    100% {
        opacity: 1;
        transform: none
    }
}

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

@-webkit-keyframes rollOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg)
    }
}

@keyframes rollOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg)
    }
}

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

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

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

@-webkit-keyframes zoomInDown {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 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;
        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 {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    100% {
        opacity: 0
    }
}

@keyframes zoomOut {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    100% {
        opacity: 0
    }
}

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

@-webkit-keyframes zoomOutDown {
    40% {
        opacity: 1;
        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)
    }

    100% {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        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;
        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)
    }

    100% {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        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;
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: scale(.1) translate3d(-2000px, 0, 0);
        transform-origin: left center
    }
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: scale(.1) translate3d(-2000px, 0, 0);
        transform-origin: left center
    }
}

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

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: scale(.1) translate3d(2000px, 0, 0);
        transform-origin: right center
    }
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
    }

    100% {
        opacity: 0;
        transform: scale(.1) translate3d(2000px, 0, 0);
        transform-origin: right center
    }
}

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

@-webkit-keyframes zoomOutUp {
    40% {
        opacity: 1;
        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)
    }

    100% {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        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;
        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)
    }

    100% {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        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 {
    0% {
        transform: translateY(-100%);
        visibility: visible
    }

    100% {
        transform: translateY(0)
    }
}

@keyframes slideInDown {
    0% {
        transform: translateY(-100%);
        visibility: visible
    }

    100% {
        transform: translateY(0)
    }
}

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

@-webkit-keyframes slideInLeft {
    0% {
        transform: translateX(-100%);
        visibility: visible
    }

    100% {
        transform: translateX(0)
    }
}

@keyframes slideInLeft {
    0% {
        transform: translateX(-100%);
        visibility: visible
    }

    100% {
        transform: translateX(0)
    }
}

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

@-webkit-keyframes slideInRight {
    0% {
        transform: translateX(100%);
        visibility: visible
    }

    100% {
        transform: translateX(0)
    }
}

@keyframes slideInRight {
    0% {
        transform: translateX(100%);
        visibility: visible
    }

    100% {
        transform: translateX(0)
    }
}

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

@-webkit-keyframes slideInUp {
    0% {
        transform: translateY(100%);
        visibility: visible
    }

    100% {
        transform: translateY(0)
    }
}

@keyframes slideInUp {
    0% {
        transform: translateY(100%);
        visibility: visible
    }

    100% {
        transform: translateY(0)
    }
}

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

@-webkit-keyframes slideOutDown {
    0% {
        transform: translateY(0)
    }

    100% {
        visibility: hidden;
        transform: translateY(100%)
    }
}

@keyframes slideOutDown {
    0% {
        transform: translateY(0)
    }

    100% {
        visibility: hidden;
        transform: translateY(100%)
    }
}

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

@-webkit-keyframes slideOutLeft {
    0% {
        transform: translateX(0)
    }

    100% {
        visibility: hidden;
        transform: translateX(-100%)
    }
}

@keyframes slideOutLeft {
    0% {
        transform: translateX(0)
    }

    100% {
        visibility: hidden;
        transform: translateX(-100%)
    }
}

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

@-webkit-keyframes slideOutRight {
    0% {
        transform: translateX(0)
    }

    100% {
        visibility: hidden;
        transform: translateX(100%)
    }
}

@keyframes slideOutRight {
    0% {
        transform: translateX(0)
    }

    100% {
        visibility: hidden;
        transform: translateX(100%)
    }
}

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

@-webkit-keyframes slideOutUp {
    0% {
        transform: translateY(0)
    }

    100% {
        visibility: hidden;
        transform: translateY(-100%)
    }
}

@keyframes slideOutUp {
    0% {
        transform: translateY(0)
    }

    100% {
        visibility: hidden;
        transform: translateY(-100%)
    }
}

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

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-Black.woff2) format("woff2"), url(../fonts/Montserrat-Black.woff) format("woff");
    font-weight: 900;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-Bold.woff2) format("woff2"), url(../fonts/Montserrat-Bold.woff) format("woff");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-ExtraBold.woff2) format("woff2"), url(../fonts/Montserrat-ExtraBold.woff) format("woff");
    font-weight: 800;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-ExtraLight.woff2) format("woff2"), url(../fonts/Montserrat-ExtraLight.woff) format("woff");
    font-weight: 200;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-Light.woff2) format("woff2"), url(../fonts/Montserrat-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-Regular.woff2) format("woff2"), url(../fonts/Montserrat-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-SemiBold.woff2) format("woff2"), url(../fonts/Montserrat-SemiBold.woff) format("woff");
    font-weight: 600;
    font-style: normal
}

@font-face {
    font-family: Montserrat;
    font-display: swap;
    src: url(../fonts/Montserrat-Medium.woff2) format("woff2"), url(../fonts/Montserrat-Medium.woff) format("woff");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: icons;
    src: url(../fonts/iconsfont/icons.eot?gqartg);
    src: url(../fonts/iconsfont/icons.eot?gqartg#iefix) format("embedded-opentype"), url(../fonts/iconsfont/icons.ttf?gqartg) format("truetype"), url(../fonts/iconsfont/icons.woff?gqartg) format("woff"), url(../fonts/iconsfont/icons.svg?gqartg#icons) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: block
}

[class*=" icon-"]:before,
[class^=icon-]:before {
    font-family: icons !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-arrow-up:before {
    content: "\e90d"
}

.icon-whatsapp-square:before {
    content: "\e90b"
}

.icon-whatsapp:before {
    content: "\e90c"
}

.icon-email:before {
    content: "\e90a"
}

.icon-close:before {
    content: "\e909"
}

.icon-chevron-left:before {
    content: "\e901"
}

.icon-chevron-right:before {
    content: "\e903"
}

.icon-viber:before {
    content: "\e904"
}

.icon-phone-alt:before {
    content: "\e905"
}

.icon-phone-square-alt:before {
    content: "\e906"
}

.icon-map-marker-alt:before {
    content: "\e907"
}

.icon-clock:before {
    content: "\e908"
}

.icon-location:before {
    content: "\e900"
}

.icon-phone-office:before {
    content: "\e902"
}

body,
html {
    height: 100%;
    width: 100%;
    min-width: 320px;
    font-family: Montserrat, sans-serif;
    line-height: 1.15;
    font-weight: 400;
    color: #1e1e21;
    background-color: #fff;
    position: relative
}

body.lock {
    overflow: hidden
}

sup {
    vertical-align: super;
    font-size: smaller
}

.btn-one {
    position: relative;
    display: inline-block;
    padding-left: 40px;
    padding-right: 40px;
    color: #fff;
    font-size: 16px;
    line-height: 50px;
    font-weight: 700;
    text-transform: capitalize;
    background: #d9a95b;
    border-radius: 30px;
    transition: all .3s linear;
    font-family: Montserrat, sans-serif
}

.btn-one::after {
    position: absolute;
    top: -1px;
    left: -1px;
    bottom: -1px;
    right: -1px;
    content: "";
    border-radius: 30px;
    transform: scaleY(0) rotateX(0);
    transition: all .2s linear
}

.btn-one:hover {
    color: #fff
}

.btn-one:hover::after {
    transform: scaleY(1) rotateX(0);
    transition: all .4s linear;
    background: #333029;
    color: #d9a95b
}

.btn-one .txt {
    position: relative;
    display: flex;
    align-items: center;
    z-index: 1
}

img {
    max-width: 100%;
    height: auto;
    transition-delay: .1s;
    transition-timing-function: ease-in-out;
    transition-duration: .7s;
    transition-property: all
}

select {
    font-family: Montserrat;
    display: block;
    width: 100%;
    max-width: 100%;
    border: 1px solid #555;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    padding: .6em 2.1em .5em .8em;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, .04);
    border-radius: .5em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to bottom, #fff 0, #e5e5e5 100%);
    background-repeat: no-repeat, repeat;
    background-position: right .7em top 50%, 0 0;
    background-size: .65em auto, 100%
}

select::-ms-expand {
    display: none
}

select:hover {
    border-color: #888
}

select:focus {
    border-color: #aaa;
    box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
    box-shadow: 0 0 0 3px -moz-mac-focusring;
    color: #222;
    outline: 0
}

select option {
    font-weight: 400
}

:root:lang(ar) select,
:root:lang(iw) select,
[dir=rtl] select {
    background-position: left .7em top 50%, 0 0;
    padding: .6em .8em .5em 1.4em
}

input[type=text] {
    font-family: Montserrat;
    border: 1px solid #555;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    padding: .6em 1.4em .5em .8em;
    border-radius: .5em
}

.container {
    display: block;
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 20px
}

.wrapper {
    width: 100%;
    height: 100%;
    min-height: 100%;
    background-color: #fff;
    padding: 185px 0 0;
    display: flex;
    justify-content: space-between;
    flex-direction: column
}

.content {
    background-color: #fff;
    padding: 0;
    flex: 1 1 auto
}

.section {
    padding: 30px 0 30px 0;
    position: relative;
    z-index: 1
}

.section__head {
    position: relative;
    width: 100%;
    z-index: 1
}

.section__head h2 {
    text-align: center !important;
    padding: 20px 0;
    font-size: 36px;
    font-style: normal;
    font-weight: 900;
    font-size: 36px;
    line-height: 44px;
}

.section__head h2.white {
    color: #fff
}

.section__head h3 {
    text-align: center !important;
    color: #84827c;
    position: relative;
}

.section__head h3 span {
    position: relative;
    padding-bottom: 10px
}

.section__head h3 span::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #d9a95b;
    top: 70%;
    left: 0
}

.section__head p {
    text-align: center !important;
    font-size: 16px;
    font-weight: 600
}

.section__head p.white {
    color: #fff
}

.section__content {
    position: relative;
    width: 100%;
    z-index: 2
}

.section.bg-black::before,
.section.bg-blue::before,
.section.bg-white::before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, .7);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0
}

.section.bg-white::before {
    background-color: rgba(255, 255, 255, .9)
}

.section.bg-blue::before {
    background-color: rgba(52, 68, 160, .7)
}

.separator {
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center !important;
    padding: 10px 0 10px 0;
    display: flex;
    justify-content: center
}

.separator__box {
    display: inline-block;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    margin-left: 1px;
    margin-right: 1px;
    border-radius: 50%;
    background-color: #555
}

.separator__box i {
    color: #e0e0e0
}

.separator__box::after,
.separator__box::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #eee;
    width: 80px;
    height: 4px;
    left: 38px
}

.separator__box::before {
    right: 38px;
    left: auto
}

.separator__box.blue {
    background-color: #3444a0
}

.separator__box.blue i {
    color: #e0e0e0
}

.separator__box.blue::after,
.separator__box.blue::before {
    background-color: #20264a
}

.separator__box.white {
    background-color: #e0e0e0
}

.separator__box.white i {
    color: #3444a0
}

.separator__box.white::after,
.separator__box.white::before {
    background-color: #e0e0e0
}

.separator__box.black {
    background-color: #e0e0e0
}

.separator__box.black i {
    color: #3444a0
}

.separator__box.black::after,
.separator__box.black::before {
    background-color: #e0e0e0
}

.separator.skew {
    transform: skewX(-10deg)
}

.blur {
    background: rgba(255, 255, 255, .3);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px)
}

.blur1 {
    background: rgba(255, 255, 255, .3);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    height: 100vh
}

.header {
    position: fixed;
    display: block;
    width: 100%;
    gap: 20px;
    z-index: 10;
    background-color: #333029
}

.header__top {
    width: 100%;
    padding: 20px 0
}

.header__body {
    background-color: #fff;
    box-shadow: 0 2px 8px 4px rgb(0 0 0 / 8%);
}

.header__catalog {
    background-color: #1e1e21
}

.header-burger {
    opacity: 0;
    visibility: hidden;
    transition: all .6s ease 0s;
    position: absolute
}

.header-burger__burger {
    margin: 0;
    position: relative;
    width: 0;
    height: 20px;
    cursor: pointer
}

.header-burger__burger.active::before {
    transform: rotate(45deg);
    top: 9px
}

.header-burger__burger.active span {
    transform: scale(0)
}

.header-burger__burger.active::after {
    transform: rotate(-45deg);
    bottom: 9px
}

.header-burger__burger span {
    position: absolute;
    background-color: #d9a95b;
    left: 0;
    width: 100%;
    height: 2px;
    top: 9px;
    transition: all .3s ease 0s
}

.header-burger__burger::after,
.header-burger__burger::before {
    content: "";
    background-color: #d9a95b;
    position: absolute;
    width: 100%;
    height: 2px;
    left: 0;
    transition: all .3s ease 0s
}

.header-burger__burger::before {
    top: 0
}

.header-burger__burger::after {
    bottom: 0
}

.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 20px
}

.header-top__logo img {
    width: 100%;
    max-width: 130px
}

.header-top__list {
    display: flex
}

.header-top__list li {
    display: flex;
    align-items: center;
    position: relative;
    padding: 0 30px
}

.header-top__list li::before {
    position: absolute;
    top: -2px;
    right: 0;
    bottom: -3px;
    width: 1px;
    background-color: rgba(255, 255, 255, .1);
    content: ""
}

.header-top__list li:last-child:before {
    display: none
}

.header-top__list li a {
    display: flex;
    align-items: center
}

.header-top__list-icon {
    position: relative;
    display: block;
    width: 45px;
    min-width: 45px;
    height: 45px;
    background: #23211b;
    border-radius: 50%;
    font-size: 16px;
    color: #d9a95b;
    line-height: 45px;
    font-weight: 400;
    text-align: center;
    transition: all .2s linear;
    transition-delay: .1s
}

.header-top__list-text {
    padding-left: 20px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
    transition: all .2s linear
}

.header-top__list-text .no-space {
    white-space: nowrap
}

.header-top__list li:hover .header-top__list-icon {
    color: #fff;
    background: #d9a95b
}

.header-top__list li:hover .header-top__list-text {
    color: #d9a95b
}

.header-top__button {
    display: none;
    padding: 0 0 0 20px
}

.header-top__button a.btn-one:hover {
    color: #fff
}

.header-top__button a.btn-one:hover::after {
    transform: scaleY(1) rotateX(0);
    transition: all .4s linear;
    background: #84827c;
    color: #d9a95b
}

.header-body {
    display: flex;
    justify-content: space-between;
    flex-flow: row nowrap;
    align-items: center
}

.header-body__list {
    display: flex;
    justify-content: center;
    flex-flow: row nowrap
}

.header-body__list li {
    margin-right: 25px
}

.header-body__list li a,
.header-body__list li span {
    position: relative;
    display: block;
    padding: 20px 0;
    color: #84827c;
    font-size: 16px;
    line-height: 30px;
    font-weight: 600;
    text-transform: capitalize;
    transition: all .5s ease;
    opacity: 1
}

.header-body__list li a::before,
.header-body__list li span::before {
    position: absolute;
    left: 0;
    bottom: 19px;
    right: 0;
    height: 2px;
    content: "";
    transform: scale(0);
    transform-origin: center;
    transform-style: preserve-3d;
    transition: all .4s cubic-bezier(.62, .21, .45, 1.52)
}

.header-body__list li a:hover,
.header-body__list li span:hover {
    color: #23211b
}

.header-body__list li:hover>a::before,
.header-body__list li:hover>span::before {
    transform: scaleX(1);
    background: #d9a95b
}

.header-body__list li:hover>ul {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: all .3s ease
}

.header-body__list li ul {
    position: absolute;
    top: 100%;
    left: inherit;
    width: 270px;
    padding: 0 0;
    opacity: 0;
    visibility: hidden;
    border-radius: 0;
    transform: translateY(30px);
    transition: all .1s ease;
    z-index: 100
}

.header-body__list li ul::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: #fff;
    border-radius: 0;
    box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, .05), -2px 0 5px 1px rgba(0, 0, 0, .05);
    z-index: -1
}

.header-body__list li ul li {
    position: relative;
    display: block;
    padding: 0 20px;
    width: 100%
}

.header-body__list li ul li a {
    position: relative;
    display: block;
    border-bottom: 1px solid #e9e9e9;
    padding: 13px 0 13px;
    color: #333029;
    font-size: 15px;
    line-height: 24px;
    font-weight: 600;
    text-align: left;
    text-transform: capitalize;
    transition: all .5s ease
}

.header-body__list li ul li a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: 15px 0;
    width: 0;
    background: #d9a95b;
    height: auto;
    opacity: 0;
    transition: all .5s ease;
    transition: all .2s linear;
    transition-delay: .1s;
    box-sizing: border-box
}

.header-body__list li ul li a:hover {
    padding-left: 15px
}

.header-body__list li ul li:last-child>a {
    border: none
}

.header-body__list li ul li:hover>a::before {
    width: 5px;
    opacity: 1
}

.header-body__box {
    display: flex;
    justify-content: space-between;
    flex-flow: row nowrap;
    align-items: center
}

.header-body__box ul {
    display: flex;
    padding: 0 30px
}

.header-body__box ul li {
    padding: 0 10px;
    position: relative;
    display: inline-block
}

.header-body__box ul li a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    background: #f6f2eb;
    border-radius: 50%;
    color: #84827d;
    font-size: 14px;
    z-index: 1;
    transition: all .5s ease
}

.header-body__box ul li a i {
    text-rendering: auto;
    font-size: 20px;
    transition: all .3s ease
}

.header-body__box ul li a i.icon-viber {
    color: #665cac
}

.header-body__box ul li a i.icon-whatsapp {
    color: #43d854
}

.header-body__box ul li a::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    content: "";
    border-radius: 50%;
    z-index: -1;
    transform: scale(0);
    transform-origin: center;
    transform-style: preserve-3d;
    transition: all .4s cubic-bezier(.62, .21, .45, 1.52)
}

.header-body__box ul li a:hover {
    color: #fff
}

.header-body__box ul li a:hover i {
    font-size: 25px
}

.header-body__box ul li a:hover::before {
    transform: scaleX(1);
    background: #d9a95b
}

.mobile-menu {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    width: 300px;
    min-width: 300px;
    max-width: 100%;
    height: 100%;
    padding-right: 30px;
    opacity: 0;
    visibility: hidden;
    z-index: 50
}

.mobile-menu.active {
    opacity: 1;
    visibility: visible;
    overflow: hidden
}

.mobile-menu__bg {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(3, 13, 40, .9);
    transform: translateX(101%);
    transition: all .9s ease;
    z-index: 1
}

.mobile-menu.active .mobile-menu__bg {
    opacity: .7;
    visibility: visible;
    transition: all .7s ease;
    transform: translateX(0)
}

.mobile-menu__close {
    position: absolute;
    top: 40px;
    right: 20px;
    z-index: 10;
    transition: all .9s ease
}

.mobile-menu__close:hover {
    transform: rotate(90deg)
}

.mobile-menu.active .mobile-menu__close {
    top: 20px;
    transform: rotate(360deg)
}

.mobile-menu.active .mobile-menu__close:hover {
    transform: rotate(90deg)
}

.mobile-menu__box {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
    overflow-y: auto;
    background: #000;
    padding: 0 0;
    z-index: 5;
    opacity: 0;
    visibility: hidden;
    border-radius: 0;
    transform: translateX(101%)
}

.mobile-menu.active .mobile-menu__box {
    opacity: 1;
    visibility: visible;
    transition: all .7s ease;
    transform: translateX(0)
}

.mobile-menu__logo {
    position: relative;
    padding: 30px 25px;
    text-align: left
}

.mobile-menu__logo a {
    position: relative;
    display: flex;
    justify-content: center;
    margin: 0 auto
}

.mobile-menu__logo a img {
    width: 100%;
    max-width: 150px
}

.mobile-menu__list {
    position: relative;
    display: block;
    width: 100%;
    float: none
}

.mobile-menu__list li {
    display: block;
    position: relative;
    border-top: 1px solid rgba(255, 255, 255, .1);
    padding: 8px 25px 8px 15px;
    width: 100%
}

.mobile-menu__list li a,
.mobile-menu__list li span {
    display: flex;
    align-items: center
}

.mobile-menu__list li:hover a .mobile-list__icon {
    color: #23211b;
    background: #d9a95b
}

.mobile-menu__list li:hover a .mobile-list__text {
    color: #fff
}

.mobile-menu__menu {
    position: relative;
    display: block;
    width: 100%;
    float: none
}

.mobile-menu__menu:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, .1)
}

.mobile-menu__menu li {
    position: relative;
    display: block;
    border-top: 1px solid rgba(255, 255, 255, .1)
}

.mobile-menu__menu li>a,
.mobile-menu__menu li>span {
    position: relative;
    display: block;
    padding: 10px 25px;
    color: #fff;
    font-size: 15px;
    line-height: 24px;
    font-weight: 600;
    text-transform: uppercase;
    transition: all .5s ease
}

.mobile-menu__menu li>a:hover,
.mobile-menu__menu li>span:hover {
    color: #d9a95b;
    padding-left: 30px
}

.mobile-menu__menu li .dropdown-btn {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 32px;
    height: 32px;
    text-align: center;
    color: #fff;
    font-size: 16px;
    line-height: 32px;
    background: rgba(255, 255, 255, .1);
    cursor: pointer;
    border-radius: 2px;
    transition: all .5s ease;
    z-index: 5
}

.mobile-menu__menu li .dropdown-btn.open {
    transform: rotate(90deg)
}

.mobile-menu__menu li ul {
    display: none
}

.mobile-menu__menu li ul.open {
    display: block
}

.mobile-menu__menu li ul li>a {
    font-size: 15px;
    font-weight: 400;
    margin-left: 20px;
    text-transform: capitalize
}

.mobile-menu__button {
    display: flex;
    justify-content: center;
    padding: 20px
}

.mobile-menu__messenger {
    display: flex;
    justify-content: center;
    padding: 20px
}

.mobile-menu__messenger a {
    margin: 0 10px;
    font-size: 30px;
    transition: all .4s ease .3s
}

.mobile-menu__messenger a.icon-viber {
    color: #665cac
}

.mobile-menu__messenger a.icon-whatsapp {
    color: #43d854
}

.mobile-menu__messenger a:hover {
    font-size: 35px
}

.mobile-list__icon {
    position: relative;
    display: block;
    width: 45px;
    min-width: 45px;
    height: 45px;
    background: #23211b;
    border-radius: 50%;
    font-size: 16px;
    color: #d9a95b;
    line-height: 45px;
    font-weight: 400;
    text-align: center;
    transition: all .9s ease;
    transition-delay: .1s;
    margin-right: 10px
}

.mobile-list__text {
    transition: all .9s ease;
    color: #d9a95b
}

.actions {
    padding: 0;
    width: 100%
}

.actions__bg {
    width: 100%;
    height: 100%;
    min-height: 100%;
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1
}

.actions__bg::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    opacity: .4;
    width: 100%;
    height: 100%;
    z-index: 0
}

.actions .container {
    display: flex;
    justify-content: center;
    align-items: stretch;
    align-content: stretch;
    height: 100%;
    min-height: 100%
}

.actions__block {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    position: relative;
    height: 100%;
    min-height: 100%;
    width: 400px;
    z-index: 1;
    padding: 30px
}

.actions__block-title {
    box-shadow: 0 8px 18px -6px rgba(32, 38, 74, .12), 0 12px 42px -4px rgba(32, 38, 74, .12)
}

.actions__block-title span {
    display: block;
    text-align: center;
    width: 100%;
    padding: 20px 30px;
    margin: 0 auto;
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    background-color: #d9a95b
}

.actions__block-subtitle {
    font-size: 25px;
    font-weight: 700;
    line-height: 1
}

.actions__block-action {
    color: #fff;
    text-align: center
}

.actions__block-action span {
    display: block;
    text-align: center;
    margin-bottom: 10px;
    border-radius: 5px;
    color: red;
    font-weight: 600;
    background-color: #fff;
    padding: 5px 7px
}

.actions__block-form {
    display: block;
    text-align: center;
    width: 100%
}

.actions__block-form input[type=text] {
    padding: 10px 20px;
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 20px;
    font-weight: 700;
    border-radius: 30px
}

.actions__block-form input[type=submit] {
    cursor: pointer;
    transition: all .5s ease
}

.actions__block-form input[type=submit]:hover {
    background-color: rgba(51, 48, 41, .97)
}

.section-company {
    background: url(../images/bg/fon-footer.jpg);
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    padding: 0
}

.section-company__bg {
    padding: 30px 0
}

.section-company__bg.blur {
    background: rgba(217, 169, 91, .5)
}

.section-company .section__head h3 {
    color: #fff
}

.section-company .section__head h3 span::after {
    background-color: #333029
}

.section-company__content {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    font-weight: 500
}

.company-content__block {
    flex: 0 0 50%;
    max-width: 50%;
    padding-right: 15px
}

.company-content__left {
    background-color: #fff;
    padding: 20px 30px;
    box-shadow: 0 15px 30px 0 rgba(0, 0, 0, .25);
    border-radius: 5px
}

.company-content__right {
    padding-right: 0;
    padding-left: 15px
}

.company-slider .slick-list {
    overflow: hidden
}

.company-slider .slick-track {
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
    height: 100%
}

.company-slider__item {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    padding: 0 5px;
    max-width: 100%;
    height: 100%;
    min-height: 100%;
    z-index: 1
}

.company-slider__item a {
    position: relative;
    overflow: hidden
}

.company-slider__item img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    padding: 0;
    margin: 0
}

.company-slider__item img:hover {
    transform: scale(1.2)
}

.company-slider__item-data {
    position: absolute;
    top: -15px;
    background-color: rgba(51, 48, 41, .97);
    left: 50%;
    transform: translateX(-50%);
    padding: 5px 10px;
    color: #d9a95b
}

.company-slider .slick-arrow {
    position: absolute;
    display: flex;
    align-items: center;
    top: 50%;
    margin: -30px 0 0 0;
    z-index: 10000;
    font-size: 0;
    width: 35px;
    height: 60px;
    cursor: pointer;
    background-color: rgba(0, 0, 0, .507);
    transition: all .6s ease 0s
}

.company-slider .slick-arrow i {
    font-size: 20px;
    color: #fff;
    margin: 0 auto
}

.company-slider .slick-arrow:hover {
    background-color: #333029
}

.company-slider .slick-arrow.slick-prev {
    right: 10px
}

.company-slider .slick-arrow.slick-next {
    left: 10px;
    transform: scaleX(-1)
}

.company-slider .slick-arrow.slick-disabled {
    opacity: .2
}

.company-slider .slick-dots {
    position: absolute;
    bottom: 16px;
    width: 100%;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.company-slider .slick-dots li {
    list-style: none;
    margin: 0 10px
}

.company-slider .slick-dots button {
    font-size: 0;
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 50%;
    cursor: pointer
}

.company-slider .slick-dots li.slick-active button {
    background-color: transparent;
    border: 1px solid #fff;
    cursor: none
}

.sliderCompanyBig {
    position: relative;
    margin-bottom: 20px
}

.sliderCompanyBig__item {
    color: rgba(0, 0, 0, .507)
}

.sliderCompanyBig__item a {
    width: 100%;
    min-width: 100%
}

.sliderCompanyBig__item img {
    display: block;
    width: 100%;
    max-height: 230px;
    -o-object-fit: cover;
    object-fit: cover
}

.sliderCompany {
    position: relative;
    overflow: hidden;
    margin: 0 -5px
}

.sliderCompany__item {
    padding: 0 5px
}

.material-content__head {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    padding: 10px 20px
}

.material-content__title {
    padding: 10px 0;
    margin: 0 10px;
    cursor: pointer;
    font-size: 20px;
    font-weight: 700;
    position: relative
}

.material-content__title span::before {
    position: absolute;
    left: 0;
    bottom: 7px;
    right: 0;
    height: 3px;
    content: "";
    transform: scale(0);
    transform-origin: center;
    transform-style: preserve-3d;
    transition: all .4s cubic-bezier(.62, .21, .45, 1.52)
}

.material-content__title:hover>span::before {
    transform: scaleX(1);
    background: #d9a95b
}

.material-content__title.active {
    color: #d9a95b;
    cursor: default
}

.material-content__title.active span::before {
    position: absolute;
    left: 0;
    bottom: 7px;
    right: 0;
    height: 3px;
    content: "";
    background: #1e1e21;
    transform: scaleX(1)
}

.material-content__title.active:hover>span::before {
    background: #1e1e21
}

.material-content__body {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around
}

.material-content__block {
    flex: 0 0 20%;
    padding: 15px;
    margin-top: 20px;
    position: relative;
    transition: all .5s ease
}

.material-content__block .img {
    width: 100%;
    padding-bottom: 96.1538461538%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 100%;
    border: 4px solid #d9a95b
}

.material-content__block.none {
    opacity: 0;
    visibility: hidden;
    position: absolute
}

.material-content__block span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 5px;
    width: 70%;
    background-color: #d9a95b;
    color: #1e1e21;
    padding: 4px 6px;
    border-radius: 7px;
    text-align: center;
    font-weight: 600
}

.material-content__show {
    width: 100%;
    text-align: center;
    padding-top: 30px;
    transition: all .4s ease;
    opacity: 0;
    visibility: hidden;
    height: 0;
    overflow: hidden
}

.material-content__show.active {
    height: auto;
    opacity: 1;
    visibility: visible
}

.material-content__show div {
    cursor: pointer
}

.material-content__show a {
    display: inline-block;
    margin: 0 auto;
    color: #fff
}

.section-firms {
    width: 100%;
    z-index: 0;
    background: url(../images/bg/fon-footer.jpg);
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed
}

.section-firms::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    opacity: .8;
    width: 100%;
    height: 100%;
    z-index: -1
}

.section-firms .section__head h2 {
    color: #fff
}

.firms-content__items {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: stretch
}

.firms-content__item {
    flex: 1 1 15.6%;
    padding: 10px
}

.firms-content__item-box {
    background-color: #fff;
    border-radius: 5px;
    padding: 10px;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.firms-content__item-box img {
    width: 100%;
    max-width: 100%
}

.kitchen-content__items {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around
}

.kitchen-content__item {
    flex: 0 0 33.333%;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    padding: 15px 15px
}

.kitchen-content__box {
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
    border-radius: 7px;
    overflow: hidden;
    border: 1px solid #f5f0ea;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, .22)
}

.kitchen-content__img {
    position: relative;
    overflow: hidden;
    padding: 0
}

.kitchen-content__img a {
    overflow: hidden;
    display: block
}

.kitchen-content__img a img {
    padding: 0
}

.kitchen-content__img a img:hover {
    transform: scale(1.2)
}

.kitchen-content__content {
    flex: 1 1 auto;
    padding: 20px;
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
    align-content: stretch
}

.kitchen-content .title {
    font-weight: 700;
    font-size: 20px;
    padding-bottom: 10px
}

.kitchen-content .text {
    font-weight: 500;
    font-size: 12px
}

.kitchen-content__content-param {
    padding-top: 10px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: start
}

.kitchen-content__content-row {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    font-weight: 700;
    font-size: 12px;
    line-height: .7
}

.kitchen-content__content-row .title {
    font-weight: 500;
    font-size: 12px
}

.kitchen-content__content-row .text {
    text-align: right;
    font-weight: 700
}

.kitchen-content__content-row::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 5px;
    width: 100%;
    height: 1px;
    background-color: #f5f0ea
}

.section-edges__content {
    width: 100%;
    min-width: 320px;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around
}

.edges-content {
    position: relative;
    padding: 100px 0 20px
}

.edges-content__item {
    width: calc(16.67% - 15px);
    box-sizing: border-box;
    padding: 10px 0 50px
}

.edges-content__block {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    align-items: center;
    height: 127px;
    padding: 60px 10px 0;
    background: #fff;
    border: 1px solid #f5f0ea;
    border-radius: 10px;
    position: relative
}

.edges-content__block img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%)
}

.edges-content__block p {
    white-space: normal;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;
    font-weight: 400;
    text-align: center
}

.edges-content__block p span {
    white-space: normal;
    font-weight: 600
}

.edges-content__bottom {
    position: relative;
    width: 100%;
    height: 33px;
    overflow: hidden
}

.edges-content__box {
    position: absolute;
    width: 66px;
    height: 66px;
    left: 50%;
    bottom: -33px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: #f5f0ea;
    display: flex;
    justify-content: center
}

.edges-content__box span {
    padding-top: 9px;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    text-transform: uppercase
}

.jobs {
    width: 100%;
    z-index: 1;
    background: url(../images/bg/fon-footer.jpg);
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat
}

.jobs::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    opacity: .8;
    width: 100%;
    height: 100%;
    z-index: 0
}

.jobs h2 {
    padding: 20px 0;
    color: #d9a95b
}

.slider-gallery-jobs {
    position: relative;
    padding: 10px 30px 40px
}

.slider-gallery-jobs .slick-list {
    overflow: hidden
}

.slider-gallery-jobs .slick-track {
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
    height: 100%
}

.slider-gallery-jobs__item {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    padding: 0 5px;
    max-width: 100%;
    height: 100%;
    min-height: 100%;
    z-index: 1
}

.slider-gallery-jobs__item a {
    position: relative;
    overflow: hidden
}

.slider-gallery-jobs__item img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    padding: 0;
    margin: 0
}

.slider-gallery-jobs__item img:hover {
    transform: scale(1.2)
}

.slider-gallery-jobs__item-data {
    position: absolute;
    top: -15px;
    background-color: rgba(51, 48, 41, .97);
    left: 50%;
    transform: translateX(-50%);
    padding: 5px 10px;
    color: #d9a95b;
    white-space: nowrap
}

.slider-gallery-jobs .slick-arrow {
    position: absolute;
    display: flex;
    align-items: center;
    top: 50%;
    margin: -30px 0 0 0;
    z-index: 10;
    font-size: 0;
    width: 35px;
    height: 60px;
    cursor: pointer;
    background-color: rgba(0, 0, 0, .507);
    transition: all .6s ease 0s
}

.slider-gallery-jobs .slick-arrow i {
    font-size: 20px;
    color: #fff;
    margin: 0 auto
}

.slider-gallery-jobs .slick-arrow:hover {
    background-color: #333029
}

.slider-gallery-jobs .slick-arrow.slick-prev {
    right: 10px
}

.slider-gallery-jobs .slick-arrow.slick-next {
    left: 10px;
    transform: scaleX(-1)
}

.slider-gallery-jobs .slick-arrow.slick-disabled {
    opacity: .2
}

.slider-gallery-jobs .slick-dots {
    position: absolute;
    bottom: 16px;
    width: 100%;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.slider-gallery-jobs .slick-dots li {
    list-style: none;
    margin: 0 10px
}

.slider-gallery-jobs .slick-dots button {
    font-size: 0;
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 50%;
    cursor: pointer
}

.slider-gallery-jobs .slick-dots li.slick-active button {
    background-color: transparent;
    border: 1px solid #fff;
    cursor: none
}

.slider-gallery-jobs__box {
    position: relative;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    align-items: center;
    padding: 20px 15px 0;
    background-color: #fff;
    cursor: pointer;
    min-height: 270px
}

.slider-gallery-jobs__box p {
    font-weight: 600;
    padding-bottom: 20px;
    text-align: center
}

.slider-gallery-jobs__box span {
    text-align: center
}

.slider-gallery-jobs__box .link {
    position: relative;
    width: 100%;
    height: 33px;
    overflow: hidden;
    margin-top: 20px
}

.slider-gallery-jobs__box .link span {
    display: block;
    width: 100%;
    text-align: center;
    z-index: 1
}

.slider-gallery-jobs__box .link span i {
    position: relative;
    display: block;
    padding-top: 10px;
    z-index: 1;
    transition: all .2s linear
}

.slider-gallery-jobs__box .link span::after {
    content: "";
    position: absolute;
    width: 66px;
    height: 66px;
    left: 50%;
    bottom: -33px;
    transform: translateX(-50%);
    border-radius: 50%;
    background-color: #d9a95b;
    display: flex;
    justify-content: center;
    transition: all .4s linear;
    transition-delay: .1s
}

.slider-gallery-jobs__box:hover .link span::after {
    background-color: #1e1e21;
    color: #d9a95b
}

.slider-gallery-jobs__box:hover .link span i {
    transform: rotate(180deg) translateY(-7px);
    color: #d9a95b
}

.slider-gallery-jobs__options .price {
    text-align: center
}

.slider-gallery-jobs__options .price span {
    color: #1e1e21;
    font-weight: 700;
    font-size: 25px
}

.slider-gallery-jobs__options span {
    display: block;
    width: 100%;
    text-align: center
}

.questions-answers {
    background: url(../images/bg/fon-footer.jpg);
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    padding: 0
}

.questions-answers__bg {
    padding: 30px 0
}

.questions-answers__bg.blur {
    background: rgba(217, 169, 91, .5)
}

.questions-answers .section__head h3 {
    color: #fff
}

.questions-answers .block {
    padding: 20px 0 20px 0
}

.questions-answers .block__item {
    margin: 0 0 10px 0
}

.questions-answers .block__title {
    text-transform: uppercase;
    letter-spacing: 2px;
    position: relative;
    padding: 8px 30px 8px 40px;
    cursor: pointer;
    background-color: rgba(51, 48, 41, .97);
    color: #fff
}

.questions-answers .block__title::after,
.questions-answers .block__title::before {
    content: "";
    width: 10px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    transition: all .3s ease 0s
}

.questions-answers .block__title.active::after,
.questions-answers .block__title.active::before {
    background-color: #fff
}

.questions-answers .block__title.active::before {
    transform: rotate(-40deg)
}

.questions-answers .block__title.active::after {
    transform: rotate(40deg)
}

.questions-answers .block__title::before {
    transform: rotate(40deg);
    left: 8px
}

.questions-answers .block__title::after {
    transform: rotate(-40deg);
    left: 16px
}

.questions-answers .block__text {
    display: none;
    padding: 10px 20px;
    background-color: #fff
}

.section-contact .container {
    background-image: url(../images/contact/fon1.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    transition: all .3s ease
}

.section-contact__body {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    min-height: 500px
}

.section-contact__block-hid {
    position: absolute;
    min-height: 500px;
    display: none
}

.section-contact__block {
    flex: 0 0 40%;
    padding: 20px;
    position: relative;
    z-index: 6;
    background: rgba(255, 255, 255, .6);
    transition: all .3s ease
}

.section-contact::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .2);
    z-index: -1
}

.section-contact:hover .container {
    background-image: url(../images/contact/fon2.jpg)
}

.contact-block__title h4 {
    font-weight: 700;
    font-size: 28px;
    text-align: center
}

.contact-block__title span {
    display: block;
    text-align: center;
    padding: 10px 0 20px;
    font-weight: 600
}

.contact-block__contact-row {
    display: flex;
    justify-content: start;
    padding-bottom: 10px;
    font-weight: 500
}

.contact-block__contact-row i {
    height: 100%;
    min-height: 100%;
    font-size: 20px;
    padding-right: 20px
}

.contact-block__contact-row a {
    font-weight: 500;
    color: #1e1e21
}

.contact-block__messenger {
    text-align: center;
    padding-top: 10px
}

.contact-block__messenger a {
    display: inline-block;
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.contact-block__messenger a.viber {
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

.contact-block__messenger a img {
    width: 35px;
    margin: 20px 5px 0
}

.contact-block__form {
    padding: 30px 0;
    text-align: center
}

.section-location {
    background: url(../images/bg/fon-footer.jpg);
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 0
}

.section-location__bg {
    padding: 30px 0 40px
}

.section-location .section__head {
    color: #d9a95b
}

.section-location .section__head h3 {
    color: #fff
}

.section-location__content {
    position: relative;
    height: 450px
}

.section-location__content-map {
    height: 100%;
    width: 100%
}

.section-location__content-img {
    position: absolute;
    top: 30px;
    left: 70px;
    cursor: pointer;
    width: 350px
}


.portfolio-gallery-slide__inner {
    height: 350px;
    margin: 15px;
    border-radius: 7px;
    overflow: hidden;
    border: 1px solid #f5f0ea;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, .22);
}

.portfolio-gallery-slide__inner img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.portfolio-gallery-wrap .slick-arrow {
    display: block;
    width: 33px;
    height: 33px;
    border-radius: 50%;
    margin: 0;
    padding: 0;
    font-size: 0;
    background-color: #d9a95b;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    cursor: pointer;
    z-index: 5;
}

.portfolio-gallery-wrap .slick-arrow::before {
    content: "\e903";
    font-family: icons !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    font-size: 20px;
}

.portfolio-gallery-wrap .slick-next {
    right: 0;
}

.portfolio-gallery-wrap .slick-prev {
    left: 0;
}

.portfolio-gallery-wrap .slick-prev::before {
    transform: translate(-50%, -50%) rotate(180deg);
}

.footer {
    width: 100%;
    padding: 30px 0 0 0;
    position: relative;
    z-index: 1;
    background: url(../images/bg/fon-footer.jpg);
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat
}

.footer::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    opacity: .8;
    width: 100%;
    height: 100%;
    z-index: 0
}

.footer__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between
}

.footer_colomn {
    flex: 1 1 33.333%;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    padding: 0 15px
}

.footer_title {
    width: 100%;
    display: block;
    padding: 10px 0 20px;
    color: #fff;
    font-weight: 500;
    position: relative;
    z-index: 1
}

.footer_title::before {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    border-radius: 3px;
    background-color: #fff;
    top: 59%;
    left: 70%;
    z-index: 3
}

.footer_title::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 4px;
    background-color: #d9a95b;
    top: 70%;
    left: 0;
    z-index: 2
}

.footer_subtitle {
    width: 100%;
    display: block;
    padding: 0 0 10px;
    color: #fff;
    font-weight: 500;
    position: relative;
    z-index: 1
}

.footer_subtitle::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #d9a95b;
    top: 70%;
    left: 0;
    z-index: 1
}

.footer_text {
    width: 100%;
    display: block;
    margin: 0 0 22px 0;
    color: #fff;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.5;
    position: relative;
    z-index: 1
}

.footer_text a {
    color: #fff
}

.footer-menu {
    margin: 16px 0 0 0;
}

.footer-menu li {
    position: relative;
    margin-bottom: 14px;
    padding: 0 0 0 24px;
}

.footer-menu li::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #d9a95b;
}

.footer-menu li a {
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
}

.footer__logo {
    margin: 30px 0 0 0
}

.footer__logo img {
    width: 150px;
    border-radius: 100%
}

.footer__manager {
    position: relative;
    padding: 3px;
    margin-bottom: 10px
}

.footer__manager-photo {
    width: 250px;
    height: 250px;
    position: relative;
    overflow: hidden;
    border-radius: 50%;
}

.footer__manager img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.footer__manager span {
    width: 100%;
    display: block;
    font-weight: 700;
    color: #fff;
    padding: 3px;
    text-align: center
}

.footer__manager span span {
    font-weight: 400
}

.footer__priliv-link {
    width: 100%;
    margin-bottom: 20px;
}

.footer__priliv-link a {
    display: flex;
    align-items: center;
}

.footer__priliv-link a img {
    width: 40px
}

.footer__priliv-link a span {
    padding: 0 10px;
    color: #fff;
    font-weight: 500;
    font-size: 12px
}

.footer-contact {
    text-align: center;
    width: 100%
}

.footer-contact__phone {
    color: #fff;
    font-weight: 700;
    font-size: 20px;
    padding: 5px 10px;
    display: block
}

.footer-contact__messenger a {
    display: inline-block;
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.footer-contact__messenger a#viber-footer {
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

.footer-contact__messenger img {
    width: 30px;
    margin: 20px 5px 0
}

.footer-contact__call-phone {
    margin: 10px 0 40px
}

.footer-contact__call-phone:hover i {
    color: #fff
}

.footer-bottom {
    position: relative;
    z-index: 1
}

.footer-bottom__text {
    color: #fff;
    font-size: 12px
}

.popup {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .8);
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    overflow-y: auto;
    overflow-x: hidden;
    transition: all .8s ease 0s;
    z-index: 600
}

.popup.open {
    opacity: 1;
    visibility: visible
}

.popup.open .popup__content {
    opacity: 1;
    transform: perspective(600px) translate(0, 0) rotateX(0)
}

.popup__body {
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 10px
}

.popup__content {
    background-color: #fff;
    color: #000;
    max-width: 600px;
    padding: 30px;
    position: relative;
    border: 5px solid #d9a95b;
    border-radius: 15px;
    transform: perspective(600px) translate(0, -100%) rotateX(45deg);
    opacity: 0;
    transition: all .6s ease 0s;
    z-index: 1
}

#avant>div>div {
    max-width: 900px;
}

.popup__content_image {
    padding: 0
}

.popup__close {
    position: absolute;
    right: 20px;
    top: -5px;
    width: 40px;
    height: 40px;
    font-size: 20px;
    font-weight: 600;
    color: #000;
    background-color: #fff;
    border: 5px solid #d9a95b;
    border-radius: 50%;
    transition: all .6s ease 0s;
    display: flex;
    align-items: center;
    justify-content: center
}

.popup__close i {
    color: rgba(0, 0, 0, .925);
    transition: all .6s ease 0s
}

.popup__close:hover i {
    transform: scaleX(-1);
    color: red
}

.popup__title {
    font-size: 40px;
    line-height: 1;
    font-weight: 800;
    margin: 0 0 1em 0;
    display: flex;
    justify-content: space-between
}

.popup__title i {
    color: #1e1e21;
    margin-right: 20px
}

.popup__box {
    display: flex
}

.popup__text {
    flex: 1 1 20%;
    display: flex
}

.popup__text-img {
    max-width: 100%;
    background-color: #d9a95b;
    padding: 12px;
    border-radius: 5px
}

.popup__text-img img {
    width: 100%;
    border-radius: 50%
}

.popup__text-img span {
    color: #1e1e21;
    font-weight: 600;
    display: block;
    text-align: center
}

.popup__form {
    padding: 10px 15px;
    flex: 1 1 50%;
    text-align: center
}

.popup__form input[type=tel],
.popup__form input[type=text] {
    border: 2px solid #d9a95b;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 50;
    width: 100%;
    padding: 5px 10px;
    text-align: center
}

.popup__form input[type=submit] {
    margin: 30px auto 0 auto;
    display: block;
    cursor: pointer
}

.popup__form input[type=submit]:hover {
    background-color: #1e1e21;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .4)
}

.popup__image {
    min-width: 100%
}

.popup__image img {
    min-width: 100%;
    vertical-align: top
}

.popup-call-back {
    min-width: 320px
}

.info-text-block {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    background-color: #fff;
    border: 1px solid #f5f0ea;
    border-radius: 6px;
    padding: 30px;
    box-shadow: 0 0 10px 4px rgb(172 148 221/20%);
}

.info-text-block h1,
.info-text-block h2,
.info-text-block h3 {
    font-weight: 700;
    margin: 0 0 24px 0;
}

.info-text-block p {
    margin: 0 0 14px 0;
}

.info-text-block h1 {
    font-size: 31px;
    text-align: center;
}

.info-text-block h2 {
    font-size: 26px;
}

.info-text-block h3 {
    font-size: 22px;
}

.articles-grid {
    display: flex;
    flex-flow: row wrap;
    margin-left: -8px;
    margin-right: -8px;
}

.articles-grid__col {
    flex: 0 0 33.3%;
    max-width: 33.3%;
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 16px;
}

@media screen and (max-width: 990px) {
    .articles-grid__col {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media screen and (max-width: 770px) {
    .articles-grid__col {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

.article-post-preview {
    height: 100%;
    display: flex;
    flex-flow: column wrap;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #f5f0ea;
    box-shadow: 0 0 16px 0 rgb(0 0 0 / 22%);
    position: relative;
    background-color: #FFF;
}

.article-post-preview__main-link {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    font-size: 0;
    text-decoration: none;
}

.article-post-preview__thumb {
    position: relative;
    overflow: hidden;
    height: 360px;
    background-color: #000;
}

.article-post-preview__thumb>img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 1;
    transition: 0.3s ease;
}

.article-post-preview__caption {
    flex-grow: 1;
    padding: 22px;
}

.article-post-preview__title {
    font-weight: 700;
    font-size: 18px;
    line-height: 1.5;
    margin: 16px 0 0 0;
    padding-top: 16px;
    border-top: 1px solid #f5f0ea;
}

.article-post-preview__date {
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: #84827c;
}

.article-post-preview__tags {
    position: absolute;
    top: 8px;
    left: 8px;
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    z-index: 2;
}

.article-post-preview__tags .article-tag {
    padding: 4px 12px;
    background-color: #d9a95b;
    color: #FFF;
    text-align: center;
    font-weight: 300;
    font-size: 14px;
    line-height: 1;
    border-radius: 32px;
    margin-bottom: 4px;
}

.article-post-preview__tags .article-tag:not(:last-child) {
    margin-right: 4px;
}

.article-post-preview:hover .article-post-preview__thumb>img {
    opacity: .7;
}

/* Entry page */
.page-breadcrumbs {
    padding-bottom: 0;
}

.breadcrumbs-wrap {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: #84827c;
    padding: 20px;
    background-color: #f5f0ea;
    border-radius: 10px;
}

.breadcrumbs-wrap a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid #d9a95b;
    padding-bottom: 2px;
}

.breadcrumbs-wrap a:hover {
    border-color: transparent;
}

.breadcrumbs-wrap__sep {
    width: 6px;
    height: 6px;
    background-color: #d9a95b;
    margin: 0 12px;
}

.breadcrumbs-wrap .current-item {
    color: #1e1e21;
    font-weight: 600;
}

.entry-page__title {
    font-weight: 900;
    font-size: 28px;
    line-height: 1;
    text-transform: uppercase;
    margin: 0 0 24px 0;
}

.entry-page__title::after {
    content: '';
    display: block;
    width: 88px;
    height: 4px;
    background-color: #d9a95b;
    margin: 12px 0 0 0;
}

.entry-page__content {
    font-size: 16px;
    line-height: 1.5;
}

.entry-page__content p {
    margin: 0 0 16px 0;
}

.entry-page__content ul,
.entry-page__content ol {
    list-style: initial;
    margin: 16px 0 16px 32px;
}

.entry-page__content a {
    color: #d9a95b;
    text-decoration: none;
}

.entry-page__content .wp-block-gallery {
    margin: 32px 0;
}

.entry-page__content .wp-block-gallery .wp-block-image {
    border: 1px solid #f5f0ea;
    box-shadow: 0 0 16px 0 rgb(0 0 0 / 22%);
    border-radius: 6px;
}

@media (max-width:1120px) {
    .header-top__list li.box2 {
        display: none
    }
}

@media (max-width:1115px) {
    .edges-content__item {
        width: calc(20% - 15px)
    }
}

@media (max-width:1040px) {
    .header-burger__burger {
        width: 30px;
        margin: 0
    }
}

@media (max-width:1000px) {
    .edges-content__item {
        width: calc(25% - 15px)
    }

    .edges-content__item {
        width: calc(25% - 15px)
    }
}

@media (max-width:960px) {
    .section-contact__block {
        flex: 0 0 45%
    }
}

@media (max-width:900px) {
    .footer__body {
        display: flex;
        justify-content: center
    }

    .footer_colomn {
        flex: 0 0 50%
    }
}

@media (max-width:880px) {
    .material-content__block {
        flex: 0 0 25%
    }
}

@media (max-width:860px) {
    .section-contact__block {
        flex: 0 0 50%
    }
}

@media (max-width:850px) {
    .wrapper {
        padding: 85px 0 0
    }

    .header {
        background-color: rgba(51, 48, 41, .97)
    }

    .header__top {
        padding: 10px 0
    }

    .header-burger {
        position: relative;
        opacity: 1;
        visibility: visible
    }

    .header-top__logo img {
        max-width: 110px
    }

    .header-top__list li {
        padding: 0 20px
    }

    .header-top__list li.box3 {
        display: none
    }

    .header-top__list li::before {
        width: 0
    }

    .header-top__button {
        display: block
    }

    .header-body {
        display: none
    }

    .header-body__list {
        display: none
    }

    .header-body__box {
        padding: 10px 0
    }

    .mobile-menu {
        display: block
    }
}

@media (max-width:840px) {
    .kitchen-content__item {
        flex: 0 0 50%
    }
}

@media (max-width:800px) {
    .fancybox-thumbs {
        width: 110px
    }

    .fancybox-show-thumbs .fancybox-inner {
        right: 110px
    }

    .fancybox-thumbs>ul>li {
        max-width: calc(100% - 10px)
    }

    .firms-content__item {
        flex: 0 0 33.333%
    }

    .contact-block__form a {
        padding: 10px 10px;
        line-height: 1
    }
}

@media (max-width:790px) {
    .company-content__block {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 15px 0
    }

    .company-content__right {
        padding: 15px 0
    }
}

@media (max-width:780px) {
    .edges-content__item {
        width: calc(33.333% - 15px)
    }

    .section-contact__block {
        flex: 0 0 55%
    }

    .section-location__content-img {
        width: 250px
    }
}

@media (max-width:745px) {
    .header-top__button {
        display: none
    }
}

@media (max-width:730px) {
    .section-contact__block {
        flex: 0 0 60%
    }
}

@media (max-width:700px) {
    .material-content__block {
        flex: 0 0 33.333%
    }
}

@media (max-width:670px) {
    .section-contact__body {
        flex-flow: column nowrap
    }

    .section-contact__block-hid {
        display: block;
        position: relative
    }
}

@media (max-width:650px) {
    .wrapper {
        padding: 77px 0 0
    }

    .header-top__logo img {
        max-width: 90px
    }
}

@media (max-width:640px) {
    .footer_colomn {
        flex: 0 0 100%
    }
}

@media (max-width:585px) {
    .edges-content__item {
        width: calc(50% - 15px)
    }
}

@media (max-width:560px) {
    .material-content__block {
        flex: 0 0 50%
    }
}

@media (max-width:550px) {
    .wrapper {
        padding: 75px 0 0
    }

    .header-top__logo img {
        max-width: 80px
    }

    .section-location__content {
        height: auto
    }

    .section-location__content-img {
        position: relative;
        width: 100%;
        top: 0;
        left: 0
    }

    .popup__title {
        font-size: 35px
    }
}

@media (max-width:500px) {
    .kitchen-content__item {
        flex: 0 0 100%
    }
}

@media (max-width:490px) {
    .popup__title {
        font-size: 30px
    }
}

@media (max-width:480px) {
    .header-top__list {
        display: none
    }
}

@media (max-width:470px) {
    .popup__box {
        flex-flow: column
    }

    .popup__text {
        flex: 1 1 100%;
        padding: 0 20px
    }

    .popup__form {
        margin: 20px 0 0 0;
        flex: 0 0 100%
    }
}

@media (max-width:450px) {
    .wrapper {
        padding: 62px 0 0
    }

    .header-top__logo img {
        max-width: 60px
    }
}

@media (max-width:410px) {
    .edges-content__item {
        width: 100%
    }
}

@media (max-width:400px) {
    .firms-content__item {
        flex: 0 0 50%
    }
}

@media (max-width:390px) {
    .material-content__block {
        flex: 0 0 100%
    }
}

@media (max-width:350px) {
    .wrapper {
        padding: 52px 0 0
    }

    .header-top__logo img {
        max-width: 40px
    }
}

.advantages {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.advantage-group {
    display: flex;
    flex-wrap: wrap;
}

.advantage {
    width: 48%;
    /* Ширина каждого преимущества внутри блока */
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    /* Отступ между преимуществами */
}

.advantage img {
    margin-left: 20px;
    /* Отступ слева от изображения */
}

.advantage .text-content {
    flex: 1;
    /* Растягиваем текстовый контент, чтобы занять доступное пространство */
}

.title_advantage {
    margin-bottom: 10px;
    /* font-size: 24px; */
    font-weight: 700;
    text-transform: uppercase;
}

@media screen and (max-width: 768px) {
    .advantage-group {
        width: 100%;
        /* При уменьшении экрана делаем блоки с преимуществами на всю ширину */
    }

    .advantage {
        width: 100%;
        /* При уменьшении экрана каждое преимущество занимает всю ширину блока */
    }

    .advantage img {
        margin-left: 0;
        /* Убираем отступ слева от изображения на узких экранах */
        margin-right: 20px;
        /* Возвращаем отступ справа на узких экранах */
    }
}

.action-mobile {
    display: none;
}

@media screen and (max-width: 768px) {
    #actions>img.action-desktop {
        display: none;
    }

    .action-mobile {
        display: block;
    }
}

@media (max-width: 480px) {
    .header-top__list {
        display: block !important;
    }
}

.popup__firms {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
}

.popup__firms .popup__firms__content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
}

.popup__firms .popup__firms__close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}

.popup__firms .popup__firms__close:hover,
.popup__firms .popup__firms__close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.img__popup {
    display: flex;
    justify-content: space-between;
}

@media (max-width: 900px) {
    .img__popup {
        display: block;
    }
}

.image-column {
    text-align: center;
    margin-right: 20px;
}

.section-clients {
    padding: 50px 0;
    background-color: #f9f9f9;
}

.content-box {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.section-title {
    text-align: center;
    font-size: 2em;
    margin-bottom: 30px;
}

.clients-carousel {
    display: flex;
    justify-content: center;
}

.client-logo {
    padding: 10px;
}

.client-logo__title {
    width: 100%;
    padding: 12px 6px;
    background-color: #fff;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    -ms-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
}

.client-logo__inner {
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-end;
    height: 250px;
    padding: 10px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    outline: 2px solid #e1e1e1;
    position: relative;
    overflow: hidden;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.clients-carousel .slick-arrow {
    display: block;
    width: 33px;
    height: 33px;
    border-radius: 50%;
    margin: 0;
    padding: 0;
    font-size: 0;
    background-color: #d9a95b;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    cursor: pointer;
    z-index: 5;
}

.clients-carousel .slick-arrow::before {
    content: "\e903";
    font-family: icons !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    font-size: 20px;
}

.clients-carousel .slick-prev {
    left: -40px;
}

.clients-carousel .slick-prev::before {
    transform: translate(-50%, -50%) rotate(180deg);
}

.clients-carousel .slick-next {
    right: -40px;
}

.clients-carousel .slick-next::before {
    transform: translate(-50%, -50%);
}

.personal_data {
    color: #fff;
    text-decoration: none;
    display: block;
    margin-block: 5px;
}

.wrapper_pd_cf7 {
    margin-top: 15px;
}