/* Центрирование иконок */
.header-3-svg, .header-5-svg {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Grid-верстка для блока сертификатов */
.cert-logos.grid-layout {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 20px;
	justify-items: center;
	align-items: center;
}

.cert-item {
	display: flex;
	justify-content: center;
	align-items: center;
}

.img-svg-cert {
	width: 100%;
	max-width: 150px;
	height: auto;
}

/* Адаптивные стили */
@media (max-width: 1240px) {
	.layout {
		width: 95%;
		padding: 0 2.5%;
	}
}


@media (max-width: 992px) {
	h2 {
		font-size: 28px;
		width: 100%;
	}
	
	.block.header-1 {
		grid-template-columns: 1fr auto auto;
		gap: 15px;
	}
	
	.burger-menu {
		display: flex;
		grid-column: 3;
		justify-self: end;
	}
	
	.header-1.online-call,
	.header-1.back-call {
		display: none;
	}
	
	.menu-top {
		position: fixed;
		top: 0;
		left: -100%;
		width: 280px;
		height: 100vh;
		background: rgba(13, 30, 49, 0.98);
		transition: left 0.3s ease;
		z-index: 999;
		padding-top: 80px;
	}
	
	.menu-top.active {
		left: 0;
	}
	
	.menu-top ul {
		width: 100%;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
	}
	
	.main-header .menu-top ul li {
		display: block;
		border: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		padding: 15px 20px;
		margin: 0;
	}
	
	.header-2.teaser {
		grid-template-columns: 1fr 1fr;
		gap: 20px;
	}
	
	.header-3.teaser {
		grid-template-columns: 1fr 1fr;
		gap: 2em;
	}
	
	.block.block-2 {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	
	.svg-block-21 {
		text-align: center;
	}
	
	.block-3-grid {
		grid-template-columns: 1fr;
	}
	
	.block-4.grid {
		grid-template-columns: 1fr;
		gap: 30px;
		text-align: center;
	}
	
	/* Ограничиваем максимальное количество столбцов до 4 для блока сертификатов */
	.cert-logos.grid-layout {
		grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
		max-width: 600px;
		margin: 0 auto;
	}
	
	.svg-block-42 {
		margin: 0 auto;
	}
	
	.block-511, .block-611 {
		grid-template-columns: 1fr;
	}
	
	.block-8 {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	
	.block-9 {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
	
	.slides-banner {
		grid-template-columns: 1fr;
		padding: 30px;
	}
	
	.block-18 {
		grid-template-columns: 1fr;
	}
	
	.block-19 {
		grid-template-columns: 1fr;
		gap: 20px;
		text-align: center;
	}
	
	.block-191 {
		grid-template-columns: 1fr;
		gap: 15px;
	}
}

@media (max-width: 768px) {
	body {
		font-size: 14px;
	}
	
	h1 {
		font-size: 24px;
	}
	
	h2 {
		font-size: 22px;
	}
	
	h3 {
		font-size: 18px;
	}
	
	.block.header-1 {
		grid-template-columns: 1fr auto;
	}
	
	.header-1-tel {
		display: none;
	}
	
	.header-2.teaser {
		grid-template-columns: 1fr;
	}
	
	.header-3.teaser {
		grid-template-columns: 1fr;
		padding: 2em 0;
	}
	
	.header-3.text.icon {
		grid-template-columns: 60px 1fr;
	}
	
	.header-3-svg, .header-5-svg {
		width: 50px;
		height: 50px;
	}
	
	.img-svg-1 {
		width: 24px;
	}
	
	button {
		font-size: 14px;
		padding: 8px 16px;
	}
	
	.block-2, .block-8 {
		padding: 20px;
	}
	
	.block-31 {
		padding: 15px;
	}
	
	.block-311 {
		grid-template-columns: 80px 1fr;
	}
	
	.block-4.grid {
		font-size: 24px;
	}
	
	.block-412 {
		font-size: 32px;
	}
	
	.svg-block-42 {
		width: 100%;
		height: auto;
	}
	
	.svg-block-21 svg {
		width: 100%;
		height: auto;
	}
	
	.block-14-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.block-141 {
		grid-template-columns: 60px 1fr;
	}
	
	.slider-img img {
		width: 100%;
		height: auto;
	}
	
	.slider-txt-logo {
		grid-template-columns: 40px 1fr;
		font-size: 18px;
	}
	
	.slider-txt-txt {
		font-size: 16px;
	}
	
	.block-181 {
		padding: 30px 20px;
	}
	
	.block-9 {
		grid-template-columns: 1fr;
	}
	
	.acor-container label {
		font-size: 16px;
		padding: 12px 15px;
	}
}

@media (max-width: 480px) {
	h1 {
		font-size: 20px;
	}
	
	h2 {
		font-size: 18px;
	}
	
	h3 {
		font-size: 16px;
	}
	
	/* Для очень маленьких экранов делаем 2 столбца в блоке сертификатов */
	.cert-logos.grid-layout {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}
	
	.block.header-1 .logo {
		font-size: 18px;
	}
	
	.header-3.text.icon {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		text-align: center;
		gap: 15px;
	}
	
	.header-3-svg, .header-5-svg {
		margin: 0 auto;
	}
	
	.block-5111, .block-6111 {
		grid-template-columns: 1fr;
		text-align: center;
		gap: 15px;
	}
	
	.block-311 {
		grid-template-columns: 1fr;
		text-align: center;
		gap: 15px;
	}
	
	.block-141 {
		grid-template-columns: 1fr;
		text-align: center;
		gap: 15px;
	}
	
	button.b-h-2 {
		font-size: 14px;
		padding: 12px;
	}
	
	.block-4.grid {
		font-size: 20px;
	}
	
	.block-412 {
		font-size: 28px;
	}
}
