@charset "UTF-8";

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

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
}

main {
    display: block;
}

b,
strong {
    font-weight: 600;
}

*,
:after,
:before {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    border-style: none;
}

img[width="0"][height="0"] {
    display: none;
}

a {
    color: var(--ast-color-text-primary);
    cursor: pointer;
    background-color: transparent;
    text-decoration: underline;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

a:hover,
a:focus {
    color: var(--ast-color-text-accent);
}

input,
select,
textarea,
button {
    border: none;
    outline: none;
    border-radius: 0;
    -webkit-appearance: none;
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

textarea {
    overflow: auto;
}

textarea::-webkit-scrollbar {
    width: 0;
}

::-ms-clear {
    display: none;
}

input {
    overflow: visible;
}

button {
    cursor: pointer;
    border: none;
    outline: none;
    overflow: visible;
}

button,
select {
    text-transform: none;
}

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

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

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

.b24-form [type="checkbox"],
.b24-form [type="radio"] {
    -webkit-appearance: auto;
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

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

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

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

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;
}

select::-ms-expand {
    display: none;
}

* {
    box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
}

ul, ol {
    margin: 0;
    padding: 0;
    padding-left: 26rem;
}

textarea {
    width: 100%;
    resize: none;
    border: none;
    outline: none;
    border-radius: 0;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

label {
    margin: 0;
}

input,
button,
select {
    border: none;
    outline: none;
}

input {
    border-radius: 0;
}

*:focus {
    outline: none;
}

svg, svg * {
    transition: all 0.3s ease;
}

svg.lucide {
    stroke-width: 1.6rem;
    stroke: var(--ast-color-icon-secondary);
}

html.with-fancybox {
    width: auto;
    overflow: visible;
    scroll-behavior: auto;
}

html.with-fancybox body.hide-scrollbar {
    width: auto;
    margin-right: 0rem;
    overflow: hidden !important;
    overscroll-behavior-y: none;
}

html.with-fancybox body {
    touch-action: none;
}

.no-scrolling {
	overflow: hidden;
}

button[disabled],
form[inert],
.inert-container[inert],
input[inert],
button[inert] {
    opacity: .3;
    cursor: not-allowed;
}

/*styles config 
for example:
adaptive full-hd 1rem = calc(100vw / 1920)
adaptive 768px 1rem = calc(100vw / 768)
static 1rem = 1px
*/
html,
body {
    font-size: 1px;
    height: 100%;
}
/*end styles config*/

/* browser scroll width */
body *::-webkit-scrollbar {
    width: 12rem;
    height: 6rem;
}

/* browser scroll track */
body *::-webkit-scrollbar-track {
    background: #fff;
}

/* browser scroll handle */
body *::-webkit-scrollbar-thumb {
    background: var(--ast-color-text-accent);
    border-radius: 3rem;
}

.horizontal-scroll {
    padding-bottom: 12rem;
    overflow-x: auto;
}

body .mobile-visible {
    display: none;
}

@media (max-width: 640px) {
    body .mobile-visible {
        display: block;
    }

    body .desktop-visible {
        display: none;
    }
}

/*main styles*/
body {
    margin: 0;
    color: var(--ast-color-text-primary);
    font: 500 var(--ast-typography-size-body-m)/var(--ast-typography-line-body-m) var(--ast-typography-family-base), sans-serif;
    background: var(--ast-color-bg-base);
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.content {
    display: flex;
    flex-direction: column;
    flex: 1 0 auto;
    /* overflow: hidden; */
}

.container {
    position: relative;
    max-width: var(--ast-layout-content);
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

/* .title-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 30rem;
    gap: 20rem 0;
    text-align: center;
}

.title-wrapper.left {
    align-items: flex-start;
    text-align: left;
} */

/* buttons */
.buttons {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ast-space-m);
}

.button {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    padding: var(--ast-space-s) var(--ast-space-l);
    background-color: var(--ast-color-bg-accent);
    border: none;
    border-radius: var(--ast-radius-full);
    font-weight: 500;
    font-size: var(--ast-typography-size-label-m);
    line-height: var(--ast-typography-line-label-m);
    text-align: center;
    color: var(--ast-color-text-inverse);
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer; 
}

.button-w100 {
    width: 100%;
}

.button-primary {
    background-color: var(--ast-color-bg-accent);
    color: var(--ast-color-text-inverse);
}

.button-primary.primary-xl {
    padding: var(--ast-space-m) var(--ast-space-xl);
    font-size: var(--ast-typography-size-label-l);
    line-height: var(--ast-typography-line-label-l);
}

.button-primary.primary-l {
    padding: var(--ast-space-s) var(--ast-space-l);
    font-size: var(--ast-typography-size-label-m);
    line-height: var(--ast-typography-line-label-m);
}

.button-primary.primary-m {
    padding: var(--ast-space-xs) var(--ast-space-m);
    font-size: var(--ast-typography-size-label-m);
    line-height: var(--ast-typography-line-label-m);
}

.button-primary:hover,
.button-primary:focus {
    background-color: var(--ast-color-bg-accent-hover);
    color: var(--ast-color-text-inverse);
}

.button-secondary {
    background-color: var(--ast-color-bg-subtle);
    color: var(--ast-color-text-primary);
}

.button-secondary:hover,
.button-secondary:focus {
    background-color: var(--ast-color-bg-muted);
    color: var(--ast-color-text-primary);
}

.button-ghost {
    
}

.button-ghost:hover {
    
}

.button-dark {
    background: var(--ast-color-bg-inverse-2);
}

.button-dark:hover,
.button-dark:focus {
    background: var(--ast-color-bg-inverse-3);
    color: var(--ast-color-text-inverse);
}

.button-white {
    
}

.button-white:hover {
    
}

.button-outline {
    
}

.button-outline:hover {
    
}
/* end buttons */

/* badges */
.badges {
    display: flex;
    gap: var(--ast-space-xs);
    flex-wrap: wrap;
}

.badge {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--ast-space-2xs) var(--ast-space-s);
    gap: var(--ast-space-2xs);
    border-radius: var(--ast-radius-full);
    border: 1rem solid var(--ast-color-border-subtle);
    background: var(--ast-color-bg-base);
    font-size: var(--ast-typography-size-label-m);
    line-height: var(--ast-typography-line-label-m);
    color: var(--ast-color-text-secondary);
}

.badge-icon {
    width: 16rem;
    height: 16rem;
}

.badge svg {
    width: 16rem;
    height: 16rem;
}

/* добавить баджам стили серый белый синий персиковый голубой */
.badge-grey {
    border-color: transparent;
    background: var(--ast-color-bg-subtle);
}

.badge-blue {
    border-color: transparent;
    background: var(--ast-color-bg-subtle);
    color: var(--ast-color-text-inverse);
}

.badge-blue svg {
    stroke: var(--ast-color-icon-inverse);
}

.badge-peach {
    border-color: transparent;
    background: var(--ast-color-bg-accent-secondary-subtle);
    color: var(--ast-color-text-accent-secondary);
}

.badge-peach svg {
    stroke: var(--ast-color-icon-accent-secondary-strong);
}

.badge-lightblue {
    border-color: transparent;
    background: var(--ast-color-bg-accent-subtle);
    color: var(--ast-color-text-accent-strong);
}

.badge-lightblue svg {
    stroke: var(--ast-color-icon-accent-strong);
}

.badge-row {
    position: relative;
    padding: var(--ast-space-2xs) var(--ast-space-s);
    background: var(--ast-color-bg-base);
    border-radius: var(--ast-radius-full);
    font-size: var(--ast-typography-size-body-s);
    line-height: var(--ast-typography-line-body-s);
    color: var(--ast-color-text-tertiary);
}

.badge-row span {
    position: relative;
    display: inline-block;
}

.badge-row span:not(:first-child) {
    padding-left: 18rem;
}

.badge-row span:not(:first-child)::after {
    content: '•';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 4rem;
}
/* end badges */

/* icons */
.icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20rem;
    height: 20rem;
}

.icon-wrapper-m {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24rem;
    height: 24rem;
}

.icon {
    width: 10rem;
    height: 10rem;
}

.icon-m {
    width: 16rem;
    height: 16rem;
}

.icon-l {
    width: 20rem;
    height: 20rem;
}
/* end icons */

/* checkboxes */
.ch,
.rd {
    display: none;
}

.ch + label,
.rd + label {
    position: relative;
    display: inline-block;
    padding-left: 30rem;
    cursor: pointer;
    font-size: var(--ast-typography-size-body-xs);
    line-height: var(--ast-typography-line-body-xs);
    color: var(--ast-color-text-tertiary);
    transition: all 0.3s ease;
}

.ch:disabled + label,
.rd:disabled + label {
    opacity: 0.5;
}

.ch + label a,
.rd + label a {
    color: var(--ast-color-text-tertiary);
    text-decoration: underline;
}

.ch + label a:hover,
.rd + label a:hover {
    color: var(--ast-color-text-tertiary);
    text-decoration: none;
}

.ch + label:before,
.rd + label:before {
    content: '';
    position: absolute;
    top: -1rem;
    left: 0;
    width: 18rem;
    height: 18rem;
    border-radius: var(--ast-radius-xs);
    border: var(--ast-border-width-thin) solid var(--ast-color-border-default);
    background: var(--ast-color-bg-base);
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.ch + label:hover:before,
.rd + label:hover:before {
    border-color: var(--ast-color-border-strong);
}

.has-error > .ch + label:before,
.ch.error + label:before,
.has-error > .ch.required + label:before,
.has-error .ch.required + label:before {
    border-color: var(--ast-color-border-error);
}

.rd + label:before {
    border-radius: 50%;
}

.ch + label::after,
.rd + label::after {
    content: '';
    position: absolute;
    top: 3rem;
    left: 4rem;
    width: 10rem;
    height: 10rem;
    background: url(../img/icons/i_check-white.svg) center/contain no-repeat;
    transform: scale(0);
    transition: all 0.3s ease;
}

.ch:checked + label,
.rd:checked + label {
    border-color: var(--ast-color-bg-accent);
}

.ch:checked + label::before,
.rd:checked + label::before {
    border-color: var(--ast-color-border-accent);
    background: var(--ast-color-bg-accent);
}

.ch:checked + label::after,
.rd:checked + label::after {
    transform: scale(1);
}
/* end checkboxes */

/* old inputs */
.ip_cell {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    gap: var(--ast-space-s);
    line-height: normal;
}

.ip_cell.w100 {
    width: 100%;
}

.ip_cell.w50 {
    width: 50%;
}

.ip_cell.w30 {
    width: 30%;
}

.input_text, 
.select2-container .select2-selection--multiple, 
.select2-container--default .select2-selection--multiple {
    display: flex;
    padding: var(--ast-space-m);
    align-items: center;
    width: 100%;
    border-radius: var(--ast-radius-s);
    border: var(--ast-border-width-thin) solid var(--ast-color-border-default);
    background: var(--ast-color-bg-base);
    font-size: var(--ast-typography-size-body-s);
    line-height: var(--ast-typography-line-body-s);
    color: var(--ast-color-text-secondary);
    transition: all 0.3s ease;
}

.input_text:hover,
.select2-container .select2-selection--multiple:hover,
.select2-container--default .select2-selection--multiple:hover {
    border: var(--ast-border-width-thin) solid var(--ast-color-border-strong);
}

.input_text:focus,
.select2-container .select2-selection--multiple:focus, 
.select2-container--default .select2-selection--multiple:focus {
    border: var(--ast-border-width-thin) solid var(--ast-color-border-accent);
}

.has-error {
    position: relative;
}

.has-error .input_text {
    border: var(--ast-border-width-thin) solid var(--ast-color-border-error);
    color: var(--ast-color-text-error);
}

.help-block {
    display: none;
}

.has-error .help-block {
    position: relative;
    display: block;
    font-size: 12rem;
    line-height: 14rem;
    padding-top: 5rem;
    color: var(--ast-color-text-error);
}

.modal_content .has-error .help-block {
    white-space: normal; 
}

.ip_label {
    display: block;
    font-weight: 500;
    font-size: 14rem;
    color: var(--text-lightgray-color);
}

.ip-cells {
    display: flex;
}

.ip-cells .ip_cell:not(:last-child) {
    margin-right: 20rem;
}

.label-on {
    position: relative;
}

.label-top {
    position: relative;
}

.label-on .input_text,
.label-top .input_text {
    font-size: 16rem;
    background: var(--gray-bg-color);
    border: 1rem solid transparent;
}

.label-top .input_text {
    /* padding-top: 0; */
}

.label-on.has-error .input_text,
.label-on .input_text.error,
.label-top.has-error .input_text,
.label-top .input_text.error {
    background: #FFF1F1;
    border-color: #F57575;
    color: #F57575;
}

.label-on textarea.input_text,
.label-top textarea.input_text {
    padding-top: 25rem;
}

.label-on .input_text:hover,
.label-top .input_text:hover {
    border: 1rem solid #bdbdbd;
}

.label-on .input_text:focus,
.label-top .input_text:focus {
    background: #fff;
    border: 1rem solid #dadada;
}

.label-on .input_text::placeholder { color: transparent; }
.label-on .input_text::-webkit-input-placeholder { color: transparent; }
.label-on .input_text:-moz-placeholder { color: transparent; } /* FF 4-18 */
.label-on .input_text::-moz-placeholder { color: transparent; } /* FF 19+ */
.label-on .input_text:-ms-input-placeholder { color: transparent; } /* IE 10+ */

.label-on .input_text:focus::placeholder { color: inherit; }
.label-on .input_text:focus::-webkit-input-placeholder { color: inherit; }
.label-on .input_text:focus:-moz-placeholder { color: inherit; } /* FF 4-18 */
.label-on .input_text:focus::-moz-placeholder { color: inherit; } /* FF 19+ */
.label-on .input_text:focus:-ms-input-placeholder { color: inherit; } /* IE 10+ */

.label-on .ip_label {
    position: absolute;
    top: 22rem;
    left: 18rem;
    height: 16rem;
    margin: auto;
    font-size: 16rem;
    line-height: 1;
    pointer-events: none;
    transition: all 0.3s ease;
}

.label-top .ip_label {
    font-size: 14rem;
    line-height: 1;
    color: #878787;
}

.label-on .input_text:focus+.ip_label,
.label-on .input_text.active+.ip_label,
.label-on .input_text:not(.not-required):valid+.ip_label,
.label-on .input_text.success+.ip_label

/* .label-on .input_text[required]:valid + .ip_label */
    {
    top: 10rem;
    font-size: 13rem;
}

.label-on textarea.input_text:focus+.ip_label,
.label-on textarea.input_text.active+.ip_label,
.label-on textarea.input_text:not(.not-required):valid+.ip_label

/* .label-on textarea.input_text[required]:valid + .ip_label */
    {
    opacity: 0.3;
}

.image-uploader {
    border-radius: 7rem;
}

.label-on .image-uploader {
    border: 1rem solid transparent;
}

.label-on .image-uploader.has-files {
    border: 1rem solid #dadada;
}

.label-on .upload-text {
    background: var(--gray-bg-color);
    border-radius: 7rem;
}

.ip_cell span.error {
    display: none !important;
}

.input-status {
    position: absolute;
    top: 0;
    right: 10rem;
    bottom: 0;
    margin: auto;
    width: 24rem;
    height: 24rem;
    background: url(../../img/i_success.svg) center no-repeat;
    background-size: contain;
    transition: all 0.3s ease;
    transform: scale(0);
}

.label-top .input-status {
    top: 30rem;
}

.label-on:not(.has-error) .input_text.success~.input-status,
.label-top:not(.has-error) .input_text.success~.input-status {
    transform: scale(1);
}

@media (max-width: 768rem) {
    .ip-cells {
        flex-direction: column;
    }

    .ip-cells:not(:last-child) {
        margin-bottom: 20rem;
    }
}

.lock-on,
.lk_content .ip_cell {
    position: relative;
}

.lock-on .ip_label,
.lock-on .input_text {
    pointer-events: none;
}

.lock-on .input_text {
    padding-right: 40rem;
    background: transparent;
}

.pencil-field {
    position: absolute;
    top: 24rem;
    right: 0;
    /* bottom: 0; */
    width: 40rem;
    height: 40rem;
    cursor: pointer;
    background: url(../../img/close_modal-grey.svg) center no-repeat;
    background-size: 20rem;
}

.pencil-field.field-off {
    background: url(../../img/i_pencil.svg) center no-repeat;
    background-size: 20rem;
}

.question_box+.pencil-field {
    right: 57rem;
}

/* @media (max-width: 568rem) {
    .question_box+.pencil-field {
        right: 42rem
    }
} */

.label-on .question_box,
.label-top .question_box {
    display: flex;
    align-items: center;
    margin-top: 0;
    margin-left: 20rem;
}

.label-on .question_icon,
.label-top .question_icon {
    width: 40rem;
    height: 40rem;
    font-size: 18rem;
    line-height: 38rem;
}

.label-on .question_box~.input-status,
.label-top .question_box~.input-status {
    right: 75rem;
}

.label-on .show_password,
.label-top .show_password {
    top: 19rem;
    margin: auto;
    width: 16rem;
    height: 22rem;
}

.label-top .show_password {
    top: 47rem;
}

.label-on .question_box~.show_password,
.label-top .question_box~.show_password {
    right: 75rem;
}

.label-on:not(.has-error) .input_text.success~.show_password,
.label-top:not(.has-error) .input_text.success~.show_password {
    right: 35rem;
}

.label-on:not(.has-error) .input_text.success~.question_box~.show_password,
.label-top:not(.has-error) .input_text.success~.question_box~.show_password {
    right: 105rem;
}

.show_password {
    position: absolute;
    top: 7rem;
    right: 12rem;
    color: var(--text-main-color);
    font-size: 16rem;
    transition: none;
}

.show_password:after {
    content: '\f06e';
    font-family: 'FontAwesome';
    display: inline-block;
    transition: none;
}

.show_password.showed:after {
    content: '\f070';
    transition: none;
}

.reset_password-wrapper {
    margin-bottom: 30rem;
}
  
.reset_password {
    font-size: 14rem;
}

.input-ch-notice {
    margin-bottom: 20rem;
    font-weight: 500;
    font-size: 14rem;
    line-height: 1.5;
    text-align: center;
    color: #878787;
}

.ip_cell + .input-reg-notice {
    margin-bottom: 20rem;
    font-size: 12rem;
    line-height: 1;
}
  
.label-top + .input-reg-notice {
    font-size: 14rem;
    line-height: 1;
    color: #878787;
}

.input-reg-notice a {
    color: var(--ast-color-bg-accent);
}

.input-reg-notice a:hover,
.input-reg-notice a:focus {
    color: var(--blue-hover-color);
}
/* end old inputs */

/* flex */
.flex {
    display: flex;
}

.flex-row {
    flex-direction: row;
}

.flex-column {
    flex-direction: column;
}

.align-start {
    align-items: flex-start;
}

.align-center {
    align-items: center;
}

.align-end {
    align-items: flex-end;
}

.justify-start {
    justify-content: flex-start;
}

.justify-center {
    justify-content: center;
}

.justify-sb {
    justify-content: space-between;
}

.justify-end {
    justify-content: flex-end;
}

.gap0 {
    gap: 0;
}

.gap0-5 {
    gap: 0 5rem;
}

.gap5-0 {
    gap: 5rem 0;
}

.gap5 {
    gap: 5rem;
}

.gap0-10 {
    gap: 0 10rem;
}

.gap10-0 {
    gap: 10rem 0;
}

.gap10 {
    gap: 10rem;
}

.gap0-15 {
    gap: 0 15rem;
}

.gap15-0 {
    gap: 15rem 0;
}

.gap15 {
    gap: 15rem;
}

.gap0-20 {
    gap: 0 20rem;
}

.gap20-0 {
    gap: 20rem 0;
}

.gap20 {
    gap: 20rem;
}
/* end flex */

.section {
    position: relative;
    padding: 70rem 0;
}

.gray-bg {
    background: var(--gray-bg-color);
}

.tab-item {
    display: none;
}

.tab-item.active {
    display: block;
}

.dropdown-box {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10rem 0;
}

.dropdown-link {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 20rem 40rem 20rem 30rem;
    background: var(--white-color);
    box-shadow: 0rem 0rem 20rem 0rem rgba(0, 0, 0, 0.05);
    border-radius: 20rem;
    font-size: 16rem;
    line-height: normal;
    /* white-space: nowrap; */
    overflow: hidden;
    cursor: pointer;
}

.dropdown-link span {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dropdown-link::after {
    content: '';
    position: absolute;
    top: 0;
    right: 14rem;
    bottom: 0;
    margin: auto;
    width: 15rem;
    height: 8rem;
    background: url(../../img/i_select_blue.svg) center/contain no-repeat;
    transition: all .3s ease;
}

.dropdown-box.active .dropdown-link::after {
    transform: rotate(-180deg);
}

.dropdown-remove-search,
.remove-search {
    position: absolute;
    top: 0;
    right: 30rem;
    bottom: 0;
    margin: auto;
    width: 30rem;
    height: 30rem;
    background: url(../../img/new-site/icons/remove-search.svg) center/18rem no-repeat;
    cursor: pointer;
    transition: all .3s ease;
    opacity: 0;
    transform: scale(0);
    pointer-events: none;
}

.remove-search {
    right: 50rem;
}

.dropdown-link.chosen ~ .dropdown-remove-search,
.input-search.searching ~ .remove-search {
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
}

.dropdown-list {
    position: absolute;
    top: 68rem;
    left: 0;
    display: flex;
    flex-direction: column;
    gap: 5rem 0;
    width: 100%;
    max-height: 570rem;
    padding: 10rem 15rem;
    background: var(--gray-bg-color);
    box-shadow: 0rem 0rem 25rem 0rem rgba(0, 0, 0, 0.15);
    border-radius: 7rem;
    z-index: 2;
    overflow-y: auto;
    transition: all .3s ease;
    opacity: 0;
    transform: scale(.8);
    pointer-events: none;
    /* -ms-overflow-style: none;
    scrollbar-width: none; */
}

/* .dropdown-list::-webkit-scrollbar {
    width: 0;
    height: 0;
} */

.dropdown-box.active .dropdown-list {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
}

.dropdown-items {
    display: flex;
    flex-direction: column;
    max-height: 490rem;
    overflow-y: auto;
}

.dropdown-item {
    display: flex;
    flex-direction: column;
    padding: 10rem;
}

.dropdown-item-text {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 100%;
    cursor: pointer;
    transition: all .3s ease;
}

.dropdown-search-box,
.dropdown-search-list {
    width: 100%;
}

.search-box {
    position: relative;
    min-height: 47rem;
    border-radius: 20rem;
    overflow: hidden;
}

.input-search {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 20rem 40rem 20rem 30rem;
    background: var(--white-color);
    box-shadow: 0rem 0rem 20rem 0rem rgba(0, 0, 0, 0.05);
    border-radius: 20rem;
    font-weight: 400;
    font-size: 16rem;
    line-height: normal;
}

.input-search.searching {
    padding-right: 76rem;
}

.dropdown-list .input-search {
    padding: 14rem 42rem 14rem 20rem;
    border-radius: 15rem;
}

.search-btn {
    position: absolute;
    top: 0;
    right: 16rem;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30rem;
    height: 30rem;
    margin: auto;
    background: none;
}

.input-search:hover + .search-btn svg path, 
.input-search:focus + .search-btn svg path {
    fill: var(--ast-color-bg-accent);
    fill-opacity: 1;
}

.dateRange {
    display: flex;
    gap: 10rem;
}

.dateRange .ip_cell {
    margin-bottom: 0;
}

.date-picker-wrapper {
    font-family: var(--main-font), sans-serif;
    z-index: 3;
    background: var(--gray-bg-color);
    color: var(--text-main-color);
    border: none;
    border-radius: 8rem;
    box-shadow: 0rem 5rem 10rem rgba(0, 0, 0, 0.2);
}

.date-picker-wrapper .month-wrapper {
    border: none;
    border-radius: 8rem;
}

.date-picker-wrapper .month-wrapper table .day.real-today {
    background: rgb(252 207 143 / 50%);
}

.date-picker-wrapper .first-date-selected,
.date-picker-wrapper .last-date-selected {
    background: rgb(0 134 255 / 50%) !important;
}

.date-picker-wrapper .month-wrapper table .day.checked {
    background-color: rgb(156 219 247 / 50%);
}

.date-picker-wrapper .date-range-length-tip {
    background-color: var(--gray-bg-color);
}

.date-picker-wrapper .date-range-length-tip:after {
    border-top: 4rem solid var(--gray-bg-color);
}

.date-picker-wrapper .drp_top-bar .apply-btn.disabled {
    color: var(--text-main-color);
    border: solid 1rem #3C3E45;
}

.date-picker-wrapper .drp_top-bar .apply-btn {
    border: solid 1rem #0086FF;
    background: #0086FF;
}

.date-picker-wrapper .shortcuts b {
    display: none;
}

.date-picker-wrapper .custom-shortcut a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 3rem 0;
    padding: 5rem 12rem;
    background: #fff;
    border: 1rem solid #dadada;
    border-radius: 8rem;
    font-weight: 500;
    font-size: 12rem;
    line-height: 150%;
    text-align: center;
    text-decoration: none;
    color: var(--text-lightgray-color);
}

.date-picker-wrapper .custom-shortcut a:hover {
    color: #0086FF;
}

.filters-keywords {
    margin: 20rem 0;
}

.filters-list-selected {
    display: flex;
    flex-wrap: wrap;
    gap: 10rem;
}

.filter_selected_item {
    position: relative;
    padding: 8rem 34rem 8rem 12rem;
    border-radius: 10rem;
    background: var(--white-color);
    box-shadow: 0 0 8rem 1rem rgba(0, 0, 0, 0);
    cursor: pointer;
    font-size: 16rem;
    line-height: 1.5;
    color: var(--text-lightgray-color);
    transition: all 0.3s ease;
}

.filter_selected_item:hover {
    box-shadow: 0 0 8rem -2rem #c7c7c7;
}

.filters .filter_selected_item::after, .experts_filters-accordion_item .filter_selected_item::after {
    content: '';
    display: block;
    width: 10rem;
    height: 10rem;
    background: url(../../img/close-thin.svg) no-repeat;
    background-size: contain;
    position: absolute;
    right: 12rem;
    top: 50%;
    transform: translateY(-50%);
}

.dropdown-box-mobile {
    display: none;
}

.catalog-filters {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 10rem;
    margin: 20rem 0;
}

.catalog-filters .dropdown-box {
    max-width: 445rem;
    width: 100%;
    grid-column-end: span 4;
}

.catalog-filters .dropdown-search-box {
    max-width: 445rem;
    width: 100%;
    grid-column-end: span 4;
}

.catalog-filters .col-3 {
    grid-column-end: span 3;
}

.catalog-filters-mob {
    display: none;
}

.pager_content {
    display: flex;
    flex-direction: column;
    gap: 20rem 0;
    margin-top: 50rem;
}

.pager_content .ip_cell {
    margin-bottom: 0;
}

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

.paginate_box a {
    display: inline-block;
    color: #8F8F8F;
    font-size: 14rem;
}

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

.paginate li {
    display: inline-block;
}

.paginate li.pg_space {
    display: inline-block;
    padding: 10rem 15rem;
    vertical-align: baseline;
}

.paginate a {
    display: inline-block;
    width: 35rem;
    height: 35rem;
    margin: 0 2rem;
    border-radius: 50%;
    text-align: center;
    line-height: 35rem;
    font-size: 14rem;
    color: #8F8F8F;
}

.paginate li.pg_current a {
    background-color: #F3F9FF;
    color: var(--text-second-color);
}

.dropdown-box-mobile-close,
.dropdown-box-mobile-title,
.dropdown-box-mobile-button {
    display: none;
}

.search-not-found {
    margin-top: 50rem;
    font-size: 32rem;
    line-height: 1.2;
    text-align: center;
}

.overlay {
    position: fixed;
    z-index: 1100;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease 0.1s;
}

.modal:not(.fade) {
    position: absolute;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: all 0.1s ease;
    display: none;
}

.modal.visible {
    opacity: 1;
    height: auto;
    visibility: visible; 
    display: block;
}

.fancybox-container .modal:not(.fade),
.fancybox-container .modal.visible {
    position: static;
    z-index: auto;
    padding: 0;
    background: none;
    opacity: 1;
    visibility: inherit;
    display: block;
    pointer-events: none;
}

.modal_content {
    position: absolute;
    z-index: 2;
    top: 2.5vh;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    max-width: 560rem;
    width: 100%;
    padding: var(--ast-padding-card-l);
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: var(--ast-space-xl);
    border-radius: var(--ast-radius-m);
    background: var(--ast-color-bg-glass);
    box-shadow: 0 2rem 6rem -2rem rgba(0, 0, 0, 0.05), 0 8rem 16rem -4rem rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(15rem);
    pointer-events: auto;
}

.fancybox-container .modal_content {
    position: relative;
}

.modal-bitrix .modal_content {
    padding: 0;
}

.modal-bitrix .b24-form {
    border-radius: var(--ast-radius-m);
    overflow: hidden;
}

.modal_content-mini {
    width: 500rem;
    padding: 35rem 30rem;
}

.modal_overlay {
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    opacity: 1;
}

.fancybox-container .modal_overlay {
    display: none;
}

.modal_close {
    position: absolute;
    top: 0rem;
    right: -56rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40rem;
    height: 40rem;
    z-index: 10;
    color: transparent;
    font-size: 0;
}

.modal_close svg {
    width: 30rem;
    height: 30rem;
    stroke-width: 1.8rem;
    stroke: var(--ast-color-icon-inverse);
}

.modal .fancybox-button--close,
.modal .fancybox-close-small {
    display: none;
}

.modal-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--ast-gap-xs);
}

.modal-title {
    font-size: var(--ast-typography-size-heading-l);
    line-height: var(--ast-typography-line-heading-l);
    letter-spacing: -0.64rem;
    color: var(--ast-color-text-primary);
}

.modal-text {
    font-size: var(--ast-typography-size-body-m);
    line-height: var(--ast-typography-line-body-m);
    color: var(--ast-color-text-tertiary);
}

.contact_form {
    background: var(--gray-bg-color);
    border-radius: 30rem;
    padding: 52rem 55rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.modal_content .contact_form {
    padding: 0;
    background: none;
}

.contact_buttons .button,
.contact_buttons .button-o {
    width: 100%;
    margin-bottom: 25rem;
}

.success_box {
    text-align: center;
}

.modal_buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15rem 10rem;
    padding-top: 1em;
}

.modal_buttons a.button, 
.modal_buttons a.button-o {
    height: auto;
    margin-right: 0;
    margin-bottom: 0;
}

.modal_content .buttons .button,
.modal_content .buttons .button-o {
    margin-bottom: 0;
}

.modal_text + .buttons {
    margin-top: 15rem;
}

.modal_search {
    display: none;
    width: 100%;
    max-width: 1124rem;
    padding: 44rem 15rem; 
    border-radius: 10rem;
}

.modal_search .button.modal_search-btn {
    margin: 0;
    margin-top: 20rem; 
}

.modal_search-form {
    display: flex;
    flex-direction: column;
    align-items: center; 
}

.modal_search-input {
    width: 100%;
    padding: 10rem 20rem;
    height: 45rem;
    border: 1rem solid #DADADA;
    border-radius: 5rem;
    box-shadow: none;
    font-size: 16rem;
    line-height: 1.2em;
    flex-grow: 1; 
}

.modal_search-input:focus {
    border-color: var(--ast-color-bg-accent);
}

.search-rezult_info {
    margin-bottom: 30rem; 
}

.search-form .button.search-form_btn {
    padding: 12rem 20rem; 
}

.modal-side_banner {
    display: none;
}
  
.modal-side_banner.fancybox-content {
    display: inline-block;
    max-width: 600rem;
    width: 100%;
    padding: 0;
    border-radius: 7rem;
    overflow: visible;
}
  
.modal-side_banner .fancybox-button {
    top: -30rem;
    right: -30rem;
    width: 60rem;
    height: 60rem;
    padding: 0;
    background: url(../../img/close-popup.svg) center no-repeat;
    background-size: contain;
    opacity: 1;
    transition: all .2s linear;
}
  
.modal-side_banner .fancybox-button:hover {
    transform: rotate(90deg);
}
  
.modal-side_banner .fancybox-button svg {
    display: none;
}
  
.modal-side_banner-info {
    display: flex;
    flex-direction: column;
    gap: 20rem 0;
    padding: 30rem;
    font-size: 16rem;
    text-align: center;
}

.modal-side_banner-img {
    line-height: 0;
}

.modal-side_banner-img img {
    width: 100%;
}

.modal .buttons,
.modal-side_banner .buttons {
    justify-content: center;
}

.index-slider-section {
    padding: 30rem 0 10rem;
}

.index-slider-container {
    position: relative;
}
  
.close-index-slider {
    position: absolute;
    top: 15rem;
    right: 30rem;
    width: 28rem;
    height: 28rem;
    background: url(../../img/close-popup.svg) center no-repeat;
    background-size: contain;
    z-index: 2;
    transition: all .2s linear;
    cursor: pointer;
}
  
.close-index-slider:hover {
    transform: rotate(90deg);
}
  
.index-slider {
    position: relative;
    display: block;
    max-width: 1345rem;
    width: 100%;
    height: 250rem;
    margin: 20rem auto;
}
  
.index-slider.with-img {
    height: auto;
}
  
.index-slide {
    max-width: 1345rem;
    width: 100%;
    height: 250rem;
    margin: auto;
    border-radius: 10rem;
    overflow: hidden;
}
  
.with-img .index-slide {
    height: auto;
}
  
.index-slide img {
    width: 100% !important;
    image-rendering: optimizequality;
    image-rendering: -webkit-optimize-contrast;
}
  
.index-slide-bg {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 100%;
    height: 100%;
}

.accordion_desc {
    display: none;
}

.accordion_item.active {
    display: block;
}

body .index-slide img.mobile-visible {
    display: none;
}

body .index-slide img.desktop-visible {
    display: block;
}

.all-events-card-stickers {
    position: absolute;
    top: 40rem;
    left: 0;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 10rem 0;
    max-height: 220rem;
    overflow: hidden;
    pointer-events: none;
}

.all-events-card-sticker {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32rem;
    max-width: 260rem;
    min-height: 36rem;
    padding: 5rem 10rem;
    background: #5CBF1F;
    border-radius: 0 5rem 5rem 0;
    font-weight: 500;
    font-size: 14rem;
    line-height: 24rem;
    text-align: center;
    color: #FFF;
    z-index: 1;
}

.need_auth-popup-info {
    padding: 60rem 30rem;
}

.reg-block {
    max-width: 700rem;
    width: 100%;
    padding: 50rem;
    margin: auto;
    background: #fff;
    border-radius: 15rem;
    font-weight: 500;
    font-size: 16rem;
    line-height: 150%;
}

.modal:not(.modal-reg) .reg-block,
.fancybox-container .reg-block {
    padding: 0;
}

.reg-block .auth-title {
    font-weight: 700;
    font-size: 28rem;
    line-height: 150%;
    text-align: center;
    margin-bottom: 30rem;
}

.reg-form .button {
    width: 100%;
    height: 60rem;
    margin: 0;
    font-size: 20rem;
}

.error-page-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 20rem;
}

.error-page-info {
    display: flex;
    flex-direction: column;
    gap: 20rem 0;
    max-width: 650rem;
    width: 100%;
}

.error-page-text {
    font-weight: 500;
    font-size: 20rem;
    line-height: 1.5;
}

.error-page-socs-block {
    display: flex;
    flex-direction: column;
    gap: 20rem 0;
    max-width: 650rem;
    width: 100%;
}

.error-page-socs-title {
    font-weight: 600;
    font-size: 24rem;
    line-height: 1.3;
}

.error-page-socs {
    display: flex;
    flex-direction: column;
    gap: 20rem 0;
}

.error-page-soc {
    display: flex;
    gap: 0 10rem;
    font-weight: 500;
    font-size: 16rem;
    line-height: 1.5;
}

.error-page-soc img {
    width: 25rem;
    min-width: 25rem;
}

.error-page-error {
    max-width: 650rem;
    font-weight: 900;
    font-size: 300rem;
    line-height: .8;
    text-align: center;
    color: #E5E5E5;
}

/*preloader*/
.circularG-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 58rem;
    height: 58rem;
    margin: auto;
    z-index: 100;
}

.circularG {
    position: absolute;
    background-color: rgb(0, 136, 255);
    width: 14rem;
    height: 14rem;
    border-radius: 9rem;
    -o-border-radius: 9rem;
    -ms-border-radius: 9rem;
    -webkit-border-radius: 9rem;
    -moz-border-radius: 9rem;
    animation-name: bounce_circularG;
    -o-animation-name: bounce_circularG;
    -ms-animation-name: bounce_circularG;
    -webkit-animation-name: bounce_circularG;
    -moz-animation-name: bounce_circularG;
    animation-duration: 1.1s;
    -o-animation-duration: 1.1s;
    -ms-animation-duration: 1.1s;
    -webkit-animation-duration: 1.1s;
    -moz-animation-duration: 1.1s;
    animation-iteration-count: infinite;
    -o-animation-iteration-count: infinite;
    -ms-animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    animation-direction: normal;
    -o-animation-direction: normal;
    -ms-animation-direction: normal;
    -webkit-animation-direction: normal;
    -moz-animation-direction: normal;
}

.circularG_1 {
    left: 0;
    top: 23rem;
    animation-delay: 0.41s;
    -o-animation-delay: 0.41s;
    -ms-animation-delay: 0.41s;
    -webkit-animation-delay: 0.41s;
    -moz-animation-delay: 0.41s;
}

.circularG_2 {
    left: 6rem;
    top: 6rem;
    animation-delay: 0.55s;
    -o-animation-delay: 0.55s;
    -ms-animation-delay: 0.55s;
    -webkit-animation-delay: 0.55s;
    -moz-animation-delay: 0.55s;
}

.circularG_3 {
    top: 0;
    left: 23rem;
    animation-delay: 0.69s;
    -o-animation-delay: 0.69s;
    -ms-animation-delay: 0.69s;
    -webkit-animation-delay: 0.69s;
    -moz-animation-delay: 0.69s;
}

.circularG_4 {
    right: 6rem;
    top: 6rem;
    animation-delay: 0.83s;
    -o-animation-delay: 0.83s;
    -ms-animation-delay: 0.83s;
    -webkit-animation-delay: 0.83s;
    -moz-animation-delay: 0.83s;
}

.circularG_5 {
    right: 0;
    top: 23rem;
    animation-delay: 0.97s;
    -o-animation-delay: 0.97s;
    -ms-animation-delay: 0.97s;
    -webkit-animation-delay: 0.97s;
    -moz-animation-delay: 0.97s;
}

.circularG_6 {
    right: 6rem;
    bottom: 6rem;
    animation-delay: 1.1s;
    -o-animation-delay: 1.1s;
    -ms-animation-delay: 1.1s;
    -webkit-animation-delay: 1.1s;
    -moz-animation-delay: 1.1s;
}

.circularG_7 {
    left: 23rem;
    bottom: 0;
    animation-delay: 1.24s;
    -o-animation-delay: 1.24s;
    -ms-animation-delay: 1.24s;
    -webkit-animation-delay: 1.24s;
    -moz-animation-delay: 1.24s;
}

.circularG_8 {
    left: 6rem;
    bottom: 6rem;
    animation-delay: 1.38s;
    -o-animation-delay: 1.38s;
    -ms-animation-delay: 1.38s;
    -webkit-animation-delay: 1.38s;
    -moz-animation-delay: 1.38s;
}

@keyframes bounce_circularG {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(.3);
    }
}

@-o-keyframes bounce_circularG {
    0% {
        -o-transform: scale(1);
    }

    100% {
        -o-transform: scale(.3);
    }
}

@-ms-keyframes bounce_circularG {
    0% {
        -ms-transform: scale(1);
    }

    100% {
        -ms-transform: scale(.3);
    }
}

@-webkit-keyframes bounce_circularG {
    0% {
        -webkit-transform: scale(1);
    }

    100% {
        -webkit-transform: scale(.3);
    }
}

@-moz-keyframes bounce_circularG {
    0% {
        -moz-transform: scale(1);
    }

    100% {
        -moz-transform: scale(.3);
    }
}
/*end preloader*/

.tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10rem;
}

.tags .tag {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    height: auto;
    padding: 8rem 20rem;
    background: var(--blue-transparent-color);
    border-radius: 50rem;
    font-size: 14rem;
    line-height: 24rem;
    text-align: center;
    color: var(--text-lightgray-color);
}

.tags .tag:hover {
    box-shadow: 0rem 0rem 15rem 0rem rgba(0, 0, 0, 0.15);
}

.soldout-label {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: none;
    align-items: center;
    justify-content: center;
    width: 320rem;
    height: 56rem;
    margin: auto;
    padding: 13rem 13rem 13rem 50rem;
    background: #FFFFFF;
    border-radius: 15rem;
    font-weight: 700;
    font-size: 20rem;
    line-height: 150%;
    text-align: center;
    color: #4F5159;
}

.soldout .soldout-label {
    display: flex;
}

.soldout-label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 13rem;
    bottom: 0;
    margin: auto;
    width: 32rem;
    height: 32rem;
    background: url(../../img/i_done_24px.svg) center / contain no-repeat;
}

.soldout-label.closed::before {
    background: url(../../img/close_modal_r.svg) center / 16rem no-repeat #80c2ff;
    border-radius: 32rem;
}

.swiper .swiper-wrapper {
    height: auto;
}

.swiper-free-mode > .swiper-wrapper {
    transition-timing-function: linear !important;
}

.swiper .swiper-arrow {
	position: absolute;
	top: 0;
    bottom: 0;
    margin: auto !important;
	width: 40rem;
    height: 40rem;
    padding: 0 !important;
    filter: drop-shadow(0rem 2rem 4rem rgba(0, 0, 0, 0.25));
}

.swiper .swiper-arrow svg {
    display: none;
}

.swiper .swiper-arrow:hover {
    filter: drop-shadow(0rem 2rem 4rem rgba(0, 0, 0, 0.30));
}

.swiper-slider-4 .swiper-button-prev,
.swiper-slider-3 .swiper-button-prev {
    left: 5rem;
    background: url(../../img/arrow-slider-left.png) center/contain no-repeat !important;
}

.swiper-slider-4 .swiper-button-next,
.swiper-slider-3 .swiper-button-next {
    right: 5rem;
    background: url(../../img/arrow-slider-right.png) center/contain no-repeat !important;
}

.autoplay-progress {
    position: absolute;
    right: 16rem;
    bottom: 16rem;
    z-index: 10;
    width: 48rem;
    height: 48rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: var(--swiper-theme-color);
}

.autoplay-progress.white {
    color: var(--white-color);
}

.autoplay-progress svg {
    --progress: 0;
    position: absolute;
    left: 0;
    top: 0rem;
    z-index: 10;
    width: 100%;
    height: 100%;
    stroke-width: 4rem;
    stroke: var(--swiper-theme-color);
    fill: none;
    stroke-dashoffset: calc(125.6rem * (1 - var(--progress)));
    stroke-dasharray: 125.6;
    transform: rotate(-90deg);
}

.autoplay-progress.white svg {
    stroke: var(--white-color);
}

.select_simple, 
.select2-container--default .select2-selection--single {
    width: 100%;
    height: 40rem;
    background: #fff url(../../img/i_select.svg) right 15rem top 50% no-repeat;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 1rem solid #E5E5E5;
    border-radius: 7rem;
    padding: 0 20rem;
    padding-right: 40rem;
}

.select_simple:focus, 
.select2-container--default .select2-selection--single:focus {
    background-image: url(../../img/i_search_up.svg);
}

/*recaptcha-bitrix*/
.grecaptcha-badge {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: absolute;
}

.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 10rem 20rem;
}

.breadcrumb {
    position: relative;
    font-size: 16rem;
    line-height: 1.7;
    color: var(--text-lightgray-color);
}

a.breadcrumb:hover {
    text-decoration: underline;
}

.breadcrumb:not(:last-child)::before {
    content: '/';
    position: absolute;
    top: 0;
    right: -14rem;
    bottom: 0;
    margin: auto;
    width: 8rem;
    height: 27rem;
    font-size: 16rem;
    line-height: 1.7;
}

/* masonry */
.masonry-layout {
    column-count: 3;
    -webkit-column-count: 3;
    column-gap: var(--ast-space-2xl);
    -webkit-column-gap: var(--ast-space-2xl);
}

.masonry-layout-4 {
    column-count: 4;
    -webkit-column-count: 4;
}

.masonry-layout__panel {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
}
/* end masonry */

/* end main styles */

/*adaptive styles*/
@media (max-width: 1366px) {
    html {
        font-size: calc(100vw / 1366);
    }
}

@media (max-width: 1024px) {
    html {
        font-size: calc(100vw / 1024);
    }
}

@media (max-width: 920px) {
    html {
        font-size: calc(100vw / 920);
    }
}
/*end adaptive styles*/

/*mobile styles*/

@media (max-width: 640px) {
    html {
        font-size: calc(100vw / 640);
    }

    .section {
        padding: 35rem 0;
    }

    .title-wrapper {
        align-items: flex-start;
        justify-content: flex-start;
        margin-bottom: 20rem;
        text-align: left;
        gap: 10rem 0;
    }

    .section-services-page .title-wrapper {
        margin-bottom: 20rem;
    }

    .pg_prev a,
    .pg_next a {
        font-size: 0;
        color: transparent;
    }

    .pg_prev a:before,
    .pg_next a:before {
        color: #8F8F8F;
        font-size: 14rem;
    }

    .pg_prev a:before {
        content: '←';
    }

    .pg_next a:before {
        content: '→';
    }

    .paginate li {
        display: inline-block;
        margin: auto;
    }

    .paginate li.pg_space {
        padding: 3rem 0;
        font-size: 13rem;
    }

    .paginate a {
        width: 28rem;
        height: 28rem;
        margin: 0;
        line-height: 28rem;
        font-size: 13rem;
    }

    .catalog-filters {
        margin: 0;
    }

    .filters-keywords {
        margin: 0 0 10rem;
    }

    .filters-list-selected {
        gap: 10rem 5rem;
    }

    .filter_selected_item {
        padding: 11rem 30rem 11rem 10rem;
        font-size: 12rem;
    }

    .dropdown-box,
    .dropdown-box-mobile,
    .dropdown-search-box {
        position: fixed;
        inset: 0;
        display: flex;
        flex-direction: column;
        max-width: 100% !important;
        width: 100%;
        height: 100dvh;
        margin: auto;
        background: var(--gray-bg-color);
        transition: all .3s ease;
        z-index: 1300;
        opacity: 0;
        transform: scale(.8);
        pointer-events: none;
    }

    .dropdown-box *,
    .dropdown-box-mobile *,
    .dropdown-search-box * {
        pointer-events: none;
    }
    
    .dropdown-box.active-mobile,
    .dropdown-box-mobile.active,
    .dropdown-search-box.active-mobile {
        opacity: 1;
        transform: scale(1);
        pointer-events: auto;
    }

    .dropdown-box.active-mobile *,
    .dropdown-box-mobile.active *,
    .dropdown-search-box.active-mobile * {
        pointer-events: auto;
    }

    .dropdown-list,
    .dropdown-search-list {
        position: static;
        top: auto;
        max-height: calc(100dvh - 50rem);
        padding: 10rem 15rem;
        background: transparent;
        box-shadow: none;
        overflow-y: auto;
        opacity: 1;
        transform: scale(1);
    }

    .dropdown-box.active-mobile .dropdown-list,
    .dropdown-box-mobile.active .dropdown-list,
    .dropdown-search-box.active-mobile .dropdown-search-list {
        pointer-events: auto;
    }

    .dropdown-items + .dropdown-items {
        margin-top: 25rem;
    }

    .dropdown-items-title {
        padding-left: 10rem;
        padding-right: 10rem;
        margin-bottom: 10rem;
        font-weight: 500;
        font-size: 16rem;
        line-height: normal;
    }

    .dropdown-item {
        padding: 8rem 10rem;
    }

    .dropdown-box-mobile-close {
        position: absolute;
        display: block;
        top: 10rem;
        right: 15rem;
        width: 30rem;
        height: 30rem;
        background: url(../../img/close_modal_r.svg) center/10rem no-repeat var(--ast-color-bg-accent);
        border-radius: 30rem;
    }

    .dropdown-box-mobile-title {
        display: block;
        padding: 16rem 45rem 12rem;
        font-weight: 500;
        font-size: 16rem;
        line-height: normal;
        text-align: center;
    }

    .dropdown-box-mobile-button {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: auto;
        padding: 10rem 15rem;
        background: var(--white-color);
    }

    .dropdown-box-mobile-button button {
        width: 100%;
    }

    .date-picker-wrapper {
        top: 0 !important;
        bottom: 0;
        margin: auto;
        width: 320rem;
        height: 460rem;
        z-index: 1301;
    }

    .date-picker-wrapper .drp_top-bar {
        height: 37rem;
    }

    .date-picker-wrapper .month-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 320rem !important;
    }

    .date-picker-wrapper .gap {
        display: none !important;
    }

    .date-picker-wrapper .drp_top-bar .error-top,
    .date-picker-wrapper .drp_top-bar .normal-top {
        display: none !important;
    }

    .catalog-filters-mob {
        display: flex;
        /* flex-wrap: wrap; */
        gap: 10rem 5rem;
        margin: 15rem 0 20rem;
        overflow-x: scroll;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    .catalog-filters-mob::-webkit-scrollbar {
        width: 0;
        height: 0;
    }

    .catalog-filters-search-link-mobile {
        position: relative;
        width: 34rem;
        min-width: 34rem;
        height: 34rem;
        background: url(../../img/i_search-blue.svg) center/18rem no-repeat var(--white-color);
        border-radius: 34rem;
    }

    .catalog-filters-link-mobile {
        position: relative;
        width: 34rem;
        min-width: 34rem;
        height: 34rem;
        background: url(../../img/filters-blue.svg) center/18rem no-repeat var(--white-color);
        border-radius: 34rem;
    }

    .catalog-filters-tag-link-mobile {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: auto;
        height: auto;
        padding: 5rem 10rem;
        background: var(--white-color);
        border-radius: 50rem;
        font-size: 12rem;
        line-height: 24rem;
        text-align: center;
        white-space: nowrap;
        color: var(--text-main-color);
    }

    .catalog-filters-tag-link-mobile.chosen {
        padding-right: 40rem;
        background: var(--ast-color-bg-accent);
        color: var(--text-white-color);
    }

    .catalog-filters-tag-link-mobile .catalog-filters-tag-link-mobile-text,
    .catalog-filters-tag-link-mobile.chosen .catalog-filter-tag-selected {
        display: block;
    }

    .catalog-filters-tag-link-mobile.chosen .catalog-filters-tag-link-mobile-text,
    .catalog-filters-tag-link-mobile .catalog-filter-tag-selected {
        display: none;
    }

    .catalog-filters-tags-selected {
        display: flex;
        gap: 0 5rem;
    }

    .catalog-filters-tag-selected {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: auto;
        height: auto;
        padding: 5rem 30rem 5rem 10rem;
        background: var(--white-color);
        border-radius: 50rem;
        font-size: 12rem;
        line-height: 24rem;
        text-align: center;
        white-space: nowrap;
        color: var(--text-main-color);
    }

    .catalog-filters-tag-selected-close {
        position: absolute;
        top: 0;
        right: 10rem;
        bottom: 0;
        margin: auto;
        width: 18rem;
        height: 18rem;
        background: url(../../img/new-site/icons/remove-search-white.svg) center/contain no-repeat;
        transform: scale(0);
    }

    .catalog-filters-tag-link-mobile.chosen .catalog-filters-tag-selected-close {
        transform: scale(1);
    }

    .dropdown-items {
        max-height: calc(100dvh - 50rem);
    }

    .input-search {
        font-size: 14rem;
    }

    .dropdown-link.chosen ~ .dropdown-remove-search {
        display: none;
    }

    .search-not-found {
        margin-top: 30rem;
        font-size: 20rem;
    }

    .fancybox-slide--html {
        padding: 0;
    }

    .fancybox-container .modal:not(.fade),
    .fancybox-container .modal.visible {
        padding: 0;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    .modal_content {
        left: 20rem;
        right: 20rem;
        margin: 0 auto;
        transform: translateX(0);
    }

    .fancybox-container .modal_content {
        top: 40rem;
        left: 0;
        right: 0;
        margin: 0 auto;
        transform: translateX(0);
    }

    .modal_close {
        top: -40rem;
        right: 0;
    }

    .modal_title {
        margin-bottom: 20rem;
        font-size: 26rem;
    }

    .modal_subtitle {
        font-size: 14rem;
    }

    .modal_search {
        padding: 44rem 15rem;
    }

    .modal_search-form {
        flex-direction: column;
        align-items: center;
    }

    .modal_search-input {
        width: 100%;
    }

    .modal_search .button.modal_search-btn {
        margin: 0;
        margin-top: 20rem;
    }

    .modal-side_banner.fancybox-content {
        max-width: calc(100% - 30rem);
    }
    
    .modal-side_banner .fancybox-button {
        top: -20rem;
        right: -20rem;
        width: 40rem;
        height: 40rem;
    }
    
    .modal-side_banner-info {
        gap: 15rem 0;
        padding: 20rem 15rem;
    }

    .modal-side_banner-info h3 {
        font-size: 18rem;
    }

    body .index-slide img.mobile-visible {
        display: block;
    }

    body .index-slide img.desktop-visible {
        display: none;
    }

    .all-events-card-stickers {
        top: 25rem;
        gap: 5rem 0;
    }

    .need_auth-popup-info {
        padding: 30rem 15rem;
    }

    .reg-block .page-title,
    .reg-block .auth-title {
        font-size: 20rem;
    }

    .error-page-wrapper {
        flex-direction: column;
        gap: 20rem 0;
    }

    .error-page-error {
        order: -1;
        font-size: 170rem;
        line-height: 1.2;
    }

    .error-page-info {
        gap: 10rem 0;
    }

    .error-page-text {
        margin-bottom: 10rem;
        font-weight: 400;
        font-size: 16rem;
    }

    .error-page-socs-title {
        font-size: 20rem;
    }

    .index-slider-section {
        padding: 30rem 0 10rem;
    }

    .buttons {
        flex-direction: column;
    }

    .button.big,
    .button-o.big {
        font-size: 18rem;
    }

    .with_button {
        position: relative;
        padding-right: 60rem;
    }
    
    .with_button .button.see_all {
        position: absolute;
        top: 0;
        right: 0;
        font-size: 0;
        color: transparent;
        margin-right: 0;
    }

    .with_button .button.see_all:before {
        content: 'Все';
        font-size: 14rem;
        color: #fff;
    }

    .button-o.small2 {
        height: 30rem;
        padding: 5rem 8rem;
        font-size: 12rem;
        line-height: 20rem;
    }

    .pager_content {
        margin-top: 30rem;
    }

    .button-o.show_page {
        padding: 13rem 20rem;
        font-size: 16rem;
    }

    .tag {
        padding: 6rem 12rem;
        font-size: 13rem;
        line-height: 1;
    }

    .soldout-label {
        width: 270rem;
        height: 50rem;
        padding: 16rem 13rem 16rem 50rem;
        font-size: 16rem;
    }
}

@media (max-width: 480px) {
    html {
        font-size: calc(100vw / 480);
    }
}

@media (max-width: 390px) {
    html {
        font-size: calc(100vw / 390);
    }
}
/*end mobile styles*/

/* indentation */
.p0 {
    padding: 0;
}

.pt0 {
    padding-top: 0;
}

.pr0 {
    padding-right: 0;
}

.pb0 {
    padding-bottom: 0;
}

.pl0 {
    padding-left: 0;
}

.m0 {
    margin: 0;
}

.mt0 {
    margin-top: 0;
}

.mr0 {
    margin-right: 0;
}

.mb0 {
    margin-bottom: 0;
}

.ml0 {
    margin-left: 0;
}
/* end indentation */