/* ==================================================

	Error page

	@related colors

================================================== */

.error-page {
	/* @match svh_centering - svh so centering ignores iOS Safari's post-paint toolbar settle; vh line is the fallback where svh is unsupported */
	min-height: 100vh;
	min-height: 100svh;

	background-color: var(--cream-warm);
	background-image: url("../../images/deel-flagwave.gif");
	/* @match flagwave_tile_size - flagwave tile width, same on both breakpoints */
	background-size: 560px auto;
	background-repeat: repeat;
}

@media ( prefers-reduced-motion: reduce ) {

	.error-page {
		background-image: url("../../images/deel-flagwave-still.png");
	}

}

.is-motion-paused .error-page {
	background-image: url("../../images/deel-flagwave-still.png");
}

.error {
	display: flex;
	align-items: center;
	justify-content: center;

	/* @match svh_centering - svh so centering ignores iOS Safari's post-paint toolbar settle; vh line is the fallback where svh is unsupported */
	min-height: 100vh;
	min-height: 100svh;
	padding: 48px 18px;
}

.error__card {
	width: 100%;
	max-width: 481px;
	padding: 32px 32px 40px;

	border-radius: 16px;
	background-color: var(--deel-purple);

	color: var(--cream-warm);
	text-align: center;
}

.error__figure {
	display: block;

	width: 116px;
	height: auto;
	margin: 0 auto 4px;
}

.error__eyebrow {
	margin-bottom: 12px;

	font-size: 15px;
	font-weight: var(--font-weight-bold);
	text-transform: uppercase;
}

.error__title {
	font-size: 28px;
	font-weight: var(--font-weight-bold);
	line-height: 1.1;
}

.error__desc {
	margin-top: 10px;

	font-size: 13px;
	font-weight: var(--font-weight-medium);
	line-height: 1.4;
}

.error__actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;

	margin-top: 24px;
}

.error__link {
	display: inline-block;

	padding: 11px 26px;

	border-radius: 999px;
	background-color: var(--cream-warm);

	color: var(--deel-purple);
	font-size: 13px;
	font-weight: var(--font-weight-bold);
}

.error__link:hover {
	opacity: 0.85;
}

.error__link--plain {
	padding: 4px 10px;

	background-color: transparent;

	color: var(--cream-warm);
	font-weight: var(--font-weight-regular);
	text-decoration: underline;
}

.error__link--plain:hover {
	opacity: 1;

	color: var(--deel-purple-light);
}

.error__link:focus-visible {
	outline-color: var(--cream-warm);
}

@media ( max-width: 720px ) {

	.error__card {
		padding: 28px 24px 32px;
	}

	.error__title {
		font-size: 25px;
	}

}
