:root {
  --main-font: "Mulish", sans-serif;
  --accent-font: "Golos Text", sans-serif;
  --fluid-spacer: 1;
  --base-size: calc(16 * var(--fluid-spacer));
  --container-size: 74.5rem;
  --container-padding: 2.75rem;
  --title-size-tiny: 1.25rem;
  --title-size-big: 2.5rem;
  --title-size-base: 5rem;
  --title-size-large: 3.75rem;
  --text-size-tiny: .875rem;
  --text-size-base: 1.125rem;
  --text-size-middle: 1.25rem;
  --section-padding: 3.125rem;
  --section-spacer: 3rem;
  --section-spacer-big: 3rem;
}

@media screen and (max-width: 1280px) {
  :root {
    --fluid-spacer: 0.078125vw;
  }
}
@media screen and (max-width: 767px) {
  :root {
    --fluid-spacer: 0.2381vw;
    --container-padding: 1rem;
    --title-size-base: 3rem;
    --section-spacer: 3rem;
  }
}
html {
  font-size: var(--base-size);
  scroll-behavior: smooth;
}

body {
  font-family: var(--main-font);
  font-size: 1rem;
}

body.no-scroll {
  overflow: hidden;
  touch-action: none;
  -ms-touch-action: none;
}
#feedback{
    margin-top:0;
}
.page-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  
}

.content {
  flex-grow: 1;
  position: relative;
  z-index: 3;
  overflow: hidden;
}
.content::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -12.5rem;
  transform: rotate(-22deg);
  width: 12.5rem;
  height: 55.1875rem;
  display: block;
  z-index: 3;
  pointer-events: none;
  background: url("images/content-decor.webp") bottom right/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .content::before {
    width: 5rem;
    height: 25rem;
    bottom: -5rem;
  }
}
.content--page {
  padding-bottom: 7.5rem;
}
.content--page::before {
  display: none;
}

.title {
  font-family: var(--main-font);
}
.title--base {
  font-size: var(--title-size-base);
  font-weight: 600;
  line-height: 0.88;
  text-transform: uppercase;
}
.title--bold {
  font-weight: 700;
}
.title--white {
  color: #fff;
}

.text {
  font-family: var(--accent-font);
  line-height: 1.2;
}
.text--base {
  font-size: var(--text-size-base);
}
.text--middle {
  font-size: var(--text-size-middle);
  font-weight: 400;
}
.text--medium {
  font-weight: 500;
}
.text--semibold {
  font-weight: 600;
}
.text--main {
  font-family: var(--main-font);
}
.text--white {
  color: #fff;
}

.button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 100%;
}
.button:hover {
  cursor: pointer;
}
.button--center {
  margin: 0 auto;
}
.button--base {
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.375rem;
  gap: 0.375rem;
  --icon-size: 1.375rem;
}
@media screen and (max-width: 767px) {
  .button--base {
    font-size: 1rem;
    --icon-size: 1rem;
  }
}
.button--middle {
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-size: 1.25rem;
  font-weight: 600;
  padding: 1rem 1.5rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .button--middle {
    font-size: 1rem;
  }
}
.button--accent {
  color: #000;
  background: #ffcf0d;
}
.button--accent--light {
  color: #fff;
}
.button--underline {
  border-bottom: 1px solid #000;
  padding-bottom: 0.25rem;
}
.button--arrow .button__icon {
  transform: rotate(-45deg);
  transition: 0.3s transform;
}
.button--arrow:hover .button__icon {
  transform: rotate(0);
}
.button__icon {
  flex-shrink: 0;
  width: var(--icon-size);
  height: var(--icon-size);
}
@media screen and (min-width: 768px) {
  .button--mobile {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .button--desktop {
    display: none;
  }
}

.logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.logo__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.burger {
  width: 2rem;
  height: 1rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.burger__item {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 0.125rem;
  background: #000;
  transition: 0.3s transform, 0.3s rotate, 0.3s top, 0.3s opacity;
}
.burger__item:nth-child(2) {
  top: calc(100% - 0.125rem);
}
.burger__item:nth-child(3) {
  top: calc(50% - 0.0625rem);
}
.burger.active .burger__item:nth-child(1) {
  transform: rotate(45deg);
  top: calc(50% - 1px);
}
.burger.active .burger__item:nth-child(2) {
  transform: rotate(-45deg);
  top: calc(50% - 1px);
}
.burger.active .burger__item:nth-child(3) {
  opacity: 0;
}

.header {
  border-bottom: 1px solid #000000;
  position: relative;
  z-index: 10;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .header {
    position: sticky;
    top: 0;
  }
}
.header__row {
  display: flex;
  align-items: stretch;
  height: 4rem;
}
@media screen and (max-width: 767px) {
  .header__row {
    align-items: center;
    justify-content: space-between;
    height: 3rem;
  }
}
.header__logo {
  align-self: center;
  color: #000;
  width: 5.375rem;
  height: 2.375rem;
}
@media screen and (min-width: 768px) {
  .header__burger {
    display: none;
  }
}
.header-nav {
  margin-left: auto;
  height: auto;
  display: flex;
}
@media screen and (max-width: 767px) {
  .header-nav {
    position: fixed;
    background: #fff;
    z-index: 12;
    width: 100vw;
    height: calc(100vh - 3rem);
    left: 0;
    top: 3rem;
    border-top: 1px solid #000;
    align-items: flex-start;
    overflow: auto;
    padding: 1rem 0;
    transition: 0.3s visibility, 0.5s opacity;
    opacity: 0;
    visibility: hidden;
  }
  .header-nav.active {
    opacity: 1;
    visibility: visible;
  }
}
.header-nav__list {
  flex-grow: 1;
  display: flex;
  align-items: stretch;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .header-nav__list {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }
}
.header-nav__item {
  border-left: 1px solid #000000;
}
@media screen and (max-width: 767px) {
  .header-nav__item {
    width: 100%;
    border-left: none;
  }
}
.header-nav__link {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1.75rem;
  font-size: 1rem;
  color: #0E1014;
  transition: 0.3s background-color, 0.3s color;
}
.header-nav__link:hover {
  color: #fff;
  background-color: #000;
}

.year-list {
  display: flex;
  align-items: center;
  transform: translateY(0.75rem);
  margin-left: -1.25rem;
}
@media screen and (max-width: 767px) {
  .year-list {
    margin-left: 0;
    transform: translate(0);
  }
}
.year-list__item {
  flex-shrink: 0;
  transform: rotate(-13deg);
}
.year-item {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.375rem;
  font-weight: 500;
  position: relative;
  height: 4.5rem;
  width: 8.5rem;
}
@media screen and (max-width: 767px) {
  .year-item {
    height: 4rem;
    width: 8rem;
  }
}
.year-item span {
  position: relative;
  z-index: 2;
  transition: 0.3s color;
}
.year-item__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  color: #fbfaf2;;
  transition: 0.3s color;
}
.year-item.active span, .year-item:hover span {
  color: #000000;
}
.year-item.active .year-item__bg, .year-item:hover .year-item__bg {
  color: #ffffff;
}

.hero {
  position: relative;
}
.hero__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero__bg img, .hero__bg video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.hero__content {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .hero__content {
    gap: 2rem;
  }
}
.hero__wrapper {
  position: relative;
  z-index: 3;
  padding: calc(2 * var(--container-padding)) 0 var(--section-padding) 0;
}
.hero__footer {
  display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    gap: 2rem;
    flex-direction: row;
    align-content: flex-end;

}
@media screen and (max-width: 767px) {
  .hero__footer {
    flex-direction: column;
    align-items: flex-start;
  }
}
.hero__header {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.hero__label {
  font-size: 2.5rem;
  font-weight: 600;
  text-transform: uppercase;
  display: flex;
  flex-direction: column;
  padding-bottom: 4rem;
  position: relative;
  color: #fff;
  left: 470px;
}
@media screen and (max-width: 767px) {
  .hero__label {
    font-size: 1.5rem;
    margin: 0 auto;
    padding-bottom: 2rem;
  }
  
  
  .hero__label {
  font-size: 2.5rem;
  font-weight: 600;
  text-transform: uppercase;
  display: flex;
  flex-direction: column;
  padding-bottom: 4rem;
  position: relative;
  color: #fff;
  left: 0px;
}
  
}
.hero__label::after {
  content: "";
  position: absolute;
  width: 100%;
  right: -3.5rem;
  top: 1rem;
  height: 8.125rem;
  background: url("images/hero/hero-text.svg") center center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .hero__label::after {
    height: 4rem;
  }
}
.hero__logo {
  width: 35rem;
  max-width: 100%;
  height: 10.25rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .hero__logo {
    width: 23.75rem;
        height: 6.75rem;
  }
}
.hero__logo::before {
  content: "";
  position: absolute;
  left: 100%;
  bottom: 2.5rem;
  /*background: url("images/hero/arrow-right.svg") center center/contain no-repeat;*/
  height: 2.5rem;
  width: 7.125rem;
  transform: rotate(60deg);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .hero__logo::before {
    bottom: unset;
    top: calc(100% + 2rem);
    transform: rotate(90deg);
    left: 90%;
  }
}
.hero__logo::after {
  content: "";
  position: absolute;
  left: 13.75rem;
  top: calc(100% + 1.25rem);
  /*background: url("images/hero/arrow-bottom.svg") center center/contain no-repeat;*/
  height: 3.75rem;
  width: 9.5rem;
  transform: rotate(170deg);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .hero__logo::after {
    width: 6.3rem;
    height: 2.5rem;
    left: 12rem;
  }
}
.hero__title {
  font-size: 2.25rem;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.25;
  max-width: 31.25rem;
  width: 100%;
  position: relative;
  color:#ffffff;
}
@media screen and (max-width: 767px) {
  .hero__title {
    font-size: 1.75rem;
  }
}
.hero__year {
  transform: rotate(12deg);
  position: absolute;
  right: -1rem;
  bottom: 1rem;
  width: 5.25rem;
  height: 3rem;
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .hero__year {
    width: 4rem;
    height: 1.75rem;
    font-size: 1rem;
  }
}

.page-header {
  position: relative;
  z-index: 2;
}
.page-header::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 120%;
  background: url("images/page-header.webp") center center/contain no-repeat;
  z-index: 1;
  pointer-events: none;
}
.page-header__wrapper {
  padding: calc(2 * var(--container-padding)) 0;
  position: relative;
  z-index: 2;
}
.page-header__logo {
  width: 30.625rem;
  height: auto;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .page-header__logo {
    width: 18.75rem;
    height: 3.75rem;
  }
}

.section__wrapper {
  padding: var(--section-padding) 0;
}
.section__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.section__header--bottom {
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .section__header {
    flex-direction: column;
    align-items: flex-start;
  }
}
.section__logo {
  width: 21rem;
  height: 4.375rem;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .section__logo {
    width: 10rem;
    height: 2rem;
  }
  .section__logo--desktop {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .section__logo--mobile {
    display: none;
  }
}
.section__column {
  display: flex;
  flex-direction: column;
  gap: var(--section-spacer);
}
.section__title {
  position: relative;
  width: max-content;
  max-width: 100%;
}
.section__title--row {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .section__title--row {
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.5rem;
  }
}
.section__title::before {
  position: absolute;
  content: attr(data-number);
  font-size: 1.125rem;
  font-family: var(--accent-font);
  left: 100%;
  top: 0;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .section__title--desktop::before {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .section__title--mobile::before {
    display: none;
  }
}

.partners__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.875rem;
  grid-auto-rows: 10.375rem;
}
@media screen and (max-width: 767px) {
  .partners__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
.partners-item {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #000000;
  padding: 1.5rem;
}
.partners-item__img {
  width: auto;
  max-height: 5.75rem;
  height: 100%;
  object-fit: contain;
}
.partners-item__img--big {
  max-height: 6.875rem;
}

.slider {
  position: relative;
  -webkit-user-select: none;
  user-select: none;
}
.slider--auto {
  overflow: hidden;
}
.slider--auto .swiper {
  overflow: visible;
}
.slider-navigation {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 768px) {
  .slider-navigation--mobile {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .slider-navigation--desktop {
    display: none;
  }
}
.slider-button {
  width: 4.5rem;
  height: 4.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
 
  color: #000;
  border: 1px solid transparent;
  transition: 0.3s color, 0.3s background-color;
}
@media screen and (max-width: 767px) {
  .slider-button {
    width: 3rem;
    height: 3rem;
  }
}
.slider-button:hover {
  background-color: #000;
  color: #fff;
  cursor: pointer;
}
.slider-button--bordered {
  border: 1px solid #000;
}
.slider-button--absolute {
  position: absolute;
  top: 50%;
  z-index: 3;
  transform: translateY(-50%);
}
.slider-button--absolute.slider-button--prev {
  left: 1.75rem;
}
@media screen and (max-width: 767px) {
  .slider-button--absolute.slider-button--prev {
    left: 0.5rem;
  }
}
.slider-button--absolute.slider-button--next {
  right: 1.75rem;
}
@media screen and (max-width: 767px) {
  .slider-button--absolute.slider-button--next {
    right: 0.5rem;
  }
}
.slider-button .icon {
  width: 2.25rem;
  height: 2.25rem;
}
@media screen and (max-width: 767px) {
  .slider-button .icon {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.gallery__grid {
  display: grid;
  grid-template-columns: 17.125rem minmax(0, 1fr);
  gap: var(--section-spacer);
}
@media screen and (max-width: 767px) {
  .gallery__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
.gallery-slider {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 56.25%;
  position: relative;
  border-radius: 1.5rem;
  overflow: hidden;
}
.gallery-slider__item {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.5rem;
  overflow: hidden;
}
.gallery-slider__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery-slider-element {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.results-list {
  counter-reset: result;
}
.results-list__item {
  padding: 1.5rem 0;
  border-bottom: 1px solid #000;
}
.results-list__item:first-child {
  padding-top: 0;
}
.results-list__item:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.results-item {
  counter-increment: result;
}
.results-item__row {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .results-item__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
}
.results-item__row::before {
  content: "0" counter(result);
  flex-shrink: 0;
  font-size: 4rem;
  font-weight: 300;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .results-item__row::before {
    position: absolute;
    font-size: 2.5rem;
  }
}
.results-item__arrow {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: auto;
  align-self: stretch;
  transform: rotate(17deg);
}
@media screen and (max-width: 767px) {
  .results-item__arrow {
    height: 3rem;
    transform: rotate(0deg) scale(1.2);
    width: 3rem;
    margin-left: auto;
  }
}
.results-item__arrow .arrow {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: flex;
  align-items: center;
  justify-content: center;
}
.results-item__arrow .arrow img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.results-item__company {
  max-width: 25rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .results-item__company {
    max-width: 100%;
  }
}
.results-item__title {
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.25;
  max-width: 23.125rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .results-item__title {
    padding-left: 4rem;
    font-size: 1.25rem;
  }
}
.results-company {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.results-company__icon {
  width: 5rem;
  height: 5rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .results-company__icon {
    width: 3rem;
    height: 3rem;
  }
}
.results-company__info {
  font-size: 1.5rem;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .results-company__info {
    font-size: 1.25rem;
  }
}
.results-company__info span {
  font-weight: 400;
}

.nominations-slider {
  width: 100%;
  counter-reset: nominations;
}
.nominations-slider__item {
  width: 23.75rem;
}
@media screen and (max-width: 767px) {
  .nominations-slider__item {
    width: 80vw;
  }
}
.nominations-item {
  height: auto;
  display: flex;
  flex-direction: column;
  counter-increment: nominations;
}
.nominations-item:nth-child(3n+1) .nominations-item__count {
  background-color: #FFCF0D;
}
.nominations-item:nth-child(3n+2) .nominations-item__count {
  background-color: #000000;
  color: #fff;
}
.nominations-item:nth-child(3n+3) .nominations-item__count {
  background: #FFCF0D;
}
.nominations-item:nth-child(3n) .nominations-item__company {
  background: #FFCF0D;
}
.nominations-item__wrapper {
  height: 100%;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  border: 1px solid #000;
  overflow: hidden;
  border-radius: 1.5rem;
}
.nominations-item__work {
  width: 63%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.nominations-item__img {
  position: relative;
  padding-bottom: 110%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  flex-shrink: 0;
}
.nominations-item__img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.nominations-item__content {
  flex-grow: 1;
  padding: 1.5rem 2.125rem 2.125rem 2.125rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.nominations-item__title {
  font-weight: 600;
  font-size: 1.75rem;
  line-height: 1.25;
  text-transform: uppercase;
  color: #000;
}
.nominations-item__text {
  font-size: 16px;
  font-family: var(--accent-font);
  font-weight: 400;
}
.nominations-item__info {
  display: flex;
  align-items: stretch;
}
.nominations-item__company, .nominations-item__count {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  border-left: 1px solid #000;
  border-top: 1px solid #000;
}
.nominations-item__count::before {
  content: "0" counter(nominations);
  font-size: 4rem;
  line-height: 1.2;
  text-transform: uppercase;
  text-align: center;
}
.nominations-item__company img {
  width: 5.75rem;
  height: 5.75rem;
  object-fit: contain;
}
.nominations-item__subinfo {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.about {
  position: relative;
}
.about__grid {
  display: flex;
  align-items: flex-end;
  gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .about__grid {
    flex-direction: column;
    align-items: flex-start;
  }
}
.about__content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex-shrink: 0;
}
.about-img {
  position: relative;
  flex-grow: 1;
}
.about-img__year {
  position: absolute;
  right: 0;
  top: 0;
}
.about-img__logo {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 14rem;
  height: 4rem;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .about-img__logo {
    height: 3rem;
    width: 10.25rem;
  }
}
.about-img__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 2.5rem;
}
.about-img__main {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.about-text {
  max-width: 30.625rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.about-text__decor {
  position: relative;
}
@media screen and (max-width: 767px) {
  .about-text__decor {
    font-size: 1.2rem;
  }
}
.about-text__decor::before {
  content: "";
  position: absolute;
  width: 16.25rem;
  height: 100%;
  right: 3rem;
  top: 0;
  background: url("images/about/text.svg") center right/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .about-text__decor::before {
    right: -0.75rem;
        top: 0.1rem;
        width: 12rem;
  }
}
.about-img {
  display: flex;
  align-items: center;
  justify-content: center;
}

.checkbox {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  --color: #000;
}
@media screen and (max-width: 767px) {
  .checkbox {
    gap: 1rem;
  }
}
.checkbox--center {
  margin: 0 auto;
  max-width: 32.5rem;
  width: 100%;
}
.checkbox:hover {
  cursor: pointer;
}
.checkbox--white {
  --color: #fff;
}
.checkbox:has(:checked) .checkbox__checkmark .icon {
  color: var(--color);
}
.checkbox__input {
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  top: 0;
  left: 0;
}
.checkbox__checkmark {
  width: 1.5rem;
  height: 1.5rem;
  border: 1px solid var(--color);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .checkbox__checkmark {
    width: 1rem;
    height: 1rem;
  }
}
.checkbox__checkmark .icon {
  width: 1rem;
  height: 1rem;
  color: transparent;
  transition: 0.3s color;
}
@media screen and (max-width: 767px) {
  .checkbox__checkmark .icon {
    width: 0.5rem;
    height: 0.5rem;
  }
}
.checkbox__text {
  color: var(--color);
  font-family: var(--accent-font);
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .checkbox__text {
    font-size: 0.75rem;
  }
}

.form {
  position: relative;
  z-index: 3;
}
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem 3.125rem;
}
@media screen and (max-width: 767px) {
  .form-grid {
    gap: 1.25rem;
  }
}
.form-grid--small {
  gap: 1.25rem;
}
.form-grid__item {
  grid-column: 1/-1;
}
.form-grid__item--half {
  grid-column: auto;
}
@media screen and (max-width: 767px) {
  .form-grid__item {
    grid-column: 1/-1;
  }
}
.form-grid__row {
  display: flex;
  align-items: center;
  gap: 3.125rem;
}
@media screen and (max-width: 767px) {
  .form-grid__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
}
.form__title {
  font-size: 4rem;
  text-align: center;
  font-weight: 700;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .form__title {
    font-size: 2rem;
  }
}
.form__wrapper {
  max-width: 45.625rem;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.form__button {
  min-width: 11rem;
  flex-shrink: 0;
}

.input {
  width: 100%;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  position: relative;
  --color: #000;
  border: 1px solid var(--color);
  padding: var(--x-padding);
  color: var(--color);
  font-size: 1.25rem;
  font-family: var(--accent-font);
  --x-padding: .5rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .input {
    font-size: 1rem;
    height: 3rem;
  }
}
.input--padding--big {
  --x-padding: 1rem 2rem;
}
@media screen and (max-width: 767px) {
  .input--padding--big {
    --x-padding: .5rem 1rem;
  }
}
.input--textarea {
  height: 9.125rem;
  padding: var(--x-padding);
  resize: none;
}
@media screen and (max-width: 767px) {
  .input--textarea {
    height: 6rem;
  }
}
.input--white {
  --color: #fff;
}
.input:has(select) {
  padding: 0;
}
.input:has(select) .input__item {
  padding: var(--x-padding);
  display: flex;
  align-items: center;
}
.input:has(select:focus) .input__icon {
  transform: rotate(180deg);
}
.input__icon {
  width: 2rem;
  height: 2rem;
  object-fit: contain;
  color: var(--color);
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .input__icon {
    width: 1.5rem;
    height: 1.5rem;
  }
}
.input__icon--select {
  position: absolute;
  right: 3.75rem;
  top: calc(50% - 1rem);
  pointer-events: none;
  transition: 0.3s transform;
}
@media screen and (max-width: 767px) {
  .input__icon--select {
    right: 1rem;
    top: calc(50% - 0.75rem);
  }
}
.input__item {
  width: 100%;
  height: 100%;
  flex-grow: 1;
}
.input__item::placeholder {
  opacity: 0.5;
}

.social {
  display: flex;
  align-content: center;
  gap: 0.75rem;
}
.social__item {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.social__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: #fff;
  transition: 0.3s color;
}
.social__link:hover {
  color: var(--brand-color);
}
.social__link--vk {
  --brand-color: #0077FF;
}
.social__link--tg {
  --brand-color: #24A1DE;
}
.social__icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.footer {
  background: #000;
  overflow: hidden;
}
.footer-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: max-content;
  max-width: 100%;
  gap: 0.875rem 3.75rem;
}
@media screen and (max-width: 767px) {
  .footer-list {
    grid-template-columns: minmax(0, 1fr);
  }
}
.footer-list__item {
  flex-shrink: 0;
}
.footer-list__link {
  color: #fff;
  font-size: var(--text-size-middle);
  line-height: 1.2;
  font-family: var(--accent-font);
}
.footer-info__wrapper {
  padding: 4.375rem 0 3rem 0;
}
.footer-info__content {
  display: flex;
  flex-direction: column;
  gap: 7.75rem;
}
@media screen and (max-width: 767px) {
  .footer-info__content {
    gap: 3rem;
  }
}
.footer-info__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
@media screen and (max-width: 767px) {
  .footer-info__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
  }
}
.footer-info__text {
  font-size: var(--text-size-middle);
  font-weight: 400;
  font-family: var(--accent-font);
  color: #fff;
}
.footer-form__row {
  display: flex;
  align-items: flex-start;
  gap: 3.5rem;
}
@media screen and (max-width: 767px) {
  .footer-form__row {
    flex-direction: column;
    gap: 1.5rem;
  }
}
.footer-form__header {
  max-width: 29rem;
  width: 100%;
  flex-shrink: 0;
}
.footer-form__wrapper {
  padding: 4.375rem 0 3.75rem 0;
}
@media screen and (max-width: 767px) {
  .footer-form__wrapper {
    padding: 3rem 0;
  }
}
.footer-creative {
  display: flex;
  flex-direction: column;
  max-width: 100%;
  overflow: hidden;
  --fluid-spacer-footer: 0.078125vw;
}
@media screen and (max-width: 767px) {
  .footer-creative {
    --fluid-spacer-footer: var(--fluid-spacer);
  }
}
.footer-creative__item {
  font-size: calc(145 * var(--fluid-spacer-footer));
  line-height: 0.8;
  font-weight: 700;
  color: white;
  text-transform: uppercase;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .footer-creative__item {
    font-size: 2.9rem;
  }
}
.footer-creative__item:not(:last-child) {
  height: 4.125rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .footer-creative__item:not(:last-child) {
    height: 1.5rem;
  }
}
.footer-creative__item:nth-child(1) {
  color: rgba(255, 255, 255, 0.2);
}
.footer-creative__item:nth-child(2) {
  color: rgba(255, 255, 255, 0.5);
}

[data-animation] {
  opacity: 0;
  visibility: hidden;
}

[data-animation-final],
.scroll-reveal-initialized [data-animation] {
  visibility: visible;
}

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