/* #region Fonts */
@font-face {
    font-family: 'Montserrat Regular';
    src: url('../fonts/Montserrat-VariableFont_wght.ttf');
}
@font-face {
    font-family: 'Montserrat Medium';
    src: url('../fonts/static/Montserrat-Medium.ttf');
}
@font-face {
    font-family: 'Montserrat Semibold';
    src: url('../fonts/static/Montserrat-SemiBold.ttf');
}
/* #endregion */

/* #region StaticValues */
html{
    /* --primary-color: linear-gradient(90deg, rgb(64, 179, 255) 0%, rgb(90, 157, 255) 100%); */
    --primary-color: #577ff8;
    --secondary-color: #F8FCFF;
    --black-100: #181818;
    --blue-100: #C5CFD8;
    --blue-200: #899DAE;
    --text-hover-color: #A5B5C2;
    --text-button-active: #FFFFFF;
    --white-100: #FFFFFF;

    font-family: 'Montserrat Regular';
    
    scroll-behavior: smooth;
    font-size: 16px;

    /* overflow-x: hidden; */
}
/* #endregion */

/* #region Texts */
h5 {
    font-size: 1.2rem;
}
h4 {
    font-size: 1.4rem;
    font-weight: 600;
}
a {
    font-size: 1rem;
    text-decoration: none;
    color: inherit
}
li a {
    text-wrap: wrap;
    word-break: break-all;
}
/* #endregion */
svg path{
    transition: all 0.3s;
}
/* #endregion */
input {
    outline: none;
    border: none;
    font-size: 1rem;
    color: var(--black-100);

    font-family: 'Montserrat Regular';
    background: transparent;
    text-wrap: wrap;
    text-align: start;
}
input::placeholder {
    font-size: 1rem;
    color: var(--text-hover-color);
}
button {
    background: none;
    border: none;

    font-size: 1rem;
    font-family: 'Montserrat Regular';

    cursor: pointer;
}
button:hover svg path {
    stroke: var(--primary-color);
}
.search__button {
    display: flex;
    padding: 0;
}

/* sidebar */
.navbar__input {
    display: none;
}
.navbar__item:hover {
    cursor: pointer;
}
.navbar__item label {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 0.8rem 1rem 0.8rem 1.4rem;

    cursor: pointer;
}
.navbar__item:has(.navbar__input:checked) {
    color: var(--black-100);
}
.navbar__item:has(.navbar__input:checked) svg path {
    stroke: var(--primary-color);
}
.navbar__item:has(.navbar__input:checked) .navbar__item-ellipse {
    opacity: 1;
}
.sidebar-list__ico {
    display: flex;
    padding: 10px;
    border-radius: 10px;

    transition: all 0.3s;
}
.navbar__input:checked + label .sidebar-list__ico {
    background-color: var(--secondary-color);
}


.header__navbar {
}
.header__navbar-list {
    display: flex;
    align-items: center;
    gap: 10px;
    
    border-radius: 1.4rem;
    border: 1px solid var(--text-inactive, #C5CFD8);
}
.header__navbar-list li input[type="radio"] {
    display: none;
    position: absolute;
    left: -99999px;
}
.header__navbar-list 
.header__list-item {
    display: flex;
    padding: 5px 15px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: var(--InsideOffset, 1.4rem);

    font-family: 'Montserrat Medium';
    line-height: normal;
    
    color: var(--blue-100);
    transition: all 0.5s;

    cursor: pointer;
}
input:checked + label .header__list-item
{
    /* background: #688EFF; */
    color: var(--text-button-active);
    /* box-shadow: 0px 3px 9px 0px rgba(104, 142, 255, 0.35); */
}
.header__navbar-list {
    position: relative;
}
.header__navbar label {
    position: relative;
    z-index: 10;
}
#header-animation {
	position: absolute;
	height: 100%;
    width: 0;
	top: 0;
	z-index: 0;
	transition: all .5s ease 0s;
	border-radius: var(--InsideOffset, 1.4rem);

    background: var(--primary-color);
    color: var(--text-button-active);
    box-shadow: 0px 3px 9px 0px rgba(104, 142, 255, 0.35);
}


.searched-block {
    display: flex;
    position: relative;
    align-items: center;
    color: var(--primary-color) !important;
    /* background-color: var(--secondary-color); */
    /* border: 1px solid var(--blue-100); */
    border-radius: 5px;

    animation: smoothSearch .5s alternate;
}
@keyframes smoothSearch {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.searched-block::before {
    content: url('../images/icons/common/arrow.svg');
    filter: saturate(4) contrast(1);
    position: absolute;
    left: -30px;
    width: 1.4rem;
    height: 1.4rem;

    animation: smoothSearchArrow .5s alternate;
}
@keyframes smoothSearchArrow {
    from {
        left: -70px;
    }
    to {
        left: -30px;
    }
}
.main__content embed, .main__content iframe {
    width: 100%;
    height: 800px;

    border: 1px solid var(--blue-100);
    border-radius: 10px;
}
.search {
    display: flex;
    padding: 10px 1.4rem;
    justify-content: space-between;
    align-items: center;
    gap: 1.4rem;
    align-self: stretch;

    border: 1px solid var(--blue-100);
    border-radius: 10px;
    /* box-shadow: 0px 2px 9px 0px rgba(104, 142, 255, 0.15); */
    transition: all 0.3s;
}
.search:hover {
    background: #FFF;
}
.search:focus-within {
    background: #FFF;
    box-shadow: 0px 2px 9px 0px rgba(104, 142, 255, 0.15);
}
.search-container {
    width: 100%;
    display: flex;
    gap: 15px;
    align-items: center;
}
.search-container__inner {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
}
.search__counters-container {
    display: flex;
    align-items: center;
    gap: 5px;
    animation: smoothSearchBlock alternate 0.3s;
}
.search__counter-container {
    display: flex;
    align-items: center;
    gap: 5px;
}
.search-counter {
    color: var(--blue-100);
}
.search-container input {
    width: 100%;
}
.search__error-container {
    display: none;
    align-items: center;
    gap: 10px;
    animation: smoothSearchBlock alternate 0.3s;
}
@keyframes smoothSearchBlock {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
.search__error-text {
    width: max-content;
    color: var(--primary-color);
}
.search__error-image {
    display: flex;
    /* padding: 1.5px 8px;
    border-radius: 50%;

    background-color: var(--primary-color);

    font-family: 'Actay SemiBold';
    font-size: 14px;
    color: var(--white-100); */
}

.list-container {
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    color: var(--blue-100);
}
.list-container h4 {
    color: var(--text-hover-color);
}
.link {
    /* width: 100%; */
    display: flex;
    padding: 10px 15px;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    border-radius: 10px;
    color: var(--primary-color);
    justify-content: space-between;
    cursor: pointer;
    min-height: 28px;
    background: transparent;

    transition: all .3s;
}
.link:hover {
    background-color: #EEF3FF;
    box-shadow: 0px 2px 11px 0px rgba(104, 142, 255, 0.09);

    transition: all .5s;
}
.link:active {
    opacity: 0.7;
}
.admission-item-group .link a {
    width: auto;
    transition: all 0.5s;
}
.link:hover::after {
    content: url('../images/icons/common/download.svg');
    width: 25px;
    height: 25px;
    transition: all .5s;
    animation: smoothLink 1s alternate;
}
@keyframes smoothLink {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.link::after a {
    transition: all .5s;
}
form:has(.link:hover) ::after {
    content: url('../images/icons/common/download.svg');
}


.link svg {
    opacity: 0;
    transition: all 0.3s;
}
.link:hover svg {
    opacity: 1;
}

/* .link-downloading {
    box-shadow: ;
} */
/* ul:has(.link-downloading) {
    position: relative;
}
.link-downloading, .link-done {
    position: relative;
    display: flex;
    align-items: center;
}
.link-downloading .link {
    background-color: #EEF3FF;
    box-shadow: 0px 2px 11px 0px rgba(104, 142, 255, 0.09);
} */

/* .link-done::after {
    content: "";
    position: absolute;
    right: 15px;
    background-color: transparent;
    width: 5px;
    border-bottom: 3px solid var(--primary-color);
    height: 11px;
    border-right: 3px solid var(--primary-color);
    transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    animation: smoothDone .3s both;
    transition: .3s linear opacity;
}
@keyframes smoothDone {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
} */

/* .link-downloading .link::after {
    content: none !important;
} */

.block-loading {
    padding: 5px;
    background-color: var(--white-100);
    /* position: absolute; */
    /* right: 15px; */
    content: '';
    /* display: inline-block; */
    width: 25px;
    height: 25px;
    border: 5px solid var(--blue-100);
    border-bottom-color: var(--primary-color);
    border-radius: 50%;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
    }

    @keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
} 
.admission-details > .block-loading {
    width: 50px;
    height: 50px;
    align-self: center;
}


form {
    width: 100%;
}


form input.link {
    width: 100%;
    min-height: 48px;
}
div.list-container > ul {
    margin: 0;
}
.list-container ul, .links-container ul {
    margin-inline-start: 30px;
    -moz-margin-start: 30px;
    -webkit-margin-start: 30px;
}
.list-container ul:first-child() {
    margin: 0px;
}
.list-container ul h4 {
    margin-bottom: 5px;
    font-weight: 500;
}
.list-container li {
    font-size: 1.2rem;
    color: var(--black-100);
    margin: 10px 15px;
}
div.list-container > ul > li, .links-container h4 {
    font-size: 1.4rem;
    font-weight: 500;
}
.list-container li:not(li:has(a)) {
    /* font-size: 1.4rem; */
}
.list-container .link {
    color: var(--primary-color);
}
.links-container {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
}
.links-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
}


/* #region New */
.link-downloading {
    background: linear-gradient(90deg, var(--primary-color), var(--primary-color), #EEF3FF, var(--primary-color), var(--primary-color));
    animation: linkDownload 5s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
    background-size: 400% 400%;
}
@keyframes linkDownload {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.notifyAnimation {
    position: fixed;
    z-index: 100000;
    bottom: 5%;
    left: 0;
    right: 0;
}
.notifyAnimation__container {
    margin: 0 auto;
    padding: 30px;
    max-width: 70%;
    width: 300px;
    height: fit-content;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.4rem;

    background: var(--white-100);
    border-radius: 1.4rem;
    box-shadow: 0px 3px 31px 0px rgba(104, 142, 255, 0.10);
    animation: notifyAnimation 1s alternate;
}
@keyframes notifyAnimation {
    from {
        opacity: 0;
        transform: translateY(100px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
    
}
.notifyAnimation__actions {
    display: flex;
    align-items: center;
    gap: 10px;
}
.notifyAnimation__file-label {
    color: var(--primary-color);
}
.notifyAnimation__button-cancel {
    padding: 10px;
    display: flex;
    align-items: center;
    background-color: var(--primary-color);
    border-radius: 50%;
    transition: all 0.3s;
}
.notifyAnimation__button-cancel:hover {
    opacity: 0.7;
}
.notifyAnimation__button-cancel:hover svg path {
    stroke: var(--white-100);
}
.notifyAnimation__status {
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}


@media (max-width: 720px) {
    body {
        background-color: var(--secondary-color) !important;
    }
}
.details__links-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
button.button-link {
    width: 100%;
    display: flex;
    justify-content: space-between;
    color: var(--white-100);
}
.button-link svg {
    transform: rotate(180deg);
}

.list-options {
    display: flex;
    flex-wrap: wrap;
    gap: 1.4rem;
}
.option-item {
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 10px;

    border: 1px solid var(--primary-color);
    border-radius: 10px;
    background-color: var(--white-100);
    box-shadow: 0 2px 11px 0 rgba(104, 142, 255, 0.09);
}
.option-item p {
    color: var(--primary-color);
    font-family: 'Montserrat Medium';
}
.option-item img {
    transform: rotate(90deg);
}
.details__items-list {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;

    transition: all 0.5s;
    counter-reset: items 0;
}


.detail-item__skeleton {
    /* padding: 1.4rem; */
    display: flex;
    /* height: 150px; */
    border: 1px solid transparent;
    border-radius: 1.4rem;
    background-color: var(--white-100);
    box-shadow: 0 2px 11px 0 rgba(104, 142, 255, 0.09);
    transition: all 0.5s;

    animation: detailItemSkeleton 3s alternate infinite;
    /* background: linear-gradient(90deg, var(--blue-100), var(--white-100)); */

    background: var(--white-100);
    background-size: 400% 400%;
}
@keyframes detailItemSkeleton {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}
.detail-item__skeleton .item-label__container {
    gap: 20px;
}
.detail-item__skeleton .detail-item__content {
    width: 100%;
}
.detail-item-skeleton {
    /* display: none !important; */
    background-color: var(--blue-100) !important;
    transition: all 0.5s;
    background-size: 400% 400% !important;
    animation: detailItemSkeleton 3s alternate infinite;
    background: linear-gradient(90deg, var(--blue-100), var(--white-100), var(--blue-100));
    box-shadow: none !important;
    counter-increment: none;
}
.detail-item__counter-skeleton {
    width: 24px;
    height: 24px;
    background-size: 400% 400%;
    flex: 0 0 24px;
    
}
.detail-item__text-skeleton {
    /* width: 160px; */
    height: 15px;
    background-size: 400% 400%;
}
.detail-item__text-skeleton:nth-of-type(1) {
    height: 20px;
}



.detail-item {
    /* padding: 1.4rem; */
    display: flex;

    border: 1px solid transparent;
    border-radius: 1.4rem;
    background-color: var(--white-100);
    box-shadow: 0 2px 11px 0 rgba(104, 142, 255, 0.09);
    transition: all 0.5s;
    cursor: pointer;

    counter-increment: items 1;
}
.detail-item:has(a.detail-item__content):hover {
    border: 1px solid var(--primary-color);
}
.detail-item__content {
    box-sizing: border-box;
    width: 100%;
    padding: 1.4rem;
    display: flex;
    align-items: center;
    gap: 30px;
    border-radius: 1.4rem;
}
.detail-item__drop-container {
    padding: 5px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: var(--secondary-color);
    border-radius: 0 1.4rem 1.4rem 0;
}
.detail-item__drop-container svg {
    transform: rotate(90deg);
    transition: all 0.5s;
}
.detail-item_active .detail-item__drop-container svg {
    transform: rotate(270deg);
}
.detail-item__drop-container button {
    display: none;
}
.detail-item a {
    text-wrap: initial;
    word-break: normal;
}
/* .detail-item-hover {
    animation: itemAnimation 1s alternate;
} */
@keyframes itemAnimation {
    from {
        flex-direction: row;
    }
    to {
        flex-direction: column;
    }
    
}
.details-item__empty-label {
    color: var(--blue-200);
    align-self: center;
}
.item-counter::before {
    padding: 5px;
    content:counter(items, decimal-leading-zero);
    color: var(--white-100);
    font-size: 1.2rem;
    font-family: 'Montserrat Medium';

    display: flex;
    border-radius: 10px;
    background-color: var(--primary-color);
}
.detail-item p {
    color: var(--black-100);
}
.item-title {
    font-family: 'Montserrat Medium';
}
p.item-speciality {
    display: none;
    color: var(--primary-color);
    transition: all 0.5s;
    /* animation: detail-items 0.5 alternate; */
}
@keyframes detail-items {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.item-label__container {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: all 0.5s;
}
.item-label__sub-container {
    display: flex;
    /* flex-direction: column; */
    gap: 1.4rem;
    transition: all 0.5s;
}
.item-label__links-container {
    flex-direction: column;
}
.item-label-row {
    width: 100%;
    display: flex;
    gap: 1.4rem;
    transition: all 0.5s;
}
.item-label-row p {
    width: 100%;
}
.detail-item .item-label__container:nth-of-type(2) p, .detail-item__button p {
    /* display: none; */
    width: auto;
}
.item-label-row button.detail-item__button p {
    min-width: auto;
}

.item-divider {
    display: none;
    width: 100%;
    height: 1px;
    background-color: var(--blue-100);
}

.detail-item_active .detail-item__content {
    position: relative;
    z-index: 100;
    flex-direction: column;
    align-items: flex-start;
    transition: all 0.5s;
    /* animation: item-detail 0.3s alternate; */
}
@keyframes item-detail-text {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.detail-item_active .item-counter::before {
    animation: item-counter 0.5s alternate;
}
@keyframes item-counter {
    from {
        transform: translateY(50px);
    }
    to {
        transform: translateY(0);
    }
}
.detail-item_active .item-speciality {
    display: block;
    transition: all 0.5s;
    animation: detail-items 0.5s alternate;
}
.item-divider-container {
    display: none;
    width: 100%;
    justify-content: center;
}
.detail-item_active .item-divider-container {
    display: flex;
}
.detail-item_active .item-label__container {
    display: flex;
}
.detail-item_active .item-divider {
    display: block;
    animation: item-divider 1s alternate;
}
@keyframes item-divider {
    from {
        width: 0;
    }
    to {
        width: 100%;
    }
}
.detail-item_active .item-label-row {
    animation: label-row 0.5s alternate;
}
@keyframes label-row {
    from {
        transform: translateY(-50px);
    }
    to {
        transform: translateY(0);
    }
    
}
.item-additional__container {
    display: none;
    gap: 1.4rem;
}
.item-additional__container p:not(.item-speciality) {
    width: auto;
    min-width: max-content;
    text-align: center;
}
.detail-item_active .item-additional__container {
    display: flex;
}

.detail-item__button {
    height: 100%;
    width: 100%;
    padding: 10px 1.4rem;
    display: flex;
    gap: 1.4rem;
    align-items: center;
    justify-content: space-between;

    border-radius: 100px;
    background-color: var(--primary-color);
    box-shadow: 0px 3px 9px 0 rgba(104, 142, 255, 0.35);

    transition: all 0.5s;
}
.detail-item__button p {
    color: var(--white-100);
}
.detail-item__button:hover {
    opacity: 0.7;
}

.detail-item__link {
    width: 100%;
}
.detail-item__button_more {
    justify-content: center;
    gap: 10px;
}
.detail-item__button_more svg {
    transform: rotate(180deg);
}
.detail-item__button img{
    width: 18px;
    height: 18px;
}

.header__title {
    display: none;
}
.header-content {
    flex-direction: row;
}
.header__navbar {
    height: 100%;
}
.header__navbar-list {
    height: 100%;
    border-radius: 100px;
}
.search {
    border-radius: 100px;
}
/* #endregion */




@media (max-width: 1300px) {
    p {
        font-size: 1rem;
    }
    .item-counter::before {
        font-size: 1rem;
    }
}
@media (max-width: 1200px) {
    html {
        font-size: 14px;
    }
}

@media (max-width: 720px) {
    a, input, input::placeholder, button {
        font-size: 1rem;
    }
    h5 {
        font-size: 1.2rem;
    }
    h4 {
        font-size: 1.4rem;
    }
    embed {
        height: 600px;
    }

    .leadership-fio {
        font-size: 1rem;
    }
    p.leadership-additional, .leadership-additional p {
        font-size: 1rem;
    }


    .list-container li {
        /* padding: 5px 10px; */
    }
    .list-container ul, .links-container ul {
        margin-inline-start: 1.4rem;
        -moz-margin-start: 1.4rem;
        -webkit-margin-start: 1.4rem;
    }
    .navbar__item label {
        padding: 1.2rem;
    }
    div.list-container > ul > li, .links-container h4 {
        font-size: 1.4rem;
    }
    .list-container li {
        font-size: 1.2rem;
    }
    .details__link-item {
        width: 100%;
    }
    .detail-item__button.detail-item-skeleton {
        display: block !important;
    }
    .detail-item {
        flex-direction: column;
    }
    .detail-item__content {
        width: auto;
        flex-direction: column;
        align-items: flex-start !important;
    }
    .item-label__container:nth-of-type(2) {
        display: flex;
    }
    .item-label__container {
        display: none;
        gap: 1.4rem;
    }
    .item-label-row {
        flex-direction: column;
        gap: 10px;
    }
    .detail-item .item-label__container:nth-of-type(2) .item-speciality {
        display: block;
    }
    .detail-item__drop-container {
        padding: 0 1.4rem 1.4rem 1.4rem;
    }
    .detail-item:not(.detail-item_active) .detail-item__drop-container button.detail-item__button_open {
        display: block;
    }
    .detail-item_active button.detail-item__button_close {
        display: block;
    }
    .detail-item__drop-container svg {
        display: none;
    }
}

@media (max-width: 650px) {
}

@media (max-width: 475px) {
    .details__links-list {
        padding: 0 10px;
    }
}

@media (max-width: 420px) {
    .list-container ul, .links-container ul {
        margin-inline-start: 0px;
        -moz-margin-start: 0px;
        -webkit-margin-start: 0px;
    }
    .search__error-text {
        display: none;
    }
    .item-label__sub-container {
        flex-direction: column;
    }
}


