.site-footer {
	background-color: var(--color-background-inverse);
	color: var(--color-text-inverse);
	padding-block: var(--space-2xl) var(--space-l);
}

.site-footer a {
	color: var(--color-text-inverse);
}

.site-footer__grid {
	display: grid;
	gap: var(--space-l);
	grid-template-columns: 1fr;
	padding-bottom: var(--space-l);
	border-bottom: var(--border-width-s) solid rgba(255, 255, 255, 0.15);
}

@media (min-width: 48rem) {
	.site-footer__grid {
		grid-template-columns: 1.4fr 1fr 1fr;
		gap: var(--space-xl);
	}
}

.site-footer__brand {
	display: flex;
	flex-direction: column;
	gap: var(--space-s);
}

.site-logo--footer .site-logo__image {
	width: 10vw;
	max-height: none;
	height: auto;
}

@media (max-width: 47.9375rem) {
	.site-logo--footer .site-logo__image {
		width: 35vw;
	}
}

.site-footer__text {
	color: rgba(255, 255, 255, 0.75);
	max-width: 32ch;
}

.site-footer__socials {
	display: flex;
	gap: var(--space-xs);
	list-style: none;
	padding: 0;
	margin-top: var(--space-2xs);
}

.site-footer__socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: var(--radius-full);
	background-color: rgba(255, 255, 255, 0.1);
	transition: background-color var(--transition-fast);
}

.site-footer__socials a:hover {
	background-color: var(--color-accent);
}

.site-footer__socials svg {
	width: 1.05rem;
	height: 1.05rem;
	fill: currentColor;
}

.site-footer__heading {
	display: block;
	font-family: var(--font-heading);
	font-weight: var(--font-weight-semibold);
	font-size: var(--text-small);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.6);
	margin-bottom: var(--space-s);
}

.site-footer__nav-list {
	list-style: none;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
}

.site-footer__nav-list a {
	text-decoration: none;
	color: rgba(255, 255, 255, 0.85);
}
.site-footer__nav-list a:hover {
	color: var(--color-text-inverse);
	text-decoration: underline;
}

.site-footer__contact address {
	font-style: normal;
	display: flex;
	flex-direction: column;
	gap: var(--space-2xs);
	color: rgba(255, 255, 255, 0.85);
}

.site-footer__contact a {
	text-decoration: none;
}
.site-footer__contact a:hover {
	text-decoration: underline;
}

.site-footer__bottom {
	padding-top: var(--space-m);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-s);
}

.site-footer__copyright {
	font-size: var(--text-caption);
	color: rgba(255, 255, 255, 0.55);
}

.site-footer__legal {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-s);
	padding: 0;
}

.site-footer__legal-credit {
	margin-inline-start: var(--space-l);
}

.site-footer__legal a {
	font-size: var(--text-caption);
	color: rgba(255, 255, 255, 0.55);
	text-decoration: none;
}
.site-footer__legal a:hover {
	color: var(--color-text-inverse);
	text-decoration: underline;
}
