.contact-map img {
	width: 100%;
	object-fit: contain;
}

.contact-form.bg-light,
.contact-map-inner {
	position: relative;
}

.contact-form .contact-image img {
	position: absolute;
	top: calc(-0px + (var(--section-padding) - 20rem));
	right: 0;
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1);
}

.contact.main-description {
	color: var(--color-base);
}

.contact-map {
	margin-bottom: var(--section-margin);
}

.contact-form {
	padding-top: var(--section-padding);
	padding-bottom: var(--section-padding);
}
.contact-map .contact-map-inner {
	margin-bottom: var(--section-margin);
}

.contact-map .map-sep {
	background-color: var(--color-secondary);
	height: 1px;
}

.contact-info {
	--swiper-pagination-color: var(--color-white);
	background-color: var(--color-base);
	color: var(--color-white);
	padding: 2rem;
	border-radius: 0.85rem;
	font-size: 1rem;
	max-width: 25%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 9999;
}

.contact-info-inner p:not(.contact-location) {
	font-size: 1em;
}

.contact-info-inner p {
	margin: 0;
}

.contact-info-inner a {
	color: var(--color-white);
	font-size: 1em;
	display: block;
	width: fit-content;
	text-decoration: none;
}

.contact-info-inner a:hover {
	color: var(--color-secondary);
}

#map {
	width: 100%;
	min-height: 700px;
	background-color: white;
	border-radius: 0.85rem;
}

.leaflet-bottom.leaflet-right {
	display: none;
}

.leaflet-div-icon {
	background: none !important;
	border: none !important;
}

.pulse-effect-icon .circle {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 0px;
	height: 0px;
	border-radius: 100%;
	opacity: 0;
	animation: pulse 4s infinite linear;
	border: 0.5px solid var(--color-base);
	box-shadow: 0px 0px 1px var(--color-base);
}

.pulse-effect-icon .circle:nth-child(1) {
	animation-delay: 0.2s;
}

.pulse-effect-icon .circle:nth-child(2) {
	animation-delay: 0.4s;
}

@keyframes pulse {
	0% {
		opacity: 0;
		width: 25px;
		height: 25px;
		transform: translate(-50%, -50%) scale(1);
	}

	10% {
		opacity: 0.5;
		transform: translate(-50%, -50%) scale(1.5);
	}

	100% {
		opacity: 0;
		width: 50px;
		height: 50px;
		transform: translate(-50%, -50%) scale(1);
	}
}

@media screen and (min-width: 64rem) {
	.contact-form .contact-image {
		position: relative;
	}
}

@media screen and (max-width: 64rem) {
	.contact-form .contact-image img {
		top: calc(-0px - (var(--section-padding) + 0px));
		max-width: 200px;
	}

	.contact-info {
		max-width: 100%;
		border-radius: 0 0 0.85rem 0.85rem;
	}
}
