@import 'reset.css';
@import 'typography.css?20100705';

body {

}

	div#top {
		display: block;
		float: left;
		width: 100%;
		background: #7E7E7E url(../images/top-background.png) no-repeat 50%;
	}
	
	.ie.old div#top {
		background-image: url(../images/top-background.gif);
	}
	
		div#top div#top-container {
			position: relative;
			display: block;
			width: 960px;
			margin: 0 auto;
		}
			
			div#top div#top-container p#logo {
				position: relative;
				display: block;
				float: left;
				width: 177px;
				height: 35px;
				margin: 5px 5px;
				background: url(../images/logo-top.png) no-repeat 50%;
			}
			
			.ie.old div#top div#top-container p#logo {
				background-image: url(../images/logo-top.gif);
			}
			
				div#top div#top-container p#logo a {
					position: absolute;
					display: block;
					top: 0;
					right: 0;
					bottom: 0;
					left: 0;
					margin: 0;
					padding: 0;
					text-indent: -5000%;
				}
				
				div#top div#top-container p#logo a:hover {
					background: none;
				}
			
			.home div#top div#top-container p#logo {
				display: none;
			}
				
				div#top div.module_main_menu ul {
					display: block;
					float: right;
					margin: -1px 0 -10px;
				}
				
					div#top div.module_main_menu ul li {
						display: block;
						float: left;
						padding-bottom: 10px;
					}
					
						div#top div.module_main_menu ul li a {
							display: block;
							float: left;
							cursor: pointer;
							background: url(../images/menu-corner-right.png) no-repeat 100% 100%;
						}
						
						.ie.old div#top div.module_main_menu ul li a {
							background-image: url(../images/menu-corner-right.gif);
						}
					
							div#top div.module_main_menu ul li a span {
								display: block;
								float: left;
								padding: 15px 30px 0;
								height: 31px;
								background: url(../images/menu-corner-left.png) no-repeat 0 100%;
							}
					
							.ie.old div#top div.module_main_menu ul li a span {
								background-image: url(../images/menu-corner-left.gif);
							}
						
						div#top div.module_main_menu ul li.last a {
							background-image: none;
						}
					
							div#top div.module_main_menu ul li.first a span {
								background-image: none;
							}
					
					div#top div.module_main_menu ul li.current {
						background: url(../images/menu-current-arrow.png) no-repeat 50% 100%;
					}
					
					.ie.old div#top div.module_main_menu ul li.current {
						background-image: url(../images/menu-current-arrow.gif);
					}
	
	div#main {
		position: relative;
		display: block;
		clear: left;
		width: 960px;
		margin: 0 auto;
		padding-top: 40px;
	}
	
		div#main h1#big-logo {
			float: left;
			display: block;
			width: 100%;
			height: 161px;
			margin: -20px 0 20px;
			text-indent: -5000%;
			background: url(../images/logo-big.gif) no-repeat 5px 50%;
		}
		
		div#main #map {
			height: 420px;
			width: 460px;
			border: 5px solid #999999;
		}
		
	div#footer {
		position: relative;
		display: block;
		float: left;
		width: 100%;
		padding: 18px 0;
		background: url(../images/footer.jpg) no-repeat 50% 0;
	}
	
		div#footer ul {
			display: block;
			float: left;
			width: 30%;
			margin: 0 0 0 18%;
			list-style: none;
		}
	
		div#footer p {
			display: block;
			float: left;
			clear: left;
			width: 100%;
			margin-top: 10px;
		}

/* My One-and-only Hack for IE6 */

		html>body div#footer ul {
			margin: 0 35%;
		}
		
			div#footer ul li {
				position: relative;
				display: block;
				float: left;
				padding: 0 4px;
				border-left: 1px solid #8D8C8A;
			}

				div#footer ul li.first {
					border: 0;
				}
		
				div#footer ul li a {
					padding: 2px 4px;
				}


/* Column Layouts */

		div#main .two_column,
		div#main .three_column {
			display: block;
			float: left;
			width: 100%;
		}
		
			div#main .two_column .left,
			div#main .three_column .left {
				clear: left;
			}
			
			div#main .two_column .left,
			div#main .two_column .right {
				display: block;
				float: left;
				width: 470px;
				margin: 0 5px;
				padding: 15px 0;
			}
			
			div#main .two_column .right {
				margin-right: 0;
			}
			
			div#main .two_column.left_focus .left {
				width: 630px;
			}
				div#main .two_column.left_focus .left table {
					font-size: 12pt;
				}
					div#main .two_column.left_focus .left table tr td{
						padding: 2px;;
					}
				
			div#main .two_column.left_focus .right {
				width: 310px;
			}
				
				div#main .two_column.left_focus .right div#share {
					margin-top: 25px;
					padding-top: 15px;	
					border-top: 1px solid #ccc;
				}
					
					div#main .two_column.left_focus .right div#share p {
						font-size: 1.4em;
					}
								
						div#main .two_column.left_focus .right div#share p a {
							padding: 0 5px;
							margin: 0;
							height: 27px;
							
							color: #444444;
						}
						
						div#main .two_column.left_focus .right div#share p a:hover {
							color: #fff;
						}
						
						div#main .two_column.left_focus .right div#share p img {
							float: left;
							margin: 0;
							padding: 0 5px 0 0;
						}

			div#main .two_column .case-study {
				padding-top: 0;
			}
			
				div#main .two_column.blog div h2,
				div#main .two_column div h3,
				div#main .two_column div h4 {
					margin: 1.25em 0 0.5em;
				}
			
				div#main .two_column div div.meta {
					margin-top: 0.5em;
				}
				
				.home div#main .two_column div h2 {
					margin-bottom: 20px;
				}
		
			div#main .three_column .left,
			div#main .three_column .middle,
			div#main .three_column .right {
				display: block;
				float: left;
				width: 310px;
				margin: 0 5px;
				padding: 15px 0;
			}
			
			.ie.old div#main .three_column .left,
			.ie.old div#main .three_column .middle,
			.ie.old div#main .three_column .right {
				display: inline;
			}
			
				div#main .three_column div {
					position: relative;
				}
				
				div#main .two_column h1,
				div#main .two_column h2,
				div#main .three_column h2 {
					margin-bottom: 15px;
				}
				
				.blog div#main .two_column h2 {
					margin-bottom: 0;
				}
				
				div#main .three_column .small h2 {
					margin-bottom: 0.5em;
				}
				
				div#main .three_column h3 {
					margin: 10px 0;
				}
				
				div#main div div div.module_latest_blog_posts ul,
				div#main div div div.module_latest_user_blog_posts ul {
					list-style: none;
					margin: 0;
					padding: 0;
				}
				
					div#main div div div.module_latest_blog_posts ul li,
					div#main div div div.module_latest_user_blog_posts ul li {
						margin-bottom: 20px;
					}
					
						div#main div div div.module_latest_blog_posts ul li p,
						div#main div div div.module_latest_user_blog_posts ul li p {
							margin-bottom: 0.5em;
						}
				
				div#main .three_column div div.module_twitter div.bubble {
					padding-top: 36px;
					background: url(../images/twitter-bubble-arrow-top.png) no-repeat 40px 0;
				}
				
					div#main .three_column div div.module_twitter div.bubble p {
						margin: 0;
						padding: 15px 25px;
						overflow: hidden;
						background-color: #CCCCCC;
						-webkit-border-radius: 30px;
						-moz-border-radius: 30px;
					}
				
				div#main .three_column div div.module_twitter {
					background: url(../images/twitter-icon.png) no-repeat right top;
				}

				div#main .three_column div blockquote {
					float: left;
					display: block;
					margin: 0 0 10px 0;
					background: url(../images/right-arrow.png) no-repeat right 15px;
				}

					div#main .three_column div blockquote span {
						display: block;
						width: 210px;
						padding: 15px 20px;
						background: #656565;
						-webkit-border-radius: 15px;
						-moz-border-radius: 15px;
						margin-right: 10px;
					}

					div#main .three_column div blockquote:nth-of-type(even) {
						float: right;
						margin: 0 0 10px 0;
						background: url(../images/left-arrow.png) no-repeat left 15px;
					}

					div#main .three_column div blockquote:nth-of-type(even) span {
						margin-left: 10px;
					}

					div#main .three_column cite {
						display: block;
						float: left;
						width: 40px;
						text-align: left;
						padding-top: 9px;
					}

					div#main .three_column cite:nth-of-type(odd) {
						text-align: right;
					}

						div#main .three_column cite img {
							display: block;
						}

			div#main .two_column div.comment {
				float: left;
				width: 100%;
				margin-bottom: 20px;
			}
			
				div#main .two_column div blockquote {
					display: block;
					clear: both;
					margin: 0 0 10px 0;
					padding-bottom: 10px;
					background: url(../images/bottom-arrow.png) no-repeat 20px bottom;
				}
				
				div#main .two_column div blockquote span {
					-moz-border-radius: 15px;
					background: #EEEEEE;
					-webkit-border-radius: 15px;
					display: block;
					padding: 15px 20px;
				}
				
				div#main .two_column div.comment.admin blockquote {
					background-image: url(../images/bottom-arrow-pink.png);
					background-position: 100% 100%;
				}
				
					div#main .two_column div blockquote div {
						display: block;
						padding: 15px 20px;
						background: #eee;
						-webkit-border-radius: 15px;
						-moz-border-radius: 15px;
					}
					
					div#main .two_column div.comment blockquote div {
						padding-top: 0;
					}

					div#main .two_column div.comment.admin blockquote div {
						background: #f6e5e5;
					}

						div#main .two_column div blockquote div p {
							margin: 0;
							padding-top: 15px;
						}

					div#main .two_column div.comment div.meta {
						padding-left: 15px;
					}
					
					div#main .two_column div.comment.admin div.meta {
						float: right;
						margin-right: 1px;
					}
					
						div#main .two_column div.comment.admin div.meta div {
							float: left;
							margin-right: 10px;
							
							text-align: right;
						}
						
						div#main .two_column div.comment.admin div.meta div.avatar {
							float: left;
							width: 45px;
							height: 52px;
							background-image: url(../images/polaroid-small.jpg);
						}
					
					.testimonials div#main .two_column cite {
						float: left;
						padding: 0 15px 30px;
						display: block;
						font-size: 1.6em;
					}

						.testimonials div#main .two_column cite img {
							float: left;
							padding-right: 10px;
						}
						
						.testimonials div#main .two_column cite span {
							display: block;
							float: left;
							height: 38px;
							line-height: 38px;
						}

		.testimonials div#main a:link,
		.testimonials div#main a:visited,
		.testimonials div#main a:hover,
		.testimonials div#main a:focus,
		.testimonials div#main a:active {
			color: #C91A6E;
			font-weight: bold;
			font-size: 1em;
			text-decoration: none;
		}
						
							.testimonials div#main .two_column cite span span {
								display: inline;
								float: none;
								height: normal;
							}

						span.caps {
							display: inline !important;
							padding: 0 !important;
							background: none !important;
							border: 0 !important;
							margin: 0 !important;
						}
		
	div#main ul.apps {
		display: block;
		list-style: none !important;
		margin: 0 -5px !important;
		padding: 0 !important;
		width: 640px;
		overflow: hidden;
	}
	
		div#main ul.apps li {
			display: block;
			float: left;
			width: 150px;
			margin: 0 5px;
			text-align: center;
		}
		
		.ie.old div#main ul.apps li {
			display: inline;
		}
		
			div#main ul.apps li a {
			
			}
			
				div#main ul.apps li a img,
				div#main ul.apps li a span {
				}
				
				div#main ul.apps li a span {
					
				}
	
	div#main ul.teamlist {
		list-style: none !important;
		margin: 0 !important;
		padding: 0 !important;
		width: 300px;
	}
		
		div#main ul.teamlist li {
			clear: both;
			display: block;
			padding-bottom: 5px;
			cursor: pointer;
		}

			div#main ul.teamlist li a {
				cursor: pointer;
			}

			div#main ul.teamlist li a span.name {
				float: left;
				clear: right;
			}

			div#main ul.teamlist li a span.title {
				display: block;
				float: left;
				width: 200px;
			}

	div#main ul.teamlist.two_column {
		width: 640px;
		margin-right: -10px;
	}
		
		div#main ul.teamlist.two_column li {
			float: left;
			clear: none;
			width: 310px;
			margin-right: 10px;
		}
	
		div#main .avatar {
			background: url(../images/polaroid.jpg) no-repeat;
			height: 82px;
			width: 75px;
			float: left;
			display: block;
			margin-right: 10px;
		}
		
			div#main .avatar img {
				padding: 5px;
			}

		div#main .top_rule {
			border-top: 1px solid #CCCCCC;
		}
		
		div#main .bottom_rule {
			border-bottom: 1px solid #CCCCCC;
		}

		div#main .two_column ol,
		div#main .two_column ul,
		div#main .three_column ol,
		div#main .three_column ul {
			margin: 0 10px;
			padding: 10px;
		}

		div#main .two_column ol,
		div#main .three_column ol {
			list-style-type: decimal;
		}

		div#main .two_column ul,
		div#main .three_column ul {
			list-style-type: disc;
		}

		div#main .two_column ul ul,
		div#main .two_column ol ul,
		div#main .three_column ul ul,
		div#main .three_column ol ul {
			list-style-type: circle;
		}

		div#main .two_column div.shadowed {
			padding-bottom: 12px;
			background: url(../images/two_col_shadow.jpg) no-repeat right bottom;
		}

			div#main .two_column.left_focus .right div.shadowed {
				background-image: url(../images/three_col_shadow.jpg);
			}

		div#main .three_column div.shadowed {
			padding-bottom: 12px;
			background: url(../images/three_col_shadow.jpg) no-repeat right bottom;
		}
		
		div#main .two_column .right div.shadowed.big-avatar {
			margin: 0 5px;
		}

		div#main div.module_sitemap ul {
			list-style-image: none;
			list-style-position: outside;
			list-style-type: none;
			margin: 20px 5px 0;
			padding: 0;
		}

			div#main div.module_sitemap li {
				background: #ccc;
				-webkit-border-radius: 15px;
				-moz-border-radius: 15px;
				margin: 0 0 1em;
				min-height: 1em;
				padding: 0.8em 1.2em;
				position: relative;
				width: 350px;
			}

				div#main div.module_sitemap ul ul {
					font-size: 90%;
					margin-top: -1em;
				}
				
						div#main div.module_sitemap ul li a:hover {
							background: none !important;
						}
				
					div#main div.module_sitemap ul ul li {
						background: #999 none repeat scroll 0 0;
						left: 160px;
					}
				
						div#main div.module_sitemap ul ul li a:hover {
							color: #333;
							background: none !important;
						}

						div#main div.module_sitemap ul ul ul li {
							background: #666 none repeat scroll 0 0;
						}

							div#main div.module_sitemap ul ul ul ul li {
								background: #333 none repeat scroll 0 0;
							}

								div#main div.module_sitemap ul ul ul ul ul li {
									background: #000 none repeat scroll 0 0;
								}

/* Forms */

		form label {
			display: block;
		}
		
		form input,
		form textarea {
			margin-bottom: 30px;
			width: 460px;
			padding: 8px 5px;
			border: none;
			border-bottom: 1px solid #CCCCCC;
			background: #f8f8f8;
		}
		
		.left_focus form input,
		.left_focus form textarea {
			width: 620px;
		}
		
		.left_focus form input#name,
		.left_focus form input#email,
		.left_focus form input#captcha_answer {
			width: 310px;
		}
		
		form textarea {
			resize: vertical;
		}
		
		form input:focus,
		form textarea:focus {
			background: #fffbd7;
		}
		
		form p.error {
			margin-top: -28px;
		}


/* General styling elements */

	hr {
		height: 0;
		width: 100%;
		border: none;
		border-top: 1px solid #CCCCCC;
	}
	
	p {
		margin: 0 0 1em;
	}
	
	p.more {
		clear: both;
		margin-top: 1em;
	}
	
	div.meta {
		margin-top: 0;
	}
