html,
body {
	height: 100%;
}

body {
	margin: 0 auto;

	background: #1772bb url('../img/pattern.png') center center;

	color: white;
	font-family: 'Open Sans';
	font-size: 1em;
	line-height: 1.6;

	-webkit-font-smoothing:antialiased;
}

* {
	box-sizing: border-box;
}

#wrapper {
	position: relative;

	height: 100%;
}

.container {
	position: absolute;
	top: 0;
	left: 0;

	display: table;

	width: 100%;
	height: 100%;

	padding: 48px;

	margin: auto;
}

.content {
	display: table-cell;

	text-align: center;

	vertical-align: middle;
}

.content > * {
	max-width: 768px;

	margin-left: auto;
	margin-right: auto;
}

.logo img {
	display: block;
	margin: auto;
}

.hr::before,
.hr::after {
	display: block;

	width: 48px;
	height: 48px;

	margin: auto;

	border: 2px solid white;

	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	     -o-transform: rotate(45deg);
	        transform: rotate(45deg);

	content: '';
}

.hr::after {
	position: relative;
	top: -36px;
}

h1 {
	display: inline-block;

	margin-top: .4em;
	margin-bottom: .4em;

	color: #8fb1d8;
	font-size: 3.5em;
	font-weight: 300;
	font-style: italic;
}

h1 span {
	display: block;

	color: white;
	font-weight: bold;
	font-style: normal;
	text-transform: uppercase;
}

h1 span.title2 {
	position: relative;

	color: #8fb1d8;
	font-size: 0.286em;
}

h1 span.title2::before,
h1 span.title2::after {
	position: absolute;
	top: 50%;

	width: calc(40% - 30px);
	height: 1px;

	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	     -o-transform: translateY(-50%);
	        transform: translateY(-50%);

	background: #8fb1d8;

	content: '';
}

h1 span.title2::before {
	left: 10%;
}

h1 span.title2::after {
	right: 10%;
}

h2 {
	margin-top: .2em;
	margin-bottom: .2em;

	font-size: 2em;
	text-transform: uppercase;
}

p {
	font-size: 1.5em;
	font-weight: 300;
	font-style: italic;
}

p a {
	color: white;
	font-weight: 600;
	text-decoration: none;
}

.btn {
	display: inline-block;

	padding: .6em 1.6em;

	border-radius: 2px;

	border: 2px solid white;

	background: white;

	-webkit-transition: background 150ms linear, color 150ms linear;
	   -moz-transition: background 150ms linear, color 150ms linear;
	    -ms-transition: background 150ms linear, color 150ms linear;
	     -o-transition: background 150ms linear, color 150ms linear;
	        transition: background 150ms linear, color 150ms linear;

	color: #1772bb;
	font-size: 2em;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
}

.btn:hover {
	color: white;

	background: transparent;
}

@media screen and (max-width: 1024px) {
	body {
		font-size: 70%;
	}
}