html, body {
    max-height: 100%;
    height: 100%;
    width: 100%;
    font-family: 'Graphik-Regular';
    color: #4d4d4d;
    font-size: 16px;
    line-height: 20px;
}

h1 {
    font-size: 48px;
    line-height: 58px;
    font-family: 'Graphik-SemiBold';
    color: #ab0534;
}

h1.smaller {
    font-size: 64px;
    color: #fff;
    font-family: 'Graphik-Medium';
    margin: 50px 0;
    text-align: center
}

h1.red {
    font-size: 100px;
    text-align: center;
    color: #ab0534;
    font-family: 'Graphik-Medium';
    margin: 75px 0;
}

h1.black {
    font-size: 50px;
    text-align: center;
    color: #000000;
    font-family: 'Graphik-Regular';
    margin: 75px 0;
}

h2 {
    font-size: 35px;
    margin: 0 0 50px 0;
    padding: 0;
    color: #fff;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Neighbor-BLACK';
}

h2 span {
    color: #ab0534;
}

.red-text {
    color: #ab0534;
}

.no-padding {
    padding: 0 !important;
}

.no-margin {
    margin: 0 !important;
}

/*default style*/
.fullWidth {
    width: 100%;
}

.fullHeight {
    height: 100%;
}

.fullScreen {
    width: 100%;
    height: 100%;
}

.flex-row-start-start {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}

.flex-row-start-center {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.flex-row-center-start {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
}

.flex-row-center-center {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.flex-row-between-start {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

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

.flex-row-around-center {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
}

.flex-column-start-start {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

.flex-column-center-start {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}

.flex-column-start-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.flex-column-end-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
}

.flex-column-center-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.logo {
    height: 50px;
}

.main-content {
    padding-top: 100px;
    overflow:hidden;
}

.main-content.index-lauout {
    height: 100%;
}

.gradient-pg-bg {
    background: linear-gradient(to left, #9d2137, #ab0534);
    width: 100%;
    color: #fff;
    font-size: 65px;
    padding: 75px 0 125px;
    font-family: 'Graphik-Medium';
}

.gradient-pg-bg .info {
    color: #fff;
    font-size: 16px;
    padding: 50px 0 0;
    font-family: 'Graphik-Regular';
    max-width: 855px;
}

.gradient-pg-bg .info a {
    color: #fff;
    font-weight: 600;
}

.gradient-pg-bg-grey {
    background: linear-gradient(16deg, #ececed, #bebebf 100%);
    width: 100%;
    color: #ab0534;
    font-size: 100px;
    padding: 150px 0;
}

.gradinet-spacer {
    width: 190px;
    height: 8px;
    border-radius: 20px;
    background: linear-gradient(120deg, #CD6D80, #AB0534);
    margin: 30px 0;
}

.page-big-btn {
    background-color: #ab0534;
    color: #fff;
    font-size: 16px;
    min-width: 170px;
    height: 48px;
    font-family: 'Graphik-Medium';
    border: none;
    box-shadow: none;
    border-radius: 25px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
    padding: 0 35px;
}

.page-big-btn:hover {
    color: #fff;
    text-decoration: none;
    background-color: #bf1643;
}

.page-fb-btn {
    background-color: #3163CF;
    color: #fff;
    font-size: 16px;
    line-height: 28px;
    min-width: 170px;
    height: 48px;
    font-family: 'Graphik-Medium';
    border: none;
    box-shadow: none;
    border-radius: 7px;
    padding: 0 35px;
}

.page-fb-btn:hover {
    color: #fff;
    text-decoration: none;
    opacity: 0.9;

}

.page-btn {
    background-color: #ab0534;
    color: #fff;
    font-size: 18px;
    width: auto;
    height: 50px;
    font-family: 'Graphik-Medium';
    border: none;
    box-shadow: none;
    border-radius: 25px;
    display: inline-block;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 11px 35px 0;
    line-height: 30px;
}

.page-btn:hover {
    color: #fff;
    text-decoration: none;
    background-color: #bf1643;
}

.menu-container {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    width: 80vw;
}

/*navbar*/
.navbar .navbar-nav .nav-link {
    margin: 0 14px;
    font-size: 16px;
    line-height: 28px;
    font-family: Neighbor-BLACK;
    color: #4d4d4d;
}

.navbar .navbar-nav .nav-link.active,
.navbar .navbar-nav .nav-link:hover {
    color: #ab0534;
    text-decoration: none;
}

.navbar .navbar-nav .nav-link.active .nab-link-hover-gradient,
.navbar .navbar-nav .nav-link:hover .nab-link-hover-gradient {
    visibility: visible;
}

.nab-link-hover-gradient {
    background: transparent linear-gradient(90deg, #CD6D80 0%, #AB0534 100%) 0% 0% no-repeat padding-box;
    width: 100%;
    height: 4px;
    border-radius: 25px;
    visibility: hidden;
}

.navbar-expand-lg .navbar-nav .dropdown-menu li {
    width: 100%;
}

.navbar-expand-lg .navbar-nav .dropdown-menu li a {
    width: 100%;
    border-bottom: 2px solid #f5f5f5;
    display: block;
    padding: 12px 0;
    color: #4d4d4d;
}

.navbar-expand-lg .navbar-nav .dropdown-menu li:last-child a {
    border: none;
}

.navbar-expand-lg .navbar-nav .dropdown-menu li a:hover {
    text-decoration: none;
    color: #AB0534;
}

/* Style the search field */
form.search-form input.search-input[type=text] {
    float: left;
}

form.search-form input.search-input[type=text]::placeholder {
    font-size: 20px;
}

/* Style the submit button */
form.search-form button {
    float: left;
    color: #ab0534;
    font-size: 28px;
    cursor: pointer;
    border: none;
    box-shadow: none;
    position: relative;
    left: -55px;
    top: -7px;
    border-radius: 50%;
    background-color: #fff;
    padding: 0;
    margin: 0;
}

form.search-form button:hover {
    color: #ab0534;
}

/* Clear floats */
form.search-form::after {
    content: "";
    clear: both;
    display: table;
}

form.search-form .close-search {
    position: absolute;
    right: 75px;
    top: 40px;
    color: #fff;
    font-size: 15px;
    text-transform: uppercase;
    cursor: pointer;
}

form.search-form .close-search:hover {
    text-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
}

form.search-form .close-search i {
    color: #fff;
    margin-left: 15px;
    width: auto;
    height: auto;
    font-size: 20px;
    margin-top: -3px;
}

/*footer*/
footer {
    background-color: #4d4d4d;
    padding: 75px 0;
    color: #fff;
    font-size: 16px;
}

footer .block-container {
    margin-top: 0;
}

footer a {
    font-size: 16px;
    margin-bottom: 10px;
    color: #fff;
    font-family: 'Graphik-Medium';
}

footer .contact-us {
    background-color: #ab0534;
    padding: 20px 50px;
    border: none;
    box-shadow: none;
    color: #fff;
    cursor: pointer;
    border-radius: 0;
    font-family: 'Graphik-Medium';
    font-size: 20px;
}

footer .contact-us:hover {
    background-color: #4d4d4d;
}

footer .social-media a {
    width: 40px;
    height: 40px;
    background: linear-gradient(120deg, #ab0534, #cc6d80);
    border-radius: 50%;
    margin: 0 15px 0 0;
    text-decoration: none !important;
}

footer .social-media a i {
    font-size: 18px;
    text-decoration: none;
}

footer .social-media a:hover {
    text-decoratioin: none;
    color: #fff;
    filter: brightness(110%);
}

footer a.contact-us:hover {
    box-shadow: 0 0 10px 0 rgba(238, 0, 67, 0.75);
}

footer a:hover {
    color: #fff;
    text-decoration: underline;
}

footer .info-number {
    font-size: 32px;
    font-family: 'Graphik-Medium';
    margin: 15px 0 20px;
}

/*Owl Carousel*/
.owl-item, .owl-stage, .owl-stage-outer {
    height: 100%;
}

.owl-item.scroll-owl-item {
    overflow-y: auto;
}

.custom-next-slide {
    cursor: pointer;
}

.custom-next-slide:hover {
    cursor: pointer;
    box-shadow: 0px 0px 30px 3px rgba(238, 0, 67, 0.5);
    line-height: 3px;
}

.owl-dots {
    position: absolute;
    top: 80vh;
    right: 30vw;
    z-index: 2;
}

.owl-dots .owl-dot {
    padding: 0 5px;
    cursor: pointer;
}

.owl-theme .owl-dots .owl-dot span {
    width: 42px;
    height: 4px;
    margin: 5px 7px;
    background: #fff;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: linear-gradient(120deg, #ab0534, #cc6d80);
}

.owl-carousel-banner.owl-theme .owl-nav .owl-prev {
    position: absolute;
    left: 25px;
    top: 42%;
    font-size: 20px;
    width: 50px;
    height: 50px;
    padding: 5px 0 0 0 !important;
    background-color: #eceded;
    border-radius: 10px;
}

.owl-carousel-banner.owl-theme .owl-nav .owl-next {
    position: absolute;
    top: 42%;
    right: 25px;
    font-size: 20px;
    width: 50px;
    height: 50px;
    padding: 5px 0 0 0 !important;
    background-color: #eceded;
    border-radius: 10px;
}

.owl-theme .owl-nav .owl-prev:hover,
.owl-theme .owl-nav .owl-next:hover {
    background-color: #ab0131;
}

.owl-carousel-banner .owl-nav button.owl-prev,
.owl-carousel-banner .owl-nav button.owl-next,
.owl-carousel-banner button.owl-dot {
    font-size: 25px;
    color: #4d4d4d;
    outline: none;
}

.owl-theme .owl-nav .disabled {
    opacity: 0.5;
    cursor: default;
}

/*RED BORDER*/
.banner-container {
    /*background-image: url(../images/bg-desktop.png);*/
    /*background-repeat: no-repeat;*/
    /*background-position: left top;*/
    /*background-size: contain;*/
    /*height: 100%;*/
}

.banner-container.banner-questions {
    height: calc(100vh - 181px);
    width: 100%;
    background-repeat: no-repeat;
    background-position: right top;
    background-image: url(../fo-images/banner-subpage.jpg);
    background-size: cover;
}

.banner-bordered-text {
    z-index: 2;
    padding-left: 14vw;
    position: absolute;
    bottom: 50px;
}

.banner-bordered-text .banner-title {
    margin-bottom: 30px;
    font-size: 60px;
    line-height: 75px;
    color: #fff;
    font-family: Graphik-SemiBold;
}

.banner-bordered-text .banner-description {
    font-size: 32px;
    line-height: 35px;
    color: #fff;
    font-family: Graphik-SemiBold;
}

.banner-bordered-text .banner-description span {
    font-family: Graphik-Medium;
}

.red-big-border {
    background: linear-gradient(120deg, #ab0534, #cc6d80);
    padding: 20px;
    /*margin: 50px 25px;*/
    border-radius: 40px;
    position: relative;
}

.red-big-border .content {
    background-color: #fff;
    padding: 75px 50px;
    border-radius: 25px;
}

.red-big-border .shape {
    background: #fff;
    width: 100px;
    height: 20px;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    right: 20%;
}

.red-big-border .shape:before {
    content: '';
    width: 20px;
    height: 20px;
    background: #c75c74;
    position: absolute;
    top: 0;
    right: -10px;
    border-radius: 100%;
}

.red-big-border .shape:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #c4546d;
    position: absolute;
    top: 0;
    left: -10px;
    border-radius: 100%;
}

.block-container {
    margin-left: auto;
    margin-right: auto;
}

/*man-child*/
.man-child .img-man-child {
    margin-top: -50px;
}

.man-child img {
    margin-right: 100px;
    max-width: 400px;
    width: 100%;
    min-width: 250px;
}

/*homepage prices*/

.prices-bg {
    padding: 75px 0;
    background: linear-gradient(90deg, #78033B 0%, #070224 65%);
}

.prices-container .prices-max-width {
    max-width: 1400px;
}

.prices-container .prices-question {
    margin-right: 7px;
    padding: 6px 20px 25px;
    color: #fff;
    font-size: 30px;
    line-height: 40px;
    font-family: Graphik-SemiBold;
}

.prices-container .prices-icon {
    padding: 6px 20px 25px;
    color: #fff;
    font-size: 38px;
    line-height: 60px;
    font-family: Graphik-SemiBold;
}

.prices-container .prices-icon img {
    height: 90px;
}

.prices-container .prices-table-title {
    margin-right: 7px;
    background-color: #AB0534;
    border-radius: 10px;
    padding: 6px 20px;
    color: #fff;
    font-size: 30px;
    line-height: 45px;
    font-family: Graphik-SemiBold;
}

.prices-container .prices-table-value-title {
    background-color: #AB0534;
    border-radius: 10px;
}

.prices-container .prices-table-title-person {
    padding: 6px 20px;
    color: #fff;
    font-size: 30px;
    line-height: 45px;
    font-family: Graphik-SemiBold;
}

.prices-container .prices-place {
    background: transparent linear-gradient(90deg, #DFD5DC 0%, #A694A3 100%);
    margin-right: 7px;
    background-color: #AB0534;
    border-radius: 10px;
    padding: 12px 20px;
    color: #AB0534;
    font-size: 35px;
    line-height: 50px;
    font-family: Graphik-SemiBold;
}

.prices-container .prices-values {
    background: transparent linear-gradient(90deg, #A694A3 0%, #322845 100%);
    border-radius: 10px;
}

.prices-container .prices-value {
    padding: 12px 20px;
    color: #fff;
    font-size: 35px;
    line-height: 50px;
    font-family: Graphik-SemiBold;
}

/*home info container*/
.colored-underline-text {
    position: relative;
    z-index: 0;
    background: linear-gradient(to bottom, transparent 55%, #E5BFC8 55%);
    padding: 0 3px;
}

.info-container {
    background-image: linear-gradient(to bottom, rgba(255,255,255,0) 50%, rgba(255,255,255,100%) 100%), url('../fo-images/bg-dotted.jpg');
    background-repeat: repeat;
    background-position: top left;
    background-size: auto;
    padding: 100px 25px;
}

.info-container .title {
    font-size: 30px;
    line-height: 40px;
    font-family: 'Neighbor-BLACK';
    text-transform: uppercase;
    color: #360a4a;
    margin-bottom: 15px;
}

.info-container .description {
    font-size: 16px;
    line-height: 28px;
    font-family: Graphik-Regular;
    color: #414141;
    margin-bottom: 25px;
}

/*homepage time container*/
.time-container {
    margin: 100px 0;
}

.time-container .time-block {
    background: rgb(87, 5, 31);
    background: linear-gradient(130deg, #AB0534 0%, #000014 60%);
    border-radius: 20px;
    color: #fff;
    padding: 75px 75px;
}

.time-container .time-block .title {
    font-size: 48px;
    line-height: 56px;
    font-family: Graphik-SemiBold;
    margin-bottom: 25px;
}

.time-container .time-block .description {
    font-size: 16px;
    line-height: 28px;
    font-family: Graphik-Regular;
    margin-right: 25px;
}

.time-container .round-block {
    background: linear-gradient(165deg, #6D4A6F 0%, #27263F 60%);
    border-radius: 20px;
    border: solid 1px #fff;
    padding: 25px 25px 25px 50px;
    width: 100%;
    margin-bottom: 15px;
    position: relative;
    min-height: 125px;
}

.time-container .time-block .round {
    font-size: 24px;
    line-height: 28px;
    font-family: Graphik-Medium;
    color: #fff;
    margin-bottom: 5px;
}

.time-container .time-block .date {
    font-size: 16px;
    line-height: 21px;
    font-family: Graphik-Regular;
    color: #fff;
}

.time-container .time-block .number {
    font-size: 24px;
    line-height: 32px;
    font-family: Graphik-SemiBold;
    background: linear-gradient(to right, #CD6D80 0%, #AB0534 100%);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    position: absolute;
    left: -25px;
    top: calc(50% - 25px);
}

/*footer container*/
.footer-container {
    background-color: #F5F5F5;
    padding: 100px 0;
}

.footer-container img {
    width: 275px;
    margin-right: 75px;
}

.footer-container .description {
    font-size: 16px;
    line-height: 28px;
    font-family: Graphik-Regular;
    color: #4D4D4D;
    max-width: 675px;
}

.footer-container .description strong {
    font-family: Graphik-Medium;
}

/*rules container*/
.rules-container {
    padding: 100px 0;
}

.rules-container .text-title {
    font-size: 24px;
    line-height: 32px;
    font-family: Graphik-Medium;
    color: #000000;
    margin-bottom: 25px;
}

.rules-container .text {
    font-size: 24px;
    line-height: 32px;
    font-family: Graphik-Regular;
    color: #4D4D4D;
    margin-bottom: 50px;
}

/*first round container*/
.first-round-container {
    position: relative;
    z-index: 2;
    min-width: calc(100% - 14vw);
    min-height: 80%;
    background-color: rgba(255, 255, 255, .83);
    border-radius: 45px;
    text-align: left;
    padding: 35px 100px 35px 100px;
    margin: 75px 0;
    left: 7vw;
    backdrop-filter: blur(15px) saturate(80%);
    width: calc(100% - 14vw);
}

.first-round-container.first-round {
    width: 60vw;
    min-width: auto;
    padding: 35px 35px 35px 50px;
}

.first-round-container .answer-box {
    margin-bottom: 25px;
}

.first-round-container.first-round {
    backdrop-filter: blur(15px) saturate(80%);
    background-color: #fafafa80;
}

.first-round-container.registration {
    z-index: 2;
    width: 55vw;
    height: 85%;
    background-color: #fff;
    border-radius: 0 25px 25px 0;
    text-align: left;
    padding: 40px 35px;
    margin: 75px 0;
}

.first-round-container .title {
    font-size: 45px;
    line-height: 60px;
    font-family: Graphik-SemiBold;
    color: #AB0534;
    margin-bottom: 25px;
}

.first-round-container ul {
    list-style: square;
    font-size: 30px;
    color: #AB0534;
    margin-bottom: 25px;
}

.first-round-container ul li span {
    list-style: square;
    font-size: 22px;
    line-height: 35px;
    color: #4D4D4D;
}

.first-round-container ul li strong {
    font-family: Graphik-Medium;
}

.first-round-container .description {
    list-style: square;
    font-size: 22px;
    line-height: 30px;
    color: #4D4D4D;
}

.first-round-container .title-registration {
    font-size: 40px;
    line-height: 60px;
    font-family: Graphik-SemiBold;
    color: #AB0534;
    margin-bottom: 20px;
}

.first-round-container .description-smaller {
    font-size: 16px;
    line-height: 24px;
    font-family: Graphik-Regular;
    color: #000000;
}

.first-round-container .description strong {
    font-family: Graphik-Medium;
}

.first-round-container .button-description {
    font-family: Graphik-Medium;
    font-size: 22px;
    line-height: 30px;
    color: #AB0534;
    margin-top: 35px;
}

.first-round-container .button-description-smaller {
    font-family: Graphik-Regular;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

/*question container*/
.question-container .time-background {
    background-color: #ab0534;
    color: #fff;
    border-radius: 10px;
    width: 100px;
    padding: 5px 0;
    font-size: 24px;
    line-height: 75px;
    margin-left: 10px;
    font-family: Graphik-Medium;
    height: 40px;
}

.question-container .answer-number span {
    font-family: Graphik-Regular;
    font-size: 19px;
    line-height: 75px;
    color: #4D4D4D;
}

.question-container .answer-number span span {
    color: #000000;
}

.question-container .remaining-time {
    font-family: Graphik-Regular;
    font-size: 19px;
    line-height: 75px;
    color: #4D4D4D;
}

.question-container .answer-number span span {
    color: #000000;
}

.question-container .question-title {
    font-size: 30px;
    line-height: 37px;
    font-family: Graphik-SemiBold;
    color: #AB0534;
    margin-bottom: 25px;
}

.question-container .custom-radio {
    margin-bottom: 5px;
}

.question-container .custom-radio .text {
    margin-left: 15px;
    font-size: 20px;
    line-height: 27px;
    font-family: Graphik-Regular;
    color: #fff;
}

.alt_school_block {
    display: none;
}

label {
    font-size: 14px;
    color: #5D5D5D;
    margin-bottom: 5px;
}

input[type=text],
input[type=email] {
    background-color: #fff;
    border: none;
    box-shadow: none;
    border-radius: 2px;
    height: 50px;
    min-width: 230px;
    max-width: 425px;
    width: 100%;
    padding: 10px 20px;
    margin-bottom: 7px;
    font-size: 16px;
    font-family: Graphik-Regular;
    line-height: 36px;
    border: 2px solid #fff;
    outline: none !important;
    color: #000;
}

input#form_number {
    max-width: 100%;
}

textarea.form-control {
    resize: none;
    background-color: #fff;
    border: none !important;
    border-radius: 2px !important;
    box-shadow: none;
    height: 100px;
    min-width: 230px;
    width: 100%;
    padding: 15px 25px !important;
    margin-bottom: 20px;
    font-size: 14px !important;
    line-height: 24px !important;
    outline: none !important;
    color: #000000 !important;
}

.form-control {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.form-control:focus {
    background-color: #e5e5e5;
    box-shadow: none;
}

.custom-select.is-invalid,
.form-control.is-invalid,
.was-validated .custom-select:invalid,
.was-validated .form-control:invalid {
    border-color: #ab0534 !important;
}

.custom-select.is-invalid:focus,
.form-control.is-invalid:focus,
.was-validated .custom-select:invalid:focus,
.was-validated .form-control:invalid:focus {
    border-color: #ab0534 !important;
    box-shadow: none !important;
}

.custom-select.is-valid,
.form-control.is-valid,
.was-validated .custom-select:valid,
.was-validated .form-control:valid {
    /*border-color: #d6d8da !important;*/
    box-shadow: none !important;
}

.custom-select.is-invalid:focus,
.form-control.is-invalid:focus,
.was-validated .custom-select:invalid:focus,
.was-validated .form-control:invalid:focus {
    border-color: #ab0534 !important;
    box-shadow: none !important;
}

.was-validated .my-checkradio:invalid + label span:first-child {
    border: 3px solid #ab0534 !important;
}

.was-validated .my-checkradio:valid + label span:first-child {
    border-color: #d6d8da !important;
}

select {
    cursor: pointer;
    background-color: #fff;
    box-shadow: none;
    border-radius: 0;
    height: 60px;
    padding: 10px 50px 10px 20px;
    font-size: 20px;
    border: 2px solid #d6d8da;
    outline: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("../img/icon-select-arrow.png");
    background-repeat: no-repeat;
    background-position-x: calc(100% - 20px);
    background-position-y: 22px;
}

/*header - navbar*/
.header {
    background-color: #fff;
    padding: 0 50px;
    height: 100px;
}

.navbar .navbar-toggler {
    color: #ab0534;
}

.navbar .navbar-toggler:hover {
    background-color: #eee;
    filter: brightness(100%);
}

/*custom checkbox/radio*/
.checkbox {
    text-align: left;
    margin: 15px 0;
}

.personal-information .text {
    margin: 0 0 0 15px;
    font-size: 15px;
    color: #000;
}

.checkbox label,
.radio label {
    padding-left: 0;
}

.my-checkradio {
    display: none;
}

.my-checkradio + label span:first-child {
    display: inline-block;
    min-width: 18px;
    min-height: 18px;
    vertical-align: bottom;
    background-color: #fff;
    cursor: pointer;
    border-radius: 2px;
    border: 1px solid #999;
    margin-right: 10px;
    margin-top: 2px;
}

.my-checkradio.check.error,
.my-checkradio.check.valid {
    display: inline-block;
    min-width: 18px;
    min-height: 18px;
    vertical-align: bottom;
    border: 3px solid #000;
    cursor: pointer;
}

label.error {
    color: red;
    font-size: 15px;
}

.my-checkradio.check:checked + label span:first-child {
    background: #ab0534 url(../img/check.svg) no-repeat center center;
    background-size: 12px;
}

.my-checkradio.bullet:checked + label span:first-child {
    background: #ab0534 url(../img/bullet.png) no-repeat center center;
}

.copyright {
    background-color: #fff;
    padding: 5px 0;
    margin: 0 auto;
}

.copyright .copyright-text {
    color: #4D4D4D;
    font-size: 14px;
    line-height: 28px;
    font-family: Graphik-Regular;
}

.copyright .partners-text {
    color: #ab0534;
    font-size: 14px;
    line-height: 28px;
    font-family: Graphik-SemiBold;
    text-transform: uppercase;
}

.question-btn-margin {
    margin-top: 20px;
}

/** add slide for questions */
#test > .homepage-test > #question {
    position: relative;

}

#test > .homepage-test > #question:not(:first-of-type) {
    display:none;
}

/*responsive*/

@media (max-width: 1600px) {

}

@media (max-width: 1400px) {
    .prices-container .prices-table-title,
    .prices-container .prices-table-title-person {
        padding: 6px 20px;
        font-size: 30px;
        line-height: 45px;
    }

    .prices-container .prices-place,
    .prices-container .prices-value {
        padding: 12px 20px;
        font-size: 30px;
        line-height: 45px;
    }

    .prices-container .prices-question {
        padding: 6px 20px 25px;
        font-size: 25px;
        line-height: 35px;
    }

    .prices-container .prices-icon img {
        height: 75px;
    }

    .info-container .title {
        font-size: 30px;
        line-height: 40px;
    }

    .time-container .time-block .title {
        font-size: 40px;
        line-height: 50px;
    }

    .time-container .time-block .round {
        font-size: 22px;
        line-height: 28px;
    }

    .time-container .time-block .date {
        font-size: 15px;
        line-height: 20px;
    }

    .first-round-container .title {
        font-size: 30px;
        line-height: 35px;
        margin-bottom: 20px;
    }

    .first-round-container ul li span {
        font-size: 20px;
        line-height: 25px;
    }

    .first-round-container .button-description {
        font-size: 20px;
        line-height: 25px;
        margin-top: 25px;
    }

    .first-round-container .description {
        font-size: 20px;
        line-height: 25px;
    }

    .first-round-container.first-round {
        width: 60vw;
    }

    .question-container .question-title {
        font-size: 20px;
        line-height: 25px;
    }

    .question-container .custom-radio .text {
        font-size: 16px;
        line-height: 23px;
    }
}

@media (max-width: 1199px) {
    .prices-container .prices-table-title,
    .prices-container .prices-table-title-person {
        padding: 6px 20px;
        font-size: 25px;
        line-height: 35px;
    }

    .prices-container .prices-place,
    .prices-container .prices-value {
        padding: 12px 20px;
        font-size: 25px;
        line-height: 35px;
    }

    .prices-container .prices-question {
        padding: 6px 20px 25px;
        font-size: 20px;
        line-height: 30px;
    }

    .info-container .title {
        font-size: 20px;
        line-height: 30px;
    }

    .info-container .description {
        font-size: 14px;
        line-height: 25px;
    }

    .time-container .time-block .title {
        font-size: 35px;
        line-height: 45px;
    }

    .time-container .round-block {
        padding: 25px 25px 25px 35px;
    }


    .first-round-container {
        padding: 45px 25px 45px 50px;
    }

    .first-round-container .title {
        font-size: 35px;
        line-height: 40px;
        margin-bottom: 25px;
    }

    .first-round-container ul li span {
        font-size: 18px;
        line-height: 25px;
    }

    .first-round-container .description {
        font-size: 18px;
        line-height: 25px;
    }

    .first-round-container .button-description {
        font-size: 18px;
        line-height: 30px;
        margin-top: 20px;
    }

    .question-container .custom-radio .text {
        margin-left: 13px;
        font-size: 16px;
    }

    .question-container .answer-number span {
        font-size: 20px;
        line-height: 50px;
        margin-top: 25px;
    }

    .question-container .remaining-time {
        font-size: 14px;
        line-height: 50px;
    }

    .question-container .time-background {
        border-radius: 9px;
        width: 90px;
        font-size: 20px;
        line-height: 50px;
        height: 36px;
    }

    .first-round-container .title-registration {
        font-size: 30px;
        line-height: 30px;
    }

    .first-round-container.registration {
        width: 65vw;
    }

    input[type="text"], input[type="email"] {
        height: 40px;
        min-width: 200px;
        margin-bottom: 5px;
        font-size: 14px;
        line-height: 36px;
    }
}

@media (max-width: 991px) {
    .first-round-container.first-round {
        width: calc(100% - 14vw);
    }

    .first-round-container {
        width: calc(100% - 14vw);
        min-height: 75%;
        border-radius: 20px;
    }

    .prices-container .prices-table-title, .prices-container .prices-table-title-person {
        padding: 6px 20px;
        font-size: 16px;
        line-height: 30px;
    }

    .prices-container .prices-place, .prices-container .prices-value {
        padding: 12px 20px;
        font-size: 18px;
        line-height: 25px;
    }

    .prices-container .prices-question {
        padding: 6px 10px 25px;
        font-size: 16px;
        line-height: 25px;
    }

    .prices-container .prices-icon img {
        height: 50px;
    }

    .time-container .time-block .date {
        font-size: 14px;
        line-height: 22px;
    }


    .collapse:not(.show) {
        display: none;
    }

    .navbar-collapse {
        position: absolute;
        top: 75px;
        left: 0px;
        width: 100%;
        background-color: rgb(255, 255, 255);
        box-shadow: 0px 8px 8px 0px rgba(230, 230, 230, 0.4);
    }

    .banner-bordered-text .banner-title {
        margin-bottom: 25px;
        font-size: 50px;
        line-height: 65px;
    }

    .banner-bordered-text .banner-description {
        font-size: 30px;
        line-height: 40px;
    }

    .mt-5 {
        margin-top: 2rem !important;
    }

    .mb-5 {
        margin-top: 2rem !important;
    }

    h1 {
        font-size: 40px;
        line-height: 50px;
        text-align: center;
    }

    .prices-container .place {
        font-size: 30px;
        line-height: 40px;
    }

    .place-block {
        align-items: center;
        width: 100%;
    }

    .time-container .time-block .title {
        font-size: 35px;
        line-height: 45px;
        margin-bottom: 20px;
    }

    .time-container .time-block {
        padding: 50px;
    }

    .time-container .time-block .description {
        font-size: 14px;
        line-height: 24px;
        margin-right: 25px;
        margin-bottom: 25px;
    }

    .time-container .time-block .round {
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 5px;
    }

    .time-container .time-block .date {
        font-size: 15px;
        line-height: 24px;
    }

    .first-round-container.registration {
        width: 75vw;
        min-height: 75%;
    }

    .footer-container .description {
        font-size: 14px;
        line-height: 22px;
    }
}

@media (max-width: 768px) {
    .question-mobile-bg {
        border-radius: 45px;
        padding: 35px 50px 35px 50px;
        /*background: linear-gradient(90deg, #78033B 0%, #070224 65%);*/

    background: radial-gradient(circle at left top, #78033B 0%, #070224 100%);

    }

    .banner-container.banner-questions.mobile {
        background: none;
    }

    .first-round-container.mobile {
        position: relative;
        z-index: 2;
        width: 100%;
        min-height: 80%;
        background-color: transparent;
        border-radius: 45px;
        text-align: left;
        padding: 35px 50px 35px 50px;
        margin: 50px 0 75px;
        left: 0;
        backdrop-filter: blur(0) saturate(100%);
    }

    .question-container .question-title {
        font-size: 25px;
        line-height: 32px;
        color: #fff;
        margin-bottom: 50px;
    }

    .question-mobile-btn {
        height: 50px !important;
        border-radius: 25px !important;
    }




    .prices-bg {
        padding: 50px 0;
    }

    .prices-container .prices-question {
        padding: 6px 10px 25px;
        font-size: 25px;
        line-height: 30px;
        max-width: 100%;
        flex: 100%;
        display: flex;
        justify-content: flex-start;
    }

    .prices-container .prices-table-title {
        padding: 8px 15px;
        font-size: 20px;
    }

    .prices-container .prices-value {
        border-radius: 10px;
        line-height: 30px;
        padding: 8px 15px;
        font-size: 20px;
        background: transparent linear-gradient(90deg, #A694A3 0%, #322845 100%);
    }

    .prices-place-title-mobile {
        font-size: 18px;
        line-height: 32px;
        font-family: Graphik-Medium;
        color: #fff
    }

    /*.banner-container {*/
    /*    background-image: url(../images/bg-mobile.png);*/
    /*    background-repeat: no-repeat;*/
    /*    background-position: right top;*/
    /*    background-size: cover;*/
    /*    height: 100%;*/
    /*}*/

    .banner-bordered-text .banner-title {
        margin-bottom: 20px;
        font-size: 35px;
        line-height: 45px;
    }

    .banner-bordered-text .banner-description {
        font-size: 20px;
        line-height: 30px;
    }

    .page-big-btn {
        font-size: 16px;
        min-width: 150px;
        height: 40px;
        border-radius: 20px;
        padding: 0px 30px;
    }

    .header {
        padding: 0 15px;
        height: 80px;
    }

    .main-content {
        padding-top: 80px;
    }

    .footer-container .block-container {
        flex-direction: column;
    }

    .footer-container .block-container img {
        margin: 0 0 25px 0;
        width: 250px;
    }

    .footer-container .description {
        font-size: 14px;
        line-height: 25px;
        max-width: 100%;
    }

    .footer-container {
        padding: 50px 0;
    }

    .prices-container .red-price-block {
        max-width: 280px;
        min-width: 280px;
        padding: 25px;
        margin-bottom: 25px;
    }

    .prices-container .white-price-block {
        max-width: 280px;
        min-width: 280px;
        padding: 25px;
        margin-bottom: 25px;
    }

    .prices-container img {
        right: -45px;
        top: 7px;
    }

    .prices-container .price {
        font-size: 40px;
        line-height: 40px;
    }

    .prices-container .target {
        font-size: 18px;
        line-height: 20px;
    }

    .info-container {
        margin: 0;
        padding: 75px 15px;
    }

    .time-container {
        margin: 75px 0;
    }

    .info-container .title {
        font-size: 25px;
        line-height: 30px;
    }

    .info-container .description {
        font-size: 14px;
        line-height: 24px;
    }

    .time-container .time-block {
        padding: 25px;
    }

    .page-big-btn {
        font-size: 14px;
    }

    .first-round-container.registration {
        width: 87vw;
        padding: 20px;
    }
}

@media (max-width: 575px) {
    .prices-max-width {
        padding-right: 0px;
        padding-left: 0px;
    }

    .prices-container .prices-question {
        padding: 6px 10px 25px 0;
    }

    .prices-container .prices-table-title {
        padding: 8px 12px;
        font-size: 18px;
    }

    h1 {
        font-size: 30px;
        line-height: 35px;
    }

    .logo {
        height: 40px;
    }

    .mr-5, .mx-5 {
        margin-right: 2rem !important;
    }

    .first-round-container {
        width: 87vw;
        padding: 20px;
    }

    .first-round-container .title {
        font-size: 25px;
        line-height: 30px;
    }

    .first-round-container ul li span {
        font-size: 14px;
        line-height: 20px;
    }

    .first-round-container ul {
        font-size: 20px;
    }

    .first-round-container .description {
        font-size: 14px;
        line-height: 20px;
    }

    .mb-3 {
        margin-bottom: 5px !important;
    }

    .question-container .question-title {
        font-size: 18px;
        line-height: 25px;
        margin-bottom: 25px;
    }
}

@media (min-width: 1500px) {
    .block-container {
        width: 1400px;
    }
}

@media (max-width: 1499px) {
    .block-container {
        max-width: 100%;
        width: 100%;
        padding: 0 25px;
    }
}

@media (min-width: 992px) {
    .hidden-zone {
        display: flex;
    }

    .hidden-zone-mobile {
        display: none;
    }

    .hidden-search {
        display: flex;
    }

    .hidden-search-mobile {
        display: none;
    }
}



