/* @override http://glennsorrentino.com/css/screen.css?version=1 */

@import url(reset.css);

/* @group Generic */

/* @group Font Sizes and Margins */

body {
	background: #fff url('/images/layout/bg.png') repeat-x left top;
	color: #333;
	font-size: 62.5%;
	font-family: Helvetica, Arial, sans-serif;
	margin: 0px;
}

html, body {
	height: 100%;
}

.login #footer,
.login #footer-inner,
.push {
	height: 275px; /* .push must be the same height as .footer */
}

.login #footer-inner {
	height: 229px;
}

#wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -275px; /* the bottom margin is the negative value of the footer's height */
}



p,
td,
li,
th,
dt,
dd {
	font-size: 1.2em;
	line-height: 1.5em;
}

li li,
li p,
td li {
	font-size: 1.0em;
}

p {
	margin: 1.5em 0;
}

/* @end */

/* @group Headers */

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0.5em 0;
	font-weight: normal;
}

h1 {
	font-size: 6.6em;
	color: #fff;
	letter-spacing: -1px;
	text-align: center;
	position: absolute;
	width: 960px;
	bottom: 63px;
	margin: 0;
}

h2 {
	font-size: 3.6em;
	color: #fff;
	margin-bottom: 31px;
}

h2 span {
	background-color: #99cc00;
	padding: 4px 7px 2px;
}

h2 a:link,
h2 a:visited,
h2 a:hover,
h2 a:active {
	color: #fff;
	text-decoration: none;
}

h3 {
	font-size: 1.4em;
	font-weight: bold;
	border-bottom: 1px solid #99cc00;
	margin-bottom: 0;
	padding-bottom: 11px;
}

h4 {
	font-size: 1.8em;
}

h5 {
	font-size: 1.4em;
}

h6 {
	font-size: 1.2em;
}

/* @end */

/* @group Blockquotes */

blockquote {
	margin: 1em 0;
	background: transparent url('/images/layout/blockquote-left.png') no-repeat left top;
	font-size: 20px;
}

blockquote span {
	background: transparent url('/images/layout/blockquote-right.png') no-repeat right bottom;
	display: block;
	padding: 14px 35px 14px 45px;
}

blockquote p {
	margin: 1em;
}

blockquote p cite {
	display: block;
	text-align: right;
}

blockquote p cite:before {
	content: "— ";
}

hr {
	background-color: #99cc00;
	border: 0;
	height: 1px;
	padding: 0;
	margin: 27px 20px;
}

/* @end */

/* @group Lists */

ul,
ol {
	margin: 0.5em 0;
}

li {
	margin: 0.25em 0;
}

ul li {
	list-style: disc;
	margin-left: 1.6em;
}

ul.square li {
	list-style-type: square;
}

ol li {
	list-style: decimal;
	margin-left: 1.6em;
}

ul.horizontal li {
	border-right: 1px solid #999999;
	display: inline;
	float: left;
	margin: 0 0.8em 0 0;
	padding: 0 0.8em 0 0;
}
	
ul.horizontal li.last {
	border-right: 0 none;
	padding-right: 0;
	margin-right: 0;
}

/* @end */

/* @group Tables */

table {
	width: 100%;
}

table td,
table th {
	text-align: left;
}

/* @end */

/* @group Links */

a:link {
	color: #103961;
}

a:visited{ 
	color: #75808d;
}

a:hover {
	color: #b23514;
}

a:active {
	color: #67abe6;
}

/* @end */

/* @group Images, Pullquotes and Callouts */

a img {
	border-width: 0;
}

img {
	margin: 0;
	padding: 0px;
}

.image-left,
div.callout-left,
div.pullquote-left {
	display: inline;
	float: left;
	margin: 4px 23px 23px 0;
}

.image-right,
div.callout-right,
div.pullquote-right {
	display: inline;
	float: right;
	margin: 0 0 23px 23px;
}

div.image-left,
div.image-right {
 	width: 100px;
}

img.image-left,
img.image-right,
.image-left img,
.image-right img {
	border: 1px solid #ccc;
	padding: 2px;
	display: block;
}

.image-left p,
.image-right p {
	color: #999999;
	font-size: 1em;
	font-style: italic;
	margin: 0.5em 0;
}

div.pullquote-left,
div.pullquote-right {
	border-width: 3px 0;
	font-size: 160%;
	line-height: 1.5em;
	width: 344px;
}

div.callout-left,
div.callout-right {
	background-color: #666;
}

/* @end */

/* @group Clear */

.clear {
	height: 0px;
	line-height: 0px;
	clear: both;
}

.clear span {
	position: absolute;
	left: -9999em;
}

.group:after {
	clear: both;
	content: ".";
	display: block;
	height: 0px;
	visibility: hidden;
}

/* @end */

/* @group Grid */

.grid_1 { width:60px; }
.grid_2 { width:140px; }
.grid_3 { width:220px; }
.grid_4 { width:300px; }
.grid_5 { width:380px; }
.grid_6 { width:460px; }
.grid_7 { width:540px; }
.grid_8 { width:620px; }
.grid_9 { width:700px; }
.grid_10 { width:780px; }
.grid_11 { width:860px; }
.grid_12 { width:940px; }

.column {
	margin: 0 10px;
	float: left;
	display: inline;
}

.row {
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
}

.row .row {
	margin: 0 -10px;
	width: auto;
	display: inline-block;
}

/* @end */

/* @group Buttons */

a.button {
	display: block;
	text-indent: -99999px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center top;
	height: 54px;
}

a.button.resume {
	background-image: url('/images/layout/button-download-resume.png');
	margin-top: 48px;
}

a.button.send {
	background-image: url('/images/layout/button-send.png');
	margin-top: -6px;
	width: 146px;
	margin-left: 86px;
}

a.button.prev,
a.button.next {
	float: right;
	width: 51px;
	height: 44px;
	margin-top: 20px;
}

a.button.prev {
	background-image: url('/images/layout/button-prev.png');
	right: 73px;
}

a.button.next {
	background-image: url('/images/layout/button-next.png');
	width: 100px;
	margin-right: -25px;
}

a.button.contact {
	background-image: url('/images/layout/button-get-in-touch.png');
	width: 246px;
	margin: 0 auto;
}

a.button.login {
	background-image: url('/images/layout/button-login.png');
	width: 140px;
	margin-top: -1px;
	margin-left: -26px;
}

/* @end */

/* @group Layout */

#header {
	width: 960px;
	margin: 0 auto;
	height: 262px;
	position: relative;
	background: transparent url('/images/layout/header-bg.png') no-repeat center top;
	padding-top: 1px;
	z-index: 10;
}

#content-main {
	width: 915px;
	margin: -35px auto 0;
	background: transparent url('/images/layout/content-bg.png') no-repeat center top;
	padding: 21px 26px 6px;
	position: relative;
	z-index: 20;
}

/* @end */

/* @group Navigation */

#header ul {
	position: absolute;
	right: 0;
	top: 26px;
	border-top: 1px solid rgba(255,255,255,0.2);
	border-bottom: 1px solid rgba(255,255,255,0.2);
	height: 50px;
}

#header li {
	display: inline;
	float: left;
	margin: -2px 0;
}

#header li a {
	color: #fff;
	text-decoration: none;
	padding: 11px 11px 6px;
	display: block;
	font-size: 0.95em;
	-webkit-transition: background-color 1.05s ease-in-out;
}

#header li.last a {
	margin-left: 53px;
}

#header li a strong {
	font-size: 1.2em;
	display: block;
}

#header li.active a,
#header li a:hover {
	border-top: 2px solid #de8e69;
	border-bottom: 1px solid #de8e69;
	background-color: rgba(255,255,255,0.07);
	padding-top: 9px;
	-webkit-transition: background-color 0.3s ease-in-out;

}

a#title {
	color: #fff;
	font-size: 3.6em;
	margin-top: 40px;
	display: inline-block;
	text-decoration: none;
	line-height: 1em;
	text-indent: -9999px;
	background: transparent url('/images/layout/logo.png') no-repeat left top;
	width: 207px;
	height: 27px;
}

/* @end */

/* @group Footer */

#footer {
	background-color: #bb3517;
}

#footer-inner {
	background: transparent url('/images/layout/footer-bg.png') repeat-y center top;
	width: 939px;
	margin: 0 auto;
	padding-top: 20px;
	padding-bottom: 20px;
	position: relative;
}

#footer-inner h2 {
	font-size: 2.4em;
	margin: 0 0 5px 0;
}

#footer .callout {
	float: left;
	color: #fff;
	margin-right: 45px;
}

#footer .callout p {
	margin: 0;
	line-height: 1.6em;
}

#footer .callout p,
#footer .callout li {
	font-size: 1.1em;
}

#footer .callout a {
	color: #fff;
	text-decoration: none;
}

#footer .callout a:hover {
	text-decoration: underline;
}

#footer .callout ul {
	margin: 0;
}

#footer .callout li {
	margin: 1px 0;
	list-style: none;
}

#footer .callout ul.social li {
	margin-bottom: 7px;
}

#footer .callout ul li.last {
	margin-bottom: 0;
}

#footer .callout ul.social li a {
	background: transparent url('/images/layout/social.png') no-repeat left top;
	padding-left: 22px;
	display: inline-block;
	height: 16px;
}

#footer .callout ul.social li.rss a {
	background-position: 0 -16px;
}

#footer .callout ul.social li.skype a {
	background-position: 0 -32px;
}

#footer .callout ul.social li.twitter a {
	background-position: 0 -48px;
}

#footer .callout ul.social li.brandstack a {
	background-position: 0 -64px;
}

#footer .callout ul.social li.delicious a {
	background-position: 0 -80px;
}

#footer .callout ul.social li.flickr a {
	background-position: 0 -96px;
}

#footer .callout ul.social li.istockphoto a {
	background-position: 0 -112px;
}

#footer .callout.twitter {
	width: 214px;
}

#footer .callout.twitter p {
	margin: 0 0 0.8em;
	line-height: 1.4em;
}

#footer .callout.twitter p.follow {
	font-weight: bold;
	padding-left: 11px;
	margin: 1em 0;
}

#footer .callout-inner {
	background-color: rgba(255,255,255,0.08);
	padding: 7px 10px;
}

p.copy {
	color: #fff;
	position: absolute;
	right: -10px;
	top: 7px;
}

/* @end */

/* @end */

/* @group Client Login */

.login #content-main {
	padding-top: 66px;
	padding-bottom: 152px;
}

.login .form-container {
	width: 472px;
	margin: 0 auto;
	border: 1px solid #ccc;
	margin-bottom: 250px;
}

.login form {
	background-color: #f5f5f5;
	margin: 2px;
	padding: 34px 50px 11px;
}

.login td {
	padding: 10px 0;
}

form label {
	background-color: #99cc00;
	color: #fff;
	padding: 2px 5px;
	font-size: 20px;
}

form input {
	border: 1px solid #ccc;
	height: 25px;
	top: -1px;
	position: relative;
	width: 239px;
	padding: 0 5px;
	color: #999;
}

.login.display #content-main {
	padding: 30px 120px;
}

.login.display #content-main li {
	font-size: 1.6em;
	margin-left: 20px;
}

/* @end */

/* @group Contact */

.contact #content-main {
	padding-left: 71px;
	padding-top: 33px;
	padding-bottom: 58px;
}

.contact .form-container,
.blog.entry .form-container {
	border: 1px solid #ccc;
	width: 576px;
}

.contact form,
.blog.entry form {
	background-color: #f5f5f5;
	margin: 2px;
	padding: 34px 32px 10px 40px;
}

textarea {
	border: 1px solid #ccc;
	margin: 0;
	width: 375px;
	height: 183px;
}

.contact td,
.blog.entry td {
	padding-bottom: 20px;
}

.contact td.comments,
.blog.entry td.comments {
	padding-top: 4px;
}

.contact td.required,
.blog.entry td.required {
	color: #bb3517;
	font-size: 2em;
	padding-right: 5px;
}

.contact .contact-accessory {
	float: right;
	width: 250px;
	border-left: 1px solid #99cc00;
	padding-left: 34px;
	padding-right: 14px;
}

.contact .contact-accessory p {
	margin: 1em 0;
}

.contact .contact-accessory p.line-height {
	line-height: 1.8em;
	margin-top: 0;
}

.contact .contact-accessory strong {
	color: #99cc00;
}

.contact input.send,
.blog.entry input.submit {
	border: 0;
	width: auto;
	height: auto;
	margin-left: 82px;
}

/* @end */

/* @group Services */

.services #content-main {
	padding-bottom: 100px;
}

.services div.col1,
.services div.col2 {
	float: left;
	width: 447px;
}

.services div.col1 {
	margin-right: 20px;
}

.services p {
	margin-top: 11px;
}

.services h2 {
	margin-bottom: 17px;
}

/* @end */

/* @group Work */

body.work #content-main {
	width: 942px;
	padding-bottom: 24px;
	padding-top: 28px;
}

body.work h2 {
	margin-left: 14px;
	margin-top: 6px;
	margin-bottom: 28px;
}

ul.work li {
	list-style: none;
	margin: 0 14px 26px;
	width: 280px;
	float: left;
	padding: 2px;
	border: 1px solid #ccc;
}

ul.work li a {
	display: block;
	text-indent: -9999px;
	height: 174px;
	width: 280px;
	background-repeat: no-repeat;
	background-position: center center;
}

/* @end */

/* @group Work Detail */

.work-detail #content-main {
	padding-top: 9px;
	padding-bottom: 55px;
}

.work-detail p.back {
	font-size: 1em;
}

.work-detail p.back a {
	background: transparent url('/images/layout/arrow-left-black.png') no-repeat center left;
	padding-left: 8px;
	color: #333;
	text-decoration: none;
	font-weight: bold;
	text-transform: uppercase;
}

.work-detail #content-main p.launch {
	margin-bottom: 0.3em;
}

.work-detail p.launch a {
	background: transparent url('/images/layout/arrow-right-green.png') no-repeat center right;
	padding-right: 9px;
	color: #99cc00;
	text-decoration: none;
	font-weight: bold;
	text-transform: uppercase;
}

.work-detail p.back a:hover {
	text-decoration: underline;
}

.work-detail .description {
	float: right;
	width: 602px;
	position: relative;
	padding-left: 23px;
	padding-right: 10px;
}

.work-detail .description p {
	margin: -4px 0 1em;
}

.work-detail .description p.last {
	margin-bottom: 0;
}

.work-detail p.credits {
	font-size: 1.4em;
	margin-top: -2px;
	margin-bottom: 0;
}

.work-detail p.credits strong {
	font-size: 20px;
	font-weight: normal;
	background-color: #99cc00;
	color: #fff;
	padding: 4px 5px 2px;
	display: inline-block;
	margin-right: 4px;
	margin-bottom: 12px;
	position: relative;
	top: 2px;
}

.work-detail p.credits strong.last {
	margin-bottom: 2px;
}

.work-detail .details {
	background: transparent url('/images/layout/green-dot.gif') repeat-y 279px;
}

#content-slider {
	margin-top: 30px;
	height: 825px;
	overflow: hidden;
}

#content-slider img {
	border: 1px solid #ccc;
	padding: 2px;
	margin: 0 auto;
	display: block;
}

#controller {
	display: none;
}

/* @end */

/* @group Homepage */

.home #content-main {
	padding: 0;
	width: 960px;
	background-image: none;
	margin-top: -30px;
}

#carousel-container {
	height: 380px;
	background: transparent url('/images/layout/carousel-bg.png') no-repeat left bottom;
	position: relative;
	overflow: hidden;
}

#carousel-container img {
	margin-top: -5px;
}

#carousel .desc {
	float: left;
	width: 239px;
	padding: 22px 25px;
}

#carousel .desc p {
	color: #ddd;
	margin: 0;
	line-height: 1.7em;
}

#carousel-container li {
	list-style: none;
	margin: 0;
}

#carousel h2,
#carousel h2 a {
	color: #fff;
	text-transform: uppercase;
	font-size: 36px;
	margin-bottom: 5px;
	text-decoration: none;
}

ul.carousel-index {
	position: absolute;
	top: 327px;
	left: 25px;
	z-index: 100;
}

ul.carousel-index li {
	display: inline;
	float: left;
	padding-top: 1px;
}

ul.carousel-index li.active {
	border-top: 1px solid #3d3d45;
	border-bottom: 1px solid #3d3d45;
	padding-top: 0px;
}

ul.carousel-index li.active a {
	background-color: #24242d;
}

ul.carousel-index a {
	color: #fff;
	text-decoration: none;
	padding: 0px 5px;
	display: inline-block;
	margin: 1px 1px;
}

.home h2 {
	margin-bottom: 18px;
}

.home p {
	margin: 0.9em 0 1.7em;
}

.home .col1,
.home .col2,
.home .col3 {
	float: left;
	width: 280px;
	margin: 18px 10px 31px;
	display: inline;
}

.home .col1,
.home .col2 {
	margin-right: 30px;
}

.home .col3 {
	width: 300px;
}

.home hr {
	margin: -5px 0 30px;
}

.home .image-left {
	margin: 4px 10px 10px 0;
}

/* @end */

/* @group Blog */

.blog h2 {
	margin-top: 6px;
	margin-bottom: 0;
}

.blog h3 {
	font-size: 2.2em;
	color: #fff;
	margin: 5px 0 0;
	border: 0;
}

.blog h3 span {
	background-color: #99cc00;
	padding: 4px 7px 2px;
}

.blog a.more {
	font-size: 14px;
	color: #fff;
	background-color: #99cc00;
	padding: 4px 7px 5px;
	display: inline-block;
	text-decoration: none;
}

.blog p.date {
	margin-top: 8px;
	margin-bottom: 19px;
}

.blog p.date a {
	color: #fff;
	margin: 5px 0 0;
	border: 0;
	color: #333;
}

.blog #content-main {
	padding-top: 33px;
}

.blog #content-main-inner {
	border-right: 1px solid #e5e5e5;
	float: left;
	width: 666px;
	padding-right: 29px;
}

.blog #content-sub {
	float: right;
	width: 197px;
	border-left: 1px solid #e5e5e5;
	padding-left: 21px;
	position: relative;
	left: -1px;
}

.blog #content-main img {
	border: 1px solid #bfbfbf;
	padding: 3px;
	margin: 0;
	position: relative;
	top: 3px;
}

.blog #content-main hr {
	margin: 42px 0 47px;
}

.blog.entry #content-main hr {
	margin: 32px 0;
}

.blog #content-main img[align=left] {
	margin: 0 10px 10px 0;
}

.blog #content-main img[align=right] {
	margin: 0 0 10px 10px;
}

.blog #content-sub ul {
	list-style: none;
	margin: -1px 0 37px;
}

.blog #content-sub ul li {
	list-style: none;
	margin: 0;
}

.blog #content-sub ul li a {
	color: #333;
	text-decoration: none;
}

.blog #content-sub ul li a:hover {
	text-decoration: underline;
}

.blog #content-sub hr {
	margin-top: -18px;
	margin-bottom: 22px;
	margin-right: -3px;
}

.blog #content-sub img {
	margin: 0 0 12px 0;
	border: 0;
	padding: 0;
}

.blog-entry h2 {
	font-size: 22px;
	margin-top: 40px;
}

dl.comment {
	margin-bottom: 25px;
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 25px;
}

dl.comment dt {
	float: right;
	font-size: 1.2em;
	width: 570px;
	line-height: 1.5em;
	margin-bottom: 5px;
}

dl.comment dt strong {
	font-size: 1.2em;
	line-height: 1.4em;
}

dl.comment dd {
	width: 570px;
	float: right;
	font-size: 1.2em;
}

dl.comment dd p {
	font-size: 1em;
	margin-top: 0.8em;
}

dl.comment dd.avatar {
	float: left;
	width: auto;
	margin-top: 1px;
}

dl.comment dd.avatar img {
	border: 3px solid #595959;
}

.blog.entry form {
	padding-left: 17px;
	padding-top: 29px;
}

.blog.entry input.submit {
	margin-left: 87px;
}

.blog.entry .form-container {
	margin-top: 20px;
}

.blog.entry #content-main {
	padding-bottom: 95px;
}

.blog p.paging {
	margin-bottom: 0;
}

.blog a.paging {
	background: transparent url('/images/layout/blog-paging.png') no-repeat left top;
	display: inline-block;
	text-indent: -99999px;
	height: 16px;
	width: 16px;
	margin-left: 3px;
}

.blog a.paging.next {
	background-position: -28px;
}

.blog #content-main {
	padding-bottom: 18px;
}

/* @end */