@font-face {
    font-family: "colus";
    src: url(../fonts/colus.woff2) format("woff2"), url(../fonts/colus.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "WorldClass";
    src: url(../fonts/WorldClass-Demi.woff2) format("woff2"), url(../fonts/WorldClass-Demi.woff) format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "WorldClass";
    src: url(../fonts/WorldClass-Medium.woff2) format("woff2"), url(../fonts/WorldClass-Medium.woff) format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "WorldClass";
    src: url(../fonts/WorldClass-Regular.woff2) format("woff2"), url(../fonts/WorldClass-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "WorldClass";
    src: url(../fonts/WorldClass-UltraLight.woff2) format("woff2"), url(../fonts/WorldClass-UltraLight.woff) format("woff");
    font-weight: 200;
    font-style: normal;
    font-display: swap
}

:root {
    --scroll-offset: 0px;
    --animation-left: -100%;
    --animation-right: 100%;
    --animation-top: -100%;
    --animation-bottom: 100%;
    --columns: 12;
    --adaptive-box: 100%;
    --body-font-size: 0.14rem;
    --gap-x: 0.2rem;
    --gap-y: 0.2rem;
    --container-gap: 0.3rem
}

body {
    line-height: 1.3;
    font-weight: 400;
    font-size: var(--body-font-size);
    font-family: "WorldClass", sans-serif;
    margin: 0;
    color: #161e25;
    min-height: 100vh;
    display: flex;
    flex-direction: column
}

*,
:after,
:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

html {
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none
}

img {
    display: block;
    max-width: 100%
}

a {
    text-decoration: none;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    color: currentColor
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

ul {
    list-style: none
}

h1,
h2,
h3,
h4,
h5,
ol,
p,
ul {
    margin: 0;
    padding: 0
}

iframe {
    border: 0
}

b,
strong {
    font-weight: 700
}

button,
input,
optgroup,
select,
textarea {
    margin: 0;
    padding: 0;
    outline: none;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    background: transparent;
    border: 0
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

input[type=number] {
    -moz-appearance: textfield
}

input[type=number]:focus,
input[type=number]:hover {
    -moz-appearance: number-input
}

button {
    cursor: pointer;
    -webkit-tap-highlight-color: transparent
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    opacity: 1;
    color: currentColor
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: currentColor
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    opacity: 1;
    color: currentColor
}

input::placeholder,
textarea::placeholder {
    opacity: 1;
    color: currentColor
}

:root {
    --width-max-window: 100vw;
    --width-min-window: 360;
    --width-min-window-px: 360px;
    --min-value: 100;
    --min-value-px: 100px;
    --max-value: 150;
    --layout-size: 540;
    font-size: calc(var(--min-value-px) + (var(--max-value) - var(--min-value)) * ((var(--width-max-window) - var(--width-min-window-px)) / (var(--layout-size) - var(--width-min-window))))
}

.grid,
.grid-flex {
    --grid-gap-x: var(--gap-x);
    --grid-gap-y: var(--gap-y);
    --grid-columns: var(--columns)
}

.container,
.container-full,
.container\@lg,
.container\@md,
.container\@xs {
    --local-container-gap: var(--container-gap);
    --dp-block: block;
    display: var(--dp-block);
    width: 100%;
    padding-left: var(--local-container-gap);
    padding-right: var(--local-container-gap);
    margin-left: auto;
    margin-right: auto
}

br {
    --dp-inline: inline;
    display: var(--dp-inline)
}

.icon {
    width: 1em;
    height: 1em;
    --dp-block: block;
    display: var(--dp-block);
    flex: 0 0 auto;
    fill: currentColor;
    -webkit-transition: all .4s 0s;
    -o-transition: all .4s 0s;
    transition: all .4s 0s;
    position: relative
}

.icon--no-fill {
    fill: none
}

.icon--only-stroke,
.icon--stroke {
    stroke: currentColor
}

.icon--only-stroke {
    fill: none
}

.loader {
    height: 1em;
    width: 1em;
    display: block;
    overflow: hidden;
    position: relative
}

.loader:after,
.loader:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 3px solid currentColor;
    border-radius: 50%
}

.loader:after {
    opacity: .15
}

.loader:before {
    border-bottom-color: transparent;
    border-top-color: transparent;
    -webkit-animation: c 1.5s linear infinite;
    animation: c 1.5s linear infinite
}

.loader--center {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0)
}

.loader--size-sm {
    font-size: .4rem
}

.loader--size-md {
    font-size: .6rem
}

.loader--size-lg {
    font-size: .8rem
}

.adaptive-box {
    position: relative;
    width: 100%;
    --dp-block: block;
    display: var(--dp-block)
}

.adaptive-box:after {
    content: "";
    padding: 0 0 var(--adaptive-box);
    width: 100%;
    display: block
}

.adaptive-box>* {
    position: absolute
}

.adaptive-box__image,
.adaptive-box__item {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0
}

.adaptive-box__image {
    -o-object-fit: cover;
    object-fit: cover
}

.link {
    color: currentColor
}

.link:active {
    color: #161e25
}

.link-white,
.link-white .icon {
    color: #fff
}

.link-white:active,
.link-white:active .icon {
    color: #161e25
}

.link-grey {
    color: currentColor
}

.link-grey:active {
    color: #d9dde6
}

.link-red {
    color: #3c59a3
}

.link-red:active {
    color: #161e25
}

.link-red-wp,
.link-red-wp .icon {
    color: #3c59a3
}

.link-red-wp:active,
.link-red-wp:active .icon {
    color: #161e25
}

.link-red-tg,
.link-red-tg .icon {
    color: #3c59a3
}

.link-red-tg:active,
.link-red-tg:active .icon {
    color: #161e25
}

.link-white-wp,
.link-white-wp .icon {
    color: #fff
}

.link-white-wp:active,
.link-white-wp:active .icon {
    color: #161e25
}

.link-white-tg,
.link-white-tg .icon {
    color: #fff
}

.link-white-tg:active,
.link-white-tg:active .icon {
    color: #161e25
}

.link-decor {
    color: currentColor;
    position: relative
}

.link-decor:before {
    content: "";
    position: absolute;
    bottom: -2px;
    width: 100%;
    border-bottom: 1px solid currentColor;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.link--line {
    text-decoration: underline
}

.link--line-v2 {
    border-bottom: 1px solid currentColor
}

.list li {
    position: relative;
    margin-left: 1em;
    list-style: disc outside
}

.list li:not(:last-child) {
    margin-bottom: .1rem
}

.list._red li::marker {
    color: #3c59a3
}

.grecaptcha-badge {
    z-index: 100
}

.line {
    border-bottom: 1px solid currentColor
}

.animation {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animation.start {
    -webkit-animation-play-state: running;
    animation-play-state: running
}

.fadeIn {
    -webkit-animation-name: e;
    animation-name: e
}

@-webkit-keyframes loading-n {
    to {
        -webkit-transform: rotate(-2turn);
        transform: rotate(-2turn)
    }
}

@keyframes loading-n {
    to {
        -webkit-transform: rotate(-2turn);
        transform: rotate(-2turn)
    }
}

.title {
    --dp-block: block;
    display: var(--dp-block);
    font-weight: 500;
    line-height: 1.2;
    word-wrap: break-word
}

.title--size-md,
.title--size-sm {
    font-size: .24rem
}

.title--size-lg {
    font-size: .32rem
}

.content P:not(:last-child) {
    margin-bottom: 1.4em
}

.btn {
    position: relative;
    text-decoration: none;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent
}

.btn-primary {
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    justify-content: center;
    font-weight: 500;
    border-radius: 500px;
    line-height: 1
}

.btn-primary._icon {
    justify-content: space-between
}

.btn-primary--xsm {
    min-height: .4rem;
    padding: .05rem .2rem
}

.btn-primary--sm {
    min-height: .44rem;
    padding: .05rem .2rem
}

.btn-primary--md {
    min-height: .56rem
}

.btn-primary--md,
.btn-primary--md2 {
    padding: .05rem .15rem;
    font-size: .14rem
}

.btn-primary--md2 {
    min-height: .44rem
}

.btn-primary--lg {
    min-height: .7rem;
    padding: .1rem .3rem
}

.btn-circle {
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    justify-content: center;
    height: 1em;
    width: 1em;
    font-size: 2rem;
    border-radius: 50%
}

.btn-circle>span {
    font-size: medium
}

.btn-play {
    font-size: .46rem
}

.btn-icon,
.btn-play {
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    justify-content: center;
    height: 1em;
    width: 1em;
    border-radius: 50%
}

.btn-icon {
    flex: 0 0 auto
}

.btn--theme-primary {
    background-color: #3c59a3;
    color: #fff
}

.btn--theme-primary .icon {
    color: #fff
}

.btn--theme-primary:active {
    background-color: #161e25
}

.btn--theme-primary-grey {
    background-color: #3c59a3;
    color: #fff
}

.btn--theme-primary-grey .icon {
    color: #fff
}

.btn--theme-primary-grey:active {
    background-color: #161e25;
    color: #fff
}

.btn--theme-primary-grey:active .icon {
    color: #fff
}

.btn--theme-tg {
    background-color: #3c59a3;
    color: #fff
}

.btn--theme-tg .icon {
    color: #fff
}

.btn--theme-tg:active {
    background-color: #161e25
}

.btn--theme-wp {
    background-color: #3c59a3;
    color: #fff
}

.btn--theme-wp .icon {
    color: #fff
}

.btn--theme-wp:active {
    background-color: #161e25
}

.btn--theme-white {
    background-color: #fff;
    color: #161e25
}

.btn--theme-white .icon {
    color: #161e25
}

.btn--theme-white:active {
    background-color: #161e25;
    color: #fff
}

.btn--theme-white:active .icon {
    color: #fff
}

.btn--theme-outline {
    border: 2px solid #3c59a3;
    color: #161e25
}

.btn--theme-outline .icon {
    color: #161e25
}

.btn--theme-outline:active {
    color: #fff;
    border-color: #848484;
    background: #848484
}

.btn--theme-outline:active .icon {
    color: #fff
}

.btn--theme-outline-white {
    border: 2px solid #fff;
    color: #fff
}

.btn--theme-outline-white .icon {
    color: #fff
}

.btn--theme-outline-red-white {
    border: 2px solid #3c59a3;
    color: #fff
}

.btn--theme-outline-red-white .icon {
    color: #fff
}

.form {
    display: flex;
    flex-direction: column
}

.form-field {
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    position: relative;
    width: 100%;
    font-size: .16rem;
    border-radius: 500px;
    border: 1px solid currentColor;
    --field-input-color: #fff;
    min-height: .52rem;
    padding: .05rem .15rem
}

.form-field__icon {
    font-size: .16rem;
    margin-right: .1rem
}

.form-field__box {
    position: relative;
    flex: 1 0 auto
}

.form-field__input {
    color: var(--field-input-color);
    width: 100%;
    display: block
}

.form-field__input::-webkit-input-placeholder {
    opacity: 0
}

.form-field__input::-moz-placeholder {
    opacity: 0
}

.form-field__input::-ms-input-placeholder {
    opacity: 0
}

.form-field__input::placeholder {
    opacity: 0
}

.form-field__input:not(:-moz-placeholder-shown)~.form-field__text {
    opacity: 0
}

.form-field__input:focus~.form-field__text,
.form-field__input:not(:placeholder-shown)~.form-field__text {
    opacity: 0
}

.form-field__input:-webkit-autofill {
    -webkit-text-fill-color: var(--field-input-color);
    -webkit-transition: background-color 500000s ease-in-out 0s;
    transition: background-color 500000s ease-in-out 0s
}

.form-field__error,
.form-field__input,
.form-field__required,
.form-field__text {
    font-size: 1em;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    padding: 0
}

.form-field__error,
.form-field__required,
.form-field__text {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    pointer-events: none;
    width: 100%
}

.form-field__text {
    color: currentColor
}

.form-field__error,
.form-field__required {
    width: 100%;
    opacity: 0
}

.form-field._required .form-field__box>* {
    opacity: 0
}

.form-field._required .form-field__required {
    opacity: 1
}

.form-field._error>.form-field__box>* {
    opacity: 0
}

.form-field._error>.form-field__box>.form-field__error {
    opacity: 1
}

.form-file {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    width: 100%
}

.form-file__controller {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    color: #fff;
    width: 100%;
    font-size: .24rem;
    height: .8rem;
    padding: 0 .4rem
}

.form-file__controller,
.form-file__controller:hover {
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.form-file__input {
    display: none
}

.form-file__quantity {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    max-width: 0;
    overflow: hidden;
    -webkit-transition-duration: .1s;
    -o-transition-duration: .1s;
    transition-duration: .1s
}

.form-file__quantity._active {
    padding-left: 15px;
    max-width: none
}

.form-file__quantity._active .form-file__loader {
    opacity: 0;
    -webkit-transition-delay: 375ms;
    -o-transition-delay: 375ms;
    transition-delay: 375ms
}

.form-file__quantity._active .form-file__icon,
.form-file__quantity._active .form-file__number {
    opacity: 1;
    -webkit-transition-delay: 375ms;
    -o-transition-delay: 375ms;
    transition-delay: 375ms
}

.form-file__loader {
    position: absolute;
    z-index: 2;
    -webkit-transition-duration: .15s;
    -o-transition-duration: .15s;
    transition-duration: .15s
}

.form-file__number {
    margin-left: 6px
}

.form-file__icon,
.form-file__number {
    opacity: 0;
    -webkit-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s
}

.form-textarea {
    position: relative;
    display: block;
    border: 1px solid #b9b9b9;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.form-textarea__input {
    resize: none
}

.form-textarea__input::-webkit-input-placeholder {
    opacity: 0
}

.form-textarea__input::-moz-placeholder {
    opacity: 0
}

.form-textarea__input::-ms-input-placeholder {
    opacity: 0
}

.form-textarea__input::placeholder {
    opacity: 0
}

.form-textarea__input:not(:-moz-placeholder-shown)~.form-textarea__text {
    opacity: 0
}

.form-textarea__input:focus~.form-textarea__text,
.form-textarea__input:not(:placeholder-shown)~.form-textarea__text {
    opacity: 0
}

.form-textarea__input,
.form-textarea__required,
.form-textarea__text {
    width: 100%;
    font-size: 1em;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    padding: .25rem .4rem
}

.form-textarea__required,
.form-textarea__text {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    pointer-events: none
}

.form-textarea__text span {
    color: #3c59a3
}

.form-textarea__required {
    opacity: 0
}

.form-textarea._required {
    border-color: #3c59a3
}

.form-textarea._required .form-textarea__text {
    opacity: 0
}

.form-textarea._required .form-textarea__required {
    opacity: 1
}

.form-radio-group {
    display: flex;
    flex-wrap: wrap
}

.form-radio {
    margin: 0 size-x(20) size-x(20) 0;
    display: block;
    position: relative
}

.form-radio__input {
    opacity: 0;
    font-size: 0;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
    cursor: pointer
}

.form-radio__input:hover~.form-radio__controller {
    background-color: #000;
    color: #fff
}

.form-radio__input:checked {
    cursor: auto
}

.form-radio__input:checked~.form-radio__controller {
    background-color: #000;
    color: #fff
}

.form-radio__box {
    position: relative;
    z-index: 1;
    border: 1px solid currentColor;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    padding: size-x(18) size-x(42);
    display: block
}

.form-checkbox {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: .28rem;
    align-items: center;
    justify-content: center
}

.form-checkbox__input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 3;
    cursor: pointer
}

.form-checkbox__input:checked~.form-checkbox__decor {
    --checkbox-decor-size: 1
}

.form-checkbox__input:checked~.icon {
    opacity: 1
}

.form-checkbox__decor {
    position: relative;
    height: 1em;
    width: 1em;
    border: 1px solid #d9dde6;
    --checkbox-decor-size: 0;
    background-color: #fff;
    border-radius: .3125em;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.form-checkbox__decor:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    height: .5em;
    width: .5em;
    -webkit-transform: translate3d(-50%, -50%, 0) scale(var(--checkbox-decor-size));
    transform: translate3d(-50%, -50%, 0) scale(var(--checkbox-decor-size));
    background-color: #3c59a3;
    border-radius: .125em
}

.form-checkbox--icon {
    height: 1em;
    width: 1em
}

.form-checkbox--icon .icon {
    position: absolute;
    z-index: 2;
    opacity: 0;
    font-size: .4em;
    margin-top: .05em;
    margin-left: .05em;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear;
    color: #3c59a3
}

.form-send {
    position: relative;
    z-index: 20
}

.form-send__message {
    display: none;
    position: absolute;
    padding: 1em;
    width: 100%;
    left: 0;
    bottom: calc(100% + 8px);
    border-radius: .12rem;
    text-align: center;
    -webkit-box-shadow: 0 4px .4rem rgba(28, 46, 64, .06);
    box-shadow: 0 4px .4rem rgba(28, 46, 64, .06);
    background: #000;
    color: #fff
}

.form-send__message:before {
    content: "";
    position: absolute;
    border: 8px solid transparent;
    border-top: 8px solid #000;
    top: 100%;
    left: calc(50% - 8px)
}

.form-send .btn {
    width: 100%
}

.form-send__loading {
    position: relative
}

.form-send__loading span {
    height: 2em;
    width: 2em;
    border-radius: 50%;
    border: 2px solid currentColor;
    display: block;
    margin: 0 auto;
    border-bottom: 0;
    border-right: 0;
    -webkit-animation: c .5s infinite linear;
    animation: c .5s infinite linear
}

.form-send__error,
.form-send__success,
.ui-helper-hidden {
    display: none
}

.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none
}

.ui-helper-clearfix:after,
.ui-helper-clearfix:before {
    content: "";
    display: table;
    border-collapse: collapse
}

.ui-helper-clearfix:after {
    clear: both
}

.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    -ms-filter: "alpha(opacity=0)"
}

.ui-front {
    z-index: 100
}

.ui-state-disabled {
    cursor: default !important;
    pointer-events: none
}

.ui-icon {
    display: inline-block;
    vertical-align: middle;
    margin-top: -.25em;
    position: relative;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat
}

.ui-widget-icon-block {
    left: 50%;
    margin-left: -8px;
    display: block
}

.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.ui-datepicker {
    width: 2.6rem;
    padding: .2rem .2rem .15rem;
    display: none;
    z-index: 111
}

.ui-datepicker .ui-datepicker-header {
    position: relative;
    font-weight: 700;
    font-size: 14px;
    line-height: 100%;
    color: #171717
}

.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-prev {
    position: absolute;
    top: 0;
    border-radius: 2px
}

.ui-datepicker .ui-datepicker-next span,
.ui-datepicker .ui-datepicker-prev span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px
}

.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center
}

.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 45%
}

.ui-datepicker table {
    width: 100%;
    border-collapse: collapse
}

.ui-datepicker th {
    padding: .11rem 0;
    text-align: center;
    font-weight: 700;
    border: 0;
    line-height: 1
}

.ui-datepicker td {
    border: 0;
    padding: 1px
}

.ui-datepicker td a,
.ui-datepicker td span {
    display: block;
    padding: .2em;
    text-align: right;
    text-decoration: none
}

.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0
}

.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em;
    width: auto;
    overflow: visible
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left
}

.ui-datepicker.ui-datepicker-multi {
    width: auto
}

.ui-datepicker-multi .ui-datepicker-group {
    float: left
}

.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em
}

.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%
}

.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%
}

.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left
}

.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0
}

.ui-datepicker-rtl {
    direction: rtl
}

.ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto
}

.ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
    float: right
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px
}

.ui-datepicker .ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
    left: .5em;
    top: .3em
}

.ui-widget {
    font-family: Arial, Helvetica, sans-serif
}

.ui-widget,
.ui-widget .ui-widget {
    font-size: 1em
}

.ui-widget button,
.ui-widget input,
.ui-widget select,
.ui-widget textarea {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em
}

.ui-widget.ui-widget-content {
    border: 1px solid #c5c5c5
}

.ui-widget-content {
    border: 1px solid #ddd;
    background: #fff;
    color: #333
}

.ui-widget-content a,
.ui-widget-header a {
    color: #333
}

.ui-button,
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
html .ui-button.ui-state-disabled:active,
html .ui-button.ui-state-disabled:hover {
    font-weight: normal
}

.ui-button,
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button {
    color: #454545;
    text-decoration: none
}

.ui-button:focus,
.ui-button:hover,
.ui-state-focus,
.ui-state-hover,
.ui-widget-content .ui-state-focus,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-focus,
.ui-widget-header .ui-state-hover {
    background: #fff;
    font-weight: normal
}

.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
a.ui-button:focus,
a.ui-button:hover {
    color: #2b2b2b;
    text-decoration: none
}

.ui-visual-focus {
    -webkit-box-shadow: 0 0 3px 1px #5e9ed6;
    box-shadow: 0 0 3px 1px #5e9ed6
}

.ui-button.ui-state-active:hover,
.ui-button:active,
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active {
    border: 1px solid #003eff;
    background: #007fff;
    font-weight: normal;
    color: #fff
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid #dad55e;
    background: #fffa90;
    color: #777620
}

.ui-state-checked {
    border: 1px solid #dad55e;
    background: #fffa90
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
    color: #777620
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
    border: 1px solid #f1a899;
    background: #fddfdf;
    color: #5f3f3f
}

.ui-state-error-text,
.ui-state-error a,
.ui-widget-content .ui-state-error-text,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error-text,
.ui-widget-header .ui-state-error a {
    color: #5f3f3f
}

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
    font-weight: bold
}

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
    opacity: .7;
    -ms-filter: "alpha(opacity=70)";
    font-weight: normal
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .35;
    -ms-filter: "alpha(opacity=35)";
    background-image: none
}

.ui-state-disabled .ui-icon {
    -ms-filter: "alpha(opacity=35)"
}

.ui-icon {
    width: 16px;
    height: 16px
}

.ui-widget.ui-datepicker {
    border: 0;
    background: #fff;
    -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, .35);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .35);
    border-radius: 10px;
    color: #171717
}

.ui-widget.ui-datepicker .ui-state-default {
    width: .24rem;
    height: .24rem;
    border-radius: 50%;
    font-size: .12rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1px 2px 0;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    margin: 0 auto
}

.ui-widget.ui-datepicker .ui-state-default.ui-state-highlight {
    border: 0;
    background-color: #323e48;
    color: #fff
}

.ui-widget.ui-datepicker .ui-state-default.ui-state-active {
    border: 0;
    background-color: #3c59a3;
    font-weight: 700
}

.ui-widget.ui-datepicker thead {
    font-size: .12rem
}

.ui-widget.ui-datepicker td {
    padding: .05rem 0
}

.ui-widget.ui-datepicker .ui-datepicker-next,
.ui-widget.ui-datepicker .ui-datepicker-prev {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: .26rem;
    height: .26rem
}

.ui-widget.ui-datepicker .ui-datepicker-next:before,
.ui-widget.ui-datepicker .ui-datepicker-prev:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    background: no-repeat 50%/auto 100%;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDggMTQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yMTE0XzY4NCkiPgo8cGF0aCBkPSJNNi4yMTYzOSA2LjI1NjIzQzYuNjI0NDEgNS44NDU1OCA3LjI4NTk1IDUuODQ1NTggNy42OTM5OCA2LjI1NjIzQzguMTAyMDEgNi42NjY4OSA4LjEwMjAxIDcuMzMyNjkgNy42OTM5OCA3Ljc0MzM1TDEuNzgzNjEgMTMuNjkxOEMxLjM3NTU5IDE0LjEwMjUgMC43MTQwNDUgMTQuMTAyNSAwLjMwNjAxOSAxMy42OTE4Qy0wLjEwMjAwNiAxMy4yODEyIC0wLjEwMjAwNiAxMi42MTU0IDAuMzA2MDE5IDEyLjIwNDdMNi4yMTYzOSA2LjI1NjIzWiIgZmlsbD0iI0VEMUMyNCIvPgo8cGF0aCBkPSJNMC4zMDYwMiAxLjc5NTFDLTAuMTAyMDA2IDEuMzg0NDUgLTAuMTAyMDA2IDAuNzE4NjQ2IDAuMzA2MDE5IDAuMzA3OTkxQzAuNzE0MDQ1IC0wLjEwMjY2NCAxLjM3NTU5IC0wLjEwMjY2NCAxLjc4MzYxIDAuMzA3OTkxTDcuNjkzOTggNi4yNTY0NEM4LjEwMjAxIDYuNjY3MSA4LjEwMjAxIDcuMzMyOSA3LjY5Mzk4IDcuNzQzNTZDNy4yODU5NSA4LjE1NDIxIDYuNjI0NDEgOC4xNTQyMSA2LjIxNjM5IDcuNzQzNTZMMC4zMDYwMiAxLjc5NTFaIiBmaWxsPSIjRUQxQzI0Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjExNF82ODQiPgo8cmVjdCB3aWR0aD0iOCIgaGVpZ2h0PSIxNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K");
    width: .14rem;
    height: .14rem
}

.ui-widget.ui-datepicker .ui-datepicker-next:hover,
.ui-widget.ui-datepicker .ui-datepicker-prev:hover {
    cursor: pointer
}

.ui-widget.ui-datepicker .ui-datepicker-next {
    right: 0
}

.ui-widget.ui-datepicker .ui-datepicker-prev {
    left: 0
}

.ui-widget.ui-datepicker .ui-datepicker-prev:before {
    -webkit-transform: translate3d(-50%, -50%, 0) rotate(180deg);
    transform: translate3d(-50%, -50%, 0) rotate(180deg)
}

.form-datapicker {
    padding: .23rem 0;
    position: absolute;
    left: 0;
    width: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.card {
    background-color: #fff;
    color: #161e25;
    padding: .2rem;
    border-radius: .3rem;
    --theme-card-bg: #3c59a3;
    --theme-card-color: #fff
}

.card__icon {
    height: 1em;
    width: 1em;
    font-size: .52rem;
    border-radius: 50%;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-card-color);
    background-color: var(--theme-card-bg)
}

.card__text {
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto
}

.speedbar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: .2rem;
    font-size: .11rem
}

.speedbar span {
    margin-bottom: .1rem
}

.speedbar .icon {
    font-size: .42857em;
    color: #3c59a3
}

.speedbar .icon,
.speedbar a {
    margin-right: .1rem;
    margin-bottom: .1rem
}

.speedbar a {
    color: #8b8f93
}

.page {
    flex: 1 0 auto;
    padding: .9rem 0 0;
    display: flex;
    flex-direction: column
}

.swiper,
:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

.swiper {
    overflow: hidden;
    overflow: clip;
    list-style: none;
    padding: 0
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform, height;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform
}

.swiper-backface-hidden .swiper-slide {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    -webkit-perspective: 1200px;
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-3d {
    -webkit-perspective: 1200px;
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    -ms-scroll-snap-type: none;
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, .5), transparent);
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5), transparent);
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent);
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, .5), transparent);
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    -webkit-animation: b 1s infinite linear;
    animation: b 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@-webkit-keyframes b {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes b {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    -webkit-transition-property: opacity, height, -webkit-transform;
    transition-property: opacity, height, -webkit-transform;
    -o-transition-property: transform, opacity, height;
    transition-property: transform, opacity, height;
    transition-property: transform, opacity, height, -webkit-transform
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-filter: blur(50px);
    filter: blur(50px)
}

.swiper-cube .swiper-slide-next+.swiper-slide {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-fade.swiper-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-free-mode>.swiper-wrapper {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-button-next,
.swiper-button-prev {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 1em;
    width: 1em;
    font-size: .44rem;
    cursor: pointer;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.swiper-button-next .icon,
.swiper-button-prev .icon {
    font-size: 1em
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev .icon,
.swiper-rtl .swiper-button-next .icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-pagination.swiper-pagination-horizontal {
    display: flex
}

.swiper-pagination.swiper-pagination-vertical {
    position: absolute
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 8px;
    top: auto;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    position: relative
}

.swiper-pagination-bullet {
    width: 1em;
    height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #a3a3a3;
    font-size: 24px;
    flex: 0 0 auto;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.swiper-pagination-bullet:not(:last-child) {
    margin-right: .5em
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    background: #000
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
    right: 8px;
    left: auto;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet:not(:last-child),
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet:not(:last-child) {
    margin-bottom: .5em
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    -webkit-transition: top .2s, -webkit-transform .2s;
    transition: top .2s, -webkit-transform .2s;
    -o-transition: transform .2s, top .2s;
    transition: transform .2s, top .2s;
    transition: transform .2s, top .2s, -webkit-transform .2s
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: left .2s, -webkit-transform .2s;
    transition: left .2s, -webkit-transform .2s;
    -o-transition: transform .2s, left .2s;
    transition: transform .2s, left .2s;
    transition: transform .2s, left .2s, -webkit-transform .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: right .2s, -webkit-transform .2s;
    transition: right .2s, -webkit-transform .2s;
    -o-transition: transform .2s, right .2s;
    transition: transform .2s, right .2s;
    transition: transform .2s, right .2s, -webkit-transform .2s
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    border-radius: .2rem;
    overflow: hidden
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #7c7c7c;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    -webkit-transform-origin: right top;
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 8px;
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
    width: 8px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 20px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1)
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 100%;
    z-index: 50;
    height: .1rem
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
    position: absolute;
    left: auto;
    right: 4px;
    top: 1%;
    z-index: 50;
    width: 4px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 20px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move;
    touch-action: none
}

.wow {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.not-selectable {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.carousel {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.carousel *,
.carousel :after,
.carousel :before {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

.carousel.is-draggable {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.carousel.is-dragging {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.carousel__viewport {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    max-height: 100%
}

.carousel__track {
    display: flex
}

.carousel__slide {
    flex: 0 0 auto;
    width: var(--carousel-slide-width, 60%);
    max-width: 100%;
    padding: 1rem;
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y
}

.has-dots {
    margin-bottom: calc(.5rem + 22px)
}

.carousel__dots {
    margin: 0 auto;
    padding: 0;
    position: absolute;
    top: calc(100% + .5rem);
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    list-style: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.carousel__dots .carousel__dot {
    margin: 0;
    padding: 0;
    display: block;
    position: relative;
    width: 22px;
    height: 22px;
    cursor: pointer
}

.carousel__dots .carousel__dot:after {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: currentColor;
    opacity: .25;
    -webkit-transition: opacity .15s ease-in-out;
    -o-transition: opacity .15s ease-in-out;
    transition: opacity .15s ease-in-out
}

.carousel__dots .carousel__dot.is-selected:after {
    opacity: 1
}

.carousel__button {
    width: var(--carousel-button-width, 48px);
    height: var(--carousel-button-height, 48px);
    padding: 0;
    border: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: all;
    cursor: pointer;
    color: var(--carousel-button-color, currentColor);
    background: var(--carousel-button-bg, transparent);
    border-radius: var(--carousel-button-border-radius, 50%);
    -webkit-box-shadow: var(--carousel-button-shadow, none);
    box-shadow: var(--carousel-button-shadow, none);
    -webkit-transition: opacity .15s ease;
    -o-transition: opacity .15s ease;
    transition: opacity .15s ease
}

.carousel__button.is-next,
.carousel__button.is-prev {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.carousel__button.is-prev {
    left: 10px
}

.carousel__button.is-next {
    right: 10px
}

.carousel__button[disabled] {
    cursor: default;
    opacity: .3
}

.carousel__button svg {
    width: var(--carousel-button-svg-width, 50%);
    height: var(--carousel-button-svg-height, 50%);
    fill: none;
    stroke: currentColor;
    stroke-width: var(--carousel-button-svg-stroke-width, 1.5);
    stroke-linejoin: bevel;
    stroke-linecap: round;
    -webkit-filter: var(--carousel-button-svg-filter, none);
    filter: var(--carousel-button-svg-filter, none);
    pointer-events: none
}

body.compensate-for-scrollbar {
    overflow: hidden !important;
    touch-action: none
}

.fancybox__container {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    direction: ltr;
    margin: 0;
    padding: env(safe-area-inset-top, 0) env(safe-area-inset-right, 0) env(safe-area-inset-bottom, 0) env(safe-area-inset-left, 0);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    color: var(--fancybox-color, #fff);
    -webkit-tap-highlight-color: transparent;
    overflow: hidden;
    z-index: 1050;
    outline: none;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    --carousel-button-width: 48px;
    --carousel-button-height: 48px;
    --carousel-button-svg-width: 24px;
    --carousel-button-svg-height: 24px;
    --carousel-button-svg-stroke-width: 2.5;
    --carousel-button-svg-filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, .4))
}

.fancybox__container *,
.fancybox__container :after,
.fancybox__container :before {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

.fancybox__container :focus {
    outline: none
}

body:not(.is-using-mouse) .fancybox__container :focus {
    -webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 2px var(--fancybox-accent-color, #fff);
    box-shadow: 0 0 0 1px #fff, 0 0 0 2px var(--fancybox-accent-color, #fff)
}

.fancybox__backdrop {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background: var(--fancybox-bg, rgba(24, 24, 27, .92))
}

.fancybox__carousel {
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
    z-index: 10
}

.fancybox__carousel.has-dots {
    margin-bottom: calc(.5rem + 22px)
}

.fancybox__viewport {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: visible;
    cursor: default
}

.fancybox__track {
    display: flex;
    height: 100%
}

.fancybox__slide {
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 48px 8px 8px;
    position: relative;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain;
    display: flex;
    flex-direction: column;
    outline: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    --carousel-button-width: 36px;
    --carousel-button-height: 36px;
    --carousel-button-svg-width: 22px;
    --carousel-button-svg-height: 22px
}

.fancybox__slide:after,
.fancybox__slide:before {
    content: "";
    flex: 0 0 0;
    margin: auto
}

.fancybox__content {
    margin: 0 env(safe-area-inset-right, 0) 0 env(safe-area-inset-left, 0);
    padding: 36px;
    color: var(--fancybox-content-color, #374151);
    background: var(--fancybox-content-bg, #fff);
    position: relative;
    align-self: center;
    display: flex;
    flex-direction: column;
    z-index: 20
}

.fancybox__content :focus:not(.carousel__button.is-close) {
    outline: thin dotted;
    -webkit-box-shadow: none;
    box-shadow: none
}

.fancybox__caption {
    align-self: center;
    max-width: 80%;
    margin: 0;
    padding: .2rem 0 0;
    line-height: 1.375;
    color: var(--fancybox-color, currentColor);
    visibility: visible;
    cursor: auto;
    flex-shrink: 0;
    overflow-wrap: anywhere;
    text-align: center
}

.is-loading .fancybox__caption {
    visibility: hidden
}

.fancybox__container>.carousel__dots {
    top: 100%;
    color: var(--fancybox-color, #fff)
}

.fancybox__nav .carousel__button {
    z-index: 40
}

.fancybox__nav .carousel__button.is-next {
    right: 8px
}

.fancybox__nav .carousel__button.is-prev {
    left: 8px
}

.carousel__button.is-close {
    position: absolute;
    top: 8px;
    right: 8px;
    top: calc(env(safe-area-inset-top, 0px) + 8px);
    right: calc(env(safe-area-inset-right, 0px) + 8px);
    z-index: 40
}

.fancybox__content>.carousel__button.is-close {
    position: absolute;
    top: -40px;
    right: 0;
    color: var(--fancybox-color, #fff)
}

.fancybox__no-click,
.fancybox__no-click button {
    pointer-events: none
}

.fancybox__spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
    color: var(--fancybox-color, currentColor)
}

.fancybox__slide .fancybox__spinner {
    cursor: pointer;
    z-index: 1053
}

.fancybox__spinner svg {
    -webkit-animation: c 2s linear infinite;
    animation: c 2s linear infinite;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 100%;
    height: 100%
}

.fancybox__spinner svg circle {
    fill: none;
    stroke-width: 2.75;
    stroke-miterlimit: 10;
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    -webkit-animation: d 1.5s ease-in-out infinite;
    animation: d 1.5s ease-in-out infinite;
    stroke-linecap: round;
    stroke: currentColor
}

@-webkit-keyframes c {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes c {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@-webkit-keyframes d {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0
    }

    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px
    }

    to {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px
    }
}

@keyframes d {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0
    }

    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px
    }

    to {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px
    }
}

.carousel__button.is-close,
.carousel__dots,
.fancybox__backdrop,
.fancybox__caption,
.fancybox__nav {
    opacity: var(--fancybox-opacity, 1)
}

.fancybox__container.is-animated[aria-hidden=false] .carousel__button.is-close,
.fancybox__container.is-animated[aria-hidden=false] .carousel__dots,
.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop,
.fancybox__container.is-animated[aria-hidden=false] .fancybox__caption,
.fancybox__container.is-animated[aria-hidden=false] .fancybox__nav {
    -webkit-animation: .15s ease backwards e;
    animation: .15s ease backwards e
}

.fancybox__container.is-animated.is-closing .carousel__button.is-close,
.fancybox__container.is-animated.is-closing .carousel__dots,
.fancybox__container.is-animated.is-closing .fancybox__backdrop,
.fancybox__container.is-animated.is-closing .fancybox__caption,
.fancybox__container.is-animated.is-closing .fancybox__nav {
    -webkit-animation: .15s ease both f;
    animation: .15s ease both f
}

.fancybox-fadeIn {
    -webkit-animation: .15s ease both e;
    animation: .15s ease both e
}

.fancybox-fadeOut {
    -webkit-animation: .1s ease both f;
    animation: .1s ease both f
}

.fancybox-zoomInUp {
    -webkit-animation: .2s ease both g;
    animation: .2s ease both g
}

.fancybox-zoomOutDown {
    -webkit-animation: .15s ease both h;
    animation: .15s ease both h
}

.fancybox-throwOutUp {
    -webkit-animation: .15s ease both i;
    animation: .15s ease both i
}

.fancybox-throwOutDown {
    -webkit-animation: .15s ease both j;
    animation: .15s ease both j
}

@-webkit-keyframes e {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes e {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes f {
    to {
        opacity: 0
    }
}

@keyframes f {
    to {
        opacity: 0
    }
}

@-webkit-keyframes g {
    0% {
        -webkit-transform: scale(.97) translate3d(0, 16px, 0);
        transform: scale(.97) translate3d(0, 16px, 0);
        opacity: 0
    }

    to {
        -webkit-transform: scale(1) translateZ(0);
        transform: scale(1) translateZ(0);
        opacity: 1
    }
}

@keyframes g {
    0% {
        -webkit-transform: scale(.97) translate3d(0, 16px, 0);
        transform: scale(.97) translate3d(0, 16px, 0);
        opacity: 0
    }

    to {
        -webkit-transform: scale(1) translateZ(0);
        transform: scale(1) translateZ(0);
        opacity: 1
    }
}

@-webkit-keyframes h {
    to {
        -webkit-transform: scale(.97) translate3d(0, 16px, 0);
        transform: scale(.97) translate3d(0, 16px, 0);
        opacity: 0
    }
}

@keyframes h {
    to {
        -webkit-transform: scale(.97) translate3d(0, 16px, 0);
        transform: scale(.97) translate3d(0, 16px, 0);
        opacity: 0
    }
}

@-webkit-keyframes i {
    to {
        -webkit-transform: translate3d(0, -30%, 0);
        transform: translate3d(0, -30%, 0);
        opacity: 0
    }
}

@keyframes i {
    to {
        -webkit-transform: translate3d(0, -30%, 0);
        transform: translate3d(0, -30%, 0);
        opacity: 0
    }
}

@-webkit-keyframes j {
    to {
        -webkit-transform: translate3d(0, 30%, 0);
        transform: translate3d(0, 30%, 0);
        opacity: 0
    }
}

@keyframes j {
    to {
        -webkit-transform: translate3d(0, 30%, 0);
        transform: translate3d(0, 30%, 0);
        opacity: 0
    }
}

.fancybox__carousel .carousel__slide {
    scrollbar-width: thin;
    scrollbar-color: #ccc hsla(0, 0%, 100%, .1)
}

.fancybox__carousel .carousel__slide::-webkit-scrollbar {
    width: 8px;
    height: 8px
}

.fancybox__carousel .carousel__slide::-webkit-scrollbar-track {
    background-color: hsla(0, 0%, 100%, .1)
}

.fancybox__carousel .carousel__slide::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 2px;
    -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, .2);
    box-shadow: inset 0 0 4px rgba(0, 0, 0, .2)
}

.fancybox__carousel.is-draggable .fancybox__slide,
.fancybox__carousel.is-draggable .fancybox__slide .fancybox__content {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.fancybox__carousel.is-dragging .fancybox__slide,
.fancybox__carousel.is-dragging .fancybox__slide .fancybox__content {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.fancybox__carousel .fancybox__slide .fancybox__content {
    cursor: auto
}

.fancybox__carousel .fancybox__slide.can-zoom_in .fancybox__content {
    cursor: -webkit-zoom-in;
    cursor: zoom-in
}

.fancybox__carousel .fancybox__slide.can-zoom_out .fancybox__content {
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}

.fancybox__carousel .fancybox__slide.is-draggable .fancybox__content {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.fancybox__carousel .fancybox__slide.is-dragging .fancybox__content {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.fancybox__image {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: none;
    -o-transition: none;
    transition: none
}

.has-image .fancybox__content {
    padding: 0;
    background: transparent;
    min-height: 1px
}

.is-closing .has-image .fancybox__content {
    overflow: visible
}

.has-image[data-image-fit=contain] {
    overflow: visible;
    touch-action: none
}

.has-image[data-image-fit=contain] .fancybox__content {
    flex-direction: row;
    flex-wrap: wrap
}

.has-image[data-image-fit=contain] .fancybox__image {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.has-image[data-image-fit=contain-w] {
    overflow-x: hidden;
    overflow-y: auto
}

.has-image[data-image-fit=contain-w] .fancybox__content {
    min-height: auto
}

.has-image[data-image-fit=contain-w] .fancybox__image {
    max-width: 100%;
    height: auto
}

.has-image[data-image-fit=cover] {
    overflow: visible;
    touch-action: none
}

.has-image[data-image-fit=cover] .fancybox__content {
    width: 100%;
    height: 100%
}

.has-image[data-image-fit=cover] .fancybox__image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content,
.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content,
.fancybox__carousel .fancybox__slide.has-map .fancybox__content,
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,
.fancybox__carousel .fancybox__slide.has-video .fancybox__content {
    flex-shrink: 1;
    min-height: 1px;
    overflow: visible
}

.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content,
.fancybox__carousel .fancybox__slide.has-map .fancybox__content,
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content {
    width: 100%;
    height: 80%
}

.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content,
.fancybox__carousel .fancybox__slide.has-video .fancybox__content {
    width: 960px;
    height: 540px;
    max-width: 100%;
    max-height: 100%
}

.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content,
.fancybox__carousel .fancybox__slide.has-map .fancybox__content,
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,
.fancybox__carousel .fancybox__slide.has-video .fancybox__content {
    padding: 0;
    background: rgba(24, 24, 27, .9);
    color: #fff
}

.fancybox__carousel .fancybox__slide.has-map .fancybox__content {
    background: #e5e3df
}

.fancybox__html5video,
.fancybox__iframe {
    border: 0;
    display: block;
    height: 100%;
    width: 100%;
    background: transparent
}

.fancybox-placeholder {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

.fancybox__thumbs {
    flex: 0 0 auto;
    position: relative;
    padding: 0 3px;
    opacity: var(--fancybox-opacity, 1)
}

.fancybox__container.is-animated[aria-hidden=false] .fancybox__thumbs {
    -webkit-animation: .15s ease-in backwards e;
    animation: .15s ease-in backwards e
}

.fancybox__container.is-animated.is-closing .fancybox__thumbs {
    opacity: 0
}

.fancybox__thumbs .carousel__slide {
    flex: 0 0 auto;
    width: var(--fancybox-thumbs-width, 96px);
    margin: 0;
    padding: 8px 3px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    cursor: pointer
}

.fancybox__thumbs .carousel__slide .fancybox__thumb:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 5px solid var(--fancybox-accent-color, #fff);
    opacity: 0;
    -webkit-transition: opacity .15s ease;
    -o-transition: opacity .15s ease;
    transition: opacity .15s ease;
    border-radius: var(--fancybox-thumbs-border-radius, 4px)
}

.fancybox__thumbs .carousel__slide.is-nav-selected .fancybox__thumb:after {
    opacity: .92
}

.fancybox__thumbs .carousel__slide>* {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.fancybox__thumb {
    position: relative;
    width: 100%;
    padding-top: calc(100% / (var(--fancybox-thumbs-ratio, 1.5)));
    background-size: cover;
    background-position: 50%;
    background-color: hsla(0, 0%, 100%, .1);
    background-repeat: no-repeat;
    border-radius: var(--fancybox-thumbs-border-radius, 4px)
}

.fancybox__toolbar {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 20;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0, transparent), color-stop(8.1%, rgba(0, 0, 0, .006)), color-stop(15.5%, rgba(0, 0, 0, .021)), color-stop(22.5%, rgba(0, 0, 0, .046)), color-stop(29%, rgba(0, 0, 0, .077)), color-stop(35.3%, rgba(0, 0, 0, .114)), color-stop(41.2%, rgba(0, 0, 0, .155)), color-stop(47.1%, rgba(0, 0, 0, .198)), color-stop(52.9%, rgba(0, 0, 0, .242)), color-stop(58.8%, rgba(0, 0, 0, .285)), color-stop(64.7%, rgba(0, 0, 0, .326)), color-stop(71%, rgba(0, 0, 0, .363)), color-stop(77.5%, rgba(0, 0, 0, .394)), color-stop(84.5%, rgba(0, 0, 0, .419)), color-stop(91.9%, rgba(0, 0, 0, .434)), to(rgba(0, 0, 0, .44)));
    background: -o-linear-gradient(bottom, transparent 0, rgba(0, 0, 0, .006) 8.1%, rgba(0, 0, 0, .021) 15.5%, rgba(0, 0, 0, .046) 22.5%, rgba(0, 0, 0, .077) 29%, rgba(0, 0, 0, .114) 35.3%, rgba(0, 0, 0, .155) 41.2%, rgba(0, 0, 0, .198) 47.1%, rgba(0, 0, 0, .242) 52.9%, rgba(0, 0, 0, .285) 58.8%, rgba(0, 0, 0, .326) 64.7%, rgba(0, 0, 0, .363) 71%, rgba(0, 0, 0, .394) 77.5%, rgba(0, 0, 0, .419) 84.5%, rgba(0, 0, 0, .434) 91.9%, rgba(0, 0, 0, .44));
    background: linear-gradient(0deg, transparent 0, rgba(0, 0, 0, .006) 8.1%, rgba(0, 0, 0, .021) 15.5%, rgba(0, 0, 0, .046) 22.5%, rgba(0, 0, 0, .077) 29%, rgba(0, 0, 0, .114) 35.3%, rgba(0, 0, 0, .155) 41.2%, rgba(0, 0, 0, .198) 47.1%, rgba(0, 0, 0, .242) 52.9%, rgba(0, 0, 0, .285) 58.8%, rgba(0, 0, 0, .326) 64.7%, rgba(0, 0, 0, .363) 71%, rgba(0, 0, 0, .394) 77.5%, rgba(0, 0, 0, .419) 84.5%, rgba(0, 0, 0, .434) 91.9%, rgba(0, 0, 0, .44));
    padding: 0;
    touch-action: none;
    display: flex;
    justify-content: space-between;
    --carousel-button-svg-width: 20px;
    --carousel-button-svg-height: 20px;
    opacity: var(--fancybox-opacity, 1);
    text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, .4))
}

.fancybox__container.is-animated[aria-hidden=false] .fancybox__toolbar {
    -webkit-animation: .15s ease-in backwards e;
    animation: .15s ease-in backwards e
}

.fancybox__container.is-animated.is-closing .fancybox__toolbar {
    opacity: 0
}

.fancybox__toolbar__items {
    display: flex
}

.fancybox__toolbar__items--left {
    margin-right: auto
}

.fancybox__toolbar__items--center {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.fancybox__toolbar__items--right {
    margin-left: auto
}

.fancybox__counter {
    min-width: 72px;
    padding: 0 10px;
    line-height: var(--carousel-button-height, 48px);
    text-align: center;
    font-size: 17px;
    font-variant-numeric: tabular-nums;
    -webkit-font-smoothing: subpixel-antialiased
}

.fancybox__progress {
    background: var(--fancybox-accent-color, #fff);
    height: 3px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0;
    transform-origin: 0;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear;
    z-index: 30;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.fancybox__container:-webkit-full-screen::backdrop {
    opacity: 0
}

.fancybox__container:-moz-full-screen::backdrop {
    opacity: 0
}

.fancybox__container:fullscreen::-webkit-backdrop {
    opacity: 0
}

.fancybox__container:fullscreen::backdrop {
    opacity: 0
}

.fancybox__container:-webkit-full-screen .fancybox__button--fullscreen g:first-child {
    display: none
}

.fancybox__container:-moz-full-screen .fancybox__button--fullscreen g:first-child {
    display: none
}

.fancybox__button--fullscreen g:nth-child(2),
.fancybox__container:fullscreen .fancybox__button--fullscreen g:first-child {
    display: none
}

.fancybox__container:-webkit-full-screen .fancybox__button--fullscreen g:nth-child(2) {
    display: block
}

.fancybox__container:-moz-full-screen .fancybox__button--fullscreen g:nth-child(2) {
    display: block
}

.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(2) {
    display: block
}

.fancybox__button--slideshow g:nth-child(2),
.fancybox__container.has-slideshow .fancybox__button--slideshow g:first-child {
    display: none
}

.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(2) {
    display: block
}

[data-fancybox] {
    cursor: -webkit-zoom-in;
    cursor: zoom-in
}

.scroll-offset {
    overflow: hidden !important;
    --scroll-offset: var(--scroll-offset-init);
    touch-action: none;
    overflow: hidden
}

.scroll-offset[data-scroll-offset],
.scroll-offset [data-scroll-offset] {
    padding-right: var(--scroll-offset)
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 999;
    display: none;
    overflow: hidden
}

.modal._index {
    z-index: 1999
}

.modal__wrapper {
    overflow-x: hidden;
    overflow-y: auto
}

.modal__container,
.modal__wrapper {
    height: 100%;
    width: 100%;
    display: flex
}

.modal__container {
    flex-direction: column
}

.modal__bg-close {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.modal__box {
    margin: auto;
    padding-bottom: 1rem
}

.modal__close {
    height: 1em;
    width: 1em;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .4rem
}

.modal__close .icon {
    font-size: .41379em
}

.modal--theme-primary {
    background: #fff
}

.modal--theme-secondary {
    background-color: rgba(0, 0, 0, .5);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px)
}

.questions {
    display: flex;
    flex-direction: column
}

.questions-item {
    border-top: 1px solid #d9dde6;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s;
    padding: .15rem 0
}

.questions-item:last-child {
    border-bottom: 1px solid #d9dde6
}

.questions-item._active {
    border-top-color: #3c59a3
}

.questions-item._active .questions-item__title {
    color: #3c59a3
}

.questions-item._active .questions-item__toggel ._plus:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.questions-item._active .questions-item__toggel ._plus:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.questions-item._active .questions-item__toggel._arrow .icon {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.questions-item__header {
    display: flex;
    align-items: center;
    cursor: pointer
}

.questions-item__title {
    margin-right: .1rem;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.questions-item__toggel {
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 1em;
    width: 1em;
    font-size: .44rem;
    flex: 0 0 auto;
    border-radius: 50%
}

.questions-item__toggel ._plus {
    height: 2px;
    width: 1em;
    font-size: .41379em;
    position: relative;
    color: currentColor;
    flex: 0 0 auto
}

.questions-item__toggel ._plus:after,
.questions-item__toggel ._plus:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background: currentColor;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.questions-item__toggel._arrow .icon,
.questions-item__toggel ._plus:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.questions-item__body {
    display: none;
    padding: .1rem 0 0
}

.slider,
.slider__wrapper {
    position: relative
}

.slider-controller {
    display: flex;
    align-items: center
}

.slider-controller .slider-button-group {
    margin-left: .25rem
}

.slider-scrollbar {
    position: relative;
    border-radius: 500px;
    overflow: hidden;
    width: 100%;
    height: .14rem;
    border: 4px solid transparent;
    -webkit-box-shadow: 0 0 0 1px currentColor;
    box-shadow: 0 0 0 1px currentColor
}

.slider-scrollbar-box {
    --dp-block: block;
    display: var(--dp-block);
    position: relative
}

.slider-scrollbar-drag {
    background-color: currentColor;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 500px;
    height: 100%
}

.slider-button-group {
    display: flex;
    align-items: center
}

.slider-button-group .slider-button:not(:last-child) {
    margin-right: .25rem
}

.slider-button {
    height: 1em;
    width: 1em;
    font-size: .6rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto
}

.slider-button .icon {
    font-size: .24rem
}

.slider-button-prev .icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    margin-right: 1px
}

.slider-button.swiper-button-disabled {
    pointer-events: none;
    opacity: .7
}

.slider-button.swiper-button-lock {
    display: none
}

.video {
    --adaptive-box: 56.25%
}

.video._active .video__frame {
    z-index: 4
}

.video__preview {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    z-index: 2
}

.video__btn {
    z-index: 3;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0)
}

.video__frame {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2
}

.filter-btn {
    margin-bottom: .1rem;
    margin-right: .1rem;
    line-height: 1;
    padding: .1rem .12rem .09rem;
    white-space: nowrap
}

.filter-btn._active {
    pointer-events: none;
    background-color: #3c59a3;
    color: #fff
}

.grid {
    --dp-grid: grid;
    display: var(--dp-grid);
    grid-template-columns: repeat(var(--grid-columns), calc(((100% + var(--grid-gap-x)) / (var(--grid-columns) / 1)) - var(--grid-gap-x)));
    grid-gap: var(--grid-gap-y) var(--grid-gap-x)
}

@supports (gap:var(--gap)) {
    .grid {
        gap: var(--grid-gap-y) var(--grid-gap-x)
    }
}

.grid>* {
    --col: var(--grid-columns);
    --row: 1;
    --col-start: auto;
    --row-start: auto;
    grid-area: var(--row-start)/var(--col-start)/span var(--row)/span var(--col)
}

.grid[class*=" m:align-"],
.grid[class^="m:align-"] {
    align-items: var(--align);
    justify-items: var(--justify)
}

.grid-flex {
    --dp-flex: flex;
    display: var(--dp-flex);
    flex-wrap: wrap;
    margin: 0 calc(var(--grid-gap-x) / -2) calc(var(--grid-gap-y) / -1)
}

.grid-flex>* {
    flex: 0 0 auto;
    width: 100%;
    max-width: calc(100% / (var(--grid-columns) / var(--col)));
    padding: 0 calc(var(--grid-gap-x) / 2);
    margin: 0 0 calc(var(--grid-gap-y))
}

[class*=" m:align-"],
[class^="m:align-"] {
    --align: initial;
    --justify: initial;
    align-items: var(--align);
    justify-content: var(--justify)
}

.box,
.box-center,
.box-center-x,
.box-center-y,
.box-reverse,
.box-y,
.box-y-reverse {
    --dp-flex: flex;
    display: var(--dp-flex)
}

.item {
    --dp-block: block;
    display: var(--dp-block)
}

.col-1 {
    --col: 1
}

.col-2 {
    --col: 2
}

.col-3 {
    --col: 3
}

.col-4 {
    --col: 4
}

.col-5 {
    --col: 5
}

.col-6 {
    --col: 6
}

.col-7 {
    --col: 7
}

.col-8 {
    --col: 8
}

.col-9 {
    --col: 9
}

.col-10 {
    --col: 10
}

.col-11 {
    --col: 11
}

.col-12 {
    --col: 12
}

.row-1 {
    --row: 1
}

.row-2 {
    --row: 2
}

.row-3 {
    --row: 3
}

.row-4 {
    --row: 4
}

.row-5 {
    --row: 5
}

.row-6 {
    --row: 6
}

.row-7 {
    --row: 7
}

.row-8 {
    --row: 8
}

.row-9 {
    --row: 9
}

.row-10 {
    --row: 10
}

.row-11 {
    --row: 11
}

.row-12 {
    --row: 12
}

.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
}

.g\:columns-2 {
    --grid-columns: 2
}

.g\:columns-3 {
    --grid-columns: 3
}

.g\:columns-4 {
    --grid-columns: 4
}

.g\:columns-5 {
    --grid-columns: 5
}

.g\:columns-6 {
    --grid-columns: 6
}

.g\:columns-7 {
    --grid-columns: 7
}

.g\:columns-8 {
    --grid-columns: 8
}

.g\:columns-9 {
    --grid-columns: 9
}

.g\:columns-10 {
    --grid-columns: 10
}

.g\:columns-11 {
    --grid-columns: 11
}

.g\:columns-12 {
    --grid-columns: 12
}

.g\:cs-1 {
    --col-start: 1
}

.g\:cs-2 {
    --col-start: 2
}

.g\:cs-3 {
    --col-start: 3
}

.g\:cs-4 {
    --col-start: 4
}

.g\:cs-5 {
    --col-start: 5
}

.g\:cs-6 {
    --col-start: 6
}

.g\:cs-7 {
    --col-start: 7
}

.g\:cs-8 {
    --col-start: 8
}

.g\:cs-9 {
    --col-start: 9
}

.g\:cs-10 {
    --col-start: 10
}

.g\:cs-11 {
    --col-start: 11
}

.g\:cs-auto {
    --col-start: auto
}

.g\:col-auto {
    --col: auto
}

.g\:gap-0 {
    --local-container-gap: 0px;
    --grid-gap-x: 0px;
    --grid-gap-y: 0px;
    --gap-n: 0px
}

.g\:gap-n {
    --gap-n: calc(var(--local-container-gap) / -1);
    margin-right: var(--gap-n);
    margin-left: var(--gap-n)
}

.g\:gap-x {
    --grid-gap-x: var(--gap-x)
}

.g\:gap-x-0 {
    --grid-gap-x: 0px
}

.g\:gap-y {
    --grid-gap-y: var(--gap-y)
}

.g\:gap-y-0 {
    --grid-gap-y: 0px
}

.g\:rs-1 {
    --row-start: 1
}

.g\:rs-2 {
    --row-start: 2
}

.g\:rs-3 {
    --row-start: 3
}

.g\:rs-4 {
    --row-start: 4
}

.g\:rs-5 {
    --row-start: 5
}

.g\:rs-6 {
    --row-start: 6
}

.g\:rs-7 {
    --row-start: 7
}

.g\:rs-8 {
    --row-start: 8
}

.g\:rs-9 {
    --row-start: 9
}

.g\:rs-10 {
    --row-start: 10
}

.g\:rs-11 {
    --row-start: 11
}

.g\:rs-auto {
    --row-start: auto
}

.g\:rows-fixed {
    grid-auto-rows: 1fr
}

.t\:100 {
    font-weight: 100
}

.t\:200 {
    font-weight: 200
}

.t\:300 {
    font-weight: 300
}

.t\:400 {
    font-weight: 400
}

.t\:500 {
    font-weight: 500
}

.t\:600 {
    font-weight: 600
}

.t\:700 {
    font-weight: 700
}

.t\:800 {
    font-weight: 800
}

.t\:900 {
    font-weight: 900
}

.t\:left {
    text-align: left
}

.t\:right {
    text-align: right
}

.t\:center {
    text-align: center
}

.t\:italic {
    font-style: italic
}

.t\:no-italic {
    font-style: normal
}

.t\:uppercase {
    text-transform: uppercase
}

.t\:transform-none {
    text-transform: none
}

.inline {
    --dp-inline: inline;
    display: var(--dp-inline)
}

.box-reverse {
    flex-direction: row-reverse
}

.box-reverse[class*=" m:align-"],
.box-reverse[class^="m:align-"] {
    align-items: var(--align);
    justify-content: var(--justify-r-x)
}

.box-y {
    flex-direction: column
}

.box-y[class*=" m:align-"],
.box-y[class^="m:align-"] {
    align-items: var(--justify);
    justify-content: var(--align)
}

.box-y-reverse {
    flex-direction: column-reverse
}

.box-y-reverse[class*=" m:align-"],
.box-y-reverse[class^="m:align-"] {
    align-items: var(--justify);
    justify-content: var(--align-r-y)
}

.box-center {
    --justify: center;
    justify-content: var(--justify)
}

.box-center,
.box-center-y {
    --align: center;
    align-items: var(--align)
}

.box-center-x {
    --justify: center;
    justify-content: var(--justify)
}

.m\:inline {
    --dp-flex: inline-flex;
    --dp-grid: inline-grid;
    --dp-block: inline-block;
    --dp-inline: inline
}

.m\:block {
    --dp-flex: flex;
    --dp-grid: grid;
    --dp-block: block;
    --dp-inline: block
}

.m\:hide,
.m\:show\@lg,
.m\:show\@md {
    --dp-flex: none;
    --dp-grid: none;
    --dp-block: none;
    --dp-inline: none
}

.m\:show {
    --dp-flex: flex;
    --dp-grid: grid;
    --dp-block: block;
    --dp-inline: inline
}

.m\:axis-x {
    flex-direction: row
}

.m\:axis-x[class*=" m:align-"],
.m\:axis-x[class^="m:align-"] {
    align-items: var(--align);
    justify-content: var(--justify)
}

.m\:axis-x-r {
    flex-direction: row-reverse
}

.m\:axis-x-r[class*=" m:align-"],
.m\:axis-x-r[class^="m:align-"] {
    align-items: var(--align);
    justify-content: var(--justify-r-x)
}

.m\:axis-y {
    flex-direction: column
}

.m\:axis-y[class*=" m:align-"],
.m\:axis-y[class^="m:align-"] {
    align-items: var(--justify);
    justify-content: var(--align)
}

.m\:axis-y-r {
    flex-direction: column-reverse
}

.m\:axis-y-r[class*=" m:align-"],
.m\:axis-y-r[class^="m:align-"] {
    align-items: var(--justify);
    justify-content: var(--align-r-y)
}

.m\:left {
    margin-right: auto;
    margin-left: 0
}

.m\:left-0,
.m\:right {
    margin-right: 0
}

.m\:right {
    margin-left: auto
}

.m\:right-0 {
    margin-left: 0
}

.m\:top {
    margin-bottom: auto;
    margin-top: 0
}

.m\:bottom,
.m\:top-0 {
    margin-bottom: 0
}

.m\:bottom {
    margin-top: auto
}

.m\:bottom-0 {
    margin-top: 0
}

.m\:center {
    margin: auto
}

.m\:center-0 {
    margin: 0
}

.m\:center-x {
    margin-left: auto;
    margin-right: auto
}

.m\:center-x-0 {
    margin-left: 0;
    margin-right: 0
}

.m\:center-y {
    margin-top: auto;
    margin-bottom: auto
}

.m\:center-y-0 {
    margin-top: 0;
    margin-bottom: 0
}

.m\:align-right {
    --justify: flex-end;
    --justify-r-x: flex-start
}

.m\:align-left {
    --justify: flex-start;
    --justify-r-x: flex-end
}

.m\:align-bottom {
    --align: flex-end;
    --align-r-y: flex-start
}

.m\:align-top {
    --align: flex-start;
    --align-r-y: flex-end
}

.m\:align-center {
    --align: center;
    --align-r-y: center
}

.m\:align-center,
.m\:align-center-x {
    --justify: center;
    --justify-r-x: center
}

.m\:align-center-y {
    --align: center;
    --align-r-y: center
}

.m\:align-stretch {
    --align: stretch;
    --align-r-y: stretch
}

.m\:align-stretch,
.m\:align-stretch-x {
    --justify: stretch;
    --justify-r-x: stretch
}

.m\:align-stretch-y {
    --align: stretch;
    --align-r-y: stretch
}

.m\:relative {
    position: relative
}

.m\:static {
    position: static
}

.m\:rotate-0 {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.m\:rotate-45 {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.m\:rotate-90 {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.m\:rotate-135 {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.m\:rotate-180 {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.m\:rotate-225 {
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg)
}

.m\:rotate-270 {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg)
}

.m\:rotate-315 {
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg)
}

.m\:o-auto {
    overflow: auto
}

.m\:o-scroll {
    overflow: scroll
}

.m\:o-hidden {
    overflow: hidden
}

.m\:o-visible {
    overflow: visible
}

.m\:nowrap {
    flex-wrap: nowrap
}

.m\:wrap {
    flex-wrap: wrap
}

.m\:wrap-reverse {
    flex-wrap: wrap-reverse
}

.menu-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 899;
    background: rgba(22, 30, 37, .9);
    color: #fff;
    overflow: hidden;
    display: none
}

.menu-modal__wrapper {
    display: flex;
    height: 100%;
    width: 100%
}

.menu-modal__grid {
    position: relative;
    z-index: 1
}

.menu-modal__grid:before {
    content: "";
    z-index: -1;
    position: absolute;
    width: 100vw;
    height: 100%;
    left: .8rem;
    top: 0;
    background-color: #3c59a3;
    z-index: 2
}

.menu-modal__box {
    position: relative;
    z-index: 2;
    height: 100%;
    padding: .15rem .16rem .4rem .2rem;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    width: calc(100% + .16rem)
}

.menu-modal__content-box {
    overflow-x: hidden;
    overflow-y: auto;
    height: 100%;
    flex: 1 1 auto;
    padding-bottom: .2rem;
    width: calc(100% + .16rem);
    padding-right: .16rem
}

.menu-modal__drop {
    padding: .08rem 0 0 .2rem;
    display: none
}

.menu-modal__drop li:not(:last-child) {
    margin-bottom: .1rem
}

.menu-modal__drop a {
    font-weight: 500;
    font-size: .16rem
}

.menu-modal__drop-trigger._active .icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.menu-modal__list-item:not(:last-child) {
    margin-bottom: .12rem
}

.menu-modal__link {
    font-weight: 500;
    font-size: .18rem
}

.menu-modal__soc-box {
    display: flex;
    max-width: 2rem;
    justify-content: space-between
}

.menu-toggle {
    --menu-toggle-icon-active-size: 1em;
    --menu-toggle-icon-top-width: 1em;
    --menu-toggle-icon-center-width: 1em;
    --menu-toggle-icon-bottom-width: 1em;
    --menu-toggle-icon-line-height: 0.02rem;
    --menu-toggle-icon-indent: 0.05rem;
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    cursor: pointer;
    position: relative;
    color: currentColor;
    font-size: .18rem
}

.menu-toggle._active .menu-toggle__icon {
    border-color: #fff;
    color: #fff
}

.menu-toggle._active .menu-toggle__icon span {
    background: none
}

.menu-toggle._active .menu-toggle__icon span:after,
.menu-toggle._active .menu-toggle__icon span:before {
    bottom: 0;
    -webkit-transition: bottom .3s .3s, width .3s 0s, -webkit-transform .3s .6s;
    transition: bottom .3s .3s, width .3s 0s, -webkit-transform .3s .6s;
    -o-transition: transform .3s .6s, bottom .3s .3s, width .3s 0s;
    transition: transform .3s .6s, bottom .3s .3s, width .3s 0s;
    transition: transform .3s .6s, bottom .3s .3s, width .3s 0s, -webkit-transform .3s .6s
}

.menu-toggle._active .menu-toggle__icon span:after {
    --menu-toggle-icon-top-width: var(--menu-toggle-icon-active-size);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.menu-toggle._active .menu-toggle__icon span:before {
    --menu-toggle-icon-bottom-width: var(--menu-toggle-icon-active-size);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.menu-toggle__icon {
    --dp-flex: flex;
    display: var(--dp-flex);
    height: 1em;
    width: 1em;
    font-size: .4rem;
    flex: 0 0 auto;
    border-radius: 50%;
    border: 2px solid #3c59a3;
    color: #161e25;
    position: relative;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.menu-toggle__icon span {
    display: block;
    position: relative;
    background-color: currentColor;
    height: var(--menu-toggle-icon-line-height);
    width: var(--menu-toggle-icon-center-width);
    -webkit-transition: background 0s .3s, width .3s .3s;
    -o-transition: background 0s .3s, width .3s .3s;
    transition: background 0s .3s, width .3s .3s;
    margin: auto;
    font-size: .18rem;
    border-radius: 20px
}

.menu-toggle__icon span:after,
.menu-toggle__icon span:before {
    content: "";
    position: absolute;
    background-color: currentColor;
    display: block;
    height: 100%;
    width: 100%;
    -webkit-transition: bottom .3s .3s, width .3s .6s, -webkit-transform .3s 0s;
    transition: bottom .3s .3s, width .3s .6s, -webkit-transform .3s 0s;
    -o-transition: transform .3s 0s, bottom .3s .3s, width .3s .6s;
    transition: transform .3s 0s, bottom .3s .3s, width .3s .6s;
    transition: transform .3s 0s, bottom .3s .3s, width .3s .6s, -webkit-transform .3s 0s;
    border-radius: 20px;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%
}

.menu-toggle__icon span:after {
    bottom: calc(var(--menu-toggle-icon-indent) + var(--menu-toggle-icon-line-height));
    width: var(--menu-toggle-icon-top-width)
}

.menu-toggle__icon span:before {
    bottom: calc((var(--menu-toggle-icon-indent) + var(--menu-toggle-icon-line-height)) / -1);
    width: var(--menu-toggle-icon-bottom-width)
}

.menu-toggle__icon span._left {
    margin-right: auto
}

.menu-toggle__icon span._left:after,
.menu-toggle__icon span._left:before {
    left: 0
}

.menu-toggle__icon span._right {
    margin-left: auto
}

.menu-toggle__icon span._right:after,
.menu-toggle__icon span._right:before {
    right: 0
}

.menu-toggle__icon span._center {
    margin-right: auto;
    margin-left: auto
}

.menu-toggle__icon span._center:after {
    left: calc(50% - (var(--menu-toggle-icon-top-width) / 2))
}

.menu-toggle__icon span._center:before {
    left: calc(50% - (var(--menu-toggle-icon-bottom-width) / 2))
}

.menu-toggle__text {
    font-size: .24rem;
    margin-left: .2rem;
    line-height: 1
}

.header {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 950
}

.header._menu-active .header-hide {
    opacity: 0;
    pointer-events: none
}

.header._menu-active .header__box {
    border-bottom-color: transparent;
    -webkit-transform: translateY(-.1rem);
    transform: translateY(-.1rem)
}

.header-hide,
.header__box {
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.header__box {
    border-bottom: 1px solid #d9dde6;
    padding: .2rem 0
}

.header__menu {
    display: flex;
    justify-content: space-between
}

.header__menu>li {
    padding-bottom: .15rem
}

.header__menu-link {
    font-weight: 700;
    font-size: .14rem;
    line-height: 140%;
    text-transform: uppercase
}

.header__menu-drop-box {
    display: flex;
    align-items: center;
    position: relative
}

.header__menu-drop-box>span {
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.header__menu-drop-box:hover .header__menu-drop {
    visibility: visible;
    opacity: 1;
    -webkit-transition: visibility 0ms 0ms, all .25s .25s;
    -o-transition: visibility 0ms 0ms, all .25s .25s;
    transition: visibility 0ms 0ms, all .25s .25s;
    pointer-events: auto
}

.header__menu-drop-box:hover>span {
    color: #3c59a3
}

.header__menu-drop-box:hover>.icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.header__menu-drop {
    position: absolute;
    background-color: #3c59a3;
    color: #fff;
    z-index: 10;
    left: -.2rem;
    top: 100%;
    z-index: 899;
    padding: .11rem .2rem;
    border-radius: .2rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: visibility 0ms .25s, all .25s;
    -o-transition: visibility 0ms .25s, all .25s;
    transition: visibility 0ms .25s, all .25s;
    pointer-events: none
}

.header__menu-drop._left {
    left: auto;
    right: 0
}

.header__menu-drop .link-white {
    white-space: nowrap;
    line-height: 200%
}

.header-fix {
    position: fixed;
    left: 0;
    width: 100%;
    top: 0;
    height: 100vh;
    z-index: 960;
    pointer-events: none
}

.header-fix._active .header-fix__top {
    -webkit-transform: none;
    transform: none;
    -webkit-box-shadow: 0 10px 10px rgba(22, 30, 37, .1);
    box-shadow: 0 10px 10px rgba(22, 30, 37, .1);
    pointer-events: auto;
    opacity: 1
}

.header-fix._menu-active .header-fix__top {
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none
}

.header-fix._menu-active .header-fix__bottom,
.header-fix._menu-active .header-hide {
    opacity: 0;
    pointer-events: none
}

.header-fix-hide,
.header-fix__top {
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.header-fix__top {
    background-color: #fff;
    pointer-events: none;
    opacity: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    padding: .1rem 0
}

.header-fix__menu>li {
    height: .64rem;
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    padding-bottom: 0
}

.header-fix-bottom {
    z-index: 800;
    padding-bottom: .1rem;
    position: fixed;
    bottom: 0;
    left: 0;
    top: auto;
    width: 100%
}

.header-fix-bottom:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100% + .2rem);
    background: -webkit-gradient(linear, left bottom, left top, from(#161e25), to(rgba(22, 30, 37, 0)));
    background: -o-linear-gradient(bottom, #161e25, rgba(22, 30, 37, 0));
    background: linear-gradient(0deg, #161e25, rgba(22, 30, 37, 0));
    pointer-events: none
}

.header-fix-bottom._menu-active .header-hide {
    opacity: 0;
    pointer-events: none
}

.footer {
    background-color: #323e48;
    color: #fff;
    padding: .4rem 0 .75rem;
    margin-top: auto
}

.footer__contacts-box {
    margin-bottom: -.33rem
}

.footer__studio {
    border-bottom: 1px solid currentColor;
    color: hsla(0, 0%, 100%, .5);
    padding-bottom: .01rem;
    font-size: .12rem
}

.footer__studio span {
    font-weight: 600
}

.modal-form__box {
    margin: auto;
    position: relative;
    z-index: 2;
    padding-bottom: .5rem;
    padding-top: .5rem
}

.modal-form__wrapper {
    background-color: #3c59a3;
    color: #fff;
    padding: .3rem .2rem .2rem;
    position: relative;
    border-radius: .3rem
}

.modal-form__image {
    --adaptive-box: 103.52941%
}

.modal-form__close {
    position: absolute;
    right: .2rem;
    top: .2rem
}

.modal-team__box {
    margin: auto;
    position: relative;
    z-index: 2;
    padding-bottom: .75rem;
    padding-top: .75rem
}

.modal-team__wrapper {
    background-color: #fff;
    color: #161e25;
    padding: .2rem .15rem .15rem;
    position: relative;
    border-radius: .3rem;
    min-height: 5rem
}

.modal-team__image {
    --adaptive-box: 127.77778%;
    flex: 0 0 auto;
    margin-bottom: .2rem
}

.modal-team__close {
    position: absolute;
    right: 0;
    top: -.5rem
}

.home {
    position: relative;
    padding-top: .97rem;
    overflow: hidden
}

.home__title {
    line-height: 1.1;
    text-transform: uppercase;
    margin-bottom: .1rem;
    font-size: .42rem;
    letter-spacing: -.04em;
    font-weight: 700
}

.home__char {
    font-size: .12rem;
    line-height: 140%;
    padding: .04rem .1rem .03rem;
    border-radius: 500px;
    border: 1px solid #3c59a3;
    margin-bottom: .1rem
}

.home__video-box {
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(0, #3c59a3));
    background: -o-linear-gradient(top, #fff, #fff 50%, #3c59a3 0);
    background: linear-gradient(180deg, #fff, #fff 50%, #3c59a3 0)
}

.home__cards {
    background-color: #3c59a3;
    color: #fff;
    padding: .25rem 0 .6rem;
    overflow: hidden
}

.home__card {
    height: auto
}

.s_pav {
    position: relative;
    background-color: #f2f4fa;
    padding: .55rem 0
}

.s_pav__card {
    border-radius: .3rem;
    background-color: #fff
}

.s_pav__card._v1 {
    cursor: pointer
}

.s_pav__card._v1,
.s_pav__card._v2,
.s_pav__card._v3 {
    --adaptive-box: 68.42105%
}

.s_pav__card._v3 {
    cursor: pointer
}

.s_pav__card._shadow {
    overflow: hidden
}

.s_pav__card._shadow:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(11.15%, rgba(0, 0, 0, .7)), color-stop(47.69%, transparent));
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, .7) 11.15%, transparent 47.69%);
    background: linear-gradient(0deg, rgba(0, 0, 0, .7) 11.15%, transparent 47.69%);
    border-radius: .3rem;
    z-index: 6
}

.s_pav__card-content {
    color: #fff;
    z-index: 7;
    padding: .15rem .2rem
}

.s_pav__card .adaptive-box__image {
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s
}

.s_dir {
    position: relative;
    padding: .55rem 0
}

.s_dir__info-img {
    --adaptive-box: 66.66667%
}

.s_dir__info-box {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: .3rem .2rem .2rem;
    border-radius: .3rem
}

.s_team {
    position: relative;
    background-color: #3c59a3;
    color: #fff;
    padding: .55rem 0;
    overflow: hidden
}

.s_team__card {
    background-color: #fff;
    color: #161e25;
    cursor: pointer;
    padding: .06rem;
    border-radius: .2rem;
    height: auto
}

.s_team__card-image {
    --adaptive-box: 123.07692%;
    overflow: hidden
}

.s_team__card-image img {
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s
}

.s_cc,
.s_reviews {
    position: relative;
    padding: .55rem 0
}

.s_reviews {
    background-color: #f2f4fa;
    overflow: hidden
}

.s_reviews__image {
    --adaptive-box: 136.92308%
}

.s_reviews__image-content {
    background-color: rgba(22, 30, 37, .3)
}

.s_order {
    position: relative;
    background: -webkit-gradient(linear, left top, left bottom, from(#f2f4fa), color-stop(50%, #f2f4fa), color-stop(0, #323e48));
    background: -o-linear-gradient(top, #f2f4fa, #f2f4fa 50%, #323e48 0);
    background: linear-gradient(180deg, #f2f4fa, #f2f4fa 50%, #323e48 0)
}

.s_order__box {
    background-color: #3c59a3;
    color: #fff;
    padding: .28rem .2rem .2rem;
    border-radius: .3rem
}

.s_order__image {
    --adaptive-box: 103.52941%
}

.s_contacts {
    position: relative;
    background-color: #323e48;
    color: #fff;
    padding: .55rem 0 0
}

.s_contacts__map {
    --adaptive-box: 66.66667%
}

.p-faq-home,
.p-reviews-home {
    position: relative;
    padding-bottom: .6rem
}

.p-reviews-home__image {
    --adaptive-box: 62.06897%
}

.p-reviews-home__image-content {
    background-color: rgba(22, 30, 37, .3)
}

.p-schedule-home {
    position: relative;
    padding-bottom: .6rem
}

.p-schedule-home__box {
    --adaptive-box: 170%
}

.p-contacts-home {
    position: relative;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column
}

.p-contacts-home__map-box {
    margin-top: auto;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(0, #323e48));
    background: -o-linear-gradient(top, #fff, #fff 50%, #323e48 0);
    background: linear-gradient(180deg, #fff, #fff 50%, #323e48 0)
}

.p-contacts-home__map {
    --adaptive-box: 66.66667%
}

.p-contacts-order {
    position: relative;
    padding: .4rem 0 .6rem;
    background-color: #323e48;
    color: #fff
}

.p-contacts-order__box {
    background-color: #3c59a3;
    color: #fff;
    padding: .28rem .2rem .2rem;
    border-radius: .3rem
}

.p-contacts-order__image {
    --adaptive-box: 103.52941%
}

.p-doc-home {
    position: relative;
    padding-bottom: .6rem
}

.p-doc-home__card {
    background-color: #f2f4fa
}

.p-promo-home {
    position: relative;
    padding-bottom: .25rem
}

.p-requisites-home {
    position: relative;
    padding-bottom: .6rem
}

.p-dir-home {
    position: relative;
    padding-bottom: .25rem
}

.p-post-home {
    position: relative;
    display: flex;
    flex-direction: column
}

.p-post-home__video-box {
    margin-top: auto;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(0, #3c59a3));
    background: -o-linear-gradient(top, #fff, #fff 50%, #3c59a3 0);
    background: linear-gradient(180deg, #fff, #fff 50%, #3c59a3 0)
}

.p-post-home__cards {
    background-color: #3c59a3;
    color: #fff;
    padding: .25rem 0 .6rem;
    overflow: hidden
}

.p-post-home__card {
    height: auto
}

.p-post-home__card .card__icon {
    background-color: #3c59a3
}

.p-post-cat {
    position: relative;
    flex: 1 1 auto;
    background-color: #f2f4fa;
    padding: .55rem 0
}

.p-post-cat__menu-wrapper {
    height: .6rem
}

.p-post-cat__menu-body {
    position: absolute;
    pointer-events: none;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100
}

.p-post-cat__menu {
    position: -webkit-sticky;
    position: sticky;
    z-index: 200;
    pointer-events: auto;
    top: .7rem
}

.p-post-cat__menu-controller {
    height: .6rem;
    background-color: #fff;
    padding: .06rem;
    border-radius: .1rem;
    border: 1px solid #fff;
    -webkit-box-shadow: 0 0 10px 1px rgba(22, 30, 37, .1);
    box-shadow: 0 0 10px 1px rgba(22, 30, 37, .1)
}

.p-post-cat__menu-controller-box {
    color: #fff;
    border-radius: .1rem;
    height: .48rem;
    background-color: #3c59a3;
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    padding: .04rem .14rem;
    font-size: .16rem;
    position: relative;
    z-index: 110
}

.p-post-cat__menu-controller-box .icon {
    font-size: .18rem;
    margin-right: .12rem
}

.p-post-cat__menu-controller-box .arrow-m {
    font-size: .08rem;
    margin-left: auto
}

.p-post-cat__menu-controller-title {
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-right: .1rem
}

.p-post-cat__menu-drop {
    background-color: #fff
}

.p-post-cat__menu-link {
    --dp-flex: flex;
    display: var(--dp-flex);
    align-items: center;
    background-color: #f2f4fa;
    border-radius: .1rem;
    min-height: .48rem;
    padding: .05rem .14rem
}

.p-post-cat__menu-link:not(:last-child) {
    margin-bottom: .06rem
}

.p-post-cat__menu-link .icon {
    color: #3c59a3;
    font-size: .18rem;
    margin-right: .12rem
}

.p-post-cat__menu-link._active {
    background-color: #3c59a3;
    color: #fff
}

.p-post-cat__menu-link._active .icon {
    color: #fff
}

.p-post-cat__menu-link:active:hover {
    background-color: #323e48;
    color: #fff
}

.p-post-cat__menu-link:active:hover .icon {
    color: #fff
}

.p-post-cat__card {
    padding: .06rem
}

.p-post-cat__card,
.p-post-cat__info-box {
    background-color: #fff;
    border-radius: .16rem
}

.p-post-cat__info-box {
    padding: .2rem
}

.p-gallery-home {
    position: relative;
    padding-bottom: .6rem
}

.p-gallery-home__card {
    --adaptive-box: 68.42105%
}

.p-gallery-home__video {
    --adaptive-box: 100%
}

.p-gallery-home__video:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(22, 30, 37, .5);
    z-index: 5;
    border-radius: .3rem;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.p-team-home {
    position: relative;
    padding-bottom: .6rem
}

.p-team-home-post__image {
    --adaptive-box: 123.15789%
}

.p-team-home-post__content {
    background-color: #f2f4fa;
    border-radius: .3rem;
    padding: .3rem .2rem .2rem
}

.p-team-home__controller {
    overflow: hidden;
    overflow-x: auto;
    background-color: #fff
}

.p-team-home__nav {
    height: .56rem;
    margin-bottom: .2rem
}

.p-team-home__nav._menu-active .p-team-home__nav-fix {
    pointer-events: none;
    opacity: 0;
    z-index: 700
}

.p-team-home__nav-box {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 970;
    pointer-events: none
}

.p-team-home__nav-fix {
    position: -webkit-sticky;
    position: sticky;
    top: .58rem;
    pointer-events: auto;
    background-color: #fff;
    padding: .17rem 0 .05rem;
    -webkit-transition-duration: .4s;
    -o-transition-duration: .4s;
    transition-duration: .4s
}

.p-team-post-home {
    position: relative;
    padding-bottom: .3rem
}

.p-team-post-home__image {
    --adaptive-box: 123.15789%
}

.p-vacancies-home {
    position: relative
}

.p-vacancies-home__char {
    font-size: .12rem;
    line-height: 140%;
    padding: .04rem .1rem .03rem;
    border-radius: 500px;
    border: 1px solid #3c59a3;
    margin-bottom: .1rem
}

.p-vacancies-home__video-box {
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(0, #3c59a3));
    background: -o-linear-gradient(top, #fff, #fff 50%, #3c59a3 0);
    background: linear-gradient(180deg, #fff, #fff 50%, #3c59a3 0)
}

.p-vacancies-home__cards {
    background-color: #3c59a3;
    color: #fff;
    padding: .25rem 0 .6rem;
    overflow: hidden
}

.p-vacancies-home__card {
    height: auto
}

.p-vacancies-posts {
    position: relative;
    padding: .55rem 0
}

.p-vacancies-posts-post {
    background-color: #f2f4fa;
    padding: .3rem .2rem .2rem;
    border-radius: .3rem
}

.p-dir-post-home {
    position: relative;
    overflow: hidden
}

.p-dir-post-home__video-box {
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(0, #3c59a3));
    background: -o-linear-gradient(top, #fff, #fff 50%, #3c59a3 0);
    background: linear-gradient(180deg, #fff, #fff 50%, #3c59a3 0)
}

.p-dir-post-home__cards {
    background-color: #3c59a3;
    color: #fff;
    padding: .25rem 0 .6rem;
    overflow: hidden
}

.p-dir-post-home__card {
    height: auto
}

.p-dir-post-prog {
    position: relative;
    background-color: #f2f4fa;
    padding: .55rem 0;
    overflow: hidden
}

.p-dir-post-prog__card {
    border-radius: .2rem
}

.p-dir-post-team {
    position: relative;
    overflow: hidden;
    padding: .55rem 0
}

.p-dir-post-team__card {
    background-color: #f2f4fa;
    color: #161e25;
    cursor: pointer;
    padding: .06rem;
    border-radius: .2rem;
    height: auto
}

.p-dir-post-team__card-image {
    --adaptive-box: 123.07692%;
    overflow: hidden
}

.p-dir-post-team__card-image img {
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s
}

.p-dir-post-gallery {
    position: relative;
    background-color: #f2f4fa;
    padding: .55rem 0;
    overflow: hidden
}

.p-dir-post-order {
    position: relative
}

.p-dir-post-order__top-box {
    background: -webkit-gradient(linear, left top, left bottom, from(#f2f4fa), color-stop(50%, #f2f4fa), color-stop(0, #323e48));
    background: -o-linear-gradient(top, #f2f4fa, #f2f4fa 50%, #323e48 0);
    background: linear-gradient(180deg, #f2f4fa, #f2f4fa 50%, #323e48 0)
}

.p-dir-post-order__bottom-box {
    background-color: #323e48;
    color: #fff
}

.p-dir-post-order__box {
    background-color: #3c59a3;
    color: #fff;
    padding: .28rem .2rem .2rem;
    border-radius: .3rem
}

.p-dir-post-order__image {
    --adaptive-box: 103.52941%
}

.p-offer-home {
    position: relative;
    padding-bottom: .55rem
}

.p-offer-home__content h2,
.p-offer-home__content h3,
.p-offer-home__content h4,
.p-offer-home__content h5,
.p-offer-home__content h6 {
    margin-bottom: .5em
}

.p-offer-home__content h2 {
    font-size: 1.4em
}

.p-offer-home__content h3 {
    font-size: 1.2em
}

.p-offer-home__content h4,
.p-offer-home__content h5,
.p-offer-home__content h6 {
    font-size: 1em
}

.p-offer-home__content p {
    margin-bottom: .75em;
    line-height: 140%
}

.p-offer-home__content a {
    text-decoration: underline
}

.p-offer-home__content a:active {
    color: #323e48
}

.p-offer-home__content ul {
    margin-left: 1.25em;
    list-style: disc outside
}

.p-offer-home__content ul li {
    line-height: 140%
}

.p-cards-home {
    position: relative;
    padding-bottom: .55rem
}

.p-cards-home__card-content,
.p-cards-home__card-info {
    padding: .26rem .2rem .2rem
}

.thanks {
    position: relative;
    padding-bottom: .6rem
}

.color-primary {
    color: #3c59a3
}

.color-black {
    color: #161e25
}

.color-grey {
    color: #d9dde6
}

.color-green {
    color: #6c7c59
}

.color-blue {
    color: #3c59a3
}

.color-white {
    color: #fff
}

.color-red {
    color: #3c59a3
}

.color-dark-gray {
    color: #323e48
}

.color-light-gray {
    color: #f2f4fa
}

.bg-red {
    background-color: #3c59a3
}

.bg-dark-gray {
    background-color: #323e48
}

.bg-light-gray {
    background-color: #f2f4fa
}

.flex-0-0-a {
    flex: 0 0 auto
}

.flex-1-0-a {
    flex: 1 0 auto
}

.flex-1-1-a {
    flex: 1 1 auto
}

.w-full {
    width: 100%
}

.h-full {
    height: 100%
}

.w-auto {
    width: auto
}

.h-auto {
    height: auto
}

.max-w-none {
    max-width: none
}

.font-secondary {
    font-family: "colus", sans-serif
}

.lh-auto {
    line-height: normal
}

.ls-n02 {
    letter-spacing: -.02em
}

.ls-02 {
    letter-spacing: .02em
}

.m\:o-20 {
    opacity: .2
}

.m\:o-50 {
    opacity: .5
}

.t\:nowrap {
    white-space: nowrap
}

.mb-36 {
    margin-bottom: .36rem
}

.w-100 {
    width: 1rem
}

.mb-50 {
    margin-bottom: .5rem
}

.t\:size-8 {
    font-size: .08rem
}

.ml-8 {
    margin-left: .08rem
}

.mb-10 {
    margin-bottom: .1rem
}

.mr-10 {
    margin-right: .1rem
}

.t\:size-18 {
    font-size: .18rem
}

.t\:size-12 {
    font-size: .12rem
}

.lh-160 {
    line-height: 160%
}

.mb-30 {
    margin-bottom: .3rem
}

.mb-15 {
    margin-bottom: .15rem
}

.t\:size-40 {
    font-size: .4rem
}

.mr-40 {
    margin-right: .4rem
}

.w-160 {
    width: 1.6rem
}

.pt-5 {
    padding-top: .05rem
}

.t\:size-14 {
    font-size: .14rem
}

.lh-140 {
    line-height: 140%
}

.mr-20 {
    margin-right: .2rem
}

.t\:size-44 {
    font-size: .44rem
}

.w-180 {
    width: 1.8rem
}

.mt-1 {
    margin-top: .01rem
}

.ml-1 {
    margin-left: .01rem
}

.mr-55 {
    margin-right: .55rem
}

.z-10 {
    z-index: 10
}

.lh-110 {
    line-height: 110%
}

.br-30 {
    border-radius: .3rem
}

.mb-40 {
    margin-bottom: .4rem
}

.t\:size-24 {
    font-size: .24rem
}

.w-240 {
    width: 2.4rem
}

.mb-35 {
    margin-bottom: .35rem
}

.mb-25 {
    margin-bottom: .25rem
}

.br-16 {
    border-radius: .16rem
}

.p-7 {
    padding: .07rem
}

.lh-130 {
    line-height: 130%
}

.gap-y-10 {
    --grid-gap-y: 0.1rem
}

.w-66 {
    width: .66rem
}

.z-200 {
    z-index: 200
}

.t\:size-16 {
    font-size: .16rem
}

.z-100 {
    z-index: 100
}

.gap-y-40 {
    --grid-gap-y: 0.4rem
}

.mb-20 {
    margin-bottom: .2rem
}

.mb-5 {
    margin-bottom: .05rem
}

.mt-15 {
    margin-top: .15rem
}

.mt-60 {
    margin-top: .6rem
}

.w-112 {
    width: 1.12rem
}

.gap-x-5 {
    --grid-gap-x: 0.05rem
}

.gap-y-8 {
    --grid-gap-y: 0.08rem
}

.t\:size-10 {
    font-size: .1rem
}

.pr-40 {
    padding-right: .4rem
}

.gap-y-35 {
    --grid-gap-y: 0.35rem
}

.mb-18 {
    margin-bottom: .18rem
}

.gap-y-15 {
    --grid-gap-y: 0.15rem
}

.w-220 {
    width: 2.2rem
}

.pb-2 {
    padding-bottom: .02rem
}

.mb-6 {
    margin-bottom: .06rem
}

.br-10 {
    border-radius: .1rem
}

.p-4 {
    padding: .04rem
}

.lh-120 {
    line-height: 120%
}

.t\:size-11 {
    font-size: .11rem
}

.gap-y-5 {
    --grid-gap-y: 0.05rem
}

.mr-5 {
    margin-right: .05rem
}

.mw-100 {
    max-width: 1rem
}

.w-260 {
    width: 2.6rem
}

.pt-20 {
    padding-top: .2rem
}

.pt-40 {
    padding-top: .4rem
}

.mr-8 {
    margin-right: .08rem
}

@media (min-width:480px) {
    :root {
        --width-max-window: 440px
    }

    .container {
        max-width: 440px
    }
}

@media (min-width:640px) {
    :root {
        --width-max-window: 520px
    }

    .container,
    .container\@xs {
        max-width: 520px
    }
}

@media (min-width:768px) {
    :root {
        --container-gap: 0.1rem;
        --width-max-window: 768px;
        --layout-size: 1920
    }

    .container,
    .container\@md,
    .container\@xs {
        max-width: 720px
    }

    .title--size-md {
        font-size: .36rem
    }

    .title--size-lg {
        font-size: .48rem
    }

    .col-1\@md {
        --col: 1
    }

    .col-2\@md {
        --col: 2
    }

    .col-3\@md {
        --col: 3
    }

    .col-4\@md {
        --col: 4
    }

    .col-5\@md {
        --col: 5
    }

    .col-6\@md {
        --col: 6
    }

    .col-7\@md {
        --col: 7
    }

    .col-8\@md {
        --col: 8
    }

    .col-9\@md {
        --col: 9
    }

    .col-10\@md {
        --col: 10
    }

    .col-11\@md {
        --col: 11
    }

    .col-12\@md {
        --col: 12
    }

    .row-1\@md {
        --row: 1
    }

    .row-2\@md {
        --row: 2
    }

    .row-3\@md {
        --row: 3
    }

    .row-4\@md {
        --row: 4
    }

    .row-5\@md {
        --row: 5
    }

    .row-6\@md {
        --row: 6
    }

    .row-7\@md {
        --row: 7
    }

    .row-8\@md {
        --row: 8
    }

    .row-9\@md {
        --row: 9
    }

    .row-10\@md {
        --row: 10
    }

    .row-11\@md {
        --row: 11
    }

    .row-12\@md {
        --row: 12
    }

    .order-0\@md {
        order: 0
    }

    .order-1\@md {
        order: 1
    }

    .order-2\@md {
        order: 2
    }

    .order-3\@md {
        order: 3
    }

    .order-4\@md {
        order: 4
    }

    .order-5\@md {
        order: 5
    }

    .order-6\@md {
        order: 6
    }

    .order-7\@md {
        order: 7
    }

    .order-8\@md {
        order: 8
    }

    .order-9\@md {
        order: 9
    }

    .order-10\@md {
        order: 10
    }

    .order-11\@md {
        order: 11
    }

    .order-12\@md {
        order: 12
    }

    .g\:columns-2\@md {
        --grid-columns: 2
    }

    .g\:columns-3\@md {
        --grid-columns: 3
    }

    .g\:columns-4\@md {
        --grid-columns: 4
    }

    .g\:columns-5\@md {
        --grid-columns: 5
    }

    .g\:columns-6\@md {
        --grid-columns: 6
    }

    .g\:columns-7\@md {
        --grid-columns: 7
    }

    .g\:columns-8\@md {
        --grid-columns: 8
    }

    .g\:columns-9\@md {
        --grid-columns: 9
    }

    .g\:columns-10\@md {
        --grid-columns: 10
    }

    .g\:columns-11\@md {
        --grid-columns: 11
    }

    .g\:columns-12\@md {
        --grid-columns: 12
    }

    .g\:cs-1\@md {
        --col-start: 1
    }

    .g\:cs-2\@md {
        --col-start: 2
    }

    .g\:cs-3\@md {
        --col-start: 3
    }

    .g\:cs-4\@md {
        --col-start: 4
    }

    .g\:cs-5\@md {
        --col-start: 5
    }

    .g\:cs-6\@md {
        --col-start: 6
    }

    .g\:cs-7\@md {
        --col-start: 7
    }

    .g\:cs-8\@md {
        --col-start: 8
    }

    .g\:cs-9\@md {
        --col-start: 9
    }

    .g\:cs-10\@md {
        --col-start: 10
    }

    .g\:cs-11\@md {
        --col-start: 11
    }

    .g\:cs-auto\@md {
        --col-start: auto
    }

    .g\:start-auto\@md {
        --col-start: auto;
        --row-start: auto
    }

    .g\:col-auto\@md {
        --col: auto
    }

    .g\:col-auto-none\@md {
        --col: var(--grid-columns)
    }

    .g\:gap\@md {
        --local-container-gap: var(--container-gap);
        --grid-gap-x: var(--gap-x);
        --grid-gap-y: var(--gap-y);
        --gap-n: calc(var(--container-gap) / -1)
    }

    .g\:gap-0\@md {
        --local-container-gap: 0px;
        --grid-gap-x: 0px;
        --grid-gap-y: 0px;
        --gap-n: 0px
    }

    .g\:gap-n\@md {
        --gap-n: calc(var(--local-container-gap) / -1);
        margin-right: var(--gap-n);
        margin-left: var(--gap-n)
    }

    .g\:gap-n-0\@md {
        --gap-n: 0px
    }

    .g\:gap-x\@md {
        --grid-gap-x: var(--gap-x)
    }

    .g\:gap-x-0\@md {
        --grid-gap-x: 0px
    }

    .g\:gap-y\@md {
        --grid-gap-y: var(--gap-y)
    }

    .g\:gap-y-0\@md {
        --grid-gap-y: 0px
    }

    .g\:rs-1\@md {
        --row-start: 1
    }

    .g\:rs-2\@md {
        --row-start: 2
    }

    .g\:rs-3\@md {
        --row-start: 3
    }

    .g\:rs-4\@md {
        --row-start: 4
    }

    .g\:rs-5\@md {
        --row-start: 5
    }

    .g\:rs-6\@md {
        --row-start: 6
    }

    .g\:rs-7\@md {
        --row-start: 7
    }

    .g\:rs-8\@md {
        --row-start: 8
    }

    .g\:rs-9\@md {
        --row-start: 9
    }

    .g\:rs-10\@md {
        --row-start: 10
    }

    .g\:rs-11\@md {
        --row-start: 11
    }

    .g\:rs-auto\@md {
        --row-start: auto
    }

    .g\:rows-auto\@md {
        grid-auto-rows: auto
    }

    .g\:rows-fixed\@md {
        grid-auto-rows: 1fr
    }

    .t\:left\@md {
        text-align: left
    }

    .t\:right\@md {
        text-align: right
    }

    .t\:center\@md {
        text-align: center
    }

    .m\:inline\@md {
        --dp-flex: inline-flex;
        --dp-grid: inline-grid;
        --dp-block: inline-block;
        --dp-inline: inline
    }

    .m\:block\@md {
        --dp-flex: flex;
        --dp-grid: grid;
        --dp-block: block;
        --dp-inline: block
    }

    .m\:hide\@md {
        --dp-flex: none;
        --dp-grid: none;
        --dp-block: none;
        --dp-inline: none
    }

    .m\:show\@md {
        --dp-flex: flex;
        --dp-grid: grid;
        --dp-block: block;
        --dp-inline: inline
    }

    .m\:axis-x\@md {
        flex-direction: row
    }

    .m\:axis-x\@md[class*=" m:align-"],
    .m\:axis-x\@md[class^="m:align-"] {
        align-items: var(--align);
        justify-content: var(--justify)
    }

    .m\:axis-x-r\@md {
        flex-direction: row-reverse
    }

    .m\:axis-x-r\@md[class*=" m:align-"],
    .m\:axis-x-r\@md[class^="m:align-"] {
        align-items: var(--align);
        justify-content: var(--justify-r-x)
    }

    .m\:axis-y\@md {
        flex-direction: column
    }

    .m\:axis-y\@md[class*=" m:align-"],
    .m\:axis-y\@md[class^="m:align-"] {
        align-items: var(--justify);
        justify-content: var(--align)
    }

    .m\:axis-y-r\@md {
        flex-direction: column-reverse
    }

    .m\:axis-y-r\@md[class*=" m:align-"],
    .m\:axis-y-r\@md[class^="m:align-"] {
        align-items: var(--justify);
        justify-content: var(--align-r-y)
    }

    .m\:left\@md {
        margin-right: auto;
        margin-left: 0
    }

    .m\:left-0\@md,
    .m\:right\@md {
        margin-right: 0
    }

    .m\:right\@md {
        margin-left: auto
    }

    .m\:right-0\@md {
        margin-left: 0
    }

    .m\:top\@md {
        margin-bottom: auto;
        margin-top: 0
    }

    .m\:bottom\@md,
    .m\:top-0\@md {
        margin-bottom: 0
    }

    .m\:bottom\@md {
        margin-top: auto
    }

    .m\:bottom-0\@md {
        margin-top: 0
    }

    .m\:center\@md {
        margin: auto
    }

    .m\:center-0\@md {
        margin: 0
    }

    .m\:center-x\@md {
        margin-left: auto;
        margin-right: auto
    }

    .m\:center-x-0\@md {
        margin-left: 0;
        margin-right: 0
    }

    .m\:center-y\@md {
        margin-top: auto;
        margin-bottom: auto
    }

    .m\:center-y-0\@md {
        margin-top: 0;
        margin-bottom: 0
    }

    .m\:align-right\@md {
        --justify: flex-end;
        --justify-r-x: flex-start
    }

    .m\:align-left\@md {
        --justify: flex-start;
        --justify-r-x: flex-end
    }

    .m\:align-bottom\@md {
        --align: flex-end;
        --align-r-y: flex-start
    }

    .m\:align-top\@md {
        --align: flex-start;
        --align-r-y: flex-end
    }

    .m\:align-center\@md {
        --align: center;
        --align-r-y: center
    }

    .m\:align-center-x\@md,
    .m\:align-center\@md {
        --justify: center;
        --justify-r-x: center
    }

    .m\:align-center-y\@md {
        --align: center;
        --align-r-y: center
    }

    .m\:align-stretch\@md {
        --align: stretch;
        --align-r-y: stretch
    }

    .m\:align-stretch-x\@md,
    .m\:align-stretch\@md {
        --justify: stretch;
        --justify-r-x: stretch
    }

    .m\:align-stretch-y\@md {
        --align: stretch;
        --align-r-y: stretch
    }

    .m\:relative\@md {
        position: relative
    }

    .m\:static\@md {
        position: static
    }

    .m\:o-auto\@md {
        overflow: auto
    }

    .m\:o-scroll\@md {
        overflow: scroll
    }

    .m\:o-hidden\@md {
        overflow: hidden
    }

    .m\:o-visible\@md {
        overflow: visible
    }

    .m\:nowrap\@md {
        flex-wrap: nowrap
    }

    .m\:wrap\@md {
        flex-wrap: wrap
    }

    .m\:wrap-reverse\@md {
        flex-wrap: wrap-reverse
    }

    .menu-modal__grid:before {
        left: 1.6rem
    }

    .menu-modal__box {
        padding-bottom: .6rem
    }

    .modal-team__image {
        width: 3rem
    }

    .home__title {
        font-size: .81rem
    }

    .home__video-bg {
        --adaptive-box: 66.66667%;
        --adaptive-box: 57.62712%
    }

    .s_dir__info-img {
        --adaptive-box: 58.97436%
    }

    .p-schedule-home__box {
        --adaptive-box: 90%
    }

    .p-contacts-home__map {
        --adaptive-box: 61.53846%
    }

    .p-post-home__video-bg {
        --adaptive-box: 66.66667%;
        --adaptive-box: 57.62712%
    }

    .p-post-cat__menu {
        width: 3rem
    }

    .p-post-cat__info-box {
        padding: .3rem;
        border-radius: .3rem
    }

    .p-gallery-home__video {
        --adaptive-box: 60%
    }

    .p-vacancies-home__video-bg {
        --adaptive-box: 66.66667%;
        --adaptive-box: 57.62712%
    }

    .p-dir-post-home__video-bg {
        --adaptive-box: 66.66667%;
        --adaptive-box: 57.62712%
    }

    .max-w-none\@md {
        max-width: none
    }

    .t\:size-16\@md {
        font-size: .16rem
    }

    .t\:size-20\@md {
        font-size: .2rem
    }

    .w-136\@md {
        width: 1.36rem
    }

    .gap-x-20\@md {
        --grid-gap-x: 0.2rem
    }

    .t\:size-12\@md {
        font-size: .12rem
    }

    .gap-x-50\@md {
        --grid-gap-x: 0.5rem
    }
}

@media (min-width:1024px) {
    :root {
        --body-font-size: 0.16rem;
        --container-gap: 0;
        --width-max-window: 100vw;
        --width-min-window: 960;
        --width-min-window-px: 960px;
        --min-value: 72;
        --min-value-px: 72px;
        --max-value: 100
    }

    .container,
    .container\@lg,
    .container\@md,
    .container\@xs {
        max-width: 11.8rem
    }

    .fadeIn\@lg {
        -webkit-animation-name: e;
        animation-name: e
    }

    .title--size-sm {
        font-size: .36rem
    }

    .title--size-md {
        font-size: .48rem
    }

    .title--size-lg {
        font-size: .64rem
    }

    .btn-primary--md,
    .btn-primary--md2 {
        min-height: .58rem;
        font-size: .16rem
    }

    .btn-play {
        font-size: .66rem
    }

    .form-field {
        min-height: .58rem;
        padding: .05rem .2rem
    }

    .form-field__icon {
        font-size: .18rem;
        margin-right: .15rem
    }

    .speedbar {
        font-size: .14rem
    }

    .page {
        padding: 1.7rem 0 0
    }

    .modal__close {
        font-size: .58rem
    }

    .questions-item {
        padding: .3rem 0
    }

    .questions-item__toggel {
        font-size: .58rem
    }

    .questions-item__body {
        padding: .2rem .9rem 0 0
    }

    .slider-button--center-lg {
        position: absolute;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 50%;
        margin: 0 !important
    }

    .slider-button--center-lg.slider-button-prev {
        right: calc(100% + .2rem)
    }

    .slider-button--center-lg.slider-button-next {
        left: calc(100% + .2rem)
    }

    .filter-btn {
        padding: .1rem .25rem
    }

    .col-1\@lg {
        --col: 1
    }

    .col-2\@lg {
        --col: 2
    }

    .col-3\@lg {
        --col: 3
    }

    .col-4\@lg {
        --col: 4
    }

    .col-5\@lg {
        --col: 5
    }

    .col-6\@lg {
        --col: 6
    }

    .col-7\@lg {
        --col: 7
    }

    .col-8\@lg {
        --col: 8
    }

    .col-9\@lg {
        --col: 9
    }

    .col-10\@lg {
        --col: 10
    }

    .col-11\@lg {
        --col: 11
    }

    .col-12\@lg {
        --col: 12
    }

    .row-1\@lg {
        --row: 1
    }

    .row-2\@lg {
        --row: 2
    }

    .row-3\@lg {
        --row: 3
    }

    .row-4\@lg {
        --row: 4
    }

    .row-5\@lg {
        --row: 5
    }

    .row-6\@lg {
        --row: 6
    }

    .row-7\@lg {
        --row: 7
    }

    .row-8\@lg {
        --row: 8
    }

    .row-9\@lg {
        --row: 9
    }

    .row-10\@lg {
        --row: 10
    }

    .row-11\@lg {
        --row: 11
    }

    .row-12\@lg {
        --row: 12
    }

    .order-0\@lg {
        order: 0
    }

    .order-1\@lg {
        order: 1
    }

    .order-2\@lg {
        order: 2
    }

    .order-3\@lg {
        order: 3
    }

    .order-4\@lg {
        order: 4
    }

    .order-5\@lg {
        order: 5
    }

    .order-6\@lg {
        order: 6
    }

    .order-7\@lg {
        order: 7
    }

    .order-8\@lg {
        order: 8
    }

    .order-9\@lg {
        order: 9
    }

    .order-10\@lg {
        order: 10
    }

    .order-11\@lg {
        order: 11
    }

    .order-12\@lg {
        order: 12
    }

    .g\:columns-2\@lg {
        --grid-columns: 2
    }

    .g\:columns-3\@lg {
        --grid-columns: 3
    }

    .g\:columns-4\@lg {
        --grid-columns: 4
    }

    .g\:columns-5\@lg {
        --grid-columns: 5
    }

    .g\:columns-6\@lg {
        --grid-columns: 6
    }

    .g\:columns-7\@lg {
        --grid-columns: 7
    }

    .g\:columns-8\@lg {
        --grid-columns: 8
    }

    .g\:columns-9\@lg {
        --grid-columns: 9
    }

    .g\:columns-10\@lg {
        --grid-columns: 10
    }

    .g\:columns-11\@lg {
        --grid-columns: 11
    }

    .g\:columns-12\@lg {
        --grid-columns: 12
    }

    .g\:cs-1\@lg {
        --col-start: 1
    }

    .g\:cs-2\@lg {
        --col-start: 2
    }

    .g\:cs-3\@lg {
        --col-start: 3
    }

    .g\:cs-4\@lg {
        --col-start: 4
    }

    .g\:cs-5\@lg {
        --col-start: 5
    }

    .g\:cs-6\@lg {
        --col-start: 6
    }

    .g\:cs-7\@lg {
        --col-start: 7
    }

    .g\:cs-8\@lg {
        --col-start: 8
    }

    .g\:cs-9\@lg {
        --col-start: 9
    }

    .g\:cs-10\@lg {
        --col-start: 10
    }

    .g\:cs-11\@lg {
        --col-start: 11
    }

    .g\:cs-auto\@lg {
        --col-start: auto
    }

    .g\:start-auto\@lg {
        --col-start: auto;
        --row-start: auto
    }

    .g\:col-auto\@lg {
        --col: auto
    }

    .g\:col-auto-none\@lg {
        --col: var(--grid-columns)
    }

    .g\:gap\@lg {
        --local-container-gap: var(--container-gap);
        --grid-gap-x: var(--gap-x);
        --grid-gap-y: var(--gap-y);
        --gap-n: calc(var(--container-gap) / -1)
    }

    .g\:gap-0\@lg {
        --local-container-gap: 0px;
        --grid-gap-x: 0px;
        --grid-gap-y: 0px;
        --gap-n: 0px
    }

    .g\:gap-n\@lg {
        --gap-n: calc(var(--local-container-gap) / -1);
        margin-right: var(--gap-n);
        margin-left: var(--gap-n)
    }

    .g\:gap-n-0\@lg {
        --gap-n: 0px
    }

    .g\:gap-x\@lg {
        --grid-gap-x: var(--gap-x)
    }

    .g\:gap-x-0\@lg {
        --grid-gap-x: 0px
    }

    .g\:gap-y\@lg {
        --grid-gap-y: var(--gap-y)
    }

    .g\:gap-y-0\@lg {
        --grid-gap-y: 0px
    }

    .g\:rs-1\@lg {
        --row-start: 1
    }

    .g\:rs-2\@lg {
        --row-start: 2
    }

    .g\:rs-3\@lg {
        --row-start: 3
    }

    .g\:rs-4\@lg {
        --row-start: 4
    }

    .g\:rs-5\@lg {
        --row-start: 5
    }

    .g\:rs-6\@lg {
        --row-start: 6
    }

    .g\:rs-7\@lg {
        --row-start: 7
    }

    .g\:rs-8\@lg {
        --row-start: 8
    }

    .g\:rs-9\@lg {
        --row-start: 9
    }

    .g\:rs-10\@lg {
        --row-start: 10
    }

    .g\:rs-11\@lg {
        --row-start: 11
    }

    .g\:rs-auto\@lg {
        --row-start: auto
    }

    .g\:rows-auto\@lg {
        grid-auto-rows: auto
    }

    .g\:rows-fixed\@lg {
        grid-auto-rows: 1fr
    }

    .t\:left\@lg {
        text-align: left
    }

    .t\:right\@lg {
        text-align: right
    }

    .t\:center\@lg {
        text-align: center
    }

    .m\:inline\@lg {
        --dp-flex: inline-flex;
        --dp-grid: inline-grid;
        --dp-block: inline-block;
        --dp-inline: inline
    }

    .m\:block\@lg {
        --dp-flex: flex;
        --dp-grid: grid;
        --dp-block: block;
        --dp-inline: block
    }

    .m\:hide\@lg {
        --dp-flex: none;
        --dp-grid: none;
        --dp-block: none;
        --dp-inline: none
    }

    .m\:show\@lg {
        --dp-flex: flex;
        --dp-grid: grid;
        --dp-block: block;
        --dp-inline: inline
    }

    .m\:axis-x\@lg {
        flex-direction: row
    }

    .m\:axis-x\@lg[class*=" m:align-"],
    .m\:axis-x\@lg[class^="m:align-"] {
        align-items: var(--align);
        justify-content: var(--justify)
    }

    .m\:axis-x-r\@lg {
        flex-direction: row-reverse
    }

    .m\:axis-x-r\@lg[class*=" m:align-"],
    .m\:axis-x-r\@lg[class^="m:align-"] {
        align-items: var(--align);
        justify-content: var(--justify-r-x)
    }

    .m\:axis-y\@lg {
        flex-direction: column
    }

    .m\:axis-y\@lg[class*=" m:align-"],
    .m\:axis-y\@lg[class^="m:align-"] {
        align-items: var(--justify);
        justify-content: var(--align)
    }

    .m\:axis-y-r\@lg {
        flex-direction: column-reverse
    }

    .m\:axis-y-r\@lg[class*=" m:align-"],
    .m\:axis-y-r\@lg[class^="m:align-"] {
        align-items: var(--justify);
        justify-content: var(--align-r-y)
    }

    .m\:left\@lg {
        margin-right: auto;
        margin-left: 0
    }

    .m\:left-0\@lg,
    .m\:right\@lg {
        margin-right: 0
    }

    .m\:right\@lg {
        margin-left: auto
    }

    .m\:right-0\@lg {
        margin-left: 0
    }

    .m\:top\@lg {
        margin-bottom: auto;
        margin-top: 0
    }

    .m\:bottom\@lg,
    .m\:top-0\@lg {
        margin-bottom: 0
    }

    .m\:bottom\@lg {
        margin-top: auto
    }

    .m\:bottom-0\@lg {
        margin-top: 0
    }

    .m\:center\@lg {
        margin: auto
    }

    .m\:center-0\@lg {
        margin: 0
    }

    .m\:center-x\@lg {
        margin-left: auto;
        margin-right: auto
    }

    .m\:center-x-0\@lg {
        margin-left: 0;
        margin-right: 0
    }

    .m\:center-y\@lg {
        margin-top: auto;
        margin-bottom: auto
    }

    .m\:center-y-0\@lg {
        margin-top: 0;
        margin-bottom: 0
    }

    .m\:align-right\@lg {
        --justify: flex-end;
        --justify-r-x: flex-start
    }

    .m\:align-left\@lg {
        --justify: flex-start;
        --justify-r-x: flex-end
    }

    .m\:align-bottom\@lg {
        --align: flex-end;
        --align-r-y: flex-start
    }

    .m\:align-top\@lg {
        --align: flex-start;
        --align-r-y: flex-end
    }

    .m\:align-center\@lg {
        --align: center;
        --align-r-y: center
    }

    .m\:align-center-x\@lg,
    .m\:align-center\@lg {
        --justify: center;
        --justify-r-x: center
    }

    .m\:align-center-y\@lg {
        --align: center;
        --align-r-y: center
    }

    .m\:align-stretch\@lg {
        --align: stretch;
        --align-r-y: stretch
    }

    .m\:align-stretch-x\@lg,
    .m\:align-stretch\@lg {
        --justify: stretch;
        --justify-r-x: stretch
    }

    .m\:align-stretch-y\@lg {
        --align: stretch;
        --align-r-y: stretch
    }

    .m\:relative\@lg {
        position: relative
    }

    .m\:static\@lg {
        position: static
    }

    .m\:o-auto\@lg {
        overflow: auto
    }

    .m\:o-scroll\@lg {
        overflow: scroll
    }

    .m\:o-hidden\@lg {
        overflow: hidden
    }

    .m\:o-visible\@lg {
        overflow: visible
    }

    .m\:nowrap\@lg {
        flex-wrap: nowrap
    }

    .m\:wrap\@lg {
        flex-wrap: wrap
    }

    .m\:wrap-reverse\@lg {
        flex-wrap: wrap-reverse
    }

    .menu-modal {
        display: none !important
    }

    .header__box {
        padding: .3rem 0 0
    }

    .header-fix__top {
        padding: 0
    }

    .header-fix-bottom {
        display: none
    }

    .footer {
        padding: .4rem 0 .3rem
    }

    .footer__contacts-box {
        margin-bottom: 0
    }

    .footer__studio {
        margin-bottom: .06rem
    }

    .modal-form__wrapper {
        padding: .4rem;
        border-radius: .4rem
    }

    .modal-form__image {
        width: 3.4rem;
        margin-right: .2rem
    }

    .modal-form__close {
        top: 0;
        font-size: .58rem;
        right: auto;
        left: calc(100% + .2rem)
    }

    .modal-team__wrapper {
        padding: .2rem;
        border-radius: .4rem
    }

    .modal-team__image {
        margin-bottom: auto;
        width: 3.6rem;
        margin-right: .2rem
    }

    .modal-team__close {
        top: 0;
        font-size: .58rem;
        right: auto;
        left: calc(100% + .2rem)
    }

    .home {
        padding-top: 2rem
    }

    .home__title {
        line-height: 115%;
        margin-bottom: 0;
        font-size: .83rem
    }

    .home__char-box {
        position: absolute;
        left: 5.3rem;
        bottom: .07rem
    }

    .home__char-box .title {
        position: relative;
        top: -.1rem
    }

    .home__char {
        font-size: .14rem;
        padding: .04rem .14rem
    }

    .home__cards {
        padding: .4rem 0 1rem
    }

    .s_pav {
        padding: .9rem 0 .7rem
    }

    .s_pav__card._v2 {
        --adaptive-box: 58.97436%
    }

    .s_pav__card._v3 {
        --adaptive-box: 121.05263%
    }

    .s_pav__card-content {
        padding: .18rem .2rem
    }

    .s_dir {
        padding: .9rem 0 1rem
    }

    .s_dir__info-box {
        padding: .4rem .3rem .3rem;
        border-radius: .4rem
    }

    .s_team {
        padding: .9rem 0 1rem
    }

    .s_team__card {
        padding: .1rem .1rem .15rem;
        border-radius: .3rem
    }

    .s_cc,
    .s_reviews {
        padding: .9rem 0 1rem
    }

    .s_order__box {
        padding: .4rem;
        border-radius: .4rem
    }

    .s_order__image {
        width: 3.4rem;
        margin-right: .2rem
    }

    .s_contacts {
        padding: .9rem 0 0
    }

    .s_contacts__title {
        margin-top: -.16rem
    }

    .s_contacts__map {
        --adaptive-box: 61.53846%
    }

    .p-faq-home,
    .p-reviews-home,
    .p-schedule-home {
        padding-bottom: 1rem
    }

    .p-schedule-home__box {
        --adaptive-box: 55.9322%
    }

    .p-contacts-home__map {
        --adaptive-box: 42.37288%
    }

    .p-contacts-order {
        padding: .6rem 0 1rem
    }

    .p-contacts-order__box {
        padding: .4rem;
        border-radius: .4rem
    }

    .p-contacts-order__image {
        width: 3.4rem;
        margin-right: .2rem
    }

    .p-doc-home {
        padding-bottom: 1rem
    }

    .p-promo-home {
        padding-bottom: .4rem
    }

    .p-requisites-home {
        padding-bottom: 1rem
    }

    .p-dir-home {
        padding-bottom: .4rem
    }

    .p-post-home__cards {
        padding: .4rem 0 1rem
    }

    .p-post-cat {
        padding: 1rem 0
    }

    .p-post-cat__menu-wrapper {
        height: auto
    }

    .p-post-cat__menu-body {
        position: static
    }

    .p-post-cat__menu {
        width: 100%;
        background-color: #fff;
        top: 1.05rem;
        padding: .1rem;
        border-radius: .3rem
    }

    .p-post-cat__menu-controller {
        display: none
    }

    .p-post-cat__menu-link:not(:last-child) {
        margin-bottom: .1rem
    }

    .p-post-cat__menu-link {
        border-radius: .2rem;
        min-height: .8rem;
        padding: .05rem .2rem
    }

    .p-post-cat__menu-link .icon {
        font-size: .24rem;
        margin-right: .2rem
    }

    .p-post-cat__card {
        padding: .1rem;
        border-radius: .3rem
    }

    .p-gallery-home {
        padding-bottom: 1rem
    }

    .p-gallery-home__video {
        --adaptive-box: 68.42105%
    }

    .p-team-home {
        padding-bottom: 1rem
    }

    .p-team-home-post__content {
        padding: .3rem
    }

    .p-team-home__controller {
        padding-bottom: .1rem
    }

    .p-team-home__nav {
        height: auto;
        margin-bottom: 0
    }

    .p-team-home__nav-box {
        position: static;
        height: auto;
        pointer-events: auto
    }

    .p-team-home__nav-fix {
        background-color: transparent;
        top: 0;
        padding: 0 0 .2rem;
        position: static
    }

    .p-team-post-home {
        padding-bottom: .6rem
    }

    .p-team-post-home__image {
        position: -webkit-sticky;
        position: sticky;
        top: .9rem
    }

    .p-vacancies-home__char-box {
        position: absolute;
        width: 100%;
        left: 0;
        top: 1.11rem
    }

    .p-vacancies-home__char {
        font-size: .14rem;
        padding: .04rem .14rem
    }

    .p-vacancies-home__cards {
        padding: .4rem 0 1rem
    }

    .p-vacancies-posts {
        padding: 1rem 0
    }

    .p-vacancies-posts-post {
        padding: .4rem .3rem .3rem;
        border-radius: .4rem
    }

    .p-dir-post-home__cards {
        padding: .4rem 0 1rem
    }

    .p-dir-post-prog {
        padding: .9rem 0 1rem
    }

    .p-dir-post-prog__card {
        border-radius: .3rem;
        padding: .3rem .4rem
    }

    .p-dir-post-team {
        padding: .9rem 0
    }

    .p-dir-post-team__card {
        padding: .1rem .1rem .15rem;
        border-radius: .3rem
    }

    .p-dir-post-gallery {
        padding: .9rem 0 1rem
    }

    .p-dir-post-order__box {
        padding: .4rem;
        border-radius: .4rem
    }

    .p-dir-post-order__image {
        width: 3.4rem;
        margin-right: .2rem
    }

    .p-cards-home,
    .p-offer-home {
        padding-bottom: 1rem
    }

    .p-cards-home__card-info {
        padding: .34rem .3rem .3rem
    }

    .p-cards-home__card-content {
        padding: .37rem .3rem .35rem
    }

    .thanks {
        padding-bottom: 1rem
    }

    .max-w-none\@lg {
        max-width: none
    }

    .mb-26\@lg {
        margin-bottom: .26rem
    }

    .t\:size-20\@lg {
        font-size: .2rem
    }

    .mr-60\@lg {
        margin-right: .6rem
    }

    .t\:size-44\@lg {
        font-size: .44rem
    }

    .mr-0\@lg {
        margin-right: 0
    }

    .mb-20\@lg {
        margin-bottom: .2rem
    }

    .mb-7\@lg {
        margin-bottom: .07rem
    }

    .t\:size-24\@lg {
        font-size: .24rem
    }

    .br-40\@lg {
        border-radius: .4rem
    }

    .mb-35\@lg {
        margin-bottom: .35rem
    }

    .mb-0\@lg {
        margin-bottom: 0
    }

    .mb-25\@lg {
        margin-bottom: .25rem
    }

    .lh-140\@lg {
        line-height: 140%
    }

    .mb-40\@lg {
        margin-bottom: .4rem
    }

    .w-260\@lg {
        width: 2.6rem
    }

    .mb-30\@lg {
        margin-bottom: .3rem
    }

    .br-20\@lg {
        border-radius: .2rem
    }

    .p-10\@lg {
        padding: .1rem
    }

    .pt-20\@lg {
        padding-top: .2rem
    }

    .mb-15\@lg {
        margin-bottom: .15rem
    }

    .t\:size-14\@lg {
        font-size: .14rem
    }

    .mb-75\@lg {
        margin-bottom: .75rem
    }

    .t\:size-40\@lg {
        font-size: .4rem
    }

    .w-180\@lg {
        width: 1.8rem
    }

    .pt-60\@lg {
        padding-top: .6rem
    }

    .pt-16\@lg {
        padding-top: .16rem
    }

    .w-540\@lg {
        width: 5.4rem
    }

    .t\:size-16\@lg {
        font-size: .16rem
    }

    .mb-10\@lg {
        margin-bottom: .1rem
    }

    .mt-100\@lg {
        margin-top: 1rem
    }

    .gap-y-15\@lg {
        --grid-gap-y: 0.15rem
    }

    .w-160\@lg {
        width: 1.6rem
    }

    .pt-0\@lg {
        padding-top: 0
    }

    .pr-0\@lg {
        padding-right: 0
    }

    .mb-50\@lg {
        margin-bottom: .5rem
    }

    .gap-y-30\@lg {
        --grid-gap-y: 0.3rem
    }

    .mb-60\@lg {
        margin-bottom: .6rem
    }

    .w-280\@lg {
        width: 2.8rem
    }

    .gap-y-10\@lg {
        --grid-gap-y: 0.1rem
    }

    .w-200\@lg {
        width: 2rem
    }

    .t\:size-18\@lg {
        font-size: .18rem
    }

    .gap-y-40\@lg {
        --grid-gap-y: 0.4rem
    }

    .pt-30\@lg {
        padding-top: .3rem
    }

    .t\:size-32\@lg {
        font-size: .32rem
    }

    .mb-9\@lg {
        margin-bottom: .09rem
    }

    .pt-10\@lg {
        padding-top: .1rem
    }

    .gap-x-40\@lg {
        --grid-gap-x: 0.4rem
    }

    .gap-y-55\@lg {
        --grid-gap-y: 0.55rem
    }

    .mb-5\@lg {
        margin-bottom: .05rem
    }

    .gap-x-50\@lg {
        --grid-gap-x: 0.5rem
    }

    .br-30\@lg {
        border-radius: .3rem
    }

    .pt-5\@lg {
        padding-top: .05rem
    }

    .w-340\@lg {
        width: 3.4rem
    }
}

@media (min-width:1024px) {
    .fancybox__container {
        --carousel-button-width: 48px;
        --carousel-button-height: 48px;
        --carousel-button-svg-width: 27px;
        --carousel-button-svg-height: 27px
    }

    .fancybox__slide {
        padding: 64px 100px
    }

    .fancybox__nav .carousel__button.is-next {
        right: 40px
    }

    .fancybox__nav .carousel__button.is-prev {
        left: 40px
    }

    .carousel__button.is-close {
        right: 40px
    }

    .fancybox__toolbar {
        padding: 8px
    }
}

@media (min-width:1260px) {
    :root {
        --min-value: 88;
        --min-value-px: 88px
    }
}

@media (min-width:1440px) {
    :root {
        --width-max-window: 1920px
    }
}

@media (max-width:1023px) {
    .p-post-cat__menu._active .p-post-cat__menu-drop {
        visibility: visible;
        opacity: 1;
        -webkit-transition: visibility 0ms 0ms, all .25s .25s;
        -o-transition: visibility 0ms 0ms, all .25s .25s;
        transition: visibility 0ms 0ms, all .25s .25s;
        pointer-events: auto
    }

    .p-post-cat__menu._active .p-post-cat__menu-controller-arrow {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }

    .p-post-cat__menu-drop {
        z-index: 100;
        width: 100%;
        position: absolute;
        padding: .2rem .06rem .06rem;
        top: calc(100% - .2rem);
        left: 0;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: visibility 0ms .25s, all .25s;
        -o-transition: visibility 0ms .25s, all .25s;
        transition: visibility 0ms .25s, all .25s;
        pointer-events: none;
        border: 1px solid #fff;
        -webkit-box-shadow: 0 10px 10px rgba(22, 30, 37, .1);
        box-shadow: 0 10px 10px rgba(22, 30, 37, .1);
        border-radius: .16rem
    }
}

@media (max-width:640px) {
    .fancybox__toolbar__items--center:not(:last-child) {
        display: none
    }
}

@media (pointer:fine) {
    .link:hover {
        color: #3c59a3
    }

    .link:active {
        color: #161e25
    }

    .link-white:hover,
    .link-white:hover .icon {
        color: #323e48
    }

    .link-white:active,
    .link-white:active .icon {
        color: #161e25
    }

    .link-grey:hover {
        color: #3c59a3
    }

    .link-grey:active {
        color: #d9dde6
    }

    .link-red:hover {
        color: #323e48
    }

    .link-red:active {
        color: #161e25
    }

    .link-red-wp:hover,
    .link-red-wp:hover .icon {
        color: #26bf4e
    }

    .link-red-wp:active,
    .link-red-wp:active .icon {
        color: #161e25
    }

    .link-red-tg:hover,
    .link-red-tg:hover .icon {
        color: #08c
    }

    .link-red-tg:active,
    .link-red-tg:active .icon {
        color: #161e25
    }

    .link-white-wp:hover,
    .link-white-wp:hover .icon {
        color: #26bf4e
    }

    .link-white-wp:active,
    .link-white-wp:active .icon {
        color: #161e25
    }

    .link-white-tg:hover,
    .link-white-tg:hover .icon {
        color: #08c
    }

    .link-white-tg:active,
    .link-white-tg:active .icon {
        color: #161e25
    }

    .link-decor:hover:before {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    .btn-play:hover .icon {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    .btn--theme-primary:hover {
        background-color: #323e48
    }

    .btn--theme-primary:active {
        background-color: #161e25
    }

    .btn--theme-primary-grey:hover {
        background-color: #d9dde6;
        color: #161e25
    }

    .btn--theme-primary-grey:hover .icon {
        color: #161e25
    }

    .btn--theme-primary-grey:active {
        background-color: #161e25;
        color: #fff
    }

    .btn--theme-primary-grey:active .icon {
        color: #fff
    }

    .btn--theme-tg:hover {
        background-color: #08c
    }

    .btn--theme-tg:active {
        background-color: #161e25
    }

    .btn--theme-wp:hover {
        background-color: #26bf4e
    }

    .btn--theme-wp:active {
        background-color: #161e25
    }

    .btn--theme-white:hover {
        background-color: #323e48;
        color: #fff
    }

    .btn--theme-white:hover .icon {
        color: #fff
    }

    .btn--theme-white:active {
        background-color: #161e25;
        color: #fff
    }

    .btn--theme-white:active .icon {
        color: #fff
    }

    .btn--theme-outline:hover {
        color: #fff;
        background: #3c59a3
    }

    .btn--theme-outline:hover .icon {
        color: #fff
    }

    .btn--theme-outline:active {
        color: #fff;
        border-color: #848484;
        background: #848484
    }

    .btn--theme-outline:active .icon {
        color: #fff
    }

    .btn--theme-outline-white:hover {
        background-color: #fff;
        border-color: #fff;
        color: #3c59a3
    }

    .btn--theme-outline-white:hover .icon {
        color: #3c59a3
    }

    .btn--theme-outline-white:active {
        background-color: #161e25;
        border-color: #161e25;
        color: #d9dde6
    }

    .btn--theme-outline-white:active .icon {
        color: #d9dde6
    }

    .btn--theme-outline-red-white:hover {
        background-color: #3c59a3;
        border-color: #3c59a3;
        color: #fff
    }

    .btn--theme-outline-red-white:hover .icon {
        color: #fff
    }

    .btn--theme-outline-red-white:active {
        background-color: #161e25;
        border-color: #161e25;
        color: #d9dde6
    }

    .btn--theme-outline-red-white:active .icon {
        color: #d9dde6
    }

    .form-checkbox__input:hover~.form-checkbox__decor {
        background-color: #323e48;
        border-color: #323e48
    }

    .filter-btn:hover {
        background-color: #f2f4fa;
        color: #3c59a3
    }

    .s_pav__card:hover .adaptive-box__image,
    .s_team__card-image img:hover {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    .p-post-cat__menu-link:hover {
        background-color: #3c59a3;
        color: #fff
    }

    .p-post-cat__menu-link:hover .icon {
        color: #fff
    }

    .p-post-cat__menu-link:active:hover {
        background-color: #323e48;
        color: #fff
    }

    .p-post-cat__menu-link:active:hover .icon {
        color: #fff
    }

    .p-dir-post-team__card-image img:hover {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    .p-offer-home__content a:hover {
        color: #3c59a3
    }

    .p-offer-home__content a:active {
        color: #323e48
    }
}

.p-vacancies-home__video-box--new {
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(0, #323e48));
    background: -o-linear-gradient(top, #fff, #fff 50%, #323e48 0);
    background: linear-gradient(180deg, #fff, #fff 50%, #323e48 0);
}

.headerLogoMobile {
    margin-right: 0;
}
.headerLogoMobile span {
    font-size: .3rem;
}

.gallery {
    background-color: #f2f4fa;
    padding: .55rem 0;
}

.gallery__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px
}

.gallery__item {
    background-color: #fff;
    padding: .1rem;
    border-radius: .3rem;
    user-select: none;
    display: block;
    position: relative;
    overflow: hidden;
}

.gallery__item::before {
    content: '';
    width: calc(100% - .2rem);
    height: calc(100% - .2rem);
    background-color: rgba(60, 89, 163, .5);
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none'%3e%3cpath fill='%23fff' d='M7.111 0a7.111 7.111 0 0 1 5.75 11.297l-.164.217 3.055 3.056a.836.836 0 0 1-1.104 1.253l-.079-.07-3.055-3.056A7.112 7.112 0 1 1 7.11 0Zm0 1.673a5.438 5.438 0 1 0 0 10.877 5.438 5.438 0 0 0 0-10.877Zm0 1.674a.837.837 0 0 1 .83.738l.007.098v2.092h2.091a.837.837 0 0 1 .098 1.667l-.098.006H7.948v2.092a.837.837 0 0 1-1.668.098l-.006-.098V7.948H4.183a.837.837 0 0 1-.098-1.667l.098-.006h2.091V4.183a.837.837 0 0 1 .837-.836Z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 32px;
    position: absolute;
    left: .1rem;
    top: .1rem;
    opacity: 0;
    transition: .25s all ease-in-out;
    border-radius: .2rem;
}

.gallery__item:hover::before {
    opacity: 1;
}

.gallery__item img {
    width: 100%;
    height: auto;
    aspect-ratio: 1.5;
    object-fit: cover;
    border-radius: .2rem;
    user-select: none;
}

/* seoText */
.promoText {
    background-color: #f2f4fa;
    padding: .55rem 0;
}

.promoText__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 auto;
    width: 100%;
    max-width: 700px;
}
.promoText h2.title.p-post-cat__title {
    text-align: center;
}

.promoText__content {
    color: #161e25;
    font-size: 18px;
    line-height: 1.6;
    width: 100%;
    text-align: center;
}

.promoText__content p:not(:last-child) {
    margin-bottom: 20px;
}

.promoText__btn {
    margin-top: 30px;
}

@media (max-width: 1024px) {

}

@media (max-width: 767px) {

}

@media (max-width: 575px) {

}
/* seoText */

/* seoText */
.seoText {
    background-color: #f2f4fa;
    padding: .55rem 0 100px;
}

.seoText__container {
    color: #161e25;
    font-size: 18px;
    line-height: 1.6;
}

.seoText__container p:not(:last-child) {
    margin-bottom: 20px;
}

@media (max-width: 1024px) {
    .headerLogoFix {
        margin-right: 0;
    }
    .headerLogoFix span {
        font-size: .3rem;
    }
    .gallery__list {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767px) {
    .gallery__item {
        padding: .05rem;
        border-radius: .2rem;
    }
    .gallery__item img {
        border-radius: .15rem;
    }
    .gallery__item::before {
        left: .05rem;
        top: .05rem;
        width: calc(100% - .1rem);
        height: calc(100% - .1rem);
        border-radius: .15rem;
        background-size: 20px;
    }
}

@media (max-width: 575px) {
    .seoText {
        padding: 0 0 .55rem;
    }
    .headerLogoFix span {
        font-size: .26rem;
    }
}
/* seoText */

/* reviews */
.reviews {
    background-color: #f2f4fa;
    padding: .55rem 0;
}
.reviews__slider {
    margin: 0 -10px;
}
.reviews__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: nowrap;
    margin-bottom: .6rem;
}
.reviews__header .title {
    margin-bottom: 0;
}
.reviews__arrows {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: center;
}
.reviews__arrow {
    width: 23px;
    height: auto;
    aspect-ratio: 1.363636;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    flex: none;
}
.reviews__arrow:hover {
    opacity: .8;
}
.reviews__next {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='15' height='11' fill='none'%3e%3cpath fill='%23161E25' d='M14.751 6.094A.815.815 0 0 0 15 5.51c0-.219-.09-.429-.249-.584L9.945.252A.85.85 0 0 0 9.342 0a.87.87 0 0 0-.608.242.825.825 0 0 0-.25.591.807.807 0 0 0 .26.587L12.1 4.684H.85a.862.862 0 0 0-.601.242A.815.815 0 0 0 0 5.51c0 .22.09.43.249.584.16.155.375.242.6.242H12.1L8.745 9.6a.814.814 0 0 0 .01 1.158c.158.153.371.24.594.242a.862.862 0 0 0 .597-.232l4.806-4.674Z'/%3e%3c/svg%3e");
}
.reviews__prev {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='15' height='11' fill='none'%3e%3cpath fill='%23161E25' d='M.249 4.906A.815.815 0 0 0 0 5.49c0 .219.09.429.249.584l4.806 4.674a.85.85 0 0 0 .603.252.872.872 0 0 0 .608-.242.825.825 0 0 0 .25-.591.807.807 0 0 0-.26-.587L2.9 6.316h11.25a.862.862 0 0 0 .601-.242A.815.815 0 0 0 15 5.49c0-.22-.09-.43-.249-.584a.862.862 0 0 0-.6-.242H2.9L6.255 1.4a.814.814 0 0 0-.01-1.158.863.863 0 0 0-1.19-.01L.248 4.906Z'/%3e%3c/svg%3e");
}
.reviews__slider.slick-initialized .reviews__item {
    display: flex;
    margin: 0 10px;
}
.reviews__slider.slick-initialized .slick-track {
    display: flex;
}
.reviews__item {
    padding: 20px;
    border-radius: 16px;
    border: 1px solid #ccc;
    display: none;
    flex-direction: column;
    align-items: flex-start;
    background-color: #fff;
    height: auto;
    outline: none;
}
.reviews__item.slick-slide {
    height: auto;
}
.reviews__itemRating {
    margin: 0 0 15px;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 3px;
}
.reviews__itemRating li {
    list-style: none;
    flex: none;
    width: 16px;
    height: auto;
    aspect-ratio: 1;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='13' fill='none'%3e%3cpath fill='%23CCC' fill-rule='evenodd' d='M6.777 10.65 3.07 12.915a.546.546 0 0 1-.814-.598L3.33 8.035.21 5.609a.546.546 0 0 1 .29-.976l4.08-.336L6.282.33a.546.546 0 0 1 1.005 0l1.687 3.966 4.107.337c.496.04.684.67.29.976l-3.131 2.425 1.073 4.285a.546.546 0 0 1-.814.598L6.777 10.65Z' clip-rule='evenodd'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.reviews__itemRating li.active {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='13' fill='none'%3e%3cpath fill='%23fc0' fill-rule='evenodd' d='M6.777 10.65 3.07 12.915a.546.546 0 0 1-.814-.598L3.33 8.035.21 5.609a.546.546 0 0 1 .29-.976l4.08-.336L6.282.33a.546.546 0 0 1 1.005 0l1.687 3.966 4.107.337c.496.04.684.67.29.976l-3.131 2.425 1.073 4.285a.546.546 0 0 1-.814.598L6.777 10.65Z' clip-rule='evenodd'/%3e%3c/svg%3e");
}
.reviews__itemText {
}
@media (max-width: 767px) {
    .reviews__header {
        margin-bottom: 40px;
    }
    .reviews__arrow {
        width: 21px;
    }
    .reviews__slider.slick-initialized .slick-track {
        display: block;
    }
}
@media (max-width: 575px) {
    .reviews__header {
        margin-bottom: 25px;
    }
}
/* reviews */

.headerLogoSlogan {
    padding-top: 7px;
}

/* heroSlider */
.heroSlider {
}
.heroSlider__item {
}
.heroSlider__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1.735294;
    border-radius: .4rem;
    overflow: hidden;
}
.heroSlider__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.swiper-button-next svg, .swiper-button-prev svg {
    color: #3c59a3;
}
@media (max-width: 1024px) {
    .heroSlider__img {
        border-radius: .3rem;
        aspect-ratio: 1;
    }
}
/* heroSlider */