.iti {
    position: relative;
    display: inline-block
}

.iti * {
    box-sizing: border-box;
    -moz-box-sizing: border-box
}

.iti__hide {
    display: none
}

.iti__v-hide {
    visibility: hidden
}

.iti input,
.iti input[type=tel],
.iti input[type=text] {
    position: relative;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-right: 36px;
    margin-right: 0
}

.iti__flag-container {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    padding: 1px
}

.iti__selected-flag {
    z-index: 1;
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 6px 0 8px
}

.iti__arrow {
    margin-left: 6px;
    width: 0;
    height: 0;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #555
}

.iti__arrow--up {
    border-top: none;
    border-bottom: 4px solid #555
}

.iti__country-list {
    position: absolute;
    z-index: 2;
    list-style: none;
    text-align: left;
    padding: 0;
    margin: 0 0 0 -1px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
    background-color: #fff;
    border: 1px solid #ccc;
    white-space: nowrap;
    max-height: 200px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch
}

.iti__country-list--dropup {
    bottom: 100%;
    margin-bottom: -1px
}

@media (max-width:500px) {
    .iti__country-list {
        white-space: normal
    }
}

.iti__flag-box {
    display: inline-block;
    width: 20px
}

.iti__divider {
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px solid #ccc
}

.iti__country {
    padding: 5px 10px;
    outline: 0
}

.iti__dial-code {
    color: #999
}

.iti__country.iti__highlight {
    background-color: rgba(0, 0, 0, .05)
}

.iti__country-name,
.iti__dial-code,
.iti__flag-box {
    vertical-align: middle
}

.iti__country-name,
.iti__flag-box {
    margin-right: 6px
}

.iti--allow-dropdown input,
.iti--allow-dropdown input[type=tel],
.iti--allow-dropdown input[type=text],
.iti--separate-dial-code input,
.iti--separate-dial-code input[type=tel],
.iti--separate-dial-code input[type=text] {
    padding-right: 6px;
    padding-left: 52px;
    margin-left: 0
}

.iti--allow-dropdown .iti__flag-container,
.iti--separate-dial-code .iti__flag-container {
    right: auto;
    left: 0
}

.iti--allow-dropdown .iti__flag-container:hover {
    cursor: pointer
}

.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background-color: rgba(0, 0, 0, .05)
}

.iti--allow-dropdown input[disabled]+.iti__flag-container:hover,
.iti--allow-dropdown input[readonly]+.iti__flag-container:hover {
    cursor: default
}

.iti--allow-dropdown input[disabled]+.iti__flag-container:hover .iti__selected-flag,
.iti--allow-dropdown input[readonly]+.iti__flag-container:hover .iti__selected-flag {
    background-color: transparent
}

.iti--separate-dial-code .iti__selected-flag {
    background-color: rgba(0, 0, 0, .05)
}

.iti--separate-dial-code .iti__selected-dial-code {
    margin-left: 6px
}

.iti--container {
    position: absolute;
    top: -1000px;
    left: -1000px;
    z-index: 1060;
    padding: 1px
}

.iti--container:hover {
    cursor: pointer
}

.iti-mobile .iti--container {
    top: 30px;
    bottom: 30px;
    left: 30px;
    right: 30px;
    position: fixed
}

.iti-mobile .iti__country-list {
    max-height: 100%;
    width: 100%
}

.iti-mobile .iti__country {
    padding: 10px 10px;
    line-height: 1.5em
}

.iti__flag {
    width: 20px
}

.iti__flag.iti__be {
    width: 18px
}

.iti__flag.iti__ch {
    width: 15px
}

.iti__flag.iti__mc {
    width: 19px
}

.iti__flag.iti__ne {
    width: 18px
}

.iti__flag.iti__np {
    width: 13px
}

.iti__flag.iti__va {
    width: 15px
}

@media (-webkit-min-device-pixel-ratio:2),
(min-resolution:192dpi) {
    .iti__flag {
        background-size: 5652px 15px
    }
}

.iti__flag.iti__ac {
    height: 10px;
    background-position: 0 0
}

.iti__flag.iti__ad {
    height: 14px;
    background-position: -22px 0
}

.iti__flag.iti__ae {
    height: 10px;
    background-position: -44px 0
}

.iti__flag.iti__af {
    height: 14px;
    background-position: -66px 0
}

.iti__flag.iti__ag {
    height: 14px;
    background-position: -88px 0
}

.iti__flag.iti__ai {
    height: 10px;
    background-position: -110px 0
}

.iti__flag.iti__al {
    height: 15px;
    background-position: -132px 0
}

.iti__flag.iti__am {
    height: 10px;
    background-position: -154px 0
}

.iti__flag.iti__ao {
    height: 14px;
    background-position: -176px 0
}

.iti__flag.iti__aq {
    height: 14px;
    background-position: -198px 0
}

.iti__flag.iti__ar {
    height: 13px;
    background-position: -220px 0
}

.iti__flag.iti__as {
    height: 10px;
    background-position: -242px 0
}

.iti__flag.iti__at {
    height: 14px;
    background-position: -264px 0
}

.iti__flag.iti__au {
    height: 10px;
    background-position: -286px 0
}

.iti__flag.iti__aw {
    height: 14px;
    background-position: -308px 0
}

.iti__flag.iti__ax {
    height: 13px;
    background-position: -330px 0
}

.iti__flag.iti__az {
    height: 10px;
    background-position: -352px 0
}

.iti__flag.iti__ba {
    height: 10px;
    background-position: -374px 0
}

.iti__flag.iti__bb {
    height: 14px;
    background-position: -396px 0
}

.iti__flag.iti__bd {
    height: 12px;
    background-position: -418px 0
}

.iti__flag.iti__be {
    height: 15px;
    background-position: -440px 0
}

.iti__flag.iti__bf {
    height: 14px;
    background-position: -460px 0
}

.iti__flag.iti__bg {
    height: 12px;
    background-position: -482px 0
}

.iti__flag.iti__bh {
    height: 12px;
    background-position: -504px 0
}

.iti__flag.iti__bi {
    height: 12px;
    background-position: -526px 0
}

.iti__flag.iti__bj {
    height: 14px;
    background-position: -548px 0
}

.iti__flag.iti__bl {
    height: 14px;
    background-position: -570px 0
}

.iti__flag.iti__bm {
    height: 10px;
    background-position: -592px 0
}

.iti__flag.iti__bn {
    height: 10px;
    background-position: -614px 0
}

.iti__flag.iti__bo {
    height: 14px;
    background-position: -636px 0
}

.iti__flag.iti__bq {
    height: 14px;
    background-position: -658px 0
}

.iti__flag.iti__br {
    height: 14px;
    background-position: -680px 0
}

.iti__flag.iti__bs {
    height: 10px;
    background-position: -702px 0
}

.iti__flag.iti__bt {
    height: 14px;
    background-position: -724px 0
}

.iti__flag.iti__bv {
    height: 15px;
    background-position: -746px 0
}

.iti__flag.iti__bw {
    height: 14px;
    background-position: -768px 0
}

.iti__flag.iti__by {
    height: 10px;
    background-position: -790px 0
}

.iti__flag.iti__bz {
    height: 14px;
    background-position: -812px 0
}

.iti__flag.iti__ca {
    height: 10px;
    background-position: -834px 0
}

.iti__flag.iti__cc {
    height: 10px;
    background-position: -856px 0
}

.iti__flag.iti__cd {
    height: 15px;
    background-position: -878px 0
}

.iti__flag.iti__cf {
    height: 14px;
    background-position: -900px 0
}

.iti__flag.iti__cg {
    height: 14px;
    background-position: -922px 0
}

.iti__flag.iti__ch {
    height: 15px;
    background-position: -944px 0
}

.iti__flag.iti__ci {
    height: 14px;
    background-position: -961px 0
}

.iti__flag.iti__ck {
    height: 10px;
    background-position: -983px 0
}

.iti__flag.iti__cl {
    height: 14px;
    background-position: -1005px 0
}

.iti__flag.iti__cm {
    height: 14px;
    background-position: -1027px 0
}

.iti__flag.iti__cn {
    height: 14px;
    background-position: -1049px 0
}

.iti__flag.iti__co {
    height: 14px;
    background-position: -1071px 0
}

.iti__flag.iti__cp {
    height: 14px;
    background-position: -1093px 0
}

.iti__flag.iti__cr {
    height: 12px;
    background-position: -1115px 0
}

.iti__flag.iti__cu {
    height: 10px;
    background-position: -1137px 0
}

.iti__flag.iti__cv {
    height: 12px;
    background-position: -1159px 0
}

.iti__flag.iti__cw {
    height: 14px;
    background-position: -1181px 0
}

.iti__flag.iti__cx {
    height: 10px;
    background-position: -1203px 0
}

.iti__flag.iti__cy {
    height: 14px;
    background-position: -1225px 0
}

.iti__flag.iti__cz {
    height: 14px;
    background-position: -1247px 0
}

.iti__flag.iti__de {
    height: 12px;
    background-position: -1269px 0
}

.iti__flag.iti__dg {
    height: 10px;
    background-position: -1291px 0
}

.iti__flag.iti__dj {
    height: 14px;
    background-position: -1313px 0
}

.iti__flag.iti__dk {
    height: 15px;
    background-position: -1335px 0
}

.iti__flag.iti__dm {
    height: 10px;
    background-position: -1357px 0
}

.iti__flag.iti__do {
    height: 14px;
    background-position: -1379px 0
}

.iti__flag.iti__dz {
    height: 14px;
    background-position: -1401px 0
}

.iti__flag.iti__ea {
    height: 14px;
    background-position: -1423px 0
}

.iti__flag.iti__ec {
    height: 14px;
    background-position: -1445px 0
}

.iti__flag.iti__ee {
    height: 13px;
    background-position: -1467px 0
}

.iti__flag.iti__eg {
    height: 14px;
    background-position: -1489px 0
}

.iti__flag.iti__eh {
    height: 10px;
    background-position: -1511px 0
}

.iti__flag.iti__er {
    height: 10px;
    background-position: -1533px 0
}

.iti__flag.iti__es {
    height: 14px;
    background-position: -1555px 0
}

.iti__flag.iti__et {
    height: 10px;
    background-position: -1577px 0
}

.iti__flag.iti__eu {
    height: 14px;
    background-position: -1599px 0
}

.iti__flag.iti__fi {
    height: 12px;
    background-position: -1621px 0
}

.iti__flag.iti__fj {
    height: 10px;
    background-position: -1643px 0
}

.iti__flag.iti__fk {
    height: 10px;
    background-position: -1665px 0
}

.iti__flag.iti__fm {
    height: 11px;
    background-position: -1687px 0
}

.iti__flag.iti__fo {
    height: 15px;
    background-position: -1709px 0
}

.iti__flag.iti__fr {
    height: 14px;
    background-position: -1731px 0
}

.iti__flag.iti__ga {
    height: 15px;
    background-position: -1753px 0
}

.iti__flag.iti__gb {
    height: 10px;
    background-position: -1775px 0
}

.iti__flag.iti__gd {
    height: 12px;
    background-position: -1797px 0
}

.iti__flag.iti__ge {
    height: 14px;
    background-position: -1819px 0
}

.iti__flag.iti__gf {
    height: 14px;
    background-position: -1841px 0
}

.iti__flag.iti__gg {
    height: 14px;
    background-position: -1863px 0
}

.iti__flag.iti__gh {
    height: 14px;
    background-position: -1885px 0
}

.iti__flag.iti__gi {
    height: 10px;
    background-position: -1907px 0
}

.iti__flag.iti__gl {
    height: 14px;
    background-position: -1929px 0
}

.iti__flag.iti__gm {
    height: 14px;
    background-position: -1951px 0
}

.iti__flag.iti__gn {
    height: 14px;
    background-position: -1973px 0
}

.iti__flag.iti__gp {
    height: 14px;
    background-position: -1995px 0
}

.iti__flag.iti__gq {
    height: 14px;
    background-position: -2017px 0
}

.iti__flag.iti__gr {
    height: 14px;
    background-position: -2039px 0
}

.iti__flag.iti__gs {
    height: 10px;
    background-position: -2061px 0
}

.iti__flag.iti__gt {
    height: 13px;
    background-position: -2083px 0
}

.iti__flag.iti__gu {
    height: 11px;
    background-position: -2105px 0
}

.iti__flag.iti__gw {
    height: 10px;
    background-position: -2127px 0
}

.iti__flag.iti__gy {
    height: 12px;
    background-position: -2149px 0
}

.iti__flag.iti__hk {
    height: 14px;
    background-position: -2171px 0
}

.iti__flag.iti__hm {
    height: 10px;
    background-position: -2193px 0
}

.iti__flag.iti__hn {
    height: 10px;
    background-position: -2215px 0
}

.iti__flag.iti__hr {
    height: 10px;
    background-position: -2237px 0
}

.iti__flag.iti__ht {
    height: 12px;
    background-position: -2259px 0
}

.iti__flag.iti__hu {
    height: 10px;
    background-position: -2281px 0
}

.iti__flag.iti__ic {
    height: 14px;
    background-position: -2303px 0
}

.iti__flag.iti__id {
    height: 14px;
    background-position: -2325px 0
}

.iti__flag.iti__ie {
    height: 10px;
    background-position: -2347px 0
}

.iti__flag.iti__il {
    height: 15px;
    background-position: -2369px 0
}

.iti__flag.iti__im {
    height: 10px;
    background-position: -2391px 0
}

.iti__flag.iti__in {
    height: 14px;
    background-position: -2413px 0
}

.iti__flag.iti__io {
    height: 10px;
    background-position: -2435px 0
}

.iti__flag.iti__iq {
    height: 14px;
    background-position: -2457px 0
}

.iti__flag.iti__ir {
    height: 12px;
    background-position: -2479px 0
}

.iti__flag.iti__is {
    height: 15px;
    background-position: -2501px 0
}

.iti__flag.iti__it {
    height: 14px;
    background-position: -2523px 0
}

.iti__flag.iti__je {
    height: 12px;
    background-position: -2545px 0
}

.iti__flag.iti__jm {
    height: 10px;
    background-position: -2567px 0
}

.iti__flag.iti__jo {
    height: 10px;
    background-position: -2589px 0
}

.iti__flag.iti__jp {
    height: 14px;
    background-position: -2611px 0
}

.iti__flag.iti__ke {
    height: 14px;
    background-position: -2633px 0
}

.iti__flag.iti__kg {
    height: 12px;
    background-position: -2655px 0
}

.iti__flag.iti__kh {
    height: 13px;
    background-position: -2677px 0
}

.iti__flag.iti__ki {
    height: 10px;
    background-position: -2699px 0
}

.iti__flag.iti__km {
    height: 12px;
    background-position: -2721px 0
}

.iti__flag.iti__kn {
    height: 14px;
    background-position: -2743px 0
}

.iti__flag.iti__kp {
    height: 10px;
    background-position: -2765px 0
}

.iti__flag.iti__kr {
    height: 14px;
    background-position: -2787px 0
}

.iti__flag.iti__kw {
    height: 10px;
    background-position: -2809px 0
}

.iti__flag.iti__ky {
    height: 10px;
    background-position: -2831px 0
}

.iti__flag.iti__kz {
    height: 10px;
    background-position: -2853px 0
}

.iti__flag.iti__la {
    height: 14px;
    background-position: -2875px 0
}

.iti__flag.iti__lb {
    height: 14px;
    background-position: -2897px 0
}

.iti__flag.iti__lc {
    height: 10px;
    background-position: -2919px 0
}

.iti__flag.iti__li {
    height: 12px;
    background-position: -2941px 0
}

.iti__flag.iti__lk {
    height: 10px;
    background-position: -2963px 0
}

.iti__flag.iti__lr {
    height: 11px;
    background-position: -2985px 0
}

.iti__flag.iti__ls {
    height: 14px;
    background-position: -3007px 0
}

.iti__flag.iti__lt {
    height: 12px;
    background-position: -3029px 0
}

.iti__flag.iti__lu {
    height: 12px;
    background-position: -3051px 0
}

.iti__flag.iti__lv {
    height: 10px;
    background-position: -3073px 0
}

.iti__flag.iti__ly {
    height: 10px;
    background-position: -3095px 0
}

.iti__flag.iti__ma {
    height: 14px;
    background-position: -3117px 0
}

.iti__flag.iti__mc {
    height: 15px;
    background-position: -3139px 0
}

.iti__flag.iti__md {
    height: 10px;
    background-position: -3160px 0
}

.iti__flag.iti__me {
    height: 10px;
    background-position: -3182px 0
}

.iti__flag.iti__mf {
    height: 14px;
    background-position: -3204px 0
}

.iti__flag.iti__mg {
    height: 14px;
    background-position: -3226px 0
}

.iti__flag.iti__mh {
    height: 11px;
    background-position: -3248px 0
}

.iti__flag.iti__mk {
    height: 10px;
    background-position: -3270px 0
}

.iti__flag.iti__ml {
    height: 14px;
    background-position: -3292px 0
}

.iti__flag.iti__mm {
    height: 14px;
    background-position: -3314px 0
}

.iti__flag.iti__mn {
    height: 10px;
    background-position: -3336px 0
}

.iti__flag.iti__mo {
    height: 14px;
    background-position: -3358px 0
}

.iti__flag.iti__mp {
    height: 10px;
    background-position: -3380px 0
}

.iti__flag.iti__mq {
    height: 14px;
    background-position: -3402px 0
}

.iti__flag.iti__mr {
    height: 14px;
    background-position: -3424px 0
}

.iti__flag.iti__ms {
    height: 10px;
    background-position: -3446px 0
}

.iti__flag.iti__mt {
    height: 14px;
    background-position: -3468px 0
}

.iti__flag.iti__mu {
    height: 14px;
    background-position: -3490px 0
}

.iti__flag.iti__mv {
    height: 14px;
    background-position: -3512px 0
}

.iti__flag.iti__mw {
    height: 14px;
    background-position: -3534px 0
}

.iti__flag.iti__mx {
    height: 12px;
    background-position: -3556px 0
}

.iti__flag.iti__my {
    height: 10px;
    background-position: -3578px 0
}

.iti__flag.iti__mz {
    height: 14px;
    background-position: -3600px 0
}

.iti__flag.iti__na {
    height: 14px;
    background-position: -3622px 0
}

.iti__flag.iti__nc {
    height: 10px;
    background-position: -3644px 0
}

.iti__flag.iti__ne {
    height: 15px;
    background-position: -3666px 0
}

.iti__flag.iti__nf {
    height: 10px;
    background-position: -3686px 0
}

.iti__flag.iti__ng {
    height: 10px;
    background-position: -3708px 0
}

.iti__flag.iti__ni {
    height: 12px;
    background-position: -3730px 0
}

.iti__flag.iti__nl {
    height: 14px;
    background-position: -3752px 0
}

.iti__flag.iti__no {
    height: 15px;
    background-position: -3774px 0
}

.iti__flag.iti__np {
    height: 15px;
    background-position: -3796px 0
}

.iti__flag.iti__nr {
    height: 10px;
    background-position: -3811px 0
}

.iti__flag.iti__nu {
    height: 10px;
    background-position: -3833px 0
}

.iti__flag.iti__nz {
    height: 10px;
    background-position: -3855px 0
}

.iti__flag.iti__om {
    height: 10px;
    background-position: -3877px 0
}

.iti__flag.iti__pa {
    height: 14px;
    background-position: -3899px 0
}

.iti__flag.iti__pe {
    height: 14px;
    background-position: -3921px 0
}

.iti__flag.iti__pf {
    height: 14px;
    background-position: -3943px 0
}

.iti__flag.iti__pg {
    height: 15px;
    background-position: -3965px 0
}

.iti__flag.iti__ph {
    height: 10px;
    background-position: -3987px 0
}

.iti__flag.iti__pk {
    height: 14px;
    background-position: -4009px 0
}

.iti__flag.iti__pl {
    height: 13px;
    background-position: -4031px 0
}

.iti__flag.iti__pm {
    height: 14px;
    background-position: -4053px 0
}

.iti__flag.iti__pn {
    height: 10px;
    background-position: -4075px 0
}

.iti__flag.iti__pr {
    height: 14px;
    background-position: -4097px 0
}

.iti__flag.iti__ps {
    height: 10px;
    background-position: -4119px 0
}

.iti__flag.iti__pt {
    height: 14px;
    background-position: -4141px 0
}

.iti__flag.iti__pw {
    height: 13px;
    background-position: -4163px 0
}

.iti__flag.iti__py {
    height: 11px;
    background-position: -4185px 0
}

.iti__flag.iti__qa {
    height: 8px;
    background-position: -4207px 0
}

.iti__flag.iti__re {
    height: 14px;
    background-position: -4229px 0
}

.iti__flag.iti__ro {
    height: 14px;
    background-position: -4251px 0
}

.iti__flag.iti__rs {
    height: 14px;
    background-position: -4273px 0
}

.iti__flag.iti__ru {
    height: 14px;
    background-position: -4295px 0
}

.iti__flag.iti__rw {
    height: 14px;
    background-position: -4317px 0
}

.iti__flag.iti__sa {
    height: 14px;
    background-position: -4339px 0
}

.iti__flag.iti__sb {
    height: 10px;
    background-position: -4361px 0
}

.iti__flag.iti__sc {
    height: 10px;
    background-position: -4383px 0
}

.iti__flag.iti__sd {
    height: 10px;
    background-position: -4405px 0
}

.iti__flag.iti__se {
    height: 13px;
    background-position: -4427px 0
}

.iti__flag.iti__sg {
    height: 14px;
    background-position: -4449px 0
}

.iti__flag.iti__sh {
    height: 10px;
    background-position: -4471px 0
}

.iti__flag.iti__si {
    height: 10px;
    background-position: -4493px 0
}

.iti__flag.iti__sj {
    height: 15px;
    background-position: -4515px 0
}

.iti__flag.iti__sk {
    height: 14px;
    background-position: -4537px 0
}

.iti__flag.iti__sl {
    height: 14px;
    background-position: -4559px 0
}

.iti__flag.iti__sm {
    height: 15px;
    background-position: -4581px 0
}

.iti__flag.iti__sn {
    height: 14px;
    background-position: -4603px 0
}

.iti__flag.iti__so {
    height: 14px;
    background-position: -4625px 0
}

.iti__flag.iti__sr {
    height: 14px;
    background-position: -4647px 0
}

.iti__flag.iti__ss {
    height: 10px;
    background-position: -4669px 0
}

.iti__flag.iti__st {
    height: 10px;
    background-position: -4691px 0
}

.iti__flag.iti__sv {
    height: 12px;
    background-position: -4713px 0
}

.iti__flag.iti__sx {
    height: 14px;
    background-position: -4735px 0
}

.iti__flag.iti__sy {
    height: 14px;
    background-position: -4757px 0
}

.iti__flag.iti__sz {
    height: 14px;
    background-position: -4779px 0
}

.iti__flag.iti__ta {
    height: 10px;
    background-position: -4801px 0
}

.iti__flag.iti__tc {
    height: 10px;
    background-position: -4823px 0
}

.iti__flag.iti__td {
    height: 14px;
    background-position: -4845px 0
}

.iti__flag.iti__tf {
    height: 14px;
    background-position: -4867px 0
}

.iti__flag.iti__tg {
    height: 13px;
    background-position: -4889px 0
}

.iti__flag.iti__th {
    height: 14px;
    background-position: -4911px 0
}

.iti__flag.iti__tj {
    height: 10px;
    background-position: -4933px 0
}

.iti__flag.iti__tk {
    height: 10px;
    background-position: -4955px 0
}

.iti__flag.iti__tl {
    height: 10px;
    background-position: -4977px 0
}

.iti__flag.iti__tm {
    height: 14px;
    background-position: -4999px 0
}

.iti__flag.iti__tn {
    height: 14px;
    background-position: -5021px 0
}

.iti__flag.iti__to {
    height: 10px;
    background-position: -5043px 0
}

.iti__flag.iti__tr {
    height: 14px;
    background-position: -5065px 0
}

.iti__flag.iti__tt {
    height: 12px;
    background-position: -5087px 0
}

.iti__flag.iti__tv {
    height: 10px;
    background-position: -5109px 0
}

.iti__flag.iti__tw {
    height: 14px;
    background-position: -5131px 0
}

.iti__flag.iti__tz {
    height: 14px;
    background-position: -5153px 0
}

.iti__flag.iti__ua {
    height: 14px;
    background-position: -5175px 0
}

.iti__flag.iti__ug {
    height: 14px;
    background-position: -5197px 0
}

.iti__flag.iti__um {
    height: 11px;
    background-position: -5219px 0
}

.iti__flag.iti__un {
    height: 14px;
    background-position: -5241px 0
}

.iti__flag.iti__us {
    height: 11px;
    background-position: -5263px 0
}

.iti__flag.iti__uy {
    height: 14px;
    background-position: -5285px 0
}

.iti__flag.iti__uz {
    height: 10px;
    background-position: -5307px 0
}

.iti__flag.iti__va {
    height: 15px;
    background-position: -5329px 0
}

.iti__flag.iti__vc {
    height: 14px;
    background-position: -5346px 0
}

.iti__flag.iti__ve {
    height: 14px;
    background-position: -5368px 0
}

.iti__flag.iti__vg {
    height: 10px;
    background-position: -5390px 0
}

.iti__flag.iti__vi {
    height: 14px;
    background-position: -5412px 0
}

.iti__flag.iti__vn {
    height: 14px;
    background-position: -5434px 0
}

.iti__flag.iti__vu {
    height: 12px;
    background-position: -5456px 0
}

.iti__flag.iti__wf {
    height: 14px;
    background-position: -5478px 0
}

.iti__flag.iti__ws {
    height: 10px;
    background-position: -5500px 0
}

.iti__flag.iti__xk {
    height: 15px;
    background-position: -5522px 0
}

.iti__flag.iti__ye {
    height: 14px;
    background-position: -5544px 0
}

.iti__flag.iti__yt {
    height: 14px;
    background-position: -5566px 0
}

.iti__flag.iti__za {
    height: 14px;
    background-position: -5588px 0
}

.iti__flag.iti__zm {
    height: 14px;
    background-position: -5610px 0
}

.iti__flag.iti__zw {
    height: 10px;
    background-position: -5632px 0
}

.iti__flag {
    height: 15px;
    box-shadow: 0 0 1px 0 #888;
    background-image: url(./flags.png);
    background-repeat: no-repeat;
    background-color: #dbdbdb;
    background-position: 20px 0
}

@media (-webkit-min-device-pixel-ratio:2),
(min-resolution:192dpi) {
    .iti__flag {
        background-image: url(./flags@2x.png)
    }
}

.iti__flag.iti__np {
    background-color: transparent
}

html {
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
footer,
header,
nav,
section {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

figcaption,
figure {
    display: block
}

figure {
    margin: 1em 40px
}

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

main {
    display: block
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    -moz-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: inherit;
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

audio,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

button,
input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

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

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

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

input {
    overflow: visible
}

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

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

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

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

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

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    display: table;
    max-width: 100%;
    padding: 0;
    color: inherit;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto
}

details {
    display: block
}

summary {
    display: list-item
}

menu {
    display: block
}

canvas {
    display: inline-block
}

[hidden],
template {
    display: none
}

html {
    --color-black: #000;
    --color-dark: #222;
    --color-white: #fff;
    --color-highlight: #c24040;
    --color-disabled: #181818;
    --color-dark-grey: #353535;
    --color-grey: #575757;
    --color-bg: var(--color-black);
    --color-text: var(--color-white);
    --color-lazy-image-bg: #3f3f3f;
    --color-layout-text: var(--color-white);
    --color-link: var(--color-white);
    --form-input-background-color: #181818;
    --form-input-background-error-color: #281b1b;
    --form-input-border-color: #353535;
    --form-input-border-focus-color: #6f6f6f;
    --form-input-border-error-color: var(--color-highlight);
    --form-input-color: #fff;
    --form-input-placeholder-color: #ccc;
    --form-select-background-color: #b5b5b5;
    --form-select-border-color: #fff;
    --form-select-text-color: #000;
    --form-selected-option-background-color: rgba(255, 255, 255, 0.32);
    --circle-button-duration: 0.75s
}

.v-reset,
.v-reset * {
    -moz-appearance: none;
    -webkit-appearance: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-text-size-adjust: 100%;
    box-sizing: border-box;
    outline: none
}

.v-reset input::-ms-clear,
.v-reset textarea::-ms-clear {
    display: none
}

html {
    background: var(--color-bg);
    color: var(--color-text)
}

.v-no-transition :not(.v-preloader):not(.v-preloader__item):not(.v-has-transition),
.v-no-transition :not(.v-preloader):not(.v-preloader__item):not(.v-has-transition):after,
.v-no-transition :not(.v-preloader):not(.v-preloader__item):not(.v-has-transition):before {
    -webkit-animation-delay: 0s !important;
    animation-delay: 0s !important;
    -webkit-animation-duration: 0s !important;
    animation-duration: 0s !important;
    transition: 0s !important
}

.top-left {
    bottom: auto;
    left: 0;
    right: auto;
    top: 0
}

.top-right {
    bottom: auto;
    left: auto;
    right: 0;
    top: 0
}

.bottom-left {
    bottom: 0;
    left: 0;
    right: auto;
    top: auto
}

.bottom-right {
    bottom: 0;
    left: auto;
    right: 0;
    top: auto
}

.relative {
    position: relative
}

.relative_important {
    position: relative !important
}

.absolute {
    position: absolute
}

.absolute_important {
    position: absolute !important
}

.fixed {
    position: fixed
}

.fixed_important {
    position: fixed !important
}

.static {
    position: static
}

.static_important {
    position: static !important
}

.overflow-visible {
    overflow: visible
}

.overflow-visible_imortant {
    overflow: visible !important
}

.overflow-hidden {
    overflow: hidden
}

.overflow-hidden_imortant {
    overflow: hidden !important
}

.overflow-scroll {
    overflow: scroll
}

.overflow-scroll_imortant {
    overflow: scroll !important
}

.overflow-auto {
    overflow: auto
}

.overflow-auto_imortant {
    overflow: auto !important
}

.display-block {
    display: block
}

.display-block_important {
    display: block !important
}

.display-inline-block {
    display: inline-block
}

.display-inline-block_important {
    display: inline-block !important
}

.display-inline {
    display: inline
}

.display-inline_important {
    display: inline !important
}

.display-flex {
    display: flex
}

.display-flex_important {
    display: flex !important
}

.display-flex_center {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: center
}

.display-none {
    display: none
}

.display-none_important {
    display: none !important
}

.clear {
    clear: both;
    display: block;
    height: 0;
    width: 100%
}

.col-1 {
    width: 8.33333%
}

.col-v-1 {
    width: 8.33333vw
}

.col-2 {
    width: 16.66667%
}

.col-v-2 {
    width: 16.66667vw
}

.col-3 {
    width: 25%
}

.col-v-3 {
    width: 25vw
}

.col-4 {
    width: 33.33333%
}

.col-v-4 {
    width: 33.33333vw
}

.col-5 {
    width: 41.66667%
}

.col-v-5 {
    width: 41.66667vw
}

.col-6 {
    width: 50%
}

.col-v-6 {
    width: 50vw
}

.col-7 {
    width: 58.33333%
}

.col-v-7 {
    width: 58.33333vw
}

.col-8 {
    width: 66.66667%
}

.col-v-8 {
    width: 66.66667vw
}

.col-9 {
    width: 75%
}

.col-v-9 {
    width: 75vw
}

.col-10 {
    width: 83.33333%
}

.col-v-10 {
    width: 83.33333vw
}

.col-11 {
    width: 91.66667%
}

.col-v-11 {
    width: 91.66667vw
}

.col-12 {
    width: 100%
}

.col-v-12 {
    width: 100vw
}

.col-left {
    float: left
}

.col-right {
    float: right
}

.row-1 {
    height: 8.33333%
}

.row-v-1 {
    height: 8.33333vh
}

.row-2 {
    height: 16.66667%
}

.row-v-2 {
    height: 16.66667vh
}

.row-3 {
    height: 25%
}

.row-v-3 {
    height: 25vh
}

.row-4 {
    height: 33.33333%
}

.row-v-4 {
    height: 33.33333vh
}

.row-5 {
    height: 41.66667%
}

.row-v-5 {
    height: 41.66667vh
}

.row-6 {
    height: 50%
}

.row-v-6 {
    height: 50vh
}

.row-7 {
    height: 58.33333%
}

.row-v-7 {
    height: 58.33333vh
}

.row-8 {
    height: 66.66667%
}

.row-v-8 {
    height: 66.66667vh
}

.row-9 {
    height: 75%
}

.row-v-9 {
    height: 75vh
}

.row-10 {
    height: 83.33333%
}

.row-v-10 {
    height: 83.33333vh
}

.row-11 {
    height: 91.66667%
}

.row-v-11 {
    height: 91.66667vh
}

.row-12 {
    height: 100%
}

.row-v-12 {
    height: 100vh
}

.home-awards__wrap,
.wrap,
.wrap_1,
.wrap_2,
.wrap_3,
.wrap_4 {
    padding: 0 var(--wrap);
    width: 100%
}

.home-awards__wrap,
.wrap_1 {
    padding: 0 var(--wrap-1)
}

.wrap_2 {
    padding: 0 8vw
}

.wrap_3 {
    padding: 0 12vw
}

.wrap_4 {
    padding: 0 16vw
}

.text {
    position: relative
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.text-justify {
    text-align: justify
}

.text p {
    width: 100%
}

.v-preloader {
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100%;
    background: var(--color-bg)
}

.v-preloader_hide {
    visibility: hidden
}

.v-scroll {
    height: 100%;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    overflow: hidden
}

.v-scroll,
.v-scroll__container {
    position: absolute;
    width: 100%
}

.v-scroll__el {
    position: relative
}

.v-scroll_dragging .v-scroll__container {
    pointer-events: none !important
}

.v-scroll__scrollbar {
    position: absolute;
    z-index: 9;
    background: #ccc;
    transition: opacity .35s, visibility .35s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.v-scroll__scrollbar.hide {
    opacity: 0;
    visibility: hidden
}

.v-scroll__scrollbar.no-action {
    opacity: 0
}

.v-scroll__scrollbar.hover,
.v-scroll__scrollbar.in-action {
    opacity: 1
}

.v-scroll__scrollbar_y {
    top: 10px;
    right: 0;
    bottom: auto;
    left: auto;
    width: 10px;
    height: calc(100% - 20px)
}

.v-scroll__scrollbar_y .v-scroll__bar {
    width: 100%;
    height: 10%
}

.v-scroll__scrollbar_x {
    top: auto;
    right: auto;
    bottom: 0;
    left: 10px;
    width: calc(100% - 20px);
    height: 10px
}

.v-scroll__scrollbar_x .v-scroll__bar {
    width: 10%;
    height: 100%
}

.v-scroll__bar {
    position: relative;
    background: #000
}

.v-text-split__letter,
.v-text__letter {
    display: inline-block
}

.v-text-split__word,
.v-text__word {
    display: inline-block;
    white-space: nowrap
}

.v-text-split__line,
.v-text__line {
    display: block
}

.v-cursor {
    z-index: 99999;
    width: 50px;
    height: 50px;
    border: 2px solid #000;
    border-radius: 25px;
    pointer-events: none
}

.v-cursor,
.v-popup {
    position: fixed;
    top: 0;
    left: 0
}

.v-popup {
    width: 100%;
    height: 100%;
    z-index: 999;
    visibility: hidden
}

.v-popup_no-transition * {
    transition: 0s !important
}

.v-popup__overlay {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    transition: opacity .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    background: #000;
    opacity: 0
}

.v-popup_show {
    visibility: visible
}

.v-popup_show .v-popup__close,
.v-popup_show .v-popup__overlay {
    opacity: 1
}

.v-popup__container {
    position: relative;
    opacity: 0
}

.v-popup__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
    transform: rotate(45deg);
    z-index: 2;
    cursor: pointer;
    transition: opacity .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0
}

.v-popup__close:after,
.v-popup__close:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    background: #000
}

.v-popup__close:before {
    width: 2px;
    height: 100%;
    margin: -50% 0 0 -1px
}

.v-popup__close:after {
    width: 100%;
    height: 2px;
    margin: -1px 0 0 -50%
}

.v-popup__level,
.v-popup__levels {
    position: relative
}

.v-popup__level {
    background: var(--color-bg)
}

.v-popup__level_active {
    z-index: 1
}

.v-popup_auto,
.v-popup_content,
.v-popup_media,
.v-popup_modal,
.v-popup_right {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: center;
    transition: visibility .75s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.v-popup_auto .v-popup__container,
.v-popup_content .v-popup__container,
.v-popup_media .v-popup__container,
.v-popup_modal .v-popup__container,
.v-popup_right .v-popup__container {
    transition: opacity .75s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.v-popup_auto.v-popup_show .v-popup__container,
.v-popup_content.v-popup_show .v-popup__container,
.v-popup_media.v-popup_show .v-popup__container,
.v-popup_modal.v-popup_show .v-popup__container,
.v-popup_right.v-popup_show .v-popup__container {
    opacity: 1
}

.v-popup_content .v-popup__container,
.v-popup_media .v-popup__container,
.v-popup_modal .v-popup__container {
    overflow: hidden
}

.v-popup_content .v-popup__level,
.v-popup_content .v-popup__levels,
.v-popup_media .v-popup__level,
.v-popup_media .v-popup__levels,
.v-popup_modal .v-popup__level,
.v-popup_modal .v-popup__levels {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.v-popup_content .v-popup__level,
.v-popup_media .v-popup__level,
.v-popup_modal .v-popup__level {
    transition: opacity .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0
}

.v-popup_content .v-popup__level.v-popup__level_active,
.v-popup_media .v-popup__level.v-popup__level_active,
.v-popup_modal .v-popup__level.v-popup__level_active {
    opacity: 1
}

.v-popup_auto .v-popup__level:not(.v-popup__level_active) {
    display: none
}

.v-popup_modal .v-popup__container {
    width: 50%;
    height: 50%
}

.v-popup_media .v-popup__close {
    position: fixed
}

.v-popup_media .v-popup__container {
    width: var(--popup-media-width);
    height: var(--popup-media-height)
}

.v-popup_media iframe,
.v-popup_media video {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.v-popup_content .v-popup__container {
    width: 100%;
    height: 100%
}

.v-popup_right .v-popup__container {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 100%;
    opacity: 1
}

.v-popup_right .v-popup__levels {
    right: 0;
    width: 90vw;
    transform: translate3d(90vw, 0, 0);
    transition: transform .75s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.v-popup_right .v-popup__level,
.v-popup_right .v-popup__levels {
    position: absolute;
    top: 0;
    height: 100%
}

.v-popup_right.v-popup .v-popup__level-0 {
    left: 0;
    width: 30vw
}

.v-popup_right.v-popup .v-popup__level-1 {
    left: 30vw;
    width: 60vw
}

.v-popup_right.v-popup .v-popup__level-2 {
    left: 60vw;
    width: 90vw
}

.v-popup_right.v-popup_level-0 .v-popup__levels {
    transform: translate3d(60vw, 0, 0)
}

.v-popup_right.v-popup_level-1 .v-popup__levels {
    transform: translate3d(30vw, 0, 0)
}

.v-popup_right.v-popup_level-2 .v-popup__levels {
    transform: translateZ(0)
}

.v-menu-button {
    position: fixed;
    top: 4vw;
    right: 4vw;
    bottom: auto;
    left: auto;
    width: 30px;
    height: 15px;
    z-index: 9
}

.v-menu-button__line {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background: #000;
    transition: transform .5s, opacity .5s;
    transition-delay: 0s;
    transition-timing-function: ease;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.v-menu-button__line:first-child {
    top: 0
}

.v-menu-button__line:nth-child(2) {
    top: 7px
}

.v-menu-button__line:nth-child(3) {
    top: 14px
}

.v-menu-button_close .v-menu-button__line:first-child {
    transform: translate3d(0, 7px, 0) rotate(45deg)
}

.v-menu-button_close .v-menu-button__line:nth-child(2) {
    opacity: 0
}

.v-menu-button_close .v-menu-button__line:nth-child(3) {
    transform: translate3d(0, -7px, 0) rotate(-45deg)
}

.v-menu {
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 8;
    background: #fff;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s
}

.v-menu_show {
    visibility: visible;
    opacity: 1
}

.v-menu_hide {
    opacity: 0
}

.v-select {
    position: relative;
    width: 100%;
    background: #fff;
    color: #000;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.v-select__placeholder {
    position: relative;
    padding: 10px 30px 10px 10px;
    border: 1px solid #000;
    cursor: pointer
}

.v-select__placeholder,
.v-select__placeholder span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.v-select__placeholder span {
    display: block;
    width: 100%
}

.v-select__arrow {
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 100%
}

.v-select__arrow:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    right: calc(50% - 2px);
    width: 0;
    height: 0;
    margin: -2px 0 0 -2px;
    border: 3px solid transparent;
    border-top: 4px solid #000;
    border-bottom: 0;
    z-index: 1
}

.v-select__container {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    margin: -1px 0 0;
    border: 1px solid #000;
    overflow: hidden;
    background: #f0f0f0;
    display: none;
    opacity: 0;
    transition: opacity .25s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.v-select__container_opened {
    display: block
}

.v-select__container_animate {
    opacity: 1
}

.v-select__content {
    position: relative;
    padding: 10px;
    overflow: auto;
    max-height: 250px
}

.v-select__search {
    width: 100%
}

.v-select__search_hide {
    display: none
}

.v-select__search input {
    background: transparent;
    width: 100%;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #000;
    background: #fff
}

.v-select__values {
    padding: 0;
    list-style: none;
    margin: 10px 0 0
}

.v-select__values_hide-active .v-select__value_active {
    display: none
}

.v-select__value {
    padding: 5px 10px;
    margin: 0;
    background: rgba(0, 0, 0, 0);
    color: #000;
    cursor: pointer
}

.v-select__value_active {
    background: #ccc;
    color: #000
}

.v-select__value_hide {
    display: none
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Medium.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Mediumd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Medium.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Medium.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Medium.ttf) format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Light.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Lightd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Light.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Light.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Light.ttf) format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLight.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLightd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLight.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLight.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLight.ttf) format("truetype");
    font-weight: 200;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-HeavyItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-HeavyItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-HeavyItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-HeavyItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-HeavyItalic.ttf) format("truetype");
    font-weight: 900;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-MediumItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-MediumItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-MediumItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-MediumItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-MediumItalic.ttf) format("truetype");
    font-weight: 500;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BlackItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BlackItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BlackItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BlackItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BlackItalic.ttf) format("truetype");
    font-weight: 900;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Heavy.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Heavyd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Heavy.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Heavy.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Heavy.ttf) format("truetype");
    font-weight: 900;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-ThinItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-ThinItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-ThinItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-ThinItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-ThinItalic.ttf) format("truetype");
    font-weight: 100;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Thin.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Thind41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Thin.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Thin.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Thin.ttf) format("truetype");
    font-weight: 100;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Italic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Italicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Italic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Italic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Italic.ttf) format("truetype");
    font-weight: 400;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLightItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLightItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLightItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLightItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-UltraLightItalic.ttf) format("truetype");
    font-weight: 200;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Roman.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Romand41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Roman.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Roman.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Roman.ttf) format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-LightItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-LightItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-LightItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-LightItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-LightItalic.ttf) format("truetype");
    font-weight: 300;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Black.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Blackd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Black.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Black.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Black.ttf) format("truetype");
    font-weight: 900;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BoldItalic.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BoldItalicd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BoldItalic.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BoldItalic.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-BoldItalic.ttf) format("truetype");
    font-weight: 700;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: HelveticaNeueCyr;
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Bold.eot);
    src: url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Boldd41d.eot?#iefix) format("embedded-opentype"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Bold.woff2) format("woff2"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Bold.woff) format("woff"), url(./fonts/HelveticaNeueCyr/HelveticaNeueCyr-Bold.ttf) format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

* {
    -ms-scroll-chaining: none;
    -ms-content-zooming: none;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.tab-highlight {
    outline: 1px solid currentColor;
    outline-offset: 2px
}

body::-webkit-scrollbar,
div::-webkit-scrollbar,
html::-webkit-scrollbar {
    display: none
}

button,
html,
input,
select,
textarea {
    font-family: HelveticaNeueCyr
}

html {
    font-size: 16px
}

html:not(.use-native-scroll) {
    overflow: hidden
}

html:not(.use-native-scroll) body {
    position: fixed;
    width: 100%
}

.page {
    position: relative;
    z-index: 1
}

html:not(.use-native-scroll) .page {
    height: calc(var(--vh)*100)
}

.app {
    position: relative;
    z-index: 1;
    overflow: hidden
}

html:not(.use-native-scroll) .app {
    height: calc(var(--vh)*100)
}

.home-awards__wrap,
.wrap_1 {
    margin: 0 auto
}

.canvas-outer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1
}

.canvas-outer.beneath {
    z-index: -3
}

.canvas-outer canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

splash-bg {
    display: block
}

splash-bg,
splash-bg canvas {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.v-view_b {
    opacity: 0
}

.v-view_b.v-viewed {
    -webkit-animation-duration: 1.25s;
    animation-duration: 1.25s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-name: viewBottom;
    animation-name: viewBottom;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

@-webkit-keyframes viewBottom {
    0% {
        transform: translate3d(0, 2rem, 0);
        opacity: 0
    }

    to {
        transform: none;
        opacity: 1
    }
}

@keyframes viewBottom {
    0% {
        transform: translate3d(0, 2rem, 0);
        opacity: 0
    }

    to {
        transform: none;
        opacity: 1
    }
}

.v-view_a {
    opacity: 0
}

.v-view_a.v-viewed {
    -webkit-animation-duration: 1.25s;
    animation-duration: 1.25s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-name: viewAlpha;
    animation-name: viewAlpha;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

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

    to {
        opacity: 1
    }
}

@keyframes viewAlpha {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.in-view-rotate {
    overflow: hidden
}

.in-view-rotate>* {
    transform: translateY(-200%);
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.in-view-rotate.v-viewed>*,
.v-viewed .in-view-rotate>* {
    -webkit-animation-name: in-view-rotate;
    animation-name: in-view-rotate
}

@-webkit-keyframes in-view-rotate {
    0% {
        transform: rotate(-10deg) translateY(-130%)
    }

    to {
        transform: rotate(0) translate(0)
    }
}

@keyframes in-view-rotate {
    0% {
        transform: rotate(-10deg) translateY(-130%)
    }

    to {
        transform: rotate(0) translate(0)
    }
}

.in-view-up {
    overflow: hidden
}

.in-view-up>* {
    transform: translateY(200%);
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.in-view-up.v-viewed>*,
.v-viewed .in-view-up>* {
    -webkit-animation-name: in-view-up;
    animation-name: in-view-up
}

@-webkit-keyframes in-view-up {
    0% {
        transform: translateY(120%)
    }

    to {
        transform: translate(0)
    }
}

@keyframes in-view-up {
    0% {
        transform: translateY(120%)
    }

    to {
        transform: translate(0)
    }
}

.v-cursor {
    z-index: 99;
    border: 0;
    border-radius: 0
}

.v-cursor__link-315 {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--color-highlight);
    transition: opacity .25s, transform .25s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0;
    transform: scale(.75) rotate(45deg)
}

.v-cursor.v-cursor_link-315 .v-cursor__link-315 {
    opacity: 1;
    transform: scale(1) rotate(45deg)
}

.v-cursor__drag {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--color-highlight);
    transition: opacity .25s, transform .25s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0;
    transform: scale(.75)
}

.v-cursor.v-cursor_drag .v-cursor__drag {
    opacity: 1;
    transform: scale(1)
}

.header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--header-height);
    z-index: 9;
    padding: 0 var(--wrap);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between
}

.header_fixed {
    position: fixed;
    height: calc(var(--header-height)*0.75);
    background-color: rgba(0, 0, 0, .75)
}

html:not(.v-browser_safari) .header_fixed {
    transition: transform .5s;
    transition-delay: 0s;
    transition-timing-function: ease;
    transform: translateY(-250%)
}

html:not(.v-browser_safari) .header_fixed.show-fixed {
    transform: none
}

html.v-browser_safari .header_fixed {
    transition: opacity .5s, visibility .5s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0;
    visibility: hidden
}

html.v-browser_safari .header_fixed.show-fixed {
    opacity: 1;
    visibility: visible
}

.header_static {
    transform: translateZ(0)
}

.header__logo .split-hover-text>span:first-child {
    opacity: 1
}

.header__nav {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between
}

.header__menu {
    margin-left: -24px;
    font-size: 1rem
}

.header__menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.header__menu .ellipse-link-hover {
    padding: 17px 24px
}

.header__menu a {
    display: block
}

.header__languages {
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0 -4px 0 0;
    font-size: 1rem
}

.header__languages li+li {
    margin-left: 4px
}

.header__languages a {
    display: inline-block;
    padding: 4px;
    opacity: .3;
    transition: opacity .35s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.header__languages a.hover,
.header__languages a:hover {
    opacity: .6
}

.header__languages a.active {
    opacity: 1
}

.footer {
    position: relative;
    padding: 0 var(--wrap) 3.75rem;
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text)
}

.footer a {
    position: relative;
    color: currentColor
}

.footer a:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    transition: transform .35s;
    transition-delay: 0s;
    transition-timing-function: ease;
    transform: scaleX(0)
}

.footer a.active:after,
.footer a.hover:after,
.footer a.tab-highlight:after,
.footer a:hover:after {
    transform: scale(1)
}

.footer__column {
    margin: 0;
    padding: 0;
    list-style: none
}

.footer__column>*+* {
    margin-top: .625rem
}

.minifooter {
    padding: 0 var(--wrap);
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text)
}

.minifooter a {
    position: relative;
    color: currentColor
}

.minifooter a:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    transition: transform .35s;
    transition-delay: 0s;
    transition-timing-function: ease;
    transform: scaleX(0)
}

.minifooter a.active:after,
.minifooter a.hover:after,
.minifooter a.tab-highlight:after,
.minifooter a:hover:after {
    transform: scale(1)
}

.minifooter__wrap {
    position: relative
}

.minifooter__social ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.v-preloader__progress {
    position: absolute;
    height: 3px;
    transform: scale(0);
    transform-origin: top left
}

.v-preloader__progress,
html:before {
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--color-highlight)
}

html:before {
    content: "";
    display: block;
    position: fixed;
    z-index: 999999;
    transition: opacity .25s;
    opacity: 0
}

@-webkit-keyframes loading-indicator {
    0% {
        transform: scaleX(0);
        transform-origin: top left
    }

    50% {
        transform-origin: top left;
        transform: scale(1)
    }

    50.01% {
        transform-origin: top right;
        transform: scale(1)
    }

    to {
        transform: scaleX(0);
        transform-origin: top right
    }
}

@keyframes loading-indicator {
    0% {
        transform: scaleX(0);
        transform-origin: top left
    }

    50% {
        transform-origin: top left;
        transform: scale(1)
    }

    50.01% {
        transform-origin: top right;
        transform: scale(1)
    }

    to {
        transform: scaleX(0);
        transform-origin: top right
    }
}

html.loading,
html.loading * {
    cursor: progress !important
}

html.loading:before {
    opacity: 1;
    -webkit-animation-name: loading-indicator;
    animation-name: loading-indicator;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.page-ajax-loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    display: none
}

.page-ajax-loading canvas {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.v-scroll.custom-scroll:not(.unactive) {
    overflow: hidden
}

.v-scroll.custom-scroll.unactive {
    position: static;
    overflow: initial;
    -webkit-overflow-scrolling: touch
}

.v-scroll.custom-scroll.unactive .v-scroll__container {
    position: static
}

.v-scroll.custom-scroll.unactive .v-scroll__scrollbar {
    display: none
}

html.v-mobile-device .v-scroll.v-scroll_dragging>.v-scroll__container {
    pointer-events: auto !important
}

html:not(.use-native-scroll) .custom-scroll {
    height: calc(var(--vh)*100)
}

html:not(.use-native-scroll):not(.use-custom-scroll) .custom-scroll {
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.custom-scroll__outer {
    position: relative;
    height: auto
}

.layout-scroll-down {
    position: fixed;
    z-index: 9;
    display: block;
    left: var(--wrap);
    bottom: 2.625rem;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text)
}

sticky-mouse-el {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.ellipse-link-hover {
    position: relative;
    display: block;
    cursor: pointer
}

.ellipse-link-hover a {
    display: block
}

.ellipse-link-hover__canvas {
    display: block;
    z-index: -1
}

.ellipse-link-hover__canvas,
.ellipse-link-hover__canvas canvas {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

button {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

button:-moz-focusring {
    outline: none
}

.mail-button {
    background: transparent;
    border: 0;
    padding: 0;
    position: relative;
    display: block;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.mail-button span {
    opacity: 0
}

.mail-button:after,
.mail-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: -1;
    transition: transform var(--circle-button-duration);
    transition-delay: 0s;
    transition-timing-function: ease;
    border-radius: 50%
}

.mail-button:before {
    background-color: var(--color-white);
    transform: scale(.99)
}

.mail-button:after {
    transform: scale(0);
    background-color: var(--color-highlight)
}

.mail-button i {
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--size);
    height: var(--size);
    margin-top: calc(var(--size)*-0.5);
    margin-left: calc(var(--size)*-0.5);
    z-index: 0
}

.mail-button i svg {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    transition: opacity var(--circle-button-duration);
    transition-delay: 0s;
    transition-timing-function: ease
}

.mail-button i svg:nth-child(2) {
    opacity: 0
}

html:not(.v-mobile-device) .mail-button:hover:after {
    transform: scale(1)
}

html:not(.v-mobile-device) .mail-button:hover i svg:first-child {
    opacity: 0
}

html:not(.v-mobile-device) .mail-button:hover i svg:nth-child(2) {
    opacity: 1
}

html:not(.v-mobile-device) .mail-button.hover:after {
    transform: scale(1)
}

html:not(.v-mobile-device) .mail-button.hover i svg:first-child {
    opacity: 0
}

html:not(.v-mobile-device) .mail-button.hover i svg:nth-child(2) {
    opacity: 1
}

.readmore-button {
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    position: relative;
    z-index: 1;
    display: block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: var(--size);
    height: var(--size);
    border-radius: 50%
}

.readmore-button>span {
    opacity: 0
}

.readmore-button:after,
.readmore-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    box-sizing: border-box;
    z-index: 1;
    border-radius: 50%
}

.readmore-button:before {
    border: 1px solid var(--color-white);
    transform: scale(.99)
}

.readmore-button:after {
    transition: transform var(--circle-button-duration);
    transition-delay: 0s;
    transition-timing-function: ease;
    transform: scale(0);
    background-color: var(--color-white)
}

.readmore-button__outer {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: 2;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    mix-blend-mode: difference
}

.readmore-button__text {
    display: block;
    position: relative;
    width: 88%;
    height: 88%;
    opacity: 0;
    transition: opacity calc(var(--circle-button-duration)/2);
    transition-delay: 0s;
    transition-timing-function: ease;
    -webkit-animation-name: readmore-button-text-rotation;
    animation-name: readmore-button-text-rotation;
    -webkit-animation-duration: 6s;
    animation-duration: 6s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

@-webkit-keyframes readmore-button-text-rotation {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(-1turn)
    }
}

@keyframes readmore-button-text-rotation {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(-1turn)
    }
}

.readmore-button__ico,
.readmore-button__text img,
.readmore-button__text svg {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.readmore-button__ico {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.readmore-button__ico img,
.readmore-button__ico svg {
    width: auto
}

html:not(.v-mobile-device) .readmore-button:hover:after {
    transform: scale(1)
}

html:not(.v-mobile-device) .readmore-button:hover .readmore-button__text {
    opacity: 1;
    transition: opacity var(--circle-button-duration);
    transition-delay: calc(var(--circle-button-duration)/2);
    transition-timing-function: ease
}

html:not(.v-mobile-device) .readmore-button.hover:after {
    transform: scale(1)
}

html:not(.v-mobile-device) .readmore-button.hover .readmore-button__text {
    opacity: 1;
    transition: opacity var(--circle-button-duration);
    transition-delay: calc(var(--circle-button-duration)/2);
    transition-timing-function: ease
}

.readmore-button.angle-45 {
    transform: rotate(45deg)
}

.readmore-button.angle-180 {
    transform: rotate(180deg)
}

.circle-button {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    padding: 10px;
    width: var(--size);
    height: var(--size);
    transition: color .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    color: var(--color-black);
    text-align: center;
    font-size: 1rem;
    line-height: 1.125rem
}

.circle-button:after,
.circle-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: -1;
    transition: transform .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    border-radius: 50%
}

.circle-button:before {
    background-color: var(--color-white);
    transform: scale(.99)
}

.circle-button:after {
    transform: scale(0);
    background-color: var(--color-highlight)
}

html:not(.v-mobile-device) .circle-button:hover {
    color: var(--color-white)
}

html:not(.v-mobile-device) .circle-button:hover:after {
    transform: scale(1)
}

html:not(.v-mobile-device) .circle-button.hover {
    color: var(--color-white)
}

html:not(.v-mobile-device) .circle-button.hover:after {
    transform: scale(1)
}

.interactive-button,
interactive-button {
    position: relative;
    background: transparent;
    border: 0;
    padding: 0;
    display: block;
    cursor: pointer;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    --bg-color: var(--color-white);
    --text-color: var(--color-black);
    --text-color-hover: var(--color-white);
    --translate: 1rem
}

.interactive-button[type],
interactive-button[type] {
    -webkit-appearance: initial
}

.interactive-button a,
.interactive-button button,
.interactive-button input,
interactive-button a,
interactive-button button,
interactive-button input {
    position: relative;
    background: transparent;
    border: 0;
    padding: 0;
    display: block;
    overflow: hidden;
    border-radius: 3rem;
    transform: translateZ(0);
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    font-size: 1rem;
    line-height: 1.125rem;
    text-align: center;
    white-space: nowrap;
    background-color: var(--bg-color);
    transition: background-color .5s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.interactive-button a>span,
.interactive-button button>span,
.interactive-button input>span,
interactive-button a>span,
interactive-button button>span,
interactive-button input>span {
    position: relative;
    display: block;
    z-index: 1;
    font-style: normal;
    transition: transform .5s, opacity .5s, color .5s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.interactive-button a>span:first-child,
.interactive-button button>span:first-child,
.interactive-button input>span:first-child,
interactive-button a>span:first-child,
interactive-button button>span:first-child,
interactive-button input>span:first-child {
    color: var(--text-color);
    z-index: 0
}

.interactive-button a>span:not(:first-child),
.interactive-button button>span:not(:first-child),
.interactive-button input>span:not(:first-child),
interactive-button a>span:not(:first-child),
interactive-button button>span:not(:first-child),
interactive-button input>span:not(:first-child) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    color: var(--text-color-hover);
    transform: translate3d(0, var(--translate), 0);
    opacity: 0;
    z-index: 2
}

.interactive-button a>canvas,
.interactive-button button>canvas,
.interactive-button input>canvas,
interactive-button a>canvas,
interactive-button button>canvas,
interactive-button input>canvas {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: 1
}

.interactive-button a.hover>span:first-child,
.interactive-button button.hover>span:first-child,
.interactive-button input.hover>span:first-child,
interactive-button a.hover>span:first-child,
interactive-button button.hover>span:first-child,
interactive-button input.hover>span:first-child {
    transform: translate3d(0, calc(var(--translate)*-1), 0)
}

.interactive-button a.hover>span:not(:first-child),
.interactive-button button.hover>span:not(:first-child),
.interactive-button input.hover>span:not(:first-child),
interactive-button a.hover>span:not(:first-child),
interactive-button button.hover>span:not(:first-child),
interactive-button input.hover>span:not(:first-child) {
    transform: translateZ(0);
    opacity: 1
}

.interactive-button a.narrow,
.interactive-button button.narrow,
.interactive-button input.narrow,
interactive-button a.narrow,
interactive-button button.narrow,
interactive-button input.narrow {
    min-width: 11.25rem
}

.interactive-button a.narrow>span,
.interactive-button button.narrow>span,
.interactive-button input.narrow>span,
interactive-button a.narrow>span,
interactive-button button.narrow>span,
interactive-button input.narrow>span {
    padding: .9375rem 1.75rem
}

.interactive-button a:not(.narrow),
.interactive-button button:not(.narrow),
.interactive-button input:not(.narrow),
interactive-button a:not(.narrow),
interactive-button button:not(.narrow),
interactive-button input:not(.narrow) {
    min-width: 12.25rem
}

.interactive-button a:not(.narrow)>span,
.interactive-button button:not(.narrow)>span,
.interactive-button input:not(.narrow)>span,
interactive-button a:not(.narrow)>span,
interactive-button button:not(.narrow)>span,
interactive-button input:not(.narrow)>span {
    padding: 1.3125rem 2.75rem
}

.interactive-button a.grey,
.interactive-button button.grey,
.interactive-button input.grey,
interactive-button a.grey,
interactive-button button.grey,
interactive-button input.grey {
    --bg-color: var(--color-dark);
    --text-color: var(--color-white);
    --text-color-hover: var(--color-dark)
}

.interactive-button a.highlight,
.interactive-button button.highlight,
.interactive-button input.highlight,
interactive-button a.highlight,
interactive-button button.highlight,
interactive-button input.highlight {
    --bg-color: var(--color-highlight);
    --text-color: var(--color-white);
    --text-color-hover: var(--color-white)
}

.interactive-button.disabled,
interactive-button.disabled {
    cursor: default;
    --bg-color: var(--color-disabled) !important;
    --text-color: var(--color-dark-grey) !important;
    --text-color-hover: var(--color-dark-grey) !important
}

.interactive-button.disabled a,
.interactive-button.disabled button,
.interactive-button.disabled input,
interactive-button.disabled a,
interactive-button.disabled button,
interactive-button.disabled input {
    cursor: default
}

.close-circle-button {
    position: relative;
    background: transparent;
    border: 0;
    padding: 0
}

.close-circle-button:after,
.close-circle-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    border-radius: 50%;
    box-sizing: border-box
}

.close-circle-button:after {
    background-color: var(--color-highlight);
    transition: transform .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    transform: scale(0)
}

html:not(.v-mobile-device) .close-circle-button.hover:after,
html:not(.v-mobile-device) .close-circle-button:hover:after {
    transform: scale(1.05)
}

.close-circle-button span {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.close-circle-button i {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    transform: rotate(45deg);
    z-index: 1
}

.close-circle-button i:after,
.close-circle-button i:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transition: background-color .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    width: var(--width);
    height: var(--height);
    margin-left: calc(var(--width)/-2);
    margin-top: calc(var(--height)/-2)
}

.close-circle-button i:before {
    --height: 2px
}

.close-circle-button i:after {
    --width: 2px
}

html:not(.v-mobile-device) .close-circle-button.hover i:after,
html:not(.v-mobile-device) .close-circle-button.hover i:before,
html:not(.v-mobile-device) .close-circle-button:hover i:after,
html:not(.v-mobile-device) .close-circle-button:hover i:before {
    background-color: var(--color-white)
}

.back-button {
    position: relative;
    background: transparent;
    border: 0;
    padding: 0
}

.back-button:after,
.back-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    border-radius: 50%;
    box-sizing: border-box
}

.back-button:before {
    background-color: var(--color-white)
}

.back-button:after {
    background-color: var(--color-highlight);
    transition: transform .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    transform: scale(0)
}

html:not(.v-mobile-device) .back-button.hover:after,
html:not(.v-mobile-device) .back-button:hover:after {
    transform: scale(1.05)
}

.back-button span {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.back-button i {
    z-index: 1
}

.back-button i,
.back-button i:after,
.back-button i:before {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.back-button i:after,
.back-button i:before {
    content: "";
    transition: opacity .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    background-position: 50%;
    background-repeat: no-repeat
}

.back-button i:before {
    background-image: url(./img/icons/back-black.svg)
}

.back-button i:after {
    background-image: url(./img/icons/back-white.svg);
    opacity: 0
}

html:not(.v-mobile-device) .back-button:hover i:before {
    opacity: 0
}

html:not(.v-mobile-device) .back-button:hover i:after {
    opacity: 1
}

html:not(.v-mobile-device) .back-button.hover i:before {
    opacity: 0
}

html:not(.v-mobile-device) .back-button.hover i:after {
    opacity: 1
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.h6,
h6 {
    font-size: 1.5rem
}

.text {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.text :first-child {
    margin-top: 0
}

.text :last-child {
    margin-bottom: 0
}

.text p {
    margin: 0
}

.text a {
    text-decoration: underline
}

.text a.hover,
.text a:hover {
    text-decoration: none
}

.text img {
    margin: 0
}

.text img:not([height]),
.text img:not([width]),
.text img[width=""] {
    width: 100%
}

.text blockquote,
.text cite,
.text q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.text blockquote:before,
.text cite:before,
.text q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.text h1,
.text h2,
.text h3,
.text h4,
.text h5,
.text h6 {
    margin: 0
}

.text ol,
.text ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.text ol li,
.text ul li {
    list-style-position: inside
}

.text ol li+li,
.text ul li+li {
    margin-top: 1.25rem
}

.text ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.text ol {
    counter-reset: ol-counter
}

.text ol li {
    counter-increment: ol-counter
}

.text ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.text p {
    margin: 1.25rem 0
}

.text img {
    margin: .5rem 0
}

.text blockquote,
.text cite,
.text h1,
.text h2,
.text h3,
.text q {
    margin: 2.5rem 0
}

.text h4,
.text h5,
.text h6 {
    margin: 1.25rem 0
}

.text ol,
.text ul {
    margin: 1.875rem
}

hr {
    display: block;
    border: 0;
    margin: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

a {
    text-decoration: none;
    color: var(--color-text)
}

.marquee-text,
marquee-text {
    display: block;
    width: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.marquee-text.has-copy,
marquee-text.has-copy {
    opacity: 0
}

.marquee-header,
marquee-header {
    display: block;
    line-height: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.marquee-header .node-marquee__el,
marquee-header .node-marquee__el {
    padding: 1.25rem 0
}

.marquee-header.has-copy,
marquee-header.has-copy {
    opacity: 0
}

animated-header {
    display: block;
    width: 100%;
    opacity: 0
}

animated-header.composed {
    opacity: 1
}

animated-header .v-text-split__line {
    overflow: hidden;
    --duration: 0s;
    --delay: 0s;
    --clamp: 0.25em;
    margin-top: calc(var(--clamp)*-2)
}

animated-header .v-text-split__line:first-child {
    margin-top: calc(var(--clamp)*-1)
}

animated-header .v-text-split__line:last-child {
    margin-bottom: calc(var(--clamp)*-1)
}

animated-header .v-text-split__line>span {
    display: block;
    padding: var(--clamp) 0;
    transform: rotate(-10deg) translate3d(0, -130%, 0);
    transform-origin: bottom left;
    transition: transform var(--duration);
    transition-delay: var(--delay);
    transition-timing-function: ease
}

animated-header .v-text-split__line.show>span {
    transform: rotate(0) translateZ(0)
}

.split-hover-text {
    position: relative;
    display: block;
    overflow: hidden
}

.split-hover-text>span {
    display: inline-block
}

.split-hover-text>span:first-child {
    opacity: .5
}

.split-hover-text>span:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(100%)
}

.replace-split-text.v-text.new .v-text__letter {
    opacity: 0
}

.v-menu {
    position: fixed;
    overflow: hidden;
    background: transparent;
    z-index: 999;
    transition: opacity 0s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.v-menu_hide {
    opacity: 1
}

.v-menu__bg {
    background-color: var(--color-white);
    transform: scaleY(0);
    transform-origin: top left
}

.v-menu__bg,
.v-menu__content {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.v-menu__content {
    z-index: 1
}

.v-menu__scroll {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    max-height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.v-menu__translate {
    will-change: transform, opacity
}

.v-menu__alpha {
    will-change: opacity
}

.v-menu__rotate {
    display: block;
    width: 100%;
    overflow: hidden;
    --clamp: 0.25rem;
    margin-top: calc(var(--clamp)*0)
}

.v-menu__rotate:first-child {
    margin-top: calc(var(--clamp)*-1)
}

.v-menu__rotate:last-child {
    margin-bottom: calc(var(--clamp)*-1)
}

.v-menu__rotate>* {
    display: inline-block;
    padding: var(--clamp) 0;
    transform: rotate(-10deg) translate3d(0, -130%, 0);
    transform-origin: bottom left;
    transition: transform var(--duration);
    transition-delay: var(--delay);
    transition-timing-function: ease
}

.burger-button {
    background: transparent;
    border: 0;
    padding: 0;
    position: relative;
    overflow: hidden;
    border-radius: 50%;
    background-color: var(--color-white);
    transition: background-color .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    --line-width: 16px;
    --line-height: 2px
}

.burger-button span {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.burger-button:before {
    content: "";
    background-color: var(--color-highlight);
    border-radius: 50%;
    transform: scale(0);
    transition: transform .75s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.burger-button:before,
.burger-button i {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.burger-button i:after,
.burger-button i:before {
    content: "";
    position: absolute;
    display: block;
    transition: background-color .75s;
    transition-delay: 0s;
    transition-timing-function: ease;
    background-color: var(--color-black)
}

html:not(.v-mobile-device) .burger-button:not(.close):hover:before {
    transform: scale(1.05)
}

html:not(.v-mobile-device) .burger-button:not(.close):hover i:after,
html:not(.v-mobile-device) .burger-button:not(.close):hover i:before {
    background-color: var(--color-white)
}

html:not(.v-mobile-device) .burger-button:not(.close).hover:before {
    transform: scale(1.05)
}

html:not(.v-mobile-device) .burger-button:not(.close).hover i:after,
html:not(.v-mobile-device) .burger-button:not(.close).hover i:before {
    background-color: var(--color-white)
}

.burger-button:not(.close) i:after,
.burger-button:not(.close) i:before {
    left: 50%;
    top: 50%;
    margin-left: -8px;
    width: var(--line-width);
    height: var(--line-height)
}

.burger-button:not(.close) i:before {
    margin-top: -2px
}

.burger-button:not(.close) i:after {
    margin-top: 2px
}

.burger-button.close {
    background-color: var(--color-black)
}

.burger-button.close i {
    transform: rotate(45deg)
}

.burger-button.close i:after,
.burger-button.close i:before {
    top: 50%;
    left: 50%;
    background-color: var(--color-white)
}

.burger-button.close i:before {
    width: var(--line-width);
    height: var(--line-height);
    margin-left: calc(var(--line-width)/-2);
    margin-top: calc(var(--line-height)/-2)
}

.burger-button.close i:after {
    width: var(--line-height);
    height: var(--line-width);
    margin-left: calc(var(--line-height)/-2);
    margin-top: calc(var(--line-width)/-2)
}

.popup-menu {
    --color-layout-text: var(--color-black)
}

.popup-menu__header {
    position: absolute;
    top: 0;
    left: 0;
    justify-content: space-between;
    width: 100%;
    height: var(--header-height);
    padding: 0 var(--wrap)
}

.popup-menu__header,
.popup-menu__languages {
    display: flex;
    flex-direction: row;
    align-items: center
}

.popup-menu__languages {
    margin: 0;
    padding: 0;
    list-style: none;
    justify-content: center;
    --padding: 4px;
    margin-left: calc(var(--padding)*-1);
    font-size: 1rem;
    line-height: 1.125rem
}

.popup-menu__languages li+li {
    margin-left: 4px
}

.popup-menu__languages a {
    display: inline-block;
    padding: var(--padding);
    color: var(--color-black);
    opacity: .3;
    transition: opacity .35s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.popup-menu__languages a.hover,
.popup-menu__languages a:hover {
    opacity: .6
}

.popup-menu__languages a.active {
    opacity: 1
}

.popup-menu__container {
    min-height: calc(var(--vh)*100);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    padding: calc(var(--header-height) + 2.375rem) var(--wrap) 0
}

.popup-menu__container>* {
    width: 100%
}

.popup-menu__links ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.popup-menu__links a {
    color: var(--color-black);
    transition: color .35s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.popup-menu__links a.active,
html:not(.v-mobile-device) .popup-menu__links a.hover,
html:not(.v-mobile-device) .popup-menu__links a:hover {
    color: var(--color-highlight)
}

.popup-menu__link {
    position: relative
}

.popup-menu__link sup {
    position: absolute;
    top: .375rem;
    left: calc(100% + 1rem);
    font-size: .75rem;
    line-height: .875rem;
    white-space: nowrap
}

.popup-menu__footer {
    margin-top: 3.75rem;
    margin-bottom: 1.5em;
}

.popup-menu__footer .footer {
    padding: 0
}

html.prevent-scroll-under-popup-menu,
html.prevent-scroll-under-popup-menu body {
    overflow: hidden
}

.page-content {
    transform: translateZ(0);
    padding-top: var(--content-padding-top)
}

.page-desc__content {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.page-desc__content :first-child {
    margin-top: 0
}

.page-desc__content :last-child {
    margin-bottom: 0
}

.page-desc__content p {
    margin: 0
}

.page-desc__content a {
    text-decoration: underline
}

.page-desc__content a.hover,
.page-desc__content a:hover {
    text-decoration: none
}

.page-desc__content img {
    margin: 0
}

.page-desc__content img:not([height]),
.page-desc__content img:not([width]),
.page-desc__content img[width=""] {
    width: 100%
}

.page-desc__content blockquote,
.page-desc__content cite,
.page-desc__content q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.page-desc__content blockquote:before,
.page-desc__content cite:before,
.page-desc__content q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.page-desc__content h1,
.page-desc__content h2,
.page-desc__content h3,
.page-desc__content h4,
.page-desc__content h5,
.page-desc__content h6 {
    margin: 0
}

.page-desc__content ol,
.page-desc__content ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.page-desc__content ol li,
.page-desc__content ul li {
    list-style-position: inside
}

.page-desc__content ol li+li,
.page-desc__content ul li+li {
    margin-top: 1.25rem
}

.page-desc__content ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.page-desc__content ol {
    counter-reset: ol-counter
}

.page-desc__content ol li {
    counter-increment: ol-counter
}

.page-desc__content ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.page-desc__content p {
    margin: 1.25rem 0
}

.page-desc__content img {
    margin: .5rem 0
}

.page-desc__content blockquote,
.page-desc__content cite,
.page-desc__content h1,
.page-desc__content h2,
.page-desc__content h3,
.page-desc__content q {
    margin: 2.5rem 0
}

.page-desc__content h4,
.page-desc__content h5,
.page-desc__content h6 {
    margin: 1.25rem 0
}

.page-desc__content ol,
.page-desc__content ul {
    margin: 1.875rem
}

.info-content {
    display: grid;
    grid-template-columns: 1fr
}

.info-content__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.info-content__desc {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.info-content__desc :first-child {
    margin-top: 0
}

.info-content__desc :last-child {
    margin-bottom: 0
}

.info-content__desc p {
    margin: 0
}

.info-content__desc a {
    text-decoration: underline
}

.info-content__desc a.hover,
.info-content__desc a:hover {
    text-decoration: none
}

.info-content__desc img {
    margin: 0
}

.info-content__desc img:not([height]),
.info-content__desc img:not([width]),
.info-content__desc img[width=""] {
    width: 100%
}

.info-content__desc blockquote,
.info-content__desc cite,
.info-content__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.info-content__desc blockquote:before,
.info-content__desc cite:before,
.info-content__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.info-content__desc h1,
.info-content__desc h2,
.info-content__desc h3,
.info-content__desc h4,
.info-content__desc h5,
.info-content__desc h6 {
    margin: 0
}

.info-content__desc ol,
.info-content__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.info-content__desc ol li,
.info-content__desc ul li {
    list-style-position: inside
}

.info-content__desc ol li+li,
.info-content__desc ul li+li {
    margin-top: 1.25rem
}

.info-content__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.info-content__desc ol {
    counter-reset: ol-counter
}

.info-content__desc ol li {
    counter-increment: ol-counter
}

.info-content__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.info-content__desc p {
    margin: 1.25rem 0
}

.info-content__desc img {
    margin: .5rem 0
}

.info-content__desc blockquote,
.info-content__desc cite,
.info-content__desc h1,
.info-content__desc h2,
.info-content__desc h3,
.info-content__desc q {
    margin: 2.5rem 0
}

.info-content__desc h4,
.info-content__desc h5,
.info-content__desc h6 {
    margin: 1.25rem 0
}

.info-content__desc ol,
.info-content__desc ul {
    margin: 1.875rem
}

.beneath-content {
    display: block;
    width: 100%
}

.beneath-content.has-copy {
    opacity: 0
}

.awwwards-badge {
    position: fixed;
    top: 50%;
    right: var(--wrap);
    z-index: 6;
    transform: translateY(-50%);
    display: block;
    width: 9.25rem;
    height: 9.25rem;
    transition: opacity .5s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 1
}

.awwwards-badge__inner {
    border-radius: 50%;
    background-color: var(--color-highlight)
}

.awwwards-badge__inner,
.awwwards-badge__inner:after,
.awwwards-badge__inner:before {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.awwwards-badge__inner:after,
.awwwards-badge__inner:before {
    content: "";
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 82%
}

.awwwards-badge__inner:before {
    background-image: url(./img/awwwards-badge-text.svg);
    -webkit-animation-name: awwwards-badge;
    animation-name: awwwards-badge;
    -webkit-animation-duration: 6s;
    animation-duration: 6s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.awwwards-badge__inner:after {
    background-image: url(./img/awwwards-badge.svg)
}

@-webkit-keyframes awwwards-badge {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(-1turn)
    }
}

@keyframes awwwards-badge {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(-1turn)
    }
}

.bg {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    background-position: 50%;
    background-repeat: no-repeat
}

.bg.cover {
    background-size: cover
}

.bg.contain {
    background-size: contain
}

.lazy-bg,
.lazy-image {
    transition: opacity .5s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0
}

.lazy-bg.loaded,
.lazy-image.loaded {
    opacity: 1
}

.lazy-img,
lazy-img {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    overflow: hidden;
    background-color: var(--color-lazy-image-bg)
}

.lazy-img *,
lazy-img * {
    position: relative
}

.lazy-img img,
lazy-img img {
    -o-object-fit: cover;
    object-fit: cover
}

.interactive-image,
.lazy-img img,
interactive-image,
lazy-img img {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.interactive-image,
interactive-image {
    overflow: hidden
}

.interactive-image img,
.interactive-image video,
interactive-image img,
interactive-image video {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: opacity .5s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0
}

.interactive-image:not(.use-gl).loaded.show img,
.interactive-image:not(.use-gl).loaded.show video,
interactive-image:not(.use-gl).loaded.show img,
interactive-image:not(.use-gl).loaded.show video {
    opacity: 1
}

.interactive-image.use-gl img,
interactive-image.use-gl img {
    display: none
}

.image-marquee {
    display: block;
    width: 100%;
    height: 100%
}

.image-marquee>div {
    position: absolute;
    top: 0;
    left: 0
}

.wave-hover-image {
    display: block;
    position: relative;
    width: 100%;
    z-index: 1
}

.wave-hover-image__ref-el {
    position: absolute;
    z-index: -2;
    pointer-events: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20%
}

.wave-hover-image__ref-el div {
    width: 100%;
    padding-top: 50%
}

.layout-ua-flag {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 7;
    width: 100%;
    height: 8px
}

.layout-ua-flag:after,
.layout-ua-flag:before {
    content: "";
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 50%
}

.layout-ua-flag:before {
    top: 0;
    background-color: #00a3ff
}

.layout-ua-flag:after {
    top: 50%;
    background-color: #ffd600
}

.contact-us-screen {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.contact-us-screen__scene {
    position: absolute
}

.contact-us-screen__header {
    position: relative;
    z-index: 1
}

.contact-us-screen__button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2
}

.scroll-list {
    position: relative;
    display: block;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.scroll-list .v-scroll__container {
    position: relative;
    display: inline-block;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.scroll-list .v-scroll__scrollbar {
    display: none
}

.scroll-list__items {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding: 0 var(--wrap)
}

.use-custom-scroll .v-popup {
    height: calc(var(--vh)*100)
}

.v-popup_auto,
html.prevent-scroll-under-popup {
    overflow: hidden
}

.v-popup_auto {
    z-index: 9999
}

.v-popup_auto .v-popup__overlay {
    position: fixed
}

.v-popup_auto .v-popup__container {
    margin: 0;
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: 1fr;
    align-items: flex-start;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.v-popup_auto .v-popup__levels {
    margin: 0
}

.v-popup_auto .v-popup__level {
    background-color: transparent
}

.v-popup_auto .v-popup__close {
    display: none
}

.popup-outer {
    min-height: calc(var(--vh)*100)
}

.popup-outer .layout-like-button {
    opacity: 1;
    visibility: visible;
    bottom: 3.75rem
}

.popup-outer__close {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    z-index: 2
}

.popup-outer__success {
    min-height: calc(var(--vh)*100);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.popup-outer__success>* {
    width: 100%
}

.popup-outer__form {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 2.5rem
}

.media-preview {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.media-preview__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1
}

.media-preview-outer {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 1.25rem
}

.media-preview-outer__header {
    overflow: hidden
}

.media-preview-outer__media {
    position: relative
}

.media-previews {
    display: grid;
    grid-template-columns: 1fr
}

.play-video-button {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-white)
}

.play-video-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: -1;
    background-color: var(--color-highlight);
    border-radius: 50%;
    transition: transform .35s;
    transition-delay: 0s;
    transition-timing-function: ease
}

html:not(.v-mobile-device) .play-video-button.hover:before,
html:not(.v-mobile-device) .play-video-button:hover:before {
    transform: scale(1.1)
}

html {
    --popup-media-width: 100%;
    --popup-media-height: 100%
}

.v-popup_media iframe,
.v-popup_media video {
    background: transparent;
    border: 0;
    padding: 0
}

.v-popup_media iframe {
    transition: opacity .35s;
    transition-delay: 0s;
    transition-timing-function: ease;
    opacity: 0
}

.v-popup_media iframe.loaded {
    opacity: 1
}

.v-popup_media .v-popup__container {
    overflow: visible
}

.v-popup_media .v-popup__levels {
    overflow: hidden;
    z-index: 0
}

.v-popup_media .v-popup__close {
    background-color: transparent;
    width: auto;
    height: auto;
    transform: none;
    top: 1.25rem;
    right: 1.25rem
}

.v-popup_media .v-popup__close:after,
.v-popup_media .v-popup__close:before {
    display: none
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before,
.video-js .vjs-modal-dialog,
.vjs-button>.vjs-icon-placeholder:before,
.vjs-modal-dialog .vjs-modal-dialog-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before,
.vjs-button>.vjs-icon-placeholder:before {
    text-align: center
}

@font-face {
    font-family: VideoJS;
    src: url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAABDkAAsAAAAAG6gAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAPgAAAFZRiV3hY21hcAAAAYQAAADaAAADPv749/pnbHlmAAACYAAAC3AAABHQZg6OcWhlYWQAAA3QAAAAKwAAADYZw251aGhlYQAADfwAAAAdAAAAJA+RCLFobXR4AAAOHAAAABMAAACM744AAGxvY2EAAA4wAAAASAAAAEhF6kqubWF4cAAADngAAAAfAAAAIAE0AIFuYW1lAAAOmAAAASUAAAIK1cf1oHBvc3QAAA/AAAABJAAAAdPExYuNeJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGS7wTiBgZWBgaWQ5RkDA8MvCM0cwxDOeI6BgYmBlZkBKwhIc01hcPjI+FGJHcRdyA4RZgQRADK3CxEAAHic7dFZbsMgAEXRS0ycyZnnOeG7y+qC8pU1dHusIOXxuoxaOlwZYWQB0Aea4quIEN4E9LzKbKjzDeM6H/mua6Lmc/p8yhg0lvdYx15ZG8uOLQOGjMp3EzqmzJizYMmKNRu27Nhz4MiJMxeu3Ljz4Ekqm7T8P52G8PP3lnTOVk++Z6iN6QZzNN1F7ptuN7eGOjDUoaGODHVsuvU8MdTO9Hd5aqgzQ50b6sJQl4a6MtS1oW4MdWuoO0PdG+rBUI+GejLUs6FeDPVqqDdDvRvqw1CfhpqM9At0iFLaAAB4nJ1YDXBTVRZ+5/22TUlJ8we0pHlJm7RJf5O8F2j6EymlSPkpxaL8U2xpa3DKj0CBhc2IW4eWKSokIoLsuMqssM64f+jA4HSdWXXXscBq67IOs3FXZ1ZYWVyRFdo899yXtIBQZ90k7717zz3v3HPPOfd854YCCj9cL9dL0RQFOqCbGJnrHb5EayiKIWN8iA/hWBblo6hUWm8TtCDwE80WMJus/irwyxOdxeB0MDb14VNJHnXYoLLSl6FfCUYO9nYPTA8Epg9090LprfbBbZ2hY0UlJUXHQp3/vtWkS6EBv8+rPMq5u9692f/dNxJNiqwC1xPE9TCUgCsSdQWgE3XQD25lkG4CN2xmTcOXWBOyser6RN6KnGbKSbmQ3+d0OI1m2W8QzLLkI2sykrWAgJJEtA8vGGW/2Q+CmT3n8zS9wZwu2DCvtuZKZN3xkrLh36yCZuUomQSqGpY8t/25VfHVhw8z4ebGBtfLb0ya9PCaDc+8dGTvk2dsh6z7WzvowlXKUSWo9MJ15a3KrEP2loOr2Ojhw6iW6hf2BDdEccQvZGpaAy7YovSwq8kr7HGllxpd71rkS6G0Sf11sl9OvMK1+jwPPODxjUwkOim9CU3ix1wNjXDfmJSEn618Bs6lpWwUpU+8PCqLMY650zjq8VhCIP17NEKTx3eaLL+s5Pi6yJWaWjTHLR1jYzPSV9VF/6Ojdb/1kO3Mk3uhHC0x6gc1BjlKQ+nQFxTYdaJkZ7ySVxLBbhR1dsboNXp1tCYKW2LRaEzpYcIx2BKNxaL0ZaUnSqfFoiNhHKR/GkX6PWUSAaJelQaqZL1EpoHNsajSEyPSoJ9IjhIxTdjHLmwZvhRDOiFTY/YeQnvrVZmiTQtGncECXtFTBZLOVwwMRgoXHAkXzMzPn1nAJJ8jYSbMDaqN2waGLzNhih/bZynUBMpIWSg7VYi7DRx2m8ALkIdRCJwI6ArJx2EI8kaDWeTQKeAFk9fjl/1AvwktjQ1P7NjyMGQyfd4vjipX6M/i52D7Cq80kqlcxEcGXRr/FEcgs0u5uGgB4VWuMFfpdn2Re6Hi3PqzmxWKsz6+ae2Pn9hXXw/fqM859UiGC0oKYYILJBqJrsn1Z1E5qOs9rQCiUQRREjm8yJcbHF5cUJufX1vAHlefw0XgUoboS3ETfQlTxBC4SOtuE8VPRJTBSCQSjZCpk7Gqzu+masaZ2y7Zjehho4F3g82BNDkAHpORG4+OCS+f6JTPmtRn/PH1kch6d04sp7AQb25aQ/pqUyXeQ8vrebG8OYQdXOQ+585u0sdW9rqalzRURiJ+9F4MweRFrKUjl1GUYhH1A27WOHw5cTFSFPMo9EeUIGnQTZHIaJ7AHLaOKsOODaNF9jkBjYG2QEsQ2xjMUAx2bBEbeTBWMHwskBjngq56S/yfgkBnWBa4K9sqKtq2t1UI8S9He5XuBRbawAdatrQEAi30Aks2+LM8WeCbalVZkWNylvJ+dqJnzVb+OHlSoKW8nPCP7Rd+CcZ2DdWAGqJ2CBFOphgywFFCFBNtfAbGtNPBCwxvygHeYMZMY9ZboBqwq/pVrsbgN5tkv152ODlbMfiqwGMBgxa4Exz3QhovRIUp6acqZmQzRq0ypDXS2TPLT02YIkQETnOE445oOGxOmXAqUJNNG7XgupMjPq2ua9asrj5yY/yuKteO1Kx0YNJTufrirLe1mZnat7OL6rnUdCWenpW6I8mAnbsY8KWs1PuSovCW9A/Z25PQ24a7cNOqgmTkLmBMgh4THgc4b9k2IVv1/g/F5nGljwPLfOgHAzJzh45V/4+WenTzmMtR5Z7us2Tys909UHqrPY7KbckoxRvRHhmVc3cJGE97uml0R1S0jdULVl7EvZtDFVBF35N9cEdjpgmAiOlFZ+Dtoh93+D3zzHr8RRNZQhnCNMNbcegOvpEwZoL+06cJQ07h+th3fZ/7PVbVC6ngTAV/KoLFuO6+2KFcU651gEb5ugPSIb1D+Xp8V4+k3sEIGnw5mYe4If4k1lFYr6SCzmM2EQ8iWtmwjnBI9kTwe1TlfAmXh7H02by9fW2gsjKwtv0aaURKil4OdV7rDL1MXIFNrhdxohcZXYTnq47WisrKitaObbf5+yvkLi5J6lCNZZ+B6GC38VNBZBDidSS/+mSvh6s+srgC8pyKMvDtt+de3c9fU76ZPfuM8ud4Kv0fyP/LqfepMT/3oZxSqpZaTa1DaQYLY8TFsHYbWYsPoRhRWfL5eSSQbhUGgGC3YLbVMk6PitTFNGpAsNrC6D1VNBKgBHMejaiuRWEWGgsSDBTJjqWIl8kJLlsaLJ2tXDr6xGfT85bM2Q06a46x2HTgvdnV8z5YDy/27J4zt6x2VtkzjoYpkq36kaBr4eQSg7tyiVweWubXZugtadl58ydapfbORfKsDTuZ0OBgx4cfdjCf5tbWNITnL120fdOi1RV1C3uKGzNdwYLcMvZ3BxoPyTOCD1XvXTp7U10gWCVmTV9b3r2z0SkGWovb2hp9I89O8a2smlyaO8muMU+dRmtzp60IzAoFpjLr1n388boLyf0dRvxhsHZ0qbWqDkwqvvpkj4l0fY6EIXRi5sQSrAvsVYwXRy4qJ2EVtD1AN7a0HWth9ymvL1xc3WTUKK/TAHA/bXDVtVWfOMfuGxGZv4Ln/jVr9jc3j1yMv0tndmyt9Vq88Y9gH1wtLX3KWjot5++jWHgAoZZkQ14wGQ20Fli71UmKJAy4xKMSTGbVdybW7FDDAut9XpD5AzWrYO7zQ8qffqF8+Ynd/clrHcdyxGy3a/3+mfNnzC/cBsveTjnTvXf1o6vzOlZw7WtqtdmPK/Errz/6NNtD72zmNOZfbmYdTGHfoofqI79Oc+R2n1lrnL6pOm0Up7kwxhTW12Amm7WYkXR2qYrF2AmgmbAsxZjwy1xpg/m1Je2vrp8v/nz2xpmlBg4E9hrMU341wVpTOh/OfmGvAnra8q6uctr60ZQHV3Q+WMQJykMj8ZsWn2QBOmmHMB+m5pDIpTFonYigiaKAhGEiAHF7EliVnQkjoLVIMPtJpBKHYd3A8GYH9jJzrWwmHx5Qjp7vDAX0suGRym1vtm/9W1/HyR8vczfMs6Sk8DSv855/5dlX9oQq52hT8syyp2rx5Id17IAyAM3wIjQPMOHzytEB64q6D5zT91yNbnx3V/nqnd017S9Y0605k3izoXLpsxde2n38yoOV9s1LcjwzNjbdX6asnBVaBj/6/DwKwPkpcqbDG7BnsXoSqWnUAmottYF6jMSdVyYZh3zVXCjwTiwwHH6sGuRiEHQGzuRX6whZkp123oy1BWE2mEfJ/tvIRtM4ZM5bDXiMsPMaAKOTyc5uL57rqyyc5y5JE5pm1i2S2iUX0CcaQ6lC6Zog7JqSqZmYlosl2K6pwNA84zRnQW6SaALYZQGW5lhCtU/W34N6o+bKfZ8cf3/Cl/+iTX3wBzpOY4mRkeNf3rptycGSshQWgGbYt5jFc2e0+DglIrwl6DVWQ7BuwaJ3Xk1J4VL5urnLl/Wf+gHU/hZoZdKNym6lG+I34FaNeZKcSpJIo2IeCVvpdsDGfKvzJnAwmeD37Ow65ZWwSowpgwX5T69s/rB55dP5BcpgDKFV8p7q2sn/1uc93bVzT/w6UrCqDTWvfCq/oCD/qZXNoUj8BL5Kp6GU017frfNXkAtiiyf/SOCEeLqnd8R/Ql9GlCRfctS6k5chvIBuQ1zCCjoCHL2DHNHIXxMJ3kQeO8lbsUXONeSfA5EjcG6/E+KdhN4bP04vBhdi883+BFBzQbxFbvZzQeY9LNBZc0FNfn5NwfDn6rCTnTw6R8o+gfpf5hCom33cRuiTlss3KHmZjD+BPN+5gXuA2ziS/Q73mLxUkpbKN/eqwz5uK0X9F3h2d1V4nGNgZGBgAOJd776+iue3+crAzc4AAje5Bfcg0xz9YHEOBiYQBQA8FQlFAHicY2BkYGBnAAGOPgaG//85+hkYGVCBMgBGGwNYAAAAeJxjYGBgYB8EmKOPgQEAQ04BfgAAAAAAAA4AaAB+AMwA4AECAUIBbAGYAcICGAJYArQC4AMwA7AD3gQwBJYE3AUkBWYFigYgBmYGtAbqB1gIEghYCG4IhAi2COh4nGNgZGBgUGYoZWBnAAEmIOYCQgaG/2A+AwAYCQG2AHicXZBNaoNAGIZfE5PQCKFQ2lUps2oXBfOzzAESyDKBQJdGR2NQR3QSSE/QE/QEPUUPUHqsvsrXjTMw83zPvPMNCuAWP3DQDAejdm1GjzwS7pMmwi75XngAD4/CQ/oX4TFe4Qt7uMMbOzjuDc0EmXCP/C7cJ38Iu+RP4QEe8CU8pP8WHmOPX2EPz87TPo202ey2OjlnQSXV/6arOjWFmvszMWtd6CqwOlKHq6ovycLaWMWVydXKFFZnmVFlZU46tP7R2nI5ncbi/dDkfDtFBA2DDXbYkhKc+V0Bqs5Zt9JM1HQGBRTm/EezTmZNKtpcAMs9Yu6AK9caF76zoLWIWcfMGOSkVduvSWechqZsz040Ib2PY3urxBJTzriT95lipz+TN1fmAAAAeJxtkMl2wjAMRfOAhABlKm2h80C3+ajgCKKDY6cegP59TYBzukAL+z1Zsq8ctaJTTKPrsUQLbXQQI0EXKXroY4AbDDHCGBNMcYsZ7nCPB8yxwCOe8IwXvOIN7/jAJ76wxHfUqWX+OzgumWAjJMV17i0Ndlr6irLKO+qftdT7i6y4uFSUvCknay+lFYZIZaQcmfH/xIFdYn98bqhra1aKTM/6lWMnyaYirx1rFUQZFBkb2zJUtoXeJCeg0WnLtHeSFc3OtrnozNwqi0TkSpBMDB1nSde5oJXW23hTS2/T0LilglXX7dmFVxLnq5U0vYATHFk3zX3BOisoQHNDFDeZnqKDy9hRNawN7Vh727hFzcJ5c8TILrKZfH7tIPxAFP0BpLeJPA==) format("woff");
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before,
.video-js .vjs-play-control .vjs-icon-placeholder,
.vjs-icon-play {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before,
.video-js .vjs-play-control .vjs-icon-placeholder:before,
.vjs-icon-play:before {
    content: "\f101"
}

.vjs-icon-play-circle {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-play-circle:before {
    content: "\f102"
}

.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder,
.vjs-icon-pause {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before,
.vjs-icon-pause:before {
    content: "\f103"
}

.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder,
.vjs-icon-volume-mute {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before,
.vjs-icon-volume-mute:before {
    content: "\f104"
}

.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder,
.vjs-icon-volume-low {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before,
.vjs-icon-volume-low:before {
    content: "\f105"
}

.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder,
.vjs-icon-volume-mid {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before,
.vjs-icon-volume-mid:before {
    content: "\f106"
}

.video-js .vjs-mute-control .vjs-icon-placeholder,
.vjs-icon-volume-high {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-mute-control .vjs-icon-placeholder:before,
.vjs-icon-volume-high:before {
    content: "\f107"
}

.video-js .vjs-fullscreen-control .vjs-icon-placeholder,
.vjs-icon-fullscreen-enter {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-fullscreen-control .vjs-icon-placeholder:before,
.vjs-icon-fullscreen-enter:before {
    content: "\f108"
}

.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder,
.vjs-icon-fullscreen-exit {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before,
.vjs-icon-fullscreen-exit:before {
    content: "\f109"
}

.vjs-icon-square {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-square:before {
    content: "\f10a"
}

.vjs-icon-spinner {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-spinner:before {
    content: "\f10b"
}

.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder,
.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder,
.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder,
.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder,
.video-js .vjs-subs-caps-button .vjs-icon-placeholder,
.video-js .vjs-subtitles-button .vjs-icon-placeholder,
.vjs-icon-subtitles {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before,
.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before,
.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before,
.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before,
.video-js .vjs-subs-caps-button .vjs-icon-placeholder:before,
.video-js .vjs-subtitles-button .vjs-icon-placeholder:before,
.vjs-icon-subtitles:before {
    content: "\f10c"
}

.video-js .vjs-captions-button .vjs-icon-placeholder,
.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder,
.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder,
.vjs-icon-captions {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-captions-button .vjs-icon-placeholder:before,
.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before,
.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before,
.vjs-icon-captions:before {
    content: "\f10d"
}

.video-js .vjs-chapters-button .vjs-icon-placeholder,
.vjs-icon-chapters {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-chapters-button .vjs-icon-placeholder:before,
.vjs-icon-chapters:before {
    content: "\f10e"
}

.vjs-icon-share {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-share:before {
    content: "\f10f"
}

.vjs-icon-cog {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-cog:before {
    content: "\f110"
}

.video-js .vjs-play-progress,
.video-js .vjs-volume-level,
.vjs-icon-circle,
.vjs-seek-to-live-control .vjs-icon-placeholder {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-play-progress:before,
.video-js .vjs-volume-level:before,
.vjs-icon-circle:before,
.vjs-seek-to-live-control .vjs-icon-placeholder:before {
    content: "\f111"
}

.vjs-icon-circle-outline {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-circle-outline:before {
    content: "\f112"
}

.vjs-icon-circle-inner-circle {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-circle-inner-circle:before {
    content: "\f113"
}

.vjs-icon-hd {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-hd:before {
    content: "\f114"
}

.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder,
.vjs-icon-cancel {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before,
.vjs-icon-cancel:before {
    content: "\f115"
}

.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder,
.vjs-icon-replay {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before,
.vjs-icon-replay:before {
    content: "\f116"
}

.vjs-icon-facebook {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-facebook:before {
    content: "\f117"
}

.vjs-icon-gplus {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-gplus:before {
    content: "\f118"
}

.vjs-icon-linkedin {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-linkedin:before {
    content: "\f119"
}

.vjs-icon-twitter {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-twitter:before {
    content: "\f11a"
}

.vjs-icon-tumblr {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-tumblr:before {
    content: "\f11b"
}

.vjs-icon-pinterest {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-pinterest:before {
    content: "\f11c"
}

.video-js .vjs-descriptions-button .vjs-icon-placeholder,
.vjs-icon-audio-description {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-descriptions-button .vjs-icon-placeholder:before,
.vjs-icon-audio-description:before {
    content: "\f11d"
}

.video-js .vjs-audio-button .vjs-icon-placeholder,
.vjs-icon-audio {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-audio-button .vjs-icon-placeholder:before,
.vjs-icon-audio:before {
    content: "\f11e"
}

.vjs-icon-next-item {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-next-item:before {
    content: "\f11f"
}

.vjs-icon-previous-item {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.vjs-icon-previous-item:before {
    content: "\f120"
}

.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder,
.vjs-icon-picture-in-picture-enter {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before,
.vjs-icon-picture-in-picture-enter:before {
    content: "\f121"
}

.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder,
.vjs-icon-picture-in-picture-exit {
    font-family: VideoJS;
    font-weight: 400;
    font-style: normal
}

.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before,
.vjs-icon-picture-in-picture-exit:before {
    content: "\f122"
}

.video-js {
    display: block;
    vertical-align: top;
    box-sizing: border-box;
    color: #fff;
    background-color: #000;
    position: relative;
    padding: 0;
    font-size: 10px;
    line-height: 1;
    font-weight: 400;
    font-style: normal;
    font-family: Arial, Helvetica, sans-serif;
    word-break: normal
}

.video-js:-moz-full-screen {
    position: absolute
}

.video-js:-webkit-full-screen {
    width: 100% !important;
    height: 100% !important
}

.video-js[tabindex="-1"] {
    outline: none
}

.video-js *,
.video-js :after,
.video-js :before {
    box-sizing: inherit
}

.video-js ul {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    list-style-position: outside;
    margin: 0
}

.video-js.vjs-4-3,
.video-js.vjs-16-9,
.video-js.vjs-fluid {
    width: 100%;
    max-width: 100%;
    height: 0
}

.video-js.vjs-16-9 {
    padding-top: 56.25%
}

.video-js.vjs-4-3 {
    padding-top: 75%
}

.video-js.vjs-fill,
.video-js .vjs-tech {
    width: 100%;
    height: 100%
}

.video-js .vjs-tech {
    position: absolute;
    top: 0;
    left: 0
}

body.vjs-full-window {
    padding: 0;
    margin: 0;
    height: 100%
}

.vjs-full-window .video-js.vjs-fullscreen {
    position: fixed;
    overflow: hidden;
    z-index: 1000;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0
}

.video-js.vjs-fullscreen:not(.vjs-ios-native-fs) {
    width: 100% !important;
    height: 100% !important;
    padding-top: 0 !important
}

.video-js.vjs-fullscreen.vjs-user-inactive {
    cursor: none
}

.vjs-hidden {
    display: none !important
}

.vjs-disabled {
    opacity: .5;
    cursor: default
}

.video-js .vjs-offscreen {
    height: 1px;
    left: -9999px;
    position: absolute;
    top: 0;
    width: 1px
}

.vjs-lock-showing {
    display: block !important;
    opacity: 1;
    visibility: visible
}

.vjs-no-js {
    padding: 20px;
    color: #fff;
    background-color: #000;
    font-size: 18px;
    font-family: Arial, Helvetica, sans-serif;
    text-align: center;
    width: 300px;
    height: 150px;
    margin: 0 auto
}

.vjs-no-js a,
.vjs-no-js a:visited {
    color: #66A8CC
}

.video-js .vjs-big-play-button {
    font-size: 3em;
    line-height: 1.5em;
    height: 1.63332em;
    width: 3em;
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 0;
    cursor: pointer;
    opacity: 1;
    border: .06666em solid #fff;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0);
    border-radius: .3em;
    transition: all .4s
}

.vjs-big-play-centered .vjs-big-play-button {
    top: 50%;
    left: 50%;
    margin-top: -.81666em;
    margin-left: -1.5em
}

.video-js .vjs-big-play-button:focus,
.video-js:hover .vjs-big-play-button {
    border-color: #fff;
    background-color: #545454;
    background-color: rgba(84, 84, 84, .5);
    transition: all 0s
}

.vjs-controls-disabled .vjs-big-play-button,
.vjs-error .vjs-big-play-button,
.vjs-has-started .vjs-big-play-button,
.vjs-using-native-controls .vjs-big-play-button {
    display: none
}

.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause .vjs-big-play-button {
    display: block
}

.video-js button {
    background: none;
    border: none;
    color: inherit;
    display: inline-block;
    font-size: inherit;
    line-height: inherit;
    text-transform: none;
    text-decoration: none;
    transition: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.vjs-control .vjs-button {
    width: 100%;
    height: 100%
}

.video-js .vjs-control.vjs-close-button {
    cursor: pointer;
    height: 3em;
    position: absolute;
    right: 0;
    top: .5em;
    z-index: 2
}

.video-js .vjs-modal-dialog {
    background: rgba(0, 0, 0, .8);
    background: linear-gradient(180deg, rgba(0, 0, 0, .8), rgba(255, 255, 255, 0));
    overflow: auto
}

.video-js .vjs-modal-dialog>* {
    box-sizing: border-box
}

.vjs-modal-dialog .vjs-modal-dialog-content {
    font-size: 1.2em;
    line-height: 1.5;
    padding: 20px 24px;
    z-index: 1
}

.vjs-menu-button {
    cursor: pointer
}

.vjs-menu-button.vjs-disabled {
    cursor: default
}

.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu {
    display: none
}

.vjs-menu .vjs-menu-content {
    display: block;
    padding: 0;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    overflow: auto
}

.vjs-menu .vjs-menu-content>* {
    box-sizing: border-box
}

.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu {
    display: none
}

.vjs-menu li {
    list-style: none;
    margin: 0;
    padding: .2em 0;
    line-height: 1.4em;
    font-size: 1.2em;
    text-align: center;
    text-transform: lowercase
}

.js-focus-visible .vjs-menu li.vjs-menu-item:hover,
.vjs-menu li.vjs-menu-item:focus,
.vjs-menu li.vjs-menu-item:hover {
    background-color: #545454;
    background-color: rgba(84, 84, 84, .5)
}

.js-focus-visible .vjs-menu li.vjs-selected:hover,
.vjs-menu li.vjs-selected,
.vjs-menu li.vjs-selected:focus,
.vjs-menu li.vjs-selected:hover {
    background-color: #fff;
    color: #000
}

.vjs-menu li.vjs-menu-title {
    text-align: center;
    text-transform: uppercase;
    font-size: 1em;
    line-height: 2em;
    padding: 0;
    margin: 0 0 .3em;
    font-weight: 700;
    cursor: default
}

.vjs-menu-button-popup .vjs-menu {
    display: none;
    position: absolute;
    bottom: 0;
    width: 10em;
    left: -3em;
    height: 0;
    margin-bottom: 1.5em;
    border-top-color: rgba(0, 0, 0, 0)
}

.vjs-menu-button-popup .vjs-menu .vjs-menu-content {
    background-color: #000;
    background-color: rgba(0, 0, 0, 0);
    position: absolute;
    width: 100%;
    bottom: 1.5em;
    max-height: 15em
}

.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content,
.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
    max-height: 5em
}

.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
    max-height: 10em
}

.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
    max-height: 14em
}

.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content,
.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,
.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
    max-height: 25em
}

.vjs-menu-button-popup .vjs-menu.vjs-lock-showing,
.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu {
    display: block
}

.video-js .vjs-menu-button-inline {
    transition: all .4s;
    overflow: hidden
}

.video-js .vjs-menu-button-inline:before {
    width: 2.222222222em
}

.video-js .vjs-menu-button-inline.vjs-slider-active,
.video-js .vjs-menu-button-inline:focus,
.video-js .vjs-menu-button-inline:hover,
.video-js.vjs-no-flex .vjs-menu-button-inline {
    width: 12em
}

.vjs-menu-button-inline .vjs-menu {
    opacity: 0;
    height: 100%;
    width: auto;
    position: absolute;
    left: 4em;
    top: 0;
    padding: 0;
    margin: 0;
    transition: all .4s
}

.vjs-menu-button-inline.vjs-slider-active .vjs-menu,
.vjs-menu-button-inline:focus .vjs-menu,
.vjs-menu-button-inline:hover .vjs-menu {
    display: block;
    opacity: 1
}

.vjs-no-flex .vjs-menu-button-inline .vjs-menu {
    display: block;
    opacity: 1;
    position: relative;
    width: auto
}

.vjs-no-flex .vjs-menu-button-inline.vjs-slider-active .vjs-menu,
.vjs-no-flex .vjs-menu-button-inline:focus .vjs-menu,
.vjs-no-flex .vjs-menu-button-inline:hover .vjs-menu {
    width: auto
}

.vjs-menu-button-inline .vjs-menu-content {
    width: auto;
    height: 100%;
    margin: 0;
    overflow: hidden
}

.video-js .vjs-control-bar {
    display: none;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3em;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0)
}

.vjs-has-started .vjs-control-bar {
    display: flex;
    visibility: visible;
    opacity: 1;
    transition: visibility .1s, opacity .1s
}

.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
    visibility: visible;
    opacity: 0;
    transition: visibility 1s, opacity 1s
}

.vjs-controls-disabled .vjs-control-bar,
.vjs-error .vjs-control-bar,
.vjs-using-native-controls .vjs-control-bar {
    display: none !important
}

.vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
    opacity: 1;
    visibility: visible
}

.vjs-has-started.vjs-no-flex .vjs-control-bar {
    display: table
}

.video-js .vjs-control {
    position: relative;
    text-align: center;
    margin: 0;
    padding: 0;
    height: 100%;
    width: 4em;
    flex: none
}

.vjs-button>.vjs-icon-placeholder:before {
    font-size: 1.8em;
    line-height: 1.67
}

.video-js .vjs-control:focus,
.video-js .vjs-control:focus:before,
.video-js .vjs-control:hover:before {
    text-shadow: 0 0 1em #fff
}

.video-js .vjs-control-text {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.vjs-no-flex .vjs-control {
    display: table-cell;
    vertical-align: middle
}

.video-js .vjs-custom-control-spacer {
    display: none
}

.video-js .vjs-progress-control {
    cursor: pointer;
    flex: auto;
    display: flex;
    align-items: center;
    min-width: 4em;
    touch-action: none
}

.video-js .vjs-progress-control.disabled {
    cursor: default
}

.vjs-live .vjs-progress-control {
    display: none
}

.vjs-liveui .vjs-progress-control {
    display: flex;
    align-items: center
}

.vjs-no-flex .vjs-progress-control {
    width: auto
}

.video-js .vjs-progress-holder {
    flex: auto;
    transition: all .2s;
    height: .3em
}

.video-js .vjs-progress-control .vjs-progress-holder {
    margin: 0 10px
}

.video-js .vjs-progress-control:hover .vjs-progress-holder {
    font-size: 1.6666666666666667em
}

.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled {
    font-size: 1em
}

.video-js .vjs-progress-holder .vjs-load-progress,
.video-js .vjs-progress-holder .vjs-load-progress div,
.video-js .vjs-progress-holder .vjs-play-progress {
    position: absolute;
    display: block;
    height: 100%;
    margin: 0;
    padding: 0;
    width: 0
}

.video-js .vjs-play-progress {
    background-color: #fff
}

.video-js .vjs-play-progress:before {
    font-size: .9em;
    position: absolute;
    right: -.5em;
    top: -.333333333333333em;
    z-index: 1
}

.video-js .vjs-load-progress {
    background: rgba(84, 84, 84, .5)
}

.video-js .vjs-load-progress div {
    background: rgba(84, 84, 84, .75)
}

.video-js .vjs-time-tooltip {
    background-color: #fff;
    background-color: rgba(255, 255, 255, .8);
    border-radius: .3em;
    color: #000;
    float: right;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em;
    padding: 6px 8px 8px;
    pointer-events: none;
    position: absolute;
    top: -3.4em;
    visibility: hidden;
    z-index: 1
}

.video-js .vjs-progress-holder:focus .vjs-time-tooltip {
    display: none
}

.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip,
.video-js .vjs-progress-control:hover .vjs-time-tooltip {
    display: block;
    font-size: .6em;
    visibility: visible
}

.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip {
    font-size: 1em
}

.video-js .vjs-progress-control .vjs-mouse-display {
    display: none;
    position: absolute;
    width: 1px;
    height: 100%;
    background-color: #000;
    z-index: 1
}

.vjs-no-flex .vjs-progress-control .vjs-mouse-display {
    z-index: 0
}

.video-js .vjs-progress-control:hover .vjs-mouse-display {
    display: block
}

.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display {
    visibility: hidden;
    opacity: 0;
    transition: visibility 1s, opacity 1s
}

.video-js.vjs-user-inactive.vjs-no-flex .vjs-progress-control .vjs-mouse-display {
    display: none
}

.vjs-mouse-display .vjs-time-tooltip {
    color: #fff;
    background-color: #000;
    background-color: rgba(0, 0, 0, .8)
}

.video-js .vjs-slider {
    position: relative;
    cursor: pointer;
    padding: 0;
    margin: 0 .45em;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: #545454;
    background-color: rgba(84, 84, 84, .5)
}

.video-js .vjs-slider.disabled {
    cursor: default
}

.video-js .vjs-slider:focus {
    text-shadow: 0 0 1em #fff;
    box-shadow: 0 0 1em #fff
}

.video-js .vjs-mute-control {
    cursor: pointer;
    flex: none
}

.video-js .vjs-volume-control {
    cursor: pointer;
    margin-right: 1em;
    display: flex
}

.video-js .vjs-volume-control.vjs-volume-horizontal {
    width: 5em
}

.video-js .vjs-volume-panel .vjs-volume-control {
    visibility: visible;
    opacity: 0;
    width: 1px;
    height: 1px;
    margin-left: -1px
}

.video-js .vjs-volume-panel {
    transition: width 1s
}

.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control,
.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control,
.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active,
.video-js .vjs-volume-panel .vjs-volume-control:active,
.video-js .vjs-volume-panel:active .vjs-volume-control,
.video-js .vjs-volume-panel:focus .vjs-volume-control {
    visibility: visible;
    opacity: 1;
    position: relative;
    transition: visibility .1s, opacity .1s, height .1s, width .1s, left 0s, top 0s
}

.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-horizontal,
.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal,
.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal,
.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal,
.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal,
.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal {
    width: 5em;
    height: 3em;
    margin-right: 0
}

.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-vertical,
.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical,
.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical,
.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical,
.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical,
.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical {
    left: -3.5em;
    transition: left 0s
}

.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,
.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,
.video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active {
    width: 10em;
    transition: width .1s
}

.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only {
    width: 4em
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical {
    height: 8em;
    width: 3em;
    left: -3000em;
    transition: visibility 1s, opacity 1s, height 1s 1s, width 1s 1s, left 1s 1s, top 1s 1s
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal {
    transition: visibility 1s, opacity 1s, height 1s 1s, width 1s, left 1s 1s, top 1s 1s
}

.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal {
    width: 5em;
    height: 3em;
    visibility: visible;
    opacity: 1;
    position: relative;
    transition: none
}

.video-js.vjs-no-flex .vjs-volume-control.vjs-volume-vertical,
.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical {
    position: absolute;
    bottom: 3em;
    left: .5em
}

.video-js .vjs-volume-panel {
    display: flex
}

.video-js .vjs-volume-bar {
    margin: 1.35em .45em
}

.vjs-volume-bar.vjs-slider-horizontal {
    width: 5em;
    height: .3em
}

.vjs-volume-bar.vjs-slider-vertical {
    width: .3em;
    height: 5em;
    margin: 1.35em auto
}

.video-js .vjs-volume-level {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #fff
}

.video-js .vjs-volume-level:before {
    position: absolute;
    font-size: .9em
}

.vjs-slider-vertical .vjs-volume-level {
    width: .3em
}

.vjs-slider-vertical .vjs-volume-level:before {
    top: -.5em;
    left: -.3em
}

.vjs-slider-horizontal .vjs-volume-level {
    height: .3em
}

.vjs-slider-horizontal .vjs-volume-level:before {
    top: -.3em;
    right: -.5em
}

.video-js .vjs-volume-panel.vjs-volume-panel-vertical {
    width: 4em
}

.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level {
    height: 100%
}

.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level {
    width: 100%
}

.video-js .vjs-volume-vertical {
    width: 3em;
    height: 8em;
    bottom: 8em;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0)
}

.video-js .vjs-volume-horizontal .vjs-menu {
    left: -2em
}

.vjs-poster {
    display: inline-block;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
    background-color: #000000;
    cursor: pointer;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%
}

.vjs-has-started .vjs-poster {
    display: none
}

.vjs-audio.vjs-has-started .vjs-poster {
    display: block
}

.vjs-using-native-controls .vjs-poster {
    display: none
}

.video-js .vjs-live-control {
    display: flex;
    align-items: flex-start;
    flex: auto;
    font-size: 1em;
    line-height: 3em
}

.vjs-no-flex .vjs-live-control {
    display: table-cell;
    width: auto;
    text-align: left
}

.video-js.vjs-liveui .vjs-live-control,
.video-js:not(.vjs-live) .vjs-live-control {
    display: none
}

.video-js .vjs-seek-to-live-control {
    align-items: center;
    cursor: pointer;
    flex: none;
    display: inline-flex;
    height: 100%;
    padding-left: .5em;
    padding-right: .5em;
    font-size: 1em;
    line-height: 3em;
    width: auto;
    min-width: 4em
}

.vjs-no-flex .vjs-seek-to-live-control {
    display: table-cell;
    width: auto;
    text-align: left
}

.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control,
.video-js:not(.vjs-live) .vjs-seek-to-live-control {
    display: none
}

.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge {
    cursor: auto
}

.vjs-seek-to-live-control .vjs-icon-placeholder {
    margin-right: .5em;
    color: #888
}

.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder {
    color: red
}

.video-js .vjs-time-control {
    flex: none;
    font-size: 1em;
    line-height: 3em;
    min-width: 2em;
    width: auto;
    padding-left: 1em;
    padding-right: 1em
}

.video-js .vjs-current-time,
.video-js .vjs-duration,
.vjs-live .vjs-time-control,
.vjs-no-flex .vjs-current-time,
.vjs-no-flex .vjs-duration {
    display: none
}

.vjs-time-divider {
    display: none;
    line-height: 3em
}

.vjs-live .vjs-time-divider {
    display: none
}

.video-js .vjs-play-control {
    cursor: pointer
}

.video-js .vjs-play-control .vjs-icon-placeholder {
    flex: none
}

.vjs-text-track-display {
    position: absolute;
    bottom: 3em;
    left: 0;
    right: 0;
    top: 0;
    pointer-events: none
}

.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display {
    bottom: 1em
}

.video-js .vjs-text-track {
    font-size: 1.4em;
    text-align: center;
    margin-bottom: .1em
}

.vjs-subtitles {
    color: #fff
}

.vjs-captions {
    color: #fc6
}

.vjs-tt-cue {
    display: block
}

video::-webkit-media-text-track-display {
    transform: translateY(-3em)
}

.video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display {
    transform: translateY(-1.5em)
}

.video-js .vjs-fullscreen-control,
.video-js .vjs-picture-in-picture-control {
    cursor: pointer;
    flex: none
}

.vjs-playback-rate .vjs-playback-rate-value,
.vjs-playback-rate>.vjs-menu-button {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.vjs-playback-rate .vjs-playback-rate-value {
    pointer-events: none;
    font-size: 1.5em;
    line-height: 2;
    text-align: center
}

.vjs-playback-rate .vjs-menu {
    width: 4em;
    left: 0
}

.vjs-error .vjs-error-display .vjs-modal-dialog-content {
    font-size: 1.4em;
    text-align: center
}

.vjs-error .vjs-error-display:before {
    color: #fff;
    content: "X";
    font-family: Arial, Helvetica, sans-serif;
    font-size: 4em;
    left: 0;
    line-height: 1;
    margin-top: -.5em;
    position: absolute;
    text-shadow: .05em .05em .1em #000;
    text-align: center;
    top: 50%;
    vertical-align: middle;
    width: 100%
}

.vjs-loading-spinner {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -25px 0 0 -25px;
    opacity: .85;
    text-align: left;
    border: 6px solid rgba(0, 0, 0, 0);
    box-sizing: border-box;
    background-clip: padding-box;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    visibility: hidden
}

.vjs-seeking .vjs-loading-spinner,
.vjs-waiting .vjs-loading-spinner {
    display: block;
    -webkit-animation: vjs-spinner-show 0s linear .3s forwards;
    animation: vjs-spinner-show 0s linear .3s forwards
}

.vjs-loading-spinner:after,
.vjs-loading-spinner:before {
    content: "";
    position: absolute;
    margin: -6px;
    box-sizing: inherit;
    width: inherit;
    height: inherit;
    border-radius: inherit;
    opacity: 1;
    border: inherit;
    border-color: white transparent transparent
}

.vjs-seeking .vjs-loading-spinner:after,
.vjs-seeking .vjs-loading-spinner:before,
.vjs-waiting .vjs-loading-spinner:after,
.vjs-waiting .vjs-loading-spinner:before {
    -webkit-animation: vjs-spinner-spin 1.1s cubic-bezier(.6, .2, 0, .8) infinite, vjs-spinner-fade 1.1s linear infinite;
    animation: vjs-spinner-spin 1.1s cubic-bezier(.6, .2, 0, .8) infinite, vjs-spinner-fade 1.1s linear infinite
}

.vjs-seeking .vjs-loading-spinner:before,
.vjs-waiting .vjs-loading-spinner:before {
    border-top-color: #fff
}

.vjs-seeking .vjs-loading-spinner:after,
.vjs-waiting .vjs-loading-spinner:after {
    border-top-color: #fff;
    -webkit-animation-delay: .44s;
    animation-delay: .44s
}

@keyframes vjs-spinner-show {
    to {
        visibility: visible
    }
}

@-webkit-keyframes vjs-spinner-show {
    to {
        visibility: visible
    }
}

@keyframes vjs-spinner-spin {
    to {
        transform: rotate(1turn)
    }
}

@-webkit-keyframes vjs-spinner-spin {
    to {
        -webkit-transform: rotate(1turn)
    }
}

@keyframes vjs-spinner-fade {
    0% {
        border-top-color: #545454
    }

    20% {
        border-top-color: #545454
    }

    35% {
        border-top-color: white
    }

    60% {
        border-top-color: #545454
    }

    to {
        border-top-color: #545454
    }
}

@-webkit-keyframes vjs-spinner-fade {
    0% {
        border-top-color: #545454
    }

    20% {
        border-top-color: #545454
    }

    35% {
        border-top-color: white
    }

    60% {
        border-top-color: #545454
    }

    to {
        border-top-color: #545454
    }
}

.vjs-chapters-button .vjs-menu ul {
    width: 24em
}

.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder {
    vertical-align: middle;
    display: inline-block;
    margin-bottom: -.1em
}

.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before {
    font-family: VideoJS;
    content: "\f10d";
    font-size: 1.5em;
    line-height: inherit
}

.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder {
    vertical-align: middle;
    display: inline-block;
    margin-bottom: -.1em
}

.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before {
    font-family: VideoJS;
    content: " \f11d";
    font-size: 1.5em;
    line-height: inherit
}

.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-audio-button,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-captions-button,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-chapters-button,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-current-time,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-descriptions-button,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-duration,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-playback-rate,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-remaining-time,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-subtitles-button,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-time-divider,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-control,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-audio-button,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-captions-button,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-chapters-button,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-current-time,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-descriptions-button,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-duration,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-playback-rate,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-remaining-time,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-subtitles-button,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-time-divider,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-control,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-audio-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-captions-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-chapters-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-current-time,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-descriptions-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-duration,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-playback-rate,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-remaining-time,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-subtitles-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-time-divider,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-control {
    display: none
}

.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,
.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active,
.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover {
    width: auto
}

.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-subs-caps-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small:not(.vjs-live) .vjs-subs-caps-button,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small:not(.vjs-liveui) .vjs-subs-caps-button {
    display: none
}

.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-custom-control-spacer,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui .vjs-custom-control-spacer {
    flex: auto;
    display: block
}

.video-js:not(.vjs-fullscreen).vjs-layout-tiny.vjs-no-flex .vjs-custom-control-spacer,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui.vjs-no-flex .vjs-custom-control-spacer {
    width: auto
}

.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-progress-control,
.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui .vjs-progress-control {
    display: none
}

.vjs-modal-dialog.vjs-text-track-settings {
    background-color: #000;
    background-color: rgba(0, 0, 0, .75);
    color: #fff;
    height: 70%
}

.vjs-text-track-settings .vjs-modal-dialog-content {
    display: table
}

.vjs-text-track-settings .vjs-track-settings-colors,
.vjs-text-track-settings .vjs-track-settings-controls,
.vjs-text-track-settings .vjs-track-settings-font {
    display: table-cell
}

.vjs-text-track-settings .vjs-track-settings-controls {
    text-align: right;
    vertical-align: bottom
}

@supports (display:grid) {
    .vjs-text-track-settings .vjs-modal-dialog-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr;
        padding: 20px 24px 0
    }

    .vjs-track-settings-controls .vjs-default-button {
        margin-bottom: 20px
    }

    .vjs-text-track-settings .vjs-track-settings-controls {
        grid-column: 1/-1
    }

    .vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content,
    .vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content,
    .vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content {
        grid-template-columns: 1fr
    }
}

.vjs-track-setting>select {
    margin-right: 1em;
    margin-bottom: .5em
}

.vjs-text-track-settings fieldset {
    margin: 5px;
    padding: 3px;
    border: none
}

.vjs-text-track-settings fieldset span {
    display: inline-block
}

.vjs-text-track-settings fieldset span>select {
    max-width: 7.3em
}

.vjs-text-track-settings legend {
    color: #fff;
    margin: 0 0 5px
}

.vjs-text-track-settings .vjs-label {
    position: absolute;
    clip: rect(1px 1px 1px 1px);
    clip: rect(1px, 1px, 1px, 1px);
    display: block;
    margin: 0 0 5px;
    padding: 0;
    border: 0;
    height: 1px;
    width: 1px;
    overflow: hidden
}

.vjs-track-settings-controls button:active,
.vjs-track-settings-controls button:focus {
    outline-style: solid;
    outline-width: medium;
    background-image: linear-gradient(0deg, #fff 88%, #545454)
}

.vjs-track-settings-controls button:hover {
    color: rgba(43, 51, 63, .75)
}

.vjs-track-settings-controls button {
    background-color: #fff;
    background-image: linear-gradient(-180deg, #fff 88%, #545454);
    color: #2B333F;
    cursor: pointer;
    border-radius: 2px
}

.vjs-track-settings-controls .vjs-default-button {
    margin-right: 1em
}

.vjs-resize-manager {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    z-index: -1000
}

.js-focus-visible .video-js :focus:not(.focus-visible),
.video-js .vjs-menu :focus:not(:focus-visible),
.video-js :focus:not(:focus-visible) {
    outline: none;
    background: none
}

.vjs-adcd-theme {
    width: 100%;
    height: 100%
}

.vjs-adcd-theme * {
    outline: none
}

html:not(.v-mobile-device) .vjs-adcd-theme:not(.vjs-fullscreen) video {
    -o-object-fit: cover;
    object-fit: cover
}

.vjs-adcd-theme .vjs-control-bar {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0), #000)
}

.vjs-adcd-theme .vjs-picture-in-picture-control,
.vjs-adcd-theme .vjs-remaining-time {
    display: none
}

.vjs-adcd-theme .vjs-current-time,
.vjs-adcd-theme .vjs-duration {
    position: absolute;
    bottom: calc(100% + 9px);
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 0;
    font-size: 16px;
    line-height: 160%
}

.vjs-adcd-theme .vjs-current-time {
    left: 20px
}

.vjs-adcd-theme .vjs-duration {
    right: 20px
}

.vjs-adcd-theme .vjs-progress-control {
    position: absolute;
    height: 10px;
    top: 0;
    bottom: auto
}

.vjs-adcd-theme .vjs-progress-control:after {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #fff
}

.vjs-adcd-theme .vjs-progress-control .vjs-progress-holder {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 2px;
    width: calc(100% - 4px);
    height: 4px;
    transform: translateY(-50%);
    background: transparent
}

.vjs-adcd-theme .vjs-progress-control .vjs-load-progress {
    background-color: transparent
}

.vjs-adcd-theme .vjs-progress-control .vjs-load-progress div {
    background: rgba(255, 255, 255, .2)
}

.vjs-adcd-theme .vjs-progress-control .vjs-play-progress {
    top: 0;
    height: 100%;
    background-color: #fff;
    z-index: 2
}

.vjs-adcd-theme .vjs-progress-control .vjs-play-progress:before {
    display: none
}

.vjs-adcd-theme .vjs-progress-control .vjs-play-progress:after {
    content: "";
    position: absolute;
    top: calc(50% - 11px);
    right: -3px;
    width: 6px;
    height: 22px;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-image: url(/assets/img/video-js/play-progress.svg)
}

.vjs-adcd-theme .vjs-big-play-button {
    border-radius: 0;
    border: 0;
    background: transparent !important;
    position: absolute;
    top: 50%;
    left: 50%;
    pointer-events: all
}

.vjs-adcd-theme .vjs-big-play-button * {
    display: none
}

.vjs-adcd-theme .vjs-big-play-button:before {
    background: #fff;
    border-radius: 50%;
    transition: transform .5s
}

.vjs-adcd-theme .vjs-big-play-button:after,
.vjs-adcd-theme .vjs-big-play-button:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.vjs-adcd-theme .vjs-big-play-button:after {
    background: url(/assets/img/video-js/play-big.svg) no-repeat 50%
}

html:not(.v-mobile-device) .vjs-adcd-theme .vjs-big-play-button.hover:before,
html:not(.v-mobile-device) .vjs-adcd-theme .vjs-big-play-button:hover:before {
    transform: scale(1.1)
}

.vjs-adcd-theme .vjs-play-control {
    width: 28px;
    height: 28px;
    margin-left: -7px
}

.vjs-adcd-theme .vjs-play-control>* {
    display: none
}

.vjs-adcd-theme .vjs-play-control:after,
.vjs-adcd-theme .vjs-play-control:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 16px;
    transition: opacity .35s
}

.vjs-adcd-theme .vjs-play-control:before {
    background-image: url(/assets/img/video-js/play.svg)
}

.vjs-adcd-theme .vjs-play-control:after {
    background-image: url(/assets/img/video-js/pause.svg)
}

.vjs-adcd-theme .vjs-play-control.vjs-paused:before {
    opacity: 1
}

.vjs-adcd-theme .vjs-play-control.vjs-paused:after,
.vjs-adcd-theme .vjs-play-control.vjs-playing:before {
    opacity: 0
}

.vjs-adcd-theme .vjs-play-control.vjs-playing:after {
    opacity: 1
}

.vjs-adcd-theme .vjs-volume-panel {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    height: 28px;
    width: auto;
    margin-left: 10px;
    transition: 0s
}

html.v-mobile-device .vjs-adcd-theme .vjs-volume-panel {
    display: none
}

.vjs-adcd-theme .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,
.vjs-adcd-theme .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active {
    width: auto;
    transition: 0s
}

.vjs-adcd-theme .vjs-volume-panel.vjs-volume-panel-horizontal .vjs-volume-level {
    height: 100%
}

.vjs-adcd-theme .vjs-volume-panel.vjs-volume-panel-horizontal .vjs-volume-level:before {
    display: none
}

.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control {
    width: auto
}

.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control .vjs-icon-placeholder {
    display: block;
    position: relative;
    width: 18px;
    height: 28px;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 18px
}

.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control .vjs-icon-placeholder:before {
    display: none
}

.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder {
    background-image: url(/assets/img/video-js/volume-empty.svg)
}

.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder,
.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder,
.vjs-adcd-theme .vjs-volume-panel .vjs-mute-control.vjs-vol-3 .vjs-icon-placeholder {
    background-image: url(/assets/img/video-js/volume-full.svg)
}

.vjs-adcd-theme .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal {
    width: 100px !important;
    height: 6px !important;
    margin-left: 10px;
    margin-right: 0;
    opacity: 1;
    visibility: visible;
    transition: 0s
}

.vjs-adcd-theme .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #fff
}

.vjs-adcd-theme .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal .vjs-volume-level {
    background-color: transparent
}

.vjs-adcd-theme .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal .vjs-volume-level:before {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff
}

.vjs-adcd-theme .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal .vjs-volume-level:after {
    content: "";
    display: block;
    position: absolute;
    top: -2px;
    right: 0;
    width: 4px;
    height: 10px;
    background-color: #fff
}

.vjs-adcd-theme .vjs-volume-panel .vjs-volume-bar.vjs-slider-horizontal {
    width: calc(100% - 2px);
    height: 100%;
    margin: 0;
    background: transparent;
    left: 2px
}

.vjs-adcd-theme .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal {
    width: 100px !important;
    height: 6px !important
}

.vjs-adcd-theme .vjs-fullscreen-control {
    position: absolute;
    top: calc(50% - 14px);
    width: 28px;
    height: 28px
}

.vjs-adcd-theme .vjs-fullscreen-control>* {
    display: none
}

.vjs-adcd-theme .vjs-fullscreen-control:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 16px;
    background-image: url(/assets/img/video-js/fullscreen.svg);
    transition: opacity .35s
}

.showreel-video {
    position: relative;
    display: block;
    width: 100%;
    height: 150vh;
    padding: 0 var(--wrap-1)
}

.showreel-video__outer {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 56.25%
}

.showreel-video__marquee {
    bottom: 0;
    left: 50%;
    transform: translate(-50%);
    width: 100vw;
    --ratio: 0.2494
}

.showreel-video__marquee,
.showreel-video__marquee>* {
    position: absolute;
    height: calc(var(--width)*var(--ratio))
}

.showreel-video__marquee>* {
    top: 0;
    left: 0;
    width: var(--width)
}

.showreel-video-play {
    position: fixed;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    opacity: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.showreel-video-play .play-video-button {
    text-align: center
}

html.v-mobile-device .showreel-video-play .play-video-button span:first-child,
html:not(.v-mobile-device) .showreel-video-play .play-video-button span:nth-child(2) {
    display: none
}

.form-input {
    position: relative;
    --input-height: 60px
}

.form-input__label {
    display: inline-block;
    margin-bottom: 10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-weight: 500;
    font-size: 14px;
    line-height: 16px
}

.form-input__input {
    position: relative
}

.form-input ::-webkit-input-placeholder {
    color: var(--form-input-placeholder-color)
}

.form-input :-moz-placeholder,
.form-input ::-moz-placeholder {
    color: var(--form-input-placeholder-color)
}

.form-input :-ms-input-placeholder {
    color: var(--form-input-placeholder-color)
}

.form-input input,
.form-input textarea {
    background: transparent;
    border: 0;
    display: block;
    width: 100%;
    outline: none;
    background-color: var(--form-input-background-color);
    border: 1px solid var(--form-input-border-color);
    border-radius: 3px;
    box-shadow: none;
    padding: 0 20px;
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text);
    color: var(--form-input-color);
    transition: border-color .25s, background-color .25s, color .25s
}

.form-input input:focus,
.form-input textarea:focus {
    border-color: var(--form-input-border-focus-color)
}

.form-input input.error,
.form-input textarea.error {
    padding-right: 60px;
    border-color: var(--form-input-border-error-color);
    background-color: var(--form-input-background-error-color)
}

.form-input input {
    height: var(--input-height)
}

.form-input textarea {
    resize: none
}

.form-input__error-ico {
    display: block;
    position: absolute;
    top: 0;
    right: 20px;
    width: 24px;
    height: var(--input-height);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url(/assets/img/form/input-error.svg);
    pointer-events: none;
    transition: opacity .25s;
    opacity: 0
}

input.error+.form-input__error-ico,
textarea.error+.form-input__error-ico {
    opacity: 1
}

.form-double-input {
    display: grid;
    grid-gap: 1.25rem
}

.form-grid {
    display: grid;
    grid-template-columns: 1fr
}

.iti {
    width: 100%;
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text)
}

.iti__country-list {
    background-color: var(--form-select-background-color);
    border-radius: 3px;
    border: 1px solid var(--form-select-border-color);
    margin: 10px 0 3px -1px;
    color: var(--form-select-text-color)
}

.iti-mobile .iti__country-list {
    min-width: 260px;
    max-width: calc(100vw - 60px);
    margin: 0
}

.iti__arrow {
    border-top-color: var(--form-input-color)
}

.iti__arrow--up {
    border-bottom-color: var(--form-input-color)
}

.iti__selected-flag {
    padding: 0 5px 0 20px;
    background: transparent !important
}

.iti__dial-code {
    color: var(--form-select-text-color);
    opacity: .75
}

.iti__divider {
    border-bottom: 1px solid var(--form-select-text-color)
}

.iti__country.iti__highlight {
    background-color: var(--form-selected-option-background-color)
}

.iti--container,
.iti-mobile .iti__country {
    transform: translateZ(0)
}

.iti--container {
    z-index: 99999999999
}

.form-file-loader {
    position: relative;
    --size: 3.75rem;
    height: var(--size);
    cursor: pointer
}

.form-file-loader.loading {
    pointer-events: none
}

.form-file-loader canvas {
    z-index: 1
}

.form-file-loader canvas,
.form-file-loader input {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.form-file-loader input {
    opacity: 0;
    z-index: 9;
    cursor: pointer
}

.form-file-loader__button {
    background: transparent;
    border: 0;
    padding: 0;
    position: relative;
    width: 100%;
    height: var(--size);
    z-index: -1
}

.form-file-loader__text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding-left: calc(var(--size)*1.5);
    padding-right: calc(var(--size)/2)
}

.form-file-loader__text>* {
    position: relative;
    display: block;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.form-file-loader__text>*>* {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.form-file-loader__accept {
    position: relative;
    z-index: -1;
    flex-shrink: 0;
    padding-left: .875rem;
    white-space: nowrap;
    font-size: .875rem;
    line-height: 1rem;
    color: var(--color-grey)
}

.form-file-loader__accept.active {
    display: none
}

.v-select {
    background: transparent;
    color: var(--form-input-color);
    --input-height: 60px
}

.v-select__placeholder {
    border-radius: 3px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding-left: 20px;
    padding-right: 60px;
    height: var(--input-height);
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text);
    border: 1px solid var(--form-input-border-color);
    background-color: var(--form-input-background-color);
    transition: border-color .25s, background-color .25s
}

.v-select.error .v-select__placeholder {
    border-color: var(--form-input-border-error-color);
    background-color: var(--form-input-background-error-color)
}

.v-select__arrow {
    width: 12px;
    right: 20px
}

.v-select__arrow:after,
.v-select__arrow:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    right: 0;
    width: 13px;
    height: 11px;
    margin: -5px 0 0;
    border: 0;
    z-index: 1;
    transition: opacity .35s, transform .35s;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100%
}

.v-select__arrow:before {
    background-image: url(/assets/img/form/select-placeholder-static.svg)
}

.v-select__arrow:after {
    background-image: url(/assets/img/form/select-placeholder-active.svg);
    opacity: 0
}

.v-select_animate .v-select__arrow:after,
.v-select_animate .v-select__arrow:before {
    transform: rotate(180deg)
}

.v-select_animate .v-select__arrow:before {
    opacity: 0
}

.v-select_animate .v-select__arrow:after {
    opacity: 1
}

.v-select__container {
    top: 0;
    border-radius: 3px;
    border: 1px solid var(--form-select-border-color);
    background: var(--form-select-background-color)
}

.v-select__content {
    padding: 0;
    max-height: none
}

.v-select__values {
    margin: 0
}

.v-select__value {
    padding: 12px 20px;
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-layout-text);
    color: var(--form-select-text-color);
    transition: background-color .35s
}

.v-select__values_hide-active .v-select__value_active {
    display: block;
    background-color: var(--form-selected-option-background-color)
}

.v-select__value:first-child {
    pointer-events: none;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    height: var(--input-height);
    background-color: transparent
}

html:not(.v-mobile-device) .v-select__value.hover,
html:not(.v-mobile-device) .v-select__value:hover {
    background-color: var(--form-selected-option-background-color)
}

.ajax-form,
ajax-form {
    display: block
}

.layout-like-button {
    position: fixed;
    z-index: 3;
    left: var(--wrap);
    bottom: 6.25rem;
    transition: opacity .35s, visibility .35s;
    opacity: 0;
    visibility: hidden
}

.v-page_contacts-page .layout-like-button {
    opacity: 1;
    visibility: visible
}

.like-button {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    --duration: .5625s;
    --size: 3.75rem;
    --ico-size: 18px
}

.like-button,
.like-button__outer {
    position: relative;
    display: block
}

.like-button__ico {
    position: relative;
    display: inline-block;
    width: var(--ico-size);
    height: var(--ico-size);
    transform: scale(1) translateZ(0)
}

.like-button__ico svg {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    transition: opacity var(--duration)
}

.like-button__ico svg:nth-child(2) {
    opacity: 0
}

.like-button__count {
    position: absolute;
    width: var(--size);
    height: var(--size);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--color-white);
    font-size: 1rem;
    line-height: 1.125rem;
    color: var(--color-black);
    transition: visibility .35s, opacity .35s, transform .35s
}

html:not(.v-mobile-device) .like-button__count {
    opacity: 0;
    visibility: hidden
}

.like-button__count:before {
    content: "";
    display: block;
    position: absolute;
    width: 12px;
    height: 12px;
    transform: rotate(45deg);
    background-color: var(--color-white)
}

html:not(.v-mobile-device) .like-button.hover .like-button__count,
html:not(.v-mobile-device) .like-button:hover .like-button__count {
    transform: translateZ(0);
    visibility: visible;
    opacity: 1
}

.like-button.circle button {
    background: transparent;
    border: 0;
    padding: 0
}

.like-button.circle .like-button__outer {
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background-color: var(--color-white);
    transition: background-color var(--duration)
}

.like-button.circle .like-button__outer:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: 0;
    border-radius: 50%;
    transition: transform var(--duration), background-color var(--duration);
    transform: scale(0);
    background-color: var(--color-highlight)
}

.like-button.circle .like-button__ico {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: calc(var(--ico-size)/-2);
    margin-left: calc(var(--ico-size)/-2)
}

.like-button.circle .like-button__text {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.like-button.circle:hover .like-button__outer:before {
    transform: scale(1.02)
}

.like-button.circle:hover .like-button__ico svg:first-child {
    opacity: 0
}

.like-button.circle:hover .like-button__ico svg:nth-child(2) {
    opacity: 1
}

.like-button.circle.hover .like-button__outer:before {
    transform: scale(1.02)
}

.like-button.circle.hover .like-button__ico svg:first-child {
    opacity: 0
}

.like-button.circle.hover .like-button__ico svg:nth-child(2) {
    opacity: 1
}

.like-button.circle.active .like-button__outer:before {
    transform: scale(1.02)
}

.like-button.circle.active .like-button__ico svg:nth-child(2) {
    opacity: 1
}

.like-button.circle.active .like-button__outer:before {
    background-color: var(--color-disabled)
}

.like-button.circle.active .like-button__ico svg:first-child {
    opacity: 0
}

.like-button.circle.active .like-button__ico svg:nth-child(2) {
    opacity: .2
}

.like-button.horizontal {
    --duration: .5s
}

.like-button.horizontal .interactive-button__outer:not(:first-child) .like-button__ico svg:first-child {
    opacity: 0
}

.like-button.horizontal .interactive-button__outer:not(:first-child) .like-button__ico svg:nth-child(2) {
    opacity: 1
}

.like-button.horizontal .interactive-button.disabled .interactive-button__outer .like-button__ico svg:first-child {
    opacity: 0
}

.like-button.horizontal .interactive-button.disabled .interactive-button__outer .like-button__ico svg:nth-child(2) {
    opacity: .2
}

.like-button.horizontal .like-button__outer {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.like-button.horizontal .like-button__count {
    left: calc(100% + 17px);
    top: 50%;
    transform: translate(10%);
    margin-top: calc(var(--size)/-2)
}

.like-button.horizontal .like-button__count:before {
    left: -4px;
    top: calc(50% - 6px)
}

.like-button.horizontal .like-button__ico {
    margin-right: 10px
}

.success-message {
    display: grid;
    grid-template-columns: 1fr
}

.success-message__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.success-message__buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start
}

.success-message__buttons>* {
    margin-right: 1.25rem
}

.stop-war-button {
    position: fixed;
    z-index: 9;
    right: var(--wrap);
    bottom: 2.625rem;
    height: 3.75rem;
    width: auto;
    border-radius: 1.875rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #181818;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    transition: opacity .5s
}

.stop-war-button.hide {
    opacity: 0;
    pointer-events: none
}

.stop-war-button span {
    display: block;
    padding: 0 1.25rem 0 2.25rem;
    font-size: 1rem;
    line-height: 1.125rem
}

.stop-war-button svg {
    overflow: hidden;
    border-radius: 50%
}

.stop-war-button__hover_circle {
    transform-origin: center center;
    transform: scale(0);
    transition: transform .75s
}

html:not(.v-mobile-device) .stop-war-button.hover .stop-war-button__hover_circle,
html:not(.v-mobile-device) .stop-war-button:hover .stop-war-button__hover_circle {
    transform: scale(1.02)
}

.stop-war-popup {
    position: fixed;
    z-index: 9;
    right: var(--wrap);
    bottom: 7.25rem;
    width: 33.75rem;
    max-width: calc(var(--vw)*100 - var(--wrap)*2);
    border-radius: 1.25rem;
    background-color: #fff;
    color: #000;
    transition: transform 1s, opacity 1s;
    transform: translateY(-2rem);
    opacity: 0
}

.stop-war-popup.show {
    opacity: 1;
    transform: translate(0)
}

.stop-war-popup:not(.show) {
    pointer-events: none
}

.stop-war-popup.hide {
    opacity: 0;
    pointer-events: none
}

.stop-war-popup:after {
    content: "";
    display: block;
    position: absolute;
    top: calc(100% - 1px);
    width: 0;
    height: 0;
    border-style: solid
}

.stop-war-popup__close {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    cursor: pointer;
    opacity: .2;
    transition: opacity .35s
}

html:not(.v-mobile-device) .stop-war-popup__close.hover,
html:not(.v-mobile-device) .stop-war-popup__close:hover {
    opacity: 1
}

.stop-war-popup__wrapper {
    height: auto;
    max-height: calc(var(--vh)*100 - 8.5rem);
    overflow: auto;
    scrollbar-width: none
}

.stop-war-popup__wrapper::-webkit-scrollbar {
    display: none
}

.stop-war-popup__desc {
    font-weight: 300
}

.stop-war-popup__desc :first-child {
    margin-top: 0
}

.stop-war-popup__desc :last-child {
    margin-bottom: 0
}

.stop-war-popup__desc p {
    margin: 0
}

.stop-war-popup__desc a {
    text-decoration: underline
}

.stop-war-popup__desc a.hover,
.stop-war-popup__desc a:hover {
    text-decoration: none
}

.stop-war-popup__desc img {
    margin: 0
}

.stop-war-popup__desc img:not([height]),
.stop-war-popup__desc img:not([width]),
.stop-war-popup__desc img[width=""] {
    width: 100%
}

.stop-war-popup__desc blockquote,
.stop-war-popup__desc cite,
.stop-war-popup__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.stop-war-popup__desc blockquote:before,
.stop-war-popup__desc cite:before,
.stop-war-popup__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.stop-war-popup__desc h1,
.stop-war-popup__desc h2,
.stop-war-popup__desc h3,
.stop-war-popup__desc h4,
.stop-war-popup__desc h5,
.stop-war-popup__desc h6 {
    margin: 0
}

.stop-war-popup__desc ol,
.stop-war-popup__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.stop-war-popup__desc ol li,
.stop-war-popup__desc ul li {
    list-style-position: inside
}

.stop-war-popup__desc ol li+li,
.stop-war-popup__desc ul li+li {
    margin-top: 1.25rem
}

.stop-war-popup__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.stop-war-popup__desc ol {
    counter-reset: ol-counter
}

.stop-war-popup__desc ol li {
    counter-increment: ol-counter
}

.stop-war-popup__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.stop-war-popup__subheader {
    line-height: 140%
}

.gl-advanced-letter {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: -1
}

.home-screen {
    position: relative;
    width: 100%;
    height: calc(var(--vh)*250)
}

.home-screen__content,
.home-screen__scene {
    height: calc(var(--vh)*100)
}

.home-screen__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between
}

.home-screen__desc {
    margin-top: 3.75rem;
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.home-screen__desc :first-child {
    margin-top: 0
}

.home-screen__desc :last-child {
    margin-bottom: 0
}

.home-screen__desc p {
    margin: 0
}

.home-screen__desc a {
    text-decoration: underline
}

.home-screen__desc a.hover,
.home-screen__desc a:hover {
    text-decoration: none
}

.home-screen__desc img {
    margin: 0
}

.home-screen__desc img:not([height]),
.home-screen__desc img:not([width]),
.home-screen__desc img[width=""] {
    width: 100%
}

.home-screen__desc blockquote,
.home-screen__desc cite,
.home-screen__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.home-screen__desc blockquote:before,
.home-screen__desc cite:before,
.home-screen__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.home-screen__desc h1,
.home-screen__desc h2,
.home-screen__desc h3,
.home-screen__desc h4,
.home-screen__desc h5,
.home-screen__desc h6 {
    margin: 0
}

.home-screen__desc ol,
.home-screen__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.home-screen__desc ol li,
.home-screen__desc ul li {
    list-style-position: inside
}

.home-screen__desc ol li+li,
.home-screen__desc ul li+li {
    margin-top: 1.25rem
}

.home-screen__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.home-screen__desc ol {
    counter-reset: ol-counter
}

.home-screen__desc ol li {
    counter-increment: ol-counter
}

.home-screen__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.home-screen__desc p {
    margin: 1.25rem 0
}

.home-screen__desc img {
    margin: .5rem 0
}

.home-screen__desc blockquote,
.home-screen__desc cite,
.home-screen__desc h1,
.home-screen__desc h2,
.home-screen__desc h3,
.home-screen__desc q {
    margin: 2.5rem 0
}

.home-screen__desc h4,
.home-screen__desc h5,
.home-screen__desc h6 {
    margin: 1.25rem 0
}

.home-screen__desc ol,
.home-screen__desc ul {
    margin: 1.875rem
}

.home-info {
    position: relative
}

.home-info__header.larger,
.home-info__header:not(.larger) {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.home-info__container {
    display: flex
}

.home-info__button {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start
}

.home-info__content {
    position: relative
}

.home-info__desc {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.home-info__desc :first-child {
    margin-top: 0
}

.home-info__desc :last-child {
    margin-bottom: 0
}

.home-info__desc p {
    margin: 0
}

.home-info__desc a {
    text-decoration: underline
}

.home-info__desc a.hover,
.home-info__desc a:hover {
    text-decoration: none
}

.home-info__desc img {
    margin: 0
}

.home-info__desc img:not([height]),
.home-info__desc img:not([width]),
.home-info__desc img[width=""] {
    width: 100%
}

.home-info__desc blockquote,
.home-info__desc cite,
.home-info__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.home-info__desc blockquote:before,
.home-info__desc cite:before,
.home-info__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.home-info__desc h1,
.home-info__desc h2,
.home-info__desc h3,
.home-info__desc h4,
.home-info__desc h5,
.home-info__desc h6 {
    margin: 0
}

.home-info__desc ol,
.home-info__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.home-info__desc ol li,
.home-info__desc ul li {
    list-style-position: inside
}

.home-info__desc ol li+li,
.home-info__desc ul li+li {
    margin-top: 1.25rem
}

.home-info__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.home-info__desc ol {
    counter-reset: ol-counter
}

.home-info__desc ol li {
    counter-increment: ol-counter
}

.home-info__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.home-info__desc p {
    margin: 1.25rem 0
}

.home-info__desc img {
    margin: .5rem 0
}

.home-info__desc blockquote,
.home-info__desc cite,
.home-info__desc h1,
.home-info__desc h2,
.home-info__desc h3,
.home-info__desc q {
    margin: 2.5rem 0
}

.home-info__desc h4,
.home-info__desc h5,
.home-info__desc h6 {
    margin: 1.25rem 0
}

.home-info__desc ol,
.home-info__desc ul {
    margin: 1.875rem
}

.home-services,
.home-services__wrap {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: .625rem
}

.home-services__header {
    font-size: 1rem;
    line-height: 160%
}

.home-services__list {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr;
    line-height: 100%
}

.home-services__portfolio {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    width: 100vw;
    transform: translate(-50%, -50%)
}

.home-awards__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.home-awards__container {
    display: flex
}

.home-awards__button {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start
}

.home-awards__desc {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.home-awards__desc :first-child {
    margin-top: 0
}

.home-awards__desc :last-child {
    margin-bottom: 0
}

.home-awards__desc p {
    margin: 0
}

.home-awards__desc a {
    text-decoration: underline
}

.home-awards__desc a.hover,
.home-awards__desc a:hover {
    text-decoration: none
}

.home-awards__desc img {
    margin: 0
}

.home-awards__desc img:not([height]),
.home-awards__desc img:not([width]),
.home-awards__desc img[width=""] {
    width: 100%
}

.home-awards__desc blockquote,
.home-awards__desc cite,
.home-awards__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.home-awards__desc blockquote:before,
.home-awards__desc cite:before,
.home-awards__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.home-awards__desc h1,
.home-awards__desc h2,
.home-awards__desc h3,
.home-awards__desc h4,
.home-awards__desc h5,
.home-awards__desc h6 {
    margin: 0
}

.home-awards__desc ol,
.home-awards__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.home-awards__desc ol li,
.home-awards__desc ul li {
    list-style-position: inside
}

.home-awards__desc ol li+li,
.home-awards__desc ul li+li {
    margin-top: 1.25rem
}

.home-awards__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.home-awards__desc ol {
    counter-reset: ol-counter
}

.home-awards__desc ol li {
    counter-increment: ol-counter
}

.home-awards__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.home-awards__desc p {
    margin: 1.25rem 0
}

.home-awards__desc img {
    margin: .5rem 0
}

.home-awards__desc blockquote,
.home-awards__desc cite,
.home-awards__desc h1,
.home-awards__desc h2,
.home-awards__desc h3,
.home-awards__desc q {
    margin: 2.5rem 0
}

.home-awards__desc h4,
.home-awards__desc h5,
.home-awards__desc h6 {
    margin: 1.25rem 0
}

.home-awards__desc ol,
.home-awards__desc ul {
    margin: 1.875rem
}

.home-last-works {
    position: relative;
    display: block
}

.home-last-works__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    overflow: hidden;
    text-align: center
}

.home-last-works__list {
    margin-top: 5rem;
    padding: 0 var(--wrap)
}

.home-last-works__more {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0 var(--wrap)
}

.home-page *+.home-showreel {
    margin-top: calc(var(--vh)*-75)
}

.love-screen {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.love-screen__scene {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%)
}

.statistics {
    display: grid;
    grid-template-columns: 1fr 1fr
}

.statistics__desc {
    margin-top: .625rem;
    line-height: 100%
}

.about-info {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 3.75rem
}

.about-info__buttons {
    position: relative;
    display: grid;
    grid-template-columns: 1fr
}

.clients-table {
    position: relative;
    display: grid;
    text-align: center
}

.clients-table:before {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 1px);
    height: calc(100% - 1px);
    z-index: 1;
    pointer-events: none;
    border: 1px solid #fff
}

.clients-table__item {
    position: relative;
    border-right: 1px solid rgba(255, 255, 255, .1);
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    line-height: 116%
}

.clients-table__item>a,
.clients-table__item>div {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 10px
}

.clients-table__helper {
    display: block;
    width: 100%;
    padding-top: 100%
}

.clients-list__button {
    z-index: 1
}

.awards-screen,
.clients-list__button {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.awards-screen__scene {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.awards-screen__scene,
.gl-sphere-core {
    position: absolute;
    width: 100%;
    height: 100%
}

.gl-sphere-core {
    display: block;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0
}

.team-marquee-screen {
    position: relative
}

.team-marquee-screen .gl-sphere-core {
    pointer-events: none
}

.team-persons-scroll {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding: 0 var(--wrap-1)
}

.team-persons-scroll .team-person {
    flex-shrink: 0
}

.team-persons-scroll .team-person+.team-person {
    margin-left: var(--wrap)
}

.team-person {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 1.25rem
}

.team-person__img {
    position: relative;
    width: 100%;
    padding-top: 114%
}

.team-person__content {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: .625rem
}

.team-person__name {
    line-height: 100%
}

.team-person__info {
    line-height: 160%;
    color: rgba(255, 255, 255, .5)
}

.team-person__info ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    color: var(--color-text)
}

.team-person__info ul li+li:before {
    content: ", "
}

.team-person__info a {
    position: relative;
    color: currentColor
}

.team-person__info a:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    transition: transform .35s;
    transform: scaleX(0)
}

.team-person__info a.active:after,
.team-person__info a.hover:after,
.team-person__info a.tab-highlight:after,
.team-person__info a:hover:after {
    transform: scale(1)
}

.team-offer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center
}

.team-offer__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.team-offer__ico {
    height: auto
}

.filtered-content-head {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-bottom: 1.25rem
}

.filtered-content-head:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

.filtered-content-filter {
    display: block
}

.filtered-content-filter button {
    position: relative;
    background: transparent;
    border: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    font-size: 1rem;
    line-height: 160%;
    color: var(--color-text);
    padding: 0 30px 0 0
}

.filtered-content-filter button:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -3px;
    display: block;
    width: 0;
    height: 0;
    border-color: currentcolor transparent transparent;
    border-style: solid;
    border-width: 6px 3px 0;
    transition: opacity .35s, transform .35s;
    opacity: 0
}

.filtered-content-filter.asc button:after {
    opacity: 1;
    transform: rotate(-180deg)
}

.filtered-content-filter.desc button:after {
    opacity: 1
}

.filtered-content-item {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: 1rem;
    line-height: 160%;
    color: var(--color-text);
    opacity: .6;
    transition: opacity .25s
}

html:not(.v-mobile-device) .filtered-content-item.hover,
html:not(.v-mobile-device) .filtered-content-item:hover {
    opacity: 1;
    text-decoration: underline
}

.filtered-content-item>* {
    padding-right: 10px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.filtered-content-item.hidden {
    display: none
}

.filtered-content-items {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 1.875rem
}

.filtered-content-items:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    opacity: .2
}

.filtered-content-items>*+* {
    margin-top: 1.25rem
}

.filtered-content {
    display: block;
    width: 100%
}

.filtered-content [data-item].hidden {
    display: none
}

.filtered-content>*+* {
    margin-top: 1.875rem
}

.filtered-content .filtered-content-head>*,
.filtered-content .filtered-content-item>* {
    flex-shrink: 0
}

.filtered-content .filtered-content-head>:first-child,
.filtered-content .filtered-content-item>:first-child {
    width: 15%
}

.filtered-content .filtered-content-head>:nth-child(2),
.filtered-content .filtered-content-item>:nth-child(2) {
    width: 24%
}

.filtered-content .filtered-content-head>:nth-child(3),
.filtered-content .filtered-content-item>:nth-child(3) {
    width: 33%
}

.filtered-content .filtered-content-head>:nth-child(4),
.filtered-content .filtered-content-item>:nth-child(4) {
    width: 28%
}

.awards-summary-item__head {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 1.625rem;
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 100%
}

.awards-summary-item__head:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

.awards-summary-item__head>* {
    display: block
}

.awards-summary-item__head>:not(:last-child) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.awards-summary-item__head>:last-child {
    flex-shrink: 0
}

.awards-summary-item__content {
    padding-top: 1.25rem;
    font-size: 1rem;
    line-height: 200%
}

.awards-summary-item__content>* {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between
}

.awards-summary-item__content>*>* {
    display: block
}

.awards-summary-item__content>*>:not(:last-child) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.awards-summary-item__content>*>:last-child {
    flex-shrink: 0
}

.awards-summary {
    display: block
}

.awards-summary>*+* {
    margin-top: 5rem
}

.services-item {
    position: relative;
    display: grid
}

.services-item__header {
    position: relative;
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.services-item__container {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 2.5rem
}

.services-item__desc {
    line-height: 120%
}

.services-item__desc :first-child {
    margin-top: 0
}

.services-item__desc :last-child {
    margin-bottom: 0
}

.services-item__desc p {
    margin: 0
}

.services-item__desc a {
    text-decoration: underline
}

.services-item__desc a.hover,
.services-item__desc a:hover {
    text-decoration: none
}

.services-item__desc img {
    margin: 0
}

.services-item__desc img:not([height]),
.services-item__desc img:not([width]),
.services-item__desc img[width=""] {
    width: 100%
}

.services-item__desc blockquote,
.services-item__desc cite,
.services-item__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.services-item__desc blockquote:before,
.services-item__desc cite:before,
.services-item__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.services-item__desc h1,
.services-item__desc h2,
.services-item__desc h3,
.services-item__desc h4,
.services-item__desc h5,
.services-item__desc h6 {
    margin: 0
}

.services-item__desc ol,
.services-item__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.services-item__desc ol li,
.services-item__desc ul li {
    list-style-position: inside
}

.services-item__desc ol li+li,
.services-item__desc ul li+li {
    margin-top: 1.25rem
}

.services-item__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.services-item__desc ol {
    counter-reset: ol-counter
}

.services-item__desc ol li {
    counter-increment: ol-counter
}

.services-item__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.services-item__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-row-gap: .625rem;
    font-weight: 300;
    font-size: 1rem;
    line-height: 160%
}

.services-item__pricing {
    position: relative;
    font-weight: 300;
    font-size: 1.5rem;
    line-height: 100%
}

.services-item__pricing:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

.services-items,
.services-items .services-item {
    position: relative
}

gl-model {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.waterfall-screen {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center
}

.waterfall-screen__scene {
    position: absolute
}

.waterfall-screen__header {
    position: absolute;
    z-index: 1;
    left: 0;
    width: 100%
}

.waterfall-screen__text {
    text-align: center;
    line-height: 100%
}

.services-process {
    position: relative;
    display: grid;
    grid-template-columns: 1fr
}

.services-process__container {
    display: grid
}

.services-process__header {
    font-size: 1.875rem;
    line-height: 100%
}

.services-process__desc {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.services-process__desc :first-child {
    margin-top: 0
}

.services-process__desc :last-child {
    margin-bottom: 0
}

.services-process__desc p {
    margin: 0
}

.services-process__desc a {
    text-decoration: underline
}

.services-process__desc a.hover,
.services-process__desc a:hover {
    text-decoration: none
}

.services-process__desc img {
    margin: 0
}

.services-process__desc img:not([height]),
.services-process__desc img:not([width]),
.services-process__desc img[width=""] {
    width: 100%
}

.services-process__desc blockquote,
.services-process__desc cite,
.services-process__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.services-process__desc blockquote:before,
.services-process__desc cite:before,
.services-process__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.services-process__desc h1,
.services-process__desc h2,
.services-process__desc h3,
.services-process__desc h4,
.services-process__desc h5,
.services-process__desc h6 {
    margin: 0
}

.services-process__desc ol,
.services-process__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.services-process__desc ol li,
.services-process__desc ul li {
    list-style-position: inside
}

.services-process__desc ol li+li,
.services-process__desc ul li+li {
    margin-top: 1.25rem
}

.services-process__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.services-process__desc ol {
    counter-reset: ol-counter
}

.services-process__desc ol li {
    counter-increment: ol-counter
}

.services-process__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.services-process__desc p {
    margin: 1.25rem 0
}

.services-process__desc img {
    margin: .5rem 0
}

.services-process__desc blockquote,
.services-process__desc cite,
.services-process__desc h1,
.services-process__desc h2,
.services-process__desc h3,
.services-process__desc q {
    margin: 2.5rem 0
}

.services-process__desc h4,
.services-process__desc h5,
.services-process__desc h6 {
    margin: 1.25rem 0
}

.services-process__desc ol,
.services-process__desc ul {
    margin: 1.875rem
}

.services-processes {
    position: relative;
    display: grid;
    grid-template-columns: 1fr
}

.services-processes .services-process {
    position: relative;
    padding-top: 1.25rem
}

.services-processes .services-process:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

.project-preview {
    display: block;
    width: 100%
}

.project-preview a {
    color: var(--color-text);
    display: block
}

.project-preview__image {
    position: relative;
    width: 100%;
    padding-top: 111%
}

.project-preview__content {
    margin-top: 1.25rem;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: .625rem
}

.project-preview__name {
    font-size: 1.5rem;
    line-height: 100%
}

.project-preview__info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    font-size: 1rem;
    line-height: 160%
}

.project-preview__type {
    padding-right: 1rem;
    opacity: .6
}

.project-previews-ladder-grid {
    display: grid
}

.project-link {
    position: relative;
    display: block;
    transition: opacity .75s, transform .75s;
    opacity: 0
}

.project-link.composed.show {
    opacity: 1
}

.project-link.fixed {
    position: fixed;
    z-index: 2;
    left: var(--wrap-1);
    transform: scale(1)
}

.project-link.fixed.hide {
    transform: scale(0)
}

.project-link a,
.project-link sticky-mouse-el {
    border-radius: 50%
}

.project-link a {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 10px;
    width: var(--size);
    height: var(--size);
    transition: color .75s;
    color: var(--color-black);
    text-align: center
}

.project-link a:after,
.project-link a:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: -1;
    transition: transform .75s;
    border-radius: 50%
}

.project-link a:before {
    background-color: var(--color-white);
    transform: scale(.99)
}

.project-link a:after {
    transform: scale(0);
    background-color: var(--color-highlight)
}

html:not(.v-mobile-device) .project-link a:hover {
    color: var(--color-white)
}

html:not(.v-mobile-device) .project-link a:hover:after {
    transform: scale(1)
}

html:not(.v-mobile-device) .project-link a.hover {
    color: var(--color-white)
}

html:not(.v-mobile-device) .project-link a.hover:after {
    transform: scale(1)
}

.project-intro {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center
}

.project-intro__date,
.project-intro__pretitle {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.project-intro__pretitle {
    padding-left: var(--wrap)
}

.project-intro__pretitle>* {
    padding: .625rem 0
}

.project-intro__header {
    margin: 0;
    width: 100%
}

.project-intro__header marquee-text>* {
    padding: 1.25rem 0
}

.project-intro__date>* {
    padding: .625rem 0
}

.project-features {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 1.25rem
}

.project-features__head {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 1.75rem;
    font-size: 1.5rem;
    line-height: 80%
}

.project-features__head:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

.project-features__list {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1rem;
    line-height: 120%;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: .75rem
}

.project-image-scene,
project-image-scene {
    position: relative;
    display: block;
    width: 100%
}

.project-image-scene__header,
project-image-scene__header {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%;
    text-align: center
}

.project-image-scene__subheader,
project-image-scene__subheader {
    position: absolute;
    left: 50%;
    width: 100vw;
    transform: translate(-50%);
    line-height: 100%
}

.next-project-image,
.next-project-image canvas {
    display: block;
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%
}

.next-project-image canvas {
    pointer-events: none
}

.next-project-image__area {
    position: absolute
}

.next-project-image__el {
    display: block;
    opacity: 0
}

.next-project-screen {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%
}

.next-project-screen__image {
    height: 100%;
    position: absolute;
    bottom: auto;
    left: 0;
    right: auto;
    top: 0;
    width: 100%;
    z-index: 0
}

.next-project-screen__header {
    position: relative;
    width: 100%;
    z-index: 1;
    pointer-events: none
}

.project-descs,
.project-descs .project-desc {
    position: relative
}

.project-descs .project-desc:before {
    top: 0
}

.project-descs .project-desc:before,
.project-descs .project-desc:last-child:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor
}

.project-descs .project-desc:last-child:after {
    bottom: 0
}

.project-desc {
    position: relative;
    display: grid
}

.project-desc__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.project-desc__desc {
    font-size: 1rem;
    line-height: 160%;
    font-weight: 300
}

.project-desc__desc :first-child {
    margin-top: 0
}

.project-desc__desc :last-child {
    margin-bottom: 0
}

.project-desc__desc p {
    margin: 0
}

.project-desc__desc a {
    text-decoration: underline
}

.project-desc__desc a.hover,
.project-desc__desc a:hover {
    text-decoration: none
}

.project-desc__desc img {
    margin: 0
}

.project-desc__desc img:not([height]),
.project-desc__desc img:not([width]),
.project-desc__desc img[width=""] {
    width: 100%
}

.project-desc__desc blockquote,
.project-desc__desc cite,
.project-desc__desc q {
    position: relative;
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0 0 0 2.5rem;
    font-style: italic;
    font-weight: 400
}

.project-desc__desc blockquote:before,
.project-desc__desc cite:before,
.project-desc__desc q:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor
}

.project-desc__desc h1,
.project-desc__desc h2,
.project-desc__desc h3,
.project-desc__desc h4,
.project-desc__desc h5,
.project-desc__desc h6 {
    margin: 0
}

.project-desc__desc ol,
.project-desc__desc ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.project-desc__desc ol li,
.project-desc__desc ul li {
    list-style-position: inside
}

.project-desc__desc ol li+li,
.project-desc__desc ul li+li {
    margin-top: 1.25rem
}

.project-desc__desc ul li:before {
    content: "\2022";
    color: currentColor;
    font-weight: 700;
    display: inline-block;
    width: 1rem
}

.project-desc__desc ol {
    counter-reset: ol-counter
}

.project-desc__desc ol li {
    counter-increment: ol-counter
}

.project-desc__desc ol li:before {
    content: counter(ol-counter) ". ";
    color: currentColor;
    display: inline-block;
    padding-right: .5rem
}

.project-desc__desc p {
    margin: 1.25rem 0
}

.project-desc__desc img {
    margin: .5rem 0
}

.project-desc__desc blockquote,
.project-desc__desc cite,
.project-desc__desc h1,
.project-desc__desc h2,
.project-desc__desc h3,
.project-desc__desc q {
    margin: 2.5rem 0
}

.project-desc__desc h4,
.project-desc__desc h5,
.project-desc__desc h6 {
    margin: 1.25rem 0
}

.project-desc__desc ol,
.project-desc__desc ul {
    margin: 1.875rem
}

.project-page__content {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start
}

.project-page__desc {
    width: 100%
}

.project-page .project-image-scene {
    margin-top: 5rem
}

.project-page .media-previews {
    width: 100%
}

.contacts-form {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 2.5rem
}

.contacts-page__wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    min-height: calc(var(--vh)*100)
}

.contacts-page__wrap>* {
    width: 100%
}

.error-screen {
    position: relative;
    width: 100%;
    height: calc(var(--vh)*100);
    min-height: 320px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    padding-left: var(--wrap);
    padding-right: var(--wrap)
}

.error-screen__header {
    font-family: HelveticaNeueCyr;
    font-weight: 400;
    line-height: 100%
}

.error-screen__button {
    margin-top: 2.5rem
}

.error-screen__scene {
    z-index: -1
}

.dg.ac {
    z-index: 999 !important
}

.dg.ac input[type=checkbox] {
    -webkit-appearance: checkbox
}

.dg.ac select {
    -webkit-appearance: auto
}

html:not(.show-dat-gui) .dg.ac {
    display: none
}

@media (min-width:1200px) {

    html.v-browser_safari .header_fixed:not(.show-fixed),
    html:not(.v-browser_safari) .header_fixed:not(.show-fixed) {
        pointer-events: none
    }

    .header__nav {
        width: 50%
    }

    .header__burger {
        display: none
    }

    .minifooter {
        padding-bottom: 3.125rem
    }

    .v-preloader__progress,
    html:before {
        height: .3125rem
    }

    .mail-button {
        --size: 10rem
    }

    .mail-button i {
        --size: 30px
    }

    .readmore-button {
        --size: 11.25rem
    }

    .readmore-button__ico img,
    .readmore-button__ico svg {
        height: 40px
    }

    .readmore-button.angle-d-45 {
        transform: rotate(45deg)
    }

    .readmore-button.angle-d-180 {
        transform: rotate(180deg)
    }

    .circle-button {
        --size: 11.25rem
    }

    .close-circle-button {
        width: 80px;
        height: 80px
    }

    .close-circle-button i:before {
        --width: 30px
    }

    .close-circle-button i:after {
        --height: 30px
    }

    .back-button {
        width: 54px;
        height: 54px
    }

    .h1,
    h1 {
        font-size: 4.5rem
    }

    .h1.large,
    h1.large {
        font-size: 9rem
    }

    .h2,
    h2 {
        font-size: 3.375rem
    }

    .h3,
    h3 {
        font-size: 3rem
    }

    .h4,
    h4 {
        font-size: 2.25rem
    }

    .h5,
    h5 {
        font-size: 1.875rem
    }

    .marquee-header,
    marquee-header {
        font-size: 5rem
    }

    .marquee-header.large,
    marquee-header.large {
        font-size: 9rem
    }

    .page-desc>*+* {
        margin-top: 5rem
    }

    .page-desc__header {
        max-width: 1300px
    }

    .page-desc__content {
        max-width: 50%
    }

    .info-content {
        grid-gap: 6.25rem
    }

    .info-content__header {
        font-size: 3rem;
        text-indent: 11.25rem
    }

    .info-content__desc {
        width: 50%;
        justify-self: flex-end
    }

    .contact-us-screen__scene {
        top: 10%;
        left: 30%;
        width: 40%;
        height: 80%
    }

    .marquee-screen {
        padding: 10rem 0
    }

    .popup-outer__wrap {
        padding: 3.125rem var(--wrap-1) 3.75rem
    }

    .popup-outer__header {
        font-family: HelveticaNeueCyr;
        font-weight: 400;
        line-height: 100%
    }

    .popup-outer__form {
        margin-top: 3.75rem
    }

    .media-preview-outer__header {
        font-family: HelveticaNeueCyr;
        font-weight: 400;
        line-height: 100%
    }

    .media-previews {
        grid-gap: 7.5rem
    }

    .desktop-hide {
        display: none !important
    }

    .vjs-adcd-theme .vjs-big-play-button {
        width: 120px;
        height: 120px;
        margin-top: -60px;
        margin-left: -60px
    }

    .vjs-adcd-theme .vjs-big-play-button:after {
        margin: 1px 0 0 3px;
        background-size: 18px auto
    }

    .showreel-video__marquee {
        --width: 320px
    }

    .form-input textarea {
        padding-top: 25px;
        padding-bottom: 25px;
        height: 240px
    }

    .form-grid {
        grid-gap: 2.5rem
    }

    .like-button.circle .like-button__count {
        left: 50%;
        bottom: calc(100% + 17px);
        transform: translateY(-10%);
        margin-left: calc(var(--size)/-2)
    }

    .like-button.circle .like-button__count:before {
        bottom: -4px;
        left: calc(50% - 6px)
    }

    .success-message {
        grid-gap: 3.75rem
    }

    .success-message__header {
        font-size: 4.5rem
    }

    .success-message__header.large {
        font-size: 9rem
    }

    .stop-war-popup__wrapper {
        padding: 2.5rem
    }

    .stop-war-popup__wrapper>*+* {
        margin-top: 1.875rem
    }

    .stop-war-popup__header {
        font-size: 2.25rem;
        line-height: 2.5625rem
    }

    .stop-war-popup__desc {
        font-size: .9375rem;
        line-height: 160%
    }

    .stop-war-popup__subheader {
        font-size: 1.5rem
    }

    .home-screen__content {
        min-height: 630px;
        padding-top: 2.375rem
    }

    .home-screen__desc {
        margin-left: var(--wrap-1)
    }

    .home-info__header.larger {
        font-size: 4.5rem
    }

    .home-info__header.larger.large {
        font-size: 9rem
    }

    .home-info__header:not(.larger) {
        font-size: 3.375rem;
        width: 87.5%
    }

    .home-info__container {
        margin-top: 10.625rem
    }

    .home-info__button {
        width: 50%;
        padding-left: calc(var(--wrap)*2)
    }

    .home-info__content {
        width: 50%;
        padding-bottom: 3.75rem
    }

    .home-services__list {
        grid-gap: .625rem;
        margin-left: -.25rem;
        font-size: 6rem
    }

    .home-services__portfolio {
        height: 15rem
    }

    .home-awards__marquee {
        padding: 6.25rem 0
    }

    .home-awards__header {
        font-size: 3.375rem;
        width: 87.5%
    }

    .home-awards__container {
        margin-top: 5.625rem
    }

    .home-awards__button {
        width: 50%;
        padding-left: calc(var(--wrap)*2)
    }

    .home-awards__content {
        width: 50%
    }

    .home-awards__list {
        margin-top: 5.625rem
    }

    .project-previews-grid .project-preview__name {
        font-size: 2.25rem
    }

    .home-last-works__header {
        font-size: 9.875rem
    }

    .home-last-works__more {
        margin-top: 6.875rem
    }

    .home-page__services {
        margin-top: 13.75rem
    }

    .home-page__services .home-info {
        margin-top: 16.25rem
    }

    .home-page__portfolio {
        margin-top: 13.125rem
    }

    .home-page__awards {
        margin-top: 5rem
    }

    .home-page .contact-us-screen {
        margin-top: 8.75rem
    }

    .statistics {
        grid-gap: 3.75rem
    }

    .statistics__num {
        font-size: 4.5rem
    }

    .about-info__buttons hr,
    .about-info__stats {
        width: 50%;
        justify-self: flex-end
    }

    .clients-table {
        grid-template-columns: repeat(5, 1fr)
    }

    .clients-table__item {
        display: none
    }

    .clients-table__item:first-child,
    .clients-table__item:nth-child(2),
    .clients-table__item:nth-child(3),
    .clients-table__item:nth-child(4),
    .clients-table__item:nth-child(5),
    .clients-table__item:nth-child(6),
    .clients-table__item:nth-child(7),
    .clients-table__item:nth-child(8),
    .clients-table__item:nth-child(9),
    .clients-table__item:nth-child(10),
    .clients-table__item:nth-child(11),
    .clients-table__item:nth-child(12),
    .clients-table__item:nth-child(13),
    .clients-table__item:nth-child(14),
    .clients-table__item:nth-child(15) {
        display: block
    }

    .clients-list__button {
        margin-top: -3.125rem
    }

    .team-marquee-screen {
        padding: 22.5rem 0
    }

    .team-persons-scroll .team-person {
        max-width: 550px;
        width: 29.3vw
    }

    .team-person__name {
        font-size: 1.5rem
    }

    .team-person__info {
        font-size: 1rem
    }

    .team-offer__header {
        font-size: 2.25rem
    }

    .team-offer__ico {
        width: 40px
    }

    .team-offer__button,
    .team-offer__ico {
        margin-top: 1.875rem
    }

    .about-page__love .about-info {
        margin-top: -3.25rem
    }

    .about-page__team .scroll-list {
        margin-top: -13.75rem
    }

    .about-page__team .team-offer {
        margin-top: 6.25rem
    }

    .services-item__desc,
    .services-item__header {
        font-size: 1.875rem
    }

    .services-item__list {
        grid-column-gap: 5rem
    }

    .services-item__pricing {
        padding-top: 1.875rem
    }

    .services-items .services-item {
        padding: 5rem 0
    }

    .services-process {
        grid-gap: 2.25rem
    }

    .services-processes {
        grid-gap: 6.25rem
    }

    .services-page__services {
        margin-top: 11.25rem
    }

    .portfolio-page__projects {
        margin-top: 3.75rem
    }

    .portfolio-page .contact-us-screen {
        margin-top: 7.5rem
    }

    .project-link {
        margin-left: calc(var(--size)/-2)
    }

    .project-intro__date,
    .project-intro__pretitle {
        font-size: 3.375rem
    }

    .project-image-scene__header,
    project-image-scene__header {
        font-size: 4.5rem
    }

    .project-image-scene__header.large,
    project-image-scene__header.large {
        font-size: 9rem
    }

    .project-image-scene__subheader,
    project-image-scene__subheader {
        bottom: 3.125rem;
        font-size: 5rem
    }

    .next-project-screen {
        height: 79vh;
        min-height: 640px
    }

    .project-desc {
        padding: 5rem 0
    }

    .project-desc__header {
        font-size: 1.875rem
    }

    .project-page__desc {
        margin-top: 5rem
    }

    .project-page .project-features {
        width: 50%
    }

    .project-page .media-previews {
        margin-top: 5rem
    }

    .project-page .next-project-screen {
        margin-top: 2.5rem
    }

    .contacts-page__wrap>:first-child {
        padding-bottom: 5.625rem
    }

    .contacts-page__form {
        margin-top: 3.75rem
    }

    .error-screen__header {
        font-size: 4.5rem
    }
}

@media (min-width:900px) and (max-width:1199px) {
    html {
        --wrap: 2.5rem;
        --wrap-1: 10rem
    }

    .header__menu ul li+li {
        margin-left: 1.25rem
    }

    .header__languages {
        margin-left: 40px
    }

    .minifooter {
        padding-bottom: 3.125rem
    }

    .v-preloader__progress,
    html:before {
        height: 5px
    }

    .mail-button {
        --size: 8.75rem
    }

    .mail-button i {
        --size: 28px
    }

    .readmore-button {
        --size: 8.125rem
    }

    .readmore-button__ico img,
    .readmore-button__ico svg {
        height: 36px
    }

    .readmore-button.angle-t-45 {
        transform: rotate(45deg)
    }

    .readmore-button.angle-t-180 {
        transform: rotate(180deg)
    }

    .circle-button {
        --size: 11.25rem
    }

    .close-circle-button {
        width: 60px;
        height: 60px
    }

    .close-circle-button i:before {
        --width: 24px
    }

    .close-circle-button i:after {
        --height: 24px
    }

    .back-button {
        width: 48px;
        height: 48px
    }

    .h1,
    h1 {
        font-size: 3.375rem
    }

    .h1.large,
    h1.large {
        font-size: 6rem
    }

    .h2,
    .h3,
    h2,
    h3 {
        font-size: 2.625rem
    }

    .h4,
    h4 {
        font-size: 1.875rem
    }

    .h5,
    h5 {
        font-size: 1.6875rem
    }

    .marquee-header,
    marquee-header {
        font-size: 3.625rem
    }

    .marquee-header.large,
    marquee-header.large {
        font-size: 6rem
    }

    html {
        --content-padding-top: 10rem
    }

    .page-desc>*+* {
        margin-top: 4rem
    }

    .page-desc__content {
        max-width: 75%
    }

    .info-content {
        grid-gap: 5.625rem
    }

    .info-content__header {
        font-size: 2.625rem;
        text-indent: 7.5rem
    }

    .info-content__desc {
        width: 65%;
        justify-self: flex-end
    }

    .contact-us-screen__scene {
        top: 15%;
        left: 25%;
        width: 50%;
        height: 70%
    }

    .marquee-screen {
        padding: 8.125rem 0
    }

    .popup-outer__wrap {
        padding: 3.125rem var(--wrap-1) 5rem
    }

    .popup-outer__header {
        font-family: HelveticaNeueCyr;
        font-weight: 400;
        line-height: 100%
    }

    .popup-outer__form {
        margin-top: 3.125rem
    }

    .media-previews {
        grid-gap: 5rem
    }

    .tablet-hide {
        display: none !important
    }

    .vjs-adcd-theme .vjs-big-play-button {
        width: 100px;
        height: 100px;
        margin-top: -50px;
        margin-left: -50px
    }

    .vjs-adcd-theme .vjs-big-play-button:after {
        margin: 0 0 0 3px;
        background-size: 16px auto
    }

    .showreel-video__marquee {
        --width: 232px
    }

    .form-input textarea {
        padding-top: 22px;
        padding-bottom: 22px;
        height: 210px
    }

    .form-grid {
        grid-gap: 1.875rem
    }

    .success-message {
        grid-gap: 3.125rem
    }

    .success-message__header {
        font-size: 3.375rem
    }

    .success-message__header.large {
        font-size: 6rem
    }

    .stop-war-popup__wrapper {
        padding: 1.875rem
    }

    .stop-war-popup__wrapper>*+* {
        margin-top: 1.5rem
    }

    .stop-war-popup__header {
        font-size: 1.25rem;
        line-height: 2.25rem
    }

    .stop-war-popup__desc {
        font-size: .875rem;
        line-height: 150%
    }

    .stop-war-popup__subheader {
        font-size: 1.3125rem
    }

    .home-screen__content {
        min-height: 500px;
        padding-top: 2.375rem;
        padding-bottom: 3.75rem;
        width: 62vw
    }

    .home-screen__desc {
        margin-left: var(--wrap-1);
        width: 38vw
    }

    .home-info__header.larger {
        font-size: 3.375rem
    }

    .home-info__header.larger.large {
        font-size: 6rem
    }

    .home-info__header:not(.larger) {
        font-size: 2.625rem;
        width: 95%
    }

    .home-info__container {
        margin-top: 7.5rem
    }

    .home-info__button {
        width: 40%
    }

    .home-info__content {
        width: 60%;
        padding-bottom: 2.5rem
    }

    .home-services__list {
        grid-gap: .75rem;
        font-size: 4rem
    }

    .home-services__portfolio {
        height: 12.5rem
    }

    .home-awards__marquee {
        padding: 5.625rem 0
    }

    .home-awards__header {
        font-size: 2.625rem;
        width: 95%
    }

    .home-awards__container {
        margin-top: 5.25rem
    }

    .home-awards__button {
        width: 40%
    }

    .home-awards__content {
        width: 60%
    }

    .home-awards__list {
        margin-top: 5.25rem
    }

    .project-previews-grid .project-preview__name {
        font-size: 1.875rem
    }

    .home-last-works {
        --wrap: 5rem
    }

    .home-last-works__header {
        font-size: 6.625rem
    }

    .home-last-works__more {
        margin-top: 5.25rem
    }

    .home-page__services {
        margin-top: 9.375rem
    }

    .home-page__services .home-info {
        margin-top: 10rem
    }

    .home-page__portfolio {
        margin-top: 8.75rem
    }

    .home-page__awards {
        margin-top: 3.125rem
    }

    .home-page .contact-us-screen {
        margin-top: 5rem
    }

    .statistics__num {
        font-size: 3.75rem
    }

    .about-info__buttons hr,
    .about-info__stats {
        width: 65%;
        justify-self: flex-end
    }

    .clients-table {
        grid-template-columns: repeat(4, 1fr)
    }

    .clients-table__item {
        display: none
    }

    .clients-table__item:first-child,
    .clients-table__item:nth-child(2),
    .clients-table__item:nth-child(3),
    .clients-table__item:nth-child(4),
    .clients-table__item:nth-child(5),
    .clients-table__item:nth-child(6),
    .clients-table__item:nth-child(7),
    .clients-table__item:nth-child(8),
    .clients-table__item:nth-child(9),
    .clients-table__item:nth-child(10),
    .clients-table__item:nth-child(11),
    .clients-table__item:nth-child(12) {
        display: block
    }

    .clients-list__button {
        margin-top: -2.5rem
    }

    .team-marquee-screen {
        padding: 15.625rem 0
    }

    .team-persons-scroll .team-person {
        width: 30vw;
        min-width: 320px
    }

    .team-person__name {
        font-size: 1.25rem
    }

    .team-person__info {
        font-size: .9375rem
    }

    .team-offer__header {
        font-size: 1.875rem
    }

    .team-offer__ico {
        margin-top: 1.25rem;
        width: 36px
    }

    .team-offer__button {
        margin-top: 1.5rem
    }

    .about-page__team .scroll-list {
        margin-top: -8.75rem
    }

    .about-page__team .team-offer {
        margin-top: 5.625rem
    }

    .services-item__header {
        font-size: 1.6875rem
    }

    .services-item__desc {
        font-size: 1.5rem
    }

    .services-item__list {
        grid-column-gap: 3.75rem
    }

    .services-item__pricing {
        padding-top: 2.25rem
    }

    .services-items .services-item {
        padding: 3.75rem 0
    }

    .waterfall-screen__text {
        font-size: 10rem
    }

    .services-process {
        grid-gap: 1.5rem
    }

    .services-processes {
        grid-gap: 5.625rem
    }

    .services-page__services {
        margin-top: 8.125rem
    }

    .portfolio-page__projects {
        margin-top: 3.125rem
    }

    .portfolio-page .contact-us-screen {
        margin-top: 6.25rem
    }

    .project-link {
        --size: 8.75rem;
        margin-left: calc(var(--size)/-2)
    }

    .project-link.fixed {
        bottom: 14.8vh
    }

    .project-intro__date,
    .project-intro__pretitle {
        font-size: 2.625rem
    }

    .project-image-scene__header,
    project-image-scene__header {
        font-size: 3.375rem
    }

    .project-image-scene__header.large,
    project-image-scene__header.large {
        font-size: 6rem
    }

    .project-image-scene__subheader,
    project-image-scene__subheader {
        bottom: 2.75rem;
        font-size: 3.625rem
    }

    .next-project-screen {
        height: 85vh
    }

    .project-desc {
        padding: 3.75rem 0
    }

    .project-desc__header {
        font-size: 1.6875rem
    }

    .project-page__desc {
        margin-top: 3.75rem
    }

    .project-page .project-features {
        width: 50%
    }

    .project-page .media-previews {
        margin-top: 3.75rem
    }

    .contacts-page__wrap>:first-child {
        padding-bottom: 5.625rem
    }

    .contacts-page__form {
        margin-top: 3.125rem
    }

    .error-screen__header {
        font-size: 3.375rem
    }
}

@media (max-width:899px) {
    html {
        --wrap: 1.25rem;
        --wrap-1: 1.25rem;
        --header-height: 5.125rem
    }

    .footer__wrap>*+* {
        margin-top: 2.5rem
    }

    .minifooter {
        padding-bottom: 2.5rem
    }

    .minifooter__wrap {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 2.5rem
    }

    .minifooter__social ul {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: .625rem
    }

    .v-preloader__progress,
    html:before {
        height: 3px
    }

    .mail-button {
        --size: 7.5rem
    }

    .mail-button i {
        --size: 24px
    }

    .readmore-button {
        --size: 5rem
    }

    .readmore-button__ico img,
    .readmore-button__ico svg {
        height: 30px
    }

    .readmore-button.angle-m-45 {
        transform: rotate(45deg)
    }

    .readmore-button.angle-m-180 {
        transform: rotate(180deg)
    }

    .circle-button {
        --size: 11.25rem
    }

    .close-circle-button {
        width: 2.625rem;
        height: 2.625rem
    }

    .close-circle-button:before {
        background-color: var(--color-white)
    }

    .close-circle-button i:after,
    .close-circle-button i:before {
        background-color: var(--color-black)
    }

    .close-circle-button i:before {
        --width: 16px
    }

    .close-circle-button i:after {
        --height: 16px
    }

    .back-button {
        width: 2.625rem;
        height: 2.625rem
    }

    .back-button i:after,
    .back-button i:before {
        background-size: 16px
    }

    .h2,
    .h3,
    h2,
    h3 {
        font-size: 1.875rem
    }

    .h4,
    .h5,
    h4,
    h5 {
        font-size: 1.5rem
    }

    .marquee-header,
    marquee-header {
        font-size: 2.25rem
    }

    .marquee-header.large,
    marquee-header.large {
        font-size: 3rem
    }

    html {
        --content-padding-top: 6.875rem
    }

    .page-desc>*+* {
        margin-top: 3.125rem
    }

    .page-desc__content {
        max-width: 600px
    }

    .info-content {
        grid-gap: 5rem
    }

    .info-content__header {
        font-size: 1.875rem
    }

    .info-content__desc {
        max-width: 600px
    }

    .awwwards-badge {
        display: none
    }

    .contact-us-screen__scene {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        max-width: 600px;
        max-height: 500px
    }

    .marquee-screen {
        padding: 6.25rem 0
    }

    .popup-outer__close {
        position: absolute;
        top: var(--wrap);
        left: var(--wrap)
    }

    .popup-outer__wrap {
        padding: 6.875rem var(--wrap-1) 3.75rem
    }

    .popup-outer__header {
        font-family: HelveticaNeueCyr;
        font-weight: 400;
        line-height: 100%
    }

    .popup-outer__form {
        margin-top: 2.5rem
    }

    .media-previews {
        grid-gap: 2.5rem
    }

    .play-video-button {
        font-size: .875rem;
        line-height: 1rem;
        width: 6.25rem;
        height: 6.25rem
    }

    .mobile-hide {
        display: none !important
    }

    .vjs-adcd-theme .vjs-control-bar {
        height: 64px;
        padding: 10px 10px 0
    }

    .vjs-adcd-theme .vjs-current-time,
    .vjs-adcd-theme .vjs-duration {
        bottom: calc(100% + 9px)
    }

    .vjs-adcd-theme .vjs-current-time {
        left: 10px
    }

    .vjs-adcd-theme .vjs-duration {
        right: 10px
    }

    .vjs-adcd-theme .vjs-progress-control {
        left: 10px;
        width: calc(100% - 20px)
    }

    .vjs-adcd-theme .vjs-big-play-button {
        width: 70px;
        height: 70px;
        margin-top: -35px;
        margin-left: -35px
    }

    .vjs-adcd-theme .vjs-big-play-button:after {
        margin: 0 0 0 2px;
        background-size: 14px auto
    }

    .vjs-adcd-theme .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal .vjs-volume-level:after {
        display: none
    }

    .vjs-adcd-theme .vjs-fullscreen-control {
        right: 10px
    }

    .showreel-video__marquee {
        --width: 144px
    }

    .form-input textarea {
        padding-top: 18px;
        padding-bottom: 18px;
        height: 180px
    }

    .form-grid {
        grid-gap: 1.25rem
    }

    .form-file-loader {
        display: block;
        margin-bottom: 1.875rem
    }

    .form-file-loader__accept {
        position: absolute;
        top: 100%;
        left: 0;
        margin-top: .5rem
    }

    .success-message {
        grid-gap: 2.5rem
    }

    .stop-war-button {
        flex-direction: row-reverse;
        right: auto;
        left: var(--wrap)
    }

    .stop-war-button span {
        padding: 0 2.25rem 0 1.25rem
    }

    .stop-war-popup {
        right: auto;
        left: var(--wrap)
    }

    .stop-war-popup:after {
        left: 1.875rem;
        border-width: 6px 6px 0 0;
        border-color: #fff transparent transparent
    }

    .stop-war-popup__wrapper {
        padding: 1.875rem 1.25rem 1.25rem
    }

    .stop-war-popup__wrapper>*+* {
        margin-top: 1.25rem
    }

    .stop-war-popup__header {
        font-size: 1.5rem;
        line-height: 1.75rem
    }

    .stop-war-popup__desc {
        font-size: .8125rem;
        line-height: 140%
    }

    .stop-war-popup__subheader {
        font-size: 1.125rem
    }

    .home-screen__content {
        min-height: 380px;
        width: 100%;
        max-width: 600px;
        padding-left: var(--wrap)
    }

    .home-screen__content,
    .home-screen__header {
        padding-right: var(--wrap)
    }

    .home-info {
        padding-bottom: 5rem
    }

    .home-info:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor
    }

    .home-info__header:not(.larger) {
        font-size: 1.875rem
    }

    .home-info__container {
        margin-top: 5rem;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start
    }

    .home-info__button {
        margin-top: 3.75rem;
        order: 1
    }

    .home-info__content {
        width: 100%;
        order: 0
    }

    .home-info__desc {
        max-width: 600px
    }

    .home-services {
        padding-bottom: 5rem
    }

    .home-services:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor
    }

    .home-services__list {
        grid-gap: 1rem
    }

    .home-services__portfolio {
        height: 8.5rem
    }

    .home-awards__marquee {
        padding: 5rem 0
    }

    .home-awards__header {
        font-size: 1.875rem
    }

    .home-awards__container {
        margin-top: 5rem;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start
    }

    .home-awards__button {
        margin-top: 3.75rem;
        display: none;
        order: 1
    }

    .home-awards__content {
        width: 100%;
        order: 0
    }

    .home-awards__desc {
        max-width: 600px
    }

    .home-awards__list {
        margin-top: 5rem
    }

    .project-previews-grid {
        display: grid;
        grid-row-gap: 3.75rem;
        grid-column-gap: 1.875rem
    }

    .home-last-works {
        --wrap: 1.25rem;
        padding-bottom: 5rem
    }

    .home-last-works:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: var(--wrap);
        width: calc(100% - var(--wrap)*2);
        height: 1px;
        background-color: currentColor
    }

    .home-last-works__more {
        margin-top: 3.75rem
    }

    .home-page__portfolio,
    .home-page__services,
    .home-page__services .home-info {
        margin-top: 5rem
    }

    .statistics__num {
        font-size: 3rem
    }

    .about-info__buttons {
        grid-gap: 5rem
    }

    .about-info__button {
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    .clients-table {
        grid-template-columns: repeat(2, 1fr)
    }

    .clients-table__item {
        display: none
    }

    .clients-table__item:first-child,
    .clients-table__item:nth-child(2),
    .clients-table__item:nth-child(3),
    .clients-table__item:nth-child(4),
    .clients-table__item:nth-child(5),
    .clients-table__item:nth-child(6),
    .clients-table__item:nth-child(7),
    .clients-table__item:nth-child(8),
    .clients-table__item:nth-child(9),
    .clients-table__item:nth-child(10),
    .clients-table__item:nth-child(11),
    .clients-table__item:nth-child(12),
    .clients-table__item:nth-child(13),
    .clients-table__item:nth-child(14) {
        display: block
    }

    .clients-list__button {
        padding-top: 1.875rem
    }

    .team-marquee-screen {
        padding: 8.75rem 0
    }

    .team-persons-scroll .team-person {
        width: calc(100vw - var(--wrap)*3);
        max-width: 420px
    }

    .team-person__name {
        font-size: 1.125rem
    }

    .team-person__info {
        font-size: .875rem
    }

    .team-offer__header {
        font-size: 1.5rem
    }

    .team-offer__ico {
        margin-top: .625rem;
        width: 29px
    }

    .team-offer__button {
        margin-top: 1.25rem
    }

    .about-page__team .scroll-list {
        margin-top: -3.75rem
    }

    .about-page__team .team-offer {
        margin-top: 5rem
    }

    .services-item {
        grid-template-columns: 1fr;
        grid-gap: 2.5rem
    }

    .services-item__header {
        font-size: 1.5rem;
        padding-bottom: 2.5rem
    }

    .services-item__header:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor
    }

    .services-item__desc {
        font-size: 1.125rem
    }

    .services-item__list {
        grid-column-gap: 4.375rem;
        max-width: 500px
    }

    .services-items {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 5rem
    }

    .waterfall-screen__header {
        bottom: 60%
    }

    .waterfall-screen__text {
        font-size: 4.5rem
    }

    .services-process {
        grid-gap: .875rem
    }

    .services-process__container {
        grid-template-columns: 1fr;
        grid-gap: 1.875rem
    }

    .services-processes {
        grid-gap: 5rem
    }

    .services-page__services {
        margin-top: 5rem
    }

    .services-page__info {
        margin-top: 6.25rem
    }

    .services-page__info .info-content {
        margin-top: 1.75rem
    }

    .project-previews-ladder-grid {
        grid-row-gap: 3.75rem;
        grid-column-gap: 1.875rem
    }

    .portfolio-page__projects {
        margin-top: 2.5rem
    }

    .portfolio-page .contact-us-screen {
        margin-top: 5rem
    }

    .project-link {
        --size: 6.25rem
    }

    .project-link.fixed {
        bottom: 12vh
    }

    .project-link a {
        font-size: .875rem;
        line-height: 1rem
    }

    .project-intro__date,
    .project-intro__pretitle {
        font-size: 1.875rem
    }

    .project-intro__date {
        align-self: flex-end;
        margin-right: var(--wrap)
    }

    .project-intro .project-link {
        position: absolute;
        left: var(--wrap);
        bottom: 12vh
    }

    .project-image-scene__subheader,
    project-image-scene__subheader {
        bottom: 2.5rem;
        font-size: 2.25rem
    }

    .next-project-screen {
        height: 128vw;
        max-height: 500px
    }

    .project-desc {
        grid-template-columns: 1fr;
        grid-gap: .875rem;
        padding: 2.5rem 0
    }

    .project-desc__header {
        font-size: 1.5rem
    }

    .project-desc__header:empty {
        display: none
    }

    .project-page__desc {
        margin-top: 2.5rem
    }

    .project-page .project-features {
        width: 100%
    }

    .project-page .media-previews {
        margin-top: 2.5rem
    }

    .contacts-page__wrap>:first-child {
        padding-bottom: 3.75rem
    }

    .contacts-page__form {
        margin-top: 2.5rem
    }

    .error-screen {
        padding-top: 2rem;
        padding-bottom: 3.75rem
    }

    html.v-page_error-page .header {
        display: none
    }
}

@media (min-width:1200px) and (max-width:1439px) {
    html {
        --wrap: 4vw;
        --wrap-1: 16.6vw
    }

    .header__menu ul li+li {
        margin-left: 1.75rem
    }

    .home-screen__content {
        width: 54.3vw
    }

    .home-screen__desc {
        width: 29.1vw
    }

    .home-last-works {
        --wrap: 8.3vw
    }

    .waterfall-screen__text {
        font-size: 13.75rem
    }
}

@media (min-width:1200px) and (min-width:1440px) and (max-width:1920px) {
    html {
        --wrap: 60px;
        --wrap-1: calc(50vw - 480px)
    }

    .home-screen__content {
        width: 782px
    }

    .home-screen__desc {
        width: 420px
    }

    .home-last-works {
        --wrap: calc(50vw - 600px)
    }
}

@media (min-width:1200px) and (min-width:1921px) {
    html {
        --wrap: 4vw;
        --wrap-1: 18.75vw
    }

    .home-screen__content {
        width: 40.7vw
    }

    .home-screen__desc {
        width: 21.8vw
    }

    .home-last-works {
        --wrap: 18.75vw
    }
}

@media (min-width:1440px) {
    .v-cursor {
        width: 120px;
        height: 120px
    }
}

@media (max-width:1439px) {
    .v-cursor {
        width: 100px;
        height: 100px
    }
}

@media (min-width:900px) {
    html {
        --header-height: 6.75rem
    }

    .footer__wrap {
        align-items: flex-start
    }

    .footer__wrap,
    .minifooter__wrap {
        display: flex;
        flex-direction: row;
        justify-content: space-around
    }

    .minifooter__wrap {
        align-items: center
    }

    .minifooter__social ul {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    .minifooter__social ul li {
        margin: 0 .875rem
    }

    .close-circle-button:before {
        border: 1px solid var(--color-white)
    }

    .close-circle-button i:after,
    .close-circle-button i:before {
        background-color: var(--color-white)
    }

    .back-button i:after,
    .back-button i:before {
        background-size: 18px
    }

    .burger-button {
        width: 3.25rem;
        height: 3.25rem
    }

    .popup-menu__links a {
        font-size: 3.375rem;
        line-height: 3.875rem
    }

    .page-desc.has-min-height {
        min-height: calc(var(--vh)*100 - var(--content-padding-top))
    }

    .contact-us-screen {
        height: calc(var(--vh)*100)
    }

    .popup-outer__close {
        position: fixed;
        top: 3.75rem;
        left: var(--wrap)
    }

    .play-video-button {
        font-size: 1rem;
        line-height: 1.125rem;
        width: 7.5rem;
        height: 7.5rem
    }

    .vjs-adcd-theme .vjs-control-bar {
        height: 70px;
        padding: 10px 20px 0
    }

    .vjs-adcd-theme .vjs-progress-control {
        left: 20px;
        width: calc(100% - 40px)
    }

    .vjs-adcd-theme .vjs-fullscreen-control {
        right: 20px
    }

    .form-double-input {
        grid-template-columns: 1fr 1fr
    }

    .form-grid__buttons {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between
    }

    .form-file-loader {
        width: 21.25rem;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    html[lang=ru] .form-file-loader,
    html[lang=ua] .form-file-loader,
    html[lang=uk] .form-file-loader {
        width: 24.25rem
    }

    .stop-war-popup:after {
        right: 1.875rem;
        border-color: transparent #fff transparent transparent;
        border-width: 0 6px 6px 0
    }

    .home-screen__header {
        margin-left: var(--wrap)
    }

    .home-info__container {
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }

    .home-info__content:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor
    }

    .home-awards__container {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between
    }

    .project-previews-grid {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }

    .project-previews-grid .project-preview {
        width: 45%
    }

    .project-previews-grid .project-preview:nth-child(4n+2),
    .project-previews-grid .project-preview:nth-child(4n+4) {
        align-self: flex-start
    }

    .project-previews-grid .project-preview:nth-child(4n+3) {
        align-self: flex-end
    }

    .project-previews-grid_0+.home-last-works__more {
        padding-left: calc(27.5vw + var(--wrap)*2*0.45/2)
    }

    .project-previews-grid_2+.home-last-works__more {
        padding-left: calc(55vw + var(--wrap)*2*0.45 - var(--wrap))
    }

    .home-page .header__logo {
        visibility: hidden
    }

    .love-screen {
        height: calc(var(--vh)*100);
        min-height: 350px
    }

    .statistics__desc {
        font-size: 1.125rem
    }

    .about-info__button {
        position: absolute;
        left: 0;
        transform: translateY(-50%)
    }

    .clients-table__item {
        font-size: 1.125rem
    }

    .awards-screen {
        height: calc(var(--vh)*100);
        min-height: 350px
    }

    .team-person__info {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between
    }

    .services-item {
        grid-template-columns: 1fr 1fr
    }

    .services-item__header {
        padding-right: 1.25rem
    }

    .services-item__pricing {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }

    .services-items .services-item:before {
        top: 0
    }

    .services-items .services-item:before,
    .services-items .services-item:last-child:after {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor
    }

    .services-items .services-item:last-child:after {
        bottom: 0
    }

    .waterfall-screen {
        height: 56.25vw;
        min-height: 350px
    }

    .waterfall-screen__scene {
        top: 0;
        left: 20%;
        width: 60%;
        height: 100%
    }

    .waterfall-screen__header {
        bottom: 60%
    }

    .services-process__container {
        grid-template-columns: 1fr 1fr
    }

    .services-process__header {
        padding-right: 1.25rem
    }

    .services-processes .services-process:last-child:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor
    }

    .services-page__info {
        margin-top: -5rem
    }

    .services-page__info .info-content {
        margin-top: -7vw
    }

    .project-previews-ladder-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: 1.875rem;
        grid-auto-rows: auto
    }

    .project-previews-ladder-grid>:nth-child(8n+1) .project-preview__image,
    .project-previews-ladder-grid>:nth-child(8n+5) .project-preview__image {
        padding-top: 114.2%
    }

    .project-previews-ladder-grid>:nth-child(8n+2) .project-preview__image,
    .project-previews-ladder-grid>:nth-child(8n+3) .project-preview__image,
    .project-previews-ladder-grid>:nth-child(8n+4) .project-preview__image,
    .project-previews-ladder-grid>:nth-child(8n+6) .project-preview__image,
    .project-previews-ladder-grid>:nth-child(8n+7) .project-preview__image,
    .project-previews-ladder-grid>:nth-child(8n+8) .project-preview__image {
        padding-top: 140%
    }

    .project-link a {
        font-size: 1rem;
        line-height: 1.125rem
    }

    .project-intro {
        min-height: calc(var(--vh)*100)
    }

    .project-intro__date {
        padding-left: 50vw
    }

    .project-desc {
        grid-template-columns: 1fr 1fr
    }

    .error-screen {
        padding-top: 2.75rem;
        padding-bottom: 3.75rem
    }

    .error-screen__header {
        width: 60vw
    }

    html.v-page_error-page .header__logo {
        visibility: hidden
    }
}

@media (max-width:1199px) {

    .header__nav,
    .layout-scroll-down {
        display: none
    }

    .media-preview-outer__header {
        font-family: HelveticaNeueCyr;
        font-weight: 400;
        line-height: 100%
    }

    .layout-like-button {
        display: none
    }

    .like-button.circle .like-button__count {
        left: calc(100% + 17px);
        top: 50%;
        transform: translate(10%);
        margin-top: calc(var(--size)/-2)
    }

    .like-button.circle .like-button__count:before {
        left: -4px;
        top: calc(50% - 6px)
    }

    .statistics {
        grid-column-gap: calc(var(--wrap)*1);
        grid-row-gap: 3.125rem
    }

    .dg.ac {
        display: none !important
    }
}

@media (min-width:1200px) and (min-width:1440px) {
    .header__menu ul li+li {
        margin-left: 2.25rem
    }

    .waterfall-screen__text {
        font-size: 15.625rem
    }
}

@media (min-width:1200px) and (min-height:700px) {
    .contact-us-screen+.clamp-footer {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%
    }
}

@media (min-width:1200px) and (max-height:699px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-20)
    }
}

@media (min-width:900px) and (max-width:1199px) and (min-height:660px) {
    .contact-us-screen+.clamp-footer {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%
    }
}

@media (min-width:900px) and (max-width:1199px) and (max-height:659px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-20)
    }
}

@media (min-width:900px) and (max-width:1199px) and (max-height:500px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-10)
    }
}

@media (max-width:899px) and (min-height:750px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-15)
    }

    .home-screen__content {
        padding-top: 6.875rem;
        padding-bottom: 3.625rem
    }
}

@media (max-width:899px) and (min-height:700px) and (max-height:749px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-20)
    }
}

@media (max-width:899px) and (min-height:620px) and (max-height:699px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-20)
    }
}

@media (max-width:899px) and (max-height:619px) {
    .contact-us-screen+.clamp-footer {
        margin-top: calc(var(--vh)*-22)
    }
}

@media (max-width:899px) and (min-width:350px) {

    .h1,
    h1 {
        font-size: 2.25rem
    }

    .h1.large,
    h1.large {
        font-size: 3rem
    }

    .burger-button {
        width: 2.625rem;
        height: 2.625rem
    }

    .success-message__header {
        font-size: 2.25rem
    }

    .success-message__header.large {
        font-size: 3rem
    }

    .home-info__header.larger {
        font-size: 2.25rem
    }

    .home-info__header.larger.large {
        font-size: 3rem
    }

    .home-services__list {
        font-size: 2.75rem
    }

    .home-last-works__header {
        font-size: 3.375rem
    }

    .clients-table__item,
    .statistics__desc {
        font-size: 1.125rem
    }

    .team-person__info {
        align-items: flex-start
    }

    .services-item__pricing,
    .team-person__info {
        display: flex;
        flex-direction: row;
        justify-content: space-between
    }

    .services-item__pricing {
        padding-top: 2.5rem;
        align-items: center
    }

    .project-image-scene__header,
    project-image-scene__header {
        font-size: 2.25rem
    }

    .project-image-scene__header.large,
    project-image-scene__header.large {
        font-size: 3rem
    }
}

@media (max-width:899px) and (max-width:349px) {

    .h1,
    h1 {
        font-size: 2rem
    }

    .h1.large,
    h1.large {
        font-size: 2.5rem
    }

    .burger-button {
        width: 42px;
        height: 42px
    }

    .popup-menu__links a {
        font-size: 3rem;
        line-height: 3.375rem
    }

    .success-message__header {
        font-size: 2rem
    }

    .success-message__header.large {
        font-size: 2.5rem
    }

    .home-info__header.larger {
        font-size: 2rem
    }

    .home-info__header.larger.large,
    .home-services__list {
        font-size: 2.5rem
    }

    .home-last-works__header {
        font-size: 2.75rem
    }

    .statistics__desc {
        font-size: 1rem
    }

    .clients-table__item {
        font-size: .9375rem
    }

    .services-item__list {
        grid-template-columns: 1fr
    }

    .services-item__pricing {
        padding-top: 1.25rem;
        display: grid;
        grid-gap: .625rem;
        font-size: 1.25rem
    }

    .project-image-scene__header,
    project-image-scene__header {
        font-size: 2rem
    }

    .project-image-scene__header.large,
    project-image-scene__header.large {
        font-size: 2.5rem
    }

    .error-screen__header {
        font-size: 1.875rem
    }
}

@media (max-width:899px) and (min-width:350px) and (min-height:750px) {
    .popup-menu__links a {
        font-size: 3.375rem;
        line-height: 3.875rem
    }
}

@media (max-width:899px) and (min-width:350px) and (min-height:701px) and (max-height:749px) {
    .popup-menu__links a {
        font-size: 3rem;
        line-height: 3.375rem
    }
}

@media (max-width:899px) and (min-width:350px) and (max-height:700px) {
    .popup-menu__links a {
        font-size: 2.625rem;
        line-height: 3.125rem
    }
}

@media (min-width:1200px) and (max-width:1440px) {
    .popup-menu__link sup {
        font-size: 12px
    }
}

@media (min-width:1200px) and (max-height:674px) {
    html {
        --content-padding-top: 10rem
    }
}

@media (min-width:1200px) and (min-height:675px) {
    html {
        --content-padding-top: 24vh
    }
}

@media (max-width:899px) and (orientation:portrait) {
    .contact-us-screen {
        height: 160vw;
        max-height: 700px
    }

    .home-page__about {
        margin-top: calc(var(--vh)*-35)
    }

    .awards-screen,
    .love-screen {
        height: 100vw;
        max-height: 500px
    }

    .waterfall-screen {
        height: 80vw
    }
}

@media (max-width:899px) and (orientation:landscape) {
    .contact-us-screen {
        margin-top: 5rem;
        height: 50vw;
        max-height: 600px;
        min-height: 375px
    }

    .home-screen {
        min-height: calc(var(--vh)*350)
    }

    .awards-screen,
    .love-screen {
        height: 50vw;
        min-height: 320px;
        max-height: 500px
    }

    .waterfall-screen {
        height: 80vw;
        min-height: 320px;
        max-height: 500px
    }

    .waterfall-screen__scene {
        top: 0;
        left: 20%;
        width: 60%;
        height: 100%
    }
}

@media (min-width:1200px) and (min-width:1200px) {
    .popup-outer__header {
        font-size: 3rem
    }

    .media-preview-outer__header {
        font-size: 4.5rem
    }

    .media-preview-outer__header.large {
        font-size: 9rem
    }
}

@media (min-width:1200px) and (min-width:900px) and (max-width:1199px) {
    .popup-outer__header {
        font-size: 2.625rem
    }

    .media-preview-outer__header {
        font-size: 3.375rem
    }

    .media-preview-outer__header.large {
        font-size: 6rem
    }
}

@media (min-width:1200px) and (max-width:899px) {
    .popup-outer__header {
        font-size: 1.875rem
    }
}

@media (min-width:900px) and (max-width:1199px) and (min-width:1200px) {
    .popup-outer__header {
        font-size: 3.375rem
    }
}

@media (min-width:900px) and (max-width:1199px) and (min-width:900px) and (max-width:1199px) {
    .popup-outer__header {
        font-size: 2.625rem
    }
}

@media (min-width:900px) and (max-width:1199px) and (max-width:899px) {
    .popup-outer__header {
        font-size: 1.875rem
    }
}

@media (max-width:899px) and (min-width:1200px) {
    .popup-outer__header {
        font-size: 4.5rem
    }

    .popup-outer__header.large {
        font-size: 9rem
    }
}

@media (max-width:899px) and (min-width:900px) and (max-width:1199px) {
    .popup-outer__header {
        font-size: 3.375rem
    }

    .popup-outer__header.large {
        font-size: 6rem
    }
}

@media (max-width:899px) and (max-width:899px) and (min-width:350px) {
    .popup-outer__header {
        font-size: 2.25rem
    }

    .popup-outer__header.large {
        font-size: 3rem
    }
}

@media (max-width:899px) and (max-width:899px) and (max-width:349px) {
    .popup-outer__header {
        font-size: 2rem
    }

    .popup-outer__header.large {
        font-size: 2.5rem
    }
}

@media (min-width:1200px) and (max-width:899px) and (min-width:350px) {
    .media-preview-outer__header {
        font-size: 2.25rem
    }

    .media-preview-outer__header.large {
        font-size: 3rem
    }
}

@media (min-width:1200px) and (max-width:899px) and (max-width:349px) {
    .media-preview-outer__header {
        font-size: 2rem
    }

    .media-preview-outer__header.large {
        font-size: 2.5rem
    }
}

@media (max-width:1199px) and (min-width:1200px) {
    .media-preview-outer__header {
        font-size: 3.375rem
    }
}

@media (max-width:1199px) and (min-width:900px) and (max-width:1199px) {
    .media-preview-outer__header {
        font-size: 2.625rem
    }
}

@media (max-width:1199px) and (max-width:899px) {
    .media-preview-outer__header {
        font-size: 1.875rem
    }
}

@media print {
    .video-js>:not(.vjs-tech):not(.vjs-poster) {
        visibility: hidden
    }
}

@media (max-width:899px) and (min-width:560px) {
    .form-double-input {
        grid-template-columns: 1fr 1fr
    }

    .form-grid__buttons {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between
    }

    .form-file-loader {
        width: 15rem
    }

    .project-previews-grid {
        grid-template-columns: 1fr 1fr
    }

    .filtered-content .filtered-content-head>:first-child,
    .filtered-content .filtered-content-item>:first-child {
        width: 15%
    }

    .filtered-content .filtered-content-head>:nth-child(2),
    .filtered-content .filtered-content-item>:nth-child(2) {
        width: 30%
    }

    .filtered-content .filtered-content-head>:nth-child(3),
    .filtered-content .filtered-content-item>:nth-child(3) {
        display: none
    }

    .filtered-content .filtered-content-head>:nth-child(4),
    .filtered-content .filtered-content-item>:nth-child(4) {
        width: 55%
    }

    .services-item__desc,
    .services-process__desc {
        width: 90%
    }

    .project-previews-ladder-grid {
        grid-template-columns: 1fr 1fr
    }

    .project-desc__desc {
        width: 90%
    }
}

@media (max-width:899px) and (max-width:559px) {
    .form-grid__buttons {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 1.25rem
    }

    .form-file-loader,
    .form-grid__buttons interactive-button,
    .form-grid__buttons interactive-button button {
        width: 100%
    }

    .project-previews-grid {
        grid-template-columns: 1fr
    }

    .filtered-content .filtered-content-head,
    .filtered-content .filtered-content-item {
        flex-wrap: wrap
    }

    .filtered-content .filtered-content-head>:first-child,
    .filtered-content .filtered-content-item>:first-child {
        width: 70px;
        order: 1
    }

    .filtered-content .filtered-content-head>:nth-child(2),
    .filtered-content .filtered-content-head>:nth-child(3),
    .filtered-content .filtered-content-item>:nth-child(2),
    .filtered-content .filtered-content-item>:nth-child(3) {
        display: none
    }

    .filtered-content .filtered-content-head>:nth-child(4),
    .filtered-content .filtered-content-item>:nth-child(4) {
        width: calc(100% - 70px);
        order: 2
    }

    .filtered-content .filtered-content-item>:nth-child(3) {
        display: block;
        order: 3;
        width: 100%;
        padding-left: 70px
    }

    .project-previews-ladder-grid {
        grid-template-columns: 1fr
    }
}

@media (min-width:1200px) and (min-height:780px) {
    .home-screen__content {
        padding-bottom: 6.5rem
    }

    .project-link {
        --size: 11.25rem
    }

    .project-link.fixed {
        bottom: 14.8vh
    }
}

@media (min-width:1200px) and (min-height:720px) and (max-height:779px) {
    .home-screen__content {
        padding-bottom: 5.5rem
    }
}

@media (min-width:1200px) and (min-height:680px) and (max-height:719px) {
    .home-screen__content {
        padding-bottom: 3.75rem
    }
}

@media (min-width:1200px) and (max-height:679px) {
    .home-screen__content {
        padding-bottom: 2.625rem
    }
}

@media (max-width:899px) and (min-height:701px) and (max-height:749px) {
    .home-screen__content {
        padding-top: 6.25rem;
        padding-bottom: 3rem
    }
}

@media (max-width:899px) and (max-height:700px) {
    .home-screen__content {
        padding-top: 5.625rem;
        padding-bottom: 2.375rem
    }
}

@media (min-width:900px) and (min-width:1200px) {

    .project-previews-grid .project-preview:nth-child(4n+1):not(:first-child),
    .project-previews-grid .project-preview:nth-child(4n+2) {
        margin-top: 6.875rem
    }

    .project-previews-grid .project-preview:nth-child(4n+3),
    .project-previews-grid .project-preview:nth-child(4n+4) {
        margin-top: -14.25rem
    }

    .services-processes .services-process:last-child {
        padding-bottom: 5.625rem
    }
}

@media (min-width:900px) and (min-width:900px) and (max-width:1199px) {

    .project-previews-grid .project-preview:nth-child(4n+1):not(:first-child),
    .project-previews-grid .project-preview:nth-child(4n+2) {
        margin-top: 5.625rem
    }

    .project-previews-grid .project-preview:nth-child(4n+3),
    .project-previews-grid .project-preview:nth-child(4n+4) {
        margin-top: -8.75rem
    }

    .services-processes .services-process:last-child {
        padding-bottom: 3.75rem
    }
}

@media (min-width:1200px) and (min-width:1400px) {
    .about-info__stats {
        padding-right: 3.75rem
    }
}

@media (min-width:1200px) and (min-height:78px) and (max-height:779px) {
    .project-link {
        --size: 10rem
    }

    .project-link.fixed {
        bottom: 11vh
    }
}

@media (min-width:1200px) and (min-height:78px) and (max-height:720px) {
    .project-link {
        --size: 8.75rem
    }

    .project-link.fixed {
        bottom: 10vh
    }
}

@media (max-width:899px) and (max-height:400px) {
    .project-intro {
        min-height: 400px
    }
}

@media (max-width:899px) and (min-height:401px) {
    .project-intro {
        min-height: calc(var(--vh)*100)
    }
}

@media (max-width:899px) and (min-width:350px) and (min-width:370px) {
    .error-screen__header {
        font-size: 2.25rem
    }
}

@media (max-width:899px) and (min-width:350px) and (max-width:369px) {
    .error-screen__header {
        font-size: 2rem
    }
}