/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Hanlding Updates
-----------------------------------------------------------------*/

/* Header logo — readable but compact in the nav bar */
.brand-logo {
	display: block;
	width: auto;
	max-width: min(440px, 78vw);
	height: 112px;
	flex-shrink: 0;
	object-fit: contain;
}

@media (max-width: 575.98px) {
	.brand-logo {
		max-width: min(280px, 70vw);
		height: 88px;
	}
}

/* Keep hero CTA from jumping when typed text wraps */
.hero-typed-title {
	min-height: 2.8em;
}

@media (max-width: 991.98px) {
	.hero-typed-title {
		min-height: 3.2em;
	}
}

/* Slight blur on hero background image */
#home .hero-bg {
	filter: blur(2px);
	transform: scale(1.03);
}

/* Service list: same image as detail page, small inside theme icon box (70×70) */
#services .featured-box.style-3 .featured-box-icon.service-thumb {
	padding: 0;
	overflow: hidden;
	line-height: 0;
}

#services .featured-box.style-3 .featured-box-icon.service-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Termin page: icon blocks beside phone / hours */
.appointment-aside-icon {
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	border-radius: 0.35rem;
	box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.06);
	font-size: 1.15rem;
}

