.banner-section {
	position: relative;
	padding: 209px 0 195px 0;
	overflow: hidden;
}

.banner-sec-bg {
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}

.banner-section::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	opacity: 0.59;
	inset: 0;
	background-color: var(--color-black);
	pointer-events: none;
}

.banner-section::after {
	content: "";
	width: 100%;
	height: 226px;
	background-image: url('data:image/svg+xml,<svg width="1920" height="227" viewBox="0 0 1920 227" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M612.032 142.5L-2 0V187H1922V94.5L1149.69 142.5H612.032Z" fill="%239ED3EF"/><path d="M616 144L-2 46V226.5H1922V144L1032 99.5L616 144Z" fill="white"/></svg>');
	position: absolute;
	z-index: 1;
	pointer-events: none;
	left: 0;
	right: 0;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: -1px;
}

.banner-left-col {
	max-width: 60%;
	width: 100%;
}

.banner-right-col {
	max-width: 37.9%;
	width: 100%;
}

.banner-right {
	margin-inline-end: -184px;
	padding: 47px 60px 61px 62px;
	border: 1px solid var(--color-gray);
}

.banner-sec-top-heading {
	margin: 0 0 15px 0;
}

.banner-sec-heading {
	line-height: 1;
}

.banner-left {
	padding-top: 35px;
}

@media screen and (max-width:1800px) {
	.banner-right {
		margin-inline-end: -50px;
		padding: 45px 50px 50px 45px;
	}

	.banner-left-col {
		max-width: 59%;
	}

	.banner-right-col {
		max-width: 41%;
	}
}

@media screen and (max-width:1600px) {
	.banner-section {
		padding: 209px 0 160px 0;
	}

	.banner-section::after {
		background-size: contain;
		background-repeat: no-repeat;
		background-position: bottom -1px center;
	}

	.banner-left {
		padding-top: 0;
	}

	.banner-left-col {
		max-width: 51%;
	}

	.banner-right-col {
		max-width: 49%;
	}

	.banner-right {
		margin-inline-end: 0;
		padding: 45px;
	}

}

@media screen and (max-width:1440px) {

	.appointment-form input,
	.appointment-form textarea,
	.appointment-form input,
	.appointment-form select {
		padding: 17px 25px !important;
	}

	.appointment-form input[type="submit"] {
		padding: 18px 25px !important;
	}

	.appointment-form select {
		padding: 17.7px 25px !important;
	}
}

@media screen and (max-width:1360px) {
	.banner-section {
		padding: 190px 0 130px 0;
	}
}

@media screen and (max-width:1200px) {
	.banner-right {
		padding: 35px;
	}

	.banner-section {
		padding: 180px 0 110px 0;
	}

	.appointment-form input,
	.appointment-form textarea,
	.appointment-form input,
	.appointment-form select {
		padding: 15px 22px !important;
	}

	.appointment-form select {
		padding: 15.4px 22px !important;
	}

	.appointment-form input[type="submit"] {
		padding: 16px 25px !important;
	}
}

@media screen and (max-width:991px) {
	.banner-section {
		padding: 170px 0 100px 0;
	}

	.banner-left-col,
	.banner-right-col {
		max-width: 100%;
	}

	.banner-sec-heading {
		margin-bottom: 28px;
	}

	.banner-right-col {
		padding-top: 30px;
	}
}

@media screen and (max-width:640px) {
	.banner-section {
		padding: 150px 0 100px 0;
	}

	.banner-sec-heading {
		margin-bottom: 25px;
	}

	.banner-sec-bottom-heading {
		margin: 0 0 10px 0;
	}

	.banner-right {
		padding: 35px 25px;
	}

	.appointment-form input,
	.appointment-form textarea,
	.appointment-form input,
	.appointment-form select {
		padding: 13px 22px !important;
	}

	.appointment-form select {
		padding: 13.4px 22px !important;
	}

	.appointment-form input[type="submit"] {
		padding: 14px 25px !important;
	}

	body .appointment-form .gfield_label {
		margin: 0 0 6px 0;
	}

	.contact-form .gform-body .gform_fields {
		row-gap: 16px !important;
	}
}

@media screen and (max-width:480px) {
	.banner-section {
		padding: 170px 0 80px 0;
	}
}