

/* Start:/local/templates/ranepa_im2/assets2/css/app.min.css?175740574117391*/
.header-calendar{background-image:url(/local/templates/ranepa_im2/assets2/css/../img/top-back-pict.png);background-repeat:no-repeat;background-position:left top;background-size:cover;height:218px}.header-calendar_inner{margin-left:auto;margin-right:auto;height:100%;max-width:1420px;background-image:url(/local/templates/ranepa_im2/assets2/css/../img/top-figure.png);background-repeat:no-repeat;background-position:right 0 center;background-size:auto 175%}.header-calendar .container{height:100%;padding-top:66px;padding-right:200px}h2.title-onblue{color:#fff;font-weight:600;line-height:110%;letter-spacing:-.6px;font-size:36px}@media (max-width:1380px){.header-calendar_inner{background-position:right -2% center}}@media (max-width:1000px){.header-calendar_inner{background-size:auto 120%}}@media (max-width:768px){h2.title-onblue{font-size:32px;letter-spacing:0}}@media (max-width:600px){.header-calendar .container{padding-top:43px}}@media (max-width:460px){.header-calendar{background-position:left -35px top}.header-calendar_inner{background-size:auto 105%;background-position:right -50px top -20px}}.calendar-events{background:#f5f5f6;padding:34px 0;border-radius:20px;margin-top:-40px}.calendar-events .picker{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.calendar-events .picker__right{width:calc(100% - 442px)}.calendar-events .picker__right .swiper-container{height:100%;overflow:hidden}.calendar-events .picker__right .swiper-container .swiper-slide{height:auto}.calendar-events .picker__right .swiper-container .dp__event{height:100%}.calendar-events .picker__right .swiper-container .dp__event_inner{height:100%}.calendar-head{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 0 25px}.calendar-head .month-year{font-size:18px;font-weight:600}.control{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;gap:19px}.control .button-arrow{width:20px;height:20px;display:block;background:url(/local/templates/ranepa_im2/assets2/css/../img/arr-min-right.png) no-repeat center center;cursor:pointer}.control .button-arrow.arrow--prev{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.calendar{border-radius:20px;padding:20px 2px 12px 8px;background:#fff;width:432px}.calendar .dp__calendar{display:-ms-grid;display:grid;grid-gap:5px}.calendar .dp__calendar_header{display:-ms-grid;display:grid;-ms-grid-columns:(calc(100% / 7 - 6px))[7];grid-template-columns:repeat(7,calc(100% / 7 - 6px));position:relative;grid-gap:6px;padding-bottom:8px}.calendar .dp__calendar_header_item{font-weight:500;font-size:10px;line-height:120%;color:#aaa;text-align:center}.calendar .dp__calendar_row{display:-ms-grid;display:grid;-ms-grid-columns:(calc(100% / 7 - 6px))[7];grid-template-columns:repeat(7,calc(100% / 7 - 6px));grid-gap:6px}.calendar .dp__cell{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#f5f5f6;border:1px solid transparent;border-radius:8px;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-weight:500;font-size:18px;color:#32343a;height:54px;justify-content:center;letter-spacing:-.02em;line-height:120%;padding:4px;position:relative;text-align:center;-webkit-transition:.3s ease;-o-transition:.3s ease;transition:.3s ease}.calendar .dp__cell:hover{background:#e8e8ea}.calendar .dp__cell .dp--past{cursor:not-allowed;pointer-events:none}.calendar .dp__active_date:not(.dp__cell_disabled){background-color:#e63542;color:#fff}.calendar .dp__event_date{border-color:#e63542}.dp__event{height:100%}.dp__event_inner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;background:#fff;border-radius:20px}.dp__event_img{-webkit-box-flex:515px;-ms-flex:515px;flex:515px;border-radius:20px;line-height:0;overflow:hidden}.dp__event_img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.dp__event_content{-webkit-box-flex:369px;-ms-flex:369px;flex:369px;padding:15px 35px 15px 15px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.dp__event_marks{display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px;margin-bottom:26px}.dp__event_title{font-size:20px;font-weight:600;line-height:106%;letter-spacing:-.02em;margin-bottom:20px}.dp__event_text{font-size:14px;line-height:106%;letter-spacing:-.02em;color:#32343a;font-weight:400;margin-bottom:32px}.dp__event_text-wrap{margin-top:auto}.mark-event-btn{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:31px;white-space:nowrap;color:#aaa;border-radius:50px;border:1px solid #aaa;font-size:14px;font-weight:500;padding-left:30px;padding-right:30px;-webkit-box-shadow:inset .7px .7px #aaa,inset -.7px -.7px #aaa;box-shadow:inset .7px .7px #aaa,inset -.7px -.7px #aaa}.mark-event-btn.date-event{padding-left:35px;padding-right:19px;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;background:url(/local/templates/ranepa_im2/assets2/css/../img/calendar-icon.svg) no-repeat 12px center}.btn-more-link{background:#e63542;padding:12px 38px 13px 35px;text-align:center;color:#fff;font-size:21px;font-weight:500;line-height:100%;border-radius:60px;letter-spacing:1px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:15px}.btn-more-link:hover{color:#fff;background:#ce1a27}@media (max-width:1140px){.calendar-events .picker__right{width:calc(100% - 346px)}.calendar-head{margin:0 0 20px}.calendar-head .month-year{font-size:14px}.control{gap:19px}.control .button-arrow{width:15px;height:15px}.calendar{border-radius:16px;padding:16px 1px 12px 6px;width:100%;width:336px}.calendar .dp__calendar{grid-gap:4px}.calendar .dp__calendar_header{-ms-grid-columns:(calc(100% / 7 - 4px))[7];grid-template-columns:repeat(7,calc(100% / 7 - 4px));grid-gap:4px;padding-bottom:2px}.calendar .dp__calendar_header_item{font-size:8px}.calendar .dp__calendar_row{-ms-grid-columns:(calc(100% / 7 - 4px))[7];grid-template-columns:repeat(7,calc(100% / 7 - 4px));grid-gap:4px}.calendar .dp__cell{border-radius:6px;font-size:14px;height:42px}}@media (max-width:992px){.calendar-events .picker{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:20px}.calendar-events .picker__right{width:100%}.calendar{margin-left:auto;margin-right:auto;width:100%;max-width:336px}}@media (max-width:620px){.calendar-events{padding:18px 0;border-radius:15px;margin-top:-55px}.mark-event-btn{height:23px;font-size:11px;padding-left:14px;padding-right:14px;-webkit-box-shadow:none;box-shadow:none;padding-top:3px;padding-bottom:3px;color:#cacacb;border:1px solid #cacacb;letter-spacing:.5px}.mark-event-btn.date-event{padding-left:5px;padding-right:5px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background:0 0}.dp__event_marks{margin-bottom:10px}.dp__event_title{margin-bottom:15px}.dp__event_text{font-size:12px;letter-spacing:0;line-height:115%;margin-bottom:10px}.dp__event_text p{line-height:115%}.dp__event_inner{display:block}.dp__event_img{height:228px;border-radius:20px 20px 0 0}.btn-more-link{font-size:16px;padding:8px 18px 8px 15px;gap:12px}.btn-more-link img{height:11px}}@media (max-width:410px){.dp__event_img{height:168px}}.filters__calendar{padding-top:40px}.filters__calendar .mba__top{display:none}@media (min-width:993px){.filters__calendar .filter__btn--refresh{position:static;width:auto;font-size:1.08em;height:2.6em;background:#eee}.filters__calendar .filter__row-cal{-ms-grid-columns:24% 1fr 21% 18% 12% 13%;grid-template-columns:24% 1fr 21% 18% 12% 13%}.filters__calendar .filter__row-cal .search-box{position:relative}.filters__calendar .filter__row-cal .search-box input{margin:0!important;border-radius:7.25em;border:1px solid #b3b4b7;margin-bottom:.6em;margin-top:.3em;padding:.69em .7em .69em 1.1em;width:100%;font-size:1.05em;color:#000;background:#eee}.filters__calendar .filter__row-cal .search-box input::-webkit-input-placeholder{font-size:1.05em}.filters__calendar .filter__row-cal .search-box input::-moz-placeholder{font-size:1.05em}.filters__calendar .filter__row-cal .search-box input:-ms-input-placeholder{font-size:1.05em}.filters__calendar .filter__row-cal .search-box input::-ms-input-placeholder{font-size:1.05em}.filters__calendar .filter__row-cal .search-box input::placeholder{font-size:1.05em}.filters__calendar .filter__row-cal .search-box svg{position:absolute;right:1.1em;top:.95em;display:block;-webkit-transform:scale(.86);-ms-transform:scale(.86);transform:scale(.86)}.filters__calendar .filter__row-cal .param-select__current{font-size:1.1em}.filters__calendar .mob-visible{display:none}}@media (max-width:992px){.filters__calendar .filter{gap:6px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.filters__calendar .filter .search-box input{background:#fff;border-color:#cacacb;padding:5px 15px 6px 15px;height:40px;text-align:center;font-size:16px}.filters__calendar .filter .search-box input::-webkit-input-placeholder{color:#cacacb;font-size:16px}.filters__calendar .filter .search-box input::-moz-placeholder{color:#cacacb;font-size:16px}.filters__calendar .filter .search-box input:-ms-input-placeholder{color:#cacacb;font-size:16px}.filters__calendar .filter .search-box input::-ms-input-placeholder{color:#cacacb;font-size:16px}.filters__calendar .filter .search-box input::placeholder{color:#cacacb;font-size:16px}.filters__calendar .filter .search-box input:active~svg{display:none}.filters__calendar .filter .search-box svg{left:30px}.filters__calendar .filter .search-box svg path{fill:#cacacb}.filters__calendar .filter .filter-mbs{width:40px;height:40px;border-color:#cacacb}.filters__calendar .filter .filter-mbs img{width:20px}.filters__calendar .filter .filter__btn--refresh{color:#32343a;font-size:16px;height:40px}.filters__calendar .filter__row-cal .m-check label,.filters__calendar .filter__row-cal .param-select__current{font-size:16px}.filters__calendar .filter__row-cal .filter__btn--refresh,.filters__calendar .filter__row-cal .search-box{display:none}.filters__calendar .filter-mbs{display:-webkit-box;display:-ms-flexbox;display:flex;border:1px solid #a2a2a2;height:2em;width:2em;border-radius:100px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}@media (max-width:460px){.filters__calendar{padding-top:5px;padding-bottom:40px}.filters__calendar .filter__row-cal .m-check label,.filters__calendar .filter__row-cal .param-select__current{font-size:15px}.filters__calendar .filter{gap:5px}.filters__calendar .filter .search-box input{height:30px;padding-bottom:5px;font-weight:400}.filters__calendar .filter .search-box input::-webkit-input-placeholder{font-weight:400}.filters__calendar .filter .search-box input::-moz-placeholder{font-weight:400}.filters__calendar .filter .search-box input:-ms-input-placeholder{font-weight:400}.filters__calendar .filter .search-box input::-ms-input-placeholder{font-weight:400}.filters__calendar .filter .search-box input::placeholder{font-weight:400}.filters__calendar .filter .search-box svg{left:20px;top:8px}.filters__calendar .filter .filter-mbs{width:30px;min-width:30px;height:30px}.filters__calendar .filter .filter-mbs img{width:17px}.filters__calendar .filter .filter__btn--refresh{height:30px;padding-left:5px;padding-right:5px}}.all-events__container{padding:27px 0 5px;display:-ms-grid;display:grid;-ms-grid-columns:calc(25% - 20px) calc(25% - 20px) calc(25% - 20px) calc(25% - 20px);grid-template-columns:calc(25% - 20px) calc(25% - 20px) calc(25% - 20px) calc(25% - 20px);-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;grid-gap:27px 0}.all-events__item{background:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.05);box-shadow:0 2px 12px 0 rgba(0,0,0,.05);border-radius:19px;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden}.all-events__item-header{min-height:137px;height:100%;padding:12px;border-radius:19px 19px 0 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.all-events__item-header h4{font-weight:700;font-size:19px;line-height:110%;padding-bottom:12px}.all-events__item-header .all-events__item-date{margin-top:auto;color:#aaa;font-size:15px;font-weight:400;padding-left:22px;background:url(/local/templates/ranepa_im2/assets2/css/../img/calendar-icon.svg) no-repeat left -2px}.all-events__item-image{margin-top:auto;width:100%;position:relative;min-height:202px;height:202px;overflow:hidden;border-radius:0 0 19px 19px}.all-events__item-image img:first-child{width:100%;height:100%;line-height:0;-o-object-fit:cover;object-fit:cover}.all-events__item-image .all-events__item-type{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;bottom:10px;left:10px;background:#fff;padding:6px 11px 6px 11px;border-radius:50px;font-size:15px;line-height:120%;text-align:center;color:#bdbdbd;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:13px}.all-events__item-image .all-events__item-type img{display:block;width:14px}.all-events__item-image .all-events__item-type span{display:block;letter-spacing:.3px}.all-events__item img{max-width:100%}.all-events__item .register-card{width:100%;height:100%;position:relative;padding:16px 14px;min-height:365px}.all-events__item .register-card>img{position:absolute;top:0;left:0;position:absolute;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;z-index:0}.all-events__item .register-card__inner{position:relative;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;color:#fff;height:100%}.all-events__item .register-card__inner h4{font-weight:700;font-size:19px;line-height:110%;margin-bottom:15px}.all-events__item .register-card__text{font-size:15px;font-weight:500;line-height:110%;padding-bottom:20px;max-width:240px}.all-events__item .register-card .m-btn-white{font-size:14px;height:29px;font-weight:600;letter-spacing:.4px;width:138px;margin-top:auto}.all-events__item .register-card .m-btn-white span{font-size:14px}@media (max-width:1240px){.all-events__container{-ms-grid-columns:calc(33.3% - 18px) calc(33.3% - 18px) calc(33.3% - 18px);grid-template-columns:calc(33.3% - 18px) calc(33.3% - 18px) calc(33.3% - 18px)}}@media (max-width:900px){.all-events__container{-ms-grid-columns:calc(50% - 11px) calc(50% - 11px);grid-template-columns:calc(50% - 11px) calc(50% - 11px);grid-gap:20px}}@media (max-width:540px){.all-events__container{-ms-grid-columns:100%;grid-template-columns:100%;grid-gap:16px}.all-events__item{display:none}.all-events__item:first-child{display:-webkit-box;display:-ms-flexbox;display:flex}.all-events__item:nth-child(3){display:-webkit-box;display:-ms-flexbox;display:flex;-ms-grid-row:3;-ms-grid-row-span:1;grid-row:3/4}.all-events__item:nth-child(4){display:-webkit-box;display:-ms-flexbox;display:flex;-ms-grid-row:2;-ms-grid-row-span:1;grid-row:2/3}}.subscribe-blue__wrap{padding-top:67px;padding-bottom:20px}.subscribe-blue__block{background:url(/local/templates/ranepa_im2/assets2/css/../img/subscribe-blue-fon.png) no-repeat center center;background-size:cover;min-height:350px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-radius:20px;color:#fff;padding:32px}.subscribe-blue__title{max-width:390px;font-size:32px;line-height:120%;font-weight:700}.subscribe-blue__text{margin-top:auto;max-width:545px}.subscribe-blue__text P{font-size:20px;line-height:120%;font-weight:400}.subscribe-blue__text .m-btn{margin-top:25px;width:184px;font-size:17px}@media (max-width:1190px){.subscribe-blue__text p{font-size:17px}}@media (max-width:576px){.subscribe-blue__wrap{padding-top:59px;padding-bottom:30px}.subscribe-blue__block{padding:24px 10px 10px;display:block;position:relative;background:url(/local/templates/ranepa_im2/assets2/css/../img/subscribe-blue-mob.png) no-repeat left center;background-size:cover;max-width:336px;min-height:447px;margin-left:auto;margin-right:auto}.subscribe-blue__title{font-size:26px;max-width:330px}.subscribe-blue__text{margin-top:25px;max-width:330px;height:100%}.subscribe-blue__text p{font-size:14px}.subscribe-blue__text .m-btn{position:absolute;left:10px;bottom:10px;height:46px;width:calc(100% - 20px)}}@media (max-width:340px){.subscribe-blue__title{font-size:24px}}
/* End */


/* Start:/local/templates/ranepa_im2/assets2/css/calendar-events.css?175740559320485*/
/* Стили для блока событий календаря */
#calendar__events {
    height: 432px; /* Высота календаря: 20px + 25px + 18px + (6 * 54px) + 12px = 432px */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative; /* Для абсолютного позиционирования навигации */
}

#calendar__events .dp__event .event-navigation {
    margin-top: 0;
    flex-shrink: 0;
    position: absolute;
    bottom: 20px; /* На ПК позиционируем снизу */
    right: 20px;
    z-index: 1000;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    padding: 10px 15px;
    gap: 15px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

#calendar__events .dp__event {
    height: 100%;
    flex: 1;
    display: flex;
    flex-direction: column;
    position: relative; /* Для позиционирования навигации внутри события */
}

#calendar__events .dp__event_inner {
    height: 100%;
    flex: 1;
    position: relative; /* Для позиционирования навигации */
}

#calendar__events .dp__event_content {
    height: 100%;
    justify-content: space-between;
}

#calendar__events .dp__event_text-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.event-navigation {
    display: none; /* Скрыта по умолчанию */
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-top: 0; /* Убираем стандартный отступ сверху */
    padding: 10px 15px;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
}

.event-navigation.show {
    display: flex; /* Показывается с классом show */
}

.event-navigation .event-nav {
    background: #e63542;
    border: none;
    cursor: pointer;
    padding: 8px;
    border-radius: 50%;
    transition: 0.225s ease-out;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
}

.event-navigation .event-nav:hover {
    background: #d32f3a;
    transform: scale(1.05);
}

.event-navigation .event-nav:active {
    transform: scale(0.98);
}

.event-navigation .event-nav svg {
    width: 20px;
    height: 20px;
}

/* Стили для стрелок календаря (переопределяем стили из app.min.css) */
.calendar .control .button-arrow {
    width: 25px !important;
    height: 24px !important;
    background: none !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border: none;
    padding: 0;
}

.calendar .control .button-arrow svg {
    width: 25px;
    height: 24px;
    display: block;
}

/* Убираем старые стили для стрелок */
.calendar .control .button-arrow.arrow--prev {
    transform: none !important;
}

.calendar .control .button-arrow.arrow--next {
    transform: none !important;
}

/* Стили для заголовков дней недели */
.dp__calendar_wrapper {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.dp__calendar_header {
    display: grid !important;
    grid-template-columns: repeat(7, 1fr) !important;
    gap: 4px !important;
    margin-bottom: 10px !important;
    padding-bottom: 8px !important;
    position: relative !important;
    z-index: 10 !important;
}

.dp__calendar_header_item {
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #AAAAAA !important;
    padding: 5px 0 !important;
    font-family: Raleway, sans-serif !important;
    line-height: 1.2 !important;
    background: transparent !important;
    border: none !important;
    cursor: default !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
}

/* Убираем конфликтующие стили из app.min.css */
.calendar .dp__calendar_header {
    display: grid !important;
    grid-template-columns: repeat(7, 1fr) !important;
    grid-gap: 4px !important;
    padding-bottom: 8px !important;
    margin-bottom: 10px !important;
}

.calendar .dp__calendar_header_item {
    font-weight: 600 !important;
    font-size: 14px !important;
    line-height: 120% !important;
    color: #32343a !important;
    text-align: center !important;
    padding: 8px 0 !important;
}

/* Стили для календарной сетки */
.dp__calendar {
    display: block;
    width: 100%;
}

.dp__calendar_row {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    width: 100%;
    margin-bottom: 4px;
}

.dp__calendar_item {
    aspect-ratio: 1;
    min-height: 35px;
}

.dp__cell {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    border-radius: 8px;
    transition: all 0.2s ease;
    cursor: pointer;
    min-height: 40px;
}

.dp__cell .day {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-bottom: 4px;
}

.event-navigation .event-counter {
    color: #32343a;
    font-size: 14px;
    font-weight: 600;
    min-width: 60px;
    text-align: center;
    background: transparent;
    padding: 0;
    border: none;
    font-family: Raleway, sans-serif;
    letter-spacing: 0.2px;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .event-navigation {
        gap: 25px;
        margin-top: 25px;
        position: static; /* На мобильных возвращаем стандартное позиционирование */
        top: auto;
        right: auto;
        bottom: auto;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
    
    .event-navigation:not(.show) {
        display: none !important; /* Скрываем навигацию если событие одно */
    }
    
    .event-navigation.show {
        display: flex !important; /* Показываем только если событий несколько */
    }
    
    #calendar__events .dp__event {
        position: static; /* На мобильных убираем relative позиционирование */
    }

    #calendar__events .dp__event .event-navigation {
        position: static; /* На мобильных убираем абсолютное позиционирование */
        bottom: auto;
        right: auto;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
        margin-top: 25px;
        display: flex;
    }
    
    #calendar__events .dp__event .event-navigation:not(.show) {
        display: none !important; /* Скрываем навигацию если событие одно */
    }
    
    #calendar__events .dp__event .event-navigation.show {
        display: flex !important; /* Показываем только если событий несколько */
    }
    
    .event-navigation .event-nav {
        width: 44px;
        height: 44px;
        padding: 12px;
    }
    
    .event-navigation .event-nav img {
        width: 14px;
        height: 14px;
    }
    
    .event-navigation .event-nav svg {
        width: 25px;
        height: 24px;
    }
    
    .event-navigation .event-counter {
        font-size: 13px;
        min-width: 60px;
        padding: 6px 12px;
        background: #fff;
        border: 1px solid #cacacb;
        border-radius: 20px;
    }
    
    /* Адаптивные стили для заголовков дней недели */
    .dp__calendar_header {
        gap: 2px !important;
        margin-bottom: 8px !important;
        padding-bottom: 6px !important;
    }
    
    .dp__calendar_header_item {
        font-size: 10px !important;
        padding: 4px 0 !important;
    }
    
    .calendar .dp__calendar_header_item {
        font-size: 10px !important;
        padding: 4px 0 !important;
    }
    
    .dp__calendar_wrapper {
        gap: 6px;
    }
    
    .dp__calendar_item {
        min-height: 30px;
    }
    
    .dp__cell {
        min-height: 30px;
        padding: 3px;
    }
    
    .dp__cell.dp__event_date {
        padding-bottom: 10px;
    }
    
    .event-dots {
        bottom: 4px;
    }
    
    .event-dot {
        width: 5px;
        height: 5px;
    }
    
    /* Календарь на всю ширину на мобильных */
    .calendar-events .picker {
        flex-direction: column;
        gap: 20px;
        padding: 0 15px;
    }
    
    .calendar-events .picker__left {
        width: 100%;
        max-width: none;
    }
    
    .calendar {
        width: 100%;
        max-width: none;
        margin: 0;
    }

    /* Адаптивная высота для блока событий */
    #calendar__events {
        height: auto;
        min-height: 350px;
        position: static; /* На мобильных убираем relative позиционирование */
    }
    
    .dp__calendar_wrapper {
        width: 100%;
    }
    
    .dp__calendar_header {
        width: 100%;
    }
    
    .dp__calendar {
        width: 100%;
    }
    
    .dp__calendar_row {
        width: 100%;
    }
    
    .dp__calendar_item {
        width: 100%;
    }
    
    .dp__cell {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .dp__calendar_header_item {
        font-size: 9px !important;
        padding: 3px 0 !important;
    }
    
    .calendar .dp__calendar_header_item {
        font-size: 9px !important;
        padding: 3px 0 !important;
    }
    
    .dp__calendar_item {
        min-height: 28px;
    }
    
    .dp__cell {
        min-height: 28px;
        padding: 2px;
    }
    
    .dp__cell .day {
        font-size: 12px;
    }
    
    .dp__cell.dp__event_date {
        padding-bottom: 8px;
    }
    
    .event-dots {
        bottom: 3px;
    }
    
    .event-dot {
        width: 4px;
        height: 4px;
    }
    
    /* Календарь на всю ширину на очень маленьких экранах */
    .calendar-events .picker {
        padding: 0 0px;
        gap: 15px;
    }
    
    .dp__calendar_header {
        gap: 1px !important;
        margin-bottom: 6px !important;
        padding-bottom: 4px !important;
    }
    
    .dp__calendar_row {
        gap: 2px;
        margin-bottom: 2px;
    }
    
    .dp__calendar_item {
        min-height: 25px;
    }
    
    .dp__cell {
        min-height: 25px;
        padding: 1px;
        border-radius: 4px;
    }
    
    .dp__cell .day {
        font-size: 11px;
        margin-bottom: 1px;
    }

    /* Адаптивная высота для блока событий на очень маленьких экранах */
    #calendar__events {
        height: auto;
        min-height: 300px;
        position: static;
    }

    #calendar__events .dp__event {
        position: static;
    }

    #calendar__events .dp__event .event-navigation {
        position: static;
        bottom: auto;
        right: auto;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
        margin-top: 20px;
        display: flex;
    }

    /* Скрываем навигацию если событие одно на очень маленьких экранах */
    .event-navigation:not(.show) {
        display: none !important;
    }
    
    .event-navigation.show {
        display: flex !important;
    }
}

/* Стили для выбранной даты */
.dp__cell.dp__selected {
    background: #E63542 !important;
    color: #fff !important;
}

.dp__cell.dp__selected .day {
    color: #fff !important;
}

/* Стили для сегодняшней даты */
.dp__cell.dp__today {
    background: #28a745 !important;
    border-color: #28a745 !important;
}

.dp__cell.dp__today .day {
    color: #fff !important;
}

/* Стили для дат с событиями */
.dp__cell.dp__event_date {
    position: relative;
    cursor: pointer;
}

.dp__cell.dp__event_date:hover {
    background: rgba(0, 123, 255, 0.1);
}

/* Стили для точек событий */
.event-dots {
    position: absolute;
    bottom: 6px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 3px;
    align-items: center;
    justify-content: center;
}

.event-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #E63542;
}

.event-dot-more {
    font-size: 9px;
    color: #E63542;
    font-weight: bold;
    background: transparent;
}

/* Стили для дат других месяцев */
.dp__cell.dp__other_month {
    opacity: 0.3;
    cursor: default;
}

.dp__cell.dp__other_month .day {
    color: #999;
}

/* Стили для неактивных дат (без событий) */
.dp__calendar_item:not(.dp__selectable) {
    cursor: default;
}

.dp__calendar_item:not(.dp__selectable) .dp__cell {
    opacity: 0.6;
}

.dp__calendar_item:not(.dp__selectable) .dp__cell:hover {
    background: none !important;
}

/* Стили для выбранной даты */
.dp__cell.dp__selected .event-dots .event-dot {
    background: #fff;
}

.dp__cell.dp__selected .event-dot-more {
    background: #fff;
    color: #E63542;
}

/* Анимация для событий */
.dp__event {
    transition: all 0.3s ease;
}

.dp__event.fade-in {
    animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Улучшенные стили для календарной сетки */
.dp__calendar {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dp__calendar_row {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.dp__calendar_item {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dp__cell {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    border-radius: 6px;
    transition: all 0.2s ease;
    cursor: pointer;
    min-height: 35px;
    padding: 4px;
    background: #fff;
    border: 1px solid #e9ecef;
}

.dp__cell:hover {
    background: #f8f9fa;
    border-color: #dee2e6;
}

.dp__cell .day {
    font-size: 13px;
    font-weight: 500;
    color: #333;
    margin-bottom: 2px;
    text-align: center;
}

/* Стили для ячеек других месяцев */
.dp__cell.dp__other_month {
    opacity: 0.4;
    background: #f8f9fa;
    border-color: #e9ecef;
}

.dp__cell.dp__other_month .day {
    color: #999;
}

/* Стили для ячеек с событиями */
.dp__cell.dp__event_date {
    background: rgba(230, 53, 66, 0.1);
    border: 1px solid rgba(230, 53, 66, 0.3);
    padding-bottom: 12px;
}

.dp__cell.dp__event_date:hover {
    background: rgba(230, 53, 66, 0.2);
    border-color: rgba(230, 53, 66, 0.5);
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .event-navigation {
        gap: 15px;
        margin-top: 15px;
        padding: 12px;
    }
    
    .event-navigation .event-nav {
        padding: 6px;
    }
    
    .event-navigation .event-nav img {
        width: 16px;
        height: 16px;
    }
    
    .event-navigation .event-counter {
        font-size: 12px;
        min-width: 50px;
    }
    
    .dp__cell {
        min-height: 35px;
    }
    
    .dp__cell .day {
        font-size: 12px;
    }
    
    .event-dots {
        bottom: 2px;
    }
    
    .event-dot {
        width: 4px;
        height: 4px;
    }
    
    .event-dot-more {
        font-size: 6px;
        min-width: 10px;
        height: 10px;
    }
}

@media (max-width: 480px) {
    .btn-more-link {
        font-size: 12px;
        padding: 5px 16px 6px 14px;
        gap: 6px;
    }
    
    .btn-more-link svg {
        width: 18px;
        height: 18px;
    }
    
    /* Кнопка "Подробнее" на мобильных */
    .btn-more-link {
        font-size: 12px;
        padding: 5px 16px 6px 14px;
        gap: 6px;
        width: 100%;
        justify-content: center;
    }

    /* Навигация на очень маленьких экранах */
    .event-navigation {
        gap: 20px;
        margin-top: 20px;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
    
    .event-navigation .event-nav {
        width: 40px;
        height: 40px;
        padding: 10px;
    }
    
    .event-navigation .event-nav svg {
        width: 20px;
        height: 20px;
    }
    
    .event-navigation .event-counter {
        font-size: 12px;
        min-width: 50px;
        padding: 6px 12px;
        background: #fff;
        border: 1px solid #cacacb;
        border-radius: 20px;
    }

    /* Адаптивная высота для блока событий на очень маленьких экранах */
    #calendar__events {
        height: auto;
        min-height: 300px;
        position: static;
    }

    #calendar__events .dp__event {
        position: static;
    }
}

/* Стили для кнопки "Подробнее" */
.btn-more-link {
    background: #e63542;
    padding: 8px 27px 9px 25px;
    text-align: center;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    line-height: 100%;
    border-radius: 42px;
    letter-spacing: 0.7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.btn-more-link:hover {
    color: #fff;
    background: #ce1a27;
    transform: translateY(-1px);
}

.btn-more-link svg {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    display: block;
}

.btn-more-link svg path {
    stroke: #fff;
    stroke-width: 2;
}

/* Адаптивность для кнопки */
@media (max-width: 768px) {
    .btn-more-link {
        font-size: 13px;
        padding: 6px 20px 7px 18px;
        gap: 8px;
    }
    
    .btn-more-link svg {
        width: 20px;
        height: 20px;
    }
}

@media (max-width: 480px) {
    .btn-more-link {
        font-size: 12px;
        padding: 5px 16px 6px 14px;
        gap: 6px;
    }
    
    .btn-more-link svg {
        width: 18px;
        height: 18px;
    }
}

/* Адаптивность для экранов 1140px */
@media (max-width: 1140px) {
    #calendar__events {
        height: 336px; /* Высота календаря: 16px + 20px + 18px + (6 * 42px) + 12px = 336px */
    }

    #calendar__events .dp__event .event-navigation {
        bottom: 15px; /* Немного уменьшаем отступ для меньших экранов */
        right: 15px;
    }
}

/* Адаптивность для экранов 992px */
@media (max-width: 992px) {
    #calendar__events {
        height: auto; /* На планшетах высота автоматическая */
        min-height: 350px; /* Минимальная высота для планшетов */
    }

    #calendar__events .dp__event .event-navigation {
        position: static;
        bottom: auto;
        right: auto;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
        margin-top: 25px;
        display: flex;
    }
}

/* Скрываем навигацию когда событие одно */
.event-navigation:not(.show) {
    display: none !important;
}

.event-navigation.show {
    display: flex !important;
}

/* Скрываем навигацию в блоке событий когда событие одно */
#calendar__events .dp__event .event-navigation:not(.show) {
    display: none !important;
}

#calendar__events .dp__event .event-navigation.show {
    display: flex !important;
}

/* End */


/* Start:/local/templates/ranepa_im2/components/apogodin/catalog.smart.filter.noprice/opendays/style.css?17574253191926*/
.filter_v1 .param-select{
    position: relative;
    flex-basis: auto;
    flex-grow: 9999;
}
.filter_v1 .filter__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
}

@media (max-width: 768px) {
    .filter_v1 .filter__row {
        flex-direction: column;
    }
}
html {
    overflow-x: hidden;
}

.m-check input:disabled+label {
    color: #8f8f8f;
}
.m-check input:disabled+label::before {
    border: 1px solid #c4c4c4;
}
/* custom filter search pc*/
.fs input, .fs select, .fs textarea {
    border-radius: 7.25em;
    border: 1px solid #b3b4b7;
    margin-bottom: 0.6em;
    margin-top: 0.3em;
    padding: 0 1em;
    height: 3.2em;
    width: 100%;
    font-size: 0.875em;
    background-color: rgba(0, 0, 0, 0);
    color: #000;
    font-weight: 600;
}
.fs input[name="q"] {
    margin: 0;
    padding-left: 45px;
}
.fs .search-box {
  position: relative;
  display: flex;
  align-items: center;
}
.filter-mbs {
    display: none;
}
.filter {
  display: block;
}
#toggle-filters {
    cursor: pointer;
}
/* скрытое состояние */
.filter.hidden {
  display: none;
}
.fs .search-box .search-icon {
  position: absolute;
  left: 20px;
  width: 18px;
  height: 18px;
  color: #888;
  pointer-events: none; /* чтобы клик проходил сквозь иконку */
}
.toggle-filters {
	cursor: pointer;
}
@media (max-width: 768px) {
    .filter {
        align-items: center;
    }
    .fs {width: 57%;}
    .fs input, .fs select, .fs textarea {margin: 0; height: 2.4em;}
    .filter-mbs {
        display: flex;  
        border: 1px solid #a2a2a2;
        height: 2em;
        width: 2em;
        border-radius: 100px;
        align-items: center;
        justify-content: center; 
    }
    .filter-mbs img {
        width: 1em;
        height: 1em;
        display: block;  
    }
    .toggle-filters {
        display: none;
    }
}
/* custom filter search pc end */

/* End */
/* /local/templates/ranepa_im2/assets2/css/app.min.css?175740574117391 */
/* /local/templates/ranepa_im2/assets2/css/calendar-events.css?175740559320485 */
/* /local/templates/ranepa_im2/components/apogodin/catalog.smart.filter.noprice/opendays/style.css?17574253191926 */
