/* Öffnungszeiten & Kontakt */

.hz-hours-contact { background: var(--hz-sand); }
.hz-hc-head { text-align: center; margin-bottom: 3rem; }
.hz-hc-head .hz-sec-title { margin: 0 auto; }

.hz-hc-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.hz-hc-hours {
	background: var(--hz-c3);
	border-radius: var(--hz-radius-lg);
	padding: var(--hz-card-pad);
	color: var(--hz-white);
	position: relative; overflow: hidden;
}
.hz-hc-hours::before {
	content: ''; position: absolute; top: 0; right: 0;
	width: 180px; height: 180px;
	background: radial-gradient(circle, rgba(134, 187, 216, .1) 0%, transparent 70%);
	pointer-events: none;
}
.hz-hc-hours h3 { color: var(--hz-white); font-size: 1.4rem; margin-bottom: 1.4rem; }

.hz-hc-row {
	display: flex; justify-content: space-between;
	padding: .65rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, .07);
	font-size: .95rem;
}
.hz-hc-row:last-of-type { border-bottom: none; }
.hz-hc-row .hz-day  { font-weight: 500; }
.hz-hc-row .hz-time { font-weight: 300; opacity: .8; }

.hz-hc-akut {
	background: var(--hz-green);
	border-radius: var(--hz-radius);
	padding: 1rem 1.2rem;
	margin-bottom: 1.3rem;
	display: flex; align-items: center; gap: .9rem;
	position: relative; z-index: 1;
}
.hz-hc-akut-icon {
	width: 38px; height: 38px; border-radius: var(--hz-radius-sm);
	background: rgba(255, 255, 255, .2);
	display: flex; align-items: center; justify-content: center;
	flex-shrink: 0; color: var(--hz-white);
}
.hz-hc-akut-icon .bx { font-size: var(--hz-icon-md); }
.hz-hc-akut-text { font-size: .92rem; line-height: 1.35; color: var(--hz-white); }
.hz-hc-akut-text .hz-label {
	display: block; font-weight: 700; color: var(--hz-white);
	font-size: .72rem; letter-spacing: .08em; text-transform: uppercase;
	margin-bottom: .1rem; opacity: .85;
}
.hz-hc-akut-text strong { font-weight: 700; color: var(--hz-white); }

.hz-hc-contact {
	background: var(--hz-white);
	border-radius: var(--hz-radius-lg);
	padding: var(--hz-card-pad);
	height: 100%;
	border: 1px solid var(--hz-border);
}
.hz-hc-contact h3 { font-size: 1.4rem; margin-bottom: 1.4rem; color: var(--hz-c3); }

.hz-hc-item {
	display: flex; gap: 1rem; align-items: flex-start;
	margin-bottom: 1.4rem;
}
.hz-hc-item:last-child { margin-bottom: 0; }

.hz-hc-icon {
	width: 42px; height: 42px; border-radius: var(--hz-radius);
	display: flex; align-items: center; justify-content: center;
	flex-shrink: 0;
	background: var(--hz-c5-bg); color: var(--hz-c1);
}
.hz-hc-icon .bx { font-size: var(--hz-icon-md); }

.hz-hc-item h4 {
	font-size: .72rem; font-weight: 600; letter-spacing: .06em;
	text-transform: uppercase; color: var(--hz-muted); margin-bottom: .1rem;
}
.hz-hc-item p { margin: 0; font-weight: 500; color: var(--hz-c3); font-size: 1rem; }
.hz-hc-item a { color: var(--hz-c1); font-weight: 500; }

.hz-hc-map {
	border-radius: var(--hz-radius-lg);
	overflow: hidden;
	box-shadow: var(--hz-shadow-md);
	min-height: 360px;
	background: var(--hz-c5-bg);
	position: relative;
}
.hz-hc-map iframe,
.hz-hc-map > * {
	display: block;
	width: 100%;
	height: 360px;
	border: 0;
}
/* Borlabs-Cookie-Placeholder: an unseren Container angleichen */
.hz-hc-map .BorlabsCookie ._brlbs-content-blocker,
.hz-hc-map .brlbs-cookie-content-blocker {
	border-radius: var(--hz-radius-lg);
	background: var(--hz-c5-bg);
	color: var(--hz-c3);
	padding: 2rem 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 360px;
}

@media (max-width: 991px) {
	.hz-hc-grid { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
	.hz-hc-hours, .hz-hc-contact { padding: 1.8rem; }
}
