.kontaktdaten .e-con-inner {
	gap: 0.325em 0.325em;
	padding-top:2em;
	flex-wrap: nowrap !important;
}
.kontaktdaten .e-con-inner > .e-child {
	padding:0
}
.kontaktdaten .e-con-inner > .e-child .elementor-shortcode {
	display: flex;
}
.kontaktdaten .e-con-inner > .e-child .elementor-shortcode:has(.part-address) {
	justify-content: end;
}
.kontaktdaten .address {
	display: block;
}
.kontaktdaten .address:has(.part-address)::before {
	content:'\e822';
	font-family: "web-icon-dk";
	font-weight: normal;
	font-size: 4.125em;
	position: absolute;
	margin-left: -1.5em;
	margin-top: -0.0625em;
	color: rgba(var(--lightred), 0.8);
}
.kontaktdaten .part-address,
.kontaktdaten .part-contact :where(.telefon, .email){
	display: inline-block;
	background: rgba(var(--white));
	color: rgb(var(--darkred));
	box-shadow: 0 0 0.5em rgba(var(--darkred),0.05);
	padding: 0.5em 2em;
	align-self: stretch;
}
.kontaktdaten .part-address {
	padding: 0.5em 2.5em;
}
.kontaktdaten .part-contact .email{
	margin-top: 0.325em;	
}
.kontaktdaten .address .city ~* {
	display: none
}
.kontaktdaten a {
	color: currentColor !important;
}
.kontaktdaten a:not(:hover, :focus) {
	text-decoration: none
}
.kontaktdaten .address .label {
	display: inline-block;
	min-width: 4em;
	font-size:0.9em;
	font-weight: 600;
}

@media(max-width: 1024px){
	.mega h2 {
		font-size: 1.75em
	}
}
@media(max-width: 650px){
	.kontaktdaten .e-con-inner {
		flex-wrap: wrap !important;
		padding-left: 7em
	}
	.kontaktdaten .e-con-inner > .e-child .elementor-shortcode:has(.part-address) {
		justify-content: start;
	}
	.kontaktdaten .part-address,
	.kontaktdaten .part-contact :where(.telefon, .email){
		display: inline-block;
		background: rgba(var(--white));
		padding: 0.5em 5vw;
		align-self: stretch;
	}
	.kontaktdaten .address:has(.part-address)::before {
		opacity: 0.75;
	}
}