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

.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;
    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 (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(/img/flags.png);
    background-repeat: no-repeat;
    background-color: #dbdbdb;
    background-position: 20px 0
}

.iti__flag.iti__np {
    background-color: transparent
}

.jslider .jslider-bg i, .jslider .jslider-pointer {
    background: url(../img/jslider.png) no-repeat 0 0
}

.jslider {
    display: block;
    width: 100%;
    height: 1em;
    position: relative;
    top: .6em;
    font-family: Arial, sans-serif
}

.jslider table {
    width: 100%;
    border-collapse: collapse;
    border: 0
}

.jslider td, .jslider th {
    padding: 0;
    vertical-align: top;
    text-align: left;
    border: 0
}

.jslider table, .jslider table tr, .jslider table tr td {
    width: 100%;
    vertical-align: top
}

.jslider .jslider-bg {
    position: relative
}

.jslider .jslider-bg i {
    height: 5px;
    position: absolute;
    font-size: 0;
    top: 0
}

.jslider .jslider-bg .l {
    width: 10%;
    background-position: 0 0;
    left: 0
}

.jslider .jslider-bg .f {
    width: 80%;
    left: 10%;
    background-repeat: repeat-x;
    background-position: 0 -20px
}

.jslider .jslider-bg .r {
    width: 10%;
    left: 90%;
    background-position: right 0
}

.jslider .jslider-bg .v {
    position: absolute;
    width: 60%;
    left: 20%;
    top: 0;
    height: 5px;
    background-repeat: repeat-x;
    background-position: 0 -40px
}

.jslider .jslider-pointer {
    width: 13px;
    height: 15px;
    background-position: 0 -60px;
    position: absolute;
    left: 20%;
    top: -4px;
    margin-left: -6px;
    cursor: pointer;
    cursor: hand
}

.jslider .jslider-pointer-hover {
    background-position: -20px -60px
}

.jslider .jslider-pointer-to {
    left: 80%
}

.jslider .jslider-label {
    font-size: 9px;
    line-height: 12px;
    color: #000;
    opacity: .4;
    white-space: nowrap;
    padding: 0 2px;
    position: absolute;
    top: -18px;
    left: 0
}

.jslider .jslider-label-to {
    left: auto;
    right: 0
}

.jslider .jslider-value {
    font-size: 9px;
    white-space: nowrap;
    padding: 1px 2px 0;
    position: absolute;
    top: -19px;
    left: 20%;
    background: #fff;
    line-height: 12px;
    border-radius: 2px
}

.jslider .jslider-value-to {
    left: 80%
}

.jslider .jslider-label small, .jslider .jslider-value small {
    position: relative;
    top: -.4em
}

.jslider .jslider-scale {
    position: relative;
    top: 9px
}

.jslider .jslider-scale span {
    position: absolute;
    height: 5px;
    border-left: 1px solid #999;
    font-size: 0
}

.jslider .jslider-scale ins {
    font-size: 9px;
    text-decoration: none;
    position: absolute;
    left: 0;
    top: 5px;
    color: #999
}

.jslider-limitless .jslider-label, .jslider-single .jslider-bg .v, .jslider-single .jslider-pointer-to, .jslider-single .jslider-value-to {
    display: none
}

@font-face {
    font-family: mardoto-regular;
    font-display: "auto";
    src: url(../fonts/Mardoto-Regular/Mardoto-Regular.eot?#iefix) format("embedded-opentype"), url(../fonts/Mardoto-Regular/Mardoto-Regular.woff) format("woff"), url(../fonts/Mardoto-Regular/Mardoto-Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: mardoto-bold;
    font-display: "auto";
    src: url(../fonts/Mardoto-Bold/Mardoto-Bold.eot?#iefix) format("embedded-opentype"), url(../fonts/Mardoto-Bold/Mardoto-Bold.woff) format("woff"), url(../fonts/Mardoto-Bold/Mardoto-Bold.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: mardoto-medium;
    font-display: "auto";
    src: url(../fonts/Mardoto-Medium/Mardoto-Medium.eot?#iefix) format("embedded-opentype"), url(../fonts/Mardoto-Medium/Mardoto-Medium.woff) format("woff"), url(../fonts/Mardoto-Medium/Mardoto-Medium.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: roboto-bold;
    font-display: "auto";
    src: url(../fonts/Roboto-Bold/Roboto-Bold.eot?#iefix) format("embedded-opentype"), url(../fonts/Roboto-Bold/Roboto-Bold.woff) format("woff"), url(../fonts/Roboto-Bold/Roboto-Bold.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: roboto-regular;
    font-display: "auto";
    src: url(../fonts/Roboto-Regular/Roboto-Regular.eot?#iefix) format("embedded-opentype"), url(../fonts/Roboto-Regular/Roboto-Regular.woff) format("woff"), url(../fonts/Roboto-Regular/Roboto-Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: roboto-medium;
    font-display: "auto";
    src: url(../fonts/Roboto-Medium/Roboto-Medium.eot?#iefix) format("embedded-opentype"), url(../fonts/Roboto-Medium/Roboto-Medium.woff) format("woff"), url(../fonts/Roboto-Medium/Roboto-Medium.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

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

.icon_play_btn:before {
    content: "\E920"
}

.icon_quotes:before {
    content: "\E90F"
}

.icon_right_arrow:before {
    content: "\E912"
}

.icon_left_arrow:before {
    content: "\E914"
}

.icon_zoom:before {
    content: "\E91F"
}

.icon_logo_small:before {
    content: "\E90E"
}

.icon_studio_one:before {
    content: "\E90D"
}

.icon_map:before {
    content: "\E903"
}

.icon_search:before {
    content: "\E905"
}

.icon_view_more:before {
    content: "\E909"
}

.icon_website:before {
    content: "\E90A"
}

.icon_arrow_right:before {
    content: "\E90B"
}

.icon_down_arrow:before {
    content: "\E90C"
}

.icon_menu_close:before {
    content: "\E900"
}

.icon_left:before {
    content: "\E901"
}

.icon_right:before {
    content: "\E902"
}

.icon_youtube:before {
    content: "\E904"
}

.icon_facebook:before {
    content: "\E906"
}

.icon_instagram:before {
    content: "\E907"
}

.icon_linkedin:before {
    content: "\E908"
}

.icon_pinterest:before {
    content: "\E910"
}

.icon_twitter:before {
    content: "\E911"
}

.icon_telegram:before {
    content: "\E913"
}

html {
    height: 100%;
    font-size: 10px;
    line-height: 1.4286em
}

body {
    margin: 0;
    padding: 0;
    border: none;
    font-size: 100%;
    color: #000;
    width: 100%;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    min-height: 100%;
    font-family: mardoto-regular, roboto-regular
}

.slick-slide, a, button, input, select, textarea {
    outline: none !important
}

a, a:focus, a:hover, button:hover {
    text-decoration: none
}

a {
    color: #fecd12
}

button {
    cursor: pointer;
    display: block
}

img {
    max-height: none;
    border: none
}

.row {
    margin-left: -15px;
    margin-right: -15px
}

[class*=col-] {
    padding-left: 15px;
    padding-right: 15px
}

.content {
    padding-top: 117px;
    overflow: hidden
}

.custom_container {
    width: 100%;
    max-width: 1270px;
    padding-left: 20px;
    padding-right: 20px;
    margin: 0 auto
}

.site_block {
    margin-top: 25px;
    background: #fff;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15);
    position: relative;
    padding: 35px
}

.site_block:after {
    content: "";
    left: 35px;
    right: 35px;
    position: absolute;
    bottom: 0;
    height: 6px;
    background: #fecd12
}

.phone_link:not(.clickable) {
    color: inherit;
    cursor: default;
    pointer-events: none
}

.site_btn {
    display: flex;
    position: relative;
    background: #fecd12;
    align-items: center;
    justify-content: center;
    width: 220px;
    height: 57px;
    font-size: 120%;
    line-height: 14px;
    letter-spacing: 2px;
    font-family: mardoto-medium, roboto-medium;
    border: none;
    color: #000 !important
}

.cursor_elem {
    width: 62px;
    height: 62px;
    position: fixed;
    pointer-events: none;
    opacity: 0;
    border-radius: 50%;
    z-index: 999;
    border: 2px solid #000;
    background: transparent
}

.site_list_block {
    margin-top: 30px;
    font-size: 160%;
    line-height: 24px;
    padding-left: 30px
}

.site_list_block ul {
    display: block
}

.site_list_block ul li {
    display: flex;
    align-items: center;
    margin-bottom: 12px
}

.site_list_block ul li:before {
    content: "";
    margin-right: 15px;
    display: block;
    background: #fecd12;
    width: 13px;
    height: 8px
}

.site_list_block ol {
    counter-reset: number
}

.site_list_block ol li {
    counter-increment: number;
    display: flex;
    align-items: center;
    margin-bottom: 12px
}

.site_list_block ol li:before {
    content: counter(number);
    color: #fecd12;
    margin-right: 15px;
    width: 8px;
    font-family: mardoto-bold, roboto-bold
}

.section_title {
    width: 100%;
    font-size: 320%;
    line-height: 38px;
    color: #000;
    font-family: mardoto-bold, roboto-bold;
    display: flex;
    align-items: center;
    position: relative
}

.section_title:after, .section_title:before {
    position: absolute;
    content: "";
    height: 2px;
    width: 100%;
    max-width: 250px;
    background: #fecd12;
    left: 0
}

.section_title:after {
    left: auto;
    right: 0
}

.section_title .custom_container {
    background: #fff;
    z-index: 5
}

.error_hint {
    color: rgba(251, 101, 101, .6);
    opacity: 0;
    max-height: 15px;
    margin-bottom: -15px;
    position: relative;
    overflow: hidden;
    font-size: 110%;
    line-height: 15px;
    text-align: right;
    display: block;
    margin-right: 5px
}

.help-block.form-error, .individual_hint {
    display: none
}

.has-error + .error_hint, .has-error .error_hint {
    max-height: 60px;
    opacity: 1
}

.has-error input, .has-error textarea {
    border-color: rgba(251, 101, 101, .6) !important
}

.has-error ::-webkit-input-placeholder {
    color: rgba(251, 101, 101, .58)
}

.has-error :-moz-placeholder, .has-error ::-moz-placeholder {
    color: rgba(251, 101, 101, .58)
}

.has-error :-ms-input-placeholder {
    color: rgba(251, 101, 101, .58)
}

.big_title {
    font-size: 720%;
    line-height: 85px;
    color: #000;
    font-family: mardoto-bold, roboto-bold
}

.site_description {
    color: #000
}

.quotes, .site_description {
    font-size: 160%;
    line-height: 24px
}

.quotes {
    margin-top: 20px;
    height: 180px;
    border: 1px solid rgba(0, 0, 0, .2);
    flex-direction: column;
    justify-content: center
}

.quotes, .quotes_title {
    width: 100%;
    display: flex;
    align-items: center
}

.quotes_title {
    margin-left: 80px;
    max-width: 440px;
    position: relative
}

.quotes_title:before {
    position: absolute;
    left: -60px;
    color: #fecd12
}

.quotes_author {
    margin-top: 20px;
    max-width: 440px;
    width: 100%;
    margin-left: 80px
}

.quotes_author, .second_title {
    font-family: mardoto-bold, roboto-bold
}

.second_title {
    font-size: 240%;
    line-height: 28px
}

.site_image_block {
    width: 100%;
}

.site_image_block:before {
    content: "";
    z-index: 5
}

.site_image_block img {
    width: 100%;
    height: auto;
    vertical-align: top
}

.breadcrumbs {
    width: 100%;
    padding: 15px 0
}

.breadcrumbs, .breadcrumbs ul {
    display: flex;
    align-items: center
}

.breadcrumbs ul {
    font-size: 120%;
    line-height: 16px
}

.breadcrumbs li {
    display: flex;
    color: #000;
    align-items: center
}

.breadcrumbs li * {
    max-width: 300px;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: rgba(0, 0, 0, .5)
}

.breadcrumbs li:not(:first-child):before {
    content: "";
    display: block;
    margin: 0 4px;
    height: 5px;
    width: 5px;
    background-color: #fecd12
}

.breadcrumbs a {
    display: inline-block;
    vertical-align: top;
    color: #000;
    position: relative
}

.paging {
    padding-top: 20px;
    display: flex;
    justify-content: flex-end
}

.paging ul {
    display: inline-flex;
    position: relative;
    overflow: hidden;
    padding: 0;
    border: 1px solid rgba(0, 0, 0, .2);
    max-width: 100%
}

.paging li {
    flex: 1;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center
}

.paging li:not(:first-child) {
    border-left: 1px solid rgba(0, 0, 0, .2)
}

.paging a {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    font-size: 120%;
    line-height: 15px;
    color: rgba(0, 0, 0, .8)
}

.paging a.prev_page:before {
    display: block
}

.paging a.current_page {
    background: #fecd12;
    color: #fff;
    cursor: default
}

.paging a:before {
    font-size: 75%;
    color: rgba(0, 0, 0, .8);
    transition: color .5s
}

.tab_section {
    margin-bottom: 60px;
    margin-top: 50px
}

.tab_section .tabs_block {
    position: relative;
    z-index: 10
}

.tab_section .tabs_block a {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 15px;
    color: #000;
    height: 77px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .2);
    transition: all .3s;
    position: relative
}

.tab_section .tabs_block a:before {
    content: "";
    position: absolute;
    transform: translate3d(0, -50%, 0);
    -moz-transform: translate3d(0, -50%, 0);
    -ms-transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    -o-transform: translate3d(0, -50%, 0);
    bottom: -55px;
    opacity: 0;
    border: 20px solid transparent;
    border-top-color: #fff;
    transition: all .3s
}

.tab_section .tabs_block img {
    height: 65%;
    width: auto
}

.tab_section .tabs_block ul {
    display: flex;
    width: 100%;
    font-size: 180%;
    line-height: 21px;
    font-family: mardoto-bold, roboto-bold
}

.tab_section .tabs_block li {
    flex: 1;
    margin-right: 18px
}

.tab_section .tabs_block li:last-child {
    margin-right: 0
}

.tab_section .tabs_block li.selected a {
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15);
    border: 1px solid transparent
}

.tab_section .tabs_block li.selected a:before {
    opacity: 1
}

.tab_section .tab_block {
    height: 0;
    opacity: 0;
    position: relative;
    z-index: 10;
    overflow: hidden
}

.tab_section .selected.tab_block {
    height: auto;
    opacity: 1;
    overflow: visible
}

.main_image {
    position: relative;
    overflow: hidden;
    height: 278px;
    z-index: 5
}

.main_image:before {
    content: "";
    z-index: 2
}

.main_image img {
    -o-object-fit: cover;
    object-fit: cover
}

.main_image .custom_container {
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 8
}

.main_image .main_title {
    font-size: 720%;
    line-height: 85px;
    font-family: mardoto-bold, roboto-bold;
    z-index: 5;
    color: #fff
}

@media (max-width: 1600px) {
    .big_title {
        font-size: 600%;
        line-height: 72px
    }
}

@media (max-width: 1440px) {
    .site_btn {
        width: 190px;
        height: 48px
    }

    .big_title {
        font-size: 520%;
        line-height: 65px
    }

    .main_image .main_title {
        font-size: 600%;
        line-height: 70px
    }
}

@media (max-width: 1199px) {
    .big_title {
        font-size: 460%;
        line-height: 55px
    }

    .second_title {
        font-size: 180%;
        line-height: 25px
    }

    .main_image {
        height: 220px
    }

    .main_image .main_title {
        font-size: 420%;
        line-height: 45px
    }
}

@media (max-width: 991px) {
    .content {
        padding-top: 100px
    }

    .site_list_block {
        font-size: 140%;
        line-height: 19px
    }

    .tab_section .tabs_block ul {
        font-size: 160%;
        line-height: 20px
    }
}

@media (max-width: 767px) {
    .quotes_author, .quotes_title {
        max-width: 360px
    }

    .site_btn {
        font-size: 110%;
        line-height: 15px
    }

    .big_title {
        font-size: 400%;
        line-height: 45px
    }

    .breadcrumbs {
        display: none
    }

    .tab_section .tabs_block ul {
        font-size: 140%
    }

    .tab_section .tabs_block li {
        margin-right: 10px
    }

    .tab_section .tabs_block a {
        height: 65px
    }

    .main_image .main_title {
        padding-top: 20px;
        font-size: 320%;
        line-height: 35px
    }
}

@media (max-width: 575px) {
    .quotes {
        padding: 30px 20px;
        height: 100%
    }

    .quotes_title {
        margin-left: 0
    }

    .quotes_title:before {
        display: none
    }

    .site_block {
        padding: 20px
    }

    .site_list_block {
        font-size: 120%;
        line-height: 17px
    }

    .section_title {
        font-size: 260%;
        line-height: 32px
    }

    .section_title .custom_container {
        text-align: center;
        width: 100%;
        max-width: 231px
    }

    .big_title {
        font-size: 320%;
        line-height: 40px
    }

    .site_description {
        font-size: 140%;
        line-height: 19px
    }

    .tab_section .tabs_block ul {
        flex-direction: column
    }

    .tab_section .tabs_block li {
        margin-right: 0;
        margin-bottom: 20px;
        order: 1
    }

    .tab_section .tabs_block li.selected {
        order: 2
    }
}

@media (max-width: 479px) {
    .section_title {
        font-size: 200%;
        line-height: 25px
    }

    .section_title .custom_container {
        text-align: center;
        width: 100%;
        max-width: 231px
    }

    .big_title {
        font-size: 240%;
        line-height: 30px
    }
}

.web .paging a {
    transition: all .3s
}

.web .paging a:not(.current_page):hover {
    background: rgba(0, 0, 0, .1)
}

.web .tabs_block a {
    transition: all .3s
}

.web .tabs_block a:hover {
    border: 2px solid rgba(0, 0, 0, .2)
}

.web .tabs_block a.selected {
    cursor: default
}

.web .tabs_block a.selected:hover {
    border: 1px solid transparent
}

.web .breadcrumbs a, .web .site_btn {
    transition: all .3s
}

.touch .paging a {
    transition: all .15s
}

.touch .paging a:not(.current_page):active {
    background: rgba(0, 0, 0, .1)
}

.touch .site_btn, .touch .tabs_block a {
    transition: all .15s
}

.touch .tabs_block a:active {
    border: 2px solid rgba(0, 0, 0, .2)
}

.touch .tabs_block a.selected {
    cursor: default
}

.touch .tabs_block a.selected:active {
    border: 1px solid transparent
}

iframe {
    max-width: 100%;
    max-height: 56vw
}

.header {
    position: relative;
    z-index: 999;
    position: fixed;
    width: 100%;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.header .header_top {
    height: 30px;
    background: #000;
    color: #fff
}

.header .header_top .custom_container {
    justify-content: space-between;
    position: relative
}

.header .header_contacts, .header .header_top .custom_container {
    display: flex;
    align-items: center;
    height: 100%
}

.header .header_contacts > a {
    display: block;
    margin-right: 32px;
    font-size: 120%;
    line-height: 22px;
    font-family: mardoto-bold, roboto-bold;
    color: #fff
}

.header .socials_list {
    display: flex;
    position: absolute;
    top: -30px;
    left: 140px;
    align-items: center;
    height: 30px
}

.header .socials_list li:not(:last-child) {
    margin-right: 20px
}

.header .socials_list a {
    color: #fff;
    font-size: 140%
}

.header .socials_list a:before {
    display: block
}

.header .socials_list.active {
    opacity: 1
}

.header .lg_block {
    position: relative
}

.header .lg_block img {
    width: 30px;
    -o-object-fit: cover;
    object-fit: cover
}

.header .lg_button {
    display: flex;
    flex-direction: row-reverse;
    align-items: center
}

.header .lg_button:before {
    display: block;
    margin-left: 10px;
    font-size: 80%;
    color: #fff;
    line-height: 5px;
    transition: all .3s
}

.header .lg_list {
    position: absolute;
    z-index: 15;
    display: none;
    background: #fff;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
    width: 80px;
    right: -2PX;
    border-radius: 3px;
    top: 23px
}

.header .lg_list li {
    border-top: 1px solid hsla(0, 0%, 100%, .13)
}

.header .lg_list li.current_lg {
    opacity: .7;
    pointer-events: none;
    cursor: default;
    background: rgba(0, 0, 0, .2)
}

.header .lg_list li img {
    width: 33px;
    -o-object-fit: cover;
    object-fit: cover
}

.header .lg_list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 10px;
    height: 38px;
    font-family: mardoto-bold, roboto-bold;
    color: #000
}

.header .header_bottom {
    position: relative;
    background: #fff;
    height: 87px;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .17);
    transition: height .5s
}

.header .header_bottom .custom_container {
    height: 100%;
    position: relative;
    display: flex;
    align-items: center
}

.header .header_bottom.small_mode {
    height: 70px
}

.header .main_logo {
    position: relative;
    z-index: 100;
    padding: 10px 0;
    margin-right: 20px;
    width: 60px
}

.header .main_logo img {
    width: auto;
    height: 60px;
    display: block
}

.header .main_logo a {
    display: block
}

.header .search_block {
    position: absolute;
    z-index: 10;
    right: 10px
}

.header .search_block form {
    position: relative;
    float: right;
    padding-left: 13px
}

.header .search_block input {
    padding-left: 25px;
    padding-right: 30px;
    height: 40px;
    color: #000;
    border: 1px solid transparent;
    width: 32px;
    font-size: 120%;
    line-height: 15px;
    transition: all .5s
}

.header .search_block button {
    border: none;
    color: #000;
    font-size: 180%;
    position: absolute;
    right: 2px;
    top: 8px;
    background: transparent;
    z-index: 2
}

.header .search_block.opened form {
    background: #fff
}

.header .search_block.opened input {
    width: 429px;
    border: 1px solid #000
}

.header .header_menu_inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    position: relative;
    padding-right: 120px;
    height: 100%
}

.header .header_menu_inner .main_menu {
    height: 100%
}

.header .menu_list {
    display: flex;
    position: relative;
    align-items: center;
    font-family: mardoto-bold, roboto-bold;
    height: 100%
}

.header .menu_list > li {
    padding: 0 19px;
    display: flex;
    align-items: center;
    height: 100%
}

.header .menu_list > li.opened {
    box-shadow: 0 3px 0 0 #fecd12
}

.header .menu_list > li > a {
    font-size: 160%;
    line-height: 19px;
    color: rgba(0, 0, 0, .8)
}

.header .menu_list .submenu_list {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    z-index: -1;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.header .menu_list .submenu_list ul {
    background: #fff;
    display: flex;
    flex-wrap: wrap
}

.header .menu_list .submenu_list li {
    width: 50%;
    border-bottom: 1px solid rgba(0, 0, 0, .02);
    border-right: 1px solid rgba(0, 0, 0, .02)
}

.header .menu_list .submenu_list a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 228px
}

.header .menu_list .submenu_list span {
    display: block;
    font-size: 180%;
    line-height: 21px;
    font-family: mardoto-bold, roboto-bold;
    color: #000
}

.header .menu_list .services_list img {
    width: 64px;
    height: auto;
    vertical-align: top;
    -o-object-fit: cover;
    object-fit: cover;
    margin-bottom: 30px
}

.header .menu_list .products_list img {
    width: auto;
    height: 110px;
    vertical-align: top;
    -o-object-fit: cover;
    object-fit: cover;
    margin-bottom: 15px
}

.header .submenu_button {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between
}

.header .submenu_button:before {
    font-size: 80%;
    transition: all .3s;
    display: none
}

.header .second_menu {
    position: absolute;
    top: -30px;
    right: 60px
}

.header .second_submenu_list {
    position: absolute;
    background: #fff;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
    z-index: 15;
    top: 32px;
    right: 0
}

.header .second_submenu_list ul {
    width: 227px
}

.header .second_submenu_list ul a {
    color: #000;
    height: 35px;
    display: flex;
    align-items: center;
    padding-left: 30px
}

.header .second_submenu_list ul li {
    padding: 0;
    width: 100%
}

.header .second_list {
    display: flex;
    align-items: center;
    font-size: 120%;
    line-height: 14px;
    height: 30px
}

.header .second_list .submenu_list {
    display: none
}

.header .second_list li {
    padding: 0 16px
}

.header .second_list a {
    display: block;
    color: #fff
}

.header .second_list a.second_submenu {
    display: flex;
    align-items: center;
    flex-direction: row-reverse
}

.header .second_list a.second_submenu:before {
    display: block;
    margin-left: 10px;
    font-size: 66.7%;
    color: #fff;
    line-height: 5px;
    transition: all .3s
}

@media (max-height: 699px) {
    .header .menu_list .services_list img {
        width: 48px;
        margin-bottom: 25px
    }

    .header .menu_list .products_list img {
        height: 80px;
        margin-bottom: 25px
    }

    .header .menu_list .submenu_list a {
        height: 190px
    }
}

@media (max-width: 1440px) {
    .header .menu_list > li {
        padding: 0 15px
    }

    .header .menu_list > li > a {
        font-size: 140%;
        line-height: 19px
    }
}

@media (max-width: 1199px) {
    .header .header_menu_inner {
        padding-right: 60px
    }

    .header .header_contacts > a {
        display: block;
        margin-right: 20px
    }

    .header .second_list li {
        padding: 0 12px
    }

    .header .search_block {
        padding-left: 20px;
        z-index: 200
    }

    .header .search_block input {
        padding-left: 15px
    }

    .header .search_block.opened form input {
        width: 290px;
        background: #fff
    }

    .header .lg_block {
        z-index: 201
    }

    .header .socials_list {
        left: 120px
    }
}

@media (max-width: 991px) {
    .header .socials_list {
        opacity: 1
    }

    .header .menu_button {
        display: flex
    }

    .header .header_bottom {
        height: 70px
    }

    .header .second_menu {
        flex: 1;
        top: auto;
        right: auto;
        position: relative;
        width: 100%
    }

    .header .second_list {
        align-items: flex-start;
        font-size: 160%;
        line-height: 19px
    }

    .header .second_list li {
        width: 100%;
        padding: 0
    }

    .header .second_list a {
        color: rgba(0, 0, 0, .8);
        height: 70px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        font-family: mardoto-bold, roboto-bold;
        padding: 0 20px
    }

    .header .second_list a.second_submenu:before {
        color: #000
    }

    .header .menu_list .submenu_list {
        position: relative;
        z-index: 1;
        top: 0;
        box-shadow: none
    }

    .header .menu_list .submenu_list ul {
        flex-direction: column
    }

    .header .menu_list .submenu_list li {
        width: 100%
    }

    .header .menu_list .submenu_list li:not(:last-child) {
        border-bottom: 1px solid rgba(0, 0, 0, .1)
    }

    .header .menu_list .submenu_list a {
        flex-direction: row;
        height: 117px;
        justify-content: flex-start
    }

    .header .menu_list .submenu_list img {
        margin-bottom: 0;
        margin-right: 20px;
        width: 60px;
        height: auto
    }

    .header .menu_list > li {
        flex-direction: column;
        width: 100%;
        align-items: flex-start
    }

    .header .menu_list > li > a {
        font-size: 160%;
        line-height: 19px;
        width: 100%;
        height: 70px;
        display: flex;
        align-items: center;
        padding: 0 20px
    }

    .header .menu_list > li.opened {
        box-shadow: none
    }

    .header .menu_list li {
        padding: 0
    }

    .header .products_list, .header .services_list {
        position: relative
    }

    .header .products_list:before, .header .services_list:before {
        content: "";
        width: 100%;
        position: relative;
        z-index: 50;
        height: 3px;
        box-shadow: 0 3px 2px 0 #fecd12
    }

    .header .products_list li, .header .services_list li {
        background: #f5f5f5
    }

    .header .products_list li a, .header .services_list li a {
        padding: 0 20px
    }

    .header .second_list {
        flex-direction: column;
        height: auto
    }

    .header .second_submenu_list {
        position: relative;
        top: 0;
        box-shadow: none;
        background: #f5f5f5
    }

    .header .second_submenu_list ul {
        width: 100%;
        position: relative
    }

    .header .second_submenu_list ul:before {
        content: "";
        width: 100%;
        position: absolute;
        z-index: 50;
        height: 3px;
        box-shadow: 0 3px 2px 0 #fecd12;
        margin-top: -2px
    }

    .header .second_submenu_list ul a {
        height: 50px;
        padding: 0 20px;
        color: rgba(0, 0, 0, .8)
    }

    .header .header_menu_inner {
        padding-right: 0
    }

    .header .social_container {
        width: 100%
    }

    .header .socials_list {
        top: auto;
        left: 0;
        right: 0;
        margin-left: 0;
        background: #000;
        height: 60px;
        z-index: 999;
        justify-content: space-between;
        position: relative;
        padding: 0 20px !important;
        width: 100%;
        font-size: 180%
    }

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

@media (max-width: 767px) {
    .header .search_block.opened form input {
        width: 220px
    }
}

@media (max-width: 575px) {

    .header .header_bottom, .header .header_bottom.small_mode {
        height: 65px
    }

    .header .main_logo img {
        height: 32px
    }

    .header .header_top {
        height: 50px
    }

    .header .header_contacts {
        align-items: flex-start;
        flex-direction: column;
        justify-content: center
    }

    .header .header_contacts a {
        line-height: 19px
    }

    .header .search_block.opened form input {
        width: 300px
    }
}

@media (max-width: 479px) {
    .header .search_block.opened form input {
        width: 240px
    }
}

@media (max-width: 399px) {
    .header .search_block.opened form input {
        width: 220px
    }
}

@media (max-width: 359px) {
    .header .search_block.opened form input {
        width: 200px
    }
}

.calculator_popup {
    position: fixed;
    top: -100%;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    overflow-x: hidden;
    overflow-y: auto;
    transition: top .5s;
    background: rgba(13, 40, 104, .4)
}

.calculator_popup .inner_block {
    padding: 40px 20px;
    width: 100%;
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.calculator_popup .popup_inner {
    max-width: 1240px;
    padding: 50px 80px 0;
    width: 100%;
    background: #fff;
    position: relative
}

.calculator_popup .popup_inner .phone_close {
    position: relative;
    float: right
}

.calculator_popup .popup_inner .phone_close:before {
    color: #000;
    font-size: 140%;
    transition: color .5s
}

.calculator_popup .popup_inner:after, .calculator_popup .popup_inner:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 368px;
    height: 368px;
    opacity: .5;
    background: url(/img/decor_elem.svg);
    background-size: cover;
    background-position: 50%
}

.calculator_popup .popup_inner:after {
    left: auto;
    right: 120px;
    z-index: 1;
    width: 368px;
    height: 125px
}

.calculator_popup .popup_title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(0, 0, 0, .2)
}

.calculator_popup .popup_title span {
    display: block;
    font-size: 160%;
    line-height: 17px
}

.calculator_popup .popup_container {
    display: flex;
    width: 100%;
    margin-top: 38px;
    padding-bottom: 60px;
    border-bottom: 6px solid #fecd12
}

.calculator_popup .popup_container .left_block {
    flex: 0 0 50%;
    max-width: 50%;
    border-right: 1px solid rgba(0, 0, 0, .2);
    padding: 40px 40px 40px 0;
    position: relative
}

.calculator_popup .popup_container .right_block {
    flex: 0 0 50%;
    max-width: 50%;
    padding-left: 60px;
    position: relative;
    z-index: 5
}

.calculator_popup .decoration_text {
    position: absolute;
    right: 40px;
    top: 40px;
    font-size: 320%;
    line-height: 38px;
    max-width: 150px
}

.calculator_popup .decoration_text span {
    font-family: mardoto-bold, roboto-bold;
    z-index: 5;
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    position: relative
}

.calculator_popup .decoration_text span:before {
    content: "";
    width: 100%;
    height: 25px;
    position: absolute;
    top: -2;
    left: 0;
    z-index: -1;
    background: #fecd12
}

.calculator_popup .images_block {
    margin-top: 100px;
    position: relative;
    padding-bottom: 60%
}

.calculator_popup .images_block:before {
    content: "";
    z-index: 5;
    position: absolute;
    top: 40px;
    left: -15px;
    width: 180px;
    height: 190px;
    background: #fecd12
}

.calculator_popup .images_block img {
    -o-object-fit: cover;
    object-fit: cover;
    z-index: 10
}

.calculator_popup .calc_title {
    font-size: 240%;
    line-height: 28px;
    font-family: mardoto-bold, roboto-bold
}

.calculator_popup .calc_description {
    margin-top: 13px;
    font-size: 160%;
    line-height: 24px
}

.calculator_popup .calculator_type {
    margin-top: 25px;
    display: flex;
    width: 100%;
    font-size: 140%;
    line-height: 18px;
    color: rgba(0, 0, 0, .8)
}

.calculator_popup .calculator_type > div {
    flex: 0 0 50%;
    max-width: 50%;
    height: 57px
}

.calculator_popup .calculator_type label {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    font-weight: 400
}

.calculator_popup .calculator_type label input:checked + span {
    cursor: default;
    background: #fecd12;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15);
    border-color: transparent
}

.calculator_popup .calculator_type span {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .3s;
    cursor: pointer;
    border: 1px solid #fecd12;
    background: #fff;
    padding: 0 20px
}

.calculator_popup .filter_options {
    margin-top: 34px;
    z-index: 5
}

.calculator_popup .filter_options:not(.showed) {
    opacity: 0;
    z-index: -1;
    position: absolute;
    pointer-events: none;
    caption-side: hidden;
    height: 0;
    margin: 0
}

.calculator_popup .label_text {
    font-size: 140%;
    line-height: 18px;
    margin-left: 25px
}

.calculator_popup .range_block {
    margin-top: 6px;
    position: relative
}

.calculator_popup .range_block .jslider {
    margin-top: -13px
}

.calculator_popup .range_block .jslider .jslider-pointer {
    width: 20px;
    height: 20px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15);
    right: 0;
    margin-left: -7px;
    top: -12px;
    background: #fecd12;
    border-radius: 50%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.calculator_popup .range_block .jslider .jslider-pointer:after {
    display: block;
    width: 10px;
    height: 10px;
    content: "";
    background: #fff;
    border-radius: 50%;
    z-index: 2
}

.calculator_popup .range_block .jslider .jslider-pointer-to {
    display: none
}

.calculator_popup .range_block .jslider .jslider-bg {
    height: 6px;
    background: rgba(254, 205, 18, .3)
}

.calculator_popup .range_block .jslider .jslider-bg i {
    height: 6px !important
}

.calculator_popup .range_block .jslider-label, .calculator_popup .range_block .jslider-value {
    width: 0;
    height: 0;
    overflow: hidden;
    visibility: hidden;
    opacity: 0
}

.calculator_popup .range_block .status_bar {
    position: absolute;
    left: 0;
    bottom: -3px;
    background: #fecd12;
    height: 6px;
    z-index: 1
}

.calculator_popup .limit_block {
    position: relative;
    flex: 1;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .2);
    height: 52px;
    border-radius: 3px
}

.calculator_popup .limit_block label {
    display: block;
    margin: 0;
    font-weight: 400
}

.calculator_popup .limit_block .value_mask, .calculator_popup .limit_block input {
    width: 100%;
    height: 100%;
    padding-left: 25px;
    padding-right: 70px;
    position: relative;
    background: transparent;
    z-index: 2;
    border: none;
    font-size: 140%;
    font-family: mardoto-bold, roboto-bold;
    line-height: 16px;
    display: block;
    color: rgba(0, 0, 0, .2);
    cursor: text
}

.calculator_popup .currency {
    position: absolute;
    z-index: 20;
    font-size: 140%;
    line-height: 16px;
    right: 25px;
    top: 50%;
    transform: translate3d(0, -50%, 0);
    -moz-transform: translate3d(0, -50%, 0);
    -ms-transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    -o-transform: translate3d(0, -50%, 0)
}

.calculator_popup .range_limits {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.calculator_popup .rangeslider_block {
    position: relative;
    z-index: 10
}

.calculator_popup .category_2 {
    position: absolute;
    top: 0;
    width: 100%;
    margin: 0
}

.calculator_popup .calc_value {
    margin-top: 45px;
    display: flex
}

.calculator_popup .calc_value > div {
    flex: 0 0 50%;
    max-width: 50%;
    display: flex;
    flex-direction: column
}

.calculator_popup .value_power {
    padding-right: 15px
}

.calculator_popup .value_area {
    padding-left: 15px
}

.calculator_popup .value_block {
    margin-top: 20px;
    padding: 20px 12px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15);
    display: flex;
    flex-direction: column;
    background: #fff;
    flex: 1
}

.calculator_popup .value_block span {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 400%;
    line-height: 47px;
    font-family: mardoto-bold, roboto-bold;
    color: #fecd12;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 30px
}

@media (max-width: 359px) {
    .calculator_popup .value_block span {
        font-size: 320%;
        line-height: 40px
    }
}

.calculator_popup .val_name {
    border-top: 1px solid rgba(0, 0, 0, .2);
    padding-top: 10px;
    font-size: 140%;
    line-height: 17px;
    text-align: center
}

@media (max-width: 1440px) {
    .calculator_popup .popup_inner {
        max-width: 1020px;
        padding: 30px 60px 0
    }

    .calculator_popup .value_block span {
        padding-top: 0;
        padding-bottom: 14px
    }

    .calculator_popup .popup_container {
        padding-bottom: 25px;
        margin-top: 30px
    }

    .calculator_popup .popup_container .left_block {
        padding: 20px
    }

    .calculator_popup .popup_container .right_block {
        padding-left: 30px
    }

    .calculator_popup .images_block {
        margin-top: 125px
    }
}

@media (max-width: 991px) {
    .calculator_popup .popup_inner {
        padding: 30px 20px 0
    }

    .calculator_popup .calculator_type {
        font-size: 120%;
        line-height: 17px
    }

    .calculator_popup .calculator_type span {
        text-align: center;
        max-width: 100%
    }
}

@media (max-width: 767px) {
    .calculator_popup .popup_container {
        flex-direction: column
    }

    .calculator_popup .popup_container .left_block {
        flex: 0 0 50%;
        max-width: none;
        padding: 0
    }

    .calculator_popup .popup_container .right_block {
        margin-top: 20px;
        padding: 0;
        flex: 0 0 50%;
        max-width: none
    }

    .calculator_popup .images_block {
        margin-top: 40px;
        padding-bottom: 40%
    }

    .calculator_popup .images_block:before {
        left: 0;
        top: 20px;
        height: 175px
    }

    .calculator_popup .images_block img {
        -o-object-fit: contain;
        object-fit: contain;
        padding-right: 35%
    }

    .calculator_popup .decoration_text {
        right: 20px
    }
}

@media (max-width: 575px) {
    .calculator_popup .popup_container .left_block {
        border: none
    }

    .calculator_popup .calc_value .label_text {
        max-width: 105px
    }

    .calculator_popup .value_power {
        padding-left: 10px
    }

    .calculator_popup .label_text {
        margin-left: 10px
    }

    .calculator_popup .main_logo {
        max-width: 80px;
        width: 100%
    }

    .calculator_popup .main_logo img {
        width: 100%;
        height: auto
    }

    .calculator_popup .popup_container {
        margin-top: 20px
    }

    .calculator_popup .decoration_text {
        top: 30px;
        position: relative;
        left: 0;
        padding-bottom: 35px
    }

    .calculator_popup .images_block {
        display: none
    }

    .calculator_popup .calc_title {
        font-size: 180%;
        line-height: 24px
    }

    .calculator_popup .calc_description {
        margin-top: 10px;
        font-size: 140%;
        line-height: 19px
    }

    .calculator_popup .calculator_type {
        flex-direction: column
    }

    .calculator_popup .calculator_type > div {
        flex: none;
        max-width: 100%;
        margin: 10px 0;
        height: 52px
    }

    .calculator_popup .popup_inner:before {
        width: 200px;
        left: 20px
    }

    .calculator_popup .filter_options {
        margin-top: 20px
    }

    .calculator_popup .label_text {
        margin-left: 15px;
        font-size: 120%;
        line-height: 17px
    }

    .calculator_popup .value_block {
        padding: 10px;
        margin-top: 15px
    }
}

.calculator_opened {
    overflow: hidden
}

.calculator_opened .calculator_popup {
    top: 0
}

.menu_button {
    display: none;
    position: absolute;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
    -moz-transform: translate3d(-50%, 0, 0);
    -ms-transform: translate3d(-50%, 0, 0);
    -webkit-transform: translate3d(-50%, 0, 0);
    -o-transform: translate3d(-50%, 0, 0);
    align-items: center;
    overflow: hidden;
    z-index: 100;
    padding: 10px;
    border: none;
    width: 60px;
    min-width: 60px;
    height: 60px;
    background: transparent;
    color: #fecd12 !important
}

.menu_button:after, .menu_button:before {
    display: block;
    content: "";
    position: absolute;
    left: 10px;
    width: 40px;
    border-top: 3px solid;
    transition: all .5s, color 0s
}

.menu_button:before {
    top: 20px;
    transform-origin: left top;
    -webkit-transfrom-origin: left top
}

.menu_button:after {
    bottom: 20px;
    transform-origin: left bottom;
    -webkit-transfrom-origin: left bottom
}

.menu_button span {
    display: block;
    border-top: 3px solid;
    width: 100%;
    transition: opacity .2s, color 0s;
    transition-delay: .3s
}

.menu_opened {
    overflow: hidden
}

.menu_opened jdiv {
    z-index: -1;
    visibility: hidden
}

.menu_opened .header_menu_inner {
    bottom: 0
}

.menu_opened .menu_button span {
    opacity: 0;
    transition-delay: 0s
}

.menu_opened .menu_button:before {
    transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    width: 40px;
    top: 14px;
    left: 19px
}

.menu_opened .menu_button:after {
    transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    width: 40px;
    bottom: 16px;
    left: 19px
}

.web .header_contacts a:not(.clickable), .web .lg_block .lg_button, .web .menu_list a, .web .phone_close, .web .search_block button, .web .second_menu a, .web .socials_list a {
    transition: opacity .3s
}

.web .lg_list a, .web .menu_list .products_list a, .web .menu_list .services_list a, .web .second_menu .second_submenu_list a {
    transition: all .3s
}

.web .lg_list a:hover, .web .menu_list .products_list a:hover, .web .menu_list .services_list a:hover, .web .second_menu .second_submenu_list a:hover {
    opacity: 1;
    background: rgba(0, 0, 0, .04)
}

.touch .header_contacts a:not(.clickable), .touch .lg_block .lg_button, .touch .menu_list a, .touch .phone_close, .touch .search_block button, .touch .second_menu a, .touch .socials_list a {
    transition: opacity .15s
}

.touch .lg_list a, .touch .menu_list .products_list a, .touch .menu_list .services_list a, .touch .second_menu .second_submenu_list a {
    transition: all .15s
}

.touch .lg_list a:active, .touch .menu_list .products_list a:active, .touch .menu_list .services_list a:active, .touch .second_menu .second_submenu_list a:active {
    opacity: 1;
    background: rgba(0, 0, 0, .04)
}

.footer .contacts_container {
    position: relative;
    top: -150px;
    margin-bottom: -150px
}

.footer .footer_index {
    padding-top: 150px
}

.footer .footer_index .footer_container {
    padding-top: 20px;
    height: 100%;
    align-items: flex-start
}

.footer .footer_index .footer_logo {
    padding-top: 30px
}

.footer .footer_index .footer_logo img {
    width: 140px
}

.footer .footer_index .footer_inner {
    padding-bottom: 80px
}

.footer .footer_index .last_block .socials_list {
    display: none
}

.footer .footer_index .developer {
    text-align: right;
    width: 100%;
    justify-content: flex-end
}

.footer .footer_index .custom_container {
    position: relative
}

.footer .footer_index .custom_container:before {
    content: "";
    position: absolute;
    bottom: 100%;
    margin-bottom: 10px;
    z-index: -1;
    right: -77px;
    width: 360px;
    height: 260px;
    background: url(/img/decor_elem.svg);
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat
}

@media (max-width: 1439px) {
    .footer .footer_index .custom_container:before {
        right: 0
    }
}

.footer .footer_logo {
    flex: 1;
    text-align: center;
    padding-left: 30px;
    padding-right: 30px
}

.footer .footer_logo img {
    width: 116px;
    height: auto;
    vertical-align: top
}

.footer .footer_inner {
    background-position: 50% !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-attachment: fixed !important;
    position: relative;
    z-index: 5
}

.footer .footer_inner:before {
    content: "";
    background: rgba(0, 0, 0, .5);
    z-index: -1
}

.footer .last_block {
    display: flex;
    align-items: center;
    flex: 3;
    justify-content: flex-end
}

.footer .socials_list {
    display: flex;
    margin-right: 60px !important
}

.footer .socials_list li:not(:last-child) {
    margin-right: 20px
}

.footer .socials_list a {
    font-size: 160%;
    color: #fff
}

.footer .socials_list a:before {
    display: block
}

.footer .footer_container {
    display: flex;
    color: #fff;
    font-size: 120%;
    line-height: 14px;
    height: 90px;
    align-items: center;
    justify-content: space-between
}

.footer .copyrights {
    flex: 3
}

.footer .copyrights span {
    display: inline-block;
    vertical-align: top
}

.footer .developer, .footer .developer a {
    display: flex;
    align-items: center
}

.footer .developer a {
    color: #fff;
    margin-left: 3px
}

.footer .developer a:before {
    font-size: 180%;
    color: #fecd12;
    display: block;
    margin: 0 5px
}

@media (max-width: 1199px) {
    .footer .socials_list {
        margin-right: 40px !important
    }
}

@media (max-width: 991px) {
    .footer .footer_index .footer_logo {
        padding-top: 25px
    }

    .footer .footer_index .footer_logo img {
        width: 100px
    }

    .footer .footer_logo img {
        max-width: 100px
    }

    .footer .socials_list {
        display: none
    }
}

@media (max-width: 767px) {
    .footer .footer_container {
        flex-direction: column;
        padding: 20px 0;
        height: 100%
    }

    .footer .footer_logo {
        order: 1;
        margin-bottom: 33px
    }

    .footer .last_block {
        order: 2;
        margin-bottom: 25px
    }

    .footer .copyrights {
        order: 3;
        text-align: center;
        padding-left: 65px;
        padding-right: 65px
    }

    .footer .footer_index .footer_container {
        align-items: center
    }

    .footer .footer_index .footer_inner {
        padding-bottom: 0
    }

    .footer .footer_index .footer_logo {
        padding-top: 0
    }
}

.web .socials_list a {
    transition: all .3s
}

.web .socials_list a:hover {
    color: #fecd12
}

.web .developer a {
    transition: opacity .3s
}

.touch .socials_list a {
    transition: all .15s
}

.touch .socials_list a:active {
    color: #fecd12
}

.touch .developer a {
    transition: opacity .15s
}

.jslider .jslider-bg i, .jslider .jslider-pointer {
    background: transparent
}

.main_slider {
    transition: all .5s;
    position: relative;
    white-space: nowrap;
    font-size: 0;
    overflow: hidden
}

.main_slider.scrolled {
    margin-top: -17px
}

.main_slider .slide_block {
    display: inline-block;
    white-space: normal;
    font-size: 1rem;
    width: 100%;
    vertical-align: top;
    position: relative
}

.main_slider .slide_block:before {
    position: relative;
    content: "";
    display: block;
    padding-bottom: 33.66%;
    z-index: 5
}

.main_slider .slide_block img {
    -o-object-fit: cover;
    object-fit: cover
}

.main_slider .slide_content {
    position: absolute;
    z-index: 10;
    top: 50%;
    max-width: 750px;
    display: flex;
    flex-direction: column;
    color: #fff;
    transform: translate3d(0, -50%, 0);
    -moz-transform: translate3d(0, -50%, 0);
    -ms-transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    -o-transform: translate3d(0, -50%, 0)
}

.main_slider .slide_title {
    font-size: 720%;
    line-height: 85px;
    font-family: mardoto-bold, roboto-bold
}

.main_slider .slide_description, .main_slider .slide_title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis
}

.main_slider .slide_description {
    font-size: 180%;
    line-height: 22px;
    margin-top: 33px;
    max-width: 630px
}

.main_slider .site_btn {
    margin-top: 25px
}

.main_slider .slick-dots {
    position: absolute;
    bottom: 60px;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    z-index: 3;
    max-width: 1270px;
    padding: 0 20px 0 8px;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
    -moz-transform: translate3d(-50%, 0, 0);
    -ms-transform: translate3d(-50%, 0, 0);
    -webkit-transform: translate3d(-50%, 0, 0);
    -o-transform: translate3d(-50%, 0, 0)
}

.main_slider .slick-dots li {
    flex: 1;
    max-width: 74px;
    padding: 0 12px
}

.main_slider .slick-dots li.slick-active button {
    opacity: 1;
    cursor: default
}

.main_slider .slick-dots button {
    border: none;
    background: transparent;
    width: 100%;
    height: 6px;
    opacity: .3;
    padding: 0
}

.main_slider .slick-dots button:before {
    content: "";
    display: block;
    height: 3px;
    background: #fff
}

@media (max-width: 1600px) {
    .main_slider .slide_title {
        font-size: 600%;
        line-height: 72px
    }

    .main_slider .slide_content {
        padding-bottom: 30px
    }
}

@media (max-width: 1440px) {
    .main_slider .slide_content {
        max-width: 650px;
        padding-bottom: 50px
    }

    .main_slider .slide_title {
        font-size: 520%;
        line-height: 65px
    }

    .main_slider .slick-dots {
        bottom: 40px
    }

    .main_slider .slide_description {
        font-size: 160%;
        line-height: 20px
    }
}

@media (max-width: 1199px) {
    .main_slider .slide_title {
        font-size: 460%;
        line-height: 55px
    }

    .main_slider .slide_content {
        max-width: 560px
    }

    .main_slider .slide_description {
        font-size: 140%;
        line-height: 19px;
        margin-top: 25px
    }

    .main_slider .slick-dots {
        bottom: 20px
    }
}

@media (max-width: 991px) {
    .main_slider .slide_content {
        padding-bottom: 20px
    }

    .main_slider .slide_block:before {
        height: 400px
    }

    .main_slider .slick-dots {
        padding-left: 14px
    }

    .main_slider .slick-dots li {
        max-width: 60px;
        padding: 0 6px
    }
}

@media (max-width: 767px) {
    .main_slider .slide_title {
        font-size: 400%;
        line-height: 45px
    }
}

@media (max-width: 575px) {
    .main_slider .slide_content {
        padding: 0 20px;
        left: 0;
        max-width: 100%
    }

    .main_slider .slide_title {
        font-size: 320%;
        line-height: 40px;
        -webkit-line-clamp: 3
    }

    .main_slider .slick-dots li {
        max-width: 50px
    }
}

@media (max-width: 479px) {
    .main_slider .slide_title {
        font-size: 240%;
        line-height: 30px
    }
}

.web .main_slider .slick-dots li:not(.slick-active) {
    transition: opacity .3s
}

.touch .main_slider .slick-dots li:not(.slick-active) {
    transition: opacity .15s
}

.contacts_container {
    padding: 40px 40px 20px;
    position: relative
}

.contacts_container:before {
    display: block;
    content: "";
    position: absolute;
    left: 0;
    right: 108px;
    top: 0;
    height: 108px;
    background: #fff;
    border: solid rgba(0, 0, 0, .2);
    border-width: 1px 0 0 1px
}

.contacts_container:after {
    display: block;
    content: "";
    position: absolute;
    left: 0;
    top: 108px;
    bottom: 0;
    width: 100%;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .2);
    border-top: none
}

.contacts_container .triangle_decor {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    border-color: transparent transparent #fecd12 #fecd12;
    border-style: solid;
    border-width: 54px
}

.contacts_container .contacts_inner {
    width: 100%;
    height: 100%;
    background: url(/img/contact_bg.svg);
    background-position: 50%;
    background-size: cover;
    max-width: 890px;
    margin: 0 auto;
    position: relative;
    z-index: 1
}

.contacts_container .block_title {
    font-size: 480%;
    line-height: 57px;
    font-family: mardoto-bold, roboto-bold;
    color: #000
}

.contacts_container .contacts_block {
    margin-top: 40px
}

.contacts_container .countries_list {
    position: relative
}

.contacts_container .top_block {
    margin: 0 -15px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    max-height: 200px
}

.contacts_container .top_block .field_block {
    position: relative;
    width: 50%;
    padding: 0 15px
}

.contacts_container .field_block {
    margin-bottom: 16px
}

.contacts_container input {
    height: 40px;
    padding: 0 25px
}

.contacts_container input, .contacts_container textarea {
    width: 100%;
    border: 1px solid rgba(0, 0, 0, .2);
    background: transparent;
    font-size: 120%;
    line-height: 14px;
    color: #000
}

.contacts_container textarea {
    resize: none;
    height: 90px;
    padding: 15px 25px
}

.contacts_container .iti {
    width: 100%
}

.contacts_container .iti:active, .contacts_container .iti:focus {
    outline: none
}

.contacts_container .telephone_block {
    padding-left: 105px !important
}

.contacts_container .iti--container {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    width: 100%;
    bottom: auto !important;
    height: 280px
}

.contacts_container .iti__arrow {
    border: none;
    transition: all .5s;
    display: flex;
    align-items: center
}

.contacts_container .iti__arrow:before {
    content: "\E90C";
    font-size: 60%;
    margin-left: 7px;
    position: relative;
    color: #000;
    display: block
}

.contacts_container .iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background-color: unset
}

.contacts_container .iti__country-list {
    overflow-x: hidden;
    max-width: 240px;
    background-color: #fff;
    border: none;
    margin-top: 5px
}

.contacts_container .iti__country-list::-webkit-scrollbar {
    width: 8px;
    height: auto;
    border-radius: 2px;
    background: rgba(0, 0, 0, .1)
}

.contacts_container .iti__country-list::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background: rgba(0, 0, 0, .3)
}

.contacts_container .iti--separate-dial-code .iti__selected-flag {
    background: transparent
}

.contacts_container .iti--separate-dial-code .iti__selected-flag:active, .contacts_container .iti--separate-dial-code .iti__selected-flag:focus {
    outline: none
}

.contacts_container .iti__country.iti__highlight {
    background: rgba(0, 0, 0, .1)
}

.contacts_container .iti__country {
    height: 42px;
    display: flex;
    align-items: center
}

.contacts_container .iti__flag-container {
    width: 90px;
    border: 1px solid rgba(0, 0, 0, .2)
}

.contacts_container .iti__flag-container:active, .contacts_container .iti__flag-container:focus {
    outline: none !important
}

.contacts_container .iti__flag, .contacts_container .iti__flag-box {
    display: none
}

.contacts_container .iti__country-name {
    margin-right: 7px;
    max-width: 241px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    color: rgba(0, 0, 0, .7);
    font-size: 120%;
    line-height: 15px
}

.contacts_container .iti__selected-dial-code {
    margin-left: 15px
}

.contacts_container .iti__divider {
    display: none
}

.contacts_container .bootstrap-select {
    width: 100%
}

.contacts_container .bootstrap-select select {
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important
}

.contacts_container .bootstrap-select > .dropdown-toggle {
    border: 1px solid rgba(0, 0, 0, .2);
    background: transparent;
    font-size: 120%;
    line-height: 16px;
    color: #000;
    padding: 11px 25px;
    border-radius: 0
}

@media (max-width: 767px) {
    .contacts_container .bootstrap-select > .dropdown-toggle {
        padding-left: 15px;
        padding-right: 15px
    }
}

.contacts_container .bootstrap-select > .dropdown-toggle:active, .contacts_container .bootstrap-select > .dropdown-toggle:focus {
    background: transparent;
    color: #000;
    border: 1px solid rgba(0, 0, 0, .1);
    outline: none !important
}

.contacts_container .bootstrap-select .dropdown-menu {
    padding: 0;
    font-size: 1rem
}

.contacts_container .bootstrap-select .dropdown-menu li {
    transition: all .3s
}

.contacts_container .bootstrap-select .dropdown-menu li:hover {
    background: rgba(0, 0, 0, .1)
}

.contacts_container .bootstrap-select .dropdown-menu a {
    font-size: 100%;
    padding: 8px 25px;
    max-width: 100% !important;
    font-size: 120%;
    line-height: 17px;
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

@media (max-width: 767px) {
    .contacts_container .bootstrap-select .dropdown-menu a {
        padding-left: 15px;
        padding-right: 15px
    }
}

.contacts_container .bootstrap-select .dropdown-menu a:hover {
    background: transparent
}

.contacts_container .bootstrap-select .dropdown-menu a.active {
    color: #000;
    background: rgba(0, 0, 0, .05)
}

.contacts_container .bootstrap-select.has-error .dropdown-toggle {
    border-color: rgba(251, 101, 101, .6) !important
}

.contacts_container .bootstrap-select.has-error .dropdown-toggle.bs-placeholder {
    color: rgba(251, 101, 101, .6)
}

.contacts_container .button_block {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center
}

.contacts_container .site_btn {
    width: 175px;
    height: 40px;
    font-size: 100%;
    line-height: 11px;
    letter-spacing: 1.5px
}

.contacts_container .label_text {
    font-size: 120%;
    line-height: 17px;
    color: #000
}

.contacts_container .contacts_info {
    margin: 25px -15px 0;
    display: flex;
    justify-content: space-between
}

.contacts_container .inner_title {
    font-size: 160%;
    line-height: 19px;
    font-family: mardoto-bold, roboto-bold;
    color: #000;
    margin-bottom: 12px
}

.contacts_container .info_block {
    display: flex;
    flex-direction: column;
    padding: 0 15px
}

.contacts_container .info_block a, .contacts_container .info_block span {
    display: block;
    max-width: 230px;
    font-size: 120%;
    line-height: 16px;
    color: #000
}

.contacts_container .info_block a {
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.contacts_container .info_block .view_more {
    display: flex;
    align-items: center;
    font-family: mardoto-bold, roboto-bold;
    color: #fecd12;
    margin-top: 10px
}

.contacts_container .info_block .view_more:before {
    font-size: 160%;
    color: #fecd12;
    margin-right: 9px
}

.contacts_container .socials_list {
    display: flex;
    padding: 0 15px
}

.contacts_container .socials_list li:not(:last-child) {
    margin-right: 20px
}

.contacts_container .socials_list a {
    font-size: 180%;
    color: #000
}

@media (max-width: 1440px) {
    .contacts_container .block_title {
        font-size: 380%;
        line-height: 45px
    }

    .contacts_container .triangle_decor {
        border-width: 40px
    }

    .contacts_container:before {
        right: 80px;
        height: 80px
    }

    .contacts_container:after {
        top: 80px
    }
}

@media (max-width: 1199px) {
    .contacts_container {
        padding: 40px
    }

    .contacts_container .block_title {
        font-size: 320%;
        line-height: 39px
    }

    .contacts_container .block_title:before {
        display: block;
        content: "";
        float: right;
        width: 80px;
        height: 40px
    }

    .contacts_container .contacts_block {
        margin-top: 30px
    }
}

@media (max-width: 991px) {
    .contacts_container .block_title {
        font-size: 280%;
        line-height: 34px
    }

    .contacts_container .contacts_info {
        flex-wrap: wrap
    }

    .contacts_container .socials_list {
        flex: 0 0 100%;
        max-width: 100%;
        justify-content: center;
        margin-top: 30px
    }
}

@media (max-width: 767px) {
    .contacts_container {
        padding: 30px 20px !important
    }

    .contacts_container input, .contacts_container textarea {
        padding-left: 15px;
        padding-right: 15px
    }

    .contacts_container .block_title {
        font-size: 240%;
        line-height: 30px
    }

    .contacts_container .info_block {
        width: 50%;
        margin-bottom: 20px
    }

    .contacts_container .socials_list {
        flex: 0 0 50%;
        width: 50%;
        justify-content: flex-start;
        margin-top: 0;
        align-items: flex-end;
        margin-bottom: 20px
    }

    .contacts_container .iti__flag-container {
        width: 60px
    }

    .contacts_container .iti__selected-dial-code {
        margin-left: 0
    }

    .contacts_container .iti__selected-flag {
        justify-content: space-between;
        padding: 0 10px
    }

    .contacts_container .iti__arrow {
        width: auto;
        height: auto
    }

    .contacts_container .iti__arrow:before {
        margin-left: 0
    }

    .contacts_container .telephone_block {
        padding-left: 75px !important
    }
}

@media (max-width: 575px) {
    .contacts_container {
        padding: 30px 15px
    }

    .contacts_container:before {
        right: 72px;
        height: 72px
    }

    .contacts_container:after {
        top: 72px
    }

    .contacts_container .triangle_decor {
        border-width: 36px
    }

    .contacts_container .block_title {
        font-size: 180%;
        line-height: 24px
    }

    .contacts_container .button_block .label_text {
        padding-right: 20px
    }

    .contacts_container .top_block {
        max-height: none
    }

    .contacts_container .top_block .field_block {
        width: 100%
    }

    .contacts_container .info_block, .contacts_container .socials_list {
        width: 100%;
        flex: 0 0 100%
    }
}

@media (max-width: 399px) {
    .contacts_container .button_block {
        flex-direction: column-reverse
    }

    .contacts_container .button_block button {
        width: 100%
    }

    .contacts_container .button_block .label_text {
        text-align: right;
        padding-right: 0;
        margin-top: 10px;
        width: 100%
    }
}

.web .view_more {
    transition: opacity .3s
}

.touch .view_more {
    transition: opacity .15s
}

.about_section {
    padding: 220px 0 245px;
    position: relative;
    overflow: hidden
}

.about_section .custom_container {
    display: flex;
    justify-content: space-between;
    position: relative
}

.about_section .custom_container:before {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    right: 100%;
    bottom: 100%;
    width: 380px;
    height: 280px;
    background: url(/img/decor_elem.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 0 0;
    margin-bottom: -85px;
    margin-right: -170px
}

.about_section .custom_container:after {
    content: "";
    position: absolute;
    width: 370px;
    right: -77px;
    top: 100%;
    z-index: -1;
    height: 225px;
    background: url(/img/decor_elem.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 100% 0;
    margin-top: 10px
}

.about_section .about_info {
    width: 100%;
    margin-left: 40px
}

.about_section .about_title {
    font-size: 720%;
    line-height: 85px;
    font-family: mardoto-bold, roboto-bold
}

.about_section .about_description {
    max-width: 745px;
    font-size: 160%;
    line-height: 22px;
    margin-top: 35px
}

.about_section .about_inner {
    margin-top: 45px;
    display: flex;
    justify-content: space-between
}

.about_section .inner_title {
    font-size: 240%;
    line-height: 28px;
    font-family: mardoto-bold, roboto-bold
}

.about_section .inner_description {
    max-width: 365px;
    font-size: 120%;
    line-height: 20px;
    margin-top: 30px
}

.about_section .site_btn {
    margin-top: 30px;
    margin-left: auto
}

.about_section .decoration_block {
    align-items: flex-start;
    align-self: flex-start;
    display: flex;
    margin-right: 40px;
    background-repeat: no-repeat;
    background-size: cover !important;
    background-position: 50% !important;
    border-radius: 160px 160px 0 0
}

.about_section .decoration_block span {
    mix-blend-mode: screen;
    background: #fff;
    font-size: 45em;
    display: block
}

.about_section .decoration_block span:before {
    display: block
}

@media screen and (min-width: 1200px) {
    .news_section .site_btn {
        margin-top: 0 !important;
        transform: translate3d(0, -100%, 0);
        -moz-transform: translate3d(0, -100%, 0);
        -ms-transform: translate3d(0, -100%, 0);
        -webkit-transform: translate3d(0, -100%, 0);
        -o-transform: translate3d(0, -100%, 0)
    }
}

.product_section {
    position: relative;
    margin: 120px 0
}

.product_section:before {
    content: "";
    position: absolute;
    bottom: -90px;
    z-index: -1;
    left: -5%;
    width: 360px;
    opacity: .5;
    height: 360px;
    background: url(/img/decor_elem.svg);
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat
}

.product_section .product_list {
    display: flex;
    margin: 100px -15px 0
}

.product_section .product_block {
    padding: 0 15px;
    width: 100%
}

.product_section .porduct_inner {
    position: relative
}

.product_section .product_link {
    z-index: 20
}

.product_section .images_block {
    border: 1px solid rgba(0, 0, 0, .2);
    padding: 30px 50px;
    background: #fff;
    position: relative;
    top: 0
}

.product_section .images_inner {
    position: relative;
    padding: 30px 30px 120%
}

.product_section .images_inner img {
    -o-object-fit: contain;
    object-fit: contain
}

.product_section .product_name {
    font-size: 180%;
    line-height: 21px;
    font-family: mardoto-bold, roboto-bold;
    color: rgba(0, 0, 0, .5);
    margin-top: 20px;
    width: 100%;
    display: flex;
    justify-content: center;
    text-align: center
}

.partners_section {
    margin-top: 30px;
    margin-bottom: 13vw;
    position: relative
}

.partners_section .section_title {
    margin-bottom: 65px
}

.partners_section .partners_slider {
    position: relative;
    white-space: nowrap;
    font-size: 0;
    overflow: hidden;
    margin: 0 -16px
}

.partners_section .partners_slider.slick-slider {
    overflow: visible
}

.partners_section .site_btn {
    margin-left: auto
}

.partners_section .slide_block {
    display: inline-block;
    white-space: normal;
    font-size: 1rem;
    width: 25%;
    vertical-align: top;
    position: relative;
    padding: 30px 18px
}

.partners_section .slick-list {
    overflow: hidden
}

.partners_section .block_inner {
    border: 1px solid rgba(0, 0, 0, .2);
    padding: 35px;
    overflow: hidden;
    position: relative;
    top: 0
}

.partners_section .partner_flag {
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    right: 20px;
    width: 32px;
    bottom: -20%;
    height: 19px;
    transition: all .5s
}

.partners_section .hovered .parnter_inner_link, .partners_section .hovered .partner_flag {
    bottom: 20px
}

.partners_section .images_block {
    position: relative;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center
}

.partners_section .slide_content {
    pointer-events: none;
    position: absolute;
    bottom: -20%;
    display: flex;
    width: 65%;
    justify-content: space-between;
    font-size: 180%;
    line-height: 21px;
    font-family: mardoto-bold, roboto-bold
}

.partners_section .slide_content a, .partners_section .slide_content img {
    color: #000;
    display: block
}

.partners_section .slide_content a {
    display: flex;
    align-self: center
}

.partners_section .slide_content a:before {
    margin-right: 8px
}

.partners_section .parnter_inner_link {
    position: absolute;
    left: 20px;
    z-index: 25;
    bottom: -20%;
    font-size: 180%;
    line-height: 21px;
    font-family: mardoto-bold, roboto-bold;
    color: #000;
    display: flex;
    align-items: center;
    transition: all .5s;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 70%
}

.partners_section .parnter_inner_link:before {
    margin-right: 8px;
    font-size: 120%
}

.partners_section .partner_img {
    display: block;
    max-width: 100%;
    max-height: 100%
}

.partners_section .slick-arrow {
    position: absolute;
    background: transparent;
    color: #000;
    z-index: 10;
    right: 16px;
    border: none;
    top: -100px
}

.partners_section .slick-arrow:hover {
    color: #fecd12
}

.partners_section .slick-arrow:before {
    display: block;
    content: "\E90B";
    font-size: 3rem
}

.partners_section .slick-arrow.slick-prev {
    margin-right: 60px
}

.partners_section .partner_link {
    z-index: 20
}

@media (max-width: 1600px) {
    .about_section {
        padding: 160px 0
    }

    .about_section .decoration_block span {
        font-size: 40em;
        display: block
    }

    .about_section .about_title {
        font-size: 660%;
        line-height: 70px
    }
}

@media (max-width: 1440px) {
    .about_section {
        padding: 90px 0
    }

    .about_section .about_title {
        font-size: 560%;
        line-height: 55px
    }

    .about_section .about_info {
        margin-left: 20px
    }

    .about_section .decoration_block span {
        font-size: 35em
    }

    .product_section {
        margin-bottom: 100px
    }

    .partners_section .section_title {
        margin-bottom: 30px
    }

    .partners_section .slick-arrow {
        top: -65px
    }
}

@media (max-width: 1199px) {
    .about_section {
        padding: 90px 0
    }

    .about_section .about_title {
        font-size: 480%;
        line-height: 50px
    }

    .about_section .decoration_block {
        margin-right: 20px;
        margin-top: 0
    }

    .about_section .decoration_block span {
        font-size: 30em
    }

    .about_section .inner_block {
        padding: 0 15px;
        margin: 0 -15px
    }

    .about_section .inner_description {
        max-width: 300px
    }

    .product_section .product_name {
        font-size: 140%;
        line-height: 19px
    }

    .product_section .images_block {
        padding: 30px
    }

    .partners_section .slide_block {
        width: 33.3%
    }
}

@media (max-width: 991px) {
    .about_section {
        padding: 60px 0
    }

    .about_section .about_info {
        margin: 0;
        flex: 1;
        width: 50%
    }

    .about_section .about_title {
        font-size: 420%;
        line-height: 40px
    }

    .about_section .about_description {
        max-width: 100%;
        font-size: 140%;
        line-height: 22px;
        margin-top: 25px
    }

    .about_section .inner_block {
        margin: 0;
        flex: 0 0 50%;
        max-width: 50%
    }

    .about_section .about_inner {
        margin-left: -15px;
        margin-right: -15px
    }

    .about_section .inner_title {
        margin-top: 15px
    }

    .about_section .decoration_block {
        width: auto
    }

    .about_section .decoration_block span {
        font-size: 24em;
        display: flex;
        justify-content: center;
        height: 100%
    }

    .product_section {
        margin: 70px 0
    }

    .product_section .product_list {
        margin: 40px -10px 0
    }

    .product_section .product_block {
        padding: 0 10px
    }

    .product_section .product_name {
        font-size: 120%;
        line-height: 17px
    }

    .product_section .images_block {
        padding: 20px
    }

    .partners_section .section_title {
        margin-bottom: 0
    }

    .partners_section .slick-arrow {
        top: -35px
    }
}

@media (max-width: 767px) {
    .about_section {
        padding-bottom: 70px
    }

    .about_section .custom_container {
        flex-direction: column-reverse;
        padding-bottom: 80px
    }

    .about_section .about_info {
        width: 100%
    }

    .about_section .decoration_block {
        margin-left: auto;
        margin-right: auto
    }

    .about_section .decoration_block span {
        margin-top: 0;
        font-size: 26em;
        padding-top: 50px
    }

    .about_section .inner_description {
        max-width: none
    }

    .about_section .site_btn {
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate3d(-50%, 0, 0);
        -moz-transform: translate3d(-50%, 0, 0);
        -ms-transform: translate3d(-50%, 0, 0);
        -webkit-transform: translate3d(-50%, 0, 0);
        -o-transform: translate3d(-50%, 0, 0)
    }

    .product_section {
        margin: 50px 0
    }

    .product_section .product_list {
        flex-wrap: wrap
    }

    .product_section .product_block {
        width: 50%;
        margin-bottom: 20px
    }

    .product_section .images_inner {
        padding-bottom: 90%
    }

    .product_section .product_name {
        margin-top: 10px
    }

    .product_section .images_block {
        padding: 15px
    }

    .partners_section {
        margin-top: 0
    }

    .partners_section .slide_block {
        width: 50%
    }
}

@media (max-width: 575px) {
    .about_section {
        padding-bottom: 70px
    }

    .about_section .about_inner {
        display: block
    }

    .about_section .inner_block {
        flex: none;
        max-width: 100%;
        margin-bottom: 30px
    }

    .about_section .decoration_block span {
        padding-top: 0
    }

    .product_section .images_block {
        padding: 20px
    }

    .partners_section {
        margin-bottom: 70px
    }

    .partners_section .section_title {
        margin-bottom: 30px
    }

    .partners_section .slick-arrow {
        top: -20px
    }
}

.web .product_section .images_block, .web .product_section .product_name {
    transition: all .3s
}

.web .product_section .product_link:hover ~ .images_block {
    border: 1px solid transparent;
    transform: scale(1.05);
    top: -10px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.web .product_section .product_link:hover ~ .product_name {
    color: #000
}

.web .partners_section .images_block {
    transition: all .3s
}

.web .partners_section .slide_content {
    transition: all .5s
}

.web .partners_section .block_inner, .web .partners_section .partner_img {
    transition: all .3s
}

.web .partners_section .block_inner:hover {
    top: -3px;
    transform: scale(1.05);
    border: 1px solid transparent;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.web .partners_section .slick-arrow:hover {
    color: #fecd12
}

.touch .product_section .images_block {
    transition: all .25s
}

.touch .product_section .product_name {
    transition: all .15s
}

.touch .product_section .product_link:active ~ .images_block {
    border: 1px solid transparent;
    transform: scale(1.05);
    top: -10px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.touch .product_section .product_link:active ~ .product_name {
    color: #000
}

.touch .partners_section .images_block, .touch .partners_section .partner_img, .touch .partners_section .slide_content {
    transition: all .25s
}

.touch .partners_section .partner_link:active ~ .images_block {
    top: -15px
}

.touch .partners_section .partner_link:active ~ .slide_content {
    opacity: 1;
    bottom: 20px
}

.touch .partners_section .block_inner {
    transition: all .25s
}

.touch .partners_section .block_inner:active {
    top: -3px;
    transform: scale(1.05);
    border: 1px solid transparent;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.touch .partners_section .block_inner {
    padding-top: 20px;
    padding-bottom: 40px
}

.touch .partners_section .parnter_inner_link, .touch .partners_section .partner_flag {
    bottom: 15px
}

.touch .partners_section .slick-arrow:active {
    color: #fecd12
}

.services_section {
    position: relative;
    overflow: hidden
}

.web .services_section:hover .cursor_elem {
    opacity: 1
}

.services_slider {
    position: relative;
    white-space: nowrap;
    font-size: 0;
    overflow: hidden;
    z-index: 5
}

.services_slider .slide_block {
    display: inline-block;
    white-space: normal;
    font-size: 1rem;
    width: 25%;
    vertical-align: top;
    position: relative;
    overflow: hidden
}

.services_slider .slide_block:before {
    position: relative;
    content: "";
    display: block;
    padding-bottom: 155%;
    z-index: 5;
    pointer-events: none
}

.services_slider .slide_block img {
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none
}

.services_slider .slide_block:not(:last-child) {
    border-right: 1px solid #fff
}

.services_slider .slide_content {
    position: absolute;
    z-index: 10
}

.services_slider .slide_content a {
    width: 100%;
    position: absolute;
    height: 100%;
    background: #fecd12;
    transition: all .5s;
    opacity: 0
}

.services_slider .service_title {
    font-size: 240%;
    line-height: 28px;
    font-family: mardoto-bold, roboto-bold;
    display: block;
    max-width: 206px;
    margin: 32px;
    left: 0
}

.services_slider .hashtag_name, .services_slider .service_title {
    position: absolute;
    color: #fff;
    transition: all .5s;
    pointer-events: none
}

.services_slider .hashtag_name {
    transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform-origin: left bottom;
    -webkit-transfrom-origin: left bottom;
    bottom: 40px;
    left: 40px;
    font-size: 160%;
    line-height: 19px;
    letter-spacing: 4px;
    white-space: nowrap
}

.services_slider .inner_block {
    transition: all .5s;
    top: 50%;
    opacity: 0;
    height: 100%;
    position: relative;
    z-index: 5;
    display: flex;
    max-width: 355px;
    flex-direction: column;
    justify-content: flex-end;
    padding: 33px 33px 30px;
    pointer-events: none
}

.services_slider .inner_title {
    font-size: 360%;
    line-height: 42px;
    font-family: mardoto-bold, roboto-bold;
    -webkit-line-clamp: 2
}

.services_slider .inner_desc, .services_slider .inner_title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none
}

.services_slider .inner_desc {
    margin-top: 15px;
    font-size: 160%;
    line-height: 22px;
    -webkit-line-clamp: 3
}

.services_slider .inner_info {
    margin-top: 20px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    pointer-events: none
}

.services_slider .info_block {
    font-size: 180%;
    line-height: 21px;
    padding-right: 20px;
    position: relative;
    pointer-events: none
}

.services_slider .info_block:before {
    content: "";
    display: block;
    width: 120%;
    height: 2px;
    background: #000;
    margin-bottom: 10px
}

.services_slider .slick-arrow {
    position: absolute;
    color: #fff;
    border: none;
    background: transparent;
    top: 50%;
    z-index: 10;
    transform: translate3d(0, -50%, 0);
    -moz-transform: translate3d(0, -50%, 0);
    -ms-transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    -o-transform: translate3d(0, -50%, 0)
}

.services_slider .slick-arrow:hover {
    color: #fecd12
}

.services_slider .slick-arrow:before {
    display: block;
    content: "\E90B";
    font-size: 4rem
}

.services_slider .slick-arrow.slick-prev {
    left: 0;
    margin-left: 45px
}

.services_slider .slick-arrow.slick-next {
    right: 0;
    margin-right: 45px
}

@media (max-width: 1199px) {
    .services_slider .slide_block {
        width: 33.33%
    }
}

@media (max-width: 991px) {
    .services_slider .slide_block:before {
        padding-bottom: 460px
    }

    .services_slider .service_title {
        font-size: 180%;
        line-height: 22px;
        margin: 25px
    }

    .services_slider .hashtag_name {
        font-size: 140%;
        line-height: 19px;
        left: 30px;
        bottom: 30px
    }

    .services_slider .inner_title {
        font-size: 280%;
        line-height: 35px
    }

    .services_slider .inner_desc {
        font-size: 140%;
        line-height: 19px
    }

    .services_slider .inner_block {
        padding: 25px
    }

    .services_slider .slick-arrow {
        top: 45%
    }
}

@media (max-width: 767px) {
    .services_slider .slide_block {
        width: 50%
    }
}

@media (max-width: 575px) {
    .services_slider .slide_block {
        width: 100%
    }

    .services_slider .slick-arrow {
        top: 40%
    }

    .services_slider .slick-arrow.slick-prev {
        margin-left: 20px
    }

    .services_slider .slick-arrow.slick-next {
        margin-right: 20px
    }
}

.web .services_slider .slide_block:hover .inner_block {
    opacity: 1;
    top: 0;
    transition-delay: .2s
}

.web .services_slider .slide_block:hover .slide_content a {
    cursor: crosshair !important;
    opacity: .8
}

.web .services_slider .slide_block:hover .service_title {
    opacity: 0;
    left: -50%
}

.web .services_slider .slide_block:hover .hashtag_name {
    opacity: 0
}

.touch .services_slider .slide_block .slide_content a {
    z-index: 20
}

.news_section {
    margin-top: 300px;
    margin-bottom: 60px;
    position: relative
}

.news_section:before {
    content: "";
    position: absolute;
    bottom: -130px;
    z-index: -1;
    right: 0;
    width: 600px;
    height: 600px;
    background: url(/img/decor_elem2.svg);
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat
}

.news_section .news_list {
    display: flex;
    margin: 100px -15px 0
}

.news_section .news_block {
    padding: 0 15px;
    z-index: 30;
    position: relative;
    width: 100%
}

.news_section .news_block:last-child {
    margin-top: -160px
}

.news_section .news_block:last-child .news_inner {
    height: auto
}

.news_section .news_inner {
    background: #fff;
    position: relative;
    border: 1px solid rgba(0, 0, 0, .2);
    z-index: 32;
    height: 100%
}

.news_section .images_block {
    position: relative;
    padding: 30px
}

.news_section .images_inner {
    position: relative;
    padding-bottom: 53.5%
}

.news_section .images_inner img {
    -o-object-fit: cover;
    object-fit: cover
}

.news_section .info_block {
    padding: 30px;
    border-top: 1px solid rgba(0, 0, 0, .2)
}

.news_section .news_date {
    font-size: 120%;
    line-height: 20px;
    color: #999
}

.news_section .news_date:before {
    content: "";
    display: block;
    margin-bottom: 12px;
    margin-top: 10px;
    height: 2px;
    width: 134px;
    background: #fecd12
}

.news_section .custom_container {
    position: relative
}

.news_section .news_title {
    margin-top: 12px;
    font-size: 240%;
    line-height: 28px;
    font-family: mardoto-bold, roboto-bold;
    -webkit-line-clamp: 3
}

.news_section .news_description, .news_section .news_title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis
}

.news_section .news_description {
    margin-top: 20px;
    font-size: 120%;
    line-height: 20px;
    -webkit-line-clamp: 2
}

.news_section .news_link {
    z-index: 20
}

.news_section .site_btn {
    margin-left: auto;
    margin-top: 40px;
    z-index: 33
}

@media (max-width: 1600px) {
    .news_section {
        margin-top: 200px
    }
}

@media (max-width: 1440px) {
    .news_section {
        margin-top: 150px
    }

    .news_section .news_title {
        font-size: 200%;
        line-height: 24px
    }
}

@media (max-width: 1199px) {
    .news_section {
        margin-top: 100px
    }

    .news_section .news_list {
        margin-top: 70px
    }

    .news_section .site_btn {
        margin-top: 0
    }

    .news_section .news_title {
        font-size: 180%
    }
}

@media (max-width: 991px) {
    .news_section {
        margin-top: 75px
    }

    .news_section .news_list {
        margin-top: 50px
    }

    .news_section .news_title {
        font-size: 160%;
        line-height: 22px;
        -webkit-line-clamp: 4
    }
}

@media (max-width: 767px) {
    .news_section {
        margin-top: 50px
    }

    .news_section .news_list {
        margin-top: 30px;
        display: block
    }

    .news_section .images_block {
        padding: 15px
    }

    .news_section .info_block {
        padding: 15px 15px 30px
    }

    .news_section .news_block {
        margin: 0 0 30px !important
    }
}

@media (max-width: 575px) {
    .news_section .news_title {
        font-size: 140%;
        line-height: 20px
    }
}

.web .news_link {
    transition: opacity .3s
}

.web .news_inner {
    transition: all .5s
}

.web .news_inner:hover {
    cursor: pointer;
    border: 1px solid transparent;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.touch .news_link {
    transition: opacity .15s
}

.touch .news_inner {
    transition: all .25s
}

.touch .news_inner:active {
    border: 1px solid transparent;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.about_page .our_services_section ul, .about_page .team_list, .breadcrumbs ul, .contacts_container .socials_list, .footer .socials_list, .header .lg_list, .header .menu_list, .header .menu_list .submenu_list ul, .header .second_list, .header .second_submenu_list ul, .header .socials_list, .main_slider .slick-dots, .paging ul, .site_list_block ol, .site_list_block ul, .tab_section .tabs_block ul {
    padding: 0;
    margin: 0;
    list-style-type: none
}

.about_page .team_list .image_inner img, .calculator_popup .images_block img, .footer .footer_inner:before, .main_image:before, .main_image img, .main_slider .slide_block img, .news_section .images_inner img, .news_section .news_link, .partners_section .partner_link, .product_section .images_inner img, .product_section .product_link, .services_slider .slide_block img, .services_slider .slide_content, .site_image_block:before {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.partners_section .slick-arrow.slick-prev:before, .services_slider .slick-arrow.slick-prev:before {
    transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -o-transform: scaleX(-1)
}

.contacts_container .iti__arrow.iti__arrow--up, .header .lg_block.opened .lg_button:before, .header .menu_list > li.opened .submenu_button:before, .header .second_list a.second_submenu.opened:before {
    transform: scaleY(-1);
    -moz-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    -webkit-transform: scaleY(-1);
    -o-transform: scaleY(-1)
}

.contacts_container .iti__arrow:after, .contacts_container .iti__arrow:before, .partners_section .slick-arrow:before, .services_slider .slick-arrow:before, [class*=icon_]:after, [class*=icon_]:before {
    font-family: icon !important;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.about_page .second_title {
    padding-top: 30px
}

.about_page .site_description {
    margin-top: 35px
}

.about_page .inline_block {
    display: flex;
    margin: 35px -20px
}

.about_page .inline_block.reverse_line {
    flex-direction: row-reverse;
    margin-top: 90px
}

.about_page .inline_block .big_title {
    padding-top: 40px
}

.about_page .image_block, .about_page .info_block {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 20px
}

.about_page .our_services_section {
    margin-top: 100px
}

.about_page .our_services_section .second_title {
    max-width: 50%;
    margin-bottom: 30px
}

.about_page .our_services_section ul {
    display: flex;
    flex-wrap: wrap;
    margin: 60px -15px 0
}

.about_page .our_services_section li {
    width: 25%;
    margin-bottom: 60px;
    padding: 0 15px;
    font-size: 160%;
    line-height: 24px;
    counter-increment: number
}

.about_page .our_services_section li:before {
    content: counter(number);
    display: block;
    margin-bottom: 45px;
    font-size: 450%;
    font-family: mardoto-bold, roboto-bold
}

.about_page .team_section {
    margin-top: 150px
}

.about_page .team_section .site_btn {
    margin-left: auto;
    margin-top: 60px
}

.about_page .team_list {
    display: flex;
    text-align: center;
    margin: 70px -17.5px 0;
    flex-wrap: wrap
}

.about_page .team_list li {
    padding: 17.5px;
    width: 100%;
    width: 25%
}

.about_page .team_list .team_block {
    width: 100%;
    position: relative
}

.about_page .team_list .image_block {
    padding: 20px;
    flex: none;
    max-width: none;
    width: 100%;
    border: 1px solid rgba(0, 0, 0, .2)
}

.about_page .team_list .image_inner {
    position: relative;
    width: 100%;
    padding-bottom: 120%
}

.about_page .team_list .image_inner img {
    -o-object-fit: cover;
    object-fit: cover
}

.about_page .person_name {
    margin-top: 25px;
    font-size: 180%;
    line-height: 22px;
    font-family: mardoto-bold, roboto-bold;
    padding-left: 20px;
    text-align: left;
    padding-right: 30px
}

.about_page .person_position {
    margin-top: 10px;
    font-size: 140%;
    line-height: 19px;
    color: #000;
    padding-left: 20px;
    text-align: left;
    opacity: .8;
    padding-right: 30px
}

.about_page .partners_container {
    margin-top: 80px;
    margin-bottom: 150px
}

.about_page .partners_list {
    margin-top: 80px
}

.about_page .partners_block {
    width: 100%;
    min-height: 260px;
    margin-bottom: 20px;
    display: flex;
    padding: 18px 0;
    border: 1px solid rgba(0, 0, 0, .2);
    transition: all .3s;
}

.about_page .partners_block.hovered {
    border: 1px solid transparent;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.about_page .partners_block.hovered .partner_links {
    bottom: 0
}

.about_page .person_social_link {
    position: absolute;
    bottom: 15px;
    right: 0;
    width: 20px;
    height: 20px;
    border-radius: 2px;
    overflow: hidden;
    background: #0e76a8;
    transition: all .3s;
    display: flex;
    align-items: center;
    justify-content: center
}

.about_page .person_social_link:before {
    color: #fff;
    font-size: 120%
}

.about_page .partner_logo {
    border-right: 1px solid rgba(0, 0, 0, .2);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    min-width: 240px;
    width: 240px
}

.about_page .partner_logo img {
    display: block;
    max-width: 180px;
    max-height: 180px
}

.about_page .partner_links {
    position: absolute;
    bottom: -50%;
    display: flex;
    left: 0;
    width: 100%;
    padding-left: inherit;
    padding-right: inherit;
    align-items: flex-start;
    transition: bottom .5s
}

.about_page .partner_info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    position: relative;
    padding: 60px 40px 80px;
    flex: 1;
    align-self: center
}

.about_page .partner_info .second_title {
    padding-top: 0
}

.about_page .partner_info .site_description {
    margin-top: 10px
}

.about_page .partner_flag {
    width: 30px;
    height: 22px;
    -o-object-fit: contain;
    object-fit: contain
}

.about_page .partner_flag img {
    width: 100%;
    height: auto
}

.about_page .parnter_inner_link {
    margin-left: 20px;
    font-size: 180%;
    display: flex;
    font-family: mardoto-bold, roboto-bold;
    align-items: flex-start;
    line-height: 22px;
    color: #000;
    text-align: left
}

.about_page .parnter_inner_link:before {
    display: flex;
    align-items: center;
    height: 22px;
    font-size: 120%;
    margin-right: 8px
}

.about_page .partners_link {
    margin-left: auto;
    margin-top: 50px
}

@media (max-width: 1199px) {
    .about_page .our_services_section {
        margin-top: 60px
    }

    .about_page .our_services_section li {
        width: 33.3%
    }

    .about_page .person_name {
        margin-top: 20px;
        font-size: 160%;
        line-height: 22px;
        padding-left: 10px
    }

    .about_page .person_position {
        padding-left: 10px
    }
}

@media (max-width: 991px) {
    .about_page .partners_container {
        margin-bottom: 90px
    }

    .about_page .inline_block {
        flex-direction: column;
        margin: 0
    }

    .about_page .inline_block.reverse_line {
        flex-direction: column;
        margin-top: 60px
    }

    .about_page .inline_block.first_container {
        flex-direction: column-reverse
    }

    .about_page .image_block {
        margin-top: 30px
    }

    .about_page .image_block, .about_page .info_block {
        flex: 0 0 100%;
        max-width: none;
        padding: 0
    }

    .about_page .team_list li {
        padding: 0 15px;
        width: 33.3%
    }

    .about_page .team_list li:last-child {
        display: none
    }

    .about_page .team_section {
        margin-top: 60px
    }

    .about_page .team_list {
        margin: 20px -15px 0
    }

    .about_page .partner_logo {
        flex: 0 0 30%;
        min-width: 0;
        max-width: 30%
    }

    .about_page .partner_logo img {
        max-width: 100%
    }

    .about_page .partner_info {
        padding: 10px 25px
    }

    .about_page .partner_links {
        position: relative;
        left: auto;
        bottom: auto !important;
        right: auto;
        padding: 0;
        margin-top: 20px
    }
}

@media (max-width: 767px) {
    .about_page .partners_container {
        margin-bottom: 60px
    }

    .about_page .team_list {
        margin: 20px -10px 0
    }

    .about_page .team_list li {
        padding: 0 10px;
        width: 50%
    }

    .about_page .our_services_section {
        margin-top: 20px
    }

    .about_page .our_services_section li {
        width: 50%
    }

    .about_page .our_services_section li:last-child {
        margin-bottom: 0
    }

    .about_page .inline_block.reverse_line {
        margin-top: 20px
    }
}

@media (max-width: 575px) {
    .about_page .our_services_section .second_title {
        max-width: none
    }

    .about_page .our_services_section li {
        margin-bottom: 40px;
        padding: 0 10px;
        font-size: 140%;
        line-height: 17px
    }

    .about_page .team_list {
        flex-direction: column
    }

    .about_page .team_list li {
        width: 100%
    }

    .about_page .team_list li:last-child {
        display: block
    }

    .about_page .partners_block {
        min-height: 0;
        flex-direction: column
    }

    .about_page .partner_logo {
        flex: none;
        width: 100%;
        padding: 10px 15px;
        border-right: none;
        max-width: none
    }

    .about_page .partner_info {
        text-align: center;
        padding: 10px 15px
    }
}

@media (max-width: 479px) {
    .about_page .our_services_section li {
        width: 100%;
        flex: 0 0 100%;
        margin-bottom: 60px
    }

    .about_page .our_services_section li:before {
        margin-bottom: 30px
    }
}

.web .about_page .partners_block.hovered {
    border: 1px solid transparent;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .15)
}

.web .about_page .partners_block.hovered .partner_links {
    bottom: 0
}

.touch .about_page .partner_links {
    bottom: 0;
    opacity: 1
}

.footer, .header .main_logo a, .tab_section .tab_block {
    transition: opacity .3s
}

.breadcrumbs a, .header .lg_list a, .web .partners_section .slick-arrow {
    transition: color .3s
}

.error_hint, .tab_section .tabs_block li {
    transition: all .3s
}

.touch .partners_section .slick-arrow {
    transition: color .15s
}

.about_page .person_social_link:hover, .header .main_logo a:hover, .web .breadcrumbs a:hover, .web .header_contacts a:hover:not(.clickable), .web .lg_block .lg_button:hover, .web .main_slider .slick-dots li:hover:not(.slick-active), .web .menu_list a:hover, .web .phone_close:hover, .web .search_block button:hover, .web .second_menu a:hover, .web .site_btn:hover, .web .socials_list a:hover {
    opacity: .7
}

.partners_section .parnter_inner_link:hover, .web .developer a:hover, .web .news_link:hover, .web .view_more:hover {
    opacity: .5
}

.touch .developer a:active, .touch .news_link:active, .touch .view_more:active {
    opacity: .5
}

.touch .header_contacts a:active:not(.clickable), .touch .lg_block .lg_button:active, .touch .main_slider .slick-dots li:active:not(.slick-active), .touch .menu_list a:active, .touch .phone_close:active, .touch .search_block button:active, .touch .second_menu a:active, .touch .site_btn:active, .touch .socials_list a:active {
    opacity: .7
}

.calculator_popup .calculator_type label input {
    position: absolute;
    width: 0;
    height: 0;
    top: 0;
    left: 0;
    visibility: hidden
}
