/* Global Style */

*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
	height: 100%;
	margin: 0;
	padding: 0;
}

body {
	background: #FAFAFA url('background.jpg') center / cover no-repeat;
	color: hsl(0, 0%, 45%);
	font: 15px "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height: 1.66em;
	overflow-y: scroll;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Typo */

h1, h2, h3, h4, h5, h6 {
	color: #8A99A8;
	font-weight: 400;
	line-height: 1.1em;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, table, hr {
	margin: 0 0 15px 0;
}

a {
	color: #25AAE1;
	text-decoration: none;
}

a:hover {
	color: #1D9BD0;
	text-decoration: underline;
}

img {
	display: inline-block;
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}

/* Layout */

#tplHeader {
	padding: 12px 1em;
}

.logo {
	height: 70px;
	width : auto;
}

#tplMaster {
	display: table;
	max-width: 600px;
	margin: 0 auto;
	height: 65%;
}

#tplContent {
	display: table-cell;
	vertical-align: middle;
	padding: 2em 1em;
}

#tplFooter {
	padding: 1em;
	color: hsl(0, 0%, 60%);
	font-size: 14px;
}

/* Responsive */

@media (min-width: 600px) {

	#tplFooter {
		position: fixed;
		bottom: 0;
		right: 0;
	}
}