/*
* Copyright (c) 2010 Supercake Design
*/

/*
#0099FF = blue 
#00CCFF = lightblue
#FF9900 = orange
#FFCC66 = light orange
#333 = off black
*/

/* @group General */
body {
	font-family: helvetica, san-serif; /* "Trebuchet MS" */
	color: #333;
	background-color:#FFF;
}
#page {
	width: 1024px;
	margin: 0 auto;
}
a {
	color: #0099FF;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a:active, a:focus {outline: 0;} /* firefox link borders */
header, nav {
	display: block;
	height: 250px;
	position: absolute;
}		
header {
	background-image: url("/images/header.gif");
	width:788px;
}
nav {
	width: 370px; /* 788 (header) - 418 (home button hit area) */
	margin-left: 418px; /* otherwise nav covers home button */
}
header h1 a {
	text-indent: -9999px;
	display: block;
	width: 418px;
	height: 165px;
}
header p {
	text-indent: -9999px;
}
nav li {
	float: left;
}
nav li a {
	text-indent: -9999px;
	display: block;
	position: relative;
	
	background-image: url("/images/rollover_arrow.gif");
	background-repeat: no-repeat;
	background-position: center -210px;
	
	overflow: hidden; /* firefox link click fix */
}

nav li a.about:hover { background-position: 22px -68px; }
nav li a.portfolio:hover { background-position: 31px -68px; }
nav li a.contact:hover { background-position: 28px -69px; }

nav li.selected a.about { background-position: 22px 2px; }
nav li.selected a.portfolio { background-position: 31px 2px ; }
nav li.selected a.contact { background-position: 28px 1px ; }

/* no hover for selected link */
nav li.selected a.about:hover { background-position: 22px 2px; }
nav li.selected a.portfolio:hover { background-position: 31px 2px ; }
nav li.selected a.contact:hover { background-position: 28px 1px ; }


nav li a.about {
	top: 115px;
	left: 32px; /* 450 from 0 0, subtract 418 nav offset */
	width: 80px;
	height: 52px;
}
nav li a.portfolio {
	top: 81px;
	left: 70px; /* 488 from 0 0, subtract 418 nav offset */
	width: 98px;
	height: 56px;	
}
nav li a.contact {
	top: 49px;
	left: 98px; /* 516 from 0 0, subtract 418 nav offset */
	width: 90px;
	height: 52px;
}
section {		
	display: block;
	width: 1024px;
	padding-top: 250px;
}
strong {
	font-weight: bold;
}
footer {
	background-image: url("/images/footer_line.gif");
	background-repeat: repeat-x;
	background-position: center;
	
	display:block;
	margin-bottom: 15px;
	
	width:1009px;
	left:15px;
	
	font-size: 1.4em;
	height: 1em;
	
	clear: both;
	letter-spacing:0.08em; /* ff 0.13em; */
}
footer p {
	background-color:#FFF;
	float: right;
	padding: 0 15px;
	margin-bottom:10px;
}

section img, nav, header {
	user-select: none;
	/*-moz-user-select: none;*/ /* firefox is not */
	-khtml-user-select: none;
}
/* @end */


/* @group Debug */
header h1 a,
nav li a {
	/*background-color: rgba(255,0,0,0.2);*/
}
/* @end */


/* @group Home */
#page.home {
	background-image: url("/images/comic_strip_top.gif");
	background-repeat: no-repeat;
}
#page.home section {
	background-image: url("/images/comic_strip_bottom.gif");
	background-repeat: no-repeat;
	background-position: bottom left;

	padding-top: 637px; /* 622px for comic_strip_top + padding */
	padding-bottom: 76px; /* 79px for comic_strip_bottom - padding for overlap */
	text-align: center;
	line-height: 1.65em;
	
	/*font-size: 1.75em;
	letter-spacing: 0.13em;*/ /* letter-spacing: 0.16em; */
	
	font-size: 1.85em;
	letter-spacing: 0.1em;
	
	margin-bottom: 60px; /* for footer */
}
.iphone #page.home section p {
	-webkit-text-size-adjust: none; /* iphone fix */
}
/* @end */


/* @group Portfolio */
#page.portfolio {
	background-image: url("/images/port_top.gif");
	background-repeat: no-repeat;
}
#page.portfolio section {
	background-image: url("/images/port_bottom.gif");
	background-repeat: no-repeat;
	background-position: bottom left;
	
	padding-top:315px;
	
	margin-bottom: 60px; /* for footer */
}
#page.portfolio section h1,
#page.portfolio section p {
	text-indent: -9999px;
} 
#page.portfolio section li p {
	text-indent: 0;
}
#page.portfolio section > ul {
	padding: 0 15px;	
}
#page.portfolio section h2 {
	font-size: 1.75em; /* 1.85em  */
	letter-spacing: 0.16em;
}
#page.portfolio section p,
#page.portfolio section .images li {
	font-size: 1.5em;
	line-height: 1.3em;	
	letter-spacing: 0.06em;
}
#page.portfolio section li {
	display: block;
	margin-bottom: 85px;
	float:left;
}
#page.portfolio section .images ul {
	float: left;
	/*width: 327px;*/ /* check with other browsers */
	width: 322px; /* opera fix */
}
#page.portfolio section .images li {
	margin-bottom: 0; /* cancel out portfolio items bottom margin */
	color: #0099FF; /* for commas to look the same */
	float: left;
	padding-top:5px;
}
#page.portfolio section .images li:after {
	content: ",";
}
#page.portfolio section .images li:last-child:after {
	content: "";	
}
#page.portfolio section .images p {
	padding: 5px 0 10px 0;
	float: left;
}
#page.portfolio section .images li a,
#page.portfolio section .images p {
	/*letter-spacing: 0.067em; */
}
#page.portfolio section .images > a {
	display:block;
	height: 242px; /* 240 plus border */
}
#page.portfolio section .images ul a {
	padding:5px 0 5px 0.5em;
}
#page.portfolio section h2 {
	padding: 5px 5px 10px 0;
	float: left;
	clear: both;
}
#page.portfolio section img {
	margin: 0;
}
#page.portfolio section .images {
	width: 427px;
	/*min-height: 241px;*/
}
#page.portfolio section img {
	width: 425px;
	height: 240px;
	border: 1px solid #DDDDDD;
}
#page.portfolio section .description {
	width: 560px;
	/*margin-top: 20px;*/
}
#page.portfolio section .description {
	margin-top: 25px;
}
#page.portfolio section .description p {
	padding: 0.65em 0;
	padding: 0.2em 0 1.1em 0;
}
#page.portfolio section .description p.skills {
	/*margin-bottom: 0;*/ /* last element */
	display: inline-block;
	padding-right: 15px;
	padding-bottom: 0.3em;
}

/* odd */
#page.portfolio section li.odd .images {
	float: left;
}
#page.portfolio section li.odd .description {
	float: right;
	clear: both;
}
#page.portfolio section li.odd .description p {
	padding-left: 25px;
}
#page.portfolio section li.odd h2 {
}
/* even */
#page.portfolio section li.even .images {
	float: right;
}
#page.portfolio section li.even .description {
	float: left;
	clear: both;
}
#page.portfolio section li.even .description p {
	/*padding-right: 25px;*/
	margin-right:25px;
}
#page.portfolio section li.even .description p.skills {
	padding-right: 15px;
}
#page.portfolio section li.even h2 {
	margin-left:560px;
}

/* page fix - to force section to grow height */
#page.portfolio section {
	float: left;
	padding-bottom: 40px;
}

/* color */
#page.portfolio h2,
#page.portfolio .images li,
#page.portfolio .description p,
#page.portfolio section .images p {
	background-color: #FFF;
}
#page.portfolio section .images > a {
	border-bottom:5px solid #FFF;
}

/* lost project gained note - using different background image */
.iphone #page.portfolio section {
	-webkit-text-size-adjust: none; /* iphone fix */
}
#page.portfolio section .images ul li:last-child a:last-child { /* safari fix */
	padding-right:10px;
}
#page.portfolio ul {
	float: left;
	/* margin-bottom: 40px; !!! bg change */
	margin-bottom: 18px;
}
.iphone #page.portfolio ul {
	margin-bottom: 27px; /* !!! bg change */
}
#page.portfolio .images ul {
	margin-bottom: 0;
}
#page.portfolio #note {
	clear: both;
	text-align:center;
	margin-bottom:110px;
}
#page.portfolio #note p {
	text-indent: 0;
}
/* @end */



/* @group Super Box */
/* general */
#sb_bg {
	background-color: #000;
	opacity: 0.1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; /* IE8 */
    filter: alpha(opacity=10); /* IE7 */
	position: fixed;
	/*position: absolute;*/
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 98;
}
#sb_box {	
	position: fixed;
	
	width: 850px; /* should match image */
	height: 480px; /* should match image */
	
	padding: 36px 20px;
	-webkit-box-shadow: 1px 5px 50px #333;
	-moz-box-shadow: 1px 5px 20px #333; /* firefox has a compensated distance to be the same as safari */
	background-color: #FFF;
	text-align: center;
	font-size: 1.6em;
	letter-spacing: 0.05em; 
	z-index: 99;
}

/* link fix */
#sb_box a:hover {
	text-decoration: none;	
}
#sb_box a.selected span,
#sb_box a:hover span {
	text-decoration: underline;
}

/* header */
#sb_header {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	margin-top: 5px;
}
#sb_box h1 {
	text-align: left;
	padding-left: 20px;
	margin-top: 5px;
	font-weight: normal;
}
.sb_close {
	float: right;
	margin-right: 15px;
	padding: 5px;
}

/* image */
#sb_image {
	position: relative;
	width: 100%;
	height: 100%;
}
#sb_image img {
	width: 100%;
	height: 100%;
	z-index: 100;
}
#sb_image .sb_next,
#sb_image .sb_prev {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	text-indent: -9999px;
	z-index: 100; /* higher stacking order than loading */
	overflow: hidden; /* firefox indent fix */
    background-image: url(data:image/gif;base64,AAAA); /* IE FIX */
}
#sb_image .sb_next {
	right: 0;
}
#sb_image .sb_prev {
	left: 0;
}


/* footer */
#sb_footer {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	margin-bottom: 10px;
}
#sb_footer #sb_progress {
	padding: 0 5px;
}
#sb_footer .sb_next,
#sb_footer .sb_prev {
	padding: 5px;
}

/* no select */
#sb_footer,
#sb_image .sb_prev,
#sb_image .sb_next,
#sb_header.close {
	user-select: none;
	-moz-user-select: none;
	-khtml-user-select: none;
}

/* loading */
#sb_loading {
	display: none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url("/images/loading.gif");
	background-repeat: no-repeat;
	background-position: center;
	text-indent: -9999px;
}
#sb_box.loading #sb_image img {
	display: none;
}
#sb_box.loading h1 {
	text-indent: -9999px;
}
#sb_box.loading #sb_loading {
	display: block;
}
/* @end */

/* @group Super Box - tweaks */
/* replace helvetica chevrons */
#sb_footer .sb_next,
#sb_footer .sb_prev {
	font-family: "Trebuchet MS", helvetica, san-serif;
}
#sb_footer .sb_next span,
#sb_footer .sb_prev span {
	font-family: helvetica, san-serif;
}
/* stops progress from shifting the prev and next buttons */
#sb_footer #sb_progress {
	/*padding: 0 15px 0 5px;*/
	padding:0 17px 0 0;
	display:inline-block;
	width:70px;
	text-align:right;
}
/* @end */

/* @group About */
#page.about section h1 {
	text-indent: -9999px;
}
#page.about .intro {
	background-image: url("/images/about_top.gif");
	background-repeat: no-repeat;
	background-position: bottom;
	padding: 220px 100px 200px 100px;
	text-align: center;
}
#page.about section p {
	font-size: 1.5em;
	line-height: 1.3em;	
	letter-spacing: 0.06em;
	padding: 0.5em 0;
}
#page.about section .intro p {
	background-color: #FFF;
}
#page.about section .intro p:first-child {
	background-color: transparent;	
}
#page.about  {
	background-image: url("/images/about_header_top.gif");
	background-repeat: no-repeat;
	background-position: top;
}
#page.about section  {
	background-image: url("/images/about_bottom.gif");
	background-repeat: no-repeat;
	background-position: bottom;
	padding-top: 0;
	float: left; /* to make .design & .development push out */
	padding-bottom: 80px;
	margin-bottom:60px;
}
#page.about section h2 {
	font-size: 1.75em; /* 1.85em  */
	letter-spacing: 0.16em;
	margin-bottom: 0.5em;
}
#page.about section .design,
#page.about section .development {
	float: left;
	margin:0 15px;
	width:482px;
	position:relative;
	top: -30px;
}
/* @end */

/* @group Contact */
#page.contact  {
	background-image: url("/images/about_header_top.gif");
	background-repeat: no-repeat;
	background-position: top;
}
#page.contact form {
	background-image: url("/images/contact_top.gif");
	background-repeat: no-repeat;
	background-position: top;
	padding-top: 80px;
}
#page.contact section {
	background-image: url("/images/contact_bottom.gif");
	background-repeat: no-repeat;
	background-position: bottom;
	padding-bottom: 100px;
	margin-bottom:60px;
}
#page.contact section h1 {
	text-indent: -9999px;
	float: left;
}
#page.contact section {
	padding-top: 185px;
}
#page.contact section p {
	font-size: 1.5em;
	line-height: 1.3em;	
	letter-spacing: 0.06em;
}
#page.contact section .error {
	color: #FF0000;
	display: inline;
	padding-left: 1em;
}
#hasJS #page.contact section p.intro { /* email protection */
	visibility: hidden;
	min-height: 70px;
	width: 345px;
}
#page.contact section p.intro {
	position: relative;
	left: 605px;
	width: 325px;
	text-align: center;
	font-size: 1.6em;
}
#page.contact section form fieldset {
	margin-left: 240px;
	white-space:nowrap; /* fix for safari when enlarging the textarea */
}
#page.contact section form input,
#page.contact section form textarea {
	letter-spacing: 0.01em;
	font-size: 1.6em;
	line-height: 1.4em;	
	padding: 0.2em;
	position: relative;
	left: -210px;
	margin-bottom:20px;
	font-family: helvetica, san-serif;
}
#page.contact section form label {
	letter-spacing: 0.06em;
	font-size: 1.5em;
	line-height: 1.3em;	
}
#page.contact section form input {
	width: 300px;
}

#page.contact section form textarea {
	width: 500px;
	height: 180px;
}
#page.contact section form label {
	position: relative;
	display: block;
	width: 200px;
	float: left;
	margin-left: 10px;
	z-index: 200;
	color: #FF6600;
	color: #FF9900;
	color: #777;
	padding: 0.45em 0;
}
#page.contact section #submit {
	left: -3px;
	width: auto;
	letter-spacing: 0.06em;
	height:2em;
}
	
.browser #page.contact section #submit { /* not iphone - iphone gets iphone default */	
	/* remove default button style - replace with blue box */
	background-color: #0099FF;
	left: 0;
	border: 1px solid #FFF;
	padding: 0.2em 1em;
	color: #FFF;
}
.browser #page.contact section #submit:hover { /* not iphone - iphone gets iphone default */
	border: 1px solid #00CCFF;
}

/* no select */
#hasJS label {
	user-select: none;
	-moz-user-select: none;
	-khtml-user-select: none;
}

/* no js */
#noJS #page.contact section form label {
	float: none;
}
#noJS #page.contact section form input,
#noJS #page.contact section form textarea {
	left: 0;
	margin-left: 10px;
	margin-bottom: 10px;
}
#noJS #page.contact section {
	padding-bottom: 120px;	
}

/* thankyou & server error */
#page.contact section p.thankyou,
#page.contact section p.send_error {
	font-size:1.7em;
	letter-spacing:0.07em;
	margin-bottom:120px;
	margin-top:120px;
	text-align:center;
}
#page.contact section p.send_error {
	color: #FF0000;
}
/* @end */


/* @group Thankyou */
#page.thankyou  {
	background-image: url("/images/about_header_top.gif");
	background-repeat: no-repeat;
	background-position: top;
}
#page.thankyou section {
	background-image: url("/images/thankyou_bottom.gif");
	background-repeat: no-repeat;
	background-position: bottom;
	padding-bottom: 150px;
	margin-bottom:60px;
}
#page.thankyou section h1 {
	text-indent: -9999px;
}
#page.thankyou section p {
	font-size:1.7em;
	letter-spacing:0.07em;
	margin-bottom:110px;
	margin-top:30px;
	text-align:center;
}
/* @end */


/* @group Error */
#page.error h1 {
	text-indent: -9999px;
	float: left;
}
#page.error section {
	text-align: center;
	background-image: url("/images/error_bottom.gif");
	background-repeat: no-repeat;
	background-position: bottom;
	margin-bottom: 20px;
	padding-bottom: 100px;
	padding-top: 35px;
}
#page.error section p {
	font-size: 1.7em;
	line-height: 1.4em;	
	letter-spacing: 0.06em;
	padding: 0.0em 0;
}
#page.error section img {
	padding-bottom: 15px;
}
/* @end */


/* pixel font size - could have em fallback for IE? */
/*
font-size:15px;
letter-spacing:0.75px;
line-height:21px;
*/
/* reduce size test */
