/* BG Rein – Footer
   Farben aus dem Child-Theme (style.css, :root) – Fallbacks greifen,
   falls die Variablen einmal fehlen. */
.bgr-footer {
	--bgr-f-bg:      var(--color-accent-green, #005959);  /* Hauptfläche (Petrolgrün) */
	--bgr-f-bar:     #004444;                             /* Bottom-Bar, eine Stufe dunkler */
	--bgr-f-text:    #ffffff;
	--bgr-f-muted:   rgba(255, 255, 255, .75);
	--bgr-f-line:    rgba(255, 255, 255, .12);
	--bgr-f-accent:  #8fe3b5;                             /* helles Grün für Hover, kontraststark */
	--bgr-f-strip:   var(--color-green-mid, #27AE60);     /* Akzentlinie oben */

	background: var(--bgr-f-bg);
	border-top: 4px solid var(--bgr-f-strip);
	color: var(--bgr-f-text);
	font-family: var(--font-serif, Georgia, serif);
	font-size: .95rem;
	line-height: 1.6;
}

.bgr-footer p { margin: 0; }
.bgr-footer a { color: inherit; text-decoration: none; transition: color var(--transition-base, .3s ease); }
.bgr-footer a:hover,
.bgr-footer a:focus-visible { color: var(--bgr-f-accent); }
.bgr-footer a:focus-visible { outline: 2px solid var(--bgr-f-accent); outline-offset: 3px; }

/* ── Hauptbereich ─────────────────────────────── */
.bgr-footer__inner {
	max-width: var(--content-max-width, 1200px);
	margin: 0 auto;
	padding: 48px 16px 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 32px;
}

.bgr-footer__brand { display: flex; align-items: center; gap: 16px; }
.bgr-footer__logo img { max-height: 64px; width: auto; display: block; }
.bgr-footer__name  { font-family: var(--font-display, Georgia, serif); font-weight: 700; font-size: 1.35rem; }
.bgr-footer__claim { font-style: italic; color: var(--bgr-f-muted); }
.bgr-footer__skz   { margin-top: 8px !important; font-family: var(--font-ui, Arial, sans-serif); font-size: .8rem; color: var(--bgr-f-muted); }

.bgr-footer__contact { font-style: normal; display: grid; gap: 12px; text-align: right; }
.bgr-footer__map { display: block; }
.bgr-footer__map:hover { text-decoration: underline; }
.bgr-footer__hours { font-family: var(--font-ui, Arial, sans-serif); font-size: .8rem; color: var(--bgr-f-muted); }

/* ── Bottom-Bar: © links · Rechtliches mittig · Social rechts ── */
.bgr-footer__bar {
	background: var(--bgr-f-bar);
	border-top: 1px solid var(--bgr-f-line);
	font-family: var(--font-ui, Arial, sans-serif);
	font-size: .8rem;
	color: var(--bgr-f-muted);
}
.bgr-footer__bar-inner {
	max-width: var(--content-max-width, 1200px);
	margin: 0 auto;
	padding: 14px 16px;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 12px;
}
.bgr-footer__copy   { justify-self: start; }
.bgr-footer__legal  { justify-self: center; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 24px; }
.bgr-footer__social { justify-self: end; display: inline-flex; opacity: .7; }
.bgr-footer__social:hover,
.bgr-footer__social:focus-visible { opacity: 1; }

/* Instagram-Icon: SVG aus dem Plugin-Ordner, eingefärbt über currentColor */
.bgr-footer__icon {
	display: block;
	width: 18px;
	height: 18px;
	background-color: currentColor;
	-webkit-mask: var(--icon) center / contain no-repeat;
	        mask: var(--icon) center / contain no-repeat;
}
.bgr-footer__icon--instagram { --icon: url("instagram.svg"); }

/* ── Mobil ────────────────────────────────────── */
@media (max-width: 768px) {
	.bgr-footer__inner { flex-direction: column; padding-top: 36px; }
	.bgr-footer__contact { text-align: left; }
	.bgr-footer__bar-inner { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	.bgr-footer__copy,
	.bgr-footer__social { justify-self: center; }
	.bgr-footer__legal  { order: -1; }
}
