/*!
 * Bootstrap Grid v4.5.0 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
@-webkit-keyframes sheens {
    0% {
        left: -30%;
        opacity: 0
    }
    50% {
        opacity: 1
    }
    to {
        left: 130%;
        opacity: 0
    }
}

@keyframes sheens {
    0% {
        left: -30%;
        opacity: 0
    }
    50% {
        opacity: 1
    }
    to {
        left: 130%;
        opacity: 0
    }
}

@-webkit-keyframes sliding {
    0%,
    to {
        transform: translateY(0)
    }
    50% {
        transform: translateY(20px)
    }
}

@keyframes sliding {
    0%,
    to {
        transform: translateY(0)
    }
    50% {
        transform: translateY(20px)
    }
}

@-webkit-keyframes sliding20 {
    0% {
        transform: translateX(0)
    }
    50% {
        transform: translateX(20px)
    }
}

@keyframes sliding20 {
    0% {
        transform: translateX(0)
    }
    50% {
        transform: translateX(20px)
    }
}

html {
    box-sizing: border-box;
    -ms-overflow-style: scrollbar
}

.scrollup {
    width: 40px;
    height: 40px;
    text-indent: -9999px;
    opacity: 0.3;
    position: fixed;
    bottom: 50px;
    right: 50px;
    display: none;
    background: url('../img/icon_top.webp') no-repeat;
}

b, strong {
    font-weight: 600;
}

::after,
::before {
    box-sizing: inherit
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}


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

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters > .col,
.no-gutters > [class*=col-] {
    padding-right: 0;
    padding-left: 0
}

.col,
.col-1,
.col-10,
.col-11,
.col-12,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9 {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px
}

.col-auto,
body {
    position: relative
}

.go-to-url-btn {
    cursor: pointer;
}

.col-auto {
    padding-right: 15px;
    padding-left: 15px
}

.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%
}

.row-cols-1 > * {
    flex: 0 0 100%;
    max-width: 100%
}

.row-cols-2 > * {
    flex: 0 0 50%;
    max-width: 50%
}

.row-cols-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.row-cols-4 > * {
    flex: 0 0 25%;
    max-width: 25%
}

.row-cols-5 > * {
    flex: 0 0 20%;
    max-width: 20%
}

.row-cols-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.col-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.col-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.col-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.col-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.col-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    order: -1
}

.order-last {
    order: 13
}

.order-0 {
    order: 0
}

.order-1 {
    order: 1
}

.order-2 {
    order: 2
}

.order-3 {
    order: 3
}

.order-4 {
    order: 4
}

.order-5 {
    order: 5
}

.order-6 {
    order: 6
}

.order-7 {
    order: 7
}

.order-8 {
    order: 8
}

.order-9 {
    order: 9
}

.order-10 {
    order: 10
}

.order-11 {
    order: 11
}

.order-12 {
    order: 12
}

.offset-1 {
    margin-left: 8.33333%
}

.offset-2 {
    margin-left: 16.66667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.33333%
}

.offset-5 {
    margin-left: 41.66667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.33333%
}

.offset-8 {
    margin-left: 66.66667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.33333%
}

.offset-11 {
    margin-left: 91.66667%
}

.d-none {
    display: none !important
}

.d-inline {
    display: inline !important
}

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

.d-block {
    display: block !important
}

.d-table {
    display: table !important
}

.d-table-row {
    display: table-row !important
}

.d-table-cell {
    display: table-cell !important
}

.d-flex {
    display: flex !important
}

.d-inline-flex {
    display: inline-flex !important
}

.flex-row {
    flex-direction: row !important
}

.flex-column {
    flex-direction: column !important
}

.flex-row-reverse {
    flex-direction: row-reverse !important
}

.flex-column-reverse {
    flex-direction: column-reverse !important
}

.flex-wrap {
    flex-wrap: wrap !important
}

.flex-nowrap {
    flex-wrap: nowrap !important
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important
}

.flex-fill {
    flex: 1 1 auto !important
}

.flex-grow-0 {
    flex-grow: 0 !important
}

.flex-grow-1 {
    flex-grow: 1 !important
}

.flex-shrink-0 {
    flex-shrink: 0 !important
}

.flex-shrink-1 {
    flex-shrink: 1 !important
}

.justify-content-start {
    justify-content: flex-start !important
}

.justify-content-end {
    justify-content: flex-end !important
}

.justify-content-center {
    justify-content: center !important
}

.justify-content-between {
    justify-content: space-between !important
}

.justify-content-around {
    justify-content: space-around !important
}

.align-items-start {
    align-items: flex-start !important
}

.align-items-end {
    align-items: flex-end !important
}

.align-items-center {
    align-items: center !important
}

.align-items-baseline {
    align-items: baseline !important
}

.align-items-stretch {
    align-items: stretch !important
}

.align-content-start {
    align-content: flex-start !important
}

.align-content-end {
    align-content: flex-end !important
}

.align-content-center {
    align-content: center !important
}

.align-content-between {
    align-content: space-between !important
}

.align-content-around {
    align-content: space-around !important
}

.align-content-stretch {
    align-content: stretch !important
}

.align-self-auto {
    align-self: auto !important
}

.align-self-start {
    align-self: flex-start !important
}

.align-self-end {
    align-self: flex-end !important
}

.align-self-center {
    align-self: center !important
}

.align-self-baseline {
    align-self: baseline !important
}

.align-self-stretch {
    align-self: stretch !important
}

.text-center {
    text-align: center !important
}

.m-0 {
    margin: 0 !important
}

.mt-0,
.my-0 {
    margin-top: 0 !important
}

.mr-0,
.mx-0 {
    margin-right: 0 !important
}

.mb-0,
.my-0 {
    margin-bottom: 0 !important
}

.ml-0,
.mx-0 {
    margin-left: 0 !important
}

.m-1 {
    margin: .25rem !important
}

.mt-1,
.my-1 {
    margin-top: .25rem !important
}

.mr-1,
.mx-1 {
    margin-right: .25rem !important
}

.mb-1,
.my-1 {
    margin-bottom: .25rem !important
}

.ml-1,
.mx-1 {
    margin-left: .25rem !important
}

.m-2 {
    margin: .5rem !important
}

.mt-2,
.my-2 {
    margin-top: .5rem !important
}

.mr-2,
.mx-2 {
    margin-right: .5rem !important
}

.mb-2,
.my-2 {
    margin-bottom: .5rem !important
}

.ml-2,
.mx-2 {
    margin-left: .5rem !important
}

.m-3 {
    margin: 1rem !important
}

.mt-3,
.my-3 {
    margin-top: 1rem !important
}

.mr-3,
.mx-3 {
    margin-right: 1rem !important
}

.mb-3,
.my-3 {
    margin-bottom: 1rem !important
}

.ml-3,
.mx-3 {
    margin-left: 1rem !important
}

.m-4 {
    margin: 1.5rem !important
}

.mt-4,
.my-4 {
    margin-top: 1.5rem !important
}

.mr-4,
.mx-4 {
    margin-right: 1.5rem !important
}

.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important
}

.ml-4,
.mx-4 {
    margin-left: 1.5rem !important
}

.m-5 {
    margin: 3rem !important
}

.mt-5,
.my-5 {
    margin-top: 3rem !important
}

.mr-5,
.mx-5 {
    margin-right: 3rem !important
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important
}

.ml-5,
.mx-5 {
    margin-left: 3rem !important
}

.p-0 {
    padding: 0 !important
}

.pt-0,
.py-0 {
    padding-top: 0 !important
}

.pr-0,
.px-0 {
    padding-right: 0 !important
}

.pb-0,
.py-0 {
    padding-bottom: 0 !important
}

.pl-0,
.px-0 {
    padding-left: 0 !important
}

.p-1 {
    padding: .25rem !important
}

.pt-1,
.py-1 {
    padding-top: .25rem !important
}

.pr-1,
.px-1 {
    padding-right: .25rem !important
}

.pb-1,
.py-1 {
    padding-bottom: .25rem !important
}

.pl-1,
.px-1 {
    padding-left: .25rem !important
}

.p-2 {
    padding: .5rem !important
}

.pt-2,
.py-2 {
    padding-top: .5rem !important
}

.pr-2,
.px-2 {
    padding-right: .5rem !important
}

.pb-2,
.py-2 {
    padding-bottom: .5rem !important
}

.pl-2,
.px-2 {
    padding-left: .5rem !important
}

.p-3 {
    padding: 1rem !important
}

.pt-3,
.py-3 {
    padding-top: 1rem !important
}

.pr-3,
.px-3 {
    padding-right: 1rem !important
}

.pb-3,
.py-3 {
    padding-bottom: 1rem !important
}

.pl-3,
.px-3 {
    padding-left: 1rem !important
}

.p-4 {
    padding: 1.5rem !important
}

.pt-4,
.py-4 {
    padding-top: 1.5rem !important
}

.pr-4,
.px-4 {
    padding-right: 1.5rem !important
}

.pb-4,
.py-4 {
    padding-bottom: 1.5rem !important
}

.pl-4,
.px-4 {
    padding-left: 1.5rem !important
}

.p-5 {
    padding: 3rem !important
}

.pt-5,
.py-5 {
    padding-top: 3rem !important
}

.pr-5,
.px-5 {
    padding-right: 3rem !important
}

.pb-5,
.py-5 {
    padding-bottom: 3rem !important
}

.pl-5,
.px-5 {
    padding-left: 3rem !important
}

.m-n1 {
    margin: -.25rem !important
}

.mt-n1,
.my-n1 {
    margin-top: -.25rem !important
}

.mr-n1,
.mx-n1 {
    margin-right: -.25rem !important
}

.mb-n1,
.my-n1 {
    margin-bottom: -.25rem !important
}

.ml-n1,
.mx-n1 {
    margin-left: -.25rem !important
}

.m-n2 {
    margin: -.5rem !important
}

.mt-n2,
.my-n2 {
    margin-top: -.5rem !important
}

.mr-n2,
.mx-n2 {
    margin-right: -.5rem !important
}

.mb-n2,
.my-n2 {
    margin-bottom: -.5rem !important
}

.ml-n2,
.mx-n2 {
    margin-left: -.5rem !important
}

.m-n3 {
    margin: -1rem !important
}

.mt-n3,
.my-n3 {
    margin-top: -1rem !important
}

.mr-n3,
.mx-n3 {
    margin-right: -1rem !important
}

.mb-n3,
.my-n3 {
    margin-bottom: -1rem !important
}

.ml-n3,
.mx-n3 {
    margin-left: -1rem !important
}

.m-n4 {
    margin: -1.5rem !important
}

.mt-n4,
.my-n4 {
    margin-top: -1.5rem !important
}

.mr-n4,
.mx-n4 {
    margin-right: -1.5rem !important
}

.mb-n4,
.my-n4 {
    margin-bottom: -1.5rem !important
}

.ml-n4,
.mx-n4 {
    margin-left: -1.5rem !important
}

.m-n5 {
    margin: -3rem !important
}

.mt-n5,
.my-n5 {
    margin-top: -3rem !important
}

.mr-n5,
.mx-n5 {
    margin-right: -3rem !important
}

.mb-n5,
.my-n5 {
    margin-bottom: -3rem !important
}

.ml-n5,
.mx-n5 {
    margin-left: -3rem !important
}

.m-auto {
    margin: auto !important
}

.mt-auto,
.my-auto {
    margin-top: auto !important
}

.mr-auto,
.mx-auto {
    margin-right: auto !important
}

.mb-auto,
.my-auto {
    margin-bottom: auto !important
}

.ml-auto,
.mx-auto {
    margin-left: auto !important
}

.w-25 {
    width: 25% !important
}

.w-50 {
    width: 50% !important
}

.w-75 {
    width: 75% !important
}

.w-100 {
    width: 100% !important
}

.w-auto {
    width: auto !important
}

.h-25 {
    height: 25% !important
}

.h-50 {
    height: 50% !important
}

.h-75 {
    height: 75% !important
}

.h-100 {
    height: 100% !important
}

.h-auto {
    height: auto !important
}

.mw-100 {
    max-width: 100% !important
}

.mh-100 {
    max-height: 100% !important
}

.min-vw-100 {
    min-width: 100vw !important
}

.min-vh-100 {
    min-height: 100vh !important
}

.vw-100 {
    width: 100vw !important
}

.vh-100 {
    height: 100vh !important
}

body {
    min-width: 300px;
    font-family: "FuturaPT", sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #23355f;
    line-height: 1.4
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: 1;
    -webkit-transition: all .25s linear;
    transition: all .25s linear
}

::-moz-placeholder {
    color: inherit;
    opacity: 1;
    -moz-transition: all .25s linear;
    transition: all .25s linear
}

:-ms-input-placeholder,
::-ms-input-placeholder {
    color: inherit;
    opacity: 1;
    -ms-transition: all .25s linear;
    transition: all .25s linear
}

::placeholder {
    color: inherit;
    opacity: 1;
    transition: all .25s linear
}

:focus::-webkit-input-placeholder {
    opacity: 0
}

:focus::-moz-placeholder {
    opacity: 0
}

:focus:-ms-input-placeholder,
:focus::-ms-input-placeholder {
    opacity: 0
}

:focus::placeholder {
    opacity: 0
}

::-moz-selection {
    color: #fff;
    background-color: #fd8733
}

::selection {
    color: #fff;
    background-color: #fd8733
}

* {
    outline: 0 !important
}

svg, .svg,
.gallery__item-img img.svg {
    display: inline-block;
    transition: fill .25s linear;
    position: initial;
}

img {
    max-width: 100%;
    height: auto
}

.hidden,
img.lazy {
    display: none
}

br {
    line-height: 0;
    font-size: 0
}

a,
button {
    border: 0
}

*,
a,
button,
input {
    box-sizing: border-box
}

a,
button,
input {
    color: inherit;
    background: 0 0
}

a,
a:hover,
button,
button:hover,
input,
input:hover {
    outline: 0;
    text-decoration: none
}

a:focus,
button:focus,
input:focus {
    outline: 0;
    text-decoration: none
}

a:active,
button:active,
input:active {
    outline: 0;
    text-decoration: none
}

input,
textarea {
    border: 1px solid #000
}

select,
textarea {
    outline: 0
}

.btn,
button,
label {
    cursor: pointer
}

.btn,
label {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

label.error {
    color: red;
    display: block;
    margin-top: 5px;
    font-size: 14px
}

textarea {
    resize: none;
    color: inherit
}

h1,
h4,
h5,
h6 {
    line-height: 1.2;
    font-weight: 600
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 20px
}

h1 {
    margin-bottom: 30px;
    font-size: 50px
}

h2 {
    font-size: 36px;
    line-height: 1.1
}

h3 {
    font-size: 30px;
    line-height: 1.4
}

h4 {
    font-size: 24px
}

h5 {
    font-size: 20px
}

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

.btn {
    position: relative;
    z-index: 1;
    height: 64px;
    max-width: 330px;
    width: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 18px;
    color: #fff;
    font-weight: 600;
    line-height: 1;
    border-radius: 25px;
    transition: all .25s linear;
    background: #fd8733;
    box-shadow: 0 6px 20px rgba(61, 177, 150, .5)
}

.btn--sm {
    max-width: 280px
}

.btn--xs {
    height: 50px;
    border-radius: 20px
}

.btn--dark {
    background: #3a4664;
    box-shadow: 0 6px 20px rgba(58, 70, 100, .5)
}

button[type=submit] .form-load {
    width: 0;
    height: 20px;
    line-height: 0;
    font-size: 0;
    overflow: hidden
}

button[type=submit] .form-load .lds-spinner {
    width: 100%;
    height: 100%;
    fill: currentColor
}

.sl-btn {
    cursor: pointer
}

[class*="--aic"] {
    align-items: center
}

.s-content {
    min-height: calc(100vh - 200px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 50px 0;
    color: #fff;
    text-align: center;
    background-repeat: no-repeat;
    background-position: center 0;
    background-size: cover
}

.s-content__ico {
    margin-bottom: 50px;
    font-size: 0
}

.s-content__ico svg {
    width: 150px;
    height: 150px;
    fill: red
}

.s-content__404,
.s-content__title {
    font-weight: 700;
    text-transform: uppercase
}

.s-content__404 {
    text-shadow: 0 11px 21px rgba(255, 0, 0, .4);
    color: red;
    font-size: 232px;
    line-height: 1
}

.s-content__title {
    margin-bottom: 40px;
    font-size: 40px;
    line-height: 1.4
}

.s-content__subtitle {
    margin: 40px 0;
    font-size: 20px;
    line-height: 1.3
}

.s-content__acton {
    margin-top: 50px
}

.contact-social {
    display: flex;
    flex-shrink: 0;
    font-size: 0;
    margin-left: -4px;
    margin-right: -4px
}

.contact-social__item {
    display: block;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 4px;
    border-radius: 50%;
    transition: all .25s linear
}

.contact-social__item svg {
    width: 30px;
    height: 30px
}

.contact-social__item:hover {
    background: 0 0 !important;
    cursor: pointer;
}

.popup-thx {
    max-width: 670px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 50px;
    font-size: 20px;
    text-align: center;
    background: #fff;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    border-radius: 20px;
    background-image: url(../img/general/thx_bg.webp);
    background-repeat: no-repeat;
    background-position: center 0;
    background-size: cover
}

.popup-thx b,
h2,
h3 {
    font-weight: 600
}

.popup-thx__title {
    font-size: 36px
}

.popup-thx__ico {
    margin: 25px 0;
    font-size: 0
}

.popup-thx__logo {
    margin-top: 15px;
    font-size: 0
}

.nice-select {
    position: relative;
    z-index: 21;
    height: 100%;
    width: 100%;
    font-size: 18px;
    display: flex;
    align-items: center;
    padding-left: 18px;
    padding-right: 30px;
    color: #23355f;
    transition: all .25s linear;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
    cursor: pointer;
    border-radius: 5px
}

.nice-select:after {
    border-bottom: 2px solid #23355f;
    border-right: 2px solid #23355f;
    content: '';
    position: absolute;
    right: 25px;
    top: 50%;
    width: 5px;
    height: 5px;
    margin-top: -4px;
    pointer-events: none;
    transform-origin: 66% 66%;
    transform: rotate(45deg);
    transition: all .15s ease-in-out
}

.nice-select.open:after {
    transform: rotate(-135deg)
}

.nice-select.open .list {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1) translateY(0)
}

.nice-select.disabled {
    border-color: #ededed;
    color: #999;
    pointer-events: none
}

.nice-select.disabled:after {
    border-color: #ccc
}

.nice-select.wide {
    width: 100%
}

.nice-select.wide .list {
    left: 0 !important;
    right: 0 !important
}

.nice-select.right {
    float: right
}

.nice-select.right .list {
    left: auto;
    right: 0
}

.nice-select.small {
    font-size: 12px;
    height: 36px;
    line-height: 34px
}

.nice-select.small:after {
    height: 4px;
    width: 4px
}

.nice-select.small .option {
    line-height: 34px;
    min-height: 34px
}

.nice-select .list {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 10;
    margin-top: 2px;
    padding: 0;
    box-shadow: 0 0 95px rgba(48, 55, 60, .1);
    border-radius: 5px;
    background-color: #fff;
    opacity: 0;
    pointer-events: none;
    transform-origin: 50% 0;
    transform: scale(.75) translateY(-21px);
    transition: all .2s cubic-bezier(.5, 0, 0, 1.25), opacity .15s ease-out;
    overflow: auto;
    overflow-x: hidden
}

.nice-select .list:hover .option:not(:hover) {
    background-color: transparent !important
}

.nice-select .option {
    cursor: pointer;
    font-weight: 400;
    line-height: 40px;
    list-style: none;
    min-height: 40px;
    outline: 0;
    padding-left: 18px;
    padding-right: 29px;
    text-align: left;
    transition: all .2s
}

.nice-select .option.focus,
.nice-select .option:hover {
    background-color: #e7f0f3
}

.nice-select .option.selected {
    font-weight: 700;
    color: #24bda1
}

.nice-select .option.selected.focus {
    background-color: transparent
}

.nice-select .option.disabled {
    background-color: transparent;
    color: #999;
    cursor: default
}

.no-csspointerevents .nice-select .list {
    display: none
}

.no-csspointerevents .nice-select.open .list {
    display: block
}

.breadcrumbs {
    padding: 30px 0;
    font-size: 16px;
    line-height: 1.3125
}

.breadcrumbs ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.breadcrumbs li {
    display: flex;
    align-items: baseline
}

.breadcrumbs li::after {
    content: '/';
    margin: 0 10px;
    opacity: .2
}

.breadcrumbs li:last-child {
    opacity: .5
}

.breadcrumbs li:last-child::after {
    display: none
}

.breadcrumbs li:last-child a {
    text-decoration: none;
    pointer-events: none
}

.breadcrumbs a, .breadcrumbs span.last-item {
    display: block;
    padding: 10px 0;
}

.breadcrumbs a {
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline
}

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

.block {
    font-size: 20px;
    /* padding-bottom:40px */
}

.video__item {
    position: relative;
    background: #000;
    border-radius: 25px
}

.video__item::before {
    content: '';
    display: block;
    padding-top: 56.25%
}

.video__item iframe,
.video__item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 25px
}

.video__item img {
    z-index: 3;
    -webkit-filter: blur(7px);
    filter: blur(7px)
}

.video__item-mask,
.video__item-mask::after,
.video__play {
    position: absolute;
    border-radius: 25px
}

.video__item-mask {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 10
}

.video__item-mask::after {
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    background: rgba(0, 0, 0, .4)
}

.back a:hover svg,
.pagination svg:hover path,
.sc__list-box a:hover svg,
.sc__list-box .sc-item:hover svg,
.video__item-mask:hover .video__play svg {
    fill: #24bda1;
    cursor: pointer;
}

.video__play {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 64px;
    height: 64px;
    z-index: 7;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0;
    background: #fff;
    box-shadow: 0 6px 20px rgba(54, 104, 92, .2)
}

.video__play svg {
    fill: #23355f
}

.page-404 {
    padding-top: 120px
}

.page-404 h1 {
    margin-bottom: 0;
    line-height: 1.1
}

.page-404 .blog {
    margin-top: 100px
}

.page-404 .blog h2 {
    text-align: center
}

.page-404__content {
    font-size: 20px
}

.page-404__action .btn {
    max-width: 100%;
    height: 50px
}

.table-title {
    margin-top: 50px
}

.table {
    margin: 50px 0;
    font-size: 18px;
    text-align: center;
    line-height: 1.1
}

.table-row {
    display: flex;
    align-items: center;
    border: 5px solid #e5f8f4;
    box-sizing: border-box;
    border-radius: 25px
}

.table-row:not(:last-child) {
    margin-bottom: 10px
}

.table__item {
    padding: 15px;
    flex: 1 1 auto
}

.thead {
    font-size: 20px;
    font-weight: 600;
    color: #24bda1;
    background: #e5f8f4
}

.thead .table__item {
    padding: 30px 15px
}

.table--ico {
    margin-top: 30px;
    font-size: 0;
    text-align: center
}

.table--ico svg {
    width: 45px;
    height: 45px;
    fill: #24bda1;
    -webkit-animation: sliding20 infinite ease 3s;
    animation: sliding20 infinite ease 3s
}

.numb {
    counter-reset: count
}

.nav ul,
.numb ol {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.numb li {
    position: relative;
    display: flex;
    margin: 14px 0
}

.list ul li::before,
.numb li::before {
    flex-shrink: 0;
    border-radius: 50%;
    background: #fd8733
}

.numb li::before {
    counter-increment: count;
    content: counter(count);
    width: 24px;
    height: 24px;
    margin-right: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 3px;
    font-size: 16px;
    text-align: center;
    color: #fff
}

.header,
.nav a > svg {
    transition: all .25s linear
}

.header {
    position: relative;
    z-index: 35;
    padding: 25px 0;
    font-size: 20px;
    font-weight: 400;
    background: #fff;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2)
}

.header [class*=col-] {
    position: static
}

.header--hidden {
    transform: translateY(-15px);
    opacity: 0
}

.header--fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    transform: translateY(0);
    opacity: 1
}

.header--fixed .header__box,
.header__box {
    flex-wrap: nowrap;
    align-items: center
}

.header__box {
    display: flex;
    flex-wrap: wrap
}

.logo {
    display: block;
    max-width: 175px;
    width: 100%;
    margin-right: auto;
    padding: 10px 15px 10px 0;
    font-size: 0
}

.logo svg {
    fill: #23355f
}

.nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 2;
    width: 100%;
    display: none;
    padding: 10px 0;
    font-weight: 600;
    font-size: 28px;
    line-height: 1.1;
    background: #fff;
    box-shadow: 0 10px 10px 0 rgba(54, 104, 92, .1)
}

.nav ul {
    display: flex;
    justify-content: space-between;
    margin: 0 -10px
}

.nav a {
    display: block;
    padding: 10px;
    transition: color .25s linear
}

.nav a > svg,
.nav a > .svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    margin-left: 8px;
    margin-top: 3px;
    cursor: pointer;
    fill: #24bda1
}

.nav a:hover {
    text-decoration: underline
}

.hamburger.open span,
.nav li.active a svg,
.nav li.active a .svg {
    transform: rotate(45deg)
}

.header__control,
.language,
.nav a {
    display: flex;
    align-items: center
}

.language {
    position: relative;
    line-height: 1
}

.language .svg {
    position: relative;
    z-index: 3;
    width: 7px;
    height: 5px;
    flex-shrink: 0;
    margin-left: 10px;
    margin-top: 5px;
    fill: #23355f
}

.language:hover ul {
    opacity: 1;
    visibility: visible;
    z-index: 3;
}

.language:hover svg,
.language:hover .svg {
    transform: rotate(180deg)
}

.language ul {
    top: -12px;
    right: -19px;
    z-index: 2;
    margin: 0;
    padding: 7px 0;
    list-style-type: none;
    text-align: right;
    opacity: 0;
    visibility: hidden;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    border-radius: 15px
}

.language a,
.language li span,
.language svg,
.language ul,
.menu {
    transition: all .25s linear
}

.language a, .language li span {
    display: block;
    padding: 5px 35px 5px 25px
}

.header__submenu a:hover,
.language a:hover,
.menu:hover,
.nav a:hover {
    color: #24bda1
}

.menu {
    display: flex;
    align-items: center;
    margin-left: 70px;
    cursor: pointer
}

.menu:hover .hamburger span,
.menu:hover .hamburger::after,
.menu:hover .hamburger::before {
    background: #24bda1
}

.header__submenu,
.language ul {
    position: absolute;
    background: #fff
}

.header__submenu {
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1;
    display: none;
    padding: 15px 0;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.1;
    box-shadow: 0 10px 10px rgba(54, 104, 92, .1), inset 0 5px 9px rgba(54, 104, 92, .1)
}

.desc-ul,
.header__submenu ul {
    display: flex;
    list-style-type: none
}

.header__submenu ul {
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-left: -10px;
    margin-right: -10px;
    padding: 0
}

.header__submenu li {
    width: calc(100% / 6)
}

.desc-ul a,
.header__submenu a {
    display: block;
    padding: 15px 10px;
    transition: color .25s linear
}

.desc-ul {
    align-items: center;
    justify-content: space-between;
    flex-grow: 1;
    margin: 0;
    padding: 0 10%;
    font-size: 20px
}

.desc-ul a {
    padding: 7px 12px
}

.desc-ul a:hover {
    color: #24bda1;
    text-decoration: underline
}

.form__list {
    display: flex;
    margin-left: -10px;
    margin-right: -10px
}

.form__list .form__action,
.form__list .form__item {
    max-width: 240px;
    width: 100%;
    margin: 10px 10px 0;
}

.form__list .form__action {
    display: flex;
    align-items: flex-end
}

.form__item {
    display: block;
    margin-top: 20px
}

.form__item-field {
    height: 50px;
    width: 100%;
    display: block;
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    color: #c2d4de;
    background: #fff;
    border: 1px solid #c2d4de;
    border-radius: 20px
}

.form__item--textarea textarea,
.form__item-field input {
    display: block;
    width: 100%;
    height: 100%;
    padding: 5px 20px;
    border: 0;
    box-shadow: none;
}

.form__item--textarea .form__item-field {
    height: 125px
}

.form__item--textarea textarea {
    padding: 20px;
    background: 0 0
}

.form__item-label {
    display: block;
    margin-bottom: 5px;
    font-size: 16px;
    color: #c2d4de
}

.form__action {
    width: 100%;
    margin-top: 35px;
}

.form__action .btn {
    max-width: 100%;
    width: 100%
}

.form--on-site .form__list {
    margin-top: 5px
}

.hamburger {
    position: relative;
    width: 24px;
    height: 16px;
    display: block;
    flex-shrink: 0;
    margin-left: 10px;
    font-size: 0;
    cursor: pointer;
    transform: rotate(0deg);
    transition: .5s ease-in-out
}

.hamburger span,
.hamburger::before {
    height: 2px;
    opacity: 1;
    background: #23355f;
    border-radius: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out
}

.hamburger span {
    transform-origin: left center;
    top: 0
}

.hamburger::before {
    position: absolute;
    width: 100%
}

.about__img img,
.hamburger span,
.hamburger::after {
    position: absolute;
    left: 0;
    width: 100%
}

.hamburger::after {
    height: 2px;
    opacity: 1;
    background: #23355f;
    border-radius: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out
}

.hamburger::after,
.hamburger::before {
    content: ''
}

.hamburger::before {
    top: calc(50% - 1px);
    left: auto;
    right: 0;
    transform-origin: right center
}

.hamburger::after {
    bottom: 0;
    transform-origin: left center
}

.hamburger.open span {
    top: 10%;
    left: 12%;
    width: 16px
}

.hamburger.open::before {
    right: -100%;
    width: 0;
    opacity: 0
}

.hamburger.open::after {
    top: 80%;
    left: 13%;
    width: 16px;
    transform: rotate(-45deg)
}

.wrapper {
    min-height: calc(100vh - 106px)
}

.like-body,
.wrap1 {
    background-repeat: no-repeat
}

.like-body {
    background-image: url(../img/general/main_bg.webp);
    background-position: center 0
}

.wrap1 {
    background-position: center 57px;
}

.top {
    min-height: 529px;
    padding-top: 130px;
    padding-bottom: 85px;
    font-size: 20px
}

.top__action {
    display: flex;
    align-items: center;
    margin-top: 80px
}

.top__action .btn {
    margin-right: 47px
}

.top__action-link {
    white-space: nowrap;
}

.top__action-link {
    margin: 0 2px;
    font-size: 16px;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    transition: all .25s linear
}

.top__action-link:hover {
    color: #24bda1;
    text-decoration: underline;
    cursor: pointer;
}

.services {
    padding: 70px 0
}

.services h2 {
    margin-bottom: 25px
}

.project__sl .slick-slide > div,
.services__sl .slick-slide > div {
    padding: 15px
}

.services__sl .slick-slide > div > a {
    height: 100%;
}

.services__sl-item {
    font-size: 18px;
    background-repeat: no-repeat;
    background-position: 100% 0;
    background-size: contain;
    border-radius: 25px
}

.services__sl-item h3 {
    margin-bottom: 14px;
    font-weight: 600;
    font-size: 46px
}

.services__sl-item .more {
    margin-top: auto;
    padding-top: 10px
}

.services__sl-item p {
    margin: 8px 0
}

.services__sl-item-content {
    position: relative;
    z-index: 2;
    min-height: 585px;
    display: flex !important;
    flex-direction: column;
    padding: 52px 40px 70px 60px
}

.more {
    display: block;
    font-weight: 600;
    font-size: 20px;
    line-height: 1.3;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    transition: color .25s linear
}

a:hover .more {
    color: #24bda1;
    text-decoration: underline
}

.sl-btn {
    width: 64px;
    height: 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0;
    background: #fff;
    box-shadow: 0 6px 20px rgba(54, 104, 92, .2);
    border-radius: 25px;
    border: 4px solid transparent;
    transition: all .25s linear
}

.btn--micro {
    width: auto;
    height: 30px;
    padding: 0 30px;
    margin-left: 30px;
}

.sl-btn svg,
.sl-btn .svg {
    width: 12px;
    height: 12px
}

.services__control {
    display: flex;
    justify-content: space-between;
    margin-top: 26px
}

.services__control-btn {
    display: flex;
    align-items: center;
    padding-right: 20px
}

.services__control-counter {
    display: flex;
    align-items: baseline;
    flex-shrink: 0;
    margin: 0 40px;
    font-size: 20px;
    line-height: 1.3
}

.slider-controll__item--current {
    font-weight: 600;
    font-size: 40px
}

.slider-controll__item--all::before {
    content: '/'
}

.consult__box {
    padding: 55px 80px 62px;
    background: #fff;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    border-radius: 25px
}

.consult__box h2 {
    margin-bottom: 6px
}

.consult__box .switch {
    margin-left: 15px
}

.consult__box .contact-social {
    margin-left: auto;
    padding-left: 10px
}

.consult__box-title {
    font-weight: 600;
    font-size: 24px
}

.consult__box-info {
    display: flex;
    align-items: center;
    font-size: 18px
}

.consult__box-info-inner {
    display: flex;
    align-items: center;
    flex-grow: 1
}

.switch {
    position: relative;
    z-index: 4;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 20px;
    color: #23355f;
    background: #fff;
    box-shadow: 0 10px 30px rgba(54, 104, 92, .2);
    border-radius: 10px
}

.list ul,
.switch ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.switch__toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer
}

.switch__toggle::after {
    content: '';
    width: 5px;
    height: 5px;
    margin-left: 15px;
    border: 2px solid currentColor;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
    transition: all .1s
}

.switch__toggle--active::after {
    transform: rotate(225deg)
}

.switch__list {
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    padding: 5px 0 !important;
    display: none;
    font-weight: 600;
    background: #fff;
    box-shadow: 0 10px 30px rgba(54, 104, 92, .2);
    border-radius: 10px
}

.switch__list li {
    padding: 5px 20px
}

.switch__item {
    cursor: pointer;
    white-space: nowrap
}

.vis-consult {
    padding: 40px 0
}

.about {
    padding: 71px 0 55px;
    font-size: 20px
}

.about .row {
    align-items: flex-end
}

.about h2 {
    margin-bottom: 40px
}

.about p,
.name {
    margin: 10px 0
}

.about .consult__box {
    margin-top: 73px;
    padding: 29px 40px 23px
}

.name {
    font-weight: 600;
    font-size: 24px
}

.list ul {
    margin: 23px 0
}

.list ul li {
    display: flex;
    margin: 14px 0
}

.list ul li::before {
    content: '';
    width: 6px;
    height: 6px;
    margin-top: 12px;
    margin-right: 12px
}

.about__img {
    max-width: 515px;
    width: 100%;
    margin-left: auto;
    position: relative;
    font-size: 0
}

.about__img::before {
    content: '';
    display: block;
    padding-top: 150%
}

.about__img img {
    top: 0;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px
}

.faq {
    padding: 56px 0 50px;
    font-size: 20px
}

.accordion {
    padding-top: 30px;
    padding-bottom: 20px
}

.accordion__content,
.accordion__title {
    background: #fff;
    box-shadow: 0 6px 20px rgba(54, 104, 92, .2)
}

.accordion__content {
    display: none;
    max-width: 1160px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    padding: 11px 35px;
    border: 5px solid #e5f8f4;
    border-top: 0;
    border-radius: 0 0 25px 25px
}

.accordion__title {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 35px;
    font-weight: 600;
    cursor: pointer;
    border-radius: 25px;
    border: 5px solid transparent;
    transition: all .25s linear
}

.accordion__title:hover {
    box-shadow: none;
    border: 5px solid #e5f8f4
}

.accordion__arrow {
    flex-shrink: 0;
    display: block;
    font-size: 0;
    line-height: 0;
    transition: all .25s linear
}

.svg--down {
    display: block;
    width: 9px;
    height: 9px;
    fill: currentColor
}

.accordion__item {
    margin: 10px 0
}

.accordion__item--active > .accordion__title > .accordion__arrow {
    transform: rotate(180deg)
}

.accordion__item--active .accordion__content {
    display: block
}

.consult-img {
    padding: 30px 0
}

.consult-img .form--on-site {
    max-width: 380px;
    width: 100%
}

.consult-img__box,
.consult-img__pic img {
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    border-radius: 25px
}

.consult-img__box {
    padding: 65px 72px 63px 99px;
    background: #fff;
    background-repeat: no-repeat;
    background-position: center 0;
    background-size: cover
}

.consult-img__desc {
    margin-top: 14px;
    margin-bottom: 27px;
    font-size: 20px
}

.consult-img__desc a {
    font-weight: 600;
    font-size: inherit
}

.consult-img__pic {
    max-width: 468px;
    width: 100%;
    margin-left: auto;
    position: relative;
    font-size: 0
}

.consult-img__pic::before {
    content: '';
    display: block;
    padding-top: 100%
}

.consult-img__pic img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.project {
    padding: 82px 0 50px;
    overflow: hidden
}

.project h2 {
    margin-bottom: 24px
}

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

.project__sl .sl-btn {
    position: absolute;
    top: 50%;
    z-index: 3;
    transform: translateY(-50%)
}

.project__sl .sl-btn--prev {
    right: calc(100% + 20px)
}

.project__sl .sl-btn--next {
    left: calc(100% + 20px)
}

.project__sl-item {
    padding: 30px 30px 23px;
    background: #fff;
    box-shadow: 0 0 10px rgba(54, 104, 92, .2);
    border-radius: 25px
}

.project__sl-img {
    position: relative;
    font-size: 0
}

.project__sl-img::before {
    content: '';
    display: block;
    padding-top: 34%
}

.project__sl-img img {
    border-radius: 20px
}

.project__sl-info {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    padding: 16px 10px 0;
    font-size: 18px
}

.project__sl-info h3 {
    margin-bottom: 0;
    padding-right: 15px;
    font-size: 24px
}

.project__sl-info p {
    margin: 0
}

.blog {
    padding: 47px 0
}

.blog h2 {
    margin-bottom: 56px
}

.blog__item,
.soc-block__list a,
.soc-block__list .soc-item {
    display: flex;
    align-items: flex-start;
    background: #fff;
    box-shadow: 0 6px 30px rgba(54, 104, 92, .2);
    border-radius: 25px
}

.blog__item-img {
    position: relative;
    max-width: 217px;
    width: 100%;
    flex-shrink: 0
}

.blog__item-img-box {
    position: absolute !important;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    display: block;
    font-size: 0
}

.blog__item-img-box::before {
    /* content:'';
 display:block;
 padding-top:127%*/
}

.gallery__sl-item img,
.project__sl-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.blog__item {
    align-items: stretch;
    height: 100%;
}

.blog__item-img-box {
    position: static !important;
    width: 100%;
    height: 100%;
}

.blog__item-img-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery__sl-item {
    border-radius: 20px;
    overflow: hidden;
}

.gallery__sl-image {
    width: 50% !important;
    border-radius: 0 !important;
}

.gallery__sl-image--right {
    right: 0;
    left: auto !important;
}

.blog__item-img-box img {
    box-shadow: 0 6px 20px rgba(54, 104, 92, .2);
    border-radius: 25px
}

.blog__item-info {
    min-height: 239px;
    display: flex;
    flex-direction: column;
    padding: 25px;
    font-size: 16px
}

.blog__item-info h3 {
    margin-bottom: 0;
    font-size: 20px
}

.blog__item-info p {
    margin: 10px 0 0
}

.blog__item-foot {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-top: auto;
    font-size: 14px
}

.blog__item-link {
    display: block;
    margin-left: auto;
    padding-left: 10px;
    color: #24bda1;
    text-decoration: underline
}

.blog__action {
    margin-top: 60px;
    text-align: center
}

.gallery {
    padding-top: 65px;
    padding-bottom: 71px
}

.gallery h2 {
    margin-bottom: 21px
}

.gallery__sl {
    font-size: 0
}

.gallery__sl .sl-btn {
    position: absolute;
    top: 50%;
    z-index: 3;
    transform: translateY(-50%)
}

.gallery__sl .sl-btn--prev {
    left: calc(50% - 32px - 30vw)
}

.gallery__sl .sl-btn--next {
    left: calc(50% - 32px + 30vw)
}

.gallery__sl .slick-slide > div,
.gallery__sl .slick-track {
    display: flex;
    align-items: center;
    height: 540px
}

.gallery__sl .slick-slide > div {
    height: 100%;
    padding: 15px
}

.gallery__sl-item {
    position: relative;
    font-size: 0
}

.gallery__sl-item::before {
    content: '';
    display: block;
    padding-top: 56.25%;
    transition: all .25s linear;
}

.gallery__sl-item img {
    border-radius: 20px
}

.gallery__action {
    margin-top: 18px;
    text-align: center
}

.insta-block {
    padding-top: 40px;
    padding-bottom: 35px
}

.insta-block h2 {
    margin-bottom: 60px
}

.soc-block1 {
    padding-top: 35px;
    padding-bottom: 70px;
    text-align: center
}

.soc-block1 h2 {
    margin-bottom: 13px;
    font-size: 30px
}

.soc-block__box {
    padding: 50px 50px 38px;
    background: #fff;
    border: 4px solid #bce9df;
    box-sizing: border-box;
    border-radius: 25px
}

.soc-block__list {
    display: flex;
    justify-content: center
}

.soc-block__list a,
.soc-block__list .soc-item {
    max-width: 280px;
    width: 100%;
    align-items: center;
    margin: 13px;
    padding: 13px 25px;
    font-weight: 600;
    font-size: 18px;
    border: 4px solid #fff;
    transition: all .25s linear
}

.soc-block__list a svg,
.soc-block__list .soc-item svg,
.soc-block__list a .svg {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-right: 10px
}

.soc-block__list .soc-item:hover,
.soc-block__list a:hover {
    border: 4px solid #e5f8f4;
    cursor: pointer;
}

.contacts {
    padding-top: 40px;
    padding-bottom: 50px;
    font-size: 20px
}

.contacts__info-block {
    margin-top: 40px
}

.contacts__info-block .name,
.contacts__info-block p {
    margin: 0
}

.contacts__info-block a {
    display: block;
    transition: color .25s linear
}

.contacts__info-block a:not(:first-child) {
    margin-top: 3px
}

.contacts__info-block a:hover {
    color: #24bda1
}

#map {
    font-size: 0
}

#map iframe {
    width: 100%;
    height: 400px;
    display: block
}

.contacts__form {
    display: flex;
    align-items: center;
    margin-top: -98px;
    padding: 44px 70px;
    background: #fff;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    border-radius: 20px
}

.contacts__form h2 {
    margin-right: 30px;
    font-size: 30px
}

.contacts__form .form {
    flex-grow: 1
}

.sc {
    padding-top: 5px;
    padding-bottom: 36px
}

.sc__list {
    font-size: 18px;
    color: #c2d4de
}

.sc__list-box {
    display: flex;
    align-items: center;
    margin-left: -15px;
    margin-right: -15px;
    font-size: 0
}

.sc__list-box a, .sc__list-box .sc-item {
    margin: 10px 15px 15px
}

.sc__list-box svg,
.sc__list-box .svg {
    width: 22px;
    height: 22px;
    fill: #c2d4de;
    transition: fill .25s linear
}

.bottom-menu a,
.foot__links a,
.foot__links span,
.sc__phone {
    display: block;
    transition: color .25s linear
}

.sc__phone {
    text-align: center;
    font-weight: 300;
    font-size: 60px
}

.bottom-menu a:hover,
.contact-block a:hover,
.contact-phone a:hover,
.block a:hover,
.foot__links a:hover,
.foot__links span:hover,
.pagination a:hover,
.sc__phone:hover {
    color: #24bda1
}

.bottom-menu {
    padding: 27px 0;
    background: #fff;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    font-size: 18px
}

.bottom-menu ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 -10px;
    padding: 0;
    list-style-type: none
}

.bottom-menu a,
.foot__links span,
.foot__links a {
    padding: 10px
}

.bottom-menu__main {
    font-weight: 600
}

.bottom-menu__sub-title {
    display: none !important;
    font-weight: 600
}

.foot {
    padding: 25px 0
}

.foot .logo {
    flex-shrink: 0;
    margin-right: 59px;
    font-size: 0
}

.foot .logo svg,
.foot .logo .svg {
    fill: #c2d4de;
    max-width: 175px
}

.foot__box {
    display: flex;
    align-items: center
}

.copyright {
    flex-shrink: 0;
    font-size: 18px;
    color: #c2d4de
}

.foot__links {
    display: flex;
    flex-wrap: wrap;
    padding-left: 12%;
    font-size: 14px;
    line-height: 18px;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline
}

.foot__links span,
.foot__links a {
    width: 50%;
    padding: 5px 10px
}

.banner {
    padding-bottom: 150px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center 0;
    background-size: cover
}

#map,
.banner h1 {
    margin-top: 30px
}

.banner .top__action {
    margin-top: 50px
}

.desc {
    font-size: 20px
}

.banner__content-img {
    display: none;
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    font-size: 0
}

.main-content {
    position: relative;
    padding: 55px 0;
    font-size: 20px;
    line-height: 1.5
}

.main-content h2 {
    margin-bottom: 40px
}

.main-content__nav {
    position: absolute;
    top: 0;
    right: calc(100% + 40px);
    z-index: 3;
    width: 200px;
    padding-top: 45px;
    font-size: 16px;
    line-height: 1.1;
    text-align: right
}

.main-content__nav a {
    position: relative;
    display: block;
    padding: 17px 23px 17px 17px;
    transition: all .25s linear
}

.main-content__nav a::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 8px;
    height: 8px;
    transform: translate(50%, -50%);
    border-radius: 50%;
    background: #24bda1;
    transition: all .25s linear
}

.main-content__nav.fixed {
    position: fixed;
    right: auto;
    top: 54px
}

.main-content__nav::before {
    content: '';
    position: absolute;
    top: -15px;
    left: -15px;
    right: -15px;
    bottom: -15px;
    background: #fff;
    border-radius: 25px
}

.main-content__nav::after {
    content: '';
    position: absolute;
    top: 68px;
    bottom: 22px;
    right: 0;
    z-index: 1;
    width: 1px;
    background: #c2d4de
}

.main-content__nav-item.active {
    font-size: 18px;
    font-weight: 600
}

.main-content__nav-item.active a::before {
    width: 20px;
    height: 20px;
    border: 3px solid #24bda1;
    background: #fff
}

.main-content__nav-item {
    position: relative;
    z-index: 3
}

.main-content__section {
    padding: 55px 0
}

[class*=img-] {
    font-size: 0
}

.tabs__list-item {
    cursor: pointer
}

.scal.open::before,
.tabs__content {
    display: none
}

.tabs__content.active-tab {
    display: block
}

.tabs-row .tabs {
    display: flex
}

.tabs-row .tabs__list {
    position: relative;
    max-width: 380px;
    width: 100%;
    flex-shrink: 0;
    margin: 30px 0;
    padding-right: 10px;
    font-weight: 600;
    font-size: 20px;
    line-height: 1.3
}

.tabs-row .tabs__list-item {
    position: relative;
    min-height: 80px;
    margin: 10px 0;
    padding: 10px 30px;
    background: #fff;
    border: 5px solid #e5f8f4;
    box-sizing: border-box;
    border-radius: 20px
}

.tabs-row .tabs__content {
    padding: 50px 65px;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2);
    border-radius: 20px
}

.tabs-row .tabs__content p {
    margin-top: 0
}

.flr {
    padding-bottom: 20px
}

.scal {
    position: relative
}

.scal::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0, #fff 100%)
}

.hidden-content {
    display: none
}

.show-more {
    display: flex;
    align-items: center;
    margin-top: 30px;
    line-height: 1.1;
    font-size: 20px;
    font-weight: 600;
    color: #24bda1;
    cursor: pointer
}

.show-more span {
    text-decoration: underline
}

.show-more svg,
.show-more .svg {
    flex-shrink: 0;
    margin-left: 10px;
    fill: #24bda1;
    transform: rotate(180deg);
    transition: all .25s linear
}

.show-more.active svg,
.show-more.active .svg {
    transform: rotate(0)
}

.statistic__item {
    border: 5px solid;
    border-radius: 20px
}

.statistic__item-head {
    padding: 15px 10px 20px;
    text-align: center;
    font-weight: 600;
    color: #23355f;
    font-size: 22px;
    line-height: 1.2
}

.statistic__item-content,
.statistic__item-count {
    display: flex;
    align-items: center;
    justify-content: center
}

.statistic__item-content {
    flex-direction: column;
    padding: 30px 10px
}

.statistic__item-content p {
    margin: 10px 0 0;
    font-size: 16px
}

.statistic__item-count {
    width: 100px;
    height: 100px;
    font-weight: 600;
    font-size: 50px;
    border-radius: 50%
}

.statistic__item-count span {
    font-size: 16px
}

.statistic__item--green {
    color: #24bda1;
    border-color: #e5f8f4
}

.statistic__item--green .statistic__item-count,
.statistic__item--green .statistic__item-head {
    background: #e5f8f4
}

.statistic__item--red {
    color: #e02066;
    border-color: #fbe0ea
}

.statistic__item--red .statistic__item-count,
.statistic__item--red .statistic__item-head {
    background: #fbe0ea
}

.statistic__item--yellow {
    color: #ffa514;
    border-color: #fff2de
}

.statistic__item--yellow .statistic__item-count,
.statistic__item--yellow .statistic__item-head {
    background: #fff2de
}

.statistic__item--violet {
    color: #947aed;
    border-color: #f0ecfc
}

.statistic__item--violet .statistic__item-count,
.statistic__item--violet .statistic__item-head {
    background: #f0ecfc
}

.pricing-grid__head,
.pricing-grid__item {
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    border: 5px solid #e5f8f4;
    border-radius: 25px
}

.pricing-grid__head {
    align-items: center;
    padding: 25px 25px 25px 50px;
    font-weight: 600;
    font-size: 24px;
    color: #24bda1;
    background: #e5f8f4
}

.pricing-grid__head .switch,
.pricing-grid__head .switch__list {
    font-size: 16px;
    font-weight: 400;
    color: #23355f
}

.pricing-grid__head .switch {
    margin-left: 15px
}

.pricing-grid__item {
    margin-top: 10px;
    padding: 20px 50px;
    background: #fff;
    box-sizing: border-box
}

.pricing-grid__item b,
.pricing-grid__item strong {
    padding-left: 15px;
    font-weight: 600;
    white-space: nowrap
}

.pricing__action {
    margin-top: 40px;
    text-align: center
}

.classic-tabs .tabs__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    font-weight: 600;
    font-size: 20px;
    color: #24bda1
}

.classic-tabs .tabs__list-item {
    padding: 10px;
    transition: color .25s linear
}

.classic-tabs .tabs__list-item:hover {
    color: #23355f
}

.classic-tabs .tabs__list-item.active-tab {
    color: #23355f;
    text-decoration: underline
}

.classic-tabs .tabs__content {
    margin-top: 40px
}

.video-wrap {
    position: relative;
    max-width: 890px;
    font-size: 0
}

.video-wrap__img {
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translateY(-50%)
}

.faq__action {
    margin-top: 40px;
    text-align: center
}

.vis-consult.main-content__section h2 {
    margin-bottom: 0
}

.consult__box {
    position: relative
}

.consult__box-img {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto
}

.operation-list h2 {
    margin-bottom: 10px
}

.operation-list .services__sl-item-content {
    min-height: 350px;
    padding: 35px 40px
}

.operation-list .services__sl-item-content h3 {
    font-size: 28px
}

.services__sl-item-content h3 {
    max-width: 55%;
}

.operation-list .row--list [class*=col-] {
    margin-top: 30px
}

.pt-0 {
}

.blog-block {
    padding-bottom: 80px
}

.blog-block [class*=col-] {
    margin-top: 60px
}

.pagination {
    font-size: 18px;
    text-align: center
}

.pagination a,
.pagination ul {
    justify-content: center;
    align-items: center
}

.pagination ul {
    display: inline-flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 8px;
    list-style-type: none;
    background: #e5f8f4;
    border-radius: 25px
}

.pagination li {
    margin: 0 10px
}

.pagination li.active a {
    color: #a7aebf;
    background: #fff
}

.pagination a {
    width: 34px;
    height: 34px;
    display: block;
    display: flex;
    text-align: center;
    background: 0 0;
    border-radius: 50%
}

.contact-block a,
.contact-phone a,
.block a,
.pagination a,
.pagination svg path,
.pagination .svg path {
    transition: all .25s linear
}

.svg--backward,
.svg--onward {
    width: 12px;
    height: 12px;
}

.contact-block {
    padding-bottom: 100px;
    font-size: 20px
}

.contact-block__img {
    position: relative;
    font-size: 0
}

.contact-block__img::before {
    content: '';
    display: block;
    padding-top: 78%
}

.contact-block__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 25px
}

.contact-block__name {
    margin-bottom: 30px;
    font-weight: 600;
    font-size: 33px;
    color: #24bda1;
    text-decoration: underline
}

.contact-block__name a {
    transition: all .25s linear;
}

.contact-block__name a:hover,
.contact-block__name a:focus {
    color: #23355f;
}

.contact-phone {
    font-weight: 600;
    font-size: 24px
}

.contact-phone a {
    display: block;
    margin-top: 10px
}

.gallery-block {
    padding-bottom: 100px
}

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

.gallery__item-img {
    position: relative;
    font-size: 0
}

.gallery__item-img::before {
    content: '';
    display: block;
    padding-top: 56.25%
}

.gallery__item-img img {
    border-radius: 25px
}

.gallery__item-img img.svg {
    border-radius: 0;
}

.gallery__item-count {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 3;
    padding: 5px 10px;
    font-size: 20px;
    color: #fff;
    border-radius: 25px;
    background: rgba(0, 0, 0, .2)
}

.gallery__item-count svg,
.gallery__item-count .svg {
    width: 14px;
    height: 14px;
    margin-right: 7px;
    fill: currentColor
}

.gallery__item-title {
    margin-top: 14px;
    font-weight: 600;
    font-size: 28px;
    line-height: 1.1;
    transition: all .25s linear
}

.back a:hover,
.gallery__item-title:hover {
    color: #24bda1
}

.gallery-block--album .gallery__item-img {
    position: relative;
    font-size: 0
}

.gallery-block--album .gallery__item-img::before {
    content: '';
    display: block;
    padding-top: 83%
}

.about-block__item-img img,
.gallery-block--album .gallery__item-img img,
.gallery__item-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.album-review,
.back {
    height: 64px;
    font-size: 20px;
    background: #fff;
    border: 5px solid #e5f8f4;
    border-radius: 25px
}

.back,
.back a {
    align-items: center;
    transition: all .25s linear
}

.back {
    display: flex;
    justify-content: center;
    padding: 4px 10px
}

.album-review svg,
.back svg,
.album-review .svg,
.back .svg {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-right: 10px
}

.back a {
    display: -moz-inline-flex;
    display: -ms-inline-flex;
    display: -o-inline-flex;
    display: inline-flex
}

.album-review {
    justify-content: flex-end;
    padding: 5px 35px
}

.album-review svg,
.album-review .svg {
    transition: all .25s linear
}

.album-review,
.album-review__item {
    display: flex;
    align-items: center
}

.album-review__item:not(:first-child) {
    margin-left: 60px
}

.album-review__item:hover svg,
.album-review__item:hover .svg {
    fill: #24bda1
}

.album-desc {
    margin-top: 20px;
    font-size: 20px;
    line-height: 1.3
}

.album-desc p {
    margin-bottom: 0;
}

.album-desc a {
    color: #24bda1;
    transition: all .25s linear
}

.album-desc a:hover {
    color: #23355f
}

.filter .nice-select,
.filter .nice-select .option {
    padding-left: 40px;
    padding-right: 40px
}

.filter .nice-select {
    height: 64px;
    border: 5px solid #e5f8f4;
    border-radius: 25px
}

.filter .nice-select .list {
    margin-top: 5px;
    border-radius: 25px
}

.reviews .pagination,
.reviews__item {
    margin-top: 30px
}

.reviews__item {
    padding: 50px;
    font-size: 20px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(54, 104, 92, .2);
    border-radius: 25px
}

.reviews__item .show-more {
    justify-content: flex-end;
    font-size: inherit
}

.reviews__item-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    color: #c2d4de
}

.reviews__item-title {
    margin-right: 15px
}

.reviews__item-title b {
    margin-right: 10px;
    color: #24bda1
}

.reviews__item-title a {
    margin-left: 10px;
    text-decoration: underline
}

.reviews__item-title a:hover {
    text-decoration: none
}

.like,
.reviews__item-info {
    display: flex;
    align-items: center
}

.about-block .list img,
.reviews__item-info span {
    margin-left: 10px
}

.reviews__item-info svg {
    width: 23px;
    height: 23px;
    margin-right: 10px;
    fill: currentColor
}

.like {
    margin-right: 10px;
    cursor: pointer
}

.like svg .body {
    fill: transparent
}

.like svg .body,
.like svg .stroke {
    transition: all .25s linear
}

.like svg:hover .stroke,
.like.active svg .body,
.like.active svg .stroke {
    fill: #e02066
}

.like.active {
    color: #e02066
}

.about-block {
    font-size: 20px;
    padding-bottom: 40px
}

.about-block .list {
    font-size: inherit
}

.about-block__img {
    margin-bottom: 50px;
    font-size: 0
}

.about-block__title {
    font-size: 26px
}

.about-block__title p {
    margin: 0
}

.about-block__title b,
.about-block__title strong {
    display: block;
    font-weight: 600;
    font-size: 30px
}

.about-block__items {
    margin-top: 40px
}

.about-block__item {
    display: flex;
    align-items: center;
    padding: 20px 0;
    border: 1px solid #c2d4de;
    border-left: 0;
    border-right: 0
}

.about-block__item:not(:first-child) {
    border-top: 0
}

.about-block__item-img {
    max-width: 278px;
    width: 100%;
    flex-shrink: 0;
    margin-right: 30px;
    position: relative;
    font-size: 0
}

.about-block__item-img::before {
    content: '';
    display: block;
    padding-top: 61%
}

.about-block__item-img img {
    border-radius: 25px
}

.consult-img--rev {
    margin-top: 70px
}

.similar {
    padding: 30px;
    font-size: 18px;
    line-height: 1.2;
    border: 5px solid #fff2de;
    box-sizing: border-box;
    border-radius: 25px
}

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

.similar a {
    display: block;
    padding: 7px 0;
    text-decoration: underline;
    transition: all .25s linear
}

.similar a:hover {
    color: #24bda1
}

.similar__tile {
    display: flex;
    align-items: center;
    margin-bottom: 7px;
    font-weight: 600;
    font-size: 20px
}

.similar__tile svg {
    margin-left: 10px;
    flex-shrink: 0
}

.back--content,
.similar__tile {
    justify-content: space-between
}

.back__date {
    margin-left: auto;
    padding-left: 10px
}

.article-block__content {
    font-size: 20px
}

.article-block__content a {
    color: #24bda1;
    text-decoration: underline
}

.article-block__content .video__item {
    margin: 30px 0
}

.fll,
.flr {
    margin-bottom: 30px
}

.fll {
    float: left;
    margin-right: 30px
}

.flr {
    float: right;
    margin-left: 30px
}

.quota {
    margin: 20px 0;
    padding: 20px 0 15px 30px;
    font-style: italic;
    font-size: 20px;
    line-height: 1.4;
    border-left: 2px solid #24bda1;
    background-image: url("data:image/svg+xml,%3Csvg width='31' height='28' viewBox='0 0 31 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M31 0v11.041c0 4.475-1.048 8.244-3.144 11.306-2.037 3.062-5.152 4.946-9.343 5.653v-5.83c3.725-1.119 5.676-4.004 5.85-8.656h-5.85V0H31zM12.487 0v11.041c0 4.475-1.048 8.244-3.143 11.306C7.306 25.409 4.192 27.293 0 28v-5.83c3.726-1.119 5.676-4.004 5.85-8.656H0V0h12.487z' fill='%23C8EEE7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 100% 0;
    background-size: 30px
}

.quota__signatura {
    text-align: right;
    font-style: normal
}

.p404-banner {
    margin-top: 50px;
    margin-bottom: 55px
}

.p404-banner__box {
    padding: 50px 115px;
    font-size: 20px;
    line-height: 1.3;
    background-image: url(../img/general/asf23.webp);
    background-repeat: no-repeat;
    background-position: center 0;
    background-size: cover;
    border-radius: 25px;
    box-shadow: 0 0 20px rgba(54, 104, 92, .2)
}

.p404-banner__box h2 {
    line-height: 1.1
}

.p404-banner__action {
    margin-top: 70px
}

.previous_next_links {
    margin-top: 20px;
}

.next_link {
    float: right;
}

button.svg--heart {
    background-image: url(../img/svg_ico/heart.svg);
    background-repeat: no-repeat;
    margin-bottom: 8px;
}

.privacy_field {
    margin-top: 10px;
    font-size: 16px;
}

.privacy_field a,
.privacy_field a:visited {
    text-decoration: underline;
    transition: color 0.25s linear;
}

.privacy_field a:hover,
.privacy_field a:focus {
    color: #24bda1;
}

.required_field {
    font-size: 16px;
    color: #c2d4de;
    margin-top: 20px;
}

.author-container {
    font-size: 20px;
    background: #fff;
    border: 5px solid #e5f8f4;
    border-radius: 25px;
    margin-bottom: 25px;
    padding: 5px;
}

.author-container .block-title {
    display: block;
}

.author-container .avatar {
    flex: 0 0 150px;
    max-width: 150px;
    margin-right: 16px;
    padding: 25px;
}

.author-container .avatar img {
    display: block;
    width: 150px;
    border-radius: 50%;
}

.author-container .all-articles {
    display: block;
    color: #24bda1;
    text-decoration: underline;
    margin-bottom: 15px;
}

.author-container .all-articles:hover {
    text-decoration: none;
}

@media (min-width: 576px) {
    .container,
    .container-sm {
        max-width: 540px
    }

    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-sm-1 > * {
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-sm-2 > * {
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-sm-3 > * {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-sm-4 > * {
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-sm-5 > * {
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-sm-6 > * {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-sm-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-sm-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-sm-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-sm-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-sm-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-sm-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-sm-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-sm-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-sm-first {
        order: -1
    }

    .order-sm-last {
        order: 13
    }

    .order-sm-0 {
        order: 0
    }

    .order-sm-1 {
        order: 1
    }

    .order-sm-2 {
        order: 2
    }

    .order-sm-3 {
        order: 3
    }

    .order-sm-4 {
        order: 4
    }

    .order-sm-5 {
        order: 5
    }

    .order-sm-6 {
        order: 6
    }

    .order-sm-7 {
        order: 7
    }

    .order-sm-8 {
        order: 8
    }

    .order-sm-9 {
        order: 9
    }

    .order-sm-10 {
        order: 10
    }

    .order-sm-11 {
        order: 11
    }

    .order-sm-12 {
        order: 12
    }

    .offset-sm-0 {
        margin-left: 0
    }

    .offset-sm-1 {
        margin-left: 8.33333%
    }

    .offset-sm-2 {
        margin-left: 16.66667%
    }

    .offset-sm-3 {
        margin-left: 25%
    }

    .offset-sm-4 {
        margin-left: 33.33333%
    }

    .offset-sm-5 {
        margin-left: 41.66667%
    }

    .offset-sm-6 {
        margin-left: 50%
    }

    .offset-sm-7 {
        margin-left: 58.33333%
    }

    .offset-sm-8 {
        margin-left: 66.66667%
    }

    .offset-sm-9 {
        margin-left: 75%
    }

    .offset-sm-10 {
        margin-left: 83.33333%
    }

    .offset-sm-11 {
        margin-left: 91.66667%
    }

    .d-sm-none {
        display: none !important
    }

    .d-sm-inline {
        display: inline !important
    }

    .d-sm-inline-block {
        display: inline-block !important
    }

    .d-sm-block {
        display: block !important
    }

    .d-sm-table {
        display: table !important
    }

    .d-sm-table-row {
        display: table-row !important
    }

    .d-sm-table-cell {
        display: table-cell !important
    }

    .d-sm-flex {
        display: flex !important
    }

    .d-sm-inline-flex {
        display: inline-flex !important
    }

    .flex-sm-row {
        flex-direction: row !important
    }

    .flex-sm-column {
        flex-direction: column !important
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-sm-fill {
        flex: 1 1 auto !important
    }

    .flex-sm-grow-0 {
        flex-grow: 0 !important
    }

    .flex-sm-grow-1 {
        flex-grow: 1 !important
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-sm-start {
        justify-content: flex-start !important
    }

    .justify-content-sm-end {
        justify-content: flex-end !important
    }

    .justify-content-sm-center {
        justify-content: center !important
    }

    .justify-content-sm-between {
        justify-content: space-between !important
    }

    .justify-content-sm-around {
        justify-content: space-around !important
    }

    .align-items-sm-start {
        align-items: flex-start !important
    }

    .align-items-sm-end {
        align-items: flex-end !important
    }

    .align-items-sm-center {
        align-items: center !important
    }

    .align-items-sm-baseline {
        align-items: baseline !important
    }

    .align-items-sm-stretch {
        align-items: stretch !important
    }

    .align-content-sm-start {
        align-content: flex-start !important
    }

    .align-content-sm-end {
        align-content: flex-end !important
    }

    .align-content-sm-center {
        align-content: center !important
    }

    .align-content-sm-between {
        align-content: space-between !important
    }

    .align-content-sm-around {
        align-content: space-around !important
    }

    .align-content-sm-stretch {
        align-content: stretch !important
    }

    .align-self-sm-auto {
        align-self: auto !important
    }

    .align-self-sm-start {
        align-self: flex-start !important
    }

    .align-self-sm-end {
        align-self: flex-end !important
    }

    .align-self-sm-center {
        align-self: center !important
    }

    .align-self-sm-baseline {
        align-self: baseline !important
    }

    .align-self-sm-stretch {
        align-self: stretch !important
    }

    .m-sm-0 {
        margin: 0 !important
    }

    .mt-sm-0,
    .my-sm-0 {
        margin-top: 0 !important
    }

    .mr-sm-0,
    .mx-sm-0 {
        margin-right: 0 !important
    }

    .mb-sm-0,
    .my-sm-0 {
        margin-bottom: 0 !important
    }

    .ml-sm-0,
    .mx-sm-0 {
        margin-left: 0 !important
    }

    .m-sm-1 {
        margin: .25rem !important
    }

    .mt-sm-1,
    .my-sm-1 {
        margin-top: .25rem !important
    }

    .mr-sm-1,
    .mx-sm-1 {
        margin-right: .25rem !important
    }

    .mb-sm-1,
    .my-sm-1 {
        margin-bottom: .25rem !important
    }

    .ml-sm-1,
    .mx-sm-1 {
        margin-left: .25rem !important
    }

    .m-sm-2 {
        margin: .5rem !important
    }

    .mt-sm-2,
    .my-sm-2 {
        margin-top: .5rem !important
    }

    .mr-sm-2,
    .mx-sm-2 {
        margin-right: .5rem !important
    }

    .mb-sm-2,
    .my-sm-2 {
        margin-bottom: .5rem !important
    }

    .ml-sm-2,
    .mx-sm-2 {
        margin-left: .5rem !important
    }

    .m-sm-3 {
        margin: 1rem !important
    }

    .mt-sm-3,
    .my-sm-3 {
        margin-top: 1rem !important
    }

    .mr-sm-3,
    .mx-sm-3 {
        margin-right: 1rem !important
    }

    .mb-sm-3,
    .my-sm-3 {
        margin-bottom: 1rem !important
    }

    .ml-sm-3,
    .mx-sm-3 {
        margin-left: 1rem !important
    }

    .m-sm-4 {
        margin: 1.5rem !important
    }

    .mt-sm-4,
    .my-sm-4 {
        margin-top: 1.5rem !important
    }

    .mr-sm-4,
    .mx-sm-4 {
        margin-right: 1.5rem !important
    }

    .mb-sm-4,
    .my-sm-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-sm-4,
    .mx-sm-4 {
        margin-left: 1.5rem !important
    }

    .m-sm-5 {
        margin: 3rem !important
    }

    .mt-sm-5,
    .my-sm-5 {
        margin-top: 3rem !important
    }

    .mr-sm-5,
    .mx-sm-5 {
        margin-right: 3rem !important
    }

    .mb-sm-5,
    .my-sm-5 {
        margin-bottom: 3rem !important
    }

    .ml-sm-5,
    .mx-sm-5 {
        margin-left: 3rem !important
    }

    .p-sm-0 {
        padding: 0 !important
    }

    .pt-sm-0,
    .py-sm-0 {
        padding-top: 0 !important
    }

    .pr-sm-0,
    .px-sm-0 {
        padding-right: 0 !important
    }

    .pb-sm-0,
    .py-sm-0 {
        padding-bottom: 0 !important
    }

    .pl-sm-0,
    .px-sm-0 {
        padding-left: 0 !important
    }

    .p-sm-1 {
        padding: .25rem !important
    }

    .pt-sm-1,
    .py-sm-1 {
        padding-top: .25rem !important
    }

    .pr-sm-1,
    .px-sm-1 {
        padding-right: .25rem !important
    }

    .pb-sm-1,
    .py-sm-1 {
        padding-bottom: .25rem !important
    }

    .pl-sm-1,
    .px-sm-1 {
        padding-left: .25rem !important
    }

    .p-sm-2 {
        padding: .5rem !important
    }

    .pt-sm-2,
    .py-sm-2 {
        padding-top: .5rem !important
    }

    .pr-sm-2,
    .px-sm-2 {
        padding-right: .5rem !important
    }

    .pb-sm-2,
    .py-sm-2 {
        padding-bottom: .5rem !important
    }

    .pl-sm-2,
    .px-sm-2 {
        padding-left: .5rem !important
    }

    .p-sm-3 {
        padding: 1rem !important
    }

    .pt-sm-3,
    .py-sm-3 {
        padding-top: 1rem !important
    }

    .pr-sm-3,
    .px-sm-3 {
        padding-right: 1rem !important
    }

    .pb-sm-3,
    .py-sm-3 {
        padding-bottom: 1rem !important
    }

    .pl-sm-3,
    .px-sm-3 {
        padding-left: 1rem !important
    }

    .p-sm-4 {
        padding: 1.5rem !important
    }

    .pt-sm-4,
    .py-sm-4 {
        padding-top: 1.5rem !important
    }

    .pr-sm-4,
    .px-sm-4 {
        padding-right: 1.5rem !important
    }

    .pb-sm-4,
    .py-sm-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-sm-4,
    .px-sm-4 {
        padding-left: 1.5rem !important
    }

    .p-sm-5 {
        padding: 3rem !important
    }

    .pt-sm-5,
    .py-sm-5 {
        padding-top: 3rem !important
    }

    .pr-sm-5,
    .px-sm-5 {
        padding-right: 3rem !important
    }

    .pb-sm-5,
    .py-sm-5 {
        padding-bottom: 3rem !important
    }

    .pl-sm-5,
    .px-sm-5 {
        padding-left: 3rem !important
    }

    .m-sm-n1 {
        margin: -.25rem !important
    }

    .mt-sm-n1,
    .my-sm-n1 {
        margin-top: -.25rem !important
    }

    .mr-sm-n1,
    .mx-sm-n1 {
        margin-right: -.25rem !important
    }

    .mb-sm-n1,
    .my-sm-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-sm-n1,
    .mx-sm-n1 {
        margin-left: -.25rem !important
    }

    .m-sm-n2 {
        margin: -.5rem !important
    }

    .mt-sm-n2,
    .my-sm-n2 {
        margin-top: -.5rem !important
    }

    .mr-sm-n2,
    .mx-sm-n2 {
        margin-right: -.5rem !important
    }

    .mb-sm-n2,
    .my-sm-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-sm-n2,
    .mx-sm-n2 {
        margin-left: -.5rem !important
    }

    .m-sm-n3 {
        margin: -1rem !important
    }

    .mt-sm-n3,
    .my-sm-n3 {
        margin-top: -1rem !important
    }

    .mr-sm-n3,
    .mx-sm-n3 {
        margin-right: -1rem !important
    }

    .mb-sm-n3,
    .my-sm-n3 {
        margin-bottom: -1rem !important
    }

    .ml-sm-n3,
    .mx-sm-n3 {
        margin-left: -1rem !important
    }

    .m-sm-n4 {
        margin: -1.5rem !important
    }

    .mt-sm-n4,
    .my-sm-n4 {
        margin-top: -1.5rem !important
    }

    .mr-sm-n4,
    .mx-sm-n4 {
        margin-right: -1.5rem !important
    }

    .mb-sm-n4,
    .my-sm-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-sm-n4,
    .mx-sm-n4 {
        margin-left: -1.5rem !important
    }

    .m-sm-n5 {
        margin: -3rem !important
    }

    .mt-sm-n5,
    .my-sm-n5 {
        margin-top: -3rem !important
    }

    .mr-sm-n5,
    .mx-sm-n5 {
        margin-right: -3rem !important
    }

    .mb-sm-n5,
    .my-sm-n5 {
        margin-bottom: -3rem !important
    }

    .ml-sm-n5,
    .mx-sm-n5 {
        margin-left: -3rem !important
    }

    .m-sm-auto {
        margin: auto !important
    }

    .mt-sm-auto,
    .my-sm-auto {
        margin-top: auto !important
    }

    .mr-sm-auto,
    .mx-sm-auto {
        margin-right: auto !important
    }

    .mb-sm-auto,
    .my-sm-auto {
        margin-bottom: auto !important
    }

    .ml-sm-auto,
    .mx-sm-auto {
        margin-left: auto !important
    }
}

@media only screen and (min-width: 576px) {
    .back--content {
        padding-left: 40px;
        padding-right: 40px
    }
}

@media (min-width: 768px) {
    .container,
    .container-md,
    .container-sm {
        max-width: 720px
    }

    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-md-1 > * {
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-md-2 > * {
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-md-3 > * {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-md-4 > * {
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-md-5 > * {
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-md-6 > * {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-md-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-md-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-md-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-md-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-md-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-md-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-md-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-md-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-md-first {
        order: -1
    }

    .order-md-last {
        order: 13
    }

    .order-md-0 {
        order: 0
    }

    .order-md-1 {
        order: 1
    }

    .order-md-2 {
        order: 2
    }

    .order-md-3 {
        order: 3
    }

    .order-md-4 {
        order: 4
    }

    .order-md-5 {
        order: 5
    }

    .order-md-6 {
        order: 6
    }

    .order-md-7 {
        order: 7
    }

    .order-md-8 {
        order: 8
    }

    .order-md-9 {
        order: 9
    }

    .order-md-10 {
        order: 10
    }

    .order-md-11 {
        order: 11
    }

    .order-md-12 {
        order: 12
    }

    .offset-md-0 {
        margin-left: 0
    }

    .offset-md-1 {
        margin-left: 8.33333%
    }

    .offset-md-2 {
        margin-left: 16.66667%
    }

    .offset-md-3 {
        margin-left: 25%
    }

    .offset-md-4 {
        margin-left: 33.33333%
    }

    .offset-md-5 {
        margin-left: 41.66667%
    }

    .offset-md-6 {
        margin-left: 50%
    }

    .offset-md-7 {
        margin-left: 58.33333%
    }

    .offset-md-8 {
        margin-left: 66.66667%
    }

    .offset-md-9 {
        margin-left: 75%
    }

    .offset-md-10 {
        margin-left: 83.33333%
    }

    .offset-md-11 {
        margin-left: 91.66667%
    }

    .d-md-none {
        display: none !important
    }

    .d-md-inline {
        display: inline !important
    }

    .d-md-inline-block {
        display: inline-block !important
    }

    .d-md-block {
        display: block !important
    }

    .d-md-table {
        display: table !important
    }

    .d-md-table-row {
        display: table-row !important
    }

    .d-md-table-cell {
        display: table-cell !important
    }

    .d-md-flex {
        display: flex !important
    }

    .d-md-inline-flex {
        display: inline-flex !important
    }

    .flex-md-row {
        flex-direction: row !important
    }

    .flex-md-column {
        flex-direction: column !important
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-md-wrap {
        flex-wrap: wrap !important
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-md-fill {
        flex: 1 1 auto !important
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-md-start {
        justify-content: flex-start !important
    }

    .justify-content-md-end {
        justify-content: flex-end !important
    }

    .justify-content-md-center {
        justify-content: center !important
    }

    .justify-content-md-between {
        justify-content: space-between !important
    }

    .justify-content-md-around {
        justify-content: space-around !important
    }

    .align-items-md-start {
        align-items: flex-start !important
    }

    .align-items-md-end {
        align-items: flex-end !important
    }

    .align-items-md-center {
        align-items: center !important
    }

    .align-items-md-baseline {
        align-items: baseline !important
    }

    .align-items-md-stretch {
        align-items: stretch !important
    }

    .align-content-md-start {
        align-content: flex-start !important
    }

    .align-content-md-end {
        align-content: flex-end !important
    }

    .align-content-md-center {
        align-content: center !important
    }

    .align-content-md-between {
        align-content: space-between !important
    }

    .align-content-md-around {
        align-content: space-around !important
    }

    .align-content-md-stretch {
        align-content: stretch !important
    }

    .align-self-md-auto {
        align-self: auto !important
    }

    .align-self-md-start {
        align-self: flex-start !important
    }

    .align-self-md-end {
        align-self: flex-end !important
    }

    .align-self-md-center {
        align-self: center !important
    }

    .align-self-md-baseline {
        align-self: baseline !important
    }

    .align-self-md-stretch {
        align-self: stretch !important
    }

    .m-md-0 {
        margin: 0 !important
    }

    .mt-md-0,
    .my-md-0 {
        margin-top: 0 !important
    }

    .mr-md-0,
    .mx-md-0 {
        margin-right: 0 !important
    }

    .mb-md-0,
    .my-md-0 {
        margin-bottom: 0 !important
    }

    .ml-md-0,
    .mx-md-0 {
        margin-left: 0 !important
    }

    .m-md-1 {
        margin: .25rem !important
    }

    .mt-md-1,
    .my-md-1 {
        margin-top: .25rem !important
    }

    .mr-md-1,
    .mx-md-1 {
        margin-right: .25rem !important
    }

    .mb-md-1,
    .my-md-1 {
        margin-bottom: .25rem !important
    }

    .ml-md-1,
    .mx-md-1 {
        margin-left: .25rem !important
    }

    .m-md-2 {
        margin: .5rem !important
    }

    .mt-md-2,
    .my-md-2 {
        margin-top: .5rem !important
    }

    .mr-md-2,
    .mx-md-2 {
        margin-right: .5rem !important
    }

    .mb-md-2,
    .my-md-2 {
        margin-bottom: .5rem !important
    }

    .ml-md-2,
    .mx-md-2 {
        margin-left: .5rem !important
    }

    .m-md-3 {
        margin: 1rem !important
    }

    .mt-md-3,
    .my-md-3 {
        margin-top: 1rem !important
    }

    .mr-md-3,
    .mx-md-3 {
        margin-right: 1rem !important
    }

    .mb-md-3,
    .my-md-3 {
        margin-bottom: 1rem !important
    }

    .ml-md-3,
    .mx-md-3 {
        margin-left: 1rem !important
    }

    .m-md-4 {
        margin: 1.5rem !important
    }

    .mt-md-4,
    .my-md-4 {
        margin-top: 1.5rem !important
    }

    .mr-md-4,
    .mx-md-4 {
        margin-right: 1.5rem !important
    }

    .mb-md-4,
    .my-md-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-md-4,
    .mx-md-4 {
        margin-left: 1.5rem !important
    }

    .m-md-5 {
        margin: 3rem !important
    }

    .mt-md-5,
    .my-md-5 {
        margin-top: 3rem !important
    }

    .mr-md-5,
    .mx-md-5 {
        margin-right: 3rem !important
    }

    .mb-md-5,
    .my-md-5 {
        margin-bottom: 3rem !important
    }

    .ml-md-5,
    .mx-md-5 {
        margin-left: 3rem !important
    }

    .p-md-0 {
        padding: 0 !important
    }

    .pt-md-0,
    .py-md-0 {
        padding-top: 0 !important
    }

    .pr-md-0,
    .px-md-0 {
        padding-right: 0 !important
    }

    .pb-md-0,
    .py-md-0 {
        padding-bottom: 0 !important
    }

    .pl-md-0,
    .px-md-0 {
        padding-left: 0 !important
    }

    .p-md-1 {
        padding: .25rem !important
    }

    .pt-md-1,
    .py-md-1 {
        padding-top: .25rem !important
    }

    .pr-md-1,
    .px-md-1 {
        padding-right: .25rem !important
    }

    .pb-md-1,
    .py-md-1 {
        padding-bottom: .25rem !important
    }

    .pl-md-1,
    .px-md-1 {
        padding-left: .25rem !important
    }

    .p-md-2 {
        padding: .5rem !important
    }

    .pt-md-2,
    .py-md-2 {
        padding-top: .5rem !important
    }

    .pr-md-2,
    .px-md-2 {
        padding-right: .5rem !important
    }

    .pb-md-2,
    .py-md-2 {
        padding-bottom: .5rem !important
    }

    .pl-md-2,
    .px-md-2 {
        padding-left: .5rem !important
    }

    .p-md-3 {
        padding: 1rem !important
    }

    .pt-md-3,
    .py-md-3 {
        padding-top: 1rem !important
    }

    .pr-md-3,
    .px-md-3 {
        padding-right: 1rem !important
    }

    .pb-md-3,
    .py-md-3 {
        padding-bottom: 1rem !important
    }

    .pl-md-3,
    .px-md-3 {
        padding-left: 1rem !important
    }

    .p-md-4 {
        padding: 1.5rem !important
    }

    .pt-md-4,
    .py-md-4 {
        padding-top: 1.5rem !important
    }

    .pr-md-4,
    .px-md-4 {
        padding-right: 1.5rem !important
    }

    .pb-md-4,
    .py-md-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-md-4,
    .px-md-4 {
        padding-left: 1.5rem !important
    }

    .p-md-5 {
        padding: 3rem !important
    }

    .pt-md-5,
    .py-md-5 {
        padding-top: 3rem !important
    }

    .pr-md-5,
    .px-md-5 {
        padding-right: 3rem !important
    }

    .pb-md-5,
    .py-md-5 {
        padding-bottom: 3rem !important
    }

    .pl-md-5,
    .px-md-5 {
        padding-left: 3rem !important
    }

    .m-md-n1 {
        margin: -.25rem !important
    }

    .mt-md-n1,
    .my-md-n1 {
        margin-top: -.25rem !important
    }

    .mr-md-n1,
    .mx-md-n1 {
        margin-right: -.25rem !important
    }

    .mb-md-n1,
    .my-md-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-md-n1,
    .mx-md-n1 {
        margin-left: -.25rem !important
    }

    .m-md-n2 {
        margin: -.5rem !important
    }

    .mt-md-n2,
    .my-md-n2 {
        margin-top: -.5rem !important
    }

    .mr-md-n2,
    .mx-md-n2 {
        margin-right: -.5rem !important
    }

    .mb-md-n2,
    .my-md-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-md-n2,
    .mx-md-n2 {
        margin-left: -.5rem !important
    }

    .m-md-n3 {
        margin: -1rem !important
    }

    .mt-md-n3,
    .my-md-n3 {
        margin-top: -1rem !important
    }

    .mr-md-n3,
    .mx-md-n3 {
        margin-right: -1rem !important
    }

    .mb-md-n3,
    .my-md-n3 {
        margin-bottom: -1rem !important
    }

    .ml-md-n3,
    .mx-md-n3 {
        margin-left: -1rem !important
    }

    .m-md-n4 {
        margin: -1.5rem !important
    }

    .mt-md-n4,
    .my-md-n4 {
        margin-top: -1.5rem !important
    }

    .mr-md-n4,
    .mx-md-n4 {
        margin-right: -1.5rem !important
    }

    .mb-md-n4,
    .my-md-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-md-n4,
    .mx-md-n4 {
        margin-left: -1.5rem !important
    }

    .m-md-n5 {
        margin: -3rem !important
    }

    .mt-md-n5,
    .my-md-n5 {
        margin-top: -3rem !important
    }

    .mr-md-n5,
    .mx-md-n5 {
        margin-right: -3rem !important
    }

    .mb-md-n5,
    .my-md-n5 {
        margin-bottom: -3rem !important
    }

    .ml-md-n5,
    .mx-md-n5 {
        margin-left: -3rem !important
    }

    .m-md-auto {
        margin: auto !important
    }

    .mt-md-auto,
    .my-md-auto {
        margin-top: auto !important
    }

    .mr-md-auto,
    .mx-md-auto {
        margin-right: auto !important
    }

    .mb-md-auto,
    .my-md-auto {
        margin-bottom: auto !important
    }

    .ml-md-auto,
    .mx-md-auto {
        margin-left: auto !important
    }
}

@media only screen and (min-width: 991px) {
    .table--ico {
        display: none
    }

    .gallery__sl .slick-slide:not(.slick-current) .gallery__sl-item {
        position: relative;
        font-size: 0
    }

    .gallery__sl .slick-slide:not(.slick-current) .gallery__sl-item::before {
        content: '';
        display: block;
        padding-top: 48%
    }

    .gallery__sl .slick-slide:not(.slick-current) .gallery__sl-item img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    .tabs-row .tabs__list-item svg {
        position: absolute;
        right: 0;
        width: 23px;
        height: 23px;
        display: none;
        fill: #fff
    }

    .tabs-row .tabs__list-item svg.tops {
        bottom: 100%
    }

    .tabs-row .tabs__list-item svg.bot {
        top: 100%
    }

    .tabs-row .tabs__list-item:first-child {
        margin-top: 0
    }

    .tabs-row .tabs__list-item.active-tab {
        margin-right: -10px;
        border: 0;
        border-radius: 20px 0 0 20px;
        box-shadow: 0 0 20px rgba(54, 104, 92, .2)
    }

    .tabs-row .tabs__list-item.active-tab svg {
        display: block
    }

    .tabs-row .tabs__list-item.active-tab::before {
        content: '';
        position: absolute;
        top: -20px;
        bottom: -20px;
        left: 100%;
        width: 20px;
        background: #fff
    }
}

@media (min-width: 992px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 960px
    }

    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-lg-1 > * {
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-lg-2 > * {
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-lg-3 > * {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-lg-4 > * {
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-lg-5 > * {
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-lg-6 > * {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-lg-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-lg-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-lg-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-lg-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-lg-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-lg-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-lg-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-lg-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-lg-first {
        order: -1
    }

    .order-lg-last {
        order: 13
    }

    .order-lg-0 {
        order: 0
    }

    .order-lg-1 {
        order: 1
    }

    .order-lg-2 {
        order: 2
    }

    .order-lg-3 {
        order: 3
    }

    .order-lg-4 {
        order: 4
    }

    .order-lg-5 {
        order: 5
    }

    .order-lg-6 {
        order: 6
    }

    .order-lg-7 {
        order: 7
    }

    .order-lg-8 {
        order: 8
    }

    .order-lg-9 {
        order: 9
    }

    .order-lg-10 {
        order: 10
    }

    .order-lg-11 {
        order: 11
    }

    .order-lg-12 {
        order: 12
    }

    .offset-lg-0 {
        margin-left: 0
    }

    .offset-lg-1 {
        margin-left: 8.33333%
    }

    .offset-lg-2 {
        margin-left: 16.66667%
    }

    .offset-lg-3 {
        margin-left: 25%
    }

    .offset-lg-4 {
        margin-left: 33.33333%
    }

    .offset-lg-5 {
        margin-left: 41.66667%
    }

    .offset-lg-6 {
        margin-left: 50%
    }

    .offset-lg-7 {
        margin-left: 58.33333%
    }

    .offset-lg-8 {
        margin-left: 66.66667%
    }

    .offset-lg-9 {
        margin-left: 75%
    }

    .offset-lg-10 {
        margin-left: 83.33333%
    }

    .offset-lg-11 {
        margin-left: 91.66667%
    }

    .d-lg-none {
        display: none !important
    }

    .d-lg-inline {
        display: inline !important
    }

    .d-lg-inline-block {
        display: inline-block !important
    }

    .d-lg-block {
        display: block !important
    }

    .d-lg-table {
        display: table !important
    }

    .d-lg-table-row {
        display: table-row !important
    }

    .d-lg-table-cell {
        display: table-cell !important
    }

    .d-lg-flex {
        display: flex !important
    }

    .d-lg-inline-flex {
        display: inline-flex !important
    }

    .flex-lg-row {
        flex-direction: row !important
    }

    .flex-lg-column {
        flex-direction: column !important
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-lg-fill {
        flex: 1 1 auto !important
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-lg-start {
        justify-content: flex-start !important
    }

    .justify-content-lg-end {
        justify-content: flex-end !important
    }

    .justify-content-lg-center {
        justify-content: center !important
    }

    .justify-content-lg-between {
        justify-content: space-between !important
    }

    .justify-content-lg-around {
        justify-content: space-around !important
    }

    .align-items-lg-start {
        align-items: flex-start !important
    }

    .align-items-lg-end {
        align-items: flex-end !important
    }

    .align-items-lg-center {
        align-items: center !important
    }

    .align-items-lg-baseline {
        align-items: baseline !important
    }

    .align-items-lg-stretch {
        align-items: stretch !important
    }

    .align-content-lg-start {
        align-content: flex-start !important
    }

    .align-content-lg-end {
        align-content: flex-end !important
    }

    .align-content-lg-center {
        align-content: center !important
    }

    .align-content-lg-between {
        align-content: space-between !important
    }

    .align-content-lg-around {
        align-content: space-around !important
    }

    .align-content-lg-stretch {
        align-content: stretch !important
    }

    .align-self-lg-auto {
        align-self: auto !important
    }

    .align-self-lg-start {
        align-self: flex-start !important
    }

    .align-self-lg-end {
        align-self: flex-end !important
    }

    .align-self-lg-center {
        align-self: center !important
    }

    .align-self-lg-baseline {
        align-self: baseline !important
    }

    .align-self-lg-stretch {
        align-self: stretch !important
    }

    .m-lg-0 {
        margin: 0 !important
    }

    .mt-lg-0,
    .my-lg-0 {
        margin-top: 0 !important
    }

    .mr-lg-0,
    .mx-lg-0 {
        margin-right: 0 !important
    }

    .mb-lg-0,
    .my-lg-0 {
        margin-bottom: 0 !important
    }

    .ml-lg-0,
    .mx-lg-0 {
        margin-left: 0 !important
    }

    .m-lg-1 {
        margin: .25rem !important
    }

    .mt-lg-1,
    .my-lg-1 {
        margin-top: .25rem !important
    }

    .mr-lg-1,
    .mx-lg-1 {
        margin-right: .25rem !important
    }

    .mb-lg-1,
    .my-lg-1 {
        margin-bottom: .25rem !important
    }

    .ml-lg-1,
    .mx-lg-1 {
        margin-left: .25rem !important
    }

    .m-lg-2 {
        margin: .5rem !important
    }

    .mt-lg-2,
    .my-lg-2 {
        margin-top: .5rem !important
    }

    .mr-lg-2,
    .mx-lg-2 {
        margin-right: .5rem !important
    }

    .mb-lg-2,
    .my-lg-2 {
        margin-bottom: .5rem !important
    }

    .ml-lg-2,
    .mx-lg-2 {
        margin-left: .5rem !important
    }

    .m-lg-3 {
        margin: 1rem !important
    }

    .mt-lg-3,
    .my-lg-3 {
        margin-top: 1rem !important
    }

    .mr-lg-3,
    .mx-lg-3 {
        margin-right: 1rem !important
    }

    .mb-lg-3,
    .my-lg-3 {
        margin-bottom: 1rem !important
    }

    .ml-lg-3,
    .mx-lg-3 {
        margin-left: 1rem !important
    }

    .m-lg-4 {
        margin: 1.5rem !important
    }

    .mt-lg-4,
    .my-lg-4 {
        margin-top: 1.5rem !important
    }

    .mr-lg-4,
    .mx-lg-4 {
        margin-right: 1.5rem !important
    }

    .mb-lg-4,
    .my-lg-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-lg-4,
    .mx-lg-4 {
        margin-left: 1.5rem !important
    }

    .m-lg-5 {
        margin: 3rem !important
    }

    .mt-lg-5,
    .my-lg-5 {
        margin-top: 3rem !important
    }

    .mr-lg-5,
    .mx-lg-5 {
        margin-right: 3rem !important
    }

    .mb-lg-5,
    .my-lg-5 {
        margin-bottom: 3rem !important
    }

    .ml-lg-5,
    .mx-lg-5 {
        margin-left: 3rem !important
    }

    .p-lg-0 {
        padding: 0 !important
    }

    .pt-lg-0,
    .py-lg-0 {
        padding-top: 0 !important
    }

    .pr-lg-0,
    .px-lg-0 {
        padding-right: 0 !important
    }

    .pb-lg-0,
    .py-lg-0 {
        padding-bottom: 0 !important
    }

    .pl-lg-0,
    .px-lg-0 {
        padding-left: 0 !important
    }

    .p-lg-1 {
        padding: .25rem !important
    }

    .pt-lg-1,
    .py-lg-1 {
        padding-top: .25rem !important
    }

    .pr-lg-1,
    .px-lg-1 {
        padding-right: .25rem !important
    }

    .pb-lg-1,
    .py-lg-1 {
        padding-bottom: .25rem !important
    }

    .pl-lg-1,
    .px-lg-1 {
        padding-left: .25rem !important
    }

    .p-lg-2 {
        padding: .5rem !important
    }

    .pt-lg-2,
    .py-lg-2 {
        padding-top: .5rem !important
    }

    .pr-lg-2,
    .px-lg-2 {
        padding-right: .5rem !important
    }

    .pb-lg-2,
    .py-lg-2 {
        padding-bottom: .5rem !important
    }

    .pl-lg-2,
    .px-lg-2 {
        padding-left: .5rem !important
    }

    .p-lg-3 {
        padding: 1rem !important
    }

    .pt-lg-3,
    .py-lg-3 {
        padding-top: 1rem !important
    }

    .pr-lg-3,
    .px-lg-3 {
        padding-right: 1rem !important
    }

    .pb-lg-3,
    .py-lg-3 {
        padding-bottom: 1rem !important
    }

    .pl-lg-3,
    .px-lg-3 {
        padding-left: 1rem !important
    }

    .p-lg-4 {
        padding: 1.5rem !important
    }

    .pt-lg-4,
    .py-lg-4 {
        padding-top: 1.5rem !important
    }

    .pr-lg-4,
    .px-lg-4 {
        padding-right: 1.5rem !important
    }

    .pb-lg-4,
    .py-lg-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-lg-4,
    .px-lg-4 {
        padding-left: 1.5rem !important
    }

    .p-lg-5 {
        padding: 3rem !important
    }

    .pt-lg-5,
    .py-lg-5 {
        padding-top: 3rem !important
    }

    .pr-lg-5,
    .px-lg-5 {
        padding-right: 3rem !important
    }

    .pb-lg-5,
    .py-lg-5 {
        padding-bottom: 3rem !important
    }

    .pl-lg-5,
    .px-lg-5 {
        padding-left: 3rem !important
    }

    .m-lg-n1 {
        margin: -.25rem !important
    }

    .mt-lg-n1,
    .my-lg-n1 {
        margin-top: -.25rem !important
    }

    .mr-lg-n1,
    .mx-lg-n1 {
        margin-right: -.25rem !important
    }

    .mb-lg-n1,
    .my-lg-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-lg-n1,
    .mx-lg-n1 {
        margin-left: -.25rem !important
    }

    .m-lg-n2 {
        margin: -.5rem !important
    }

    .mt-lg-n2,
    .my-lg-n2 {
        margin-top: -.5rem !important
    }

    .mr-lg-n2,
    .mx-lg-n2 {
        margin-right: -.5rem !important
    }

    .mb-lg-n2,
    .my-lg-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-lg-n2,
    .mx-lg-n2 {
        margin-left: -.5rem !important
    }

    .m-lg-n3 {
        margin: -1rem !important
    }

    .mt-lg-n3,
    .my-lg-n3 {
        margin-top: -1rem !important
    }

    .mr-lg-n3,
    .mx-lg-n3 {
        margin-right: -1rem !important
    }

    .mb-lg-n3,
    .my-lg-n3 {
        margin-bottom: -1rem !important
    }

    .ml-lg-n3,
    .mx-lg-n3 {
        margin-left: -1rem !important
    }

    .m-lg-n4 {
        margin: -1.5rem !important
    }

    .mt-lg-n4,
    .my-lg-n4 {
        margin-top: -1.5rem !important
    }

    .mr-lg-n4,
    .mx-lg-n4 {
        margin-right: -1.5rem !important
    }

    .mb-lg-n4,
    .my-lg-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-lg-n4,
    .mx-lg-n4 {
        margin-left: -1.5rem !important
    }

    .m-lg-n5 {
        margin: -3rem !important
    }

    .mt-lg-n5,
    .my-lg-n5 {
        margin-top: -3rem !important
    }

    .mr-lg-n5,
    .mx-lg-n5 {
        margin-right: -3rem !important
    }

    .mb-lg-n5,
    .my-lg-n5 {
        margin-bottom: -3rem !important
    }

    .ml-lg-n5,
    .mx-lg-n5 {
        margin-left: -3rem !important
    }

    .m-lg-auto {
        margin: auto !important
    }

    .mt-lg-auto,
    .my-lg-auto {
        margin-top: auto !important
    }

    .mr-lg-auto,
    .mx-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-auto,
    .my-lg-auto {
        margin-bottom: auto !important
    }

    .ml-lg-auto,
    .mx-lg-auto {
        margin-left: auto !important
    }
}

@media only screen and (min-width: 992px) {
    .btn:hover {
        background: #3a4664;
        box-shadow: 0 6px 20px rgba(58, 70, 100, .5)
    }

    .btn--dark:hover {
        background: #fd8733;
        box-shadow: 0 6px 20px rgba(61, 177, 150, .5)
    }

    .sl-btn:hover {
        border: 4px solid #e5f8f4;
        box-shadow: none
    }
}

@media (min-width: 1230px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1230px
    }

    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%
    }

    .row-cols-xl-1 > * {
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-xl-2 > * {
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-xl-3 > * {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-xl-4 > * {
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-xl-5 > * {
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-xl-6 > * {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xl-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-xl-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xl-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-xl-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xl-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-xl-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xl-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-xl-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xl-first {
        order: -1
    }

    .order-xl-last {
        order: 13
    }

    .order-xl-0 {
        order: 0
    }

    .order-xl-1 {
        order: 1
    }

    .order-xl-2 {
        order: 2
    }

    .order-xl-3 {
        order: 3
    }

    .order-xl-4 {
        order: 4
    }

    .order-xl-5 {
        order: 5
    }

    .order-xl-6 {
        order: 6
    }

    .order-xl-7 {
        order: 7
    }

    .order-xl-8 {
        order: 8
    }

    .order-xl-9 {
        order: 9
    }

    .order-xl-10 {
        order: 10
    }

    .order-xl-11 {
        order: 11
    }

    .order-xl-12 {
        order: 12
    }

    .offset-xl-0 {
        margin-left: 0
    }

    .offset-xl-1 {
        margin-left: 8.33333%
    }

    .offset-xl-2 {
        margin-left: 16.66667%
    }

    .offset-xl-3 {
        margin-left: 25%
    }

    .offset-xl-4 {
        margin-left: 33.33333%
    }

    .offset-xl-5 {
        margin-left: 41.66667%
    }

    .offset-xl-6 {
        margin-left: 50%
    }

    .offset-xl-7 {
        margin-left: 58.33333%
    }

    .offset-xl-8 {
        margin-left: 66.66667%
    }

    .offset-xl-9 {
        margin-left: 75%
    }

    .offset-xl-10 {
        margin-left: 83.33333%
    }

    .offset-xl-11 {
        margin-left: 91.66667%
    }

    .d-xl-none {
        display: none !important
    }

    .d-xl-inline {
        display: inline !important
    }

    .d-xl-inline-block {
        display: inline-block !important
    }

    .d-xl-block {
        display: block !important
    }

    .d-xl-table {
        display: table !important
    }

    .d-xl-table-row {
        display: table-row !important
    }

    .d-xl-table-cell {
        display: table-cell !important
    }

    .d-xl-flex {
        display: flex !important
    }

    .d-xl-inline-flex {
        display: inline-flex !important
    }

    .flex-xl-row {
        flex-direction: row !important
    }

    .flex-xl-column {
        flex-direction: column !important
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-xl-fill {
        flex: 1 1 auto !important
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-xl-start {
        justify-content: flex-start !important
    }

    .justify-content-xl-end {
        justify-content: flex-end !important
    }

    .justify-content-xl-center {
        justify-content: center !important
    }

    .justify-content-xl-between {
        justify-content: space-between !important
    }

    .justify-content-xl-around {
        justify-content: space-around !important
    }

    .align-items-xl-start {
        align-items: flex-start !important
    }

    .align-items-xl-end {
        align-items: flex-end !important
    }

    .align-items-xl-center {
        align-items: center !important
    }

    .align-items-xl-baseline {
        align-items: baseline !important
    }

    .align-items-xl-stretch {
        align-items: stretch !important
    }

    .align-content-xl-start {
        align-content: flex-start !important
    }

    .align-content-xl-end {
        align-content: flex-end !important
    }

    .align-content-xl-center {
        align-content: center !important
    }

    .align-content-xl-between {
        align-content: space-between !important
    }

    .align-content-xl-around {
        align-content: space-around !important
    }

    .align-content-xl-stretch {
        align-content: stretch !important
    }

    .align-self-xl-auto {
        align-self: auto !important
    }

    .align-self-xl-start {
        align-self: flex-start !important
    }

    .align-self-xl-end {
        align-self: flex-end !important
    }

    .align-self-xl-center {
        align-self: center !important
    }

    .align-self-xl-baseline {
        align-self: baseline !important
    }

    .align-self-xl-stretch {
        align-self: stretch !important
    }

    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0,
    .my-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0,
    .mx-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0,
    .my-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0,
    .mx-xl-0 {
        margin-left: 0 !important
    }

    .m-xl-1 {
        margin: .25rem !important
    }

    .mt-xl-1,
    .my-xl-1 {
        margin-top: .25rem !important
    }

    .mr-xl-1,
    .mx-xl-1 {
        margin-right: .25rem !important
    }

    .mb-xl-1,
    .my-xl-1 {
        margin-bottom: .25rem !important
    }

    .ml-xl-1,
    .mx-xl-1 {
        margin-left: .25rem !important
    }

    .m-xl-2 {
        margin: .5rem !important
    }

    .mt-xl-2,
    .my-xl-2 {
        margin-top: .5rem !important
    }

    .mr-xl-2,
    .mx-xl-2 {
        margin-right: .5rem !important
    }

    .mb-xl-2,
    .my-xl-2 {
        margin-bottom: .5rem !important
    }

    .ml-xl-2,
    .mx-xl-2 {
        margin-left: .5rem !important
    }

    .m-xl-3 {
        margin: 1rem !important
    }

    .mt-xl-3,
    .my-xl-3 {
        margin-top: 1rem !important
    }

    .mr-xl-3,
    .mx-xl-3 {
        margin-right: 1rem !important
    }

    .mb-xl-3,
    .my-xl-3 {
        margin-bottom: 1rem !important
    }

    .ml-xl-3,
    .mx-xl-3 {
        margin-left: 1rem !important
    }

    .m-xl-4 {
        margin: 1.5rem !important
    }

    .mt-xl-4,
    .my-xl-4 {
        margin-top: 1.5rem !important
    }

    .mr-xl-4,
    .mx-xl-4 {
        margin-right: 1.5rem !important
    }

    .mb-xl-4,
    .my-xl-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-xl-4,
    .mx-xl-4 {
        margin-left: 1.5rem !important
    }

    .m-xl-5 {
        margin: 3rem !important
    }

    .mt-xl-5,
    .my-xl-5 {
        margin-top: 3rem !important
    }

    .mr-xl-5,
    .mx-xl-5 {
        margin-right: 3rem !important
    }

    .mb-xl-5,
    .my-xl-5 {
        margin-bottom: 3rem !important
    }

    .ml-xl-5,
    .mx-xl-5 {
        margin-left: 3rem !important
    }

    .p-xl-0 {
        padding: 0 !important
    }

    .pt-xl-0,
    .py-xl-0 {
        padding-top: 0 !important
    }

    .pr-xl-0,
    .px-xl-0 {
        padding-right: 0 !important
    }

    .pb-xl-0,
    .py-xl-0 {
        padding-bottom: 0 !important
    }

    .pl-xl-0,
    .px-xl-0 {
        padding-left: 0 !important
    }

    .p-xl-1 {
        padding: .25rem !important
    }

    .pt-xl-1,
    .py-xl-1 {
        padding-top: .25rem !important
    }

    .pr-xl-1,
    .px-xl-1 {
        padding-right: .25rem !important
    }

    .pb-xl-1,
    .py-xl-1 {
        padding-bottom: .25rem !important
    }

    .pl-xl-1,
    .px-xl-1 {
        padding-left: .25rem !important
    }

    .p-xl-2 {
        padding: .5rem !important
    }

    .pt-xl-2,
    .py-xl-2 {
        padding-top: .5rem !important
    }

    .pr-xl-2,
    .px-xl-2 {
        padding-right: .5rem !important
    }

    .pb-xl-2,
    .py-xl-2 {
        padding-bottom: .5rem !important
    }

    .pl-xl-2,
    .px-xl-2 {
        padding-left: .5rem !important
    }

    .p-xl-3 {
        padding: 1rem !important
    }

    .pt-xl-3,
    .py-xl-3 {
        padding-top: 1rem !important
    }

    .pr-xl-3,
    .px-xl-3 {
        padding-right: 1rem !important
    }

    .pb-xl-3,
    .py-xl-3 {
        padding-bottom: 1rem !important
    }

    .pl-xl-3,
    .px-xl-3 {
        padding-left: 1rem !important
    }

    .p-xl-4 {
        padding: 1.5rem !important
    }

    .pt-xl-4,
    .py-xl-4 {
        padding-top: 1.5rem !important
    }

    .pr-xl-4,
    .px-xl-4 {
        padding-right: 1.5rem !important
    }

    .pb-xl-4,
    .py-xl-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-xl-4,
    .px-xl-4 {
        padding-left: 1.5rem !important
    }

    .p-xl-5 {
        padding: 3rem !important
    }

    .pt-xl-5,
    .py-xl-5 {
        padding-top: 3rem !important
    }

    .pr-xl-5,
    .px-xl-5 {
        padding-right: 3rem !important
    }

    .pb-xl-5,
    .py-xl-5 {
        padding-bottom: 3rem !important
    }

    .pl-xl-5,
    .px-xl-5 {
        padding-left: 3rem !important
    }

    .m-xl-n1 {
        margin: -.25rem !important
    }

    .mt-xl-n1,
    .my-xl-n1 {
        margin-top: -.25rem !important
    }

    .mr-xl-n1,
    .mx-xl-n1 {
        margin-right: -.25rem !important
    }

    .mb-xl-n1,
    .my-xl-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-xl-n1,
    .mx-xl-n1 {
        margin-left: -.25rem !important
    }

    .m-xl-n2 {
        margin: -.5rem !important
    }

    .mt-xl-n2,
    .my-xl-n2 {
        margin-top: -.5rem !important
    }

    .mr-xl-n2,
    .mx-xl-n2 {
        margin-right: -.5rem !important
    }

    .mb-xl-n2,
    .my-xl-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-xl-n2,
    .mx-xl-n2 {
        margin-left: -.5rem !important
    }

    .m-xl-n3 {
        margin: -1rem !important
    }

    .mt-xl-n3,
    .my-xl-n3 {
        margin-top: -1rem !important
    }

    .mr-xl-n3,
    .mx-xl-n3 {
        margin-right: -1rem !important
    }

    .mb-xl-n3,
    .my-xl-n3 {
        margin-bottom: -1rem !important
    }

    .ml-xl-n3,
    .mx-xl-n3 {
        margin-left: -1rem !important
    }

    .m-xl-n4 {
        margin: -1.5rem !important
    }

    .mt-xl-n4,
    .my-xl-n4 {
        margin-top: -1.5rem !important
    }

    .mr-xl-n4,
    .mx-xl-n4 {
        margin-right: -1.5rem !important
    }

    .mb-xl-n4,
    .my-xl-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-xl-n4,
    .mx-xl-n4 {
        margin-left: -1.5rem !important
    }

    .m-xl-n5 {
        margin: -3rem !important
    }

    .mt-xl-n5,
    .my-xl-n5 {
        margin-top: -3rem !important
    }

    .mr-xl-n5,
    .mx-xl-n5 {
        margin-right: -3rem !important
    }

    .mb-xl-n5,
    .my-xl-n5 {
        margin-bottom: -3rem !important
    }

    .ml-xl-n5,
    .mx-xl-n5 {
        margin-left: -3rem !important
    }

    .m-xl-auto {
        margin: auto !important
    }

    .mt-xl-auto,
    .my-xl-auto {
        margin-top: auto !important
    }

    .mr-xl-auto,
    .mx-xl-auto {
        margin-right: auto !important
    }

    .mb-xl-auto,
    .my-xl-auto {
        margin-bottom: auto !important
    }

    .ml-xl-auto,
    .mx-xl-auto {
        margin-left: auto !important
    }
}

@media only screen and (max-width: 1800px) {
    .main-content__nav {
        display: none !important
    }
}

@media only screen and (max-width: 1400px) {
    .project__sl .sl-btn--prev {
        right: auto;
        left: 0
    }

    .project__sl .sl-btn--next {
        left: auto;
        right: 0
    }

    .services__sl-item {
        position: relative;
    }

    .services__sl-item::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
        background: linear-gradient(90deg, rgba(255, 255, 255, .5) 23.44%, rgba(253, 237, 235, .5) 100%);
        border-radius: 25px
    }
}

@media only screen and (max-width: 1300px) {
    .video-wrap__img {
        display: none
    }
}

@media only screen and (max-width: 1200px) {
    .consult__box .contact-social,
    .consult__box-info-inner .switch {
        margin-left: 0
    }

    .consult__box-info {
        display: block
    }

    .consult__box-info-inner {
        display: flex;
        justify-content: flex-start;
        margin-bottom: 30px
    }

    .gallery__sl .slick-track {
        height: 310px
    }

    .soc-block__box {
        padding: 30px 20px
    }

    .copyright {
        flex-shrink: 1
    }

    .consult__box-img {
        display: none
    }
}

@media only screen and (max-width: 991px) {
    .s-content {
        padding: 80px 0;
        min-height: 0
    }

    .s-content__404 {
        font-size: 162px
    }

    .s-content__title {
        margin-bottom: 20px;
        font-size: 23px;
        font-weight: 700;
        line-height: 1.39
    }

    .s-content__subtitle {
        margin-top: 20px;
        font-size: 17px
    }

    .s-content__acton {
        margin-top: 40px
    }

    .breadcrumbs {
        padding: 20px 0;
        font-size: 15px
    }

    .breadcrumbs li::after {
        margin: 0 5px
    }

    .breadcrumbs a .breadcrumbs .last-item {
        padding: 0
    }

    .page-404 .blog h2 {
        text-align: center
    }

    .page-404__content {
        text-align: center;
        margin-top: 25px
    }

    .page-404__content br {
        display: none
    }

    .table {
        margin-top: 15px;
        overflow: auto
    }

    .table-row {
        width: 780px
    }

    body {
        padding-top: 50px
    }

    .header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        padding: 10px 0;
        font-size: 18px
    }

    .header__box {
        flex-wrap: nowrap
    }

    .logo {
        padding-top: 0;
        padding-bottom: 0
    }

    .nav {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        max-height: 80vh;
        display: none;
        margin-top: 0;
        padding: 10px 0;
        font-size: 20px;
        background: #fff;
        box-shadow: 0 0 20px rgba(54, 104, 92, .2);
        overflow-y: auto
    }

    .nav ul {
        max-width: 690px;
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    .nav ul ul {
        padding-left: 20px;
        font-weight: 400;
        font-size: 20px
    }

    .menu {
        padding: 3px 0
    }

    .desc-ul,
    .nav ul ul {
        display: none
    }

    .wrap1 {
        background-position: center 0
    }

    .top {
        display: flex;
        flex-direction: column;
        padding-top: 40px
    }

    .services__sl-item {
        position: relative
    }

    .consult__box {
        padding: 30px 15px
    }

    .about__img {
        margin-left: auto;
        margin-right: auto;
        margin-top: 40px
    }

    .accordion__content {
        width: auto;
        margin-left: 25px;
        margin-right: 25px
    }

    .consult-img__box {
        padding: 30px 15px
    }

    .consult-img__pic,
    .contacts__form h2 br {
        display: none
    }

    .blog__item {
        margin-top: 60px
    }

    .gallery__sl {
        margin-bottom: 70px
    }

    .gallery__sl .sl-btn {
        top: calc(100% + 40px)
    }

    .gallery__sl .sl-btn--prev {
        left: calc(50% - 32px - 70px)
    }

    .gallery__sl .sl-btn--next {
        left: calc(50% - 32px + 70px)
    }

    .gallery__sl .slick-track {
        height: auto
    }

    .contacts__form {
        display: block;
        padding: 30px 15px
    }

    .contacts__form h2 {
        margin-bottom: 25px
    }

    .sc .col-lg-2 {
        order: 1
    }

    .sc .col-lg-8 {
        order: 2
    }

    .foot__box,
    .sc__list {
        text-align: center
    }

    .sc__list .sc__list-box {
        justify-content: center
    }

    .foot .logo {
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
        padding: 0;
        text-align: center
    }

    .foot__box {
        display: block
    }

    .foot__links {
        display: block;
        margin-top: 20px;
        padding-left: 0
    }

    .foot__links a,
    .foot__links span,
    .nav ul {
        width: 100%
    }

    .banner {
        padding-bottom: 55px
    }

    .main-content {
        padding-top: 0
    }

    .main-content h2 {
        margin-bottom: 15px
    }

    .main-content__section {
        padding: 25px 0
    }

    .img-block,
    .tabs-row .tabs__list-item svg {
        display: none
    }

    .foot .logo,
    .tabs-row .tabs {
        display: block
    }

    .tabs-row .tabs__list {
        max-width: 100%;
        display: flex;
        flex-direction: column;
        padding: 0;
        font-size: 18px
    }

    .tabs-row .tabs__list-item {
        min-height: 50px;
        display: none;
        order: 3;
        margin: 5px 0
    }

    .tabs-row .tabs__list-item.active-tab {
        display: block;
        order: 1
    }

    .tabs-row .tabs-ico {
        display: block;
        position: absolute;
        top: 18px;
        right: 10px;
        width: 30px;
        height: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: auto;
        cursor: pointer
    }

    .tabs-row .tabs-ico svg {
        width: 8px;
        height: 8px;
        display: block
    }

    .tabs-row .tabs__content {
        padding: 30px 15px
    }

    .flr {
        margin: 0
    }

    .statistic__item {
        margin-top: 40px
    }

    .statistic__item-count {
        width: 70px;
        height: 70px;
        font-size: 42px
    }

    .pricing-grid__head {
        padding: 20px 10px;
        flex-wrap: wrap
    }

    .pricing-grid__head .switch {
        margin-left: 0;
    }

    .pricing-grid__item {
        align-items: center;
        padding: 15px 10px
    }

    .classic-tabs .tabs__list {
        justify-content: flex-start
    }

    .consult-img--man .consult-img__box {
        background-image: url(../img/general/group431.webp) !important
    }

    .blog-block [class*=col-] {
        margin-top: 0
    }

    .contact-block {
        padding-bottom: 50px
    }

    .contact-block__name {
        margin-top: 30px
    }

    .gallery-block {
        padding-bottom: 50px
    }

    .gallery__item-title {
        font-size: 20px
    }

    .back {
        margin-bottom: 20px
    }

    .album-review {
        justify-content: center
    }

    .reviews__item {
        padding: 25px 15px;
        font-size: 18px
    }

    .reviews__item-head {
        display: block
    }

    .reviews__item-title {
        margin-right: 0
    }

    .reviews__item-info {
        margin-top: 10px
    }

    .about-block {
        font-size: 18px
    }

    .about-block__img {
        margin-bottom: 30px
    }

    .about-block__title {
        margin-top: 30px
    }

    .fll,
    .flr {
        float: none;
        display: block
    }

    .fll {
        margin-right: 0
    }

    .flr {
        margin-left: 0
    }

    .p404-banner__box {
        padding: 30px 15px;
        background-position: 0 0
    }

    .p404-banner__action {
        margin-top: 40px
    }
}

@media only screen and (max-width: 768px) {
    h1 {
        font-size: 30px;
        line-height: 1.15
    }

    h2 {
        font-size: 28px
    }

    h3 {
        font-size: 18px
    }

    .page-404 {
        padding-top: 60px
    }

    .bottom-menu ul,
    .form__list {
        display: block;
        margin-left: 0;
        margin-right: 0
    }

    .form__list .form__action,
    .form__list .form__item,
    .soc-block__list .soc-item,
    .soc-block__list a {
        max-width: 100%;
        margin-left: 0;
        margin-right: 0
    }

    .form__list .form__action {
        margin-top: 30px
    }

    .wrap1 {
        background-position: 71% 0
    }

    .top {
        font-size: 17px
    }

    .top br {
        display: none
    }

    .privet {
        display: flex;
        gap: 20px;
    }

    .services__sl-item {
        font-size: 16px;
        background-size: cover
    }

    .services__sl-item h3 {
        font-size: 26px
    }

    .services__sl-item-content {
        padding: 20px
    }

    .faq {
        padding-top: 30px;
        font-size: 18px
    }

    .accordion__content {
        padding: 15px 10px;
        font-size: 16px;
        line-height: 1.4
    }

    .consult-img .form--on-site {
        max-width: 100%
    }

    .project__sl {
        margin-bottom: 70px
    }

    .project__sl .sl-btn {
        top: calc(100% + 40px)
    }

    .project__sl .sl-btn--prev {
        left: calc(50% - 32px - 70px)
    }

    .project__sl .sl-btn--next {
        left: calc(50% - 32px + 70px)
    }

    .project__sl-item {
        padding: 10px
    }

    .project__sl-img {
        position: relative;
        font-size: 0
    }

    .project__sl-img::before {
        content: '';
        display: block;
        padding-top: 50%
    }

    .project__sl-img img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    .soc-block__list {
        display: block;
        margin-top: 30px
    }

    .soc-block__list a, .soc-block__list .soc-item {
        justify-content: center
    }

    .contacts__info-block {
        margin-top: 20px
    }

    .bottom-menu a {
        padding-left: 0
    }

    .bottom-menu__box {
        display: flex
    }

    .bottom-menu__main {
        width: 50%;
        order: 2
    }

    .bottom-menu__main ul li:first-child {
        display: none
    }

    .bottom-menu__sub {
        width: 50%;
        order: 1
    }

    .bottom-menu__sub-title {
        display: block !important
    }

    .banner {
        background: 0 0 !important
    }

    .banner__content-img {
        display: block;
        background: #f0f1f7
    }

    .about-block__item {
        display: block;
        padding: 10px 0
    }

    .about-block__item-img {
        margin-right: 0
    }
}

@media only screen and (max-width: 576px) {
    .s-content__404 {
        font-size: 140px
    }

    .menu {
        margin-left: 20px
    }

    .wrap1 {
        background-position: 68% 40px;
        background-color: #eef5f4;
    }

    .top {
        padding-top: 15px
    }

    .blog h2,
    .top h1 {
        /*margin-bottom:0*/
    }

    .row--blog .col-lg-6 {
        margin-bottom: 25px;
    }

    .top__action {
        display: block;
        text-align: center
    }

    .top__action .btn {
        margin-bottom: 20px;
        margin-right: 0
    }

    .services__sl .slick-slide > div {
        padding: 5px;
        height: 100%
    }

    .services__sl .slick-track {
        display: flex
    }

    .services__sl .slick-slide {
        height: auto
    }

    .services__sl .services__sl-item,
    .services__sl .services__sl-item-content,
    .services__sl .slick-slide > div > div {
        height: 100%
    }

    .services__sl-item-content {
        min-height: 0
    }

    .services__control {
        display: block;
        text-align: center
    }

    .services__control-btn {
        justify-content: space-between;
        margin-bottom: 20px;
        padding-right: 0
    }

    .consult__box-info-inner {
        display: block
    }

    .consult__box-info-inner .switch {
        margin-bottom: 20px
    }

    .accordion__content {
        margin-left: 10px;
        margin-right: 10px
    }

    .accordion__title {
        padding: 10px
    }

    .blog__item,
    .project__sl-info {
        display: block
    }

    .blog__item {
        position: relative;
        /*margin-top:270px;*/
        /*padding-top:55px*/
        margin: 0;
    }

    .blog__item-img {
        margin: auto
    }

    .blog__item-img-box {
        top: auto;
        left: 0;
        right: 0;
        display: block;
        font-size: 0;
        bottom: 100%;
        margin: auto;
        max-height: 225px;
    }

    .contacts__form h2,
    .soc-block1 h2 {
        font-size: 24px
    }

    .soc-block__box {
        padding: 15px 5px
    }

    .soc-block__list a, .soc-block__list .soc-item {
        padding: 12px 10px
    }

    .sc__phone {
        font-size: 32px
    }

    .statistic__item-head {
        padding: 10px 5px;
        font-size: 16px
    }

    .author-container .avatar {
        flex: 0 0 100px;
        max-width: 100px;
        margin-right: 0px;
        padding: 5px;
    }

    .sc__list-box {
        display: grid;
        align-items: center;
        margin-left: -15px;
        margin-right: 0;
        font-size: 0;
        grid-template-columns: repeat(auto-fit, 33px);
    }
}

@media only screen and (max-width: 410px) {
    .wrap1 {
        /*background:0 0!important*/
    }

    .top {
        /*background-image:url(../img/general/top_mb.webp)!important;*/
        /*background-position:0 0;*/
        /*background-repeat:no-repeat*/
    }
}

@media print {
    .d-print-none {
        display: none !important
    }

    .d-print-inline {
        display: inline !important
    }

    .d-print-inline-block {
        display: inline-block !important
    }

    .d-print-block {
        display: block !important
    }

    .d-print-table {
        display: table !important
    }

    .d-print-table-row {
        display: table-row !important
    }

    .d-print-table-cell {
        display: table-cell !important
    }

    .d-print-flex {
        display: flex !important
    }

    .d-print-inline-flex {
        display: inline-flex !important
    }
}