/* @override http://fangohr.com/css/master.css */


/* base */

::-moz-selection {
	background:#c81123;
	color:white;
	-moz-border-radius: 2px;
}

/* @group Mobile */

@media only screen and (max-device-width: 480px) {
     .page {
          padding: 0px 10px 5px 10px !important;
     }
     body {
          padding: 10px !important;
          font-size: 125% !important;
     }
}




/* @end */

::selection {
	background:#c81123;
	color:white;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}

a {
	color: #C81123;
	text-decoration: none;
}

a:hover{
    color: #444444;
}

a:active, a:focus{
	outline: none;
}

blockquote {
	font-weight: bold;
}

body {
	background-color: #ffffff;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 0.8em;
	height: 100%;
	text-transform: lowercase;
	/*font-size: 100%;*/	
}



h1 a, h2 a, h3 a {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #333;
	font-weight: bold;
}

h1 p, h2 p, h3 p, h4 p, h5 p {
	display: inline;
	line-height: normal;
	margin:0;
}

h1 {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	clear: both;
	font-size:33px;
	font-weight: bold;
	margin:30px 0px;
}

h2 {
	clear: both;
	font-size: 140%;
	font-weight: bold;
	line-height:120%;
	margin:5px 0px;
}
h3 {
	clear: both;
	font-size: 130%;
	font-weight:bold;
	margin: 16px 0px 12px 0px;
}

h4 {
	clear: both;
	font-size: 115%;
	font-weight:bold;
	line-height:110%;
	margin:10px 0px;
}

html {
	height: 100%;
}

ol, ul {
	height: 100%;
	overflow: hidden;
}

ol li {
	line-height: 140%;
}

div.about-directions.column2-3 ol {
	margin: 0px;
	padding: 0px;
}

div.about-directions.column2-3 ol li {
	list-style-position: inside;
	list-style-type: decimal;
	margin-bottom: 20px;
}

ol li strong {
	font-size: 1.9em;
}

p {
	font-family: arial, helvetica neue, helvetica, sans serif;
	line-height: 1.35em;
	margin: 10px 0px;
}

strong {
	font-weight: bold;
}

/* General */
.none{
	display: none;
}

.half {
	float:left;
	height:100%;
	overflow:hidden;
	padding:0 30px 0 0;
	position:relative;
	width:378px;
}

.third {
	float: left;
	height: 100%;
	position: relative;
	width: 274px;	
}

.quarter {
	float: left;
	height: 100%;
	position: relative;
	width: 189px;
}

.column1-3 {
	float:right;
	height:100%;
	overflow:hidden;
	padding-right:16px;
	padding-top:5px;
	position:relative;
	width:250px;
}

.column2-3 {
	float:left;
	height:100%;
	margin-bottom:20px;
	overflow:hidden;
	position:relative;
	width:502px;
	line-height: 135%;
}

.no-pad {
	padding: 0px;
	margin: 0px;
}

.ruler {
	border-top: solid 1px #000;
	padding-bottom: 2px;
	padding-top: 5px;
}

.ruler-b {
	border-bottom: solid 1px #000;
	padding-bottom: 16px;
	padding-top: 5px;
}

.button, .button-back, .button-blog {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	background: black;
	border: 0px;
	color: white;
	float: right;
	font-size: 90%;
	margin-top: 10px;
	padding:6px 4px 6px 8px;
	width:196px;
}

.button a:hover, .button:hover, .button-blog:hover {
	background-color:#c81123;
}

.button-back {
	float: left;
	margin-bottom: 16px;
	margin-top: 16px;
	padding:6px 8px 5px;
	width: auto;
	margin-right: 20px;
}

.button-back:hover {
	background-color:#c81123;
	color: white;
}

/* Global */

#wrapper {
/* 	border-top: 7px solid black; */
	display: none;
	height: 100%;
	margin:0px auto;
	position: relative;
	text-align: left;
	width:816px;
}

.top-border {
	border-top:7px solid black;
}

#explore {
	background-color: black;
	height: 20px;
	overflow: hidden;
	position: relative;
	width: 100%;
}

#explore-button {
	background-color: black;
	color: white;
	cursor: pointer;
	display: none;
	float: left;
	padding: 10px;
	position: absolute;
}

#explore-button:hover {
	background-color: #C81123;
	color: white;
}

#head {
	clear:both;
	height:77px;
}

#logo {
	float:left;
	left:0px;
	line-height:100%;
	margin:0;
	position:relative;
	top:16px;
}

#logo a {
	background-image:url(/images/elements/logo-bonw.png);
	background-position:left center;
	background-repeat:no-repeat;
	display:block;
	height:23px;
	padding:10px 10px 10px 0;
	text-indent:-7777px;
	width:92px;
}

#head .branding {
	background-image:url(/images/elements/tagline.png);
	background-position:right center;
	background-repeat:no-repeat;
	float:right;
	height:25px;
	position:relative;
	text-indent:-7777px;
	top:27px;
	width:260px;
}

.nav {
	clear:both;
	height:32px;
	padding: 8px 0px;
}

ul.nav  {
	border-top: 1px solid black;
	border-bottom: 1px solid black;

}

.nav li {
	float: left;
	position: relative;
	width: 136px;
}
.nav li a {
	width:125px;
}

.nav li a, #work-title li a {
    -webkit-border-radius: 2px;
	-moz-border-radius:2px;
    border-radius: 2px;
	color: black;
	display: block;
	margin:6px 0 0;
	padding:3px 0 3px 5px;
	position:relative;
	text-decoration:none;
}

.nav li a:hover, #work-title li a:hover {
    background-color: black;
    color: white;
}

.nav li a.nav-on, #work-title li a.nav-on {
	background-color: #c81123;
	color: white;
}

.footer-nav {
	clear: both;
}

#foot {
	clear:both;
	line-height:18px;
	margin:0 0 40px;
	padding:18px 0 20px 0;
}

/* Sections */

#content {
	clear:both;
}

.block {
	margin: 5px 0px;
	padding:10px 0px;
}

.section {
	border-top:1px solid black;
	height:100%;
	margin:30px 0 0;
	overflow:hidden;
	padding:7px 0 0;
}

.section h3 {
	font-size:33px;
	font-weight: bold;
}

.section h4 {
	font-size: 33px;
	font-weight: bold;
}

.section li {
	float:left;
	height:100%;
	margin:0;
	padding:0 17px 0 0;
	position:relative;
	width:255px;
}

.section h5 {
	font-weight: bold;
	font-size: 110%;
}

/* Homepage */

.homepage-intro {
	font-size:74px;
	margin:50px 0 20px;
}

#homepage-splash {
	cursor: default;
	height: 460px;
	margin:0;
	padding: 0;
	overflow: hidden;
}

#homepage-splash #user_location{
	font-size: 14px;
	color: white;
	font-weight: 500;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;	
}

#homepage-splash #user_location span{
	width: auto;
	display: block;
	position: relative;
	font-size: 14px;
}

#homepage-splash #user_location span.location{
	font-size: 18px;
	filter: alpha(opacity=70); /* internet explorer */
	-khtml-opacity: 0.7;      /* khtml, old safari */
	-moz-opacity: 0.7;       /* mozilla, netscape */
	opacity: 0.7;           /* fx, safari, opera */
}

#homepage-splash #user_location p{
	margin-bottom: 0 5px;
	line-height: normal;
	display: block;
	float: left;
	margin-right: 80px;
}

#replay{
	position: absolute;
	font-size: 18px;
	color: white;
	top: 40px;
	right: 40px;
}

#homepage-splash img{
	position: absolute;
}

#homepage-splash span{
	position: absolute;
	font-size: 42px;
	color: white;
	font-weight: 500;
}

#homepage-splash span.subtitle{
	font-size: 20px;
}

#homepage-splash span.temp{
	position: absolute;
	font-size: 42px;
	font-weight: 500;
	top: 45px;
	left: 240px;
	writing-mode:tb-rl;
	-webkit-transform:rotate(270deg);
	-moz-transform:rotate(270deg);
	-o-transform: rotate(270deg);
	white-space:nowrap;
	width: 180px;
}

#homepage-splash span hr{
	margin: 0;
	padding: 0;
	color: white;
	background-color: white;
	height: 3px;
	white-space: normal;
	border: none;
}

.homepage-news {
	padding-left:272px;
}

.homepage-news.section h2 {
	min-height: 32px;
}

.homepage-news-date {
	display: block;
	font-size: 80%;
	width: 100%;
	padding-bottom: 6px;
	border-bottom: 1px solid #888;
}

.homepage-news-content {
	margin-bottom:18px;
	padding-right:35px;
}

.homepage-testimonials h3 {
	margin-bottom:10px;
}

.homepage-testimonials, .homepage-testimonials ul, .homepage-testimonials li, .homepage-testimonials .testimonial-content {
	overflow: visible;
}

.homepage-testimonials li {
	width: 184px;
	padding: 0 20px 20px 0;
}

.testimonial-cited {
	font-family: arial;
	border-top: 1px solid black;
	padding-top:19px;
	min-height: 40px;
}

.testimonial-content {
	font-size:16px;
	font-weight:bold;
	line-height:16px;
	margin: 0px 0 0 -6px;
	padding-left:7px;
	position:relative;
}

.testimonial-content p {
	margin: 0;
}

.testimonial-content p:before, .testimonial-content p:after {
	position: absolute;
}

.testimonial-content p:before {
	content: '\201C';
	left: -1px;
}

.testimonial-content p:after {
	content: '\201D';
}

.homepage-casestudy-caption {
	background-color:black;
	color:white;
	height:13px;
	top: 107px;
	padding:10px 13px;
	position:absolute;
	width:229px;
}

.homepage-highlight {
	height: 439px;
	background-image: url(/images/homepage_seed_02.jpg);
	text-indent: -9999px;
}

.homepage-see-more {
	display: block;
	float: right;
	font-weight: bold;
	position: relative;
	padding: 5px 10px 0 0;
}

.homepage-services {
	border: 0;
}

.homepage-service-description {
	font-size:12px;
	font-weight:bold;
	line-height:130%;
	padding-top:10px;
}

/* Services */

.services h1 {
	line-height: normal;
	margin:0 137px 0 273px;
}

.service-description {
	margin: 20px 0;
	padding-right:10px;
}

.services .service-description li {
	background-image:url(/images/elements/cross.gif);
	background-position:0 4px;
	background-repeat:no-repeat;
	float:none;
	height:auto;
	line-height:15px;
	margin:0 0 8px;
	padding:0 0 0 13px;
	width:auto;
}

.service-casestudy {
	padding-top: 8px;
    margin: 0 0 10px;
    min-height:300px;
}

.service-casestudy img{
    border: 1px solid black;
}

.service-casestudy img:hover{
    border: 1px solid #C81123;
}

.service-casestudy h5 {
	margin: 10px 0;
}

/* about */

div.extendedfamily {
	font: 14px black;
}

a.more::after {
	font-weight: bolder;
	content:"\2192";
	display: inline;
	padding-left: 3px;
	padding-right: 3px;
}

/*people*/

.people-bio {
	border-top: 1px solid black;
	margin-top: 30px;
	padding-top: 10px;
}

.people-bio-content.column2-3 {
	float:  right;
	height: 100%;
	overflow: hidden;
	padding-right: 100px;
	padding-bottom: 40px;
	position: relative;
	width: 445px;
}

.bio-sidebar {
	float: left;
	height: 100%;
	overflow: hidden;
	position: relative;
	width: 240px;
}

ul.delicious-cloud {
	font-size: 12px;
	font-weight: normal;
}

/* weblog */

.blog-entry {
	border-top: 1px solid black;
	position: relative;
	margin: 20px 0px;
	padding: 10px 0px;
}

.blogindent {
	padding-top: 10px;
	padding-left: 272px;
}

.blog-entry-footer {
	padding-bottom: 40px;
	font-size: 90%;
}

.paginate {
	border-top: 1px black solid;
	padding-top: 12px;
	margin: 12px 0px 40px 0px;
}

.blogentrytop {
	border-bottom: 1px black solid;
	display: block;
	width: 100%;
}

.category {
	font-size: 85%;
	clear: both;
	float: left;
	width: 272px;
	display: block;
	margin-top: 20px;
	margin-bottom: 6px;
}

.blogdate {
	margin-top: 20px;
	font-size: 85%;
	float:left;
	margin-bottom: 6px;
}

.button-blog {
	text-align: center;
	font-size: 90%;
	float: left;
	margin-bottom: 16px;
	margin-top: 12px;
	padding:4px 0px 2px 0px;
	width: 94px;
	margin-right: 12px;
	margin-bottom: 36px;
}

.pagecount strong, div.paginate a {
	color: white;
	background: #c6c6c6;
	padding: 2px;
	text-align: center;
	font-size: 90%;
	margin-bottom: 16px;
	margin-top: 12px;
	padding:3px 8px 3px 8px;
	margin-right: 2px;
	margin-bottom: 36px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.paginate a:hover {
	background: #c81123;
}

.pagecount strong {
	color: white;
	background-color: black;
	border: 0px;
	padding:3px 8px 3px 8px;
}


.a-button, .button-video, a-casestudy {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	background-color: black;
	color: white;
	float: right;
	font-size: 90%;
	margin-top: 10px;
	padding:7px 4px 6px 8px;
	width:196px;
}

.a-button:hover {
	background-color: #333333;
	cursor: pointer;
}

.a-button-details {
	-moz-border-radius:4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;	
	color:#444444;
	float:right;
	font-size:90%;
	line-height:100%;
	margin:0;
	padding:8px;
	text-align:right;
}

.a-button-details:hover {
	background: #c6c6c6;
	color: white;
}

.button-video {
	float: left;
	background: #c81123;
	width: auto;
	color: white;
	font-weight: normal;
	padding: 4px 4px 4px 8px;
}

.button-video:hover {
	background: black;
	color: white;
}

.caption {
	font-weight:normal;
	padding:6px 0;
	text-align: left;
}

/* Work */

#work-title {
	position: relative;
}

#work-title .work-category {
	cursor: pointer;
}

#work-title ul.categories-nav {
	background-color:white;
	height:275px;
	padding:0 0 20px;
	right:100%;
	top:0;
	z-index:9999;
}

#work-title ul.categories-nav>li, #work-title ul.categories-nav>li>ul>li {
	float: left;
}

#work-title ul.categories-nav .nav_categories li ul {
	padding-left: 20px;
}

#work-title li a {
	display: block;
	font-size:12px;
	margin-right: 5px;

}

span.work-tip {
    -webkit-border-radius: 2px;
	-moz-border-radius:2px;
	border: 1px solid #c81123;
    border-radius: 2px;
	color: lightgray;
	float: right;
	font-size: 12px;
	font-weight: normal;
	padding: 2px;
	position: relative;
}

.work-description {
	float: left;
	position: relative;
	width: 500px;
}

.work-sidebar {
	float: right;
	position: relative;
	height: 100%;
}

h2.clients {
	padding: 20px 0px;
}

/* Office */

.office h2 {
	font-size: 26px;
}

.map-wrapper {
	clear: both;
	height: 420px;
	width:100%;
	margin-bottom: 20px;
}

#map {
	height: 420px;
	margin-bottom: 32px;
	width: 814px;
}

.about-directions ol {
	list-style-type: decimal;
	margin: 0 0 0 22px;
}

.map-sidebar {
	float: left;
	height: 100%;
	position: relative;
	width: 200px;
}

.about-directions.column2-3 {
	float:left;
	height:100%;
	margin-left:71px;
	position:relative;
	width:500px;
}

/* about page */

.about-title {
	font-size:33px;
	line-height:102%;
	padding:9px 85px 0 271px;
}

.about-people {

}

.about-people h3 {
	font-size:17px;
	margin:71px 0 0 270px;
}

.about-people-list {
	margin:23px 0 0;
}

.about-people-list li {
	border-top:1px solid black;
	height:100%;
	overflow:hidden;
	padding:0 0 35px;
	position: relative;
}

.about-people-list li .meta {
	border-top:7px solid black;
	font-size:12px;
	line-height:140%;
	padding:15px 0 0;
	position:absolute;
	width:136px;
	left: 0px;
}

.about-people-list li .meta a {
	color: black;
}

.about-people-list li h4 {
	font-weight: normal;
	margin:0;
}

.about-people-list li h5 {
	font-weight: bold;
}

.about-people-list li .description {
	font-family: arial, helvetica, sans-serif;
	line-height: 125%;
	margin:22px 0 0 274px;
}

.about-directions p {
	width: 524px;
	padding-right: 20px;

}

/*timeline*/

.timeline-date-header {
	border-top:6px solid black;
	color: black;
	float:left;
	font-size:33px;
	margin:0;
	padding-top:5px;
	position:relative;
	width:136px;
}

.timeline-item {
	border-top: 1px solid black;
	float:right;
	top:0;
	width:680px;
}

.timeline-item-header {
	clear:both;
	cursor: pointer;
	height:21px;
	padding:9px 0 0 9px;
}

.active .timeline-item-header {
	background-color: black;
	color: white;
}

.timeline-item-header-hover {
    color: white;
    background-color: #c81123;
}

.timeline-item-date {
	float: left;
	position: relative;
	width: 136px;
}

.timeline-item-title {
	clear:none;
	float:left;
	font-size:13px;
	line-height:100%;
	margin:0;
	position:relative;
	width:535px;
}

.timeline-item-content {
	overflow: auto;
	padding: 12px 0 40px 0;
}

.timeline-item-content .image-frame {
	float: left;
	height:221px;
	position: relative;
	width:391px;
}

.timeline-item-content .content-text {
	float: right;
	position: relative;
	width: 272px;
}

.timeline-item-content .content-text p {
	color: #7f7f7f;
	margin: 0px;
}

/*contact*/

.contact {
	overflow: auto;
	width:100%;
}

.contact-title {
	border-bottom: 1px solid black;
	font-size:33px;
	line-height:102%;
	margin:28px 0 7px;
	padding:4px 85px 49px 271px;

}

.contact blockquote {
	font-weight:normal;
	line-height:115%;
	margin:18px 0 9px;
}

.contact input {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border:1px solid black;
	margin:19px 0 0;
	padding:5px;
}

.contact select {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	color: white;
	background-color:black;
	border:1px solid black;
	padding: 5px;
	height: 30px;
	width:200px;
}

.contact textarea {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border:1px solid black;
	margin-top: 8px;
}

.contact .contact-info-email {
	display:block;
	width: 221px;
}

.contact .contact-info-submit {
	background-color:black;
	color:white;
	width:111px;
}
.contact .half h4, .contact-big {
	font-size: 19px;
	font-weight: bold;
	margin:6px 0;
}

.contact .contact-info {
	border-bottom: 1px solid black;
	margin:0 0 15px;
	padding:0 0 21px;	
}

.contact .contact-info-last {
	border: none;
}

.service-casestudy .casestudy-caption {
	background-color:black;
	height:13px;
	margin-top:90px;
	padding:10px 13px;
	position:absolute;
	width:176px;
}

.casestudy-caption {
	color: 	white;
}

.section li.last{
    padding-right: 0px;
}

#contact_form {

}

#contact_form input {
	margin:0;
}

#contact_form label {
	display: block;
	margin:20px 0 6px;
}

#contact_form select {
}

#contact_form textarea {
	height:260px;
	width:355px;
}

#contact_form .contact-form-submit {
	background-color:black;
	color:white;
	display:block;
	left:165px;
	margin-top:14px;
	position:relative;
	width:191px;
}

.arrowkeys{
    float: right;
    margin:9px 6px 0 0;
}

a#where{
    display: block;
    margin: 20px 0 45px 270px;
    font-weight: bold;
}

/* @group events */

.events .comment{
    padding-top: 20px;
    border-top: 1px solid black;
    margin-bottom: 20px;
}

div.event_description.description h2 {
	margin-top: 20px;
}

#content div.replies h1 {
	margin-left: -10px;
}




.events .event_form{
    padding: 30px 0 30px 272px;
    width: 542px;
}

.event_form label, .event_form input{
    display: inline;
}

p.choices {
	margin-top: 16px;
}



.event_form .choices label, .event_form .choices input{
    display: inline;
}

.event_form .choices label{
    margin: 0 20px 0 10px;
}

.events .info {
    height: 30px;
    background-color: #c81123;
    display: none;
}

.events span{
    width: 220px;
    float: left;
}

.events .event_form input {
    margin-top: 0px;
}

.events .event_form .required_input input {
    background-color: #c81123;
    color: white;
    border-color: #c81123;
}

.events .event_form textarea{
    width: 518px;
    padding: 10px 10px;
    height: 80px;
}

.events .replies{
    border-bottom: 2px solid #333333;
    border-top: 2px solid #333333;
}

.events .replies div{
    padding: 10px 0px;
    border-top: 2px solid #999999;
}

.events .name-line{
    color:#000;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight:bold;
    font-size: 16px;
    margin-top: 10px;
}

.events .message-line{
    color:#777777;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 30px;
    margin-bottom: 5px;
    margin-left: -15px;
    line-height: 110%;
}

.events .replies p {
    padding-left: 15px;
}

.events #submit{
    float: right;
    width: 130px;
    background-color: #000;
    border: none;
    color: white
}

.events #submit:hover{
    background-color: #c81123;
}


.events .description{
    padding-left: 272px;
    margin-top: 20px;
}

.events .description h2{
    font-size: 30px;
    color: #777777;
}

.events .description p{
    font-size: 28px;
    font-weight: bold;
    margin-top: 0px;
    padding-top: 0px;
}

.events .description div {
    border-top: 2px solid #c81123;
    padding-bottom: 12px;
}

.events .replies{
    padding-left: 10px;
	margin-bottom: 20px;
}

.events .field input{
	margin-top: 10px;
    width: 190px;
}

.events .testimonial-content p:before {
	left: -15px;
}

.events .testimonial-content h5 a{
    font-weight: normal;
    font-size: 12px;
}

.events #message {
	font-size: 28px;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: bold;	
}



.events .map{
    margin-bottom: 80px;
    border-top: 1px solid black;
    margin-top: 60px;
}


div#event-map iframe {
	border: 1px solid black;
	margin-bottom: 12px;
}

#event-map a {
	color: #c81123;	
}

#work-carousel{
	/* margin-top: 40px; */
}


/* @end */
	







