section,nav { display: block; }

html {
	overflow-y: scroll;
}


body {
	margin: 0;
	padding: 0;
	background: #F2F1ED;
	color: #444;
}

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

p {
	margin: 1em 0;
}

#primary-nav {
	position: absolute;
	top: 0;
	z-index: 199;
	margin: 40px 0 0;
	width: 100%;
	background: #F2F1ED;
	color: #999;
}

#primary-nav .container_12 {
	position: relative;
}

#home-link {
	display: block;
	margin: 0 0 20px 10px;
	overflow: hidden;
}

#home-link img {
	display: block;
	width: 85px;
	height: 53px;
}

#hello-link {
	position: absolute;
	margin-top: 20px;
	top: 0;
	right: 10px;
	font-size: 120%;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	color: #999;
	text-decoration: none;
}
#hello-link:hover,
#hello-link:active {
	color: #666;
}


#blog-link {
	position: absolute;
	margin-top: 20px;
	top: 0;
	right: 98px;
	font-size: 120%;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	color: #999;
	text-decoration: none;
}
#blog-link:hover,
#blog-link:active {
	color: #666;
}


#primary-nav .rule {
/*	width: 940px;*/
/*	margin: 0 auto;*/
	border-bottom: 7px solid #262626;
}

#primary-nav .navitem {
	position: relative;
	color: #999;
	text-decoration: none;
	padding-bottom: 10px;
}

#primary-nav .navitem:hover,
#primary-nav .navitem:active {
	color: #666;
}

#primary-nav .navitem.current,
#hello-link.current {
	color: #DE5A51;
}
#primary-nav .current h2 {
	border-color: #de5a51;
}

#primary-nav .last {
	margin-right: 0;
}

.navitem h2 {
	border-bottom: 1px solid #999;
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	font-weight: normal;
	padding-bottom: 5px;
}

.navitem p {
	font-size: 90%;
	margin: 1em 0;
	width: 200px;
}

#primary-nav span.controls {
	width: 23px;
	height: 23px;
	position: absolute;
	top: 70px;
	right: 0px;
	background: url(../i/controls.png) center top no-repeat;
}

.up span.controls {
	background-position: left top !important;
}

.current span.controls {
	background-position: right top !important;
}


#content {
/*        background-color: #eee;*/
/*	position: relative;*/
	position: absolute;
	z-index: 100;
}

#content div.inner {
	padding-top: 250px;
	padding-bottom: 20px;
}

#viewport {
	margin: 0;
	overflow: hidden !important;
	position: relative !important;
	z-index: 5;
/*	width: 940px;*/
	/*        background-color: #ccc;*/
}

#home-logo {
	margin: 20px 10px;
	display: block;
}

#home-panel {
	background: white url(../i/diagonal-line.png?v1) left 80% no-repeat;
	height: 400px;
	margin-bottom: 160px;
}
#home-panel-inner {
	background: url(../i/diagonal-line.png?v1) right top no-repeat;	
}

#home-panel .grid_12 {
	border-top: 10px solid #262626;
	position: relative;
}

#apps-schmapps {
	display: block;
	margin: 55px 0 0;
	width: 739px;
	padding-top: 266px;
	height: 0;
	overflow: hidden;
	background: url(../i/apps-schmapps.png) left top no-repeat;
}
#nizopromo {
    position: absolute;
    left: -25px;
    padding-left: 25px;
    background: url(../i/arrow.png) left center no-repeat;
    top: 385px;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
}

#footer {
	clear: both;
	color: #888;
	margin-top: 30px;
	font-size: 90%;
}

#footer .grid_12 {
	border-top: 10px solid #262626;
	padding: 15px 0 20px;
	background: url(../i/logo-85.gif) right 30px no-repeat;
}

#home #footer .grid_12 {
	border-top: none;
}

#footer a:link,
#footer a:visited {
	color: #888;
}
#footer a:active,
#footer a:hover {
	color: #DE5A51;
	text-decoration: none;
}

#our-story {
	margin-top: 30px;
	background: url(../i/our-story.png) left top no-repeat;
	padding-top: 127px;
	height: 0;
	overflow: hidden;
	width: 300px;
}

.leader {
	font-size: 140%;
	line-height: 1.2;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	color: #DE5A51;
}

#our-story-page .leader {
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
}
#our-story-page blockquote.leader {
	font-size: 160%;
	border-bottom: none;
	margin-top: 0;
}

.attribution {
	font-size: 90%;
}

#content h2 {
	font-size: 140%;
	color: #333;
	margin: 30px 0 10px;
}

.twitter-icon {
	padding-top: 60px;
}

.twitter-icon-blank {
	background-image: none;
}

h2#clients {
	margin-top: 0;
}

#break-it-down {
	background: url(../i/lets-break-it-down.png) left top no-repeat;
	padding-top: 218px;
	height: 0;
	overflow: hidden;
	width: 618px;
	margin-top: 20px;
}

#break-it-down-page .leader {
	margin-top: 150px;
	border-top: 1px solid #DE5A51;
	font-size: 130%;
}

#contact {
	height: 775px;
	background: url(../i/map.jpg) left 250px no-repeat;
	position: relative;
}

#contact .grid_4 {
	margin-top: 80px;
	height: 475px;
	background: #fff;
	width: 320px;
	position: relative;
	z-index: 100;
}

#contact .small-inner {
	padding: 0 10px;
}

#map-div {
	position: absolute;
	z-index: 50;
/*	top: 0;*/
	left: 0;
	width: 940px;
	height: 775px;
}

#say-hello {
	height: 0;
	overflow: hidden;
	padding-top: 130px;
	width: 300px;
	background: url(../i/say-hello.png) left top no-repeat;
	margin-top: 50px;
}

a.pushout {
	padding-left: 44px;
	margin-left: -44px;
	background: white url(../i/contact-arrow.png) 10px center no-repeat;
	display: block;
	line-height: 35px;
	height: 35px;
	margin-bottom: -1.6em;
}

#the-process-panel {
	background: white url(../i/diagonal-line.png?v1) left 80% no-repeat;
	padding-bottom: 0;	
}

#the-process-panel .container_12 {
/*	margin: 0;*/
}

#the-process-heading {
	margin-top: 50px;
	width: 300px;
	height: 0;
	overflow: hidden;
	padding-top: 109px;
	background: url(../i/the-process.png) left top no-repeat;
}

.next-link {
	display: block;
	padding-top: 32px;
	height: 0;
	overflow: hidden;
	width: 32px;
	background: url(../i/big-arrow.png) left top no-repeat;
}

#the-process #scroll-container {
	overflow: hidden;
	width: 100%;
	margin: 30px 0 0;
	padding-bottom: 10px;
}

#the-process #scroll-content {
	width: 3520px;
	height: 300px;
}

#the-process .subnav ul {
	list-style-type: none;
	margin: 0;
}

#the-process .subnav li {
	float: left;
	display: inline;
	padding: 0;
	margin: 0 15px 0 0;
	font-size: 89%;
}

#the-process .subnav a {
	float: left;
	display: inline;
	color: #111;
}

#the-process .subnav a.current {
	text-decoration: none;
	color: #DE5A51 !important;
}

#the-process #position {
	text-align: right;
	border-bottom: 3px solid #262626;
	font-size: 250%;
	width: 150px;
	margin: 10px 0;
	letter-spacing: 3px;
}

#track {
	clear: both;
	padding-bottom: 50px;
	background: transparent !important;
}

#handle {
	height: 25px;
	width: 192px;
	background: url(../i/scroll-handle.png) center center no-repeat;
}

#scroll-content img {
	display: block;
	width: 300px;
	height: 200px;
}

#the-process h3 {
	font-size: 110%;
	margin: 20px 0 10px;
	color: #666;
}

#the-process p {
	font-size: 90%;
	color: #666;
	margin-top: 10px;
}

.placeholder {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #F2F1ED;
	z-index: 50;
}

#the-process-panel .placeholder {
	background: white;
}

/* blog specific styles */

#blog .blogcontent {
    position: relative;
    margin: 0;
    padding: 0;
}

#blog > .blogviewport {
    padding: 0 0 2em 35px;
    margin: 0 0 0 -35px;
    border: 0;
    overflow: hidden;
    position: relative;
}

#blog h1 {
    text-transform: uppercase;
    color: #DE5A51;
    padding-bottom: 1px;
    border-bottom: 1px solid #B4B3AF;
    margin-bottom: 20px;
}
#blog h1 a {
    text-decoration: none;
    color: #DE5A51;
    -webkit-transition: color 100ms linear;
}

#blog h1 a:hover {
    color: #FD7169;
}

.blog #blog-link, #blog-link.current {
    color: #DE5A51;
}


#blog .categories, #blog .featured {
    margin: 20px 0 0 0;
    padding: 0;
    text-indent: 0;
}

#blog .categories li, #blog .featured li {
    float: left;
    display: block;
    margin: 0;
    text-indent: 0;
    padding: 0;
}

#blog .categories li {
    padding: 0 3em 0 0;
}

#blog .featured {
    border-top: 1px solid #B3B3B1;
    margin-top: 2em;
    width: 100%;
}

#blog .featured li {
    height: 16px;
    padding: 0 2em 0 0 ;
}

#blog .featured li + li {
    border-left: 1px solid #B3B3B1;
    padding: 0 2em;
}

#blog .categories a, #blog .featured a, #blog .featured span {
    color: #A1A1A0;
    display: block;
    font-size: 9pt;
    line-height: 15pt;
    -webkit-transition: color 100ms linear;
}

#blog .categories a:hover, #blog .categories a.current, #blog .featured a:hover {
    color: #FD7169;
    text-decoration: none;
}

#blog .categories a {
    background: url(../i/category-arrows.png) 0 2px no-repeat;
    padding-left: 1.75em
}

#blog .categories a:hover, #blog .categories a.current {
    background-position: 0 -28px;    
}

#blog .categories a.current {
    cursor: default;
}

#blog .featured a, #blog .featured span {
    margin-top: 6px;
    margin-bottom: -22px;
}

#blog .blognav {
    margin-bottom: 40px;
}

#blog .catalog h2 {
    font-size: 11pt;
    font-weight: normal;
    border-bottom: 1px solid #b3b3b1;
    padding-bottom: 5px;
    color: #F55E63;
    margin: 0;
}

#blog .latest {
    border-bottom: 1px solid #b3b3b1;
    margin-bottom: 1em;
    text-align: center;
    padding: 60px 0 80px 0;
}

#blog .latest .date {
    font-weight: bold;
    text-transform: uppercase;
    color: #3F3F3F;
}

#blog .latest a.readmore {
    font-weight: bold;
    font-size: 13pt;
    color: #393939;
    -webkit-transition: color 100ms linear;
}

#blog .latest h3 {
    font-size: 32pt;
    line-height: 1.2;
    margin: 0 0 12px 0;
}

#blog .latest h3, #blog .latest h3 a { 
    color: #393939;
    -webkit-transition: color 100ms linear;
}

#blog .latest h3 a:hover, #blog .latest a.readmore:hover {
    text-decoration: none;
    color: #FD7169;
}

#blog .latest .intro {
    font-size: 120%;
	line-height: 1.3;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	color: #DE5A51;
	width: 650px;
	margin: 0 auto;
	border-bottom: none;
}

#blog .archive {
    margin:  -45px -18px 0 0;
    padding: 15px 0 0 0;
}

#blog .archive li {
    padding: 15px 0;
    border-top: 8px solid #343434;
    border-bottom: 1px solid #B2B1AD;
    margin: 45px 18px 0 0;
    float: left;
    display: block;
    width: 300px;
    height: 282px;
    -webkit-transition: border-color 100ms linear;
    cursor: pointer;
}

#blog .archive li div {
    width: 300px;
    height: 230px;
    background: #AEAEAC;
}

#blog .archive li div img {
    opacity:0.75;
    -webkit-transition: opacity 75ms linear;
}

#blog .archive li a.title {
    position: relative;
    top: -96px;
    left: 10px;
    display: block;
    background: #F2F1ED;
    width: 250px;
    height: 39px;
    line-height: 1.1;
    font-weight: bold;
    color: #343432;
    font-size: 11pt;
    padding: 23px 15px;
    margin-bottom: -80px;
    -webkit-transition: color, background 75ms linear;
}

#blog .archive li div.date {
    background:transparent;
    height: 1em;
    width: 150px;
    font-weight: bold;
    line-height: 1em;
    margin: 32px 0 0 0;
    text-transform: uppercase;
    float:left;
}

#blog .archive li div.date span {
    text-transform: lowercase;
}

#blog .archive li .readmore {
    text-align: right;
    font-weight: bold;
    float:right;
    width: 100px;
    line-height: 1em;
    margin: 32px 0 0 0;
    -webkit-transition: color 100ms linear;
}

#blog .archive li:hover .readmore {
    color: #393939;
    text-decoration: none;
}

#blog .archive li:hover a.title {
    background: #FE7168;
    color: #F2F8EC;
    text-decoration: none;
} 

#blog .archive li:hover {
    border-top-color: #040404;
    border-bottom-color: #080703;
}

#blog .archive li:hover div img {
    opacity:1;
}

#blog .small, #blog .medium, #blog .large {
    margin-top: 0;
}

#blog .small h2, #blog .medium h2 {
    font-size: 32pt;
    border-bottom: 8px solid #343434;
    margin: 0 0 0.5em 0;
    width: 790px;
    padding: 0 150px 7px 0;
    position: relative;
    line-height: 1.1;
}

#blog .large h2 {
    font-size: 42pt;
    border-bottom: 8px solid #343434;
    margin: 0px 0 0.5em 0;    
    padding: 0 150px 7px 0;
    position: relative;
    width: 790px;
    padding-right: 150px;
    line-height: 57px;
}

#blog .small .date, #blog .medium .date, #blog .large .date {
    font-weight: bold;
    font-size: 12pt;
    display: block;
    text-transform: uppercase;
    position: absolute;    
    overflow: normal;
    right: 0;
}

#blog .small .date, #blog .medium .date {
    bottom: 12px;
}

#blog .large .date {
    bottom: -17px;
}

#blog .small .date span, #blog .medium .date span, #blog .large .date span{ 
    text-transform: lowercase;
}

#blog .sections  {
    font-size: 9pt;
    line-height: 1.75;
}

#blog .intro {
    color: #DE5A51;
    font-size: 140%;
    line-height: 1.2;
    margin: 0 0 1em 0;
    padding: 0 0 0 0;
    border-bottom: 1px solid #DE5A51;
}

#blog .large .intro {
    margin: -10px 0 10px 0;
}

#blog .intro p {
    margin-top: 0;
}
#blog .intro p + p {
    margin-top: 1em;
}

#blog .slideshow > div {
    display: none;
}

#blog .slideshow > div.active {
    display: block;
}

#blog .slideshow .next {
    float: right;
    font-weight: bold;
    margin: 4px 8px;
}

#blog .slideshow .next a {
    cursor: pointer;
}

#blog .slideshow .caption {
    font-size: 8pt;
    clear:right;
    min-height: 5px;
}

#blog .large .slideshow .caption {
    border-bottom: 1px solid #DCDBD7;
}

#blog .large .slideshow { 
    margin: -1em -2px 0 0;
}

#blog .large .slideshow img {
    border: 1px solid #B2B2B0;
}

#blog .large .sections blockquote {
    margin-left: -30px;
    padding: 0 0 0 30px;
    border-left: 1px solid #DE5A51;
    position: relative;
    font-size: 160%;
	line-height: 1.3;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	color: #DE5A51;
}


#blog .captioned_image img {
    padding: 0 0 12px 0;
    border-bottom: 1px solid #DCDBD7;
}

#blog .captioned_image .caption, #blog .captioned_multi .caption {
    color: #DE5A51;
    font-size: 140%;
    line-height: 1.2;
    margin: 0 0 1em 0;
    padding: 0 0 0 0;
    border-bottom: 1px solid #DE5A51;
}

#blog .nextprev {
    border-top: 1px solid #b3b3b1;
    padding-top: 12px;
    margin-top: 12px;
}

#blog .nextprev .next {
    float: right;
}

#blog .nextprev .prev {
    float: left;
}

#blog .nextprev + .catalog {
    margin-top: 2em;
}

#blog .nextprev + .catalog > h2 {
    font-size: 1.3em;
} 

#blog .nextprev .next:hover, #blog .nextprev .prev:hover {
    color: #666;
    text-decoration: none;
}


/* social icons */
.social {
    position: relative;
    display: inline;
    width: 350px;
    padding: 0 20px 5px;
    height: 36px;
    margin-bottom: 5px;
}

.social .border {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 1px;
    height: 38px;
    background: #ccc;
}

.social {
    width: 180px;
}
.social h6,
.social a {
    color: #888;
    font-weight: 400;
    margin: 0 0 10px;
    font-size: 14px;
    text-decoration: none;
}

.social a {
    height: 36px;
    line-height: 36px;
    border: none;
    float: left;
    margin: 0 5px 0 0;
    padding: 0;
}

.social h6 {
    clear: left;
}
.social a {
    -webkit-transition: 300ms all;
}

.social a {
    width: 36px;
    background: #282624;
    opacity: 0.9;
    color: #deddd8;
    text-transform: uppercase;
    text-align: center;
    font-size: 16px;
    text-decoration: none;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;

}

.social a:hover {
    opacity: 1;
    color: #fff;
    cursor: pointer;
}

.social a:hover {
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    border-radius: 18px;
}


