/*
	Theme Name: Hello Elementor
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 3.4.4
	Stable tag: 3.4.4
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
*/

.desc-services p {
  text-align: justify;
}
.my-cf7-form .mid-col input[type="radio"]:checked + span {
  color: unset;
  font-weight: unset;
  transform: unset;
  transition: unset;
  display: unset;
}
#download-brochure-footer-2:hover::after {
  width: 100%;
}

#download-brochure-footer-2::after {
  content: "";
  position: absolute;
  bottom: -2px;
  width: 0;
  height: 0.5px;
  background-color: #fe413f;
  transition: width 0.2s ease;
}
.wpcf7 form.sent .wpcf7-response-output {
  border-color: #fe413f;
  color: #fe413f;
}
.wpcf7 form .wpcf7-response-output {
  margin: 0px;
}
#tab-1-custom {
  scroll-margin-top: 80px;
}
#tab-2-custom {
  scroll-margin-top: 160px;
}
#tab-3-custom {
  scroll-margin-top: 240px;
}

#tab-4-custom {
  scroll-margin-top: 360px;
}
#tab-5-custom {
  scroll-margin-top: 440px;
}
#tab-6-custom {
  scroll-margin-top: 540px;
}
.elementor-widget-off-canvas .e-off-canvas__main.animated {
  animation-duration: 0.3s !important;
}


/* когда меню открыто — меняем местами */
body.menu-open .burger-btn {
  display: none;
}
body.menu-open .offcanvas-close-btn {
  display: inline-block;
}

.a-hover-custom a:hover {
  text-decoration: underline;
  text-decoration-color: #1e1f1f; /* ваш основной цвет текста */
}

.language-switcher {
  display: inline-flex;
  align-items: center;
  gap: 8px; /* расстояние между элементами */
  
}

.menu-custom a{
  padding-left: 0 !important;
}

.advantages .advantages-1,
.advantages .advantages-2,
.advantages .advantages-3,
.advantages .advantages-4,
.advantages .advantages-5 {
  padding: 0px !important;
}

.language-switcher .lang {
  font-family: "Akzidenz Pro", sans-serif;
  font-size: 18px;
  font-weight: 500;
  text-transform: uppercase;
  color: #1e1f1f; /* ваш основной цвет текста */
  text-decoration: none;
  padding: 4px 0; /* внутренние отступы для «кликабельности» */
}

.language-switcher .divider {
  color: #1e1f1f;
  user-select: none; /* чтобы «|» не выделялось при клике */
}

.language-switcher .lang:hover {
  color: #ff3b36; /* цвет при наведении */
}

.language-switcher .lang.active {
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: #1e1f1f;
}

.service-custom {
  position: relative; /* Родительский блок - "сцена" */
}

.menu-item-3610 ul {
  border: solid 1px;
  width: 88px !important;
  background: #1e1f1f;
  min-width: 88px !important;
}
.menu-item-3610 a {
  padding-right: 0px !important;
}

.menu-item-3610 ul a {
  /* 		color: #FE413F !important; */
}

.service-custom .elementor-icon {
  position: absolute; /* Абсолютное позиционирование для иконки */
  top: 40px; /* Отступ сверху (настройте под себя) */
  right: 40px; /* Отступ справа (настройте под себя) */
  z-index: 10; /* (Необязательно) Если нужно быть выше других элементов */
}

.service-custom:hover .elementor-flip-box__layer {
  /* Размытие фона под элементом */
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);

  /* Чтобы переход был плавным */
  transition: all 0.3s ease-in-out;
}

.svg-int-c .elementor-icon svg {
  height: auto;
}
.elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"] {
  text-decoration: underline;
  text-decoration-color: #fe413f;
  text-underline-offset: 15px;
}


/* Родительская обёртка формы на 3 колонки */
.my-cf7-form {
  display: grid;
  grid-template-columns: 55% 25% 20%; /* Левый, средний, правый столбцы */
  gap: 20px; /* Отступы между столбцами */
  align-items: start; /* Все тянутся к верхнему краю */
}

/* Чтобы чекбоксы каждый был на новой строке (по желанию) */
.my-cf7-form .wpcf7-list-item {
  display: block;
}

/* Делает кнопку красным квадратом (по скриншоту) */
#button-custom {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0px;
  width: 85%; /* фиксированная ширина */
  height: 220px; /* фиксированная высота */
  background-color: #fe413f; /* красный цвет */
  color: black;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
}

#button-custom:hover {
  background-color: #8b8b8b;
  color: #cbcbcb;
}

.left-col p {
  margin-bottom: 15px;
}

.left-col input {
  border: 1px solid #fe413f;
  background-color: #1e1f1f;
  color: #fe413f;
  height: 64px;
  font-size: 24px;
}
.mid-col {
  margin-top: 0px;
}

.mid-col p {
  color: #fff;
  font-size: 20px;
}

.my-cf7-form .right-col p {
  margin: 0;
  padding: 0;
}

.mid-col .wpcf7-list-item {
  position: relative; /* чтобы абсолют внутри виделся относительно этого блока */
  margin-bottom: 12px; /* отступ между пунктами */
  padding-left: 30px; /* резервируем место слева под кружок */
}

.mid-col .wpcf7-list-item input[type="radio"] {
  position: absolute;
  left: 0;
  top: 0px; /* или подстройте, чтобы кружок был по вертикали по центру */
  margin: 0; /* убираем лишние отступы */
}

/* Сброс стандартного вида для radio */
.mid-col input[type="radio"] {
  appearance: none; /* для большинства браузеров */
  -webkit-appearance: none; /* для Safari на iOS */
  -moz-appearance: none; /* для Firefox (частично) */

  width: 20px; /* диаметр внешнего круга */
  height: 20px;
  border: 2px solid #fe413f; /* цвет ободка */
  border-radius: 50%; /* скруглить до круга */
  outline: none;
  cursor: pointer;
  position: relative;
  vertical-align: middle; /* чтобы аккуратно выравнивать с текстом */
  margin-right: 8px; /* небольшой отступ после кружка */
  background-color: transparent;
}

/* Вид «точки» внутри, когда радио выбрано */
.mid-col input[type="radio"]:checked::before {
  content: "";
  display: block;
  width: 12px; /* диаметр внутренней точки */
  height: 12px;
  border-radius: 50%; /* скруглённая точка */
  background: #fe413f; /* заливка */
  position: absolute;
  top: 2px; /* отцентрировать внутри внешнего круга */
  left: 2px;
}

.elementor-1778 .elementor-element.elementor-element-76e9e27::before {
  left: 0px;
  top: 25px;
  z-index: 2;
}

.elementor-1778 .elementor-element.elementor-element-635fa8a::before,
.elementor-1778 .elementor-element.elementor-element-db152b9::before,
.elementor-1778 .elementor-element.elementor-element-6c090e7::before,
.elementor-1778 .elementor-element.elementor-element-37b299e::before {
  top: -66px;
  left: 20px;
  z-index: 2;
}

@media (max-width: 768px) {



  .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"] {
    text-decoration: unset !important;
  }
  .advantages .advantages-1,
  .advantages .advantages-2,
  .advantages .advantages-3,
  .advantages .advantages-4,
  .advantages .advantages-5 {
    height: 330px;
  }

  .tools-custom {
    background: #2a2c2c;
  }

  .mid-col .wpcf7-list-item {
    position: relative; /* чтобы абсолют внутри виделся относительно этого блока */
    margin-bottom: 10px; /* отступ между пунктами */
    padding-left: 20px; /* резервируем место слева под кружок */
  }

  .mid-col .wpcf7-list-item input[type="radio"] {
    position: absolute;
    left: -20px;
    
    margin: 0; /* убираем лишние отступы */
  }
  .mid-col span {
    font-size: 21px;
  }

  .left-col input {
    padding: 20px 5px;
    font-size: 21px;
  }

  .main-contact-custom {
    background-image: unset !important;
  }

  .elementor-1778 .elementor-element.elementor-element-76e9e27::before {
    left: 25px;
    top: -72px;
    z-index: 2;
  }

  .tools-block .elementor-widget-container {
    min-height: 430px;
  }

  .my-cf7-form {
    grid-template-columns: 1fr; /* одна колонка */
  }

  .my-cf7-form .left-col,
  .my-cf7-form .mid-col,
  .my-cf7-form .right-col {
    grid-column: 1;
  }

  #button-custom {
    width: 100%;
    height: 48px;
    margin-top: 20px;
    border-radius: 0px;
  }

  .useful.e-grid {
    display: block !important;
  }
  /* Добавляем горизонтальный отступ для каждого слайда */
  .slick-slide {
    margin: 0 5px; /* 10px справа и слева */
  }

  /* Чтобы не было горизонтальной прокрутки,
   компенсируем margin внутри .slick-list */
  .slick-list {
    margin: 0 -5px;
  }
}

.red-heder {
  position: relative;
}

.red-heder::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1366px;
  height: 1px;
  background-color: #1e1f1f;
}

.elementor-1770
  .elementor-element.elementor-element-2dd7878
  .e--pointer-underline
  .elementor-item::after,
.elementor-1770
  .elementor-element.elementor-element-2dd7878
  .e--pointer-overline
  .elementor-item::before,
.elementor-1770
  .elementor-element.elementor-element-2dd7878
  .e--pointer-double-line
  .elementor-item::before,
.elementor-1770
  .elementor-element.elementor-element-2dd7878
  .e--pointer-double-line
  .elementor-item::after {
  width: 60%;
  left: 25px;
}

.elementor-3394
  .elementor-element.elementor-element-567a63a
  .e--pointer-underline
  .elementor-item::after,
.elementor-3394
  .elementor-element.elementor-element-567a63a
  .e--pointer-overline
  .elementor-item::before,
.elementor-3394
  .elementor-element.elementor-element-567a63a
  .e--pointer-double-line
  .elementor-item::before,
.elementor-3394
  .elementor-element.elementor-element-567a63a
  .e--pointer-double-line
  .elementor-item::after {
  width: 60%;
  left: 25px;
}

.black-heder {
  position: relative;
}

.black-heder::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1366px;
  height: 1px;
  background-color: #fe413f;
}

.elementor-1778
  .elementor-element.elementor-element-4366219:not(
    .elementor-motion-effects-element-type-background
  ) {
  top: 65px;
}

.service-custom h3 {
  white-space: normal;
  overflow-wrap: break-word;
}

.elementor-1778 .elementor-element.elementor-element-4366219:not(.elementor-motion-effects-element-type-background) {
  background-position: right 20px !important;
}

@media (min-width: 768px) {
  #tab-1-custom svg,
  #tab-2-custom svg,
  #tab-3-custom svg,
  #tab-4-custom svg,
  #tab-5-custom svg,
  #tab-6-custom svg {
    display: none;
  }

  .my-vertical-line {
    position: relative;
  }

  .my-vertical-line::before {
    content: "";
    position: absolute;
    top: 48%;
    right: 0; /* или left: 0, если линия слева */
    transform: translateY(-50%);

    width: 1px;
    height: 100%; /* короче высоты контейнера */
    background-color: #3e3e3e;
  }

  .my-short-line {
    position: relative; /* чтобы псевдоэлемент позиционировался относительно этого контейнера */
  }

  /* псевдоэлемент ниже контента */
  .my-short-line::after {
    content: "";
    position: absolute;
    bottom: 0; /* линия у нижней границы .my-short-line */
    left: 47.2%; /* начало - центр контейнера */
    transform: translateX(-50%);

    width: 100%; /* линия короче, чем 100% контейнера */
    height: 1px; /* толщина линии */
    background-color: #3e3e3e; /* цвет линии */
  }
  

}

@media (max-width: 1300px) {
  .elementor-1778 .elementor-element.elementor-element-4366219:not(.elementor-motion-effects-element-type-background) {
    background-size: 700px !important;
  }
}


@media (max-width: 1198px) {
  .service-custom h3 {
    font-size: 32px !important;
  }
}

@media (max-width: 1273px) {
  .elementor-1728
    .elementor-element.elementor-element-19c2070
    .elementor-icon-box-description {
    font-size: 22px;
  }
  .tools-custom .elementor-icon-box-content p {
    font-size: 22px !important;
  }
}
@media (max-width: 1287px) {
  .elementor-1778 .elementor-element.elementor-element-4366219:not(.elementor-motion-effects-element-type-background) {
    background-size: 600px !important;
  }
}

@media (max-width: 1178px) {
  .elementor-1728
    .elementor-element.elementor-element-19c2070
    .elementor-icon-box-description {
    font-size: 21px;
  }
  .tools-custom .elementor-icon-box-content p {
    font-size: 20px !important;
  }
  .elementor-1778 .elementor-element.elementor-element-4366219:not(.elementor-motion-effects-element-type-background) {
    background-size: 600px !important;
  }
}

@media (max-width: 1022px) {
  .service-custom .elementor-icon {
    position: absolute; /* Абсолютное позиционирование для иконки */
    top: 15px;
    right: 20px;
    z-index: 10; /* (Необязательно) Если нужно быть выше других элементов */
  }
}

@media (max-width: 940px) {
  .elementor-element.elementor-element-6a4b02c.e-con-full.e-flex.e-con.e-child, .elementor-element.elementor-element-902155b.e-con-full.e-flex.e-con.e-child {
     height: 275px !important;
  }
  
  .tools-custom .elementor-icon-box-content p {
    font-size: 15px !important;
  }
 

  .my-short-line::after {
    bottom: 147px !important;
    left: 46.2% !important;
  }
  .my-vertical-line::before {
    top: 34% !important;
    right: 0 !important;
    width: 1px !important;
    height: 65% !important;

  }
}