﻿html,
body {
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	background-color:#ffffff;
	box-sizing:border-box;
}

html {
	font-size:10pt;
	font-family:Arial, Tahoma, Verdana;
}

@media all and (min-width:801px) { /* Desktop */
	.mobile-only {
		display:none !important;
	}
}

@media all and (max-width:800px) { /* Mobile */
	html.mobile {
		font-size:13pt;
	}

	.desktop-only {
		display:none !important;
	}
}

/* Header */

header {
	position:fixed;
	top:0;
	left:0;
	right:0;

	display:block;
	margin:0;
	padding:0 1rem 0 1rem;
	color:#ffffff;
	vertical-align:middle;
	background-color:#25a125;
	z-index:10000;
}

header h1 {
	font-family:'Segoe UI',Tahoma,Arial;
	font-size:2rem;
	font-weight:300;
	font-style:italic;
	margin:0;
	padding:0;
	line-height:4rem;
}

header h1 a {
	color:#ffffff;
	text-decoration:none;
}

header h1 a:hover,
header h1 a:active {
	text-decoration:underline;
}

header > input[type=radio] {
	display:none;
}

@media all and (max-width:800px) { /* Mobile */
	header h1 {
		text-align:center;
	}
}

/* Wrapper */

div.wrapper {
	min-height:100vh;
	padding-top:4rem;
	padding-bottom:7rem;
	box-sizing:border-box;
}

/* Footer */

footer {
	position:relative;
	display:block;
	height:5rem;
	margin-top:-5rem;
	padding:15px 20px 0 20px;
	font-size:0.85rem;
	overflow:hidden;
	box-sizing:border-box;
}

footer p {
	margin:0 0 0.25rem 0;
}

footer a {
	color:#0066cc;
}

/* Panel: Buttons */

.panel-buttons label {
	display:block;
	width:3rem;
	height:3rem;
	line-height:3rem;
	text-align:center;
	vertical-align:middle;
	cursor:pointer;
}

input[type=radio]:not(:checked) + .panel-buttons label:last-child {
	display:none;
}

input[type=radio]:checked + .panel-buttons label:first-child {
	display:none;
}

/* Panel: Navigation */

#panel-navigation-buttons {
	position:absolute;
	font-size:2rem;
	top:0.5rem;
	left:0.5rem;
}

#panel-navigation-mask {
	display:none;
	position:fixed;
	top:4rem;
	right:0;
	bottom:0;
	left:0;
	background-color:#ffffff;
	opacity:0;
	z-index:1000;
}

@media all and (min-width:801px) { /* Desktop */
	#panel-navigation-buttons {
		display:none;
	}

	#panel-navigation-content {
		position:absolute;
		top:0;
		right:1rem;
		height:4rem;
		line-height:4rem;
	}

	#panel-navigation-content nav {
		display:inline-block;
	}

	#panel-navigation-content nav ul li {
		display:inline-block;
		margin-right:1rem;
	}

	#panel-navigation-content nav ul li a {
		color:#ffffff;
		text-decoration:none;
	}

	#panel-navigation-content nav ul li a:hover {
		text-decoration:underline;
	}

	#panel-navigation-content nav ul li a i.la-home {
		font-size:1.25rem;
	}

	#panel-navigation-content > div {
		display:inline-block;
	}
}

@media all and (max-width:800px) { /* Mobile */
	#panel-navigation-content nav {
		display:block;
		position:fixed;
		top:4rem;
		bottom:0;
		left:0;
		width:16.85rem;
		margin:0 0 0 -16.85rem;
		padding:1.125rem 0 1.125rem 0;
		color:#676767;
		background-color:#f5f4ef;
		border-right:1px solid #d4d4d4;
		box-sizing:border-box;
		overflow:auto;
		overflow-x:hidden;
		z-index:1000;
	}

	#panel-navigation-content nav ul li {
		height:2.65rem;
		line-height:2.65rem;
		font-size:1.05rem;
	}

	#panel-navigation-content nav ul li a {
		display:block;
		color:#676767;
		padding:0 0.75rem 0 1.25rem;
		text-decoration:none;
	}

	#panel-navigation-content nav ul li.selected {
		border-left:0.3rem solid #489be0;
	}

	#panel-navigation-content nav ul li.selected > a {
		color:#2b89d9;
		padding-left:0.95rem;
		font-weight:bold;
	}

	#panel-navigation-content nav ul li a:hover,
	#panel-navigation-content nav ul li a:active {
		color:#65B0F5;
	}

	#panel-navigation-content > div {
		position:absolute;
		top:0;
		right:1rem;
		height:4rem;
		line-height:4rem;
	}
}

#panel-navigation-content nav ul {
	list-style:none;
	margin:0;
	padding:0;
}

/* Panel: Navigation (Buttons) */

#panel-navigation-content > div form {
	display:inline-block;
	margin:0;
	padding:0;
}

#panel-navigation-content > div .button {
	display:inline-block;
	color:#ffffff;
	margin:0;
	padding:0 12px 0 12px;
	line-height:22px;
	font-family:'Segoe UI', Tahoma, Arial;
	letter-spacing:normal;
	text-decoration:none;
	text-transform:uppercase;
	background-color:transparent;
	border:1.25px solid #ffffff;
	box-sizing:border-box;
	-webkit-border-radius:12px;
	-moz-border-radius:12px;
	border-radius:12px;
	outline:none;
	cursor:pointer;
}

#panel-navigation-content > div .button:hover {
	text-decoration:underline;
}

/* Panels */

header input[type=radio]:not(:checked).panel-selector + label i.la:last-child {
	display:none;
}

header input[type=radio]:checked.panel-selector + label i.la:first-child {
	display:none;
}

@media all and (max-width:800px) {
	header input[type=radio]:checked.panel-selector + div + #panel-navigation-mask {
		display:block;
		opacity:0.20;
		transition:opacity 0.20s;
		transition-timing-function:ease-out;
	}

	header input[type=radio]:checked.panel-selector + div + label + #panel-navigation-content nav {
		margin-left:0;
		-webkit-transition:margin-left 0.20s;
		transition:margin-left 0.20s;
		transition-timing-function:ease-out;
	}
}

/* Main */

main {
	display:block;
	/*position:absolute;
	top:4rem;
	right:0;
	bottom:4rem;
	left:0;*/
	padding:0.75rem 1.5rem 1.5rem 1.5rem;
	overflow:auto;
}

main a {
	color:#0066cc;
}

main h1,
main h2,
main h3,
main h4,
main h5,
main h6 {
	color:#676767;
	font-family:'Segoe UI',Tahoma,Arial;
	font-weight:400;
}

main h2 {
	margin-top:0;
    font-size:1.75rem;
}

/* Responsive Form */

.responsive div.row {
	margin-bottom:10px;
}

.responsive div.row:last-child {
	margin-bottom:0;
}

.responsive div.caption {
	font-size:1.125rem;
	margin:0 0 3px 0;
}

.responsive input[type=text],
.responsive input[type=password],
.responsive input[type=email],
.responsive input[type=tel],
.responsive input[type=date],
.responsive input[type=number],
.responsive input[type=file] {
	width:100%;
	height:26px;
	text-indent:0.2rem;
	font-size:1.125rem;
	height:2rem;
	line-height:2rem;
	color:#000000;
	background-color:#ffffff;
	box-sizing:border-box;
	border:1px solid #a8a8a8;
	border-radius:0;
	outline:none;
}

.responsive button {
	font-size:1.125rem;
	height:2rem;
	line-height:2rem;
	padding:0 1rem 0 1rem;
}

.responsive input:-webkit-autofill,
.responsive input:-webkit-autofill:hover, 
.responsive input:-webkit-autofill:focus {
	border:1px solid #a8a8a8;
	-webkit-text-fill-color:#000000;
	-webkit-box-shadow:0 0 0 1000px #ffffff inset;
	transition:background-color 5000s ease-in-out 0s;
}

/* Selection */

::-moz-selection {
	color: #ffffff;
	background-color: #3399ff;
}

::selection {
	color: #ffffff;
	background-color: #3399ff;
}

.unselectable {
	-khtml-user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}