@font-face {
	font-family: 'Petrona';
	font-style: italic;
	font-weight: 100 900;
	src: url(/css/fonts/Petrona-Italic.woff2) format('woff2-variations');
}
@font-face {
	font-family: 'Petrona';
	font-style: normal;
	font-weight: 100 900;
	src: url(/css/fonts/Petrona.woff2) format('woff2-variations');
}
@font-face {
	font-family: 'LibreFranklin';
	font-style: italic;
	font-weight: 100 900;
	src: url(/css/fonts/LibreFranklin-Italic.woff2) format('woff2-variations');
}
@font-face {
	font-family: 'LibreFranklin';
	font-style: normal;
	font-weight: 100 900;
	src: url(/css/fonts/LibreFranklin.woff2) format('woff2-variations');
}

html, body {
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	font-size: 15px;
	font-family: 'LibreFranklin', sans-serif;
	color: #333;
	background-color: white;
	line-height: 1.3em;
}
input, select, textarea, button {
	font-family:inherit;
	font-size: inherit;
	background-color: #f5f5f5;
	border: 1px solid #ccc;
}

a, a:visited, .fakeLink {
	color: inherit;
	text-decoration: none;
	display: inline-block;
	border-bottom: 0.1em solid #ccc;
	cursor: pointer;
}
a:hover, .fakeLink:hover {
	border-bottom: 0.1em solid #000;
}

table {
	border-spacing: 0.2em;
}
table td {
	padding: 0.2em;
}

input[type=text], input[type=password] {
	padding: 0.3em;
	margin: 0 0.2em;
	border-radius: 0.2em;
}

button {
	border-radius: 0.2em;
	border: 0.1em outset #f9b107;
	background-color: #bd8605;
	padding: 0.3em 0.7em;
	color: white;
	cursor: pointer;
}
button:disabled {
	color: #333;
	background-color: #7c6c46;
	cursor: not-allowed;
}
button.greenbutton {
	background-color: #879e7f;
	border: 0.1em outset #879e7f;
}
button.redbutton {
	background-color: #ce2029;
	border: 0.1em outset #ce2029;
}
input[type="checkbox"] {
	cursor:pointer;
	appearance: none;
	background-color: white;
	margin: 0.25em;
	width: 1.1em;
	height: 1.1em;
	border: 0.1em solid #333;
	position: relative;
	vertical-align: middle;
}
input[type="checkbox"]:checked {
	background: #bd8605;
}
input[type="checkbox"]:checked::before {
	font-family: 'Font Awesome 5 Pro';
	font-weight: 300;
	content: "\f00c";
	color: #eee;
	position: absolute;
	top: 0em;
	left: 0em;
	font-size: 1em;
}
input[type="checkbox"]:disabled {
	background-color: rgba(64, 64, 64, 0.4);
}

.uploadForm {
	text-align: center;
	margin: 0 auto;
	width: 70%;
	height: 20em;
	box-sizing: border-box;
	position: relative;
	background-color: #fdebbe;
}
.uploadForm:after {
	position: absolute;
	content: "\f319";
	font-family: 'Font Awesome 5 Pro';
	font-weight: 300;
	bottom: 1.5em;
	font-size: 5em;
	left: 0;
	right: 0;
	text-align: center;
	color: #bd8605;
}
.uploadFile {
	text-align: center;
	width: 100%;
	box-sizing: border-box;
	position: absolute;
	top: 0; bottom: 0; left: 0;
	padding-top: 5em;
	background: transparent;
	z-index: 1;
}
.uploadButton {
	position: absolute;
	bottom: 1em;
	left: 0; right: 0;
	margin: auto;
	z-index: 2;
}


.serif {
	font-family: 'Petrona', serif;
}
.lightFont {
	color: #fdebbe;
}
.darkFont {
	color: #879e7f;
}
.highlightFont {
	color: #f9b107;
}

.light {
	background-color: #fdebbe;
	color: #333;
}
.dark {
	background-color: #879e7f;
	color: white;
}
.highlight {
	background-color: #f9b107;
	color: #333;
}

.lightBorder {
	border: 0.1em solid #fdebbe;
}
.darkBorder {
	border: 0.1em solid #879e7f;
}
.highlightBorder {
	border: 0.1em solid #f9b107;
}
.italic {
	font-style: italic;
}
.bold {
	font-weight: bold;
}
.strike {
	text-decoration: line-through;
}

.errorBlock {
	padding: 0.5rem;
	background-color: #ce2029;
	color: white;
	text-align: center;
	margin: 1em;
}
.error {
	color: #ce2029;
}
.ok {
	color: #879e7f;
}

.flex {
	display: flex;
}
.flexwrap {
	display: flex;
	flex-wrap: wrap;
}
.flexvertical {
	display: flex;
	flex-direction: column;
}
.flexstart {
	align-content: flex-start;
}
.flexstretch {
	align-self: stretch;
}
.left {
	float: left;
}
.right {
	float: right;
}
.overauto {
	overflow: auto;
}
.overhide {
	overflow: hidden;
}
.nowrap {
	white-space: nowrap;
}
.height100 {
	box-sizing: border-box;
	height: 100%;
}
.height80 {
	box-sizing: border-box;
	height: 80%;
}
.width100 {
	box-sizing: border-box;
	width: 100%;
}
.width70 {
	box-sizing: border-box;
	width: 70%;
}
.width50 {
	box-sizing: border-box;
	width: 50%;
}
.width1em {
	display: inline-block;
	width: 1em;
}
.width15em {
	display: inline-block;
	width: 1.5em;
}
.width2em {
	display: inline-block;
	width: 2em;
}
.inlineblock {
	display: inline-block;
}
.block {
	display: block;
}
.font80 {
	font-size: 0.8em;
}
.font90 {
	font-size: 0.9em;
}
.font110 {
	font-size: 1.1em;
}
.font120 {
	font-size: 1.2em;
}
.font130 {
	font-size: 1.3em;
}
.font150 {
	font-size: 1.5em;
}
.padding2 {
	padding: 0.2em !important;
}
.padding5 {
	padding: 0.5em !important;
}
.padding10 {
	padding: 1em !important;
}
.paddingleft5 {
	padding-left: 0.5em !important;
}
.paddingright5 {
	padding-right: 0.5em !important;
}
.paddingleft10 {
	padding-left: 1em !important;
}
.paddingright10 {
	padding-right: 1em !important;
}
.margin2 {
	margin: 0.2em !important;
}
.margin5 {
	margin: 0.5em !important;
}
.margin10 {
	margin: 1em !important;
}
.margintop5 {
	margin-top: 0.5em !important;
}
.margintop10 {
	margin-top: 1em !important;
}
.margintop20 {
	margin-top: 2em !important;
}
.marginbottom5 {
	margin-bottom: 0.5em !important;
}
.marginbottom10 {
	margin-bottom: 1em !important;
}
.marginleft5 {
	margin-left: 0.5em !important;
}
.marginleft10 {
	margin-left: 1em !important;
}
.marginright5 {
	margin-right: 0.5em !important;
}
.marginright10 {
	margin-right: 1em !important;
}
.marginauto {
	margin-left: auto !important;
	margin-right: auto !important;
}
.lineheight140 {
	line-height: 1.4em;
}
.aligncenter {
	text-align: center;
}
.alignleft {
	text-align: left;
}
.alignright {
	text-align: right;
}
.aligntop {
	vertical-align: top;
}
.alignmiddle {
	vertical-align: middle;
}
.alignbottom {
	vertical-align: bottom;
}
.pointer {
	cursor: pointer;
}
.absolute {
	position: absolute;
}
.relative {
	position: relative;
}
.box {
	box-sizing: border-box;
}