@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-Thin.woff") format("woff"),
      url("./fonts/Geologica-Thin.woff2") format("woff2");
   font-weight: 100;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-ExtraLight.woff") format("woff"),
      url("./fonts/Geologica-ExtraLight.woff2") format("woff2");
   font-weight: 200;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-Light.woff") format("woff"),
      url("./fonts/Geologica-Light.woff2") format("woff2");
   font-weight: 300;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-Regular.woff") format("woff"),
      url("./fonts/Geologica-Regular.woff2") format("woff2");
   font-weight: 400;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-Medium.woff") format("woff"),
      url("./fonts/Geologica-Medium.woff2") format("woff2");
   font-weight: 500;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-SemiBold.woff") format("woff"),
      url("./fonts/Geologica-SemiBold.woff2") format("woff2");
   font-weight: 600;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-Bold.woff") format("woff"),
      url("./fonts/Geologica-Bold.woff2") format("woff2");
   font-weight: 700;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-ExtraBold.woff") format("woff"),
      url("./fonts/Geologica-ExtraBold.woff2") format("woff2");
   font-weight: 800;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
      url("./fonts/Geologica-Black.woff") format("woff"),
      url("./fonts/Geologica-Black.woff2") format("woff2");
   font-weight: 900;
   font-style: normal;
}
:root {
   --font-primary: "Geologica";
}

* {
   padding: 0px;
   margin: 0px;
   border: 0px;
   font-size: 14px;
}
*,
*:before,
*:after {
   box-sizing: border-box;
}
:focus,
:active {
   outline: none;
}
a:focus,
a:active {
   outline: none;
}
html {
   scroll-behavior: smooth;
}
html,
body {
   min-width: var(--min-width);
}
body {
   color: #181818;
   line-height: 1.1;
   font-family: var(--font-primary), sans-serif;
   -ms-text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}
input,
button,
textarea {
   font-family: var(--font-primary);
   font-size: inherit;
   line-height: inherit;
}
button {
   cursor: pointer;
   color: inherit;
   background-color: transparent;
}
a {
   color: inherit;
   text-decoration: none;
   cursor: pointer;
}
ul li {
   list-style: none;
}
img {
   vertical-align: top;
}
h1,
h2,
h3,
h4,
h5,
h6 {
   font-weight: inherit;
   font-size: inherit;
}

body.lock {
   overflow: hidden;
   touch-action: none;
   overscroll-behavior: none;
}
.wrapper {
   min-height: 100%;
   display: flex;
   flex-direction: column;
   overflow: hidden;
}
header {
   position: relative;
}
@supports (overflow: clip) {
   .wrapper {
      overflow: clip;
   }
}

.wrapper footer > main {
   flex: 1 1 auto;
}

/* Фикс для слайдеров */
.wrapper > * {
   min-width: 0;
}
[class*="__container"] {
   margin: 0 auto;
   max-width: 1250px;
   padding: 0 35px;
}
@media (max-width: 1100px) {
   [class*="__container"] {
      max-width: 100vw;
      padding: 0 35px;
   }
}
@media (max-width: 720px) {
   [class*="__container"] {
      padding: 0 18px;
   }
}
.h1 {
   font-size: 48px;
   font-weight: 800;
   line-height: 60px;
   letter-spacing: -0.05rem;
}
.h2 {
   font-size: 36px;
   font-weight: 600;
   line-height: 42px;
   letter-spacing: -0.03rem;
}
.fs30 {
   font-size: 30px;
   font-weight: 400;
   line-height: 42px;
   letter-spacing: -0.03rem;
}
.fs17 {
   font-size: 17px;
   font-weight: 300;
   line-height: 24px;
   letter-spacing: -0.03rem;
}
.fs24 {
   font-size: 24px;
   font-weight: 500;
   line-height: 36px;
   letter-spacing: -0.03rem;
}
.fs20 {
   font-size: 20px;
   font-weight: 300;
   line-height: 24px;
   letter-spacing: -0.03rem;
}
.grey {
   color: #9f9f9f;
}
/******************************************************/
.header__wrapper {
}
.header__container {
}
.header__content {
   display: flex;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
   padding: 45px 0;
}
.header__block {
}
.header__logo {
}
.header__nav {
}
.header__list {
   display: flex;
   flex-direction: row;
   gap: 48px;
}
.header__item {
}
.header__link {
   font-size: 17px;
   font-weight: 300;
   line-height: 24px;
   transition: all 0.3s ease 0s;
}
/*************************************/
.main-banner {
   margin: 72px 0;
}
.main-banner__container {
}
.main-banner__content {
   position: relative;
}
.main-banner__block:nth-child(1) {
   position: relative;
   z-index: 3;
}
.main-banner__block:nth-child(2) {
   position: absolute;
   z-index: 2;
   top: -70px;
   right: 0;
   display: flex;
   justify-content: flex-end;
}
.main-banner__top {
   max-width: 60%;
}
.main-banner__title {
}

.main-banner__top .main-banner__subtitle {
   margin: 30px 0 48px 0;
}

.main-banner__btn {
   display: block;
   text-align: center;
   font-size: 24px;
   font-weight: 600;
   line-height: 36px;
   letter-spacing: -0.03rem;
   padding: 18px 24px;
   max-width: 465px;
   width: 100%;
   background: #fff240;
   border-radius: 18px;
   border: 3px solid #181818;
   text-transform: uppercase;
   transition: all 0.3s ease 0s;
}

.main-banner__bottom {
   margin-top: 120px;
}
.main-banner__quest {
}
.main-banner__quest .main-banner__subtitle {
}

.main-banner__list {
   display: flex;
   flex-direction: column;
   gap: 18px;
   margin: 30px 0;
   max-width: 60%;
}
.main-banner__item {
   display: flex;
   flex-direction: row;
   align-items: center;
   gap: 18px;
}
.main-banner__num {
   border-radius: 50%;
   background: #181818;
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: center;
   width: 48px;
   height: 48px;
}
.main-banner__num span {
   display: block;
   font-size: 24px;
   font-weight: 500;
   line-height: 36px;
   letter-spacing: -0.03rem;
   color: #ffffff;
}
.main-banner__text {
}

.main-banner__link {
   cursor: pointer;
   color: #ff55a1;
   transition: all 0.3s ease 0s;
   text-decoration: underline;
}

.main-banner__img {
   max-width: 540px;
}
.main-banner__img svg {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
.main-banner__img object {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
.main-banner__img img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
.main-banner__img object img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
/******************************************************/
.priz {
   margin-bottom: 72px;
}
.priz__container {
}
.priz__content {
}
.priz__title {
   margin-bottom: 30px;
}
.priz__block {
   display: flex;
   flex-direction: row;
}
.priz__item {
   display: flex;
   flex-direction: column;
   align-items: center;
   flex: 0 0 25%;
   padding: 36px;
}
.priz__img {
   margin-bottom: 36px;
   width: 208px;
   height: 208px;
}
.priz__img svg {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
.priz__img object {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
.priz__img img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
.priz__text-title {
   margin-bottom: 12px;
}
.priz__subtext {
   margin-top: 30px;
}
/************************************************/
.form-priz {
   margin-bottom: 72px;
}
.form-priz__container {
}
.form-priz__content {
}
.form-priz__wrapper {
   padding: 36px 60px;
   background: #fff240;
   position: relative;
   border-radius: 24px;
   border: 3px solid #181818;
}
.form-priz__title {
   margin-bottom: 30px;
}
.form-priz__block-1 {
}
.form-priz__block-2 {
   margin: 30px 0;
}
.form-priz__label {
   margin-bottom: 18px;
}
.form-priz__row {
   display: flex;
   flex-direction: row;
   gap: 20px;
}
.form-priz__inp {
   width: 100%;
   border-radius: 15px;
   border: 2px solid #181818;
   font-size: 20px;
   font-weight: 300;
   line-height: 24px;
   letter-spacing: -0.03rem;
   padding: 18px 24px;
}
.form-priz__inp::placeholder {
   color: #9f9f9f;
}
.form-priz__block-1 .form-priz__row .form-priz__inp,
.form-priz__block-2 .form-priz__row .form-priz__inp {
   flex: 0 0 32%;
}
.form-priz__subblock {
}
.form-priz__ch-wrapper {
   display: flex;
   flex-direction: column;
   gap: 18px;
}
.form-priz__ch-label {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   cursor: pointer;
}
.form-priz__ch-inp {
   appearance: none;
   width: 24px;
   height: 24px;
   border: 1.5px solid #181818;
   border-radius: 6px;
   background-color: #fff;
   cursor: pointer;
   transition:
      color 0.15s ease-in-out,
      background-color 0.15s ease-in-out,
      border-color 0.15s ease-in-out,
      box-shadow 0.15s ease-in-out;
   margin: 0;
}
.form-priz__ch-inp:checked {
   background-color: #181818;
   border-color: #181818;
   background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-priz__link {
   text-decoration: underline;
   transition: all 0.3s ease 0s;
}
.form-priz__btn {
   display: block;
   width: 100%;
   margin-top: 72px;
   text-align: center;
   font-size: 24px;
   font-weight: 600;
   line-height: 36px;
   letter-spacing: 0rem;
   text-transform: uppercase;
   color: #ffffff;
   background: #181818;
   transition: all 0.3s ease 0s;
   padding: 18px 36px;
   border-radius: 18px;
   border: 3px solid #181818;
}
.form-priz__img {
   position: absolute;
   bottom: 80px;
   right: -105px;
}
/*******************************************/
.faq {
   margin-bottom: 72px;
}
.faq__container {
}
.faq__content {
}
.faq__title {
   margin-bottom: 30px;
}
.faq__wrapper {
   padding: 0px 36px;
   border-radius: 24px;
   background: #f5f5f5;
}
.faq__item {
   border-bottom: 1px solid #e5e5e5;
   padding: 30px 0;
}
.faq__item:last-child {
   border-bottom: 0px solid #e5e5e5;
}
.faq__question {
   display: flex;
   justify-content: space-between;
   align-items: center;
   cursor: pointer;
}
.faq__question .fs24 {
   padding-right: 15px;
}
.faq__arrow {
   height: 15px;
   transform: rotate(-180deg);
   transition: transform 0.3s ease;
}
.faq__answer {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.3s ease;
}
.faq__answer-wr {
   margin-top: 30px;
}
.faq__item.open .faq__answer {
   max-height: 200px;
}
.faq__question.active .faq__arrow {
   transform: rotate(0deg);
}
/**************************************************************/
.footer {
   margin-bottom: 72px;
}
.footer__container {
}
.footer__content {
}
.footer__wrapper {
}
.footer__top {
   margin-bottom: 72px;
}
.footer__title {
   margin-bottom: 18px;
}
.footer__subtitle {
}
.footer__sublink {
   color: #ff55a1;
   cursor: pointer;
   transition: all 0.3s ease 0s;
}
.footer__bottom {
   display: flex;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
}
.footer__link {
   display: block;
   width: 100%;
   max-width: 280px;
   text-align: center;
   font-size: 24px;
   font-weight: 600;
   line-height: 36px;
   letter-spacing: 0rem;
   text-transform: uppercase;
   color: #ffffff;
   background: #181818;
   transition: all 0.3s ease 0s;
   padding: 18px 36px;
   border-radius: 18px;
   border: 3px solid #000;
}
.footer__list {
   display: flex;
   flex-direction: row;
   align-items: center;
   gap: 30px;
}
.main-banner__img {
   min-width: 560px;
}
/****************************************/
@media (max-width: 1430px) {
   .priz__item {
      flex: 0 0 20%;
   }
   .priz__block {
      justify-content: space-between;
   }
   .form-priz__img {
      bottom: 70px;
      right: 0px;
   }
}
@media (max-width: 1250px) {
   .priz__item {
      flex: 0 0 48%;
   }
   .priz__block {
      flex-wrap: wrap;
   }
}
@media (max-width: 1200px) {
   .main-banner__block:nth-child(2) {
      top: 70px;
   }
   .main-banner {
      margin: 30px 0;
   }
}
@media (max-width: 996px) {
   .form-priz__img {
      display: none;
   }
   .form-priz__row {
      flex-direction: column;
      gap: 12px;
   }
   .form-priz__inp {
      padding: 15px 24px;
   }
   .main-banner__num {
      min-width: 48px;
   }
}
@media (max-width: 932px) {
   .main-banner__img {
      max-width: 400px;
   }
   .main-banner__img {
      min-width: 400px;
   }
}
@media (max-width: 820px) {
   .main-banner__img {
      min-width: auto;
   }
   .main-banner__content {
      position: relative;
      display: flex;
      flex-direction: column-reverse;
      align-items: flex-start;
   }
   .main-banner__block:nth-child(2) {
      position: initial;
      width: 100%;
   }
   .main-banner__img {
      margin: 0 auto;
   }
   .main-banner {
      margin: 36px 0;
   }
   .header__content {
      padding: 24px 0;
   }
   .main-banner__content {
      gap: 36px;
   }
   .main-banner__top {
      max-width: 100%;
   }
   .main-banner__bottom {
      margin-top: 36px;
   }
   .main-banner__list {
      max-width: 100%;
   }
   .priz {
      margin-bottom: 36px;
   }
   .form-priz {
      margin-bottom: 36px;
   }
   .faq {
      margin-bottom: 36px;
   }
   .footer {
      margin-bottom: 36px;
   }
}
@media (max-width: 780px) {
   .header__content {
      justify-content: center;
   }
   .header__block:last-child {
      display: none;
   }
}
@media (max-width: 720px) {
   .h2 {
      font-size: 30px;
   }
   .form-priz__wrapper {
      padding: 36px 18px;
   }
   .form-priz__title {
      text-align: center;
   }
   .form-priz__label {
      text-align: center;
   }
   .form-priz__ch-inp {
      min-width: 24px;
   }
   .form-priz__ch-label {
      align-items: flex-start;
   }
}
.form-priz__text {
   display: inline-block;
}
@media (max-width: 630px) {
   .priz__item {
      padding: 36px 0;
   }
   .form-priz__btn {
      margin-top: 36px;
      font-size: 20px;
      text-transform: math-auto;
   }
   .faq__question .fs24 {
      font-size: 20px;
   }
}
@media (max-width: 560px) {
   .priz__block {
      display: flex;
      flex-direction: column;
      gap: 20px;
   }
   .header__logo svg {
      max-width: 181px;
   }
   .header__logo object {
      max-width: 181px;
   }
   .header__logo img {
      max-width: 181px;
   }
   .footer__top {
      margin-bottom: 36px;
   }
   .footer__bottom {
      gap: 36px;
      flex-direction: column;
   }
   .priz__img {
      width: 252px;
      height: 252px;
   }
   .priz__item:last-child .priz__img {
      width: 252px;
      height: 266.06px;
   }
}
.main-banner__btn-wr {
   position: relative;
}
.main-banner__btn {
   position: relative;
   z-index: 4;
}
.main-banner__btn-bg {
   position: absolute;
   z-index: 3;
   bottom: -3px;
   left: 3px;
   display: block;
   text-align: center;
   font-size: 24px;
   font-weight: 600;
   line-height: 36px;
   letter-spacing: -0.03rem;
   padding: 18px 24px;
   max-width: 465px;
   width: 100%;
   background: #181818;
   border-radius: 18px;
   border: 3px solid #181818;
   text-transform: uppercase;
   transition: all 0.3s ease 0s;
}
/*.main-banner__btn:hover {
   background: #fff;
}*/
.form-priz__bg {
   position: absolute;
   top: 3px;
   left: 3px;
   width: 100%;
   height: 100%;
   background: #181818;
   border-radius: 24px;
}
.form-priz__content {
   position: relative;
}
/*.main-banner__link:hover {
   color: #181818;
}*/
/*.header__link:hover {
   color: #ff55a1;
}
.form-priz__link:hover {
   color: #ff55a1;
}
.form-priz__btn:hover {
   color: #181818;
   background: #fff;
}
.footer__link:hover {
   color: #181818;
   background: #fff;
}*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
   -webkit-appearance: none;
   margin: 0;
}

input[type="number"] {
   -moz-appearance: textfield; /* Firefox */
}
.footer__subtext {
   margin-top: 72px;
}
@media (max-width: 560px) {
   .form-priz__btn {
      padding: 18px 22px;
   }
   .footer__link {
      max-width: 100%;
   }
   .footer__subtext {
      margin-top: 36px;
   }
   .mfs24 {
      font-size: 24px;
      font-weight: 500;
      line-height: 36px;
      letter-spacing: -0.03rem;
   }
   .h2 {
      font-weight: 500;
   }
   .mfs20 {
      font-size: 20px;
      font-weight: 300;
      line-height: 24px;
      letter-spacing: -0.03rem;
   }
   .mfs17 {
      font-size: 17px;
      font-weight: 300;
      line-height: 24px;
      letter-spacing: -0.03rem;
   }
   .main-banner__item {
      align-items: flex-start;
   }
   .form-priz__inp {
      font-size: 17px;
      font-weight: 300;
      line-height: 24px;
      letter-spacing: -0.03rem;
   }
   .form-priz__btn {
      line-height: 24px;
      letter-spacing: -0.03rem;
   }
   .main-banner__subtitle.h2 {
      font-weight: 600;
   }
}
img {
   image-rendering: -webkit-optimize-contrast;
   image-rendering: crisp-edges;
}
