/* Variables */
:root {
	--main-bg-color:  #f0f6fb;
	--alt-bg-color: #ffffff;
	--main-text-color: #111e35;
	--main-color: #0042e8;
	--error-color: #ff4444;
	--main-border-radius: 12px;
	--main-margin-bottom: 2em;
}

/* Global */
@font-face {
	font-family: "Montserrat-Regular";
	src: url("../fonts/Montserrat-Regular.ttf");
}

html, body {
	min-width: 100%;
	min-height: 100%;
	background-color: var(--main-bg-color);
	display: flex;
	justify-content: center;
	align-items: center;
}

p, label, input, textarea, button {
	font-size: 1em;
	font-family: "Montserrat-Regular", sans-serif;
}

p {
	margin: 0;
}

.flex {
	display: flex;
}

.flex-center {
	justify-content: center;
	align-items: center;
}

.flex-column {
	flex-direction: column;
}

.margin-bottom {
	margin-bottom: var(--main-margin-bottom);
}

.hidden {
	display: none;
}

/* Content */
#main {
	min-width: 280px;
	width: 50%;
	min-height: 320px;
	background-color: var(--alt-bg-color);
	border-radius: var(--main-border-radius);
	padding: 2em;
}

#logo-container > img {
	width: 100%;
	max-width: 320px;
	height: auto;
}

textarea {
	width: 80%;
	border-color:  var(--main-text-color);
	border-radius: var(--main-border-radius);
	padding: 1em;
}

label {
	margin-bottom: 0.8em;
	cursor: pointer;
}

input {
	border-color:  var(--main-text-color);
}

input, input[type='submit'], button {
	border-radius: var(--main-border-radius);
	padding: 0.8em 1.2em;
}

input[type='submit'], button {
	background-color: var(--main-color);
	color: var(--alt-bg-color);
	border: none;
	cursor: pointer;
}

input[type='submit']:hover, button:hover {
	background-color: var(--main-text-color);
}

#error-container {
	color: var(--error-color);
}