/* Fonts */
@font-face {
  font-family: "Helvetica";
  src: url("../fonts/helvetica_regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
}

:root {
  --main-color1: #222222;
  --main-color2: #fdc708;
  --main-color3: #ffffff;
}

body {
  margin: 0;
  font-family: "HelveticaNeueCyr", "Helvetica", Arial, sans-serif;
  color: #434455;
  background-color: var(--main-color3);
}

/* -----------common styles----------- */

.container-hero {
  background-color: var(--main-color1);
  display: flex;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}

/* ----------------------------------------- */

/* Media queries mobile */
@media screen and (min-width: 320px) and (max-width: 1040px) {
  .container {
    max-width: 375px;
    height: 100%;
    padding: 0px 0px;
    margin: 0 auto;
  }

  .container-header {
    padding: 0 15px;
  }

  .header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 10px 0;
  }

  /* -------------------------------Header------------------------------ */

  .logo {
    display: flex;
    height: 50px;
    align-items: center;
    gap: 10px;
    font-family: "Inter", system-ui, sans-serif;
    font-size: 16px;
    color: #222;
    /* padding-left: 17px; */
  }

  .logo_img {
    width: 30px;
    height: 30px;
  }

  .mobile-menu-button {
    background-color: transparent;
    border: none;
    cursor: pointer;
  }

  .mobile-button_img {
    transition: transform 0.3s ease;
  }

  .mobile-menu-button:hover .mobile-button_img {
    transform: rotate(90deg);
  }

  .mob-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(255, 255, 255);
    z-index: 99;
    padding: 60px 20px 20px; /* Збільшуємо відступ зверху для кнопки закриття */
  }

  .mob-menu.is-open {
    display: block;
  }

  .logo-mobile {
    display: flex;
    align-items: center;
    position: absolute;
    top: 20px;
    left: 16px;
  }

  .logo_img_mobile {
    width: 30px;
    height: 30px;
  }
  .logo_text_mobile {
    color: var(--main-color1);
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-left: 10px;
  }

  .mobilemenulist {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;
    list-style: none;
    padding: 0;
    color: var(--main-color1);
    font-family: Helvetica;
    font-size: 16px;
    font-weight: 400;
    padding-bottom: 24px;
  }

  .close-menu-button {
    position: absolute;
    top: 20px;
    right: 20px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 5px;
  }

  .close-button_img {
    width: 24px;
    height: 24px;
    transition: transform 0.3s ease;
  }

  .close-menu-button:hover .close-button_img {
    transform: rotate(90deg);
  }
  .mainmenulist {
    display: none;
  }

  .langlist {
    display: none;
  }

  .contact_list_mobile {
    padding-top: 39px;
    display: flex;
    margin: 0 auto;
    justify-content: center;
    gap: 8px;
  }

  .social-links_img_mobile {
    width: 32px;
    height: 32px;
  }

  /* ------------------------------sectionhero------------------------------ */

  .container-hero {
    max-width: 100%;
  }

  .hero_text_block {
    padding-left: 14px;
    padding-top: 48px;
    padding-bottom: 16px;
    position: relative;
    z-index: 1;
  }

  .hero_title {
    font-weight: 700;
    z-index: 0;
  }

  .hero_name_first {
    display: block;
    font-size: 32px;
    letter-spacing: -0.05em;
    color: var(--main-color2);
  }

  .hero_name_last {
    display: block;
    font-size: 50px;
    letter-spacing: -0.02em;
    color: #fff;
  }

  .speciality_line {
    color: var(--main-color2);
  }

  .hero_subtitle_block {
    width: 281px;
  }

  .hero_subtitle1 {
    font-weight: 500;
    font-size: 12px;
    color: #fff;
    margin-top: 48px;
    white-space: normal;
    word-wrap: break-word;
  }

  .hero_subtitle2 {
    font-weight: 500;
    font-size: 12px;
    color: #fff;
    margin-top: 12px;
  }

  .button_contact {
    margin-top: 77px;
    display: flex;
    gap: 46px;
  }

  .contact_list {
    display: flex;
    gap: 16px;
    /* margin-left: 48px; */
    align-self: flex-end;
  }

  .form-message {
    margin-bottom: 32px;
  }

  .cta-button {
    background-color: var(--main-color2);
    width: 100%;
    height: 50px;
    border-radius: 2px;
    border: none;
    font-weight: 700;
    font-size: 10px;
    color: black;

    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
  }

  .hero_img {
    position: absolute;
    right: 0;
    bottom: 0;
    max-height: 100%;
    width: auto;
    object-fit: contain;
    max-width: 190px;
    max-height: 360px;
    /* z-index: 1; */
  }

  /* ----------------------section counter---------------------- */

  .container_count {
    margin-top: 64px;
    padding-left: 16px;
    padding-right: 16px;
    /* margin-bottom: 100px; */
  }

  .countlist {
    /* display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: center;
    max-width: 200px; 
    margin: 0 auto; */
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    max-width: 500px;
    margin: 0 auto;
  }

  .countlist_item {
    /* width: 242px; */
    /* height: 96px; */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .countlist_number_block_top {
    /* display: flex; */
    /* justify-content: center; */
    /* align-items: flex-end; */
  }

  .countlist_number {
    /* font-weight: 500; */
    font-size: 40px;
    /* text-align: center; */
    color: var(--main-color2);
    line-height: 1;
  }

  .countlist_number_plus {
    /* font-weight: 500; */
    font-size: 32px;
    color: var(--main-color2);
    /* align-self: flex-end; */
    /* margin-bottom: 10px; */
  }

  .countlist_text {
    font-weight: 700;
    font-size: 12px;
    display: block;
    text-align: center;
    width: 100%;
    margin-top: 8px;
  }

  /* ----------------------section about-------------------------------------- */
  .container-about {
    /* max-width: 1040px; */
    margin: 0 auto;
    margin-top: 64px;
    margin-bottom: 64px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .acquaintance_block_main {
    display: flex;
    justify-content: space-between;
    align-items: start;
    /* margin-bottom: 64px; */
  }
  .acquaintance_title_text {
    font-weight: 500;
    font-size: 40px;
    letter-spacing: -0.05em;
  }
  .acquaintance_title_text1 {
    display: block;
    color: var(--main-color1);
    margin: 0;
    padding: 0;
  }

  .acquaintance_title_text2 {
    display: block;
    color: var(--main-color2);
    margin: 0;
    padding: 0;
  }

  .acquaintance_block_right {
    font-size: 10px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding-bottom: 24px;
    font-style: normal;
    font-weight: 300;
  }

  .arrow_black {
    transform: rotate(180deg);
    width: 11px;
    height: 11px;
  }

  .content_block {
    display: block;
    text-transform: uppercase;
    align-items: center;
    gap: 32px;
    margin-top: 32px;
  }

  .about_block_left {
    display: flex;
    flex-direction: column;
  }

  .profile_text_header {
    margin-top: 0;
  }

  .profile_name {
    font-weight: 700;
  }

  .profile_image1 {
    width: 100%;
    height: auto;
    object-fit: cover;
  }

  .profile_text_list {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 24px;
    padding-top: 24px;
  }

  .profile_text_list li {
    line-height: 1.5;
    margin: 0;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--main-color1);
  }

  .profile_image {
    max-width: 343px;
    max-height: 429px;
  }

  /* ----------------------section whatmywork---------------------- */

  .container_whatmywork {
    background-color: var(--main-color1);
    padding-top: 48px;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  .whatmywork_title {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin: 0 auto;
    padding-bottom: 32px;
  }

  .whatmywork_title_text {
    font-weight: 500;
    font-size: 40px;
  }
  .whatmywork_title_white {
    color: #fff;
  }

  .whatmywork_title_yellow {
    color: var(--main-color2);
  }

  .service_block_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .service_block_right_text {
    color: var(--main-color2);
    font-size: 10px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
  }

  .arrow_yellow2 {
    width: 11px;
    height: 11px;
  }

  .whatmywork_content {
    padding-bottom: 80px;
    position: relative;
  }

  .whatmywork_list {
    font-size: 12px;
    color: var(--main-color3);
    padding-bottom: 59px;
    position: relative;
    z-index: 2;
  }

  .whatmywork_list ul:first-child {
    padding-left: 0;
  }

  .whatmywork_list li {
    margin-bottom: 16px;
    display: flex;
    align-items: center;
  }

  .whatmywork_point {
    margin-right: 12px;
  }

  /* .whatmywork_button {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding-bottom: 100px;
} */

  .whatmywork_text {
    padding-left: 123px;
    color: var(--main-color3);
    font-weight: 400;
    font-size: 12px;
    line-height: 124%;
    text-align: justify;
    padding-bottom: 29px;
  }

  .cta-button-mobile1 {
    padding-left: 123px;
  }

  .cta-button_whatmywork {
    text-align: center;
    margin-left: auto;
  }

  .whatmywork_photo {
    position: absolute;
    left: -16px;
    bottom: 0;
    max-width: 190px;
    max-height: 286px;
    z-index: 1;
    margin: 0;
    padding: 0;
  }

  /* ----------------------section format---------------------- */

  .container_format {
    /* background-color: var(--main-color); */
    padding-top: 64px;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  .format_title {
    /* display: flex; */
    /* max-width: 1038px; */
    justify-content: space-between;
    /* padding-bottom: 64px; */
  }

  .format_title_text {
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
    text-transform: uppercase;
  }

  .format_title_white {
  }

  .format_title_yellow {
    color: var(--main-color2);
  }

  .format_subtitle {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    position: relative;
    padding-top: 43px;
    padding-bottom: 32px;
  }

  .format_subtitle_logo {
    transform: rotate(180deg);
    width: 43px;
    height: 43px;
    position: absolute;
    right: 0px;
    top: 0px;
  }

  .format_subtitle_left {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .format_subtitle_right {
    text-align: right;
  }

  .format_subtitle_text {
    display: none;
  }

  .format_subtitle_right_text1 {
    display: block;
    font-size: 20px;
    line-height: 120%;
    letter-spacing: -0.05em;
    text-transform: uppercase;
    color: var(--main-color1);
  }

  .format_subtitle_right_text2 {
    font-weight: 400;
    font-size: 12px;
    display: block;
  }

  .format_list {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    /* gap: 24px; */
  }

  .format_list_item {
    position: relative;
  }

  .format_list_img {
    max-width: 100%;
    padding-bottom: 16px;
  }

  .format_list_text {
    /* display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 508px; */
  }

  .format_list_title_wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
  }

  .format_list_title {
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1px;
    margin: 0;
    display: block;
    width: calc(100% - 50px);
  }

  .format_list_text_description {
    padding-top: 16px;
    padding-bottom: 16px;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
  }

  .format_list_number {
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.6px;
    align-self: center;
  }

  .format_list_line {
    width: 100%;
    height: 1px;
    background-color: var(--main-color1);
    margin-bottom: 24px;
  }

  .format_info {
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    color: var(--main-color1);
  }

  /* ----------------------section generalRules---------------------- */

  .generalRules_container {
    padding-top: 64px;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    /* padding-bottom: 64px; */
  }

  .generalRules_title {
    padding-top: 64px;
    padding-bottom: 32px;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -1px;
    text-transform: uppercase;
    color: var(--main-color1);
  }

  .generalRules_list_item {
    position: relative;
    padding-left: 24px;
    margin-bottom: 48px;
  }

  .generalRules_list_item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 100%;
    background-color: var(--main-color2);
  }

  .generalRules_list_item h3 {
    color: var(--main-color1);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1px;
    padding-bottom: 8px;
  }

  .generalRules_list_item p {
    color: var(--main-color1);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
  }

  /* ----------------------section biggerAchievements_container---------------------- */

  .biggerAchievements_container {
    height: 205px;
    flex-shrink: 0;
    max-width: 100%;

    background: url(/src/img/photo/biggerAchievements_background_x1.jpg) center
      center/cover no-repeat;
  }

  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .biggerAchievements_container {
      background: url(/src/img/photo/biggerAchievements_background_x2.jpg)
        center center/cover no-repeat;
    }
  }

  .biggerAchievements_main {
  }

  .biggerAchievements_title {
  }

  .biggerAchievements_content {
    padding-left: 16px;
    padding-right: 16px;
  }

  .biggerAchievements_text {
    color: var(--main-color3);
    text-align: justify;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding-top: 35px;
    max-width: 234px;
    font-family: HelveticaNeueCyr;
    padding-bottom: 24px;
  }

  .biggerAchievements_button {
    border-radius: 2.595px;
    max-width: 100%;
  }

  .biggerAchievements_button2 {
    /* max-width: 45%; */
    max-width: 234px;
  }

  .arrow_black_biggerAchievements {
    transform: rotate(360deg);
    width: 6px;
    height: 6px;
    flex-shrink: 0;
    margin-left: 4px;
  }

  /* ----------------------section prices------------------------ */

  .prices_container {
    max-width: 100%;
    margin: 0 auto;
    padding-top: 64px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .prices_main {
    /* display: flex;
    max-width: 1038px;
    justify-content: space-between; */
  }

  .format_prices_text {
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
    text-transform: uppercase;
    padding-bottom: 32px;
  }

  .format_prices_white {
    color: var(--main-color1);
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
    text-transform: uppercase;
  }

  .format_prices_yellow {
    color: var(--main-color2);
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
    text-transform: uppercase;
  }

  .prices_block_right {
    font-size: 10px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding-bottom: 24px;
    font-style: normal;
    font-weight: 300;
    padding-bottom: 24px;
  }

  .prices_list {
    /* padding-left: 200px; */
  }

  .prices_list_item {
    padding-bottom: 64px;
  }

  .prices_list_name {
    /* display: flex; */
    /* justify-content: space-between; */
    color: var(--main-color1);
    font-family: HelveticaNeueCyr;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1px;
    padding-bottom: 24px;
  }

  .prices_list_line {
    width: 100%;
    height: 1px;
    background-color: var(--main-color1);
  }

  .prices_list_time {
    padding-top: 8px;
    padding-bottom: 16px;
    font-family: HelveticaNeueCyr;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
  }

  .prices_list_price {
    justify-self: end;
  }

  /* ----------------------section reviews------------------------ */

  .reviews_container {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    /* padding-top: 64px; */
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 128px;
  }

  .reviews_main {
    /* display: flex;
  max-width: 1038px;
  justify-content: space-between; */
    padding-bottom: 32px;
  }

  .reviews_text {
    /* font-size: 90px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: -4.5px; */
  }

  .reviews_title_black {
    color: var(--main-color1);
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
  }

  .reviews_title_yellow {
    color: var(--main-color2);
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
  }

  .prices_block_right {
    /* display: flex;
  flex-direction: column;
  align-items: flex-end;
  letter-spacing: initial;
  font-weight: 400;
  font-size: 16px;
  color: var(--main-color1); */
    font-size: 10px;
  }

  .logo_reviews {
    display: flex;
    align-self: center;
    padding-bottom: 32px;

    /* align-self: flex-end;
  padding-bottom: 64px; */
  }

  .logo_reviews_img {
    transform: rotate(180deg);
    margin-right: 20px;
    width: 43px;
    height: 43px;
  }

  .logo_reviews_text {
    /* font-weight: 400;
  font-size: 20px;
  text-align: justify; */
  }

  .swiper {
    width: 100%;
    height: 100%;
  }

  .swiper-wrapper {
    padding-bottom: 34px;
  }

  .reviews_list_item {
    border-left: 1px solid black;
    padding-left: 15px;
  }

  .reviews_list_item h3 {
    font-family: HelveticaNeueCyr;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.8px;
  }

  .reviews_list_item p {
    text-align: justify;
    font-family: HelveticaNeueCyr;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%; /* 14.4px */
  }

  /* Змінюємо точки на горизонтальні риски */
  .swiper-pagination-bullet {
    width: 32px;
    height: 2px;
    border-radius: 2px;
    background-color: var(--main-color1);
    opacity: 0.5;
    transition: background-color 0.3s, opacity 0.3s;
  }

  /* Стиль для активного елемента */
  .swiper-pagination-bullet-active {
    background-color: var(--main-color2);
    opacity: 1;
  }

  /* -----------------------------------------section faq------------------------------------------- */

  .faq_container {
    max-width: 100%;
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px;
    /* padding-top: 200px; */
  }

  .faq_title {
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
    padding-bottom: 32px;
    text-align: left;
  }

  .faq_main {
    /* display: flex; */
  }

  .faq_foto {
    padding-top: 16px;
  }

  .faq_foto_img {
    max-width: 100%;
    height: auto;
    justify-self: center;
    padding-bottom: 16px;
  }

  .faq_text {
    padding-bottom: 32px;
  }

  .faq_text_one {
    color: var(--main-color1);
    font-family: HelveticaNeueCyr;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    text-transform: uppercase;
  }

  .faq_text_one_yellow {
    color: var(--main-color2);
  }

  .faq_text_two {
    color: var(--main-color1);
    font-family: HelveticaNeueCyr;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-transform: uppercase;
    padding-bottom: 32px;
  }

  .faq_button {
    margin: 0 auto;
    width: 100%;
  }

  .faq_text_four {
    /* color: var(--main-color1);
    padding-top: 24px;
    padding-bottom: 24px; */
  }

  .social_list {
    /* display: flex;
    width: 242px;
    justify-content: space-between; */
  }

  /* Обробка відкриття - закриття питань і відповідей */

  .faq_list {
    list-style: none;
    padding: 0;
  }

  .faq_list_item {
    margin-bottom: 15px;
    border-bottom: 1px solid var(--main-color1);
  }

  .faq_question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    margin: 0;
    cursor: pointer;
    position: relative;

    color: var(--main-color1);
    font-family: HelveticaNeueCyr;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1px;
    text-transform: uppercase;
  }

  .arrow {
    width: 16px;
    height: 13px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: rotate(45deg);
    transition: transform 0.3s;
    display: inline-block;
    margin-left: 10px;
  }

  .faq_list_item.active .arrow {
    transform: rotate(-135deg);
  }

  .faq_answer {
    display: none;
    padding: 0 15px 15px 10%;
    margin: 0;
    /* font-size: 140px; */
  }

  .faq_list_item.active .faq_answer {
    display: block;
  }

  /* ----------------------section contact------------------------ */

  .contact_container {
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    margin: 0 auto;
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .contact_main {
    /* display: flex; */
    max-width: 100%;
    padding-bottom: 32px;
    /* justify-content: space-between; */
    /* padding-bottom: 64px; */
  }

  .contact_title {
    font-family: HelveticaNeueCyr;
    font-size: 36px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -1.8px;
    text-transform: uppercase;
  }

  .contact_title_black {
    color: var(--main-color1);
  }

  .contact_title_yellow {
    color: var(--main-color2);
  }

  .contact_info {
    display: flex;
    color: var(--main-color1);
    text-align: justify;
    font-family: HelveticaNeueCyr;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-transform: uppercase;
    padding-bottom: 24px;
  }

  .contact_info_text {
    text-align: justify;
  }

  .contact_list_2 {
    display: flex;
    justify-content: flex-end;
    align-items: end;
    margin-bottom: 32px;
    gap: 8px;
  }

  .contact_list_img {
    width: auto;
    height: 24px;
    flex-shrink: 0;
  }

  .contact_form {
    display: flex;
    flex-direction: column;
    /* padding-bottom: 443px; */
  }

  .contact_form {
    display: flex;
    flex-direction: column;
  }

  .contact_form input,
  .contact_form textarea {
    width: 100%;
    padding: 16px 0;
    border: none;
    border-bottom: 1px solid #adadad;
    background: transparent;
    font-size: 16px;
    outline: none;
  }

  .contact_form textarea {
    resize: vertical;
  }

  .contact_form input::placeholder,
  .contact_form textarea::placeholder {
    color: #adadad;
    text-transform: uppercase;
    font-size: 10px;
  }

  .cta-button {
    align-self: center;
    transition: background-color 0.3s ease;
  }

  .contact_form button:hover {
    background: #e3b43d;
  }

  .contact_form input.error,
  .contact_form textarea.error {
    border: 2px solid red;
  }

  /* ----------------------footer------------------------ */

  .container-footer {
    max-width: 100%;
    margin: 0 auto;
    background-color: var(--main-color1);
    text-align: center;
    padding-left: 16px;
    padding-right: 16px;
  }

  .logo-footer {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding-top: 40px;
    color: var(--main-color3);
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
  }

  .logo-footer-img {
    width: 30px;
    height: 30px;
  }

  .logo-footer-text {
    color: var(--main-color3);
  }

  .speciality {
    margin-top: 11px;
    margin-bottom: 30px;
    font-size: 10px;
    line-height: 1.5;
  }

  .speciality_text {
    color: var(--main-color3);
  }

  .footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 100px;
  }

  .social-links {
    display: flex;
    gap: 12px;
    justify-content: center;
    align-items: center;
    padding-bottom: 30px;
  }

  .social-links_img_footer {
    width: auto;
    height: 24px;
  }

  .copyright {
    font-size: 8px;
    color: var(--main-color3);
  }

  .payment-systems {
    display: flex;
    gap: 8px;
  }

  /* ----------back to top button---------- */

  .back-to-top {
    position: fixed;
    bottom: 15px;
    right: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 1000;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
  }

  .arrow_up_img {
    width: 64px;
    height: 64px;
  }

  .mobile-hidden {
    display: none;
  }

  .mobile-hidden2 {
    display: none;
  }
}

/* -------------------------Media queries desktop -----------------------------*/
@media screen and (min-width: 1040px) {
  /* ----------------------section general---------------------- */

  .container {
    max-width: 1440px;
    height: 100%;
    padding: 0px 0px;
    margin: 0 auto;
  }

  /* ----------------------section header + menu---------------------- */

  .container-header {
    max-width: 1040px;
    margin: 0 auto;
  }

  .logo {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: "Inter", system-ui, sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: var(--main-color1);
  }

  .logo_text {
    font-size: 16px;
  }

  .desktop-menu {
    display: flex;
  }

  .mainmenu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
  }
  .mobile-menu-button {
    display: none;
  }

  .mob-menu {
    display: none;
  }

  .mainmenulist {
    display: flex;
    gap: 28px;
    font-size: 14px;
    font-weight: 400;
    color: #000;
  }

  .mainmenulist a:hover,
  .mainmenulist a:focus {
    color: #222;
    opacity: 0.8;
    transition: all 0.3s ease;
  }

  .langlist {
    display: flex;
    font-weight: 400;
    font-size: 16px;
    gap: 4px;
  }

  .langlist_active {
    color: var(--main-color2);
    opacity: 0.8;
  }

  /* ----------------------section hero---------------------- */

  .hero_text_block {
    padding-left: 200px;
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative;
    z-index: 1;
  }

  .hero_title {
    font-weight: 700;
  }

  .hero_name_first {
    display: block;
    font-size: 96px;
    letter-spacing: -0.05em;
    color: var(--main-color2);
  }

  .hero_name_last {
    display: block;
    font-size: 146px;
    letter-spacing: -0.02em;
    color: #fff;
  }

  .speciality_line {
    color: var(--main-color2);
  }

  .hero_subtitle1 {
    font-weight: 500;
    font-size: 20px;
    color: #fff;
    margin-top: 48px;
    white-space: nowrap;
  }

  .hero_subtitle2 {
    font-weight: 500;
    font-size: 20px;
    color: #fff;
    margin-top: 12px;
  }

  .button_contact {
    margin-top: 96px;
    display: flex;
    gap: 46px;
  }

  .contact_list {
    display: flex;
    gap: 16px;
    /* margin-left: 48px; */
    align-self: flex-end;
  }

  .cta-button {
    background-color: var(--main-color2);
    width: 518px;
    height: 80px;
    border-radius: 8px;
    border: none;
    font-weight: 700;
    font-size: 20px;
    color: black;

    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
  }

  .hero_img {
    position: absolute;
    right: 0;
    bottom: 0;
    max-height: 100%;
    width: auto;
    object-fit: contain;
    max-width: 396px;
    max-height: 750px;
  }

  /* ----------------------section counter---------------------- */

  .mobile-hidden {
    display: inline;
  }

  .mobile-hidden2 {
    display: flex;
  }

  .container_count {
    margin-top: 100px;
    margin-bottom: 100px;
  }

  .countlist {
    display: flex;
    gap: 25px;
    justify-content: center;
  }

  .countlist_item {
    width: 242px;
    height: 96px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .countlist_number_block_top {
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }

  .countlist_number {
    font-weight: 500;
    font-size: 64px;
    text-align: center;
    color: var(--main-color2);
    line-height: 1;
  }

  .countlist_number_plus {
    font-weight: 500;
    font-size: 20px;
    color: var(--main-color2);
    align-self: flex-end;
    margin-bottom: 10px;
  }

  .countlist_text {
    display: block;
    text-align: center;
    width: 100%;
    margin-top: 8px;
  }

  /* ----------------------section about-------------------------------------- */
  .container-about {
    max-width: 1040px;
    margin: 0 auto;
    margin-bottom: 220px;
  }

  .acquaintance_block_main {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin-bottom: 64px;
  }
  .acquaintance_title_text {
    font-weight: 500;
    font-size: 90px;
    letter-spacing: -0.05em;
  }
  .acquaintance_title_text1 {
    display: block;
    color: var(--main-color1);
    margin: 0;
    padding: 0;
  }

  .acquaintance_title_text2 {
    display: block;
    color: var(--main-color2);
    margin: 0;
    padding: 0;
  }

  .acquaintance_block_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .arrow_black {
    transform: rotate(180deg);
    width: 16px;
    height: 16px;
  }

  .content_block {
    text-transform: uppercase;
    display: flex;

    margin-top: 48px;
    gap: 32px;
  }

  .about_block_left {
    display: flex;
    flex-direction: column;
    padding-right: 32px;
  }

  .profile_text_header {
    margin-top: 0;
  }

  .profile_name {
    font-weight: 700;
  }

  .profile_text_list {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 24px;
  }

  .profile_text_list li {
    line-height: 1.5;
    margin: 0;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--main-color1);
  }

  .profile_image {
    max-width: 508px;
    max-height: 625px;
  }

  /* ----------------------section whatmywork---------------------- */

  .container_whatmywork {
    background-color: var(--main-color1);
  }

  .whatmywork_title {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin: 0 auto;
    max-width: 1038px;
    padding-top: 80px;
    padding-bottom: 64px;
  }

  .whatmywork_title_text {
    font-weight: 500;
    font-size: 90px;
  }
  .whatmywork_title_white {
    color: #fff;
  }

  .whatmywork_title_yellow {
    color: var(--main-color2);
  }

  .service_block_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .service_block_right_text {
    color: var(--main-color2);
  }

  .whatmywork_content {
    padding-bottom: 64px;
    position: relative;
  }

  .whatmywork_list {
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1038px;
    color: var(--main-color3);
  }

  .whatmywork_list li {
    margin-bottom: 32px;
    display: flex;
    align-items: center;
  }

  .whatmywork_point {
    margin-right: 8px;
  }

  .whatmywork_button {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding-bottom: 100px;
  }

  .cta-button_whatmywork {
    margin-bottom: 32px;
  }

  .whatmywork_text {
    max-width: 504px;
    color: var(--main-color3);
    font-weight: 400;
    font-size: 16px;
    line-height: 124%;
  }

  .whatmywork_photo {
    position: absolute;
    left: 0;
    bottom: 0;
    max-height: 100%;
    width: auto;
    object-fit: contain;
    z-index: 1;
  }

  /* ----------------------section format---------------------- */

  .container_format {
    max-width: 1040px;
    margin: 0 auto;
    padding-top: 200px;
  }

  .format_title {
    display: flex;
    max-width: 1038px;
    justify-content: space-between;
    padding-bottom: 64px;
  }

  .format_title_text {
    font-weight: 500;
    font-size: 90px;
    font-weight: 500;
    letter-spacing: -0.05em;
  }

  .format_title_white {
    color: var(--main-color1);
  }

  .format_title_yellow {
    color: var(--main-color2);
  }

  .format_subtitle {
    display: flex;
    margin: 0 auto;
    justify-content: space-between;
    margin-bottom: 52px;
  }

  .format_subtitle_logo {
    transform: rotate(180deg);
  }

  .format_subtitle_left {
    display: flex;
    align-items: center;
  }

  .format_subtitle_text {
    margin: 12px 12px;
  }

  .format_subtitle_right_text1 {
    font-weight: 700;
    font-size: 48px;
    line-height: 120%;
    letter-spacing: -0.05em;
    text-transform: uppercase;
    text-align: right;
    color: var(--main-color1);
  }

  .format_subtitle_right_text2 {
    font-weight: 400;
    font-size: 24px;
  }

  .format_list {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    gap: 24px;
  }

  .format_list_item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 24px;
  }

  .format_list_img {
    max-width: 331px;
    max-height: 200px;
  }

  .format_list_text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 508px;
  }

  .format_list_title {
    font-weight: 400;
    font-size: 32px;
    letter-spacing: -0.05em;
    text-transform: uppercase;
    color: var(--main-color1);
    margin-bottom: 24px;
  }

  .format_list_text_description {
    font-weight: 400;
    font-size: 16px;
    text-align: justify;
    color: var(--main-color1);
  }

  .format_list_number {
    font-weight: 300;
    font-size: 32px;
    letter-spacing: -0.05em;
    color: var(--main-color1);
  }

  .format_list_line {
    width: 100%;
    height: 1px;
    background-color: var(--main-color1);
  }

  .format_info {
    display: flex;
    justify-content: end;
    font-weight: 400;
    font-size: 16px;
    color: var(--main-color1);
    margin-top: 24px;
    margin-bottom: 100px;
  }

  /* ----------------------section generalRules---------------------- */

  .generalRules_container {
    max-width: 1040px;
    margin: 0 auto;
    padding-top: 100px;
    padding-bottom: 100px;
    display: flex;
  }

  .generalRules_title {
    font-weight: 400;
    font-size: 48px;
    letter-spacing: -0.05em;
    color: var(--main-color1);
    padding-right: 150px;
  }

  .generalRules_list_item {
    position: relative;
    padding-left: 24px;
    margin-bottom: 48px;
  }

  .generalRules_list_item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 100%;
    background-color: var(--main-color2);
  }

  .generalRules_list_item h3 {
    margin: 0 0 16px 0;
    font-size: 24px;
    font-weight: 400;
  }

  .generalRules_list_item p {
    margin: 0;
    line-height: 1.5;
  }

  .generalRules_list {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  /* ----------------------section biggerAchievements_container---------------------- */

  .biggerAchievements_container {
    max-width: 1440px;
    height: 585px;
    background: url(/src/img/photo/biggerAchievements_background_x1.jpg) center
      center/cover no-repeat;
  }

  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .biggerAchievements_container {
      background: url(/src/img/photo/biggerAchievements_background_x2.jpg)
        center center/cover no-repeat;
    }
  }

  .biggerAchievements_main {
    padding-top: 132px;
    padding-left: 196px;
  }

  .biggerAchievements_title {
    display: flex;
    color: var(--main-color3);
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    letter-spacing: -2px;
  }

  .biggerAchievements_content {
    max-width: 488px;
    padding-top: 64px;
    align-self: stretch;
    color: var(--main-color3);
    text-align: justify;
  }

  .biggerAchievements_text {
    padding-bottom: 24px;
    font-weight: 400;
  }

  .biggerAchievements_button {
    max-width: 100%;
  }

  .arrow_black_biggerAchievements {
    transform: rotate(0deg);
    width: 16px;
    height: 16px;
    flex-shrink: 1;
    margin-left: 14px;
  }

  /* ----------------------section prices------------------------ */

  .prices_container {
    max-width: 1040px;
    margin: 0 auto;
    padding-top: 200px;
  }

  .prices_main {
    display: flex;
    max-width: 1038px;
    justify-content: space-between;
    padding-bottom: 64px;
  }

  .format_prices_text {
    font-size: 90px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -4.5px;
  }

  .format_prices_white {
    color: var(--main-color1);
  }

  .format_prices_yellow {
    color: var(--main-color2);
  }

  .prices_block_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .prices_list {
    padding-left: 200px;
    /* width: 863px; */
  }

  .prices_list_item {
    padding-bottom: 64px;
  }

  .prices_list_name {
    display: flex;
    justify-content: space-between;
    color: var(--main-color1);
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1.6px;
    padding-bottom: 24px;
  }

  .prices_list_line {
    width: 100%;
    height: 1px;
    background-color: var(--main-color1);
  }

  .prices_list_time {
    padding-top: 24px;
  }

  /* ----------------------section reviews------------------------ */

  .reviews_container {
    max-width: 1040px;
    margin: 0 auto;
    padding-top: 200px;
    display: flex;
    flex-direction: column;
  }

  .reviews_main {
    display: flex;
    max-width: 1038px;
    justify-content: space-between;
    padding-bottom: 64px;
  }

  .reviews_text {
    font-size: 90px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -4.5px;
  }

  .reviews_title_black {
    color: var(--main-color1);
  }

  .reviews_title_yellow {
    color: var(--main-color2);
  }

  .prices_block_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    letter-spacing: initial;
    font-weight: 400;
    font-size: 16px;
    color: var(--main-color1);
  }

  .logo_reviews {
    display: flex;
    align-items: center;
    align-self: flex-end;
    padding-bottom: 64px;
  }

  .logo_reviews_img {
    transform: rotate(180deg);
    margin-right: 20px;
  }

  .logo_reviews_text {
    font-weight: 400;
    font-size: 20px;
    text-align: justify;
  }

  .swiper {
    width: 100%;
    height: 100%;
  }

  .swiper-wrapper {
    padding-bottom: 64px;
  }

  .reviews_list_item {
    border-left: 1px solid black;
    padding-left: 15px;
  }

  /* Змінюємо точки на горизонтальні риски */
  .swiper-pagination-bullet {
    width: 20px; /* Довжина риски */
    height: 4px; /* Товщина риски */
    border-radius: 2px; /* Закруглені кінці */
    background-color: var(--main-color1); /* Колір рисок */
    opacity: 0.5; /* Прозорість */
    transition: background-color 0.3s, opacity 0.3s;
  }

  /* Стиль для активного елемента */
  .swiper-pagination-bullet-active {
    background-color: var(--main-color2); /* Колір активної риски */
    opacity: 1; /* Робимо активну риску яскравішою */
  }

  /* ----------------------section faq------------------------ */

  .faq_container {
    max-width: 1040px;
    margin: 0 auto;
    padding-top: 200px;
  }

  .faq_title {
    font-size: 90px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -4.5px;
    padding-bottom: 56px;
  }

  .faq_main {
    display: flex;
  }

  .faq_foto {
    padding-right: 24px;
  }

  .faq_text {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: 64px;

    justify-content: center;
    align-items: center;
  }

  .faq_text_one {
    font-weight: 400;
    font-size: 16px;
    color: var(--main-color1);
    font-size: 32px;
    line-height: 100%; /* 32px */
    text-transform: uppercase;
    padding-bottom: 64px;
  }

  .faq_text_one_yellow {
    color: var(--main-color2);
  }

  .faq_text_two {
    color: var(--main-color1);
    font-size: 16px;
    line-height: 150%; /* 24px */
    text-transform: uppercase;
    padding-bottom: 64px;
  }

  .faq_button {
    width: 417px;
    height: 80px;
  }

  .faq_text_four {
    color: var(--main-color1);
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .social_list {
    display: flex;
    width: 242px;
    justify-content: space-between;
  }

  /* ----------------------Обробка відкриття - закриття питань і відповідей */

  .faq_list {
    list-style: none;
    padding: 0;
  }

  .faq_list_item {
    margin-bottom: 15px;
    border-bottom: 1px solid var(--main-color1);
  }

  .faq_question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    margin: 0;
    cursor: pointer;
    position: relative;
  }

  .arrow {
    width: 10px;
    height: 10px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: rotate(45deg);
    transition: transform 0.3s;
    display: inline-block;
    margin-left: 10px;
  }

  .faq_list_item.active .arrow {
    transform: rotate(-135deg);
  }

  .faq_answer {
    display: none;
    padding: 0 15px 15px 10%;
    margin: 0;
  }

  .faq_list_item.active .faq_answer {
    display: block;
  }

  /* ----------------------section contact------------------------ */

  .contact_container {
    max-width: 1040px;
    margin: 0 auto;
    padding-top: 200px;
  }

  .contact_main {
    display: flex;
    max-width: 1038px;
    justify-content: space-between;
    padding-bottom: 64px;
  }

  .contact_title {
    font-family: HelveticaNeueCyr;
    font-size: 128px;
    font-style: normal;
    font-weight: 550;
    line-height: normal;
    letter-spacing: -6.4px;
    text-transform: uppercase;
  }

  .contact_title_black {
    color: var(--main-color1);
  }

  .contact_title_yellow {
    color: var(--main-color2);
  }

  .contact_info {
    display: flex;
    color: var(--main-color1);
    width: 419px;
    margin-left: auto;
    margin-bottom: 24px;
  }

  .contact_info_text {
    text-align: justify;
  }

  .contact_list_2 {
    display: flex;
    justify-content: flex-end;
    align-items: end;
    margin-bottom: 64px;
    gap: 16px;
  }

  .contact_form {
    display: flex;
    flex-direction: column;
    padding-bottom: 443px;
  }

  .contact_form {
    display: flex;
    flex-direction: column;
    gap: 72px;
  }

  .contact_form input,
  .contact_form textarea {
    width: 100%;
    padding: 16px 0;
    border: none;
    border-bottom: 1px solid #adadad;
    background: transparent;
    font-size: 16px;
    outline: none;
  }

  .contact_form textarea {
    /* min-height: 10px; */
    resize: vertical;
  }

  .contact_form input::placeholder,
  .contact_form textarea::placeholder {
    color: #adadad;
    text-transform: uppercase;
    font-size: 16px;
  }

  .cta-button {
    align-self: center;
    transition: background-color 0.3s ease;
    /* margin-top: 64px; */
  }

  .contact_form button:hover {
    background: #e3b43d;
  }

  .contact_form input.error,
  .contact_form textarea.error {
    border: 2px solid red;
  }

  /* ----------------------arrow up------------------------ */
  .back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 1000;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
  }

  .arrow_up_img {
    width: 128px;
    height: 128px;
  }

  /* ----------------------footer------------------------ */

  /* .mainfooter {
    
    } */
  .container-footer {
    max-width: 100%;
    /* height: 327px; */
    margin: 0 auto;
    background-color: var(--main-color1);
    text-align: center;
  }

  .logo-footer {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 32px;
    font-weight: 400;
    font-style: normal;
    padding-top: 40px;
  }

  .logo-footer-text {
    color: var(--main-color3);
  }

  .speciality {
    margin-top: 40px;
    margin-bottom: 60px;
    font-size: 18px;
    line-height: 1.5;
  }

  .speciality_text {
    color: var(--main-color3);
  }

  .footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* padding-bottom: 108px; */
    padding: 40px 40px;
  }

  .social-links {
    padding-left: 208px;
    display: flex;
    gap: 12px;
  }

  .copyright {
    font-size: 16px;
    color: var(--main-color3);
  }

  .payment-systems {
    display: flex;
    gap: 8px;
    padding-right: 208px;
  }

  .desktop-hidden {
    display: none;
  }
}
