* {
    box-sizing: border-box;
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
    -webkit-font-smoothing: antialiased
}

hr {
    border: none;
    border-top: 1px solid #d4d4d4
}

button, input, select, textarea {
    outline: 0;
    font-family: Graphik, sans-serif;
    font-size: 15px;
    cursor: pointer
}

.semantic-button {
    border: none;
    background: 0 0;
    font: inherit
}

.accident {
    background: #f3f2f1
}

.accident .form__input {
    border-color: #b3b3b3
}

.form__row {
    display: block
}

.form__row + .form__row {
    margin-top: 16px
}

.form__label {
    display: block;
    font-size: 13px;
    margin-bottom: 4px
}

.form__inline-label {
    display: inline-block;
    margin-left: 8px
}

.form__error-label {
    margin-top: 4px;
    display: none;
    color: #d9252a
}

.form__input {
    width: 100%;
    height: 50px;
    line-height: 50px;
    padding: 0 20px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: .3s
}

.form__input:focus, .form__input:hover {
    border-color: #999
}

.form__input[disabled] {
    border-color: #ccc;
    cursor: default;
    opacity: .5
}

.form__input--arrow {
    background: url(../img/select-arrow.svg) no-repeat 97% 50% #fff;
    background-position: calc(100% - 10px) 50%
}

.form__input--arrow::-ms-expand {
    display: none
}

.form__input--success.form__input--success {
    border-color: #0f9954
}

.form__input--error, .form__input:-moz-ui-invalid {
    border-color: #d9252a;
    box-shadow: none
}

.right {
    float: right
}

.left {
    float: left
}

.divider {
    margin: 35px 0
}

.divider, .divider--small {
    border: none;
    border-top: 1px solid #d4d4d4
}

.divider--small {
    margin: 25px 0
}

.panel {
    padding: 38px 20px 40px;
    border: 1px solid #d4d4d4;
    border-radius: 3px
}

.panel + .panel {
    margin-top: 40px
}

.panel--composite {
    padding: 0 !important
}

.panel__content {
    padding: 38px 20px 40px
}

.panel__footer {
    background: #f3f2f1;
    border-top: 1px solid #d4d4d4;
    padding: 24px 20px 27px
}

.panel__footer--justify {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.panel--error {
    border: none
}

.panel--error .panel__content {
    border: 1px solid #d9252a;
    border-radius: 3px 3px 0 0
}

.panel--error .panel__footer {
    border: 1px solid #d4d4d4;
    border-top: none
}

.panel--error .panel__footer:last-child {
    border-radius: 0 0 3px 3px
}

.alert {
    padding: 35px 50px 35px 20px;
    margin: -20px 0 20px;
    background: #b7e8cf;
    border-radius: 3px;
    position: relative
}

.alert + .alert {
    margin-top: 20px
}

.alert--error {
    background: #f3bdbf
}

.alert__close {
    position: absolute;
    right: 20px;
    top: 22px;
    width: 16px;
    height: 16px;
    background: url(../img/close.svg);
    cursor: pointer;
    transition: .25s
}

.alert__close:hover {
    opacity: .7
}

.mt-30 {
    margin-top: 30px
}

@media (min-width: 768px) {
    .alert {
        padding-left: 50px;
        padding-right: 62px
    }
    
    .panel, .panel__content, .panel__footer {
        padding-left: 50px;
        padding-right: 50px
    }
}

.toggle {
    width: 75px;
    height: 30px;
    position: relative;
    display: inline-block;
    cursor: pointer;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.toggle--inline {
    margin: -5px 0
}

.toggle__input {
    display: none
}

.toggle__faux {
    display: block;
    position: relative;
    width: 75px;
    height: 30px;
    border-radius: 15px;
    margin: 0;
    background-color: #e6e4e3;
    transition: background-color .2s cubic-bezier(.34, .93, .85, .91)
}

.toggle__faux:before {
    content: "";
    position: absolute;
    top: 3px;
    left: 4px;
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 24px;
    background-color: #fff;
    transition: left .2s cubic-bezier(.34, .93, .85, .91);
    z-index: 3
}

.toggle__input:checked ~ .toggle__faux {
    background-color: #12b362
}

.toggle__input:checked ~ .toggle__faux:before {
    left: 46px
}

.toggle__label--after, .toggle__label--before {
    position: absolute;
    top: 0;
    bottom: 0;
    transition: opacity .3s;
    z-index: 2
}

.toggle__label {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    text-align: center;
    line-height: 31px
}

.toggle__label--before {
    right: 31%;
    left: 0;
    color: #fff;
    opacity: 0
}

.toggle__input:checked + .toggle__label .toggle__label--before {
    opacity: 1
}

.toggle__label--after {
    position: absolute;
    right: 0;
    left: 33%;
    opacity: 1
}

.toggle__input:checked + .toggle__label .toggle__label--after {
    opacity: 0;
    transition-duration: .05s
}

.input-check {
    position: relative;
    display: inline-block;
    cursor: pointer;
    margin-bottom: -2px
}

.input-check__native {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    cursor: pointer
}

.input-check__visual {
    width: 15px;
    height: 15px;
    border: 1px solid #0f9954;
    background: #fff;
    display: block;
    border-radius: 3px;
    transition: .25s
}

.input-check__native:focus + .input-check__visual {
    background: rgba(15, 153, 84, .15)
}

.input-check__native:checked + .input-check__visual {
    background: #0f9954
}

.input-check__native:checked + .input-check__visual:before {
    opacity: 1
}

.input-check__visual:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 12px;
    left: 2px;
    top: 0;
    background: url(../img/icon-input-check.svg);
    opacity: 0;
    transition: .25s
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

*, body {
    padding: 0;
    margin: 0
}

body {
    font-family: Graphik, Roboto, Helvetica Neue, sans-serif;
    background: #fff;
    font-size: 15px;
    line-height: 20px;
    color: #1a1a1a
}

.hidden, .visible--desktop, .visible--iphone, .visible--iphone--inline, .visible--phablet, .visible--tablet, .visible--tablet--flex, .visible--tablet-large, .visually-hidden {
    display: none !important
}

@media (min-width: 414px) {
    .visible--only-mini {
        display: none !important
    }
    
    .visible--iphone {
        display: block !important
    }
    
    .visible--iphone--inline {
        display: inline !important
    }
}

@media (min-width: 480px) {
    .visible--phablet {
        display: block !important
    }
}

@media (min-width: 768px) {
    .visible--tablet {
        display: block !important
    }
    
    .visible--tablet--flex {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
    
    .hidden--tablet {
        display: none !important
    }
}

@media (min-width: 1020px) {
    .visible--tablet-large {
        display: block !important
    }
    
    .hidden--tablet-large {
        display: none !important
    }
}

@media (min-width: 1220px) {
    .visible--desktop {
        display: block !important
    }
}

.container {
    max-width: 1020px;
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
    display: block
}

@media (min-width: 1220px) {
    .container {
        max-width: 1480px;
        padding-left: 40px;
        padding-right: 40px
    }
}

.grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -12px
}

.grid__item {
    padding-left: 12px;
    float: left;
    width: 100%
}

.grid__item:after {
    content: "";
    clear: both;
    display: table
}

.grid__item--1-24 {
    width: 4.1666%
}

.grid__item--2-24 {
    width: 8.3333%
}

.grid__item--3-24 {
    width: 12.5%
}

.grid__item--4-24 {
    width: 16.6666%
}

.grid__item--5-24 {
    width: 20.8333%
}

.grid__item--1-4, .grid__item--6-24 {
    width: 25%
}

.grid__item--7-24 {
    width: 29.1666%
}

.grid__item--1-3, .grid__item--8-24 {
    width: 33.3333%
}

.grid__item--9-24 {
    width: 37.5%
}

.grid__item--10-24 {
    width: 41.6666%
}

.grid__item--11-24 {
    width: 45.8333%
}

.grid__item--1-2, .grid__item--12-24, .grid__item--2-4 {
    width: 50%
}

.grid__item--13-24 {
    width: 54.1666%
}

.grid__item--14-24 {
    width: 58.3333%
}

.grid__item--15-24 {
    width: 62.5%
}

.grid__item--16-24, .grid__item--2-3 {
    width: 66.6666%
}

.grid__item--17-24 {
    width: 70.8333%
}

.grid__item--18-24, .grid__item--3-4 {
    width: 75%
}

.grid__item--19-24 {
    width: 79.1666%
}

.grid__item--20-24 {
    width: 83.3333%
}

.grid__item--21-24 {
    width: 87.5%
}

.grid__item--22-24 {
    width: 91.6666%
}

.grid__item--23-24 {
    width: 95.8333%
}

@media (min-width: 414px) {
    .grid {
        margin-left: -23px
    }
    
    .grid__item {
        padding-left: 23px
    }
    
    .grid--small.grid--small {
        margin-left: -20px
    }
    
    .grid--small > .grid__item {
        padding-left: 20px
    }
    
    .grid__item--10-24--iphone {
        width: 41.6666%
    }
    
    .grid__item--11-24--iphone {
        width: 45.8333%
    }
    
    .grid__item--13-24--iphone {
        width: 54.1666%
    }
    
    .grid__item--14-24--iphone {
        width: 58.3333%
    }
}

@media (min-width: 480px) {
    .grid__item--1-4--phablet {
        width: 25%
    }
    
    .grid__item--1-3--phablet {
        width: 33.3333%
    }
    
    .grid__item--1-2--phablet {
        width: 50%
    }
}

@media (min-width: 768px) {
    .grid {
        margin-left: -30px
    }
    
    .grid__item {
        padding-left: 30px
    }
    
    .grid__item--1-24--tablet {
        width: 4.1666%
    }
    
    .grid__item--2-24--tablet {
        width: 8.3333%
    }
    
    .grid__item--3-24--tablet {
        width: 12.5%
    }
    
    .grid__item--4-24--tablet {
        width: 16.6666%
    }
    
    .grid__item--5-24--tablet {
        width: 20.8333%
    }
    
    .grid__item--1-4--tablet, .grid__item--6-24--tablet {
        width: 25%
    }
    
    .grid__item--7-24--tablet {
        width: 29.1666%
    }
    
    .grid__item--1-3--tablet, .grid__item--8-24--tablet {
        width: 33.3333%
    }
    
    .grid__item--9-24--tablet {
        width: 37.5%
    }
    
    .grid__item--10-24--tablet {
        width: 41.6666%
    }
    
    .grid__item--11-24--tablet {
        width: 45.8333%
    }
    
    .grid__item--1-2--tablet, .grid__item--12-24--tablet, .grid__item--2-4--tablet {
        width: 50%
    }
    
    .grid__item--13-24--tablet {
        width: 54.1666%
    }
    
    .grid__item--14-24--tablet {
        width: 58.3333%
    }
    
    .grid__item--15-24--tablet {
        width: 62.5%
    }
    
    .grid__item--16-24--tablet, .grid__item--2-3--tablet {
        width: 66.6666%
    }
    
    .grid__item--17-24--tablet {
        width: 70.8333%
    }
    
    .grid__item--18-24--tablet, .grid__item--3-4--tablet {
        width: 75%
    }
    
    .grid__item--19-24--tablet {
        width: 79.1666%
    }
    
    .grid__item--20-24--tablet {
        width: 83.3333%
    }
    
    .grid__item--21-24--tablet {
        width: 87.5%
    }
    
    .grid__item--22-24--tablet {
        width: 91.6666%
    }
    
    .grid__item--23-24--tablet {
        width: 95.8333%
    }
}

@media (min-width: 1020px) {
    .grid__item--1-4--tablet-large {
        width: 25%
    }
    
    .grid__item--1-3--tablet-large {
        width: 33.3333%
    }
    
    .grid__item--9-24--tablet-large {
        width: 37.5%
    }
    
    .grid__item--1-2--tablet-large {
        width: 50%
    }
    
    .grid__item--15-24--tablet-large {
        width: 62.5%
    }
    
    .grid__item--2-3--tablet-large {
        width: 66.6666%
    }
}

@media (min-width: 1220px) {
    .grid {
        margin-left: -50px
    }
    
    .grid__item {
        padding-left: 50px
    }
    
    .grid__item--1-24--desktop {
        width: 4.1666%
    }
    
    .grid__item--2-24--desktop {
        width: 8.3333%
    }
    
    .grid__item--3-24--desktop {
        width: 12.5%
    }
    
    .grid__item--4-24--desktop {
        width: 16.6666%
    }
    
    .grid__item--5-24--desktop {
        width: 20.8333%
    }
    
    .grid__item--1-4--desktop, .grid__item--6-24--desktop {
        width: 25%
    }
    
    .grid__item--7-24--desktop {
        width: 29.1666%
    }
    
    .grid__item--1-3--desktop, .grid__item--8-24--desktop {
        width: 33.3333%
    }
    
    .grid__item--9-24--desktop {
        width: 37.5%
    }
    
    .grid__item--10-24--desktop {
        width: 41.6666%
    }
    
    .grid__item--11-24--desktop {
        width: 45.8333%
    }
    
    .grid__item--1-2--desktop, .grid__item--12-24--desktop, .grid__item--2-4--desktop {
        width: 50%
    }
    
    .grid__item--13-24--desktop {
        width: 54.1666%
    }
    
    .grid__item--14-24--desktop {
        width: 58.3333%
    }
    
    .grid__item--15-24--desktop {
        width: 62.5%
    }
    
    .grid__item--16-24--desktop, .grid__item--2-3--desktop {
        width: 66.6666%
    }
    
    .grid__item--17-24--desktop {
        width: 70.8333%
    }
    
    .grid__item--18-24--desktop, .grid__item--3-4--desktop {
        width: 75%
    }
    
    .grid__item--19-24--desktop {
        width: 79.1666%
    }
    
    .grid__item--20-24--desktop {
        width: 83.3333%
    }
    
    .grid__item--21-24--desktop {
        width: 87.5%
    }
    
    .grid__item--22-24--desktop {
        width: 91.6666%
    }
    
    .grid__item--23-24--desktop {
        width: 95.8333%
    }
}

.grid--collapse {
    margin-left: 0
}

.grid--collapse > .grid__item {
    padding-left: 0
}

.clearfix:after {
    content: "";
    clear: both;
    display: table
}

a {
    color: inherit;
    text-decoration: none;
    transition: .2s
}

.link, a:not([class]), a[class=""] {
    color: #0f9954
}

.link:focus, .link:hover, a:not([class]):focus, a:not([class]):hover, a[class=""]:focus, a[class=""]:hover {
    color: #0b733f
}

h1, h2, h3 {
    font-weight: 400;
    color: inherit
}

.lead1 {
    font-size: 62px;
    line-height: 70px;
    font-weight: 400
}

.lead2 {
    font-size: 22px
}

.lead2, .lead3 {
    line-height: 30px;
    font-weight: 400
}

.lead3 {
    font-size: 20px;
    color: #666
}

.h1, .h2 {
    font-size: 38px;
    line-height: 40px
}

.h1, .h2, .h3 {
    font-weight: 400
}

.h3 {
    font-size: 22px;
    line-height: 30px
}

.h4 {
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-weight: 700
}

@media (min-width: 768px) {
    .lead2 {
        font-size: 30px;
        line-height: 36px
    }
    
    .h1 {
        font-size: 48px;
        line-height: 60px
    }
}

@media (min-width: 1220px) {
    .lead2 {
        line-height: 40px
    }
    
    .h2 {
        line-height: 50px
    }
}

.note {
    color: #666
}

.note--mini {
    font-size: 13px;
    color: #666
}

.invert {
    background: #1a1a1a;
    color: #fff
}

.invert .note, .invert .note--mini {
    color: #b3b3b3
}

.invert--transparent {
    background: 0 0
}

.paragraph + .paragraph {
    margin-top: 20px
}

.paragraph.note--mini + .paragraph.note--mini {
    margin-top: 10px
}

@font-face {
    font-family: Graphik;
    src: url(../fonts/Graphik-Regular.eot);
    src: url(../fonts/Graphik-Regular.eot?#iefix) format("embedded-opentype"), url(../fonts/Graphik-Regular.woff2) format("woff2"), url(../fonts/Graphik-Regular.woff) format("woff"), url(../fonts/Graphik-Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Graphik;
    src: url(../fonts/Graphik-Medium.eot);
    src: url(../fonts/Graphik-Medium.eot?#iefix) format("embedded-opentype"), url(../fonts/Graphik-Medium.woff2) format("woff2"), url(../fonts/Graphik-Medium.woff) format("woff"), url(../fonts/Graphik-Medium.ttf) format("truetype");
    font-weight: 700;
    font-style: normal
}

.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    z-index: 1
}

.swiper-container .swiper-button-disabled {
    cursor: default
}

.swiper-container-no-flexbox .swiper-slide {
    float: left
}

.swiper-container-vertical > .swiper-wrapper {
    -webkit-box-orient: vertical;
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.swiper-container-multirow > .swiper-wrapper {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    -webkit-flex-shrink: 0;
    -ms-flex: 0 0 auto;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    background: no-repeat 50% 50%;
    background-size: cover
}

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    transition-property: height, -webkit-transform;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-wp8-horizontal {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.swiper-wp8-vertical {
    -ms-touch-action: pan-x;
    touch-action: pan-x
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 50px;
    height: 50px;
    margin-top: -25px;
    z-index: 10;
    cursor: pointer;
    border-radius: 50%;
    transition: .3s
}

.swiper-button-next:hover, .swiper-button-prev:hover {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .4)
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .4
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    background-image: url(../img/arrow-left.svg);
    left: 20px;
    right: auto
}

@media (min-width: 1020px) {
    .swiper-button-prev, .swiper-container-rtl .swiper-button-next {
        left: 40px
    }
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    background-image: url(../img/arrow-right.svg);
    right: 20px;
    left: auto
}

@media (min-width: 1020px) {
    .swiper-button-next, .swiper-container-rtl .swiper-button-prev {
        right: 40px
    }
}

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")
}

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")
}

.mobile-swiper__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 30px
}

@media (max-width: 767px) {
    .mobile-swiper__slide {
        width: 90% !important;
        max-width: 400px;
        opacity: .5;
        transition: opacity .3s
    }
    
    .mobile-swiper__slide.swiper-slide-active {
        opacity: 1
    }
}

.mobile-swiper__arrows {
    font-size: 0;
    line-height: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.mobile-swiper__arrow {
    position: static;
    display: inline-block;
    margin-left: 12px;
    margin-top: 0;
    width: 40px;
    height: 40px;
    background: no-repeat #fff
}

.swiper-button-prev.mobile-swiper__arrow, .swiper-container-rtl .swiper-button-next.mobile-swiper__arrow {
    background-image: url(../img/arrow-left-small.svg);
    background-position: 45% 50%
}

.swiper-button-next.mobile-swiper__arrow, .swiper-container-rtl .swiper-button-prev.mobile-swiper__arrow {
    background-image: url(../img/arrow-right-small.svg);
    background-position: 55% 50%
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    z-index: 10;
    font-size: 0;
    line-height: 0
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 20px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    display: inline-block;
    border-radius: 50%;
    border: 5px solid #fff;
    transition: .3s
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -webkit-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    border-width: 2px
}

.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0)
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 5px
}

.swiper-pagination-progress {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progress .swiper-pagination-progressbar {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
    -webkit-transform-origin: right top;
    transform-origin: right top
}

.swiper-container-horizontal > .swiper-pagination-progress {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-vertical > .swiper-pagination-progress {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-progress.swiper-pagination-white {
    background: hsla(0, 0%, 100%, .5)
}

.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
    background: #fff
}

.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
    background: #000
}

.swiper-container-3d {
    -webkit-perspective: 1200px;
    -o-perspective: 1200px;
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
    -ms-perspective: 1200px
}

.swiper-container-cube, .swiper-container-flip {
    overflow: visible
}

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-container-cube .swiper-slide {
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .6;
    -webkit-filter: blur(50px);
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="50" /></filter></svg>#filter');
    filter: blur(50px);
    z-index: 0
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1)
}

.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-animation: a 1s steps(12) infinite;
    animation: a 1s steps(12) infinite
}

.swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E");
    background-position: 50%;
    background-size: 100%;
    background-repeat: no-repeat
}

.swiper-lazy-preloader-white:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")
}

@-webkit-keyframes a {
    to {
        -webkit-transform: rotate(1turn)
    }
}

@keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

.switcher > :not(.is-active) {
    display: none
}

.ui-datepicker, .ui-datepicker table, .ui-datepicker td, .ui-datepicker th, .ui-datepicker tr {
    margin: 0;
    padding: 0;
    border: none;
    border-spacing: 0
}

.ui-datepicker {
    display: none;
    width: 100%;
    min-width: 230px;
    max-width: 280px;
    cursor: default;
    background: #fff;
    border-radius: 3px;
    border: 1px solid #d4d4d4;
    box-shadow: 0 6px 10px rgba(0, 0, 0, .2);
    margin-top: 10px;
    padding-bottom: 15px
}

@media (min-width: 414px) {
    .ui-datepicker {
        min-width: 306px;
        max-width: 306px
    }
}

@media (min-width: 1220px) {
    .ui-datepicker {
        max-width: 366px
    }
}

.ui-datepicker-header {
    position: relative;
    padding: 24px 4.4% 20px;
    background: #f3f2f1
}

.ui-datepicker-title {
    text-align: center
}

.ui-datepicker-next, .ui-datepicker-prev {
    position: absolute;
    top: 23px;
    width: 21px;
    height: 21px;
    background: no-repeat 50% 50%;
    cursor: pointer
}

.ui-datepicker-next span, .ui-datepicker-prev span {
    font-size: 0
}

.ui-datepicker-prev {
    left: 7.5%;
    background-image: url(../img/datepicker-arrow-left.svg)
}

.ui-datepicker-next {
    right: 7.5%;
    background-image: url(../img/datepicker-arrow-right.svg)
}

.ui-datepicker-calendar {
    width: 100%
}

.ui-datepicker-calendar th {
    padding: 0 0 15px;
    width: 13.1147%;
    background: #f3f2f1;
    border-bottom: 1px solid #d4d4d4;
    text-align: center;
    font-weight: 400
}

.ui-datepicker-calendar th:first-child {
    padding-left: 4.0983%;
    width: 17.213%
}

.ui-datepicker-calendar th:last-child {
    padding-right: 4.0983%;
    width: 17.213%
}

.ui-datepicker-calendar td {
    text-align: center;
    width: 13.1147%
}

.ui-datepicker-calendar td:first-child {
    padding-left: 4.0983%;
    width: 17.213%
}

.ui-datepicker-calendar td:last-child {
    padding-right: 4.0983%;
    width: 17.213%
}

.ui-datepicker-calendar tr:first-child td {
    padding-top: 15px
}

.ui-datepicker-calendar .ui-state-default {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    outline: 0;
    border-radius: 3px;
    border: 1px solid transparent;
    margin: 0 auto;
    color: inherit;
    transition: none
}

@media (min-width: 414px) {
    .ui-datepicker-calendar .ui-state-default {
        width: 40px;
        height: 40px;
        line-height: 40px
    }
}

.ui-datepicker-calendar .ui-state-disabled {
    color: #999
}

.ui-datepicker-calendar .ui-state-highlight {
    background: #f3f2f1
}

.ui-datepicker-calendar .ui-state-hover {
    border: 1px solid #999
}

.ui-datepicker-calendar .ui-state-active {
    border: 1px solid
}

.ps-container {
    -ms-touch-action: none;
    touch-action: none;
    overflow: hidden !important;
    -ms-overflow-style: none
}

@supports (-ms-overflow-style:none) {
    .ps-container {
        overflow: auto !important
    }
}

@media (-ms-high-contrast: none), screen and (-ms-high-contrast: active) {
    .ps-container {
        overflow: auto !important
    }
}

.ps-active-x > .ps-scrollbar-x-rail, .ps-active-y > .ps-scrollbar-y-rail {
    display: block
}

.ps-in-scrolling {
    pointer-events: none
}

.ps-scrollbar-x-rail {
    position: absolute;
    left: 0 !important;
    bottom: 0;
    background: #f3f2f1;
    border-radius: 8px;
    height: 8px
}

.ps-scrollbar-x-rail > .ps-scrollbar-x {
    position: absolute;
    background-color: #999;
    border-radius: 8px;
    transition: width .2s ease-in-out;
    bottom: 0;
    height: 100%
}

.ps-container:hover.ps-in-scrolling {
    pointer-events: none
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    z-index: 101;
    opacity: 0;
    transition: .4s;
    padding: 20px 20px 0
}

.modal.is-active {
    opacity: 1
}

.modal__window-wrap {
    width: 100%;
    max-width: 924px;
    margin: 0 auto;
    padding-bottom: 20px
}

.modal--small {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.modal--small .modal__window-wrap {
    max-width: 508px;
    margin: auto
}

.modal--station .modal__window-wrap {
    width: auto;
    max-width: 100%
}

@media (min-width: 768px) {
    .modal--station {
        padding-left: 40px;
        padding-right: 40px
    }
    
    .modal--station .modal__window-wrap {
        max-height: 100%
    }
}

.modal__window {
    background: #fff;
    position: relative;
    z-index: 1;
    border-radius: 3px
}

.modal__header {
    position: relative;
    width: 100%;
    padding: 38px 20px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    border-bottom: 1px solid #d4d4d4;
    background-color: #f3f2f1
}

.modal__title {
    color: #1a1a1a;
    font-size: 22px;
    display: inline-block
}

.modal__container {
    padding: 40px 20px
}

.modal__container--success {
    text-align: center
}

.modal__close {
    position: absolute;
    right: 30px;
    top: 30px;
    width: 16px;
    height: 16px;
    background: url(../img/close.svg) no-repeat 50%;
    cursor: pointer;
    transition: .25s;
    padding: 15px
}

.modal__close:hover {
    opacity: .7
}

.modal-wrapper {
    position: relative
}

@media (min-width: 768px) {
    .modal__container, .modal__header {
        padding-left: 50px;
        padding-right: 50px
    }
}

.modal__table {
    margin-top: -12px
}

.modal__table .grid__item {
    margin-top: 12px
}

.input-number {
    position: relative;
    padding: 0 49px
}

.input-number__input {
    text-align: center;
    border-radius: 0;
    position: relative
}

.input-number__input:focus, .input-number__input:hover {
    z-index: 1
}

.input-number__control {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 50px;
    cursor: pointer;
    border: 1px solid #ccc;
    transition: .25s
}

.input-number__control[disabled], .is-disabled > .input-number__control {
    cursor: default;
    pointer-events: none
}

.input-number__control[disabled]:after, .input-number__control[disabled]:before, .is-disabled > .input-number__control:after, .is-disabled > .input-number__control:before {
    background-color: #ccc
}

.input-number__control:after, .input-number__control:before {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #1a1a1a;
    transition: .25s
}

.input-number__control:before {
    content: "";
    width: 15px;
    height: 1px
}

.input-number__control:hover {
    border-color: #999
}

.input-number__control:hover:after, .input-number__control:hover:before {
    background-color: #444
}

.input-number__control--minus {
    left: 0;
    border-radius: 3px 0 0 3px
}

.input-number__control--plus {
    right: 0;
    border-radius: 0 3px 3px 0
}

.input-number__control--plus:after {
    content: "";
    width: 1px;
    height: 15px
}

.header {
    z-index: 101;
    padding: 20px 0;
    position: relative;
    transition: .3s;
    transition-property: background-color, color
}

.header--transparent {
    position: absolute;
    left: 0;
    right: 0;
    color: #fff;
    background: linear-gradient(180deg, rgba(0, 0, 0, .3), transparent)
}

.header--white {
    position: relative;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
    background: #fff
}

@media (min-width: 1020px) {
    .header--fixed {
        position: fixed;
        width: 100%
    }
}

.header__wrapper {
    position: relative;
    height: 40px
}

@media (min-width: 1020px) {
    .header__wrapper {
        height: 50px
    }
}

.header__logo {
    float: left;
    height: 40px;
    font-size: 0;
    line-height: 0;
    cursor: pointer
}

.header__logo a {
    color: inherit
}

@media (min-width: 1020px) {
    .header__logo {
        height: 50px
    }
}

.header__logo-img {
    height: 40px;
    width: 170px
}

@media (min-width: 1020px) {
    .header__logo-img {
        height: 50px;
        width: 210px
    }
}

.mobile-nav {
    display: block;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.mobile-nav .menu-button .menu-button__item {
    width: 20px;
    position: absolute;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 50%;
    margin-left: -10px
}

.mobile-nav .menu-button .menu-button__item:nth-child(2) {
    transition: 0s;
    visibility: visible;
    top: 50%
}

.mobile-nav .menu-button .menu-button__item:first-child {
    transition: .3s;
    top: calc(50% - 6px)
}

.mobile-nav .menu-button .menu-button__item:last-child {
    transition: .3s;
    bottom: 0;
    top: calc(50% + 6px)
}

@media (min-width: 1020px) {
    .mobile-nav {
        display: none
    }
}

.mobile-nav__toggle {
    width: 100vw;
    box-shadow: 0 0 2px #000;
    background: #fff;
    position: absolute;
    top: 60px;
    left: -20px;
    padding: 0 19px 30px;
    visibility: hidden;
    max-height: 0;
    opacity: 0;
    transition: .3s
}

.mobile-nav__phone {
    margin: 5px 0 25px;
    text-align: center
}

.mobile-nav__phone a {
    font-weight: 700;
    color: #1a1a1a
}

.mobile-nav__hours {
    margin-top: 10px;
    display: block
}

.mobile-nav__button {
    width: 100%;
    height: 50px;
    display: block;
    text-align: center;
    line-height: 50px;
    border: 0;
    border-radius: 3px;
    font-size: 16px;
    color: #fff;
    margin-bottom: 20px
}

.mobile-nav__button--green {
    background-color: #16b367
}

.menu-button {
    position: relative;
    float: right;
    height: 40px;
    width: 40px;
    cursor: pointer
}

.menu-button__item {
    height: 2px;
    background-color: currentColor
}

.mobile-nav-list {
    width: calc(100% + 35px);
    list-style-type: none;
    margin-left: -16px
}

.mobile-nav-list__item {
    line-height: 70px;
    position: relative
}

.mobile-nav-list__item:not(:last-child) {
    border-bottom: 1px solid #d4d4d4
}

.mobile-nav-list__link {
    padding-left: 15px;
    color: #1a1a1a;
    font-size: 21px;
    display: block;
    width: 100%;
    text-align: left
}

.mobile-nav-list__link:hover {
    color: #999
}

.mobile-nav-list__checkbox {
    position: absolute;
    top: 0;
    cursor: pointer;
    left: 0;
    width: 100%;
    height: 70px;
    opacity: 0
}

.mobile-nav-list__checkbox ~ .list-hidden {
    max-height: 0;
    visibility: hidden;
    opacity: 0;
    margin: 0
}

.mobile-nav-list__checkbox:checked ~ .mobile-nav-list__link {
    color: #999
}

.mobile-nav-list__checkbox:checked ~ .list-hidden {
    max-height: 1000px;
    visibility: visible;
    opacity: 1;
    padding: 20px 0
}

.header__second-menu {
    list-style-type: none;
    font-size: 15px
}

.header__second-menu-item + .header__second-menu-item {
    margin-top: 10px
}

.list-hidden {
    visibility: hidden;
    max-height: 0;
    transition: all .4s;
    opacity: 0;
    background-color: #f3f2f1;
    box-shadow: 0 -.8px 1px rgba(0, 0, 0, .5)
}

.list-hidden__item {
    line-height: 50px;
    font-size: 21px
}

.list-hidden__link {
    display: block;
    color: #1a1a1a;
    padding: 0 15px
}

.list-hidden__link:hover {
    color: #999
}

.mobile-nav__dimmer {
    position: fixed;
    height: calc(100% + 200px);
    overflow: hidden;
    cursor: pointer;
    width: 100%;
    background-color: #000;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    top: -100px;
    left: 0;
    transition: .4s;
    z-index: -1;
    opacity: 0;
    visibility: hidden
}

@media (min-width: 1020px) {
    .mobile-nav__dimmer {
        visibility: hidden !important
    }
}

.header.is-open {
    background: #fff;
    color: #1a1a1a
}

.header.is-open .menu-button .menu-button__item:nth-child(2) {
    visibility: hidden
}

.header.is-open .menu-button .menu-button__item:first-child {
    top: 50%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: .3s;
    width: 20px
}

.header.is-open .menu-button .menu-button__item:last-child {
    top: 50%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: .3s;
    width: 20px
}

.header.is-open .mobile-nav__toggle {
    max-height: 1000px;
    opacity: 1;
    visibility: visible
}

.header.is-open + .mobile-nav__dimmer {
    opacity: .5;
    visibility: visible;
    z-index: 100
}

.header-fixed {
    position: fixed;
    z-index: 11;
    width: 100%;
    visibility: hidden;
    opacity: 0;
    transition: .3s
}

.header-fixed__logo--station {
    width: 50px;
    height: 50px;
    border-radius: 25px;
    background-color: #000
}

.header-fixed__arrow {
    position: relative;
    top: 40%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-40%);
    transform: translateX(-50%) translateY(-40%);
    width: 33px;
    height: 17px
}

.header-fixed__line {
    width: 20px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%
}

.header-fixed__line--left {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.header-fixed__line--right {
    right: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.header-fixed__station {
    float: left;
    font-size: 32px;
    font-weight: 700;
    margin-left: 20px;
    line-height: normal
}

.header-fixed__address, .header-fixed__station {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.header-fixed__address {
    margin-left: 40px;
    display: inline-block
}

.header-fixed__address span {
    display: block
}

.header-fixed__subway {
    font-weight: 700
}

.header-fixed__phone {
    margin-left: 20px;
    text-align: center;
    position: relative;
    float: left;
    font-weight: 700;
    top: 50%;
    color: #1a1a1a;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.header-fixed__buy {
    float: right;
    height: 50px
}

.main-nav {
    display: none
}

@media (min-width: 1020px) {
    .main-nav {
        display: block;
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        float: right
    }
}

.main-nav__items {
    list-style: none;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline
}

.main-nav__item {
    float: left
}

.main-nav__item:not(:last-child) {
    margin-right: 30px
}

.main-nav__link {
    display: inline-block
}

.main-nav__link--active, .main-nav__link:hover {
    opacity: .6
}

.main-nav__link--button {
    width: 80px;
    line-height: 30px;
    text-align: center;
    border: 1px solid #ccc;
    border-radius: 3px;
    background: 0 0;
    color: currentColor;
    transition: .25s
}

.header--transparent .main-nav__link--button {
    border-color: hsla(0, 0%, 100%, .5)
}

.header--transparent .main-nav__link--button:hover {
    border-color: transparent;
    background: hsla(0, 0%, 100%, .5)
}

.main-nav__link--button:hover {
    opacity: 1;
    border-color: transparent;
    background: #ccc
}

.main-nav__link--button--lang {
    width: 35px
}

.main-nav__avatar {
    border-radius: 50%;
    border: 2px solid #fff;
    vertical-align: middle;
    margin: -2px 7px 0 0;
    width: 50px;
    height: 50px
}

.start {
    color: #fff;
    text-align: center;
    position: relative;
    height: 360px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden
}

.start__bg {
    position: relative;
    z-index: 1;
    background: no-repeat 50% 50%;
    background-size: cover
}

.start__bg:after {
    height: 90px;
    background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .3))
}

.start__bg:after, .start__bg:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1
}

.start__bg:before {
    background: rgba(2, 11, 24, .5);
    top: 0
}

.start__bg--inner {
    background-image: url(../img/index-intro-1.jpg);
    background-color: #727578;
    background-size: cover
}

.start__bg-slider {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: -2
}

.start__bg-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 28px;
    text-align: center;
    opacity: .6;
    z-index: 2
}

@media (min-width: 414px) {
    .start {
        height: 400px;
        padding-top: 0
    }
}

@media (min-width: 768px) {
    .start {
        height: 500px
    }
    
    .start__heading {
        font-size: 68px;
        line-height: 80px
    }
}

.start__content {
    background: #edeceb
}

@media (min-width: 768px) {
    .start__content {
        background: 0 0;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 58px
    }
}

@media (min-width: 1220px) {
    .start__content {
        bottom: 53px
    }
}

.start__radio-container {
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    text-align: center
}

@media (min-width: 480px) {
    .start__radio-container {
        text-align: left
    }
}

.start__radio {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.start__radio-image {
    border: 1px solid hsla(0, 0%, 100%, .5);
    background: url(../img/radio.svg);
    transition: .25s;
    border-radius: 50%
}

.start__radio:hover .start__radio-image {
    background-color: hsla(0, 0%, 100%, .5);
    border-color: hsla(0, 0%, 100%, 0)
}

.start__radio-caption {
    margin-left: 10px
}

.btn--start {
    margin-top: 30px;
    font-size: 16px
}

.start__callme {
    padding: 27px 0 25px
}

.start__phone {
    color: #1a1a1a;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: 1px;
    display: block;
    margin-bottom: 3px
}

.start__hours {
    color: #666;
    font-size: 13px
}

@media (min-width: 768px) {
    .btn--start {
        margin-top: 0
    }
    
    .start__callme {
        padding: 35px 0 0
    }
    
    .start__phone {
        color: #f0f0f0
    }
    
    .start__hours {
        color: #d4d4d4
    }
}

.btn {
    display: inline-block;
    padding: 15px 10px;
    background-color: #12b362;
    border: none;
    border-radius: 3px;
    color: #fff;
    font-size: 15px;
    text-decoration: none;
    text-align: center;
    min-height: 50px;
    width: 100%;
    transition: .25s
}

@media (min-width: 768px) {
    .btn {
        width: 250px;
        max-width: 100%
    }
}

.btn:focus, .btn:hover {
    background: #0f9954
}

.btn[disabled] {
    background: #88d8b0;
    cursor: default;
    pointer-events: none
}

.btn--secondary {
    background: #1a1a1a
}

.btn--secondary[disabled] {
    opacity: .5
}

.btn__text {
    display: block;
    width: calc(100% - 30px)
}

.btn--ghost {
    padding: 14px 10px;
    background: #fff;
    color: #1a1a1a;
    border: 1px solid #999;
    transition: .25s
}

.btn--ghost:focus, .btn--ghost:hover {
    background: #f3f2f1
}

.btn--ghost[disabled] {
    background: #fff;
    opacity: .5
}

.btn--ghost-primary {
    padding: 14px 10px;
    background: #fff;
    border: 1px solid #0f9954;
    color: #0f9954;
    transition: .25s
}

.btn--ghost-primary:focus, .btn--ghost-primary:hover {
    background-color: #0f9954;
    color: #fff
}

.btn--ghost-primary[disabled] {
    background: #fff;
    color: #0f9954;
    opacity: .5
}

.btn--buy-sms-repeat[disabled] {
    border-color: transparent;
    background: #e6e6e6;
    opacity: 1;
    color: #666
}

.btn--img {
    text-align: left;
    position: relative
}

.btn--img img {
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    margin: auto
}

.btn--fb {
    color: #fff;
    background-color: #39579a;
    display: block;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
}

.btn + .btn {
    margin-top: 20px
}

@media (min-width: 768px) {
    .btn + .btn {
        margin-top: 0;
        margin-left: 40px
    }
    
    .btn-container {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }
    
    .btn-container, .btn-container--justify {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    
    .btn-container--justify {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.features {
    padding-top: 28px
}

@media (min-width: 768px) {
    .features {
        padding-top: 92px;
        padding-bottom: 95px
    }
}

.features__annotation {
    margin-bottom: 45px
}

@media (min-width: 768px) {
    .features__annotation {
        max-width: 500px;
        margin-bottom: 79px
    }
}

.features__fb {
    overflow: hidden;
    margin-bottom: 45px
}

.features__item {
    position: relative;
    margin-bottom: 38px;
    padding-top: 62px
}

.features__item:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 50px;
    top: 0;
    background-repeat: no-repeat;
    background-position: 0 100%
}

.features__item--wifi:before {
    background-image: url(../img/wifi.svg)
}

.features__item--access:before {
    background-image: url(../img/access.svg)
}

.features__item--kitchen:before {
    background-image: url(../img/kitchen.svg)
}

.features__item--coffee:before {
    background-image: url(../img/coffee.svg)
}

.features__item--shower:before {
    background-image: url(../img/shower.svg)
}

.features__item--wardrobe:before {
    background-image: url(../img/wardrobe.svg)
}

.features__item--meetings:before {
    background-image: url(../img/meetings.svg)
}

.features__item--printer:before {
    background-image: url(../img/printer.svg)
}

.features__item--capsule:before {
    background-image: url(../img/capsule.svg)
}

.features__item--courier:before {
    background-image: url(../img/courier.svg)
}

.features__decription {
    padding-left: 2px;
    color: #666
}

.features__decription--note {
    margin-left: -1px
}

@media (min-width: 414px) and (max-width: 767px),(min-width: 1220px) {
    .features__decription--small {
        padding-right: 20%
    }
}

.features__note {
    color: #666;
    margin-top: 15px;
    display: none
}

@media (min-width: 768px) {
    .features__note {
        display: block
    }
}

.plaza {
    height: 700px;
    position: relative
}

.plaza__swiper {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.plaza__swiper-arrow {
    left: 20px;
    right: auto
}

@media (min-width: 1220px) {
    .plaza__swiper-arrow {
        left: 40px
    }
}

.plaza__swiper-arrow--prev {
    top: 315px
}

.plaza__swiper-arrow--next {
    top: 385px
}

.plaza__container {
    height: 100%;
    position: relative;
    z-index: 10;
    pointer-events: none
}

.plaza__grid {
    height: 100%;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.search {
    height: 510px;
    padding: 130px 40px 180px;
    background-image: url(../img/meeting-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff
}

.search__heading {
    margin-bottom: 30px;
    text-align: center;
    font-size: 28px;
    line-height: 34px;
    color: #fff
}

.search__field {
    display: block;
    font-size: 0
}

.search__field--forms {
    border-radius: 3px;
    overflow: hidden
}

.search__form:after {
    content: "";
    clear: both;
    display: table
}

.search__label {
    display: inline-block;
    width: 25%;
    margin: 0;
    font-size: 13px;
    line-height: 20px
}

.search__capacity, .search__date, .search__station, .search__submit {
    display: inline-block;
    vertical-align: top;
    width: 24.5%;
    margin: 0;
    height: 50px
}

.search__submit {
    outline: 0;
    background-color: #12b362;
    border: none;
    border-radius: 0 3px 3px 0;
    font-size: 15px;
    line-height: 50px;
    text-decoration: none;
    text-align: center;
    color: #fff
}

.search__date {
    border: 1px solid #b3b3b3;
    background-color: #fff;
    background-image: url(../img/select-arrow.svg);
    background-position: 96%;
    padding-left: 20px;
    background-repeat: no-repeat
}

.search__day {
    padding-right: 10%;
    font-size: 15px;
    line-height: 50px;
    text-decoration: none;
    text-align: center;
    color: #1a1a1a
}

.search__day--date {
    color: #7f7f7f
}

.search__capacity, .search__station {
    font-size: 15px;
    text-decoration: none;
    text-align: left;
    color: #1a1a1a;
    width: 24.5%;
    height: 50px;
    border-radius: 0;
    border: 1px solid #b3b3b3;
    border-right: none;
    outline: 0;
    -webkit-appearance: none;
    padding-left: 20px;
    background-repeat: no-repeat;
    line-height: 1em;
    -moz-appearance: none;
    text-indent: .01px;
    text-overflow: "";
    -ms-appearance: none;
    appearance: none !important
}

.search__capacity, .search__station {
    background-image: url(../img/select-arrow.svg);
    background-position: 96%
}

.search__capacity {
    border-left: none
}

.search__station::-ms-expand {
    display: none
}

.reviews {
    padding-top: 38px;
    padding-bottom: 35px
}

@media (min-width: 768px) {
    .reviews {
        padding-top: 50px;
        padding-bottom: 60px
    }
}

.reviews__info {
    display: table;
    width: 100%;
    margin-bottom: 20px
}

.reviews__author-pic {
    display: table-cell;
    width: 100px;
    height: 100px
}

.reviews__author-pic img {
    width: 100%;
    height: auto;
    display: block
}

.reviews__author {
    display: table-cell;
    vertical-align: middle;
    padding-left: 30px
}

.reviews__name {
    font-weight: 700
}

.gallery {
    background-color: #1a1a1a;
    padding-top: 20px
}

.gallery__header {
    margin-bottom: 30px
}

.gallery__row {
    margin-bottom: 12px
}

@media (min-width: 414px) {
    .gallery__row {
        margin-bottom: 23px
    }
}

@media (min-width: 768px) {
    .gallery__row {
        margin-left: -30px;
        margin-bottom: 30px
    }
    
    .gallery__image {
        padding-left: 30px
    }
}

.gallery__image img {
    width: 100%;
    height: auto;
    display: block
}

.gallery__tag {
    margin-top: 40px;
    padding-bottom: 40px;
    text-align: center;
    font-size: 38px;
    line-height: 32px;
    color: #666
}

@media (min-width: 414px) {
    .gallery__tag {
        line-height: 52px
    }
}

@media (min-width: 768px) {
    .gallery__tag {
        margin-top: 50px;
        padding-bottom: 50px
    }
}

@media (min-width: 1220px) {
    .gallery__tag {
        margin-top: 58px;
        padding-bottom: 70px
    }
}

.footer {
    position: relative;
    padding-top: 30px;
    padding-bottom: 38px;
    border-top: 1px solid #444
}

@media (min-width: 768px) {
    .footer {
        padding-top: 40px;
        padding-bottom: 56px
    }
}

.footer__messenger-caption-grid {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.footer__messenger-grid {
    margin-top: 30px
}

.footer__messenger {
    width: 100%;
    position: relative;
    padding: 0;
    line-height: 50px;
    font-size: 0
}

.footer__messenger--fb {
    background: #0080ff
}

.footer__messenger--fb:focus, .footer__messenger--fb:hover {
    background: #0073e6
}

.footer__messenger--vk {
    background: #5a80b5
}

.footer__messenger--vk:focus, .footer__messenger--vk:hover {
    background: #4e6e9c
}

.footer__messenger--telegram {
    background: #20a4e2
}

.footer__messenger--telegram:focus, .footer__messenger--telegram:hover {
    background: #1c93ca
}

.footer__messenger-icon {
    margin-right: 5px;
    vertical-align: middle
}

.footer__messenger--vk .footer__messenger-icon {
    width: 26px;
    height: 15px
}

@media (min-width: 480px) and (max-width: 767px),(min-width: 1220px) {
    .footer__messenger-icon {
        position: absolute;
        left: 32px;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }
}

.footer__messenger-text {
    vertical-align: middle
}

@media (min-width: 480px) {
    .footer__messenger {
        font-size: inherit
    }
}

@media (min-width: 768px) {
    .footer__messenger-grid {
        margin-top: 0
    }
}

@media (min-width: 1220px) {
    .footer__messenger-grid {
        margin-left: -45px
    }
    
    .footer__messenger-grid .grid__item {
        padding-left: 45px
    }
}

.footer__hr {
    border: none;
    border-top: 1px solid #444;
    margin: 40px 0
}

.footer__nav {
    list-style: none;
    margin: 28px 0 20px;
    padding: 0
}

@media (min-width: 768px) {
    .footer__nav {
        margin: 7px 0 20px
    }
}

.footer__nav-item {
    margin-bottom: 13px
}

@media (min-width: 480px) {
    .footer__nav-item {
        display: inline-block;
        vertical-align: bottom
    }
    
    .footer__nav-item:not(:last-child) {
        margin-right: 5%
    }
}

.footer__contacts-cell {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 28px
}

@media (min-width: 768px) {
    .footer__contacts-cell {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0;
        margin-top: 0
    }
}

.footer__contacts {
    font-size: 12px
}

.footer__contacts + .footer__contacts {
    margin-top: 10px
}

.footer__contacts-x {
    margin: 0 5px
}

.footer__contacts-kodelnya {
    display: inline-block;
    margin-bottom: -1px
}

.footer__copyright {
    font-size: 12px;
    margin-top: 20px
}

@media (min-width: 768px) {
    .footer__copyright {
        margin-top: 0
    }
}

.social {
    list-style: none;
    margin: 0;
    padding: 0
}

.social__item {
    display: inline-block;
    vertical-align: middle;
    margin-right: 46px
}

.social__item img {
    display: block
}

.social__item:last-child {
    margin-right: 0
}

.partners {
    padding: 40px 0 20px
}

@media (min-width: 480px) {
    .partners {
        padding: 60px 0 40px
    }
}

.partners__cell {
    margin-bottom: 40px
}

@media (min-width: 1220px) {
    .partners__cell {
        margin-bottom: 60px
    }
}

.partners__item {
    border-radius: 3px;
    overflow: hidden
}

.partners__card {
    padding: 24px 30px 30px;
    border: 1px solid #e6e6e6;
    border-top: none;
    background: #fff
}

@media (min-width: 1020px) {
    .partners__card {
        padding: 34px 40px 40px
    }
}

.partners__image {
    display: block;
    max-width: 100%
}

.partners__button {
    width: 100%;
    display: block;
    margin-top: 30px
}

.partners-footer {
    padding: 38px 0 5px;
    border-top: 1px solid #444
}

.partners-footer__header {
    margin-bottom: 20px
}

.partners-footer__labels-grid-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.partners-footer__labels-grid {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2
}

.partners-footer__labels-cell {
    padding-bottom: 40px
}

@media (min-width: 480px) {
    .partners-footer {
        padding: 56px 0 10px
    }
    
    .partners-footer__labels-cell {
        padding-bottom: 50px
    }
}

.partners-auth {
    padding-top: 40px;
    background: #f3f2f1
}

@media (min-width: 768px) {
    .partners-auth {
        padding-top: 50px
    }
}

@media (min-width: 1020px) {
    .partners-auth {
        padding-bottom: 60px
    }
}

.partners .modal__container {
    padding-bottom: 0
}

.partners .modal__window {
    max-width: 884px
}

.partners .modal__window h2 {
    margin-bottom: 14px;
    color: #191919
}

.partners .modal__window p {
    color: #666565;
    margin-bottom: 36px
}

.partners .modal__header {
    height: 170px;
    overflow: hidden
}

.partners .modal__header .partners__image {
    max-height: 170px;
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.search-bar {
    padding: 30px 0 10px
}

@media (min-width: 768px) {
    .search-bar {
        padding: 40px 0 20px
    }
}

.search-bar__cell {
    margin-bottom: 20px
}

.book {
    padding: 40px 0 50px
}

.book__station-wrap {
    margin-bottom: 40px
}

.timeline {
    position: relative;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin-top: 10px
}

.timeline__labels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.timeline__label {
    width: 80px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    float: left;
    height: 31px;
    line-height: 31px;
    padding: 0 8px
}

.timeline__label + .timeline__label {
    border-left: 1px solid #d4d4d4
}

.timeline__halves {
    height: 61px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

.timeline__half {
    background: #f3f2f1;
    width: 40px;
    height: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    float: left
}

.timeline__half:not(.is-active):not(.is-disabled) {
    cursor: pointer
}

.timeline__half:nth-child(2n+3) {
    border-left: 1px solid #d4d4d4
}

.timeline__half:nth-child(2n+2) {
    border-left: 1px dashed #d4d4d4
}

.timeline__half:not(.is-active):not(.is-disabled):hover {
    background: #82d2a9;
    border: 1px solid #12b362;
    border-radius: 3px
}

.timeline__half.is-disabled {
    background: #999;
    border: none
}

.timeline__half.is-active + .timeline__half, .timeline__half.is-disabled + .timeline__half, .timeline__half:hover + .timeline__half {
    border-left: none
}

.timeline__half--first-disabled {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px
}

.timeline__half--last-disabled {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px
}

.timeline__half--inner-disabled, .timeline__half--last-disabled {
    border-left: 1px solid #999 !important
}

.timeline__sequence {
    position: absolute;
    bottom: 0;
    height: 61px;
    border-radius: 3px;
    background: #12b362;
    overflow: hidden;
    cursor: pointer
}

.timeline__sequence-handle-start {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 12px;
    cursor: ew-resize
}

.timeline__sequence-handle-start:before {
    content: "";
    width: 1px;
    height: 10px;
    position: absolute;
    top: 50%;
    margin-top: -5px;
    left: 3px;
    border: solid #0d8046;
    border-width: 0 1px
}

.timeline__sequence-handle-end {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 12px;
    cursor: ew-resize
}

.timeline__sequence-handle-end:after {
    content: "";
    width: 1px;
    height: 10px;
    position: absolute;
    top: 50%;
    margin-top: -5px;
    right: 3px;
    border: solid #0d8046;
    border-width: 0 1px
}

.timeline__scrollbar {
    position: relative;
    margin-top: 9px;
    height: 10px
}

.timeline__scrollbar .swiper-scrollbar-drag {
    background: #999
}

.meetings__info-cell.is-active .lead3 {
    display: none
}

.meetings__info-cell.is-active .meetings__button, .meetings__info-cell.is-active .meetings__info {
    display: block
}

.meetings__info {
    border: 1px solid #d4d4d4;
    border-radius: 3px;
    overflow: hidden;
    display: none
}

.meetings__info--visible {
    display: block
}

.meetings__info-header {
    background: #f3f2f1;
    border-bottom: 1px solid #d4d4d4;
    height: 50px;
    line-height: 50px;
    padding: 0 30px
}

.meetings__info-content {
    padding: 25px 30px;
    background: #fff
}

.meetings__info-comment {
    font-size: 12px;
    font-weight: 400;
    line-height: normal;
    color: #999;
    padding-bottom: 5px
}

.meetings__info-hr {
    border-top: 1px solid #d4d4d4;
    padding-top: 10px;
    margin-top: 23px
}

.meetings__info-total {
    margin-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.meetings__button {
    margin-top: 20px;
    min-width: 100%;
    display: none
}

.meetings__modal-title {
    margin-bottom: 10px
}

.meetings__modal-cell--tablet + .meetings__modal-cell--tablet {
    margin-top: 30px
}

.meetings__modal-cell--iphone + .meetings__modal-cell--iphone {
    margin-top: 20px
}

.meetings__modal-button-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.meetings__modal-submit.meetings__modal-submit {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    margin-top: 0;
    margin-bottom: 20px
}

@media (min-width: 414px) {
    .meetings__modal-cell--iphone + .meetings__modal-cell--iphone {
        margin-top: 0
    }
}

@media (min-width: 768px) {
    .meetings__modal-cell--tablet + .meetings__modal-cell--tablet {
        margin-top: 0
    }
    
    .meetings__modal-submit.meetings__modal-submit {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0;
        margin-bottom: 0
    }
}

.profile {
    padding: 40px 0 100px
}

.profile .h3 {
    margin-bottom: 10px
}

.profile--empty {
    padding: 80px 0 100px
}

.deposit__container, .friend_invite_container, .profile__container {
    max-width: 964px
}

.deposit__container .deposit_history, .invite_panel {
    margin-top: 40px
}

.invite_block {
    margin-bottom: 40px
}

.invite_panel {
    padding-top: 20px;
    padding-bottom: 20px;
    display: inline-flex
}

#user_key {
    font-family: GraphikLCG;
    font-size: 26px;
    font-weight: 400;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.54;
    letter-spacing: normal;
    color: #0f9954;
    margin-top: 15px;
    margin-bottom: 15px;
    width: 666px
}

#user_key.locked {
    border: 2px solid #fff
}

#user_key.locked:focus {
    outline: 0 !important
}

#user_key.edit {
    cursor: text
}

#copy_input {
    opacity: .7;
    position: absolute;
    left: 50px;
    top: 300px
}

button.share_link img {
    width: 52px;
    height: 52px
}

div.share_links {
    margin-top: 35px;
    display: inline-flex
}

button.share_link {
    text-align: center;
    background: #fff;
    border: none
}

div.share_links button.share_link {
    margin-right: 70px
}

div.action_buttons button.share_link {
    margin-right: 40px
}

div.share_separator {
    margin-right: 70px;
    height: 80px;
    width: 1px;
    border-left: solid 1px #d4d4d4
}

.deposit_amount {
    color: #0f9954
}

.frient_invite_title {
    font-family: GraphikLCG;
    font-size: 30px;
    font-weight: 400;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #1a1a1a;
    margin-bottom: 25px;
    margin-top: 25px
}

#notify {
    margin-top: 25px;
    color: #b2b6bd
}

img.invite_image {
    max-width: 380px;
    max-height: 290px
}

@media (max-width: 700px) {
    div.invite_panel {
        display: block
    }
    
    div.friends_img_container {
        text-align: center;
        margin-top: 25px
    }
}

.profile__toggle-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.profile__toggle-text {
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2
}

.profile__cell + .profile__cell {
    margin-top: 25px
}

.profile__price {
    margin-top: 25px
}

.profile__price, .profile__price-station {
    margin-bottom: 0;
    display: block
}

@media (min-width: 768px) {
    .profile__cell + .profile__cell {
        margin-top: 0
    }
    
    .profile__price-station, .profile__price:last-child {
        margin-bottom: -6px
    }
    
    .profile__cell--align-baseline {
        margin-bottom: -4px
    }
}

.profile__form {
    margin-top: 30px
}

.profile__form-cell--phablet + .profile__form-cell--phablet {
    margin-top: 16px
}

.profile__form-cell--tablet + .profile__form-cell--tablet {
    margin-top: 16px
}

.profile__form-cell--tablet-large + .profile__form-cell--tablet-large {
    margin-top: 16px
}

@media (min-width: 480px) {
    .profile__form-cell--phablet + .profile__form-cell--phablet {
        margin-top: 0
    }
}

@media (min-width: 768px) {
    .profile__form-cell--tablet + .profile__form-cell--tablet {
        margin-top: 0
    }
}

@media (min-width: 1020px) {
    .profile__form-cell--tablet-large + .profile__form-cell--tablet-large {
        margin-top: 0
    }
}

.profile__table {
    width: 100%;
    margin-top: 30px;
    font-size: 13px
}

.profile__table + .profile__table {
    margin-top: 50px
}

.profile__table th {
    color: #666;
    text-align: left;
    font-weight: 400
}

.profile__table td {
    border-bottom: 1px solid #d4d4d4;
    padding: 14px 0
}

.profile__table td:first-child {
    width: 210px
}

.profile__table td:last-child {
    text-align: right
}

.profile__more {
    margin-top: 60px;
    text-align: center
}

.profile-intro {
    position: absolute;
    left: 0;
    right: 0;
    overflow: hidden;
    z-index: 5
}

.profile-intro__wrap {
    overflow: hidden;
    height: 440px;
    padding: 80px 0 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

.profile-intro-underlay {
    height: 440px
}

@media (min-width: 768px) {
    .profile-intro {
        position: fixed
    }
    
    .profile-intro__wrap {
        height: 500px;
        padding: 80px 0;
        will-change: transform
    }
    
    .profile-intro-underlay {
        height: 500px
    }
}

.profile-intro__bg {
    background: no-repeat 50% 50%;
    background-size: cover
}

.profile-intro__bg, .profile-intro__bg:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.profile-intro__bg:after {
    content: "";
    background: rgba(0, 0, 0, .6)
}

.profile-intro__bg:before {
    content: "";
    position: absolute;
    height: 90px;
    bottom: 0;
    right: 0;
    left: 0;
    background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .3))
}

.profile-intro__content {
    position: relative
}

.profile-intro__avatar {
    border-radius: 50%
}

.profile-intro__heading {
    margin-bottom: 2px
}

.profile-intro__lead {
    margin-bottom: 10px
}

.profile-intro__dot {
    font-family: Verdana, sans-serif;
    font-size: 70%;
    vertical-align: middle;
    margin-top: -5px;
    display: inline-block
}

.profile-intro__menu-wrap {
    border-top: 1px solid hsla(0, 0%, 100%, .4);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0
}

.profile-intro__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.profile-intro__menu-item {
    height: 66px;
    line-height: 66px;
    position: relative
}

.profile-intro__menu-item.is-active {
    color: hsla(0, 0%, 100%, .6)
}

.profile-intro__menu-item.is-active:after {
    content: "";
    border: 11px solid;
    border-color: transparent transparent #fff;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -11px
}

.profile-intro__menu-item-sup {
    background: #fff;
    color: #1a1a1a;
    border-radius: 2px;
    font-size: 10px;
    line-height: 13px;
    padding: 0 4px;
    min-width: 16px;
    text-align: center;
    display: inline-block;
    font-weight: 700;
    position: relative;
    top: -.15em
}

.stations-wrap {
    background-color: #f3f2f1
}

@media (min-width: 1020px) {
    .stations-wrap {
        padding-top: 90px
    }
}

.stations {
    background-color: #f3f2f1;
    padding-top: 40px;
    padding-bottom: 40px
}

@media (min-width: 768px) {
    .stations--index {
        padding-top: 60px;
        padding-bottom: 70px
    }
}

.stations__item {
    position: relative;
    background-color: #fff;
    border-radius: 3px;
    overflow: hidden
}

.stations__item + .stations__item {
    margin-top: 40px
}

@media (min-width: 768px) {
    .stations__item--large + .stations__item--large {
        margin-top: 60px
    }
}

.stations__card {
    position: relative;
    padding: 26px 30px 30px;
    background-color: #fff;
    border-radius: 3px;
    overflow: hidden;
    pointer-events: auto
}

@media (min-width: 1020px) {
    .stations__card {
        padding: 30px 40px 40px
    }
}

.stations__card-action {
    display: block;
    width: 155px;
    height: 155px;
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
}

.stations__card-action ~ .stations__name {
    padding-right: 115px;
}

@media (max-width: 1400px) {
    .stations__card-action {
        width: 120px;
        height: 120px;
    }
    
    .stations__card-action ~ .stations__name {
        padding-right: 80px;
    }
}

@media (max-width: 980px) {
    .stations__card-action {
        width: 100px;
        height: 100px;
    }
    
    .stations__card-action ~ .stations__name {
        padding-right: 70px;
    }
}

@media (min-width: 768px) and (max-width: 980px) {
    .grid__item--1-2--tablet .stations__card-action {
        width: 80px;
        height: 80px;
    }

    .grid__item--1-2--tablet .stations__card-action ~ .stations__name {
        padding-right: 50px;
    }
}

.stations__image-cell {
    position: relative
}

.stations__image {
    display: block;
    background: no-repeat 50% 50%;
    background-size: cover;
    min-height: 220px
}

.stations__image--static {
    position: static !important
}

@media (min-width: 480px) {
    .stations__image {
        min-height: 270px
    }
}

@media (min-width: 768px) {
    .stations__image {
        position: absolute;
        left: 30px;
        right: -30px;
        top: 0;
        bottom: 0
    }
    
    .stations__image-cell .stations__image {
        min-height: 0
    }
}

@media (min-width: 1220px) {
    .stations__image {
        left: 50px;
        right: -50px
    }
}

.stations__location {
    margin-bottom: 5px
}

.stations__name {
    margin-left: -.06em;
    margin-bottom: 10px
}

.stations__address--metro, .stations__address--station {
    font-weight: 700
}

@media (min-width: 1220px) {
    .stations__address--swiper {
        min-height: 60px
    }

    .stations__address--swiper-lg {
        min-height: 80px;
    }
}

.stations__description {
    margin-top: 20px;
    margin-bottom: 20px;
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2
}

.stations__button {
    margin-top: 25px;
    display: block;
    width: 100%
}

.stations__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 30px
}

.stations__divider {
    margin: 25px -40px
}

@media (min-width: 1020px) {
    .stations__swiper-wrapper {
        width: auto
    }
    
    .stations__swiper-slide {
        width: 33.3333%
    }
}

@media (max-width: 767px) {
    .stations__swiper-slide {
        opacity: .5;
        transition: opacity .3s
    }
    
    .stations__swiper-slide.swiper-slide-active {
        opacity: 1
    }
}

@media (max-width: 1019px) {
    .stations__swiper-wrapper {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        margin-left: 0
    }
    
    .stations__swiper-slide {
        width: 90%;
        max-width: 400px;
        padding-left: 0
    }
}

.stations__select {
    margin-top: 20px
}

@media (min-width: 768px) {
    .stations__select {
        margin-top: 0
    }
}

.stations__map-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.stations__map {
    min-height: 280px
}

@media (min-width: 768px) {
    .stations__map {
        position: fixed;
        bottom: 0;
        top: 0
    }
}

.location {
    padding-top: 50px;
    padding-bottom: 50px
}

@media (min-width: 1020px) {
    .location {
        padding-top: 80px;
        padding-bottom: 80px
    }
}

.location__grid {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.location__map {
    width: 100%;
    height: 190px;
    border-radius: 3px 3px 0 0;
    overflow: hidden;
    margin-top: 20px
}

.black_map {
    height: 290px;
}

@media (min-width: 768px) {
    .location__map {
        margin-top: 0
    }
}

.location__expand {
    width: 100%;
    border-radius: 0 0 3px 3px;
    border-color: #ccc
}

.location__modal-map-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.location__modal-map {
    width: 100%;
    min-height: 260px
}

@media (min-height: 700px) and (min-width: 768px) {
    .location__modal-map {
        min-height: 500px
    }
}

.location__modal-content {
    max-height: calc(100vh - 146px);
    overflow-y: auto
}

.tickets {
    background-color: #f3f2f1;
    padding-top: 40px;
    padding-bottom: 40px
}

@media (min-width: 1020px) {
    .tickets {
        padding-top: 50px;
        padding-bottom: 60px
    }
}

.tickets__header {
    margin-bottom: 40px
}

@media (min-width: 768px) {
    .tickets__header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.tickets__header-title {
    display: inline-block;
    margin-right: 32px
}

.tickets__datepicker {
    margin-top: 20px
}

@media (min-width: 768px) {
    .tickets__datepicker {
        margin-top: 0;
        width: 250px
    }
}

.tickets__comapre-switcher {
    margin-top: 20px
}

.tickets__comapre-switcher .is-active {
    display: none
}

@media (min-width: 768px) {
    .tickets__comapre-switcher {
        margin-top: 0;
        -webkit-box-flex: 2;
        -ms-flex-positive: 2;
        flex-grow: 2;
        text-align: right
    }
}

.tickets__grid {
    margin-top: -30px
}

.tickets__cell {
    margin-top: 30px
}

@media (min-width: 1220px) {
    .tickets__grid {
        margin-top: -40px
    }
    
    .tickets__cell {
        margin-top: 40px
    }
}

.tickets__panel {
    position: relative;
    overflow: hidden;
    background: #fff;
    border-radius: 3px
}

.tickets__panel, .tickets__panel-inner {
    padding: 20px 20px 25px
}

@media (min-width: 768px) {
    .tickets__panel-image-cell {
        position: relative
    }
    
    .tickets__panel-image {
        background: no-repeat 50% 50%;
        background-size: cover;
        position: absolute;
        left: 30px;
        right: -30px;
        top: 0;
        bottom: 0
    }
}

@media (min-width: 1020px) {
    .tickets__panel, .tickets__panel-inner {
        padding: 28px 40px 40px
    }
}

@media (min-width: 1220px) {
    .tickets__panel-image {
        left: 50px;
        right: -50px
    }
}

.tickets__panel-action {
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
}

@media (max-width: 1220px) {
    .tickets__panel-action {
        width: 95px;
        height: 95px;
    }
}

@media (max-width: 980px) {
    .tickets__panel-action {
        width: 55px;
        height: 55px;
    }
}

@media (max-width: 767px) {
    .tickets__panel-action {
        width: 85px;
        height: 85px;
    }
}

@media (min-width: 768px) {
    .tickets__name {
        margin-top: 6px
    }
}

.tickets__labels {
    margin-top: 10px;
    margin-bottom: 20px;
    font-size: 0
}

.tickets__label {
    display: inline-block;
    padding: 6px 16px 5px;
    border: 1px solid #ccc;
    font-size: 14px;
    line-height: 17px;
    cursor: pointer;
    background: #fff;
    transition: .25s;
    margin-right: -1px;
}

.tickets__label:first-child {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px
}

.tickets__label:last-child {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    margin-right: 0;
}

.tickets__label:first-child:last-child {
    cursor: default
}

.tickets__label:hover {
    background: #f3f2f1
}

.tickets__label.is-active {
    background-color: #e6e4e3;
    cursor: default
}

@media (max-width: 1019px) {
    .tickets__label {
        padding: 6px 14px 5px;
    }
}

@media (max-width: 767px) {
    .tickets__label {
        padding: 6px 8px 5px;
    }
}

.tickets__features {
    margin-top: 26px;
    margin-bottom: 18px
}

.tickets__features-grid {
    margin-top: 26px;
    margin-bottom: 20px
}

@media (min-width: 768px) {
    .tickets__features-grid {
        margin-top: 26px;
        margin-bottom: 32px
    }
}

@media (min-width: 1220px) {
    .tickets__features-grid {
        margin-top: 30px;
        margin-bottom: 40px
    }
}

.tickets__items {
    list-style: none
}

.tickets__type-special {
    margin-top: 25px
}

.tickets__description-special {
    margin-top: 10px;
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 30px
}

@media (max-width: 1219px) {
    .tickets__description-special {
        margin-bottom: 15px;
    }
}

.tickets__labels-special {
    margin-bottom: 20px
}

.tickets__price-line {
    max-width: 301px;
    height: 2px;
    border: solid 1px #ccc
}

.tickets__price-special {
    font-size: 38px;
    line-height: 1.16
}

.daddy_wants_freeby {
    width: 250px !important;
    max-width: 100%;
    margin: 0 !important;
    margin-top: 25px !important
}

.tickets__price-subtext {
    max-width: 312px;
    font-family: GraphikLCG;
    font-size: 15px;
    line-height: 18px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    letter-spacing: normal;
    color: #999;
    margin-bottom: 2px
}

.tickets__price-top {
    margin-top: 10px;
    font-size: 24px !important;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.83;
    letter-spacing: -.6px;
    color: #1a1a1a;
    font-family: GraphikLCG
}

.tickets__price-top-month {
    margin-bottom: 0 !important
}

.tickets__features-creatures {
    height: 400px
}

.tickets__feature-special {
    font-family: GraphikLCG;
    font-size: 20px;
    font-weight: 500;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.4;
    letter-spacing: normal;
    color: #1a1a1a;
    padding-left: 0 !important
}

.tickets__feature-special:before {
    content: none !important
}

.tickets__feature {
    position: relative;
    padding: 4px 0 4px 45px
}

.tickets__feature:before {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    left: 0;
    top: 50%;
    margin-top: -15px;
    background-image: url(../img/check-yes.svg);
    background-size: contain !important
}

.tickets__feature-drop:before {
    background: url(../img/icon-drop.png) no-repeat center center;
    height: 21px
}

.tickets__feature-clock:before {
    background: url(../img/icon-clock.png) no-repeat center center;
    height: 18px
}

.tickets__feature-printer:before {
    background: url(../img/icon-printer.png) no-repeat center center;
    height: 19px
}

.tickets__feature-cup:before {
    background: url(../img/icon-cup.png) no-repeat center center;
    height: 19px
}

.tickets__feature-desk:before {
    background: url(../img/icon-desk.png) no-repeat center center;
    height: 24px
}

.tickets__feature-percent:before {
    background: url(../img/icon-percent.png) no-repeat center center;
    height: 24px
}

.tickets__feature-calendar:before {
    background: url(../img/icon-calendar.png) no-repeat center center;
    height: 19px
}

.tickets__feature-exchange:before {
    background: url(../img/icon-exchange.png) no-repeat center center;
    height: 20px
}

.tickets__feature-speech:before {
    background: url(../img/icon-speech.png) no-repeat center center;
    height: 18px
}

.tickets__feature-bowl:before {
    background: url(../img/icon-bowl.png) no-repeat center center;
    height: 24px
}

.tickets__feature-cabinet:before {
    background: url(../img/icon-cabinet.png) no-repeat center center;
    height: 24px
}

.tickets__feature-diner:before {
    background: url(../img/icon-diner.png) no-repeat center center;
    height: 24px
}

.tickets__feature-hotel:before {
    background: url(../img/icon-hotel.png) no-repeat center center;
    height: 28px
}

.tickets__feature-wifi:before {
    background: url(../img/icon-wifi.png) no-repeat center center;
    height: 28px
}

.tickets__feature + .tickets__feature {
    margin-top: 12px
}

@media (min-width: 1220px) {
    .tickets__feature + .tickets__feature {
        margin-top: 15px
    }
}

.tickets__feature--disabled {
    color: #999
}

.tickets__feature--disabled:before {
    background-image: url(../img/check-no.svg)
}

.details + .tickets__features--details, .tickets__features--details + .details {
    margin-top: 15px;
    border-top: 1px solid #e6e4e3;
    padding-top: 15px
}

.tickets__features--details .tickets__feature {
    padding: 0 0 0 30px
}

.tickets__features--details .tickets__feature + .tickets__feature {
    margin-top: 10px
}

.tickets__features--details .tickets__feature:before {
    width: 20px;
    height: 20px;
    background-size: 20px 20px;
    margin-top: -10px;
    background-image: url(../img/check-yes-small.svg)
}

.tickets__price {
    margin-bottom: 20px
}

.price {
    font-size: 62px;
    line-height: 58px
}

.price__date, .price__ruble {
    vertical-align: top;
    font-size: 30px;
    line-height: 36px
}

.tickets__buy-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.tickets__buy {
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.tickets__buy-note {
    margin-top: 14px
}

@media (min-width: 1220px) {
    .tickets__buy-wrap {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }
    
    .tickets__buy {
        margin-right: 20px
    }
    
    .tickets__buy-note {
        margin-top: 4px
    }

    .tickets__btn-wrapper {
        margin-left: 15px;
    }
}

.tickets__footnote {
    font-size: 13px;
    color: #666;
    margin-top: 30px;
    display: inline-block
}

.tickets__button {
    height: 50px;
    min-width: 250px;
    border: 1px solid #ccc;
    color: #1a1a1a;
    border-radius: 2px;
    background: 0 0;
    transition: .3s
}

.tickets__button:hover {
    background: #f3f2f1
}

.tickets__button--green {
    border: 1px solid #0f9954;
    color: #0f9954
}

.tickets__button--green:hover {
    color: #fff;
    background-color: #0f9954
}

.services {
    padding-top: 40px;
    padding-bottom: 40px;
    display: none
}

@media (min-width: 1020px) {
    .services {
        display: block;
        padding-top: 60px;
        padding-bottom: 60px
    }
}

.services__row:not(:first-child) {
    margin-top: 42px
}

.services__title {
    margin-bottom: 14px
}

.services__details {
    color: #666;
    width: 100%
}

.services__details tr:not(:last-child) {
    border-bottom: 1px solid #d4d4d4
}

.services__details td {
    line-height: 21px;
    width: 50%;
    padding: 14px 0;
    vertical-align: top
}

.services__details td:not(:first-child) {
    padding-left: 23px
}

.services__details td:not(:last-child) {
    padding-right: 15px
}

.services__details tr:last-child td {
    padding-bottom: 0
}

.main-services {
    padding-top: 30px
}

@media (min-width: 1020px) {
    .main-services {
        padding-top: 60px;
        padding-bottom: 25px
    }
}

.main-services__item {
    margin-bottom: 35px
}

.main-services__image {
    display: block;
    width: 100%;
    border-radius: 3px
}

.main-services__title {
    margin: 20px 0 10px
}

@media (min-width: 768px) {
    .main-services__title {
        margin-top: 30px
    }
}

.main-services__link .main-services__image, .main-services__link .main-services__title {
    transition: .2s
}

.main-services__link:hover .main-services__image {
    opacity: .8
}

.main-services__link:hover .main-services__title {
    color: #12b362
}

.extra-services {
    background: #f3f2f1;
    padding-bottom: 5px;
    display: none
}

@media (min-width: 1020px) {
    .extra-services {
        display: block;
        padding-bottom: 25px
    }
}

.extra-services__grid {
    overflow: hidden
}

.extra-services__cell {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.extra-services__cell--hidden {
    display: none
}

.extra-services__cell--hidden .extra-service {
    border-bottom-color: transparent
}

.extra-service {
    padding-top: 35px;
    padding-bottom: 30px;
    margin-bottom: -1px;
    border-bottom: 1px solid #d4d4d4
}

.extra-service__icon-wrap {
    position: relative;
    height: 50px
}

.extra-service__icon {
    position: absolute;
    left: 0;
    bottom: 0
}

.extra-service__title {
    font-weight: 700;
    margin-top: 20px;
    margin-bottom: 20px
}

.extra-service__description {
    color: #666;
    margin-bottom: 20px
}

.extra-services__expand {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 35px;
    padding-top: 24px;
    padding-bottom: 24px;
    display: block
}

.extra-services__expand.is-active .extra-services__expand-text--inactive {
    display: none
}

.extra-services__expand.is-active .extra-services__expand-text--active {
    display: inline-block
}

.extra-services__expand-text--active {
    display: none
}

.details {
    font-size: 13px
}

.details + .details {
    margin-top: 15px;
    border-top: 1px solid #e6e4e3;
    padding-top: 15px
}

.details__row + .details__row {
    margin-top: 10px
}

.details__item:nth-child(2) {
    font-weight: 700
}

.details-list__item--light {
    font-weight: 400
}

@media (min-width: 1220px) {
    .details {
        display: table;
        width: 100%
    }
    
    .details__row {
        display: table-row
    }
    
    .details__row + .details__row {
        margin-top: 0
    }
    
    .details__row + .details__row .details__item {
        padding-top: 10px
    }
    
    .details__item {
        display: table-cell;
        vertical-align: top
    }
    
    .details__item:nth-child(2) {
        padding-left: 10px;
        text-align: right
    }
    
    .details--extra-service .details__item {
        width: 50%;
        text-align: left
    }
}

.subscriptions__table {
    table-layout: fixed;
    width: calc(100% + 80px);
    margin-left: -40px;
    margin-right: -40px;
    border-collapse: separate;
    border-spacing: 40px 0;
    text-align: center
}

.subscriptions__header .subscriptions__row:first-child .subscriptions__cell {
    padding-top: 0;
    padding-bottom: 20px;
    vertical-align: top
}

.subscriptions__header td {
    border-bottom: 1px solid #d4d4d4
}

.subscriptions__period {
    margin-bottom: 15px;
    display: block;
    color: #6e6e6e
}

.subscriptions__row td * {
    vertical-align: middle
}

.subscriptions__row:not(:last-child) td {
    border-bottom: 1px solid #d4d4d4
}

.subscriptions__column--first {
    text-align: left;
    font-weight: 700
}

.subscriptions__column--large {
    width: 367px
}

.subscriptions__cell {
    padding: 30px 0;
    word-break: break-word
}

.subscriptions__type {
    font-weight: 700;
    padding-bottom: 5px;
    display: inline-block
}

.subscriptions__price {
    font-weight: 700
}

.subscriptions__grey {
    color: #6e6e6e;
    font-weight: 400
}

.slider-header {
    position: relative
}

.slider-header .swiper-container {
    height: 280px
}

.slider-header .swiper-container .swiper-button-next, .slider-header .swiper-container .swiper-button-prev {
    display: none;
    z-index: 2
}

.slider-header .swiper-container .swiper-wrapper .swiper-slide {
    background-size: cover;
    position: relative
}

@media (min-width: 768px) {
    .slider-header .swiper-container {
        height: calc(100vh - 90px)
    }
    
    .slider-header .swiper-container .swiper-button-next, .slider-header .swiper-container .swiper-button-prev {
        display: block
    }
}

.slider-header__gradient {
    width: 100%;
    height: 200px;
    bottom: 0;
    z-index: 1;
    position: absolute;
    background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, .4));
    display: none
}

@media (min-width: 768px) {
    .slider-header__gradient {
        display: block
    }
}

.slider-header__content {
    display: none
}

@media (min-width: 768px) {
    .slider-header__content {
        display: block;
        z-index: 1;
        position: absolute;
        bottom: 0;
        width: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.slider-header__station {
    margin-bottom: 25px;
    color: #fff;
    float: left;
    text-align: left
}

.slider-header__station > span {
    display: block
}

.slider-header__city {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px;
    font-weight: 700
}

.slider-header__name {
    font-size: 48px;
    line-height: normal;
    margin-left: -5px;
    margin-top: 4px
}

.slider-header__address {
    margin-top: 8px;
    display: inline
}

.slider-header__subway {
    font-weight: 700
}

.slider-content-hidden {
    background-color: #edeceb;
    padding-bottom: 10px;
    display: block
}

@media (min-width: 768px) {
    .slider-content-hidden {
        display: none
    }
}

.slider-content-hidden__station {
    padding: 20px 17px;
    color: #000
}

.slider-content-hidden__station > span {
    display: block
}

.slider-content-hidden__city {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px;
    font-weight: 700
}

.slider-content-hidden__name {
    font-size: 48px;
    line-height: normal;
    margin-left: -3px;
    margin-top: 3px
}

.slider-content-hidden__address {
    margin-top: 5px
}

.slider-content-hidden__subway {
    font-weight: 700;
    display: inline
}

.slider-content-hidden__button {
    background-color: #12b362;
    border-radius: 3px;
    color: #fff;
    height: 50px;
    font-size: 15px;
    width: calc(100% - 34px);
    margin: 7px 17px 0;
    display: inline-block;
    border: 0;
    cursor: pointer
}

.slider-content-hidden__phone {
    width: 100%;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    padding: 30px 0
}

.slider-content-hidden__phone a {
    color: #000
}

.slider-content-hidden__hours {
    display: block;
    font-weight: 400;
    padding-top: 10px
}

.buy {
    padding: 40px 0 60px;
    position: relative;
    z-index: 1;
    background: #f3f2f1
}

@media (min-width: 1020px) {
    .buy {
        padding: 60px 0 80px
    }
}

.buy--close {
    margin: 0;
    min-height: 600px
}

.buy--close:after {
    content: "";
    background-color: #000;
    width: 100%;
    height: 100%;
    display: block;
    opacity: .6;
    position: absolute;
    top: 0;
    z-index: -1
}

.buy__photo-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.buy__photo-button {
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2
}

.buy__photo-image {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin: -10px 0 -10px 25px
}

.buy__page, .buy__steps {
    display: inline-block
}

.buy__steps {
    margin-left: 25px
}

.buy__title {
    font-size: 13px;
    margin-bottom: 10px
}

.buy__datepicked {
    width: 100%;
    float: left
}

@media (min-width: 768px) {
    .buy__datepicked {
        width: 367px
    }
}

.buy__action {
    width: 100%;
    position: relative;
    float: left;
    margin-top: 15px
}

@media (min-width: 1220px) {
    .buy__action {
        position: absolute;
        right: 0;
        bottom: 35px
    }
}

@media (min-width: 768px) {
    .buy__action {
        width: 367px
    }
}

.buy__warning {
    margin-top: 15px;
    display: block;
    margin-bottom: 30px;
    font-size: 13px;
    color: #666
}

.buy__warning:before {
    content: "";
    clear: both;
    display: table
}

.buy__value {
    color: #666;
    position: absolute;
    top: 40px;
    left: 23px;
    font-size: 15px;
    z-index: 1
}

.buy__label {
    width: 100%;
    min-height: 77px;
    position: relative;
    display: inline-block;
    font-size: 13px;
    margin-bottom: 15px;
    color: #1a1a1a
}

@media (min-width: 768px) {
    .buy__label {
        width: 46%
    }
}

.buy__label--block {
    display: block
}

.buy__label--small {
    width: 46%
}

@media (min-width: 768px) {
    .buy__label--small {
        margin-left: 10px;
        width: 24%;
        float: right
    }
}

@media (min-width: 1020px) {
    .buy__label--small {
        width: 21.5%;
        margin-left: 5.5%
    }
}

.buy__input, .buy__select {
    width: 100%;
    margin-top: 7px
}

.buy__input {
    height: 50px;
    color: #1a1a1a;
    padding-left: 21px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none;
    border: 1px solid #ccc;
    transition: .3s
}

.buy__input--error {
    border: 1px solid #d9252a
}

.buy__file {
    display: none
}


.buy.modal__container {
    padding: 40px 20px;
}

@media (min-width: 768px) {
    .buy.modal__container {
        padding: 50px;
    }
}

@media (max-width: 1019px) {
    .buy.modal__container .buy__info {
        margin-top: 30px;
    }
}

@media (max-width: 767px) {
    .buy.modal__container .buy__info {
        padding-left: 20px;
        padding-right: 20px;
    }
    
    .buy.modal__container .datepicker {
        min-width: 198px;
        margin-top: 0;
    }
}

@media (max-width: 375px) {
    .buy.modal__container .datepicker__label {
        font-size: 13px;
        padding: 0 25px 0 10px;
    }
}


.steps {
    font-size: 13px;
    color: #666;
    line-height: 26px
}

.ticket__text {
    font-size: 22px;
    color: #1a1a1a
}

.ticket__name {
    font-weight: 700
}

.station__text {
    font-size: 22px;
    color: #1a1a1a
}

.station__name {
    font-weight: 700
}

.register__header {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media (min-width: 1020px) {
    .register__divider {
        margin-top: 20px
    }
}

.buy__info-cell {
    margin-top: 30px
}

@media (min-width: 768px) {
    .buy__info-cell {
        margin-top: 0
    }
}

.buy__info {
    background: #fff;
    border-radius: 3px;
    padding: 25px 30px
}

.buy__sms-counter {
    min-width: 2.25em;
    display: inline-block;
    text-align: left
}

.datepicker {
    position: relative;
    max-width: 100%;
}

.datepicker__label {
    display: block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
    cursor: pointer
}

.datepicker__input {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    top: 0;
    left: 0;
    cursor: pointer
}

.modal .datepicker__input {
    z-index: 102
}

.auth__or {
    text-align: center;
    font-size: 15px;
    padding: 15px 0;
    display: block
}

.auth__button {
    width: 100%;
    margin: 30px 0 40.5px
}

.auth__helper {
    border-top: 1px solid #d4d4d4;
    padding-top: 23.5px
}

.btn-block.form-control-sm {
    background: #ededed;
    color: #919191;
    border: 0;
    height: 50px;
    width: 300px;
    font-size: 14px;
    padding: 14px
}

.btn.btn-sm {
    background: #0f9953;
    color: #fff;
    border: 0;
    height: 44px;
    width: 140px;
    font-size: 14px
}

.widget.subscribe {
    float: left;
    margin-bottom: 2%
}

.footer__left {
    float: left
}

.partners_101 {
    float: left;
    width: 30%;
    max-width: 108px
}

@media screen and (max-width: 680px) {
    .btn-block.form-control-sm {
        background: #ededed;
        color: #919191;
        border: 0;
        height: 50px;
        width: 225px;
        font-size: 14px;
        padding: 14px
    }
    
    .btn.btn-sm {
        background: #0f9953;
        color: #fff;
        border: 0;
        height: 44px;
        width: 100px;
        font-size: 14px;
        padding-left: 0;
        padding-right: 0
    }
    
    .widget.subscribe {
        float: left;
        padding-top: 30px;
        width: auto
    }
    
    .note {
        padding-top: 0
    }
    
    .partners_101 {
        width: 20%;
        float: none
    }
}

.form-group.has-error .form-control, .form-group.has-error .input-group-addon {
    border-color: #dd4b39;
    box-shadow: none
}

.form-group.has-error .help-block {
    color: #dd4b39
}

.sticky-icky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 400px
}

.comment-special {
    height: 254px
}

.modal-form-special {
    padding-left: 0
}

.hr-special {
    margin: 25px 0
}

.btn.btn-sm.btn-card-special {
    width: 100% !important;
    background: #12b362 !important
}

.special-card-wrap {
    padding-top: 35px
}

.brand-new {
    height: 600px
}

.text-aligner {
    text-align: center
}

.bottom-stylist {
    opacity: .8;
    font-size: 19px
}

.fonty-monty {
    font-family: Graphik, sans-serif
}

.sizer {
    padding-top: 40px
}

.brand-new-wrap {
    position: absolute;
    bottom: 55px
}

.btn.btn-sm.brand-new-button {
    width: 280px !important;
    background: #12b362 !important
}

.phony__pony {
    display: block
}

@media (max-width: 765px) {
    .comment-special {
        padding-left: 0
    }
}

@media (max-width: 768px) {
    .fonty-monty {
        display: none
    }
    
    .brand-new-wrap.big_deal {
        display: none
    }
    
    .brand-new {
        height: 400px
    }
}

@media (min-width: 1020px) {
    .phony__pony {
        display: none !important
    }
}

.call-form {
    margin: auto;
    margin-top: 40px;
    padding-top: 30px;
    width: 659px;
    height: 110px;
    background-color: rgba(14, 14, 14, .6);
    border-radius: 4px
}

.call_form_replay {
    margin: auto;
    margin-top: 40px;
    padding-top: 20px;
    width: 659px;
    height: 110px;
    background-color: rgba(14, 14, 14, .6);
    border-radius: 4px;
    display: none
}

.call-input {
    width: 326px;
    height: 50px;
    border-radius: 3px;
    background-color: #fff;
    border: solid 1px #b3b3b3;
    padding: 14px;
    opacity: 1
}

.station-input {
    width: 100%;
    height: 50px;
    border-radius: 3px;
    background-color: #fff;
    border: solid 1px #b3b3b3;
    padding: 14px
}

.call-label {
    margin-left: 30px;
    width: 568px;
    height: 19px;
    font-family: Graphik, sans-serif;
    font-size: 12px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.58;
    letter-spacing: -.2px;
    text-align: center;
    color: #b9b9b9;
    display: none
}

.call-group {
    margin-bottom: 10px
}

.call_ch {
    width: 16px;
    height: 16px;
    border-radius: 3px;
    background-color: #12b362 !important;
    display: inline
}

.squaredThree input[type=checkbox] {
    visibility: hidden
}

.squaredThree {
    width: 20px;
    margin-left: 20px;
    position: relative;
    display: none
}

.squaredThree label {
    cursor: pointer;
    position: absolute;
    width: 16px;
    height: 16px;
    top: 20px;
    border-radius: 3px;
    background-color: #12b362
}

.squaredThree label:after {
    opacity: 0;
    content: '';
    position: absolute;
    width: 9px;
    height: 5px;
    background: 0 0;
    top: 3px;
    left: 3px;
    border: 3px solid #000;
    border-top: none;
    border-right: none;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.squaredThree label:hover::after {
    opacity: .3
}

.squaredThree input[type=checkbox]:checked + label:after {
    opacity: 1
}

.call-label-replay_1 {
    width: 256px;
    height: 34px;
    font-family: Helvetica;
    font-size: 28px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: #fff
}

.call-label-replay_2 {
    position: relative;
    top: 6px;
    width: 356px;
    height: 24px;
    font-family: Graphik;
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: center;
    color: #fff
}

.bt_mobile {
    width: 272px;
    margin: auto;
    display: block
}

.call-form-mobile {
    margin: auto;
    margin-top: 10px;
    padding-top: 30px;
    display: none
}

.call-input-mobile {
    width: 272px;
    height: 50px;
    border-radius: 3px;
    background-color: #fff;
    border: solid 1px #b3b3b3;
    padding: 14px;
    opacity: 1;
    display: block;
    margin: auto
}

.fonty-monty_mobile {
    display: block;
    margin: auto;
    text-align: center;
    padding-bottom: 35px;
    font-size: 15px
}

.call-label_mobile {
    margin-left: 60px;
    width: 568px;
    height: 19px;
    font-family: Graphik, sans-serif;
    font-size: 12px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.58;
    letter-spacing: -.2px;
    text-align: center;
    color: #b9b9b9
}

.div_label {
    width: 300px;
    text-align: left;
    display: none
}

.call-label-replay_1_mobile {
    width: 256px;
    height: 34px;
    font-family: Helvetica;
    font-size: 28px;
    line-height: 24px;
    margin: auto
}

.call-label-replay_2_mobile {
    width: 203px;
    height: 48px;
    font-family: Graphik;
    font-size: 18px;
    line-height: 24px;
    margin: auto
}

.call_form_replay_mobile {
    display: none;
    margin: auto;
    text-align: center;
    padding-top: 20px
}

@media (max-width: 768px) {
    .call-form {
        display: none
    }
    
    .call-form-mobile {
        display: block
    }
}

.stamp {
    background-image: url(../img/group-3.png);
    width: 160px;
    height: 150px;
    object-fit: contain;
    transform: rotate(33deg);
    z-index: 10;
    position: relative;
    top: -200px;
    left: 665px
}

.block {
    padding-top: 150px
}

.c-validation {
    background: #fff !important;
    color: #1a1a1a;
    padding: 10px !important;
    border-radius: 0 !important;
    position: relative;
    display: inline-block;
    box-shadow: 1px 1px 1px #aaa;
    margin-top: 10px;
    z-index: 100000;
    left: -130px;
    top: -50px
}

.c-validation:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
    position: absolute;
    top: -10px;
    left: 136px
}

.c-label:after {
    color: #fff !important
}

.c-error .c-choice-option, .c-error input, .c-error select {
    background: #fff0f4;
    color: #c51244
}

.c-error input, .c-error select {
    border: 1px solid #c51244 !important
}

.call-form-mobile {
    padding-top: 10px
}

.fonty-monty_mobile {
    width: 196px;
    height: 57px;
    font-family: Graphik;
    font-size: 15px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.27;
    letter-spacing: normal;
    text-align: center;
    color: #fff
}

.div_label {
    width: 243px;
    height: 57px;
    font-family: Graphik;
    font-size: 12px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.58;
    letter-spacing: -.2px;
    text-align: left;
    color: #a4a4a4;
    margin: auto
}

.stamp_mobile {
    background-image: url(../img/group-2.png);
    width: 195px;
    height: 80px;
    object-fit: contain;
    transform: rotate(-5deg);
    margin: auto;
    margin-bottom: 45px;
    margin-top: 30px
}

.lbm {
    background-color: #919191 !important
}

.station-input {
    margin-top: 20px
}

.station {
    width: 90%;
    margin: auto;
    height: 150px;
    background: #1a1a1a;
    border-radius: 4px;
    display: none
}

.call-label-station_1 {
    margin: auto;
    padding-top: 25px;
    font-family: Graphik;
    font-size: 20px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.25;
    letter-spacing: normal;
    text-align: center;
    color: #fff
}

.call-label-station_2 {
    margin: auto;
    padding-top: 20px;
    font-family: Graphik;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: center;
    color: #fff
}

.link {
    margin: auto;
    margin-top: 25px;
    display: block;
    color: #696969;
    width: 100%;
    text-align: center
}

.small_f {
    border: 1px solid #aaa
}

.small_f:before {
    content: none
}

@media (max-width: 768px) {
    .fl {
        font-size: 24px;
        line-height: 1.25
    }
    
    .block {
        padding-top: 230px
    }
    
    .start {
        height: 560px
    }
    
    .c-validation {
        position: absolute;
        left: 0;
        top: -25px;
        font-size: 12px
    }
    
    .call_form_replay {
        width: 295px;
        height: 150px
    }
    
    .call-label-station_2 {
        padding-top: 0
    }
    
    .small_f {
        font-size: 10px
    }
    
    .c-validation:before {
        content: none
    }
    
    .small_f {
        left: 0;
        top: -28px;
        padding: 5px !important
    }
    
    .stations__divider-modal {
        margin: 25px -10px
    }
}

.small_f {
    position: absolute;
    left: 0;
    top: -28px;
    padding: 5px !important;
    font-size: 14px
}

.parent {
    position: relative
}

.pos_left {
    left: 45px;
    top: -55px
}

.plaza_price_font {
    font-size: 33px
}

.test-wrapper {
    margin-top: 50px;
    width: 400px
}

.stations__form {
    position: relative
}

.stations__form:before {
    content: '';
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    right: 0;
    top: 0;
    background: url(../img/free_day.png) no-repeat center center;
    background-size: cover;
    z-index: 500
}

.stations__form-park:before {
    content: '';
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    right: 0;
    top: 0;
    background: url(../img/free_day.png) no-repeat center center;
    background-size: cover;
    z-index: 500
}

.balchug-card:before {
    content: '';
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    right: 10px;
    top: 10px;
    background: url(../img/coming_up.png) no-repeat center center;
    background-size: cover;
    z-index: 500
}

.stations__form-no-before:before {
    content: none
}

.stations__form-hidden-top {
    display: none
}

.slider-content-hidden .stations__form {
    background-color: inherit
}

@media (max-width: 768px) {
    .stations__form-in-slider {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .stations__form-hidden-top {
        display: block
    }
    
    .stations__form-hidden-top img {
        width: 100%;
        max-width: 100%;
        margin-bottom: 10px
    }
    
    .test-wrapper {
        width: 100%
    }
    
    .test-wrapper .stations__card {
        padding: 26px 5px 30px 5px;
        background-color: #fff;
        border-radius: 3px;
        overflow: hidden;
        pointer-events: auto
    }
}

.center__link {
    width: 100%;
    margin-top: 25px;
    display: inline-block;
    text-align: center;
    color: #0f9954
}

.big-head-sec {
    position: relative;
    padding-top: 100px;
    padding-bottom: 40px;
    background: url(/img/bg-big-head.jpg) center no-repeat;
    background-size: cover
}

.big-head-sec .container__cab {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 540px
}

.big-head {
    max-width: 720px
}

.big-head .page-title {
    padding-bottom: 60px
}

.big-head .page-title .h1 {
    margin-bottom: 40px;
    line-height: 1.2
}

.big-head .c-validation {
    left: 150px;
    top: -85px;
    display: none;
    max-width: 350px
}

.big-head .c-validation:before {
    left: 15px
}

.big-head .call_form_replay {
    text-align: center;
    margin-top: 0;
    height: 125px;
    padding-top: 30px
}

.big-head__form {
    position: relative
}

.big-head__promo {
    position: absolute;
    top: -90px;
    right: -130px;
    display: block;
    max-width: 100%;
    pointer-events: none
}

.big-head__promo-mobile {
    display: none
}

.container__cab {
    max-width: 1020px;
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
    display: block
}

.page-title {
    text-align: center;
    color: #fff
}

.page-title .h1 {
    font-size: 42px;
    line-height: 1.27
}

.page-title span {
    font-size: 18px
}

.page-title--black {
    color: #1a1a1a
}

.b-form {
    max-width: 660px;
    margin: 0 auto;
    padding: 30px 30px;
    border-radius: 4px;
    background-color: rgba(14, 14, 14, .6)
}

.b-form__row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

.b-form__row .btn, .b-form__row .call-input {
    margin-bottom: 15px
}

.b-form__row .call-input {
    margin-right: 20px
}

.b-form__row .btn {
    max-width: 250px
}

.style-checkbox {
    display: none;
    position: relative;
    cursor: pointer;
    font-size: 12px
}

.style-checkbox input {
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0
}

.style-checkbox input:checked + span:after {
    opacity: 1
}

.style-checkbox input.error + span:before {
    border-color: #c00
}

.style-checkbox span {
    display: block;
    position: relative;
    padding-left: 30px;
    color: #b9b9b9
}

.style-checkbox span:before {
    content: '';
    width: 15px;
    height: 15px;
    border: 1px solid #b9b9b9;
    border-radius: 4px;
    position: absolute;
    left: 0;
    top: 0;
    transition: all .3s ease
}

.style-checkbox span:after {
    content: '';
    position: absolute;
    left: 7px;
    top: -2px;
    width: 6px;
    height: 12px;
    border-right: 3px solid #12b362;
    border-bottom: 3px solid #12b362;
    opacity: 0;
    transform: translate3d(0, 0, 0) rotate(45deg);
    transition: opacity .3s ease;
    z-index: 2
}

.style-checkbox span a {
    color: #12b362
}

.benefits {
    overflow: hidden
}

.benefits .page-title {
    padding-bottom: 80px
}

.benefits__list {
    position: relative
}

.benefits__list .swiper-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.benefits__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    width: 50%;
    margin-bottom: 60px;
    padding-left: 30px;
    padding-right: 30px;
    text-align: center
}

.benefits__item-img {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 50px;
    margin-bottom: 40px
}

.benefits__item-img img {
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.benefits__item-title {
    position: relative;
    max-width: 380px;
    margin-bottom: 20px;
    padding-bottom: 30px;
    font-size: 26px
}

.benefits__item-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 20px;
    height: 2px;
    background: #000;
    transform: translate3d(-50%, 0, 0)
}

.benefits__item-descr {
    max-width: 380px;
    font-size: 16px;
    color: #666;
    line-height: 1.4
}

.benefits__pagination {
    display: none
}

.offices-sec {
    background: #f3f2f1
}

.offices .page-title {
    padding-bottom: 80px
}

.offices__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto 40px
}

.offices__item .c-validation {
    top: 0;
    left: 0;
    margin-top: 0;
    margin-bottom: 10px;
    display: none;
    max-width: 350px
}

.offices__item .c-validation:before {
    content: none
}

.offices__item:last-child {
    margin-bottom: 0
}

.offices__item-slider {
    position: relative;
    width: 40%;
    margin: 0;
    background-color: #e4e4e4
}

.offices__item-slide {
    max-width: 830px;
    width: 100%;
    min-height: 515px;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

.offices__item-nav {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 100px;
    transform: translate3d(0, -50%, 0);
    z-index: 1
}

.offices__item-nav .swiper-button-next, .offices__item-nav .swiper-button-prev {
    width: 50px;
    height: 50px;
    background-color: #fff
}

.offices__item-nav .swiper-button-next:after, .offices__item-nav .swiper-button-prev:after {
    content: '';
    position: absolute
}

.offices__item-nav .swiper-button-next {
    right: 20px
}

.offices__item-nav .swiper-button-prev {
    left: 20px
}

.offices__item-info {
    width: 60%;
    background: #fff
}

.offices__item-head {
    padding: 20px 40px
}

.offices__item-room {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.5;
    letter-spacing: .01em
}

.offices__item-title p {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.58;
}

@media (max-width: 767px) {
    .offices__item-title p {
        line-height: 1.4;
    }
}

.offices__item-title h3, .offices__item-title span {
    display: block;
    font-size: 14px;
    line-height: 1.4;
    color: #7f7f7f
}

.offices__item-price {
    display: block;
    padding-top: 10px;
    color: #12b362 !important;
    font-size: 26px !important;
    line-height: 1.7 !important;
    float: right;
    font-weight: 400
}

@media (max-width: 767px) {
    .offices__item-price {
        float: none;
        line-height: 1.2 !important;
        padding: 5px  0;
    }
}

.offices__item-benefits {
    padding: 20px 40px;
    border-top: 1px solid #d4d4d4;
    display: block
}

.offices__item-block-one {
    display: inline-block;
    width: 50%;
    position: relative
}

.offices__item-block-two {
    display: inline-block;
    position: absolute
}

@media (max-width: 767px) {
    .offices__item-block-one {
        width: 100%;
    }

    .offices__item-block-two {
        position: static;
    }
}

.offices__item-schema {
    display: block;
    margin: 25% auto;
    max-width: 100%;
}

.offices__item-form {
    padding-left: 40px;
    padding-right: 40px;
}

.offices__item-list {
    margin-bottom: 40px
}

.offices__item-benefits p {
    position: relative;
    padding-left: 40px;
    padding-bottom: 10px;
    padding-top: 10px
}

.offices__item-benefits p img {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate3d(0, -50%, 0)
}

.offices__item-btn {
    padding: 0 40px 30px;
    text-align: center
}

.offices__item-btn--mobile {
    display: none
}

.offices__item-pagination {
    display: none
}

.p-table {
    max-width: 960px;
    margin: 0 auto
}

.p-table__head {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: solid 5px #d4d4d4
}

.p-table__head .p-table__cell p {
    padding-bottom: 5px;
    font-size: 28px;
    line-height: 1.57
}

.p-table__head .p-table__cell span {
    display: block;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    color: #9d9d9d
}

.p-table__row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: solid 1px #d4d4d4
}

.p-table__row:last-child {
    border-bottom: none
}

.p-table__cell {
    width: 33.33333%;
    padding: 20px 20px;
    text-align: center;
    font-size: 22px
}

.p-table__cell .icon-cross {
    margin-top: 6px
}

.p-table__cell--descr {
    padding-left: 0;
    color: #9d9d9d;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .07em;
    text-transform: uppercase;
    text-align: left
}

.p-table__footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    border-top: solid 5px #d4d4d4
}

.p-table__footer .p-table__cell:first-child {
    padding-top: 40px;
    font-size: 14px;
    padding-left: 0;
    text-align: left;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase
}

.p-table__footer .p-table__cell:nth-child(2) p {
    color: #12b362;
    font-weight: 700
}

.p-table__footer .p-table__cell p {
    font-size: 26px;
    line-height: 1.7;
    color: #7e7e7e
}

.p-table__footer .p-table__cell span {
    display: block;
    font-size: 16px;
    line-height: 1.4;
    color: #9d9d9d
}

.prices .page-title {
    padding-bottom: 80px
}

.prices__btn {
    padding-top: 30px;
    text-align: center
}

.icon-good {
    display: inline-block;
    width: 23px;
    height: 12px;
    border-left: 3px solid #12b362;
    border-bottom: 3px solid #12b362;
    transform: translate3d(0, 0, 0) rotate(-45deg)
}

.icon-cross {
    position: relative;
    display: inline-block;
    width: 23px;
    height: 23px
}

.icon-cross:after, .icon-cross:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 3px;
    background: #d8d8d8;
    transform: translate3d(-50%, -50%, 0) rotate(45deg)
}

.icon-cross:after {
    transform: translate3d(-50%, -50%, 0) rotate(-45deg)
}

.footer-form-sec {
    background: url(/img/artplay-special.jpg) center no-repeat;
    background-size: cover
}

.footer-form-sec .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
}

.footer-form {
    max-width: 720px
}

.footer-form .page-title {
    padding-bottom: 10px
}

.footer-form .c-validation {
    left: 150px;
    top: -85px;
    display: none;
    max-width: 350px
}

.footer-form .c-validation:before {
    left: 15px
}

.footer-form .call_form_replay {
    text-align: center;
    margin-top: 0;
    height: 125px;
    padding-top: 30px
}

.def-sec {
    padding-top: 100px;
    padding-bottom: 100px
}

.footer__address {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: 30px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1.71;
    letter-spacing: .4px
}

.footer__address-street {
    flex-shrink: 0;
    width: 46%;
    display: flex;
    align-items: flex-start;
}

.footer__address-metro {
    flex-shrink: 0;
    width: 40%;
    display: flex;
    align-items: flex-start;
}

.footer__address-symbol {
    flex-shrink: 0;
    padding-right: 10px
}

.footer__address-text {
    width: 210px;
    text-align: left;
}

@media (max-width: 680px) {
    .footer__address-street,
    .footer__address-metro {
        width: 100%;
    }

    .footer__address-street {
        margin-bottom: 10px;
    }

    .footer__address-street .footer__address-symbol {
        padding-left: 5px;
        padding-right: 14px;
    }

    .footer__address-text {
        width: 100%;
    }
}

@media (max-width: 1480px) {
    .def-sec {
        padding-top: 80px;
        padding-bottom: 80px
    }
}

@media (max-width: 1024px) {
    .def-sec {
        padding-top: 60px;
        padding-bottom: 60px
    }
    
    .page-title .h1 {
        font-size: 38px
    }
    
    .big-head .page-title {
        padding-bottom: 30px
    }
    
    .big-head .page-title .h1 {
        margin-bottom: 30px
    }
    
    .big-head__promo {
        display: none
    }
    
    .big-head__promo-mobile {
        display: block;
        margin: 0 auto
    }
    
    .benefits__item-img {
        margin-bottom: 30px
    }
    
    .clients__item-info {
        min-height: 460px;
        padding: 40px 30px 70px
    }
    
    .clients__item-title {
        margin-bottom: 30px
    }
    
    .clients__item-title-text p {
        font-size: 32px
    }
    
    .clients__item-logo {
        width: 76px;
        height: 76px
    }
    
    .clients__item-text {
        font-size: 16px;
        line-height: 1.6
    }
    
    .prices .page-title {
        padding-bottom: 50px
    }
    
    .offices .page-title {
        padding-bottom: 50px
    }
}

@media (max-width: 900px) {
    .offices__item {
        flex-direction: column
    }
    
    .offices__item-slider {
        width: 100%;
        padding: 0 5%;
    }
    
    .offices__item-schema {
        margin: 5% auto
    }
    
    .offices__item-info {
        width: 100%
    }
}

@media (max-width: 768px) {
    .footer__address-street {
        left: 8%
    }
}

@media (max-width: 680px) {
    .big-head-sec {
        padding-top: 80px;
        padding-bottom: 20px
    }
    
    .big-head-sec .container__cab {
        min-height: initial
    }
    
    .big-head .page-title {
        padding-bottom: 20px
    }
    
    .big-head .page-title .h1 {
        margin-bottom: 20px
    }
    
    .page-title .h1 {
        font-size: 26px
    }
    
    .page-title span {
        font-size: 15px
    }
    
    .b-form {
        max-width: 360px;
        padding: 10px 0;
        background: 0 0
    }
    
    .b-form__row {
        -ms-flex-direction: column;
        flex-direction: column
    }
    
    .b-form__row .btn, .b-form__row .call-input {
        max-width: 100%;
        width: 100%
    }
    
    .b-form__row .call-input {
        margin-right: 0
    }
    
    .def-sec {
        padding-top: 40px;
        padding-bottom: 40px
    }
    
    .benefits .page-title {
        padding-bottom: 30px
    }
    
    .benefits__list .swiper-wrapper {
        -ms-flex-wrap: initial;
        flex-wrap: initial
    }
    
    .benefits__item {
        width: 100%;
        margin-bottom: 30px;
        padding-left: 0;
        padding-right: 0
    }
    
    .benefits__item-img {
        min-height: initial;
        margin-bottom: 20px
    }
    
    .benefits__item-img img {
        transform: translate3d(0, 0, 0) scale(.8)
    }
    
    .benefits__item-title {
        margin-bottom: 0;
        padding-bottom: 20px;
        font-size: 22px
    }
    
    .benefits__item-title:after {
        content: none
    }
    
    .benefits__item-descr {
        font-size: 15px
    }
    
    .benefits__pagination {
        display: block;
        bottom: 0 !important
    }
    
    .benefits__pagination .swiper-pagination-bullet {
        border-color: #e2e2e2
    }
    
    .benefits__pagination .swiper-pagination-bullet-active {
        border-width: 5px;
        border-color: #12b362
    }
    
    .benefits__pagination {
        display: block;
        bottom: 0 !important
    }
    
    .benefits__pagination .swiper-pagination-bullet {
        border-color: #e2e2e2
    }
    
    .benefits__pagination .swiper-pagination-bullet-active {
        border-width: 5px;
        border-color: #12b362
    }
    
    .prices .page-title {
        padding-bottom: 30px
    }
    
    .p-table__head .p-table__cell p {
        font-size: 14px
    }
    
    .p-table__head .p-table__cell span {
        font-size: 9px
    }
    
    .p-table__cell {
        padding: 10px 8px;
        font-size: 12px
    }
    
    .p-table__cell--descr {
        font-size: 9px;
        padding-left: 0
    }
    
    .p-table__footer .p-table__cell:first-child {
        padding-top: 10px;
        font-size: 9px
    }
    
    .p-table__footer .p-table__cell p {
        font-size: 12px
    }
    
    .p-table__footer .p-table__cell span {
        font-size: 9px
    }
    
    .footer-form-sec .container {
        min-height: initial
    }
    
    .footer__address {
        max-width: 360px;
    }
}

.about {
    padding-bottom: 20px;
    background: #f3f2f1;
    overflow: hidden
}

@media (min-width: 768px) {
    .about__row {
        display: -ms-flexbox;
        display: flex;
        margin: 0 -25px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.about__col {
    margin-bottom: 56px;
    text-align: center
}

@media (min-width: 768px) {
    .about__col {
        margin-bottom: 40px;
        padding: 0 25px;
        text-align: left;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%
    }
}

@media (min-width: 1020px) {
    .about__col {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%
    }
}

.about__col:nth-child(5) {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%
}

@media (min-width: 1220px) {
    .about__col:nth-child(5) {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%
    }
}

.about__col:nth-child(6) {
    text-align: left
}

.about__line {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.about__cell {
    margin-top: 48px;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%
}

@media (min-width: 768px) {
    .about__cell {
        margin: 0;
        -ms-flex: 1;
        flex: 1
    }
}

.about__preview {
    margin-bottom: 20px;
    font-size: 0
}

.about__pic {
    max-width: 100%
}

.about__title {
    margin-bottom: 8px;
    font-size: 22px;
    line-height: 1.36
}

.about__text {
    color: #666
}

.about__text + .details {
    margin-top: 5px;
}

.about__subtitle, .about__value {
    margin-bottom: 5px
}

.about__value {
    display: -ms-flexbox;
    display: flex;
    font-family: Graphik Extralight;
    font-size: 64px;
    font-weight: 200;
    line-height: 1;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

@media (min-width: 768px) {
    .about__value {
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.about__value:after {
    content: "";
    position: relative;
    top: -3px;
    height: 47px;
    margin-left: 4px;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOSIgaGVpZ2h0PSI0NyIgdmlld0JveD0iMCAwIDE5IDQ3Ij4gIDxwYXRoIGZpbGw9IiMxQTFBMUEiIGQ9Ik0xMywyOC45OTk5ODkzIEwxNywyOC45OTk5ODkzIEwxNywxOC4yNjY2Njk1IEMxNywxNi40OTM0MzA5IDE1LjI5OTkwNzcsMTUgMTMuMTQyODU3MSwxNSBMNS44NTcxNDI4NiwxNSBDMy43MDAxMzgwMywxNSAyLDE2LjQ5MzQ1NTYgMiwxOC4yNjY2Njk1IEwyLDI4Ljk5OTk4OTMgTDQsMjguOTk5OTg5MyBMNCwyMSBMNiwyMSBMNiwyOC45OTk5OTQ3IEw2LDQ1IEwxMyw0NSBMMTMsMjguOTk5OTg5MyBMMTUsMjkgTDE1LDIxIEwxMywyMSBMMTMsMjkgTDEzLDI4Ljk5OTk4OTMgWiBNNCwzMC45OTk5ODkzIEwwLDMwLjk5OTk4OTMgTDAsMTguMjY2NjY5NSBDMCwxNS4zMjcwNDgzIDIuNjQ5MDkzNCwxMyA1Ljg1NzE0Mjg2LDEzIEwxMy4xNDI4NTcxLDEzIEMxNi4zNTA5NTYyLDEzIDE5LDE1LjMyNzAyODggMTksMTguMjY2NjY5NSBMMTksMzAuOTk5OTg5MyBMMTUsMzAuOTk5OTg5MyBMMTUsNDcgTDQsNDcgTDQsMzAuOTk5OTg5MyBaIE05LjUsMiBDNy41NjY5NjAzOCwyIDYsMy41NjY5NzY2MiA2LDUuNSBDNiw3LjQzMzAyMzM4IDcuNTY2OTYwMzgsOSA5LjUsOSBDMTEuNDMzMDM5Niw5IDEzLDcuNDMzMDIzMzggMTMsNS41IEMxMywzLjU2Njk3NjYyIDExLjQzMzAzOTYsMiA5LjUsMiBaIE05LjUsMCBDMTIuNTM3NjEzOCwwIDE1LDIuNDYyNDExNzYgMTUsNS41IEMxNSw4LjUzNzU4ODI0IDEyLjUzNzYxMzgsMTEgOS41LDExIEM2LjQ2MjM4NjI0LDExIDQsOC41Mzc1ODgyNCA0LDUuNSBDNCwyLjQ2MjQxMTc2IDYuNDYyMzg2MjQsMCA5LjUsMCBaIi8+PC9zdmc+);
    background-repeat: no-repeat;
    background-size: contain;
    -ms-flex: 0 0 19px;
    flex: 0 0 19px
}

.about__price {
    font-size: 13px;
    color: gray
}

.about__btn {
    margin-top: 24px
}

.opening {
    position: relative;
    background-size: cover
}

.opening:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .6)
}

.opening__container {
    position: relative;
    z-index: 2
}

.opening__row {
    padding: 48px 0 40px
}

@media (min-width: 768px) {
    .opening__row {
        display: -ms-flexbox;
        display: flex;
        padding-bottom: 48px
    }
}

.opening__col:first-child {
    max-width: 574px;
    margin-bottom: 40px;
    padding: 0 20px;
    -ms-flex: 0 0 calc(100% - 368px);
    flex: 0 0 calc(100% - 368px)
}

@media (min-width: 768px) {
    .opening__col:first-child {
        padding: 0 40px 0 0
    }
}

.opening__col:last-child {
    margin-left: auto;
    -ms-flex: 0 0 368px;
    flex: 0 0 368px
}

.opening__title {
    margin-bottom: 32px;
    font-size: 38px;
    color: #15b464;
    line-height: 1.3157
}

.opening__text {
    font-size: 22px;
    color: #fff;
    line-height: 1.3636
}

.opening__form {
    padding: 40px;
    background: #fff;
    border-radius: 3px
}

.opening__subtitle {
    margin-bottom: 40px
}

.opening__datepicker {
    margin-bottom: 24px
}

.opening__field {
    margin-bottom: 40px
}

.opening__btn {
    width: 100%
}

.position {
    padding-bottom: 60px
}

@media (min-width: 768px) {
    .position {
        padding-top: 60px
    }
}

.position__layout {
    position: relative;
    margin: 0 -20px;
    padding: 268px 16px 40px
}

@media (min-width: 768px) {
    .position__layout {
        display: -ms-flexbox;
        display: flex;
        min-height: 560px;
        margin: 0;
        padding: 0;
        border: 1px solid #e4e4e4;
        border-radius: 3px
    }
}

.position__map {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@media (min-width: 768px) {
    .position__map {
        position: static;
        width: auto;
        height: auto;
        -ms-flex: 0 0 calc(100% - 368px);
        flex: 0 0 calc(100% - 368px)
    }
}

.position__sidebar {
    position: relative;
    padding: 40px;
    background: #fff;
    border-radius: 3px;
    border: 1px solid #e4e4e4;
    line-height: 1.3636;
    -ms-flex: 0 0 368px;
    flex: 0 0 368px;
    z-index: 2
}

@media (min-width: 768px) {
    .position__sidebar {
        background: 0 0;
        border: none
    }
}

.position__title {
    margin-bottom: 8px
}

.position__subtitle {
    margin-bottom: 8px;
    font-size: 15px
}

.position__content {
    color: #666
}

.position__btn {
    width: 100%
}

.photos {
    overflow: hidden
}

.photos__title {
    margin-bottom: 32px
}

.photos__list {
    display: -ms-flexbox;
    display: flex;
    margin: 0 12px 24px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width: 768px) {
    .photos__list {
        margin: 0 -8px
    }
}

@media (min-width: 1020px) {
    .photos__list {
        margin: 0 -16px
    }
}

.photos__item {
    margin: 0 8px 16px;
    -ms-flex: 0 0 calc(50% - 16px);
    flex: 0 0 calc(50% - 16px)
}

@media (min-width: 768px) {
    .photos__item {
        margin: 0 8px 16px;
        -ms-flex: 0 0 calc(25% - 16px);
        flex: 0 0 calc(25% - 16px)
    }
}

@media (min-width: 1020px) {
    .photos__item {
        margin: 0 16px 32px;
        -ms-flex: 0 0 calc(25% - 32px);
        flex: 0 0 calc(25% - 32px)
    }
}

@media (min-width: 768px) {
    .photos__item:nth-child(n+5) {
        -ms-flex: 0 0 calc(16.66% - 16px);
        flex: 0 0 calc(16.66% - 16px)
    }
}

@media (min-width: 1020px) {
    .photos__item:nth-child(n+5) {
        -ms-flex: 0 0 calc(16.66% - 32px);
        flex: 0 0 calc(16.66% - 32px)
    }
}

.photos__item:nth-child(n+7) {
    display: none
}

@media (min-width: 768px) {
    .photos__item:nth-child(n+7) {
        display: block
    }
}

@media (min-width: 768px) {
    .photos__item:nth-child(n+11) {
        -ms-flex: 0 0 calc(25% - 16px);
        flex: 0 0 calc(25% - 16px)
    }
}

@media (min-width: 1020px) {
    .photos__item:nth-child(n+11) {
        -ms-flex: 0 0 calc(25% - 32px);
        flex: 0 0 calc(25% - 32px)
    }
}

.photos__pic {
    display: block;
    width: 100%
}

.balchug {
    position: relative;
    padding: 244px 0 40px
}

@media (min-width: 768px) {
    .balchug {
        height: 700px;
        padding: 0
    }
}

.request__fields {
    margin-bottom: 16px
}

@media (min-width: 1020px) {
    .request__fields .toggle-wrap {
        margin-top: 34px
    }
}

.grid--align-end {
    -ms-flex-align: end;
    align-items: flex-end
}

.toggler-group {
    display: -ms-flexbox;
    display: flex;
    padding: 15px 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.toggler-group .toggler:not(:last-child) {
    margin-right: 48px
}

.toggler {
    display: block;
    position: relative;
    padding-left: 26px
}

.toggler__input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.toggler__input:checked + .toggler__content:before {
    background: #0f9954
}

.toggler__input[type=checkbox] + .toggler__content:before {
    border-radius: 3px
}

.toggler__content {
    display: block
}

.toggler__content:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #fff;
    box-shadow: inset 0 0 0 3px #fff;
    border: 1px solid #0f9954
}

.toggle-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

.tour {
    position: relative;
    min-height: 528px;
    padding: 40px 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

.tour .container {
    position: relative;
    z-index: 2
}

.tour .h1 {
    margin-bottom: 32px;
    color: #fff
}

.tour:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .6)
}

.tour__content {
    max-width: 574px;
    color: #fff
}

.tour__content p {
    margin-bottom: 20px
}

.form__input--textarea {
    height: 104px;
    padding: 15px 20px
}

.balchug {
    position: relative;
    padding: 244px 0 40px
}

@media (min-width: 768px) {
    .balchug {
        height: 700px;
        padding: 0
    }
}

.balchug__swiper {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #1a1a1a
}

.balchug__swiper .swiper-slide:after, .balchug__swiper .swiper-slide:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(180deg, transparent 0, #1a1a1a 99%)
}

.balchug__swiper .swiper-slide:before {
    top: 70vw;
    height: 190px;
    margin-top: -190px
}

.balchug__swiper .swiper-slide:after {
    top: 68vw;
    height: 64px;
    margin-top: -64px
}

.balchug__swiper .swiper-pagination {
    display: none
}

.balchug__swiper .swiper-img {
    display: block;
    width: 100%
}

.balchug__swiper-arrow {
    width: 32px;
    height: 32px;
    margin: 0;
    background-size: contain
}

@media (min-width: 768px) {
    .balchug__swiper-arrow {
        left: 20px;
        right: auto;
        width: 50px;
        height: 50px
    }
}

.balchug__swiper-arrow--prev {
    top: 195px;
    left: auto;
    right: 68px
}

@media (min-width: 768px) {
    .balchug__swiper-arrow--prev {
        top: 315px;
        left: 20px;
        right: auto
    }
}

@media (min-width: 1220px) {
    .balchug__swiper-arrow--prev {
        left: 40px
    }
}

.balchug__swiper-arrow--next {
    top: 195px;
    left: auto;
    right: 20px
}

@media (min-width: 768px) {
    .balchug__swiper-arrow--next {
        top: 385px;
        left: 20px;
        right: auto
    }
}

@media (min-width: 1220px) {
    .balchug__swiper-arrow--next {
        left: 40px
    }
}

.balchug__container {
    height: 100%;
    position: relative;
    z-index: 10;
    pointer-events: none
}

.balchug__grid {
    display: block;
    margin: 0 -4px;
    overflow: hidden
}

.balchug__grid .grid__item {
    width: 100%;
    padding: 0
}

@media (min-width: 768px) {
    .balchug__grid {
        display: -ms-flexbox;
        display: flex;
        height: 100%;
        margin-left: -12px;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -ms-flex-align: center;
        align-items: center
    }
}

@media (min-width: 768px) {
    .balchug__grid .grid__item {
        width: 41.6666%;
        padding-left: 30px
    }
}

@media (min-width: 1220px) {
    .balchug__grid .grid__item {
        width: 33.3333%;
        padding-left: 50px
    }
}

.tariffs {
    margin-bottom: -16px
}

@media (min-width: 768px) {
    .tariffs {
        margin: -6px -20px 0;
        overflow: auto
    }
}

@media (min-width: 1020px) {
    .tariffs {
        margin: 0 -10px -20px;
        overflow: visible
    }
}

@media (min-width: 1220px) {
    .tariffs {
        margin: 0 -25px -50px
    }
}

@media (min-width: 768px) {
    .tariffs__layout {
        display: -ms-flexbox;
        display: flex;
        padding: 6px 4px 0 20px;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }
}

@media (min-width: 1020px) {
    .tariffs__layout {
        padding: 0
    }
}

@media (min-width: 1220px) {
    .tariffs__layout {
        width: 100%
    }
}

.tariffs__item {
    position: relative;
    margin: 0 0 16px;
    padding: 43px 40px 116px;
    background: #fff;
    border-radius: 4px
}

@media (min-width: 768px) {
    .tariffs__item {
        width: 330px;
        margin: 0 16px 0 0;
        padding: 30px 30px 116px;
        -ms-flex: 0 0 330px;
        flex: 0 0 330px
    }
}

@media (min-width: 1020px) {
    .tariffs__item {
        width: calc(33.33% - 20px);
        margin: 0 10px 20px;
        -ms-flex: 0 0 calc(33.33% - 20px);
        flex: 0 0 calc(33.33% - 20px)
    }
}

@media (min-width: 1220px) {
    .tariffs__item {
        width: calc(33.33% - 50px);
        margin: 0 25px 50px;
        padding: 43px 40px 116px;
        -ms-flex: 0 0 calc(33.33% - 50px);
        flex: 0 0 calc(33.33% - 50px)
    }
}

.tariffs__badge {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 105px;
    height: 105px;
    overflow: hidden
}

.tariffs__badge:after, .tariffs__badge:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 0 6px;
    border-color: transparent transparent transparent #17804b
}

.tariffs__badge:before {
    top: 0;
    left: 0
}

.tariffs__badge:after {
    right: 0;
    bottom: 0
}

.tariffs__badge-title {
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 25px;
    left: -15px;
    width: 150%;
    height: 32px;
    background: #12b362;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    transform: rotate(45deg)
}

.tariffs__title {
    margin-bottom: 20px;
    font-size: 38px;
    letter-spacing: -.29px;
    line-height: 1.157
}

.tariffs__description {
    margin-bottom: 28px;
    font-size: 20px;
    color: #666;
    line-height: 1.33
}

@media (min-width: 768px) {
    .tariffs__description {
        min-height: 53px
    }
}

@media (min-width: 1220px) {
    .tariffs__description {
        min-height: 0
    }
}

.tariffs__labels {
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 24px;
    white-space: nowrap
}

.tariffs__label {
    display: inline-block;
    padding: 6px 10px 5px;
    border: 1px solid #ccc;
    font-size: 14px;
    line-height: 17px;
    cursor: pointer;
    background: #fff;
    transition: .25s
}

.tariffs__label:first-child {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px
}

.tariffs__label:last-child {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px
}

.tariffs__label:first-child:last-child {
    cursor: default
}

.tariffs__label + .tariffs__label {
    border-left: none
}

.tariffs__label:hover {
    background: #f3f2f1
}

.tariffs__label.is-active {
    background-color: #e6e4e3;
    cursor: default
}

@media (min-width: 1220px) {
    .tariffs__label {
        padding: 6px 14px 5px
    }
}

.tariffs__group {
    display: -ms-flexbox;
    display: flex;
    min-height: 91px;
    margin-bottom: 22px;
    padding: 15px 0 13px;
    border: solid #ccc;
    border-width: 1px 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column
}

.tariffs__price {
    margin: 0;
    font-size: 38px;
    letter-spacing: -.56px;
    line-height: 1.15
}

.tariffs__units {
    font-size: 24px
}

.tariffs__note {
    font-size: 16px;
    color: #999;
    line-height: 1.18
}

.tariffs__note.color-green {
    color: #0f9954
}

.tariffs__options {
    margin-bottom: 29px
}

.tariffs__option {
    margin-bottom: 19px
}

.tariffs__option, .tariffs__preview {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

.tariffs__preview {
    height: 24px;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex: 0 0 24px;
    flex: 0 0 24px
}

.tariffs__feature {
    padding-left: 16px;
    -ms-flex: 0 0 calc(100% - 24px);
    flex: 0 0 calc(100% - 24px);
    line-height: 1.33
}

.tariffs__subtitle {
    margin: -6px 0 20px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4
}

.tariffs__foot {
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 30px;
    text-align: center
}

@media (min-width: 1220px) {
    .tariffs__foot {
        left: 40px;
        right: 40px
    }
}

.tariffs__buy {
    width: 100%;
    font-weight: 700;
    text-transform: uppercase
}

.tariffs__try {
    display: inline-block;
    margin-top: 15px;
    font-size: 16px;
    text-align: center;
    line-height: 1.33;
    color: #999;
    text-decoration: underline
}

.tickets__header-balchug {
    width: 30% !important
}

@media (max-width: 768px) {
    .tickets__header-balchug {
        width: auto !important
    }
}

@media (max-width: 1220px) {
    .ticket__plaza-special {
        width: 100%;
        padding-left: 12px
    }
}

@media (min-width: 980px) {
    .clients__footer-mobile {
        display: none
    }
}

@media (max-width: 980px) {
    .clients__footer {
        display: none
    }
}

@font-face {
    font-family: GraphikLCG;
    src: url(GraphikLCG.otf) format("opentype")
}

@font-face {
    font-family: Graphik Extralight;
    src: url(GraphikLCG-Extralight.otf) format("opentype")
}

.site-error {
    margin-top: 20px;
    margin-bottom: 50px;
    text-align: center
}

.site-error h1 {
    margin-top: 80px;
    padding-bottom: 30px
}

.site-error h2 {
    padding-bottom: 30px
}

.site-error img {
    max-width: 100%;
    height: auto
}

p.phone strong a {
    color: inherit
}

.slider-header__phone {
    float: right;
    text-align: right
}

.slider-header__phone .slider-header__address .slider-header__subway {
    font-size: 17px
}

.slider-header__phone .slider-header__address .slider-header__subway a {
    color: inherit
}

.slider-header__phone .slider-header__address .slider-header__subway a:hover {
    opacity: .6
}

@media (max-width: 900px) {
    .slider-header__station {
        width: 50%
    }
}

p.postfix_text {
    font-family: GraphikLCG;
    font-size: 12px;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #999;
    padding-right: 20px
}

a.btn.yabtn {
    margin-top: 25px;
    display: block;
    width: 100%
}

span.mobile_head_mc {
    margin-left: 10px
}

.collapsible {
    background-color: #fff;
    color: #444;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: 0;
    font-size: 15px
}

.active, .collapsible:hover {
    background-color: #ccc
}

.toggle_wrapper #collapsible_card_content {
    background-color: #fff;
    overflow: hidden;
    margin-bottom: 20px;
    padding: 20px 18px
}

.toggle_wrapper {
    margin-bottom: 20px
}

details {
    display: block;
    background: #fff;
    overflow: hidden;
    margin-bottom: 1.5rem
}

summary::-moz-list-bullet {
    list-style-type: none
}

summary {
    display: block;
    padding: .3em 1em .3em .9em;
    cursor: pointer;
    position: relative;
    margin: 5px;
    font-size: 16px
}

summary:focus {
    outline: 0
}

button.del_btn {
    border: none;
    cursor: pointer;
    background-color: inherit;
    transition: transform .2s;
    position: absolute;
    top: 0;
    right: 0;
    margin: 10px
}

button.del_btn:hover {
    transform: scale(1.5)
}

button.del_btn svg {
    width: 15px;
    height: 15px;
    background-color: inherit
}

#search-date[disabled] {
    border-color: #ccc;
    cursor: not-allowed
}

.slider-header__content.mobile {
    display: none;
}

@media (max-width: 767px) and (min-width: 320px) {
    .slider-header__content.mobile {
        display: block;
        z-index: 1;
        position: absolute;
        bottom: 0;
        width: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        margin-bottom: 20px;
    }
}