        /* Выравнивание текста по ширине */
		.text-justify {
			text-align: justify;
			text-justify: inter-word; /* Для лучшего выравнивания в современных браузерах */
			hyphens: auto; /* Перенос слов при необходимости */
			word-break: break-word; /* Разрыв длинных слов */
		}
		
		/* Блок 1: Видео-фон */
        #hero {
        position: relative;
        height: 100vh;
        overflow: hidden;
        
		}

		/* Карусель на весь экран */
		#newsCarousel {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 0;
		}

		.carousel-item {
			height: 100vh;
			min-height: 100%;
			background-size: cover;
			background-position: center;
		}

		/* Затемнение для лучшей читаемости текста */
		.carousel-item::after {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			/*background: rgba(0, 51, 102, 0.4);*/
		}
		
		.carousel-inner {
        height: 100%;
		}

		/* Текст поверх карусели */
		.hero-text {
			position: relative;
			z-index: 2;
		}
		
        
    

  /* Анимация движения волны (влево-вправо) */
  @keyframes move {
    from {
      transform: translate(-90px, 0%); /* Начальное положение (смещение влево) */
    }
    to {
      transform: translate(90px, 0%); /* Конечное положение (смещение вправо) */
    }
  }

/*Стили для нижней волны*/
.wave-top {
	position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    line-height: 0;
    transform: rotate(180deg); /* Переворот на 180 градусов */
    z-index: 1;
}
.wave-top svg {
    width: calc(100% + 1.3px);
    height: 80px;
    display: block;
}
.wave-top path {
    animation: wave 20s linear infinite;
}

/* Стили для волны */
.wave-container {
    position: absolute; /* Изменить с relative на absolute */
    bottom: -1px;       /* Смещение на 1px ниже границы */
    left: 0;
    width: 100%;
	height: 80px;
    z-index: 2;         /* Выше карусели (z-index: 0) */
    margin-top: 0;      /* Убрать предыдущий margin */
	
}

.waves {
    width: 100%;
    height: 80px; /* Высота волны */
    display: block;
}

/* Анимация волны */
@keyframes move {
    from { transform: translate(-90px, 0%); }
    to { transform: translate(90px, 0%); }
}

.waves > g > use {
    animation: move 50s linear infinite;
}

/*.waves > g > use:nth-child(1) {
    animation-delay: -2s;
    fill: #9e9e9e;
}*/

/*.waves > g > use:nth-child(1) {
    animation-delay: -2s;
    animation-duration: 17s;
    fill: #757575;
	fill-opacity: 0.5;
}*/

.waves > g > use:nth-child(1) {
    animation-delay: -4s;
    animation-duration: 8s; /* Скорость анимации волны */
    fill: #f8f9fa;
}

/* Дополнительные стили для блока hero */
#hero {
    position: relative;
    overflow: hidden;
}

.hero-text {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-80%);
    z-index: 1;
	text-shadow: 2px 2px 15px black;
}
         
        
        /* Блок услуг */
        .service-box {
            min-height: 250px;
			height: auto;
            position: relative;
            margin-bottom: 30px;
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 
			0 10px 20px rgba(0,0,0,0.15); /* Основная тень */
			transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
			position: relative;
			top: 0;
			background-color: var(--light-blue);
			
        }
        
        .service-box:hover {
            transform: scale(1.03);
			box-shadow: 
				0 15px 30px rgba(0,0,0,0.25);
			top: -5px;
        }
		
		.service-box:active {
			transform: translateY(5px) scale(0.98);
			box-shadow: 
				0 5px 10px rgba(0,0,0,0.2);
			transition: all 0.1s;
		}
        
        .service-image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
            z-index: 1;
			margin-left: auto;
			margin-right: auto;
        }
        
        .service-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 2;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 20px;
            color: black !important;
			word-wrap: break-word; /* Перенос длинных слов */
        }
        
        .service-title {
            font-size: 1.3rem;
            font-weight: bold;
            margin-bottom: 10px;
			color: black !important;
			text-shadow: 0 1px 3px rgba(255,255,255,0.5); /* Тень для контраста */
			white-space: normal; /* Разрешаем перенос строк */
			overflow-wrap: break-word; /* Альтернатива word-wrap */
			max-width: 100% !important;
			text-align: center;
		}
		
        
        /* Блок "О компании" */
        .about-company {
			position: relative;
			padding-top: 80px; /* Место для волны */
			margin-top: -2px; /* Подтягиваем секцию вверх */
            /* padding: 80px 0; */
            background-color: var(--light-blue);
        }
        
        .section-title {
			text-align: center;
            font-size: 2.5rem;
            font-weight: bold;
            margin-bottom: 30px;
            color: var(--dark-blue);
            position: relative;
        }
		
		.section-title-second{
			font-size: 1.5rem;
            font-weight: bold;
            margin-bottom: 30px;
            color: var(--dark-blue);
            position: relative;
		}
        
        .about-company p {
            margin-bottom: 20px;
            font-size: 1.1rem;
            line-height: 1.6;
            color: var(--dark-blue);
        }
        
        .about-image {
            border-radius: 8px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
            overflow: hidden;
        }
        
        .about-image img {
            width: 100%;
            height: auto;
            transition: transform 0.3s;
        }
        
        .about-image:hover img {
            transform: scale(1.03);
        }
        
        /* Карусель новостей */
        .carousel-item {
            height: 500px;
            background-size: cover;
            background-position: center;
        }
        
        .carousel-caption {
            background-color: rgba(0, 51, 102, 0.7);
            padding: 20px;
            border-radius: 10px;
        }
        
		
		/*Учебынй центр*/
		.study-prog{
			border: 2px solid #0054a6; /* Цвет как в логотипе Romona */
			border-radius: 10px; 
			padding: 20px; /* Отступ внутри колонок */
			/* margin: 10px 0;*/ /* Отступ между колонками */ 
			box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Небольшая тень */
			transition: all 0.3s;
			height: auto; /* Занимаем всю доступную высоту */
			
			/* display: flex; */
			/* margin-left: 12px; */
			/* margin-right: 12px; */
		}
		
		.study-prog:hover{
			transform: translateY(5px) scale(1.02);
			box-shadow: 
				0 5px 10px rgba(0,0,0,0.2);
		}
		
		.study-list{
			margin-left: 5px;
			list-style-type: circle;
		}
		
		/*Для формы обратной связи*/
		.form-error {
			color: red;
			text-align: left;
			font-size: 12px;
			display: block;
			margin-top: 3px;
			display: none;
		}
		input:invalid:not(:placeholder-shown) {
			border-color: red;
		}
		input:invalid:not(:placeholder-shown) + .form-error {
			display: block;
		}
		
		
		/*Акардионное меню в услугах*/
		
		.accordion-button{
			font-size: 1.2rem !important;
			font-weight: bold !important;
		}
		
		/*Конец акардионного меню услуг*/
        
		
		/*Плитки с политиками в разделе "О Компании"*/
		.cert-image {
			max-height: 419px;
			width: auto;
			object-fit: contain;
			text-align: center;
			margin-left: auto;
			margin-right: auto;
		}

		.about-title {
			min-height: 4.5rem;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 1.5rem;
			text-align: center;
			font-weight: bold;
			color: var(--dark-blue);
			position: relative;
		}

		.card {
			border: 1px solid #dee2e6;
			border-radius: 0.5rem;
			transition: transform 0.3s;
		}

		.card:hover {
			transform: translateY(-5px);
		}

		.img-container {
			flex-grow: 1;
			display: flex;
			align-items: center;
			text-align: center;
		}
		/*Конец стилей плиток*/
        /* Адаптивность */
        @media (max-width: 990px) {
            #hero {
                height: 90vh;
                /* margin-top: 126px; /* Увеличил для мобильных */ */
            }
            
            
            
            .service-box {
                height: 250px;
            }
            
			/*.service-box:hover {
				transform: translateY(-8px) scale(1.02);
				top: -3px;
			}*/
    
			.service-box:active {
				transform: translateY(3px) scale(0.99);
			}
			
            .service-title {
                font-size: 1.3rem;
				color: black !important;
            }
            
            .carousel-item {
                height: 300px;
            }
			
			
        }