/**
 * Footer shell. Columns exist only when that block has content.
 */

.mavitamine .site-footer {
	background: var(--mavi-color-footer);
	color: var(--mavi-color-footer-text);
	padding: 0;
}

.mavitamine .site-footer > .col-full {
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.mavi-footer {
	padding-top: var(--mavi-space-2xl);
}

.mavi-footer__grid {
	display: grid;
	gap: var(--mavi-space-xl);
	grid-template-columns: 1fr;
}

.mavi-footer__logo-link {
	display: inline-flex;
	max-width: min(14rem, 72vw);
}

.mavi-footer__logo-link:focus-visible {
	outline: 2px solid var(--mavi-color-footer-text);
	outline-offset: 3px;
}

.mavi-footer__logo {
	display: block;
	height: auto;
	max-height: 2.75rem;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

.mavi-footer__logo-link:not(:last-child),
.mavi-footer__name:not(:last-child) {
	margin-bottom: var(--mavi-space-sm);
}

.mavi-footer__name {
	font-size: var(--mavi-font-size-h4);
	font-weight: var(--mavi-font-weight-bold);
	margin: 0;
}

.mavi-footer__note,
.mavi-footer__list,
.mavi-footer__legal p {
	color: var(--mavi-color-footer-muted);
	margin: 0;
}

.mavi-footer__heading {
	color: var(--mavi-color-footer-text);
	font-size: var(--mavi-font-size-small);
	font-weight: var(--mavi-font-weight-semibold);
	letter-spacing: 0.04em;
	margin: 0 0 var(--mavi-space-sm);
	text-transform: uppercase;
}

.mavi-footer__list {
	display: grid;
	gap: var(--mavi-space-sm);
	list-style: none;
	padding: 0;
}

.mavi-footer :focus-visible {
	outline-color: var(--mavi-color-footer-text);
}

.mavi-footer__legal {
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	margin-top: var(--mavi-space-2xl);
	padding-block: var(--mavi-space-lg);
}

.mavi-footer__legal-inner {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mavi-space-sm) var(--mavi-space-lg);
	justify-content: space-between;
}

@media (min-width: 48rem) {
	.mavi-footer__logo-link {
		max-width: 16rem;
	}

	.mavi-footer__logo {
		max-height: 3.25rem;
	}

	.mavi-footer__grid:has(:nth-child(2)) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 64rem) {
	.mavi-footer__grid:has(:nth-child(2)) {
		grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	}

	.mavi-footer__grid:has(:nth-child(5)) {
		grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr));
	}
}
