/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://example.com/
 Description:  Дочерняя тема для Hello Elementor
 Author:       Mariia
 Template:     hello-elementor
 Version:      1.0.0
*/

.site-footer {
  display: none !important;
}

/* Хедер 

body {
  padding-top: 10%; 
}*/

.site-header {
  /* position: fixed; */
  /* top: 0; */
  width: 100%;
  background: #fff;
  z-index: 1000;
  box-shadow: none;
}

.header-inner {
  width: 95%;
  max-width: 1440px; /* или 1200px — зависит от дизайна */
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100px;
  box-sizing: border-box;
}


.header-inner .container {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

/* Логотип */
.logo img {
  height: 90px !important;
  width: auto !important;
  margin-top: 12px;
}

/* Меню */
.main-menu {
  display: flex;
  gap: 32px;
  list-style: none;
 
  margin: 0;
  padding: 0;
}

.main-menu li {
  position: relative;
}

.main-menu a {
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 150%;
  color: #0000007c;
  text-decoration: none;
  transition: all 0.5s ease;
}

.main-menu a:hover::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #EC008C;
  border-radius: 2px;
}
.main-menu a:hover,
.main-menu a:focus {
  color: #EC008C;
  font-weight: 700;
}

.main-menu .current-menu-item a {
  color: #EC008C;
  font-weight: 700;
}


.presentation-button {
  display: none !important;
}


/* Бургер */
.burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  width: 24px;
  height: 24px;
  cursor: pointer;
}

.burger span {
  display: block;
  height: 3px;
  background: #004AAD;
  border-radius: 2px;
}

/* 📱 Мобильная адаптация */
@media (max-width: 768px) {
  .presentation-button {
    display: none !important;
  }
  
  body {
   padding-top: 10px; /* совпадает с высотой хедера */
  } 

  .site-header {
   height: 100px;
   background: #ffffffb9;
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   padding: 0;
  }

  .header-inner {
   width: 100%;
   margin: 0;
   padding: 0;
   height: 90px;
   box-sizing: border-box;
  }

  .logo img {
   height: 70px !important;
   width: auto !important;
   margin-top: 0;
  }
  .main-menu {
    display: none;
    flex-direction: column;
    background-color: #fff !important; 
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 20px;
    z-index: 1005;
  }

  .main-menu.active {
    display: flex;
  }

  .burger {
    display: flex;
  }
}


.presentation-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  background-color: #EC008C;
  color: #ffffff !important;
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 600!important;
  font-size: 16px;
  border-radius: 10px;
  text-decoration: none;
  transition: transform 1.1s ease;
}

.presentation-button:hover {
  transform: translateY(5px);
  font-weight: 600 !important; /* добавляем для фиксации веса */
}

.site-footer {
  text-align: center;
  padding: 20px 0;
}



/* CF7 */

/* Контейнер всей формы */
.wpcf7 form {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  max-width: 300px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Стили для input, select, textarea */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100% !important;
  height: 47px !important;
  padding: 12px 24px !important;
  margin: 8px 0 !important;
  background: #FFFFFF !important;
  border: none !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  color: #000000 !important;
  font-size: 16px !important;
}

/* Отдельно для textarea */
.wpcf7 textarea {
  height: 100px !important;
  resize: none !important;
}

/* Стили select */
.wpcf7 select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  padding-right: 40px !important;
  background-color: #FFFFFF !important;
  background-size: 18px 10px !important;
  box-shadow: none !important;
  border: none !important;
  
}

/* === Стили для intl-tel-input === */

.phone-wrapper {
  display: flex;
  align-items: center;
  gap: 12px; /* расстояние между кодом и номером */
  background: #fff;
  padding: 12px 24px;
  border-radius: 8px;
  border: 2px solid #84b5ff;
  width: 100%;
  max-width: 100%;
}

.country-code {
  font-size: 16px;
  color: #000;
  white-space: nowrap;
}

.phone-wrapper input[type="tel"] {
  border: none !important;
  outline: none;
  font-size: 16px;
  color: #000 !important;
  width: 100%;
  
}

.iti {
  width: 100% !important;
  position: relative;
  margin: 8px !important;
  box-sizing: border-box !important;
}

/* Контейнер флага и кода */
.iti__country-container {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}

/* Сам код страны */
.iti__selected-dial-code {
  color: #000000 !important;
  font-size: 16px !important;
  line-height: 1 !important;
  margin-left: 6px !important;
  position: relative !important;
  top: 0 !important;
}

/* Кнопка со флагом */
.iti__selected-country {
  background: transparent !important;
  border: none !important;
  padding: 0 8px !important;
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}

/* Поле для номера */
.iti__tel-input {
  width: 100% !important;
  height: 47px !important;
  padding: 12px 24px 12px 120px !important; /* место слева под флаг и код */
  background-color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  color: #000000 !important;
  font-size: 16px !important;
  outline: none !important;
}


/* Контейнер с флагом и кодом */
.iti__country-container {
  min-width: 110px !important; /* увеличиваем ширину */
  justify-content: flex-start !important;
}

/* Ввод номера — отступ слева, чтобы не наезжал на код */
input.iti__tel-input {
  padding-left: 100px !important; /* подгоняем под ширину контейнера */
}

/* Удаляем лишний margin у .iti */
.iti {
  margin: 0 !important;
}

/* Удаляем внешний margin у phone-wrapper */
.phone-wrapper {
  margin: 0 !important;
}

/* Задаём аккуратные отступы между элементами формы */
.wpcf7 form > * + * {
  margin-top: 16px !important; /* или 12px — по вкусу */
}




/* Центрирование кнопки и эффект Sink */
.wpcf7 input[type="submit"] {
  display: inline-block !important;
  margin: 8px !important;
  transition: transform 1.5s ease !important;
}

.wpcf7 input[type="submit"] {
 font-weight: 600!important;
}

.wpcf7 input[type="submit"]:hover {
  transform: translateY(5px) !important; /* эффект Sink */
}
.wpcf7-spinner {
  display: none !important;
}

/* Стили для сообщения об ошибке (внизу) */
.wpcf7-not-valid-tip {
  font-size: 14px !important;
  color: #F95DCD !important; /* розовый — как кнопка */
  margin-top: 4px !important;
  font-weight: 500 !important;
}

/* Обводка поля с ошибкой */
.wpcf7-form-control.wpcf7-not-valid {
  border: 2px solid #F95DCD !important; /* розовая граница */
  box-shadow: none !important;
}

/* Блок общей ошибки (внизу формы) */
.wpcf7-response-output.wpcf7-validation-errors {
  border: none !important;  
  background-color: none !important;  
  color: #000000 !important;             /* чёрный текст */
  padding: 12px 16px !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  text-align: center !important;
  margin-top: 4px !important;
}

.wpcf7-response-output {
  border: none !important;
  background: none !important;
  color: #000 !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

.fixed-box {
  width: 80px !important;
  height: 80px !important;
  overflow: hidden !important;
}

.wpcf7 form > p {
  margin: 4px !important;
  padding: 0 !important;
  line-height: normal !important;
}

