
.custom-svg-btn-style-1 {
		position: relative;
		padding: 19px 40px 19px 30px;
		font-weight: 700;
		font-size: 13.6px;
		font-size: 0.85rem;
		z-index: 1;
}

.underline-be {
	text-decoration: none !important;
	border-bottom: 1px solid;
	border-bottom-color: #990000;
}

.underline-be-dark {
	text-decoration: none !important;
	border-bottom: 1px solid;
	border-bottom-color: #222222;
}

.underline-be-grey {
	text-decoration: none !important;
	border-bottom: 1px solid;
	border-bottom-color: #cccccc;
}

.box-shadow-be   {
	box-shadow: 0 5px 25px rgba(0,0,0,0.15), 0 15px 40px rgba(0,0,0,0.1);
}

.box-shadow-be-1   {
	box-shadow: 0 5px 15px rgba(0,0,0,0.15), 0 10px 25px rgba(0,0,0,0.1);
}

.drop-shadow-be {
filter: drop-shadow(3px 5px 5px rgba(0,0,0, 0.5));}

.drop-shadow-be-1 {
filter: drop-shadow(3px 5px 5px rgba(0,0,0, 0.1));}

.drop-shadow-be-3 {
filter: drop-shadow(3px 5px 5px rgba(0,0,0, 0.3));}

.drop-shadow-bew {
filter: drop-shadow(3px 5px 5px rgba(255, 255, 255, 0.5));}

.underline-be {
	text-decoration: none !important;
	border-bottom: 1px solid;
	border-bottom-color: #BD0000;
}

/* Thumb Info Floating Caption */
.thumb-info-floating-caption-title {
	background: var(--primary-rgba-70);
	color: var(--light);
	font-weight: 600;
	letter-spacing: normal;
	font-size: 1.3em;
	padding: 10px 21px;
}

/* Сдвиг фона на узких экранах */
@media (max-width: 768px) {
    .responsive-bg-section {
        background-position: 10% center !important; /* Сдвиг на 10% влево */
    }
}

/* Для очень маленьких экранов - больший сдвиг */
@media (max-width: 576px) {
    .responsive-bg-section {
        background-position: 20% center !important; /* Сдвиг на 20% влево */
    }
}


.custom-avatar-1 {
		display: inline-flex;
		overflow: hidden;
		border-radius: 24px;
		transform: translate3d(0, 25%, 0) !important;
}

.custom-avatar-1 img {
		max-width: 85px;
		width: 85px;
		height: 70px;
}


p.text-shadow-05, p span.text-shadow-05,
h1.text-shadow-05,
h2.text-shadow-05,
h3.text-shadow-05,
h4.text-shadow-05,
h5.text-shadow-05,
h6.text-shadow-05 {
	text-shadow: 2px 1px 0 rgba(0, 0, 0, 0.5);
}

p.text-shadow-04, p span.text-shadow-04,
h1.text-shadow-04,
h2.text-shadow-04,
h3.text-shadow-04,
h4.text-shadow-04,
h5.text-shadow-04,
h6.text-shadow-04 {
	text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.4);
}

p.text-shadow-03, p span.text-shadow-03,
h1.text-shadow-03,
h2.text-shadow-03,
h3.text-shadow-03,
h4.text-shadow-03,
h5.text-shadow-03,
h6.text-shadow-03 {
	text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3);
}

p.text-shadow-02, p span.text-shadow-02,
h1.text-shadow-02,
h2.text-shadow-02,
h3.text-shadow-02,
h4.text-shadow-02,
h5.text-shadow-02,
h6.text-shadow-02 {
	text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.2);
}

p.text-shadow-01, p span.text-shadow-01,
h1.text-shadow-01,
h2.text-shadow-01,
h3.text-shadow-01,
h4.text-shadow-01,
h5.text-shadow-01,
h6.text-shadow-01 {
	text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
}

p.text-shadow-05w, p span.text-shadow-05w,
h1.text-shadow-05w,
h2.text-shadow-05w,
h3.text-shadow-05w, 
h4.text-shadow-05w,
h5.text-shadow-05w,
h6.text-shadow-05w {
	text-shadow: 2px 1px 0 rgba(255, 255, 255, 0.5);
}

p.text-shadow-04w, p span.text-shadow-04w,
h1.text-shadow-04w,
h2.text-shadow-04w,
h3.text-shadow-04w,
h4.text-shadow-04w,
h5.text-shadow-04w,
h6.text-shadow-04w {
	text-shadow: 2px 2px 0 rgba(255, 255, 255, 0.4);
}

p.text-shadow-03w, p span.text-shadow-03w,
h1.text-shadow-03w,
h2.text-shadow-03w,
h3.text-shadow-03w, h3 span.text-shadow-03w,
h4.text-shadow-03w,
h5.text-shadow-03w,
h6.text-shadow-03w {
	text-shadow: 2px 2px 0 rgba(255, 255, 255, 0.3);
}

p.text-shadow-02w, p span.text-shadow-02w,
h1.text-shadow-02w,
h2.text-shadow-02w,
h3.text-shadow-02w, h3 span.text-shadow-02w,
h4.text-shadow-02w,
h5.text-shadow-02w,
h6.text-shadow-02w {
	text-shadow: 2px 2px 0 rgba(255, 255, 255, 0.2);
}

p.text-shadow-01w, p span.text-shadow-01w,
h1.text-shadow-01w,
h2.text-shadow-01w,
h3.text-shadow-01w,
h4.text-shadow-01w,
h5.text-shadow-01w,
h6.text-shadow-01w {
	text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
}

/* Home Section - What We Do
*/
.custom-thumb-info-style-1 .custom-thumb-info-icon {
		display: flex;
		justify-content: center;
		padding: 25px 0;
		padding: 1.5rem 0;
		background: #4d4e50;
		transition: ease background 300ms;
}

.custom-thumb-info-style-1 .custom-thumb-info-icon > img {
		width: auto;
		transform: scale(1);
}

.custom-thumb-info-style-1 .thumb-info-wrapper {
		position: relative;
}

.custom-thumb-info-style-1 .thumb-info-wrapper:after {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: #4d4e50;
		opacity: 0.5;
		transition: ease opacity 300ms;
		z-index: 1;
}

.custom-thumb-info-style-1 .thumb-info-wrapper > img {
		filter: grayscale(1);
		transform: scale(1) !important;
}

.custom-thumb-info-style-1:hover .custom-thumb-info-icon > img, .custom-thumb-info-style-1.active .custom-thumb-info-icon > img {
		animation: toRightFromLeftNoScale 0.3s forwards;
}

.custom-thumb-info-style-1:hover .thumb-info-wrapper:after, .custom-thumb-info-style-1.active .thumb-info-wrapper:after {
		opacity: 0;
}

.custom-thumb-info-style-1:hover .thumb-info-wrapper > img, .custom-thumb-info-style-1.active .thumb-info-wrapper > img {
		filter: grayscale(0);
}

@keyframes toRightFromLeftNoScale {
		49% {
				transform: translate(100%) scale(1);
		}
		50% {
				opacity: 0;
				transform: translate(-100%) scale(1);
		}
		51% {
				opacity: 1;
		}
}

/* Основной контейнер (ряд с колонками) */
.row-flex {
  display: flex;
  flex-wrap: wrap; /* сохраняет адаптивность */
}

/* Обе колонки — гибкие контейнеры */
.row-flex > .col-lg-6 {
  display: flex;
  flex-direction: column;
}

/* Карточка внутри правой колонки — занимает всю высоту и центрирует содержимое */
.row-flex > .col-lg-6 .card {
  display: flex;
  flex-direction: column;
  justify-content: center;    /* центрирование по вертикали */
  align-items: center;      /* центрирование по горизонтали */
  height: 100%;
  text-align: center;         /* выравнивание текста по центру */
}

/* Дополнительно: если нужно, чтобы внутренние блоки (h3, p) тоже были центрированы */
.row-flex > .col-lg-6 .card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 100%;
  padding: 1rem; /* можно настроить отступы */
}


.list-ordened {
  column-count: 2;            /* 2 колонки */
  column-gap: 30px;         /* отступ между колонками */
  /* max-height: 300px;       ограничиваем высоту (опционально) */
  break-inside: avoid;     /* избегаем разрыва внутри <li> */
}

.list-ordened li {
  break-inside: avoid;       /* элемент списка не разрывается между колонками */
  margin-bottom: 10px;    /* отступ между пунктами */
}


.list.list-icons.list-icons-style-2 li > [class*="fa-"]:first-child,
.list.list-icons.list-icons-style-2 li > .icons:first-child, .list.list-icons.list-icons-style-2 li a:first-child > [class*="fa-"]:first-child,
.list.list-icons.list-icons-style-2 li a:first-child > .icons:first-child {
	border-width: 1px;
	border-style: solid;
	border-radius: 50%;
	width: 25px;
	height: 25px;
	text-align: center;
	padding: 4px;
	font-size: 0.7em;
	line-height: 1.3;
}

	.list {

		&.list-icons {

			&.list-icons-style-2 {
				li {
					&, a:first-child {
						> .fa:first-child,
						> .icons:first-child {
							color: var(--primary);
						}
					}
				}
			}

		}
	}

	/* Сохраняем стили из list-ordened-style-3 */
.list-ordened-style-3 li::before {
  /* ваши стили номеров (фон, цвет, радиус и т. д.) */
  display: inline-block;
  margin-right: 8px;
}


.list-ordened {
  column-count: 2;            /* 2 колонки */
  column-gap: 30px;         /* отступ между колонками */
  /* max-height: 300px;       ограничиваем высоту (опционально) */
  break-inside: avoid;     /* избегаем разрыва внутри <li> */
}

.list-ordened li {
  break-inside: avoid;       /* элемент списка не разрывается между колонками */
  margin-bottom: 10px;    /* отступ между пунктами */
}


.list.list-icons.list-icons-style-3 li > [class*="fa-"]:first-child,
.list.list-icons.list-icons-style-3 li > .icons:first-child, .list.list-icons.list-icons-style-3 li a:first-child > [class*="fa-"]:first-child,
.list.list-icons.list-icons-style-3 li a:first-child > .icons:first-child {
	border-width: 1px;
	border-style: solid;
	border-radius: 50%;
	border-color: #ffffff;
	color: #ffffff;
	width: 25px;
	height: 25px;
	text-align: center;
	padding: 4px;
	font-size: 0.7em;
	line-height: 1.3;
}

	.list {

		&.list-icons {

			&.list-icons-style-3 {
				li {
					&, a:first-child {
						> .fa:first-child,
						> .icons:first-child {
							color: var(--light);
						}
					}
				}
			}

		}
	}

	/* Сохраняем стили из list-ordened-style-2 */
.list-ordened-style-2 li::before {
  /* ваши стили номеров (фон, цвет, радиус и т. д.) */
  display: inline-block;
  margin-right: 8px;
}



.number-circle {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  border-radius: 50%;
	border: 1px solid #BD0000;
  background-color: #ffffff; /* Цвет фона круга */
  color: #BD0000;            /* Цвет текста */
  font-size: 0.75em;
  font-weight: bold;
  text-align: center;
  line-height: 2em;        /* Центрирует текст по вертикали */
  margin: 0 0.2em;       /* Отступы между кругами */
}

.number-circle-light {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  border-radius: 50%;
	border: 1px solid #ffffff;
  background-color: transparent; /* Цвет фона круга */
  color: #ffffff;            /* Цвет текста */
  font-size: 0.75em;
  font-weight: bold;
  text-align: center;
  line-height: 2em;        /* Центрирует текст по вертикали */
  margin: 0 0.2em;       /* Отступы между кругами */
}


/* Image Hotspots */
.image-hotspots {
	position: relative;
}

.image-hotspot {
	cursor: pointer;
	position: absolute;
}

.image-hotspot strong {
	color: var(--primary);
	z-index: 5;
	font-size: 1em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%, -50%, 0);
	font-weight: 600 !important;
}

.image-hotspot .circle {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 28px;
	height: 28px;
	margin: -0.666em auto auto -0.666em;
	background: var(--grey-500);
	border-radius: 50%;
	opacity: 1;
	transform-origin: 50% 50%;
	transition: opacity .2s ease-in, transform .1s ease-out;
	color: #BD0000;
	font-size: 1.5em;
	padding: 0;
	text-align: center;
	line-height: 28px;
	overflow: hidden;
}

.image-hotspot .ring {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2.1em;
	height: 2.1em;
	margin: -1em auto auto -1em;
	transform-origin: 50% 50%;
	border-radius: 50%;
	border: 2px solid var(--light);
	opacity: 0;
	animation: hotspot-pulsate 3s ease-out infinite;
}

.btn-gradient-confetti {
  background: linear-gradient(
    135deg,
    #ffffff 0%,   /* белый */
    #ff5252 15%, /* красный */
    #4caf50 30%, /* зелёный */
    #2196f3 50%, /* синий */
    #ffc107 70%, /* янтарный */
    #9c27b0 90%, /* фиолетовый */
    #ffffff 100% /* белый */
  ) !important;
  color: #000000; /* чёрный текст для контраста с белым */
  border: none;
  padding: 12px 24px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.btn-gradient:hover {
  background: linear-gradient(135deg, /* те же цвета, но сдвинутые на 10 % */);
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
}

@media (max-width: 768px) {
  .btn-gradient {
    padding: 10px 18px;
    font-size: 14px;
  }
}



/* Контейнер для позиционирования */
.pulse-container {
  position: relative;
  display: inline-block;
  width: 120px;
  height: 120px;
}

/* Неподвижная кнопка */
.btn-confetti-static {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: linear-gradient(
    135deg,
    #ffffff 0%,
    #ff5252 20%,
    #4caf50 40%,
    #2196f3 60%,
    #ffc107 80%,
    #9c27b0 100%
  );
  border: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0;
  cursor: pointer;
  position: relative;
  z-index: 2; /* Выше пульсирующего кольца */
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
}

/* Пульсирующее кольцо */
.pulse-ring {
  position: absolute;
  top: 0;
  left: 0;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: linear-gradient(
    135deg,
    #ffffff 0%,
    #ff5252 20%,
    #4caf50 40%,
    #2196f3 60%,
    #ffc107 80%,
    #9c27b0 100%
  );
  opacity: 0.3; /* Полупрозрачность */
  z-index: 1; /* Ниже кнопки */
  animation: pulseAnim 1.5s infinite ease-out;
}

/* Стили для строк текста */
.btn-confetti-static .line-1,
.btn-confetti-static .line-2 {
  white-space: nowrap;
}

/* Pulse */
@keyframes pulseAnim {
	from {
		transform: scale(1);
		opacity: 1;
	}

	to {
		transform: scale(1.5);
		opacity: 0;
	}
}


/* Эффект при наведении (только изменение цвета текста) */
.btn-confetti-static:hover {
  color: #ffffff; /* Белый текст при наведении */
}

/* Адаптация для мобильных */
@media (max-width: 768px) {
  .pulse-container,
  .btn-confetti-static,
  .pulse-ring {
    width: 100px;
    height: 100px;
  }
  .btn-confetti-static {
    font-size: 12px;
  }
}

html.side-panel .side-panel-wrapper {
	padding: 16px;
	padding: 1rem;
}

hr.gradient-to-left-be-wh {
    background: none;
    background-image: linear-gradient(to left, transparent, rgba(255, 255, 255, 0.5));
}

hr.gradient-to-right-be-wh {
    background: none;
    background-image: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.5));
}

section.bg-gradient-be {
	background: linear-gradient( 135deg, #ffffff 0%, #ff5252 20%, #4caf50 40%, #2196f3 60%, #ffc107 80%, #9c27b0 100%);
}

.custom-section-shape-background .custom-shape-divider-be {
		position: relative;
}

.custom-section-shape-background .custom-shape-divider-be:before {
		content: '';
		position: absolute;
		top: 150px;
		left: 0;
		width: 100%;
		height: 150%;
		background: var(--grey-100);
		transform: skewY(-4deg);
		z-index: 0;
}

.custom-hero-sub-images-style-1:before, .custom-hero-sub-images-style-1:after {
		background: transparent;
}

.custom-hero-sub-images-style-1 .custom-hero-sub-images-shadow {
		box-shadow: 0px 0px 68px 168px var(--primary-200);
		max-height: 50%;
}

.ps-sm-custom {
  padding-left: 2.25rem;
}

@media (max-width: 575.98px) {
  .ps-sm-custom {
    padding-left: 0.75rem;
  }
}

.sgt-background {
  position: relative;
  padding: 0; /* Отступы для видимости фонового текста */

}

.sgt-background::before {
  content: "SGT";
  position: absolute;
  left: 50%;
  top: 50%;
	transform: translate(-50%, -50%); /* Центрирование */
  color: #BD0000; /* Светло‑серый */
  font-weight: 900; /* Extrabold */
  font-size: 6rem;
  opacity: 0.4; /* Полупрозрачность */
  z-index: -1; /* Позади текста */
  pointer-events: none; /* Не мешает взаимодействию */
}

.container-be {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.container-be h1 {
  margin: 0; /* Убираем стандартные отступы у h1 */
  z-index: 1; /* h1 — фон, ниже p */
	white-space: nowrap;
}

.container-be h2 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* Центрирование p относительно h1 */
  margin: 0; /* Убираем отступы */
  z-index: 2; /* p выше h1 в стеке слоёв */
  text-align: center; /* Выравнивание текста по центру */
	white-space: nowrap;
	}

.background-fade-in {
  background-image: url(img/jetex-patent.png); /* Фон задан сразу */
  background-size: 60%;
  background-position: right top;
  background-repeat: no-repeat;
  opacity: 0;
  animation: fadeIn 1s ease-in 600ms forwards; /* 600 мс задержка */
}

@keyframes fadeIn {
  to {
    opacity: 1;
  }
}

/* Gradient Font - Skin */
.gradient-text-color {
	color: var(--primary);
	background: linear-gradient(to bottom left, var(--primary), var(--secondary));
	background-image: linear-gradient(to right, var(--primary), var(--secondary));
}

.position-relative-be {
    position: relative!important;
		background-size: cover;
    background-size: contain;/*  */
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: auto;
    min-height: 200px;
    background-attachment: fixed;
}

@media (max-width: 768px) {
    .position-relative-be {
        background-size: 100% auto;
    }
}






