:root
{
	--default-font-list:'Open Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, 'Lucida Grande', sans-serif;
	-ms-text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
	box-sizing:border-box;
	cursor:default;
	font-family:var(--default-font-list);
	line-height:1.4;
	overflow-y:scroll;
	text-size-adjust:100%;
	scroll-behavior: smooth;
}

audio:not([controls])
{
	display:none;
}

details
{
	display:block;
}

input[type=search]
{
	-webkit-appearance:textfield;
}

input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration
{
	-webkit-appearance:none;
}

main
{
	display:block;
	margin:0 auto;
	padding:0 1.6em 1.6em;
	padding:0 1.6rem 1.6rem;
}

summary
{
	display:block;
}

pre
{
	background:#efefef;
	color:#444;
	display:block;
	font-family:Menlo, Monaco, Consolas, 'Courier New', monospace;
	font-size:1.4em;
	font-size:1.4rem;
	margin:1.6em 0;
	margin:1.6rem 0;
	overflow:auto;
	padding:1.6em;
	padding:1.6rem;
	word-break:break-all;
	word-wrap:break-word;
}

progress
{
	display:inline-block;
}

small
{
	color:#777;
	font-size:75%;
}

big
{
	font-size:125%;
}

template
{
	display:none;
}

textarea
{
	border:.1rem solid #ccc;
	border-radius:0;
	display:block;
	margin-bottom:.8rem;
	overflow:auto;
	padding:.8rem;
	resize:vertical;
	vertical-align:middle;
}

[hidden]
{
	display:none;
}

[unselectable]
{
	-moz-user-select:none;
	-ms-user-select:none;
	-webkit-user-select:none;
	user-select:none;
}

*,::before,::after
{
	border-style:solid;
	border-width:0;
	box-sizing:inherit;
}

*
{
	font-size:inherit;
	line-height:inherit;
	margin:0;
	padding:0;
}

::before,::after
{
	text-decoration:inherit;
	vertical-align:inherit;
}

a
{
	-webkit-transition:.25s ease;
	color:#1271db;
	text-decoration:none;
	transition:.25s ease;
}

audio,canvas,iframe,img,svg,video
{
	vertical-align:middle;
}

button,input,select,textarea
{
	border:.1rem solid #ccc;
	color:inherit;
	font-family:inherit;
	font-style:inherit;
	font-weight:inherit;
	min-height:1.4em;
}

code,kbd,pre,samp
{
	font-family:Menlo, Monaco, Consolas, 'Courier New', monospace, monospace;
}

table
{
	border-collapse:collapse;
	border-spacing:0;
	margin-bottom:1.6rem;
}

::-moz-selection
{
	background-color:#b3d4fc;
	text-shadow:none;
}

::selection
{
	background-color:#b3d4fc;
	text-shadow:none;
}

button::-moz-focus-inner
{
	border:0;
}

body
{
	color:#444;
	font-family:var(--default-font-list);
	font-size:1.6rem;
	font-style:normal;
	font-weight:400;
	padding:0;
}

p
{
	margin:0 0 1.6rem;
}

h1,h2,h3,h4,h5,h6
{
	font-family:Lato, var(--default-font-list);
	margin:2em 0 1.6em;
	margin:2rem 0 1.6rem;
}

h1
{
	border-bottom:.1rem solid rgba(0,0,0,0.2);
	font-size:3.6em;
	font-size:3.6rem;
	font-style:normal;
	font-weight:500;
}

h2
{
	font-size:3em;
	font-size:3rem;
	font-style:normal;
	font-weight:500;
}

h3
{
	font-size:2.4em;
	font-size:2.4rem;
	font-style:normal;
	font-weight:500;
	margin:1.6rem 0 .4rem;
}

h4
{
	font-size:1.8em;
	font-size:1.8rem;
	font-style:normal;
	font-weight:600;
	margin:1.6rem 0 .4rem;
}

h5
{
	font-size:1.6em;
	font-size:1.6rem;
	font-style:normal;
	font-weight:600;
	margin:1.6rem 0 .4rem;
}

h6
{
	color:#777;
	font-size:1.4em;
	font-size:1.4rem;
	font-style:normal;
	font-weight:600;
	margin:1.6rem 0 .4rem;
}

code
{
	background:#efefef;
	color:#444;
	font-family:Menlo, Monaco, Consolas, 'Courier New', monospace;
	font-size:1.4rem;
	word-break:break-all;
	word-wrap:break-word;
}

a:hover,a:focus
{
	text-decoration:none;
}

dl
{
	margin-bottom:1.6rem;
}

dd
{
	margin-left:4rem;
}

ul,ol
{
	margin-bottom:.8rem;
	padding-left:2rem;
}

blockquote
{
	border-left:.2rem solid #1271db;
	font-family:Georgia, Times, 'Times New Roman', serif;
	font-style:italic;
	margin:1.6rem 0;
	padding-left:1.6rem;
}

figcaption
{
	font-family:Georgia, Times, 'Times New Roman', serif;
}

html
{
	font-size:62.5%;
}

main,header,footer,article,section,aside,details,summary
{
	display:block;
	height:auto;
	margin:0 auto;
	width:100%;
}

footer
{
	border-top:.1rem solid rgba(0,0,0,0.2);
	clear:both;
	display:inline-block;
	float:left;
	max-width:100%;
	padding:1rem 0;
	text-align:center;
}

hr
{
	border-top:.1rem solid rgba(0,0,0,0.2);
	display:block;
	margin-bottom:1.6rem;
	width:100%;
}

img
{
	height:auto;
	max-width:100%;
	vertical-align:baseline;
}

input[type=text],input[type=password],input[type=email],input[type=url],input[type=date],input[type=month],input[type=time],input[type=datetime],input[type=datetime-local],input[type=week],input[type=number],input[type=search],input[type=tel],input[type=color],select
{
	border:.1rem solid #ccc;
	border-radius:0;
	display:inline-block;
	padding:.8rem;
	vertical-align:middle;
}

input:not([type])
{
	-webkit-appearance:none;
	background-clip:padding-box;
	background-color:#fff;
	border:.1rem solid #ccc;
	border-radius:0;
	color:#444;
	display:inline-block;
	padding:.8rem;
	text-align:left;
}

input[type=color]
{
	padding:.8rem 1.6rem;
}

input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=url]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=week]:focus,input[type=number]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,select:focus,textarea:focus
{
	border-color:#b3d4fc;
}

input:not([type]):focus
{
	border-color:#b3d4fc;
}

input[type=radio],input[type=checkbox]
{
	vertical-align:middle;
}

input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus
{
	outline:.1rem solid thin #444;
}

input[type=text][disabled],input[type=password][disabled],input[type=email][disabled],input[type=url][disabled],input[type=date][disabled],input[type=month][disabled],input[type=time][disabled],input[type=datetime][disabled],input[type=datetime-local][disabled],input[type=week][disabled],input[type=number][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=color][disabled],select[disabled],textarea[disabled]
{
	background-color:#efefef;
	color:#777;
	cursor:not-allowed;
}

input:not([type])[disabled]
{
	background-color:#efefef;
	color:#777;
	cursor:not-allowed;
}

input[readonly],select[readonly],textarea[readonly]
{
	background-color:#efefef;
	border-color:#ccc;
	color:#777;
}

input:focus:invalid,textarea:focus:invalid,select:focus:invalid
{
	border-color:#e9322d;
	color:#b94a48;
}

input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus,input[type=checkbox]:focus:invalid:focus
{
	outline-color:#ff4136;
}

select
{
	background-color:#fff;
	border:.1rem solid #ccc;
}

select[multiple]
{
	height:auto;
}

label
{
	line-height:2;
}

fieldset
{
	border:0;
	margin:0;
	padding:.8rem 0;
}

legend
{
	border-bottom:.1rem solid #ccc;
	color:#444;
	display:block;
	margin-bottom:.8rem;
	padding:.8rem 0;
	width:100%;
}

input[type=submit],button
{
	-moz-user-select:none;
	-ms-user-select:none;
	-webkit-transition:.25s ease;
	-webkit-user-drag:none;
	-webkit-user-select:none;
	border:.2rem solid #444;
	border-radius:0;
	color:#444;
	cursor:pointer;
	display:inline-block;
	margin-bottom:.8rem;
	margin-right:.4rem;
	padding:.8rem 1.6rem;
	text-align:center;
	text-decoration:none;
	text-transform:uppercase;
	transition:.25s ease;
	user-select:none;
	vertical-align:baseline;
}

input[type=submit] a,button a
{
	color:#444;
}

input[type=submit]::-moz-focus-inner,button::-moz-focus-inner
{
	padding:0;
}

input[type=submit]:hover,button:hover
{
	background:#444;
	border-color:#444;
	color:#fff;
}

input[type=submit]:hover a,button:hover a
{
	color:#fff;
}

input[type=submit]:active,button:active
{
	background:#6a6a6a;
	border-color:#6a6a6a;
	color:#fff;
}

input[type=submit]:active a,button:active a
{
	color:#fff;
}

input[type=submit]:disabled,button:disabled
{
	box-shadow:none;
	cursor:not-allowed;
	opacity:.40;
}

nav ul
{
	list-style:none;
	margin:0;
	padding:0;
	text-align:center;
}

nav ul li
{
	display:inline;
}

nav a
{
	-webkit-transition:.25s ease;
	border-bottom:.2rem solid transparent;
	color:#444;
	padding:.8rem 1.6rem;
	text-decoration:none;
	transition:.25s ease;
}

nav a:hover,nav li.selected a
{
	border-color:rgba(0,0,0,0.2);
}

nav a:active
{
	border-color:rgba(0,0,0,0.56);
}

caption
{
	padding:.8rem 0;
}

thead th
{
	background:#efefef;
	color:#444;
}

tr
{
	background:#fff;
	margin-bottom:.8rem;
}

th,td
{
	border:.1rem solid #ccc;
	padding:.8rem 1.6rem;
	text-align:center;
	vertical-align:inherit;
}

tfoot tr
{
	background:none;
}

tfoot td
{
	color:#efefef;
	font-size:.8rem;
	font-style:italic;
	padding:1.6rem .4rem;
}

@media screen {
	[hidden~=screen]
	{
		display:inherit;
	}

	[hidden~=screen]:not(:active):not(:focus):not(:target)
	{
		clip:rect(0000)!important;
		position:absolute!important;
	}
}

@media screen and max-width 40rem {
	article,section,aside
	{
		clear:both;
		display:block;
		max-width:100%;
	}

	img
	{
		margin-right:1.6rem;
	}
}