/*
 * Theme Name: Start-Site 2.5
 * Description: Ultra-minimal WordPress starter theme. Optimized for converting html-layouts to websites. Also is a good start for SPA, creating unique projects.
 * Theme URI:   https://start-site.by
 * Author:      ULADZIMIR KONOVALOVE
 * Author URI:  https://start-site.by
*/
h3.project-title.fs28.white {
    text-transform: uppercase;
}
.project-image {
  height: 500px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
h2.offers-title.carousel-content.anim-title {
/*     display: none; */
}
h3.fs28.offers-title.carousel-content.anim-title {
/*     display: none; */
}
.anim-block,
.anim-block-sub {
  opacity: 0;
  transform: translateY(50px); /* положение до анимации */
  transition: all 0.3s ease-out;
  will-change: transform, opacity;
}
.anim-block-sub {
  transform: translateY(80px); /* чуть глубже до анимации */
}

span.fs32.opsenie_second {
    font-size: 32px;
    margin-bottom: 60px;
    display: block;
}

span.fs32.opsenie_second p {
    padding-bottom: 20px;
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
}


.cky-notice-des {
    margin-bottom: 40px;
}
.cky-consent-bar .cky-banner-btn-close img {
    height: 45px;
    width: 45px;
    margin: 25px;
}
.footer__menu nav.nav {
    width: 100%;
}
.cky-notice .cky-title {
    text-transform: uppercase;
}
.cky-notice-des P:last-child, .cky-preference-content-wrapper p:last-child, .cky-cookie-des-table li div:last-child p:last-child, .cky-gpc-wrapper .cky-gpc-desc p:last-child {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 140%;
}
.cky-notice .cky-title {
    color: #212121;
    font-weight: 700;
    font-size: 28px;
    line-height: 24px;
    margin: 0 0 32px 0;
}
.cky-box-bottom-right {
    max-width: 1200px;
width:100%
}
.cky-consent-container .cky-consent-bar {
    background: #ffffff;
    border: 1px solid;
    padding: 50px 56px;
    box-shadow: 0 -1px 10px 0 #acabab4d;
    border-radius: 6px;
    /* height: auto; */
}
button.custom-prev, button.custom-next {
    z-index: 8;
    position: absolute;
    top: 27%;
}
.mobistyle{
	display:none;
}
button.custom-next {
    right: 20px;
}
.floating-phone {
  position: fixed;
  right: 50px;
  bottom: 60px;
  z-index: 8;
  padding: 15px;
  border-radius: 50%;
/*   box-shadow: 0 4px 12px rgba(0,0,0,0.3); */
  cursor: pointer;
  transition: transform 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible; /* нужно для псевдоэлемента */
}

.floating-phone:hover {
  transform: scale(1.1);
}

/* Пульсация */
.floating-phone::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: var(--site-main-color) ; /* цвет пульсации */
  border-radius: 50%;
  z-index: -1;
  animation: pulse-ring 1.5s infinite ease-out;
}
.faq-icon svg.rotated path.arrow_st {
    fill: var(--site-main-color) ; /* цвет пульсации */
    stroke: var(--site-main-color) ; /* цвет пульсации */
	transition: all 0.4s;
}

.faq-icon svg.rotated path {
    fill: #fff;	transition: all 0.4s;
/*     stroke: #fff; */
}
/* Анимация пульсации */
@keyframes pulse-ring {
  0% {
    transform: scale(1);
    opacity: 0.7;
  }
  70% {
    transform: scale(1.8);
    opacity: 0;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}


.third-right-grid.another a {
    text-decoration: none;
}
.fs50{
	font-size:50px;
}
.fs24 {
	font-size:23px;
}
.fs28 {
font-size:27px;}
.white{
	color:#fff;
}
.bold {
	font-weight: bold; 
}
.fs32 { font-size: 18px;}
.fs18 { font-size: 18px; font-weight: bold; }
.fs16 { font-size: 16px; }

button {
  all: unset;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
	    cursor: pointer;
}
/* Open Sans Regular */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
}

/* Open Sans Italic */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
}

/* Open Sans Light */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
}

/* Open Sans Light Italic */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-LightItalic.woff2') format('woff2');
  font-weight: 300;
  font-style: italic;
}

/* Open Sans Medium */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
}

/* Open Sans Medium Italic */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-MediumItalic.woff2') format('woff2');
  font-weight: 500;
  font-style: italic;
}

/* Open Sans SemiBold */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
}

/* Open Sans SemiBold Italic */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-SemiBoldItalic.woff2') format('woff2');
  font-weight: 600;
  font-style: italic;
}

/* Open Sans Bold */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
}

/* Open Sans Bold Italic */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-BoldItalic.woff2') format('woff2');
  font-weight: 700;
  font-style: italic;
}

/* Open Sans ExtraBold */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-ExtraBold.woff2') format('woff2');
  font-weight: 800;
  font-style: normal;
}

/* Open Sans ExtraBold Italic */
@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-ExtraBoldItalic.woff2') format('woff2');
  font-weight: 800;
  font-style: italic;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
    background: #222423;
    border: 0px solid;
font-family: 'Open Sans';
  font-weight: 400;
	overflow-x: hidden;
}

.header-adress {
    color: #929292;
    font-size: 12px;
}
/* контейнер можно оставить без изменений */
.header-phone{
  /* при необходимости свои отступы/выравнивание */
}
.footer__menu ul.header-nav li a:hover {
    color: var(--site-main-color);
}
/* ссылка с белым пунктирным подчёркиванием */
.header-icons {
    height: 60px;
    width: 60px;
min-width: 60px;
    background: var(--site-main-color);
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
}
ul.header-nav {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

nav.nav {
    width: 100%;
}
section {
  scroll-margin-top: 100px; /* по высоте шапки */
}
div#kontakt,section#realizacje {
  scroll-margin-top: 180px; /* по высоте шапки */
}
footer a:hover {
    color: var(--site-main-color);
   transition: all 0.3s;
}
footer a {
    color: #fff;
    text-decoration: none;   transition: all 0.3s;
}
.page-template-contacts div#kontakt {
    margin-top: 160px;
}
ul.header-nav li a {
    text-decoration: none;
    color: var(--site-main-color);
    font-weight: 800;
    transition: all 0.3s;
}
ul.header-nav li a:hover {
    color: #fff;
    transition: all 0.3s;
}
.header-phone__link{
  position: relative;
  display: inline-block;
  color: #ffffff;            /* сам текст */
font-family: 'Open Sans';
  font-size: 16px;
  line-height: 20px;
  text-decoration: none;     /* убираем обычную линию */
}

/* псевдо‑элемент рисует пунктир */
.header-phone__link::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;                  /* линия по всей ширине текста */
  bottom: -4px;              /* ↓ отступ от текста (меняйте) */
  border-bottom: 1px dotted #ffffff;  /* белая пунктирная линия */
}

/* при наведении, например, меняем цвет текста — линия остаётся белой */
.header-phone__link:hover{
  color: #d82020;
}

 
/* Контейнер */
.container {
/*   max-width: 1600px;
  margin: 0 auto;
  display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column; */
	
	    position: relative;
  max-width: 1600px;
  margin: 0px auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  padding: 0; /* если нужно */
}
.flickity-outer {
    display: block;
    position: relative;
    max-width: 1600px;
    margin: 0 auto;    min-height: 700px;
}
/* Логотип */
.header-logo img {
  display: block; /* убирает отступы у img */
}
.header-logo img {
  width: 60px;
  height: auto; /* сохраняет пропорции */
}
nav.nav {
    display: flex;
    justify-content: center;
    width: 85%;
}
/* Обёртка навигации */
.header-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 120px;
    font-size: 20px;
}



/* Кнопка переключения мобильного меню (если нужна) */
.menu-toggle {
  display: none; /* по умолчанию скрыта, если не нужна на десктопе */
  /* при желании стилизуйте её для мобильной версии */
}

/* Селектор, под который попадает ваш список из wp_nav_menu */
#primary-menu ul {
  list-style: none;
  display: flex;
  gap: 20px;
  margin: 0;
  padding: 0;
}
header {
    /* margin-bottom: 65px; */
    position: absolute;
    top: 30px;
    left: 0;
    width: 100%;
    border-radius: 400px;
    z-index: 10;
/*     background: hwb(0deg 100% 0% / 50%); */
    position: fixed;
}
.container.head {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
padding: 15px 40px;
    align-items: center;
    background: #ffffff00;
    margin: 0 auto;
}
#primary-menu li a {
  text-decoration: none;
  color: var(--site-main-color);
  font-size: 20px;
  font-weight: 800;

  display: block;
  padding: 10px 0;
}




/*слайдер*/

.main-carousel {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
/* .container, .main-carousel {
  padding: 0;
  margin: 0;
} */
.carousel-cell {
   width: 100vw !important;
  height: 100vh;
  background-size: cover;
  background-position: center;
  position: relative;
  display: flex;
     align-items: flex-end;
  justify-content: flex-start;
    padding-bottom: 110px;
}

.carousel-content {
  color: white;
  max-width: 1600px;
    padding: 0px 30px;
    margin: 0 auto;
width:100%;
}

.carousel-content h2 {
  font-size: 50px;
  margin-bottom: 24px;
	font-weight:800;
width: 82%;
}

.carousel-content p {
  font-size: 24px;font-weight:600;
width: 93%;
}
/**/

.custom-form .form-row p {
    font-size: 28px;
    width: 100%;
}


.offers-section {

  color: #fff;
  padding: 220px 40px 0px;
  text-align: center;
}

.offers-wrapper {/* margin: 0 auto; */width: 100%;}

.offers-title {
  color: #5F676D;
  font-weight: 800;
  margin-bottom: 10px;
  text-transform: uppercase;
	font-size:32px;
}

.offers-subtitle {

  font-weight: 800;
  color: #fff;
  margin-bottom: 80px;
}

.offers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  gap: 20px;
  /* width: 100%; */ /* чуть меньше 1600 чтобы учесть gap */
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 23px;
  justify-content: space-between;

}

.offer-item {
    max-width: 517px;
    width: 100%;
    justify-self: center;
    flex: 1 1 calc(33.333% - 20px);
    background: #ffffff1a;
transition: all 0.5s;
    /* padding: 66px 42px; */
    background: url(/wp-content/uploads/2025/06/frame-448-1.jpg) no-repeat center center;
    min-height: 200px;
    background-size: cover;
    display: flex;
/*     border: 1px solid var(--site-main-color); */
    box-shadow: 0px 0px 20px var(--site-main-color);
    align-items: center;
    justify-content: center;
}
.offer-item.extra-item-class {
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  transition: transform 0.5s ease;
}

/* псевдоэлемент поверх */
/* .offer-item.extra-item-class::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('/wp-content/uploads/2025/06/bg.jpg');
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 1;
}
.offer-item.extra-item-class::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('/wp-content/uploads/2025/06/bg.jpg');
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 1;
} */
/* ховер-переход — без дергания */
.offer-item.extra-item-class:hover::after {
  opacity: 1;
}

/* контент поверх */
.offer-item.extra-item-class .offer-content {
  position: relative;
  z-index: 2;
	gap:20px;
}
.offers-grid.extra-grid-class {
    row-gap: 60px;
}
.offer-title {

  font-weight: 700;
  margin-bottom: 8px;
}

.offer-description {

  line-height: 1.4;
}
.offer-content {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
}





/*3 блок*/

.section-header.text-center, .text-center {
    text-align: center;
}



.third-section {
  padding: 220px 40px 0px;
}

.third-section-grid {
  display: flex;
  flex-direction: column;
  gap: 80px;
}

.third-row {
  display: flex;
  gap: 80px;
  align-items: center;
  justify-content: space-between;
align-items: stretch;
}

.third-row.reverse {
/*   flex-direction: row-reverse; */
}

.third-col.image {
  flex: 1;
}

.third-col.image img {
  width: 100%;
  height: auto;
}

.third-col.text {
  flex: 1;
  color: white;
  max-width: 730px;
  display: flex;
  flex-direction: column;
	gap:30px;
    justify-content: space-between;
}

.block-title {
font-family: 'Open Sans';
  font-size: 32px;
  font-weight: 700;
  text-transform: uppercase;
}

.block-text {
  font-size: 24px;
  line-height: 1.6;
}


.block-content {
    display: flex;
    flex-direction: column;
    gap: 60px;
}

.buttons {
  display: flex;
  gap: 20px;
}
.buttons {
  display: flex;
  gap: 20px;
}

.btn {
  position: relative;
  overflow: hidden;
  padding: 17px 15px;
  border-radius: 999px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  font-size: 20px;
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  color: #fff;

  background-position: center center;
  background-repeat: no-repeat;
  background-size: 130%;
  border: 1px solid var(--site-main-color);
  box-shadow: 0px 0px 20px var(--site-main-color);
  transition: color 0.3s ease, box-shadow 0.3s ease, border 0.3s ease;
}

/* 🔴 Красная: с фоновым изображением */
.btn.red {
  background-image: url(/wp-content/uploads/2025/06/bg.jpg);
  background-color: transparent;
}

/* ⚪ Белая: без фонового изображения */
.btn.white {
  background-color: #fff;
  color: #000;
  background-image: none;
}


/* Текст поверх ::after */
.btn > * {
  position: relative;
  z-index: 2;
}


/* Hover эффекты */
.btn.red:hover::after {
  background-color: #330100; /* затемнение */
}

.btn.white:hover::after {
  background-color: #330100;
}

/* Hover цвета текста и тени */
.btn.red:hover,
.btn.white:hover {
  color: #fff;
  box-shadow: 0px 0px 20px var(--site-main-color);
}

/* Active состояния */
.btn.red:active::after,
.btn.white:active::after {
  background-color: #ffffff;
}

.btn.red:active,
.btn.white:active {
  color: #000;
  border: 1px solid var(--site-main-color);
}

.btn::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: transparent;
  transition: background-color 0.3s ease;
  border-radius: inherit;
}



/**/


/*5 блок*/
section.projects-slider-section {
    padding: 220px 40px 0px;
}
p.slider-subdescription {
    font-weight: 700;
    font-size: 28px;
    color: #FFFFFF;
	    margin-bottom: 40px;
}
.offer-item.extra-item-class {
  
    flex: 1 1 calc(32% - 20px);
    max-width: 100%;
/*     border: 0px solid var(--site-main-color);
    box-shadow: 0px 0px 10px #ffffff; */
}
.offer-item.extra-item-class.anim-block-sub {
       background: none;
    box-shadow: none;
}
/*слайдер*/
.project-card {
  width: 50%;  /* 2 карточки */
  box-sizing: border-box;
  padding-right: 20px; /* отступ между карточками */
}


.flickity-button-icon {
    fill: rgb(255 255 255);
}
.flickity-button:hover {
    background: #eb1a1d;
    cursor: pointer;
    color: #123;
    transition: all 0.2s;
}
.flickity-button {
    position: absolute;
    background: var(--site-main-color);
    border: none;
    color: #333;
    transition: all 0.2s;
}
.flickity-prev-next-button {
    top: 0%;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    transform: translateY(280%);
}
.flickity-button:focus {
    outline: 0;
    box-shadow: 0 0 0 0px #19f;
}
.project-info {
    display: flex;
    gap: 5px;
    flex-direction: column;
    margin-top: 40px;
}
.flickity-prev-next-button.previous {
    left: 30px;
}
.flickity-prev-next-button.next {
    right: 40px;
}
/**/


/*six block*/

.faq-item .cursor-pointer {
  cursor: pointer;
}

.faq-icon svg.rotated {
  transform: rotate(180deg);
}

.faq-answer {
  transition: all 0.3s ease;
}
.faq-list.text-start {
    width: 100%;
}




.faq-item {
  padding-bottom: 30px;
  margin-bottom: 10px;
}

.faq-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  gap: 20px;
}

.faq-counter {
  width: 70px;
  height: 70px;
  background: var(--site-main-color); /* если нет переменной, синий цвет по умолчанию */
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.faq-question {
  font-size: 30px;
  font-weight: 800;
  color: #ffffff;
  margin-left: 20px;
  flex-grow: 1;
  text-align: left;
}

.faq-icon {
  transition: transform 0.3s ease;
}

.faq-icon svg {
  transform: rotate(0deg);
transition: all 0.2s;
}

.faq-icon svg.rotated {
  transform: rotate(180deg);
transition: all 0.2s;
}

.faq-answer {
  font-size: 32px;
  color: #ffffff;
  margin-top: 15px;
  display: none;
  text-align: left;
      padding-left: 112px;
    width: 94%;
}

.faq-answer.show {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}
div#kontakt {
    padding: 220px 0px 0px;
}
/*seven block*/

.custom-form {
  max-width: 526px; /* твой реальный размер */

width: 100%;
display: flex;
    flex-direction: column;
    gap: 20px;
}

.custom-form .form-row {
  margin-bottom: 0px;
  width: 100%;
  height: 100%;
}

.custom-form .form-row.two-cols {
  display: flex;
  gap: 20px;
    height: 70px;
}

.custom-form .form-row .half {
  width: 50%;
}

input[type="text"],
input[type="tel"],
select,
textarea,
input[type="date"] {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 10px 30px;
  width: 100%;
  max-width: 100%;
  height: 70px;
  background: #FFFFFF;
  border: 1px solid var(--site-main-color);
  border-radius: 500px;
  font-size: 16px;
  appearance: none;    font-family: 'Open Sans';
color: #7f7f7f;
}

/* Стили для select-wrapper и svg */
.select-wrap {
  position: relative;
  display: block;
}

.select-wrap select {
  padding-right: 40px;
font-family: 'Open Sans' !important;
}

.select-arrow {
  position: absolute;
  right: 20px;
  top: 35%;
  transform: translateY(-50%);
  pointer-events: none;
  color: var(--site-main-color);
}

/* Кнопка */


.form-button-wrapper {
  position: relative;
  display: inline-flex;
  width: 100%;
  border-radius: 500px;
  overflow: hidden;
  box-shadow: 0px 0px 20px var(--site-main-color);
  border: 1px solid var(--site-main-color);
  transition: box-shadow 0.3s ease, border 0.3s ease;
}

/* Псевдофон — изображение */
.form-button-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url(/wp-content/uploads/2025/06/bg.jpg) center center / 130% no-repeat;
  transition: background-color 0.3s ease, opacity 0.3s ease;
  z-index: 1;
}

/* Дополнительный оверлей для затемнения при ховере */
.form-button-wrapper::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: transparent;
  transition: background-color 0.3s ease;
  z-index: 2;
}

/* Текстовая кнопка поверх всего */
.form-button {
  all: unset;
  width: 100%;
  padding: 20px 30px;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
  z-index: 3;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: color 0.3s ease;
}

/* 🟥 Hover: добавляем тёмно-красную заливку */
.form-button-wrapper:hover::before {
  background-color: rgba(51, 1, 0, 0.9); /* #330100 с прозрачностью */
}

.form-button-wrapper:hover .form-button {
  color: #fff;
}

/* ⚪ Active: светлый фон + чёрный текст */
.form-button-wrapper:active::before {
  background-color: #fff;
}

.form-button-wrapper:active .form-button {
  color: #000;
}







input {
 font-family: 'Open Sans' !important;
}
.container.left-form {
    align-items: flex-start;
}

section.seven-section.offers-section {
    align-content: center;
}
.wpcf7-response-output {
    max-width: 526px;
  margin-top: 15px;
  font-size: 14px;
  color: #fff;
  padding: 10px 20px;
  text-align: center;
    text-align: center;
    margin: 0 auto;
    position: absolute;
}
/*покажи меня на мобилке*/
.screen-reader-response {
    display: none;
}
.wpcf7-not-valid-tip {
    font-size: 12px;
    color: #fff;
    margin-top: 5px;
    margin-left: -60px;
    position: absolute;
    width: 150px;
}


.wpcf7-form-control-wrap {
  position: relative; /* Чтобы position absolute внутри работал */
}
form.wpcf7-form.invalid {
    max-width: 526px;
}
/**/



/* При ховере делаем слой с прозрачностью 0.9 (90%) */
.offer-item.extra-item-class:hover::after {
  opacity: 0.5; /* было 1, стало 0.9 */
}



.footer {
  width: 100%;
  color: #fff;
 font-family: 'Open Sans';
  padding: 0px 40px;

  .footer__wrapper {
    max-width: 1600px;
    margin: 0 auto;
    padding: 220px 0px 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0px;
  }

  .footer__title {
    font-size: 50px;
    font-weight: 700;
    text-align: center;
    line-height: 1.2;
  }

  .footer__content {
    display: flex;
    justify-content: space-between;
    gap: 80px;
    flex-wrap: wrap;
	  width:100%;
  }

  .footer__map {
    flex: 1;
    min-width: 300px;
    max-width: 920px;
    width: 100%;
    
    
    
    
    
    
    
    
    
    

    iframe {
      width: 100%;
      height: 560px;
      border: none;
    }
  }

  .footer__info {
    width: 650px;
    display: flex;
    flex-direction: column;
    gap: 60px;
  }

  .footer__info-block {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .footer__row {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    text-decoration: none;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    svg {
      flex-shrink: 0;
    }

    p {
      font-size: 28px;
      font-weight: 500;
      line-height: 1.4;
      max-width: 565px;
    }
  }

  .footer__socials {
    display: flex;
    gap: 20px;	
	  padding-left: 88px;

    a {
      display: block;
      width: 40px;
      height: 40px;

      img {
        width: 100%;
        height: auto;
      }
    }
  }

  .footer__company-data {
    display: flex;
    flex-direction: column;
    gap: 20px;
padding-left: 88px;
    
    p {
      font-size: 28px;
      font-weight: 500;
      line-height: 2;
      max-width: 565px;
    }
  }

  .footer__nav {
    width: 100%;
    padding: 80px 333px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;

      padding: 220px 20px 40px;
    }


    .footer__menu {
      display: flex;
      justify-content: space-between;
      width: 100%;
      flex-wrap: wrap;
      gap: 20px;

      a {
        font-size: 20px;
        font-weight: 700;
        text-decoration: none;
        color: #fff;
      }
    }

    .footer__links {
      text-align: center;
      font-size: 20px;
      font-weight: 700;
    }

    .footer__logo {
      img {
            max-width: 240px;
            height: auto;
            width: 140px;
      }
    }

    .footer__bottom {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
		margin-bottom: 70px;

      p {
        font-size: 18px;
        font-weight: 500;
        text-align: center;
      }
    }
  }
}


.footer__row a {
    text-decoration: none;
    color: #fff;
}

/*другие странцы*/

.container.and_social {
    margin-bottom: 110px;
}
section.hero-section {
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
background-size: cover;
}
.and_social .carousel-content h2 {

    width: 100%;
}
.and_social .carousel-content {
    text-align: center;
}



.services-block {
  background-size: cover;
  background-position: center;
  padding: 160px 0;
  height: 1200px;
  display: flex;
  align-items: center;
  background: #123;
  background-size: cover;
  background-position: center;
    justify-content: center;
    height: auto;
    align-items: center;
}

.services-inner {
display: flex;
    justify-content: center;
    gap: 25px;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    /* flex-wrap: wrap; */
    flex-direction: row;
    flex-wrap: nowrap;
    height: 100%;
    vertical-align: middle;
    display: flex;
}
.services-block .carousel-content h2 {
    width: 100%;
}
.services-block:nth-of-type(2n+1) .services-inner {
  flex-direction: row-reverse;
}

.services-left {
  flex: 1 1 770px;
  max-width: 770px;
}

.services-img {
  width: 100%;
  height: auto;
  max-height: 880px;
  object-fit: cover;
  box-shadow: 0px 0px 4px 2px #FFFFFF;
  display: block;
}

.services-right {
  flex: 1 1 650px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  color: #fff;
}
h2.services-title.fs50 {
    text-transform: uppercase;
}
.services-title {
  margin-bottom: 0px;
    line-height: 140%;
}
.services-list {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
h3.services-item-title.fs28 {
    line-height: 140%;
}
.services-item {
    display: flex;
    flex-direction: column;
    gap: 25px;
}
.services-item-desc {
/*   margin-bottom: 30px; */
    line-height: 140%;
}
.services-item-title::before {
    content: '•';
    display: inline-block;
    color: #fff;
    font-size: 1.5em;
    margin-right: 0em;
    vertical-align: bottom;
}
h3 {
    font-size: 28px;
    line-height: 140%;
    margin-bottom: 25px;
}
.politika {
    font-size: 24px;
    color: #fff;
    margin: 160px auto 0px;
    line-height: 140%;
    display: flex;
    align-items: flex-start;
}
.container.other_page.politika.carousel-content h3:before {
    content: '•';
    display: inline-block;
    color: #fff;
    font-size: 1.5em;
    margin-right: 0em;
    vertical-align: bottom;
}
.container.other_page.politika.carousel-content h2 {
    width: 100%;
    line-height: 140%;
}
.politika p {
    margin-bottom: 40px;
}
h3.services-item-title.fs28::before {
    content: '•';
    display: inline-block;
    color: #fff;
    font-size: 1em;    margin-left: 20px;
    margin-right: 0em;
    vertical-align: bottom;    margin-right: 20px;
}

.services-title-wrapper {
display: flex;
    font-weight: 800;

    gap: 15px;
}
.services-item-desc.fs24 ul {
    padding-left: 40px;
    line-height: 210%;
}
.services-count.fs50 {
    margin-top: 3px;
}
/* Адаптивность */

@media (max-width: 1017px) {
	.buttons {
    flex-direction: column;
}
	
}

@media (max-width: 1200px) {


  .services-left,
  .services-right {
    max-width: 100%;
    flex: 1 1 100%;
  }

  .services-block {
    height: auto;
  }
}

/**/
@media (max-width: 1100px) {
 
}


.carousel-bg {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-size: cover;
  background-position: center;
  z-index: 0;
}

.desktop-bg {
  display: block;
}
.mobile-bg {
  display: none;
}

@media (max-width: 767px) {
  .desktop-bg {
    display: none;
  }
  .mobile-bg {
    display: block;
  }
}




@media (max-width: 767px) {
  .offer-item.extra-item-class {
    flex: 1 1 100%;
  }
}



textarea.wpcf7-form-control.wpcf7-textarea {
    height: 140px;
    border-radius: 30px;
    padding: 20px 30px;
}


.container-fluid {
    background: hwb(0deg 100% 0% / 50%);
    margin: 0px 20px;
    border-radius: 100px;
}

@media (min-width: 1601px) and (max-width: 1919px) {
h3.services-item-title.fs28 {
    margin-bottom: 10px;
}
.services-img {
    height: 100%;
}.services-left {
    max-height: 650px;
}
.services-list {
    gap: 20px;
/*         padding-left: 60px; */
}
.carousel-content p {
        font-size: 19px;
        font-weight: 400;
}
.services-item {
    gap: 0px;
}
.services-right {
    gap: 0px;
}
    .carousel-content h2 {
        font-size: 40px;
    }
.fs50{
	font-size:40px;
}
}


button.cky-btn.cky-btn-accept {
    height: 60px;
    padding: 0px;
    border-radius: 300px;
    border: 0px;
    font-size: 16px;
}

button.cky-btn.cky-btn-reject {
    height: 60px;
    padding: 0px;
    border-radius: 300px;
    /* border: 0px; */
    font-size: 16px;
}
.cky-preference-header .cky-btn-close img {
    margin: 0;
    height: 45px;
    width: 45px;
}
.cky-accordion-wrapper {
    display: none;
}
button.cky-btn.cky-btn-customize {
    height: 60px;
    padding: 0px;
    border-radius: 300px;
    /* border: 0px; */
    font-size: 16px;
}
button.cky-btn.cky-btn-preferences {
    border-radius: 400px;
    height: 60px;
    font-size: 16px;
    padding: 0px;
}
	  @media (max-width: 1600px) {
button.cky-btn.cky-btn-accept {
    height: 60px;
    font-size: 16px;
}

button.cky-btn.cky-btn-reject {
    height: 60px;
    font-size: 16px;
}

button.cky-btn.cky-btn-customize {
    height: 60px;
    font-size: 16px;
}
h3.services-item-title.fs28 {
    margin-bottom: 10px;
}
.services-list {
    gap: 20px;      
}
.carousel-content p {
        font-size: 19px;
        font-weight: 400;
}
.services-item {
    gap: 0px;
}
.services-right {
    gap: 0px;
        padding: 0px 0px 0px 20px;
}
.offers-title {
    font-size: 28px;
}

.block-content {
    gap: 0px;
}
.block-title, span.fs32.opsenie_second p {
    font-size: 22px;
}

.block-text {
    font-size: 17px;
}
.flickity-outer {
    min-height: 720px;
}
.faq-question {
    font-size: 24px;
}
.faq-answer {
    font-size: 24px;
}
section.seven-section.offers-section {
    padding: 0px 40px 0px;
}
.footer {
    & .footer__row {
        p {
            font-size: 28px;
        }
    }
}
.footer {
    & .footer__company-data {
        p {
            font-size: 28px;
        }
    }
}
.carousel-content h2 {
    font-size: 34px;
}

.fs50 {
    font-size: 34px;
}
.services-count.fs50 {
    font-size: 34px;
}



section.seven-section.offers-section {
    min-height: 600px !important;
}
		  .header-nav {
    gap: 80px;
}
    .footer__map {
         max-width: 100%;
    }
.third-row {
  
    gap: 40px;
}
.offer-item {
         max-width: 100%;
        flex: 1 1 calc(24.333% - 10px);
}
.offers-grid {

        gap: 70px;
        row-gap: 60px;
}
	  }

@media (min-width: 1001px) and (max-width: 1260px) {


    .services-count.fs50 {
        font-size: 28px;
    }
    .carousel-content h2, .fs50 {
        font-size: 31px;
    }
    .carousel-content p {
        font-size: 16px;
        line-height: 150%;
    }

    h3.services-item-title.fs28 {
        margin-bottom: 5px;
        font-size: 24px;
    }
}





@media (min-width: 769px) {
	button#burger-toggle {
   display:none;
}
}

@media (max-width: 1024px) {
  .project-card {
    width: 66.6666%; /* 1.5 карточки на планшетах */
  }
	    .header-nav {
        gap: 40px;
    }
}
@media (max-width: 930px) {

	    .header-nav {
        gap: 20px;font-size: 17px;
    }

}
section.hero-section.other_page .carousel-content, section.hero-section.other_page .carousel-content p {
    width: 100%;
}
.services-item-desc.fs24 p {
    width: 100%;
}





/* Основной фон */
.popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background-color: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* Показать попап */
.popup.popup-visible {
  opacity: 1;
  visibility: visible;
}

/* Внутренний блок */
.popup-inner {
      background: url(/wp-content/uploads/2025/06/bg.jpg);
 background:linear-gradient(rgb(0 0 0 / 30%), rgb(0 0 0 / 30%)), url(/wp-content/uploads/2025/06/bg.jpg) no-repeat center center;
    border-radius: 12px;
    padding: 20px;
    max-width: 90vw;
    background-size: cover;
    color: #fff;
    max-height: 90vh;
    width: 1100px;
    height: 600px;
    position: relative;
    overflow-y: auto;
    transform: scale(0.95);
       display: flex;
    transition: transform 0.3s ease;
    align-items: center;
    justify-content: center;
}
.form_check span {
    font-size: 22px !important;
}
.popup-visible .popup-inner {
  transform: scale(1);
}
.form_check input {
    margin-right: 20px;
}
/* Кнопка закрытия */
.popup-close {
  position: absolute;
  top: 50px;
  right: 50px;
  font-size: 26px;
  color: #000;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 10;
}

/* Контент */
.popup-content {
  margin-top: 30px;
    display: flex;
    gap: 50px;
    flex-direction: column;
    align-items: center;
}

.form-success-message {
    gap: 24px;
}


.offers-wrapper.oshibka {
    height: 800px;
    display: flex;
    flex-direction: column;
    gap: 210px;
    align-items: center;
}


.offers-wrapper.oshibka a.btn.white {
    max-width: 350px;    min-width: 350px;
}
.img_fon {
    position: absolute;
    bottom: 170px;
    z-index: 0;
}

.offers-wrapper.oshibka svg {
    z-index: 0;
}

.offers-wrapper.oshibka a.btn.white {
    z-index: 9;
}
/* Мобильная адаптация */
.offer-title.fs28 {
    margin-bottom: 0px;
}
@media screen and (max-width: 768px) {
	span.fs32.opsenie_second p {
    font-size: 18px;
}
	span.fs32.opsenie_second
 {
    font-size: 16px;
}

.footer {
    & .footer__logo {
        img {
            max-width: 70px;
        }
    }
}
.footer {
    & .footer__menu {
        a {

            font-size: 18px;
            color: white;
            text-decoration: none;
            font-weight: 800;
        }
    }
}
.form-success-message p.fs32 {
    font-size: 16px;
}
.cky-notice-des p {
    font-size: 16px !important;
}
.cky-notice-btn-wrapper button {
    font-size: 14px !important;
}
.cky-consent-container .cky-consent-bar {
    background: #ffffff;
    border: 1px solid;
    padding: 30px 6px;
    box-shadow: 0 -1px 10px 0 #acabab4d;
    border-radius: 6px;
}
.form-success-message p.fs16 {
    width: 95%;
}
    .services-count.fs50 {
        font-size: 18px;
    }.services-count.fs50 {
    margin-top: 0px;
}
  .popup-inner {
    width: 100vw;
    height: 100vh;
    max-width: 100vw;
    max-height: 100vh;
    border-radius: 0;
    padding: 20px;
  }

  .popup-close {
    top: 30px;
    right: 30px;
    font-size: 30px;
  }

  .popup-content {
    margin-top: 0px;
  }
}

/* Отключение скролла фона */
body.no-scroll {
  overflow: hidden;
}






.custom-form.popup_form_ni {
    max-width: 800px;
}
.form-row-main {
    display: flex;
    gap: 30px;
}
.form_title {
    text-align: center;
    font-weight: 800;
}

.form_subtitle {
    text-align: center;
    font-size: 32px;
    font-weight: 600;
}
.custom-form.popup_form_ni .form-row {
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.custom-form.popup_form_ni span.wpcf7-not-valid-tip {
    margin-left: 10px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    font-size: 12px !important;
}
div#full-popup form.wpcf7-form.invalid {
    max-width: 800px;
}
.popup-inner .wpcf7-response-output {
    max-width: 100%;
    margin: 0 auto;
    width: 70%;
    text-align: center;
}
/* Скрываем стандартную радиокнопку */
.popup_form_ni input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #fff; /* цвет рамки */
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  transition: 0.2s;
}

/* Стилизация активной точки внутри */
.popup_form_ni input[type="radio"]:checked::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 8px;
  height: 8px;
  background-color: #fff; /* цвет заливки выбранной */
  border-radius: 50%;
}

/* При наведении */
.popup_form_ni input[type="radio"]:hover {
  border-color: #fff;
}
div#full-popup input.wpcf7-form-control.wpcf7-submit.has-spinner.form-button {
    background: #330100;
}
div#full-popup input.wpcf7-form-control.wpcf7-submit.has-spinner.form-button:hover {
             background: #fff;
	color: var(--site-main-color);
}
div#full-popup input.wpcf7-form-control.wpcf7-submit.has-spinner.form-button:active {

}
@media (max-width: 768px) {
    .services-list {
    
    }
.footer {
    .footer__company-data {
		order:2;
        padding-left: 78px;
    }
}
.footer {
    .footer__socials {
		            padding-left: 0px;
            order: 3;
            width: 100%;
            justify-content: center;
            gap: 34px;
    }
}
.form_title.fs50 {
    font-size: 50px;
}
.form-row-main {

    flex-direction: column;
}
.floating-phone.popup-maker-trigger svg {
    width: 50px;
    height: 50px;
}
.form_check span {
    font-size: 11px !important;
        font-weight: 600;
}
.form_check input {
    top: 4px;
}
.floating-phone {
    right: 30px;
    bottom: 30px !important;
}
button#burger-toggle {
    order: 3;
}
.header-logo img {
    width: 40px;
    height: auto;
}
.header-icons {  order: 1;
    height: 40px;
    width: 40px;
    min-width: 40px;
    border-radius: 190px;

    font-size: 10px;
    font-weight: 500;
}
.select-arrow {
  top: 50%;
  transform: translateY(-50%);
}

input[type="text"], input[type="tel"], select, textarea, input[type="date"] {

    height: 50px;
}
.carousel-content {
    padding: 0px 0px;
}
section.hero-section .carousel-content {
    padding: 0px 20px;
}
.container.head {
    padding: 10px 30px;
}
.form-button {

    height: 50px;
    font-size: 16px;
}
    section.seven-section.offers-section {
        min-height: 450px !important;
        background: #11223300 !important;
    }
	.mobistyle {
		display:block;        min-height: 390px;
	}
  .project-card {
    width: 100%;  /* 1 карточка */
    padding-right: 0;
  }

.footer {
    & .footer__row {
        p {
            font-size: 16px;
            font-weight: 500;
            line-height: 1.4;
            max-width: 565px;
        }
    }
}
.carousel-content p {
    font-size: 18px;
    font-weight: 600;
    width: 83%;
}
.custom-form .form-row.two-cols {
    display: flex;
    gap: 0px;
    height: auto;
    flex-direction: column;
    gap: 20px;
}
.custom-form .form-row .half {
    width: 100%;
}
.custom-form .form-row p {
    font-size: 28px;
    width: 100%;
    height: 50px;
}
.carousel-cell {
    height: 100vh;
 padding-bottom: 50px;
}
.main-carousel {
    height: 100vh;
}	
section.hero-section {

    height: 100vh;
}
nav.nav {
    display: none;
}
.offer-item {
    height: 100px;
    min-height: 100px;
flex: 1 1 calc(100% - 0px);
}

.third-row {
    flex-direction: column;
}
.buttons {

    flex-direction: column-reverse;
}
.third-row.reverse {
    flex-direction: column-reverse;
}
.offers-section {
    padding: 80px 20px 0px;
}

    .third-section {
        padding: 80px 20px 0px;
    }
.btn {
    padding: 13px 15px;
    font-size: 16px;
}
.btn.white {

    border: 1px solid var(--site-main-color);
}
.third-section-grid {
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.block-title {
    font-size: 18px;
}
.block-content {
    gap: 0px;
}
.block-text {
    font-size: 16px;
}
.fs24 {
    font-size: 16px;
}
	.fs50 {
    font-size: 18px;
}
	.fs32 {
    font-size: 32px;
}

.popup-content	.fs32 {
    font-size: 23px;
line-height: 200%;
}

.fs28 {
    font-size: 18px;
}
	.carousel-content h2 {
    font-size: 18px;
    width: 83%;
margin-bottom: 40px;
}
.services-block .carousel-content h2 {
    width: 95%;
margin-bottom: 0px;
}
	.faq-question {
    font-size: 16px;
		font-weight:500;        margin: 0px;        width: 240px;
}
.faq-counter {
    width: 32px;
    height: 32px;

    font-size: 14px;
}
.faq-answer {
    font-size: 16px;

    padding-left: 52px;

}
.faq-icon svg {
    width: 32px;
}
	.offer-item.extra-item-class {
    padding: 20px 10px;
    height: auto;
}
	.offers-title {
    font-size: 18px;
}
.offers-subtitle {
    font-weight: 600;
    margin-bottom: 0px;
    padding: 0px;width: 80%;
        text-align: center;
}
    .footer__wrapper {
        gap: 20px;
        padding: 50px 0px 0px;
    }
.footer {
    padding: 0px 20px;
}
.footer {
    .footer__info {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }
}
.footer {
    & .footer__map {
        iframe {
            width: 100%;
            height: 270px;
            border: none;
        }
    }
}
.footer__info-block img {
    width: 32px;
}
.footer {
        & .footer__row {
            p {
                font-size: 16px;
                font-weight: 500;
                line-height: 1.4;
                max-width: 235px;
            }
        }
    }
p.slider-subdescription {
    font-weight: 600;
    font-size: 18px;
    color: #FFFFFF;
    margin-bottom: 40px;
    padding: 0px;
}
section.projects-slider-section {
    padding: 80px 20px 0px;
}
button.custom-prev svg, button.custom-next svg {
    width: 32px;
}
button.custom-prev, button.custom-next {

    top: 17%;
}
button.custom-next {
    right: 0px;
}
.project-info {
    margin-top: 30px;    gap: 0px;
}
.flickity-outer {
    min-height: 660px;
}

.footer {
    & .footer__company-data {
        p {
            font-size: 16px;
            font-weight: 500;
            line-height: 2;
            max-width: 100%;
        }
    }
}
.footer {
    & .footer__nav {
        .footer__links {
            text-align: center;
            font-size: 18px;
            font-weight: 700;
        }
    }
}
.footer {
    & .footer__nav {
        & .footer__bottom {
            p {
                font-size: 16px;
                font-weight: 500;
                text-align: center;
            }
        }
    }
}

.footer {
    .footer__nav {
        width: 100%;
        padding: 80px 333px 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }
}
.footer {
    & .footer__nav {
        @media (max-width: 1024px) {
            padding: 40px 0px;
        }
    }
}


.other_page p.hero-description {
    width: 100%;
}
section.hero-section.other_page {
    background-image: none !important;
    height: auto;
           margin-top: 140px;
}
  .other_page  .carousel-content p {
        font-size: 16px;
        width: 100%;
    }
.other_page img.mobistyle {
    min-height: 100%;
    margin-bottom: 30px;
	font-weight:500;
}
div#kontakt {
    padding: 40px 0px 0px;
}
.header-logo {
    order: 2;
}

.services-block:nth-of-type(2n+1) {
    background: url(/wp-content/uploads/2025/06/background_main-min-2.jpg) !important;
filter: drop-shadow(0px 0px 60px  var(--site-main-color));
}
.services-block:nth-of-type(2n) .services-inner {
    flex-direction: column;
}
    .other_page .carousel-content {
        padding: 0px 20px;
    }
.services-right {
    gap: 40px;
}
.services-block {
 
    padding:60px 20px;
}
.services-block:nth-of-type(2n+1) .services-inner {
    flex-direction: column;
}
.services-item {
    gap: 5px;
}



.container.other_page.politika.carousel-content {
    width: 100%;
    padding: 0px 20px;
    margin: 0px;
}

	.container.other_page.politika.carousel-content .carousel-content p {
		font-size: 16px;
	}

    .offers-grid {
        gap: 20px;
    }

.footer {
    .footer__wrapper {
        padding: 80px 0px 0px;
    }
}
.footer {
    .footer__content {
        gap: 20px;
    }
}


.footer__nav ul.header-nav {
    display: flex;
    flex-direction: column;
    gap: 40px;
}




.footer {
    .footer__info-block {
order:1;
    }
}
.cky-notice .cky-title {
    color: #212121;
    font-weight: 700;
    font-size: 22px;
    text-transform: uppercase;
    line-height: 15px;
    margin: 0 0 23px 0;
}
}
.footer__menu nav.nav {
    width: 100% !important;
display: block;
}

@media (max-width: 600px) {
.form-row-main {
    gap: 15px;
}

.form_subtitle.fs32 {
    line-height: 30px;
   font-size: 17px;
}
    .form_check input {
        top: 6px;
    }
.form_check input {
/*     margin-right: 8px; */
}
    .form_check span {
/*         font-size: 11.4px !important; */
    }
.form_title.fs50 {
    font-size: 45px;
}
p.fs32.opiskli {
    font-size: 11px;
    text-align: center;
}
.custom-form.popup_form_ni .form-row {
    gap: 0px;
}
    .form-button {
        height: 30px;
        font-size: 16px;
    }
    .carousel-content p {
        font-size: 16px;
    }
.services-item-desc.fs24 p {
    font-weight: 500;
}
h3.services-item-title.fs28 {
        margin-bottom: 0px;
    }
    .services-item {
        gap: 20px;
    }
.footer {
    .footer__menu {
      order:2;
    }
}
.footer {
    .footer__logo {
order:1;
    }
}
    .footer {
        & .footer__nav {
            .footer__links {
order:3;
            }
        }
    }
    .footer {
        & .footer__nav {
gap:40px;
            & .footer__bottom {
order:4;
            }
        }
    }
    .footer {
        & .footer__nav {
            @media (max-width: 1024px) {
                padding: 80px 0px 0px;
            }
        }
    }

    .offers-subtitle {
        margin-bottom: 40px;
    }
div#kontakt h3.fs28.offers-title.carousel-content {
    max-width: 84%;
}

.flickity-outer {
          min-height: 650px;}
  .services-inner {
    flex-direction: column;
    align-items: center;
        gap: 40px;
  }
    .offers-grid {
        gap: 20px;
    }
}
@media (max-width: 375px) {
	.carousel-content h2 {
 font-size: 17px;
        width: 95%;
        margin-bottom: 20px;
	}
}




/*провода*/
div#svg-container {
    position: relative;
    max-width: 1600px;
    margin: 0 auto;
}
svg#svg-path, svg#svg-path2{
	    z-index: -1;
    top: -10vh !important;
	width:1600px;
}
 #svg-line2 {
    z-index: -1;
   top: -5vh !important;
}
#svg-line, #svg-line2 {
    position: absolute;
  
    pointer-events: none; /* чтобы SVG не блокировал клики */
  width: 100%;
  height: auto;
  }
#svg-path {
  position: absolute;
  top: 0;
  left: 0;
  height: auto;
  pointer-events: none;
}
 #svg-path2 {
    position: absolute;
    top: 0;
    right: 0;
    height: auto;
    pointer-events: none;
}



/*меню*//* Кнопка-бургер */
/* Хедер поверх меню */
/* Фиксированный хедер */


/* Бургер и иконки */
.burger-button {
  position: relative;
  z-index: 11;
}

/* Мобильное меню — под хедером */


#mobile-menu.active {
  display: flex;
}

.mobile-menu-inner {
  color: white;
  text-align: center;
}

.mobile-menu-list ul {
  display: flex;

}

.mobile-menu-list a {
  font-size: 18px;
  color: white;
  text-decoration: none;
font-weight:800;
}
.mobile-menu-list ul {
    list-style: none;
}
/* Блокируем скролл, если надо */
body.no-scroll {
  overflow: hidden;
}
.burger-icon {
  display: none;
}

.burger-button .burger-visible {
  display: block;
}

.burger-button.open .burger-visible {
  display: none;
}

.burger-button.open .close-icon {
  display: block;
}
#mobile-menu.mobile-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: black;
  z-index: 1; /* Ниже хедера */
  display: none;
  justify-content: center;
  align-items: center;
}
#mobile-menu.mobile-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #2C2E2D;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 90px;
    opacity: 0;
    padding-top: 160px;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
    flex-direction: column;
    justify-content: flex-start;
}
.mobile-menu-list ul {
    display: flex;
    flex-direction: column;
    gap: 50px;
}
div#mobile-menu img {
    width: 32px;
}

div#mobile-menu .footer__socials {
    gap: 40px;
    display: flex;
}
#mobile-menu.active {
  opacity: 1;
  visibility: visible;
    z-index: 9;
}




p.project-text.fs24.white {
    height: auto;
}

.flickity-viewport {
    height: 100% !important;
}



.flickity-slider .project-card.fullwidth-project {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 20px 0;
  box-sizing: border-box;
}

.project-images-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: nowrap;
  flex-direction: row;
}

.project-image {
  flex: 1 1 50%;
/*   height: 450px; */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.empty-image {
  background-color: #1b1b1b;
}

.project-info {
  margin-top: 30px;
  height: auto;
}