/**
 * Lila Weaver Bohemia footer.
 */
.lwb-footer {
	--footer-blue: #0d6690;
	--footer-grey: #9fa2a6;
	background: #fff;
	border-top: 1px solid #eceff1;
	color: var(--footer-grey);
}

.lwb-footer__inner {
	width: min(100% - 40px, 1040px);
	margin-inline: auto;
	padding: 26px 0 16px;
	text-align: center;
}

.lwb-footer__brand {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.lwb-footer__brand img {
	display: block;
	width: 215px;
	height: 154px;
	object-fit: contain;
}

.lwb-footer__brand span {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	display: flex;
	height: 32px;
	align-items: flex-end;
	justify-content: center;
	background: #fff;
	border-top: 2px solid var(--footer-grey);
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1.15;
	letter-spacing: .42em;
	text-indent: .42em;
	text-transform: uppercase;
	color: var(--footer-grey);
}

.lwb-footer__tagline {
	margin: 8px 0 32px !important;
	font-family: var(--brand-font-handwriting) !important;
	font-size: clamp(2rem, 4.1vw, 3rem);
	font-weight: 400 !important;
	line-height: 1.05;
	color: var(--footer-blue) !important;
}

.lwb-footer__columns {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(32px, 7vw, 90px);
	align-items: stretch;
}

.lwb-footer__column {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: center;
}

.lwb-footer__column h2 {
	margin: 0 0 2px;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.25;
	text-transform: uppercase;
	color: var(--footer-blue) !important;
}

.lwb-footer__column nav ul,
.lwb-footer__socials {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lwb-footer__column nav a {
	display: inline-block;
	padding: 1px 4px;
	font-size: 1.18rem;
	line-height: 1.3;
	text-transform: uppercase;
	color: var(--footer-grey);
}

.lwb-footer a {
	text-decoration: none;
}

.lwb-footer a:hover,
.lwb-footer a:focus-visible {
	color: var(--footer-blue);
}

.lwb-footer a:focus-visible {
	outline: 2px solid var(--footer-blue);
	outline-offset: 4px;
}

.lwb-footer__socials {
	display: flex;
	gap: 7px;
	justify-content: center;
	margin-top: 7px;
}

.lwb-footer__socials a {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border: 1.8px solid var(--footer-blue);
	border-radius: 50%;
	color: var(--footer-blue);
}

.lwb-footer__socials li:last-child a {
	border-radius: 10px;
}

.lwb-footer__socials svg {
	width: 25px;
	height: 25px;
	fill: currentColor;
}

.lwb-footer__partner {
	display: flex;
	width: 150px;
	height: 112px;
	margin-top: auto;
	padding-top: 27px;
	align-items: flex-end;
	justify-content: center;
}

.lwb-footer__partner img {
	display: block;
	max-width: 100%;
	max-height: 97px;
	object-fit: contain;
}

.lwb-footer__partner--boho span {
	display: grid;
	width: 97px;
	height: 97px;
	place-items: center;
	background: #234c7f;
	font-size: .88rem;
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: #fff;
}

.lwb-footer__partner--sacred img {
	width: 150px;
	height: auto;
}

.lwb-footer__partner--jaiteg img {
	width: 94px;
	height: 94px;
}

.lwb-footer__copyright {
	margin: 19px 0 0 !important;
	font-size: .82rem;
	line-height: 1.4;
	text-transform: uppercase;
	color: var(--footer-grey) !important;
}

@media (max-width: 767px) {
	.lwb-footer__inner {
		width: min(100% - 32px, 520px);
		padding-top: 24px;
	}

	.lwb-footer__brand img {
		width: 190px;
		height: 136px;
	}

	.lwb-footer__tagline {
		margin-bottom: 30px !important;
		font-size: 2.25rem;
	}

	.lwb-footer__columns {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.lwb-footer__partner {
		height: auto;
		margin-top: 0;
		padding-top: 18px;
	}

	.lwb-footer__copyright {
		margin-top: 34px !important;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.lwb-footer a {
		transition: color .18s ease, border-color .18s ease, transform .18s ease;
	}

	.lwb-footer__socials a:hover {
		transform: translateY(-2px);
	}
}
