*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
::-webkit-scrollbar {
	width: 15px;
}
::-webkit-scrollbar-track {
	box-shadow: inset 0 0 5px rgb(161, 161, 161);
	border-radius: 10px;
}
::-webkit-scrollbar-thumb {
	background: rgb(0, 0, 0);
	border-radius: 10px;
}
body {
	position: relative;
	font-family: 'Montserrat', sans-serif;
	background-color: #fff;
}

.heading_text {
	border: 1px solid #000;
	border-left: none;
	padding: 20px;
	text-align: left;
	margin-top: 20px;
	max-width: 700px;
	animation: slideInFromLeft 0.5s ease-out forwards; /* Użycie animacji */
}
.heading_text h1 {
	font-family: 'Rubik Doodle Shadow', system-ui;
	font-weight: 400;
	font-style: normal;
	font-size: 80px;
	margin-left: 20px;
}

.contact_details {
	display: flex;
	flex-direction: column;
	margin: 20px auto;
}

.contact_item {
	display: flex;
	align-items: center;
	gap: 20px; /* Dystans między ikoną a tekstem */
	margin-bottom: 20px; /* Odległość między poszczególnymi elementami */
}
.contact_item a {
	color: #000;
	text-decoration: none;
}

.contact_item p {
	margin: 0; /* Usuwa domyślne marginesy dla paragrafów */
}

.contact-wrapper {
	display: flex;
	justify-content: space-between; /* Wyśrodkowanie elementów i zachowanie odstępu między nimi */
	align-items: flex-start; /* Wyrównanie elementów do góry */
	margin: 0 auto;
	max-width: 1200px; /* Maksymalna szerokość kontenera */
	padding: 20px; /* Dodatkowy odstęp wewnątrz kontenera */
}

.contact,
.maps {
	flex: 1; /* Elementy zajmują równą przestrzeń */
	margin: 0 10px; /* Marginesy wewnętrzne dla odstępu */
}

.maps iframe {
	width: 100%; /* Szerokość mapy dostosowana do kontenera */
	max-width: 600px; /* Maksymalna szerokość mapy */
	height: 450px; /* Wysokość mapy */
	border: 0; /* Usunięcie ramki wokół mapy */
}
@keyframes slideInFromLeft {
	0% {
		transform: translateX(-100%); /* Początkowe położenie poza ekranem */
		opacity: 0; /* Element niewidoczny na początku */
	}
	100% {
		transform: translateX(0); /* Końcowe położenie na ekranie */
		opacity: 1; /* Pełna widoczność elementu */
	}
}
@media only screen and (max-width: 1300px) {
	.heading {
		display: flex;
		justify-content: center; /* Wyśrodkowanie poziome */
	}
	.heading_text {
		text-align: center;
		border-left: 1px solid #000;
	}
	.heading_text h1 {
		font-size: 40px;
		margin-left: 0px;
	}
	.contact-wrapper {
		flex-direction: column;
	}
	.contact,
	.maps {
		margin: 0px 30px;
	}
}
