/* Fonts */

@font-face {
    font-family: 'PT Root UI';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/PT-Root-UI_Regular.woff') format('woff'),
        url('/fonts/PT-Root-UI_Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'PT Root UI';
    font-style: normal;
    font-weight: 500;
    src: url('/fonts/PT-Root-UI_Medium.woff') format('woff'),
        url('/fonts/PT-Root-UI_Medium.woff2') format('woff2');
}
@font-face {
    font-family: 'PT Root UI';
    font-style: normal;
    font-weight: 700;
    src: url('/fonts/PT-Root-UI_Bold.woff') format('woff'),
        url('/fonts/PT-Root-UI_Bold.woff2') format('woff2');
}

:root {
    --text-title: #414456;
    --text-primary: #414456;
    --color-primary: #49398B;
    --color-secondary: #6655AC;
    --color-black: #262733;
    --font-secondary: 'PT Root UI', Arial, sans-serif;
    --font-primary: 'PT Root UI', Arial, sans-serif;
}

.p-component,
.p-inputtext,
.popover,
body,
.slide__month,
.slide__day,
.modal-title,
.composition__button--more,
.footer-copyright__text,
.form__limit,
.personal-data__label,
.personal-data__input,
.modal-body__text,
.date-time,
.payment-method-note__text,
.payment-method-card__text,
.calendar__text,
.scheme-calendar__text,
.scheme-calendar-times__text,
.order-return-header,
.form-return,
.order-return-body__item,
.d-table--order-return,
#radio-reasons .custom-control-label,
.form-return .agreement__checkbox,
.form-return-reasons legend,
.form-return-footer,
.composition__content,
.slide-time__text,
.card-body__specials header,
.b-sidebar__action--date,
.b-sidebar-alert__text,
.basic-shopping__label,
.basic-shopping__name,
.special-offers__action,
.special-offers__item,
.basic-shopping-total__text,
.order-status__text,
.minus-plus__input,
.personal-data-error__text,
.text-message {
    font-family: var(--font-secondary) !important;

}

.top-menu__item,
.events__action,
button,
.notice__text,
.table-order th,
.events-footer__total-sum,
.btn-custom,
.text-important,
.payment-method-title,
.personal-data-date,
.personal-data-header__text,
.btn-secondary,
.form-return-notification,
.title,
.rules__text,
.languages .app-select__text {
    font-family: var(--font-secondary) !important;
}

.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6,
.scheme__action,
.action__name,
.action__name.text-important,
.scheme-header__action,
.form-return-header__action,
.title__action,
.b-sidebar__action.text-bold {
    font-family: var(--font-primary) !important;
}

body {
    background-color: #EDEEF2 !important;
    color: var(--text-primary) !important;
}

.modal-title {
    font-style: normal !important;
}

.layout__header {
    background-color: #49398B;
    padding: 0 !important;
    position: static;
}

.header {
    min-height: 40px !important;
    padding-top: 6px;
    padding-bottom: 6px;
}

.header__logo {
    max-width: 100% !important;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
}

.logo__link {
    display: block !important;
}

.header__title {
    color: #fff !important;
    font-size: 14px !important;
    padding: 0 0 0 15px !important;
    display: none !important;
}

.layout__main {
    margin-bottom: 150px !important;
}

.events__item--no-image .events__action {
    width: 87% !important;
}

.tickets__item--col {
    align-self: center;
}

.rules__text,
.languages .app-select__item {
    color: #fff !important;
}

.rules .app-option {
    padding: 8px 20px;
}

.rules .app-option__text {
    margin-left: 0;
}

.action__link {
    position: relative;
    bottom: 2px;
}

.back-afisha {
    margin-top: 15px;
}

.modal-title__location {
    margin-top: 10px;
}

#form-return > .box.box-default > .box-body.no-padding {
    max-width: 100%;
    overflow: auto;
}

.table-return th:not(:first-child),
.table-return td:not(:first-child) {
    text-align: center;
    vertical-align: middle;
}

/* Colors
------------------------------------------*/

/* Green */
.menu-swiper__item:hover,
.filters-calendar__button,
.event-filters-tags__item:hover,
.table-order__button:hover,
.back-afisha__link:hover,
.events-error__link,
.page-error__link,
.page-error__title {
    color: var(--color-primary) !important;
}

.swiper-slide:hover {
    color: var(--color-primary) !important
}

.btn-scroll-top:hover {
    color: var(--color-primary) !important;
}

.times__item.active .times__time,
.swiper-slide--selected .slide__weekday,
.swiper-slide--selected .slide__day,
.swiper-slide--selected .slide__month {
    color: #fff !important;
}

.btn-paramount,
.btn-success,
.menu-swiper__item--active,
.swiper-slide--selected,
.times__item.active .times__time {
    border-color: var(--color-primary) !important;
}

.swiper-slide:hover,
.times__time:active,
.times__time:hover {
    border-color: var(--color-black) !important;
}

.menu-swiper__item:hover {
    border-color: var(--color-primary) !important;
}

.form-control:focus,
.event-filters-tags__item--active,
.filters-calendar .p-datepicker:not(.p-disabled) table td span:not(.p-highlight):not(.p-disabled):hover,
.filters-calendar .p-datepicker table td>span.p-highlight {
    border-color: var(--color-primary) !important;
}

.filters-calendar .p-datepicker table td.p-datepicker-today>span,
.btn-success {
    background-color: var(--color-primary) !important;
}

.times__item.active .times__time,
.swiper-slide--selected {
    background-color: var(--color-black) !important;
}

.swiper-slide--selected.swiper-slide {
    border-color: var(--color-black) !important;
}

.buy__button,
.pagination__button,
.btn-paramount {
    background-color: var(--color-primary);
    border: 1px solid var(--color-primary) !important;
    padding: 11px 25px 10px !important;
    transition: .2s ease-in-out;
}


.btn-paramount:hover,
.btn-paramount:active,
.btn-paramount:focus,
.pagination__button:hover,
.pagination__button:active {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
}

.buy__button:hover,
.buy__button:active,
.btn-custom:hover,
.btn-custom:active {
    background-color: var(--color-secondary) !important;
    border-color: var(--color-secondary) !important;
}

.btn-custom:disabled:hover {
    background: #e5e5e5 !important;
    color: #8d8d8d !important;
}

.buy__button:disabled,
.buy__button:disabled:hover,
.pagination__button:disabled,
.pagination__button:disabled:hover,
.btn-paramount:disabled,
.btn-paramount:disabled:hover {
    background-color: #fff !important;
    border-color: #BEBEBE !important;
    color: #BEBEBE !important;
}

.event-filters-tags__item--active {
    background-color: #fff !important;
}

.filters-calendar .p-datepicker:not(.p-disabled) table td.p-datepicker-today span:not(.p-highlight):not(.p-disabled):hover {
    color: #fff;
}

/* Green:hover */
.lk__link:hover,
.btn-success:active,
.btn-success:focus,
.btn-success:hover {
    background-color: #404040 !important;
    color: #fff !important;
}

/* Blue (links) */
.timer__time,
div .text-red {
    color: #0081e1 !important;
}

.events-error__link:hover,
.table-order__button:hover {
    text-decoration: underline !important;
}

.loyalty {
    border-top: 1px solid #f4f4f4;
}

.layout-body__collapse .collapse__input {
    border: 1px solid #d5d5d5 !important;
}

.btn-collapse {
    transition: .45s;
}

.events__tag--active {
    background: #fff !important;
    box-shadow: 0 0 2px rgba(0,0,0,.5) !important;
    color: var(--color-primary) !important;
}

/* Dark blue */
.checkbox__link:hover {
    color: var(--color-primary) !important;
}

.collapse__item .input-group-append .btn.collapse__btn[disabled] {
    color: #8d8d8d !important;
}
.collapse__item .input-group-append .btn.collapse__btn {
    background-color: #d5d5d5 !important;
}
.collapse__item > .btn-collapse {
    color: white !important;
}

.page-error__text {
    margin: 20px 0 10px !important;
}

a:hover,
.events-error__link:hover {
    text-decoration: underline;
}
.page-error__link:hover {
    text-decoration: underline !important;
}

.order-item > .card > .card-footer {
    background-color: transparent !important;
}

.modal-body > .pl-4.text-center {
    padding-left: 0 !important;
}

/* Red #dc3613 */
.invalid-feedback,
.form-check-input.is-invalid~.form-check-label,
.was-validated .form-check-input:invalid~.form-check-label,
.custom-control-input.is-invalid~.custom-control-label,
.was-validated .custom-control-input:invalid~.custom-control-label,
.btn-outline-danger,
.btn-outline-danger.disabled,
.btn-outline-danger:disabled,
.text-danger,
.b-form-btn-label-control.form-control.is-invalid>.btn,
.table .td-category__message {
    color: #ec7b7b !important;
}

.form-control.is-invalid,
.was-validated .form-control:invalid,
.form-control.is-invalid:focus,
.was-validated .form-control:invalid:focus,
.custom-select.is-invalid,
.was-validated .custom-select:invalid,
.custom-select.is-invalid:focus,
.was-validated .custom-select:invalid:focus,
.custom-control-input.is-invalid~.custom-control-label:before,
.was-validated .custom-control-input:invalid~.custom-control-label:before,
.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,
.custom-file-input.is-invalid~.custom-file-label,
.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,
.was-validated .custom-file-input:invalid~.custom-file-label,
.custom-file-input.is-invalid:focus~.custom-file-label,
.was-validated .custom-file-input:invalid:focus~.custom-file-label,
.btn-danger,
.btn-danger.disabled,
.btn-danger:disabled,
.btn-outline-danger,
.btn-outline-danger:hover,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.btn-outline-danger:not(:disabled):not(.disabled):active,
.show>.btn-outline-danger.dropdown-toggle,
.border-danger,
.form-control.focus.is-invalid,
.input-group .custom-range.is-invalid,
.was-validated .input-group .custom-range:invalid,
.input-group .custom-range.is-invalid:focus,
.was-validated .input-group .custom-range:invalid:focus,
.b-form-tags.focus.is-invalid {
    border-color: #0081e1 !important;
}

.btn-danger,
.btn-danger.disabled,
.btn-danger:disabled,
.btn-outline-danger:hover,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.btn-outline-danger:not(:disabled):not(.disabled):active,
.show>.btn-outline-danger.dropdown-toggle,
.badge-danger,
.bg-danger,
.custom-range.is-invalid::-webkit-slider-thumb,
.was-validated .custom-range:invalid::-webkit-slider-thumb,
.custom-range.is-invalid::-moz-range-thumb,
.was-validated .custom-range:invalid::-moz-range-thumb,
.custom-range.is-invalid::-ms-thumb,
.was-validated .custom-range:invalid::-ms-thumb,
.tooltip.b-tooltip-danger .tooltip-inner {
    background-color: #0081e1 !important;
}

.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=top] .arrow:before,
.tooltip.b-tooltip-danger.bs-tooltip-top .arrow:before {
    border-top-color: #0081e1 !important;
}

.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=right] .arrow:before,
.tooltip.b-tooltip-danger.bs-tooltip-right .arrow:before {
    border-right-color: #0081e1 !important;
}

.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=bottom] .arrow:before,
.tooltip.b-tooltip-danger.bs-tooltip-bottom .arrow:before {
    border-bottom-color: #0081e1 !important;
}

.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=left] .arrow:before,
.tooltip.b-tooltip-danger.bs-tooltip-left .arrow:before {
    border-left-color: #0081e1 !important;
}

/* Content
--------------------------------------*/
#form-nominal .box-header.with-border .title {
    margin-bottom: 0 !important;
}

.tickets__button > .btn-paramount {
    border-radius: 4px !important;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    padding: 10px 32px !important;
    border: 1px solid #0081e1 !important;
    font-size: 14px !important;
    line-height: 21px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    font-weight: 400 !important;
    background-color: #0081e1 !important;
    color: #fff !important;
    box-shadow: 0 1px 2px rgba(0,0,0,.2) !important;
}

.tickets__button > .btn-paramount:hover {
    background: #0081e1 !important;
}

.badge {
    font-weight: 400 !important;
}

.layout__footer {
    background-color: #e3e3e3;
}

.footer-copyright__text {
    color: var(--text-primary) !important;
}

.footer {
    width: 100% !important;
    max-width: 1150px !important;
}

/* Афиша */

.information-top {
    box-shadow: 0 0 25px 0 rgba(0,0,0,.06);
}

.layout__title {
    color: var(--text-title);
    font-weight: 400 !important;
}

.top-menu__item {
    box-shadow: 0 0 25px rgba(0,0,0,.06);
}

.top-menu__item--active > .top-menu__text,
.event-filters-tags__item,
.filters-reset__link,
.events__action,
.events__description,
.p-datepicker .p-datepicker-header,
.p-datepicker,
.subscription-comp__title a,
.notice__text--varning {
    color: var(--text-primary) !important;
}

.events-calendar__link {
    color: var(--color-primary) !important;
}

.events-calendar__link:hover {
    text-decoration: underline;
}

.event-filters-checkbox .p-checkbox .p-checkbox-box.p-highlight {
    background: url(/assets/icons/checkbox-full.svg) no-repeat !important;
}

.event-filters-checkbox .p-checkbox .p-checkbox-box {
    background: url(/assets/icons/no-checked-grey.svg) no-repeat !important;
}

.filters-search__input {
    color: var(--text-primary) !important;
}

.footer-copyright {
    align-self: center;
}

.description__text--open {
    overflow: auto;
    scrollbar-width: thin !important;
    max-height: 190px;
    min-width: auto !important;
}

.composition--open {
    overflow: auto !important;
    scrollbar-width: thin !important;
    max-height: 195px !important;
}

/* error */

.page-error__title {
    font-style: normal;
}

/* календарь выбранной даты билета */

.p-datepicker .p-datepicker-header,
.p-datepicker table th > span {
    font-weight: 400;
}

.p-datepicker table th {
    border-bottom: 1px solid #c3c3c3;
}

.p-datepicker table th > span {
    color: #949494;
}

.events-calendar__disabled {
    opacity: .8 !important;
}

/* покупка абонемента */

.controls-top {
    margin: 0 0 30px 0 !important;
}

.circle-age {
    font-family: var(--font-secondary) !important;
}

.events-description {
    color: var(--text-primary) !important;
}

/*.events-notification {
    display: none;
}*/

.table-order__button,
.checkbox__link,
.vti__input {
    color: var(--text-primary) !important;
}

.checkbox__link {
    text-decoration: underline;
}

.table {
    color: var(--text-primary);
    margin-bottom: 0 !important;
}

.personal-data__label {
    margin-bottom: 0 !important;
}

.order-box {
    padding: 0;
    border-radius: 10px !important;
}

.box-default:not(.container-order .box-default,
                .scheme-cart__form .box-default,
                #form-nominal .box-default) {
    margin-top: 40px !important;
}

.scheme-cart__tickets {
    margin-top: 0 !important;
}

.box-body {
    color: var(--text-primary) !important;
}

.personal-data__input {
    color: var(--text-primary) !important;
}

.personal-data__input:focus,
.personal-data__input:focus-visible {
    outline: none;
    border: 1px solid black;
}

.vue-tel-input:focus-within {
    box-shadow: none !important;
    border-color: black !important;
}

.vti__dropdown-list.below {
    scrollbar-width: none;
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::before {
    border-color: var(--color-primary) !important;
    background-color: var(--color-primary) !important;
}

.custom-control-input.is-invalid ~ .custom-control-label::before {
    background: rgba(198, 0, 51, 0.5);
    border-color: rgba(198, 0, 51, 0.5) !important;
}

.custom-control-input.is-invalid:checked ~ .custom-control-label::before {
    border-color: var(--color-primary) !important;
    background-color: var(--color-primary) !important;
}

.custom-switch .custom-control-input.is-invalid:checked ~ .custom-control-label::before,
.custom-switch .custom-control-input:checked ~ .custom-control-label::before {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

.btn-custom {
    background-color: var(--color-primary) !important;
    border: 1px solid var(--color-primary) !important;
    padding: 13px 25px 12px !important;
    transition: .2s ease-in-out;
}

.btn-custom[disabled] {
    border: 1px solid #e5e5e5 !important;
    padding: 13px 25px 12px !important;
}

.row-wrapper {
    padding-bottom: 80px !important;
}

/* зальное мероприятие */

.date-time,
.personal-data-date__date,
.personal-data-date__time,
.text-important,
.header__col,
.popover-body {
    color: var(--text-primary) !important;
}

/*.scheme-notification {
    display: none;
}*/

.scheme-svg-loading,
.scheme-svg-loading__text {
    color: var(--color-primary) !important;
}

#wrapper-scheme-svg {
    background-color: transparent !important;
}

.wrapper-scheme-popover {
    padding-top: 36px !important;
}

#scheme-svg {
    background-color: #fff !important;
    box-shadow: 0 0 25px 0 rgba(0,0,0,.06);
}

.scheme-cart__body {
    margin-bottom: 40px !important;
}

.scheme-svg-prices {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}

.scheme-cart__form .box {
    border-radius: 10px !important;
}

.scheme-cart__form .scheme-cart__tickets {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    box-shadow: 0 0 25px 0 rgba(0,0,0,.06) !important;
}

.box.box-default.scheme-cart__personal-data {
    box-shadow: 0 0 25px 0 rgba(0,0,0,.06) !important;
}

.box-footer {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

/* выбор способа оплаты */

.payment-method {
    box-shadow: 0 0 25px 0 rgba(0,0,0,.06);
}

.payment-method-card {
    flex-wrap: nowrap !important;
}

.payment-method-card--bank,
.payment-method-card--pc {
    flex-direction: column;
}

.payment-method-card--active {
    border: 1px solid var(--color-primary) !important;
    box-shadow: 0 0 25px 0 rgba(73, 57, 139, 0.12) !important;
}

/* сеанс */

.back-afisha__link,
.calendar__text,
.slide__day,
.slide__month,
.times__time,
.text-message,
.available-tickets {
    color: var(--text-primary) !important;
}

.calendar__text {
    font-weight: 400 !important;
}

.calendar {
    margin-top: 30px;
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
    filter: brightness(0) saturate(100%) invert(51%) sepia(10%) saturate(391%) hue-rotate(171deg) brightness(97%) contrast(83%);
}

/* зальный сеанс */

.scheme-calendar__text,
.slide-time__text,
.scheme-calendar-times__time,
.scheme-calendar-times__text {
    color: var(--text-primary) !important;
}

.slide-time__text--selected {
    color: var(--text-on-dark-colors) !important;
}

.scheme-calendar-times__item--active .scheme-calendar-times__time {
    background-color: var(--color-black) !important;
    border: 1px solid var(--color-black) !important;
}

.scheme-calendar-times__time:hover {
    border: 1px solid var(--color-black) !important;
}

.scheme-calendar-times__item--active .scheme-calendar-times__time {
    color: #fff !important;
}

/* зальный абонемент */

.scheme-description,
.composition,
.composition__action,
.circle-gray-dark {
    color: var(--text-primary) !important;
}

.scheme-stand-header__text {
    font-family: arial, verdana, tahoma, sans-serif !important;
}

/* неоплаченный заказ */

.text-black,
.payment-type__label,
.badge-warning {
    color: var(--text-primary) !important;
}

.btn-success[disabled],
.btn-success[disabled]:hover {
    border-radius: 0 !important;
    border-top-right-radius: .2rem !important;
    border-bottom-right-radius: .2rem !important;
}

.input-group-sm > .input-group-append > .btn {
    padding: 10px 25px !important;
}

.collapse__item .input-group-append .btn.collapse__btn {
    background: #fff !important;
    color: var(--text-primary) !important;
    box-shadow: 0 1px 2px rgba(0,0,0,.2) !important;
}

.collapse__item .input-group-append .btn.collapse__btn:hover {
    background: #f4f6f7 !important;
}

.collapse__item .input-group-append .btn.collapse__btn[disabled] {
    background-color: #d5d5d5 !important;
}

.collapse-radius {
    border-radius: 0 0 10px 10px !important;
}

.layout-body__collapse .card-body,
.btn-collapse {
    background: var(--color-primary) !important;
}

/* аудиогид */

.b-sidebar__action--date {
    font-style: normal !important;
}

.special-offers__item--checked,
.specials-list {
    border-color: var(--color-primary);
}

.card-body__specials header,
div .text-dark,
.b-sidebar-alert__text,
.basic-shopping__name,
.special-offers__item,
.specials-list {
    color: var(--text-primary);
}

/* ошибка промокода */

.modal-title__header {
    color: var(--text-primary) !important;
}

.modal-body__text {
    color: var(--text-primary) !important;
}

/* оплаченный заказ */

.btn-secondary,
.card-header__info {
    color: var(--text-primary) !important;
}

.box {
    box-shadow: 0 0 25px 0 rgba(0,0,0,.06);
    border-radius: 10px !important;
}

#form-order .box-default {
    margin-bottom: 0 !important;
}

.box-default .order-return {
    box-shadow: none !important;
}

.btn-secondary {
    padding: 10px 25px 11px !important;
}

/* QR-код */

.modal-title,
.modal-title__action {
    color: var(--text-primary) !important;
}

.modal-title__date {
    font-size: 16px !important;
}

/* возврат */

.title {
    font-style: normal !important;
}

.order-return-header__num,
.order-return-body__text,
.form-return-header__action,
.form-return-notification,
.form-return-notification__text--danger,
.d-table--order-return,
.d-tr,
.form-return-reasons legend,
#radio-reasons .custom-control-label,
.form-return .agreement__checkbox,
.title,
.form-return-notification__text .timer,
.order-status__text {
    color: var(--text-primary) !important;
}

.order-return,
.form-return {
    border-radius: 10px !important;
}

.custom-checkbox .custom-control-label::before {
    background-size: 100% !important;
}

/* заказ аннулирован */

.order-view-continue__link {
    background-color: var(--color-primary) !important;
    border: 1px solid var(--color-primary) !important;
    color: #fff !important;
    transition: .2s ease-in-out;
}

.order-view-continue__link:hover,
.order-view-continue__link:active {
    background-color: var(--color-secondary) !important;
    border-color: var(--color-secondary) !important;
}

/* именной билет */

.title-date,
.form-control,
.text-checkbox {
    color: var(--text-primary) !important;
}

/* Widget */
.controls-top,
.page-error__link {
    display: none !important;
}

@media (max-width: 768px) {
    .layout__header {
        position: static !important;
        margin-bottom: 30px !important;
        padding: 6px 0 !important;
    }

    .header {
        padding: 0 15px !important;
    }

    .logo__img {
        max-width: 300px;
    }

    #form-return > .box.box-default > .box-body.no-padding {
        overflow: hidden;
    }

    .metrika {
        left: auto !important;
        right: 10px !important;
    }

    .btn-scroll-top {
        color: #8d8d8d !important;
    }
}

@media (max-width:550px) {
    .header {
        flex-direction: column;
    }

    .logo__img {
        margin: 0 0 15px;
    }

    .rules .app-options {
        right: -190px;
    }
}

@media (max-width: 460px) {
    .vti__dropdown-list {
        max-width: 290px;
    }
}

@media (max-width: 420px) {
    .popover {
        max-width: 300px !important;
    }
}

