@font-face{font-family:montserrat;font-style:normal;font-weight:400;src:local('Montserrat'),url(../font/montserrat/Montserrat-Regular.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:400;src:local('Montserrat'),url(../font/montserrat/Montserrat-Italic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:250;src:local('Montserrat'),url(../font/montserrat/Montserrat-Thin.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:250;src:local('Montserrat'),url(../font/montserrat/Montserrat-ThinItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:275;src:local('Montserrat'),url(../font/montserrat/Montserrat-ExtraLight.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:275;src:local('Montserrat'),url(../font/montserrat/Montserrat-ExtraLightItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:300;src:local('Montserrat'),url(../font/montserrat/Montserrat-Light.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:300;src:local('Montserrat'),url(../font/montserrat/Montserrat-LightItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:500;src:local('Montserrat'),url(../font/montserrat/Montserrat-Medium.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:500;src:local('Montserrat'),url(../font/montserrat/Montserrat-MediumItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:600;src:local('Montserrat'),url(../font/montserrat/Montserrat-SemiBold.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:600;src:local('Montserrat'),url(../font/montserrat/Montserrat-SemiBoldItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:700;src:local('Montserrat'),url(../font/montserrat/Montserrat-Bold.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:700;src:local('Montserrat'),url(../font/montserrat/Montserrat-BoldItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:800;src:local('Montserrat'),url(../font/montserrat/Montserrat-ExtraBold.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:800;src:local('Montserrat'),url(../font/montserrat/Montserrat-ExtraBoldItalic.woff) format('woff')}
@font-face{font-family:montserrat;font-style:normal;font-weight:900;src:local('Montserrat'),url(../font/montserrat/Montserrat-Black.woff) format('woff')}
@font-face{font-family:montserrat;font-style:italic;font-weight:900;src:local('Montserrat'),url(../font/montserrat/Montserrat-BlackItalic.woff) format('woff')}

body {
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 16px;
}

a:hover {
    text-decoration: none;
}

/*
|--------------------------------------------------------------------------
| Common
|--------------------------------------------------------------------------
*/

a {
    text-decoration: none;
    color: #1AA7EC;
}

.mb-6 {
    margin-bottom: 4.5rem !important;
}

.mh-100 {
    min-height: 100vh;
}

.font-weight-medium {
    font-weight: 500;
}

.graphics {
    background: url("/img/graphics/graphics3.png") left top repeat-y;
}

.decor {
    background: url("/img/bg/decor.png") center center no-repeat;
}

.graphics-decor {
    background-image: url("/img/graphics/graphics3.png"), url("/img/bg/decor.png");
    background-position: left top, center center;
    background-repeat: repeat-y, no-repeat;
}

#navbarToggleMenu {
    position: absolute;
    right: 0;
    max-width: 25.5rem;
    width: 100%;
    margin-top: -1.5rem;
    margin-right: -0.8rem;
    z-index: 1;
}

#navbarToggleMenu a {
    color: #303030;
}

.navbarToggleMenu__close {
    position: absolute;
    right: 2.5rem;
    cursor: pointer;
}

.navbarToggleMenu__container {
    border: 2px solid #1AA7EC;
    border-radius: 12px;
    padding: 2rem 1.25rem;
    background: #FFFFFF;
}

.navbarToggleMenu__title {
    color: #000000;
    font-size: 1rem;
    font-weight: 500;
    line-height: 2rem;
    text-transform: uppercase;
    margin-bottom: 1.25rem;
}

.navbarToggleMenu-submenu {
    padding-left: 1.5rem;
    margin-bottom: 1.25rem;
}

.navbarToggleMenu-submenu__title {
    color: #303030;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.75rem;
}

.navbarToggleMenu-submenu__title:not(:last-child) {
    margin-bottom: 1rem;
}

.navbarToggleMenu__title-write {
    color: #000000;
    font-size: 1rem;
    font-weight: 500;
    line-height: 2rem;
    text-transform: uppercase;
    margin-top: 2.25rem;
    margin-bottom: 0.25rem;
}

.navbarToggleMenu__email {
    color: #303030;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.75rem;
}

.navbar-toggler:focus {
    box-shadow: none;
}

.title {
    color: #000000;
    font-size: 2.75rem;
    font-weight: 500;
    line-height: 3.25rem;
    text-align: center;
    margin-bottom: 1.5rem;
}

.description {
    color: #000000;
    font-size: 1.25rem;
    line-height: 1.75rem;
    text-align: center;
    margin-bottom: 1.5rem;
}

.notice {
    color: #000000;
    text-align: center;
}

.page {
    min-height: 100vh;
}

.page-margin {
    margin: 120px 0;
}

.page-container {
    margin: 0 auto;
    max-width: 792px;
    width: 100%;
}

.page-block {
    background: #FFFFFF;
    padding: 72px 52px;
    border-radius: 12px;
    border: 2px solid #1AA7EC;
}

.page-title {
    color: #000000;
    font-size: 44px;
    font-weight: 500;
    line-height: 52px;
    margin-bottom: 72px;
}

.page .form-label {
    font-size: 20px;
    line-height: 28px;
    color: #303030;
}

.page .form-control {
    border-radius: 12px;
}

.page .form-select {
    border-radius: 12px;
}

.page select option:disabled {
    display: none;
}

.was-validated .form-select:invalid + .dropdown button {
    padding-right: 4.125rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-position: right 0.75rem center,center right 2.25rem;
    background-size: 16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-select:invalid + .dropdown button {
    border-color: #dc3545;
}

.page input::placeholder {
    font-size: 16px;
    line-height: 24px;
    color: #7C7C7D;
}

.btn.btn-blue {
    border-radius: 100px;
    background-color: #1AA7EC;
    font-size: 16px;
    font-weight: 700;
    line-height: 28px;
    color: #FFFFFF;
    padding: 12px 40px;
}

.btn.btn-blue.width-100 {
    width: 100%;
}

.input-group .btn.btn-blue {
    border-radius: 0.25rem;
    padding: 0.375rem 0.75rem;
    font-weight: inherit;
    line-height: inherit;
}

.agreement {
    float: left;
    margin-right: 25px;
    width: 20px;
    height: 20px;
    margin-top: 0;
    position: relative;
    top: 4px;
    border: 1px solid #E0E0E0;
}

.agreement ~ label {
    display: block;
    overflow: hidden;
}

.agreement,
.agreement ~ label {
    cursor: pointer;
}

.agreement ~ label {
    line-height: 140%;
}


.flex-break {
    flex-basis: 100%;
    height: 0;
}


.star-rating {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.star-rating__title {
    margin-left: 1.5rem;
    line-height: 48px;
}

.radio-input {
    position: fixed;
    opacity: 0;
    pointer-events: none;
}

.radio-label {
    cursor: pointer;
    font-size: 0;
    color: rgba(0,0,0,0.2);
    transition: color 0.1s ease-in-out;
}

.radio-label:before {
    content: "★";
    display: inline-block;
    font-size: 32px;
}

.radio-input:checked ~ .radio-label {
    color: #ffc700;
    color: gold;
}

.radio-label:hover,
.radio-label:hover ~ .radio-label {
    color: goldenrod;
}

.radio-input:checked + .radio-label:hover,
.radio-input:checked + .radio-label:hover ~ .radio-label,
.radio-input:checked ~ .radio-label:hover,
.radio-input:checked ~ .radio-label:hover ~ .radio-label,
.radio-label:hover ~ .radio-input:checked ~ .radio-label {
    color: darkgoldenrod;
}



ol.multilevel {
    padding-left: 0;
}

ol.multilevel,
ol.multilevel ol {
    counter-reset: item;
}

ol.multilevel > li,
ol.multilevel ol > li {
    display: block;
    color: #303030;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

ol.multilevel > li:not(:last-child),
ol.multilevel ol > li:not(:last-child),
ol.multilevel ul > li:not(:last-child) {
    margin-bottom: 12px;
}

ol.multilevel > li:before,
ol.multilevel ol > li:before {
    content: counters(item, ".") ". ";
    counter-increment: item;
    color: #000000;
    font-weight: 500;
}

ol.multilevel > li,
ol.multilevel > li:before {
    color: #000000;
    font-size: 28px;
    font-weight: 500;
    line-height: 40px;
}

ol.multilevel > li:not(:last-child),
ol.multilevel > li:not(:last-child):before {
    margin-bottom: 32px;
}

ol.multilevel > li > ol {
    margin-top: 32px;
}

ol.multilevel > li > ol li > ol,
ol.multilevel > li > ol li > ul {
    margin-top: 12px;
}


.flex-table {
    display: flex;
    flex-flow: column nowrap;
}

.flex-table__row {
    display: flex;
    flex-flow: row nowrap;
    padding: 12px 16px;
    border-bottom: 1px solid #E0E0E0;
}

.flex-table-mobile__row {
    display: flex;
    flex-flow: row nowrap;
    padding: 8px 0;
}

.flex-table__col {
    flex: 1;
    padding: 8px;
    color: #303030;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.flex-table-mobile__col {
    display: flex;
    flex: 1;
    padding: 0 8px;
    color: #303030;
    font-size: 14px;
    line-height: 20px;
}

.flex-table-mobile__col_head {
    color: #7C7C7D;
}

.flex-table__row_head {
    background: #9AF5E7
}

.flex-table__row_head .flex-table__col {
    color: #303030;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
}

.flex-table__head-mobile {
    color: #7C7C7D;
    font-size: 14px;
    line-height: 20px;
    max-width: 30%;
    width: 100%;
    margin-right: 8px;
}

.link-arrow {
    color: #1AD0A8;
    font-weight: 700;
    line-height: 28px;
    position: relative;
    padding-right: 60px;
}

.link-arrow:before {
    content: '';
    border-bottom: 2px solid #1AD0A8;
    width: 32px;
    position: absolute;
    right: 12px;
    top: 50%;
}

.link-arrow:after {
    content: '';
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 12px solid #1AD0A8;
    position: absolute;
    right: 0;
    top: calc(50% - 5px);
}


@media screen and (min-width: 100em) {
    .container {
        max-width: 1920px;
    }
}

@media screen and (max-width: 87.5em) {
}

@media screen and (max-width: 75em) {

}

@media screen and (max-width: 62em) {
    .graphics {
        background: none;
    }
    .title {
        font-size: 2.75rem;
        line-height: 3.25rem;
        margin-bottom: 4rem;
    }
    .description {
        margin-bottom: 4rem;
    }
    .page-margin {
        margin: 6.25rem 0;
    }
    .page-container {
        max-width: 668px;
    }
    .page-block {
        padding: 3.75rem 1.5rem;
    }
    .page__name {
        margin-bottom: 2.5rem;
    }
}

@media screen and (max-width: 48em) {
    .flex-table__toggle {
        border-bottom: 2px dotted #1FDDDD;
        cursor: pointer;
    }
    .flex-table__row {
        display: block;
        border-bottom: none;
        padding: 8px;
    }
    .flex-table__col {
        padding: 0 8px;
    }
}

@media screen and (max-width: 36em) {
    .page-margin {
        margin: 4.25rem 0;
    }
    .page-block {
        padding: 2.5rem 1.25rem;
    }
    .description {
        margin-bottom: 2.5rem;
    }
    .page__name {
        margin-bottom: 1.75rem;
    }
}

/*
|--------------------------------------------------------------------------
| Header
|--------------------------------------------------------------------------
*/

header {
    margin: 1.5rem 0 1.5rem 0;

}

.header-menu {
    display: flex;
    align-items: center;
}

.header-menu .nav-link {
    color: #000000;
    font-style: normal;
    font-weight: 500;
    line-height: 2rem; /* 200% */
    text-transform: uppercase;
}

.header-menu .nav-link.is-active {
    color: #1AA7EC;
}

.header-logo {
    display: flex;
    justify-content: center;
}

.header__write {
    color: #000000;
    font-style: normal;
    font-weight: 500;
    line-height: 1.75rem; /* 175% */
    text-decoration: none;
    margin-right: 2rem;
}

.header__social-icon:not(:last-child) {
    margin-right: 12px;
}

.header-contact {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.btn-primary {
    background-color: #1AA7EC;
    border-color: #1AA7EC;
    padding: 0.75rem 2.75rem;
    border-radius: 6.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.75rem; /* 175% */
}

@media screen and (max-width: 62em) {
}

@media screen and (max-width: 62em) {
}

@media screen and (max-width: 36em) {
}

/*
|--------------------------------------------------------------------------
| Index
|--------------------------------------------------------------------------
*/

.index-intro {
    display: flex;
    justify-content: center;
    height: 51rem;
    align-self: stretch;
    background: #ffffff url("/img/graphics/intro.png") left top no-repeat;
}

.index-intro__container {
    display: flex;
    width: 80.1875rem;
    align-items: center;
}

.index-intro__intro-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2.75rem;
    flex: 1 0 0;
}

.index-intro__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2.5rem;
    align-self: stretch;
}

.index-intro__text-title {
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3.25rem;
}

.index-intro__text-description {
    font-size: 1.25rem;
    line-height: 1.75rem; /* 140% */
}

.index-intro__text-education {
    font-size: 1rem;
    line-height: 1.5rem; /* 150% */
}

.index-intro__text-education a {
    color: #1AA7EC;
    text-decoration: none;
}

.index-intro__buttons {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.index-intro__button {

}

.index-intro__registration {
    display: flex;
    gap: 0.5rem;
    color: #1AD0A8;
    font-weight: 700;
    line-height: 1.75rem; /* 175% */
    text-decoration: none;
}

.index-intro__registration:after {
    content: url("/img/icons/arrows/arrow5.svg");
    width: 2.3125rem;
}

.index-intro__decor {
    display: flex;
    padding-bottom: 0px;
    flex-direction: column;
    align-items: center;
    flex: 1 0 0;
}

.index-intro__decor-img {
    background: #ffffff url("/img/decors/index_intro.png") left top no-repeat;
    display: block;
    width: 46.00575rem;
    height: 45.0905rem;
}

/*
|--------------------------------------------------------------------------
| Cookies
|--------------------------------------------------------------------------
*/

.cookies {
    display: inline-flex;
    padding: 1rem 1.5rem;
    align-items: center;
    gap: 2rem;
    border-radius: 0.75rem;
    border: 2px solid var(--ui-neutral-border, #E0E0E0);
    background: var(--ui-neutral-light, #EDEEF0);
    font-weight: 400;
    line-height: 1.5rem;
    margin-bottom: 3rem;
}

.cookies a {
    margin-left: 0.5rem;
}

/*
|--------------------------------------------------------------------------
| Index slider
|--------------------------------------------------------------------------
*/

.index-slider {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 30.5rem;
    align-self: stretch;
    text-align: center;
    margin-bottom: 7.6rem;
}

.index-slider__info {
    display: inline-flex;
    padding: 0rem 6.4375rem;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

.index-slider__text {
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3rem; /* 133.333% */
    color: #FFFFFF;

    display: flex;
    width: 62.375rem;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
}

.index-slider_1 {
    background: #ffffff url("/img/slider/bg1.png") left top no-repeat;
}

.index-slider__button {
    display: flex;
    padding: 0.75rem 2.75rem;
    align-items: flex-start;
    gap: 0.625rem;
    border-radius: 6.25rem;
    background: #FFFFFF;
    color: #1AD0A8;
    font-weight: 700;
    line-height: 1.75rem; /* 175% */
}

/*
|--------------------------------------------------------------------------
| Fest-Type
|--------------------------------------------------------------------------
*/

.fest-type-intro {
    display: flex;
    justify-content: center;
    height: 51rem;
    align-self: stretch;
    background: #ffffff url("/img/graphics/intro.png") left top no-repeat;
}

.fest-type__container {
    width: 80.1875rem;
    margin: 0 auto;
}

.fest-type-intro__container {
    display: flex;
    align-items: center;
}

.fest-type-intro-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 0;
    background: #FFFFFF;
}

.fest-type-intro__name {
    color: #000000;
    font-size: 44px;
    font-weight: 500;
    line-height: 52px;
    margin-bottom: 40px;
}

.fest-type-intro__description {
    color: #303030;
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 40px;
}

.fest-type-intro__sirius {
    color: #303030;
    line-height: 24px;
    margin-bottom: 40px;
}

.fest-type-intro__sirius a {
    color: #1AA7EC;
}

.fest-type-intro__bottom {
    display: flex;
    align-items: center;
}

.fest-type-intro__btn {
    margin-right: 24px;
}

.fest-type-intro__date {
    color: #1AD0A8;
    font-size: 16px;
    font-weight: 700;
    line-height: 28px;
    text-transform: uppercase;
}


.fest-type-name,
.fest-type-ready {
    border-radius: 12px;
    border: 2px solid #1AA7EC;
    background: #FFFFFF;
    display: flex;
    padding: 36px;
    max-width: 792px;
    width: 100%;
    margin: 0 auto 120px;
}

.fest-type-name-img,
.fest-type-ready-img {
    margin-right: 64px;
}

.fest-type-name__title,
.fest-type-ready__title {
    color: #000000;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 28px;
}

.fest-type-name__description,
.fest-type-ready__description {
    color: #303030;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.fest-type-ready__description {
    margin-bottom: 28px;
}


.fest-type-write {
    margin-bottom: 120px;
}

.fest-type-write__title {
    color: #000000;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
    margin-bottom: 72px;
    text-align: center;
}

.fest-type-write__container {
    display: flex;
    gap: 32px;
    justify-content: center;
}

.fest-type-write__item {
    max-width: 272px;
    width: 100%;
}

.fest-type-write__img {
    width: 72px;
    height: 72px;
    background-color: #1AD0A8;
    border-radius: 100%;
    margin-bottom: 36px;
    margin-top: 32px;
    display: flex;
    align-items: center;
    position: relative;
}

.fest-type-write__number {
    color: #000000;
    font-size: 128px;
    font-weight: 500;
    line-height: 64px;
    position: relative;
    top: -24px;
    left: 16px;
}

.fest-type-write__name {
    color: #000000;
    font-size: 18px;
    font-weight: 500;
    line-height: 28px;
    margin-bottom: 28px;
}

.fest-type-write__content li {
    color: #303030;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.fest-type-write__content li:not(:last-child) {
    margin-bottom: 12px;
}


.fest-type-arrow {
    width: 120px;
    margin: 50px auto;
    height: 0;
    border-bottom: 3px solid #1FDDDD;
    position: absolute;
    left: 112px;
}

.fest-type-arrow::after {
    content: '';
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 12px solid #1FDDDD;
    position: absolute;
    right: -10px;
    top: -5px;
}



.fest-type-decoration {
    background: #EDEEF0;
    margin-bottom: 120px;
}

.fest-type-decoration__container {
    display: flex;
    gap: 32px;
    justify-content: center;
}

.fest-type-decoration-content {
    padding: 7.5rem 0;
}

.fest-type-decoration-list {
    padding-left: 60px;
}

.fest-type-decoration__title {
    color: #000000;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
}

.fest-type-decoration-list__title {
    color: #000000;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 20px;
    position: relative;
}

.fest-type-decoration-list__img {
    position: absolute;
    left: -60px;
}

.fest-type-decoration-list__item li {
    color: #303030;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.fest-type-decoration-list__item li:not(:last-child) {
    margin-bottom: 8px;
}


.fest-type-stage {
    margin-bottom: 120px;
}

.fest-type-stage__title {
    color: #000000;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
    margin-bottom: 72px;
}

.fest-type-stage-line {
    display: flex;
    margin-bottom: 60px;
}

.fest-type-stage-line__item {
    flex: 1 1 auto;
}

.fest-type-stage-line-step {
    padding: 12px 24px;
}

.fest-type-stage-line__item_1 .fest-type-stage-line-step {
    background-color: #9AF5E7;
}

.fest-type-stage-line__item_2 .fest-type-stage-line-step {
    background-color: #1AD0A8;
}

.fest-type-stage-line__item_3 .fest-type-stage-line-step {
    background-color: #1AA7EC;
}

.fest-type-stage-line-end {
    margin-bottom: 32px;
    display: flex;
    align-items: center;
    justify-content: end;
}

.fest-type-stage-line-end__content {
    margin-right: 16px;
}

.fest-type-stage-line-end__title {
    color: #000000;
    text-align: right;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 28px;
}

.fest-type-stage-line-end__date {
    color: #7C7C7D;
    text-align: right;
    font-size: 16px;
    line-height: 24px;
}

.fest-type-stage-line-step__title {
    color: #000000;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
}

.fest-type-stage-line-step__date {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.fest-type-stage-line__item_1 .fest-type-stage-line-step__date {
    color: #7C7C7D;
}

.fest-type-stage-line__item_2 .fest-type-stage-line-step__date {
    color: #FFFFFF;
}

.fest-type-stage-line__item_3 .fest-type-stage-line-step__date {
    color: #FFFFFF;
}


.fest-type-stage-full__item {
}

.fest-type-stage-full__date {
    color: #303030;
    text-align: right;
    font-size: 20px;
    line-height: 28px;
    padding: 24px 60px 24px 0;
    border-right: 2px solid #E0E0E0;
    position: relative;
}

.fest-type-stage-full__item:first-child .fest-type-stage-full__date {
    padding-top: 0;
}

.fest-type-stage-full__item:last-child .fest-type-stage-full__date {
    padding-top: 0;
    padding-bottom: 0;
    border-right: 0;
}

.fest-type-stage-full__dot {
    position: absolute;
    right: -12px;
}

.fest-type-stage-full__item:first-child .fest-type-stage-full__dot {
    top: -2px;
}

.fest-type-stage-full__doc,
.fest-type-stage-full__flag,
.fest-type-stage-full__star {
    position: absolute;
    right: -28px;
}

.fest-type-stage-full__star {
    top: -12px;
}

.fest-type-stage-full-content {
    padding: 24px 0 24px 60px;
}

.fest-type-stage-full__item:first-child .fest-type-stage-full-content {
    padding-top: 0;
}

.fest-type-stage-full__item:last-child .fest-type-stage-full-content {
    padding-top: 0;
    padding-bottom: 0;
}

.fest-type-stage-full__title {
    color: #000000;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 24px;
}

.fest-type-stage-full__description {
    color: #303030;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 24px;
}


.fest-type-pay {
    background: url("/img/bg/bg_pay.png") center center no-repeat;
}

.fest-type-pay .container {
    padding-top: 120px;
    padding-bottom: 120px;
}

.fest-type-pay .fest-type__container {
    background-color: #FFFFFF;
    border-radius: 12px;
    padding: 72px 24px;
    width: 998px;
}

.fest-type-pay__title {
    color: #000000;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
    margin-bottom: 24px;
}

.fest-type-pay__description {
    color: #303030;
    text-align: center;
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 40px;
}

.fest-type-pay-content {
    margin-bottom: 40px;
}

.fest-type-pay-content__title {
    color: #000000;
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 24px;
}

.fest-type-pay-content__description {
    color: #303030;
    text-align: center;
    line-height: 24px;
}

.fest-type-pay-btn {
    display: flex;
    justify-content: center;
}

/*
|--------------------------------------------------------------------------
| About
|--------------------------------------------------------------------------
*/

.index-about {
    background: #ffffff url("/img/map/map.png") center center no-repeat;
}

.index-about__map {
    background: #ffffff url("/img/map/map.png") left top no-repeat;
    width: 89.93563rem;
    height: 50.50638rem;
}

.index-about__content {
    display: flex;
    justify-content: center;
    margin-bottom: 3rem;
}

.index-about__content-container {
    display: flex;
    width: 75.1875rem;
    align-items: center;
    gap: 2rem;
}

.index-about__numbers {
    display: flex;
    padding: 0rem 1.5625rem;
    flex-direction: column;
    align-items: center;
    gap: 3.75rem;
    flex: 1 0 0;
}

.index-about__row1, .index-about__row2 {
    display: flex;
    align-items: flex-start;
    gap: 4.5rem;
}

.index-about__number {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 14.5rem;
    height: 14.5rem;
    border-radius: 100%;
}

.index-about__number_1 {
    background-color: #9AF5E7;
}

.index-about__number_2 {
    background-color: #76FCB5;
}

.index-about__number_3 {
    background-color: #1AA7EC;
}

.index-about__number_4 {
    background-color: #1AD0A8;
}

.index-about__number-key {
    font-size: 3.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: 4rem; /* 114.286% */
}

.index-about__number-value {
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.75rem; /* 140% */
}

.index-about__text {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    flex: 1 0 0;
}

.index-about__text-title {
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3rem; /* 133.333% */
}

.index-about__text-description {
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5rem;
}

.index-about__cities {
    display: flex;
    justify-content: center;
}

.index-about__cities-container {
    display: inline-flex;
    align-items: flex-end;
    gap: 2.5rem;
}

.index-about__cities-item {
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3rem; /* 133.333% */
    color: #1AA7EC;
    text-transform: uppercase;
}

/*
|--------------------------------------------------------------------------
| Partners
|--------------------------------------------------------------------------
*/

.index-partners {
    display: flex;
    padding: 7.5rem 22.75rem;
    flex-direction: column;
    align-items: center;
    gap: 4.5rem;
    align-self: stretch;
}

.index-partners__title {
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3rem; /* 133.333% */
}

.index-partners_logos {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.75rem;
    align-self: stretch;
}

.index-partners__row1, .index-partners__row2 {
    display: flex;
    width: 74.5rem;
    justify-content: center;
    align-items: center;
    gap: 2.875rem;
}

.index-partners__item {
    display: flex;
    width: 10rem;
    height: 3.5rem;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

/*
|--------------------------------------------------------------------------
| Preferences
|--------------------------------------------------------------------------
*/

.index-preferences {
    display: flex;
    justify-content: center;
}

.index-preferences__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4.5rem;
}

.index-preferences__title {
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3rem; /* 133.333% */
    margin-bottom: 4.5rem;
}

.index-preferences__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
}

.index-preferences__row1, .index-preferences__row2 {
    display: flex;
    align-items: flex-start;
    align-self: stretch;
}

.index-preferences__card1,
.index-preferences__card2,
.index-preferences__card3,
.index-preferences__card4 {
    display: flex;
    align-items: flex-start;
    align-self: stretch;
}

.index-preferences__card-img {
    width: 18.8125rem;
    height: 18.75rem;
}

.index-preferences__card-text {
    display: flex;
    width: 19.8125rem;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.75rem 1.25rem;
}

.index-preferences__card-title {
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.75rem; /* 155.556% */
}

.index-preferences__card-description {
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5rem; /* 150% */
}

/*
|--------------------------------------------------------------------------
| Participation
|--------------------------------------------------------------------------
*/

.index-participation {

}

.index-participation__title {
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3rem; /* 133.333% */
}

.index-participation__steps {
    display: flex;
    width: 75.25rem;
    align-items: flex-start;
    gap: 2rem;
}

.index-participation__step-number {

}

/*
|--------------------------------------------------------------------------
| Navbar
|--------------------------------------------------------------------------
*/

.navbar {
}



/*
|--------------------------------------------------------------------------
| Autocomplete
|--------------------------------------------------------------------------
*/

.autocomplete-response  {
}

/*
|--------------------------------------------------------------------------
| FAQ
|--------------------------------------------------------------------------
*/

.position-contacts {

}

.position-contacts__title {
    color: #000000;
    font-size: 28px;
    font-weight: 500;
    line-height: 40px;
}

/*
|--------------------------------------------------------------------------
| Position
|--------------------------------------------------------------------------
*/


/*
|--------------------------------------------------------------------------
| Cookie accept
|--------------------------------------------------------------------------
*/

.cookie-accept {
}

/*
|--------------------------------------------------------------------------
| Share
|--------------------------------------------------------------------------
*/

.share {
    margin-bottom: 1rem;
}

.share__title {
    margin-bottom: 1rem;
}

/*
|--------------------------------------------------------------------------
| eula
|--------------------------------------------------------------------------
*/

.eula h2,
.policy h2 {
}

/*
|--------------------------------------------------------------------------
| payment
|--------------------------------------------------------------------------
*/

.payment {
}

.payment__container {

}



.payment__date {
    font-size: 16px;
    line-height: 24px;
    color: #1AD0A8;
    margin-bottom: 12px;
}

.payment__name {
    font-size: 28px;
    line-height: 40px;
    color: #000000;
    font-weight: 500;
    margin-bottom: 48px;
}

.payment__student,
.payment__client {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 32px;
}

.payment__student-table {
    display: flex;
    flex-flow: column nowrap;
    margin-bottom: 48px;
}

.payment__student-row {
    display: flex;
    flex-flow: row nowrap;
}

.payment__student-col {
    display: flex;
    flex: 1;
    font-size: 16px;
    line-height: 24px;
    color: #7C7C7D;
    padding: 8px 0;
}

.payment-form__sum {
    font-size: 20px;
    color: #000000;
    line-height: 28px;
    font-weight: 500;
}

#paymentForm .payment-form__promo.form-label {
    font-size: 16px;
    color: #1AA7EC;
    line-height: 28px;
    font-weight: 700;
    cursor: pointer;
}

.payment-form__offer,
.payment-form__policy {
    font-size: 14px;
    line-height: 20px;
    color: #303030;
}

.payment-form__sup {
    color: #303030;
}



/*
|--------------------------------------------------------------------------
| Jury
|--------------------------------------------------------------------------
*/

.jury {
}

.jury .container {

}

.cooperation-info__title {
    font-weight: 500;
}

.jury__title {
    color: #000000;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2rem;
}

.checkbox-menu li label {
    display: block;
    padding: 3px 10px;
    line-height: 1.42857143;
}

.checkbox-menu li.active label {
    font-weight:bold;
}

/*
|--------------------------------------------------------------------------
| Info
|--------------------------------------------------------------------------
*/

.info-intro {
    margin-bottom: 72px;
}

.info-intro__title {
    color: #1AA7EC;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
}

.info-intro__title:not(:last-child) {
    margin-bottom: 24px;
}

/*
|--------------------------------------------------------------------------
| Memo
|--------------------------------------------------------------------------
*/

.memo__title {
    color: #000000;
    font-size: 28px;
    font-weight: 500;
    line-height: 40px;
    margin-bottom: 24px;
}

.memo img {
    margin-bottom: 1rem;
}

/*
|--------------------------------------------------------------------------
| Feedback
|--------------------------------------------------------------------------
*/

.page-feedback__full_name {
    color: #000;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.75rem;
}

.page-feedback__relate {
    color: #7C7C7D;
    font-size: 1rem;
    line-height: 1.5rem;
    margin-bottom: 2rem;
}

.page-feedback .payment__student-table {
    margin-bottom: 2rem;
}

.page-feedback__feedback {
    color: #303030;
    line-height: 1.5rem;
    margin-bottom: 2rem;
}

.page-feedback__share {
    text-align: center;
}

.page-feedback__share-note {
    margin-bottom: 2rem;
}

.page-feedback__share a {
    text-align: center;
    font-size: 24px;
    text-align: center;
    text-transform: uppercase;
}

/*
|--------------------------------------------------------------------------
| Result
|--------------------------------------------------------------------------
*/

.intro-container {
    max-width: 792px;
    text-align: center;
    margin: 0 auto;
}

.result__empty {
    text-align: center;
    color: #303030;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
}

.result-container {
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
}

.result-item:not(:last-child) {
    margin-bottom: 20px;
}

.result-item__name {
    padding: 12px 20px;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    border-radius: 12px;
    background: #1AA7EC;
    cursor: pointer;
    position: relative;
}

.result-item__name_icon {
    position: absolute;
    right: 20px;
    margin-top: 12px;
    transition: transform 150ms ease;
}

.result-item__name.collapsed .result-item__name_icon {
    transform: rotate(0deg);
}

.result-item__name_icon {
    transform: rotate(180deg);
}

.result-item-content {
    border-radius: 12px;
    border: 2px solid #1AA7EC;
    background: #FFFFFF;
    padding: 24px;
    margin-top: 48px;
}

.result-item__place {
    border-bottom: 2px solid #1FDDDD;
}

.result-item__place .flex-table__col {
    color: #303030;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
}

.result-item__teacher ~ .result-item__teacher::before {
    content: ', ';
}

.result-archive {
    margin-top: 120px;
}

.result-archive__title {
    color: #000000;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
    margin-bottom: 48px;
}

.result-archive__container {
    display: flex;
    justify-content: center;
}

.result-archive__item {
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    margin-right: 32px;
}

.section-schedule {
    max-width: 792px;
    text-align: center;
    margin: 0 auto 1.5rem auto;
}

.section-jury {
    max-width: 792px;
    text-align: center;
    margin: 0 auto;
}

.section-jury__title {
    font-size: 1.25rem;
    color: #000000;
    margin-bottom: 16px;
}

.section-jury__item {
    margin-bottom: 4px;
}

.result__schedule-time {
    font-size: 12px;
    margin-left: 8px;
    position: relative;
    top: -4px;
    color: #F59AA8;
    font-weight: 500;
}

.jury-final-form__link {
    font-size: 24px;
    text-align: center;
}

/*
|--------------------------------------------------------------------------
| Section
|--------------------------------------------------------------------------
*/



/*
|--------------------------------------------------------------------------
| Feedback
|--------------------------------------------------------------------------
*/

textarea.form-control.feedback__textarea {
    min-height: calc(10em + 0.75rem + 2px);
}

/*
|--------------------------------------------------------------------------
| Talent
|--------------------------------------------------------------------------
*/

.talent__description {
    color: #000000;
    text-align: center;
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 72px;
}

.talent__title {
    color: #000000;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
}

/*
|--------------------------------------------------------------------------
| Footer
|--------------------------------------------------------------------------
*/

footer {
    background: #303030;
    padding: 60px 40px;
}

.footer-logo {
    margin-bottom: 40px;
}

.footer__copyright {
    color: #7C7C7D;
    font-size: 16px;
    line-height: 24px;
}

.footer_title {
    color: #7C7C7D;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 24px;
}

.footer__item {
    display: block;
    color: #FFFFFF;
    font-size: 16px;
    line-height: 24px;
}

.footer__item:not(:last-child) {
    margin-bottom: 12px;
}

.footer__payment-percent {
    margin-right: 12px;
}

.footer__payment-icon:not(:last-child) {
    margin-right: 24px;
}

.footer__social-icon:not(:last-child) {
    margin-right: 16px;
}

@media screen and (max-width: 62em) {
    .footer_container_mb {
        margin-bottom: 40px !important;
    }
}

@media screen and (max-width: 48em) {

}

@media screen and (max-width: 36em) {

}


/*
|--------------------------------------------------------------------------
| Suggestions
|--------------------------------------------------------------------------
*/


.autocomplete-suggestions {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #999;
    background: #FFF;
    cursor: default;
    overflow: auto;
    -webkit-box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
    -moz-box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
    box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
}

.autocomplete-suggestion {
    padding: 0.25rem 1rem;
    white-space: nowrap;
    overflow: hidden;
}

.autocomplete-no-suggestion {
    padding: 0.25rem 1rem;
}

.autocomplete-suggestions strong {
    font-weight: bold;
    color: #000;
}

.autocomplete-selected {
    color: #fff;
    background-color: #003772;
    cursor: pointer;
}

.autocomplete-suggestions .autocomplete-selected strong {
    color: #fff;
}

.autocomplete-group {
    padding: 2px 5px;
    font-weight: bold;
    font-size: 16px;
    color: #000;
    display: block;
    border-bottom: 1px solid #000;
}




