@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
* {
  margin: 0;
  border: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

nav,
footer,
header,
aside {
  display: block;
}

html,
body {
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-size: 16px;
  scroll-behavior: smooth;
}

input,
button,
textarea {
  font-family: inherit;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
  background: transparent;
}

button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

a,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul,
li {
  list-style: none;
}

img {
  vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: inherit;
  font-size: inherit;
}

body {
  font-family: "Inter", sans-serif;
}

.lock {
  overflow: hidden;
}

.wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  background: #0D2E00;
}

[class*=__container] {
  max-width: 1070px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}

.h2 {
  color: #FFF;
  font-family: Inter;
  font-size: clamp(48px, 7vw, 64px);
  font-weight: 800;
}

.h3 {
  color: #FFF;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 92%;
  letter-spacing: -0.48px;
  text-transform: uppercase;
}

.main {
  flex: 1 1 auto;
}

section {
  scroll-margin-top: 200px;
}

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

.header {
  position: fixed;
  width: 100%;
  padding: 12px 0;
  border-bottom: 1px solid #1F2937;
  background: #0A4900;
}
.header__content {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.header__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header__logo {
  position: relative;
  z-index: 40;
  color: #FFF;
  font-size: 22px;
  font-weight: 800;
  line-height: 140%;
  text-transform: uppercase;
}
.header__menu {
  display: flex;
  align-items: center;
}
.header__menu a {
  color: #D1D5DB;
  font-size: 15px;
  font-weight: 400;
  line-height: 24px;
}
.header__years {
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.1);
  padding: 12px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.header__text {
  color: #FFF;
  text-align: center;
  font-family: Montserrat;
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
}

@media (max-width: 991px) {
  .menu__icon {
    display: flex;
    align-items: center;
    z-index: 50;
    position: relative;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    cursor: pointer;
  }
  .menu__icon span, .menu__icon::before, .menu__icon::after {
    right: 0;
    position: absolute;
    height: 10%;
    width: 100%;
    transition: all 0.3s ease 0s;
    background: #fff;
  }
  .menu__icon::before, .menu__icon::after {
    content: "";
    height: 2px;
  }
  .menu__icon::before {
    top: 8px;
  }
  .menu__icon::after {
    bottom: 8px;
    height: 2px;
  }
  .menu__icon span {
    height: 2px;
    top: 50%;
    transform: scale(1) translate(0px, -50%);
  }
  .menu__icon_active span {
    transform: rotate(45deg) scale(0) translate(0px, -50%);
  }
  .menu__icon_active::before {
    top: 50%;
    transform: rotate(-45deg) translate(0px, -50%);
  }
  .menu__icon_active::after {
    bottom: 50%;
    transform: rotate(45deg) translate(0px, 50%);
  }
}
.menu__body {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media (max-width: 991px) {
  .menu__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    position: fixed;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    padding: 100px 15px 0;
    background: #0A4900;
    transition: left 0.3s ease 0s;
    overflow: auto;
  }
  .menu__body_active {
    left: 0;
  }
  .menu__body::before {
    content: "";
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 16;
  }
}
.menu__list {
  display: flex;
  align-items: center;
  gap: 24px;
}
@media (max-width: 1439px) {
  .menu__list {
    flex-direction: column;
    gap: 96px;
  }
}
.menu__link {
  color: #2C2C30;
  font-size: 18px;
  font-weight: 600;
}

.footer {
  padding: 60px 0;
}
.footer__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}
.footer__icons {
  width: -moz-fit-content;
  width: fit-content;
}
.footer__icons img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer__partners {
  border-radius: 24px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  width: 100%;
  padding: 12px 24px;
}
.footer__partners a img {
  max-width: 200px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 32px;
  flex-wrap: wrap-reverse;
}
@media (max-width: 991px) {
  .footer__row {
    justify-content: center;
  }
}
.footer__text {
  color: #9F9C90;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
}
.footer__menu {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (max-width: 575px) {
  .footer__menu {
    flex-direction: column;
  }
}
.footer__menu a {
  color: #FFF;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
}

.hero {
  margin: 142px 0 0;
  padding: 80px 0;
  background: linear-gradient(84deg, #0A4900 0%, #00A642 40.51%, #237500 99.12%);
}
.hero__content {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.hero__title {
  color: #FD0;
  font-size: 50px;
  font-weight: 800;
}
.hero__text {
  color: #FFF;
  font-size: 25px;
  font-weight: 400;
  line-height: 32px;
}
.hero__link {
  color: #FFF;
  font-family: Montserrat;
  font-size: 18px;
  font-weight: 900;
  text-transform: uppercase;
  border-radius: 16px;
  background: #FD0;
  box-shadow: 0 -3px 3px 0 #7D6D00 inset;
  padding: 15px 24px;
  width: -moz-fit-content;
  width: fit-content;
}

.about {
  padding: 80px 0;
}
.about__content {
  display: flex;
  flex-direction: column;
  gap: 64px;
}
.about__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 64px 40px;
}
@media (max-width: 575px) {
  .about__grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
}
.about__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.about__name {
  color: #FFF;
  text-align: center;
  font-size: 25px;
  font-weight: 700;
  line-height: 32px;
}
.about__text {
  color: #FFF;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
}

.play {
  padding: 100px 0;
  background: linear-gradient(135deg, #237500 0%, #0A4900 50%, #00A642 100%);
}
.play__content {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
.play__column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.play__text {
  color: #FFF;
  font-size: 25px;
  font-weight: 700;
  line-height: 32px;
}
.play__block {
  border-radius: 16px;
  border: 1px solid rgba(55, 65, 81, 0.5);
  background: rgba(255, 255, 255, 0.05);
  padding: 40px;
  position: relative;
}
.play__img {
  width: -moz-fit-content;
  width: fit-content;
}
.play__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.play__link {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 120px;
}
@media (max-width: 575px) {
  .play__link {
    bottom: auto;
    top: 50%;
    transform: translate(-50%, -50%);
  }
}

.work {
  padding: 80px 0;
}
.work__contnet {
  display: flex;
  flex-direction: column;
  gap: 64px;
}
.work__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
@media (max-width: 991px) {
  .work__grid {
    grid-template-columns: repeat(1, 1fr);
  }
}
.work__card {
  border-radius: 12px;
  border: 1px solid #2CFF61;
  background: rgba(44, 63, 35, 0.34);
  box-shadow: 0 0 22px 0 #2CFF61;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 33px;
}
.work__name {
  color: #FFF;
  font-size: 21px;
  font-weight: 700;
  line-height: 28px;
}

.number {
  padding: 80px 0;
}
.number__content {
  display: flex;
  flex-direction: column;
  gap: 64px;
}
.number__column {
  max-width: 597px;
  width: 100%;
  margin: 0 auto;
  padding: 60px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 32px 60px;
  border-radius: 16px;
  border: 1px solid #FD0;
  background: #17340C;
  box-shadow: 0 4px 26.4px 0 rgba(255, 221, 0, 0.32);
}
.number__card {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.number__num {
  color: #FD0;
  text-align: center;
  font-size: 36px;
  font-weight: 700;
  line-height: 32px;
}
.number__text {
  color: #D1D5DB;
  text-align: center;
  font-size: 17px;
  font-weight: 400;
  line-height: 24px;
}

.reviews {
  padding: 80px 0;
}
.reviews__content {
  display: flex;
  flex-direction: column;
  gap: 64px;
}
.reviews__column {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.reviews__card {
  display: flex;
  flex-direction: column;
  gap: 16px;
  border-radius: 12px;
  border: 1px solid #FFF;
  background: #032510;
  padding: 33px;
}
.reviews__name {
  color: #FFF;
  font-size: 17px;
  font-weight: 700;
  line-height: 24px;
}
.reviews__text {
  color: #FFF;
  font-size: 17px;
  font-weight: 400;
  line-height: 26px;
}

.contact {
  padding: 80px 0;
}
.contact__content {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
.contact__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}
.contact__text {
  color: #FFF;
  text-align: center;
  font-size: 25px;
  font-weight: 400;
  line-height: 32px;
}
.contact__address {
  color: #FFF;
  text-align: center;
  font-size: 17px;
  font-weight: 400;
  line-height: 24px;
}
.contact__form {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 624px;
  width: 100%;
  margin: 0 auto;
  border-radius: 12px;
  border: 1px solid #FFF;
  background: #032510;
  padding: 32px 24px;
}
.contact__inp {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #FFF;
  padding: 8px 16px;
  background: transparent;
  color: #FFF;
  text-align: center;
  font-size: 15px;
  font-weight: 400;
  line-height: 24px;
}
.contact__inp::-moz-placeholder {
  color: #FFF;
}
.contact__inp::placeholder {
  color: #FFF;
}
.contact__btn {
  width: 100%;
}
.contact__column {
  border-radius: 16px;
  border: 1px solid #374151;
  background: #272727;
  padding: 60px 40px;
}
.contact__title-sub {
  color: #FFF;
  font-size: 36px;
  font-weight: 700;
  line-height: 32px;
  margin-bottom: 24px;
}
.contact__txt {
  color: #D1D5DB;
  font-size: 17px;
  font-weight: 400;
  line-height: 24px;
}

.privacy {
  margin: 160px 0 0;
  background: #fff;
  padding: 60px 0;
}
.privacy__title {
  color: #1B1816;
  text-align: center;
  font-family: Inter;
  font-size: clamp(28px, 7vw, 50px);
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 40px;
}
.privacy__text {
  color: #1B1816;
  font-family: Inter;
  font-size: 20px;
  font-weight: 400;
}