@import url('https://fonts.googleapis.com/css?family=Work+Sans:300,600');
@import url('https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');

html {
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
body {
	margin: 0;
	padding: 0;
	background: #E5E5E5;
	color: #343434;
	font-family: "Work Sans", Arial, Helvetica, sans-serif;*/
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}



/* ======================================== common components ======================================== */

.container {
	margin: 0 auto;
	padding: 0 2rem;
	max-width: 1400px;
}
#header {
	position: relative;
	background: #343335 url(../images/page/noise-tile.jpg) top center repeat;
}
#header::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+75,0.5+100 */
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 75%, rgba(0,0,0,0.5) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0) 75%,rgba(0,0,0,0.5) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0) 75%,rgba(0,0,0,0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000',GradientType=0 ); /* IE6-9 */
}
#header > * {
	position: relative; /* to lift above before pseudo element */
}
#header > .container > a { /* logo */
	display: inline-block;
	padding: 1rem 0;
}
#content {
	padding: 2rem 0;
	background: #FFF;
	line-height: 1.5;
}
#footer {
	padding: 2rem 0;
	border-top: 3px solid #05C4FA;
	font-size: 0.8rem;
	line-height: 2;
	text-align: center;
	opacity: 0.6;
}



/* ======================================== general ======================================== */

h1 {
	margin: 3rem 0 2rem;
	color: #05C4FA;
	font-size: 2rem;
	font-weight: 300;
	line-height: 1.2;
}
h2 {
	margin: 2rem 0 1rem;
	font-size: 1.2rem;
	line-height: 1.2;
}
p {
	margin: 0.7rem 0;
}
li {
	margin-bottom: 0.5em;
}
small {
	font-size: 0.8rem;
	font-weight: normal;
	line-height: 1.2;
	text-transform: none;
	opacity: 0.6;
}
a {
	color: inherit;
}
hr {
	margin: 3rem 0;
	height: 1px;
	color: rgba(0,0,0,0.1);
	background-color: rgba(0,0,0,0.1);
	border: none;
}
img {
	max-width: 100%;
	height: auto;
}


/* ======================================== forms ======================================== */

form {
	margin: 0;
}
label {
	display: block;
	margin-bottom: 0.2rem;
	font-size: 0.8rem;
	text-align: left;
	text-transform: uppercase;
}
input[type="text"], input[type="tel"], input[type="number"], input[type="email"], input[type="password"], input[type="url"], input[type="date"], input[type="file"], select, textarea {
	display: block;
	margin-bottom: 1.5rem;
	padding: 0.5em;
	width: 100%;
	border: 1px solid rgba(0,0,0,0.2);
	color: inherit;
	font: inherit;
}


button, .button, .editor_ok_button {
	position: relative;
	cursor: pointer;
	display: inline-block;
	padding: 0.5em 1.8em 0.5em 0.8em;
	width: auto;
	border: 1px solid #05C4FA;
	border-radius: 4px;
	background: #05C4FA;
	color: #FFF;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
}
button::after, .button::after {
	content: "\2023";
	position: absolute;
	top: 50%;
	right: 0.6rem;
	font-size: 1.8rem;
	line-height: 0;
	opacity: 0.55;
}
.ghost {
	padding: 0.9em 2em 0.9em 1em;
	background: none;
	border-color: rgba(0,0,0,0.2);
	color: #343434;
	font-size: 0.8rem;
	font-weight: 300;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.ghost::after {
	color: #05C4FA;
}
.ghost:hover {
	border-color: #05C4FA;
	background: #05C4FA;
	color: #FFF;
}
.ghost:hover::after {
	color: inherit;
}

.button + .button {
	margin-left: 1rem;
}



/* ======================================== odds + ends ======================================== */

.testimonial, .contentCol #login {
	position: relative;
	margin-bottom: 6%;
	padding: 5rem 2rem 2rem;
	background: #EAEAEA;
}
.testimonial::before {
	content: "\201C";
	position: absolute;
	top: 4.5rem;
	left: 50%;
	transform: translateX(-50%);
	color: #05C4FA;
	font-size: 6rem;
	font-weight: 600;
	line-height: 0;
	text-align: center;
}
.testimonial blockquote {
	margin: 0 auto 1rem;
	padding: 0;
	max-width: 700px;
	font-style: italic;
}
.testimonial p {
	margin: 0;
}
.testimonial p strong {
	display: block;
}
.testimonial a.button {
	margin-top: 1.5rem;
}


.contentCol #login {
	padding: 2rem 2rem 1rem;
}
.contentCol #login h2 {
	margin-top: 0;
}


.tickList {
	margin: 1.5rem 0 1.5rem 1.5rem;
	padding: 0;
	list-style: none;
}
.tickList > li {
	position: relative;
	padding: 0 0 0 1.5rem;
	text-align: left;
}
.tickList > li::before {
	content: "\2714";
	position: absolute;
	left: 0;
	color: #05C4FA;
}

#progress {
	margin: 1rem 0;
	padding: 0;
	background: rgba(0,0,0,0.05);
	font-size: 0;
	list-style: none;
}
#progress li {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0;
	padding: 0.5em 1em;
	width: 33.3%;
	font-size: 0.8rem;
	text-transform: uppercase;
}
#progress li:nth-last-child(n+2)::before {
	content: "";
	position: absolute;
	right: 0.5rem;
	transform: rotate(45deg);
	border: solid #FFF;
	width: 30px;
	height: 30px;
	top: calc(50% - 15px);
	border-width: 5px 5px 0 0;
}
.current {
	color: #05C4FA;
	font-weight: 600;
}
.required {
	color: red;
}

table {
	border-collapse: collapse;
	margin: 1rem 0;
	width: 100%;
	border-top: 1px solid rgba(0,0,0,0.2);
}
td {
	padding: 0.5em 1em 0.7em 0;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
#order td + td {
	text-align: right;
}


.promo {
	background: #fba11b;
	color: #FFF;
}
.promo a {
	display: block;
	padding: 1em 0;
	text-decoration: none;
}
.promo strong {
}
