@font-face {
	font-family: 'Raleway';
	src: url('/static/fonts/Raleway-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'RalewayBold';
	src: url('/static/fonts/Raleway-Bold.ttf') format('truetype');
	font-weight: bold;
	font-style: normal;
}
@font-face {
	font-family: 'Montserrat';
	src: url('/static/fonts/Montserrat-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}
.noselect {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}
::placeholder {
	color: #3d50ab;
	opacity: 0.75;
	font-size: 1vw;
}
input {
	all: unset;
	display: block;
}
button {
	all: unset;
	display: block;
}


html {
	scroll-behavior: smooth;
}
body {
	font-family: 'Raleway', sans-serif;
	background: #bdbdbd;
	color: #3d50ab;
	margin: 0px;
}

main {
	margin-top: 7.9vw;
}

a {
	all: unset;
}

div {
	scroll-margin-top: 7.9vw;
}
h1 {
	font-family: 'RalewayBald', sans-serif;
	font-size: 4vw;
	margin-top: 0vw;
}







.site_header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 7.9vw;
	background-color: white;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	z-index: 999;
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 1.7vw;
	border-bottom: 1px solid #3d50ab;
}
.site_header__main {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 60vw;
	margin-top: 0.5vw;
	margin-left: 20vw;
	margin-right: 20vw;

}
.site_header__logo {
	width: 10vw;
	margin-bottom: 0.1vw;
	cursor: pointer;
}
.site_header__record {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.3vw 1.3vw;
	color: white;
	background-color: #3d50ab;
	cursor: pointer;
	border-radius: 0.4vw;
	margin-top: 0.25vw;
	font-size: 1.45vw;
	transition: background-color 0.5s, color 0.5s;
	border: 1px solid #3d50ab;
}
.site_header__record:hover {
	background-color: white;
	color: #3d50ab;
}

.site_header__nav {
	width: 60vw;
	margin-left: 20vw;
	margin-right: 20vw;
	display: flex;
	justify-content: space-between;
}

/*.site_header .header_mobile_expand {
	display: none;
	margin-top: 8px;
	opacity: 0.5;
}
.nav_mobile {
	position: fixed;
	display: flex;
	flex-direction: column;
	right: 20px;
	top: 84px;
	background-color: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	padding: 20px 35px;
	font-size: 30px;
	gap: 15px;
	text-align: center;
}
.nav_mobile div {
	cursor: pointer;
}

@media (max-width: 900px) {
	.site_header {
		justify-content: space-between;
	}
	.site_header .nav {
		display: none;
	}
	.site_header .header_mobile_expand {
		display: block;
	}
}*/
.header_link {
	position: relative;
	text-decoration: none;
	transition: color 0.2s ease;
	height: 2.6vw;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}
.header_link::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 0.08vw;
	width: 0;
	background-color: #3d50ab;;
	transition: width 0.4s ease;
}
.header_link:hover::after {
	width: 100%;
}

.site_header_submenu {
	background-color: white;
	position: fixed;
	top: 8.8vw;
	border: 1px solid #3d50ab;
	border-radius: 2px;
	font-size: 2vw;
	padding: 1vw;
	display: flex;
	flex-direction: column;
	gap: 1vw;
}
.submenu_service {
	left: 19.5vw;
}
.submenu_price {
	left: 33.8vw;
}
.site_header_submenu a {
    position: relative;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.2s ease;
    padding-bottom: 0.2vw; /* трішки місця для смужки */
}

/* смужка */
.site_header_submenu a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 0.1vw;
    width: 0;
    background-color: #3d50ab;
    transition: width 0.4s ease;
}

/* при наведенні — смужка розширюється */
.site_header_submenu a:hover::after {
    width: 100%;
}







.section_separator_white {
	width: 100%;
	height: 1.5vw;
	background-color: white;
}
.section_separator_blue {
	width: 100%;
	height: 1.5vw;
	background-color: #3d50ab;
}

.main_section_1 {
	width: 100%;
	background-image: url('/static/images/clinic_photo_1.png');
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: top center;
}
	.main_section_1 .section_blocks {
		display: flex;
		flex-direction: row;
		width: 100%;
	}
		.main_section_1 .section_blocks .block_section_1 {
			width: 40%;
			display: flex;
			flex-direction: column;
			color: white;
			margin-top: 20vw;
		}
			.main_section_1 .section_blocks .block_section_1 .block_section_header {
				font-size: 4vw;
				font-family: 'RalewayBold', sans-serif;
				display: flex;
				justify-content: center;
			}
			.main_section_1 .section_blocks .block_section_1 .block_section_text {
				margin-left: 14.2vw;
				font-size: 2vw;
				margin-top: 1vw;
			}
			.main_section_1 .section_blocks .block_section_1 .site_header__record {
				display: flex;
				justify-content: center;
				margin: auto;
				margin-top: 2.8vw;
			}

		.main_section_1 .section_blocks .block_section_2 {
			width: 60%;
			margin-top: 27vw;
			background-color: white;
			opacity: 0.9;
			font-size: 2vw;
			border-top-left-radius: 2vw;
			border-bottom-left-radius: 2vw;
			height: 16vw;
		}
			.main_section_1 .section_blocks .block_section_2 .block_section_text {
				margin: 3vw 5vw;
				font-size: 2vw;
			}



			











.main_section_2 {
	width: 100%;
	background-color: #3d50ab;
	padding-bottom: 5vw;
}
	.main_section_2 .section_blocks_vertical {
		display: flex;
		flex-direction: column;
		gap: 3vw;
		margin: 0vw 5vw;
	}
	.main_section_2 .section_header {
		margin-top: 3vw;
		font-size: 4vw;
		font-family: 'RalewayBold', sans-serif;
		color: white;
	}
		.main_section_2 .section_blocks_vertical .section_blocks_horizontal {
			display: flex;
			flex-direction: row;
			width: 90vw;
			justify-content: space-between;
		}

			.main_section_2 .section_blocks_vertical .section_blocks_horizontal .section_block_image {
				width: 43vw;
				height: auto;
				background-color: white;
				border-radius: 2.5vw;
			}
			.main_section_2 .section_blocks_vertical .section_blocks_horizontal .section_block_text {
				width: 43vw;
				height: auto;
				background-color: white;
				border-radius: 2.5vw;
				display: flex;
				flex-direction: column;
			}
			.main_section_2 .section_blocks_vertical .section_blocks_horizontal .section_block_text .block_text_1 {
				margin: 2vw 2vw 0vw 2vw;
				font-size: 1.7vw;
			}
			.main_section_2 .section_blocks_vertical .section_blocks_horizontal .section_block_text .block_text_2 {
				margin: 2vw 2vw 0vw 2vw;
				font-size: 1.3vw;
			}








.main_section_3 {
	width: 100%;
	background-color: white;
	padding-bottom: 5vw;
}
	.main_section_3 .section_blocks_vertical {
		display: flex;
		flex-direction: column;
		gap: 3vw;
		margin: 0vw 5vw;
	}
	.main_section_3 .section_header {
		margin-top: 3vw;
		font-size: 4vw;
		font-family: 'RalewayBold', sans-serif;
		color: #3d50ab;
	}
		.main_section_3 .section_blocks_vertical .section_blocks_horizontal {
			display: flex;
			flex-direction: row;
			width: 90vw;
			justify-content: space-between;
			flex-wrap: wrap;
        	gap: 4vw;
		}
			.main_section_3 .section_blocks_vertical .section_blocks_horizontal .sercive_block {
				width: 27vw;
				position: relative;
				display: inline-block;
				cursor: pointer;
			}
			.main_section_3 .section_blocks_vertical .section_blocks_horizontal .sercive_block img {
				width: 100%;
				height: auto;
				z-index: 50;
			}
			.main_section_3 .section_blocks_vertical .section_blocks_horizontal .sercive_block a {
				width: 26.9vw;
				height: 5.9vw;
				background-color: #3d50ab;
				color: white;
				font-size: 2.5vw;
				display: flex;
				justify-content: center;
				align-items: center;
				margin-top: -3vw;
				z-index: 60;
				position: absolute;
				border-radius: 2vw;
				bottom: 0vw;
				border: 1px solid #3d50ab;
				transition: color 0.5s, background-color 0.5s;
			}
			.main_section_3 .section_blocks_vertical .section_blocks_horizontal .sercive_block a:hover {
				color: #3d50ab;
				background-color: white;
			}
			.main_section_3 .section_blocks_vertical .section_blocks_horizontal .sercive_block_others {
				width: 27vw;
				height: auto;
				display: flex;
				justify-content: center;
				align-items: center;
				border: 1px solid #3d50ab;
				border-radius: 2vw;
				font-size: 2vw;
				cursor: pointer;
				transition: color 0.5s, background-color 0.5s;
			}
	.sercive_block_others:hover {
		background-color: #3d50ab;
		color: white;
	}





.main_section_4 {
	width: 100%;
	background-color: #3d50ab;
	color: white;
	padding-bottom: 5vw;
}
	.main_section_4 .section_blocks_vertical {
		display: flex;
		flex-direction: column;
		gap: 3vw;
		margin: 0vw 5vw;
	}
	.main_section_4 .section_header {
		margin-top: 3vw;
		font-size: 4vw;
		font-family: 'RalewayBold', sans-serif;
	}
	.main_section_4 .section_doctors {
		margin-top: 2vw;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	.doctors_group_button {
		width: 5vw;
	}
	.doctors_group_button img {
		display: flex;
		flex-direction: row;
		height: auto;
		width: 3vw;
		justify-content: center;
		margin-top: 13vw;
		margin-left: 1vw;
		margin-right: 1vw;
		cursor: pointer;
	}
	.doctors_group {
		display: flex;
		flex-direction: row;
		width: 75vw;
		justify-content: space-between;
	}
	.doctor {
		width: 20vw;
	}
	.doctor_avatar {
		width: 20vw;
		height: auto;
	}
	.doctor_name{
		margin-top: 1vw;
		font-size: 1.5vw;
		font-weight: bold;
	}
	.doctor_position {
		font-size: 1.2vw;
		margin-top: 0.7vw;
		opacity: 0.8;
	}












.main_section_6 {
	width: 100%;
	background-color: white;
	
}
	.main_section_6 .section_blocks_horizontal {
		display: flex;
		flex-direction: row;
		margin-left: 5vw;
	}
		.main_section_6 .section_blocks_horizontal .block_contacts {
			width: 30%;
			display: flex;
			flex-direction: column;
		}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_header {
				margin-top: 3vw;
				font-size: 4vw;
				font-family: 'RalewayBold', sans-serif;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_subheader {
				font-size: 3vw;
				font-weight: bold;
				margin-top: 8vw;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_button {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 11vw;
				height: 3vw;
				color: #3d50ab;
				background-color: white;
				border: 1px solid #3d50ab;
				cursor: pointer;
				border-radius: 0.4vw;
				margin-top: 0.5vw;
				font-size: 1.45vw;
				transition: background-color 0.5s, color 0.5s;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_button:hover {
				background-color: #3d50ab;
				color: white;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_schedule {
				display: flex;
				flex-direction: column;
				height: 9vw;
				font-family: 'Montserrat', sans-serif;
				font-size: 1.6vw;
				gap: 0.5vw;
				margin-top: 1.4vw;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_schedule div {
				display: flex;
				flex-direction: row;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_schedule div div:first-child {
				width: 12vw;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_schedule div div:last-child {
				width: 30vw;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_social_media {
				display: flex;
				flex-direction: row;
				gap: 2vw;
				margin-top: 2vw;
				margin-bottom: 4vw;
				cursor: pointer;
			}
			.main_section_6 .section_blocks_horizontal .block_contacts .block_contacts_social_media a img {
				width: 5vw;
				height: auto;
				margin-bottom: 1vw;
			}




		.main_section_6 .section_blocks_horizontal .block_request {
			width: 70%;
			height: auto;
			background-image: url('/static/images/clinic_photo_4.png');
			background-size: 100% auto;
			background-repeat: no-repeat;
			background-position: top center;
			display: flex;
			justify-content: center;
		}
			.main_section_6 .section_blocks_horizontal .block_request .request_form {
				width: 50%;
				height: max-content;
				background-color: white;
				opacity: 0.95;
				border-radius: 0.3vw;
				margin: 5vw;
				padding: 0vw 7vw;
				display: flex;
				flex-direction: column;
				justify-content: center;
			}
				.main_section_6 .section_blocks_horizontal .block_request .request_form .request_form_header {
					font-family: 'RalewayBold', sans-serif;
					font-size: 1.6vw;
					font-weight: bold;
					margin-top: 2vw;
				}
				.main_section_6 .section_blocks_horizontal .block_request .request_form .request_form_header_details {
					font-size: 1vw;
					margin-top: 0.7vw;
					margin-bottom: 2vw;
				}
				.main_section_6 .section_blocks_horizontal .block_request .request_form .request_form_header_input {
					margin-top: 1vw;
					border: none;
					border-bottom: 1px solid #3d50ab;
					padding-bottom: 0.3vw;
					font-size: 1.3vw;
				}
				.main_section_6 .section_blocks_horizontal .block_request .request_form .request_form_header_input::placeholder {
					font-size: 1.3vw;
				}
				.main_section_6 .section_blocks_horizontal .block_request .request_form .request_form_button_send {
					display: flex;
					justify-content: center;
					align-items: center;
					width: 15vw;
					height: 2.6vw;
					color: white;
					background-color: #3d50ab;
					cursor: pointer;
					border-radius: 0.4vw;
					border: 1px solid #3d50ab;
					margin-top: 3vw;
					margin-bottom: 2vw;
					font-size: 1.45vw;
					transition: background-color 0.5s, color 0.5s;
				}
				.main_section_6 .section_blocks_horizontal .block_request .request_form .request_form_button_send:hover {
					background-color: white;
					color: #3d50ab;
					border: 1px solid #3d50ab;
				}













.services_section {
	display: flex;
	flex-direction: column;
}
	.services_section .section_block_1 {
		display: flex;
		flex-direction: row;
		color: #3d50ab;
		background-color: white;
		padding: 3vw 5vw;
		gap: 5vw;
	}
		.services_section .section_block_1 .section_block_1_image {
			display: flex;
			flex-direction: column;
			width: 25vw;
		}
			.services_section .section_block_1 .section_block_1_image img {
				width: 100%;
				height: auto;
			}
		.services_section .section_block_1 .section_block_1_data {
			display: flex;
			flex-direction: column;
			width: 75%;
		}
			.services_section .section_block_1 .section_block_1_data h1 {
				font-family: 'RalewayBold', sans-serif;
				margin-top: 3vw;
			}
			.services_section .section_block_1 .section_block_1_data div {
				display: flex;
				flex-direction: column;
				font-size: 2vw;
			}
			.services_section .section_block_1 .section_block_1_data a {
				margin-top: 3vw;
			}

	.services_section .section_block_2 {
		display: flex;
		flex-direction: row;
		background-color: #3d50ab;
		padding: 3vw 5vw;
		gap: 5vw;
		color: white;
	}
	
		.services_section .section_block_2 .section_block_2_data {
			display: flex;
			flex-direction: column;
			width: 75%;
		}
			.services_section .section_block_2 .section_block_2_data h1 {
				font-family: 'RalewayBold', sans-serif;
				color: white;
				font-size: 3.4vw;
				margin-bottom: 3vw;
			}
			.service_section_listed_info {
				display: flex;
				flex-direction: column;
			}
				.service_section_listed_info div {
					display: flex;
					flex-direction: row;
					font-size: 1.3vw;
					margin-bottom: 1vw;
				}
				.service_section_listed_info div div:first-child {
					font-family: 'Montserrat', sans-serif;
					min-width: 1.8vw;
				}
				.service_section_listed_info div div:last-child {
					margin-left: 1vw;
					border-bottom: 1px solid white;
					padding-bottom: 0.5vw;
					width: 100%;
				}

		.services_section .section_block_2 .section_block_2_image {
			display: flex;
			flex-direction: column;
			width: 30vw;
		}
			.services_section .section_block_2 .section_block_2_image img {
				width: 100%;
				height: auto;
			}


	.services_section .section_block_3 {
		display: flex;
		flex-direction: row;
		padding: 3vw 5vw;
		gap: 5vw;
		background-color: white;
	}
		.services_section .section_block_3 .section_block_3_image {
			display: flex;
			flex-direction: column;
			width: 30vw;
		}
			.services_section .section_block_3 .section_block_3_image img {
				width: 100%;
				height: auto;
			}
		.services_section .section_block_3 .section_block_3_data {
			display: flex;
			flex-direction: column;
			width: 75%;
		}
			.services_section .section_block_3 .section_block_3_data h1 {
				font-size: 3.4vw;
			}
			.services_section .section_block_3 .section_block_3_data div {
				display: flex;
				flex-direction: column;
				gap: 1.2vw;
			}
				.services_section .section_block_3 .section_block_3_data div div {
					width: 94%;
					background-color: #3d50ab;
					color: white;
					font-size: 1.5vw;
					padding: 0.7vw;
				}



.services_section_separator {
	width: 100%;
	height: 2vw;
	background-color: #3d50ab;
}












.price_section {
	display: flex;
	flex-direction: column;
	background-color: white;
	padding: 2vw 0vw;
}
	.price_section .price_header {
		background-color: #3d50ab;
		color: white;
		margin: 0vw 30vw;
		padding: 0.5vw 0.5vw;
		width: auto;
		text-align: center;
		font-size: 3vw;
	}
	.price_section .price_list {
		display: flex;
		flex-direction: column;
		gap: 1vw;
		font-size: 1.8vw;
		margin-top: 3vw;
		padding: 0vw 10vw;
		
	}
		.price_section .price_list .price_item {
			display: flex;
			flex-direction: row;
			justify-content: space-between;
			border-bottom: 1px solid #3d50ab;
			padding-bottom: 0.4vw;
			width: 100%;
		}
		.price_section .price_list .price_item div:first-child {
			font-family: 'Montserrat', sans-serif;
			max-width: 60vw;
		}
		.price_section .price_list .price_item div:last-child {
			font-family: 'Montserrat', sans-serif;
			min-width: 10vw;
			text-align: right;
			align-content: end;
		}
	.price_list_diet_notes {
		margin-top: 2vw;
		padding: 0vw 10vw;
		font-size: 1.4vw;
		color: #4e60c6;
	}










.main_section_5 {
	background-image: url('/static/images/contacts.png');
	background-size: 100% auto;
	height: 60vw;
	background-repeat: no-repeat;
	background-position: top center;
}
	.main_section_5 .contacts_header {
		width: auto;
		text-align: center;
		font-size: 3vw;
		font-family: 'RalewayBold', sans-serif;
		padding-top: 3vw;
		font-size: 4vw;
		color: white;
	}
	.contacts_block {
		background-color: white;
		opacity: 0.95;
		width: 91%;
		color: #3d50ab;
		display: flex;
		margin-left: 3vw;
		margin-right: 0vw;
		margin-top: 2vw;
		flex-direction: column;
		font-size: 1.4vw;
		padding: 3vw 3vw;
		padding-right: 0vw;
	}
		.contacts_block .contacts_block_line {
			display: flex;
			flex-direction: row;
			justify-content: space-between;
			flex-wrap: wrap;
		}
			.contacts_block .contacts_block_line .contacts_block_unit {
				display: flex;
				flex-direction: column;
				width: 23vw;
				margin-bottom: 3vw;
			}
				.contacts_block .contacts_block_line .contacts_block_unit .contacts_block_city {
					font-family: 'RalewayBold', sans-serif;
					font-size: 1.8vw;
					border-bottom: 1px solid #3d50ab;
  					width: max-content;
				}
				.contacts_block .contacts_block_line .contacts_block_unit .contacts_block_name {
					font-family: 'Montserrat', sans-serif;
					margin-top: 0.6vw;
					font-weight: bold;
				}
				.contacts_block .contacts_block_line .contacts_block_unit .contacts_block_adress {
					font-family: 'Montserrat', sans-serif;
					margin-top: 0.6vw;
				}
				.contacts_block .contacts_block_line .contacts_block_unit .contacts_block_phone {
					font-family: 'Montserrat', sans-serif;
					margin-top: 0.8vw;
					background-color: #3d50ab;
					padding: 0.3vw 1vw;
					color: white;
					width: max-content;
					display: flex;
					cursor: pointer;
				}





	




.review_section {
	background-image: url('/static/images/review.png');
	background-size: 100% auto;
	height: 60vw;
	background-repeat: no-repeat;
	background-position: top center;
	display: flex;
	flex-direction: column;
}
	.review_section .section_header {
		font-size: 4vw;
		font-family: 'RalewayBold', sans-serif;
		color: #3d50ab;
		margin-top: 3vw;
 		margin-left: 5vw;
	}
	.review_section .button_details {
		display: flex;
		justify-content: center;
		align-items: center;
		color: #3d50ab;
		background-color: white;
		border: 1px solid #3d50ab;
		cursor: pointer;
		border-radius: 0.4vw;
		margin-top: 0.5vw;
		font-size: 2.45vw;
		transition: background-color 0.5s, color 0.5s;
		padding: 0.4vw 2vw;
		width: 27vw;
		margin-top: 46vw;
		margin-left: 35vw;
	}
	.review_section .button_details:hover {
		background-color: #3d50ab;
		color: white;
	}






.request_response_modal_form {
    width: 100%;
    background-color: white;
    font-size: 2vw;
    align-content: center;
    text-align: center;
    margin-top: -8vw;
}
.request_response_modal_form div {
    margin-top: 2vw;
}
.request_response_modal_form a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25vw;
    height: 3vw;
    color: white;
    background-color: #3d50ab;
    cursor: pointer;
    border-radius: 0.4vw;
    font-size: 1.45vw;
    transition: background-color 0.5s, color 0.5s;
    border: 1px solid #3d50ab;
    margin: 2vw auto;
    padding: 0.2vw 0.1vw;
    }











footer {
	width: 100%;
	height: 5vw;
	background-color: #3d50ab;
	color: white;
	display: flex;
	flex-direction: column;
	font-family: 'Montserrat', sans-serif;
}
.footer_licence {
	margin-left: 3vw;
	margin-top: 1vw;
	font-size: 1.4vw;
}
.footer_trade_mark {
	margin-left: 3vw;
	margin-top: 0.3vw;
	font-size: 0.8vw;
	opacity: 0.6;
}