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
{
	background: no-repeat center top url(../images/bg_copy_artifacts.png);
	color: #3d3d3d;
}

svg#symbols
{
	display: none;
}

.main-wrapper
{
	margin: 0 auto;
	width: 624px;
}

h1
{
	font-family: 'Fira Sans', sans-serif;
	font-weight: 700;
	font-size: 50px;
	font-style: italic;
	line-height: 66px;
	margin-top: 120px;
}

img#stressica
{
	display: block;
	margin: 50px auto;
}

#intro
{
	border: 2px solid #d9d9d9;
	font-family: 'Oxygen Mono', sans-serif;
	font-size: 16px;
	line-height: 28px;
	padding: 20px 30px;

	-webkit-box-shadow: 5px 5px 0 0 #f2f2f2;
	box-shadow: 5px 5px 0 0 #f2f2f2;
}

	#intro .highlight
	{
		padding: 1px 5px;
	}

	#intro .highlight.a
	{
		background: #b6e7e4;
	}

	#intro .highlight.b
	{
		background: #ffacc5;
	}

	#intro .highlight.c
	{
		background: #dced98;
	}

#footnote
{
	font-family: 'Oxygen Mono', sans-serif;
	font-size: 12px;
	line-height: 19px;
	margin: 32px 0 16px 0;
	text-align: center;
}

ul#contact
{
	margin: 50px auto 70px auto;
	text-align: center;
}

ul#contact li,
ul#contact a
{
	display: inline-block;
	height: 52px;
	width: 52px;
}

ul#contact a.fa
{
	display: inline;
}

ul#contact li
{
	margin-left: 12px;
}

ul#contact li:first-child
{
	margin: 0;
}

ul#contact svg
{
	display: inline-block;
	fill: currentColor;
	height: 52px;
	width: 26px; /* That inline SVG scales unlike images works to our advantage here. The height, set to the parent height, vertically centers the shape. */
}
	ul#contact li.twitter svg
    {
        position: relative;
            top: 1px;
            left: 1px;
    }


	ul#contact li.pinterest svg
	{
		width: 30px;
	}

ul#contact a
{
	color: #979797;
	background: #ededed;
	font-size: 28px;
	line-height: 52px;

	-webkit-border-radius: 26px;
	border-radius: 26px;

	-webkit-box-shadow: inset 0 2px 0 0 rgba(0,0,0,.1);
	box-shadow: inset 0 2px 0 0 rgba(0,0,0,.1);

	-webkit-transition: .25s ease-out;
    transition: .25s ease-out;
}

ul#contact a:hover
{
	color: #3d3d3d;
	background: #b6e7e4;
}

#intro-extended
{
	margin-top: 90px;
	padding-bottom: 100px;
}

#intro-extended p
{
	font-family: 'Open Sans', 'Fira Sans', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 30px;
	margin: 15px 0;
}

#intro-extended a
{
	display: inline-block;
	border-bottom: 1px solid #f4f4f4;
	color: #3d3d3d;
	line-height: 20px;
	position: relative;
	text-decoration: none;

	-webkit-transition: .25s ease-out;
    transition: .25s ease-out;
}
	#intro-extended a:hover
	{
		border-color: #c4c4c4;
	}


	#intro-extended span
	{
		border-bottom: 1px solid #e1e1e1;
		display: inline-block;
		font-size: 16px; /* Safari mobile had a problem here. */
		line-height: 20px;

		-webkit-transition: .25s ease-out;
    	transition: .25s ease-out;
	}

	#intro-extended span:hover
	{
		border-color: #848484;
	}

	#intro-extended i.fa
	{
		background: #ffacc5;
		display: inline-block;
		font-size: 14px;
		height: 28px;
		line-height: 28px;
		margin: 0 0 0 3px;
		text-align: center;
		width: 28px;

		-webkit-border-radius: 13px;
		border-radius: 13px;
	}

#intro-extended h2
{
	display: inline-block;
	border: 2px solid #d9d9d9;
	font-family: 'Oxygen Mono', sans-serif;
	font-size: 16px;
	line-height: 28px;
	margin: 0 auto;
	padding: 20px 30px;

	-webkit-box-shadow: 5px 5px 0 0 #f2f2f2;
	box-shadow: 5px 5px 0 0 #f2f2f2;
}

#intro-extended h3
{
	color: #979797;
	font-family: 'Oxygen Mono', sans-serif;
	font-size: 15px;
	line-height: 20px;
	margin: 50px 0 20px 0;
	letter-spacing: 2px;
	position: relative;
		left: -16px;
	text-transform: uppercase;
}

img#portfolio
{
	display: block;
	margin: 0 auto;
}

#work
{
	overflow: auto;
	margin: 0 auto;
	width: 1024px;
}

#work img
{
	display: block;
	float: left;
	margin: 0;
}

#coming-soon,
#coming-soon span
{
	height: 120px;
	width: 120px;
}

#coming-soon
{
	border: 2px solid #4c4c4c;
	clear: both;
	display: table;
	margin: 0 auto;

	-webkit-border-radius: 100px;
	border-radius: 100px;

	-webkit-transition: .25s ease-out;
    transition: .25s ease-out;
}

#coming-soon span
{
	display: table-cell;
	font-family: "Fira Sans", sans-serif;
	font-size: 30px;
	font-style: italic;
	font-weight: 100;
	line-height: 32px;
	text-align: center;
	text-transform: lowercase;
	vertical-align: middle;
}

#coming-soon .fa
{
	font-size: 16px;
}

@media (max-width: 511px)
{
    #work
    {
    	width: 256px;
    }

    h1
    {
    	font-size: 40px;
    	line-height: 52px;
    	margin-top: 70px;
    	text-align: center;
    }

    .main-wrapper
    {
    	width: 80%;
    }

    #intro
    {
    	font-size: 14px;
		line-height: 26px;
    }

    /* Nope. I don't like this. */
    img#stressica
    {
    	height: 80%;
    	width: 80%;
    }
}

@media (min-width: 512px) and (max-width: 767px)
{
    #work
    {
    	width: 512px;
    }

    h1
    {
    	text-align: center;
    }

    .main-wrapper
    {
    	width: 80%;
    }
}

@media (min-width: 768px) and (max-width: 1023px)
{
    #work
    {
    	width: 768px;
    }
}

@media (max-width: 1024px)
{
    img#portfolio
    {
        width: 100%;
    }
}
