/* ==========================================================================
   Tarhee — footer.css
   Footer columns, lists, text and bottom bar.
   Loaded only when the theme footer has something to print.
   ========================================================================== */

.site-footer {
	background: var(--ftr-bg, var(--footer-bg));
	color: var(--ftr-text, rgba(255, 255, 255, .78));
	line-height: 1.8;
}
.site-footer a { color: var(--ftr-link, inherit); transition: color .2s; }
.site-footer a:hover,
.site-footer a:focus-visible { color: var(--ftr-hover, var(--gold-light)); }

/* ---------- Columns ---------- */
.site-footer__main { padding-block: 44px 28px; }
.site-footer__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
.site-footer__title {
	position: relative;
	margin: 0 0 16px;
	padding-block-end: 10px;
	font-size: 1rem;
	font-weight: var(--fw-heading);
	line-height: 1.5;
	color: var(--ftr-heading, #fff);
}
.site-footer__title::after {
	content: '';
	position: absolute;
	inset-block-end: 0;
	inset-inline-start: 0;
	width: 34px;
	height: 3px;
	border-radius: 3px;
	background: var(--gold);
}
.site-footer__list { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 0; list-style: none; }
.site-footer__list a { display: inline-block; padding-block: 2px; }
.site-footer__text p + p { margin-top: 8px; }
.site-footer__text ul,
.site-footer__text ol { margin-block: 8px; padding-inline-start: 20px; }

/* ---------- Bottom bar ---------- */
.site-footer__main + .site-footer__base { border-top: 1px solid var(--ftr-border, rgba(255, 255, 255, .1)); }
.site-footer__base { background: var(--ftr-bottom-bg, transparent); color: var(--ftr-bottom-text, inherit); }
.site-footer__base-inner { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 24px; padding-block: 18px; }
.site-footer__base-inner--between { justify-content: space-between; }
.site-footer__base-inner--center { justify-content: center; text-align: center; }
.site-footer__base-inner--start { justify-content: flex-start; }
.site-footer > .site-footer__base:first-child .site-footer__base-inner { padding-block: 28px; }
.site-footer__copy { font-size: .8rem; opacity: .8; }
.site-footer__credit { font-size: .8rem; }

@media (min-width: 640px) {
	.site-footer__grid--n2,
	.site-footer__grid--n3,
	.site-footer__grid--n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
	.site-footer__grid--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.site-footer__grid--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 782px) {
	.site-footer__base-inner { flex-direction: column; align-items: flex-start; }
	.site-footer__base-inner--center { align-items: center; }
	.site-footer__copy,
	.site-footer__credit { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.site-footer a { transition: none; }
}
