:root {
  --black-1: #000;
  --red-1: #BA1F27;
  --red-2: #FCF1EC;
  --white-1: #fff;
  --blue-1: #B9E4FF;
  --grey-1: #F4F3F1;
  --yellow-2: #FFEECE;
  --green-2: #CEFFE1;
  --pink-2: #E9DEFF;
  --blue-2: #CEEFFF;
}

:root {
  --space-180: 180px;
  --space-120: 120px;
  --space-100: 100px;
  --space-80: 80px;
  --space-60: 60px;
  --space-48: 48px;
  --space-40: 40px;
  --space-36: 36px;
  --space-32: 32px;
  --space-24: 24px;
  --space-20: 20px;
  --space-16: 16px;
  --space-12: 12px;
}

@media only screen and (max-width: 1400px) {
  :root {
    --space-120: 100px;
    --space-100: 80px;
    --space-80: 60px;
    --space-60: 48px;
    --space-48: 40px;
    --space-40: 36px;
    --space-36: 32px;
    --space-32: 24px;
    --space-24: 20px;
    --space-20: 18px;
    --space-16: 14px;
  }
}
@media only screen and (max-width: 1199px) {
  :root {
    --space-120: 80px;
    --space-100: 60px;
    --space-80: 48px;
    --space-60: 40px;
    --space-48: 36px;
    --space-40: 32px;
    --space-36: 24px;
    --space-32: 20px;
    --space-24: 18px;
    --space-20: 16px;
    --space-16: 12px; /* Minimized but aligned */
  }
}
@media only screen and (max-width: 991px) {
  :root {
    --space-120: 60px;
    --space-100: 48px;
    --space-80: 40px;
    --space-60: 36px;
    --space-48: 32px;
    --space-40: 24px;
    --space-36: 20px;
    --space-32: 20px;
    --space-24: 18px;
    --space-20: 16px;
    --space-16: 12px; /* Minimum */
  }
}
@media only screen and (max-width: 768px) {
  :root {
    --space-120: 48px;
    --space-100: 40px;
    --space-80: 36px;
    --space-60: 32px;
    --space-48: 24px;
    --space-40: 20px;
    --space-36: 20px;
    --space-32: 20px;
    --space-24: 18px;
    --space-20: 16px;
    --space-16: 12px; /* Minimum */
  }
}
@media only screen and (max-width: 574px) {
  :root {
    --space-120: 40px;
    --space-100: 36px;
    --space-80: 32px;
    --space-60: 24px;
    --space-48: 20px;
    --space-40: 20px;
    --space-36: 20px;
    --space-32: 20px;
    --space-24: 18px;
    --space-20: 16px;
    --space-16: 12px; /* Minimum */
  }
}
:root {
  --font-300: "MuseoSansCyrl-300", sans-serif;
  --font-100: "MuseoSansCyrl-100", sans-serif;
  --font-500: "MuseoSansCyrl-500", sans-serif;
  --font-700: "MuseoSansCyrl-700", sans-serif;
  --font-900: "MuseoSansCyrl-900", sans-serif;
  --size-text-80: 80px;
  --size-text-48: 48px;
  --size-text-32: 32px;
  --size-text-28: 28px;
  --size-text-26: 26px;
  --size-text-24: 24px;
  --size-text-20: 20px;
  --size-text-18: 18px;
  --size-text-16: 16px;
}
@media only screen and (max-width: 1712px) {
  :root {
    --size-text-80: 64px;
    --size-text-48: 34px;
    --size-text-32: 26px;
    --size-text-28: 26px;
    --size-text-26: 24px;
    --size-text-24: 22px;
    --size-text-20: 19px;
    --size-text-18: 16px;
    --size-text-16: 15px;
  }
}
@media only screen and (max-width: 1199px) {
  :root {
    --size-text-80: 56px;
    --size-text-48: 34px;
    --size-text-32: 26px;
    --size-text-28: 22px;
    --size-text-26: 22px;
    --size-text-24: 21px;
    --size-text-20: 18px;
    --size-text-18: 16px;
    --size-text-16: 15px;
  }
}
@media only screen and (max-width: 991px) {
  :root {
    --size-text-80: 48px;
    --size-text-48: 35px;
    --size-text-32: 26px;
    --size-text-28: 22px;
    --size-text-26: 22px;
    --size-text-24: 20px;
    --size-text-20: 18px;
    --size-text-18: 16px;
    --size-text-16: 14px;
  }
}
@media only screen and (max-width: 768px) {
  :root {
    --size-text-80: 44px;
    --size-text-48: 33px;
    --size-text-32: 24px;
    --size-text-28: 24px;
    --size-text-26: 22px;
    --size-text-24: 20px;
    --size-text-20: 18px;
    --size-text-18: 16px;
    --size-text-16: 14px;
  }
}
@media only screen and (max-width: 574px) {
  :root {
    --size-text-80: 40px;
    --size-text-48: 32px;
    --size-text-32: 20px;
    --size-text-28: 20px;
    --size-text-26: 20px;
    --size-text-24: 20px;
    --size-text-20: 18px;
    --size-text-18: 16px;
    --size-text-16: 14px;
  }
}

:root {
  --height-header-top: 32px;
  --height-header-bot: 80px;
  --height-header: calc(var(--height-header-bot) + var(--height-header-top));
  --width-container: 1640px;
  --width-header-search: 537px;
  --size-btn-64: 64px;
  --size-btn-56: 56px;
  --size-btn-52: 52px;
  --size-btn-48: 48px;
  --size-btn-40: 40px;
  --size-btn-32: 32px;
  --size-text-10: 10px;
  --size-text-12: 12px;
  --size-text-14: 14px;
  --size-text-16: 16px;
  --size-text-20: 20px;
  --size-text-24: 24px;
  --size-text-40: 40px;
  --size-text-64: 64px;
}

.button {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  outline: none;
  height: var(--size-btn-48);
  border-radius: 12px;
  background: linear-gradient(90deg, #3E7CB5 0%, #39A589 100%);
  box-shadow: 0px 2px 0px 0px #29676A, 0px 8px 16px 0px rgba(255, 255, 255, 0.1) inset, 0px 2px 0px 0px rgba(255, 255, 255, 0.1) inset;
  padding: 0 14px;
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  color: var(--white-1) !important;
  width: max-content;
  justify-content: center;
  text-decoration: none !important;
}
.button i {
  font-size: 20px;
  color: var(--white-1) !important;
  margin: 0px;
  font-style: normal;
}
.button:hover {
  color: var(--white-1);
}
.button:hover i {
  color: var(--white-1);
}
@media only screen and (max-width: 1400px) {
  .button {
    padding: 0 12px;
  }
}
@media only screen and (max-width: 991px) {
  .button {
    padding: 0 10px;
  }
}
.button.grey {
  background: var(--black-7);
  box-shadow: 0px 2px 0px 0px #96A1BA, 0px 8px 16px 0px rgba(255, 255, 255, 0.1) inset, 0px 2px 0px 0px rgba(255, 255, 255, 0.1) inset;
  color: var(--black-1) !important;
}

.form-group {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
}
.form-group__label {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-bottom: 4px;
  display: block;
}
.form-group__info {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  font-style: italic;
  display: block;
  margin-top: 8px;
}
.form-control {
  height: var(--size-btn-40);
  padding: 0 40px 0 12px;
  border: 1px solid var(--black-7);
  background: #F4F3F1;
  border-radius: calc(var(--size-btn-40) / 2);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.form-control__clean {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 24px;
}
.form-select {
  color: var(--black-4);
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.5917 6.84165C15.5142 6.76355 15.422 6.70155 15.3205 6.65924C15.2189 6.61694 15.11 6.59515 15 6.59515C14.89 6.59515 14.7811 6.61694 14.6795 6.65924C14.578 6.70155 14.4858 6.76355 14.4083 6.84165L10.5917 10.6583C10.5142 10.7364 10.422 10.7984 10.3205 10.8407C10.2189 10.883 10.11 10.9048 10 10.9048C9.89 10.9048 9.78108 10.883 9.67953 10.8407C9.57798 10.7984 9.48581 10.7364 9.40834 10.6583L5.59168 6.84165C5.51421 6.76355 5.42204 6.70155 5.32049 6.65924C5.21894 6.61694 5.11002 6.59515 5.00001 6.59515C4.89 6.59515 4.78108 6.61694 4.67953 6.65924C4.57798 6.70155 4.48581 6.76355 4.40834 6.84165C4.25313 6.99779 4.16602 7.209 4.16602 7.42915C4.16602 7.64931 4.25313 7.86052 4.40834 8.01665L8.23334 11.8417C8.70209 12.3098 9.33751 12.5728 10 12.5728C10.6625 12.5728 11.2979 12.3098 11.7667 11.8417L15.5917 8.01665C15.7469 7.86052 15.834 7.64931 15.834 7.42915C15.834 7.209 15.7469 6.99779 15.5917 6.84165Z' fill='%23A4B0C1'/%3E%3C/svg%3E");
  background-size: 20px;
  background-position: right 12px center;
  background-repeat: no-repeat;
}
.form-select.selected {
  color: var(--black-1);
}
.form-date {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" ><g clip-path="url(%23clip0_855_10103)"><path d="M6 9H4.5C3.67275 9 3 9.67275 3 10.5V12C3 12.8273 3.67275 13.5 4.5 13.5H6C6.82725 13.5 7.5 12.8273 7.5 12V10.5C7.5 9.67275 6.82725 9 6 9ZM4.5 12V10.5H6V12H4.5ZM14.25 1.5H13.5V0.75C13.5 0.336 13.1648 0 12.75 0C12.3352 0 12 0.336 12 0.75V1.5H6V0.75C6 0.336 5.66475 0 5.25 0C4.83525 0 4.5 0.336 4.5 0.75V1.5H3.75C1.68225 1.5 0 3.18225 0 5.25V14.25C0 16.3177 1.68225 18 3.75 18H14.25C16.3177 18 18 16.3177 18 14.25V5.25C18 3.18225 16.3177 1.5 14.25 1.5ZM3.75 3H14.25C15.4905 3 16.5 4.0095 16.5 5.25V6H1.5V5.25C1.5 4.0095 2.5095 3 3.75 3ZM14.25 16.5H3.75C2.5095 16.5 1.5 15.4905 1.5 14.25V7.5H16.5V14.25C16.5 15.4905 15.4905 16.5 14.25 16.5Z" fill="%23147E5C"/></g><defs><clipPath id="clip0_855_10103"><rect width="18" height="18" fill="white"/></clipPath></defs></svg>');
  background-size: 20px;
  background-position: right 12px center;
  background-repeat: no-repeat;
  padding-right: 36px;
  position: relative;
}
.form-check-label {
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  cursor: pointer;
}
.form-check-label a {
  color: var(--green-1);
}
.form-upload__input {
  border-radius: 10px;
  border: 1px dashed var(--black-5);
  background: var(--black-9);
  height: var(--size-btn-48);
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 0 12px;
  gap: 10px;
}
.form-upload__input input {
  display: none;
}
.form-upload__icon {
  font-size: 20px;
  color: var(--blue-3);
}
.form-upload__placeholder {
  color: var(--black-4);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.active .form-upload__placeholder {
  color: var(--black-1);
}
.form-upload__remove {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  margin-left: auto;
  color: #de0a26;
  display: none;
}
.form-uploader__area {
  border-radius: 10px;
  border: 1px dashed var(--black-5);
  background: var(--black-9);
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  cursor: pointer;
}
.form-uploader__area i {
  font-size: 24px;
  color: var(--blue-2);
}
.form-uploader__list {
  margin-top: 12px;
}
.form-uploader__item {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  display: flex;
  align-items: center;
  padding: 4px 12px 4px 4px;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
}
.form-uploader__item:hover {
  padding: 4px 12px 4px 12px;
  background-color: var(--black-10);
  color: var(--black-1);
}
.form-uploader__remove {
  margin-left: auto;
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  font-size: 20px;
  color: red;
}
.form-checkbox, .form-radio {
  display: block;
}
.form-checkbox__btn, .form-radio__btn {
  --active-color: transparent;
  padding: var(--space-12);
  padding-left: var(--space-20);
  display: flex;
  align-items: center;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  cursor: pointer;
}
.shop-aside__rank .form-checkbox__btn, .shop-aside__rank .form-radio__btn {
  font-size: 24px;
  font-weight: 200;
}
.form-checkbox__btn i, .form-radio__btn i {
  min-width: 24px;
  height: 24px;
  aspect-ratio: 1/1;
  background-color: var(--active-dot-color, #F4F3F1);
  border: 2px solid var(--active-color);
  border-radius: 50%;
  position: relative;
  margin-left: auto;
}
.form-checkbox__btn i::after, .form-radio__btn i::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  aspect-ratio: 1/1;
  background-color: var(--active-color);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.form-checkbox .form-checkbox__btn i, .form-checkbox .form-radio__btn i {
  border-radius: 4px;
}
.form-checkbox .form-checkbox__btn i::after, .form-checkbox .form-radio__btn i::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2.5 6.5L5.99958 10L13 3" stroke="white" stroke-width="1.5"/></svg>');
  display: none;
}
.form-checkbox__input, .form-radio__input {
  display: none;
}
.form-checkbox__input:checked ~ .form-checkbox__btn, .form-checkbox__input:checked ~ .form-radio__btn, .form-radio__input:checked ~ .form-checkbox__btn, .form-radio__input:checked ~ .form-radio__btn {
  --active-color: var(--red-1);
  --active-dot-color: transparent;
}
.form-checkbox .form-checkbox__input:checked ~ .form-checkbox__btn i, .form-checkbox .form-radio__input:checked ~ .form-checkbox__btn i {
  background-color: var(--red-1);
}
.form-checkbox .form-checkbox__input:checked ~ .form-checkbox__btn i::after, .form-checkbox .form-radio__input:checked ~ .form-checkbox__btn i::after {
  display: block;
}

textarea.form-control {
  min-height: 96px;
  resize: none;
  padding-top: 12px;
}

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

.modal-header {
  display: flex;
  align-items: center;
  margin-bottom: var(--space-16);
  padding: 0;
  border-bottom: none;
}
.modal-header__btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 24px;
  background-color: #F4F3F1;
}
.modal-header__btn:hover {
  background-color: #eceae6;
}
.modal-header__btn.icon-close {
  margin-left: auto;
}
.modal-content {
  padding: 16px;
}
.modal-title {
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  text-align: center;
  margin-bottom: var(--space-24);
}
.modal-subtitle {
  font-size: var(--size-text-14);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  text-align: center;
  width: 80%;
  margin: 0 auto var(--space-16) auto;
}
.modal-input {
  border-radius: 12px;
  background: #F4F3F1;
  padding: var(--space-12) var(--space-24);
  display: flex;
  align-items: center;
  margin-bottom: var(--space-16);
}
.modal-input__before {
  font-size: var(--size-text-24);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  margin-right: 8px;
}
.modal-input input {
  background-color: transparent;
  border: none;
  outline: none;
  font-size: var(--size-text-24);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
}
.modal-button {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  height: var(--size-btn-52);
  border-radius: 12px;
  background: var(--red-1);
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  margin-bottom: var(--space-24);
}
.modal-button[disabled] {
  background: #F4F3F1;
  color: #818290;
}
.modal-button__gray {
  background-color: #F4F3F1;
  color: var(--black-1);
}
.modal-button__gray i {
  font-size: 24px;
  color: var(--black-1);
}
.modal-text {
  font-size: var(--size-text-14);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  text-align: center;
  margin-bottom: var(--space-24);
}
.modal-text a {
  color: #337BE8;
}
.modal-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.modal-bottom__contact {
  font-size: var(--size-text-14);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  display: flex;
  align-items: center;
}
.modal-bottom__contact i {
  font-size: 24px;
}
.modal-bottom__lang {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  font-size: var(--size-text-14);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  display: flex;
  align-items: center;
  gap: 4px;
}
.modal-bottom__lang i {
  font-size: 16px;
}
.modal-confirm {
  display: flex;
  max-width: 100%;
  margin: 0 -2px;
  margin-bottom: var(--space-40);
}
.modal-confirm__input {
  padding: 0 2px;
  flex: 1;
}
.modal-confirm__input input {
  width: 100%;
  display: block;
  height: var(--size-btn-52);
  border-radius: 12px;
  background: #F4F3F1;
  border: none;
  outline: none;
  min-width: unset;
  text-align: center;
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  border: 1px solid transparent;
  transition: all 0.2s ease-in-out;
}
._correct .modal-confirm__input input {
  background-color: var(--green-2);
  border-color: rgb(65, 176, 120);
}
._wrong .modal-confirm__input input {
  border-color: var(--red-1);
  background-color: var(--red-2);
}

.ya-share2__container_size_m .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more.ya-share2__link_more-button-type_short {
  background-color: var(--green-1) !important;
}

.ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__icon_more {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="rgba(20, 87, 149, 1)"><path d="M12.8888 9.77792C12.3847 9.77833 11.8883 9.90139 11.4425 10.1365C10.9966 10.3715 10.6146 10.7116 10.3295 11.1273L5.99012 9.16792C6.29833 8.42368 6.29952 7.58771 5.99345 6.84259L10.3268 4.87325C10.7494 5.48442 11.377 5.9239 12.0958 6.11195C12.8147 6.30001 13.5771 6.22419 14.2449 5.89825C14.9126 5.57232 15.4414 5.01785 15.7353 4.33543C16.0293 3.65301 16.0689 2.88784 15.847 2.1787C15.6251 1.46957 15.1564 0.863452 14.5259 0.470291C13.8954 0.0771302 13.1449 -0.0770308 12.4105 0.0357716C11.6761 0.148574 11.0064 0.520868 10.5229 1.08512C10.0395 1.64938 9.7743 2.36822 9.77545 3.11125C9.77828 3.28712 9.79612 3.46242 9.82878 3.63525L5.22212 5.72859C4.77968 5.31407 4.22579 5.03781 3.6285 4.93376C3.03121 4.82971 2.41654 4.9024 1.85999 5.14289C1.30344 5.38339 0.829268 5.78121 0.495715 6.2875C0.162163 6.79378 -0.0162385 7.38647 -0.0175706 7.99275C-0.0189027 8.59904 0.156892 9.1925 0.488217 9.70025C0.819542 10.208 1.29197 10.6079 1.84745 10.8508C2.40293 11.0938 3.01728 11.1692 3.61502 11.0677C4.21276 10.9663 4.76786 10.6925 5.21212 10.2799L9.83078 12.3653C9.7987 12.5379 9.78109 12.713 9.77812 12.8886C9.77799 13.504 9.96037 14.1056 10.3022 14.6174C10.644 15.1292 11.1299 15.5281 11.6985 15.7636C12.267 15.9992 12.8927 16.0609 13.4963 15.9408C14.0999 15.8208 14.6543 15.5245 15.0895 15.0893C15.5247 14.6541 15.821 14.0997 15.941 13.4961C16.0611 12.8925 15.9994 12.2668 15.7638 11.6983C15.5282 11.1297 15.1294 10.6438 14.6176 10.302C14.1058 9.96017 13.5042 9.77779 12.8888 9.77792ZM12.8888 1.33325C13.2405 1.33312 13.5843 1.43729 13.8768 1.63258C14.1692 1.82787 14.3972 2.10551 14.5319 2.43038C14.6666 2.75526 14.7019 3.11277 14.6334 3.45772C14.5648 3.80266 14.3956 4.11953 14.1469 4.36825C13.8983 4.61698 13.5815 4.78638 13.2366 4.85504C12.8917 4.9237 12.5341 4.88853 12.2092 4.75398C11.8843 4.61942 11.6065 4.39153 11.4111 4.09913C11.2157 3.80672 11.1115 3.46294 11.1115 3.11125C11.1118 2.63992 11.2992 2.18799 11.6324 1.85464C11.9656 1.5213 12.4175 1.33378 12.8888 1.33325ZM3.11145 9.77792C2.75977 9.77805 2.41594 9.67389 2.12347 9.4786C1.83099 9.28331 1.60299 9.00567 1.46832 8.68079C1.33364 8.35592 1.29834 7.9984 1.36687 7.65346C1.4354 7.30852 1.60468 6.99165 1.85331 6.74292C2.10194 6.4942 2.41875 6.32479 2.76367 6.25613C3.10859 6.18748 3.46612 6.22265 3.79104 6.3572C4.11597 6.49175 4.39369 6.71964 4.58909 7.01205C4.78449 7.30445 4.88878 7.64824 4.88878 7.99992C4.88826 8.4712 4.70085 8.92303 4.36767 9.25634C4.03449 9.58964 3.58273 9.77722 3.11145 9.77792ZM12.8888 14.6666C12.5371 14.6666 12.1934 14.5623 11.901 14.3669C11.6086 14.1716 11.3807 13.8939 11.2461 13.569C11.1116 13.2441 11.0763 12.8866 11.1449 12.5417C11.2136 12.1968 11.3829 11.88 11.6315 11.6314C11.8802 11.3827 12.197 11.2134 12.5419 11.1448C12.8868 11.0761 13.2443 11.1114 13.5692 11.2459C13.8941 11.3805 14.1718 11.6084 14.3671 11.9008C14.5625 12.1932 14.6668 12.5369 14.6668 12.8886C14.6664 13.36 14.479 13.8121 14.1456 14.1454C13.8123 14.4788 13.3602 14.6662 12.8888 14.6666Z" /></svg>') !important;
  background-size: 18px 18px !important;
  background-position: center center !important;
  width: 18px !important;
  height: 18px !important;
  margin-right: 6px;
}

.ya-share2__container_size_m .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more.ya-share2__link_more-button-type_short {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  border: 1px solid var(--black-9) !important;
  background: var(--white-1) !important;
  box-shadow: 0px 1px 2px 0px rgba(35, 73, 130, 0.1);
  padding: 6px 8px !important;
}
.ya-share2__container_size_m .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more.ya-share2__link_more-button-type_short::after {
  content: var(--local-text);
  color: var(--black-2);
  font-family: "MuseoSansCyrl-300", sans-serif;
  font-size: var(--size-text-16);
  line-height: 138%;
  letter-spacing: -0.16px;
}

.ya-share2__container_size_m.ya-share2__container_alone .ya-share2__popup_direction_bottom,
.ya-share2__container_size_m .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__popup_direction_bottom {
  right: unset !important;
  left: 0 !important;
  top: 40px !important;
}

.my-table {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid var(--black-7);
  border-radius: 14px;
}
.my-table table {
  width: 100%;
}
.my-table thead {
  box-shadow: 0px 0px 20px 0px rgba(51, 97, 135, 0.03);
}
.my-table th {
  background-color: var(--green-1);
  padding: 14px 6px;
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.my-table th:first-child {
  padding-left: 16px;
}
.my-table th:last-child {
  padding-right: 14px;
}
.my-table tr:first-child th:first-child {
  border-radius: 14px 0 0 0;
}
.my-table tr:first-child th:last-child {
  border-radius: 0px 14px 0 0;
}
.my-table td {
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  padding: 14px 6px;
  background-color: var(--white-1);
  height: 100%;
  border-bottom: 1px solid var(--black-7);
}
.my-table td:first-child {
  padding-left: 16px;
}
.my-table td:last-child {
  padding-right: 16px;
}
.my-table tr:last-child td {
  border-bottom: none;
}
.my-table__filled {
  text-align: center;
  background-color: var(--black-9) !important;
}
.my-table:not(.not-zebra) tr:nth-child(even) td {
  background-color: var(--black-9) !important;
}

.my-table-1 {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}
.my-table-1 table {
  border-collapse: separate;
  border-spacing: 8px 8px;
  display: block;
  margin: -8px;
}
.my-table-1 th {
  padding: 12px;
  border-radius: 8px;
  background: var(--black-7);
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.my-table-1 td {
  position: relative;
  z-index: 1;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid var(--black-9);
  background: var(--white-1);
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: var(--space-20);
}
.pagination-item {
  --local-size: 40px;
  height: var(--local-size);
  width: var(--local-size);
  border-radius: 10px;
  background: var(--black-8);
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
  z-index: 1;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
}
@media only screen and (max-width: 574px) {
  .pagination-item {
    --local-size: 36px;
  }
}
.pagination-item::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--program-2);
  opacity: 0;
  z-index: -1;
  transition: all 0.2s ease-in-out;
}
.pagination-item:hover, .pagination-item.active {
  color: var(--white-1);
}
.pagination-item:hover::after, .pagination-item.active::after {
  opacity: 1;
}

.search-title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-900", sans-serif;
  font-size: var(--size-text-80);
  line-height: 110%;
  letter-spacing: -0.8px;
  margin-bottom: var(--space-32);
}
.search-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
}
.search-empty__text {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-bottom: var(--space-24);
}
.search-list__item {
  padding: 12px;
  background-color: var(--white-1);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.search-list__item:not(:last-child) {
  margin-bottom: 12px;
}
.search-list__title {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-bottom: 4px;
}
.search-list__link {
  color: var(--blue-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  text-decoration: underline;
  cursor: pointer;
}

.error {
  padding: var(--space-100) 0 0 0;
}
.error-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.error-container__image {
  max-width: 750px;
  width: 100%;
  height: auto;
}
.error-container__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-bottom: 16px;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "Inter", sans-serif;
}

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

ul,
ol {
  list-style: none;
  padding: 0;
}

a {
  text-decoration: none;
}
a:hover {
  color: var(--red-1);
}
a:hover > i {
  color: var(--red-1);
}

.clean-btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
}

.wrapper {
  position: relative;
  z-index: 1;
}
.wrapper.page-wrapper {
  background-color: var(--black-10);
}

.container {
  max-width: calc(var(--width-container) + var(--space-16) * 2);
  margin: 0 auto;
  padding: 0 var(--space-16);
  width: 100%;
}

.row {
  --local-space: var(--space-20);
  margin-left: calc(0px - var(--local-space) / 2);
  margin-right: calc(0px - var(--local-space) / 2);
  row-gap: 32px;
}
.row > div {
  padding: 0 calc(var(--local-space) / 2);
}

.owl-dots {
  display: flex;
  justify-content: center;
  gap: 4px;
  margin-top: var(--space-20);
}
.owl-dot {
  width: 14px;
  height: 8px;
  background-color: var(--blue-2) !important;
  border-radius: 8px;
  opacity: 0.3;
  transition: all 0.2s ease-in-out;
}
.event-section .owl-dot {
  background-color: var(--white-1) !important;
}
.owl-dot.active {
  width: 32px;
  opacity: 1;
}
.owl-carousel__nav {
  display: flex;
  align-items: center;
  gap: 8px;
}
.owl-carousel__left, .owl-carousel__right {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  width: var(--size-btn-40);
  height: var(--size-btn-40);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(15px);
  font-size: 20px;
  color: var(--white-1);
  transition: all 0.15s ease-in-out;
}
.owl-carousel__left:hover, .owl-carousel__right:hover {
  color: var(--black-1);
  background-color: var(--white-1);
}
.owl-carousel .owl-stage {
  display: flex;
}
.owl-carousel .owl-item {
  float: unset;
  min-height: unset;
}

.pt-120 {
  padding-top: var(--space-120);
}

.pt-100 {
  padding-top: var(--space-100);
}

.pb-100 {
  padding-bottom: var(--space-100);
}

.rank {
  display: flex;
  gap: 3px;
}

.rank svg {
  --local-size: 18px;
  width: var(--local-size);
  height: var(--local-size);
  fill: var(--red-1);
  stroke-width: 0.5px;
  stroke: var(--red-1);
}

.breadcrumbs {
  display: flex;
  align-items: center;
}
.breadcrumbs-item {
  display: flex;
  align-items: center;
}
.breadcrumbs-item__link {
  font-size: var(--size-text-12);
  font-weight: 400;
  line-height: normal;
  color: #818290;
  display: block;
}
.breadcrumbs-item__link.active {
  color: var(--black-1);
}
.breadcrumbs-item:not(:last-child)::after {
  content: "/";
  display: inline-block;
  margin: 0 8px;
  font-size: var(--size-text-12);
  font-weight: 400;
  line-height: normal;
  color: #818290;
}

.content > *:not(:last-child) {
  margin-bottom: 16px;
}
.content ul {
  list-style: disc;
  padding-left: 24px;
}
.content img {
  width: 100%;
  height: auto;
}
.content i,
.content p,
.content ul li,
.content span {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.content > i {
  font-style: italic;
}
.content a {
  color: var(--green-1);
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
  margin-bottom: 8px !important;
}
.content h2 {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-900", sans-serif;
  font-size: var(--size-text-80);
  line-height: 110%;
  letter-spacing: -0.8px;
}
.content h3 {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-26);
  line-height: 140%;
  letter-spacing: -0.26px;
}
.content h4 {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-24);
  line-height: 140%;
  letter-spacing: -0.24px;
}
.content h5 {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
.content h6 {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.content-links__item {
  display: flex;
  align-items: center;
  gap: 8px;
}
.content-links__item:not(:last-child) {
  margin-bottom: 12px;
}
.content-links__item a,
.content-links__item span {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.content-links__item i {
  font-size: 20px;
  color: var(--blue-3);
}
.content-links__item a {
  color: var(--blue-3);
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 8px;
}

.aside {
  position: sticky;
  top: calc(var(--height-header) + var(--space-16));
}
.aside > *:not(:last-child) {
  margin-bottom: 12px;
}
.aside-banner {
  border-radius: 12px;
  border: 1px solid var(--black-7);
  background: linear-gradient(90deg, #EAEEF5 0%, #DFE4ED 100%);
  padding: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.aside-banner__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: 16px;
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-bottom: 12px;
}
.aside-banner__btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  border-radius: 8px;
  padding: 6px 8px;
  background: var(--green-1);
}
.aside-banner__image {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: auto;
  z-index: -1;
}

.sidebar {
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  box-shadow: 0px 0px 30px 0px rgba(7, 12, 28, 0.04);
}
.sidebar-title {
  padding: 12px;
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
.sidebar-menu__item {
  border-top: 1px solid var(--black-7);
}
.sidebar-menu__link {
  display: block;
  padding: 12px;
  position: relative;
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.sidebar-menu__link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  height: 0px;
  width: 4px;
  background-color: var(--green-1);
  transition: all 0.2s ease-in-out;
}
.sidebar-menu__link:hover, .sidebar-menu__link.active {
  color: var(--green-1);
}
.sidebar-menu__link:hover::before, .sidebar-menu__link.active::before {
  height: 20px;
}

.tab {
  display: flex;
  align-items: center;
  border-radius: 12px;
  background: var(--black-8);
  padding: 4px;
  width: max-content;
  flex-wrap: wrap;
  align-content: flex-start;
  row-gap: 4px;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .tab {
    width: 100%;
  }
}
.partners-section .tab {
  margin: -8px auto var(--space-16) auto;
}
.tab.type-1 {
  padding: 3px;
}
.tab-item__btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  padding: 7px 10px;
  border-radius: 8px;
  transition: all 0.2s ease-in-out;
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.type-1 .tab-item__btn {
  padding: 5px 10px;
}
.tab-item__btn.active {
  background: var(--white-1);
  box-shadow: 0px 2px 8px 0px rgba(16, 44, 87, 0.2);
  color: var(--black-1);
}

.player {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
  width: 56px;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--linear-1);
  border-radius: 50%;
}
.player::after {
  content: "";
  position: absolute;
  background-image: url('data:image/svg+xml,<svg viewBox="0 0 50 50" fill="white" xmlns="http://www.w3.org/2000/svg"><path d="M50 25C50 21.717 49.3534 18.4661 48.097 15.4329C46.8406 12.3998 44.9991 9.6438 42.6777 7.32233C40.3562 5.00087 37.6002 3.15938 34.5671 1.90301C31.5339 0.646644 28.283 -1.43507e-07 25 0V2.5C27.9547 2.5 30.8806 3.08198 33.6104 4.21271C36.3402 5.34344 38.8206 7.00078 40.9099 9.0901C42.9992 11.1794 44.6566 13.6598 45.7873 16.3896C46.918 19.1194 47.5 22.0453 47.5 25H50Z" /><path d="M2.18557e-06 25C1.89856e-06 28.283 0.646646 31.5339 1.90301 34.5671C3.15938 37.6002 5.00087 40.3562 7.32233 42.6777C9.6438 44.9991 12.3998 46.8406 15.4329 48.097C18.4661 49.3534 21.717 50 25 50L25 47.5C22.0453 47.5 19.1194 46.918 16.3896 45.7873C13.6598 44.6566 11.1794 42.9992 9.0901 40.9099C7.00078 38.8206 5.34344 36.3402 4.21271 33.6104C3.08198 30.8805 2.5 27.9547 2.5 25L2.18557e-06 25Z" /></svg>');
  top: 3px;
  right: 3px;
  left: 3px;
  bottom: 3px;
  background-size: contain;
  background-position: center;
  opacity: 0.4;
  position: absolute;
}
.player::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--white-1);
  opacity: 0.15;
}
.player i {
  font-size: 18px;
  color: var(--white-1);
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.player i::after {
  content: "";
  color: #175217;
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 100%;
  height: 100%;
  background: var(--linear-1);
  border-radius: 50%;
  -webkit-animation: pulse-border 1500ms ease-out infinite;
  animation: pulse-border 1500ms ease-out infinite;
}

@keyframes pulse-border {
  0% {
    -webkit-transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
    opacity: 0;
  }
}
.expander {
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  padding: var(--space-16);
}
.shop-aside .expander {
  padding: 0px;
  border-radius: 0px;
}
.expander:not(:last-child) {
  margin-bottom: var(--space-40);
}
.shop-aside .expander:not(:last-child) {
  margin-bottom: 0;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 4px;
  margin-bottom: 4px;
}
.expander-header {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  display: flex;
  align-items: center;
  width: 100%;
  gap: 12px;
}
.shop-aside .expander-header {
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  padding: var(--space-12) var(--space-12) var(--space-12) var(--space-20);
}
.has-divider .expander-header {
  border-bottom: 1px solid var(--black-7);
  padding-bottom: 16px;
  transition: all 0.1s ease-in-out;
}
.has-divider .expander-header.collapsed {
  padding-bottom: 0px;
  border-color: transparent;
}
.expander-header i:not(.icon-angle-bot) {
  font-size: 22px;
  color: var(--blue-3);
}
.expander-header__angle {
  --local-size: 32px;
  font-size: 24px;
  width: var(--local-size);
  height: var(--local-size);
  border-radius: 50%;
  color: var(--black-5);
  background-color: var(--white-1);
  margin-left: auto;
  transform: rotate(-180deg);
  transition: all 0.2s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
}
.shop-aside .expander-header__angle {
  --local-size: 24px;
  border-radius: 18px;
  background: #F4F3F1;
  font-size: 18px;
}
.collapsed .expander-header__angle {
  transform: rotate(0);
}
.expander-body > *:first-child {
  transition: padding 0.2s ease-in-out;
}
.expander-body.show > *:first-child {
  padding-top: 12px;
}
.shop-aside .expander-body.show > *:first-child {
  padding-top: 0;
}
.section-page {
  padding-top: calc(var(--height-header) + var(--space-24));
}
.section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-32);
  padding-top: 12px;
  border-top: 1px solid #D9D9D9;
}
.section-header__title {
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.section-header__link {
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  display: flex;
  align-items: center;
  gap: 0px;
  gap: 8px;
}
.section-header__link i {
  width: 24px;
  height: 24px;
  border-radius: 18px;
  background: #F4F3F1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section-navigation {
  display: flex;
  margin-bottom: var(--space-24);
}
.section-navigation__action {
  display: flex;
  gap: 8px;
  height: var(--size-btn-56);
  border-radius: calc(var(--size-btn-56) / 2);
  background: #F4F3F1;
}
.section-navigation__action__sum {
  padding: 0 var(--space-24);
  display: flex;
  align-items: center;
}
.section-navigation__action__submit {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  outline: none;
  padding: 0 var(--space-24) 0 var(--space-16);
  border-radius: calc(var(--size-btn-56) / 2);
  background: var(--red-1);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
}
.section-navigation__action__submit i {
  font-size: 32px;
  color: var(--white-1);
}

.tab-navigation {
  height: calc(var(--size-btn-56));
  margin-left: auto;
  padding: var(--local-padding);
  display: flex;
  align-items: center;
  border-radius: calc(var(--size-btn-56) / 2);
  background: #F4F3F1;
  padding: 0 4px;
}
.tab-navigation__btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  padding: var(--space-16) var(--space-20);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: #818290;
  height: var(--size-btn-48);
  border-radius: calc(var(--size-btn-48) / 2);
}
.tab-navigation__btn.active {
  background-color: var(--white-1);
}

.hero {
  padding: calc(var(--space-40) + var(--height-header)) var(--space-16) var(--space-80);
  --height-hero-item: 390px;
}
.hero-carousel {
  position: relative;
}
.hero-carousel__nav {
  position: absolute;
  right: 24px;
  bottom: 24px;
  z-index: 999;
}
.hero-item__image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  z-index: -1;
}
.hero-item {
  min-height: var(--height-hero-item);
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--space-32) var(--space-32) var(--space-24);
  border-radius: 8px;
  overflow: hidden;
}
.hero-item__logo {
  margin-top: auto;
  width: 100px !important;
  height: auto;
}
.hero-item__title {
  font-size: var(--size-text-40);
  font-weight: 600;
  line-height: normal;
  color: var(--white-1);
  max-width: 300px;
  margin-bottom: 12px;
}
.hero-item__text {
  font-size: var(--size-text-20);
  font-weight: 400;
  line-height: 140%;
  color: var(--white-1);
  max-width: 250px;
}
.hero-item__link {
  padding: 12px 24px;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(15px);
  display: inline-block;
  margin-top: var(--space-24);
  transition: all 0.1s ease-in-out;
}
.hero-item__link:hover {
  background-color: var(--white-1);
  color: var(--black-1);
}
.hero-discount {
  min-height: var(--height-hero-item);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  z-index: 1;
  padding: var(--space-32);
}
.hero-discount__image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  z-index: -1;
}
.hero-discount__title {
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
}
.hero-discount__title span {
  display: block;
  margin-top: 8px;
  font-size: var(--size-text-48);
  font-weight: 600;
  line-height: normal;
  color: var(--white-1);
}
.hero-discount__badge {
  padding: 12px 24px;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  position: absolute;
  right: var(--space-24);
  bottom: var(--space-24);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(15px);
  cursor: pointer;
  transition: all 0.1s ease-in-out;
}
.hero-discount__badge:hover {
  background-color: var(--white-1);
  color: var(--black-1);
}

.header-link {
  font-size: var(--size-text-14);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  display: flex;
  align-items: center;
  gap: 0px;
}
.header-link i {
  color: var(--white-1);
}
.header-link i:not(.icon-angle-bot) {
  font-size: 24px;
}
.header-link i.icon-angle-bot {
  font-size: 16px;
  margin-left: 4px;
}
.header-link:hover {
  color: var(--white-1);
}
.header-btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  height: var(--size-btn-48);
  gap: 4px;
  border-radius: 24px;
  background: var(--grey-1);
  padding: 0 20px 0 16px;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  transition: all 0.1s ease-in-out;
  position: relative;
}
.header-btn i {
  font-size: 32px;
  color: var(--black-1);
  transition: all 0.1s ease-in-out;
}
.header-btn__badge {
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--blue-1);
  font-size: var(--size-text-10);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  padding: 2.5px 5px;
  border-radius: 8px;
}
.header-btn:hover {
  background-color: var(--red-1);
  color: var(--white-1);
}
.header-btn:hover i {
  color: var(--white-1);
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100000;
  border-bottom: 1px solid #E4E1E1;
  background-color: var(--white-1);
}
.header::before {
  content: "";
  height: var(--height-header-top);
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--red-1);
  z-index: -1;
}
.header-top {
  display: flex;
  align-items: center;
  height: var(--height-header-top);
  justify-content: space-between;
}
.header-top__menu, .header-top__functions {
  display: flex;
  align-items: center;
  gap: var(--space-24);
}
.header-bot {
  display: flex;
  align-items: center;
  height: var(--height-header-bot);
}
.profile-wrapper .header-bot {
  display: none;
}
.header-bot__left, .header-bot__right {
  flex: 1;
  display: flex;
  align-items: center;
}
.header-logo {
  max-width: 186px;
  margin-right: auto;
}
.header-logo img {
  width: 100%;
  height: auto;
  display: block;
}
.header-search {
  max-width: var(--width-header-search);
  width: 100%;
  display: flex;
  margin: 0 4px;
  gap: 4px;
  position: relative;
}
.header-search__input {
  width: 100%;
  border-radius: 24px;
  background: var(--grey-1);
  height: 100%;
  border: none;
  padding: 0 64px 0 24px;
  outline: none;
  height: var(--size-btn-48);
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
}
.header-search__input::placeholder {
  color: #818290;
}
.header-search__icon {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 32px;
  color: var(--black-1);
}
.header-catalog__bars {
  width: 16px;
  height: 11.25px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
}
.header-catalog__bar {
  display: block;
  position: absolute;
  border-top: 2px solid var(--black-1);
  width: 100%;
  background: var(--black-1);
  border-radius: 2px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.header-catalog:hover .header-catalog__bar, .header-catalog.active .header-catalog__bar {
  border-color: var(--white-1);
}
.header-catalog__bar:nth-child(1) {
  top: 0px;
}
.active .header-catalog__bar:nth-child(1) {
  top: 4.5px;
  width: 0%;
  left: 50%;
}
.active .header-catalog__bar:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.active .header-catalog__bar:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.header-catalog__bar:nth-child(4) {
  top: 10px;
}
.active .header-catalog__bar:nth-child(4) {
  top: 4.5px;
  width: 0%;
  left: 50%;
}
.header-catalog__bar:nth-child(2), .header-catalog__bar:nth-child(3) {
  top: 4.5px;
}
.header-catalog.active {
  background-color: var(--red-1);
  color: var(--white-1);
}
.header-actions {
  justify-content: flex-end;
  gap: 4px;
}

.graduate-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 12px;
  border: 1px solid var(--black-7);
  background: var(--black-9);
  overflow: hidden;
}
.graduate-card__image {
  position: relative;
}
.graduate-card__image::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 10px;
  background-color: var(--blue-3);
}
.graduate-card__image__wrapper {
  aspect-ratio: 2.06;
}
.graduate-card__image__wrapper::before, .graduate-card__image__wrapper::after {
  content: "";
  position: absolute;
  width: 33.3333%;
  background-color: var(--blue-4);
  height: 10px;
  bottom: 0;
  z-index: 3;
}
.graduate-card__image__wrapper::before {
  left: 0;
}
.graduate-card__image__wrapper:after {
  right: 0;
}
.graduate-card__image__wrapper img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.graduate-card__info {
  flex: 1;
  padding: 10px 14px 14px 14px;
  display: flex;
  flex-direction: column;
}
.graduate-card__title {
  color: var(--blue-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
  margin-bottom: auto;
}
.graduate-card__divider {
  margin: 14px 0;
  border-top: 1px solid var(--black-6);
}
.graduate-card__btn {
  display: flex;
  align-items: center;
  color: var(--blue-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  gap: 4px;
}

.news-right {
  position: relative;
  z-index: 1;
  align-self: flex-start;
}
@media only screen and (max-width: 991px) {
  .news-right {
    display: flex;
    flex-wrap: wrap;
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }
  .news-right > * {
    width: 50%;
  }
}
@media only screen and (max-width: 991px) and (max-width: 768px) {
  .news-right > * {
    width: 100%;
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
}
.news-right::after {
  content: "";
  position: absolute;
  right: var(--space-16);
  top: 0;
  height: 100%;
  width: 128px;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-image: url("../images/news-frame.png");
  opacity: 0.2;
  z-index: -1;
}
.news-section {
  position: relative;
  z-index: 2;
}
.news-section > .row > div {
  flex: unset;
  width: calc(100% + (100vw - var(--width-container)) / 2);
}
.news-section > .row > div:nth-child(1) {
  width: 41.6666666667%;
}
@media only screen and (max-width: 1400px) {
  .news-section > .row > div:nth-child(1) {
    width: 37.5%;
  }
}
@media only screen and (max-width: 1199px) {
  .news-section > .row > div:nth-child(1) {
    width: 66.6666666667%;
  }
}
@media only screen and (max-width: 991px) {
  .news-section > .row > div:nth-child(1) {
    width: 58.3333333333%;
  }
}
@media only screen and (max-width: 768px) {
  .news-section > .row > div:nth-child(1) {
    width: 100%;
  }
}
.news-section > .row > div:nth-child(2) {
  width: 20.8333333333%;
}
@media only screen and (max-width: 1400px) {
  .news-section > .row > div:nth-child(2) {
    width: 25%;
  }
}
@media only screen and (max-width: 1199px) {
  .news-section > .row > div:nth-child(2) {
    width: 33.3333333333%;
  }
}
@media only screen and (max-width: 991px) {
  .news-section > .row > div:nth-child(2) {
    width: 41.6666666667%;
  }
}
@media only screen and (max-width: 768px) {
  .news-section > .row > div:nth-child(2) {
    width: 100%;
  }
}
.news-section > .row > div:nth-child(3) {
  width: 37.5%;
}
@media only screen and (max-width: 1199px) {
  .news-section > .row > div:nth-child(3) {
    width: 100%;
  }
}
.news-card {
  display: block;
  cursor: pointer;
}
.news-card:not(:last-child) {
  margin-bottom: 16px;
}
.news-card._1 {
  --local-ratio: 1.43;
  --local-nav-height: 38px;
  --local-info-padding-y: 16px;
  --local-nav-color: white;
  position: sticky;
  top: calc(var(--height-header) + 16px);
}
.news-card._2 {
  --local-ratio: 1.53;
  --local-nav-height: 34px;
  --local-info-padding-y: 8px;
  --local-nav-color: white;
}
.news-card._3 {
  --local-ratio: 1.51;
  --local-nav-color: #656975;
  display: flex;
}
@media only screen and (max-width: 574px) {
  .news-card._3 {
    flex-wrap: wrap;
  }
}
._3 .news-card__image {
  --local-width: 196px;
  width: var(--local-width);
  min-width: var(--local-width);
  margin-right: 16px;
}
@media only screen and (max-width: 574px) {
  ._3 .news-card__image {
    --local-width: 100%;
    margin-right: 0;
    margin-bottom: 16px;
  }
  ._3 .news-card__image img {
    height: auto;
  }
}
.news-card__image__wrapper {
  aspect-ratio: var(--local-ratio);
}
.news-card__image__wrapper img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 16px;
}
.news-card__info {
  position: relative;
}
._1 .news-card__info, ._2 .news-card__info {
  padding-top: calc(var(--local-nav-height) / 2 + var(--local-info-padding-y));
}
._3 .news-card__info {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.news-card__title {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
}
._1 .news-card__title {
  color: #1D253C;
  font-family: var(--font-700);
  font-size: var(--size-text-28);
  line-height: 140%;
  letter-spacing: -0.28px;
}
._2 .news-card__title {
  color: var(--black-1);
  font-family: var(--font-700);
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
._3 .news-card__title {
  color: var(--black-1);
  font-family: var(--font-700);
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
.news-card__subtitle {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-top: 6px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
}
.news-card__nav {
  display: flex;
  align-items: center;
}
._1 .news-card__nav, ._2 .news-card__nav {
  position: absolute;
  left: 12px;
  top: 0;
  transform: translateY(-50%);
  gap: 8px;
}
._3 .news-card__nav {
  gap: 16px;
  margin-top: 12px;
}
.news-card__nav__item {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--local-nav-color);
  font-family: var(--font-300);
  font-size: 16px;
  line-height: 140%;
  letter-spacing: -0.16px;
}
.news-card__nav__item i {
  font-size: 18px;
}
._1 .news-card__nav__item, ._2 .news-card__nav__item {
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: #145795;
  height: var(--local-nav-height);
  padding: 0 8px;
}
._1 .news-card__nav__item i, ._2 .news-card__nav__item i {
  color: var(--local-nav-color);
}
._3 .news-card__nav__item i {
  color: rgb(17, 140, 108);
}
.news-nav {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  flex-wrap: wrap;
  row-gap: 8px;
}
.news-nav__item {
  display: flex;
  align-items: center;
  padding: 6px 8px;
  color: var(--black-2);
  font-family: "MuseoSansCyrl-300", sans-serif;
  font-size: var(--size-text-16);
  line-height: 138%;
  letter-spacing: -0.16px;
  gap: 6px;
  border-radius: 10px;
  border: 1px solid var(--black-9);
  background: var(--white-1);
  margin-right: 8px;
}
.news-nav__item i {
  font-size: 18px;
  color: var(--blue-3);
}
.news-nav > .ya-share2 {
  margin-left: auto;
}
.news-image {
  aspect-ratio: 1.75;
  display: block;
}
.news-image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 12px;
}
.news-content {
  margin-bottom: var(--space-32);
}
.news-carousel {
  margin-bottom: var(--space-20);
}

.footer {
  border-top: 1px solid #E4E1E1;
  margin-top: var(--space-120);
}
.footer-top {
  padding: var(--space-40) 0;
}
.footer-left {
  max-width: 222px;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.footer-logo {
  margin-bottom: 12px;
}
.footer-logo img {
  width: 100%;
  height: auto;
  display: block;
}
.footer-payments {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 8px;
  margin-top: auto;
  width: 100%;
}
.footer-payment {
  width: calc(50% - 4px);
  background-color: var(--grey-1);
  border-radius: 16px;
}
.footer-payment img {
  width: 100%;
  height: auto;
}
.footer-title {
  font-size: var(--size-text-24);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 16px;
}
.footer-menu__item {
  margin-left: -12px;
}
.footer-menu__item:not(:last-child) {
  margin-bottom: 4px;
}
.footer-menu__link {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  padding: 6px 12px;
  display: inline-block;
  border-radius: 8px;
  transition: all 0.1s ease-in-out;
}
.footer-menu__link:hover {
  background-color: var(--red-2);
  color: var(--red-1);
}
.footer-contact__item:not(:last-child) {
  margin-bottom: 12px;
}
.footer-contact__label {
  font-size: var(--size-text-12);
  font-weight: 400;
  line-height: normal;
  color: var(--red-1);
  display: block;
  margin-bottom: 4px;
}
.footer-contact__value {
  font-size: var(--size-text-20px);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  cursor: pointer;
  display: block;
}
.footer-mid {
  padding: var(--space-16) 0;
  background-color: var(--red-1);
}
.footer-mid__socials {
  display: flex;
  align-items: center;
  gap: var(--space-16);
}
.footer-mid__social {
  width: 32px;
  height: 32px;
  font-size: 32px;
  color: var(--red-1);
  clip-path: polygon(35% 0, 100% 0, 100% 65%, 65% 100%, 0 100%, 0 35%);
  background-color: var(--white-1);
}
.footer-links {
  display: flex;
  align-items: center;
  gap: var(--space-32);
}
.footer-link {
  font-size: var(--size-text-16px);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
}
.footer-mid__container, .footer-bot__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer-bot {
  padding: 8px 0;
  background-color: #202533;
}
.footer-copy {
  font-size: var(--size-text-16px);
  font-weight: 300;
  line-height: normal;
  color: var(--white-1);
}
.footer-copy a {
  font-weight: 600;
  color: var(--white-1);
}

.menu {
  position: fixed;
  top: calc(var(--height-header) + 1px);
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--white-1);
  z-index: 999;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease-in-out;
}
.menu.active {
  opacity: 1;
  visibility: visible;
}
.menu-container {
  height: 100%;
}
.menu-row {
  height: 100%;
  --local-space: 0px;
}
.menu-row__col {
  flex: unset;
}
.menu-row__col:nth-child(1) {
  width: 336px;
}
.menu-row__col:nth-child(2) {
  flex: 1;
}
.menu-row__col:nth-child(3) {
  width: 500px;
}
.menu-list {
  display: flex;
  flex-direction: column;
  row-gap: 4px;
  padding: 16px 16px 16px 0;
  border-right: 1px solid #F4F3F1;
  height: 100%;
}
.menu-list__item {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  outline: none;
  --local-icon-size: 62px;
  padding: 4px 16px;
  border-radius: 12px;
  border: 1px solid #E8E8E8;
  background: #FFF;
  backdrop-filter: blur(15px);
  justify-content: flex-start;
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  transition: all 0.15s ease-in-out;
}
.menu-list__item svg,
.menu-list__item svg > * {
  transition: all 0.15s ease-in-out;
}
.menu-list__item svg {
  width: var(--local-icon-size);
  height: var(--local-icon-size);
  margin-right: var(--space-16);
}
.menu-list__item i {
  margin-left: auto;
  font-size: 32px;
  color: transparent;
  transition: all 0.15s ease-in-out;
}
.menu-list__item:hover {
  background-color: var(--red-1);
  color: var(--white-1);
  border-color: transparent;
}
.menu-list__item:hover i {
  color: var(--white-1);
}
.menu-list__item:hover svg ._1 {
  fill: var(--white-1);
}
.menu-list__item:hover svg ._2 {
  fill: rgb(252, 96, 59);
}
.menu-list__item:hover svg ._2_1 {
  stroke: rgb(252, 96, 59);
}
.menu-main {
  padding: var(--space-40) var(--space-48);
  height: calc(100vh - var(--height-header));
  position: sticky;
  top: 0px;
}
.menu-main__title {
  font-size: var(--size-text-40);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: var(--space-40);
}
.menu-main__items {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: flex-start;
  max-height: 100%;
  gap: var(--space-40);
}
.menu-main__item {
  width: calc(50% - var(--space-40) / 2);
}
.menu-main__item__title {
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 6px;
}
.menu-sublist {
  margin-left: -12px;
}
.menu-sublist__link {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  padding: 6px 12px;
  border-radius: 8px;
  transition: all 0.15s ease-in-out;
  display: inline-block;
}
.menu-sublist__link:hover {
  background: #FCF1EC;
}
.menu-products {
  position: sticky;
  top: 0px;
  height: calc(100vh - var(--height-header));
  display: flex;
  flex-direction: column;
  justify-content: center;
  row-gap: var(--space-24);
}
.menu-product {
  cursor: pointer;
}
.menu-product__image {
  aspect-ratio: 2.08;
  position: relative;
  margin-bottom: 8px;
}
.menu-product__image__img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 16px;
}
.menu-product__image__approved {
  position: absolute;
  left: 8px;
  top: -8px;
  width: 64px;
}
.menu-product__tags {
  position: absolute;
  right: 8px;
  top: 8px;
  display: flex;
  gap: 4px;
}
.menu-product__title {
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.menu-product:hover .menu-product__title {
  color: var(--red-1);
}

.campus-navigation {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  justify-content: space-between;
  --local-minus-value: 60px;
  margin-top: 0px;
}
@media only screen and (max-width: 1199px) {
  .campus-navigation {
    --local-minus-value: 24px;
  }
}
@media only screen and (max-width: 574px) {
  .campus-navigation {
    --local-minus-value: 8px;
  }
}
.campus-navigation .prev {
  transform: translateX(calc(0px - (100% + var(--local-minus-value))));
}
.campus-navigation .next {
  transform: translateX(calc(100% + var(--local-minus-value)));
}
.campus-section {
  padding-left: 140px;
  padding-right: 140px;
  padding-bottom: 72px;
  padding-top: 60px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1712px) {
  .campus-section {
    padding-top: 32px;
    padding-bottom: 56px;
  }
}
@media only screen and (max-width: 1199px) {
  .campus-section {
    padding-left: 80px;
    padding-right: 80px;
    padding-bottom: 48px;
  }
}
@media only screen and (max-width: 991px) {
  .campus-section {
    padding-bottom: 40px;
  }
}
@media only screen and (max-width: 768px) {
  .campus-section {
    padding-bottom: 32px;
  }
}
@media only screen and (max-width: 574px) {
  .campus-section {
    padding-left: 56px;
    padding-right: 56px;
    padding-bottom: 24px;
  }
}
.campus-section::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url("../images/frame.png");
  background-repeat: no-repeat;
  background-position: center 0;
  background-size: 100% auto;
  z-index: -1;
}
@media only screen and (max-width: 768px) {
  .campus-section::before {
    background-size: 200% auto;
  }
}
.campus-section::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 50%;
  background-color: rgb(217, 234, 253);
  z-index: -2;
}
@media only screen and (max-width: 574px) {
  .campus-section::after {
    height: 60%;
  }
}
.campus-section__header {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.campus-section__carousel {
  position: relative;
}
.campus-logo {
  width: 70px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1712px) {
  .campus-logo {
    margin-bottom: 12px;
  }
}
.campus-title {
  margin-bottom: 12px;
}
.campus-text {
  max-width: 300px;
  color: #070C1C;
  text-align: center;
  font-family: var(--font-500);
  font-size: var(--size-text-18);
  font-style: normal;
  line-height: 140%;
  letter-spacing: -0.36px;
  opacity: 0.6;
  margin-bottom: 80px;
}
@media only screen and (max-width: 1199px) {
  .campus-text {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 574px) {
  .campus-text {
    margin-bottom: 24px;
  }
}
.campus-item__image {
  border: 8px solid #A1C2E7;
  border-radius: 120px 120px 24px 24px;
  overflow: hidden;
  aspect-ratio: 0.7982;
  margin-bottom: 12px;
}
.campus-item__image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.campus-item__title {
  color: #070C1C;
  text-align: center;
  font-family: var(--font-500);
  font-size: var(--size-text-20);
  font-style: normal;
  line-height: 150%;
  letter-spacing: -0.4px;
}
@media only screen and (max-width: 574px) {
  .campus-item__title {
    font-size: 15px;
  }
}

.event-section {
  padding: var(--space-100) 0;
  background-image: url("../images/event.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  z-index: 1;
}
.event-section::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 100%);
  z-index: -1;
}
.event-card {
  display: flex;
}
.event-card__info {
  border-radius: 12px;
  border: 1px solid #E2E3E8;
  background: #FFF;
  box-shadow: 0px 4px 10px 0px rgba(7, 12, 28, 0.05);
  padding: 14px;
}
.event-card__place {
  color: #162347;
  font-family: var(--font-500);
  font-size: 16px;
  font-style: normal;
  line-height: 140%;
  letter-spacing: -0.16px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.event-card__place i {
  font-size: 20px;
  color: rgb(20, 126, 92);
  transform: translateY(-2px);
}
.event-card__title {
  color: #162347;
  font-family: var(--font-700);
  font-size: var(--size-text-18);
  font-style: normal;
  line-height: 140%;
  letter-spacing: -0.18px;
}
.event-card__date {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 14px;
  border-radius: 12px;
  background: linear-gradient(180deg, #3E7CB5 0%, #125EA4 100%);
  min-width: 128px;
}
.event-card__date span:nth-child(1) {
  color: #FFF;
  text-align: center;
  font-family: var(--font-500);
  font-size: var(--size-text-20);
  font-style: normal;
  line-height: 140%;
  letter-spacing: -0.2px;
  margin-bottom: 2px;
}
.event-card__date span:nth-child(2) {
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
  font-family: var(--font-300);
  font-size: 16px;
  font-style: normal;
  line-height: 140%;
  letter-spacing: -0.16px;
}
.event-card__date span:nth-child(3) {
  color: #FFF;
  text-align: center;
  font-family: var(--font-500);
  font-size: 24px;
  line-height: 140%;
  letter-spacing: -0.24px;
  margin-top: auto;
}
.event-card__divider {
  margin: 14px 0;
  border-top: 1px solid rgb(226, 227, 232);
}
.event-detail {
  display: flex;
  margin-bottom: var(--space-16);
}
@media only screen and (max-width: 574px) {
  .event-detail {
    flex-wrap: wrap;
    row-gap: 16px;
  }
}
.event-detail__info {
  padding-right: var(--space-16);
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 574px) {
  .event-detail__info {
    padding-right: 0;
  }
}
.event-detail__info .page-title {
  margin-bottom: auto;
}
.event-detail__info .news-nav {
  margin-bottom: 0;
  margin-top: 12px;
}
.event-detail__right {
  min-width: 200px;
  width: 200px;
  display: flex;
  flex-direction: column;
}
.event-detail__box {
  padding: 16px 12px 12px 12px;
  background: var(--program-2);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.event-detail__box span:nth-child(1) {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-bottom: 6px;
}
.event-detail__box span:nth-child(2) {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-24);
  line-height: 140%;
  letter-spacing: -0.24px;
}
.event-detail__place {
  padding: 12px;
  border-radius: 10px;
  border: 1px solid var(--black-7);
  background: var(--white-1);
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 4px;
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.event-detail__place i {
  font-size: 18px;
  color: var(--green-1);
}

@media only screen and (max-width: 574px) {
  .about-row {
    justify-content: center;
  }
}
@media only screen and (max-width: 574px) {
  .about-row__col {
    flex: unset;
    width: 50%;
  }
}
.about-section {
  position: relative;
  z-index: 2;
  padding-bottom: var(--space-120);
}
.about-section > .row > div {
  flex: unset;
}
.about-section > .row > div:nth-child(1) {
  width: 33.3333333333%;
}
@media only screen and (max-width: 991px) {
  .about-section > .row > div:nth-child(1) {
    width: 100%;
  }
}
.about-section > .row > div:nth-child(2) {
  width: 29.1666666667%;
}
@media only screen and (max-width: 991px) {
  .about-section > .row > div:nth-child(2) {
    width: 50%;
  }
}
@media only screen and (max-width: 768px) {
  .about-section > .row > div:nth-child(2) {
    width: 100%;
  }
}
.about-section > .row > div:nth-child(3) {
  width: 37.5%;
}
@media only screen and (max-width: 991px) {
  .about-section > .row > div:nth-child(3) {
    width: 50%;
  }
}
@media only screen and (max-width: 768px) {
  .about-section > .row > div:nth-child(3) {
    width: 100%;
  }
}
.about-image {
  aspect-ratio: 1.7;
  position: sticky;
  top: 0px;
}
.about-image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 16px;
}
.about-info {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.about-info__title {
  margin-bottom: 16px;
}
.about-info__text {
  color: #1D253C;
  font-family: var(--font-300);
  font-size: var(--size-text-18);
  font-style: normal;
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-bottom: 16px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  text-overflow: ellipsis;
}
.about-info__btn {
  margin-top: auto;
}
.about-card {
  position: relative;
  padding: 12px;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.about-card__wrapper {
  --local-space: 12px;
  background: linear-gradient(90deg, #145795 0%, #118C6C 100%);
  row-gap: 0;
  margin-top: calc(0px - var(--local-space) / 2);
  height: calc(100% + var(--local-space));
}
.about-card__wrapper > div {
  border: calc(var(--local-space) / 2) solid white;
  border-radius: 16px;
  position: relative;
  padding: 0;
}
.about-card__wrapper > div::after {
  content: "";
  position: absolute;
  border: calc(var(--local-space) / 2) solid white;
  left: calc(0px - var(--local-space) / 2);
  right: calc(0px - var(--local-space) / 2);
  top: calc(0px - var(--local-space) / 2);
  bottom: calc(0px - var(--local-space) / 2);
}
.about-card__icon {
  width: 28px;
  margin-bottom: auto;
}
.about-card__icon svg {
  width: 100%;
  height: auto;
  display: block;
}
.about-card__icon svg path {
  fill: white;
}
.about-card__icon svg defs {
  display: none;
}
.about-card__inner {
  padding: 12px;
  border-radius: 8px;
  position: relative;
  z-index: 1;
}
.about-card__count {
  color: #FFF;
  font-family: var(--font-500);
  font-size: 26px;
  font-style: normal;
  line-height: 150%;
}
.about-card__title {
  color: #FFF;
  font-family: var(--font-300);
  font-size: 16px;
  font-style: normal;
  opacity: 0.8;
  line-height: 140%;
}
.about-card__back {
  position: absolute;
  right: 12px;
  bottom: 12px;
}
@media only screen and (max-width: 574px) {
  .about-card__back {
    display: none;
  }
}
.about-card__back svg {
  width: 60px;
  display: block;
}
.about-wrapper {
  --local-video-width: 408px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: var(--space-20);
}
@media only screen and (max-width: 1199px) {
  .about-wrapper {
    --local-video-width: 100%;
  }
}
.about-block {
  width: calc(100% - var(--local-video-width) - var(--space-16));
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  padding: var(--space-16);
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1199px) {
  .about-block {
    width: 100%;
    margin-bottom: var(--space-16);
  }
}
.about-block::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url("../images/about-city.svg");
  background-position: left bottom;
  background-size: 100% auto;
  background-repeat: repeat-x;
  z-index: -1;
}
.about-block__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-32);
  line-height: 140%;
  letter-spacing: -0.32px;
  margin-bottom: 12px;
}
.about-block__text {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-bottom: var(--space-16);
}
.about-video {
  width: var(--local-video-width);
}
.about-video__inner {
  position: relative;
  display: block;
  height: 100%;
}
.about-video__inner img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 12px;
  display: block;
  border: 1px solid var(--black-8);
}
.about-items {
  margin-bottom: var(--space-20);
}
.about-item {
  background: var(--local-bg);
  display: flex;
  flex-direction: column;
  position: relative;
  padding: var(--space-16);
  border-radius: 12px;
  height: 100%;
}
.about-item__icon {
  width: 36px;
  margin-bottom: var(--space-20);
}
.about-item__icon svg {
  width: 100%;
  height: auto;
  display: block;
}
.about-item__icon svg path {
  fill: white;
}
.about-item__icon svg defs {
  display: none;
}
.about-item__back {
  position: absolute;
  right: 12px;
  bottom: 12px;
}
.about-item__back svg {
  width: 72px;
  display: block;
}
.about-item__count {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-32);
  line-height: 140%;
  letter-spacing: -0.32px;
  margin-bottom: 2px;
}
.about-item__title {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  opacity: 0.8;
}
.about-row__col:nth-child(1) .about-item {
  --local-bg: var(--linear-1);
}
.about-row__col:nth-child(2) .about-item {
  --local-bg: var(--program-2);
}
.about-row__col:nth-child(3) .about-item {
  --local-bg: var(--program-3);
}
.about-row__col:nth-child(4) .about-item {
  --local-bg: var(--program-4);
}
.about-row__col:nth-child(5) .about-item {
  --local-bg: var(--program-1);
}
.about-stats__item:not(:last-child) {
  margin-bottom: 12px;
}
.about-stats__label {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-26);
  line-height: 140%;
  letter-spacing: -0.26px;
  margin-bottom: 2px;
  display: block;
  text-align: center;
}
.about-stats__value {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  display: block;
  text-align: center;
  opacity: 0.8;
}
.about-mid {
  --local-image-width: 516px;
  --local-divider-width: 12px;
  display: flex;
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  border-radius: 12px;
  overflow: hidden;
  flex-wrap: wrap;
}
@media only screen and (max-width: 991px) {
  .about-mid {
    max-width: 600px;
    margin: 0 auto;
  }
}
.home-wrapper .about-mid {
  --local-image-width: 664px;
}
@media only screen and (max-width: 1400px) {
  .home-wrapper .about-mid {
    --local-image-width: 500px;
  }
}
@media only screen and (max-width: 1199px) {
  .home-wrapper .about-mid {
    --local-image-width: 400px;
  }
}
@media only screen and (max-width: 991px) {
  .home-wrapper .about-mid {
    --local-image-width: 100%;
  }
}
@media only screen and (max-width: 991px) {
  .about-mid {
    --local-image-width: 100%;
  }
}
.about-mid__image {
  width: var(--local-image-width);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: var(--local-bg);
}
.about-mid__image__inner {
  width: 100%;
  height: 100%;
}
.about-mid__image__inner img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: contain;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.about-mid__divider {
  width: var(--local-divider-width);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: var(--blue-3);
}
@media only screen and (max-width: 991px) {
  .about-mid__divider {
    width: 100%;
    height: var(--local-divider-width);
    flex-direction: row;
  }
}
.about-mid__divider::after, .about-mid__divider::before {
  content: "";
  height: 33.33333%;
  background-color: var(--blue-4);
}
@media only screen and (max-width: 991px) {
  .about-mid__divider::after, .about-mid__divider::before {
    width: 33.3333%;
    height: 100%;
  }
}
.about-mid__banner {
  width: calc(100% - var(--local-image-width) - var(--local-divider-width));
  background-image: var(--local-image);
  background-size: cover;
  background-position: center top;
  padding: 16px;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 991px) {
  .about-mid__banner {
    width: 100%;
  }
}
.about-mid__banner::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--blue-1);
  opacity: 0.6;
  z-index: -1;
}
.about-mid__title {
  margin-bottom: 12px;
}
.page-wrapper .about-mid__title {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-28);
  line-height: 140%;
  letter-spacing: -0.28px;
}
.home-wrapper .about-mid__title {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-32);
  line-height: 140%;
  letter-spacing: -0.32px;
}
.about-mid__text {
  margin-bottom: auto;
}
.page-wrapper .about-mid__text {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.home-wrapper .about-mid__text {
  color: var(--white-1);
  font-family: var(--font-300);
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
.about-mid__president {
  margin-bottom: 4px;
  margin-top: var(--space-16);
}
.page-wrapper .about-mid__president {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
.home-wrapper .about-mid__president {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-24);
  line-height: 140%;
  letter-spacing: -0.24px;
}
.about-mid__position {
  font-style: italic;
}
.page-wrapper .about-mid__position {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.home-wrapper .about-mid__position {
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}

.mission-section {
  margin-top: var(--space-20);
}
.mission-section__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-32);
  line-height: 140%;
  letter-spacing: -0.32px;
  margin-bottom: 12px;
  text-align: center;
}
.mission-section__list {
  display: flex;
  justify-content: space-between;
  align-content: flex-start;
  flex-wrap: wrap;
  border-radius: 12px;
  border: 1px solid var(--black-7);
  background: var(--black-9);
  position: relative;
}
.mission-card {
  --local-count-size: 40px;
  width: 33.3333333333%;
  position: relative;
  padding: var(--space-16) var(--space-16) var(--space-16) calc(var(--local-count-size) + 12px);
  position: relative;
}
@media only screen and (max-width: 574px) {
  .mission-card {
    width: 100%;
  }
}
.mission-card:not(.last-in-row, .latest-in-list) {
  border-right: 1px solid var(--black-7);
}
.mission-card:not(.last-row) {
  border-bottom: 1px solid var(--black-7);
}
.mission-card::after {
  content: var(--local-count);
  position: absolute;
  left: 0;
  top: 16px;
  width: var(--local-count-size);
  height: var(--local-count-size);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  border-radius: 0px 12px 12px 0px;
  background: var(--blue-3);
}
.mission-card__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
  margin-bottom: 8px;
}
.mission-card__text {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}

.media-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--white-1);
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
}
.media-card__image__wrapper {
  position: relative;
  aspect-ratio: 1.59;
}
.media-card__image__wrapper img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.media-card__image__wrapper i {
  position: absolute;
  left: 16px;
  top: 16px;
  width: var(--size-btn-44);
  height: var(--size-btn-44);
  min-width: var(--size-btn-44);
  flex: 0 0 var(--size-btn-44);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--size-icon-20);
  border-radius: 10px;
  background: var(--blue-2);
  backdrop-filter: blur(10px);
  color: var(--white-1);
}
.media-card__info {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 16px;
  min-height: 150px;
}
.media-card__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-bottom: 12px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  text-overflow: ellipsis;
}
.media-card__nav {
  margin-top: auto;
}
.page-wrapper .media-card__image__wrapper i {
  border-radius: 10px;
  border: 1px solid rgba(var(--code-white-1), 0.2);
  background: rgba(8, 30, 58, 0.3);
  backdrop-filter: blur(10px);
}
.media-image {
  aspect-ratio: 1.593;
  display: block;
  cursor: pointer;
}
.media-image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 16px;
}

.program-section {
  padding: var(--space-120) var(--space-16);
  position: relative;
  z-index: 1;
}
.program-section::before {
  content: "";
  position: absolute;
  top: calc(var(--space-120) / 2);
  left: 50%;
  transform: translateX(-50%);
  width: 83.3333333333%;
  aspect-ratio: 1/1;
  border: 1px solid rgba(20, 126, 92, 0.2);
  border-radius: 50%;
  z-index: -1;
}
.program-section .row > div:nth-child(1) {
  --local-bg: linear-gradient(180deg, #CDEBEF 0%, #EEFAFC 100%);
  --local-border-color: linear-gradient(180deg, #8BC4CC 0%, #DFF1F3 100%);
  --local-color: 25, 118, 131;
}
.program-section .row > div:nth-child(2) {
  --local-bg: linear-gradient(180deg, #C7D9EB 0%, #EDF5FC 100%);
  --local-border-color: linear-gradient(180deg, #6C9CC7 0%, #D7E6F3 100%);
  --local-color: 18, 94, 164;
}
.program-section .row > div:nth-child(3) {
  --local-bg: linear-gradient(180deg, #CAEBE2 0%, #EDFCF8 100%);
  --local-border-color: linear-gradient(180deg, #72C2AE 0%, #D8F2EC 100%);
  --local-color: 25, 154, 121;
}
.program-section .row > div:nth-child(4) {
  --local-bg: linear-gradient(180deg, #C0D1E8 0%, #EFF5FE 100%);
  --local-border-color: linear-gradient(180deg, #7E9ECA 0%, #DEE8F6 100%);
  --local-color: 60, 108, 172;
}
.program-card {
  padding: var(--space-20);
  display: block;
  position: relative;
  z-index: 1;
}
.program-card__image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  border-radius: 16px;
  height: 100%;
  overflow: hidden;
  opacity: 0;
  transition: all 0.15s ease-in-out;
  z-index: -1;
}
.program-card:hover .program-card__image {
  opacity: 1;
}
.program-card__image::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #070C1C;
  opacity: 0.4;
}
.program-card__image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  display: block;
  transition: all 0.3s ease-in-out;
}
.program-card:hover .program-card__image img {
  transform: scale(1.2);
}
.program-card::after, .program-card::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -2;
}
.program-card::after {
  background: var(--local-bg);
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border-radius: 16px;
}
.program-card::before {
  background: var(--local-border-color);
  z-index: -3;
  width: 100%;
  height: 100%;
  border-radius: 17px;
}
.program-card__header {
  position: relative;
}
.program-card__title {
  color: #1D253C;
  font-family: var(--font-700);
  font-size: var(--size-text-28);
  font-style: normal;
  line-height: 150%;
  letter-spacing: -0.28px;
  margin-bottom: 8px;
  transition: all 0.15s ease-in-out;
}
.program-card:hover .program-card__title {
  color: var(--white-1);
}
.program-card__icon {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.program-card__icon svg {
  width: 32px;
  fill: rgb(var(--local-color));
  transition: all 0.15s ease-in-out;
}
.program-card:hover .program-card__icon svg {
  fill: var(--white-1);
}
.program-card__subtitle {
  color: rgb(var(--local-color));
  font-family: var(--font-300);
  font-size: 18px;
  font-style: normal;
  line-height: 150%;
  letter-spacing: -0.18px;
  transition: all 0.15s ease-in-out;
}
.program-card:hover .program-card__subtitle {
  color: var(--white-1);
}
.program-card__divider {
  margin: var(--space-20) 0;
  border-bottom: 1px solid rgb(var(--local-color));
  transition: all 0.15s ease-in-out;
}
.program-card:hover .program-card__divider {
  border-color: rgba(var(--c-white-1), 0.3);
}
.program-card__link {
  display: flex;
  align-items: center;
  color: #1D253C;
  font-family: var(--font-500);
  font-size: 18px;
  font-style: normal;
  line-height: 150%;
  letter-spacing: -0.18px;
  gap: 8px;
  transition: all 0.15s ease-in-out;
}
.program-card__link i {
  transition: all 0.1s ease-in-out !important;
  color: rgb(25, 118, 131);
}
.program-card:hover .program-card__link {
  color: var(--white-1);
}
.program-card:hover .program-card__link i {
  color: var(--whiet-1);
}

.map {
  background-color: var(--blue-1);
  position: relative;
  z-index: 1;
}
.map::before {
  content: "";
  max-width: 1400px;
  width: 100%;
  height: 500px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  background-image: url("/images/map-frame.png");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top center;
}
.map-title {
  color: var(--white-1);
  margin-bottom: var(--space-24);
}
.map-svg {
  width: 100%;
}
.map-tab {
  display: flex;
  align-items: center;
  border-radius: 12px;
  border: 1px solid rgba(var(--code-white-1), 0.1);
  background: var(--blue-1);
  width: max-content;
  padding: 4px;
}
.map-tab__button {
  border: none;
  background-color: transparent;
  color: rgba(var(--code-white-1), 0.6);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  padding: 7px 10px;
}
.map-tab__button.active {
  border-radius: 8px;
  background: var(--blue-2);
  box-shadow: 0px 2px 20px 0px rgba(35, 73, 130, 0.08);
  color: var(--white-1);
}
.map-info {
  display: none;
}
.map-info.active {
  display: block;
}
.map-info__header {
  border-radius: 12px;
  background: var(--blue-2);
  padding: var(--space-16);
  color: var(--white-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-26);
  line-height: 140%;
  letter-spacing: -0.26px;
  margin-bottom: 16px;
}
.map-card {
  border-radius: 12px;
  background: var(--white-1);
  overflow: hidden;
}
.map-card__header {
  color: var(--blue-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
  padding: var(--space-16);
  background: var(--black-8);
}
.map-card__body {
  max-height: 306px;
  overflow-y: auto;
  padding: 12px var(--space-16);
}
.map-card__body::-webkit-scrollbar-track {
  border-radius: 10px;
  background-color: white;
}
.map-card__body::-webkit-scrollbar {
  width: 12px;
}
.map-card__body::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: var(--black-5);
}
.map-user {
  display: flex;
  gap: 12px;
}
.map-user:not(:last-child) {
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--black-6);
}
.map-user__image__wrapper {
  --local-size: 111px;
  width: var(--local-size);
  height: var(--local-size);
  min-width: var(--local-size);
  flex: 0 0 var(--local-size);
}
@media only screen and (max-width: 991px) {
  .map-user__image__wrapper {
    --local-size: 96px;
  }
}
@media only screen and (max-width: 768px) {
  .map-user__image__wrapper {
    --local-size: 80px;
  }
}
.map-user__image__wrapper img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 12px;
}
.map-user__info {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.map-user__fio {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-20);
  line-height: 140%;
  letter-spacing: -0.2px;
}
.map-user__position {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.map-user__phone {
  margin-top: auto;
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.map-user__phone i {
  font-size: 18px;
  color: var(--blue-2);
}
.map-svg path {
  stroke: #849DC4;
  fill: #2A5089;
  outline: none;
}
.map-svg path.active, .map-svg path:hover {
  fill: var(--blue-2);
  cursor: pointer;
}
.map-stats {
  border-radius: 10px;
  border: 1px solid var(--black-6);
  background: var(--black-7);
  padding: 12px;
  display: flex;
  flex-direction: column;
}
.map-stats:not(:last-child) {
  margin-bottom: var(--space-16);
}
.map-stats__icon {
  width: 44px;
  height: 44px;
  min-width: 44px;
  flex: 0 0 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: var(--blue-2);
  border-radius: 10px;
  background: var(--white-1);
  margin-bottom: 12px;
}
.map-stats__value {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-24);
  line-height: 140%;
  letter-spacing: -0.24px;
  margin-bottom: 4px;
}
.map-stats__label {
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}

.tooltip {
  --bs-tooltip-bg: var(--white-1);
  --bs-tooltip-color: var(--blue-1);
  --bs-tooltip-border-radius: 8px;
  --bs-tooltip-padding-x: 6px;
  --bs-tooltip-padding-y: 4px;
}

.partners-section {
  padding-top: var(--space-120);
  padding-bottom: calc(var(--space-120) + 80px);
}
@media only screen and (max-width: 1199px) {
  .partners-section {
    padding-bottom: calc(var(--space-120) + 0px);
  }
}
.partners-carousel:not(:last-child) {
  margin-bottom: 16px;
}
.partners-item {
  display: block;
  border-radius: 12px;
  border: 1px solid var(--black-7);
  background: var(--black-9);
  padding: 10px;
  aspect-ratio: 1.41;
}
.partners-item img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: contain;
}

.leadership {
  --local-image-width: 267px;
  display: flex;
  justify-content: space-between;
  height: 100%;
}
@media only screen and (max-width: 1712px) {
  .leadership {
    --local-image-width: 200px;
  }
}
@media only screen and (max-width: 1400px) {
  .leadership {
    --local-image-width: 160px;
  }
}
@media only screen and (max-width: 574px) {
  .leadership {
    flex-direction: column;
    row-gap: 4px;
    --local-image-width: 320px;
  }
}
.leadership-image {
  width: 100%;
  max-width: var(--local-image-width);
}
.leadership-image__inner {
  aspect-ratio: 0.89;
  position: sticky;
  top: calc(var(--height-header) + var(--space-16));
}
.leadership-image__inner img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 12px;
}
.leadership-info {
  background: var(--local-bg, var(--white-1));
  display: flex;
  flex-direction: column;
  padding: var(--space-16);
  border: 1px solid var(--local-border-color, var(--black-9));
  border-radius: 12px;
  height: 100%;
}
.leadership-detail .leadership-info {
  height: auto;
}
.leadership-info__wrapper {
  width: calc(100% - var(--local-image-width) - 8px);
}
@media only screen and (max-width: 574px) {
  .leadership-info__wrapper {
    width: 100%;
  }
}
.leadership-info__wrapper > *:not(:last-child) {
  margin-bottom: 12px;
}
.leadership-info__fio {
  color: var(--local-color, var(--black-1));
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-24);
  line-height: 140%;
  letter-spacing: -0.24px;
}
.leadership-info__text {
  color: var(--local-text-color, var(--black-3));
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
  margin-bottom: auto;
}
.leadership-info__divider {
  max-width: 120px;
  width: 100%;
  height: 2px;
  background-color: var(--blue-4);
  margin: 12px 0;
}
.leadership-info__bottom {
  margin-top: var(--space-16);
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 16px;
}
.leadership-detail .leadership-info__bottom {
  justify-content: flex-start;
}
.leadership-info__links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.leadership-detail .leadership-info__links {
  flex-direction: row;
  gap: var(--space-16);
}
.leadership-info__link {
  padding: 6px 8px;
  display: flex;
  align-items: center;
  color: var(--local-color, var(--black-1));
  font-family: "MuseoSansCyrl-300", sans-serif;
  font-size: var(--size-text-16);
  line-height: 138%;
  letter-spacing: -0.16px;
  gap: 6px;
  border-radius: 8px;
  border: 1px solid var(--local-link-border, var(--black-7));
  background: var(--local-link-bg, var(--black-10));
}
.leadership-info__link:not(:last-child) {
  margin-bottom: 8px;
}
.leadership-detail .leadership-info__link:not(:last-child) {
  margin-bottom: 0;
}
.leadership-info__link i {
  font-size: 18px;
  color: var(--blue-4);
}
.leadership-info__btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  padding: 6px 8px 6px 10px;
  border-radius: 8px;
  background: var(--local-btn-bg, var(--black-9));
  gap: 4px;
  color: var(--local-btn-color, var(--black-2));
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.leadership-info__btn i {
  font-size: 18px;
  color: var(--local-btn-color, var(--black-2));
}
.leadership-info__social {
  display: flex;
  gap: 6px;
}
.leadership-info__social a {
  width: 34px;
  aspect-ratio: 1/1;
  border-radius: 8px;
  border: 1px solid var(--black-7);
  background: var(--black-10);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--black-4);
}
.leadership-detail .leadership-info, .active .leadership-info {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.leadership-detail .leadership-info::after, .active .leadership-info::after {
  content: "";
  position: absolute;
  top: var(--space-16);
  right: var(--space-16);
  width: 80px;
  height: 100%;
  background-image: url("../images/leadership-frame.png");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  z-index: -1;
  opacity: 0.1;
}
.leadership-detail .leadership-info::after {
  opacity: 0.2;
}
.leadership.active {
  --local-border-color: transparent;
  --local-bg: var(--program-2);
  --local-color: var(--white-1);
  --local-text-color: rgba(var(--c-white-1), 0.6);
  --local-link-bg: rgba(var(--c-white-1), 0.05);
  --local-link-border: rgba(var(--c-white-1), 0.15);
  --local-btn-bg: var(--blue-4);
  --local-btn-color: var(--white-1);
}

.contact-iframe {
  width: 100%;
  aspect-ratio: 3.2;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .contact-iframe {
    height: 340px;
    aspect-ratio: unset;
  }
}
.contact-iframe::before {
  content: "";
  background: linear-gradient(180deg, #F8FAFD 0%, rgba(248, 250, 253, 0) 100%);
  height: var(--size-contact-shadow);
  width: 100%;
  left: 0;
  position: absolute;
}
.contact-iframe iframe {
  width: 100%;
  height: 100%;
  display: block;
}
.contact-container {
  --width-container: 1400px;
}
.contact-icon {
  width: 50px;
  min-width: 50px;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid var(--black-7);
  position: relative;
  font-size: 20px;
  color: var(--white-1);
  z-index: 1;
}
.contact-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  background: var(--program-1);
  z-index: -1;
  border-radius: 50%;
  overflow: hidden;
}
.contact-item {
  display: flex;
  align-items: center;
}
.contact-item__icon {
  margin-right: 10px;
}
.contact-item__icon::after {
  background: var(--program-2);
}
.contact-item__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.contact-item__label {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-bottom: 3px;
}
.contact-item__value {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.contact-social {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 auto;
}
.contact-block {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.contact-block .row {
  flex: 1;
  align-content: flex-start;
}
.contact-wrapper {
  padding-bottom: 0 !important;
  margin-bottom: calc(0px - var(--size-contact-shadow));
  position: relative;
  z-index: 2;
}

.vacancy-card {
  border-radius: 12px;
  background-color: var(--white-1);
  box-shadow: 0px 4px 20px 0px rgba(51, 97, 135, 0.1);
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.vacancy-card:not(:last-child) {
  margin-bottom: 12px;
}
.vacancy-card .row {
  row-gap: 12px;
}
.vacancy-card__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-28);
  line-height: 140%;
  letter-spacing: -0.28px;
}
.vacancy-card__divider {
  margin: var(--space-16) 0;
  border-top: 1px solid var(--black-6);
  width: 100%;
}
.vacancy-card__item {
  vertical-align: middle;
}
.vacancy-card__item i {
  margin-right: 8px;
  font-size: 22px;
  color: var(--blue-2);
  display: inline-block;
  transform: translateY(4px);
}
.vacancy-card__item span._1 {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-right: 6px;
}
.vacancy-card__item span._2 {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.vacancy-card__button {
  margin-top: 16px;
}
.vacancy-item {
  border-radius: 12px;
  background-color: var(--white-1);
  box-shadow: var(--shadow-1);
  padding: 12px;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.vacancy-item__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-26);
  line-height: 140%;
  letter-spacing: -0.26px;
  margin-bottom: 8px;
}
.vacancy-item__subtitle {
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.vacancy-item__divider {
  border-top: 1px solid var(--black-6);
  margin: 12px 0;
}
.vacancy-item__divider._2 {
  margin-top: auto;
}
.vacancy-item__nav {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .vacancy-item__nav {
    gap: 6px;
  }
}
.vacancy-item__nav span {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--black-2);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  white-space: nowrap;
}
.vacancy-item__nav span i {
  font-size: var(--size-icon-20);
  color: var(--black-4);
  transition: all 0.2s ease-in-out;
}
.vacancy-item__nav > i {
  font-size: 14px;
  color: var(--black-4);
  opacity: 0.6;
  font-weight: 600;
}
.vacancy-list {
  margin-bottom: 12px;
}
.vacancy-list__item {
  display: flex;
  gap: 6px;
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.vacancy-list__item:not(:last-child) {
  margin-bottom: 10px;
}
.vacancy-list__item i {
  font-size: 18px;
  color: var(--blue-2);
}
.library-wrapper {
  --local-image-width: 408px;
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--space-16);
  flex-wrap: wrap;
}
@media only screen and (max-width: 1199px) {
  .library-wrapper {
    --local-image-width: 100%;
    row-gap: 12px;
  }
}
.library-content {
  width: calc(100% - (var(--local-image-width) + var(--space-16)));
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  padding: var(--space-16);
}
@media only screen and (max-width: 1199px) {
  .library-content {
    width: 100%;
  }
}
.library-content__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-32);
  line-height: 140%;
  letter-spacing: -0.32px;
  margin-bottom: 12px;
}
.library-content__text {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.library-image {
  width: var(--local-image-width);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: var(--local-image);
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--black-8);
  position: relative;
  height: auto;
  max-height: 400px;
  position: sticky;
  top: calc(var(--height-header) + var(--space-16));
}
.library-image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: contain;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  display: block;
}
.library-items {
  margin-bottom: var(--space-32);
}
.library-item {
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px;
}
.library-item__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.library-item__count {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-26);
  line-height: 140%;
  letter-spacing: -0.26px;
  margin-bottom: 4px;
}
.library-item__name {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.library-item__icon {
  --local-size: 62px;
  flex: 0 0 var(--local-size);
  max-width: var(--local-size);
  height: var(--local-size);
  border-radius: 8px;
  background: var(--program-3);
  display: flex;
  align-items: center;
  justify-content: center;
}
.library-chart {
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  padding: var(--space-16);
}
.library-chart__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-26);
  line-height: 140%;
  letter-spacing: -0.26px;
  margin-bottom: 12px;
}
.library-chart__header {
  margin-bottom: var(--space-16);
}

.books-section {
  margin-bottom: var(--space-32);
}
.books-section__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-32);
  line-height: 140%;
  letter-spacing: -0.32px;
  margin-bottom: 12px;
}
.books-row__col {
  flex: unset;
  width: 20%;
}
@media only screen and (max-width: 1400px) {
  .books-row__col {
    width: 25%;
  }
}
@media only screen and (max-width: 768px) {
  .books-row__col {
    width: 33.3333333333%;
  }
}
@media only screen and (max-width: 574px) {
  .books-row__col {
    width: 100%;
  }
}

.book {
  border-radius: 12px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  padding: 14px;
  height: 100%;
}
.book-image {
  margin-bottom: 12px;
}
.book-image__inner {
  aspect-ratio: 1/1;
}
.book-image__inner img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: contain;
}
.book-info__title {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-bottom: 6px;
}
.book-info__subtitle {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}

.profile-wrapper {
  --local-aside-width: calc(320px + var(--space-16));
  padding-top: var(--height-header-top);
}
.profile-section {
  display: flex;
}
.profile-aside {
  width: var(--local-aside-width);
  padding-right: var(--space-16);
  border-right: 1px solid #E4E1E1;
  padding-top: var(--space-24);
}
.profile-aside__item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: var(--space-12) var(--space-16);
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: #818290;
  border-radius: 12px;
  border: 1px solid #E8E8E8;
  background: #FFF;
  backdrop-filter: blur(15px);
}
.profile-aside__item:not(:last-child) {
  margin-bottom: 4px;
}
.profile-aside__item i {
  font-size: 40px;
  color: #818290;
}
.profile-aside__logo {
  max-width: 186px;
  width: 100%;
  display: block;
  margin-bottom: var(--space-24);
}

.plan-section {
  background-image: url("../images/plan.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  padding-top: var(--height-header);
}
.plan-section__container {
  min-height: calc(100vh - var(--height-header));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: var(--space-120);
  padding-bottom: var(--space-80);
  position: relative;
  z-index: 1;
}
.plan-section__container::after {
  content: "";
  height: 50%;
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(0deg, #FFF 6.7%, rgba(255, 255, 255, 0) 100%);
}
.plan-section__title {
  font-size: var(--size-text-64);
  font-weight: 600;
  line-height: normal;
  color: var(--white-1);
  margin-bottom: var(--space-24);
  text-align: center;
}
.plan-section__text {
  font-size: var(--size-text-24);
  font-weight: 400;
  line-height: normal;
  color: var(--white-1);
  margin-bottom: var(--space-16);
  text-align: center;
}
.plan-section__image {
  max-width: 308px;
  width: 100%;
  object-fit: contain;
  object-position: center;
  margin-bottom: var(--space-80);
}
.plan-section__button {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  border-radius: 32px;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(15px);
  padding: 0 var(--space-40);
  height: var(--size-btn-64);
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
}
.plan-cards {
  max-width: 1100px;
  padding-top: var(--space-180);
}
.plan-cards__row {
  row-gap: var(--space-40);
  --local-space: var(--space-20);
}
.plan-card {
  display: block;
  border-bottom: 2px solid var(--local-border-color);
}
.plan-card__image {
  aspect-ratio: 2.18;
}
.plan-card__image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 12px;
}
.plan-card__title {
  font-size: var(--size-text-32);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  padding: var(--space-16);
}
.plan-items {
  padding-top: var(--space-180);
}
.plan-item {
  padding: var(--space-40) var(--space-32);
  background-image: var(--local-image);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 24px;
}
.plan-item__title {
  font-size: var(--size-text-32);
  font-weight: 600;
  line-height: normal;
  color: var(--white-1);
  text-align: center;
}
.plan-item__image {
  max-width: 308px;
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: contain;
  object-position: center;
  margin-bottom: var(--space-24);
}
.plan-item__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  height: var(--size-btn-64);
  border-radius: calc(var(--size-btn-64) / 2);
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(15px);
  padding: 0 var(--space-40);
  margin-bottom: var(--space-24);
}
.plan-item__text {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--white-1);
  text-align: center;
}

.shop-main {
  --local-aside-width: calc(257px + (var(--space-12) * 2));
  margin-top: var(--space-120);
}
.shop-main > div._1 {
  width: var(--local-aside-width);
}
.shop-main > div._2 {
  width: calc(100% - var(--local-aside-width));
}
.shop-aside__divider {
  margin: 4px 0;
  border-top: 1px solid #D9D9D9;
}
.shop-aside__price {
  display: flex;
  align-items: center;
  padding: 4px !important;
}
.shop-aside__price .form-group {
  width: calc(100% - 48px);
}
.shop-aside__price__right {
  text-align: right;
  min-width: 48px;
  width: 48px;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.shop-aside__colors {
  display: flex;
  flex-wrap: wrap;
  row-gap: 8px;
  padding-right: 12px;
  padding-left: 8px;
  margin-bottom: 12px;
}
.shop-aside__color {
  padding: 0 4px;
  width: 20%;
}
.shop-aside__more {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  height: var(--size-btn-48);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  text-align: center;
  width: 100%;
}
.shop-image {
  background-image: url("../images/default-shop.svg");
  background-position: center;
  background-size: 678px 678px;
  background-repeat: no-repeat;
  background-color: #F4F3F1;
  height: 370px;
  margin-bottom: var(--space-32);
}
.shop-image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.shop-row > div {
  max-width: calc(var(--local-width) + var(--space-20) * 2);
}
.shop-row > div._1 {
  --local-width: 180px;
  width: 100%;
}
.shop-row > div._2 {
  --local-width: 650px;
  width: 100%;
}
.shop-row > div._3 {
  --local-width: 636px;
  width: 100%;
}
.shop-logo {
  aspect-ratio: 1/1;
  margin-bottom: var(--space-32);
}
.shop-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.shop-save {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  height: var(--size-btn-48);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  border-radius: 24px;
  background: #F4F3F1;
  width: 100%;
  padding: 0 8px;
  gap: 4px;
}
.shop-save i {
  font-size: 32px;
}
.shop-item__title {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  text-align: center;
  margin-bottom: 8px;
}
.shop-item__image {
  width: 100%;
  aspect-ratio: 1/1;
  margin-bottom: 6px;
}

.detail-card__wrapper {
  border-radius: 16px;
  background: #F4F3F1;
}
.detail-card__content > *:not(:last-child) {
  margin-bottom: 16px;
}
.detail-card__content ul {
  list-style: disc;
  padding-left: 24px;
}
.detail-card__content img {
  width: 100%;
  height: auto;
}
.detail-card__content i,
.detail-card__content p,
.detail-card__content ul li,
.detail-card__content span {
  color: var(--black-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-16);
  line-height: 140%;
  letter-spacing: -0.16px;
}
.detail-card__content > i {
  font-style: italic;
}
.detail-card__content a {
  color: var(--green-1);
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.detail-card__content h2 {
  font-size: var(--size-text-26);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 12px !important;
}
.detail-card__content h3 {
  font-size: var(--size-text-24);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 12px !important;
}
.detail-card__content h4 {
  font-size: var(--size-text-22);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 10px !important;
}
.detail-card__content h5 {
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 8px !important;
}
.detail-card__content h6 {
  font-size: var(--size-text-18);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 8px !important;
}
.detail-list__item {
  display: flex;
  justify-content: space-between;
}
.detail-list__item span {
  width: calc(50% - var(--space-24));
  padding-bottom: 8px;
}
.detail-list__item:not(:last-child) {
  margin-bottom: 8px;
}
.detail-list__item:not(:last-child) span {
  border-bottom: 1px solid #D9D9D9;
}
.detail-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.detail-actions__wrapper {
  margin-top: var(--space-24);
}
.detail-calc {
  width: max-content;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: #F4F3F1;
  padding: 4px;
}
.detail-calc__input {
  width: 78px;
  min-width: unset;
  border: none;
  outline: none;
  text-align: center;
  background-color: transparent;
  font-size: var(--size-text-24);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
}
.detail-calc__btn {
  --local-size: var(--size-btn-48);
  min-width: var(--local-size);
  width: var(--local-size);
  height: var(--local-size);
  border-radius: 12px;
  background: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  outline: none;
  border: none;
  font-size: 28px;
}
.detail-image {
  --local-width-option: 140px;
  display: flex;
  justify-content: space-between;
}
.detail-image__options {
  width: var(--local-width-option);
  height: 100%;
  max-height: 100%;
  overflow: hidden;
  max-height: var(--local-active-height);
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.detail-image__options::-webkit-scrollbar {
  display: none;
}
.detail-image__option {
  aspect-ratio: 1/1;
  background-color: #F4F3F1;
  cursor: pointer;
  border: 2px solid transparent;
  border-radius: 8px;
  overflow: hidden;
}
.detail-image__option:not(:last-child) {
  margin-bottom: var(--space-16);
}
.detail-image__option.active {
  border-color: var(--red-1);
}
.detail-image__option img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.detail-image__active {
  width: calc(100% - var(--local-width-option) - var(--space-16));
}
.detail-image__active__inner {
  aspect-ratio: 1/1;
  background-color: #F4F3F1;
  border-radius: 8px;
  overflow: hidden;
}
.detail-image__active__inner img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.detail-title {
  font-size: var(--size-text-40);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.detail-item {
  padding: 4px 0 12px;
  border-top: 1px solid #D9D9D9;
}
.shop-info .detail-item {
  padding: 0;
  border: none;
}
.detail-row__last .detail-item {
  border-bottom: 1px solid #D9D9D9;
}
.detail-item__label {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: #818290;
  display: block;
  margin-bottom: 4px;
}
.detail-item__title {
  font-size: var(--size-text-24);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  display: flex;
  align-items: center;
  gap: 16px;
}
.detail-item__title img {
  min-width: 40px;
  width: 40px;
}
.detail-item__rank {
  display: flex;
  align-items: center;
}
.detail-item__rank .rank svg {
  --local-size: 22px;
}
.detail-item__rank__rating {
  font-size: var(--size-text-24);
  font-weight: 400;
  line-height: normal;
  color: var(--red-1);
  margin: 0 8px 0 4px;
}
.detail-item__rank__count {
  font-size: var(--size-text-24);
  font-weight: 400;
  line-height: normal;
  color: #9697AB;
}
.detail-item__price {
  font-size: var(--size-text-28);
  font-weight: 600;
  line-height: normal;
  color: var(--red-1);
  display: block;
}
.detail-item__discount {
  display: flex;
  gap: var(--space-24);
}
.detail-item__discount span:nth-child(1) {
  font-size: var(--size-text-20);
  font-weight: 400;
  line-height: normal;
  color: #9697AB;
  text-decoration: line-through;
}
.detail-item__discount span:nth-child(2) {
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: #FC603B;
}
.detail-item__text {
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.detail-row._1 {
  --local-space: var(--space-40);
}
.detail-row._2 {
  --local-space: var(--space-32);
  row-gap: 0px;
}
.detail-row._3 {
  --local-space: 8px;
  row-gap: 8px;
}
.detail-checkbox__wrapper {
  width: 100%;
  display: block;
}
.detail-checkbox {
  padding: 8px 8px 8px 16px;
  border-radius: 12px;
  background: #F4F3F1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  cursor: pointer;
}
.detail-checkbox__label {
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
}
.detail-checkbox__box {
  --local-width: 24px;
  min-width: var(--local-width);
  height: var(--local-width);
  width: var(--local-width);
  border-radius: 4px;
  background-color: var(--white-1);
  font-size: 14px;
  color: var(--black-1);
  display: flex;
  align-items: center;
  justify-content: center;
}
.detail-checkbox__box::before {
  display: none;
}
.detail-checkbox__input {
  display: none;
}
.detail-checkbox__input:checked ~ .detail-checkbox .detail-checkbox__box::before {
  display: block;
}
.detail-color {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
}
.detail-color__inner {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 12px;
  border: 1.5px solid #818290;
  background: var(--local-color);
  display: flex;
  align-items: center;
  justify-content: center;
}
.detail-color__inner::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 5px);
  height: calc(100% + 5px);
  border: 3px solid var(--red-1);
  opacity: 0;
  border-radius: 16px;
}
.detail-color__inner i {
  border-radius: 4px;
  background: #FFF;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: #FFF;
  font-size: 14px;
  opacity: 0;
  transition: all 0.2s ease-in-out;
}
.detail-color__input {
  display: none;
}
.detail-color__input:checked ~ .detail-color__inner::after,
.detail-color__input:checked ~ .detail-color__inner i {
  opacity: 1;
}
.detail-btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  border-radius: 16px;
  background: #F4F3F1;
  height: var(--size-btn-56);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.detail-btn.icon-heart {
  font-size: 32px;
  min-width: var(--size-btn-56);
  width: var(--size-btn-56);
}
.detail-btn:not(.icon-heart) {
  padding: 0 var(--space-16);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  flex: 1;
}
.detail-btn:not(.icon-heart) i {
  font-size: 32px;
}

.tag {
  padding: 5px 10px;
  font-size: var(--size-text-12);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  border-radius: 8px;
  background: var(--local-color, var(--green-2));
}

.search-wrapper {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(5px);
  opacity: 0;
  visibility: hidden;
  z-index: 9999;
  transition: all 0.2s ease-in-out;
}
.search-wrapper.active {
  opacity: 1;
  visibility: visible;
}
.search-mid {
  max-width: var(--width-header-search);
  width: 100%;
  margin-top: calc(var(--height-header-top) + (var(--height-header-bot) - var(--size-btn-48)) / 2);
  margin-left: auto;
  margin-right: auto;
}
.search-input {
  width: 100%;
  position: relative;
  margin-bottom: 8px;
}
.search-input__input {
  width: 100%;
  height: var(--size-btn-48);
  border-radius: 24px;
  border: 2px solid var(--red-1);
  background: #FFF;
  outline: none;
  padding: 0 var(--space-24);
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
}
.search-input__input::placeholder {
  color: #818290;
}
.search-input__close {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  font-size: 32px;
}
.search-result {
  border-radius: 28px;
  background: #FFF;
  padding: var(--space-20);
  display: flex;
  flex-direction: column;
  row-gap: var(--space-40);
}
.search-result__tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  row-gap: 8px;
}
.search-result__tag {
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--local-color);
  position: relative;
  padding: 8px 16px;
}
.search-result__tag::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  background: var(--local-color);
  backdrop-filter: blur(15px);
  opacity: 0.15;
}
.search-result__tag:nth-child(1) {
  --local-color: #2376AA;
}
.search-result__tag:nth-child(2) {
  --local-color: #9592A8;
}
.search-result__tag:nth-child(3) {
  --local-color: #8A7A63;
}
.search-result__tag:nth-child(4) {
  --local-color: #598D7B;
}
.search-result__tag:nth-child(5) {
  --local-color: #B05940;
}
.search-result__tag:nth-child(6) {
  --local-color: #9E793D;
}
.search-result__tag:nth-child(7) {
  --local-color: #B05940;
}
.search-result__tag:nth-child(8) {
  --local-color: #7A3850;
}
.search-result__tag:nth-child(9) {
  --local-color: #2376AA;
}
.search-result__tag:nth-child(10) {
  --local-color: #9592A8;
}
.search-result__tag:nth-child(11) {
  --local-color: #8A7A63;
}
.search-result__tag:nth-child(12) {
  --local-color: #598D7B;
}
.search-result__tag:nth-child(13) {
  --local-color: #B05940;
}
.search-result__tag:nth-child(14) {
  --local-color: #9E793D;
}
.search-result__tag:nth-child(15) {
  --local-color: #B05940;
}
.search-result__tag:nth-child(16) {
  --local-color: #7A3850;
}
.search-result__products {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 20px;
}
.search-result__product {
  width: calc(50% - 5px);
  position: relative;
}
.search-result__product__badges {
  position: absolute;
  top: 4px;
  right: 4px;
  display: flex;
  gap: 4px;
}
.search-result__product__image {
  aspect-ratio: 1.07;
  background-color: #F4F3F1;
  border-radius: 12px;
  overflow: hidden;
}
.search-result__product__image img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}
.search-result__texts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 12px;
}
.search-result__text {
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: #818290;
}
.search-result__text span {
  color: var(--black-1);
}

.category-section {
  margin-top: 80px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(6, 1fr);
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  aspect-ratio: 1.95;
}
.category-item {
  background-image: var(--local-bg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}
.category-item:nth-child(1) {
  grid-area: 1/1/5/5;
}
.category-item:nth-child(2) {
  grid-area: 1/5/3/9;
}
.category-item:nth-child(3) {
  grid-area: 1/9/3/13;
}
.category-item:nth-child(4) {
  grid-area: 3/5/5/10;
}
.category-item:nth-child(5) {
  grid-area: 3/10/7/13;
}
.category-item:nth-child(6) {
  grid-area: 5/1/7/4;
}
.category-item:nth-child(7) {
  grid-area: 5/4/7/7;
}
.category-item:nth-child(8) {
  grid-area: 5/7/7/10;
}
.category-item__image {
  position: absolute;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
}
.divan .category-item__image {
  bottom: -24px;
  left: 0;
}
.matras .category-item__image {
  left: 90px;
  bottom: -102px;
}
.komot .category-item__image {
  right: -46px;
  bottom: -65px;
}
.karavat .category-item__image {
  top: 16px;
  right: -124px;
}
.shkaf .category-item__image {
  bottom: 0;
  left: -74px;
}
.stol .category-item__image {
  left: 0;
  top: 72px;
}
.stul .category-item__image {
  top: 24px;
  right: -24px;
}
.kreslo .category-item__image {
  top: -20px;
  left: 70px;
}
.category-item:hover .category-item__image {
  transform: translate(-24px, -24px);
}
.category-item__badge {
  position: absolute;
  left: var(--space-32);
  top: var(--space-32);
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.15);
  backdrop-filter: blur(15px);
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  padding: 8px 12px;
}

.banner {
  background-image: var(--local-image);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  padding: var(--space-32);
  border-radius: 8px;
  display: flex;
  align-items: center;
  height: 196px;
  margin: var(--space-120) 0;
}
.banner-section__app .banner {
  align-items: flex-end;
}
.banner-info {
  max-width: 860px;
}
.banner-section__app .banner-info {
  max-width: 660px;
}
.banner-title {
  font-size: var(--size-text-40);
  font-weight: 600;
  line-height: normal;
  color: var(--white-1);
  margin-bottom: 8px;
}
.banner-text {
  font-size: var(--size-text-20);
  font-weight: 400;
  line-height: 140%;
  color: var(--white-1);
}
.banner-plus {
  margin: 0 auto;
  width: 308px;
}
.banner-section__app .banner-plus {
  width: 462px;
  margin-bottom: calc(0px - var(--space-32));
}
.banner-badge {
  padding: 12px 32px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(15px);
  font-size: var(--size-text-24);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  display: block;
}
.banner-badge img {
  width: 145px;
}
.banner-badge:not(:last-child) {
  margin-bottom: 8px;
}
.banner-section__app .banner-badge {
  border-radius: 16px;
}

.comparison-wrapper .product {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.product-main {
  background-color: var(--white-1);
}
.comparison-wrapper .product-main {
  position: sticky;
  top: calc(var(--height-header) + var(--space-16));
  margin-bottom: 8px;
}
.page-wrapper .product-section {
  padding-top: var(--space-120);
}
.page-wrapper .product-section .section-header {
  display: none;
}
.product-images {
  position: relative;
}
.product-images__inner {
  aspect-ratio: 1.07;
}
.product-images__inner img {
  display: none;
  cursor: pointer;
}
.product-images__inner img.active {
  display: block;
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  border-radius: 8px;
}
.product-images__dots {
  width: calc(100% - 20px);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 2px;
  gap: 2px;
  display: flex;
  transition: all 0.1s ease-in-out;
  opacity: 0;
}
.product-images__dots span {
  flex: 1;
  height: 3px;
  border-radius: 1.5px;
  background-color: var(--white-1);
}
.product-images__dots span.active {
  background-color: rgb(185, 228, 255);
}
.product:hover .product-images__dots {
  opacity: 1;
}
.product-images__approved {
  position: absolute;
  left: 8px;
  top: -8px;
  width: 64px;
}
.product-images__save {
  position: absolute;
  right: 8px;
  top: 8px;
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  transition: all 0.2s ease-in-out;
  border-radius: 50%;
}
.product-images__save svg {
  transition: all 0.2s ease-in-out;
}
.product-images__save svg path {
  transition: all 0.2s ease-in-out;
}
.product-images__save:hover {
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(5px);
}
.product-images__save:hover svg {
  fill: var(--red-2);
}
.product-images__save:hover svg path {
  stroke: var(--red-1);
}
.product-saved .product-images__save svg {
  fill: var(--red-1);
}
.product-saved .product-images__save svg path {
  stroke: var(--white-1);
}
.product-images__discount {
  position: absolute;
  padding: 4px 8px;
  border-radius: 4px;
  background: linear-gradient(249deg, #FF633D 6.8%, #BA1F27 94.82%);
  position: absolute;
  left: 8px;
  bottom: 8px;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
}
.product-images__delete {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  position: absolute;
  top: 8px;
  right: 8px;
}
.product-images__delete svg {
  width: var(--size-btn-40);
  fill: var(--black-1);
  fill-opacity: 0.3;
  transition: all 0.15s ease-in-out !important;
}
.product-images__delete svg path {
  transition: all 0.15s ease-in-out !important;
}
.product-images__delete:hover svg {
  fill: var(--red-2) !important;
  fill-opacity: 1;
}
.product-images__delete:hover svg path {
  stroke: var(--red-1) !important;
}
.product-rank {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 4px;
}
.product-rank span {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--red-1);
}
.product-price {
  font-size: var(--size-text-24);
  font-weight: 600;
  line-height: normal;
  color: var(--red-1);
  display: block;
  width: 100%;
}
.product-discount {
  font-size: var(--size-text-14);
  font-weight: 400;
  line-height: normal;
  color: #9697AB;
  text-decoration: line-through;
  display: block;
  width: 100%;
}
.product-title {
  font-size: var(--size-text-20);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  margin-bottom: 4px;
}
.product-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 4px;
}
.product-info {
  display: flex;
  flex-direction: column;
  margin-top: 8px;
}
.product-info > *:last-child {
  margin-bottom: 0;
}
.product {
  --local-height-shopping: 38px;
  position: relative;
  z-index: 1;
  display: block;
  cursor: pointer;
}
.product:hover {
  z-index: 9999;
}
.product-shopping {
  content: "";
  position: absolute;
  left: -8px;
  top: -8px;
  right: -8px;
  bottom: calc(0px - var(--local-height-shopping) - 8px - 4px);
  border: 1px solid var(--red-1);
  border-radius: 16px;
  z-index: -1;
  opacity: 0;
  transition: all 0.2s ease-in-out;
  background-color: var(--white-1);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 8px;
}
.product-shopping__btn {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  width: 100%;
  border-radius: 8px;
  background: var(--red-1);
  padding: 0 16px;
  font-size: var(--size-text-16);
  font-weight: 500;
  line-height: normal;
  color: var(--white-1);
  overflow: hidden;
  opacity: 0;
  height: calc(var(--local-height-shopping));
  transition: all 0.15s ease-in-out;
}
.product-shopping__btn i {
  font-size: 30px;
  color: var(--white-1);
}
.product:hover .product-shopping__btn {
  opacity: 1;
}
.product:hover .product-shopping {
  opacity: 1;
}
.product-calc {
  border-radius: 16px;
  background: #F4F3F1;
  display: flex;
  align-items: center;
  margin-top: 4px;
}
.product-calc__sum {
  flex: 1;
  font-size: var(--size-text-16);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
  padding: 0 16px;
}
.product-calc__actions {
  padding: 4px;
  display: flex;
  gap: 4px;
}
.product-calc__action {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  font-size: 24px;
  color: var(--black-1);
  width: 32px;
  height: 32px;
  border-radius: 12px;
  background-color: var(--white-1);
}
.product-calc__action:hover {
  background-color: var(--red-1);
  color: var(--white-1);
}
.product-label {
  font-size: var(--size-text-10);
  font-weight: 400;
  line-height: normal;
  color: #818290;
  display: block;
  width: 100%;
}
.product-main .product-label {
  margin-top: var(--space-16);
}
.product-comparison {
  margin-top: auto;
}
.product-comparison__item {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  row-gap: 8px;
  padding: 8px 0;
  border-top: 1px solid #D9D9D9;
}
.product-comparison__item:last-child {
  border-bottom: 1px solid #D9D9D9;
}
.product-comparison__image {
  --local-width: 32px;
  width: var(--local-width);
  min-width: var(--local-width);
}
.product-comparison__title {
  font-size: var(--size-text-16);
  font-weight: 600;
  line-height: normal;
  color: var(--black-1);
}
.product-comparison__colors {
  display: flex;
  gap: 3px;
}
.product-comparison__color {
  --local-width: 24px;
  min-width: var(--local-width);
  height: var(--local-width);
  background-color: var(--local-color);
  border-radius: 6px;
  border: 0.5px solid #818290;
}
.product-comparison__row {
  justify-content: space-between;
  gap: 0px;
}
.product-comparison__col {
  width: calc(50% - 4px);
}

.app {
  background-image: url("../images/plan.jpg");
}

.widgets {
  display: flex;
  flex-direction: column;
  position: fixed;
  gap: 4px;
  top: 50%;
  right: var(--space-48);
  z-index: 9999;
}
.widgets-item {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  height: var(--size-btn-56);
  width: var(--size-btn-56);
  border-radius: 28px;
  background: #F4F3F1;
  font-size: 32px;
  position: relative;
}
.active .widgets-item {
  color: var(--white-1);
  background-color: var(--red-1);
}
.widgets-item__wrapper {
  position: relative;
}
.widgets-item__badge {
  position: absolute;
  right: 0;
  top: 0;
  font-size: var(--size-text-10);
  font-weight: 500;
  line-height: normal;
  color: var(--black-1);
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: #B9E4FF;
  display: flex;
  align-items: center;
  justify-content: center;
}

.chat {
  border-radius: 16px;
  background: #FFF;
  box-shadow: 0px 20px 30px 0px rgba(0, 0, 0, 0.2);
  position: absolute;
  bottom: 100%;
  right: 0;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  width: 363px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease-in-out;
}
.active .chat {
  opacity: 1;
  visibility: visible;
}
.chat-header {
  padding: 16px 24px;
}
.chat-header, .chat-footer {
  position: relative;
  z-index: 3;
}
.chat-header::after, .chat-footer::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  background: linear-gradient(var(--local-position), #FFF 0%, rgba(255, 255, 255, 0) 100%);
  height: 40px;
}
.chat-header {
  --local-position: to bottom;
}
.chat-header::after {
  top: 100%;
}
.chat-header__title {
  font-size: var(--size-text-24);
  font-weight: 600;
  line-height: normal;
  color: var(--red-1);
  text-align: center;
  margin-bottom: 8px;
}
.chat-header__subtitle {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: #818290;
  text-align: center;
}
.chat-body {
  overflow: scroll;
  display: flex;
  flex-direction: column-reverse;
  padding: 8px;
  height: 320px;
}
.chat-footer {
  padding: 8px 8px 8px;
  --local-position: to top;
  position: relative;
}
.chat-footer::after {
  bottom: 100%;
}
.chat-footer__input {
  padding: 8px 16px;
  padding-right: 48px;
  border-radius: 8px;
  background: #F4F3F1;
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  width: 100%;
  outline: none;
  border: none;
  height: var(--size-btn-48);
}
.chat-footer__input::placeholder {
  color: #818290;
}
.chat-footer__upload {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 32px;
}
.chat-messages {
  display: flex;
  flex-direction: column;
  width: calc(100% - 32px);
  margin-top: 12px;
  padding-bottom: calc(var(--size-btn-32) + 8px);
}
.chat-messages__item {
  font-size: var(--size-text-16);
  font-weight: 400;
  line-height: normal;
  color: var(--black-1);
  padding: 8px 16px;
  display: inline-block;
  position: relative;
}
.chat-messages__item:not(:last-child) {
  margin-bottom: 4px;
}
.other .chat-messages__item {
  border-radius: 12px 12px 12px 0px;
  background: #F4F3F1;
}
.me .chat-messages__item {
  border-radius: 12px 12px 0px 12px;
  background: #FCF1EC;
  color: var(--red-1);
  text-align: right;
}
.chat-messages__item:last-child::before {
  content: "";
  position: absolute;
  top: calc(100% - 2px);
  width: 0;
  height: 0;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-bottom: 9px solid var(--local-color);
  transform: translateX(var(--local-x)) rotate(var(--local-deg));
}
.chat-messages__item:last-child::after {
  content: "";
  width: var(--size-btn-32);
  height: var(--size-btn-32);
  border-radius: 50%;
  position: absolute;
  background-size: 66% 66%;
  background-position: center center;
  background-repeat: no-repeat;
  top: calc(100% + 8px);
}
.other .chat-messages__item:last-child::after {
  background-color: #F4F3F1;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 22 22" fill="none"><circle cx="10.9999" cy="7.44472" r="3.05556" stroke="black" stroke-linecap="round"/><path d="M4.89359 14.333C5.47465 12.953 6.96417 12.3335 8.46154 12.3335H13.5388C15.0362 12.3335 16.5257 12.953 17.1067 14.333C17.4181 15.0725 17.6668 15.9819 17.6668 17.0002H4.3335C4.3335 15.9819 4.58222 15.0725 4.89359 14.333Z" stroke="black" stroke-linecap="round"/></svg>');
  left: 0;
}
.other .chat-messages__item:last-child::before {
  --local-color: #F4F3F1;
  --local-x: -32%;
  --local-deg: -45deg;
  left: 0;
}
.me .chat-messages__item:last-child::after {
  background-color: var(--red-1);
  background-image: url('data:image/svg+xml,<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="10.9999" cy="7.44423" r="3.05556" stroke="white" stroke-linecap="round"/><path d="M4.89359 14.3325C5.47465 12.9525 6.96417 12.333 8.46154 12.333H13.5388C15.0362 12.333 16.5257 12.9525 17.1067 14.3325C17.4181 15.0721 17.6668 15.9815 17.6668 16.9997H4.3335C4.3335 15.9815 4.58222 15.0721 4.89359 14.3325Z" stroke="white" stroke-linecap="round"/></svg>');
  right: 0;
}
.me .chat-messages__item:last-child::before {
  --local-color: #FCF1EC;
  --local-x: 32%;
  --local-deg: 45deg;
  right: 0;
}
.chat-messages.other {
  align-items: flex-start;
}
.chat-messages.me {
  align-items: flex-end;
  margin-left: auto;
}

.comparison-wrapper {
  width: 100%;
  max-width: 100%;
  transition: transform 0.3s ease-out;
}
.comparison-row {
  flex-wrap: nowrap;
  margin: 0;
}
.comparison-row__col {
  flex: 0 0 auto;
  padding: 0 !important;
}
.comparison-row__col:not(:last-child) {
  margin-right: var(--space-20);
}

.structure-wrapper {
  --local-gutter: 40px;
  --local-half-gutter: calc(var(--local-gutter) / 2);
  --local-border: 1px solid var(--black-7);
  --local-mini-gutter: 16px;
}
@media only screen and (max-width: 574px) {
  .structure-wrapper {
    --local-gutter: 20px;
    --local-mini-gutter: 8px;
  }
}
.structure--main .structure {
  --local-line-height: 12px;
  --local-padding: 20px;
  height: 100%;
}
.structure--parts .structure {
  --local-line-height: 8px;
  --local-padding: 12px;
}
.structure {
  border-radius: 8px;
  border: 1px solid var(--black-8);
  background: var(--white-1);
  padding: calc(var(--local-padding) + var(--local-line-height)) var(--local-padding) var(--local-padding);
  position: relative;
  text-align: center;
  color: var(--black-1);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
}
.structure-line {
  height: var(--local-line-height);
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  border-radius: 8px 8px 0 0;
}
.structure--main .structure-line {
  background-color: var(--blue-4);
}
.structure--parts .structure-line {
  background-color: var(--black-7);
}
#tab-general .structure--main > li:nth-child(2) .structure-line {
  background-color: var(--green-2);
}
.structure-line::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  height: 100%;
  transform: translateX(-50%);
  width: 33.3333%;
  z-index: 2;
}
.structure--main .structure-line::after {
  background-color: var(--blue-3);
}
.structure--parts .structure-line::after {
  background-color: var(--black-6);
}
#tab-general .structure--main > li:nth-child(2) .structure-line::after {
  background-color: var(--green-1);
}
.structure-name {
  color: var(--black-1);
  font-family: "MuseoSansCyrl-700", sans-serif;
  font-size: var(--size-text-24);
  line-height: 140%;
  letter-spacing: -0.24px;
  text-align: center;
}
@media only screen and (max-width: 574px) {
  .structure-name {
    font-size: 16px;
  }
}
.structure-fio {
  text-align: center;
  color: var(--blue-3);
  font-family: "MuseoSansCyrl-500", sans-serif;
  font-size: var(--size-text-18);
  line-height: 140%;
  letter-spacing: -0.18px;
  margin-top: 8px;
}
#tab-general .structure--main > li:nth-child(2) .structure-fio {
  color: var(--green-1);
}
.structure--main {
  display: flex;
  gap: var(--local-gutter);
  position: relative;
  z-index: 1;
  margin-bottom: var(--local-half-gutter);
}
.structure--main li {
  flex: 1;
  position: relative;
}
@media only screen and (max-width: 1199px) {
  .structure--main li {
    flex: unset;
    width: 100%;
  }
}
@media only screen and (min-width: 1199px) {
  .structure--main li:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 100%;
    top: 50%;
    width: var(--local-gutter);
    border-top: var(--local-border);
  }
}
@media only screen and (min-width: 1199px) {
  #tab-general .structure--main li:nth-child(even)::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    height: var(--local-half-gutter);
    border-right: var(--local-border);
  }
}
#tab-faculty .structure--main {
  position: relative;
}
@media only screen and (min-width: 1199px) {
  #tab-faculty .structure--main {
    padding-bottom: var(--local-half-gutter);
  }
}
@media only screen and (min-width: 1199px) {
  #tab-faculty .structure--main::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 100%;
    border-top: var(--local-border);
    width: calc(50% + var(--local-half-gutter));
  }
}
@media only screen and (min-width: 1199px) {
  #tab-faculty .structure--main::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    border-right: var(--local-border);
    height: var(--local-half-gutter);
  }
}
@media only screen and (min-width: 1199px) {
  #tab-faculty .structure--main li::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    height: var(--local-half-gutter);
    border-right: var(--local-border);
  }
}
@media only screen and (max-width: 1199px) {
  .structure--main {
    flex-wrap: wrap;
    padding-right: var(--local-gutter);
  }
  .structure--main::before {
    content: "";
    position: absolute;
    right: var(--local-half-gutter);
    top: calc(var(--local-height) / 2);
    bottom: calc(0px - var(--local-half-gutter));
    border-left: var(--local-border);
  }
  .structure--main::after {
    content: "";
    position: absolute;
    right: var(--local-half-gutter);
    left: var(--local-half-gutter);
    bottom: calc(0px - var(--local-half-gutter));
    border-top: var(--local-border);
  }
  .structure--main li {
    position: relative;
  }
  .structure--main li::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: var(--local-half-gutter);
    transform: translateX(100%);
    border-top: var(--local-border);
  }
}
.structure--parts {
  display: flex;
  position: relative;
}
@media only screen and (max-width: 1199px) {
  .structure--parts {
    flex-wrap: wrap;
    padding-left: var(--local-gutter);
  }
}
@media only screen and (min-width: 1199px) {
  .structure--parts {
    margin: 0 calc(0px - var(--local-half-gutter) / 2);
    padding-top: var(--local-half-gutter);
  }
}
@media only screen and (min-width: 1199px) {
  .structure--parts::before {
    content: "";
    position: absolute;
    left: 10%;
    right: 10%;
    border-top: var(--local-border);
    top: 0;
  }
}
.structure--parts > li {
  flex: 1;
  position: relative;
}
@media only screen and (min-width: 1199px) {
  .structure--parts > li {
    padding: 0 calc(var(--local-half-gutter) / 2);
  }
}
@media only screen and (max-width: 1199px) {
  .structure--parts > li {
    flex: unset;
    width: 100%;
  }
  .structure--parts > li:not(:last-child) {
    padding-bottom: var(--local-half-gutter);
  }
}
.structure--parts > li:first-child {
  padding-top: var(--local-half-gutter);
}
@media only screen and (min-width: 1199px) {
  .structure--parts > li::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 100%;
    border-right: var(--local-border);
    height: var(--local-half-gutter);
  }
}
@media only screen and (max-width: 1199px) {
  .structure--parts > li:not(:last-child)::before {
    content: "";
    position: absolute;
    left: calc(0px - var(--local-half-gutter));
    border-right: var(--local-border);
    top: 0px;
    bottom: calc(0px - var(--local-height) / 2);
  }
}
@media only screen and (max-width: 1199px) {
  .structure--parts > li > .structure::before {
    content: "";
    position: absolute;
    left: 0%;
    top: 50%;
    border-top: var(--local-border);
    width: var(--local-half-gutter);
    transform: translateX(-100%);
  }
}
@media only screen and (max-width: 1199px) {
  .structure--parts > li ul {
    flex-wrap: wrap;
  }
}
.structure--parts > li ul > li:first-child {
  position: relative;
}
.structure--parts > li ul > li:first-child::before {
  content: "";
  position: absolute;
  left: calc(50% - var(--local-mini-gutter) / 2);
  bottom: calc(100% + var(--local-mini-gutter));
  border-right: var(--local-border);
  height: var(--local-half-gutter);
}
.structure--parts > li ul {
  padding-left: var(--local-mini-gutter);
  padding-top: var(--local-mini-gutter);
  margin-top: var(--local-half-gutter);
  position: relative;
}
@media only screen and (max-width: 1199px) {
  .structure--parts > li ul {
    flex-wrap: wrap;
  }
}
.structure--parts > li ul li {
  position: relative;
}
@media only screen and (max-width: 1199px) {
  .structure--parts > li ul li {
    width: 100%;
  }
}
.structure--parts > li ul li:not(:last-child) {
  margin-bottom: var(--local-mini-gutter);
}
.structure--parts > li ul li .structure::after {
  content: "";
  top: 50%;
  right: 100%;
  position: absolute;
  width: var(--local-mini-gutter);
  border-top: var(--local-border);
}
.structure--parts > li ul::after {
  content: "";
  left: 0;
  width: 50%;
  top: 0;
  position: absolute;
  border-top: var(--local-border);
}
.structure--parts > li ul::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: calc(var(--local-height) / 2);
  border-left: var(--local-border);
}