/* CSS Reset: http://meyerweb.com/eric/tools/css/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; } 

html, body {
	background: #fff;
	font-family: 'Roboto Slab', serif;
	font-size: 14px;
	line-height: 23px;
	font-weight: 400;
	color: #222;
}

body { padding-bottom: 200px; }

/* STYLE THINGS */

h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
	margin: 30px 30px 20px 30px;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	font-weight: 400;
	font-size: 0.9em;
}

h1 { font-size: 2em; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.4em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1em; }

p {
	margin: 20px;
	line-height: inherit;
}
.center { text-align: center; }
.right { text-align: right; }
strong { font-weight: 700; }
em { font-style: italic; }
img { max-width: 100%; border:0; }

a:link, a:visited, a:active, a:hover {
	outline: 0;
    color: #222;
	text-decoration: none;
	border-bottom: 1px solid #222;
}
a:hover { border-bottom: 1px dashed #222; }

.imgLink:link, .imgLink:visited, .imgLink:active, .imgLink:hover {
	border: 0;
}
.invertOnHover:link img, .invertOnHover:visited img, .invertOnHover:active img, .invertOnHover:hover img {
	-webkit-filter: invert(0%);
	filter: invert(0%);
}
.invertOnHover:hover img {
	-webkit-filter: invert(100%);
	filter: invert(100%);
}

.focusButton {
	width: 100%;
	margin: 50px 0px;
	text-align: center;
}

.focusButton a:link, .focusButton a:visited, .focusButton a:active, .focusButton a:hover {
	display: inline-block;
	padding: 10px 20px;
	border: 1px solid #222;
	border-radius: 3px;
	background: #222;
	color: #fff;
}
.focusButton a:hover {
	background: #fff;
	color: #222;
}

.inverted a:link, .inverted a:visited, .inverted a:active, .inverted a:hover {
	background: #fff;
	color: #222;
}
.inverted a:hover {
	background: #222;
	color: #fff;
}

ul { margin: 50px 0; }
ul.horizontal { text-align: center; }
ul.horizontal li { display: inline-block; margin: 0px 10px 10px 40px; }
ul.horizontal li :first-child { margin-left: 0px; margin-right: 0px; }
ul.horizontal li :last-child { margin-left: 0px; margin-right: 0px; }

ul.bulletted { list-style-type: circle; padding: 0 50px; margin: 10px 0px;}
ul.bulletted li { margin-bottom: 5px; }
ol { list-style-type: decimal; padding: 0 50px; margin-top: 10px; }
ol li { margin-bottom: 10px; }

form {
	margin: 50px 0;
	width: 100%;
}

input {
	box-sizing: border-box;
	width: 304px;
	color: inherit;
	font: inherit;
	margin: 5px;
	padding: 12px 15px;
	background: #fff;
	border: 1px solid #aaa;
	border-radius: 3px;
}

input[type='submit'] {
	background: #222;
	color: #fff;
	border: 1px solid #222;
	border-radius: 3px;
	
	-webkit-appearance: none; /*removes default styling in different browsers*/
	-moz-appearance: none;
	appearance: none;
}

input[type='submit']:hover {
	background: #fff;
	color: #222;
	cursor: pointer;
}

/*div.g-recaptcha {
  margin: 0 auto;
  padding: 5px 0;
  width: 304px;
  display: inline-block;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}*/

table {
	margin: 50px 0;
}

.quotes p { text-transform: uppercase; font-size: 1.4em; line-height: 1.4em; margin: 80px 0; }
.quotes p:first-child{ margin-top: 40px; }
.quotes p:last-child{ margin-bottom: 40px; }
.quotes p span { text-transform: none; font-size: 0.65em; }

#header {
	width: 100%;
	height: 256px;
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-image: url('images/logos/HiddenFolks-Banner1024.png'); 
}

/* LAYOUT THINGS */

.full, .slim { margin: 0 auto; }

/* For mobile phones: */
.full { width: 95%; }
.slim { width: 90%; }
.extraSpacing { margin-top: 30px; margin-bottom: 30px; }

.flexibleTwoColumns
{ 
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	
	justify-content: center; 
	align-items: baseline; 
} 
.flexibleTwoColumns > div 
{ 
	flex: 1 1 100%;
	padding: 5px;
}

.flexibleThreeColumns
{ 
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	
	justify-content: center; 
	align-items: baseline; 
} 
.flexibleThreeColumns > div 
{ 
	flex: 1 1 40%;
	padding: 5px;
}
.flexibleContent
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	
	justify-content: center; 
	align-items: baseline; 
}
.flexibleContent > div 
{ 
	flex: auto;
	padding: 5px;
}

@media only screen and (min-width: 500px) {
    /* For tablets and slightly bigger: */
	.full { width: 500px; }
	.slim { width: 450px; }
	
	.extraSpacing { margin-top: 60px; margin-bottom: 60px; }
	
	.flexibleTwoColumns > div { flex: 1 1 40%; }
	.flexibleThreeColumns > div { flex: 1 1 30%; }
}
@media only screen and (min-width: 768px) {
    /* For regular desktop: */
	.full { width: 700px; }
	.slim { width: 560px; }
}

@media only screen and (min-width: 1200px) {
    /* For large desktops: */
	.full { width: 1000px; }
	.slim { width: 800px; }
	
	#header {
		height: 512px;
		background-image: url('images/logos/HiddenFolks-Banner2048.png'); 
	}
	
	html, body { font-size: 16px; }
}

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
	margin-bottom: 10px;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.lazy {
	background: #eeeeee;
}

.lazyContainer {
    position: relative;
}
.lazyContainer:after {
    content: '';
    display: block;
    height: 0;
    width: 100%;
    /* 16:9 = 56.25% = calc(9 / 16 * 100%) */
    padding-bottom: 50%;
}
.lazyContainer > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}