button,
[role="button"],
input[type="button"],
input[type="submit"],
input[type="reset"],
select,
summary {
    cursor: pointer;
}

button:disabled,
[aria-disabled="true"],
input:disabled,
select:disabled {
    cursor: not-allowed;
}

.ui-wrapper {
    max-width: 1200px;
    margin: auto;
    padding: 0 30px;
}

.ui-title {
    margin-bottom: 10px;
    margin-top: 40px;
}

.ui-block.ui-colors {
    flex-direction: row;
    gap: 20px;
    flex-wrap: wrap;
}

.ui-colors-t, .ui-colors-num {
    background-color: #FFF;
    border-radius: 5px;
    width: fit-content;
    margin-bottom: 10px;
    font-size: 12px;
    padding: 2px 10px;
}

.ui-colors-item {
    aspect-ratio: 1 / 1;
    padding: 10px;
    box-sizing: border-box;
    width: calc((100% - (6 - 1) * 20px) / 6);
}

.ui-color--white {
    background-color: var(--white);
}

.ui-color--grey-light {
    background-color: var(--grey-light);
}

.ui-color--grey {
    background-color: var(--grey);
}

.ui-color--grey-dark {
    background-color: var(--grey-dark);
}

.ui-color--dark {
    background-color: var(--dark);
}

.ui-color--black {
    background-color: var(--black);
}

.ui-color--blue-light {
    background-color: var(--blue-light);
}

.ui-color--blue-light-2 {
    background-color: var(--blue-light-2);
}

.ui-color--blue-grey {
    background-color: var(--blue-grey);
}

.ui-color--blue {
    background-color: var(--blue);
}

.ui-color--blue-deep {
    background-color: var(--blue-deep);
}

.u-mt-90 {
    margin-top: 90px;
}

.u-mb-10 {
    margin-bottom: 10px;
}

.u-mb-60 {
    margin-bottom: 60px;
}

.u-mr-10 {
    margin-right: 10px;
}

.u-border-none {
    border: none;
}

.section-lead-grid {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 48px;
    align-items: start;
}

.decor-dot--sm {
    width: 16px;
    height: 16px;
    margin-top: 6px;
}

.section-label {
    color: var(--grey);
    font-size: 16px;
    line-height: 19.2px;
}

.u-img-cover {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.u-self-start {
    align-self: start;
}

.ui-block {
    display: flex;
    flex-direction: column;
    gap: 30px;
    border-radius: 10px;
    border: 1px solid var(--grey-light);
    padding: 30px;
}

.ui-title {
    color: var(--grey);
}

.ui-buttons {
    flex-direction: row;
}

.ui-buttons.ui-blue {
    background-color: var(--blue-deep);
}

.wrapper--wide {
    max-width: var(--container-wide);
    padding-left: 0;
    padding-right: 0;
}

.wrapper--hero {
    min-height: 657px;
}

.prep-hero__content {
    position: absolute;
    left: 0;
    right: 0;
    top: 520px;
    display: grid;
    grid-template-columns: minmax(220px, 492px) minmax(0, 1fr);
    align-items: start;
}

.prep-hero h1 {
    max-width: 100%;
}

.educational-work-hero__content {
    grid-template-columns: 492px minmax(0, 1008px);
}

.student-science-society-hero h1 {
    max-width: 1008px;
}

.programs-hero .wrapper::before,
.programs-study::before,
.programs-documents::before,
.programs-overview-hero::before,
.programs-levels::before,
.programs-directions::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: min(1500px, calc(100% - 100px));
    transform: translateX(-50%);
    pointer-events: none;
    background-image:
        linear-gradient(to right, currentColor 1px, transparent 1px),
        linear-gradient(to right, transparent calc(33.333% - 1px), currentColor calc(33.333% - 1px), currentColor 33.333%, transparent 33.333%),
        linear-gradient(to right, transparent calc(66.666% - 1px), currentColor calc(66.666% - 1px), currentColor 66.666%, transparent 66.666%),
        linear-gradient(to right, transparent calc(100% - 1px), currentColor calc(100% - 1px));
}

.programs-hero__content {
    left: 50px;
    right: 50px;
    bottom: 55px;
}

.programs-hero__title {
    width: 1px;
}

.programs-overview-hero__grid {
    grid-template-columns: 468px minmax(0, 1008px);
}

.programs-overview-hero__content h1 {
    max-width: 1008px;
}

.programs-overview-hero__content p {
    max-width: 316px;
}

.schedule-hero__content,
.library-hero__content,
.volunteer-hero__content,
.education-info-hero__content {
    position: absolute;
    left: var(--section-hero-content-left, 50px);
    right: var(--section-hero-content-right, 50px);
    top: var(--section-hero-content-top);
    display: grid;
    grid-template-columns: var(--section-hero-content-grid, 468px minmax(0, 1008px));
    gap: var(--section-hero-content-gap, 24px);
    align-items: start;
}

.schedule-hero__content,
.volunteer-hero__content {
    --section-hero-content-top: 520px;
}

.library-hero__content {
    --section-hero-content-top: 443px;
    --section-hero-content-grid: minmax(220px, 492px) minmax(0, 1fr);
    --section-hero-content-gap: 0;
}

.education-info-hero__content {
    --section-hero-content-top: 366px;
}

.schedule-hero h1,
.library-hero h1,
.volunteer-hero h1,
.education-info-hero h1,
.inclusive-hero h1 {
    max-width: 1008px;
}

.student-squads-hero .wrapper {
    position: relative;
}

.student-squads-hero__content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 60px;
    display: grid;
    grid-template-columns: 468px minmax(0, 1fr);
    gap: 24px;
}

.student-squads-hero__label {
    font-size: 16px;
    line-height: 19.2px;
}

.student-squads-hero__head {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 24px;
}

.student-squads-hero h1 {
    margin: 0;
    font-size: 70px;
    line-height: 77px;
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap;
}

.student-squads-hero__button {
    white-space: nowrap;
}

.hero-split__content {
    position: absolute;
    left: 50px;
    right: 50px;
    display: grid;
    grid-template-columns: 492px minmax(0, 1fr);
    align-items: start;
}

.hero-split--bottom .hero-split__content {
    bottom: 60px;
}

.hero-split--top .hero-split__content {
    top: 520px;
}

.hero-split--content .hero-split__content {
    top: 443px;
    grid-template-columns: 468px minmax(0, 1fr) auto;
    gap: 24px;
}

.hero-split--media .hero-split__content {
    left: 0;
    right: 50px;
    bottom: 60px;
    grid-template-columns: 468px minmax(0, 1008px);
    gap: 24px;
    align-items: end;
}

.hero-split--cta .hero-split__content {
    top: 443px;
    grid-template-columns: minmax(220px, 492px) minmax(0, 1fr) auto;
    column-gap: 32px;
}

.hero-split__label {
    font-size: 16px;
    line-height: 19.2px;
    font-weight: 400;
}

.hero-split--label-white .hero-split__label {
    color: var(--white);
}

.hero-split--label-soft .hero-split__label {
    color: rgba(206, 212, 245, .9);
}

.hero-split--label-muted-white .hero-split__label {
    color: rgba(253, 253, 254, .65);
}

.hero-split h1 {
    margin: 0;
    font-size: 70px;
    line-height: 77px;
    font-weight: 400;
    text-transform: uppercase;
}

.hero-split--title-blue h1 {
    color: var(--blue-light-2);
}

.hero-split--title-white h1 {
    color: var(--white);
}

.practice-hero h1,
.digital-transformation-hero h1 {
    max-width: 1008px;
}

@media screen and (max-width: 1280px) {
    .hero-split--media .hero-split__content {
        left: 60px;
        right: 60px;
        display: block;
    }

    .hero-split--content .hero-split__content {
        left: 60px;
        right: 60px;
        top: 367px;
        grid-template-columns: minmax(0, 1fr);
        gap: 40px;
    }

    .inclusive-hero h1 {
        max-width: 760px;
        font-size: 56px;
        line-height: 61.6px;
    }

    .practice-hero__label {
        margin-bottom: 40px;
    }

    .practice-hero h1 {
        max-width: 640px;
        font-size: 70px;
        line-height: 77px;
    }
}

@media (max-width: 1280px) and (min-width: 1101px) {
    .hero-split--top .hero-split__content {
        left: 60px;
        right: 60px;
        grid-template-columns: 360px minmax(0, 1fr);
    }
}

@media screen and (min-width: 1281px) and (max-width: 1599px) {
    .digital-transformation-hero .hero-split__content {
        grid-template-columns: minmax(360px, 31vw) minmax(0, 1fr);
    }

    .digital-transformation-hero h1 {
        max-width: none;
        font-size: clamp(50px, 3.85vw, 65px);
        line-height: 1.1;
        white-space: normal;
    }
}

@media screen and (min-width: 601px) and (max-width: 1280px) {
    .digital-transformation-hero .hero-split__content {
        left: 60px;
        right: 60px;
        top: 384px;
        display: block;
    }

    .digital-transformation-hero__label {
        margin-bottom: 40px;
    }

    .digital-transformation-hero h1 {
        max-width: 640px;
        font-size: 70px;
        line-height: 77px;
        white-space: normal;
    }

    .hero-split--bottom .hero-split__content {
        left: 60px;
        right: 60px;
        bottom: 60px;
        display: block;
    }

    .employees-hero__label,
    .partners-hero__label {
        margin-bottom: 39px;
    }

    .hero-split--title-natural-tablet h1 {
        text-transform: none;
    }
}

@media (max-width: 1100px) {
    .hero-split--media .hero-split__content {
        bottom: 60px;
    }

    .hero-split--top .hero-split__content {
        left: 60px;
        right: 60px;
        top: 384px;
        display: block;
    }

    .museums-hero__label {
        margin-bottom: 40px;
    }

    .museums-hero h1 {
        max-width: 640px;
        font-size: 70px;
        line-height: 77px;
    }
}

@media screen and (min-width: 1281px) and (max-width: 1366px) {
    .partners-hero .wrapper {
        max-width: none;
        padding-left: 50px;
        padding-right: 50px;
    }

    .partners-hero .hero-split__content {
        grid-template-columns: 360px minmax(0, 1fr);
    }
}

@media screen and (max-width: 700px) {
    .hero-split--content .hero-split__content {
        left: 0;
        right: 0;
        top: 106px;
        gap: 16px;
    }

    .inclusive-hero h1 {
        max-width: 310px;
        font-size: 35px;
        line-height: 40px;
        text-transform: none;
    }

    .hero-split--top .hero-split__content {
        left: 10px;
        right: 10px;
        top: 244px;
        display: block;
    }

    .museums-hero__label,
    .digital-transformation-hero__label {
        margin-bottom: 20px;
        font-size: 14px;
        line-height: 18.2px;
    }

    .museums-hero h1,
    .digital-transformation-hero h1 {
        max-width: 300px;
        font-size: 40px;
        line-height: 44px;
        text-transform: none;
    }

    .digital-transformation-hero h1 {
        white-space: normal;
    }
}

@media screen and (max-width: 600px) {
    .hero-split--media .hero-split__content {
        left: var(--hero-media-content-x-mobile, 16px);
        right: var(--hero-media-content-x-mobile, 16px);
        bottom: var(--hero-media-content-bottom-mobile, 35px);
    }

    .practice-hero .hero-split__content {
        left: 0;
        right: 0;
        bottom: 30px;
        display: block;
    }

    .practice-hero__label {
        margin-bottom: 20px;
        font-size: 14px;
        line-height: 18.2px;
    }

    .practice-hero h1 {
        max-width: 300px;
        font-size: 40px;
        line-height: 44px;
        text-transform: none;
    }

    .employees-hero .hero-split__content,
    .partners-hero .hero-split__content {
        left: 0;
        right: 0;
        bottom: 30px;
        display: block;
    }

    .employees-hero__label,
    .partners-hero__label {
        margin-bottom: 20px;
        font-size: 14px;
        line-height: 18.2px;
    }

    .hero-split--title-natural-tablet h1 {
        font-size: 40px;
        line-height: 44px;
        text-transform: none;
    }
}

@media screen and (max-width: 900px) {
    .student-squads-hero__content {
        bottom: 60px;
        grid-template-columns: minmax(0, 1fr);
        gap: 40px;
    }

    .student-squads-hero__head {
        display: block;
    }

    .student-squads-hero h1 {
        max-width: 640px;
        font-size: 70px;
        line-height: 77px;
        white-space: normal;
    }

    .student-squads-hero__button {
        margin-top: 20px;
    }
}

@media screen and (max-width: 600px) {
    .student-squads-hero .wrapper {
        width: var(--container-compact-page-width);
        max-width: var(--container-compact-page-width);
        margin-left: var(--container-compact-page-x);
        margin-right: var(--container-compact-page-x);
        padding-left: 0;
        padding-right: 0;
    }

    .student-squads-hero__content {
        bottom: 40px;
        gap: 20px;
    }

    .student-squads-hero h1 {
        font-size: 40px;
        line-height: 44px;
        white-space: normal;
    }

    .student-squads-hero__button {
        max-width: 100%;
        white-space: normal;
    }
}

@media screen and (min-width: 901px) {
    .wrapper--hero {
        width: min(var(--container-wide), calc(100% - 120px));
        max-width: none;
        margin-left: auto;
        margin-right: auto;
        padding-left: 0;
        padding-right: 0;
    }

    [data-gutenberg-block="page-hero"] [class*="-hero__content"] {
        top: auto;
        bottom: 60px;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
}

@media screen and (min-width: 901px) and (max-width: 1599px) {
    [data-gutenberg-block="page-hero"] .wrapper--hero {
        width: min(var(--container-wide), calc(100% - 120px));
        max-width: none;
        margin-left: auto;
        margin-right: auto;
        padding-left: 0;
        padding-right: 0;
    }

    [data-gutenberg-block="page-hero"] [class*="-hero__content"] {
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
    }

    [data-gutenberg-block="page-hero"] [class*="-hero__label"],
    [data-gutenberg-block="page-hero"] h1,
    [data-gutenberg-block="page-hero"] [class*="-hero__head"] {
        min-width: 0;
        max-width: 100%;
    }

    [data-gutenberg-block="page-hero"] h1 {
        white-space: normal !important;
        overflow-wrap: normal;
        word-break: normal;
        hyphens: manual;
    }
}

@media screen and (max-width: 1100px) {
    .prep-hero__content {
        left: var(--prep-hero-content-x, 60px);
        right: var(--prep-hero-content-x, 60px);
        top: var(--prep-hero-content-top-tablet, 384px);
        display: block;
    }

    .prep-hero h1 {
        max-width: var(--prep-hero-title-max-tablet, 640px);
    }

    .programs-hero__content {
        left: 60px;
        right: 60px;
        bottom: 55px;
    }

    .programs-overview-hero::before,
    .programs-levels::before,
    .programs-directions::before {
        width: calc(100% - 120px);
    }

    .programs-overview-hero__content h1 {
        max-width: 640px;
    }

    .schedule-hero__content {
        --section-hero-content-left: 60px;
        --section-hero-content-right: 60px;
        --section-hero-content-top: 461px;
    }

    .library-hero__content {
        --section-hero-content-left: 60px;
        --section-hero-content-right: 60px;
        --section-hero-content-top: 438px;
    }

    .education-info-hero__content {
        --section-hero-content-left: 60px;
        --section-hero-content-right: 60px;
    }

    .volunteer-hero__content {
        --section-hero-content-left: 0;
        --section-hero-content-right: 0;
        --section-hero-content-top: 384px;
    }

    .schedule-hero h1,
    .library-hero h1,
    .volunteer-hero h1,
    .education-info-hero h1 {
        max-width: var(--section-hero-title-max-tablet, 640px);
    }
}

@media screen and (min-width: 1101px) and (max-width: 1280px) {
    .library-hero__content,
    .education-info-hero__content {
        --section-hero-content-left: 60px;
        --section-hero-content-right: 60px;
    }

    .library-hero__content {
        --section-hero-content-top: 438px;
    }

    .education-info-hero__content {
        --section-hero-content-top: 366px;
    }

    .education-info-hero h1 {
        max-width: 780px;
    }
}

@media screen and (min-width: 601px) and (max-width: 1280px) {
    .volunteer-hero__content {
        --section-hero-content-left: 60px;
        --section-hero-content-right: 60px;
        --section-hero-content-grid: minmax(260px, 32%) minmax(0, 1fr);
    }
}

@media screen and (max-width: 600px) {
    .prep-hero {
        width: 100vw;
        max-width: 100vw;
        overflow: hidden;
    }

    .prep-hero__content {
        left: var(--prep-hero-content-x-mobile, 0);
        right: var(--prep-hero-content-x-mobile, 0);
        top: auto;
        bottom: var(--prep-hero-content-bottom-mobile, 30px);
    }

    .prep-hero h1 {
        max-width: var(--prep-hero-title-max-mobile, 300px);
    }

    .foreign-hero .prep-hero__head {
        grid-template-columns: minmax(0, 1fr);
    }

    .programs-hero,
    .programs-overview-hero,
    .programs-levels,
    .programs-level-panels,
    .programs-level-panel,
    .programs-directions {
        width: 100vw;
        max-width: 100vw;
        overflow: hidden;
    }

    .programs-hero .wrapper::before,
    .programs-study::before,
    .programs-documents::before,
    .programs-overview-hero::before,
    .programs-levels::before,
    .programs-directions::before {
        left: 16px;
        width: calc(100vw - 32px);
        transform: none;
    }

    .programs-hero__content {
        left: 0;
        right: 0;
        bottom: 40px;
    }

    .programs-overview-hero__content h1,
    .programs-overview-hero__content p {
        max-width: 300px;
    }

    .schedule-hero__content,
    .library-hero__content,
    .volunteer-hero__content {
        --section-hero-content-left: 0;
        --section-hero-content-right: 0;
    }

    .schedule-hero__content {
        --section-hero-content-top: 288px;
    }

    .library-hero__content {
        --section-hero-content-top: 254px;
    }

    .volunteer-hero__content {
        --section-hero-content-top: 244px;
    }

    .education-info-hero__content {
        --section-hero-content-left: 0;
        --section-hero-content-right: 0;
        --section-hero-content-top: 215px;
    }

    .schedule-hero h1,
    .volunteer-hero h1,
    .education-info-hero h1 {
        max-width: 300px;
    }

    .library-hero h1 {
        max-width: none;
    }
}

.page-surface--white-clip {
    background-color: var(--white);
    overflow: hidden;
}

[data-gutenberg-slider-type] [data-gutenberg-primitive="slider-viewport"],
[data-gutenberg-slider-type] [data-gutenberg-primitive="slider-track"] {
    scrollbar-width: none;
}

[data-gutenberg-slider-type="poster-strip"] [data-gutenberg-primitive="slider-slide"] {
    transition: none;
    will-change: auto;
}

[data-gutenberg-slider-type] [data-gutenberg-primitive="slider-viewport"]::-webkit-scrollbar,
[data-gutenberg-slider-type] [data-gutenberg-primitive="slider-track"]::-webkit-scrollbar {
    display: none;
}

[data-gutenberg-slider-type] [data-gutenberg-primitive="slider-arrow"] svg {
    display: block;
    overflow: visible;
}

[data-gutenberg-slider-type] [data-gutenberg-primitive="slider-arrow"] path {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.card-surface--grey-flex {
    display: flex;
    flex-direction: column;
    background-color: var(--grey-light);
}

.contact-card {
    width: min(320px, 100%);
    min-width: 0;
    min-height: 365px;
    padding: 30px;
    box-sizing: border-box;
    background-color: var(--grey-light);
    color: var(--blue);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 56px;
    overflow-wrap: anywhere;
}

.contact-card h5,
.contact-card p,
.contact-card dl,
.contact-card dt,
.contact-card dd {
    margin: 0;
}

.contact-card__head h5,
.contact-card__head h3 {
    margin: 0;
    color: var(--blue);
    font-size: var(--text-20);
    line-height: var(--leading-20-tight);
    font-weight: 400;
}

.contact-card__head p {
    margin-top: 5px;
    color: var(--blue-grey);
    font-size: 14px;
    line-height: 18.2px;
}

.contact-card dl {
    display: grid;
    gap: 14px;
}

.contact-card dl div {
    display: grid;
    gap: 2px;
}

.contact-card dt,
.contact-card dd,
.contact-card a {
    font-size: 14px;
    line-height: 18.2px;
    font-weight: 400;
}

.contact-card dt {
    color: rgba(33, 47, 138, .4);
}

.contact-card dd,
.contact-card a {
    color: var(--blue);
    text-decoration: none;
}

.contact-card a:hover,
.contact-card a:focus-visible {
    color: var(--blue-light);
}

.contact-card--interactive {
    transition: background-color .28s cubic-bezier(.22, 1, .36, 1), box-shadow .28s cubic-bezier(.22, 1, .36, 1), transform .28s cubic-bezier(.22, 1, .36, 1);
}

.contact-card--interactive:hover,
.contact-card--interactive:focus-within {
    background-color: var(--surface-hover-soft);
    box-shadow: 0 18px 34px rgba(33, 47, 138, .12);
    transform: translateY(-3px);
}

.contact-card--push-meta dl {
    margin-top: auto;
}

.contact-card--solid-labels dt {
    color: var(--blue);
}

.decor-dot--blue,
.programs-direction__content h2::before,
.targeted-training-lead__content::before,
.additional-professional-lead__content::before,
.library-intro .wrapper::before,
.library-rinc .wrapper::before {
    border-radius: 50%;
    background-color: var(--blue);
}

.decor-dot--abs,
.programs-direction__content h2::before,
.targeted-training-lead__content::before,
.additional-professional-lead__content::before,
.library-intro .wrapper::before,
.library-rinc .wrapper::before {
    position: absolute;
}

.docs-item--motion-soft {
    transition: background-color .28s ease, transform .28s ease;
}

.docs-item--motion-fast {
    transition: background-color .24s ease, transform .24s ease;
}

.docs {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px;
}

.docs .docs-item {
    width: calc(50% - 15px);
    box-sizing: border-box;
    background-color: var(--white);
    min-height: 100px;
    padding: 10px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0;
    transition: background-color .7s ease-in-out;
}

.docs .docs-h {
    display: flex;
    align-items: center;
    gap: 25px;
}

.docs .docs-title {
    color: var(--dark, var(--dark));
    transition: color .7s ease-in-out;
}

.docs .docs-b {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--dark) !important;
    font-size: 10px;
    line-height: 11px;
    font-weight: 400;
    opacity: .5;
    transition: color .7s ease-in-out;
}

.docs .docs-b * {
    color: inherit !important;
}

.docs .docs-item--white .docs-b,
.docs .docs-item.surface-card--white .docs-b,
.docs .docs-item.item-white .docs-b {
    color: var(--dark, var(--dark)) !important;
}

.docs .docs-h img {
    width: 24px;
    min-width: 24px;
    height: 24px;
    object-fit: contain;
    transition: filter .7s ease-in-out, opacity .7s ease-in-out;
}

.docs .docs-item:hover,
.docs .docs-item:active,
.docs .docs-item:focus-visible {
    background-color: var(--blue);
    transform: none;
}

.docs .docs-item:hover .docs-title,
.docs .docs-item:active .docs-title,
.docs .docs-item:focus-visible .docs-title,
.docs .docs-item:hover .docs-b,
.docs .docs-item:active .docs-b,
.docs .docs-item:focus-visible .docs-b {
    color: var(--white) !important;
}

.docs .docs-item:hover .docs-h img,
.docs .docs-item:active .docs-h img,
.docs .docs-item:focus-visible .docs-h img {
    filter: brightness(0) invert(1);
    opacity: 1;
}

.docs--grid-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px 24px;
}

.docs--grid-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px 24px;
}

.docs--grid-3-tight {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px 12px;
}

.docs--grid-3-wide {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 492px));
    justify-content: space-between;
    gap: 5px 12px;
}

.docs--grid-3-wide .docs-item {
    width: 100%;
}

.docs--compact .docs-item {
    width: 100%;
    min-height: 100px;
    margin: 0;
    padding: 10px 20px;
    gap: 22px;
    text-decoration: none;
}

.applicants-docs__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 492px));
    gap: 15px 24px;
}

.applicants-docs__list .docs-item {
    width: 100%;
}

@media screen and (min-width: 1101px) {
    .applicants-docs .applicants-tab-panel {
        padding: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .docs .docs-item,
    .docs .docs-title,
    .docs .docs-b,
    .docs .docs-h img {
        transition-duration: .01ms;
    }
}

.info-table {
    width: 100%;
    overflow-x: auto;
}

.info-table__row {
    display: grid;
    min-width: 760px;
    min-height: 73px;
    background-color: var(--grey-light);
}

.info-table__row--head {
    min-height: 62px;
    background-color: #CED4F5;
}

.info-table__row > div {
    min-width: 0;
    padding: 15px 20px;
    color: var(--blue);
    font-size: 14px;
    line-height: 18.2px;
    font-weight: 400;
}

.info-table a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--blue);
    text-decoration: none;
}

.event-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.event-card {
    min-height: 559px;
    padding: 24px;
    border: 1px solid var(--border-control);
    box-sizing: border-box;
    background-color: var(--white);
    color: var(--black);
    display: flex;
    flex-direction: column;
}

.event-card__weekday {
    margin-bottom: 24px;
    color: var(--grey);
    font-size: 15px;
    line-height: 18px;
    font-weight: 400;
}

.event-card__date {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: start;
    gap: 10px;
    margin-bottom: 10px;
}

.event-card__date strong,
.event-card__date span,
.event-card__date em,
.event-card__title,
.event-card__price,
.event-card__price p,
.event-card__price b {
    margin: 0;
    color: var(--black);
    font-style: normal;
    font-weight: 400;
}

.event-card__date strong {
    font-size: 50px;
    line-height: 50px;
}

.event-card__date span {
    font-size: 20px;
    line-height: 22px;
}

.event-card__date em {
    justify-self: end;
    font-size: 28px;
    line-height: 28px;
}

.event-card__price {
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 18px;
}

.event-card__price span {
    display: block;
    margin-bottom: 18px;
}

.event-card__price p + p {
    margin-top: 5px;
}

.event-card__price b {
    font-weight: 400;
}

.event-card__title {
    max-width: 210px;
    font-size: 20px;
    line-height: 22px;
}

.event-card a {
    align-self: flex-end;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding: 4px 8px;
    border: 1px solid var(--black);
    border-radius: 999px;
    color: var(--black);
    font-size: 12px;
    line-height: 14.4px;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

.event-card a:hover,
.event-card a:focus-visible {
    background-color: var(--blue);
    color: var(--white);
}

.step-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 24px;
}

.step-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 650px;
    padding: 50px;
    overflow: clip;
}

.step-card__num {
    position: absolute;
    top: 0;
    right: 0;
    color: currentColor;
    opacity: .3;
    font-size: 250px;
    line-height: .8;
    font-weight: 400;
    pointer-events: none;
}

.step-card h3 {
    position: relative;
    z-index: 1;
    max-width: 640px;
    margin: 0;
    color: currentColor;
    font-size: 45px;
    line-height: 49.5px;
    font-weight: 400;
    text-transform: uppercase;
}

.step-card p {
    position: relative;
    z-index: 1;
    max-width: 640px;
    margin: auto 0 0;
    color: currentColor;
    font-size: var(--text-section-mobile);
    line-height: var(--leading-section-mobile);
    font-weight: 500;
}

.step-card .button {
    position: relative;
    z-index: 1;
    align-self: flex-start;
    margin-top: 22px;
}

.foreign-docs__list.docs--grid-2 {
    grid-template-columns: repeat(2, 492px);
    gap: 12px;
}

.foreign-docs__list.docs .docs-item {
    width: 492px;
    height: 100px;
    min-height: 100px;
    padding: 10px 20px;
}

.foreign-docs__list.docs .docs-h {
    gap: 20px;
}

.foreign-docs__list.docs .docs-title {
    font-size: 14px;
    line-height: 18.2px;
}

.foreign-docs__list.docs .docs-b {
    color: var(--dark, var(--dark));
    font-size: 10px;
    line-height: 11px;
}

@media screen and (max-width: 600px) {
    .foreign-docs__list.docs--grid-2 {
        grid-template-columns: minmax(0, 1fr);
    }

    .foreign-docs__list.docs .docs-item {
        width: 300px;
        height: 100px;
        min-height: 100px;
        padding: 10px 20px;
    }
}

@media screen and (min-width: 601px) and (max-width: 1100px) {
    .foreign-docs__list.docs--grid-2 {
        grid-template-columns: minmax(0, 1fr);
        max-width: 640px;
    }

    .foreign-docs__list.docs .docs-item {
        width: 640px;
        height: 100px;
        min-height: 100px;
        padding: 10px 20px;
    }
}

.docs--compact .docs-h {
    align-items: flex-start;
    gap: 20px;
}

.docs--compact .docs-h img {
    flex: 0 0 24px;
    width: 24px;
    min-width: 24px;
    height: 24px;
    margin-top: 6px;
}

.docs--compact .docs-title {
    display: -webkit-box;
    overflow: hidden;
    font-size: 14px;
    line-height: 18.2px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.docs--compact .docs-b {
    margin-top: auto;
}

.docs--compact-spacious .docs-item {
    padding: 15px 20px;
    gap: 26px;
}

.docs--compact-spacious .docs-h img {
    margin-top: 0;
}

.docs--icon-20 .docs-h {
    gap: 24px;
}

.docs--icon-20 .docs-h img {
    flex-basis: 20px;
    width: 20px;
    min-width: 20px;
    height: 20px;
    margin-top: 0;
}

.docs--icon-16 .docs-h img {
    flex-basis: 16px;
    width: 16px;
    min-width: 24px;
    height: 20px;
    margin-top: 0;
}

.u-flex-column {
    display: flex;
    flex-direction: column;
}

.u-flex-between {
    display: flex;
    justify-content: space-between;
}

.u-icon-title-row {
    display: flex;
    align-items: center;
    gap: 25px;
}

.u-meta-row-between {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.u-surface-grey {
    background-color: var(--grey-light);
}

.u-surface-blue {
    background-color: var(--blue);
}

.u-text-blue {
    color: var(--blue);
}

.u-text-blue-muted {
    color: rgba(33, 47, 138, .4);
}

.header-theme-light header .top {
    background-color: rgba(237, 240, 244, 0.9);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
}

.header-theme-light header .top nav a,
.header-theme-light header .top .h-right .icons a {
    color: var(--grey-dark);
}

.header-theme-light header .menu a {
    color: var(--dark);
}

.header-theme-dark header .top {
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
}

.header-theme-dark header .top nav a,
.header-theme-dark header .top .h-right .icons a {
    color: var(--white);
    opacity: 0.7;
}

.header-theme-dark header .menu a {
    color: var(--white);
}

.header-theme-dark header .menu a:hover,
.header-theme-dark header .menu a.is-active,
.header-theme-dark header .menu a.is-current {
    border-color: currentColor;
}

.header-theme-glass header .top {
    background-color: rgba(237, 240, 244, 0.10);
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter: blur(25px);
}

.header-theme-glass header .top nav a,
.header-theme-glass header .top .h-right .icons a {
    color: var(--white);
    opacity: 1;
}

.header-theme-glass header .menu a {
    color: var(--white);
}

.header-theme-menu-white header .menu a {
    color: var(--white);
}

.header-theme-overlay header .top {
    background-color: rgba(0, 10, 20, .36);
}

.header-theme-veterinary header .top nav a,
.header-theme-veterinary header .top .h-right .icons a {
    color: var(--blue);
    opacity: 1;
}

.header-theme-veterinary header .menu a {
    color: var(--white);
}

.header-theme-veterinary header .menu a:hover {
    border-color: var(--white);
}

.wp-nav-menu,
.wp-nav-menu > li {
    display: contents;
    margin: 0;
    padding: 0;
    list-style: none;
}

header .top .wp-nav-menu a[href*="/library/"] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

header .top .wp-nav-menu a[href*="/library/"]::before {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    background-color: currentColor;
    content: "";
    -webkit-mask: url("img/book_b.svg") center / contain no-repeat;
    mask: url("img/book_b.svg") center / contain no-repeat;
}

header .menu .sub-menu {
    display: none;
}

header .top .h-right .icons button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    background: transparent;
    line-height: 0;
    cursor: pointer;
    opacity: .7;
    transition: opacity .25s ease;
}

header .top .h-right .icons button:hover,
header .top .h-right .icons button:focus-visible {
    opacity: 1;
}

header .top .h-right .icons button img {
    width: 30px;
}

header .top .h-right .icons .site-language-disabled {
    cursor: not-allowed;
}

header .top .h-right .icons {
    position: relative;
}

header .top:has(.site-accessibility-menu:not([hidden])) {
    position: relative;
    z-index: 151;
}

.site-accessibility-menu {
    position: absolute;
    z-index: 150;
    top: calc(100% + 12px);
    right: 0;
    width: 320px;
    padding: 14px;
    box-sizing: border-box;
    border: 1px solid var(--blue-light);
    border-radius: 10px;
    color: var(--dark);
    background: var(--white);
    box-shadow: 0 18px 45px rgba(0, 10, 20, .2);
}

header .top .h-right .icons .site-accessibility-menu button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid transparent;
    border-radius: 7px;
    color: var(--blue);
    background: var(--white);
    font: inherit;
    font-size: 16px;
    line-height: 1.2;
    text-align: left;
    opacity: 1;
}

.site-accessibility-menu__label {
    margin-bottom: 8px;
    color: var(--grey-dark);
    font-size: 14px;
    line-height: 18px;
}

.site-accessibility-menu__sizes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    margin-bottom: 10px;
}

header .top .h-right .icons .site-accessibility-menu__sizes button {
    justify-content: center;
    min-height: 40px;
    padding: 8px;
    border-color: var(--blue-light);
    background: var(--grey-light);
    text-align: center;
}

header .top .h-right .icons .site-accessibility-menu__action,
header .top .h-right .icons .site-accessibility-menu__reset {
    border-top: 1px solid var(--grey-light);
    border-radius: 0;
}

header .top .h-right .icons .site-accessibility-menu__reset {
    color: var(--grey-dark);
}

header .top .h-right .icons .site-accessibility-menu button:hover,
header .top .h-right .icons .site-accessibility-menu button:focus-visible,
header .top .h-right .icons .site-accessibility-menu button[aria-pressed="true"] {
    color: var(--white);
    background: var(--blue);
    outline: 0;
}

header .top .h-right .icons .site-accessibility-menu__action[aria-pressed="true"]::after {
    content: "✓";
    margin-left: 12px;
}

.site-search-panel {
    position: fixed;
    z-index: 110;
    top: 100px;
    left: 50%;
    width: min(1500px, calc(100% - 20px));
    padding: 28px 30px;
    box-sizing: border-box;
    color: var(--dark);
    background: var(--white);
    box-shadow: 0 18px 45px rgba(0, 10, 20, .2);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, -12px);
    transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
}

body.site-search-open .site-search-panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.site-search-form > label {
    display: block;
    margin-bottom: 12px;
    font-size: 18px;
    font-weight: 500;
}

.site-search-form__row {
    display: flex;
    align-items: center;
    gap: 12px;
}

.site-search-form input[type="search"] {
    min-width: 0;
    flex: 1 1 auto;
    height: 54px;
    padding: 0 18px;
    border: 1px solid var(--grey-light);
    border-radius: 0;
    font: inherit;
    color: var(--dark);
    background: var(--white);
}

.site-search-close {
    width: 54px;
    height: 54px;
    padding: 0;
    border: 1px solid var(--grey-light);
    background: var(--white);
    color: var(--blue);
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
}

.site-search-live-results {
    max-height: min(360px, calc(100vh - 280px));
    margin-top: 20px;
    overflow-y: auto;
    border-top: 1px solid var(--grey-light);
}

.site-search-live-results[hidden] {
    display: none;
}

.site-search-live-results__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-search-live-results__list li {
    margin: 0;
    border-bottom: 1px solid var(--grey-light);
}

.site-search-live-results__list a {
    display: block;
    padding: 14px 0;
    color: var(--blue);
    text-decoration: none;
}

.site-search-live-results__list a:hover,
.site-search-live-results__list a:focus-visible {
    text-decoration: underline;
}

.site-search-live-results__state {
    margin: 0;
    padding: 14px 0;
}

.a11y-toolbar {
    display: none !important;
}

html.site-contrast {
    color-scheme: light;
    --white: #FFFFFF;
    --grey-light: #F2F2F2;
    --grey: #3D3D3D;
    --grey-dark: #1A1A1A;
    --grey-dark-alt: #000000;
    --dark: #000000;
    --black: #000000;
    --blue: #001B75;
    --blue-light: #DCE4FF;
    --blue-light-2: #2847C7;
    --blue-grey: #30458F;
    --blue-deep: #06134F;
    --border-muted: #595959;
    --border-neutral: #4A4A4A;
    --border-blue-muted: #334A94;
    --border-control: #333333;
    --surface-hover-soft: #E2E7F2;
    --status-orange: #9A3E00;
    --hero-gradient-start: #001B75;
    --hero-gradient-deep-start: #06134F;
    --hero-gradient-deep-end: #000A33;
}

html.site-contrast body {
    color: var(--black);
    background-color: var(--white);
}

html.site-contrast :is(footer, .site-mobile-menu, .bluebg, .surface-card--blue, .item-blue) {
    background-color: var(--blue-deep);
}

html.site-contrast footer :is(a, .sub, .f-xs),
html.site-contrast .site-mobile-menu__link--sub,
html.site-contrast :is(.bluebg, .surface-card--blue, .item-blue) :is(h1, h2, h3, h4, h5, h6, p, small, .color-blue-light-2) {
    color: var(--white) !important;
    opacity: 1;
}

html.site-contrast :focus-visible {
    outline: 3px solid #FFBF47 !important;
    outline-offset: 3px !important;
}

html.site-text-scale [data-site-text-scaled] {
    max-width: 100%;
    height: auto !important;
    max-height: none !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
}

html.site-text-scale :is(.button, button, input, select, textarea) {
    max-width: 100%;
    height: auto !important;
    min-height: 44px;
    white-space: normal !important;
}

html.site-text-scale header .top,
html.site-text-scale header .menu {
    height: auto;
    min-height: 0;
    flex-wrap: wrap;
}

html.site-text-scale body:not(.footer-legacy) footer,
html.site-text-scale body:not(.footer-legacy) footer .wrapper,
html.site-text-scale body:not(.footer-legacy) footer .wrapper > .items.c-2-m > .item {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

@media screen and (max-width: 1280px) {
    html.site-text-scale body:not(.footer-legacy) footer .wrapper > .items.c-2-m,
    html.site-text-scale body:not(.footer-legacy) footer .items.c-3,
    html.site-text-scale body:not(.footer-legacy) footer .footer-extra {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: none !important;
        gap: 32px !important;
        width: 100% !important;
        height: auto !important;
    }
}

@media screen and (max-width: 700px) {
    header .top .h-right .icons > .site-accessibility-toggle {
        position: fixed;
        z-index: 141;
        top: 18px;
        right: 50px;
        width: 24px;
        height: 24px;
    }

    header .top .h-right .icons > :is(.site-search-toggle, .site-language-disabled) {
        display: none;
    }

    .site-accessibility-menu {
        position: fixed;
        top: 54px;
        right: 10px;
        width: min(320px, calc(100vw - 20px));
        max-height: calc(100vh - 64px);
        overflow-y: auto;
    }

    html.site-text-scale .mainslider,
    html.site-text-scale .mainslider .swiper-slide {
        height: auto !important;
        min-height: 555px;
        aspect-ratio: auto !important;
    }

    html.site-text-scale .mainslider .slide-content {
        position: relative;
        inset: auto;
        flex-direction: column;
        gap: 40px;
        min-height: 555px;
        box-sizing: border-box;
    }

    html.site-text-scale .mainslider .slide-content-l,
    html.site-text-scale .mainslider .slide-content-r {
        width: 100%;
        min-width: 0;
    }

    html.site-text-scale .mainslider .slide-content-l h2 br {
        display: none;
    }
}

body.bvi-active header {
    top: calc(var(--bvi-panel-height, 0px) + 20px) !important;
}

body.bvi-active .site-search-panel {
    top: calc(var(--bvi-panel-height, 0px) + 100px);
}

.site-search-results {
    min-height: 65vh;
    padding: 210px 0 120px;
    color: var(--dark);
    background: var(--white);
}

.site-search-results h1 {
    margin: 20px 0 40px;
}

.site-search-form--page {
    max-width: 900px;
    margin-bottom: 55px;
}

.site-search-results__list {
    border-top: 1px solid var(--grey-light);
}

.site-search-result {
    padding: 28px 0;
    border-bottom: 1px solid var(--grey-light);
}

.site-search-result h2 {
    margin: 0 0 12px;
}

.site-search-result h2 a {
    color: var(--blue);
}

.site-search-results__empty {
    padding: 28px 0;
    border-top: 1px solid var(--grey-light);
}

.library-rinc .wpcf7-form {
    margin: 0;
}

.library-rinc-form .wpcf7-submit {
    align-self: center;
    margin-top: 36px;
    border: 1px solid transparent;
    font: 500 16px/1.2 "Inter Tight", sans-serif;
    cursor: pointer;
}

.library-rinc .wpcf7-spinner {
    align-self: center;
    margin: 0 auto;
}

.library-rinc .wpcf7-response-output {
    width: min(100%, 520px);
    margin: 24px 0 0;
    padding: 14px 16px;
    box-sizing: border-box;
    border-color: var(--blue);
    color: var(--dark);
}

.library-rinc .wpcf7-not-valid-tip {
    margin-top: 6px;
    font-size: 13px;
}

.shop-request-form {
    display: grid;
    gap: 12px;
    text-align: left;
}

.shop-request-form input,
.shop-request-form textarea {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 0;
    font: inherit;
    color: var(--white);
    background: rgba(255, 255, 255, .08);
}

.shop-request-form textarea {
    min-height: 84px;
    resize: vertical;
}

.shop-request-form input::placeholder,
.shop-request-form textarea::placeholder {
    color: rgba(255, 255, 255, .72);
}

.shop-request-form .wpcf7-submit {
    justify-self: center;
    margin-top: 8px;
    cursor: pointer;
}

.shop-request-dialog__panel:has(.shop-request-form) {
    max-height: calc(100vh - 32px);
    overflow: auto;
    text-align: left;
}

.shop-request-dialog__panel:has(.shop-request-form) h2 {
    text-align: center;
}

.shop-request-dialog .wpcf7-response-output {
    margin: 16px 0 0;
    color: var(--white);
    text-align: left;
}

@media (max-width: 1200px) {
    body.bvi-active header {
        top: var(--bvi-panel-height, 0px) !important;
    }
}

@media (max-width: 700px) {
    header .top .icons > .bvi-open {
        display: inline-flex;
    }

    header .top .icons > .site-language-disabled {
        display: none;
    }

    .site-search-panel {
        top: 70px;
        width: calc(100% - 20px);
        padding: 20px 10px;
    }

    .site-search-form__row {
        flex-wrap: wrap;
    }

    .site-search-form input[type="search"] {
        flex-basis: calc(100% - 66px);
    }

    .site-search-form .button {
        order: 3;
        width: 100%;
    }

    .site-search-live-results {
        max-height: min(280px, calc(100vh - 310px));
        margin-top: 16px;
    }

    body.bvi-active .site-search-panel {
        top: calc(var(--bvi-panel-height, 0px) + 70px);
    }

    .site-search-results {
        padding: 140px 0 70px;
    }
}


body.spbguvm-builder-page {
    min-height: 100vh;
    background: var(--white, #fff);
    color: var(--black, #1f2633);
}

.spbguvm-builder-page .spbguvm-builder-content,
.spbguvm-builder-page > :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator) {
    width: min(calc(100% - 100px), 1500px);
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}

.spbguvm-builder-page .spbguvm-builder-content {
    padding-top: clamp(64px, 7vw, 112px);
    padding-bottom: clamp(64px, 7vw, 112px);
}

.spbguvm-builder-page > :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator):not(.spbguvm-builder-content) {
    margin-top: 0;
    margin-bottom: 28px;
}

.spbguvm-builder-page > :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator):first-of-type {
    margin-top: clamp(64px, 7vw, 112px);
}

.spbguvm-builder-page > header + :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator) {
    margin-top: clamp(190px, 15vw, 240px);
}

.spbguvm-builder-page > header + .spbguvm-builder-content {
    padding-top: clamp(190px, 15vw, 240px);
}

.spbguvm-builder-page .spbguvm-builder-content > :first-child {
    margin-top: 0;
}

.spbguvm-builder-page .spbguvm-builder-content > :last-child {
    margin-bottom: 0;
}

.spbguvm-builder-page .spbguvm-builder-content h1,
.spbguvm-builder-page > h1 {
    margin-bottom: 32px;
    color: var(--blue, #263898);
    font-size: clamp(40px, 4.5vw, 72px);
    line-height: 1.02;
    font-weight: 500;
}

.spbguvm-builder-page .spbguvm-builder-content h2 {
    margin-top: 56px;
    margin-bottom: 24px;
    color: var(--blue, #263898);
    font-size: clamp(30px, 3vw, 48px);
    line-height: 1.08;
    font-weight: 500;
}

.spbguvm-builder-page .spbguvm-builder-content :where(h3, h4, h5, h6) {
    margin-top: 40px;
    margin-bottom: 18px;
    color: var(--blue, #263898);
    line-height: 1.15;
}

.spbguvm-builder-page .spbguvm-builder-content :where(p, li, blockquote, figcaption) {
    font-size: clamp(17px, 1.35vw, 21px);
    line-height: 1.5;
}

.spbguvm-builder-page .spbguvm-builder-content :where(p, ul, ol, blockquote, figure, table, .wp-block-buttons, .wp-block-columns) {
    margin-top: 0;
    margin-bottom: 28px;
}

.spbguvm-builder-page .spbguvm-builder-content :where(ul, ol) {
    padding-left: 1.4em;
}

.spbguvm-builder-page .spbguvm-builder-content ul {
    list-style: disc;
}

.spbguvm-builder-page .spbguvm-builder-content ol {
    list-style: decimal;
}

.spbguvm-builder-page .spbguvm-builder-content a:not(.wp-block-button__link) {
    color: var(--blue, #263898);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.spbguvm-builder-page .wp-block-button__link {
    border-radius: 999px;
    background: var(--blue, #263898);
    color: #fff;
    transition: background-color 180ms ease, color 180ms ease;
}

.spbguvm-builder-page .wp-block-button__link:hover,
.spbguvm-builder-page .wp-block-button__link:focus-visible {
    background: var(--blue-light, #727bf8);
}

.spbguvm-builder-page .wp-block-table {
    overflow-x: auto;
}

.spbguvm-builder-page .wp-block-table table {
    width: 100%;
    border-collapse: collapse;
}

.spbguvm-builder-page .wp-block-table :where(th, td) {
    padding: 14px 16px;
    border: 1px solid var(--grey, #c8ccd5);
    text-align: left;
}

.spbguvm-builder-page > footer {
    margin-top: 0;
}

@media (max-width: 700px) {
    .spbguvm-builder-page .spbguvm-builder-content,
    .spbguvm-builder-page > :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator) {
        width: calc(100% - 32px);
    }

    .spbguvm-builder-page .spbguvm-builder-content {
        padding-top: 48px;
        padding-bottom: 64px;
    }

    .spbguvm-builder-page > header + .spbguvm-builder-content {
        padding-top: 112px;
    }

    .spbguvm-builder-page > :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator):first-of-type {
        margin-top: 48px;
    }

    .spbguvm-builder-page > header + :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-table, .wp-block-separator) {
        margin-top: 112px;
    }

    .spbguvm-builder-page .spbguvm-builder-content h1,
    .spbguvm-builder-page > h1 {
        margin-bottom: 24px;
        font-size: clamp(34px, 11vw, 48px);
    }

    .spbguvm-builder-page .spbguvm-builder-content h2 {
        margin-top: 40px;
        font-size: 30px;
    }

    .spbguvm-builder-page .spbguvm-builder-content :where(p, li, blockquote, figcaption) {
        font-size: 17px;
    }
}

body .bvi-body.bvi-body[data-bvi-images="false"]:not(.bvi-no-styles)
    .bvi-background-image.bvi-background-image:not(img):not(svg):not(video):not(iframe):not(.bvi-no-styles) {
    display: revert !important;
    height: auto !important;
    min-height: 0 !important;
    padding-top: 1em !important;
    padding-bottom: 1em !important;
    background-image: none !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) main :where(section, article, div, dl, ul, ol, li) {
    min-width: 0 !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) main
    :where(h1, h2, h3, h4, h5, h6, p, a, button, label, dt, dd, address) {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) main :where(.button, button) {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles)
    :where(header, main, footer)
    :where(section, article, nav, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, p, span, strong, b, bdi, em, ins, del, small, address, label, time, figcaption),
body .bvi-body.bvi-body:not(.bvi-no-styles)
    :where(header, main, footer) a:not(.button) {
    background-color: transparent !important;
}

body .bvi-body.bvi-body[data-bvi-lineheight="normal"]:not(.bvi-no-styles) *:not(.bvi-no-styles) {
    line-height: 1.5 !important;
}

body .bvi-body.bvi-body[data-bvi-lineheight="average"]:not(.bvi-no-styles) *:not(.bvi-no-styles) {
    line-height: 2 !important;
}

body .bvi-body.bvi-body[data-bvi-lineheight="big"]:not(.bvi-no-styles) *:not(.bvi-no-styles) {
    line-height: 2.5 !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) :where(header, main, footer)
    :where(h1, h2, h3, h4, h5, h6, p, a, button, label, dt, dd, address, li, span, small, time, figcaption, .docs-title, .prep-hero__label, .volunteer-director__role, .library-person-card__role) {
    max-width: 100% !important;
    max-height: none !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) :where(main, footer)
    :where(h1, h2, h3, h4, h5, h6, p, a, button, label, dt, dd, address, li, time, figcaption, .docs-title, .prep-hero__label, .volunteer-director__role, .library-person-card__role) {
    height: auto !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) main :where(button, .button) {
    width: auto !important;
    min-width: 0 !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) main .docs-title {
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

body .bvi-body.bvi-body[data-bvi-images="false"]:not(.bvi-no-styles) img:not(.bvi-no-styles) {
    display: none !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) .programs-hero__title {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    max-width: 1px !important;
    max-height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles)
    :where(.higher-class-card__button, .veterinary-center-specialist__button) {
    height: auto !important;
    min-height: 1.5em !important;
    max-height: none !important;
    padding-top: .25em !important;
    padding-bottom: .25em !important;
}

body .bvi-body.bvi-body:not(.bvi-no-styles) :where(.sub, .copyright) {
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
}

body.bvi-active main .applicants-tile-grid,
body.bvi-active main .graduated-vacancies__track,
body.bvi-active main .library-people {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    gap: 1em !important;
    padding-right: 0 !important;
    overflow: visible !important;
}

body.bvi-active main .applicants-tile-grid .applicants-tile {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
}

body.bvi-active main .graduated-vacancies__viewport {
    width: 100% !important;
    margin-right: 0 !important;
    overflow: visible !important;
}

body.bvi-active main :where(.graduated-vacancy-card, .library-person-card) {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    flex: none !important;
    overflow: visible !important;
}

body.bvi-active main .library-person-card__content {
    height: auto !important;
}

body.bvi-active header {
    position: relative;
    top: auto !important;
    left: auto;
    width: 100%;
    max-width: none;
    margin-top: var(--bvi-panel-height, 0px);
    transform: none;
}

body.bvi-active header.scrolled {
    top: auto !important;
}

body.bvi-active header .top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 24px;
    height: auto;
    min-height: 80px;
}

body.bvi-active header .top .logo-link {
    position: static;
    grid-column: 2;
    transform: none;
}

body.bvi-active header .top nav,
body.bvi-active header .top .h-right,
body.bvi-active header .top .h-right .icons,
body.bvi-active header .menu {
    min-width: 0;
    flex-wrap: wrap;
}

body.bvi-active header .top .h-right {
    justify-self: end;
}

body.bvi-active header.scrolled .menu {
    opacity: 1;
    transform: none;
}

body.bvi-active footer,
body.bvi-active footer .wrapper {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

body.bvi-active footer .wrapper > .items.c-2-m,
body.bvi-active footer .wrapper > .items.c-2-m > .item,
body.bvi-active footer .items.c-3,
body.bvi-active footer .footer-contact,
body.bvi-active footer .footer-extra {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

body.bvi-active footer nav,
body.bvi-active footer .footer-contact,
body.bvi-active footer .footer-service-links {
    gap: 1em;
}

body.bvi-active footer .footer-contact .f-xs {
    margin-bottom: 0;
}

body.bvi-active footer .wrapper {
    padding-bottom: 50px;
}

@media (max-width: 1200px) {
    body.bvi-active header {
        width: 100%;
        margin-top: var(--bvi-panel-height, 0px);
    }

    body.bvi-active header .top {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    body.bvi-active header .top .logo-link {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    body.bvi-active header .top .h-right {
        grid-column: 2;
        grid-row: 1;
    }

    body.bvi-active footer .wrapper > .items.c-2-m {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: none !important;
        gap: 48px !important;
        width: 100% !important;
        height: auto !important;
    }

    body.bvi-active footer .wrapper > .items.c-2-m > .item,
    body.bvi-active footer .wrapper > .items.c-2-m > .item:first-child,
    body.bvi-active footer .wrapper > .items.c-2-m > .item:nth-child(2) {
        display: block !important;
        height: auto !important;
        overflow: visible !important;
    }

    body.bvi-active footer .items.c-3,
    body.bvi-active footer .footer-extra {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: none !important;
        gap: 48px !important;
        width: 100% !important;
        margin-top: 48px !important;
    }

    body.bvi-active footer :where(.logo, .ministry, .copyright, .footer-service-links, .footer-design),
    body.bvi-active footer .items.c-3 > .item {
        grid-column: auto !important;
        grid-row: auto !important;
        width: auto !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        margin-top: 0 !important;
    }

    body.bvi-active footer .ministry,
    body.bvi-active footer nav,
    body.bvi-active footer .footer-contact,
    body.bvi-active footer .footer-service-links {
        position: static !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: none !important;
        gap: 1em !important;
        width: 100% !important;
        height: auto !important;
        overflow: visible !important;
    }

    body.bvi-active footer .ministry > * {
        grid-column: auto !important;
        grid-row: auto !important;
        width: auto !important;
        max-width: none !important;
    }

    body.bvi-active footer .copyright {
        position: static !important;
        margin-top: 2em !important;
    }

    body.bvi-active main :where(.applicants-tab-layout, .applicants-places__levels, .info-table__row),
    body.bvi-active main :where(.dormitories-contacts__grid, .dormitories-contacts__cards) {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: none !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
    }

    body.bvi-active main .applicants-tab-nav {
        flex-direction: column !important;
        width: 100% !important;
        overflow: visible !important;
    }

    body.bvi-active main .applicants-tab-nav button {
        min-width: 0 !important;
    }

    body.bvi-active main :where(.applicants-places__row, .dissertation-councils-table .info-table__row) {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: none !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        gap: 1em !important;
    }

    body.bvi-active main :where(.applicants-places__row, .info-table__row) > * {
        grid-column: auto !important;
        grid-row: auto !important;
        width: auto !important;
        min-width: 0 !important;
    }

    body.bvi-active main .dormitories-contacts .contact-card {
        width: 100% !important;
        min-height: 0 !important;
    }

    body.bvi-active main .dormitories-contacts__cards {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        overflow: visible !important;
    }

    body.bvi-active main .dissertation-councils-members__track {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        height: auto !important;
        overflow: visible !important;
        transform: none !important;
    }

    body.bvi-active main .dissertation-person-slide {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }
}

.items {
    display: flex;
    flex-direction: row;
    gap: 30px;
    flex-wrap: wrap;
    width: 100%;
}

.items .item {
    box-sizing: border-box;
}

.items.c-2-3 .item {
    width: calc((100% - (2 - 1) * 30px) / 2);
}

.items.c-2-3 .item:nth-child(5n+3),
.items.c-2-3 .item:nth-child(5n+4),
.items.c-2-3 .item:nth-child(5n+5) {
    width: calc((100% - (3 - 1) * 30px) / 3);
}

.items.c-2 .item,
.items.c-3-2 .item:nth-child(n+4):nth-child(-n+5),
.items.c-3-2 .item:nth-child(n+9):nth-child(-n+10) {
    width: calc((100% - (2 - 1) * 30px) / 2);
}

.items.c-3 .item,
.items.c-3-2 .item {
    width: calc((100% - (3 - 1) * 30px) / 3);
}

.items.c-4 .item {
    width: calc((100% - (4 - 1) * 30px) / 4);
}

.items.c-5 .item {
    width: calc((100% - (5 - 1) * 30px) / 5);
}

.items.c-6 .item {
    width: calc((100% - (6 - 1) * 30px) / 6);
}

.items.c-2-m > .item:first-child {
    flex: 1;
}

.items.c-2-m > .item:nth-child(2) {
    flex: 2;
}

.items.c-3-alt .item:first-child {
    flex: 3;
}

.items.c-3-alt .item {
    flex: 1;
}

.items.grid .item {
    color: #FFF;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 30px;
    aspect-ratio: 1 / 1;
    background-color: var(--blue);
    position: relative;
}

.items.grid .item-3 {
    background-color: var(--blue-light);
    color: var(--blue);
}

.items.grid .item .button {
    align-self: flex-end;
}

.items.grid .item img,
.items.grid-1 .item > img:not(.button-icon) {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    opacity: 0.4;
}

.items.grid .item h4,
.items.grid .item .item-date,
.items.grid-1 .item h4,
.items.grid-1 .item svg {
    position: relative;
    z-index: 2;
}

.nav-card {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    overflow: hidden;
    text-decoration: none;
    transition: color .4s ease .1s, border-color .4s ease;
}

[data-js-main-news-tab] {
    cursor: pointer;
}

.nav-card span {
    position: relative;
    z-index: 2;
}

.nav-card > img.button-icon {
    position: relative;
    z-index: 2;
    width: 33px;
    max-width: 33px;
    height: 22px;
    flex: 0 0 33px;
    object-fit: contain;
}

.nav-card--grey > img.button-icon,
.nav-card--white > img.button-icon,
.nav-card--white-bordered > img.button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.nav-card--blue.nav-card--slide:hover > img.button-icon,
.nav-card--blue.nav-card--slide:focus-visible > img.button-icon,
.nav-card--blue-dark.nav-card--slide:hover > img.button-icon,
.nav-card--blue-dark.nav-card--slide:focus-visible > img.button-icon,
.nav-card--violet.nav-card--slide:hover > img.button-icon,
.nav-card--violet.nav-card--slide:focus-visible > img.button-icon,
.nav-card--image.nav-card--slide:hover > img.button-icon,
.nav-card--image.nav-card--slide:focus-visible > img.button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.nav-card--grey.nav-card--slide:hover > img.button-icon,
.nav-card--grey.nav-card--slide:focus-visible > img.button-icon,
.nav-card--white.nav-card--slide:hover > img.button-icon,
.nav-card--white.nav-card--slide:focus-visible > img.button-icon,
.nav-card--white-bordered.nav-card--slide:hover > img.button-icon,
.nav-card--white-bordered.nav-card--slide:focus-visible > img.button-icon {
    filter: none;
}

.nav-card--slide::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition: left .5s cubic-bezier(.4, 0, .2, 1);
}

.nav-card--slide:hover::after,
.nav-card--slide:focus-visible::after {
    left: 0;
}

.nav-card--image {
    color: var(--white);
}

.nav-card--image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 10, 20, .48);
}

.nav-card--blue {
    color: #CED4F5;
    background-color: var(--blue);
}

.nav-card--blue-dark {
    color: #FDFDFE;
    background-color: #243191;
}

.nav-card--violet {
    color: var(--white);
    background-color: var(--blue-light-2);
}

.nav-card--grey {
    color: var(--blue);
    background-color: var(--grey-light);
}

.nav-card--white,
.nav-card--white-bordered {
    color: var(--blue);
    background-color: var(--white);
}

.nav-card--white-bordered {
    border: 1px solid rgba(33, 47, 138, .35);
}

.nav-card--blue.nav-card--slide::after,
.nav-card--blue-dark.nav-card--slide::after,
.nav-card--image.nav-card--slide::after {
    background-color: var(--white);
}

.nav-card--violet.nav-card--slide::after {
    background-color: var(--grey-light);
}

.nav-card--grey.nav-card--slide::after,
.nav-card--white.nav-card--slide::after,
.nav-card--white-bordered.nav-card--slide::after {
    background-color: var(--blue);
}

.nav-card--blue.nav-card--slide:hover,
.nav-card--blue.nav-card--slide:focus-visible,
.nav-card--blue-dark.nav-card--slide:hover,
.nav-card--blue-dark.nav-card--slide:focus-visible,
.nav-card--violet.nav-card--slide:hover,
.nav-card--violet.nav-card--slide:focus-visible,
.nav-card--image.nav-card--slide:hover,
.nav-card--image.nav-card--slide:focus-visible {
    color: var(--blue);
}

.nav-card--grey.nav-card--slide:hover,
.nav-card--grey.nav-card--slide:focus-visible,
.nav-card--white.nav-card--slide:hover,
.nav-card--white.nav-card--slide:focus-visible,
.nav-card--white-bordered.nav-card--slide:hover,
.nav-card--white-bordered.nav-card--slide:focus-visible {
    color: var(--white);
}

.nav-card--white-bordered.nav-card--slide:hover,
.nav-card--white-bordered.nav-card--slide:focus-visible {
    border-color: var(--blue);
}

.items.grid-1 .item {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    padding: 30px;
    aspect-ratio: 2 / 1;
    gap: 20px;
    position: relative;
    overflow: hidden;
    z-index: 1;
    transition: color .4s ease .1s;
}

.items.grid-1 a.item {
    text-decoration: none;
    cursor: pointer;
}

.items.grid-1 a.item:focus-visible {
    outline: 2px solid var(--blue-light-2);
    outline-offset: 4px;
}

.items.grid-1 .item .button-icon {
    width: 33px;
    max-width: 33px;
    height: 22px;
    flex: 0 0 33px;
    object-fit: contain;
    transition: filter .4s ease .1s;
}

.items.grid-1 .item > img.button-icon {
    display: block;
}

.items.grid-1 .item:has(> img.button-icon)::after {
    content: none;
}

.items.grid-1 .item h4,
.items.grid-1 .item h3 {
    width: 100%;
}

.items.grid-1 .item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    z-index: -1;
    transition: left .5s cubic-bezier(.4, 0, .2, 1);
}

.items.grid-1 .item:hover::before,
.items.grid-1 .item:focus-visible::before {
    left: 0;
}

.items.grid-1 .item-default {
    background-color: var(--blue-light-2);
    color: var(--white);
}

.items.grid-1 .item-default .button-icon {
    filter: none;
}

.items.grid-1 .item-default::before {
    background-color: var(--grey-light);
}

.items.grid-1 .item-default:hover,
.items.grid-1 .item-default:focus-visible {
    color: var(--blue);
}

.items.grid-1 .item-default:hover .button-icon,
.items.grid-1 .item-default:focus-visible .button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.items.grid-1 .item-gray {
    background-color: var(--grey-light);
    color: var(--blue);
}

.items.grid-1 .item-gray .button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.items.grid-1 .item-gray::before {
    background-color: var(--blue);
}

.items.grid-1 .item-gray:hover,
.items.grid-1 .item-gray:focus-visible {
    color: var(--white);
}

.items.grid-1 .item-gray:hover .button-icon,
.items.grid-1 .item-gray:focus-visible .button-icon {
    filter: none;
}

.items.grid-1 .item-white-bordered {
    border: 1px solid var(--grey);
    background-color: var(--white);
    color: var(--blue);
}

.items.grid-1 .item-white-bordered .button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.items.grid-1 .item-white-bordered::before {
    background-color: var(--blue);
}

.items.grid-1 .item-white-bordered:hover,
.items.grid-1 .item-white-bordered:focus-visible {
    color: var(--white);
}

.items.grid-1 .item-white-bordered:hover .button-icon,
.items.grid-1 .item-white-bordered:focus-visible .button-icon {
    filter: none;
}

.items.grid-1 .item-blue {
    background-color: var(--blue);
    color: var(--blue-light);
}

.items.grid-1 .item-blue .button-icon {
    filter: none;
}

.items.grid-1 .item-blue::before {
    background-color: var(--grey-light);
}

.items.grid-1 .item-blue:hover,
.items.grid-1 .item-blue:focus-visible {
    color: var(--blue);
}

.items.grid-1 .item-blue:hover .button-icon,
.items.grid-1 .item-blue:focus-visible .button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.items.grid-1 .item-img {
    background-color: #000;
    color: var(--white);
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.items.grid-1 .item-img .button-icon {
    filter: none;
}

.items.grid-1 .item-img::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: var(--white);
    z-index: 0;
    transition: left .5s cubic-bezier(.4, 0, .2, 1);
}

.items.grid-1 .item-img:hover,
.items.grid-1 .item-img:focus-visible {
    color: var(--blue);
}

.items.grid-1 .item-img:hover .button-icon,
.items.grid-1 .item-img:focus-visible .button-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(49%) saturate(1693%) hue-rotate(221deg) brightness(83%) contrast(91%);
}

.items.grid-1 .item-img:hover::before,
.items.grid-1 .item-img:focus-visible::before {
    left: 0;
}

.items.grid-1 .item-img > img:not(.button-icon) {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    opacity: .6;
    z-index: -1;
}

.surface-card {
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    text-decoration: none;
}

.surface-card--stack {
    display: flex;
    flex-direction: column;
}

.surface-card--blue {
    color: #EDF0F4;
    background-color: var(--blue);
}

.surface-card--deep {
    color: var(--white);
    background-color: var(--blue-deep);
}

.surface-card--blue-grey {
    color: var(--white);
    background-color: var(--blue-grey);
}

.surface-card--grey {
    color: var(--blue);
    background-color: var(--grey-light);
}

.surface-card--violet {
    color: var(--white);
    background-color: var(--blue-light-2);
}

.surface-card--white {
    color: var(--blue);
    background-color: var(--white);
}

.surface-card--white-bordered {
    color: var(--blue);
    background-color: var(--white);
    border: 1px solid rgba(33, 47, 138, .2);
}

.surface-card--glass {
    background: rgba(253, 253, 254, .14);
    border: 1px solid rgba(253, 253, 254, .15);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.inline-file-link {
    display: flex;
    align-items: center;
    gap: 20px;
    box-sizing: border-box;
    min-height: 44px;
    padding: 0 20px;
    background-color: var(--white);
    color: var(--dark);
    font-size: 14px;
    line-height: 18.2px;
    font-weight: 500;
    transition: background-color .24s ease, color .24s ease;
}

.inline-file-link + .inline-file-link {
    margin-top: 12px;
}

.inline-file-link img {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
}

.inline-file-link:hover,
.inline-file-link:focus-visible {
    background-color: var(--surface-hover-soft);
    color: var(--blue);
}

.items.grid-2 .item {
    color: var(--dark);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    padding: 30px;
    aspect-ratio: 1 / 1.5;
    gap: 60px;
    border: 1px solid var(--blue-light);
    background-color: #FFF;
}

.items.grid-2 .grid-2-t {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.items.grid-2 .item .data-time {
    flex-wrap: wrap;
    justify-content: space-between;
}

.items.grid-2 .item .data-time .data-time-d {
    width: 100%;
    color: var(--grey);
}

.data-time {
    display: flex;
    position: relative;
    gap: 30px;
    align-items: center;
}

.data-time-n {
    display: flex;
    align-items: center;
    gap: 10px;
}

.data-time-n span {
   font-size: 2.8125rem;
   line-height: 1;
}

.grid-vid .grid-vid-preview {
    position: relative;
    aspect-ratio: 1.5/1;
    background-color: var(--black);
    margin-bottom: 30px;
}

.grid-vid img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    opacity: 0.8;
}

.grid-vid-b {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

.grid-vid-title {
    width: 100%;
}

.grid-vid-title h4 {
    margin-bottom: 10px;
}

.grid-vid-title .item-date {
    color: var(--blue-light);
}

.grid-vid-preview .play {
    width: 80px;
    height: 80px;
    background-image: url(img/play.svg);
    background-size: cover;
    position: absolute;
    left: 60px;
    bottom: 60px;
}

.programs-hero__tabs {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 50px;
}

.programs-hero__tabs h1,
.programs-hero__tabs a {
    margin: 0;
    color: rgba(253, 253, 254, .32);
    font-size: 45px;
    line-height: 49.5px;
    font-weight: 400;
    text-transform: uppercase;
}

.programs-hero__tabs h1,
.programs-hero__tabs a.is-active,
.programs-hero__tabs a[aria-selected="true"],
.programs-hero__tabs a:hover,
.programs-hero__tabs a:focus-visible {
    color: var(--white);
}

.programs-documents__list {
    border-top: 1px solid rgba(33, 47, 138, .14);
}

.programs-documents__item {
    border-bottom: 1px solid rgba(33, 47, 138, .14);
}

.programs-documents__summary {
    position: relative;
    width: 100%;
    min-height: 94px;
    padding: 20px 64px 20px 0;
    border: 0;
    background: transparent;
    display: grid;
    grid-template-columns: 468px minmax(0, 664px);
    gap: 24px;
    color: var(--dark);
    text-align: left;
    cursor: pointer;
}

.programs-documents__summary:hover .programs-documents__title,
.programs-documents__summary:focus-visible .programs-documents__title {
    color: var(--blue);
}

.programs-documents__title {
    font-family: "Inter Tight", sans-serif;
    color: var(--dark);
    font-size: var(--text-section-mobile);
    line-height: var(--leading-section-mobile);
    font-weight: 400;
    transition: color .24s ease;
}

.programs-documents__desc {
    max-width: 320px;
    font-family: "Inter Tight", sans-serif;
    color: var(--grey-dark);
    font-size: 16px;
    line-height: 19.2px;
    font-weight: 400;
}

.programs-documents__plus {
    position: absolute;
    top: 22px;
    right: 0;
    width: 34px;
    height: 34px;
}

.programs-documents__plus::before,
.programs-documents__plus::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 8px;
    right: 8px;
    height: 1px;
    background-color: var(--dark);
    transform: translateY(-50%);
}

.programs-documents__plus::after {
    transform: translateY(-50%) rotate(90deg);
}

.programs-documents__summary[aria-expanded="true"] .programs-documents__plus::after {
    transform: translateY(-50%) rotate(0deg);
}

.programs-documents__panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
    max-width: 664px;
    height: 0;
    margin-left: 492px;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: height .36s cubic-bezier(.22, .61, .36, 1), opacity .22s ease, visibility 0s linear .36s;
}

.programs-documents__item.is-open .programs-documents__panel {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s;
}

.programs-documents__panel[hidden] {
    display: none;
}

.programs-documents__panel .inline-file-link {
    background-color: #EDF0F4;
}

.programs-documents__panel .inline-file-link + .inline-file-link {
    margin-top: 0;
}

.programs-documents__panel .inline-file-link:first-child {
    margin-top: 24px;
}

.programs-documents__panel .inline-file-link:last-child {
    margin-bottom: 30px;
}

.prep-tabs-section {
    margin-bottom: 0;
    padding: 80px 0 0;
    background-color: var(--white);
}

.prep-tabs {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
    min-height: 68px;
    border-top: 0;
}

.prep-tabs::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 6px;
    background-color: rgba(114, 126, 196, .15);
    pointer-events: none;
}

.prep-tabs a {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 68px;
    padding: 16px 0;
    border: 0;
    color: rgba(114, 126, 196, .6);
    font-size: var(--text-section-mobile);
    line-height: var(--leading-section-mobile);
    font-weight: 400;
    transition: color .24s ease, border-color .24s ease;
}

.prep-tabs a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 6px;
    background-color: transparent;
}

.prep-tabs a.is-active,
.prep-tabs a[aria-selected="true"],
.prep-tabs a:hover,
.prep-tabs a:focus-visible {
    color: #212F8A;
}

.prep-tabs a.is-active::after,
.prep-tabs a[aria-selected="true"]::after,
.prep-tabs a:hover::after,
.prep-tabs a:focus-visible::after {
    background-color: #212F8A;
}

.entrance-page .prep-tabs {
    position: relative;
    gap: 20px;
    border-top: 0;
}

.entrance-page .prep-tabs::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 6px;
    background-color: rgba(114, 126, 196, .15);
    pointer-events: none;
}

.entrance-page .prep-tabs a {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    padding: 20px 0;
    border-top: 0;
    color: rgba(51, 60, 67, .6);
}

.entrance-page .prep-tabs a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 6px;
    background-color: transparent;
}

.entrance-page .prep-tabs a.is-active,
.entrance-page .prep-tabs a[aria-selected="true"] {
    color: #212F8A;
}

.entrance-page .prep-tabs a.is-active::after,
.entrance-page .prep-tabs a[aria-selected="true"]::after,
.entrance-page .prep-tabs a:hover::after,
.entrance-page .prep-tabs a:focus-visible::after {
    background-color: #212F8A;
}

.prep-panel {
    padding-top: 20px;
}

.prep-panel[hidden] {
    display: none;
}

.faq-list-section {
    padding: 120px 0;
}

.faq-list {
    border-top: 1px solid var(--border-neutral);
}

.faq-list__item {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(260px, 468px) minmax(0, 1fr);
    column-gap: 24px;
    min-height: 114px;
    padding: 39px 0;
    border-bottom: 1px solid var(--border-neutral);
    transition: min-height .32s ease, padding .32s ease;
    cursor: pointer;
}

.faq-list__item.is-open {
    min-height: 136px;
}

.faq-list__meta {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding-left: 49px;
}

.faq-list__meta::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 12px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--blue);
    transition: transform .24s ease, background-color .24s ease;
}

.faq-list__link {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    color: var(--blue);
    font-size: 16px;
    line-height: 20.8px;
    text-decoration: none;
    transition: color .24s ease, transform .24s ease;
    cursor: pointer;
}

.faq-page .faq-list__link {
    display: none;
}

.faq-list__link:hover,
.faq-list__link:focus-visible {
    color: var(--blue-light-2);
}

span.faq-list__link {
    cursor: default;
}

span.faq-list__link:hover {
    color: var(--blue);
}

.faq-list__item:hover .faq-list__meta::before,
.faq-list__item:focus-within .faq-list__meta::before {
    transform: scale(.72);
    background-color: var(--blue-light-2);
}

.faq-list__content {
    min-width: 0;
}

.faq-list__question {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px;
    gap: 24px;
    align-items: start;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--black);
    font-family: inherit;
    font-size: var(--text-section-mobile);
    line-height: var(--leading-section-mobile);
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    pointer-events: auto;
}

.faq-list__question span:first-child {
    min-width: 0;
}

.faq-list__question:hover,
.faq-list__question:focus-visible {
    color: var(--blue);
}

.faq-list__item.is-open .faq-list__question {
    color: var(--blue);
}

.faq-list__plus {
    position: relative;
    display: block;
    width: 34px;
    height: 34px;
    border-radius: 50%;
}

.faq-list__plus::before,
.faq-list__plus::after {
    content: "";
    position: absolute;
    top: 16px;
    left: 4px;
    width: 25px;
    height: 2px;
    border-radius: 2px;
    background-color: currentColor;
    transition: transform .32s cubic-bezier(.22, .61, .36, 1), background-color .24s ease;
}

.faq-list__plus::after {
    transform: rotate(90deg);
}

.faq-list__item.is-open .faq-list__plus::before {
    transform: rotate(45deg);
}

.faq-list__item.is-open .faq-list__plus::after {
    transform: rotate(135deg);
}

.faq-list__answer {
    max-width: 664px;
    height: 0;
    overflow: hidden;
    opacity: 0;
    color: var(--black);
    font-size: 16px;
    line-height: 20.8px;
    transition: height .36s cubic-bezier(.22, .61, .36, 1), opacity .22s ease, margin-top .36s cubic-bezier(.22, .61, .36, 1);
}

.faq-list__item.is-open .faq-list__answer {
    margin-top: 60px;
    opacity: 1;
}

.faq-list__item:hover .faq-list__question,
.faq-list__item:focus-within .faq-list__question {
    color: var(--blue);
}

.faq-list__answer p,
.faq-list__answer ul {
    margin: 0;
}

.faq-list__answer p + p,
.faq-list__answer p + ul,
.faq-list__answer ul + p {
    margin-top: 14px;
}

.faq-list__answer ul {
    padding-left: 18px;
    list-style: disc;
}

.faq-list__answer li + li {
    margin-top: 4px;
}

.faq-list__answer a {
    color: var(--blue);
}

.faq-page .faq-list__item {
    transition: min-height .3s ease-out, padding .3s ease-out, background-color .3s ease-out;
}

.faq-page .faq-list__item:not(.is-open):hover,
.faq-page .faq-list__item:not(.is-open):focus-within {
    background-color: var(--blue-light);
    transition-duration: .1s;
}

.faq-page .faq-list__question {
    transition: color .3s ease-out;
}

.faq-page .faq-list__answer {
    transition: height .3s ease-out, opacity .3s ease-out, margin-top .3s ease-out, color .3s ease-out;
}

.faq-page .faq-list__plus::before,
.faq-page .faq-list__plus::after {
    transition: transform .3s ease-out, background-color .3s ease-out;
}

.faq-page .faq-list__meta::before {
    transition: transform .3s ease-out, background-color .3s ease-out;
}

.faq-page .faq-list__item:not(.is-open):hover .faq-list__question,
.faq-page .faq-list__item:not(.is-open):focus-within .faq-list__question,
.faq-page .faq-list__item:not(.is-open):hover .faq-list__meta::before,
.faq-page .faq-list__item:not(.is-open):focus-within .faq-list__meta::before,
.faq-page .faq-list__item:not(.is-open):hover .faq-list__plus::before,
.faq-page .faq-list__item:not(.is-open):hover .faq-list__plus::after,
.faq-page .faq-list__item:not(.is-open):focus-within .faq-list__plus::before,
.faq-page .faq-list__item:not(.is-open):focus-within .faq-list__plus::after {
    transition-duration: .1s;
}

.faq-page .faq-list__item:not(.is-open):hover .faq-list__question,
.faq-page .faq-list__item:not(.is-open):focus-within .faq-list__question {
    color: var(--black);
}

.faq-page .faq-list__item:not(.is-open):hover .faq-list__meta::before,
.faq-page .faq-list__item:not(.is-open):focus-within .faq-list__meta::before {
    transform: none;
    background-color: var(--blue);
}

.faq-page .faq-list__item.is-open {
    background-color: var(--blue);
}

.faq-page .faq-list__item.is-open .faq-list__question,
.faq-page .faq-list__item.is-open:hover .faq-list__question,
.faq-page .faq-list__item.is-open:focus-within .faq-list__question,
.faq-page .faq-list__item.is-open .faq-list__answer {
    color: var(--white);
}

.faq-page .faq-list__item.is-open .faq-list__meta::before {
    transform: none;
    background-color: var(--blue-light-2);
}

.filter-select,
.structure-departments__filter {
    position: relative;
    width: min(320px, 100%);
    margin-bottom: 30px;
    z-index: 3;
}

.filter-select.news-filter {
    width: 100%;
}

.filter-select .structure-departments__filter-trigger,
.structure-departments__filter-trigger {
    width: 100%;
    min-height: 48px;
    padding: 8px 14px 8px 12px;
    border: 1px solid var(--border-control);
    border-radius: 24px;
    background-color: var(--white);
    color: var(--black);
    font-size: 16px;
    line-height: 19.2px;
    font-family: inherit;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 14px;
    cursor: pointer;
}

.filter-select .structure-departments__filter-trigger:focus-visible,
.filter-select .structure-departments__filter-menu button:focus-visible,
.structure-departments__filter-trigger:focus-visible,
.structure-departments__filter-menu button:focus-visible {
    outline: 2px solid var(--blue);
    outline-offset: 2px;
}

.filter-select .structure-departments__filter-icon,
.structure-departments__filter-icon {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.filter-select .structure-departments__filter-icon img,
.structure-departments__filter-icon img {
    width: 18px;
    height: 18px;
    display: block;
}

.filter-select .structure-departments__filter-arrow,
.structure-departments__filter-arrow {
    width: 11px;
    height: 7px;
    margin-left: auto;
    display: block;
    transition: transform .2s ease;
}

.filter-select.is-open .structure-departments__filter-arrow,
.structure-departments__filter.is-open .structure-departments__filter-arrow {
    transform: rotate(180deg);
}

.filter-select .structure-departments__filter-menu,
.structure-departments__filter-menu {
    position: absolute;
    left: 0;
    top: calc(100% + 8px);
    width: 100%;
    max-height: 360px;
    overflow: auto;
    padding: 8px 0;
    border: 1px solid #d7dbe1;
    border-radius: 18px;
    background-color: var(--white);
    box-shadow: 0 18px 42px rgba(33, 47, 138, .14);
    box-sizing: border-box;
    z-index: 5;
}

.filter-select .structure-departments__filter-menu button,
.structure-departments__filter-menu button {
    width: 100%;
    padding: 12px 18px;
    border: 0;
    background-color: transparent;
    color: var(--black);
    font-size: 16px;
    line-height: 19.2px;
    font-family: inherit;
    text-align: left;
    cursor: pointer;
}

.filter-select .structure-departments__filter-menu button.is-active,
.filter-select .structure-departments__filter-menu button:hover,
.structure-departments__filter-menu button.is-active,
.structure-departments__filter-menu button:hover {
    color: var(--blue);
    background-color: var(--grey-light);
}

.filter-select .structure-departments__filter-chips,
.structure-departments__filter-chips {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 32px;
    margin-top: 12px;
}

.filter-select .structure-departments__filter-chips[hidden],
.structure-departments__filter-chips[hidden] {
    display: none !important;
}

.filter-select .structure-departments__filter-chips button,
.structure-departments__filter-chips button {
    min-height: 32px;
    padding: 7px 14px;
    border: 0;
    border-radius: 18px;
    font-family: inherit;
    font-size: 14px;
    line-height: 18.2px;
    box-sizing: border-box;
}

.filter-select .structure-departments__filter-chips button[data-js-department-filter-chip],
.structure-departments__filter-chips button[data-js-department-filter-chip] {
    background-color: #CED4F5;
    color: var(--black);
    cursor: pointer;
}

.filter-select .structure-departments__filter-chips button[data-js-department-filter-reset],
.structure-departments__filter-chips button[data-js-department-filter-reset] {
    background-color: #808388;
    color: var(--white);
    cursor: pointer;
}

.photo-frame-corners {
    position: relative;
}

.photo-frame-corners::before,
.photo-frame-corners::after {
    content: "";
    position: absolute;
    z-index: 2;
    width: 50px;
    height: 50px;
    border-color: var(--blue);
    border-style: solid;
    border-width: 0;
    pointer-events: none;
    filter: drop-shadow(0 4px 3px rgba(0, 0, 0, .28));
}

.photo-frame-corners::before {
    top: -5px;
    left: -5px;
    border-top-width: 10px;
    border-left-width: 10px;
    border-top-left-radius: 5px;
}

.photo-frame-corners::after {
    right: -5px;
    bottom: -5px;
    border-right-width: 10px;
    border-bottom-width: 10px;
    border-bottom-right-radius: 5px;
}

.photo-frame-corner {
    position: absolute;
    z-index: 2;
    width: 50px;
    height: 50px;
    border-color: var(--blue);
    pointer-events: none;
    filter: drop-shadow(0 4px 3px rgba(0, 0, 0, .28));
}

.photo-frame-corner--top-left {
    top: 0;
    left: 0;
    border-top: 10px solid var(--blue);
    border-left: 10px solid var(--blue);
    border-top-left-radius: 5px;
}

.photo-frame-corner--top-right {
    top: 0;
    right: 0;
    border-top: 10px solid var(--blue);
    border-right: 10px solid var(--blue);
    border-top-right-radius: 5px;
}

.photo-frame-corner--bottom-right {
    right: 0;
    bottom: 0;
    border-right: 10px solid var(--blue);
    border-bottom: 10px solid var(--blue);
    border-bottom-right-radius: 5px;
}

.photo-frame-corner--bottom-left {
    left: 0;
    bottom: 0;
    border-left: 10px solid var(--blue);
    border-bottom: 10px solid var(--blue);
    border-bottom-left-radius: 5px;
}

.photo-frame-corner--offset-out {
    transform: translate(-5px, -5px);
}

.photo-frame-corner--bottom-right.photo-frame-corner--offset-out {
    transform: translate(5px, 5px);
}

.photo-frame-corner--top-right.photo-frame-corner--offset-out {
    transform: translate(5px, -5px);
}

.photo-frame-corner--bottom-left.photo-frame-corner--offset-out {
    transform: translate(-5px, 5px);
}

.photo-frame-corner--large {
    width: 117px;
    height: 117px;
    filter: drop-shadow(0 4px 3px rgba(0, 0, 0, .28));
}

@media (prefers-reduced-motion: reduce) {
    .faq-list__item,
    .faq-list__link,
    .faq-list__meta::before,
    .faq-list__plus::before,
    .faq-list__plus::after,
    .faq-list__answer,
    .programs-documents__panel,
    .faq-page .faq-list__question {
        transition: none;
    }
}

@media screen and (max-width: 1100px) {
    .wrapper--tablet-gutter {
        width: auto;
        max-width: none;
        margin-left: var(--container-tablet-x);
        margin-right: var(--container-tablet-x);
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 601px) and (max-width: 1280px) {
    .wrapper--tablet-gutter-wide {
        max-width: none;
        padding-left: var(--container-tablet-x);
        padding-right: var(--container-tablet-x);
    }
}

@media screen and (min-width: 601px) and (max-width: 700px) {
    .wrapper--narrow-contained {
        width: calc(100vw - (var(--container-mobile-x) * 2));
        max-width: calc(100vw - (var(--container-mobile-x) * 2));
        padding-left: 0;
        padding-right: 0;
        margin-left: var(--container-mobile-x);
        margin-right: var(--container-mobile-x);
    }
}

@media screen and (min-width: 901px) and (max-width: 1600px) {
    .entrance-page .prep-hero__content,
    .dormitories-page .dormitories-hero__content {
        left: -10px;
        right: -10px;
    }

    .dormitories-page .dormitories-hero__content {
        align-items: start;
    }
}


@media (max-width: 700px) {
    .wrapper--mobile-compact {
        width: var(--container-compact-page-width);
        max-width: var(--container-compact-page-width);
        padding-left: 0;
        padding-right: 0;
        margin-left: var(--container-compact-page-x);
        margin-right: var(--container-compact-page-x);
    }

    .wrapper--mobile-contained {
        width: calc(100vw - (var(--container-mobile-x) * 2));
        max-width: calc(100vw - (var(--container-mobile-x) * 2));
        padding-left: 0;
        padding-right: 0;
        margin-left: var(--container-mobile-x);
        margin-right: var(--container-mobile-x);
    }
}

:is(
    [data-js-main-news-tabs],
    .applicants-places__levels,
    .prep-tabs,
    .sub-menu[role="tablist"],
    .library-inner-tabs__nav,
    .programs-hero__tabs
) {
    --spbguvm-tabs-track: rgba(114, 126, 196, .15);
    --spbguvm-tabs-accent: var(--blue);
    --spbguvm-tabs-text: var(--dark);
    position: relative;
    box-sizing: border-box;
    min-height: 68px;
    border-bottom: 6px solid var(--spbguvm-tabs-track);
}

.programs-page .programs-hero__tabs {
    --spbguvm-tabs-track: rgba(253, 253, 254, .15);
    --spbguvm-tabs-accent: var(--white);
    --spbguvm-tabs-text: var(--white);
}

:is(
    [data-js-main-news-tabs],
    .applicants-places__levels,
    .prep-tabs,
    .sub-menu[role="tablist"],
    .library-inner-tabs__nav,
    .programs-hero__tabs
)::after {
    content: none;
}

.prep-tabs > a::after {
    content: none;
}

[data-js-main-news-tabs] > .item,
.applicants-places__levels > button,
.prep-tabs > a,
.sub-menu[role="tablist"] > .item,
.library-inner-tabs__nav > a,
.programs-hero__tabs > a,
.programs-hero__tabs > h1 {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    min-width: 0;
    height: 68px;
    min-height: 68px;
    margin: 0 0 -6px;
    padding: 20px 0 14px;
    border: 0;
    border-bottom: 6px solid transparent;
    background: transparent;
    color: var(--spbguvm-tabs-text);
    opacity: .6;
    font-family: "Inter Tight", sans-serif;
    font-size: 25px;
    line-height: 27.5px;
    font-weight: 400;
    text-align: left;
    text-decoration: none;
    text-transform: none;
    transition: color .3s ease, opacity .3s ease, border-color .3s ease;
}

.entrance-page .prep-tabs > a {
    color: var(--spbguvm-tabs-text);
    opacity: .6;
}

.library-inner-tabs__nav > a,
.programs-hero__tabs > a,
.programs-hero__tabs > h1 {
    flex: 1 1 0;
}

[data-js-main-news-tabs] > .item h4,
.sub-menu[role="tablist"] > .item h4 {
    margin: 0;
    color: inherit;
    font: inherit;
}

[data-js-main-news-tabs] > .item:is(.active, .is-active),
[data-js-main-news-tabs] > .item[aria-selected="true"],
.applicants-places__levels > button.is-active,
.applicants-places__levels > button[aria-selected="true"],
.prep-tabs > a.is-active,
.prep-tabs > a[aria-selected="true"],
.sub-menu[role="tablist"] > .item:is(.active, .is-active),
.sub-menu[role="tablist"] > .item[aria-selected="true"],
.library-inner-tabs__nav > a.is-active,
.library-inner-tabs__nav > a[aria-selected="true"],
.programs-hero__tabs > h1,
.programs-hero__tabs > a.is-active,
.programs-hero__tabs > a[aria-selected="true"] {
    border-bottom-color: var(--spbguvm-tabs-accent);
    color: var(--spbguvm-tabs-text);
    opacity: 1;
}

.entrance-page .prep-tabs > a.is-active,
.entrance-page .prep-tabs > a[aria-selected="true"] {
    border-bottom-color: var(--spbguvm-tabs-accent);
    color: var(--spbguvm-tabs-text);
    opacity: 1;
}

[data-js-main-news-tabs] > .item:not([aria-disabled="true"]):hover,
[data-js-main-news-tabs] > .item:focus-visible,
.applicants-places__levels > button:hover,
.applicants-places__levels > button:focus-visible,
.prep-tabs > a:hover,
.prep-tabs > a:focus-visible,
.sub-menu[role="tablist"] > .item:hover,
.sub-menu[role="tablist"] > .item:focus-visible,
.library-inner-tabs__nav > a:hover,
.library-inner-tabs__nav > a:focus-visible,
.programs-hero__tabs > a:hover,
.programs-hero__tabs > a:focus-visible {
    color: var(--spbguvm-tabs-text);
    opacity: 1;
}

[data-js-main-news-tabs] > .item:focus-visible,
.applicants-places__levels > button:focus-visible,
.prep-tabs > a:focus-visible,
.sub-menu[role="tablist"] > .item:focus-visible,
.library-inner-tabs__nav > a:focus-visible,
.programs-hero__tabs > a:focus-visible {
    outline: 2px solid var(--spbguvm-tabs-accent);
    outline-offset: 3px;
}

:is(
    .applicants-tab-nav,
    .electronic-environment-tabs__nav,
    .museums-tabs__nav
) {
    --spbguvm-tabs-accent: var(--blue);
    --spbguvm-tabs-text: var(--dark);
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
}

.applicants-tab-nav > button,
.electronic-environment-tabs__nav > button,
.museums-tabs__nav > a {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-height: 28px;
    padding: 0 0 0 20px;
    border: 0;
    background: transparent;
    color: var(--spbguvm-tabs-text);
    opacity: .6;
    font-family: "Inter Tight", sans-serif;
    font-size: 25px;
    line-height: 27.5px;
    font-weight: 400;
    text-align: left;
    text-decoration: none;
    text-transform: none;
    transition: color .3s ease, opacity .3s ease;
}

.applicants-tab-nav > button::before,
.electronic-environment-tabs__nav > button::before,
.museums-tabs__nav > a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--spbguvm-tabs-accent);
    opacity: 0;
    transform: translateY(-50%) scale(.6);
    transition: opacity .3s ease, transform .3s ease;
}

.applicants-tab-nav > button.is-active,
.applicants-tab-nav > button[aria-selected="true"],
.electronic-environment-tabs__nav > button.is-active,
.electronic-environment-tabs__nav > button[aria-selected="true"],
.museums-tabs__nav > a.is-active,
.museums-tabs__nav > a[aria-selected="true"] {
    color: var(--spbguvm-tabs-text);
    opacity: 1;
    font-weight: 500;
}

.applicants-tab-nav > button.is-active::before,
.applicants-tab-nav > button[aria-selected="true"]::before,
.electronic-environment-tabs__nav > button.is-active::before,
.electronic-environment-tabs__nav > button[aria-selected="true"]::before,
.museums-tabs__nav > a.is-active::before,
.museums-tabs__nav > a[aria-selected="true"]::before {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

.applicants-tab-nav > button:hover,
.applicants-tab-nav > button:focus-visible,
.electronic-environment-tabs__nav > button:hover,
.electronic-environment-tabs__nav > button:focus-visible,
.museums-tabs__nav > a:hover,
.museums-tabs__nav > a:focus-visible {
    color: var(--spbguvm-tabs-text);
    opacity: 1;
}

.applicants-tab-nav > button:focus-visible,
.electronic-environment-tabs__nav > button:focus-visible,
.museums-tabs__nav > a:focus-visible {
    outline: 2px solid var(--spbguvm-tabs-accent);
    outline-offset: 3px;
}
