

/* 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/style.min.css?1755605602138050*/
@font-face {
    font-family: Raleway;
    src: url(/local/templates/ranepa_im2/assets2/css/../fonts/Raleway-v4020-Medium.woff) format("woff"), url(/local/templates/ranepa_im2/assets2/css/../fonts/Raleway-v4020-Medium.woff2) format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Raleway;
    src: url(/local/templates/ranepa_im2/assets2/css/../fonts/Raleway-v4020-SemiBold.woff) format("woff"), url(/local/templates/ranepa_im2/assets2/css/../fonts/Raleway-v4020-SemiBold.woff2) format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Raleway;
    src: url(/local/templates/ranepa_im2/assets2/css/../fonts/Raleway-v4020-Bold.woff) format("woff"), url(/local/templates/ranepa_im2/assets2/css/../fonts/Raleway-v4020-Bold.woff2) format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
*,
::after,
::before {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased !important;
    -webkit-tap-highlight-color: transparent;
    outline: 0 !important;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
}
a,
body,
div,
form,
h1,
h2,
h3,
h4,
h5,
li,
p,
ul {
    margin: 0;
    padding: 0;
    border: 0;
    text-decoration: none;
    line-height: 1;
}
button,
input,
textarea {
    outline: 0 !important;
    -webkit-transition: 0.125s;
    -o-transition: 0.125s;
    transition: 0.125s;
    font-family: inherit;
}
input:active,
input[type="checkbox"]:focus,
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="text"]:focus {
    outline: 0 !important;
}
::-webkit-input-placeholder {
    color: #222;
}
::-moz-placeholder {
    color: #222;
}
:-moz-placeholder {
    color: #222;
}
:-ms-input-placeholder {
    color: #222;
}
input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance: textfield;
}
html {
    height: 100%;
    scroll-behavior: smooth;
    width: 100%;
}
svg {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: auto;
}
circle,
path,
rect,
svg {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
a {
    color: inherit;
    text-decoration: none;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
a:focus,
a:hover {
    text-decoration: none;
}
li,
ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
i {
    line-height: 100%;
}
fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}
button {
    cursor: pointer;
    border: none;
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    background-color: inherit;
    font-size: 1em;
}
.swiper-button-next,
.swiper-button-prev {
    z-index: 2;
}
.swiper-button-next::after,
.swiper-button-prev::after {
    display: none;
}
img {
    -webkit-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
html.fixed-body {
    overflow-y: hidden;
}
.wrapper {
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.content {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
}
.m-page {
    width: calc(100vw - (100vw - 100%));
    overflow-x: hidden;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    color: #32343a;
    font-size: 16px;
    font-variant-numeric: lining-nums proportional-nums;
}
@media screen and (max-width: 1378px) {
    .m-page {
        font-size: 1.1611030479vw;
    }
}
.m-page.fixed-body,
.m-page.fixed-body2 {
    overflow-y: hidden;
    padding-right: var(--scrollWidth);
}
.container {
    max-width: 1378px;
    width: 100%;
    margin: 0 auto;
    padding: 0 1.625em;
}
a:hover {
    color: #e63542;
}
@media screen and (max-width: 992px) {
    .m-page {
        font-size: 2.0833333333vw;
    }
    .container {
        padding: 0 0.75em;
    }
}
@media screen and (max-width: 576px) {
    .m-page {
        font-size: 4.4444444444vw;
    }
}
.text-center {
    text-align: center;
}
.caps-text {
    text-transform: uppercase;
}
.underline-text {
    text-decoration: underline;
}
.h2 {
    font-size: 2.25em;
    line-height: 110%;
    letter-spacing: -0.02em;
}
.m-subtitle {
    font-size: 1.5625em;
    line-height: 110%;
    letter-spacing: -0.02em;
    color: #dadada;
}
.text20 {
    font-size: 1.25em;
    line-height: 120%;
}
.text19 {
    font-size: 1.1875em;
    line-height: 120%;
}
.text18 {
    font-size: 1.125em;
    line-height: 120%;
}
.text17 {
    font-size: 1.0625em;
    line-height: 120%;
}
.text16 {
    font-size: 1em;
    line-height: 150%;
}
.text15 {
    font-size: 0.9375em;
    line-height: 120%;
}
.text14 {
    font-size: 0.875em;
    line-height: 120%;
}
.text13 {
    font-size: 0.8125em;
    line-height: 120%;
}
.text12 {
    font-size: 0.75em;
    line-height: 120%;
}
.text11 {
    font-size: 0.6875em;
    line-height: 120%;
}
.text10 {
    font-size: 0.625em;
    line-height: 120%;
}
.extra-bold-text {
    font-weight: 800;
}
.bold-text {
    font-weight: 700;
}
.semi-bold-text {
    font-weight: 600;
}
.medium-text {
    font-weight: 500;
}
.regular-text {
    font-weight: 400;
}
.light-text {
    font-weight: 300;
}
._no-wrap {
    white-space: nowrap;
}
._let-spacing2 {
    letter-spacing: -0.02em;
}
.red-text {
    color: #e63542;
}
.m-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;
    -webkit-transition: 0.225s ease-out;
    -o-transition: 0.225s ease-out;
    transition: 0.225s ease-out;
    padding: 0 1.69em;
    height: 2.35em;
    border-radius: 3.31538em;
    font-weight: 600;
}
.m-btn:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.m-btn span {
    font-size: 1.08538em;
}
.m-btn-white {
    background-color: #fff;
    color: #32343a;
}
.m-btn-white:hover {
    background-color: #32343a;
    color: #fff;
}
.m-btn-gray {
    background-color: #6b6b6b;
    color: #fff;
}
.m-btn-gray:hover {
    background-color: #e63542;
    color: #fff;
}
.m-btn-black {
    background-color: #32343a;
    color: #fff;
}
.m-btn-black:hover,
.m-btn-red {
    background-color: #e63542;
    color: #fff;
}
.m-btn-red:hover {
    background-color: rgb(206.449339207, 25.550660793, 38.8370044053);
    color: #fff;
}
.m-btn-gray-outline {
    border: 1px solid #cacacb;
    color: #32343a;
}
.m-btn-gray-outline:hover {
    background-color: #e63542;
    border-color: #e63542;
    color: #fff;
}
@media screen and (max-width: 992px) {
    .h2 {
        font-size: 1.9375em;
    }
    .m-subtitle {
        font-size: 0.875em;
    }
    .text20-tablet {
        font-size: 1.25em;
    }
    .text19-tablet {
        font-size: 1.1875em;
    }
    .text18-tablet {
        font-size: 1.125em;
    }
    .text17-tablet {
        font-size: 1.0625em;
    }
    .text16-tablet {
        font-size: 1em;
    }
    .text15-tablet {
        font-size: 0.9375em;
    }
    .text14-tablet {
        font-size: 0.875em;
    }
    .text13-tablet {
        font-size: 0.8125em;
    }
    .text12-tablet {
        font-size: 0.75em;
    }
    .text11-tablet {
        font-size: 0.6875em;
    }
    .text10-tablet {
        font-size: 0.625em;
    }
    .m-btn {
        height: 1.8125em;
        padding: 0 1.33em;
    }
    .m-btn span {
        font-size: 0.85225em;
    }
}
.fg {
    position: relative;
    margin: 0;
}
.fg label {
    display: block;
    font-size: 0.9375em;
    line-height: 140%;
    margin-bottom: 0.375em;
}
.fg label span {
    color: #e63542;
}
.fg input,
.fg select,
.fg textarea {
    border-radius: 7.25em;
    border: 1px solid #dadedf;
    padding: 0 1em;
    height: 3.62em;
    width: 100%;
    font-size: 0.875em;
    background-color: rgba(0, 0, 0, 0);
    color: #000;
    font-weight: 600;
}
.fg input::-webkit-input-placeholder,
.fg select::-webkit-input-placeholder,
.fg textarea::-webkit-input-placeholder {
    color: #a3a3a3;
}
.fg input::-moz-placeholder,
.fg select::-moz-placeholder,
.fg textarea::-moz-placeholder {
    color: #a3a3a3;
}
.fg input:-ms-input-placeholder,
.fg select:-ms-input-placeholder,
.fg textarea:-ms-input-placeholder {
    color: #a3a3a3;
}
.fg input::-ms-input-placeholder,
.fg select::-ms-input-placeholder,
.fg textarea::-ms-input-placeholder {
    color: #a3a3a3;
}
.fg input::placeholder,
.fg select::placeholder,
.fg textarea::placeholder {
    color: #a3a3a3;
}
.fg input:focus,
.fg select:focus,
.fg textarea:focus {
    border-color: #9ca0a0;
    -webkit-box-shadow: 0 0.25em 0.4375em 0 rgba(47, 63, 67, 0.03), 0 0.25em 0.3125em 0 rgba(0, 0, 0, 0.02) inset;
    box-shadow: 0 0.25em 0.4375em 0 rgba(47, 63, 67, 0.03), 0 0.25em 0.3125em 0 rgba(0, 0, 0, 0.02) inset;
}
.fg input:disabled,
.fg select:disabled,
.fg textarea:disabled {
    pointer-events: none;
    background: #f6f6f6 !important;
    color: rgba(0, 0, 0, 0.4);
}
.fg select {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    color: #a3a3a3;
    font-family: Raleway, sans-serif;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/select-arrow.svg);
    background-repeat: no-repeat;
    background-position: right 0.5em center;
    background-size: 1em auto;
    padding-right: 2em;
}
.fg select::-ms-expand {
    display: none;
}
.fg textarea {
    padding-top: 1.19em;
    padding-bottom: 1.19em;
    height: 13.0625em;
    resize: vertical;
}
.fg__field {
    position: relative;
}
.fg._error input,
.fg._error textarea {
    border-color: #e63542;
    color: #e63542;
}
.fg._error input::-webkit-input-placeholder,
.fg._error textarea::-webkit-input-placeholder {
    color: #e63542;
}
.fg._error input::-moz-placeholder,
.fg._error textarea::-moz-placeholder {
    color: #e63542;
}
.fg._error input:-ms-input-placeholder,
.fg._error textarea:-ms-input-placeholder {
    color: #e63542;
}
.fg._error input::-ms-input-placeholder,
.fg._error textarea::-ms-input-placeholder {
    color: #e63542;
}
.fg._error input::placeholder,
.fg._error textarea::placeholder {
    color: #e63542;
}
.fg._error .fg__error-text {
    display: block;
}
.fg__error-text {
    margin-top: 0.375em;
    color: #e63542;
    display: none;
}
.m-check {
    position: relative;
}
.m-check input {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 2;
    cursor: pointer;
}
.m-check label {
    position: relative;
    cursor: pointer;
    display: block;
    padding-left: 1.45em;
    min-height: 1em;
}
.m-check label span {
    font-size: 0.625em;
    line-height: 160%;
}
.m-check label:after,
.m-check label:before {
    pointer-events: none;
}
.m-check label:before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    border: 1px solid #32343a;
    width: 1em;
    height: 1em;
    background-size: 0 auto;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/check2.svg);
}
.m-check label a {
    text-decoration: underline;
    position: relative;
    z-index: 2;
}
.m-check input:checked + label::before {
    background-size: 0.625em auto;
}
.m-check._gray label {
    color: #787878;
}
@media screen and (max-width: 992px) {
    .fg input,
    .fg textarea {
        height: 3.28em;
    }
}
.pagination {
    margin-top: 3.75em;
}
.pagination__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.pagination__item {
    height: 3.625em;
    min-width: 3.625em;
    padding: 0 1.25em;
    border-radius: 0.25em;
    border: 1px solid #32343a;
    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;
    margin: 0 0.3125em;
    font-weight: 500;
}
.pagination__item svg {
    width: 1.0625em;
    height: auto;
}
.pagination__item._active {
    pointer-events: none;
}
.pagination__item._active,
.pagination__item:hover {
    color: #fff;
    background-color: #32343a;
    border-color: #32343a;
}
.pagination__item._active path,
.pagination__item:hover path {
    fill: #fff;
}
.pagination__item._btn {
    padding: 0 1.5em;
}
@media screen and (max-width: 992px) {
    .pagination {
        margin-top: 1.875em;
    }
}
@media screen and (max-width: 576px) {
    .pagination {
        margin-top: 1.56em;
    }
    .pagination ._hide-tablet {
        display: none;
    }
    .pagination ._btn {
        width: 2.8125em;
        padding: 0;
    }
    .pagination__item {
        height: 2.8125em;
        min-width: 2.8125em;
        padding: 0 0.875em;
    }
    .pagination__item span {
        font-size: 0.875em;
    }
}
.tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.tabs__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 6.45281em;
    background: #f2f2f2;
    -webkit-box-shadow: 4.075px 2.717px 22.415px -6.792px rgba(0, 0, 0, 0.25) inset;
    box-shadow: 4.075px 2.717px 22.415px -6.792px rgba(0, 0, 0, 0.25) inset;
    padding: 0.44em;
}
.tab {
    height: 2.875em;
    padding: 0 1.5em;
    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;
    text-align: center;
    position: relative;
    color: #a2a2a2;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border-radius: 6.50706em;
}
.tab span {
    font-size: 1.30144em;
}
.tab:hover {
    cursor: pointer;
    color: #e63542;
}
.tab._active {
    background: #e63542;
    color: #fff;
    pointer-events: none;
}
.tab-content {
    display: none;
}
.tab-content._active {
    display: block;
}
.grid {
    display: grid;
    gap: 1.25em;
    grid-template-columns: 100%;
}
.grid2 {
    grid-template-columns: repeat(2, calc(50% - 0.5em));
}
.grid3 {
    grid-template-columns: repeat(3, calc(33.3333333333% - 0.8333333333em));
}
.grid4,
.grid5 {
    grid-template-columns: repeat(4, calc(25% - 0.9375em));
}
@media screen and (max-width: 992px) {
    .tabs__items {
        border-radius: 6.45281em;
        padding: 0.4em;
    }
    .tab {
        height: 2.6em;
        padding: 0 1.25em;
    }
    .tab span {
        font-size: 1.1755em;
    }
    .grid-tablet {
        grid-template-columns: 100%;
    }
    .grid-tablet2 {
        grid-template-columns: repeat(2, calc(50% - 0.625em));
    }
}
._flex,
._flex-between,
._flex-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
._flex-between._start,
._flex-center._start,
._flex._start {
    -webkit-box-align: unset;
    -ms-flex-align: unset;
    align-items: unset;
}
._flex-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
._flex-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
._mt48 {
    margin-top: 3em;
}
._mt32 {
    margin-top: 2em;
}
._mt24 {
    margin-top: 1.5em;
}
._scale-img {
    overflow: hidden;
}
._scale-img:hover img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
._scale-img img {
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
}
.m-backdrop {
    position: relative;
}
.m-backdrop:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.12);
    pointer-events: none;
    border-radius: inherit;
}
.socials {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.socials__item {
    width: 2.5em;
    height: 2.5em;
    border-radius: 50%;
    border: 1px solid hsla(0, 0%, 100%, 0.1);
    background: #1a1a1a;
    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;
}
.socials__item:not(:last-child) {
    margin: 0 0.75em 0 0;
}
.socials__item:hover path {
    fill-opacity: 1;
}
.socials__item:hover path:not(._not-fill) {
    fill: #fff;
}
.qa-card {
    border-radius: 0.75em;
    background: #e0e1e5;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    /* custom */
    min-height: 72px;
    /* custom */
}
.qa-card._active {
    background-color: #f3f3f3;
}
.qa-card._active .qa-card__btn img {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.qa-card__show {
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.9em 1em;
}
.qa-card__title {
    font-size: 1.125em;
    line-height: 120%;
}
.qa-card__btn {
    margin-left: 1em;
    width: 1.5em;
    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;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.qa-card__btn img {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    width: 100%;
}
.qa-card__hidden {
    padding: 0 1em 1em;
    display: none;
}
.qa-card__text {
    font-size: 0.875em;
    line-height: 120%;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .qa-card {
        font-size: 0.875em;
    }
}
:root {
    --vh: 1vh;
}
.breadcrumbs {
    margin-top: 60px;
}
.breadcrumbs__item {
    font-size: 16px;
    line-height: 110%;
    position: relative;
    font-weight: 400;
    display: inline;
}
.breadcrumbs__item:last-child {
    font-weight: 600;
}
.breadcrumbs__item:not(:first-child) {
    margin-left: 24px;
}
.breadcrumbs__item:not(:first-child):before {
    content: "";
    position: absolute;
    z-index: 1;
    width: 3.51px;
    height: 3.51px;
    background-color: #e63542;
    border-radius: 1px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 7px;
    right: 100%;
    margin-right: 10px;
}
.modal-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100 * var(--vh));
    -webkit-backdrop-filter: blur(6.3000001907px);
    backdrop-filter: blur(6.3000001907px);
}
.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100 * var(--vh));
    overflow-y: auto;
    z-index: 80;
    opacity: 0;
    pointer-events: none;
    padding: 1em 0;
    text-align: center;
}
.modal:after {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -4px;
}
.modal__dialog {
    text-align: left;
    vertical-align: middle;
    background: #fff;
    width: 49.25em;
    max-width: 100%;
    position: relative;
    z-index: 3;
    padding: 3em;
    border-radius: 1.25em;
    display: inline-block;
}
.modal._active {
    opacity: 1;
    pointer-events: unset;
}
.modal._active .modal__bg {
    display: block;
}
.modal .close-btn {
    position: absolute;
    bottom: 100%;
    right: 0.42em;
    margin-bottom: 0.2em;
}
.close-btn {
    width: 0.8125em;
    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;
    background-color: rgba(0, 0, 0, 0);
}
.close-btn img {
    width: 100%;
}
@media screen and (max-width: 992px) {
    .modal {
        padding-top: 3em;
    }
    .modal:after {
        display: none;
    }
}
@media screen and (max-width: 576px) {
    .grid-mob {
        grid-template-columns: 100%;
    }
    .modal {
        padding: 0;
    }
    .modal__dialog {
        padding: 3em 1em 1em;
        border-radius: 0;
        height: calc(100 * var(--vh));
        overflow-y: auto;
    }
    .modal .close-btn {
        top: 0.5em;
        right: 0.5em;
        bottom: unset;
    }
}
.header {
    position: relative;
    z-index: 20;
    padding: 0.9em 0;
}
.header__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header__logo {
    display: block;
    width: 21.95356em;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 2.7em;
}
.header__logo img {
    width: 100%;
    display: block;
}
.burger {
    display: none;
}
@media screen and (min-width: 993px) {
    .nav-slider .swiper-wrapper {
        display: grid;
        grid-template-columns: auto auto auto auto;
        gap: 0.39em 0.18em;

    }
    .nav-slider .swiper-container {
        width: 100%;
    }
    .nav-slider .swiper-slide {
        padding: 0;
    }
    .contact-group {
        grid-column: 3/4;
        grid-row: 1/4;
    }
    .contact-group .contact-card {
        height: 50%;
        margin-bottom: 0.75em;
    }
}
.nav__link {
    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: 1.9em;
    padding: 0 0.75em;
    white-space: nowrap;
    border-radius: 1.25rem;
    border: 1px solid #cacacb;
}
.nav__link span {
    font-size: 0.85194em;
}
.header-action {
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header-action__btn {
    margin-bottom: 1em;
    width: 12.6em;
    height: 1.9em;
}
.header-action__btn span {
    font-size: 0.875em;
}
.header-action__phone {
    font-weight: 700;
}
.header-action__phone img {
    display: none;
}
.header-action__phone span {
    font-size: 0.89675em;
    line-height: 120%;
}
.menu {
    display: none;
}
@media screen and (max-width: 992px) {
    .header .container {
        padding: 0;
    }
    .header__inner {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .header__logo {
        width: 16em;
        margin: 0 0 0 0.75em;
    }
    .header._open .menu {
        opacity: 1;
        pointer-events: unset;
    }
    .header-action {
        padding-right: 0.75em;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .header-action__btn {
        display: none;
    }
    .header-action__phone {
        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;
    }
    .header-action__phone span {
        display: none;
    }
    .header-action__phone img {
        width: 1.875em;
        display: block;
    }
    .burger {
        width: 1.8125em;
        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;
        margin-left: 0.75em;
    }
    .burger img {
        width: 100%;
    }
    .nav-slider {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        margin-top: 0.75em;
        padding: 0 0.75em;
        overflow: hidden;
    }
    .nav-slider .swiper-container {
        width: calc(100% + 0.25em);
    }
    .nav-slider .swiper-slide {
        width: auto;
        padding-right: 0.25em;
    }
    .menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: calc(100 * var(--vh));
        padding: 4em 0 0;
        z-index: 3;
        background-color: #fff;
        display: block;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
        opacity: 0;
        pointer-events: none;
    }
    .menu__close {
        position: absolute;
        top: 0.5em;
        right: 0;
        width: 3em;
        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;
    }
    .menu__close img {
        width: 100%;
    }
    .menu__scroll {
        padding: 0 0.75em 1em;
        height: 100%;
        overflow-y: auto;
    }
    .menu__btn {
        margin-top: 0.875em;
        width: 100%;
        height: 2em;
        border-radius: 0.3125em;
    }
    .menu__btn span {
        font-size: 0.875em;
    }
    .menu__socials {
        margin-top: 0.5em;
        display: grid;
        grid-template-columns: repeat(3, calc(33.3333333333% - 0.3333333333em));
        gap: 0.5em;
    }
    .menu__social {
        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: 2.125em;
        border-radius: 0.3125em;
        background-color: #32343a;
    }
    .menu__social img {
        width: 1.125em;
    }
    .menu-item {
        margin-bottom: 0.375em;
    }
    .menu-item__show {
        background-color: #f3f3f3;
        height: 2.375em;
        padding: 0 0.75em;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        border-radius: 1.25em;
    }
    .menu-item__show img {
        width: 0.75em;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .menu-item__title {
        font-size: 0.875em;
    }
    .menu-item__hidden {
        margin-top: 0.5em;
        display: none;
    }
    .menu-item__links {
        width: calc(100% + 0.375em);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: -0.375em;
    }
    .menu-item__link {
        border-radius: 1.25em;
        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;
        margin: 0.375em 0.375em 0 0;
        padding: 0.25em 0.3125em;
        height: unset;
        min-height: 1.875em;
        border: 1px solid #cacacb;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: calc(100% - 0.375em);
        text-align: center;
    }
    .menu-item__link span {
        font-size: 0.85em;
        line-height: 120%;
    }
    .menu-item._active .menu-item__show img {
        -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg);
    }
    .menu-group {
        margin-bottom: 0.375em;
        margin-top: 0.5em;
        display: grid;
        grid-template-columns: 100%;
        gap: 0.5em;
    }
}
.footer {
    padding: 1.125em 0;
    font-weight: 700;
}
.footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.footer__right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5em;
}
.footer__logo {
    width: 21.95356em;
    display: block;
}
.footer__logo img {
    width: 100%;
    display: block;
}
.footer__c,
.footer__conf {
    font-size: 0.88619em;
    line-height: 120%;
    color: #e8e8e8;
}
@media screen and (max-width: 992px) {
    .footer {
        padding: 0.75em 0;
    }
    .footer__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .footer__right {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 0.75em;
        margin-top: 0.75em;
    }
    .footer__logo {
        width: 16em;
    }
    .footer__c,
    .footer__conf {
        font-size: 0.69275em;
    }
}
.lk-popup__top {
    display: grid;
    grid-template-columns: calc(100% - 18.375em) 16em;
    gap: 2.375em;
}
.lk-popup__links {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.44em;
}
.lk-popup__link {
    border-radius: 1.48894em;
    background: #e0e1e5;
    height: 2.75em;
    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;
}
.lk-popup__link:hover {
    background: #32343a;
    color: #fff;
}
.lk-popup__socials {
    margin-top: 4.75em;
    display: grid;
    grid-template-columns: repeat(3, calc(33.3333333333% - 0.8333333333em));
    gap: 1.25em;
}
.lk-popup__social {
    height: 3.125em;
    border-radius: 0.5em;
    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;
    background-color: #32343a;
}
.lk-popup__social:hover {
    background-color: #e63542;
}
.lk-popup__social img {
    width: 1.75em;
}
.lk-popup__groups {
    display: grid;
    grid-template-columns: 100%;
    gap: 1.25em;
}
.lk-popup__items {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.42em;
    margin-top: 0.6875em;
}
.lk-popup__item {
    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;
    border-radius: 1.47019em;
    border: 1px solid #cacacb;
    display: flex;
    height: 2.39513em;
}
.lk-popup__item span {
    font-size: 0.94356em;
}
@media screen and (max-width: 576px) {
    .lk-popup__top {
        grid-template-columns: 100%;
    }
    .lk-popup__socials {
        margin-top: 1.5em;
        grid-template-columns: repeat(3, calc(33.3333333333% - 0.3333333333em));
        gap: 0.5em;
    }
}
.contacts {
    padding: 6em 0 0.75em;
}
.contacts__grid {
    display: grid;
    grid-template-columns: repeat(3, calc(33.3333333333% - 0.5em));
    gap: 0.75em;
}
.contact-group {
    border-radius: 1.29188em;
    background-color: #e63542;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/contact-bg.svg);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 26.8125em auto;
}
.contact-group .contact-card {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 0;
    color: #fff;
}
.contact-group .contact-card:last-child {
    margin: 0;
}
.contact-group .contact-card__title {
    color: #fff;
}
.contact-group .contact-card a:hover {
    color: #fff;
    opacity: 0.8;
}
.contact-card {
    padding: 1.94em;
    border-radius: 1.29188em;
    background: #f5f5f5;
    color: #686868;
    min-height: 24.49213em;
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.contact-card__title {
    font-size: 1.7655em;
    line-height: 120%;
    color: #32343a;
}
.contact-card__links {
    margin-top: 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 0.25em;
}
.contact-card__item,
.contact-card__link {
    font-size: 0.96894em;
    line-height: 138%;
}
.contact-card__items {
    margin-top: 1.5em;
    display: grid;
    grid-template-columns: 100%;
    gap: 1.25em;
}
.contact-card__socials {
    margin-top: auto;
    padding-top: 1em;
}
.contact-card__social {
    margin-bottom: 0.33em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.contact-card__social:last-child {
    margin: 0;
}
.contact-card__social img {
    width: 2.125em;
    margin-right: 0.55em;
}
.contact-card__social span {
    font-size: 0.96894em;
}
.contact-card__social:hover {
    color: #e63542;
}
@media screen and (max-width: 992px) {
    .contacts {
        padding: 2.75em 0 0;
    }
    .contacts__grid {
        grid-template-columns: 100%;
        gap: 0.625em;
    }
    .contact-card {
        padding: 1.5em;
        border-radius: 0.99294em;
        min-height: 15.75em;
    }
    .contact-card__title {
        font-size: 1.35688em;
    }
    .contact-card__links {
        margin-top: 1em;
    }
    .contact-card__item,
    .contact-card__link {
        font-size: 0.875em;
    }
    .contact-card__items {
        margin-top: 1em;
    }
    .contact-card__socials {
        margin-top: auto;
        padding-top: 1em;
    }
    .contact-card__social {
        margin-bottom: 0.25em;
    }
    .contact-card__social img {
        width: 1.5em;
        margin-right: 0.3em;
    }
    .contact-card__social span {
        font-size: 0.875em;
    }
}
@media screen and (max-width: 992px) and (min-width: 577px) {
    .contact-group {
        display: grid;
        grid-template-columns: 50% 50%;
    }
}
.info-block {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.07em;
}
.partners {
    padding-top: 5.2em;
    overflow: hidden;
}
.partners__items {
    display: grid;
    grid-template-columns: repeat(5, calc(20% - 0.912em));
    gap: 1.14em;
    margin-top: 1.77em;
}
.partner-item {
    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;
    border-radius: 1.266em;
    border: 1.013px solid #d7d7d8;
    height: 8.67em;
    padding: 1.5em;
}
.partner-item__title {
    font-size: 2.27881em;
    line-height: 110%;
    color: #5d5d5d;
    font-weight: 500;
}
.partner-item img {
    max-width: 100%;
    max-height: 100%;
}
.students {
    padding-top: 3.5em;
    overflow: hidden;
}
.students .info-block {
    padding-right: 5.95em;
}
.swiper-scrollbar {
    height: 0.375em;
    margin-top: 1.64em;
    border-radius: 0.87794em;
    background: #f5f5f5;
}
.swiper-scrollbar-drag {
    border-radius: 0.87794em;
    background: #afb0b2;
}
.slider {
    position: relative;
}
.slider .swiper-container {
    width: calc(100% + 0.625em);
}
.slider .swiper-wrapper {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
.slider .swiper-slide {
    padding-right: 0.625em;
    height: auto;
}
.slider .swiper-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    bottom: 100%;
    right: 0;
    margin-bottom: 2.52em;
}
.slider .swiper-button {
    position: static;
    margin: 0 0 0 0.875em;
    border: 1.013px solid #d8d8d9;
    width: 2.42em;
    height: 2.42em;
    border-radius: 50%;
    background-color: #f5f5f6;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.slider .swiper-button svg {
    width: 1.125em;
}
.slider .swiper-button:hover {
    background-color: #e63542;
    border-color: #e63542;
}
.slider .swiper-button:hover path {
    fill: #fff;
}
.slider .swiper-button.swiper-button-disabled path {
    fill: #d9d9d9;
}
.students-slider {
    margin-top: 1em;
}
.students-slider .swiper-slide {
    width: 16.125em;
}
.student-card {
    position: relative;
    color: #fff;
}
.student-card__img {
    border-radius: 1.375em;
    position: relative;
    padding-bottom: 178%;
    display: block;
}
.student-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.student-card__content {
    position: absolute;
    left: 0;
    bottom: 0;
    border-radius: 1.375em;
    background: rgba(58, 58, 58, 0.65);
    min-height: 15em;
    z-index: 2;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 1.14em;
}
.student-card__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.student-card__info {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.125em;
}
.student-card__name {
    font-size: 1.266em;
    line-height: 110%;
}
.student-card__desc {
    font-size: 0.9495em;
    line-height: 110%;
}
.student-card__arrow {
    width: 2.41em;
    margin-left: 1em;
}
@media screen and (max-width: 992px) {
    .info-block {
        gap: 0.42em;
    }
    .partners {
        padding-top: 1.5em;
    }
    .partners__items {
        grid-template-columns: repeat(4, calc(25% - 0.5625em));
        gap: 0.75em;
        margin-top: 1em;
    }
    .partners .partner-item:nth-child(8) ~ .partner-item {
        display: none;
    }
    .partner-item {
        border-radius: 0.82031em;
        height: 5.62em;
        padding: 1em;
    }
    .partner-item__title {
        font-size: 1.47656em;
    }
    .swiper-scrollbar {
        margin-top: 0.82em;
    }
    .students {
        padding-top: 0.75em;
    }
    .students-slider .swiper-nav {
        margin-bottom: 1em;
    }
}
@media screen and (max-width: 576px) {
    .partners__items {
        grid-template-columns: repeat(2, calc(50% - 0.375em));
    }
    .partners .partner-item:nth-child(4) ~ .partner-item {
        display: none;
    }
}
.about {
    padding-top: 4.75em;
}
.about__grid {
    margin-top: 1.6em;
    display: grid;
    grid-template-columns: calc(100% - 40.8em - 1.28em) 20.4em 20.4em;
    gap: 0.64em;
}
.about__items {
    display: grid;
    grid-template-columns: 100%;
    gap: 1.25em;
}
.about_rector {
    display: grid;
    grid-template-columns: 100%;
    gap: 1.25em;
}
.about-video {
    position: relative;
    display: block;
    color: #fff;
}
.about-video:hover {
    color: #fff;
}
.about-video:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/play.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center;
    width: 4.625em;
    height: 4.625em;
    z-index: 2;
}
.about-video__img {
    min-height: 100%;
    position: relative;
    padding-bottom: 92.3%;
    display: block;
    border-radius: 1.375em;
}
.about-video__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.about-video__logo {
    position: absolute;
    top: 1.6em;
    left: 1.6em;
    width: 11.71869em;
}
.about-video__bottom {
    position: absolute;
    padding: 1.4em 1.6em;
    width: 100%;
    z-index: 2;
    bottom: 0;
    left: 0;
}
.about-video__title {
    font-size: 1.625em;
    font-weight: 700;
}

/* custom start */
.about-info-column {
    display: flex;
    flex-direction: column;
    height: 100%; /* колонка растягивается по высоте родителя */
    gap: 1em;
}

.about-info-column .about-info {
    flex: 1 1 50%; /* два блока делят высоту поровну */
    margin: 0; /* убираем внешние отступы */
}

/* восстановленные стили */ 
.about-info {
    /* min-height: 38em; — убрано */
    background-color: #e63542;
    border-radius: 1.375em;
    color: #fff;
    padding: 1em 1.25em;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/about-info-bg2.svg);
    background-size: cover;
    background-position: right top;
    display: flex;
    flex-direction: column;
    box-sizing: border-box; /* чтобы padding учитывался в общей высоте */
}
.rector {
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/rector.webp);
}
.rector-tg-icon {
    width: 2.81em;
    
}

@media (max-width: 768px) {
    .about__grid {
        display: flex;
        flex-direction: column;
    }

    .about__items {
        order: 2; /* идёт после видео */
    }

    .about-video {
        order: 1; /* видео первым */
    }

    .about-info-column {
        order: 3; /* колонка с блоками после about__items */
    }
}
@media (max-width: 768px) {
    .mba__count.filter {
        display: none;
    }
}
.about-info__num {
    font-size: 3.36em;
    line-height: 120%;
}

.about-info__desc {
    font-size: 1.28525em;
    line-height: 117%;
    margin-top: 0.75em;
    max-width: 8em;
    margin-bottom: 2em;
}

.about-info__bottom {
    margin-top: auto;
    border-radius: 1.28525em;
    background: rgba(120, 120, 120, 0.1);
    box-shadow: 12.51px -12.51px 12.51px 0 rgba(91, 91, 91, 0.1) inset,
                -12.51px 12.51px 12.51px 0 hsla(0, 0%, 100%, 0.1) inset;
    backdrop-filter: blur(12.5097532272px);
    padding: 0.5em 0.77em;
}

.about-info__bottom .about-info__desc {
    margin: 0;
    max-width: 100%;
    line-height: 95%;
}


.about-item {
    border-radius: 1.28525em;
    background: -o-linear-gradient(196deg, #807d78 5.56%, #93918f 58.98%);
    background: linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
    -webkit-box-shadow: 0 2.056px 13.058px 0 rgba(0, 0, 0, 0.09);
    box-shadow: 0 2.056px 13.058px 0 rgba(0, 0, 0, 0.09);
    padding: 1em 1.25em;
    color: #fff;
    background-position: right 0 bottom 0, center; 
    background-repeat: no-repeat, no-repeat; 
    background-size: 100% auto, cover;
}
.about-item--dir {
    background-image: url("/local/templates/ranepa_im2/assets2/css/../img/icon-dir.svg"), linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
}
.about-item--budget {
    background-image: url("/local/templates/ranepa_im2/assets2/css/../img/icon-budget.svg"), linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
}
.about-item--staff {
    background-image: url("/local/templates/ranepa_im2/assets2/css/../img/icon-staff.svg"), linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
}
@media (max-width: 768px) {
    .about-item--dir {
        background-image: url("/local/templates/ranepa_im2/assets2/css/../img/icon-dir-mobile.svg"), linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
    }
    .about-item--budget {
        background-image: url("/local/templates/ranepa_im2/assets2/css/../img/icon-budget-mobile.svg"), linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
    }
    .about-item--staff {
        background-image: url("/local/templates/ranepa_im2/assets2/css/../img/icon-staff-mobile.svg"), linear-gradient(254deg, #807d78 5.56%, #93918f 58.98%);
    }
}
/* custom end */
.about-item__num {
    font-size: 3.36em;
    line-height: 120%;
}
.about-item__desc {
    font-size: 1.28525em;
    line-height: 120%;
    margin-top: 1.5em;
}
@media screen and (max-width: 992px) {
    .about {
        padding-top: 2.65em;
    }
    .about__grid {
        grid-template-columns: repeat(2, calc(50% - 0.25em));
        gap: 0.5em;
    }
    .about__items {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        grid-template-columns: repeat(3, calc(33.3333333333% - 0.3333333333em));
        gap: 0.5em;
        grid-column: 1/-1;
    }
    .about-video:before {
        width: 2.4em;
        height: 2.4em;
    }
    .about-video__img {
        border-radius: 1.25em;
    }
    .about-video__logo {
        top: 0.61em;
        left: 0.5em;
        width: 6.87em;
    }
    .about-video__bottom {
        padding: 0.86em;
    }
    .about-video__title {
        font-size: 1.28788em;
        line-height: 105%;
    }
    .about-info {
        min-height: 20em;
        border-radius: 1.25em;
        padding: 1em;
        /* custom start */
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/about-info-bg2.svg);
        /* custom end */
    }
    .rector {
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/rector.webp);
}
    .about-info__num {
        font-size: 3em;
    }
    .about-info__desc {
        font-size: 1.25em;
    }
    .about-info__bottom {
        border-radius: 1.39em;
        padding: 0.85em;
    }
    .about-info__bottom .about-info__desc {
        font-size: 1.39em;
    }
    .about-item {
        border-radius: 0.625em;
        padding: 0.44em 0.125em 0.44em 0.25em;
    }
    .about-item__num {
        font-size: 2.25em;
    }
    .about-item__desc {
        font-size: 0.75em;
        margin-top: 1em;
    }
    .about-item__desc span {
        display: none;
    }
}
@media screen and (max-width: 576px) {
    .about__grid {
        grid-template-columns: 100%;
    }
}
.media {
    padding-top: 3em;
}
.media__inner {
    margin-top: 1.75em;
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 0.3125em));
    gap: 0.625em;
}
.media__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.media__items {
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 0.3125em));
    gap: 1.5em 0.625em;
}
.media__nav2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 1.36em;
}
.media__link {
    min-width: 11.625em;
    height: 2.78em;
}
.media__big .media-item {
    position: relative;
}
.media__big .media-item__img {
    padding-bottom: 67.8%;
}
.media__big .media-item__content {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 1.25em 1em;
    color: #fff;
    gap: 1em;
    max-width: 29em;
}
.media__big .media-item__title {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    font-size: 1.10419em;
}
.media__big .media-item__date {
    font-weight: 700;
    color: #fff;
}
.media__small {
    margin-top: 1em;
}
.media__small .media-item {
    display: grid;
    grid-template-columns: 5.5625em calc(100% - 5.5625em - 0.875em);
    gap: 0.875em;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.media__small .media-item__img {
    border-radius: 0.61344em;
}
.media__small .media-item__content {
    padding: 0;
    gap: 0.25em;
}
.media__small .media-item__title {
    font-size: 0.6875em;
}
.media-item__img {
    position: relative;
    padding-bottom: 53.5%;
    display: block;
    border-radius: 1.25em;
}
.media-item__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.media-item__content {
    padding: 0.375em 0.5em 0;
    display: grid;
    grid-template-columns: 100%;
    gap: 0.42em;
    max-width: 26em;
}
.media-item__date {
    font-size: 0.61344em;
    line-height: 120%;
    color: #aaa;
}
.media-item__title {
    font-size: 0.73613em;
    line-height: 140%;
}
@media screen and (max-width: 992px) {
    .media {
        padding-top: 1.31em;
    }
    .media__inner {
        margin-top: 1em;
        grid-template-columns: 100%;
        gap: 1.75em;
    }
    .media__items {
        grid-template-columns: 100%;
        gap: 1.75em;
    }
    .media__items .media-item:nth-child(1) ~ .media-item {
        display: none;
    }
    .media__nav2 {
        margin-top: 1.75em;
    }
    .media__link {
        min-width: 8.5em;
        height: 1.8125em;
    }
    .media__big .media-item {
        display: block;
    }
    .media__big .media-item__img {
        padding-bottom: 90%;
    }
    .media__big .media-item__content {
        gap: 0.75em;
    }
    .media__big .media-item__title {
        font-size: 0.75338em;
    }
    .media__big .media-item__date {
        font-size: 0.46038em;
    }
    .media-item {
        display: grid;
        grid-template-columns: 5.5625em calc(100% - 5.5625em - 0.875em);
        gap: 0.875em;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    .media-item__img {
        border-radius: 0.61344em;
        padding-bottom: 79.8%;
    }
    .media-item__content {
        padding: 0;
        gap: 0.25em;
    }
    .media-item__title {
        font-size: 0.6875em;
    }
}
.stud-life {
    padding-top: 1em;
    overflow: hidden;
}
.stud-life-slider {
    margin-top: 1.81em;
}
@media screen and (min-width: 577px) {
    .stud-life-slider .swiper-container {
        width: 100%;
    }
    .stud-life-slider .swiper-wrapper {
        display: grid;
        grid-template-columns: repeat(4, calc(25% - 0.515625em));
        gap: 0.6875em;
        -webkit-transform: unset !important;
        -ms-transform: unset !important;
        transform: unset !important;
    }
    .stud-life-slider .swiper-slide {
        width: 100%;
        padding: 0;
    }
    .stud-life-slider .swiper-pagination {
        display: none;
    }
    /* custom */
    .stud-life-slider ._big {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 0;
    }
    /* custom */
}
.stud-life-slider ._small {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.5625em;
}
.stud-life-slider ._small .stud-card__img {
    height: 100%;
    padding-bottom: 60.4%;
}
.stud-life-slider ._small .stud-card__img:after {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-0.23%, rgba(101, 101, 101, 0.8)), color-stop(17.29%, rgba(101, 101, 101, 0.6)), color-stop(39.39%, rgba(101, 101, 101, 0))), hsla(0, 0%, 100%, 0.12);
    background: -o-linear-gradient(top, rgba(101, 101, 101, 0.8) -0.23%, rgba(101, 101, 101, 0.6) 17.29%, rgba(101, 101, 101, 0) 39.39%), hsla(0, 0%, 100%, 0.12);
    background: linear-gradient(180deg, rgba(101, 101, 101, 0.8) -0.23%, rgba(101, 101, 101, 0.6) 17.29%, rgba(101, 101, 101, 0) 39.39%), hsla(0, 0%, 100%, 0.12);
}
.stud-life-slider ._small .stud-card__title {
    font-size: 1.56594em;
}
.stud-life-slider ._small .stud-card__link span {
    font-size: 0.87031em;
}
.stud-life-slider ._small .stud-card__link img {
    width: 1.11206em;
    margin-left: 0.1em;
}
.stud-card {
    position: relative;
    color: #fff;
    display: block;
}
.stud-card:hover {
    color: #fff;
}
.stud-card__img {
    position: relative;
    padding-bottom: 132.7%;
    display: block;
    border-radius: 0.875em;
}
.stud-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.stud-card__img:after {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-0.23%, rgba(101, 101, 101, 0.8)), color-stop(17.29%, rgba(101, 101, 101, 0.6)), color-stop(39.39%, rgba(101, 101, 101, 0)));
    background: -o-linear-gradient(top, rgba(101, 101, 101, 0.8) -0.23%, rgba(101, 101, 101, 0.6) 17.29%, rgba(101, 101, 101, 0) 39.39%);
    background: linear-gradient(180deg, rgba(101, 101, 101, 0.8) -0.23%, rgba(101, 101, 101, 0.6) 17.29%, rgba(101, 101, 101, 0) 39.39%);
}
.stud-card__top {
    position: absolute;
    padding: 0.81em;
    top: 0;
    left: 0;
    width: 100%;
}
.stud-card__title {
    font-size: 1.93994em;
    line-height: 104%;
}
.stud-card__bottom {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 0.81em;
}
.stud-card__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.stud-card__link:hover {
    color: #fff;
    opacity: 0.9;
}
.stud-card__link span {
    font-size: 1.45494em;
    line-height: 120%;
}
.stud-card__link img {
    width: 1.86em;
    margin-left: 0.2em;
}
@media screen and (max-width: 992px) and (min-width: 577px) {
    .stud-life-slider .swiper-wrapper {
        grid-template-columns: repeat(2, calc(50% - 0.34375em));
    }
}
@media screen and (max-width: 576px) {
    .media__inner,
    .media__items {
        grid-template-columns: 100%;
    }
    .stud-life-slider .swiper-pagination {
        bottom: unset;
        top: 0;
        padding: 0.5em 0.625em;
        left: 0;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .stud-life-slider .swiper-pagination-bullet {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        background-color: #fff;
        opacity: 0.1;
        width: auto;
        height: 0.3125em;
        border-radius: 0.25em;
        margin: 0 0.375em !important;
    }
    .stud-life-slider .swiper-pagination-bullet-active {
        opacity: 1;
    }
    .stud-card {
        font-size: 0.896em;
    }
    .stud-card__top {
        padding: 1.5em 1.125em;
    }
}
.teachers {
    padding-top: 5.5em;
    position: relative;
    z-index: 2;
    overflow: hidden;
}
.teachers-slider {
    margin-top: 1.5em;
}
.teachers-slider .swiper-slide {
    width: 13.4375em;
}
.teachers-slider .swiper-nav {
    margin-bottom: 1.1em;
}
.teacher-card {
    border-radius: 1.266em;
    background-color: #f5f5f5;
    padding: 0 0.75em 0.75em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}
.teacher-card__img {
    position: relative;
    padding-bottom: 92.2%;
    display: block;
    border-radius: 1.266em 1.266em 0 0;
    background: #e9e9e9;
    width: calc(100% + 1.5em);
    margin: 0 0 0.75em -0.75em;
}
.teacher-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.teacher-card__name {
    font-size: 0.905em;
    line-height: 110%;
}
.teacher-card__desc {
    font-size: 0.625em;
    line-height: 120%;
    font-weight: 500;
    margin-top: 2.5em;
}
.teacher-card__nav {
    padding-top: 1.15em;
    margin-top: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.teacher-card__link {
    padding: 0 0.5em;
    height: 1.16519em;
    background-color: #e0e1e5;
    color: #32343a;
}
.teacher-card__link:hover {
    background-color: hsl(228, 8.7719298246%, 78.8235294118%);
    color: #32343a;
}
.teacher-card__link span {
    font-size: 0.53806em;
}
.teacher-card__link img {
    width: 0.85631em;
    margin-left: 0.25em;
}
.boss {
    padding-top: 6.25em;
    position: relative;
}
.boss__bg {
    position: absolute;
    z-index: -1;
    width: 86.125em;
    top: 8em;
    right: 1em;
}
.boss__inner {
    display: grid;
    grid-template-columns: 24em calc(100% - 26.25em);
    gap: 1.25em;
}
.boss__col {
    position: relative;
}
.boss__col:before {
    content: "";
    position: absolute;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/quote.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center;
    width: 7.25em;
    height: 6.0625em;
    top: -3em;
    left: -0.44em;
}
.boss__col2 {
    max-width: 47.62em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.boss__img {
    width: 100%;
    display: block;
    border-radius: 1.46281em;
}
.boss__desc {
    font-size: 1.46281em;
    line-height: 110%;
    letter-spacing: -0.02em;
}
.boss__bottom {
    margin-top: auto;
    padding-top: 1.75em;
}
.boss__desc2 {
    color: #737373;
    font-size: 1.01281em;
    line-height: 110%;
    letter-spacing: -0.02em;
}
.boss__desc2 span {
    font-weight: 700;
    color: #32343a;
}
@media screen and (max-width: 992px) {
    .teachers {
        padding-top: 1.25em;
    }
    .teachers-slider {
        margin-top: 1.1em;
    }
    .teachers-slider .swiper-nav {
        display: none;
    }
    .boss {
        padding-top: 4.5em;
    }
    .boss__bg {
        display: none;
    }
    .boss__inner {
        grid-template-columns: 21em calc(100% - 22em);
        gap: 1em;
    }
    .boss__col:before {
        font-size: 0.875em;
    }
    .boss__img {
        border-radius: 1.25em;
    }
    .boss__desc {
        font-size: 1em;
    }
}
@media screen and (max-width: 576px) {
    .boss__inner {
        grid-template-columns: 100%;
    }
}
.opportunities {
    padding-top: 1.5em;
    overflow: hidden;
}
.opportunities .info-block {
    max-width: 28.5em;
}
.opportunities .tabs {
    margin-top: 1em;
}
.opportunities .tab-content {
    margin-top: 1.5em;
}
.opportunity-card {
    height: 100%;
    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: 1.26531em;
    background: #f5f5f5;
    position: relative;
}
.opportunity-card__top {
    padding: 1.16em;
}
.opportunity-card__img {
    margin-top: auto;
    border-radius: 0 0 1.26531em 1.26531em;
    position: relative;
    padding-bottom: 58.7%;
    display: block;
}
.opportunity-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.opportunity-card__title {
    font-size: 1.26531em;
    line-height: 120%;
    font-weight: 700;
}
.opportunity-card__desc {
    font-size: 0.949em;
    line-height: 120%;
    padding: 1em 0 0.5em;
}
.opportunity-card__link {
    position: absolute;
    right: 0.875em;
    bottom: 1.6em;
    width: 3.04138em;
    height: 3.04138em;
    border-radius: 50%;
    background-color: #fff;
    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;
}
.opportunity-card__link:hover {
    background-color: #e5e5e5;
}
.opportunity-card__link img {
    width: 2.17238em;
}
.opportunities-slider .swiper-slide {
    width: 25%;
    /* custom */
    padding-right: 0.875em;
    /* custom */
}
.opportunities-slider .swiper-container {
    width: calc(100% + 1.875em);
}
.why {
    overflow: hidden;
    padding-top: 3.36em;
}
@media screen and (min-width: 993px) {
    .why2 .why-slider .swiper-slide {
        width: 39.625em;
    }
    .why2 .why-card {
        padding-right: 4em;
        position: relative;
    }
    .why2 .why-card__icon {
        right: 1em;
        bottom: 0.8125em;
        position: absolute;
        height: auto;
        width: 3.125em;
    }
    .stat-slider .swiper-container {
        padding-right: 0.625em;
    }
    .stat-slider .swiper-wrapper {
        display: grid;
        grid-template-columns: repeat(4, calc(25% - 0.703125em));
        gap: 2em 0.9375em;
        -webkit-transform: unset !important;
        -ms-transform: unset !important;
        transform: unset !important;
    }
    .stat-slider .swiper-slide {
        padding: 0;
    }
}
.why-slider {
    margin-top: 1.875em;
}
.why-slider .swiper-slide {
    width: 26.125em;
}
.why-card {
    border-radius: 1.266em;
    background: #f5f5f5;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1.58em;
}
.why-card__top {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.79em;
    margin-bottom: 1.3em;
}
.why-card__desc,
.why-card__title {
    line-height: 110%;
    letter-spacing: -0.02em;
}
.why-card__title {
    font-size: 1.25em;
    font-weight: 700;
}
.why-card__desc {
    font-size: 0.98713em;
}
.why-card__icon {
    height: 4em;
    display: block;
    margin: auto 0 0 auto;
}
@media screen and (max-width: 992px) {
    .opportunities {
        padding-top: 1.25em;
    }
    .opportunities .tab-content,
    .opportunities .tabs {
        margin-top: 0.7em;
    }
    .opportunity-card {
        border-radius: 1em;
    }
    .opportunity-card__top {
        padding: 0.875em 0.75em;
    }
    .opportunity-card__img {
        border-radius: 0 0 1em 1em;
        padding: 0;
        height: 9.36em;
    }
    .opportunity-card__title {
        font-size: 1em;
    }
    .opportunity-card__desc {
        font-size: 0.75em;
    }
    .opportunity-card__link {
        right: 0.7em;
        bottom: 1.29em;
        width: 2.4138em;
        height: 2.4138em;
    }
    .opportunity-card__link img {
        width: 1.7238em;
    }
    .opportunities-slider .swiper-slide {
        width: 16.625em;
    }
    .why {
        padding-top: 1.25em;
    }
    .why-slider {
        margin-top: 0.875em;
    }
    .why-slider .swiper-slide {
        width: 18.825em;
    }
    .why-card {
        border-radius: 1.25em;
        padding: 1.22em;
    }
    .why-card__top {
        gap: 0.61em;
        margin-bottom: 1.15em;
    }
    .why-card__title {
        font-size: 1.28994em;
        font-weight: 600;
    }
    .why-card__desc {
        font-size: 0.76463em;
    }
    .why-card__icon {
        height: 3em;
    }
}
.stat {
    padding-top: 9em;
}
.stat__title {
    font-size: 1.5625em;
    line-height: 120%;
    padding-right: 2em;
}
.stat-slider {
    margin-top: 2em;
}
.stat-card {
    height: 8.86194em;
    position: relative;
    border-radius: 1.25em;
    border: 1px solid #ededed;
    padding: 1em 1.5em;
    font-weight: 700;
}
.stat-card__bg {
    border-radius: 1.25em;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 0.13;
    z-index: -1;
}
.stat-card__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 0.5em;
}
.stat-card__title {
    font-size: 3.03838em;
    line-height: 120%;
    color: #e63542;
}
.stat-card__desc {
    font-size: 0.9495em;
    line-height: 120%;
    color: #4d4d4d;
}
.stat-card__check {
    height: 3.22825em;
    margin: -0.5em 0 0.5em;
}
.stat-card__arrow {
    width: 2.4em;
    height: 2.4em;
    background-color: #e63542;
    border-radius: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    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;
}
.stat-card__arrow img {
    width: 1.5em;
}
.education {
    padding-top: 1.25em;
}
.education__grid {
    margin-top: 1.375em;
    display: grid;
    grid-template-columns: repeat(5, calc(20% - 0.75em));
    gap: 0.9375em;
}
.education-card {
    border-radius: 1.266em;
    background:-o-linear-gradient(147deg,#4b4e55 0%,#9ab1d5 54.34%);
    background:linear-gradient(147deg,#4b4e55 0%,#9ab1d5 54.34%);
    height: 11.2845em;
    padding: 0.7em;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
}
.education-card:hover {
    color: #fff;
}
.education-card__img {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: auto;
    border-radius: inherit;
}
.education-card__title {
    font-size: 1.39256em;
    line-height: 120%;
    max-width: 95%;
}
.education-card__bottom,
.education-card__title {
    position: relative;
    z-index: 2;
}
.education-card__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.education-card__count {
    font-size: 1.12844em;
}
.education-card__link {
    width: 2.25688em;
    height: 2.25688em;
    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;
    border-radius: 50%;
    background-color: #fff;
}
.education-card__link img {
    width: 1.8055em;
}
@media screen and (max-width: 992px) {
    .stat {
        padding-top: 2.75em;
        overflow: hidden;
    }
    .stat__title {
        font-size: 1.5em;
        padding-right: 0;
    }
    .stat-slider {
        margin-top: 0.875em;
    }
    .stat-slider .swiper-slide {
        width: 13.125em;
    }
    .stat-card {
        height: 5.52081em;
        border-radius: 0.625em;
        padding: 0.5em 1em;
    }
    .stat-card__bg {
        border-radius: 0.625em;
    }
    .stat-card__top {
        margin-bottom: 0.25em;
    }
    .stat-card__title {
        font-size: 1.893em;
    }
    .stat-card__desc {
        font-size: 0.80819em;
    }
    .stat-card__check {
        height: 1.875em;
        margin: 0 0 0.25em;
    }
    .stat-card__arrow {
        font-size: 0.75em;
    }
    .education__grid {
        margin-top: 1em;
        grid-template-columns: repeat(3, calc(33.3333333333% - 0.25em));
        gap: 0.375em;
    }
    .education-card {
        font-size: 0.625em;
    }
}
@media screen and (max-width: 576px) {
    .education .h2 {
        max-width: 85%;
    }
    .education__grid {
        grid-template-columns: repeat(2, calc(50% - 0.1875em));
    }
    .education-card {
        border-radius: 0.625em;
        height: 7.3125em;
        padding: 0.5em 0.25em;
        font-size: 1em;
    }
    .education-card:nth-child(3) {
        grid-column: 1/-1;
    }
    .education-card__title {
        font-size: 0.90169em;
    }
    .education-card__bottom {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    .education-card__count {
        font-size: 0.73069em;
    }
    .education-card__link {
        width: 1.46131em;
        height: 1.46131em;
    }
    .education-card__link img {
        width: 1.16em;
    }
}
.departments {
    padding-top: 3.25em;
}
.departments__grid {
    margin-top: 1.92em;
    display: grid;
    grid-template-columns: repeat(3, calc(33.3333333333% - 0.76em));
    gap: 1.14em;
}
.department-card {
    border-radius: 1.26719rem;
    background: -o-linear-gradient(262deg, #99a7be 20.47%, #4b4e55 94.34%);
    background: linear-gradient(188deg, #99a7be 20.47%, #4b4e55 94.34%);
    height: 14.5095em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 1em 1.5em;
    color: #fff;
    overflow: hidden;
    position: relative;
}
.department-card:after {
    opacity: 0;
    z-index: 4;
}
.department-card:hover {
    color: #fff;
}
.department-card:hover:after {
    opacity: 1;
}
.department-card:hover .department-card__bg {
    opacity: 1;
    pointer-events: unset;
}
.department-card__bg,
.department-card__img {
    position: absolute;
    top: 0;
    left:0;
    width:100%
}

.department-card__bg {
    border-radius: inherit;
    z-index: 3;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
}
.department-card__wrap {
    position: relative;
    z-index: 5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
}
.department-card__title {
    font-size: 1.26719em;
    line-height: 120%;
}
.department-card__arrow {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-left: 1em;
    width: 3.20944em;
    height: 3.20944em;
    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;
    border-radius: 50%;
    background-color: #fff;
}
.department-card__arrow img {
    width: 2.57em;
}
.open-days {
    padding-top: 4em;
    overflow: hidden;
}
.open-days__inner {
    display: grid;
    grid-template-columns: 20.3em calc(100% - 20.71em);
    gap: 0.875em 0.68em;
}
.open-days__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0.81em;
    position: relative;
    z-index: 2;
}
.open-days__bottom {
    margin-top: auto;
    padding-top: 3.25em;
    max-width: 16em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.open-days__desc {
    font-size: 1em;
    line-height: 119%;
}
.open-days__link {
    margin-top: 1.21em;
    width: 13.86em;
}
.open-days__link span {
    font-size: 0.875em;
}
.program-slider .swiper-slide {
    width: 21em;
}
.program-card {
    -webkit-box-shadow: 0 2.026px 12.862px 0 rgba(0, 0, 0, 0.09);
    box-shadow: 0 2.026px 12.862px 0 rgba(0, 0, 0, 0.09);
    background-color: #fff;
    border-radius: 1.25em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 22em;
    position: relative;
}
.program-card__top {
    padding: 0.8em;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.program-card__badge {
    position: absolute;
    padding: 0 1.25em 0 0.58em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 2.70694em;
    background: #fff;
    height: 1.875em;
    color: #bdbdbd;
    font-weight: 700;
    left: 0.65em;
    bottom: 0.65em;
    z-index: 2;
}
.program-card__badge img {
    width: 0.875em;
    margin-right: 0.84em;
}
.program-card__title {
    font-size: 1.125em;
    line-height: 110%;
    font-weight: 700;
}
.program-card__date {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: auto;
    color: #aaa;
}
.program-card__date span {
    font-size: 1em;
    line-height: 120%;
}
.program-card__date img {
    width: 1.0625em;
    margin-right: 0.25em;
}
.program-card__img {
    margin-top: auto;
    position: relative;
    padding-bottom: 66.5%;
    display: block;
    border-radius: 0 0 1.25em 1.25em;
}
.program-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
@media screen and (max-width: 992px) {
    .departments {
        padding-top: 1.375em;
    }
    .departments__grid {
        margin-top: 1em;
        grid-template-columns: repeat(2, calc(50% - 0.3125em));
        gap: 0.625em;
    }
    .department-card {
        border-radius: 1.5rem;
        height: 11.3125em;
        padding: 1em 1.22em;
    }
    .department-card__title {
        font-size: 1em;
    }
    .department-card__arrow {
        width: 1.783em;
        height: 1.783em;
    }
    .department-card__arrow img {
        width: 1.25em;
    }
    .open-days {
        padding-top: 2.6em;
    }
    .open-days__inner {
        grid-template-columns: 100%;
    }
    .open-days__col {
        padding: 0;
    }
    .open-days__bottom {
        max-width: 100%;
    }
    .open-days__desc {
        font-size: 0.875em;
    }
    .open-days__link {
        margin-top: 1.69em;
        width: 12.5em;
        padding: 0;
    }
    .open-days__link span {
        font-size: 0.91em;
    }
    .program-slider .swiper-slide {
        width: 16.625em;
    }
    .program-card {
        border-radius: 1em;
        min-height: 18em;
    }
    .program-card__top {
        padding: 0.625em;
        gap: 0.75em;
    }
    .program-card__badge {
        font-size: 0.85em;
    }
    .program-card__title {
        font-size: 0.8855em;
    }
    .program-card__date {
        padding: 0 0.36em;
        border-radius: 2.13063em;
        height: 1.478rem;
    }
    .program-card__date span {
        font-size: 0.68869em;
    }
    .program-card__date img {
        width: 0.73em;
        margin-left: 0.32em;
    }
    .program-card__img {
        border-radius: 0 0 1em 1em;
    }
}
@media screen and (max-width: 576px) {
    .departments__grid {
        grid-template-columns: 100%;
    }
}
.mba {
    overflow: hidden;
    padding: 2.5em 0;
    background: #f5f5f6;
    margin-top: 4em;
}
.mba._mt0 {
    margin-top: 0;
}
.mba__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.mba__count {
    padding: 0 1.14em;
    border-radius: 1.7935em;
    background: #e0e1e5;
    -webkit-backdrop-filter: blur(15.7826929092px);
    backdrop-filter: blur(15.7826929092px);
    height: 1.78em;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    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;
    margin-left: 0.67em;
}
/* custom */
.mba__count img {margin-right: 0.54em;}
/* custom */
.mba__count span {
    font-size: 0.71738em;
}
.mba .tabs {
    margin-top: 1.5em;
}
.mba-slider {
    margin-top: 1.25em;
}
.mba-slider .swiper-container {
    width: calc(100% + 1.25em);
}
.mba-slider .swiper-slide {
    width: 25%;
    padding-right: 1.25em;
}
.mba-card {
    background-color: #e63542;
    color: #fff;
    padding: 1.5em 1.25em 1.25em;
    border-radius: 1.25em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    min-height: 12em;
    position: relative;
    overflow: hidden;
}
.mba-card__img {
    position: absolute;
    height: 100%;
    right: 0;
    bottom: 0;
}
.mba-card__bottom,
.mba-card__title {
    position: relative;
    z-index: 2;
}
.mba-card__title {
    font-size: 1.625em;
    line-height: 120%;
}
.mba-card__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.mba-card__count {
    font-size: 0.875em;
    line-height: 120%;
}
.mba-card__arrow {
    width: 2.15219em;
    height: 2.15219em;
    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;
    background-color: #fff;
    border-radius: 50%;
}
.mba-card__arrow img {
    width: 1.75488em;
}
.filter {
    margin-top: 1.18em;
    position: relative;
}
.filter__row {
    display: grid;
    gap: 0.5em;
}
.filter__row1 {
    grid-template-columns: 8.5em 20em 21em calc(100% - 64em) 12.5em;
}
.filter__row1:before {
    content: "";
}
.filter__row2 {
    margin-top: 0.5em;
    grid-template-columns: 14.5em 14.5em calc(100% - 61em) 17.5em 12.5em;
}
.filter__row2:after {
    content: "";
}
.filter__btn {
    border-radius: 5.61344em;
    border: 1px solid #b3b4b7;
    height: 2.8125em;
    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;
}
.filter__btn span {
    font-size: 1em;
}
@media screen and (min-width: 993px) {
    .program-slider .swiper-slide {
        opacity: 0;
        pointer-events: none;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .program-slider .swiper-slide-active,
    .program-slider .swiper-slide-active ~ .swiper-slide {
        opacity: 1;
        pointer-events: unset;
    }
    .filter__row {
        min-height: 2.8em;
    }
    .filter ._master {
        grid-template-columns: 20.75em 20.75em 0 !important;
    }
    .filter ._master-refresh {
        right: unset;
        left: 42.5em;
    }
    .filter__items {
        display: block !important;
    }
    .filter__btn {
        position: absolute;
    }
    .filter__btn--search {
        top: 0;
        left: 0;
        width: 8.5em;
    }
    .filter__btn--refresh {
        bottom: 0;
        right: 0;
        width: 12.5em;
    }
    .filter__btn--filter {
        display: none;
    }
}
.param-select {
    position: relative;
}
.param-select__show {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 1em;
    border-radius: 5.61344em;
    border: 1px solid #b3b4b7;
    background: #f5f5f6;
    height: 2.8em;
    position: relative;
    cursor: pointer;
}
.param-select__show svg {
    width: 1em;
    margin-left: 1em;
}
.param-select__current {
    font-size: 1em;
}
.param-select__clear {
    position: absolute;
    top: 50%;
    right: 2.5em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    opacity: 0;
    pointer-events: none;
    width: 0.75em;
    height: 0.75em;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/clear.svg);
}
.param-select__hidden {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 0.5em;
    overflow-y: auto;
    min-width: 250px;
    max-height: 25em;
    padding: 1em;
    -webkit-box-shadow: 0 2.037px 12.936px 0 rgba(0, 0, 0, 0.09);
    box-shadow: 0 2.037px 12.936px 0 rgba(0, 0, 0, 0.09);
    background-color: #fff;
    z-index: 2;
    width: 100%;
    border-radius: 1.25em;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
}
.param-select__items {
    display: grid;
    grid-template-columns: 100%;
    gap: 1em;
}
.param-select._open .param-select__hidden,
.param-select._selected .param-select__clear {
    opacity: 1;
    pointer-events: unset;
}
@media screen and (max-width: 992px) {
    .mba {
        padding-top: 1.25em;
    }
    .mba-slider {
        margin-top: 1em;
    }
    .mba-slider .swiper-container {
        width: calc(100% + 0.75em);
    }
    .mba-slider .swiper-slide {
        width: 13.85em;
        padding-right: 0.75em;
    }
    .mba-card {
        padding: 1.125em 0.85em;
        border-radius: 1.25em;
        min-height: 7.6875em;
    }
    .mba-card__title {
        font-size: 0.78325em;
    }
    .mba-card__count {
        font-size: 0.61013em;
    }
    .mba-card__arrow {
        width: 1.38294em;
        height: 1.38294em;
    }
    .mba-card__arrow img {
        width: 1.12763em;
    }
    .filter {
        display: grid;
        grid-template-columns: 100%;
        gap: 0.3125em;
    }
    .filter__row {
        grid-template-columns: 100%;
        gap: 0.3125em;
    }
    .filter__row:after,
    .filter__row:before {
        display: none;
    }
    .filter__btn {
        width: 100%;
        border-color: #a2a2a2;
        height: 2em;
        color: #a2a2a2;
    }
    .param-select {
        font-size: 0.75em;
    }
}
@media screen and (max-width: 576px) {
    .mba__top {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
}
.catalog {
    margin-top: 1em;
}
.catalog__items {
    display: grid;
    grid-template-columns: repeat(3, calc(33.3333333333% - 0.4166666667em));
    gap: 0.625em;
}
.catalog-card {
    border-radius: 1.27325em;
    background: #fff;
    -webkit-box-shadow: 0 2.037px 12.936px 0 rgba(0, 0, 0, 0.09);
    box-shadow: 0 2.037px 12.936px 0 rgba(0, 0, 0, 0.09);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    min-height: 11.05em;
    padding: 0.75em;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.catalog-card:hover {
    background-color: #e63542;
    color: #fff;
}
.catalog-card:hover .catalog-card__desc,
.catalog-card:hover .catalog-card__top {
    color: #fff;
}
.catalog-card:hover .catalog-card__date {
    color: #32343a;
    background-color: #fff;
}
.catalog-card:hover path {
    fill: #fff;
}
.catalog-card__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 1.25em;
    color: #aaa;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.catalog-card__type,
.catalog-card__type2 span {
    font-size: 0.88119em;
    line-height: 120%;
}
.catalog-card__type2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    /* custom */
    min-width: 120px;
    justify-content: right;
    /* custom */
}
.catalog-card__type2 img,
.catalog-card__type2 svg {
    width: auto;
    height: 0.95538em;
    margin-right: 0.1em;
}
.catalog-card__title {
    font-size: 1.13294em;
    line-height: 130%;
    font-weight: 700;
    max-width: 19em;
}
.catalog-card__date {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    margin-top: auto;
    padding: 0 1em;
    height: 2.2em;
    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;
    background-color: #e63542;
    border-radius: 1.27325em;
    color: #fff;
}
.catalog-card__date span {
    font-size: 0.8125em;
}
.catalog-card__desc {
    color: #c7c7c7;
    font-size: 0.87569em;
    line-height: 120%;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
@media screen and (min-width: 993px) {
    .mba2 .filter__row1 {
        grid-template-columns: 8.5em 20em 16.5em calc(100% - 65.5em) 18.5em;
    }
    .mba2 .filter__row2 {
        margin-top: 0.5em;
        grid-template-columns: 7.5em 10.5em calc(100% - 67em) 18em 21em 7.5em;
    }
    .mba2 .filter__btn--refresh {
        width: 7.5em;
    }
}
@media screen and (max-width: 992px) {
    .catalog {
        margin-top: 1.125em;
    }
    .catalog__items {
        grid-template-columns: repeat(2, calc(50% - 0.46875em));
        gap: 0.9375em;
    }
    .catalog-card {
        position: relative;
    }
    .catalog-card__type2 {
        position: absolute;
        right: 0.75em;
        bottom: 1em;
    }
}
@media screen and (max-width: 576px) {
    .catalog__items {
        grid-template-columns: 100%;
    }
}
.consult {
    padding-top: 1em;
}
.consult__inner {
    padding: 1.5em 2.5em;
    border-radius: 1.266em;
    background: -o-linear-gradient(69deg, #4a4a52 6.46%, #464646 102.85%);
    background: linear-gradient(21deg, #4a4a52 6.46%, #464646 102.85%);
    position: relative;
    color: #fff;
}
.consult__inner:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/consult-bg.svg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: 0 0;
}
.consult__top {
    max-width: 38em;
    display: grid;
    grid-template-columns: 100%;
    gap: 1em;
}
.consult__desc {
    font-size: 1em;
    line-height: 120%;
}
.consult__img {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 33em;
}
._full {
    grid-column: 1/-1;
}
.consult-form {
    margin-top: 1.5em;
    max-width: 39.25em;
    position: relative;
    z-index: 2;
}
.consult-form__fields {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.625em;
    position: relative;
}
.consult-form .fg input,
.consult-form .fg select {
    border: none;
    background-color: #fff;
}
.consult-form__btn {
    position: absolute;
    bottom: 0;
    left: 100%;
    margin-left: 0.625em;
    height: 3.16em;
    width: 14.8em;
}
.consult-form__btn span {
    font-size: 0.875em;
}
.consult-form__checks {
    display: grid;
    grid-template-columns: 100%;
    gap: 1em;
    margin: 2em 0 1em;
}
.consult-form__checks label:before {
    border-color: #fff;
    background-color: #fff;
}
.consult-form__hint {
    color: #8c8c8c;
    font-size: 0.633em;
    line-height: 120%;
}
.credit {
    padding-top: 1em;
}
.credit__inner {
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 0.5625em));
    gap: 1em 1.125em;
    margin-top: 1em;
}
.credit__col {
    background: -o-linear-gradient(99deg, #9ab1d5 10.65%, #4b4e55 192.4%);
    background: linear-gradient(351deg, #9ab1d5 10.65%, #4b4e55 192.4%);
}
.credit__col2 {
    background-color: #e63542;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/credit-info-bg.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: 0 0;
}
.credit__col,
.credit__col2 {
    border-radius: 1.25em;
    padding: 2.5em;
    color: #fff;
}
@media screen and (max-width: 992px) {
    .consult__inner {
        padding: 0.625em;
        border-radius: 1.25em;
    }
    .consult__inner:before {
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/consult-bg2.svg);
        background-size: 100% auto;
    }
    .consult__top {
        gap: 0.5em;
    }
    .consult__desc {
        font-size: 0.625em;
    }
    .consult__img {
        display: none;
    }
    .consult-form {
        margin: 1em 0 0.75em;
        max-width: 100%;
    }
    .consult-form__btn {
        grid-column: 1/-1;
        margin: 0;
        position: static;
        height: 2.875em;
        width: 100%;
    }
    .consult-form__checks {
        gap: 0.5em;
        margin-top: 1em;
    }
    .consult-form__checks label:before {
        top: 0.25em;
    }
    .credit {
        padding-top: 3.125em;
    }
    .credit__inner {
        grid-template-columns: 100%;
        margin-top: 0.75em;
    }
    .credit__col,
    .credit__col2 {
        padding: 1.25em 1em;
    }
}
@media screen and (max-width: 576px) {
    .consult-form__fields {
        grid-template-columns: 100%;
        gap: 0.5em;
    }
    .credit__col2 {
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/credit-info-bg2.svg);
    }
}
.calc-slider {
    margin-bottom: 3.17em;
}
.calc-slider:last-child {
    margin-bottom: 0;
}
.calc-slider__output {
    border-radius: 0.9495em 0.9495em 0 0;
    background: #72829c;
    padding: 0 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 4.25em;
    margin-top: 1.25em;
}
.calc-slider__output span {
    font-size: 0.88619em;
}
.calc-slider__nums {
    margin-top: 0.7em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.calc-slider__num-item {
    font-size: 0.633em;
    line-height: 120%;
}
.calc-slider .js-slider {
    width: 100%;
    background-color: #657692;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    height: 0.1875em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: 0;
}
.calc-slider .js-slider .noUi-connect {
    background-color: #c1d2ec;
}
.calc-slider .js-slider .noUi-handle {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    background-color: #fff;
    width: 1.7em;
    height: 1.7em;
    top: -0.7em !important;
    right: -0.7em !important;
    border-radius: 50%;
    cursor: pointer;
}
.calc-slider .js-slider .noUi-handle:before {
    opacity: 0;
    width: 300%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.calc-slider .js-slider .noUi-handle:after {
    display: none;
}
.credit-info__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.credit-info__title {
    font-size: 1.13938em;
    line-height: 120%;
}
.credit-info__logo {
    width: 7.75em;
    margin-top: -1.5em;
}
.credit-info__row {
    margin-top: 0.5em;
    display: grid;
    grid-template-columns: 50% 50%;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.credit-info__line {
    height: 1px;
    background-color: #fff;
    opacity: 0.32;
    margin: 2.32em 0 0.85em;
}
.credit-info__bottom {
    margin-top: 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.credit-info__btn {
    margin-right: 1.25em;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 18em;
    height: 3.48em;
    background-color: #fff;
    color: #32343a;
    padding: 0;
}
.credit-info__btn span {
    font-size: 0.9495em;
}
.credit-info__hint {
    font-size: 0.633em;
    line-height: 120%;
    opacity: 0.52;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
.credit-item__top {
    margin-bottom: 0.625em;
    margin-top: 0.52em;
}
.credit-item__top:first-child {
    margin-top: 0;
}
.credit-item__num {
    font-size: 3.03838em;
}
.credit-item__period {
    font-size: 0.88619em;
    opacity: 0.52;
}
.credit-item__desc {
    font-size: 0.82288em;
    line-height: 120%;
    opacity: 0.68;
}
@media screen and (max-width: 992px) {
    .calc-slider {
        margin-bottom: 1.9em;
    }
    .calc-slider__title {
        font-size: 1.125em;
    }
    .calc-slider__output {
        height: 3em;
        margin-top: 0.75em;
        padding: 0 0.75em;
        border-radius: 0.48838em 0.48838em 0 0;
    }
    .calc-slider .js-slider {
        font-size: 0.9em;
    }
    .credit-info__title {
        font-size: 1.5em;
    }
    .credit-info__logo {
        width: 4em;
        margin-top: 0;
    }
    .credit-info__row {
        width: calc(100% + 0.75em);
        margin-top: 2.5em;
        grid-template-columns: 46% 48%;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .credit-info__line {
        margin: 2.5em 0 -1.25em;
    }
    .credit-item__top {
        margin: 0;
    }
    .credit-item__num {
        font-size: 1.79494em;
    }
    .credit-item__desc,
    .credit-item__period {
        font-size: 0.875em;
    }
}
@media screen and (max-width: 576px) {
    .credit-info__bottom {
        display: block;
    }
    .credit-info__btn {
        width: 100%;
        height: 2.875em;
        margin: 0 0 0.875em;
    }
}
.main {
    padding-top: 5.625em;
    position: relative;
}
.main__bg {
    position: absolute;
    top: -5em;
    left: 0;
    width: 100%;
    z-index: -1;
    max-width: 87em;
}
.main__inner {
    display: grid;
    grid-template-columns: 44.1875em calc(100% - 44.1875em);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.main__title {
    font-size: 3.03838em;
    line-height: 106%;
    letter-spacing: -0.02em;
    font-weight: 600;
}
.main-slider {
    width: 20em;
    margin: 0 auto;
    position: relative;
}
@media screen and (min-width: 993px) {
    .main-slider .swiper-pagination {
        bottom: unset;
        top: 100%;
        margin-top: 2.5em;
        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;
    }
    .main-slider .swiper-pagination-bullet {
        width: 0.625em;
        height: 0.625em;
        background-color: #d9d9d9;
        margin: 0 0.1875em !important;
        opacity: 0.4;
        border-radius: 0.3125em;
    }
    .main-slider .swiper-pagination-bullet-active {
        opacity: 1;
        width: 2em;
    }
    .main-slider .swiper-slide {
        opacity: 0;
        pointer-events: none;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .main-slider .swiper-slide-active,
    .main-slider .swiper-slide-next,
    .main-slider .swiper-slide-prev {
        opacity: 1;
    }
    .main-slider .swiper-slide-next {
        z-index: 2;
        pointer-events: unset;
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    .main-slider .swiper-slide-active {
        -webkit-transform: scale(0.9) translateX(-30%);
        -ms-transform: scale(0.9) translateX(-30%);
        transform: scale(0.9) translateX(-30%);
        opacity: 0.9;
    }
    .main-slider .swiper-slide-next + .swiper-slide {
        -webkit-transform: scale(0.9) translateX(-190%);
        -ms-transform: scale(0.9) translateX(-190%);
        transform: scale(0.9) translateX(-190%);
        opacity: 0.9;
    }
    .main-slider .swiper-slide-prev {
        -webkit-transform: scale(0.8) translateX(60%);
        -ms-transform: scale(0.8) translateX(60%);
        transform: scale(0.8) translateX(60%);
        opacity: 0.6;
    }
    .main-slider .swiper-slide-next + .swiper-slide + .swiper-slide {
        -webkit-transform: scale(0.8) translateX(-310%);
        -ms-transform: scale(0.8) translateX(-310%);
        transform: scale(0.8) translateX(-310%);
        opacity: 0.6;
    }
}
.main-slider .swiper-slide-next .main-card__progress span {
    -webkit-animation: 15s linear infinite fill-bar;
    animation: 15s linear infinite fill-bar;
}
.main-slider .swiper-nav {
    position: static;
}
.main-slider .swiper-button {
    position: absolute;
    background-color: #fff;
    width: 2.5em;
    height: 2.5em;
    border-radius: 50%;
}
.main-slider .swiper-button-prev {
    left: -1.5em;
}
.main-slider .swiper-button-next {
    right: -1.5em;
}
.main-card {
    position: relative;
    color: #fff;
    display: block;
}
.main-card:hover {
    color: #fff;
}
.main-card:hover .main-card__img img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
.main-card:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-radius: 1.5em;
    width: 100%;
    height: 16.7em;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(#71b1ed));
    background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0, #71b1ed 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0, #71b1ed 100%);
}
.main-card__img {
    border-radius: 1.5em;
    position: relative;
    padding-bottom: 170%;
    display: block;
    overflow: hidden;
}
.main-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
}
.main-card__content {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 1em;
    display: grid;
    grid-template-columns: 100%;
    gap: 2em;
    z-index: 3;
}
.main-card__title {
    font-size: 2.67013em;
    line-height: 106%;
    font-weight: 700;
    letter-spacing: -0.02em;
    text-transform: uppercase;
}
.main-card__desc,
.main-card__link span {
    font-size: 1.18675em;
    line-height: 106%;
    letter-spacing: -0.02em;
}
.main-card__link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: auto;
}
.main-card__link img {
    width: 1.55756em;
}
.main-card__link:hover {
    color: #fff;
    opacity: 0.8;
}
.main-card__progress {
    position: absolute;
    top: 1em;
    left: 1em;
    width: calc(100% - 2em);
    height: 0.3125em;
    background-color: hsla(0, 0%, 100%, 0.1);
    z-index: 3;
    border-radius: 1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.main-card__progress span {
    height: 100%;
    max-width: 100%;
    display: block;
    border-radius: inherit;
    background-color: #fff;
}
@-webkit-keyframes fill-bar {
    from {
        width: 0%;
    }
    to {
        width: 100%;
    }
}
@keyframes fill-bar {
    from {
        width: 0%;
    }
    to {
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .main {
        padding-top: 2.125em;
    }
    .main__inner {
        grid-template-columns: calc(100% - 22em) 21em;
        gap: 1.5em;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .main__title {
        font-size: 1.9375em;
    }
    .main-slider {
        overflow: hidden;
        border-radius: 1.5em;
    }
    .main-slider .swiper-nav {
        display: none;
    }
    .main-slider .swiper-container {
        width: calc(100% + 1em);
    }
    .main-slider .swiper-slide {
        padding-right: 1em;
    }
    .main-slider .swiper-pagination {
        position: absolute;
        top: 0;
        bottom: unset;
        left: 0;
        padding: 1em 0.5em;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        z-index: 3;
    }
    .main-slider .swiper-pagination-bullet {
        border-radius: 0.5em;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: 0.5em;
        height: 0.1875em;
        background-color: hsla(0, 0%, 100%, 0.1);
        opacity: 1;
        margin: 0 0.3125em !important;
    }
    .main-slider .swiper-pagination-bullet-active {
        background-color: #fff;
    }
    .main-card__progress {
        display: none;
    }
}
@media screen and (max-width: 576px) {
    .main {
        overflow: hidden;
    }
    .main__inner {
        grid-template-columns: 100%;
    }
}
.ratings {
    padding-top: 3.5em;
}
.ratings__top {
    max-width: 45em;
}
@media screen and (min-width: 993px) {
    .ratings__group {
        border-radius: 1.25em;
        background: #f5f5f6;
        padding: 1em;
        display: grid;
        grid-template-columns: repeat(5, calc(20% - 0.6em));
        gap: 0.75em;
    }
    .ratings__group--second {
        background: -o-linear-gradient(20deg, #9ab1d5 -23.54%, #4b4e55 216.55%);
        background: linear-gradient(70deg, #9ab1d5 -23.54%, #4b4e55 216.55%);
        grid-template-columns: repeat(3, calc(33.3333333333% - 0.5em));
        margin-top: 0.5em;
    }
}
.ratings-slider {
    margin-top: 0.86em;
}
.rating-card {
    padding: 0.75em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    border-radius: 1.22206em;
    border: 1px solid #e0e0e0;
    background: #fff;
    min-height: 8.53em;
}
.rating-card__date,
.rating-card__desc,
.rating-card__title {
    line-height: 106%;
    letter-spacing: -0.02em;
    position: relative;
    z-index: 2;
}
.rating-card__title {
    font-size: 1.57438em;
    font-weight: 700;
}
.rating-card__desc {
    font-size: 0.9375em;
    margin-top: 0.75em;
}
.rating-card__date {
    margin-top: auto;
    padding-top: 1em;
    font-size: 0.78719em;
    color: #f3f3f3;
}
.rating-card__img {
    position: absolute;
    max-height: 4.25em;
    max-width: 70%;
    right: 0.65em;
    bottom: 0;
}
.info {
    padding-top: 3em;
}
.info__grid {
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 0.3125em));
    gap: 0.625em;
}
.free-exam {
    /* custom */
    padding: 1.25em 0em 0em 1.25em;
    /* custom */
    background-color: #32343a;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/free-exam-bg.svg);
    background-size: 100% auto;
    background-position: 0 0;
    background-repeat: no-repeat;
    color: #fff;
    border-radius: 1.25em;
    display: grid;
    grid-template-columns: calc(100% - 22.125em) 21.5em;
    gap: 0.625em;
}
.free-exam__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    /* custom */
    padding-bottom: 1.24em;
    /* custom */
}

/* custom start */
.free-exam__col2 {
    position: relative; /* делаем родителя точкой отсчета для абсолютного позиционирования */
}

.free-exam__img {
    position: absolute;
    bottom: 0; /* прижимаем к низу */
    right: 0;  /* прижимаем к правому краю */
    max-width: 100%; /* чтобы изображение не выходило за границы родителя */
    height: auto;    /* сохраняем пропорции */
     width: 100%;
}
/* custom end */
.free-exam__title {
    font-size: 1.5em;
    line-height: 120%;
}
.free-exam__desc {
    font-size: 0.93956em;
    line-height: 120%;
    margin-top: 1em;
}
.free-exam__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: auto;
    padding-top: 1em;
}
.free-exam__link {
    width: 10em;
    height: 2.54em;
}
.free-exam__link span {
    font-size: 0.875em;
}
@media screen and (max-width: 992px) {
    .ratings {
        padding-top: 2.2em;
        overflow: hidden;
    }
    .ratings__group {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        margin-right: 0.65em;
    }
    .ratings__group:last-child {
        margin-right: 0;
    }
    .ratings__group--second .rating-card {
        width: 22.5em;
    }
    .ratings-slider {
        margin-top: 1.125em;
    }
    .ratings-slider .swiper-container {
        width: 100%;
    }
    .ratings-slider .swiper-slide {
        width: auto;
        padding: 0.75em 1em;
        border-radius: 1.12438em;
        background: -o-linear-gradient(128deg, #9ab1d5 19.63%, #4b4e55 139.24%);
        background: linear-gradient(322deg, #9ab1d5 19.63%, #4b4e55 139.24%);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .rating-card {
        width: 14.125em;
        border-radius: 1.125em;
        min-height: 7.7em;
        margin-right: 0.65em;
        height: auto;
    }
    .rating-card:last-child {
        margin-right: 0;
    }
    .rating-card__title {
        font-size: 1.41em;
    }
    .rating-card__desc {
        font-size: 0.84325em;
    }
    .rating-card__date {
        font-size: 0.70806em;
    }
    .rating-card__img {
        max-height: 3.75em;
    }
    .info {
        padding-top: 2em;
    }
    .info__grid {
        grid-template-columns: 100%;
    }
    .free-exam {
        padding: 1em 0.9375em;
        display: block;
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/free-exam-bg2.svg);
    }
    .free-exam__col2 {
        display: none;
    }
    .free-exam__title {
        font-size: 2.14525em;
    }
    .free-exam__desc {
        max-width: 17em;
    }
}
@media screen and (min-width: 993px) {
    .consult-form2 .consult-form__fields {
        grid-template-columns: 1fr 1fr 1fr 10em;
        gap: 0.4375em;
    }
    .consult-form2 .consult-form__btn {
        position: static;
        width: 100%;
        height: 100%;
        margin: 0;
    }
    .consult-form2 ._full {
        grid-column: span 3;
    }
    .consult-form2 .fg input,
    .consult-form2 .fg select {
        font-size: 0.75em;
        padding-left: 0.5em;
    }
    .how-apply ._type2 {
        grid-template-columns: repeat(7, calc(14.2857142857% - 0.6771428571em));
    }
}
.has-questions {
    padding: 1.25em;
    border-radius: 1.25em;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/has-questions-bg.svg), -o-linear-gradient(158deg, #9ab1d5 4.16%, #4b4e55 146.18%);
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/has-questions-bg.svg), linear-gradient(292deg, #9ab1d5 4.16%, #4b4e55 146.18%);
    background-size: 100% auto, cover;
    background-repeat: no-repeat;
    background-position: 0 0;
    color: #fff;
}
.has-questions .consult-form__hint {
    color: #d7d7d7;
}
.rules {
    padding-top: 1.75em;
}
.rules__grid {
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 0.34em));
    gap: 0.68em;
    margin-top: 1.4em;
}
.rules__items {
    display: grid;
    grid-template-columns: 100%;
    gap: 0.5em;
}
.materials {
    padding-top: 2.36em;
    overflow: hidden;
}
/* custom start */
.materials-slider {
    margin-top: 1em;
}

/* сохраняем ширину слайдов 20% */
.materials-slider .swiper-slide {
    width: 20%;
    display: flex; /* чтобы .material-card растягивалась по высоте слайда */
}

/* растягиваем карточку по высоте слайда */
.material-card {
    display: flex; /* ряд: иконка слева, текст справа */
    align-items: center; /* выравнивание по вертикали */
    padding: 0.5em; /* паддинги вокруг */
    border-radius: 0.625em;
    background: #f5f5f6;
    height: 100%; /* карточка тянется на всю высоту слайда */
    width: 100%;
    box-sizing: border-box; /* учитываем паддинги */
}

/* иконка слева */
.material-card img {
    width: 0.73069em;
    margin-right: 0.5em; /* отступ справа от иконки */
}

/* текст справа */
.material-card__title {
    font-size: 0.8125em;
    line-height: 120%;
}

/* scrollbar */
.materials-slider .swiper-scrollbar {
    margin-top: 1.22em;
}
/* custom end */
.how-apply {
    background-color: #f5f5f6;
    padding: 1em 0;
    margin-top: 2.625em;
}
.how-apply .tabs {
    margin-top: 0.85em;
}
.how-apply .tabs br {
    display: none;
}
.how-apply .tab-content {
    margin-top: 4em;
}
.how-apply__grid {
    display: grid;
    grid-template-columns: repeat(6, calc(16.6666666667% - 0.6583333333em));
    gap: 0.79em;
}
.step-card {
    position: relative;
    padding-bottom: 100%;
}
.step-card:after {
    content: "";
    position: absolute;
    left: 100%;
    bottom: 0;
    height: 100%;
    background: #aaa;
    width: 1px;
    margin-left: 0.38em;
}
.step-card__inner {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1.04706em;
    background: -o-linear-gradient(128deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    background: linear-gradient(322deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    padding: 0.75em;
    color: #fff;
}
.step-card__title {
    line-height: 110%;
    letter-spacing: -0.02em;
    font-weight: 700;
}
.step-card__date {
    position: absolute;
    bottom: 100%;
    right: -1em;
    color: #aaa;
    font-weight: 500;
    margin-bottom: 0.375em;
}
.step-card__date span {
    font-size: 1.04706em;
    line-height: 110%;
    letter-spacing: -0.02em;
}
.step-card._red .step-card__inner {
    background: #e63542;
}
@media screen and (max-width: 992px) {
    ._full-tablet {
        grid-column: 1/-1;
    }
    .has-questions {
        padding: 0.625em;
    }
    .rules {
        padding-top: 2.125em;
    }
    .rules__grid {
        grid-template-columns: 100%;
        margin-top: 1.1em;
    }
    .rules__items {
        gap: 0.68em;
    }
    .materials {
        padding-top: 1.5em;
    }
    .materials-slider {
        margin-top: 1.1em;
    }
    .materials-slider .swiper-slide {
        width: 17em;
    }
    .materials-slider .swiper-scrollbar {
        margin-top: 0.72em;
    }
    .how-apply .tab {
        min-width: 6em;
        padding: 0 1em;
    }
    .how-apply .tab span {
        font-size: 0.9375em;
    }
    .how-apply .tab br {
        display: unset;
    }
    .how-apply .tab-content {
        margin-top: 1.35em;
    }
    .how-apply__grid {
        grid-template-columns: 100%;
        gap: 0.35em;
        padding-left: 0.4em;
        position: relative;
    }
    .how-apply__grid:before {
        content: "";
        position: absolute;
        top: 0;
        right: 100%;
        height: 100%;
        width: 1px;
        background: #aaa;
    }
    .step-card {
        padding: 0;
        margin-top: 1.5em;
    }
    .step-card:after {
        display: none;
    }
    .step-card__inner {
        position: static;
        height: 6.8125em;
    }
    .step-card__date {
        right: unset;
        left: 0;
        margin-bottom: 0.215em;
    }
    .step-card._red .step-card__inner {
        background: #e63542;
    }
    .step-card._small {
        width: 75%;
    }
    .step-card._middle {
        width: 85%;
    }
}
@media screen and (max-width: 576px) {
    .has-questions {
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/has-questions-bg2.svg), -o-linear-gradient(158deg, #9ab1d5 4.16%, #4b4e55 146.18%);
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/has-questions-bg2.svg), linear-gradient(292deg, #9ab1d5 4.16%, #4b4e55 146.18%);
    }
    .how-apply .tabs__items {
        width: 100%;
    }
    .how-apply .tab {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}
.faculties {
    padding-top: 4.42em;
}
.faculties-slider {
    margin-top: 1em;
}
.faculties-slider .swiper-slide {
    width: 14.2857142857%;
}
.faculties-slider ._big {
    width: 28.5714285714%;
}
.faculty-card {
    padding: 0.75em;
    border-radius: 1em;
    border: 1px solid #e2e2e2;
    background-color: #f5f5f6;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.faculty-card__title {
    font-size: 1.125em;
    line-height: 103%;
}
.faculty-card__desc {
    color: #c7c7c7;
    font-size: 0.875em;
    line-height: 103%;
    margin-top: 0.25em;
}
.faculty-card__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.faculty-card__count {
    font-size: 0.875em;
    line-height: 103%;
}
.faculty-card__icon {
    width: 2.875em;
}
.bachelor-slider {
    overflow: hidden;
    border-radius: 1.25em;
}
.bachelor-slider .swiper-nav {
    right: 1.5em;
    bottom: 1.5em;
    margin: 0;
}
.bachelor-slider .swiper-button {
    border: 1px solid #666;
    background: rgba(28, 28, 28, 0.5);
    -webkit-backdrop-filter: blur(7.2065229416px);
    backdrop-filter: blur(7.2065229416px);
    margin-left: 1.8em;
}
.bachelor-slider .swiper-button.swiper-button-disabled {
    opacity: 1;
}
.bachelor-slider .swiper-button path {
    fill: #fff;
}
.bachelor-card {
    height: 28.28563em;
    position: relative;
    padding: 1em;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.bachelor-card__bg {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1.25em;
}
.bachelor-card__bg img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    -o-object-fit: cover;
    object-fit: cover;
}
.bachelor-card__bg ._view2 {
    display: none;
}
.bachelor-card__title {
    font-size: 4em;
    line-height: 106%;
    letter-spacing: -0.02em;
}
.bachelor-card__bottom {
    margin-top: auto;
    padding-top: 3.2em;
}
.bachelor-card__desc {
    font-size: 1em;
    line-height: 120%;
    /* custom start */
    max-width: 35em;
    /* custom end */
}
.bachelor-card__nav {
    display: grid;
    grid-template-columns: 19em 19em;
    gap: 0.75em;
    margin-top: 2.32em;
}
.bachelor-card__btn {
    height: 2.7em;
    padding: 0;
}
.bachelor-card__btn span {
    font-size: 1.03594em;
}
@media screen and (max-width: 992px) {
    .faculties {
        padding-top: 1.375em;
        overflow: hidden;
    }
    .faculties-slider {
        margin-top: 0.7em;
    }
    .faculties-slider .swiper-slide {
        width: 8.625em;
    }
    .faculties-slider ._big {
        width: 17.25em;
    }
    .faculty-card {
        padding: 0.57em;
        border-radius: 0.67em;
    }
    .faculty-card__title {
        font-size: 0.79725em;
    }
    .faculty-card__count,
    .faculty-card__desc {
        font-size: 0.62006em;
    }
    .faculty-card__icon {
        width: 2em;
    }
    .bachelor-slider .swiper-nav {
        right: 0.7em;
        bottom: 1.17em;
    }
    .bachelor-slider .swiper-button {
        margin-left: 0.69em;
    }
    .bachelor-card {
        font-size: 0.75em;
        height: 21em;
    }
}
@media screen and (max-width: 576px) {
    .bachelor-card {
        height: 29.8em;
        padding: 0.75em;
        font-size: 1em;
    }
    .bachelor-card__bg {
        border-radius: 0.9em;
    }
    .bachelor-card__bg ._view1 {
        display: none;
    }
    .bachelor-card__bg ._view2 {
        display: block;
    }
    .bachelor-card__title {
        font-size: 2.25em;
    }
    .bachelor-card__bottom {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .bachelor-card__desc {
        font-size: 0.875em;
        /* custom */
        max-width: 100%;
        /* custom */
    }
    .bachelor-card__nav {
        grid-template-columns: 12.875em;
        gap: 0.44em;
        margin-top: auto;
    }
    .bachelor-card__btn {
        height: 2.3125em;
    }
    .bachelor-card__btn span {
        font-size: 0.88656em;
    }
}
.online-edu {
    background-color: #e63542;
    height: 100%;
    padding: 0.75em;
    border-radius: 1em;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
}
.online-edu__img {
    position: absolute;
    right: 0.75em;
    bottom: 0.75em;
    width: 4.75em;
}
.online-edu__btn {
    padding: 0 1em;
    height: 2.25em;
}
.online-edu__btn span {
    font-size: 0.875em;
}
.consult2 {
    padding-top: 3em;
}
.consult2 .consult__inner {
    background: -o-linear-gradient(128deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    background: linear-gradient(322deg, #9ab1d5 19.63%, #4b4e55 139.24%);
}
.consult2 .consult-form__hint {
    color: #d7d7d7;
}
.career {
    padding-top: 1.75em;
}
.career__inner {
    /* custom */
    padding: 0px 1.33em 0px 2.83em;
    /* custom end */
    border-radius: 1.26875em;
    background-color: #32343a;
    background-image: url(/local/templates/ranepa_im2/assets2/css/../img/career-bg.svg);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 75.75em auto;
    display: grid;
    grid-template-columns: 44em 20.5em;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: #fff;
}
.career__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    /* custom */
    padding: 2em 0 2em;
    /* custom end */
}
.career .h2 {
    margin-bottom: auto;
}
/* custom */
.career__img {
    max-width: 100%;
    height: 100%;
    width: auto;
}
/* custom */
.career__desc {
    font-size: 1em;
    line-height: 120%;
    margin-top: 3em;
    max-width: 35em;
}
.career__link {
    width: 14.8em;
    height: 3.165em;
    margin-top: 1.5em;
}
@media screen and (max-width: 992px) {
    .online-edu {
        padding: 0.57em;
        border-radius: 0.67em;
    }
    .online-edu__img {
        width: 3.5em;
        right: 0.57em;
        bottom: 0.57em;
    }
    .online-edu__btn {
        font-size: 0.75em;
    }
    .career {
        padding-top: 0.625em;
    }
    .career__inner {
        padding: 1em 0.85em;
        border-radius: 1.26875em;
        grid-template-columns: 100%;
    }
    .career__col {
        padding: 0;
    }
    .career__col2 {
        display: none;
    }
    .career__desc {
        font-size: 0.93956em;
        margin-top: 2em;
    }
    .career__link {
        height: 2.54em;
    }
    .career__link span {
        font-size: 0.87688em;
    }
}
@media screen and (max-width: 576px) {
    .career__inner {
        background-image: url(/local/templates/ranepa_im2/assets2/css/../img/career-bg2.svg);
        background-position: left top;
        background-size: 100% auto;
    }
    .career .h2 {
        font-size: 1.5em;
    }
    .career__link {
        width: 100%;
    }
}
@media screen and (min-width: 993px) {
    .step-card._small .step-card__inner {
        height: calc(100% - 4.875em);
    }
    .step-card._middle .step-card__inner {
        height: calc(100% - 1.875em);
    }
    .consult2 .consult-form {
        max-width: 54em;
    }
    .consult2 .consult-form__fields {
        grid-template-columns: 1fr 1fr 1fr 14.75em;
        gap: 0.625em;
    }
    .consult2 .fg input,
    .consult2 .fg select {
        font-size: 1em;
        padding-left: 1em;
    }
    /* custom start */
    .bachelor-main2 .bachelor-card__desc {
        max-width: 37em;
    }
    /* custom end */
    .faculties2 .faculty-card {
        min-height: 8.25em;
    }
    .faculties2 .faculty-card__title {
        font-size: 1em;
    }
}
.for-companies {
    padding-top: 2em;
}
.for-companies__inner {
    padding: 2.75em 1.36em 1.63em;
    border-radius: 1.26875em;
    border: 1.002px solid #dfdfe0;
    background: #f5f5f6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
}
.for-companies__img {
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    display: block;
}
.for-companies__desc {
    margin-top: 2.5em;
    max-width: 49.2em;
    font-size: 1em;
    line-height: 120%;
}
.for-companies__link {
    width: 14.80813em;
    height: 3.165em;
    margin-top: 3.5em;
}
.dpo-center {
    padding-top: 1.65em;
}
.dpo-center__top {
    max-width: 52em;
}
.dpo-center-slider {
    margin-top: 1.5em;
}
.dpo-center-slider .swiper-slide {
    width: 16.6666666667%;
}
.dpo-card {
    background: #f5f5f5;
    border-radius: 1.1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}
.dpo-card__img {
    position: relative;
    padding-bottom: 76%;
    display: block;
}
.dpo-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}
.dpo-card__content {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0.5em 0.5em 1em 0.75em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.dpo-card__title {
    line-height: 120%;
    margin-bottom: 0.25em;
}
.dpo-card__link {
    margin-left: auto;
    width: 2.55613em;
    height: 2.55613em;
    background-color: #fff;
    border-radius: 50%;
    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;
}
.dpo-card__link img {
    width: 1.9em;
}
@media screen and (max-width: 992px) {
    .faculties2 .faculty-card {
        padding: 0.5em;
        min-height: 5.85em;
    }
    .faculties2 .faculty-card__title {
        font-size: 0.707em;
    }
    .faculties2 .faculty-card__count {
        font-size: 0.61863em;
    }
    .for-companies {
        padding-top: 2em;
    }
    .for-companies__inner {
        padding: 1.25em 0.75em 1em;
    }
    .for-companies__img {
        display: none;
    }
    .for-companies .h2 {
        font-size: 2.3885em;
    }
    .for-companies__desc {
        margin-top: 2em;
        font-size: 0.93956em;
    }
    .dpo-center {
        padding-top: 1.25em;
    }
    .dpo-center-slider {
        margin-top: 1.25em;
    }
    .dpo-center-slider .swiper-slide {
        width: 14em;
    }
}
@media screen and (max-width: 576px) {
    .for-companies__link {
        width: 100%;
        height: 2.53em;
    }
}
@media screen and (min-width: 993px) {
    .about2 .about-video__logo {
        top: 0;
        left: 1em;
        width: 13.25em;
    }
    .about2 .about-info__desc {
        font-size: 1.125em;
        max-width: 16em;
    }
}
.about2 .about-info {
    background-color: #32343a;
}
.about2 .about-info__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.about2 .about-info__top img {
    width: 3.25em;
}
.about2 .about-info__title {
    font-size: 2.25em;
    line-height: 120%;
    text-transform: uppercase;
}
.about-item2 {
    border-radius: 1.28525em;
    background: -o-linear-gradient(128deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    background: linear-gradient(322deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    -webkit-box-shadow: 0 2.056px 13.058px 0 rgba(0, 0, 0, 0.09);
    box-shadow: 0 2.056px 13.058px 0 rgba(0, 0, 0, 0.09);
    color: #fff;
    padding: 1.25em 1em;
}
.about-item2__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 1.5em;
}
.about-item2__title {
    font-size: 2.25em;
    line-height: 120%;
}
.about-item2__icon {
    width: 3.375em;
}
.about-item2__desc {
    font-size: 1.125em;
    line-height: 120%;
}
.filter-popup__close,
.filter-popup__nav {
    display: none;
}
@media screen and (max-width: 992px) {
    .about2 .about-info {
        padding: 1em 0.75em;
        min-height: 8.5em;
    }
    .about2 .about-info__top img {
        width: 2em;
    }
    .about2 .about-info__title {
        font-size: 1.25em;
    }
    .about2 .about-info__desc {
        font-size: 0.625em;
        max-width: 25em;
    }
    .about-item2 {
        border-radius: 0.625em;
        padding: 0.6875em 0.4em;
    }
    .about-item2__top {
        margin-bottom: 0.25em;
    }
    .about-item2__title {
        font-size: 1.1875em;
    }
    .about-item2__icon {
        width: 1.375em;
    }
    .about-item2__desc {
        font-size: 0.625em;
    }
    .filter-popup {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: calc(100 * var(--vh));
        padding: 4em 0.75em 1.5em;
        z-index: 20;
        background-color: #fff;
        display: block;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
        opacity: 0;
        pointer-events: none;
    }
    .filter-popup._open {
        opacity: 1;
        pointer-events: unset;
    }
    .filter-popup__close {
        position: absolute;
        top: 0.5em;
        right: 0;
        width: 3em;
        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;
    }
    .filter-popup__close img {
        width: 100%;
    }
    .filter-popup .param-select__show {
        background-color: #f3f3f3;
        border: none;
    }
    .filter-popup .param-select__hidden {
        background-color: #f3f3f3;
        opacity: 1;
        pointer-events: unset;
        display: none;
        position: static;
        -webkit-transition: unset;
        -o-transition: unset;
        transition: unset;
    }
    .filter-popup__nav {
        display: grid;
        grid-template-columns: 100%;
        gap: 0.375em;
        margin-top: 1em;
    }
    .filter-popup__btn {
        height: 2.75em;
        border-radius: 0.3125em;
    }
    .filter {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 0.25em;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .filter__btn {
        width: auto;
    }
    .filter__btn--filter {
        background-color: #32343a;
        border: none;
        color: #fff;
        width: 6.5em;
    }
    .filter__btn--search {
        width: calc(100% - 6.75em);
        -webkit-box-pack: unset;
        -ms-flex-pack: unset;
        justify-content: unset;
        padding: 0 1.5em;
    }
    .filter__btn--refresh {
        width: 6.5em;
    }
}
.contact-card__grid {
    display: grid;
    grid-template-columns: 24em 14em 9.25em;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 0.75em;
}
.partners-slider {
    margin-top: 0.77em;
}
.partners-slider .swiper-container {
    width: calc(100% + 1.14em);
}
.partners-slider .swiper-slide {
    padding: 1.14em 1.14em 0 0;
}
.faculty-stat {
    padding-top: 4em;
    position: relative;
}
.faculty-stat__bg {
    position: absolute;
    right: 0;
    bottom: -17em;
    z-index: -1;
    width: 87.5em;
}
.faculty-stat__grid {
    display: grid;
    grid-template-columns: repeat(6, calc(16.6666666667% - 0.46875em));
    gap: 0.5625em;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.stat-card2 {
    height: 20.1875em;
    border-radius: 0.91256em;
    background: -o-linear-gradient(128deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    background: linear-gradient(322deg, #9ab1d5 19.63%, #4b4e55 139.24%);
    color: #fff;
    padding: 1em 0.75em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
}
.stat-card2:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(45, 45, 45, 0.42);
    pointer-events: none;
    border-radius: inherit;
    opacity: 0;
    -webkit-transition: opacity 0.4s;
    -o-transition: opacity 0.4s;
    transition: opacity 0.4s;
}
.stat-card2:hover:after {
    opacity: 1;
}
.stat-card2:hover .stat-card2__info {
    margin-bottom: auto;
}
.stat-card2:hover .stat-card2__bottom {
    opacity: 1;
    -webkit-transition: 0.3s 0.2s;
    -o-transition: 0.3s 0.2s;
    transition: 0.3s 0.2s;
}
.stat-card2 * {
    position: relative;
    z-index: 2;
}
.stat-card2__info {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.stat-card2__desc {
    font-size: 1.25419em;
    line-height: 120%;
}
.stat-card2__desc2 {
    font-size: 0.87794em;
    line-height: 120%;
}
.stat-card2__bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1em 0.75em;
    opacity: 0;
}
@media screen and (min-width: 993px) {
    .contacts2 ._department {
        grid-column: 1/3;
        min-height: unset;
    }
    .contacts2 .contact-group .contact-card:nth-child(2) {
        padding-top: 6em;
    }
    .boss2 .boss__inner {
        grid-template-columns: 26.25em calc(100% - 27.5em);
        gap: 1.25em;
    }
    .boss2 .boss__desc {
        font-size: 1.25em;
    }
    .faculty-stat ._type2 {
        grid-template-columns: repeat(5, calc(20% - 0.45em));
    }
    .faculty-stat ._type3 {
        grid-template-columns: repeat(7, calc(14.2857142857% - 0.4821428571em));
        margin-top: 2em;
    }
    .faculty-stat ._type3 .stat-card2 {
        height: 16.5em;
    }
    .faculty-stat ._type3 ._middle {
        height: calc(100% - 0.87em);
    }
    .faculty-stat ._type3 ._middle2 {
        height: calc(100% - 2.125em);
    }
    .faculty-stat ._type3 ._middle3 {
        height: calc(100% - 6.25em);
    }
    .faculty-stat ._type3 ._small2 {
        height: calc(100% - 9em);
    }
    .faculty-stat ._small-desc .stat-card2__desc,
    .faculty-stat ._type3 .stat-card2__desc {
        font-size: 1.0625em;
    }
    .stat-card2._middle {
        height: calc(100% - 3.69em);
    }
    .stat-card2._middle2 {
        height: calc(100% - 5.9375em);
    }
    .stat-card2._middle3 {
        height: calc(100% - 7.4375em);
    }
    .stat-card2._small {
        height: calc(100% - 9.3125em);
    }
    .stat-card2._small2 {
        height: calc(100% - 11.3125em);
    }
}
@media screen and (max-width: 992px) {
    .contact-card__grid {
        grid-template-columns: 100%;
        gap: 1.25em;
    }
    .partners-slider {
        margin-top: 1em;
    }
    .partners-slider .swiper-container {
        width: calc(100% + 0.5em);
    }
    .partners-slider .swiper-slide {
        padding: 0.5em 0.5em 0 0;
    }
    .faculty-stat {
        padding-top: 2em;
    }
    .faculty-stat__bg {
        width: 100%;
        bottom: -5em;
    }
    .faculty-stat__grid {
        grid-template-columns: repeat(4, calc(25% - 0.5625em));
        gap: 0.75em;
        -webkit-box-align: unset;
        -ms-flex-align: unset;
        align-items: unset;
        margin-top: 0.875em;
    }
    .stat-card2 {
        height: auto;
        min-height: 7.75em;
        padding: 0.5em;
    }
    .stat-card2__title {
        font-size: 1.5em;
    }
    .stat-card2__desc {
        font-size: 0.86481em;
    }
    .stat-card2__desc2 {
        font-size: 0.67263em;
    }
    .stat-card2__bottom {
        padding: 0.5em;
    }
}
@media screen and (max-width: 576px) {
    .faculty-stat__bg {
        width: 400%;
        bottom: -10em;
    }
    .faculty-stat__grid {
        grid-template-columns: repeat(2, calc(50% - 0.375em));
    }
}
.faculty-main {
    padding-top: 1.5em;
}
.faculty-main__inner {
    display: grid;
    grid-template-columns: 26em calc(100% - 27em);
    gap: 0.875em 1em;
    margin-bottom: 1.75em;
}
.faculty-main__col {
    padding: 0.75em 1em;
    border-radius: 1.25rem;
    background: #32343a;
    color: #fff;
    min-height: 19.3125em;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.faculty-main__bg {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 100%;
}
.faculty-main__title {
    font-size: 3em;
    line-height: 106%;
    letter-spacing: -0.02em;
    position: relative;
    z-index: 2;
    /* custom start */
    font-weight: 600;
    /* custom end */
}
.faculty-main__img {
    width: 100%;
    display: block;
    min-height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 1.25em;
}
.faculty-main__img._view2 {
    display: none;
}
.faculty-main__desc {
    font-size: 1.5625em;
    line-height: 120%;
}
.consult-faculty .consult__img {
    width: auto;
    height: 100%;
}
@media screen and (max-width: 992px) {
    .faculty-main {
        padding-top: 0.625em;
    }
    .faculty-main__inner {
        grid-template-columns: 21em calc(100% - 22em);
        margin-bottom: 1.5em;
    }
    .faculty-main__col {
        min-height: 15em;
    }
    .faculty-main__title {
        font-size: 2.25em;
    }
    .faculty-main__desc {
        font-size: 1.25em;
    }
}
@media screen and (max-width: 576px) {
    .faculty-main__inner {
        grid-template-columns: 100%;
    }
    .faculty-main__col {
        min-height: 10.875em;
    }
    .faculty-main__img._view1 {
        display: none;
    }
    .faculty-main__img._view2 {
        display: block;
    }
}
/*# sourceMappingURL=../sourcemaps/style.min.css.map */

/* End */


/* Start:/local/templates/ranepa_im2/assets2/css/oneday.css?175947611256126*/
/* ===== oneday page overrides ===== */
.m-page.oneday-page {
    font-size: 16px; /* Reset to base font size to prevent vw scaling issues */
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* Prevent horizontal scrolling */
}

.m-page.oneday-page .wrapper {
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* Prevent horizontal scrolling */
}

.m-page.oneday-page .footer {
    margin: 0;
}

/* ===== catalog card overrides for OneDay (pixel-perfect per figma) ===== */
.mba2 .catalog-card {
	border-radius: 1.25em;
	box-shadow: 0 2px 13px rgba(0,0,0,.09);
	padding: 1em;
	height: 400px;
	display: flex;
	flex-direction: column;
	background-image: url('/local/templates/ranepa_im2/assets2/css/../img/bgcardoneday.svg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}
.mba2 .catalog-card__top { 
	margin-bottom: 1.25em; 
	color: #aaa; 
	align-self: flex-start;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	width: 100% !important;
}
.mba2 .catalog-card__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 7px 14px;
	border-radius: 999px;
	background: linear-gradient(90deg, #B23C37 0%, #330E11 100%);
	color: #fff;
	font-size: 0.6875em; /* 11px */
	font-weight: 600;
}
.mba2 .catalog-card__type2 {
	color: #aaa;
	font-size: 0.8125em; /* 13px */
	display: flex !important;
	align-items: center !important;
	gap: 0.5em !important;
}
.mba2 .catalog-card__type2:before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	background-image: url('/local/templates/ranepa_im2/assets2/css/../img/iconfacultet.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.mba2 .catalog-card__title {
	font-size: 1.125em; /* 18px */
	line-height: 120%;
	font-weight: 700;
	flex-grow: 1;
	display: flex;
	align-items: center;
}
.mba2 .catalog-card__desc { 
	color: #7A7A7A; 
	font-size: 0.8125em; /* 13px */ 
	line-height: 140%; 
	flex-grow: 1;
	display: flex;
	align-items: center;
}
.mba2 .catalog-card__footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: auto;
	width: 100%;
}
.mba2 .catalog-card__date { 
	height: 2.5em; 
	padding: 0 1.5em; 
	border-radius: 1.25em; 
	background: linear-gradient(90deg, #B23C37 0%, #330E11 100%); 
	color: #fff; 
	display: flex;
	align-items: center;
}
.mba2 .catalog-card__date span { font-size: 0.875em; }
.mba2 .catalog-card__more { 
	color: #A6A6A6; 
	text-decoration: underline;
}
.mba2 .catalog-card__more span { 
	font-size: 0.875em;
}
.mba2 .catalog-card:hover { 
	background: white;
	background-image: url('/local/templates/ranepa_im2/assets2/css/../img/bgcardoneday.svg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color:#32343a; 
}
.mba2 .catalog-card:hover .catalog-card__date { background: linear-gradient(90deg, #B23C37 0%, #330E11 100%); color:#fff; }
.mba2 .catalog-card:hover .catalog-card__top,
.mba2 .catalog-card:hover .catalog-card__desc { color: inherit; }

/* Grid layout for 4 cards per row */
.mba2 .catalog__items {
	display: grid;
	grid-template-columns: repeat(4, calc(25% - 0.75em));
	gap: 1em;
}

@media screen and (max-width: 1200px) {
	.mba2 .catalog__items {
		grid-template-columns: repeat(3, calc(33.333% - 0.67em));
	}
}

@media screen and (max-width: 768px) {
	.mba2 .catalog__items {
		grid-template-columns: repeat(2, calc(50% - 0.5em));
	}
	.mba2 .catalog-card {
		height: 300px;
	}
}

@media screen and (max-width: 576px) {
	.mba2 .catalog__items {
		grid-template-columns: 100%;
	}
	.mba2 .catalog-card {
		height: auto;
		min-height: 300px;
	}
	.mba2 .catalog-card__top {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
	}
	.mba2 .catalog-card__title {
		margin-bottom: 20px;
	}
	.mba2 .catalog-card__footer {
		margin-top: 20px;
	}
}
/* Scoped styles for oneday banner */
.oneday-banner .bachelor-card {
	min-height: 338px;
    max-height: 388px;
	position: relative;
	padding: 1em;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
.oneday-banner .bachelor-card__bg {
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 1.25em;
}
.oneday-banner .bachelor-card__bg img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	-o-object-fit: cover;
	object-fit: cover;
}
.oneday-banner .bachelor-card__bg ._view2 {
	display: none;
}
.oneday-banner .bachelor-card__title {
	font-size: 4em;
	line-height: 106%;
	letter-spacing: -0.02em;
}
.oneday-banner .bachelor-card__bottom {
	margin-top: auto;
	padding-top: 3.2em;
}
.oneday-banner .bachelor-card__desc {
	font-size: 1em;
	line-height: 120%;
	max-width: 35em;
}
.oneday-banner .bachelor-card__nav {
	display: grid;
	grid-template-columns: 19em 19em;
	gap: 0.75em;
	margin-top: 2.32em;
}
.oneday-banner .bachelor-card__btn {
	height: 2.7em;
	padding: 0;
}
.oneday-banner .bachelor-card__btn span {
	font-size: 1.03594em;
}

@media screen and (max-width: 992px) {
	.oneday-banner .bachelor-card {
		font-size: 0.75em;
		height: 21em;
	}
}

@media screen and (max-width: 576px) {
	.oneday-banner .bachelor-card {
		height: 29.8em;
		padding: 0.75em;
		font-size: 1em;
	}
	.oneday-banner .bachelor-card__bg {
		border-radius: 0.9em;
	}
	.oneday-banner .bachelor-card__bg ._view1 {
		display: none;
	}
	.oneday-banner .bachelor-card__bg ._view2 {
		display: block;
	}
	.oneday-banner .bachelor-card__title {
		font-size: 2.25em;
	}
	.oneday-banner .bachelor-card__bottom {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.oneday-banner .bachelor-card__desc {
		font-size: 0.875em;
		max-width: 100%;
	}
	.oneday-banner .bachelor-card__nav {
		grid-template-columns: 12.875em;
		gap: 0.44em;
		margin-top: auto;
	}
	.oneday-banner .bachelor-card__btn {
		height: 2.3125em;
	}
	.oneday-banner .bachelor-card__btn span {
		font-size: 0.88656em;
	}
}

/* Button override for oneday banner: white default, keep red hover */
.oneday-banner .bachelor-card__btn.m-btn-red {
	background-color: #fff;
	color: #32343a;
}
.oneday-banner .bachelor-card__btn.m-btn-red:hover {
	background-color: rgb(206.449339207, 25.550660793, 38.8370044053);
	color: #fff;
}

/* ===== oneday stats block ===== */
.oneday-stats {
	background-color: #fff;
	height: 150px;
	padding: 0;
	margin-top: 86px;
}
.oneday-stats__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2.5em;
	position: relative;
	align-items: center;
}
.oneday-stats__item {
	position: relative;
	padding: 0px 3em 0 1em !important;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	height: 100%;
}

/* Убираем верхний отступ только у блока "Студентам" */
.contact-card--students {
	padding-top: 0 !important;
}

/* Ограничиваем высоту блока contact-group */
.contact-group {
	max-height: 100%;
	overflow: hidden;
}
.oneday-stats__item:not(:last-child):after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 139px;
	background: rgba(0, 0, 0, 0.1);
}
.oneday-stats__value {
	/* 29px = 1.8125em from 16px base */
	font-size: 1.8125em;
	line-height: 120%;
	font-weight: 700;
	font-family: Raleway, sans-serif;
	background: linear-gradient(90deg, #B23C37 0%, #330E11 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}
.oneday-stats__value,
.oneday-stats__label {
	text-align: left;
}
.oneday-stats__label {
	/* 10px exact gap from title to subtitle */
	margin-top: 10px;
	/* 16px = 1em from 16px base */
	font-size: 1em;
	line-height: 120%;
	color: #32343a;
	font-family: Raleway, sans-serif;
}

@media screen and (max-width: 992px) {
	.oneday-stats__list {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5em 1em;
	}
	.oneday-stats__item:not(:last-child):after {
		display: none;
	}
}

@media screen and (max-width: 576px) {
	.oneday-stats { padding: 0; margin-top: 46px; }
	/* Let Swiper control the layout on mobile */
	.oneday-stats-slider .swiper-container {
		height: 150px;
		padding-bottom: 16px;
		overflow: visible;
	}
	.oneday-stats__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.oneday-stats__item {
		width: auto;
		height: 150px;
	}
	.oneday-stats__scrollbar { display: block; }

	/* Re-enable vertical divider on mobile */
	.oneday-stats__item:not(:last-child):after {
		display: block;
		height: 130px; /* center line within 150px block with 10px bottom gap */
		bottom: 10px;
		top: auto;
		transform: none;
	}
}

/* ===== oneday about block ===== */
.oneday-about { margin-top: 60px; }
.oneday-about__grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 1.25em;
}
.oneday-about__card {
	position: relative;
	background: #fff;
	border-radius: 1.25em;
	padding: 1.25em 1.25em 1.25em 1.25em;
	box-shadow: 0 0 0 1px rgba(0,0,0,0.06) inset;
}
.oneday-about__card:before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: url('/local/templates/ranepa_im2/assets2/css/../img/bg-about.svg') center/cover no-repeat;
	opacity: 1;
	pointer-events: none;
}
.oneday-about .h2 {
	margin-bottom: .75em;
	/* 36px requested = 2.25em from 16px base */
	font-size: 2.25em;
	font-family: Raleway, sans-serif;
	font-weight: 700;
	line-height: 110%;
	background: linear-gradient(90deg, #B23C37 0%, #330E11 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}
.oneday-about__content {
	position: relative;
	z-index: 1;
	color: #32343a;
	font-family: Raleway, sans-serif;
	font-weight: 600;
}
.oneday-about__content p {
	margin: 0 0 .9em;
	/* 16px requested = 1em */
	font-size: 1em;
	line-height: 120%;
}
.oneday-about__content p + p { margin-top: 1.875em; }
.oneday-about__content p:last-child { margin-bottom: 0; }
.oneday-about .gradient-text,
.oneday-about .red-text,
.oneday-about__content strong {
	background: linear-gradient(90deg, #B23C37 0%, #330E11 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}
.oneday-about__content strong,
.oneday-about .red-text,
.oneday-about .gradient-text { font-weight: 600; }
.oneday-about__media {
	border-radius: 1.25em;
	overflow: hidden;
	height: 300px;
}
.oneday-about__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* slider like stories */
.about-media-slider .swiper-container { width: 100%; height: 100%; }
.about-media-slider .swiper-wrapper { height: 100%; }
.about-media-slider .swiper-slide { height: 100%; }
.about-media-slider .swiper-pagination {
	position: absolute;
	left: 0; right: 0; bottom: 8px; top: auto;
	width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex;
	gap: 6px; padding: 0 10px; align-items: center;
}
.about-media-slider .swiper-pagination-bullet {
	-webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1;
	border-radius: 999px; height: 3px; background: rgba(255,255,255,.5);
	margin: 0 !important; opacity: 1;
}
.about-media-slider .swiper-pagination-bullet-active { background: #fff; }
.about-media-slider .swiper-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* remove default right padding only in this slider */
.about-media-slider.slider .swiper-slide { padding-right: 0 !important; }

@media screen and (max-width: 992px) {
	.oneday-about__grid { grid-template-columns: 1fr; }
	.oneday-about__media { height: 260px; }
	/* Keep 36px on tablets per requirements */
	.oneday-about .h2 { font-size: 2.25em; }
}

@media screen and (max-width: 576px) {
	.oneday-about { margin-top: 40px; }
	.oneday-about__card { border-radius: .9em; padding: .9em; }
	.oneday-about__media { border-radius: .9em; height: 200px; }
	/* hide stories slider on mobile */
	.about-media-slider { display: none; }
	/* Keep 36px on mobile as well */
	.oneday-about .h2 { font-size: 2.25em; }
}

/* ===== teachers description styles ===== */
.teachers-description {
	font-size: 1.5em; /* 24px */
	margin-top: 15px;
	color: #DADADA;
	font-family: Raleway, sans-serif;
	font-weight: 600;
	line-height: 1.06;
	letter-spacing: -0.02em;
}

@media screen and (max-width: 576px) {
	.teachers-description {
		font-size: 0.8125em; /* 13px */
	}
}

/* ===== benefits block styles ===== */
.benefits {
	margin-top: 60px;
}

.benefits__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25em;
}

.benefits__card {
	position: relative;
	border-radius: 1.25em;
	padding: 1em;
	min-height: 280px;
	overflow: hidden;
}

.benefits__card--red {
	background: linear-gradient(-51deg, #B23C37 21%, #330E11 100%);
	position: relative;
}

.benefits__card--red::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url('/local/templates/ranepa_im2/assets2/css/../img/oneday/bg_dlya_uchenikov.svg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0.3;
	z-index: 0;
}

.benefits__card--white {
	background: #F5F5F5;
	position: relative;
}

.benefits__card--white::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url('/local/templates/ranepa_im2/assets2/css/../img/oneday/bg_dlya_roditeley.svg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0.3;
	z-index: 0;
}

.benefits__content {
	position: relative;
	z-index: 2;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.benefits__title {
	font-family: Raleway, sans-serif;
	font-weight: 600;
	font-size: 2.25em; /* 36px */
	line-height: 1.1;
	letter-spacing: -0.02em;
	margin: 0 0 0.5em 0;
}

.benefits__card--red .benefits__title {
	color: #FFFFFF;
}

.benefits__card--white .benefits__title {
	background: linear-gradient(-51deg, #B23C37 21%, #330E11 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.benefits__subtitle {
	font-family: Raleway, sans-serif;
	font-weight: 600;
	font-size: 0.9375em; /* 15px */
	line-height: 1.1;
	letter-spacing: -0.02em;
	margin: 0 0 1.5em 0;
}

.benefits__card--red .benefits__subtitle {
	color: #FFFFFF;
}

.benefits__card--white .benefits__subtitle {
	color: #32343A;
}

.benefits__list {
	list-style: none;
	padding: 0;
	margin: 0;
	flex-grow: 1;
}

.benefits__item {
	font-family: Raleway, sans-serif;
	font-weight: 600;
	font-size: 1em; /* 16px */
	line-height: 2.41;
	letter-spacing: -0.02em;
	position: relative;
	padding-left: 1.25em;
}

.benefits__item:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	width: 10px;
	height: 10px;
	border: 2px solid;
	border-radius: 2px;
}

.benefits__card--red .benefits__item {
	color: #FFFFFF;
}

.benefits__card--red .benefits__item:before {
	border-color: #FFFFFF;
}

.benefits__card--white .benefits__item {
	color: #32343A;
}

.benefits__card--white .benefits__item:before {
	border-color: #B23C37;
}

.benefits__decoration {
	position: absolute;
	top: -46px;
	right: -46px;
	width: 509px;
	height: 509px;
	z-index: 1;
	max-width: 100vw; /* Prevent overflow */
}

.benefits__star {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translateX(44%);
}

.benefits__card--white .benefits__decoration {
	top: -84px;
	right: -146px;
	width: 529px;
	height: 527px;
	max-width: 100vw; /* Prevent overflow */
}

.benefits__card--white .benefits__star {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) translateX(100px);
}

@media screen and (max-width: 992px) {
	.benefits__grid {
		grid-template-columns: 1fr;
		gap: 1em;
	}
	
	.benefits__card {
		height: 360px;
	}
	
	.benefits__decoration {
		width: 300px;
		height: 300px;
		top: -30px;
		right: -30px;
	}
	
	.benefits__card--white .benefits__decoration {
		width: 320px;
		height: 320px;
		top: -50px;
		right: -30px;
	}
}

@media screen and (max-width: 576px) {
	.benefits {
		margin-top: 40px;
	}
	
	.benefits__card {
		height: auto;
		padding: 0.75em;
	}
	
	.benefits__title {
		font-size: 1.75em; /* 28px */
	}
	
	.benefits__subtitle {
		font-size: 0.875em; /* 14px */
	}
	
	.benefits__item {
		font-size: 0.875em; /* 14px */
		line-height: 1.4;
		margin-bottom: 10px;
	}
	
	.benefits__item:last-child {
		margin-bottom: 0;
	}
	
	.benefits__decoration {
		width: 200px;
		height: 200px;
		top: -20px;
		right: -20px;
	}
	
	.benefits__card--white .benefits__decoration {
		width: 220px;
		height: 220px;
		top: -30px;
		right: -20px;
	}
	
	.benefits__star {
		opacity: 0.56;
		width: 160%;
		height: 160%;
		object-fit: cover;
		transform: none;
	}
	
	/* Мобильные фоновые изображения для benefits карточек */
	.benefits__card--red::before {
		background-image: url('/local/templates/ranepa_im2/assets2/css/../img/oneday/bg_mb_dlyauchenikov.svg');
	}
	
	.benefits__card--white::before {
		background-image: url('/local/templates/ranepa_im2/assets2/css/../img/oneday/bg_mb_dlyaroditeley.svg');
	}
}

/* Reviews Section */
.reviews {
	padding: 80px 0;
	background: #fff;
}

.reviews-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
}

.reviews-wrapper {
	background: #FAFAFA;
	border-radius: 26px;
	border: 1.34px solid #E2E2E2;
	padding: 40px;
	overflow: hidden;
}

.reviews-nav {
	display: flex;
	gap: 12px;
	align-items: center;
}

.reviews-mobile-text {
	display: none;
	font-size: 1em;
	font-weight: 400;
	color: #AAAAAA;
	line-height: 1.2;
	margin-right: 12px;
}

.reviews-nav__btn {
	width: 40px;
	height: 40px;
	min-width: 40px;
	min-height: 40px;
	border-radius: 50%;
	background: #F5F5F5;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
	flex-shrink: 0;
}

.reviews-nav__btn:hover {
	background: #E0E0E0;
}

.reviews-slider {
	position: relative;
}

.reviews-slider .swiper-container {
	overflow: visible;
	padding-left: 0;
	padding-right: 0;
	margin-left: 0;
	margin-right: 0;
}

.reviews-slider .swiper-wrapper {
	align-items: stretch;
	justify-content: flex-start;
}

.reviews-slider .swiper-slide {
	height: auto;
	flex-shrink: 0;
}

.review-card {
	background: #fff;
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 2.68px 17.01px rgba(0, 0, 0, 0.05);
	height: 100%;
	display: flex;
	flex-direction: column;
	position: relative;
}

.review-card__header {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 16px;
}

.review-card__avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #F5F5F5;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex-shrink: 0;
}

.review-card__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.review-card__info {
	flex: 1;
}

.review-card__name {
	font-size: 18px;
	font-weight: 600;
	color: #32343A;
	margin-bottom: 4px;
	line-height: 1.3;
}

.review-card__role {
	font-size: 14px;
	color: #8A8A8A;
	line-height: 1.4;
}

.review-card__content {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.review-card__rating {
	display: flex;
	gap: 4px;
	margin-bottom: 16px;
}

.review-card__rating .star {
	width: 16px;
	height: 16px;
	display: block;
}

.review-card__text {
	font-size: 0.875em;
	font-weight: 400;
	color: #32343A;
	line-height: 1.2;
	margin-bottom: 16px;
	flex: 1;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.review-card__more {
	font-size: 0.875em;
	font-weight: 500;
	color: #32343A;
	text-decoration: underline;
	transition: color 0.3s ease;
	margin-top: auto;
}

.review-card__more:hover {
	color: #007BFF;
}

.reviews-slider .swiper-scrollbar {
	height: 0.375em;
	margin-top: 1.64em;
	border-radius: 0.87794em;
	background: #f5f5f5;
}

.reviews-slider .swiper-scrollbar-drag {
	border-radius: 0.87794em;
	background: #afb0b2;
}

/* Responsive */
@media (max-width: 768px) {
	.reviews {
		padding: 60px 0;
	}
	
	.reviews-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		margin-bottom: 30px;
	}
	
	.reviews-nav {
		align-self: flex-end;
	}
	
	.reviews-mobile-text {
		display: block;
	}
	
	.review-card {
		padding: 20px;
	}
	
	.review-card__name {
		font-size: 16px;
	}
	
	.review-card__text {
		font-size: 0.8125em;
	}
	
	.reviews-slider .swiper-scrollbar {
		margin-top: 0.82em;
	}
	
	.reviews-wrapper {
		padding: 30px 20px;
		border-radius: 20px;
	}
}

@media (max-width: 480px) {
	.reviews {
		padding: 40px 0;
	}
	
	.reviews-header {
		margin-bottom: 20px;
	}
	
	.review-card {
		padding: 16px;
	}
	
	.review-card__header {
		gap: 10px;
		margin-bottom: 12px;
	}
	
	.review-card__avatar {
		width: 40px;
		height: 40px;
	}
	
	.review-card__name {
		font-size: 15px;
	}
	
	.review-card__role {
		font-size: 13px;
	}
	
	.review-card__rating .star {
		width: 14px;
		height: 14px;
	}
	
	.review-card__text {
		font-size: 0.75em;
		-webkit-line-clamp: 2;
	}
	
	.review-card__more {
		font-size: 0.75em;
	}
	
	.reviews-wrapper {
		padding: 20px 16px;
		border-radius: 16px;
	}
}

/* Review Modal */
.review-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.review-modal.active {
	display: flex;
}

.review-modal__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
}

.review-modal__content {
	position: relative;
	background: #fff;
	border-radius: 20px;
	padding: 32px;
	max-width: 600px;
	width: 100%;
	max-height: 80vh;
	overflow-y: auto;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
	animation: modalSlideIn 0.3s ease-out;
}

@keyframes modalSlideIn {
	from {
		opacity: 0;
		transform: translateY(-20px) scale(0.95);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

.review-modal__header {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 20px;
	position: relative;
}

.review-modal__avatar {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #F5F5F5;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex-shrink: 0;
}

.review-modal__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.review-modal__info {
	flex: 1;
}

.review-modal__name {
	font-size: 20px;
	font-weight: 600;
	color: #32343A;
	margin-bottom: 4px;
	line-height: 1.3;
}

.review-modal__role {
	font-size: 16px;
	color: #8A8A8A;
	line-height: 1.4;
}

.review-modal__close {
	position: absolute;
	top: 20%;
	right: 0;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	border: none;
	background: #F5F5F5;
	border-radius: 50%;
	font-size: 20px;
	color: #666;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.review-modal__close:hover {
	background: #E0E0E0;
	color: #333;
}

.review-modal__rating {
	display: flex;
	gap: 6px;
	margin-bottom: 20px;
}

.review-modal__rating .star {
	width: 20px;
	height: 20px;
	display: block;
}

.review-modal__text {
	font-size: 16px;
	font-weight: 400;
	color: #32343A;
	line-height: 1.6;
}

/* Responsive */
@media (max-width: 768px) {
	.review-modal {
		padding: 16px;
	}
	
	.review-modal__content {
		padding: 24px;
		border-radius: 16px;
	}
	
	.review-modal__header {
		gap: 12px;
		margin-bottom: 16px;
	}
	
	.review-modal__avatar {
		width: 50px;
		height: 50px;
	}
	
	.review-modal__name {
		font-size: 18px;
	}
	
	.review-modal__role {
		font-size: 14px;
	}
	
	.review-modal__rating .star {
		width: 18px;
		height: 18px;
	}
	
	.review-modal__text {
		font-size: 15px;
	}
}

@media (max-width: 480px) {
	.review-modal__content {
		padding: 20px;
	}
	
	.review-modal__header {
		gap: 10px;
		margin-bottom: 12px;
	}
	
	.review-modal__avatar {
		width: 45px;
		height: 45px;
	}
	
	.review-modal__name {
		font-size: 16px;
	}
	
	.review-modal__role {
		font-size: 13px;
	}
	
	.review-modal__rating .star {
		width: 16px;
		height: 16px;
	}
	
	.review-modal__text {
		font-size: 14px;
	}
}

/* Блок заявки на студенчество */
.application-form {
	background: #F8F8F8;
	padding: 60px 0;
	position: relative;
	overflow: hidden;
}

.application-form::before {
	content: '';
	position: absolute;
	top: -50px;
	left: -50px;
	width: 200px;
	height: 200px;
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="2" fill="white" opacity="0.3"/></svg>') repeat;
	background-size: 20px 20px;
	z-index: 1;
}

.application-form__inner {
	display: flex;
	gap: 40px;
	align-items: stretch;
	position: relative;
	z-index: 2;
}

.application-form__left {
	flex: 1;
	max-width: 600px;
	position: relative;
	display: flex;
	flex-direction: column;
}

.application-form__left::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url('/local/templates/ranepa_im2/assets2/css/../img/Metallic.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 120% 40%;
	opacity: 0.6;
	z-index: -1;
}

.application-form__right {
	flex: 1;
	max-width: 600px;
}

.application-form__title {
	font-family: 'Raleway', sans-serif;
	font-weight: 400;
	font-size: 40px;
	line-height: 0.9;
	color: #32343A;
	margin: 0 0 20px 0;
}

.application-form__subtitle {
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.2;
	color: #32343A;
	margin: 0 0 30px 0;
}

.application-form__profile {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-top: auto;
}

.application-form__avatar {
	width: 115px;
	height: 115px;
	border-radius: 15px;
	overflow: hidden;
	flex-shrink: 0;
}

.application-form__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.application-form__profile-info {
	flex: 1;
}

.application-form__name {
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	color: #32343A;
	margin-bottom: 5px;
}

.application-form__position {
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.2;
	color: #32343A;
}

.application-form__btn {
	width: 100%;
	max-width: 568px;
	height: 42px;
	background: linear-gradient(260deg, #B23C37 29%, #330E11 100%);
	border: none;
	border-radius: 27px;
	color: white;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 15px;
	cursor: pointer;
	transition: all 0.3s ease;
	margin-top: 10px;
	margin-bottom: 30px;
}

.application-form__btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(178, 60, 55, 0.3);
}

.application-form__disclaimers {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.application-form__checkbox {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
}

.application-form__checkbox input[type="checkbox"] {
	display: none;
}

.checkmark {
	width: 14px;
	height: 14px;
	border: 1px solid #666666;
	border-radius: 4px;
	background: #F3F3F3;
	flex-shrink: 0;
	position: relative;
}

.application-form__checkbox input[type="checkbox"]:checked + .checkmark {
	background: #B23C37;
	border-color: #B23C37;
}

.application-form__checkbox input[type="checkbox"]:checked + .checkmark::after {
	content: '✓';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: white;
	font-size: 16px;
	font-weight: bold;
}

.checkbox-text {
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 10px;
	line-height: 1.17;
	color: #32343A;
}

.application-form__required-note {
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 10px;
	line-height: 1.17;
	color: #AAAAAA;
	margin-top: 5px;
}

.asterisk {
	color: #AAAAAA;
	font-size: 24px;
	line-height: 1.17;
}

/* Форма */
.application-form__form {
	display: flex;
	flex-direction: column;
}

.form-group {
	display: flex;
	flex-direction: column;
	position: relative;
}

.form-input,
.form-select,
.form-textarea {
	border: none;
	border-bottom: 1px solid #AAAAAA;
	background: transparent;
	padding: 5px 0;
	font-family: 'Raleway', sans-serif;
	font-size: 16px;
	color: #32343A;
	outline: none;
	transition: border-color 0.3s ease;
}

.form-input,
.form-textarea {
	padding: 12px 0;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
	border-bottom-color: #B23C37;
}

.form-input::placeholder,
.form-textarea::placeholder {
	color: #AAAAAA;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
}

.form-select-wrapper {
	position: relative;
	width: 100%;
}

.form-select {
	appearance: none;
	padding-right: 30px;
	cursor: pointer;
	width: 100%;
}

.select-arrow {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #A3A3A3;
	font-size: 12px;
	pointer-events: none;
	z-index: 1;
}

.form-textarea {
	resize: vertical;
	min-height: 60px;
}

/* Скрытие/показ элементов для разных устройств */
.application-form__mobile-controls {
	display: none;
}

@media (max-width: 992px) {
	.application-form__mobile-controls {
		display: block;
		margin-top: 20px;
	}
	
	.application-form__btn--mobile {
		width: 100%;
		max-width: 100%;
		margin-bottom: 20px;
	}
	
	.application-form__disclaimers--mobile {
		margin-top: 0;
	}
}

/* Адаптивность */
@media (max-width: 1200px) {
	.application-form__inner {
		gap: 30px;
	}
	
	.application-form__title {
		font-size: 36px;
	}
}

@media (max-width: 992px) {
	.application-form__inner {
		flex-direction: column;
		gap: 40px;
	}
	
	.application-form__left,
	.application-form__right {
		max-width: 100%;
		min-width: 100%;
	}
	
	.application-form__title {
		font-size: 32px;
	}
	
	/* Скрываем оригинальные кнопки на мобильных устройствах */
	.application-form__btn:not(.application-form__btn--mobile) {
		display: none;
	}
	
	.application-form__disclaimers:not(.application-form__disclaimers--mobile) {
		display: none;
	}
}

@media (max-width: 768px) {
	.application-form {
		padding: 40px 0;
	}
	
	.application-form__title {
		font-size: 28px;
	}
	
	.application-form__subtitle {
		font-size: 16px;
	}
	
	.application-form__profile {
		flex-direction: column;
		text-align: center;
		gap: 15px;
	}
	
	.application-form__avatar {
		width: 80px;
		height: 80px;
	}
	
	.application-form__name,
	.application-form__position {
		font-size: 16px;
	}
	
	.application-form__btn {
		height: 50px;
		font-size: 16px;
	}
	
	.form-input,
	.form-select,
	.form-textarea {
		font-size: 16px;
	}
	
	.form-input::placeholder,
	.form-textarea::placeholder {
		font-size: 16px;
	}
	
	/* Исправление отображения поля даты на мобильных устройствах */
	.form-input[type="date"] {
		font-size: 16px;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		background: transparent;
		border: none;
		border-bottom: 1px solid #AAAAAA;
		padding: 12px 0;
		/* Иконка календаря как фон */
		background-image: url('/local/templates/ranepa_im2/assets2/css/../img/calendar.svg');
		background-repeat: no-repeat;
		background-position: right 0 center;
		background-size: 20px 20px;
		padding-right: 30px;
		color: #32343A;
		width: 100%;
		position: relative;
	}
	
	.form-input[type="date"]::-webkit-calendar-picker-indicator {
		background: transparent; /* скрываем стандартную иконку, кликабельная зона остаётся */
		bottom: 0;
		color: transparent;
		cursor: pointer;
		height: auto;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
		width: auto;
		opacity: 1;
	}

	/* Кастомный плейсхолдер для поля даты на мобильных */
	.date-placeholder {
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		pointer-events: none;
		color: #AAAAAA;
		font-family: 'Raleway', sans-serif;
		font-weight: 600;
		font-size: 16px;
		line-height: 1.2;
	}
	
	.form-input[type="date"]::-webkit-inner-spin-button,
	.form-input[type="date"]::-webkit-clear-button {
		display: none;
		-webkit-appearance: none;
	}
	
	/* Дополнительные стили для лучшего отображения поля даты */
	.form-input[type="date"]:focus {
		border-bottom-color: #B23C37;
		outline: none;
	}
	
	.form-input[type="date"]:valid {
		color: #32343A;
	}
	
	.form-input[type="date"]:invalid {
		color: #AAAAAA;
	}
}

@media (max-width: 480px) {
	.application-form__title {
		font-size: 24px;
	}
	
	.application-form__subtitle {
		font-size: 16px;
	}
	
	.application-form__btn {
		height: 45px;
		font-size: 16px;
	}
	
	.form-input,
	.form-select,
	.form-textarea {
		font-size: 16px;
	}
	
	.form-input::placeholder,
	.form-textarea::placeholder {
		font-size: 16px;
	}
	
	.application-form__name,
	.application-form__position {
		font-size: 16px;
	}
}

/* Модальное окно валидации */
.validation-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10000;
	display: none;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.validation-modal.active {
	display: flex;
	opacity: 1;
}

.validation-modal__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
}

.validation-modal__content {
	position: relative;
	margin: auto;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
	max-width: 500px;
	width: 90%;
	max-height: 80vh;
	overflow: hidden;
	animation: modalSlideIn 0.3s ease-out;
	display: flex;
	flex-direction: column;
}

@keyframes modalSlideIn {
	from {
		opacity: 0;
		transform: translateY(-20px) scale(0.95);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

.validation-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 24px 0;
}

.validation-modal__title {
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 1.2;
	color: #32343A;
	margin: 0;
}

.validation-modal__close {
	background: none;
	border: none;
	font-size: 24px;
	color: #999;
	cursor: pointer;
	padding: 0;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	transition: background-color 0.2s ease;
}

.validation-modal__close:hover {
	background-color: #f5f5f5;
}

.validation-modal__body {
	padding: 20px 24px;
	display: flex;
	align-items: flex-start;
	gap: 16px;
	flex: 1;
	overflow-y: auto;
}

.validation-modal__icon {
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	margin-top: 2px;
}

.validation-modal__message {
	flex: 1;
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.4;
	color: #32343A;
}

.validation-modal__message ul {
	margin: 8px 0 0 0;
	padding-left: 20px;
}

.validation-modal__message li {
	margin-bottom: 4px;
}

.validation-modal__footer {
	padding: 0 24px 24px;
	display: flex;
	justify-content: flex-end;
}

.validation-modal__btn {
	background: linear-gradient(260deg, #B23C37 29%, #330E11 100%);
	border: none;
	border-radius: 8px;
	color: #fff;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 16px;
	padding: 12px 24px;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.validation-modal__btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(178, 60, 55, 0.3);
}

/* Адаптивность модального окна */
@media (max-width: 768px) {
	.validation-modal {
		align-items: center;
		justify-content: center;
		padding: 20px;
	}
	
	.validation-modal__content {
		width: 100%;
		max-width: 400px;
		margin: 0;
		max-height: 90vh;
		overflow-y: auto;
	}
	
	.validation-modal__header {
		padding: 16px 16px 0;
	}
	
	.validation-modal__title {
		font-size: 16px;
	}
	
	.validation-modal__body {
		padding: 12px 16px;
	}
	
	.validation-modal__message {
		font-size: 14px;
		line-height: 1.3;
	}
	
	.validation-modal__message ul {
		margin: 6px 0 0 0;
		padding-left: 16px;
	}
	
	.validation-modal__message li {
		margin-bottom: 2px;
		font-size: 13px;
	}
	
	.validation-modal__footer {
		padding: 0 16px 16px;
	}
	
	.validation-modal__btn {
		font-size: 14px;
		padding: 10px 20px;
		width: 100%;
	}
}

@media (max-width: 480px) {
	.validation-modal {
		padding: 10px;
	}
	
	.validation-modal__content {
		max-height: 95vh;
	}
	
	.validation-modal__header {
		padding: 12px 12px 0;
	}
	
	.validation-modal__title {
		font-size: 15px;
	}
	
	.validation-modal__body {
		padding: 10px 12px;
	}
	
	.validation-modal__message {
		font-size: 13px;
	}
	
	.validation-modal__message li {
		font-size: 12px;
	}
	
	.validation-modal__footer {
		padding: 0 12px 12px;
	}
	
	.validation-modal__btn {
		font-size: 13px;
		padding: 8px 16px;
	}
}

/* Дополнительные правила для предотвращения горизонтальной прокрутки */
@media (max-width: 768px) {
	/* Убеждаемся, что все контейнеры не выходят за границы */
	.container {
		overflow-x: hidden;
	}
	
	/* Исправляем проблемные элементы с отрицательными отступами */
	.benefits__decoration {
		right: max(-46px, calc(-100vw + 100%));
	}
	
	.benefits__card--white .benefits__decoration {
		right: max(-46px, calc(-100vw + 100%));
	}
	
	/* Убираем горизонтальную прокрутку у всех основных блоков */
	.oneday-banner,
	.oneday-stats,
	.oneday-about,
	.how-works,
	.benefits,
	.reviews,
	.application-form {
		overflow-x: hidden;
	}
}

/* ===== Кураторы и наставники - убираем красный цвет при наведении ===== */
.teachers .swiper-button:hover {
	background-color: transparent !important;
	border-color: #32343A !important;
}

.teachers .swiper-button:hover path {
	fill: #32343A !important;
}

/* ===== FAQ секция - скрытие/показ вопросов ===== */
.qa-card--hidden {
	display: none;
}

.qa-card--hidden.show {
	display: block;
	animation: fadeInUp 0.3s ease-out;
}

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

/* Стили для кнопки "Все вопросы" */
.media__nav2 {
	margin-top: 30px;
	text-align: center;
}

.media__link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none;
	transition: all 0.3s ease;
	height: 50px;
	padding: 0 20px;
	vertical-align: middle;
}

.media__link span {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 100%;
	line-height: 1;
	vertical-align: middle;
}

.media__link:hover {
	transform: translateY(-2px);
}

/* Адаптивные стили для кнопки "Все вопросы" */
@media (max-width: 768px) {
	.media__link {
		height: 45px;
		padding: 0 16px;
		font-size: 14px;
	}
}

@media (max-width: 480px) {
	.media__link {
		height: 40px;
		padding: 0 12px;
		font-size: 13px;
	}
}

/* ===== Адаптивные стили для FAQ секции на мобильных устройствах ===== */
@media (max-width: 768px) {
	.rules__grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 1em;
		margin-top: 1.4em;
	}
	
	.rules__col,
	.rules__col2 {
		width: 100%;
	}
	
	.rules__items {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.8em;
	}
	
	/* Показываем только первые 3 вопроса в каждой колонке на мобильных */
	.rules__col .qa-card:nth-child(n+4),
	.rules__col2 .qa-card:nth-child(n+4) {
		display: none;
	}
	
	/* Показываем скрытые вопросы при активации */
	.rules__col .qa-card--hidden.show,
	.rules__col2 .qa-card--hidden.show {
		display: block;
		animation: fadeInUp 0.3s ease-out;
	}
}

@media (max-width: 480px) {
	.rules__items {
		gap: 0.6em;
	}
	
	.qa-card__title {
		font-size: 14px;
		line-height: 1.3;
	}
	
	.qa-card__text {
		font-size: 13px;
		line-height: 1.4;
	}
}

/* ===== Скрытие фильтра на мобильных устройствах ===== */
@media (max-width: 768px) {
	.filter {
		display: none !important;
	}
}

/* ===== OneDay 10/90 filter row under header ===== */
.oneday-filter-row {
	/* full width row inside container */
	display: none; /* hidden on desktop/large screens */
	grid-template-columns: 10% 86%;
	align-items: center;
	gap: 5.23px; /* figma gap */
	margin: 17px 0 0px 0; /* below title */
}

.oneday-filter-row__icon,
.oneday-filter-row__reset {
	border-radius: 84.305px; /* figma radius */
	background: #F2F2F2;
	border: 1px solid #CACACB;
	padding: 0;
	height: 30.57px; /* figma height */
	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;
}

.oneday-filter-row__icon { height: 30px; }
.oneday-filter-row__icon-img { width: 16.22px; height: 12.9px; display: block; }

.oneday-filter-row__reset {
	color: #32343A;
	font-family: Raleway, Arial, sans-serif;
	font-weight: 600;
	font-size: 19px;
	line-height: 1.2;
}

/* Hide filter popup on desktop; show only when opened on mobile */
.filter-popup { display: none; }

@media (max-width: 768px) {
	.oneday-filter-row {
		display: grid; /* visible only on mobile/tablet */
		grid-template-columns: 10% 90%;
	}
	.filter-popup._open { display: block; }
}

/* ===== Как это работает ===== */
.how-works {
	padding: 80px 0 0 0;
	background: #fff url('/local/templates/ranepa_im2/assets2/css/../img/howworksbg.svg') no-repeat center center;
	background-size: auto 100%;
	position: relative;
	overflow: hidden;
}

/* Скрыть блок how-works на планшетах */
@media (max-width: 992px) and (min-width: 769px) {
	.how-works {
		display: none;
	}
}

.how-works__content {
	text-align: left;
	position: relative;
	z-index: 2;
}

.how-works__title {
	font-size: 2.5em;
	font-weight: 700;
	color: #000;
	margin: 0 0 0.5em 0;
	line-height: 1.2;
}

.how-works__subtitle {
	font-size: 1.125em;
	color: #666;
	margin: 0 0 3em 0;
	line-height: 1.4;
}

.how-works__diagram {
	position: relative;
	width: 100%;
	height: 500px;
	margin: 0 auto;
	max-width: 1200px;
}

.how-works__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.how-works__bg-image {
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 0.1;
}

.how-works__line {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 100%;
	height: 240px;
}

.how-works__line-image {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.how-works__step {
	position: absolute;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
	transition: transform 0.3s ease;
}

.how-works__step:hover {
	transform: scale(1.03);
}

.how-works__step-icon {
	width: 73px;
	height: 71px;
	margin-top: 15px;
	transition: all 0.3s ease;
}

.how-works__step-icon svg {
	width: 100%;
	height: 100%;
	transition: all 0.3s ease;
}

.how-works__step-icon .step-circle {
	transition: all 0.3s ease;
}

.how-works__step-icon .step-dot {
	transition: all 0.3s ease;
}

/* Эффект наведения на иконку */
.how-works__step:hover .how-works__step-icon .step-circle {
	fill: #B23C37;
	stroke: #B23C37;
}

.how-works__step:hover .how-works__step-icon .step-dot {
	fill: #fff;
}

/* Эффект наведения на текст */
.how-works__step:hover .how-works__step-text {
	background: linear-gradient(90deg, #832B29 0%, #B13B36 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	transform: translateY(-2px);
	box-shadow: none;
}

.how-works__step-text {
	background: transparent;
	background: linear-gradient(90deg, #832B29 0%, #B13B36 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	padding: 12px 20px;
	border-radius: 8px;
	font-size: 0.875em;
	font-weight: 500;
	line-height: 1.3;
	white-space: nowrap;
	box-shadow: none;
	position: relative;
	transition: all 0.3s ease;
}

.how-works__step-text::after {
	display: none;
}

/* Стили для стрелок между текстом и иконками */
.how-works__step-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
}

.how-works__arrow-image {
	width: 7px;
	height: 60px;
	object-fit: contain;
}

.how-works__arrow-image-mobile {
	display: none;
}

/* Индивидуальные высоты стрелок для каждого шага */
.how-works__step--1 .how-works__arrow-image,

.how-works__step--3 .how-works__arrow-image {
	height: 109px;
}
.how-works__step--2 .how-works__arrow-image {
	height: 79px;
}
.how-works__step--4 .how-works__arrow-image,
.how-works__step--5 .how-works__arrow-image {
	height: 182px;
}

.how-works__step--6 .how-works__arrow-image {
	height: 64px;
}

/* Позиционирование шагов относительно кружков на линии */
.how-works__step--1 {
	top: -2%;
	left: -2%;
}


.how-works__step--2 {
	top: -7%;
	left: 18%;
}


.how-works__step--3 {
	top: 5%;
	left: 30%;
}


.how-works__step--4 {
	top: 10%;
	left: 45%;
}



.how-works__step--5 {
	top: 4%;
	left: 64%;
}


.how-works__step--6 {
	top: 0%;
	left: 79%;
}


/* Адаптивность */
@media (max-width: 1200px) {
	.how-works__diagram {
		height: 350px;
	}
	
	.how-works__step-text {
		font-size: 0.8em;
		padding: 10px 16px;
	}
	
	.how-works__arrow-image {
		height: 50px;
	}
	
	/* Адаптивные высоты стрелок для каждого шага */
	.how-works__step--1 .how-works__arrow-image,
	.how-works__step--2 .how-works__arrow-image,
	.how-works__step--3 .how-works__arrow-image {
		height: 80px;
	}
	
	.how-works__step--4 .how-works__arrow-image,
	.how-works__step--5 .how-works__arrow-image {
		height: 120px;
	}
	
	.how-works__step--6 .how-works__arrow-image {
		height: 45px;
	}
}


@media (max-width: 768px) {
	.how-works {
		padding: 60px 0 0 0;
		margin-bottom: 0;
	}
	
	.how-works__title {
		font-size: 2em;
	}
	
	.how-works__subtitle {
		font-size: 1em;
		margin-bottom: 2em;
	}
	
	.how-works__diagram {
		height: 270.8vw;
		min-height: 270.8vw;
	}
	
	/* Замена линии на мобильных устройствах */
	.how-works__line {
		height: 270.8vw;
		width: 100%;
	}
	
	.how-works__line-image {
		content: url('/local/templates/ranepa_im2/assets2/css/../img/mobilelinehowtoworks.svg');
		width: 100%;
		height: 270.8vw;
		object-fit: contain;
	}
	
	.how-works__step-icon {
		width: 7.8vw;
		height: 7.6vw;
		margin-top: 1.3vw;
	}
	
	/* Специальные стили для 4-го шага на планшетах */
	
	.how-works__step-text {
		font-size: 0.75em;
		padding: 1vw 1.6vw;
		white-space: normal;
		max-width: 15.6vw;
		text-align: left;
	}
	
	.how-works__arrow-image {
		height: 5.2vw;
	}
	
	/* Адаптивные высоты стрелок для каждого шага */
	.how-works__step--1 .how-works__arrow-image,
	.how-works__step--2 .how-works__arrow-image,
	.how-works__step--3 .how-works__arrow-image {
		height: 7.8vw;
	}
	
	.how-works__step--4 .how-works__arrow-image,
	.how-works__step--5 .how-works__arrow-image {
		height: 11.7vw;
	}
	
	.how-works__step--6 .how-works__arrow-image {
		height: 4.6vw;
	}
	
	/* Адаптивное позиционирование для мобильных */
	.how-works__step--1 {
		top: 11%;
		left: 35%;
	}
	
	.how-works__step--2 {
		top: 23%;
		left: 12%;
	}
	
	.how-works__step--3 {
		top: 32%;
		left: 42%;
	}
	
	.how-works__step--4 {
		top: 52%;
		left: 28%;
	}
	
	.how-works__step--5 {
		top: 72%;
		left: 40%;
	}
	
	.how-works__step--6 {
		top: 87%;
		left: 9%;
	}
}

@media (max-width: 480px) {
	.how-works__diagram {
		height: 270.8vw;
		min-height: 270.8vw;
	}
	
	.how-works__step-icon {
		width: 10.4vw;
		height: 10vw;
		margin-top: 1.7vw;
	}
	
	
	.how-works__step-text {
		font-size: 1em;
		padding: 2.1vw 3.1vw;
		max-width: 37.5vw;
		text-align: left;
	}
	
	.how-works__arrow-image {
		height: 9.4vw;
	}
	
	/* Адаптивные высоты стрелок для каждого шага */
	.how-works__step--1 .how-works__arrow-image,
	.how-works__step--2 .how-works__arrow-image,
	.how-works__step--3 .how-works__arrow-image {
		height: 14.6vw;
	}
	
	.how-works__step--4 .how-works__arrow-image,
	.how-works__step--5 .how-works__arrow-image {
		height: 20.8vw;
	}
	
	.how-works__step--6 .how-works__arrow-image {
		height: 8.3vw;
	}
	
	/* Горизонтальный layout для первого шага на мобильных */
	.how-works__step--1 {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}
	
	.how-works__step--1 .how-works__step-icon {
		order: 1;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.how-works__step--1 .how-works__step-arrow {
		order: 2;
		margin: 0;
	}
	
	.how-works__step--1 .how-works__arrow-image {
		display: none;
	}
	
	.how-works__step--1 .how-works__arrow-image-mobile {
		display: block;
		width: 8.8vw;
		height: 1.25vw;
		object-fit: contain;
	}
	
	.how-works__step--1 .how-works__step-text {
		order: 3;
		max-width: 45.8vw;
		padding: 2.5vw 3.8vw 2.5vw 0;
		text-align: left;
	}
	
	/* Горизонтальный layout для второго шага на мобильных */
	.how-works__step--2 {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}
	
	.how-works__step--2 .how-works__step-text {
		order: 1;
		max-width: 45.8vw;
		padding: 2.5vw 0 2.5vw 3.8vw;
		text-align: left;
	}
	
	.how-works__step--2 .how-works__step-arrow {
		order: 2;
		margin: 0;
	}
	
	.how-works__step--2 .how-works__arrow-image {
		display: none;
	}
	
	.how-works__step--2 .how-works__arrow-image-mobile {
		display: block;
		width: 10.6vw;
		height: 1.25vw;
		object-fit: contain;
	}
	
	.how-works__step--2 .how-works__step-icon {
		order: 3;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	/* Горизонтальный layout для третьего шага на мобильных */
	.how-works__step--3 {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}
	
	.how-works__step--3 .how-works__step-icon {
		order: 1;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.how-works__step--3 .how-works__step-arrow {
		order: 2;
		margin: 0;
	}
	
	.how-works__step--3 .how-works__arrow-image {
		display: none;
	}
	
	.how-works__step--3 .how-works__arrow-image-mobile {
		display: block;
		width: 1.7vw;
		height: 1.25vw;
		object-fit: contain;
	}
	
	.how-works__step--3 .how-works__step-text {
		order: 3;
		max-width: 45.8vw;
		padding: 2.5vw 3.8vw 2.5vw 0 !important;
		text-align: left !important;
	}
	
	/* Горизонтальный layout для четвертого шага на мобильных */
	.how-works__step--4 {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}
	
	.how-works__step--4 .how-works__step-icon {
		order: 1;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.how-works__step--4 .how-works__step-arrow {
		order: 2;
		margin: 0;
	}
	
	.how-works__step--4 .how-works__arrow-image {
		display: none;
	}
	
	.how-works__step--4 .how-works__arrow-image-mobile {
		display: block;
		width: 8.8vw;
		height: 1.25vw;
		object-fit: contain;
	}
	
	.how-works__step--4 .how-works__step-text {
		order: 3;
		max-width: 45.8vw;
		padding: 2.5vw 3.8vw 2.5vw 0 !important;
		text-align: left !important;
	}
	
	/* Горизонтальный layout для пятого шага на мобильных */
	.how-works__step--5 {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}
	
	.how-works__step--5 .how-works__step-icon {
		order: 1;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.how-works__step--5 .how-works__step-arrow {
		order: 2;
		margin: 0;
	}
	
	.how-works__step--5 .how-works__arrow-image {
		display: none;
	}
	
	.how-works__step--5 .how-works__arrow-image-mobile {
		display: block;
		width: 8.5vw;
		height: 1.25vw;
		object-fit: contain;
	}
	
	.how-works__step--5 .how-works__step-text {
		order: 3;
		max-width: 45.8vw;
		padding: 2.5vw 3.8vw 2.5vw 0 !important;
		text-align: left !important;
	}
	
	/* Горизонтальный layout для шестого шага на мобильных */
	.how-works__step--6 {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}
	
	.how-works__step--6 .how-works__step-text {
		order: 1;
		max-width: 45.8vw;
		padding: 2.5vw 0 2.5vw 3.8vw !important;
		text-align: left !important;
	}
	
	.how-works__step--6 .how-works__step-arrow {
		order: 2;
		margin: 0;
	}
	
	.how-works__step--6 .how-works__arrow-image {
		display: none;
	}
	
	.how-works__step--6 .how-works__arrow-image-mobile {
		display: block;
		width: 10.6vw;
		height: 1.25vw;
		object-fit: contain;
	}
	
	.how-works__step--6 .how-works__step-icon {
		order: 3;
		margin-top: 0;
		margin-bottom: 0;
	}
}

/* ===== Catalog Card Buttons (Figma-perfect styling) ===== */
.mba2 .catalog-card__footer {
	display: flex;
	gap: 1em;
	margin-top: auto;
	padding-top: 1em;
}

.mba2 .catalog-card__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	cursor: pointer;
	text-decoration: none;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 14.289462089538574px;
	line-height: 1.2;
	text-align: center;
	transition: all 0.3s ease;
}

.mba2 .catalog-card__btn--primary {
	width: 146.3px;
	height: 40.47px;
	background: linear-gradient(-51deg, rgba(178, 60, 55, 1) 21%, rgba(51, 14, 17, 1) 100%);
	border-radius: 20.647306442260742px;
	color: #FFFFFF;
}

.mba2 .catalog-card__btn--primary:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(178, 60, 55, 0.3);
}

.mba2 .catalog-card__btn--secondary {
	width: auto;
	height: auto;
	background: none;
	border: none;
	border-radius: 0;
	color: #AAAAAA;
	text-decoration: underline;
	font-size: 14px;
}

.mba2 .catalog-card__btn--secondary:hover {
	background: none;
	border: none;
	color: #888888;
}

.mba2 .catalog-card__btn span {
	display: block;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mba2 .catalog-card__description {
	color: #32343A;
	font-size: 13px;
	line-height: 1.4;
	margin: 1em 0;
	font-weight: 600;
}

/* Hide reviews mobile text on mobile devices */
@media (max-width: 768px) {
	.reviews-mobile-text {
		display: none !important;
	}
	
	/* Make reviews header horizontal on mobile */
	.reviews-header {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-direction: row !important;
		gap: 1em !important;
	}
	
	.reviews-header .h2 {
		margin: 0 !important;
		flex: 1 !important;
	}
	
	.reviews-nav {
		display: flex !important;
		align-items: center !important;
		gap: 0.5em !important;
		flex-shrink: 0 !important;
	}
	
	/* Application form profile - align left on mobile */
	.application-form__profile {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 1em !important;
		text-align: left !important;
	}
	
	.application-form__avatar {
		flex-shrink: 0 !important;
		text-align: left !important;
	}
	
	.application-form__profile-info {
		flex: 1 !important;
		text-align: left !important;
	}
	
	.application-form__name {
		text-align: left !important;
	}
	
	.application-form__position {
		text-align: left !important;
	}
}

/* End */


/* Start:/local/templates/ranepa_im2/assets2/css/mba.css?176154867752242*/
/* =============================
   MBA page — hero block only
   Scoped styles to avoid conflicts
   ============================= */

.mba-page .mba-hero__card {
    position: relative;
    min-height: 338px; /* Figma frame height */
    max-height: 388px;
    border-radius: 20px;
    padding: 17px; /* Figma left/top padding */
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    overflow: hidden;
}

.mba-page .mba-hero__bg {
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 20px;
}

.mba-page .mba-hero__bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.mba-page .mba-hero__bg ._view2 { display: none; }

.mba-page .mba-hero__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 48px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    margin: 0;
    max-width: 735px; /* from Figma */
}

.mba-page .mba-hero__bottom {
    margin-top: auto; /* push to bottom */
    padding-top: 20px;
}

.mba-page .mba-hero__desc {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    margin: 0;
    max-width: 492px; /* from Figma */
}

.mba-page .mba-hero__nav {
    display: grid;
    grid-template-columns: 303px 1fr; /* button width from Figma */
    align-items: center;
    gap: 14px;
    margin-top: 18px;
}

.mba-page .mba-hero__btn {
    height: 43px; /* Figma: 43.24 */
    border-radius: 22px; /* Figma: 22.5 */
    background: #FFFFFF;
    color: #32343A;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px; /* Figma: 16.6 */
    line-height: 1.2;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.mba-page .mba-hero__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

/* Facts row (duration, cost, start) */
.mba-page .mba-hero__facts {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.mba-page .mba-hero__fact {
    display: grid;
    grid-template-columns: 22px auto;
    align-items: center;
    column-gap: 10px;
}

.mba-page .mba-hero__fact img {
    width: 28px;
    height: 28px;
    display: block;
}

.mba-page .mba-hero__fact-value {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 12.6px; /* Figma: 12.57 */
    line-height: 1.2;
}

.mba-page .mba-hero__fact-label {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 7.9px; /* Figma: 7.86 */
    line-height: 1.2;
    opacity: 0.9;
}

/* Responsive */
@media screen and (max-width: 992px) {
    .mba-page .mba-hero__card { font-size: 0.9em; }
    .mba-page .mba-hero__title { font-size: 40px; }
}

@media screen and (max-width: 576px) {
    .mba-page .mba-hero__card {
        height: 29.8em; /* visual parity with other banners */
        padding: 12px;
        font-size: 1em;
        border-radius: 14px;
        max-height: 480px;
    }
    .mba-page .mba-hero__bg ._view1 { display: none; }
    .mba-page .mba-hero__bg ._view2 { display: block; }
    .mba-page .mba-hero__title { font-size: 32px; }
    .mba-page .mba-hero__nav {
        grid-template-columns: 1fr; /* stack */
        gap: 10px;
        margin-top: 12px;
        display: flex;
        flex-direction: column;
    }
    
    .mba-page .mba-hero__facts {
        order: 1;
    }
    
    .mba-page .mba-hero__btn {
        order: 2;
        width: 100%;
        margin-top: 15px;
    }
    .mba-page .mba-hero__facts { 
        gap: 14px; 
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    .mba-page .mba-hero__fact { 
        grid-template-columns: 36px auto; 
        width: 100%;
    }
    .mba-page .mba-hero__fact img { width: 36px; height: 36px; }
    .mba-page .mba-hero__fact-value { font-size: 17.12px; } /* 20% increase from 12.6px */
    .mba-page .mba-hero__fact-label { font-size: 12.48px; } /* 20% increase from 7.9px */
}

/* Fix oneday-stats font sizes on mobile for MBA page */
@media screen and (max-width: 576px) {
    .mba-page .oneday-stats__value {
        font-size: 1.4125em; /* Restore original desktop size */
    }
    .mba-page .oneday-stats__label {
        font-size: 0.8em; /* Restore original desktop size */
    }
}

/* =============================
   MBA page — Gray gradient classes
   Based on Figma design
   ============================= */

/* Gray gradient for MBA page statistics values */
.mba-page .mba-text-gradient {
    background: linear-gradient(18deg, rgba(154, 177, 213, 1) 12%, rgba(75, 78, 85, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

/* Alternative class name for consistency */
.mba-page .mba-stats-gradient {
    background: linear-gradient(18deg, rgba(154, 177, 213, 1) 12%, rgba(75, 78, 85, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

/* Override impro-text-gradient for MBA page */
.mba-page .impro-text-gradient {
    background: linear-gradient(18deg, rgba(154, 177, 213, 1) 12%, rgba(75, 78, 85, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

/* =============================
   MBA page — Running line
   Based on Figma design
   ============================= */

.mba-running-line {
    width: 100%;
    height: 4.375em; /* 70px equivalent */
    background: linear-gradient(90deg, #8090AB 0%, #9AB1D5 100%);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    margin-top: 2.5em; /* 40px equivalent */
}

.mba-running-line__container {
    width: 100%;
    height: 100%;
    position: relative;
}

.mba-running-line__content {
    display: flex;
    align-items: center;
    height: 100%;
    white-space: nowrap;
    animation: mba-running-line 20s linear infinite;
    position: absolute;
    top: 0;
    left: 0;
}

.mba-running-line__text {
    font-family: 'Raleway', sans-serif;
    font-weight: 400;
    font-size: 1.125em; /* 18px equivalent */
    line-height: 1.2;
    color: #FFFFFF;
    margin-right: 3.75em; /* 60px spacing between repetitions */
    display: inline-block;
}

/* Background pattern overlay */
.mba-running-line::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bglinerunstring.svg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.8;
    z-index: 1;
}

.mba-running-line__content {
    z-index: 2;
    position: relative;
}

/* Animation keyframes */
@keyframes mba-running-line {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
    .mba-running-line {
        height: 3.5em; /* 56px on mobile */
    }
    
    .mba-running-line__text {
        font-size: 1em; /* 16px on mobile */
        margin-right: 2.5em; /* 40px spacing on mobile */
    }
    
    .mba-running-line__content {
        animation: mba-running-line 4.5s linear infinite; /* 8x faster on mobile */
    }
}

@media screen and (max-width: 576px) {
    .mba-running-line {
        height: 3em; /* 48px on small mobile */
    }
    
    .mba-running-line__text {
        font-size: 0.875em; /* 14px on small mobile */
        margin-right: 2em; /* 32px spacing on small mobile */
    }
}

/* =============================
   MBA page — Payment block (pixel-perfect)
   Figma node 12242:1441
   ============================= */

.mba-pay { margin: 1.875em 0 0 0; }
.mba-pay .container { position: relative; }
.mba-pay__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25em; /* 20px */
}

.mba-pay__card {
    position: relative;
    height: 19.5em; /* 312px */
    border-radius: 1.25em; /* 20px */
    overflow: hidden;
}

/* Left light card */
.mba-pay__card--left {
    background: #F5F5F5;
}
.mba-pay__card--left:before {
    content: "";
    position: absolute; inset: 0; pointer-events: none;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bgline.svg') center/cover no-repeat;
}
.mba-pay__left-content {
    position: relative; z-index: 2;
    padding: 1.25em 1.25em 0 1.25em; /* 20px top/sides, 0 bottom */
    display: flex; flex-direction: column; align-items: flex-start;
}
.mba-pay__caption {
    margin: 0 0 .25em 0;
    font-family: Raleway, sans-serif; font-weight: 600; font-size: 1em; line-height: 1.2;
    color: #6B7C9F;
}
.mba-pay__price {
    font-family: Raleway, sans-serif; font-weight: 700;
    font-size: 2.25em; /* 36px */
    line-height: 1.1; letter-spacing: -0.01em;
    background: linear-gradient(180deg, #758399 0%, #95AACD 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    margin-bottom: 0;
}
.mba-pay__left-bottom {
    position: absolute; bottom: 1.25em; left: 1.25em; z-index: 2;
    display: flex; flex-direction: column; gap: .75em;
    max-width: 17.5em; /* 280px */
}
.mba-pay__subnote { 
    margin: 0; 
    font-family: Raleway, sans-serif; font-weight: 600; font-size: .75em; line-height: 1.2; color: #9AA7BD;
}
.mba-pay__btn {
    display: inline-flex; align-items: center; justify-content: center;
    height: 2.6875em; /* 43px */
    padding: 0 1.5em; border-radius: 1.375em; /* 22px */
    background: linear-gradient(90deg, #899CBA 0%, #9AB1D5 100%); color: #fff; text-decoration: none;
    font-family: Raleway, sans-serif; font-weight: 700; font-size: 1em; line-height: 1.2;
    transition: transform .2s ease, box-shadow .2s ease;
}
.mba-pay__btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.12); }

.mba-pay__coins {
    position: absolute; right: 1.5em; bottom: .5em; height: 90%; width: auto; z-index: 1;
}

/* Right dark card */
.mba-pay__card--right {
    color: #EDEFF6;
    background: #48484C; /* base under svg */
}
.mba-pay__card--right:before {
    content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bgrightmbacard.svg') center/cover no-repeat;
}
.mba-pay__title-right {
    position: relative; z-index: 1; margin: 1.25em;
    font-family: Raleway, sans-serif; font-weight: 500; font-size: 1.2em; line-height: 1.25;
}
.mba-pay__bullets {
    position: relative; z-index: 1; list-style: none; margin: 0; padding: 0 1.25em 1.25em 1.25em;
    display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0.45em;
}
.mba-pay__bullet { display: grid; grid-template-columns: 1.75em auto; column-gap: .5em; }
.mba-pay__bullet:before {
    content: ""; width: 1.125em; height: 1.125em; margin-top: .2em;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/grayquard.svg') center/contain no-repeat;
}
.mba-pay__bullet-title {
    grid-column: 2 / 3; font-family: Raleway, sans-serif; font-weight: 700; font-size: .875em; line-height: 1.2; margin: 0 0 .25em 0;
}
.mba-pay__bullet-text {
    grid-column: 2 / 3; font-family: Raleway, sans-serif; font-weight: 500; font-size: .75em; line-height: 1.2; opacity: .9;
}

/* Responsive */
@media screen and (max-width: 1100px) {
    .mba-pay__bullets { grid-template-columns: 1fr 1fr; }
}
@media screen and (max-width: 768px) {
    .mba-pay__grid { grid-template-columns: 1fr; }
    .mba-pay__coins { right: .75em; width: 10.5em; }
    .mba-pay__bullets { grid-template-columns: 1fr; }
    article.mba-pay__card.mba-pay__card--right { height: auto; }
}

/* =============================
   MBA page — About block (pixel-perfect)
   Matches Figma: node 11017:18196
   ============================= */

.oneday-about--mba .oneday-about__card {
    position: relative;
    background: #FFFFFF;
    border-radius: 1.25em; /* 20px */
    padding: 1.5em; /* 24px to match spacing in mock */
    box-shadow: 0 0 0 1px rgba(0,0,0,0.06) inset;
    overflow: hidden;
}

.oneday-about--mba .oneday-about__card:before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bglinemba.svg') center/cover no-repeat;
    opacity: 1;
    border-radius: inherit;
}

.oneday-about--mba .mba-about__title {
    margin: 0; /* per mock, spacing handled by grid */
    font-family: Raleway, sans-serif;
    font-weight: 700;
    font-size: 2.25em; /* 36px */
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.oneday-about--mba .oneday-about__content { position: relative; z-index: 1; }
.oneday-about--mba .oneday-about__content p {
    margin: 0 0 1em 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 1em; /* 16px */
    line-height: 1.2;
    color: #32343A;
}

/* Two-column 50/50 layout inside card */
.oneday-about--mba .mba-about__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 1fr; /* 50/50 */
    gap: 1.5em; /* 24px */
    min-height: 18.5em; /* keep right text bottom-aligned area */
}
.oneday-about--mba .mba-about__left { display: flex; flex-direction: column; align-items: flex-start; }
.oneday-about--mba .mba-about__right { display: flex; align-items: flex-end; }

/* Left column text under title */
.oneday-about--mba .mba-about__text {
    margin-top: .9em;
}
.oneday-about--mba .mba-about__text p {
    margin: 0 0 1em 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 1em;
    line-height: 1.2;
    color: #32343A;
}

/* Right column: restored oneday-about__content bottom-aligned */
.oneday-about--mba .oneday-about__content--stat {
    background-color: #2E2F33;
    background-image: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bggallup.webp');
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* top text at top, note at bottom */
    min-height: 8.5em; 
    border-radius: 1.25em; /* 20px */
    padding: 1.25em 1.5em;
    padding-right: 2.5em; /* keep text away from image */
    width: 100%;
}
.oneday-about--mba .oneday-about__stat-text {
    font-family: Raleway, sans-serif;
    font-weight: 700;
    font-size: 1.125em; /* 18px */
    line-height: 1.2;
}
.oneday-about--mba .oneday-about__stat-note {
    margin-top: .6em;
    opacity: .8;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: .8125em; /* 13px */
}

/* Grid simplification for MBA: only text card, no slider */
.oneday-about--mba .oneday-about__grid {
    grid-template-columns: 1fr;
    border: 1px solid #AAAAAA; /* requested */
    border-radius: 20px;       /* requested */
    overflow: hidden;          /* keep children within rounded corners */
}
.oneday-about--mba .about-media-slider { display: none; }

@media screen and (max-width: 992px) {
    .oneday-about--mba .mba-about__layout { grid-template-columns: 1fr; }
}

@media screen and (max-width: 576px) {
    .oneday-about--mba .oneday-about__card { border-radius: .9em; padding: 1em; }
    /* Title: 20px from Figma -> 1.25em, line-height 1.06, letter-spacing -2% */
    .oneday-about--mba .mba-about__title { 
        font-size: 1.45em; 
        line-height: 1.06; 
        letter-spacing: -0.02em; 
    }
    /* Body text: 10px from Figma -> 0.625em, line-height 1.2 */
    .oneday-about--mba .mba-about__text p { 
        font-size: 0.825em; 
        line-height: 1.2; 
    }
    /* Stat block text: 14px -> 0.875em; note: 10px -> 0.625em */
    .oneday-about--mba .oneday-about__stat-text { 
        font-size: 0.875em; 
        line-height: 1.06; 
    }
    .oneday-about--mba .oneday-about__stat-note { 
        font-size: 0.625em; 
        line-height: 1.06; 
    }
    .oneday-about--mba .mba-about__layout { gap: 1em; }

    /* Mobile: apply 0.6 opacity overlay to background without affecting text */
    .oneday-about--mba .oneday-about__content--stat { position: relative; }
    .oneday-about--mba .oneday-about__content--stat::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(46, 47, 51, 0.6);
        border-radius: inherit;
        z-index: 0;
        pointer-events: none;
    }
    .oneday-about--mba .oneday-about__content--stat > * { position: relative; z-index: 1; }
}

/* =============================
   MBA page — Audience section (Figma 12184:1406)
   ============================= */
.mba-audience { margin-top: 60px; }
.mba-audience__title {
    margin: 0 0 .75em 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 2.25em; /* 36px */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}
.mba-audience__grid { display: grid; grid-template-columns: 564px 1fr; gap: 1.25em; }

/* Left column */
.mba-audience__left { display: grid; grid-template-rows: 197px 197px; gap: 1.25em; }
.mba-audience__box { border-radius: 20px; overflow: hidden; position: relative; }
.mba-audience__box--lines {
    background: #32343A;
    color: #fff;
}
.mba-audience__box--lines:before {
    content: "";
    position: absolute; inset: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bgmbadlyakogo.svg') center/cover no-repeat;

}
.mba-audience__box-text { position: relative; z-index: 1; padding: 15px; font-family: Raleway, sans-serif; font-weight: 600; font-size: 1.25em; line-height: 1.2; }
.mba-audience__box--photo { background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bgkak2.webp') center/cover no-repeat; }

/* Right panel */
.mba-audience__panel { background: #F5F5F5; border-radius: 20px; height: 411px; position: relative; }
.mba-audience__list { list-style: none; margin: 0; padding: 37px 20px; display: flex; flex-direction: column; justify-content: space-between; height: 100%; }
.mba-audience__list li { display: flex; align-items: flex-start; column-gap: 10px; font-family: Raleway, sans-serif; font-weight: 600; font-size: 1em; color: #32343A; }
.mba-audience__bullet { flex: 0 0 15px; width: 15px; height: 15px; display: inline-block; }

@media screen and (max-width: 992px) {
    .mba-audience__grid { grid-template-columns: 1fr; }
}

@media screen and (max-width: 576px) {
    .mba-audience { margin-top: 40px; }
    .mba-audience__title { font-size: 1.25em; }
    .mba-audience__left { grid-template-rows: 160px 160px; }
    .mba-audience__box-text { font-size: 0.875em; }
    .mba-audience__panel { height: auto; }
    .mba-audience__list { gap: 10px; }
    
}


/* =============================
   MBA page — Learn block (Figma 12209:1448)
   ============================= */
.mba-learn { margin-top: 40px; }
.mba-learn__title {
    margin: 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 2.25em; /* 36px */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}
.mba-learn__subtitle {
    margin: 12px 0 0 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 1.5625em; /* 25px */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #DADADA;
}
.mba-learn__panel {
    margin-top: 25px;
    background: #F5F5F5;
    border-radius: 20px;
    padding: 17px 29px 17px 29px;
}
.mba-learn__grid {
    display: grid;
    grid-template-columns: 419px 352px 1fr; /* 425/367/374 minus inner paddings */
    gap: 37px 32px; /* row gap ~126 group spacing => 32 horizontally, 37 vertically */
}
.mba-learn__item { display: grid; grid-template-columns: 20px 1fr; align-items: start; }
.mba-learn__num {
    font-family: Raleway, sans-serif;
    font-weight: 700;
    font-size: 29px;
    line-height: 1.51;
}
.mba-learn__text {
    margin-left: 10px;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    color: #595959;
}

@media screen and (max-width: 1200px) {
    .mba-learn__grid { grid-template-columns: 1fr 1fr; }
}
@media screen and (max-width: 768px) {
    .mba-learn__title { font-size: 1.5em; }
    .mba-learn__subtitle { font-size: 1em; }
    .mba-learn__grid { grid-template-columns: 1fr; gap: 18px; }
}

/* =============================
   MBA page — Program structure (Figma 12214:1452)
   Pixel-perfect block
   ============================= */
.mba-structure { margin-top: 40px; }
.mba-structure__head { margin-bottom: 16px; }
.mba-structure__title {
    margin: 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 2.25em; /* 36px */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}
.mba-structure__intro {
    margin-top: 12px;
    max-width: 940px;
    font-family: Raleway, sans-serif;
    font-weight: 600; /* semibold */
    font-size: 1.5625em; /* 25px to match .mba-learn__subtitle */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #DADADA;
}

.mba-structure__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch; /* equalize heights per row */
}

/* Responsive columns */
@media screen and (max-width: 1200px) {
    .mba-structure__grid { grid-template-columns: repeat(2, 1fr); }
}
@media screen and (max-width: 576px) {
    .mba-structure__grid { display: none; }
}

.structure-card {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 16px 18px 18px 18px;
    position: relative;
    box-shadow: 0 0 0 1px rgba(0,0,0,0.06) inset;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.structure-card__section { margin-top: 10px; }
.structure-card__section:last-child {
    margin-top: auto;
}
.structure-card:before {
    content: "";
    position: absolute; inset: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bglinemba.svg') center/cover no-repeat;
    opacity: .12;
    pointer-events: none;
}
.structure-card__meta { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.structure-card__badge {
    height: 24px; padding: 0 10px; border-radius: 100px; background: linear-gradient(135deg, #8BB3E8 0%, #A8C8F0 50%, #B8D2F5 100%); color: #FFFFFF;
    display: inline-flex; align-items: center; justify-content: center;
    font-family: Raleway, sans-serif; font-weight: 600; font-size: 12px; line-height: 1;
}
.structure-card__time { display: inline-flex; align-items: center; gap: 6px; color: #8E8E8E; font-family: Raleway, sans-serif; font-weight: 600; font-size: 12px; }
.structure-card__time img { width: 12px; height: 12px; }

.structure-card__title {
    margin: 0 0 10px 0;
    font-family: Raleway, sans-serif;
    font-weight: 700;
    font-size: 1.25em; /* 20px */
    line-height: 1.2;
    color: #32343A;
}

.structure-card__section { margin-top: 10px; }
.structure-card__section:last-child {
    margin-top: auto;
}
.structure-card__section-title {
    display: inline-flex; align-items: center; gap: 8px; margin: 0 0 8px 0;
    font-family: Raleway, sans-serif; font-weight: 700; font-size: 14px; color: #32343A;
}
/* Icons for section titles */
.structure-card__section-title.is-disciplina:before { content: ""; width: 14px; height: 14px; background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/disciplina.svg') center/contain no-repeat; display: inline-block; }
.structure-card__section-title.is-attestacia:before { content: ""; width: 14px; height: 14px; background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/attestacia.svg') center/contain no-repeat; display: inline-block; }
.structure-card__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.structure-card__list li { position: relative; padding-left: 18px; font-family: Raleway, sans-serif; font-weight: 600; font-size: 12px; color: #595959; line-height: 1.2; }
.structure-card__list li:before { content: ""; position: absolute; left: 0; top: 2px; width: 14px; height: 14px; background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/grayquard.svg') center/contain no-repeat; }
.structure-card__note { font-family: Raleway, sans-serif; font-weight: 600; font-size: .75em; color: #000000; margin-top: auto; }

/* Final attestation card - full width on desktop */
.structure-card--final {
    grid-column: 1 / -1;
}

/* Final attestation card - text alignment */
.structure-card--final .structure-card__note {
    margin-top: 0;
}

/* Footnote under grid */
.mba-structure__footnote {
    margin-top: 8px;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 9px;
    line-height: 1.2;
    color: #DADADA;
}

/* Responsive columns */
@media screen and (max-width: 1200px) {
    .mba-structure__grid { grid-template-columns: repeat(2, 1fr); }
}
@media screen and (max-width: 576px) {
    .mba-structure__title { font-size: 1.25em; }
    .mba-structure__intro { font-size: 1em; line-height: 1.06; letter-spacing: -0.02em; }
    .mba-structure__grid { grid-template-columns: 1fr; gap: 12px; }
    .structure-card { border-radius: 14px; padding: 12px; }
    .structure-card__title { font-size: 1.0625em; }
}

/* Mobile slider styles */
.mba-structure__slider { display: none; }
@media screen and (max-width: 576px) {
    .mba-structure__slider { display: block; }
    /* Prevent inner vertical scrolling and extra overflow on mobile */
    .mba-structure__slider .swiper-container { 
        overflow: hidden; 
        height: auto;
        width: 100% !important; /* override global .slider width expansion */
    }
    .mba-structure__slider .swiper-wrapper { 
        padding-bottom: 0; 
        margin-bottom: 12px; 
        align-items: stretch;
    }
    .mba-structure__slider .swiper-slide { 
        width: auto; 
        height: auto;
        display: flex;
        align-items: stretch;
    }
    .mba-structure__slider .swiper-slide > * {
        min-height: 1px; /* avoid min-content height quirks causing scroll */
    }
    .mba-structure__slider .structure-card {
        height: 100%;
        min-height: 280px;
        flex: 1;
    }
    .mba-structure__slider .mba-structure__scrollbar { margin-top: 10px; }
}

/* =============================
   MBA page — How it works (Figma 11017:20734)
   ============================= */
.mba-how { margin-top: 30px; }
.mba-how__title {
    margin: 0 0 14px 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 2.25em; /* 36px */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}
.mba-how__panel { 
    background: #F5F5F5; 
    border-radius: 20px; 
    padding: 20px; 
    display: grid; 
    grid-template-columns: 600px 1fr; 
    gap: 20px; 
    align-items: stretch;
    /* Safari compatibility */
    -webkit-grid-template-columns: 600px 1fr;
}
/* left column is implicit grid cell; reserved for potential modifiers */
.mba-how__left { display: block; }
.mba-how__card { position: relative; border-radius: 20px; overflow: hidden; min-height: 100%; }
.mba-how__card img { 
    position: absolute; 
    top: 0; 
    left: 0; 
    right: 0; 
    bottom: 0; 
    display: block; 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    z-index: 0; 
}
.mba-how__card::before { 
    content: ""; 
    position: absolute; 
    top: 0; 
    left: 0; 
    right: 0; 
    bottom: 0; 
    background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,0.55) 100%); 
    z-index: 1; 
}
.mba-how__card-content { position: absolute; left: 13px; right: 13px; bottom: 13px; color: #fff; z-index: 2; }
.mba-how__card-title { font-family: Raleway, sans-serif; font-weight: 700; font-size: 20px; line-height: 1.2; margin: 0 0 8px 0; }
.mba-how__card-desc { font-family: Raleway, sans-serif; font-weight: 600; font-size: 15px; line-height: 1.2; max-width: 480px; }

.mba-how__facts { list-style: none; margin: 0 14px 14px 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 10px; }
.mba-how__fact { display: grid; grid-template-columns: 22px 1fr; align-items: center; column-gap: 8px; font-family: Raleway, sans-serif; font-weight: 600; font-size: 18.6px; color: #32343A; }
.mba-how__icon img { width: 24px; height: 24px; }

.mba-how__tiles { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 0; }
.how-tile { background: #FFFFFF; border-radius: 15px; padding: 12px 20px; font-family: Raleway, sans-serif; font-weight: 600; font-size: 18.6px; color: #32343A; }
.how-tile--gray { background: #E5E5E5; }
.how-tile__info { 
    width: 21px; 
    height: 21px; 
    display: inline-block; 
    margin-left: 5px; 
    position: relative;
    cursor: pointer;
    vertical-align: middle;
}

/* Tooltip styles */
.how-tile__info::before {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: white;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.4;
    white-space: nowrap;
    max-width: 300px;
    width: 300px;
    white-space: normal;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1000;
    margin-bottom: 8px;
}

.how-tile__info::after {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: #333;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1000;
    margin-bottom: 3px;
}

.how-tile__info:hover::before,
.how-tile__info:hover::after {
    opacity: 1;
    visibility: visible;
}

@media screen and (max-width: 992px) {
    .mba-how__panel { 
        grid-template-columns: 1fr; 
        -webkit-grid-template-columns: 1fr;
    }
    .mba-how__card { min-height: 260px; }
}


/* =============================
   MBA page — FAQ hidden questions
   ============================= */
.qa-card--hidden {
    display: none;
}

.qa-card--hidden.show {
    display: block;
}

/* =============================
   MBA page — Image gradient border
   ============================= */
.mba-img-gradient-border {
    /* Keep size within parent when border is added */
    box-sizing: border-box;
    display: block;
    /* Gradient 4px border */
    border: 4px solid transparent;
    background:
        linear-gradient(0deg, rgba(0,0,0,0), rgba(0,0,0,0)) padding-box,
        linear-gradient(135deg, #CFCFCF 0%, #8E8E8E 100%) border-box;
}

/* Utility to replace purple ring on wrapper with gray gradient ring */
.mba-page .impro-alla__photo.mba-gray-gradient-border,
.mba-page .impro-alla-horizontal__photo.mba-gray-gradient-border {
    box-sizing: border-box;
    border: 4px solid transparent;
    background:
        linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,1)) padding-box,
        linear-gradient(135deg, #CFCFCF 0%, #8E8E8E 100%) border-box;
    padding: 0;
}

/* =============================
   MBA page — Standards (Figma 12236:1406)
   Pixel-perfect block
   ============================= */
.mba-standards { margin-top: 40px; }
.mba-standards__head { margin-bottom: 14px; }
.mba-standards__title {
    margin: 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 36px; /* per figma */
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}
.mba-standards__subtitle {
    margin-top: 12px;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 25px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #DADADA;
}

.mba-standards__slider .swiper-container { overflow: visible; }
.mba-standards__slider .swiper-wrapper { padding-bottom: 18px; }
.mba-standards__slider .swiper-slide { width: 33.3333%; }

.standard-card {
    position: relative;
    background: #FFFFFF; /* white card background as requested */
    border-radius: 20px;
    padding: 18px 20px;
    min-height: 146px; /* figma row height */
    box-shadow: 0 0 0 1px rgba(0,0,0,0.06) inset;
    overflow: hidden;
}
.standard-card:before {
    content: "";
    position: absolute; inset: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/gerb.svg') right 20px bottom 10px/124px 124px no-repeat;
    opacity: 1;
    z-index: 0; /* place emblem under content */
    pointer-events: none;
}
.standard-card > * { position: relative; z-index: 1; }

/* Variants with background logos */
.standard-card--rics:before {
    background-image: url('/local/templates/ranepa_im2/assets2/css/../img/mba/Rics.svg');
    background-position: right 16px bottom 8px;
    background-size: 140px auto;
}
.standard-card--amba:before {
    background-image: url('/local/templates/ranepa_im2/assets2/css/../img/mba/AMBA.svg');
    background-position: right 12px bottom 8px;
    background-size: 150px auto;
}
.standard-card__title {
    margin: 0 0 8px 0;
    font-family: Raleway, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.2;
    color: #32343A;
}
.standard-card__note {
    margin: 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
    color: #8E8E8E;
    max-width: 740px;
}

/* Visible scrollbar both desktop and mobile */
.mba-standards__scrollbar {
    height: 4px;
    background: #F5F5F5;
}
.mba-standards__scrollbar .swiper-scrollbar-drag {
    background: #AFB0B2;
    border-radius: 7px;
}

@media screen and (max-width: 1200px) {
    .mba-standards__slider .swiper-slide { width: 50%; }
}
@media screen and (max-width: 768px) {
    .mba-standards__title { font-size: 1.25em; }
    .mba-standards__subtitle { font-size: 1em; }
    .mba-standards__slider .swiper-slide { width: auto; }
}

/* Mobile tweaks: no right margin between slides and equal card heights */
@media screen and (max-width: 576px) {
    .mba-standards__slider .swiper-slide { 
        margin-right: 0 !important; 
        display: flex; 
        width: 90% !important;
    }
    .mba-standards__slider .standard-card { height: 146px; }
}

/* Mobile: keep horizontal photo 80x80 even on small screens */
@media screen and (max-width: 768px) {
    .mba-page .impro-alla-horizontal__photo.mba-gray-gradient-border {
        width: 80px;
        height: 80px;
        flex: 0 0 80px;
    }
}
@media screen and (max-width: 480px) {
    .mba-page .impro-alla-horizontal__photo.mba-gray-gradient-border {
        width: 80px;
        height: 80px;
        flex: 0 0 80px;
    }
}

/* =============================
   MBA page — Diploma + Reviews (Figma 12347:1526)
   Pixel-perfect implementation
   ============================= */

.mba-diploma-reviews { margin-top: 30px; }
.mba-diploma-reviews__grid {
    display: grid;
    grid-template-columns: 569px 752px; /* Figma: 569 + 10 gap + 752 = 1331 */
    gap: 10px;
    align-items: stretch;
}

/* Left card: Diploma */
.mba-diploma-card {
    position: relative;
    height: 328px;
    border-radius: 20px;
    overflow: hidden;
    color: #FFFFFF;
    padding: 16px; /* 15-17 in figma */
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.mba-diploma-card::before { /* background image */
    content: "";
    position: absolute; inset: 0; z-index: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/diplom.png') right 0px bottom 0px/auto 100% no-repeat,
                linear-gradient(180deg, #7E8EA7 0%, #9AB1D5 100%);
    filter: saturate(1);
}
.mba-diploma-card__title {
    position: relative; z-index: 1;
    margin: 0 0 8px 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 32px;
    line-height: 1.06;
    letter-spacing: -0.02em;
}
.mba-diploma-card__text {
    position: relative; z-index: 1;
    margin: 0;
    max-width: 320px; /* match visual width */
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 17px;
    line-height: 1.2;
}

/* Right card: Reviews container */
.mba-reviews-card {
    position: relative;
    height: 328px;
    border-radius: 20px;
    background: #FAFAFA;
    box-shadow: 0 0 0 1px #E2E2E2 inset;
    padding: 16px 16px 12px 16px;
    display: flex; flex-direction: column;
    overflow: hidden; /* keep slider inside rounded card */
}
.mba-reviews-card__head {
    display: flex; align-items: center; justify-content: space-between;
    gap: 10px; margin-bottom: 10px;
}
.mba-reviews-card__title {
    font-family: Raleway, sans-serif; font-weight: 600; font-size: 32px; line-height: 1.06; color: #32343A;
}
.mba-reviews-card__subtitle {
    margin-top: 6px; font-family: Raleway, sans-serif; font-weight: 600; font-size: 17px; color: #AAAAAA;
}
.mba-reviews-card__titles { display: flex; flex-direction: column; }

/* Nav buttons in teacher-card style */
.reviews-nav { display: flex; align-items: center; gap: 14px; }
.reviews-nav__btn { 
    width: 38px; 
    height: 38px; 
    border-radius: 1.266em; /* same as teacher-card */
    display: grid; 
    place-items: center; 
    background: #f5f5f5; /* same as teacher-card */
    border: 1px solid #d7d7d8; /* subtle border like teacher cards */
    cursor: pointer; 
    transition: background-color 0.2s ease;
}
.reviews-nav__btn:hover { 
    background: #e0e1e5; /* hover state like teacher-card links */
}
.reviews-nav__btn:active { 
    transform: translateY(0.5px); 
}

/* Slider area */
.reviews-slider { position: relative; }
.reviews-slider .swiper-container { overflow: visible; }
/* Within the MBA card, clip the slider to the card */
.mba-reviews-card .reviews-slider .swiper-container { overflow: hidden; }
.reviews-slider .swiper-wrapper { 
    align-items: stretch; 
    justify-content: flex-start; 
    padding-left: 20px; /* left margin for first slide */
}
.reviews-slider .swiper-slide { height: auto; width: 460px !important; flex-shrink: 0; }
.reviews-slider .swiper-scrollbar { height: 4px; background: #F5F5F5; margin-top: 10px; }
.reviews-slider .swiper-scrollbar-drag { border-radius: 14px; background: #AFB0B2; }

/* Review card sizing inside this block matches oneday styles */
.review-card { background: #fff; border-radius: 16px; padding: 16px; height: 100%; display: flex; flex-direction: column; width: 460px !important; flex-shrink: 0; }

/* Force proper spacing between slides */
.mba-reviews-card .reviews-slider .swiper-slide {
    width: 460px !important;
    margin-right: 20px;
    box-sizing: border-box;
}
.mba-reviews-card .reviews-slider .swiper-slide:last-child {
    margin-right: 0;
}

/* Ensure first slide has proper left margin */
.mba-reviews-card .reviews-slider .swiper-slide:first-child {
    margin-left: 0; /* reset any margin, padding handles spacing */
}
/* Keep text compact to avoid vertical overflow */
.mba-reviews-card .review-card__text {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media screen and (max-width: 1400px) {
    .mba-diploma-reviews__grid { grid-template-columns: 1fr; }
    .mba-diploma-card, .mba-reviews-card { height: auto; }
}
@media screen and (max-width: 576px) {
    .mba-diploma-card__title { font-size: 20px; }
    .mba-diploma-card__text { font-size: 14px; }
    .mba-reviews-card__title { font-size: 20px; }
    .mba-reviews-card__subtitle { font-size: 14px; }
    .reviews-nav__btn { width: 38px; height: 38px; border-radius: 1.266em; }
    
    /* Mobile: show only one review per slide */
    .mba-reviews-card .reviews-slider .swiper-slide {
        width: 100% !important;
        margin-right: 0;
    }
    .mba-reviews-card .review-card {
        width: 100% !important;
    }
    
    /* Mobile: reduce left padding to 2px */
    .mba-reviews-card .reviews-slider .swiper-wrapper {
        padding-left: 2px;
    }
}

/* Ensure review modal looks correct on this page (shared CSS elsewhere) */
.mba-page #reviewModal { font-family: Raleway, sans-serif; }

/* Mobile: show author before quote in horizontal block */
@media screen and (max-width: 768px) {
    .mba-page .impro-alla-horizontal__author { order: -1; }
    .mba-page .impro-alla-horizontal__quote { order: 0; }
}
@media screen and (max-width: 480px) {
    .mba-page .impro-alla-horizontal__author { order: -1; }
    .mba-page .impro-alla-horizontal__quote { order: 0; }
}

/* =============================
   MBA page — Портрет слушателя программы (Figma 11017:21121)
   Pixel-perfect implementation
   ============================= */
.mba-portrait { margin-top: 30px; }
.mba-portrait--visible { 
    max-width: 1378px; 
    width: 100%; 
    margin: 80px auto 0 auto; 
    padding: 0 1.625em; 
}
.mba-portrait > .container {
    position: relative;
    border-radius: 20px;
    background: #F5F5F5 url('/local/templates/ranepa_im2/assets2/css/../img/mba/bg_portretslush.svg') center/cover no-repeat;
    padding: 26px; /* Figma: x padding 26, inner gap 50 */
    overflow: hidden;
}
.mba-portrait__title {
    margin: 0 0 22px 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}
.mba-portrait__grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Figma columns 605 + 50 + 605 */
    gap: 50px;
    align-items: start;
}
.portrait-col__head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}
.portrait-col__icon { width: 22px; height: 22px; display: block; }
.portrait-col--position .portrait-col__icon { width: 27.15px; height: 23.43px; }
.portrait-col__title {
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 24px;
    letter-spacing: -0.02em;
    color: #32343A;
}

.portrait-list { display: grid; row-gap: 25px; }
.portrait-item__label {
    margin: 0 0 9px 0;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #32343A;
}
.portrait-item__bar {
    height: 30px;
    border-radius: 15px;
    background: #FFFFFF;
    position: relative;
    overflow: hidden;
}
.portrait-item__fill {
    --p: 0; /* target percent 0..100 */
    --w: 0; /* animated working percent */
    display: block;
    height: 100%;
    width: calc(var(--w) * 1%);
    background: linear-gradient(-31deg, #9AB1D5 12%, #4B4E55 100%);
    border-radius: 15px;
    position: relative;
    opacity: 0;
    transition: width 900ms cubic-bezier(.2,.8,.2,1), opacity 300ms ease;
}
.mba-portrait--visible .portrait-item__fill { --w: var(--p); opacity: 1; }
.portrait-item__badge {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%) translateX(8px);
    height: 24px;
    padding: 0 10px;
    border-radius: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: Raleway, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1;
    color: #FFFFFF;
    white-space: nowrap;
    opacity: 0;
    transition: opacity 300ms ease, transform 300ms ease;
}
.mba-portrait--visible .portrait-item__badge { opacity: 1; transform: translateY(-50%) translateX(0); }

/* Prevent badge overflow when fill is narrow */
/* Apply min-width for tiny values only when animated */
.mba-portrait--visible .portrait-item__fill[style*='--p:0'],
.mba-portrait--visible .portrait-item__fill[style*='--p:1'],
.mba-portrait--visible .portrait-item__fill[style*='--p:2'],
.mba-portrait--visible .portrait-item__fill[style*='--p:3'],
.mba-portrait--visible .portrait-item__fill[style*='--p:4'],
.mba-portrait--visible .portrait-item__fill[style*='--p:5'] { min-width: 58px; }

/* Staggered appearance */
.portrait-col .portrait-item:nth-child(1) .portrait-item__fill { transition-delay: 0ms; }
.portrait-col .portrait-item:nth-child(2) .portrait-item__fill { transition-delay: 100ms; }
.portrait-col .portrait-item:nth-child(3) .portrait-item__fill { transition-delay: 200ms; }
.portrait-col .portrait-item:nth-child(4) .portrait-item__fill { transition-delay: 300ms; }
.portrait-col .portrait-item:nth-child(5) .portrait-item__fill { transition-delay: 400ms; }
.portrait-col .portrait-item:nth-child(6) .portrait-item__fill { transition-delay: 500ms; }
.portrait-col .portrait-item:nth-child(7) .portrait-item__fill { transition-delay: 600ms; }

.portrait-col .portrait-item:nth-child(1) .portrait-item__badge { transition-delay: 200ms; }
.portrait-col .portrait-item:nth-child(2) .portrait-item__badge { transition-delay: 300ms; }
.portrait-col .portrait-item:nth-child(3) .portrait-item__badge { transition-delay: 400ms; }
.portrait-col .portrait-item:nth-child(4) .portrait-item__badge { transition-delay: 500ms; }
.portrait-col .portrait-item:nth-child(5) .portrait-item__badge { transition-delay: 600ms; }
.portrait-col .portrait-item:nth-child(6) .portrait-item__badge { transition-delay: 700ms; }
.portrait-col .portrait-item:nth-child(7) .portrait-item__badge { transition-delay: 800ms; }

@media screen and (max-width: 1400px) {
    .mba-portrait > .container { padding: 20px; }
    .mba-portrait__grid { grid-template-columns: 1fr; gap: 24px; }
}
@media screen and (max-width: 576px) {
    .mba-portrait--visible { padding: 0 0.75em; }
    .mba-portrait__title { font-size: 24px; }
    .portrait-col__title { font-size: 18px; }
    .portrait-item__badge { font-size: 14px; height: 22px; }
    .portrait-list { row-gap: 20px; }
}

/* =============================
   MBA page — Features block (Figma 11017:21244)
   Built on homepage "why" styles, adjusted sizes for pixel-perfect match
   ============================= */
.mba-features { margin-top: 30px; }
.mba-features .why-slider .swiper-slide { width: 26.125em; }
@media screen and (min-width: 993px) {
    /* Desktop: cap slide/card width to 450px (28.125em) */
    .mba-features .why-slider .swiper-slide { width: 28.125em; }
    .mba-features .why-card { max-width: 28.125em; padding-right: 4em; padding-bottom: 37px; position: relative; }
}
.mba-features .why-card { border-radius: 1.266em; background: #F5F5F5; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding: 1.58em; }
.mba-features .why-card__top { display: grid; grid-template-columns: 100%; gap: 0.79em; margin-bottom: 0 !important;}
.mba-features .why-card__title { font-family: Raleway, sans-serif; font-weight: 700; font-size: 1.25em; line-height: 110%; letter-spacing: -0.02em; color: #32343A; }
.mba-features .why-card__desc { font-family: Raleway, sans-serif; font-weight: 600; font-size: 0.98713em; line-height: 110%; letter-spacing: -0.02em; color: #595959; }
.mba-features .why-card__icon { height: 4em; display: block; margin: auto 0 0 auto; }
@media screen and (max-width: 992px) {
    .mba-features .why-slider .swiper-slide { width: 18.825em; }
    .mba-features .why-card { border-radius: 1.25em; padding: 1.22em; }
    .mba-features .why-card__top { gap: 0.61em;  }
    .mba-features .why-card__title { font-size: 1.28994em; font-weight: 600; }
    .mba-features .why-card__desc { font-size: 0.76463em; }
    .mba-features .why-card__icon { height: 3em; }
}

/* Mobile: set name and subtitle to 16px (1em) */
@media screen and (max-width: 768px) {
    .mba-page .impro-alla-horizontal__name { font-size: 1em; }
    .mba-page .impro-alla-horizontal__subtitle { font-size: 1em; }
}
@media screen and (max-width: 480px) {
    .mba-page .impro-alla-horizontal__name { font-size: 1em; }
    .mba-page .impro-alla-horizontal__subtitle { font-size: 1em; }
}

/* =============================
   Как поступить section (Figma 12291:1406)
   Pixel perfect implementation
   ============================= */

.kak-postupit {
    margin-top: 60px;
    margin-bottom: 60px;
}

.kak-postupit__title {
    margin: 0 0 43px 0;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}

.kak-postupit__grid {
    display: grid;
    grid-template-columns: 569px 747px;
    gap: 10px;
    align-items: start;
}

/* Left column */
.kak-postupit__left {
    display: grid;
    grid-template-rows: 201px 201px;
    gap: 10px;
}

.kak-postupit__requirements-box {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    background: linear-gradient(18deg, rgba(154, 177, 213, 1) 12%, rgba(75, 78, 85, 1) 100%);
    padding: 15px;
    box-sizing: border-box;
}

.kak-postupit__requirements-box::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bgblueleftkakpostupit.svg') center/cover no-repeat;
    opacity: 0.31;
    z-index: 1;
}

.kak-postupit__requirements-text {
    position: relative;
    z-index: 2;
    font-family: 'Raleway', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2;
    color: #FFFFFF;
    margin: 0;
}

.kak-postupit__image-box {
    border-radius: 20px;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/bgkak2.webp') center/cover no-repeat;
    height: 201px;
}

/* Right column */
.kak-postupit__panel {
    background: #F5F5F5;
    border-radius: 20px;
    padding: 37px 20px;
    height: 411px;
    position: relative;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

/* Fix column widths to prevent shifting when text doesn't wrap */
@media screen and (min-width: 769px) {
    .kak-postupit__panel {
        grid-template-columns: 2fr 1fr;
    }
    
    /* Absolute positioning for "Вступительные испытания" section */
    .kak-postupit__section:last-child {
        position: absolute;
        right: -50px;
        top: 37px;
        width: calc(50% - 10px);
    }
}


.kak-postupit__section {
    position: relative;
    z-index: 2;
}

.kak-postupit__section-title {
    margin: 0 0 20px 0;
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.2;
    color: #32343A;
}

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

.kak-postupit__list li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 16px;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.5;
    color: #32343A;
}

.kak-postupit__list li:last-child {
    margin-bottom: 0;
}

.kak-postupit__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/mba/grayquard.svg') no-repeat center;
    background-size: contain;
}

/* Prevent text wrapping for specific list items on desktop */
@media screen and (min-width: 769px) {
    .kak-postupit__list li:nth-child(6),
    .kak-postupit__list li:nth-child(7),
    .kak-postupit__list li:nth-child(8) {
        white-space: nowrap;
        overflow: visible;
    }
}

/* Responsive design */
@media screen and (max-width: 1400px) {
    .kak-postupit__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .kak-postupit__left {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr;
        gap: 20px;
    }
    
    .kak-postupit__panel {
        height: auto;
        min-height: 411px;
    }
}

@media screen and (max-width: 768px) {
    .kak-postupit {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    
    .kak-postupit__title {
        font-size: 28px;
        margin-bottom: 30px;
    }
    
    .kak-postupit__left {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
    }
    
    .kak-postupit__requirements-box {
        height: auto;
        min-height: 160px;
    }
    .kak-postupit__image-box {
        height: 160px;
    }
    
    .kak-postupit__requirements-text {
        font-size: 18px;
    }
    
    .kak-postupit__panel {
        padding: 30px 20px;
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .kak-postupit__section-title {
        font-size: 18px;
    }
    
    .kak-postupit__list li {
        font-size: 14px;
        line-height: 1.4;
    }
}

@media screen and (max-width: 480px) {
    .kak-postupit__title {
        font-size: 24px;
    }
    
    .kak-postupit__requirements-text {
        font-size: 16px;
    }
    
    .kak-postupit__section-title {
        font-size: 16px;
    }
    
    .kak-postupit__list li {
        font-size: 13px;
        line-height: 1.3;
    }
}


/* End */


/* Start:/local/templates/ranepa_im2/assets2/css/improffessional.css?176154867741752*/
.impro-text-gradient {
    background: linear-gradient(90deg, #634EA2 0%, #9774FF 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

/* Override gradients to use the previously used purple */
.oneday-about .gradient-text,
.oneday-about .red-text,
.oneday-about__content strong,
.oneday-stats__value.impro-text-gradient {
    background: linear-gradient(90deg, #634EA2 0%, #9774FF 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}


/* ===== How-Works (Impro) — Figma matching ===== */
.impro-howworks .how-works__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
}

.impro-howworks .how-works__diagram {
    max-width: 1325px;
    height: 586px;
}

.impro-howworks .how-works__bg-image { opacity: 1; }

/* Tooltip with two rows (title + date) */
.impro-howworks .how-works__step-text {
    display: flex;
    flex-direction: column;
    gap: 6px;
    background: transparent;
    box-shadow: none;
    padding: 0;
    transition: transform 0.25s ease;
}

/* Prevent icon from shrinking in flex rows */
.impro-howworks .how-works__step-icon { flex: 0 0 auto; }

.impro-howworks .how-works__step-text::after { display: none; }

.impro-howworks .impro-step-title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 15px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    background: linear-gradient(90deg, #634EA2 0%, #9774FF 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.impro-howworks .impro-step-date {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 12px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A !important;
    opacity: 1;
    display: block;
    margin-top: 8px;
    position: relative;
    z-index: 10;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #32343A !important;
}

/* Hover: keep background as-is, just scale a bit */
.impro-howworks .how-works__step:hover .how-works__step-text {
    background: transparent !important;
    box-shadow: none !important;
    transform: scale(1.06);
}

/* Ensure dates don't get affected by hover gradients */
.impro-howworks .how-works__step:hover .impro-step-date {
    color: #32343A !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #32343A !important;
}

/* Positions tuned to match Figma frame (desktop) */
.impro-howworks .how-works__step--1 { top: 25%; left: 6%; }
.impro-howworks .how-works__step--2 { top: 0%; left: 22%; }
.impro-howworks .how-works__step--3 { top: 11%; left: 31.3%; }
.impro-howworks .how-works__step--4 { top: 37%; left: 45.7%; }
.impro-howworks .how-works__step--5 { top: 26.5%; left: 64.5%; }
.impro-howworks .how-works__step--6 { top: 18%; left: 79%; }

/* Circle and dot colors on hover keep purple accent */
.impro-howworks .how-works__step:hover .how-works__step-icon .step-circle {
    stroke: #7D61E6;
    fill: #7D61E6;
}
.impro-howworks .how-works__step:hover .how-works__step-icon .step-dot { fill: #fff; }

/* Mobile/tablet adjustments */
@media (max-width: 1200px) {
    .impro-howworks .how-works__diagram { height: 520px; }
}

@media (max-width: 768px) {
    .impro-howworks .how-works__diagram { height: 820px; }
    .impro-howworks .impro-step-title { font-size: 14px; }
    .impro-howworks .impro-step-date { font-size: 12px; }
    /* keep original icon size on tablet */
    .impro-howworks .how-works__step-icon { width: 60px; height: 58px; }
    
    /* Замена линии на планшетах */
    .impro-howworks .how-works__line {
        height: 1338.74px;
        width: 100%;
    }
    
    .impro-howworks .how-works__line-image {
        content: url('/local/templates/ranepa_im2/assets2/css/../img/proffesional/line_mobile_proffesional.svg');
        width: 100%;
        height: 1338.74px;
        object-fit: contain;
    }
}

@media (max-width: 480px) {
    .impro-howworks .how-works__diagram { height: 1400px; }
    .impro-howworks .impro-step-title { font-size: 15px; }
    .impro-howworks .impro-step-date { font-size: 13px; margin-top: 0; }
    /* Размер иконки 69x69px в vw для всех шагов */
    .impro-howworks .how-works__step-icon { 
        width: 18vw; 
        height: 18vw; 
        max-width: 69px; 
        max-height: 69px; 
    }
    
    /* Размер изображений 100x100px в vw */
    .impro-alla__photo,
    .impro-alla-horizontal__photo {
        width: 25vw;
        height: 25vw;
        max-width: 100px;
        max-height: 100px;
    }
}

/* Vertical arrow between text and icon */
.impro-howworks .how-works__step-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
}

.impro-howworks .how-works__step-arrow img {
    display: block;
    width: 7px;
    height: var(--arrow-h, 100px);
    object-fit: fill;
}

/* Specific heights from Figma for desktop */
.impro-howworks .how-works__step--1 .how-works__step-arrow img { --arrow-h: 78px; }
.impro-howworks .how-works__step--2 .how-works__step-arrow img { --arrow-h: 131px; }
.impro-howworks .how-works__step--3 .how-works__step-arrow img { --arrow-h: 114px; }
.impro-howworks .how-works__step--4 .how-works__step-arrow img { --arrow-h: 85px; }
.impro-howworks .how-works__step--5 .how-works__step-arrow img { --arrow-h: 115px; }
.impro-howworks .how-works__step--6 .how-works__step-arrow img { --arrow-h: 143px; }

@media (max-width: 768px) {
    .impro-howworks .how-works__step-arrow img { --arrow-h: 90px; }
}

/* ===== Mobile horizontal layout rules ===== */
@media (max-width: 480px) {
    /* Замена линии на мобильных устройствах */
    .impro-howworks .how-works__line {
        height: 1338.74px;
        width: 100%;
    }
    
    .impro-howworks .how-works__line-image {
        content: url('/local/templates/ranepa_im2/assets2/css/../img/proffesional/line_mobile_proffesional.svg');
        width: 100%;
        height: 1338.74px;
        object-fit: contain;
    }

    .impro-howworks .how-works__step {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 4px;
    }

        /* Абсолютные координаты шагов на мобилке */
        .impro-howworks .how-works__step--1 { top: 13%; left: 20%; }
        .impro-howworks .how-works__step--2 { top: 22.4%; left: 14%; }
        .impro-howworks .how-works__step--3 { top: 35%; left: 37%; }
        .impro-howworks .how-works__step--4 { top: 51.5%; left: 18%; }
        .impro-howworks .how-works__step--5 { top: 71%; left: 32%; }
        .impro-howworks .how-works__step--6 { top: 90%; left: 18%; }
      
    /* Hide vertical arrow image; use horizontal arrow sprite instead */
    .impro-howworks .how-works__step-arrow img { display: none !important; }

    .impro-howworks .how-works__step-arrow {
        width: var(--arrow-w, 24px);
        height: 6px;
        position: relative;
        flex: 0 0 auto;
    }

    .impro-howworks .how-works__step-arrow::before {
        content: '';
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        background: url('/local/templates/ranepa_im2/assets2/css/../img/proffesional/arrowmobile.svg') no-repeat center / contain;
        transform: scaleX(var(--arrow-scale, 1));
    }
    
    /* Step 1: специальная стрелочка */
    .impro-howworks .how-works__step--1 .how-works__step-arrow::before {
        background: url('/local/templates/ranepa_im2/assets2/css/../img/proffesional/arrowstep1improffesional.svg') no-repeat center / contain;
    }
    
    /* Step 2: специальная стрелочка */
    .impro-howworks .how-works__step--2 .how-works__step-arrow::before {
        background: url('/local/templates/ranepa_im2/assets2/css/../img/proffesional/Linestep2proffesional.svg') no-repeat center / contain;
    }
    
    /* Step 3: специальная стрелочка */
    .impro-howworks .how-works__step--3 .how-works__step-arrow::before {
        background: url('/local/templates/ranepa_im2/assets2/css/../img/proffesional/line3proffesional.svg') no-repeat center / contain;
    }

    /* Step 1: circle → arrow(24) → text */
    .impro-howworks .how-works__step--1 .how-works__step-icon { order: 1; }
    .impro-howworks .how-works__step--1 .how-works__step-arrow { 
        order: 2; 
        --arrow-w: 24px; 
        --arrow-scale: 1; 
      
    }
    .impro-howworks .how-works__step--1 .how-works__step-text { order: 3; max-width: 50vw; }

    /* Step 2: text → arrow(45) → circle (arrow points left) */
    .impro-howworks .how-works__step--2 .how-works__step-text { order: 1; }
    .impro-howworks .how-works__step--2 .how-works__step-arrow { 
        order: 2; 
        --arrow-w: 12vw; 
        --arrow-scale: 1; 
        max-width: 45px;
    }
    .impro-howworks .how-works__step--2 .how-works__step-icon { order: 3; }

    /* Step 3: circle ← arrow(8) ← text */
    .impro-howworks .how-works__step--3 .how-works__step-icon { order: 1; }
    .impro-howworks .how-works__step--3 .how-works__step-arrow { 
        order: 2; 
        --arrow-w: 2.1vw; 
        --arrow-scale: 1; 
        max-width: 16px;
    }
    .impro-howworks .how-works__step--3 .how-works__step-text { order: 3; padding-right: 0px !important; }

    /* Step 4: circle ← arrow(41) ← text */
    .impro-howworks .how-works__step--4 .how-works__step-icon { order: 1; }
    .impro-howworks .how-works__step--4 .how-works__step-arrow { order: 2; --arrow-w: 41px; --arrow-scale: 1; }
    .impro-howworks .how-works__step--4 .how-works__step-text { order: 3; }

    /* Step 5: circle ← arrow(39) ← text */
    .impro-howworks .how-works__step--5 .how-works__step-icon { order: 1; }
    .impro-howworks .how-works__step--5 .how-works__step-arrow { order: 2; --arrow-w: 39px; --arrow-scale: 1; }
    .impro-howworks .how-works__step--5 .how-works__step-text { order: 3; }

    /* Step 6: text → arrow(60, right) → circle */
    .impro-howworks .how-works__step--6 .how-works__step-text { order: 1; }
    .impro-howworks .how-works__step--6 .how-works__step-arrow { order: 2; --arrow-w: 60px; --arrow-scale: -1; }
    .impro-howworks .how-works__step--6 .how-works__step-icon { order: 3; }
}

/* ===== Catalog cards (Impro) — Figma matching ===== */
.catalog-card {
    position: relative;
    background: #FFFFFF;
    border: 1px solid #EDEDED;
    border-radius: 20px;
    padding: 20px;
    width: 320px;
    height: 397px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
}

.catalog-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.catalog-card__content {
    margin-bottom: 0px;
    flex-grow: 1;
    align-self: flex-start;
}

.catalog-card__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.17;
    color: #32343A;
    margin-bottom: 20px;
    margin-top: 8px;
}

.catalog-card__description {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 1.17;
    color: #32343A;
    margin-bottom: 0px;
    flex-grow: 1;
}

.catalog-card__bottom {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-self: flex-end;
    width: 100%;
}

.catalog-card__info {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    margin-bottom: 0;
}

.catalog-card__icon {
    width: 12px;
    height: auto;
    flex-shrink: 0;
    align-self: flex-start;
    margin-top: 2px;
}

.catalog-card__text {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 1.17;
    color: #32343A;
}

.catalog-card__footer {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 0px !important;
    margin-bottom: 14px;
}

.catalog-card__button {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 21px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.catalog-card__button--primary {
    background: linear-gradient(90deg, #634EA2 0%, #9774FF 100%);
    color: #FFFFFF;
    padding: 0 24px;
    flex: 0 0 146px;
}

.catalog-card__button--primary:hover {
    filter: brightness(0.95);
}

.catalog-card__button--secondary {
    background: transparent;
    color: #AAAAAA;
    padding: 0;
    flex: 0 0 112px;
}

.catalog-card__button--secondary:hover {
    color: #7D61E6;
}

/* Background pattern for cards */
.catalog-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(ellipse at 95% 8%, rgba(125, 97, 230, 0.07) 0%, rgba(125, 97, 230, 0) 60%);
    border-radius: 20px;
    pointer-events: none;
    z-index: 0;
}

.catalog-card > * {
    position: relative;
    z-index: 1;
}

/* Grid layout for catalog items */
.catalog__items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 24px;
    justify-items: center;
}

@media (max-width: 768px) {
    .catalog__items {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 0px;
    }
    
    .catalog-card {
        width: 100%;
        max-width: none;
        min-height: 360px !important;
    }
}

@media (max-width: 480px) {
    .catalog__items {
        padding: 0px;
        gap: 12px;
    }
    
    .catalog-card {
        width: 100%;
        padding: 16px;
        min-height: 360px;
    }
}

/* ===== Alla Tabachnikova quote block ===== */
.impro-alla {
    position: relative;
    padding: 56px 0;
    background: #fff;
}
.impro-alla::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/bgalla.svg') no-repeat left top / cover;
    opacity: 1;
    pointer-events: none;
}
.impro-alla .container { position: relative; z-index: 1; }
.impro-alla__wrap {
    display: flex;
    align-items: center;
    gap: 40px;
    min-height: 230px;
}
.impro-alla__top {
    display: flex;
    align-items: center;
    gap: 16px;
}
.impro-alla__photo {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    border: 4px solid #7D61E6;
    overflow: hidden;
    box-shadow: 0 6px 24px rgba(0,0,0,0.06);
}
.impro-alla__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.impro-alla__content { max-width: 460px; }
.impro-alla__name {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 1.5em; /* 24px */
    line-height: 1.2;
    color: #32343A;
    margin-bottom: 6px;
}
.impro-alla__subtitle {
    color: #DADADA;
    font-size: 1em; 
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 10px;
}
.impro-alla__quote { font-weight: 600; font-size: 1em; line-height: 1.35; color: #32343A; flex: 1; margin-left: 80px; }
@media (max-width: 768px) {
    .impro-alla { padding: 36px 0; }
    .impro-alla__wrap { gap: 24px; }
}
@media (max-width: 560px) {
    .impro-alla__wrap { 
        flex-direction: column; 
        align-items: flex-start; 
        gap: 16px; 
        min-height: auto; 
    }
    .impro-alla__top { 
        display: flex; 
        align-items: flex-start; 
        gap: 16px; 
        width: 100%; 
        padding-top: 40px;
    }
    .impro-alla__photo { 
        width: 25vw; 
        height: 25vw; 
        max-width: 100px;
        max-height: 100px;
        flex-basis: auto; 
        flex-shrink: 0; 
    }
    .impro-alla__content { 
        max-width: none; 
        flex: 1; 
    }
    .impro-alla__name { margin-bottom: 2px; }
    .impro-alla__subtitle { margin-bottom: 4px; }
    .impro-alla__quote { 
        max-width: none; 
        width: 100%; 
        margin-left: 0;
    }
}

/* ===== Alla Tabachnikova horizontal quote block ===== */
.impro-alla-horizontal {
    position: relative;
    padding: 56px 0;
    background: #fff;
}
.impro-alla-horizontal::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/bgalla.svg') no-repeat left top / cover;
    opacity: 1;
    pointer-events: none;
}
.impro-alla-horizontal .container { position: relative; z-index: 1; }
.impro-alla-horizontal__wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    min-height: 230px;
}
.impro-alla-horizontal__quote {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    color: #32343A;
    max-width: 825px;
    text-align: right;
    flex: 1;
}
.impro-alla-horizontal__author {
    display: flex;
    align-items: center;
    gap: 0;
    flex: 0 0 auto;
}
.impro-alla-horizontal__photo {
    flex: 0 0 92px;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    border: 2px solid transparent;
    background: linear-gradient(90deg, #634EA2 0%, #9774FF 100%);
    padding: 2px;
    overflow: hidden;
    box-shadow: 0 6px 24px rgba(0,0,0,0.06);
}
.impro-alla-horizontal__photo img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    display: block; 
    border-radius: 50%;
}
.impro-alla-horizontal__content { 
    max-width: 408px;
    flex: 1;
    margin-left: 12px;
}
.impro-alla-horizontal__name {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 1.5em; /* 24px */
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #32343A;
    margin-bottom: 6px;
}
.impro-alla-horizontal__subtitle {
    color: #DADADA;
    font-size: 1em; /* 16px */
    line-height: 1.4;
    margin: 0;
}

/* Mobile responsive for horizontal layout */
@media (max-width: 1200px) {
    .impro-alla-horizontal__wrap {
        gap: 30px;
    }
    .impro-alla-horizontal__quote {
        font-size: 15px;
        max-width: 600px;
    }
    .impro-alla-horizontal__name {
        font-size: 1.33em; /* 32px */
    }
    .impro-alla-horizontal__photo {
        width: 80px;
        height: 80px;
        flex: 0 0 80px;
    }
}

@media (max-width: 768px) {
    .impro-alla-horizontal { 
        padding: 36px 0; 
    }
    .impro-alla-horizontal__wrap { 
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        min-height: auto;
    }
    .impro-alla-horizontal__author {
        order: 1;
        width: 100%;
        justify-content: flex-start;
    }
    .impro-alla-horizontal__quote {
        order: 2;
        text-align: left;
        max-width: none;
        font-size: 14px;
    }
    .impro-alla-horizontal__photo {
        width: 25vw;
        height: 25vw;
        max-width: 100px;
        max-height: 100px;
        flex: 0 0 auto;
    }
    .impro-alla-horizontal__name {
        font-size: 1.5em; /* 24px */
    }
    .impro-alla-horizontal__content {
        max-width: none;
    }
}

@media (max-width: 480px) {
    .impro-alla-horizontal__wrap {
        padding-top: 40px;
    }
    .impro-alla-horizontal__author {
        flex-direction: row;
        align-items: center;
        gap: 16px;
        flex-wrap: nowrap;
    }
    .impro-alla-horizontal__content {
        margin-left: 0;
        margin-top: 0;
        flex: 1;
    }
    .impro-alla-horizontal__photo {
        width: 25vw;
        height: 25vw;
        max-width: 100px;
        max-height: 100px;
        flex: 0 0 auto;
    }
    .impro-alla-horizontal__name {
        font-size: 1.25em; /* 20px */
    }
}

/* ===== Prizes section ===== */
.impro-prizes {
    padding: 80px 0;
    background: #fff;
}

.impro-prizes__table {
    width: 100%;
    max-width: 1327px;
    margin: 0 auto;
}

.impro-prizes__header {
    display: grid;
    grid-template-columns: 455px repeat(5, 1fr);
    gap: 0;
    margin-bottom: 28px;
    border-bottom: 1px solid #CACACB;
    padding-bottom: 28px;
    align-items: end;
}

.impro-prizes__title-cell {
    display: flex;
    align-items: flex-end;
    padding-right: 20px;
}

.impro-prizes__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 48px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
    margin: 0;
}

.impro-prizes__category {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 10px;
}

.impro-prizes__icon {
    width: 76px;
    height: 76px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.impro-prizes__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.impro-prizes__category-name {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
    text-align: center;
}

.impro-prizes__rows {
    display: flex;
    flex-direction: column;
}

.impro-prizes__row {
    display: grid;
    grid-template-columns: 455px repeat(5, 1fr);
    gap: 0;
    border-bottom: 1px solid #CACACB;
    padding: 28px 0;
    align-items: start;
}

.impro-prizes__row:last-child {
    border-bottom: none;
}

.impro-prizes__benefit {
    padding-right: 20px;
}

.impro-prizes__benefit-title {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #32343A;
    margin: 0 0 8px 0;
}

.impro-prizes__benefit-desc {
    font-family: 'Raleway', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.4;
    color: #32343A;
    margin: 0;
}

.impro-prizes__cell {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    min-height: 40px;
}

.impro-prizes__check {
    width: 40px;
    height: 27px;
    object-fit: contain;
}

.impro-prizes__amount {
    font-family: 'Raleway', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.06;
    letter-spacing: -0.02em;
    color: #686868;
    text-align: center;
}

.impro-prizes__dash {
    width: 41px;
    height: 2px;
    object-fit: contain;
}

/* Mobile responsive */
@media (max-width: 1200px) {
    .impro-prizes__table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .impro-prizes__header,
    .impro-prizes__row {
        min-width: 800px;
        display: grid;
        grid-template-columns: 300px 100px 100px 100px 100px 100px;
        gap: 0;
    }
    
    .impro-prizes__header {
        margin-bottom: 28px;
        border-bottom: 1px solid #CACACB;
        padding-bottom: 28px;
        align-items: end;
    }
    
    .impro-prizes__title-cell {
        padding-right: 20px;
    }
    
    .impro-prizes__title {
        font-size: 36px;
    }
    
    .impro-prizes__category {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 0 10px;
    }
    
    .impro-prizes__row {
        align-items: center;
        padding: 20px 0;
        border-bottom: 1px solid #F0F0F0;
    }
    
    .impro-prizes__benefit {
        padding-right: 20px;
    }
    
    .impro-prizes__cell {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0 10px;
    }
}

@media (max-width: 768px) {
    .impro-prizes {
        padding: 60px 0;
    }
    
    .impro-prizes__header,
    .impro-prizes__row {
        min-width: 700px;
        grid-template-columns: 250px 90px 90px 90px 90px 90px;
    }
    
    .impro-prizes__title {
        font-size: 28px;
    }
    
    .impro-prizes__icon {
        width: 60px;
        height: 60px;
        margin-bottom: 8px;
    }
    
    .impro-prizes__category-name {
        font-size: 12px;
    }
    
    .impro-prizes__benefit-title {
        font-size: 14px;
    }
    
    .impro-prizes__benefit-desc {
        font-size: 13px;
    }
    
    .impro-prizes__amount {
        font-size: 14px;
    }
    
    .impro-prizes__dash {
        width: 35px;
        height: 2px;
    }
}

@media (max-width: 480px) {
    .impro-prizes__header,
    .impro-prizes__row {
        min-width: 600px;
        grid-template-columns: 200px 80px 80px 80px 80px 80px;
    }
    
    .impro-prizes__title {
        font-size: 24px;
    }
    
    .impro-prizes__icon {
        width: 50px;
        height: 50px;
        margin-bottom: 6px;
    }
    
    .impro-prizes__category-name {
        font-size: 11px;
    }
    
    .impro-prizes__benefit-title {
        font-size: 13px;
    }
    
    .impro-prizes__benefit-desc {
        font-size: 12px;
    }
    
    .impro-prizes__amount {
        font-size: 12px;
    }
}

/* ===== Application Steps section ===== */
.impro-application {
    padding: 80px 0;
    background: #fff;
}

.impro-application__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.06;
    color: #32343A;
    margin-bottom: 40px;
}

.impro-application__steps {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 40px 60px;
    max-width: 1293px;
    margin: 0;
    padding: 0;
}

.impro-application__step {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Step positioning in grid */
.impro-application__step:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
}

.impro-application__step:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
}

.impro-application__step:nth-child(3) {
    grid-column: 3;
    grid-row: 1;
}

.impro-application__step:nth-child(4) {
    grid-column: 1;
    grid-row: 2;
}

.impro-application__step:nth-child(5) {
    grid-column: 2;
    grid-row: 2;
}

.impro-application__step:nth-child(6) {
    grid-column: 3;
    grid-row: 2;
}

.impro-application__icon {
    margin-bottom: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Icon sizes based on Figma data */
.impro-application__step:nth-child(1) .impro-application__icon {
    width: 63.48px;
    height: 59.67px;
}

.impro-application__step:nth-child(2) .impro-application__icon {
    width: 64px;
    height: 60px;
}

.impro-application__step:nth-child(3) .impro-application__icon {
    width: 46px;
    height: 62px;
}

.impro-application__step:nth-child(4) .impro-application__icon {
    width: 69px;
    height: 62px;
}

.impro-application__step:nth-child(5) .impro-application__icon {
    width: 59px;
    height: 59px;
}

.impro-application__step:nth-child(6) .impro-application__icon {
    width: 38px;
    height: 58px;
}

.impro-application__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.impro-application__content {
    flex: 1;
}

.impro-application__step-title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.06;
    color: #32343A;
    margin: 0 0 14px 0;
}

.impro-application__step-desc {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.06;
    color: #32343A;
    margin: 0;
}

/* Mobile responsive */
@media (max-width: 1200px) {
    .impro-application__steps {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 40px;
    }
}

@media (max-width: 768px) {
    .impro-application {
        padding: 60px 0;
    }
    
    .impro-application__title {
        font-size: 28px;
        margin-bottom: 40px;
    }
    
    .impro-application__steps {
        display: flex;
        flex-direction: column;
        gap: 30px;
        max-width: 100vw;
        margin: 0;
        padding: 0;
    }
    
    .impro-application__step {
        padding: 20px;
        width: 100%;
        box-sizing: border-box;
    }
    
    .impro-application__icon {
        margin-bottom: 15px;
    }
    
    /* Unified icon size for mobile */
    .impro-application__step:nth-child(1) .impro-application__icon,
    .impro-application__step:nth-child(2) .impro-application__icon,
    .impro-application__step:nth-child(3) .impro-application__icon,
    .impro-application__step:nth-child(4) .impro-application__icon,
    .impro-application__step:nth-child(5) .impro-application__icon,
    .impro-application__step:nth-child(6) .impro-application__icon {
        width: 60px;
        height: 56px;
    }
    
    .impro-application__step-title {
        font-size: 20px;
    }
    
    .impro-application__step-desc {
        font-size: 13px;
    }
}

@media (max-width: 480px) {
    .impro-application__title {
        font-size: 24px;
        margin-bottom: 20px;
    }
    
    .impro-application__steps {
        gap: 25px;
    }
    
    .impro-application__step {
        padding: 15px;
    }
    
    /* Unified icon size for small mobile */
    .impro-application__step:nth-child(1) .impro-application__icon,
    .impro-application__step:nth-child(2) .impro-application__icon,
    .impro-application__step:nth-child(3) .impro-application__icon,
    .impro-application__step:nth-child(4) .impro-application__icon,
    .impro-application__step:nth-child(5) .impro-application__icon,
    .impro-application__step:nth-child(6) .impro-application__icon {
        width: 50px;
        height: 46px;
    }
    
    .impro-application__step-title {
        font-size: 18px;
    }
    
    .impro-application__step-desc {
        font-size: 12px;
    }
}

/* ===== Olympiad stages section ===== */
.impro-olympiad {
    padding: 0px 0;
    background: #fff;
}

.impro-olympiad__header {
    text-align: left;
    margin-bottom: 60px;
}

.impro-olympiad__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.2;
    color: #32343A;
    margin-bottom: 16px;
}

.impro-olympiad__subtitle {
    font-size: 18px;
    line-height: 1.4;
    color: #6B6E76;
    max-width: 600px;
    margin: 0;
}

.impro-olympiad__cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    width: 100%;
    margin: 0;
}

.impro-olympiad__card {
    background: #F8F9FA;
    border-radius: 16px;
    padding: 15px;
    text-align: center;
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.impro-olympiad__card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
}

.impro-olympiad__card-icon {
    margin: 0 auto 4px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.impro-olympiad__card-title {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 20px;
    line-height: 1.3;
    color: #7D61E6;
    margin-bottom: 4px;
}

.impro-olympiad__card-desc {
    font-size: 1em;
    line-height: 1.5;
    color: #32343A;
    margin-bottom: 15px;
    text-align: left;
}

.impro-olympiad__card-details {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
}

.impro-olympiad__detail {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #32343A;
}

.impro-olympiad__detail svg {
    flex-shrink: 0;
}

/* Progress circle animations */
@keyframes progress-1 {
    0% { stroke-dashoffset: 157.08; }
    100% { stroke-dashoffset: 104.72; }
}

@keyframes progress-2 {
    0% { stroke-dashoffset: 157.08; }
    100% { stroke-dashoffset: 52.36; }
}

@keyframes progress-3 {
    0% { stroke-dashoffset: 157.08; }
    100% { stroke-dashoffset: 0; }
}

.progress-circle-1 {
    stroke-dashoffset: 157.08;
    transition: stroke-dashoffset 2s ease-out;
}

.progress-circle-2 {
    stroke-dashoffset: 157.08;
    transition: stroke-dashoffset 2s ease-out;
}

.progress-circle-3 {
    stroke-dashoffset: 157.08;
    transition: stroke-dashoffset 2s ease-out;
}

.impro-olympiad.animate .progress-circle-1 {
    stroke-dashoffset: 104.72;
}

.impro-olympiad.animate .progress-circle-2 {
    stroke-dashoffset: 52.36;
}

.impro-olympiad.animate .progress-circle-3 {
    stroke-dashoffset: 0;
}

/* Mobile responsive */
@media (max-width: 1024px) {
    .impro-olympiad__cards {
        grid-template-columns: 1fr;
        gap: 24px;
        max-width: 500px;
    }
}

@media (max-width: 768px) {
    .impro-olympiad {
        padding: 60px 0;
    }
    
    .impro-olympiad__header {
        margin-bottom: 40px;
    }
    
    .impro-olympiad__title {
        font-size: 28px;
    }
    
    .impro-olympiad__subtitle {
        font-size: 16px;
    }
    
    .impro-olympiad__card {
        padding: 24px 20px;
    }
    
    .impro-olympiad__card-title {
        font-size: 18px;
    }
    
    .impro-olympiad__card-desc {
        font-size: 15px;
    }
}

/* ===== Consultation Form (Figma matching) ===== */
.consultation-form {
    position: relative;
    padding: 80px 0;
    background: #fff;
}

.consultation-form__inner {
    display: flex;
    gap: 40px;
    max-width: 1326px;
    margin: 0 auto;
    background: #FFFFFF;
    border-radius: 20px;
    box-shadow: 0px 2px 12.7px 0px rgba(0, 0, 0, 0.09);
    padding: 40px;
    position: relative;
    overflow: hidden;
}

/* Background decorative elements */
.consultation-form__inner::before {
    content: '';
    position: absolute;
    top: -112px;
    left: 39px;
    width: 746px;
    height: 762px;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/consult-bg.svg') no-repeat center / contain;
    opacity: 0.1;
    pointer-events: none;
    z-index: 0;
}

.consultation-form__inner::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    background: url('/local/templates/ranepa_im2/assets2/css/../img/3D-Black-Chrome-Shape.webp') no-repeat left center / contain;
    opacity: 0.4;
    pointer-events: none;
    z-index: 0;
}

.consultation-form__left {
    flex: 0 0 45%;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.consultation-form__content {
    flex: 0 0 auto;
}

.consultation-form__title {
    font-family: 'Raleway', sans-serif;
    font-weight: 400;
    font-size: 40px;
    line-height: 1.2;
    color: #32343A;
    margin: 0 0 24px 0;
}

.consultation-form__subtitle {
    font-family: 'Raleway', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
    color: #32343A;
    margin: 0;
}

.consultation-form__profile {
    display: block;
    align-items: center;
    gap: 20px;
    flex: 0 0 auto;
    margin-top: auto;
}

/* Скрыть мобильный профиль на десктопе */
.consultation-form__profile--mobile {
    display: none;
}

.consultation-form__avatar {
    flex: 0 0 136px;
    width: 136px;
    height: 136px;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
}

.consultation-form__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 15px;
}

.consultation-form__profile-info {
    flex: 1;
}

.consultation-form__name {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    color: #32343A;
    margin: 15px 0 6px 0;
}

.consultation-form__position {
    font-family: 'Raleway', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
    color: #32343A;
    margin: 0;
}

.consultation-form__right {
    flex: 1;
    position: relative;
    z-index: 1;
}

.consultation-form__form {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.form-group {
    position: relative;
}

.form-input,
.form-textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #AAAAAA;
    background: transparent;
    padding: 12px 0;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    color: #32343A;
    outline: none;
    transition: border-color 0.3s ease;
}

.form-input::placeholder,
.form-textarea::placeholder {
    color: #AAAAAA;
    font-weight: 600;
}

.form-input:focus,
.form-textarea:focus {
    border-bottom-color: #634EA2;
}

.form-textarea {
    resize: vertical;
    min-height: 60px;
}

.form-select-wrapper {
    position: relative;
}

.form-select {
    width: 100%;
    border: none;
    border-bottom: 1px solid #AAAAAA;
    background: transparent;
    padding: 12px 30px 12px 0;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    color: #AAAAAA !important;
    outline: none;
    appearance: none;
    cursor: pointer;
    transition: border-color 0.3s ease;
}

.form-select:focus {
    border-bottom-color: #634EA2;
}

.form-select:not([value=""]) {
    color: #32343A;
}

.select-arrow {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #AAAAAA;
    font-size: 12px;
    pointer-events: none;
}

.consultation-form__btn {
    width: 100%;
    height: 42px;
    background: linear-gradient(256deg, #9AB1D5 4.16%, #4B4E55 146.18%);
    border: none;
    border-radius: 27px;
    color: #FFFFFF;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 15px;
    line-height: 1.2;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 20px;
}

.consultation-form__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(75, 78, 85, 0.25);
}

.consultation-form__disclaimers {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.consultation-form__checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    position: relative;
}

.consultation-form__checkbox input[type="checkbox"] {
    display: none;
}

.checkmark {
    flex: 0 0 14px;
    width: 14px;
    height: 14px;
    background: #F3F3F3;
    border-radius: 4px;
    position: relative;
    margin-top: 2px;
}

.consultation-form__checkbox input[type="checkbox"]:checked + .checkmark {
    background: #634EA2;
}

.consultation-form__checkbox input[type="checkbox"]:checked + .checkmark::after {
    content: '';
    position: absolute;
    left: 4px;
    top: 1px;
    width: 6px;
    height: 8px;
    border: solid #FFFFFF;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.checkbox-text {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 10px;
    line-height: 1.17;
    color: #32343A;
    flex: 1;
}

.consultation-form__required-note {
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.asterisk {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.17;
    color: #AAAAAA;
}

.consultation-form__required-note span:not(.asterisk) {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 10px;
    line-height: 1.17;
    color: #AAAAAA;
}

/* Mobile responsive */
@media (max-width: 1200px) {
    .consultation-form__inner {
        flex-direction: column;
        gap: 30px;
        padding: 30px;
    }
    
    .consultation-form__left {
        flex: none;
    }
    
    .consultation-form__title {
        font-size: 32px;
    }
}

@media (max-width: 768px) {
    .consultation-form {
        padding: 60px 0;
    }
    
    /* prevent box-shadow clipping on mobile */
    .consultation-form__inner {
        overflow: visible;
    }
    
    .consultation-form__title {
        font-size: 28px;
        margin-bottom: 20px;
    }
    
    .consultation-form__subtitle {
        font-size: 14px;
    }
    
    /* Скрыть оригинальный профиль на мобильных устройствах */
    .consultation-form__profile {
        display: none;
    }
    
    /* Показать мобильный профиль */
    .consultation-form__profile--mobile {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 16px;
        margin: 40px 0 0 0;
        padding: 0;
        background: none;
        border-radius: 0;
    }
    
    .consultation-form__profile--mobile .consultation-form__avatar {
        width: 30vw;
        height: 30vw;
        max-width: 115px;
        max-height: 115px;
        flex: 0 0 auto;
    }
    
    .consultation-form__profile--mobile .consultation-form__name {
        font-size: clamp(14px, 4.2vw, 16px);
        margin: 0 0 4px 0;
        font-weight: 600;
    }
    
    .consultation-form__profile--mobile .consultation-form__position {
        font-size: clamp(10px, 3.2vw, 12px);
        margin: 0;
        font-weight: 500;
    }
    
    .form-input,
    .form-textarea,
    .form-select {
        font-size: 14px;
    }
    
    /* Уровень образования на мобильных устройствах */
    .consultation-form__form .form-select {
        font-size: 16px;
    }
    
    .consultation-form__btn {
        height: 48px;
        font-size: 14px;
    }
    
    .checkbox-text {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .consultation-form__title {
        font-size: 24px;
    }
    
    .consultation-form__subtitle {
        font-size: 13px;
    }
    
    .consultation-form__avatar {
        width: 80px;
        height: 80px;
        flex: 0 0 80px;
    }
    
    .consultation-form__name {
        font-size: 14px;
    }
    
    .consultation-form__position {
        font-size: 13px;
    }
    
    .form-input,
    .form-textarea,
    .form-select {
        font-size: 13px;
        padding: 10px 0;
    }
    
    .consultation-form__btn {
        height: 44px;
        font-size: 13px;
    }
}


/* End */
/* /local/templates/ranepa_im2/assets2/css/app.min.css?175740574117391 */
/* /local/templates/ranepa_im2/assets2/css/style.min.css?1755605602138050 */
/* /local/templates/ranepa_im2/assets2/css/oneday.css?175947611256126 */
/* /local/templates/ranepa_im2/assets2/css/mba.css?176154867752242 */
/* /local/templates/ranepa_im2/assets2/css/improffessional.css?176154867741752 */
