/* reset styles */

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%;
	vertical-align: baseline;
}

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

/* master styles */


html {
  background:#fff url('images/back3percent.png') repeat;
	height:100%;
}

body {
	color:#000;
  font-family:rooney-web-1, rooney-web-2, Georgia, serif;
	font-weight: 300;
	font-style: normal;
	font-size: 0.875em; /* 14/16 */
	line-height: 1.714285714285714em; /* 24/14 */
	color:#2f0a0a;
	min-height:100%;
}

div#vertical-grid-overlay {
	position: absolute;
	width: 100%;
	height:100%;
	top: 0;
	left: 0;
	background: url('images/vertical-grid.png') repeat;
	display:none;
	z-index:20;
}


h1 {
  font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
	font-weight:300;
	font-style:normal;
  font-size:1.857142857142857em; /* 26/14 */ 
  line-height:1.153846153846154em; /* 30/26 */
  margin: 0;
  color:#d34343;
}

h2 {
  font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
  font-weight:300;
	font-style:normal;
  font-size:1.428571428571429em; /* 20/14 */
	font-size:20px;
  line-height:1.2em; /* 24/20 */
  margin:0;
  color:#d34343;
}

h3 {
  font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
  font-weight:300;
	font-style:normal;
	font-size:1.285714285714286em; /*18/14*/
  line-height:1.111111111111111em; /*20/18*/
	margin:0;
}

h4 {
	font-size:1.142857142857143em; /*16/14*/
	font-weight:normal;
  line-height:1.428571428571429em; /*20/14*/
	margin:0;
}

a {
  -moz-transition: color .25s linear;
  -o-transition: color .25s linear;
  -webkit-transition: color .25s linear;
  transition: color .25s linear;
}

a:link {
  color: #46bad3;
}
a:visited {
  color: #38a5bc;
}
a:hover {
  color: #58cfe9;
}

p {
  margin: 0 0 1.285714285714286em 0; /*18/14*/
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto; 
}

cite, small {
  font-size: 0.857142857142857em; /*12/14*/
}

strong, th, label {
  font-family: rooney-web-1, rooney-web-2, Georgia, serif;
	font-weight: 700;
	font-style: normal;
}

em {
  font-family: rooney-web-1, rooney-web-2, Georgia, serif;
	font-weight: 300;
	font-style: italic;
}

blockquote {
  padding: 0 0 0 2em;
}

pre {
	font-family:'Courier New', Courier, monospace;
	font-size:0.857142857142857em; /* 12/14 */
	line-height:1.5em; /*18/12*/
	background-color:#3c343b;
	color:#fff;
	margin: 0 0 1em 0; /*12/12*/
	padding:1em;
	overflow:hidden;
}

pre:hover {
	overflow:auto;
}

ol {
  margin: 0 0 1em 2em;
  list-style-type: decimal;
}

ul {
  margin: 0 0 1em 1em;
}

ul li {
  background:url("images/bullet.png") no-repeat 0 .5em;
  padding-left:1em;
}

input[type="text"], textarea {
	background-color:#fff;
  border-radius: 1px 1px 1px 1px;
	border:1px solid #b3b3b3;
	-webkit-box-shadow: inset 0 0 3px 1px #f2f2f2;
	box-shadow: inset 0 0 3px 1px #f2f2f2;
  font-family:Helvetica, Arial, sans-serif;
	font-size:1em;
	padding:2px 4px;
  margin:4px 4px 4px 0;
}

input[type="text"]:focus, textarea:focus {
	-webkit-box-shadow: inset 0 0 3px 1px #f2f2f2, 0 0 0 3px rgba(227, 143, 65, 0.2);
	box-shadow: inset 0 0 3px 1px #f2f2f2, 0 0 0 3px rgba(227, 143, 65, 0.2);
	outline: none;
}

select:focus {
	-webkit-box-shadow: 0 0 0 2px rgba(227, 143, 65, 0.2);
	box-shadow: 0 0 0 2px rgba(227, 143, 65, 0.2);
	outline: none;
}

input[type="submit"] {
    background-color:#e0e0e0;
    border: 1px solid #b8b9b8;
    border-radius: 6px 6px 6px 6px;
    -webkit-box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.075), inset -3px -3px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.075), inset -3px -3px 3px rgba(0, 0, 0, 0.1);
    color: #444;
    font-family:"Trade Gothic W01 Roman",Helvetica, Arial, sans-serif;
  	font-size:1.15em;
    line-height:1;
    padding: 2px 4px;
    text-shadow: 0 1px 1px #fff;
    margin:4px 4px 4px 0;
}

input[type="submit"]:hover, input[type="submit"]:focus {
  -webkit-box-shadow: inset -3px -3px 3px rgba(0, 0, 0, 0.05), 0 0 0 3px rgba(227, 143, 65, 0.2);
  box-shadow: inset -3px -3px 3px rgba(0, 0, 0, 0.05), 0 0 0 3px rgba(227, 143, 65, 0.2);
  outline:none;
}

input::-moz-focus-inner {
  border: 0;
}

input[type="submit"]:active {
	-webkit-box-shadow: inset 3px 3px 3px rgba(0, 0, 0, 0.05);
	box-shadow: inset 3px 3px 3px rgba(0, 0, 0, 0.05);
}

/* page structure */

#wrap {
	max-width:960px;
	margin:0 auto;
	padding:48px 10px 0 10px;
	min-height:100%;
}

/* header */

header[role="banner"] {
	position:fixed;
	top:0;
	left:0;
	z-index:10;
	width:100%;
	background:url('images/top5.png') repeat-x 50% 0;
	height:63px;
	display:block;
	border-top:2px solid #3d353c;
}

.wrapper {
	max-width:960px;
	margin:0 auto;
	padding:0 10px;
}

#tagline {
	color:#fff;
	float:left;
	font-size:0.857142857142857em; /* 13/14 */
	line-height:1.333333333333333em; /*16/12*/
	margin-top:15px;
}

#location {
	background:url('images/nc.png') no-repeat 100% 50%;
	padding:0 40px 3px 0;
	color:#fff;
	float:right;
	font-size:0.857142857142857em; /* 12/14 */
	line-height:1.333333333333333em; /*18/12*/
	margin-top:15px;
}

header[role="main"] {
	clear:both;
	height:101px;
	background:url('images/top-hr.png') no-repeat 50% 81px;
	text-align:center;
	padding:39px 0 0 0;
	display:block;
}

#logo {
	background:url('images/logo-sprite2.png') no-repeat 0 0;
	display:block;
	width:102px;
	height:88px;
  margin:0 auto;

	-webkit-animation-name: backward;
	-webkit-animation-timing-function: step-start;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-iteration-count: 1;

	-moz-animation-name: backward;
	-moz-animation-timing-function: step-start;
	-moz-animation-duration: 0.5s;
	-moz-animation-iteration-count: 1;
}

@-webkit-keyframes backward {
	0% { background-position: -714px 0px; }
	12.5% { background-position: -612px 0px; }
	25% { background-position: -510px 0px; }
	37.5% { background-position: -408px 0px; }		
	50% { background-position: -306px 0px; }
	62.5% { background-position: -204px 0px; }
	75% { background-position: -102px 0px; }
	87.5% { background-position: 0px 0px; }
}

@-moz-keyframes backward {
	0% { background-position: -714px 0px; }
	12.5% { background-position: -612px 0px; }
	25% { background-position: -510px 0px; }
	37.5% { background-position: -408px 0px; }		
	50% { background-position: -306px 0px; }
	62.5% { background-position: -204px 0px; }
	75% { background-position: -102px 0px; }
	87.5% { background-position: 0px 0px; }
}

#logo:hover {
	background-position: -714px 0px;

	-webkit-animation-name: foward;
	-webkit-animation-timing-function: step-start;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-iteration-count: 1;

	-moz-animation-name: foward;
	-moz-animation-timing-function: step-start;
	-moz-animation-duration: 0.5s;
	-moz-animation-iteration-count: 1;
}

@-webkit-keyframes foward {
	0% { background-position: 0px 0px; }
	12.5% { background-position: -102px 0px; }
	25% { background-position: -204px 0px; }
	37.5% { background-position: -306px 0px; }		
	50% { background-position: -408px 0px; }
	62.5% { background-position: -510px 0px; }
	75% { background-position: -612px 0px; }
	87.5% { background-position: -714px 0px; }
}

@-moz-keyframes foward {
	0% { background-position: 0px 0px; }
	12.5% { background-position: -102px 0px; }
	25% { background-position: -204px 0px; }
	37.5% { background-position: -306px 0px; }		
	50% { background-position: -408px 0px; }
	62.5% { background-position: -510px 0px; }
	75% { background-position: -612px 0px; }
	87.5% { background-position: -714px 0px; }
}


ul#main {
	float:left;
  font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
  font-weight:300;
	font-style:normal;
	font-size:1.142857142857143em; /* 16/14 */
	line-height:16px; /*16/16*/
	text-transform: uppercase;
	padding:0;
	margin:-70px 0 0 0;
}

ul#main li {
	padding:0 4px 0 0;
  list-style:none;
  float:left;
	position:relative;
}

ul#main li a {
  width:100%;
  height:100%;
  text-decoration:none;
}

ul#main li:after {
	content: ', ';
}

ul#main li:last-child:after {
	content: '';
}

#main li:hover span {
  display: block;
}

#main li span {
	display:none;
	position:absolute;
	top:-30px;
	left:0px;
	white-space:nowrap;
}

#main li span small:after {
  border-color: #46bad3 transparent;
  border-style: solid;
  border-width: 5px 5px 0;
  bottom: -5px;
  content: "";
  display: block;
  left: 15px;
  position: absolute;
  width: 0;
}

#main li span small {
	font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
  font-weight:300;
	font-style:normal;
	font-size:0.75em; /*12/16*/
	text-transform:none;
	line-height:1em;
	background:#46bad3 url('images/blue-shadow.png') repeat-x 0 0;
  border-radius: 5px 5px 5px 5px;
  color: #fff;
  padding: 6px 8px;
  position: relative;
}

#contact {
	float:right;
	text-align:right;
	font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
  font-weight:300;
	font-style:normal;
	font-size:1em; /* 14/14 */
	line-height:1.142857142857143em; /*16/14*/
	margin:-70px 0 0 0;
}

#contact a {
	text-decoration:none;
}


/* main */

article {
	clear:both;
  margin:-15px 0 0 0;
  float:left;
  max-width:460px;
}

article img {
	max-width:100%;
}

p.date, p.meta {
	font-family:franklin-gothic-urw-1, franklin-gothic-urw-2, Helvetica, Arial, sans-serif;
  font-weight:300;
	font-style:normal;
	text-transform: uppercase;
  font-size:0.785714285714286em; /* 11/14 */
	line-height:1.636363636363636em; /* 18/11 */
	color:#b2b2b2;
	margin:0 0 0.636363636363636em 0; /*7/11*/
}

article.full {
	max-width:960px;
}

article.full section {
	float:left;
	max-width:460px;
}

article.full section + section {
	margin-left: 40px;
}


/* asides */

aside {
	font-size: 0.857142857142857em; /* 12/14 */
	line-height:1.5em; /* 18/12 */
  float:left;
  width: 210px;
  margin:14px 0 0 40px;
}

aside p {
	margin: 0 0 1em 0; /*12/12*/
}

aside h2 {
	padding-top:1.545454545454545em; /*17/11*/
	background:url('images/hr.png') no-repeat 50% 5px;
	margin-top:1em; /*6/11*/
}

aside h2:first-child {
	padding-top:0;
	background:none;
	margin-top:0;
}

aside h2 + .textwidget p, aside h2 + ol {
	margin-top:0.5em; /*6/12*/
}

aside ol li {
	margin-bottom:0.5em;
}

/* other elements */

.post {
	background:url('images/hr.png') no-repeat 50% 100%;
	padding-bottom:2em;
	margin-bottom:2em;
}

img.bordered {
	border:1px solid #fdf1f1;
}

img.right {
	float:right;
	margin: 0 0 1em 1em;
}

img.left {
	float:left;
	margin: 0 1em 1em 0;
}

img.fluid {
	max-width:100%;
	height:auto;
	margin:1em 0 0 0;
}

.framed {
	display:block;
	background:url('images/photo-frame.png') no-repeat 0 0;
	width:466px;
	height:381px;
	max-width:auto;
	margin:1em 0 -6px -3px;
}

.framed img {
	width:430px;
	height:344px;
	margin:15px 0 0 18px;
}

article .framed {
	margin-bottom:1em;
}

.elsewhere {
	margin-bottom:0.5em;
}

.elsewhere img {
	vertical-align:middle;
	margin-right:2px;
}

.dribbbles {
	list-style:none;
	margin:0;
}

.dribbble-img {
	display:block;
	background:url('images/shot-frame.png') no-repeat 0 0;
	width:216px;
	height:172px;
	margin:1em 0 -6px -3px;
}

.dribbble-img img {
	width:180px;
	height:135px;
	margin:15px 0 0 18px;
}

.dribbble-over {
	display:none;
}


/* footer */

footer {
  clear:both;
	background:url('images/hr.png') no-repeat 50% 4em;
	padding:5em 0 2em 0;
  font-size:0.785714285714286em; /*11/14*/
  line-height:1.285714285714286em; /*18/14*/
  color:#666;
	display:block;
}

/* responsiveness */

@media screen and (max-width: 980px) {	
  .wrapper, #wrap {
		max-width:710px;
	}
	
	article {
		margin-top:-3px;
	}
	
	aside + aside {
		padding-top:1.545454545454545em; /*17/11*/
		background:url('images/hr.png') no-repeat 50% 5px;		
	}
	
	aside + aside h2:first-child {
		margin-top:0.545454545454545em; /*6/11*/
	}
	
	article.full section + section {
		margin-left: 0;
	}
	
}


@media screen and (max-width: 730px) {
  .wrapper, #wrap {
		max-width:460px;
	}
	
	ul#main {
		font-size:1em; /* 14/14 */
		line-height:16px; /*16/14*/
	}
	
	#contact a:first-child {
		display:block;
		margin:-1em 0 0 0;
	}
	
	article {
		margin-top:10px;
	}
	
	aside {
		margin:0 40px 0 0;
	}
	
	aside + aside {
		margin: 0;
		padding-top:0;
		background:none;
	}
	
	aside + aside h2:first-child {
		margin-top:0;
	}
	
}


@media screen and (max-width: 480px) {
  #location, #contact {
		display:none;
	}
	
	header[role="banner"] {
		position:absolute;
	}
	
	header[role="main"] {
		clear:both;
		height:99px;
		background:url('images/top-hr.png') no-repeat 50% 92px;
		text-align:center;
		padding:51px 0 0 0;
		display:block;
	}
	
	ul#main {
		margin:-112px 0 0 0;		
	}
	
	#contact {
		margin:-112px 0 0 0;
	}
	
	#contact a:first-child {
		display:block;
		margin:0;
	}
	
	article {
		width:100%;
	}
	
	aside {
		width:100%;
	}
	
	aside + aside {
		width:100%;
		padding-top:1.545454545454545em; /*17/11*/
		background:url('images/hr.png') no-repeat 50% 5px;		
	}
	
	aside + aside h2:first-child {
		margin-top:0.545454545454545em; /*6/11*/
	}
	
	pre {
		width:280px;
	}

	.framed {
		width:280px;
		height:229px;
		background-size:100% auto;
		max-width:auto;
		margin:0;
		padding:10px;
	}

	.framed img {
		max-width:auto;
		height:auto;
		margin:0;
	}
		
}

