@charset "UTF-8";
@import url(font-awesome.min.css);
@import "https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600";


/* Reset */

	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}

	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block;
	}

	body {
		line-height: 1;
	}

	ol, ul {
		list-style: none;
	}

	blockquote, q {
		quotes: none;
	}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	body {
		-webkit-text-size-adjust: none;
	}

/* Basic */

	@-ms-viewport {
		width: device-width;
	}

	body {
		-ms-overflow-style: scrollbar;
	}

	@media screen and (max-width: 480px) {

		html, body {
			min-width: 320px;
		}

	}

	body {
		background: #fff;
	}

		body.is-loading *, body.is-loading *:before, body.is-loading *:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
		}

/* Type */

	body, input, select, textarea {
		color: #9a9a9a;
		font-family: "Source Sans Pro", Arial, Helvetica, sans-serif;
		font-size: 14pt;
		font-weight: 400;
		line-height: 1.65;
	}

		@media screen and (max-width: 1680px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 1280px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 980px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 736px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 480px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

	a {
		color: #6cc091;
		text-decoration: underline;
	}

		a:hover {
			text-decoration: none;
		}

	strong, b {
		color: #555;
		font-weight: 600;
	}

	em, i {
		font-style: italic;
	}

	p {
		margin: 0 0 2em 0;
	}

	h1, h2, h3, h4, h5, h6 {
		color: #555;
		font-weight: 400;
		line-height: 1.5;
		margin: 0 0 1em 0;
	}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			text-decoration: none;
		}

	h2 {
		font-size: 1.85em;
		font-weight: 300;
	}

	h3 {
		font-size: 1.75em;
	}

		@media screen and (max-width: 480px) {

			h3 {
				font-size: 1.25em;
			}

		}

	h4 {
		font-size: 1.5em;
	}

	h5 {
		font-size: 0.9em;
	}

	h6 {
		font-size: 0.7em;
	}

	sub {
		font-size: 0.8em;
		position: relative;
		top: 0.5em;
	}

	sup {
		font-size: 0.8em;
		position: relative;
		top: -0.5em;
	}

	blockquote {
		border-left: solid 4px #dbdbdb;
		font-style: italic;
		margin: 0 0 2em 0;
		padding: 0.5em 0 0.5em 2em;
	}

	code {
		background: rgba(144, 144, 144, 0.075);
		border-radius: 0;
		border: solid 1px #dbdbdb;
		font-family: "Courier New", monospace;
		font-size: 0.9em;
		margin: 0 0.25em;
		padding: 0.25em 0.65em;
	}

	pre {
		-webkit-overflow-scrolling: touch;
		font-family: "Courier New", monospace;
		font-size: 0.9em;
		margin: 0 0 2em 0;
	}

		pre code {
			display: block;
			line-height: 1.75;
			padding: 1em 1.5em;
			overflow-x: auto;
		}

	hr {
		border: 0;
		border-bottom: solid 1px #dbdbdb;
		margin: 2em 0;
	}

		hr.major {
			margin: 3em 0;
		}

	.align-left {
		text-align: left;
	}

	.align-center {
		text-align: center;
	}

	.align-right {
		text-align: right;
	}

	.inner {
		max-width: 75em;
		margin: 0 auto;
	}

		@media screen and (max-width: 1280px) {

			.inner {
				max-width: 90%;
			}

		}

		@media screen and (max-width: 480px) {

			.inner {
				max-width: 90%;
			}

		}

/* Section/Article */

	section.special, article.special {
		text-align: center;
	}

		section.special article, article.special article {
			text-align: left;
		}

	section.wrapper, article.wrapper {
		padding: 6em 0;
	}

		section.wrapper header, article.wrapper header {
			margin-bottom: 4em;
		}

			section.wrapper header h2, article.wrapper header h2 {
				font-size: 2.75em;
				margin: 0 0 .5em 0;
			}

			section.wrapper header p, article.wrapper header p {
				font-size: 1em;
			}

		section.wrapper article header, article.wrapper article header {
			margin: 0;
		}

		@media screen and (max-width: 980px) {

			section.wrapper, article.wrapper {
				padding: 4em 0;
			}

		}

		@media screen and (max-width: 736px) {

			section.wrapper, article.wrapper {
				padding: 3em 0;
			}

				section.wrapper header, article.wrapper header {
					margin-bottom: 2em;
				}

					section.wrapper header h2, article.wrapper header h2 {
						font-size: 2em;
					}

					section.wrapper header p, article.wrapper header p {
						font-size: .9em;
					}

		}

		@media screen and (max-width: 480px) {

			section.wrapper article, article.wrapper article {
				text-align: center;
			}

		}

	header p {
		color: #bbb;
		position: relative;
		margin: 0 0 1.5em 0;
	}

	header h2 + p {
		font-size: 1.25em;
		margin-top: -1em;
	}

	header h3 + p {
		font-size: 1.1em;
		margin-top: -0.8em;
	}

	header h4 + p,
	header h5 + p,
	header h6 + p {
		font-size: 0.9em;
		margin-top: -0.6em;
	}

/* List */

	ol {
		list-style: decimal;
		margin: 0 0 2em 0;
		padding-left: 1.25em;
	}

		ol li {
			padding-left: 0.25em;
		}

	ul {
		list-style: disc;
		margin: 0 0 2em 0;
		padding-left: 1em;
	}

		ul li {
			padding-left: 0.5em;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px #dbdbdb;
				padding: 0.5em 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

			ul.alt.dark li {
				border-top: solid 1px rgba(0, 0, 0, 0.25);
			}

		ul.icons {
			cursor: default;
			list-style: none;
			padding-left: 0;
		}

			ul.icons li {
				display: inline-block;
				padding: 0 1em 0 0;
			}

				ul.icons li:last-child {
					padding-right: 0;
				}

				ul.icons li .icon:before {
					font-size: 2em;
				}

		ul.actions {
			cursor: default;
			list-style: none;
			padding-left: 0;
		}

			ul.actions li {
				display: inline-block;
				padding: 0 1em 0 0;
				vertical-align: middle;
			}

				ul.actions li:last-child {
					padding-right: 0;
				}

			ul.actions.small li {
				padding: 0 0.5em 0 0;
			}

			ul.actions.vertical li {
				display: block;
				padding: 1em 0 0 0;
			}

				ul.actions.vertical li:first-child {
					padding-top: 0;
				}

				ul.actions.vertical li > * {
					margin-bottom: 0;
				}

			ul.actions.vertical.small li {
				padding: 0.5em 0 0 0;
			}

				ul.actions.vertical.small li:first-child {
					padding-top: 0;
				}

			ul.actions.fit {
				display: table;
				margin-left: -1em;
				padding: 0;
				table-layout: fixed;
				width: calc(100% + 1em);
			}

				ul.actions.fit li {
					display: table-cell;
					padding: 0 0 0 1em;
				}

					ul.actions.fit li > * {
						margin-bottom: 0;
					}

				ul.actions.fit.small {
					margin-left: -0.5em;
					width: calc(100% + 0.5em);
				}

					ul.actions.fit.small li {
						padding: 0 0 0 0.5em;
					}

			@media screen and (max-width: 480px) {

				ul.actions {
					margin: 0 0 2em 0;
				}

					ul.actions li {
						padding: 1em 0 0 0;
						display: block;
						text-align: center;
						width: 100%;
					}

						ul.actions li:first-child {
							padding-top: 0;
						}

						ul.actions li > * {
							width: 100%;
							margin: 0 !important;
						}

							ul.actions li > *.icon:before {
								margin-left: -2em;
							}

					ul.actions.small li {
						padding: 0.5em 0 0 0;
					}

						ul.actions.small li:first-child {
							padding-top: 0;
						}

			}

	dl {
		margin: 0 0 2em 0;
	}

		dl dt {
			display: block;
			font-weight: 600;
			margin: 0 0 1em 0;
		}

		dl dd {
			margin-left: 2em;
		}

/* Banner */

	#banner {
		padding: 0 0 9em 0;
		/*background-image: url(../../images/banner.jpg);*/
		background-size: cover;
		background-position: bottom;
		background-attachment: fixed;
		background-repeat: no-repeat;
		/*text-align: center;*/
		position: relative;
	}

	#banner strong {
		color: white;
	}

		#banner:before {
			content: '';
			background: rgba(75, 75, 93, 0.85);
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0;
			left: 0;
		}

		#banner .inner {
			/*border-top: 2px solid rgba(255, 255, 255, 0.2);*/
			position: relative;
			z-index: 10005;
			padding-top: 8em;
		}

		#banner .title {
			border-top: 2px solid rgba(255, 255, 255, 0.2);
			padding-top: 1em;
		}

		#banner h1 {
			font-size: 3.5em;
			font-weight: 400;
			color: #fff;
			line-height: 1em;
			margin: 0 0 1em 0;
			padding: 0;
			text-align: center;
		}

		#banner h3 {
			font-weight: 400;
			color: #fff;
			margin: 0;
			font-size: 1.5em;
		}

		#banner .icon {
			color: #6cc091;
			font-size: 2em;
		}

		#banner p {
			font-size: 1em;
			color: rgba(255, 255, 255, 0.55);
			margin-bottom: 1.75em;
		}

			#banner .flex div {
				border-right: 2px solid rgba(255, 255, 255, 0.2);
				padding: 0 8em;
			}

				#banner .flex div:last-child {
					border: none;
					padding-right: 0;
				}

				#banner .flex div:first-child {
					padding-left: 0;
				}

				#banner .flex div p {
					margin: 0;
				}

		@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {

			#banner {
				background-attachment: scroll;
			}

		}

		@media screen and (max-width: 1680px) {

			#banner .flex div {
				padding: 0 6em;
			}

		}

		@media screen and (max-width: 1280px) {

			#banner {
				padding: 0 0 6em 0;
			}

				#banner .inner {
					padding-top: 6em;
				}

				#banner h1 {
					font-size: 3em;
				}

				#banner h3 {
					font-size: 1.25em;
				}

				#banner .flex div {
					padding: 0 3em;
				}

		}

		@media screen and (max-width: 980px) {

			#banner {
				background-attachment: scroll;
				padding: 0 0 4em 0;
			}

				#banner .inner {
					padding-top: 4em;
				}

				#banner h1 {
					font-size: 2.5em;
				}

				#banner h3 {
					font-size: 1.25em;
				}

				#banner .flex div {
					font-size: .85em;
					padding: 0 1.5em;
				}

		}

		@media screen and (max-width: 736px) {

			#banner {
				padding: 0 0 3em 0;
			}

				#banner .inner {
					padding-top: 3em;
				}

				#banner h1 {
					font-size: 2em;
				}

				#banner h3 {
					font-size: 1.25em;
				}

				#banner .flex {
					-moz-flex-direction: column;
					-webkit-flex-direction: column;
					-ms-flex-direction: column;
					flex-direction: column;
					margin: 0 auto 2em auto;
				}

					#banner .flex div {
						font-size: .85em;
						padding: 0;
						border: none;
						margin-bottom: 1em;
					}
		}

		@media screen and (max-width: 480px) {
			#banner h1 {
				font-size: 1.5em;
			}
		}

/* Footer */

		#footer {
			padding: 1em;
			background: #6cc091;
			color: #fff;
			text-align: center;
		}

		#footer h3 {
			color: #FFF;
			margin-bottom: 2em !important;
		}

		#footer label {
			text-align: left;
			color: #FFF;
		}

		#footer .copyright {
			color: rgba(255, 255, 255, 0.5);
			font-size: 1em;
			/*margin: 0 0 0 0;*/
			padding: 0;
		}

			#footer .copyright a {
				color: rgba(255, 255, 255, 0.5);
				text-decoration: none;
			}
				#footer .copyright a:hover {
					color: #FFF;
				}

		@media screen and (max-width: 980px) {
			#footer {
				padding: 4em 0;
			}
		}

		@media screen and (max-width: 736px) {
			#footer {
				padding: 3em 0;
			}
		}