:root {
 --accent-color: #2b89a2;
 --secondary-color: #edbe31;
 --aux-color: #002832;
}

* {
 padding: 0;
 margin: 0;
 box-sizing: border-box;
 color: #fff;
 text-shadow: 0 0 5px #00000080;
 font-family: -apple-system, -system-ui, BlinkMacSystemFont, "Segoe UI", Roboto,
  "Helvetica Neue", Arial, sans-serif;
 /* font-family: Arial, Helvetica, sans-serif; */
}

.section {
 padding: 100px 20px;
}
.main.section {
 padding: 0;
 border-bottom: 3px solid var(--accent-color);
}

.container {
 display: flex;
 flex-direction: column;
 width: 100%;
 max-width: 1600px;
 padding-left: 30px;
 padding-right: 30px;
}

.btn {
 display: flex;
 justify-content: center;
 align-items: center;
 border: 1px solid transparent;
 border-radius: 10px;
 width: 200px;
 padding: 10px;
 transition: all linear 0.1s;
 cursor: pointer;
}

.accent {
 color: var(--accent-color);
}

.secondary {
 color: var(--secondary-color);
}

.section.main {
 position: relative;
 width: 100%;
 height: 100vh; /* на полный экран */
 overflow: hidden;
 display: flex;
 justify-content: center;
 align-items: center;
}

.logo {
 position: absolute;
 top: 20px;
 left: 20px;
 width: 150px;
 z-index: 2;
}

.background_video {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 z-index: 0;
}

.video_overlay {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background: rgba(0, 0, 0, 0.7); /* затемнение (если нужно) */
 z-index: 1;
}

.section.main .container {
 position: relative;
 z-index: 2;
 flex-direction: row;
 gap: 20px;
 justify-content: center;
 align-items: start;
 /* height: 100%; */
 height: 600px;
 margin-left: auto;
 margin-right: auto;
}

.section.main .title {
 font-size: 96px;
 /* align-self: start; */
}

.quiz__inner * {
 font-family: sans-serif;
}

.quiz__inner {
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
 text-align: center;
 width: 100%;
 max-width: 600px;
 margin-left: auto;
 margin-right: auto;
 background: #051b40cc;
 padding: 40px;
 border-radius: 16px;
 box-shadow: 0 0 10px 0 #fff5;
}

.quiz__text-box {
 margin-left: auto;
 margin-right: auto;
 /* transition: all 0.2s linear; */
 width: 100%;
}

.quiz__title {
 margin-bottom: 20px;
 font-size: 22px;
}

.question-block {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: 10px;
}

.question-block__question {
 font-size: 20px;
 line-height: 1.3;
}

.question-block__answer {
 cursor: pointer;
 padding: 10px;
 min-height: 50px;
 border: 1px solid transparent;
 background-color: var(--accent-color);
 color: #fff;
 border-radius: 50px;
 font-size: 20px;
 transition: all 0.1s linear;
 width: 100%;
 max-width: 400px;
}

.question-block__answer:hover {
 transform: scale(1.02);
 box-shadow: 0 0 5px 0 #fff;
}

.form__heading {
 font-size: 48px;
 line-height: 1.5;
 font-weight: 900;
}

.qizz-item:nth-of-type(2) {
 display: flex;
}

.quiz__item:not(:nth-of-type(2)) {
 display: none;
}

/* .quiz__item.visible {
                                    display: flex;
                                   } */

/* .quiz__item.form-block.visible {
                                    display: block;
                                   } */

.quiz__item.form-block {
 flex-direction: column;
 align-items: center;
}

/* .form-block {
 background: #47749788;
 padding: 40px;
 border-radius: 16px;
} */

.contact_form {
 display: flex;
 flex-direction: column;
 gap: 10px;
 width: 100%;
 max-width: 350px;
}

.form-input {
 padding: 15px;
 border-radius: 8px;
 border: 1px solid #ccc;
 outline: none;
 background: transparent;
}

.submit {
 cursor: pointer;
 padding: 10px;
 min-height: 50px;
 border: 1px solid transparent;
 background-color: var(--accent-color);
 color: #fff;
 border-radius: 8px;
 font-size: 20px;
 transition: all 0.1s linear;
}

.submit:hover {
 transform: scale(1.01);
}

.custom-checkbox input[type="checkbox"] {
 width: 1;
 height: 1;
 opacity: 0;
 position: absolute;
 top: 80%;
 left: 10px;
}

.custom-checkbox {
 display: flex;
 align-items: center;
 gap: 10px;
 position: relative;
 cursor: pointer;
 font-size: 16px;
 user-select: none;
}

.custom-checkbox .checkmark {
 flex-shrink: 0;
 position: relative;
 display: inline-block;
 width: 20px;
 height: 20px;
 border: 2px solid #ccc;
 border-radius: 4px;
 background-color: transparent;
 transition: all 0.1s linear;
}

.custom-checkbox input[type="checkbox"]:checked + .checkmark {
 background-color: var(--accent-color);
 border-color: var(--accent-color);
}

.custom-checkbox input[type="checkbox"]:checked + .checkmark::after {
 content: "";
 position: absolute;
 top: 40%;
 left: 50%;
 width: 6px;
 height: 10px;
 border: solid white;
 border-width: 0 2px 2px 0;
 transform: translate(-50%, -50%) rotate(45deg);
}

.custom-checkbox:hover .checkmark {
 border-color: var(--accent-color);
}

.custom-checkbox .checktext {
 font-size: 18px;
}

.background_image {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 z-index: 0;
}

.image_overlay {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background: rgba(0, 0, 0, 0.4); /* затемнение (если нужно) */
 z-index: 1;
}

.section.second {
 position: relative;
 width: 100%;
 /* height: 100vh; */
 overflow: hidden;
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;

 background: url(../images/bg.jpg);
 background-size: cover;
 background-attachment: fixed;
 background-position: center;
}

.section.second .container {
 z-index: 10;
}

.container.about .subtitle {
 text-align: center;
 font-size: 60px;
 margin-bottom: 30px;
 font-weight: normal;
}

.container.about .about_info {
 display: flex;
 flex-direction: row;
 justify-content: space-between;
 gap: 100px;
}

.about .img {
 width: 100%;
 max-width: 700px;
 border-radius: 16px;
 box-shadow: 0 0 5px 2px #0009;
 object-fit: cover;
}

.about .text {
 font-size: 30px;
}

.container.about_cards {
 margin-top: 100px;
}

.container.about_cards .subtitle {
 text-align: center;
 font-size: 60px;
 margin-bottom: 30px;
 font-weight: normal;
}

.container.about_cards .card_block {
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 gap: 40px;
 width: 100%;
 /* counter-reset: count; */
}

.card {
 display: flex;
 flex-direction: column;
 background-color: #fff;
 flex: 1;
 border-radius: 10px;
 min-width: 300px;
 box-shadow: 0 0 5px 0 #0009;
}

.card .img {
 width: 100%;
 border-radius: 10px 10px 0 0;
}

.card .text {
 color: var(--aux-color);
 text-shadow: none;
 font-size: 24px;
 padding: 10px;
 position: relative;
}

/* .about_cards .card .text::after {
 position: absolute;
 top: -5px;
 left: 40%;
 counter-increment: count;
 content: counter(count);
 font-size: 120px;
 color: var(--accent-color);
 opacity: 0.5;
 line-height: 1;
} */

.card .text .accent {
 text-shadow: none;
}

.moreabout {
 flex-direction: row-reverse;
 margin-top: 100px;
 gap: 100px;
}

.moreabout .img {
 width: 100%;
 max-width: 700px;
 border-radius: 16px;
 box-shadow: 0 0 5px 2px #0009;
 object-fit: cover;
}

.moreabout .text {
 font-size: 32px;
}

.container.moreabout_cards .subtitle {
 text-align: center;
 font-size: 60px;
 margin-bottom: 30px;
 font-weight: normal;
}

.container.moreabout_cards {
 margin-top: 100px;
}

.container.moreabout_cards .card_block {
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 gap: 40px;
 width: 100%;
}

.moreabout_cards .icon {
 width: 80px;
 height: 80px;
 background: var(--accent-color);
 border-radius: 50px;
 padding: 10px;
 margin: 10px;
 /* flex-shrink: 0; */
}

.moreabout_cards .card {
 min-width: 250px;
}

.moreabout_cards .card:nth-of-type(2) .icon .img {
 padding-top: 5px;
}

.moreabout_cards .card:nth-of-type(3) .icon .img {
 padding-top: 2px;
}

.moreabout_cards .card:nth-of-type(4) .icon .img {
 padding-top: -2px;
}

.moreabout_cards .card {
 /* flex-direction: row; */
 padding: 10px;
}

.moreabout_cards > .text {
 margin-top: 30px;
 font-size: 30px;
 text-align: center;
}

@media (max-width: 1439px) {
 .section.main .title {
  font-size: 75px;
 }

 .about .text {
  font-size: 30px;
 }

 .about .img {
  max-width: 500px;
 }

 .moreabout .img {
  max-width: 500px;
 }
}

@media (max-width: 1079px) {
 .about .img {
  max-width: 400px;
 }

 .moreabout .img {
  max-width: 400px;
 }
}

@media (max-width: 999px) {
 .section.main .container {
  flex-direction: column;
 }

 .section.main .title {
  text-align: center;
 }

 .container.about {
  flex-direction: column;
  gap: 50px;
 }

 .container.about .img {
  max-width: 100%;
 }

 .container.moreabout {
  flex-direction: column;
  gap: 50px;
 }

 .container.moreabout .img {
  max-width: 100%;
 }
}

@media (max-width: 650px) {
 .section.main .title {
  font-size: 50px;
 }

 .about .text {
  font-size: 30px;
 }

 .moreabout .text {
  font-size: 30px;
 }

 .container.about_cards .subtitle {
  font-size: 40px;
 }

 .container.moreabout_cards .subtitle {
  font-size: 40px;
 }
}

@media (max-width: 500px) {
 .logo {
  position: absolute;
  top: 20px;
  left: calc(50% - 40vw);
  width: 80%;
  z-index: 2;
 }
 .section {
  padding: 80px 15px;
 }
 .section.main .title {
  font-size: 40px;
 }
 .quiz__inner {
  padding: 20px;
 }

 .about .text {
  font-size: 24px;
 }

 .moreabout .text {
  font-size: 24px;
 }

 .moreabout_cards > .text {
  font-size: 20px;
 }
}

@media (max-width: 400px) {
 .section {
  padding: 60px 10px;
 }
 .container {
  padding-left: 10px;
  padding-right: 10px;
 }
 .about .text {
  font-size: 20px;
 }

 .moreabout .text {
  font-size: 20px;
 }
}
