.model_block .image_block > a > img,
.model_block .image_block > a > picture img,
.model_block .image_block > img, .stages_section .image_block *:has(> img):not(picture) > picture img,
.stages_section .image_block *:has(> picture) > picture img,
.stages_section .image_block *:has(> img):not(picture) > img,
.stages_section .image_block *:has(> picture) > img {
  position: absolute !important;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.stages_section .image_block *:has(> img):not(picture) > picture img,
.stages_section .image_block *:has(> picture) > picture img,
.stages_section .image_block *:has(> img):not(picture) > img,
.stages_section .image_block *:has(> picture) > img {
  object-fit: cover;
}

.stages_section .image_block *:has(> img):not(picture) iframe,
.stages_section .image_block *:has(> picture) iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100% !important;
  height: 100% !important;
}

.stages_section .image_block *:has(> img):not(picture),
.stages_section .image_block *:has(> picture) {
  position: relative;
  overflow: hidden;
}
.stages_section .image_block :has(> img):not(picture):before,
.stages_section .image_block :has(> picture):before {
  display: block;
  content: "";
  padding-bottom: 56.25%;
}

.winner_block .author_prof, .standard_text {
  line-height: 20px;
}
@media screen and (min-width: 1280px) {
  .winner_block .author_prof, .standard_text {
    font-size: 160%;
  }
}
@media screen and (max-width: 1279px) {
  .winner_block .author_prof, .standard_text {
    font-size: 140%;
  }
}

.model_block:before {
  font-size: 960%;
  line-height: 1.33em;
  font-family: "grapalat-mariam-bold";
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 1px;
  margin: 0;
  letter-spacing: -0.5%;
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .model_block:before {
    font-size: 720%;
  }
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .model_block:before {
    font-size: 560%;
  }
}
@media screen and (min-width: 480px) and (max-width: 639px) {
  .model_block:before {
    font-size: 400%;
  }
}
@media screen and (max-width: 479px) {
  .model_block:before {
    font-size: 320%;
  }
}
@media screen and (max-width: 359px) {
  .model_block:before {
    font-size: 280%;
  }
}

.winner_block .author_name, .winner_block .date_block, .stages_section .date_block {
  font-size: 240%;
  line-height: 1.5em;
  font-family: "montserrat-medium", "montserratarm";
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .winner_block .author_name, .winner_block .date_block, .stages_section .date_block {
    font-size: 200%;
  }
}
@media screen and (max-width: 959px) {
  .winner_block .author_name, .winner_block .date_block, .stages_section .date_block {
    font-size: 180%;
  }
}

.stages_section .stage_number {
  position: relative;
  overflow: hidden;
}
.stages_section .stage_number > *:not(picture),
.stages_section .stage_number > picture img {
  display: block;
  position: relative;
  -o-transition: transform 1s;
  -ms-transition: transform 1s;
  -moz-transition: transform 1s;
  -webkit-transition: transform 1s;
  transition: transform 1s;
}
.stages_section .stage_number:not(.showed) > * {
  transform: translate3d(0, 120%, 0);
  -moz-transform: translate3d(0, 120%, 0);
  -ms-transform: translate3d(0, 120%, 0);
  -webkit-transform: translate3d(0, 120%, 0);
  -o-transform: translate3d(0, 120%, 0);
}

.stages_section .stage_number {
  line-height: 1.5em;
}
@media screen and (min-width: 1280px) {
  .stages_section .stage_number {
    font-size: 160%;
  }
}
@media screen and (max-width: 1279px) {
  .stages_section .stage_number {
    font-size: 140%;
  }
}

.participants .author_name {
  line-height: 1.5em;
}
@media screen and (min-width: 1280px) {
  .participants .author_name {
    font-size: 200%;
  }
}
@media screen and (max-width: 1279px) {
  .participants .author_name {
    font-size: 160%;
  }
}

@media screen and (min-width: 1280px) {
  .stages_section {
    margin-top: 140px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .stages_section {
    margin-top: 120px;
  }
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .stages_section {
    margin-top: 90px;
  }
}
@media screen and (max-width: 639px) {
  .stages_section {
    margin-top: 60px;
  }
}

.stages_section {
  position: relative;
  z-index: 2;
}
.stages_section .section_title {
  text-align: center;
  margin: 0 auto;
}
.stages_section .stages_list {
  position: relative;
  margin-top: 90px;
}
.stages_section .stages_list:before {
  display: block;
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  height: 100%;
  border-left: 1px solid #e5e5e5;
  opacity: 0.5;
}
.stages_section .stages_list:after {
  display: block;
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -9px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #454545;
  background: #ffffff;
}
.stages_section .stage_block {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 180px;
  margin: 0 -12px;
  position: relative;
  z-index: 1;
}
.stages_section .stage_block:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -9px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #454545;
  background: #ffffff;
}
.stages_section .stage_block:nth-child(2n) {
  flex-direction: row-reverse;
}
.stages_section .info_block {
  flex: 0 0 50%;
  max-width: 552px;
  padding-left: 12px;
  padding-right: 12px;
}
.stages_section .image_block {
  flex: 0 0 50%;
  max-width: 552px;
  padding-left: 12px;
  padding-right: 12px;
}
.stages_section .image_block *:has(> img):not(picture),
.stages_section .image_block *:has(> picture) {
  display: block;
}
.stages_section .stage_number {
  font-family: "grapalat-mariam";
  margin-bottom: 20px;
}
.stages_section .date_block {
  margin-bottom: 28px;
  font-family: "grapalat-mariam-bold";
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .stages_section .stage_block {
    padding-bottom: 120px;
  }
  .stages_section .stage_block:before {
    margin-left: -8px;
    width: 16px;
    height: 16px;
  }
  .stages_section .stages_list {
    margin-top: 72px;
  }
  .stages_section .stage_number,
.stages_section .date_block {
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .stages_section .stage_block {
    padding-bottom: 80px;
  }
  .stages_section .stage_block:before {
    margin-left: -7px;
    width: 14px;
    height: 14px;
  }
  .stages_section .stages_list {
    margin-top: 60px;
  }
}
@media screen and (max-width: 959px) {
  .stages_section .stage_number,
.stages_section .date_block {
    margin-bottom: 12px;
  }
}
@media screen and (max-width: 639px) {
  .stages_section .stage_block {
    padding-bottom: 40px;
    padding-left: 16px;
  }
  .stages_section .stage_block:before {
    left: 0;
    margin-left: 0;
    top: 1px;
  }
  .stages_section .stage_block .info_block {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .stages_section .stage_block .image_block {
    flex: 0 0 100%;
    max-width: 100%;
    margin-top: 20px;
  }
  .stages_section .stages_list {
    margin-top: 40px;
  }
  .stages_section .stages_list:before {
    left: -4px;
  }
}

.winner_block {
  text-align: center;
  margin-top: 9px;
  position: relative;
  overflow: hidden;
  z-index: 1;
  padding-top: 64px;
  padding-bottom: 28px;
  counter-increment: serialNumber;
}
.winner_block:before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  padding-bottom: 100%;
  background: linear-gradient(180deg, #fafafa 0%, rgba(250, 250, 250, 0) 100%);
  border-radius: 50% 50% 0 0;
}
.winner_block .date_block {
  font-family: "grapalat-mariam-bold";
  margin-bottom: 22px;
}
.winner_block .section_subtitle {
  margin: 0 auto 28px;
}
.winner_block .model_block {
  max-width: 372px;
  margin: 0 auto;
}
.winner_block .author_name {
  margin-top: 24px;
}
.winner_block .author_prof {
  margin-top: 16px;
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .winner_block {
    padding-top: 56px;
  }
  .winner_block .model_block {
    max-width: 320px;
  }
}
@media screen and (max-width: 639px) {
  .winner_block {
    padding-top: 40px;
  }
  .winner_block .model_block {
    max-width: 320px;
  }
}

.participants {
  margin-top: 130px;
}
.participants .section_subtitle {
  margin: 0 auto;
  text-align: center;
}
.participants ul {
  margin: -32px -12px 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  counter-set: serialNumber1;
}
.participants ul:after {
  display: block;
  content: "";
  flex: 0 0 33.33%;
  max-width: 319px;
}
.participants ul li {
  flex: 0 0 33.3333333333%;
  max-width: 319px;
  padding-left: 12px;
  padding-right: 12px;
  margin-top: 96px;
  counter-increment: serialNumber;
}
@media screen and (min-width: 640px) {
  .participants ul li:nth-child(3n+2) .model_block:before {
    -o-transition-delay: 1s;
    -ms-transition-delay: 1s;
    -moz-transition-delay: 1s;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
  }
  .participants ul li:nth-child(3n+2) .model_block .image_block:after {
    -o-transition-delay: 0.3s;
    -ms-transition-delay: 0.3s;
    -moz-transition-delay: 0.3s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
  }
  .participants ul li:nth-child(3n+2) .model_block .author_prof span,
.participants ul li:nth-child(3n+2) .model_block .author_name span {
    -o-transition-delay: 0.3s;
    -ms-transition-delay: 0.3s;
    -moz-transition-delay: 0.3s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
  }
  .participants ul li:nth-child(3n) .model_block:before {
    -o-transition-delay: 1.3s;
    -ms-transition-delay: 1.3s;
    -moz-transition-delay: 1.3s;
    -webkit-transition-delay: 1.3s;
    transition-delay: 1.3s;
  }
  .participants ul li:nth-child(3n) .model_block .image_block:after {
    -o-transition-delay: 0.6s;
    -ms-transition-delay: 0.6s;
    -moz-transition-delay: 0.6s;
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
  }
  .participants ul li:nth-child(3n) .model_block .author_prof span,
.participants ul li:nth-child(3n) .model_block .author_name span {
    -o-transition-delay: 0.6s;
    -ms-transition-delay: 0.6s;
    -moz-transition-delay: 0.6s;
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
  }
}
@media screen and (max-width: 639px) {
  .participants ul li {
    flex: 0 0 50%;
    max-width: 50%;
    margin-top: 40px;
  }
  .participants ul li:nth-child(2n) .model_block:before {
    -o-transition-delay: 1s;
    -ms-transition-delay: 1s;
    -moz-transition-delay: 1s;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
  }
  .participants ul li:nth-child(2n) .model_block .image_block:after {
    -o-transition-delay: 0.3s;
    -ms-transition-delay: 0.3s;
    -moz-transition-delay: 0.3s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
  }
  .participants ul li:nth-child(2n) .model_block .author_prof span,
.participants ul li:nth-child(2n) .model_block .author_name span {
    -o-transition-delay: 0.3s;
    -ms-transition-delay: 0.3s;
    -moz-transition-delay: 0.3s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .participants ul li {
    margin-top: 72px;
  }
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .participants ul li {
    margin-top: 56px;
  }
}
.participants .author_name {
  margin-top: 20px;
  font-family: "montserrat-medium", "montserratarm";
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .participants {
    margin-top: 100px;
  }
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .participants {
    margin-top: 60px;
  }
}
@media screen and (max-width: 959px) {
  .participants ul {
    margin-top: 0;
  }
  .participants .author_name {
    margin-top: 16px;
  }
}
@media screen and (max-width: 639px) {
  .participants {
    margin-top: 40px;
  }
}
@media screen and (max-width: 479px) {
  .participants .author_name {
    font-size: 140%;
  }
}

.model_block {
  position: relative;
  perspective: 800px;
  transform-style: preserve-3d;
  transform-origin: center;
  -webkit-transfrom-origin: center;
}
.model_block:before {
  position: absolute;
  top: 0;
  left: 0;
  content: counter(serialNumber, decimal-leading-zero);
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  -o-transition: opacity 1s;
  -ms-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
  -o-transition-delay: 0.7s;
  -ms-transition-delay: 0.7s;
  -moz-transition-delay: 0.7s;
  -webkit-transition-delay: 0.7s;
  transition-delay: 0.7s;
}
.model_block .image_block {
  position: relative;
}
.model_block .image_block:before {
  display: block;
  content: "";
  padding-bottom: 150%;
}
.model_block .image_block:after {
  display: block;
  content: "";
  position: absolute;
  z-index: 2;
  background: #ffffff;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-transition: height 1.5s;
  -ms-transition: height 1.5s;
  -moz-transition: height 1.5s;
  -webkit-transition: height 1.5s;
  transition: height 1.5s;
}
.model_block .image_block > a > img,
.model_block .image_block > a > picture img,
.model_block .image_block > img {
  object-fit: cover;
  border-radius: 200px 200px 0 0;
}
.model_block .winner_spinner {
  position: absolute;
  width: 160px;
  right: -80px;
  bottom: 28px;
  opacity: 0;
  -o-transition: opacity 1s;
  -ms-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
  -o-transition-delay: 1s;
  -ms-transition-delay: 1s;
  -moz-transition-delay: 1s;
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.model_block .winner_spinner img {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  transform-origin: center;
  -webkit-transfrom-origin: center;
}
.model_block .author_prof,
.model_block .author_name {
  position: relative;
  overflow: hidden;
}
.model_block .author_prof span,
.model_block .author_name span {
  display: block;
  transform: translate3d(0, 100%, 0);
  -moz-transform: translate3d(0, 100%, 0);
  -ms-transform: translate3d(0, 100%, 0);
  -webkit-transform: translate3d(0, 100%, 0);
  -o-transform: translate3d(0, 100%, 0);
  -o-transition: transform 1s;
  -ms-transition: transform 1s;
  -moz-transition: transform 1s;
  -webkit-transition: transform 1s;
  transition: transform 1s;
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  .model_block .winner_spinner {
    width: 135px;
    height: 135px;
    bottom: 20px;
    right: -68px;
  }
}
@media screen and (max-width: 639px) {
  .model_block .winner_spinner {
    width: 110px;
    height: 110px;
    bottom: 16px;
    right: -55px;
  }
}
@media screen and (max-width: 479px) {
  .model_block .winner_spinner {
    right: -10px;
  }
}

.showed > .model_block .image_block:after {
  height: 0;
}
.showed > .model_block:before {
  opacity: 1;
}
.showed > .model_block .author_name span,
.showed > .model_block .author_prof span {
  transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
}
.showed > .model_block .winner_spinner {
  opacity: 1;
}
.showed > .model_block .winner_spinner img {
  animation: rotateSpinner 20s linear infinite;
  animation-delay: 2s;
}

@keyframes rotateSpinner {
  to {
    transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
  }
}

/*# sourceMappingURL=contest.css.map */
