/* =========================================================== */
/* ALICE Footer — Portable BEM Component                       */
/* Assumes palanquin-- font utility classes exist on host site  */
/* =========================================================== */

/* Block
   =========================================================== */
.alice-footer {
	position: relative;
	width: 100%;
	min-width: 980px;
	height: auto;
	margin: 0;
	padding: 3.2em 0;
	overflow: hidden;
	text-align: center;
	z-index: 200;
	background-color: #f0f0f0;
	font-size: 0.9vw;
}

/* Content grid
   =========================================================== */
.alice-footer__content {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 5em;
	width: 82%;
	max-width: 1600px;
	height: auto;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}

/* Column
   =========================================================== */
.alice-footer__column {
	position: relative;
	margin: 0;
	padding: 0;
	overflow: hidden;
	text-align: left;
}

/* Typography
   =========================================================== */
.alice-footer p {
	font-size: 1.25em;
	color: #000000;
	margin-bottom: 0.8em;
	line-height: 1.5;
}

.alice-footer__heading {
	font-size: 2.5em;
}

/* Logos
   =========================================================== */
.alice-footer__logos {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1em;
	margin: 0 0 1em 0;
}

.alice-footer__logo {
	display: block;
	position: relative;
	height: 4.2em;
	width: auto;
	margin: 0;
}

/* Links row
   =========================================================== */
.alice-footer__links {
	font-size: 1.25em;
	font-family: 'Palanquin', sans-serif;
}

.alice-footer__links a {
	display: inline-block;
	color: #0044b5;
	text-underline-offset: 0.1em;
}

.alice-footer__links-separator::before {
	display: inline-block;
	content: '|';
	padding: 0 0.8em;
	font-size: 1em;
}

/* Copyright
   =========================================================== */
.alice-footer__copyright {
	margin-top: 2.8em;
	font-size: 1em;
}

.alice-footer__copyright--mobile {
	display: none;
}

/* Social icons
   =========================================================== */
.alice-footer__social {
	position: relative;
	display: flex;
	flex-flow: nowrap;
	justify-content: flex-start;
	align-items: center;
	height: auto;
	margin: 0.8em 0 1.6em 0;
	padding: 0;
	overflow: hidden;
}

.alice-footer__social a {
	width: 2em;
	flex-shrink: 1;
	margin-right: 0.8em;
}

.alice-footer__social a:first-of-type {
	margin-right: 0.4em;
}

.alice-footer__social img {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
}

/* CTA button
   =========================================================== */
.alice-footer__cta {
	display: inline-block;
	position: relative;
	height: auto;
	margin-top: 0.5em;
	padding: 0 1.8em 0.12em 1.8em;
	overflow: hidden;
	font-family: 'Palanquin', sans-serif;
	font-weight: 700;
	font-size: 1.375em;
	line-height: 1.6;
	letter-spacing: normal;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: 0.3s;
	border-radius: 9999px;
	border: 1px solid #0044b5;
	background-color: #0044b5;
	color: #ffffff;
}

.alice-footer__cta:hover {
	background-color: #ffffff;
	color: #0044b5;
	border: 1px solid #0044b5;
}

/* Arrow to top
   =========================================================== */
.alice-footer__arrow-top {
	display: block;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 2500;
	fill: #0044b5;
	opacity: 0;
	width: 36px;
	height: 36px;
	cursor: pointer;
}

/* =========================================================== */
/* Mobile / Tablet  (max-width: 1024px)                        */
/* =========================================================== */
@media screen and (max-width: 1024px) {
	.alice-footer {
		min-width: inherit;
		font-size: 2vw;
	}

	.alice-footer__content {
		display: block;
		width: 100%;
	}

	.alice-footer__logos {
		gap: 2em;
		justify-content: center;
	}

	.alice-footer__logo {
		height: 5.5em;
	}

	.alice-footer__column {
		width: 100%;
		text-align: center;
		padding: 0 4em 4em 4em;
	}

	.alice-footer p {
		font-size: 1.5em;
	}

	.alice-footer__copyright--desktop {
		display: none;
	}

	.alice-footer__copyright--mobile {
		display: block;
		font-size: 1em;
	}

	.alice-footer__cta {
		font-size: 2em;
	}

	.alice-footer__social {
		width: 100%;
		justify-content: center;
		margin: 0 auto;
	}

	.alice-footer__social a {
		width: 2.5em;
		margin: 1.5em 1em;
	}
}
