html {
	/* LfULG color*/
	--lumo-primary-color: hsl(120, 42%, 36%);
	--lumo-primary-color-50pct: hsla(120, 42%, 36%, 0.5);
	--lumo-primary-color-10pct: hsla(120, 42%, 36%, 0.1);
	--lumo-primary-color-5pct: hsla(120, 42%, 36%, 0.05);

	--app-warning-color: #FF9900;

	--lumo-border-radius: 3px;
}

body {
	background-color: #EEE;
}

.vertical-divider {
	border-left: 1px solid var(--lumo-shade-30pct);
	margin: var(--lumo-space-m) 0;
}

.login {
	width: auto;
}

.form-wrapper {
	display: flex;
	align-items: stretch;
}

.header-wrapper {
	min-width: 40rem;
	min-height: auto;
	box-shadow: var(--lumo-box-shadow-xs);
	flex-direction: row;
	justify-content: space-between;
	padding: 0;
}

.logo-wrapper {
	width: 20rem;
	height: 45px;
	padding: var(--lumo-space-m) 0 var(--lumo-space-m) var(--lumo-space-m);

	align-items: start;
	background-color: var(--lumo-primary-color);
	background-image: url(../img/bg-wave.svg), linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(0,0,0,0.1) 100%);
	background-repeat: no-repeat;
	background-position-x: 40%;
	background-position-y: -3px;
	background-size: auto;
}

.header-header {
	flex: 1;
	display: flex;
	flex-direction: row-reverse;
	box-shadow: none;
	min-height: auto;
	padding: var(--lumo-space-m);
	background-color: var(--lumo-primary-color);
	background-image: url(../img/bg-wave.svg), linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(0,0,0,0.1) 100%);
	background-repeat: no-repeat;
	background-position-x: 100%;
	background-position-y: -3px;
	background-size: auto;
}

.header-wrapper :where(h1, h2, span) {
	font-size: var(--lumo-font-size-xxl);
	line-height: var(--lumo-font-size-xxl);
	font-weight: 300;
	margin-top: 0;
	font-family: var(--lumo-font-family);
	align-self: center;
	color: var(--lumo-primary-contrast-color);
}

.form-card {
	width: 20rem;
	align-self: stretch;
	flex: 1;
	padding: calc(var(--lumo-space-m) + var(--lumo-space-xs));
}

.social-card {
	width: 20rem;
	padding: calc(var(--lumo-space-m) + var(--lumo-space-xs));
}

.info-card {
	width: 20rem;
	padding: calc(var(--lumo-space-m) + var(--lumo-space-xs));
}

.info-card h2 {
	margin-block-end: 0;
}

.info-icon {
	width: 24px;
	height: 24px;
	padding-right: 5px;
	vertical-align: top;
}

.state-image {
	object-fit: contain;
	width: 180px;
	padding-top: 5px;
}

.social-list {
	padding-top: var(--lumo-space-m);
	padding-inline-start: 0;
	line-height: var(--lumo-button-size);
}

.form-title, .social-title {
	margin-block-start: var(--lumo-space-m);
	font-size: var(--lumo-font-size-xl);
	line-height: var(--lumo-font-size-xl);
	font-weight: normal;
}

.info-wrapper {
	display: flex;
	box-sizing: border-box;
	justify-content: space-between;
	flex-direction: row;
	padding-top: var(--lumo-space-l);
}

.info-wrapper * a {
	font-family: var(--lumo-font-family);
	font-size: var(--lumo-font-size-m);
	font-weight: 500;
	color: var(--lumo-primary-color);
	text-decoration: none;
}

.terms-wrapper {
	display: flex;
	box-sizing: border-box;
	justify-content: normal;
	flex-direction: row;
	gap: 0.2em;
	padding-top: var(--lumo-space-m);
}

.terms-wrapper * a {
	font-family: var(--lumo-font-family);
	font-size: var(--lumo-font-size-m);
	font-weight: 500;
	color: var(--lumo-primary-color);
	text-decoration: none;
}

.form-group {
	padding-top: calc(var(--lumo-space-m) + var(--lumo-space-xs));
}

.info-text-group {
	padding-top: calc(var(--lumo-space-m) + var(--lumo-space-xs));
}

.info-text-group > a {
	font-family: var(--lumo-font-family);
	font-size: var(--lumo-font-size-m);
	font-weight: 500;
	color: var(--lumo-primary-color);
}

.button input[type='submit'] {
	width: 100%;
}

.social-button {
	height: var(--lumo-button-size);
	margin-bottom: var(--lumo-space-m);
	text-decoration: none;
	background-color: var(--lumo-primary-color-10pct);
}

.social-button > span {
	font-family: var(--lumo-font-family);
	font-size: var(--lumo-font-size-m);
	font-weight: 500;
	color: var(--lumo-primary-color);
	display: inline-flex;
	align-items: center;
}

.subtitle {
	padding-top: 0.5em;
}

.required {
	color: var(--lumo-primary-color);
}
