/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
   <3 thanks, Eric :-)
*/

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;
}
/* HTML5 display-role reset for older browsers */

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

body {
	font-family: Fira Sans, Helvetica Neue, Helvetica, Calibri, Arial, sans-serif;
	font-size: 1em;
	line-height: 1.4;
	color: #666;
	background: #fff;	
}

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;
}

* {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}



/* link styling */

a:link, a:visited {
	display: inline-block;
	padding: 1px;
	color: #60a7e6;
}

a:hover, a:active, a:focus {
	color: #000;
}

/* ---------------------------------------------------
HEADER STYLING 
--------------------------------------------------- */

header {
	padding: 1em 8vw;
	margin-bottom: 1.2em;
	text-align: center;
	background: rgba(204, 204, 204, .5);
	color: #fff;
	border-bottom: 1px solid rgba(204, 204, 204, 1);
}

header h1 {
	font-size: 1.26em;
	font-size: calc(1.2em + .8vw);
	line-height: 1.1;
	color: #666;
}

header small {
	display: block;
	width: 66%;
	margin: .6em auto;
	padding: 0 5%;
	border-top: 1px solid #ccc;
	color: #000;
}

header a:link, header a:visited {
	color: #333;
}

/* ---------------------------------------------------
CONTENT STYLING 
--------------------------------------------------- */

main {
	padding: 0 8vw;
}

div {
	padding: 24px;
	margin: 6px;
	background: rgba(204, 204, 204, .25);
	color: #666;
}

.a {
	font-size: 4em;
	letter-spacing: -.05em;
	line-height: 1;
	font-weight: 300;
	background: transparent;
}

.a em {
	display: block;
	font-size: .45em;
	letter-spacing: -.03em;
	line-height: 1.5;
}

.b {
	font-size: 4em;
	letter-spacing: -.025em;
	line-height: 1;
	font-weight: 800;
	color: #ccc;
	background: transparent;
}

main strong {
	display: block;
	margin: 0 0 .6em 0;
	font-size: 1.6em;
	line-height: 1.1;
	color: #000;
}

/* ---------------------------------------------------
FOOTER STYLING 
--------------------------------------------------- */

footer {
	padding: 1em 8vw;
	border-top: 1px solid rgba(204, 204, 204, 1);
	background: rgba(204, 204, 204, .5);
	color: #333;
}

footer p {
	font-size: .8em;
	text-align: center;
	margin: 0;
}



/* --------------------------------------------------- /\/\/\
MEDIA QUERIES
--------------------------------------------------- /\/\/\ */

@media (min-width: 380px) {
	footer {
		margin: 120px 0 0 0;
		padding: 1em 0;
		clear: both;
	}
}

@media (min-width: 820px) {

	
	main {
		width: 90%;
		max-width: 64em;
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
		position: relative;
		display: flow-root;
	}
	
	div {
		width: 33%;
		width: calc(33% - 9px);
		min-height: 15em;
		margin: 3px;
		float: left;
	}
	
	.a {
		width: 25%;
		padding-top: 2em;
		border-left: 2px solid #ccc;
		position: absolute;
		right: 0;
	}
	
	.b {
		float: none;
		width: 75%;
		min-height: auto;
	}
	
	.e, .g, .i, .k {
		clear: left;
	}
	
	 /* grid - via feature support */
	
	@supports (display: grid) {
		main {
			display: grid;
			grid-gap: 3px;
			grid-template-columns: [col1-start] 33% [col2-start] 33% [col3-start] 33%  [col3-end];
			grid-template-rows: [row1-start] auto [row2-start] auto [row3-start] auto [row4-start] auto [row5-start] auto [row6-start] auto [row6-end];
		}
		
		div, .a, .b {
			width: auto;
			height: auto;
			min-height: auto;
			position: relative;
		}
		
		.a {
			grid-column: col3-start;
			grid-row: row1-start / row6-end;
			padding-top: 1.4em;
			font-size: 6em;
		}
		
		.a em {
			font-size: 30%;
			text-indent: 8px;
		}
		
		.b {
			grid-column: col1-start / col3-start;
			grid-row: row1-start;
		}
		
		.c {
			grid-column: col1-start;
			grid-row: row2-start;
		}
		
		.d {
			grid-column: col2-start;
			grid-row: row2-start;
		}
		
		.e {
			grid-column: col1-start;
			grid-row: row3-start;
		}
		
		.f {
			grid-column: col2-start;
			grid-row: row3-start;
		}
		
		.g {
			grid-column: col1-start;
			grid-row: row4-start;
		}
		
		.h {
			grid-column: col2-start;
			grid-row: row4-start;
		}
		
		.i {
			grid-column: col1-start;
			grid-row: row5-start;
		}
		
		.j {
			grid-column: col2-start;
			grid-row: row5-start;
		}
		
		.k {
			grid-column: col1-start;
			grid-row: row6-start;
		}
		
		.l {
			grid-column: col2-start;
			grid-row: row6-start;
		}
	}
}