@media screen and (max-width:1230px) {
	header .tel {
		font-size: 20px;
	}
	header nav ul a {
		font-size: 13px;
	}
	header nav > ul {
		gap:15px;
	}
	#banner {
		border-radius: 0 0 60px 60px;
	}
	#welcome, #services {
		padding-top: 80px;
	}
	.services {
		flex-wrap: wrap;
	}
	body {
		font-size: 17px;
	}
	#banner .col-right {
		margin-right: -120px;
	}
	.section-title {
		font-size: 40px;
	}
	#mission .desc {
		margin:0 0 30px;
	}
	#banner2 img {
		object-fit: cover;
		width: 100%;
		min-height: 300px;
	}
	.contacts .text {
		max-width: 420px;
	}
	#contacts .col-right img {
		margin-top: 90px;
	}
	.mn {
		padding-bottom: 80px !important;
	}
	.page-title {
		font-size: 70px;
	}
	.text2 h2, .text h2, .text2 a, #team .text h2, #why .text h2, #service2 .text h2, #care .text h2, #single h1 {
		font-size: 36px;
	}
	.text p + h2 {
		margin-top: 30px;
	}
	.text2 .contact p + p {
		padding: 0 30px 30px;
		font-size: 18px;
	}
	.text2 .contact a {
		font-size: 18px;
	}
	.text2 h4 {
		margin-top: 30px;
	}
	.subtitle {
		margin:0 0 30px;
		font-size: 20px;
	}
	#welcome, #services {
		padding-top: 40px;
	}
	.services2 > a span {
		font-size: 30px;
	}
	#services .text3 h3 {
		font-size: 27px;
	}
	.resources > a {
		padding: 30px;
	}
	.resources .p1 {
		font-size: 20px;
	}
	.resources .p2 {
		font-size: 18px;
	}
	.btn2, .wp-pagenavi a, .btn2, .form-submit input[type="submit"] {
		height: 50px;
		font-size: 18px;
	}
	#contacts2 .form > p {
		font-size: 30px;
	}
	.form input {
		padding: 0 10px;
		height: 50px;
		font-size: 17px;
		margin:0 0 24px;
	}
	.form select {
		padding: 0 10px;
		height: 50px;
		background: var(--light-background) url(images/arrow7.svg) no-repeat calc(100% - 20px) center;
		font-size: 17px;
		margin:0 0 24px;
	}
	.form textarea {
		padding: 10px;
		height: 80px;
		font-size: 17px;
		margin:0 0 24px;
	}
	.form ::placeholder {
		font-size: 17px !important;
	}
	#contacts2 .text {
		margin:0 0 30px;
	}
	.form .ftitle {
		font-size: 30px;
		margin:10px 0 20px;
	}
	#schedule .text {
		margin:0 0 40px;
	}
	.form > p {
		font-size: 36px;
	}
	#banner h1 {
		font-size: 45px;
	}
	footer .col1 {
		padding-right: 15px;
	}
	.services > a .img {
		height: 23vw;
	}
}
@media screen and (max-width:992px) {
	.open-menu {
		display: block;
		margin-left: 30px;
		width: 40px;
		height: 40px;
		background: url(../images/menu.svg) no-repeat center;
		background-size: auto 30px;
		cursor: pointer;
	}
	header .menu {
		position: absolute;
		right: 0;
		width: 300px;
		top:0;
		height: 100dvh;
		overflow:auto;
		padding: 30px;
		padding-top: 60px;
		background: var(--light-gray);
		box-shadow: 0 0 5px rgba(0,0,0,0.2);
		display: none;
		z-index: 9;
	}
	.menu .close {
		width: 40px;
		height: 40px;
		display: block;
		position: absolute;
		right: 10px;
		top:10px;
		background: url(../images/close.svg) no-repeat center;
	}
	header nav > ul {
		display: block;
	}
	header nav > ul li + li {
		margin-top: 15px;
	}
	header nav > ul a {
		margin:0;
		padding: 0;
		font-size: 18px;
	}
	header nav ul .sub-menu a {
		white-space: unset;
	}
	header nav .sub-menu {
		display: block;
		opacity: 1;
		visibility: visible;
		margin-left: 20px;
		position: static;
	}
	header nav .menu-item-has-children > a {
		background: none;
	}
	header .tel {
		margin-left: auto;
	}
	#banner .col-right {
		max-width: calc(50% + 120px);
	}
	#banner .d-flex {
		align-items: flex-end;
	}
	#banner .col-left {
		max-width: 50%;
		padding: 0 0 50px;
	}
	.btn {
		height: 50px;
		padding: 0 20px;
		font-size: 16px;
	}
	#banner h1 {
		font-size: 40px;
	}
	#banner .desc {
		font-size: 17px;
		margin:0 0 20px;
	}
	#welcome, #services {
		padding-top: 50px;
	}
	#welcome {
		padding: 50px 0 60px;
	}
	.section-title {
		font-size: 32px;
	}
	body {
		font-size: 16px;
		line-height: 1.4;
	}
	.services .title {
		margin:10px 0 12px;
		font-size: 20px;
	}
	.services {
		justify-content: center;
	}
	.services > a {
		max-width: 360px;
	}
	.services > a .img {
		height: 285px;
	}
	#mission {
		padding: 60px 0 80px;
	}
	#mission .info {
		flex-wrap: wrap;
	}
	#mission .info > a {
		max-width: 100%;
	}
	#mission .col-left {
		padding-bottom: 40px;
		padding-top: 0;
	}
	#form {
		padding: 80px 0 0;
	}
	.contacts {
		bottom: 20px;
	}
	#contacts .d-flex {
		flex-wrap: wrap;
	}
	#contacts .col-left {
		padding: 0 0 0;
		max-width: 100%;
	}
	#contacts .col-right {
		max-width: 100%;
		margin-left: 0;
	}
	#contacts .col-right img {
		margin-top: 0px;
	}
	.contacts .p3, .contacts .p1 {
		font-size: 20px;
	}
	footer .d-flex {
		flex-wrap: wrap;
		justify-content: space-between;
	}
	footer .col4 {
		max-width: 300px;
	}
	footer .col2 {
		max-width: 195px;
	}
	footer .col1 {
		width: 100%;
		text-align: center;
		max-width: 100%;
		margin-bottom: 30px;
	}
	footer .col1 img {
		max-width: 160px;
		margin:0 auto;
	}
	footer .col3 {
		margin:0 20px;
	}
	footer .tel {
		font-size: 18px;
	}
	.page-title {
		font-size: 48px;
		margin:0 0 16px;
	}
	#referals .text {
		margin-bottom: 40px;
	}
	#contacts {
		padding: 60px 0 0;
	}
	.mn .form {
		padding: 40px;
	}
	.form .title {
		margin:30px 0 20px;
	}
	.mn {
		padding: 80px 0 ;
	}
	.mn .col-left {
		max-width: 100%;
		width: 100%;
		padding: 0;
	}
	.mn .d-flex {
		flex-wrap: wrap;
	}
	.form .ftitle {
		margin: 0 0 24px;
		font-size: 24px;
	}
	.mn {
		padding-bottom: 50px !important;
	}
	.mn .col-right {
		max-width: 100%;
		padding: 0;
		width: 100%;
		margin-top: 30px;
	}
	#schedule .text {
		margin:0 0 30px;
	}
	#contacts2 .form > p {
		font-size: 24px;
	}
	.form input {
		padding: 0 10px;
		height: 45px;
		font-size: 16px;
		margin:0 0 16px;
	}
	.form select {
		padding: 0 10px;
		height: 45px;
		background: var(--light-background) url(images/arrow7.svg) no-repeat calc(100% - 10px) center;
		font-size: 16px;
		margin:0 0 16px;
	}
	.form textarea {
		padding: 10px;
		height: 80px;
		font-size: 16px;
		margin:0 0 16px;
	}
	.form ::placeholder {
		font-size: 16px !important;
	}
	#contacts2 .text {
		margin:0 0 20px;
	}
	.text2 h2, .text h2, .text2 a, #team .text h2, #why .text h2, #service2 .text h2, #care .text h2, #single h1 {
		font-size: 30px;
	}
	.subtitle {
		font-size: 18px;
		margin:0 0 20px;
	}
	.text p + h2 {
		margin-top: 24px;
	}
	.text h3 {
		font-size: 20px;
	}
	#why .col-right, #care .col-right {
		max-width: 100%;
		letter-spacing: 0;
	}
	#why .text2 .img2 {
		right: -10px;
	}
	.services2 > a {
		max-width: calc(50% - 15px);
		border:0 !important;
		padding: 0;
	}
	.services2 > a span {
		font-size: 24px;
		margin:0 0 12px;
	}
	#services .text3 {
		max-width: 100%;
		padding: 20px 0;
		border:0;
		margin-top: 0;
	}
	#services .text3 h3 {
		font-size: 24px;
	}
	#services .text3 .wp-block-image {
		margin: 16px 0;
	}
	.resources > a {
		padding: 20px;
	}
	.resources a:hover {
		padding-left: 35px;
	}
	.resources img {
		right: 16px;
	}
	.form > p {
		font-size: 30px;
		margin:0 0 16px;
	}
	.form label {
		font-size: 15px;
	}
	.blogs > div {
		max-width: calc(50% - 15px);
	}
	.blogs img {
		height: 29vw;
	}
	.btn2, .wp-pagenavi a, .form-submit input[type="submit"], .btn {
		height: 45px;
		font-size: 16px;
	}
	#about_us {
		padding: 60px 0;
	}
	#about_us .d-flex {
		flex-wrap: wrap;
	}
	#contacts {
		text-align: center;
	}
	.services2 {
		margin:50px 0 0;
	}
	#team2 {
		padding: 0 0 60px;
	}
	.reviews > div {
		padding: 20px;
	}
	.reviews {
		margin-bottom: 50px;
	}
}
@media screen and (max-width:767px) {
	header .home-link {
		max-width: 100px;
	}
	header .tel {
		font-size: 17px;
		height: 40px;
		padding: 0 10px;
		border-radius: 15px;
	}
	header .tel svg {
		margin-right: 5px;
	}
	.open-menu {
		margin-left: 12px;
	}
	.container {
		padding: 0 15px;
	}
	header nav .sub-menu {
		padding: 0;
	}
	#banner h1 {
		font-size: 36px;
		margin:0 0 16px;
	}
	#welcome {
		padding: 40px 0;
	}
	#welcome .d-flex {
		flex-wrap: wrap;
	}
	#welcome .col-left {
		max-width: 100%;
		padding: 0;
		order:2;
	}
	#welcome .col-right {
		max-width: 100%;
		padding: 0;
		margin-bottom: 30px;
	}
	.section-title, #about_us h2, #team2 h2 {
		font-size: 27px;
		margin:0 0 16px;
	}
	#services {
		padding: 40px 0;
	}
	.services > a .img {
		height: 284px;
		margin:0 auto 16px;
	}
	.services .img img {
		height: 100%;
	}
	#services .section-title br {
		display: none;
	}
	#services .desc2 {
		margin:0 auto 24px;
	}
	.services {
		gap:20px;
	}
	.services > a {
		padding: 20px;
		border-radius: 20px;
	}
	.services .title {
		margin:0 0 8px;
	}
	.services .title br {
		display: none;
	}
	.services > a {
		max-width: 420px;
	}
	.services .desc {
		margin-bottom: 12px;
	}
	#mission {
		padding: 40px 0;
	}
	#mission .container > .d-flex {
		flex-wrap: wrap;
	}
	#mission .col-left {
		max-width: 100%;
		padding: 0;
	}
	#mission .info > a {
		padding: 20px 15px;
		border-radius: 20px;
	}
	#mission .info .img {
		margin-right: 15px;
	}
	#mission .info .p1 {
		font-size: 20px;
	}
	#mission .info .p2 {
		margin:0 0 8px;
		font-size: 14px;
	}
	#mission .desc {
		margin:0 0 24px;
	}
	#mission .col-right {
		margin:0;
		max-width: 100%;
		padding: 0;
	}
	#mission .img2 {
		right: -5px;
		top:-5px;
	}
	#form {
		padding: 40px 0 0;
	}
	.form .rw > * {
		display: block;
	}
	.form .rw > * > * {
		width: 100%;
	}
	#form .sub {
		margin:0 0 20px;
	}
	#form .content {
		padding: 30px 15px 20px;
		border-radius: 20px;
	}
	.form .bottom {
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
	}
	.form .bottom > .dop {
		order:2;
		font-size: 14px;
		margin:10px 0 0;
		width: 100%;
	}
	#map {
		height: 400px;
	}
	.contacts {
		position: static;
	}
	.contacts .p2 {
		font-size: 20px;
		margin:0 0 15px;
	}
	.contacts .p3 a {
		font-size: 24px;
	}
	.contacts .p5 {
		margin:0 0 15px;
	}
	.contacts .p6 {
		margin:0 0 20px;
	}
	#contacts .col-right img {
		margin-bottom: -17%;
	}
	footer {
		margin-top: 0;
		padding: 40px 0;
	}
	.contacts .text {
		padding: 20px 0;
		max-width: 100%;
	}
	footer .col2 {
		max-width: 50%;
	}
	footer .col3 {
		max-width: 50%;
		margin:0;
	}
	footer .col4 {
		width: 100%;
		max-width: 100%;
		margin-top: 20px;
		display: flex;
		flex-wrap: wrap;
	}
	footer .copy {
		order:2;
	}
	footer .p2 {
		width: 100%;
	}
	#banner2 img {
		min-height: 250px;
	}
	body:not(.home) .social {
		top:120px;
	}
	.page-title {
		font-size: 32px;
	}
	#referals .text {
		margin:0 0 30px;
	}
	.form .dop2 {
		margin:0 0 16px;
	}
	.form .ftitle {
		font-size: 20px;
		margin:0 0 16px;
	}
	.wpcf7-field-group-remove {
		margin:0 0 16px;
	}
	.form .rw2 > * {
		display: block;
	}
	.form .rw2 > * > * {
		width: 100%;
	}
	.radios > p {
		flex-wrap: wrap;
	}
	.radios > p > label {
		width: 100%;
		margin:0 0 8px;
	}
	.radios {
		margin-bottom: 16px;
	}
	.subtitle {
		font-size: 17px;
	}
	.text2 h2, .text h2, .text2 a, #team .text h2, #why .text h2, #service2 .text h2, #care .text h2, #single h1 {
		font-size: 27px;
	}
	.text p + h2 {
		margin-top: 16px;
	}
	.text2 h4, .text2 .contact {
		margin-top: 24px;
	}
	.text2 .contact p + p {
		padding: 0 15px 15px;
		font-size: 17px;
	}
	.text2 .contact img {
		margin:0 0 15px;
	}
	#team .text h2, #why .text h2 {
		margin:0 0 16px;
	}
	.services2 {
		margin:30px 0 0;
	}
	.services2 > a {
		margin:0;
		max-width: 100%;
		width: 100%;
	}
	.services2 > a span br {
		display: none;
	}
	.services2 a img {
		margin:0 0 20px;
	}
	.mn .text h3 {
		margin:16px 0;
		font-size: 20px;
	}
	#services .text3 {
		padding-bottom: 0;
	}
	#contacts {
		padding: 40px 0 0;
	}
	.mn {
		padding-top: 40px;
	}
	.mn .bg {
		padding: 0;
		background:none;
		min-height: unset;
	}
	.mn .form {
		padding: 20px 15px;
	}
	.mn .form .bottom {
		margin-top: 10px;
	}
	.form .title {
		font-size: 24px;
		margin:20px 0 15px;
	}
	.resources > a {
		padding: 16px 40px 16px 0 !important;
	}
	.resources img {
		right: 0;
	}
	.resources .p1 {
		font-size: 18px;
	}
	.resources .p2 {
		font-size: 16px;
	}
	#reviews .form .subt {
		font-size: 18px;
		margin:0 0 15px;
	}
	#contacts2 .form > p {
		font-size: 20px;
	}
	.mn .form {
		border-radius: 20px;
	}
	.form .bottom > p {
		width: 100%;
	}
	form .btn, form .btn2 {
		width: 100%;
		max-width: 100%;
	}
	#about_us {
		padding: 40px 0;
	}
	#about_us .d-flex {
		gap:20px;
	}
	#mission2, #vision {
		padding: 40px 0;
	}
	#vision .d-flex {
		flex-wrap: wrap;
		gap:30px;
	}
	#vision .col-left {
		max-width: 100%;
	}
	#vision .col-right {
		max-width: 100%;
	}
	.mn {
		padding-bottom: 40px !important;
	}
	#team2 .d-flex {
		flex-wrap: wrap;
		gap:30px;
	}
	#team2 .col-left {
		max-width: 100%;
	}
	#team2 .col-right {
		max-width: 100%;
		padding: 0;
	}
	#team2 {
		padding: 0 0 40px;
	}
	.reviews > div {
		padding: 20px 15px;
	}
	.reviews .name {
		font-size: 20px;
		margin:0 0 15px;
	}
}