@charset "utf-8";
/*
	
	Bushey Feight Morin Architects Style Sheet
		
	1. Base Styling
	2. Page Constraints
	3. Header
	4. Navigation
	5. Content
	6. Footer
	7. Generic Styles
	
*/
@import url("reset.css");

/*mmmm Base Styling mmmm*/
body {
	background:url(/images/body_interior_backdrop.png) repeat-x 0 133px;
	font-family:"Trebuchet MS", Arial, Helvetica;
	font-style:normal !important;
	font-variant:normal;
	font-size:100%;
	overflow-x:hidden
}
#home {
	background:url(/images/body_backdrop.png) repeat-x 0 133px;
}
/*mmmm Page Constraints mmmm*/
#wrapper {
	border-left:21px solid #FFF;
	border-right:21px solid #FFF;
	margin:0 auto;
	width:914px;
}
#outer-wrapper {
	margin:0 auto;
	width:100%;
}
#splash {
	height:188px;
}
#home #splash {
	height:375px;
}
/*mmmm Header mmmm*/
#header {
	height:133px;
	position:relative;
}
#header #logo {
	background:url(/images/bfm_logo.png) no-repeat;
	float:left;
	height:95px;
	margin:18px 0 0;
	text-indent:-9999px;
	width:230px;
}
#header p {
	float:right;
	font-size:12px;
	line-height:1.6em;
	margin:17px 0 0;
	text-align:right;
}
#header ul {
	clear:right;
	float:right;
	margin:32px 0 0;
}
#header ul li {	
	float:left;
	margin:0 0 0 25px;
}
#header ul li a {
	background:url(/images/sprite_navigation_items.png) no-repeat 0 0;
	border-top:4px solid #FFF;
	display:block;
	height:18px;
	padding:3px 0;
	text-indent:-9999px;
}

/*mmmm Navigation mmmm*/

#header ul li#nav-home a {
	background-position:0 9px;
	width:39px;
}
#header ul li#nav-home a:hover, body.home #header ul li#nav-home a {
	background-position:0 -16px;
}
#header ul li#nav-about a {
	background-position:-62px 9px;
	width:50px;
}

#header ul li#nav-about a:hover, body.about #header ul li#nav-about a {
	background-position:-62px -16px;
}
#header ul li#nav-services a {
	background-position:-136px 9px;
	width:63px;
}
#header ul li#nav-services a:hover, body.services #header ul li#nav-services a {
	background-position:-136px -16px;
}
#header ul li#nav-portfolio a {
	background-position:-224px 9px;
	width:79px;
}
#header ul li#nav-portfolio a:hover, body.portfolio #header ul li#nav-portfolio a {
	background-position:-224px -16px;
}
#header ul li#nav-contact a {
	background-position:-326px 9px;
	width:65px;
}
#header ul li#nav-contact a:hover, body.contact #header ul li#nav-contact a {
	background-position:-326px -16px;
}

body.home #header ul li #nav-home-link {
	border-top:4px solid #43423E;
}

body.about #header ul li #nav-about-link {
	border-top:4px solid #43423E;
}

body.services #header ul li #nav-services-link {
	border-top:4px solid #43423E;
}

body.portfolio #header ul li #nav-portfolio-link {
	border-top:4px solid #43423E;
}

body.contact #header ul li #nav-contact-link {
	border-top:4px solid #43423E;
}


/*mmmm Content mmmm*/
.three-column {
	width:100%;
}
.three-column .column1, .three-column .column2, .three-column .column3 {
	float:left;
	margin-top:33px;
	padding:0 21px;
	width:262px;
}
.three-column .column1 {
	border-right:1px solid #CCC;
}
.three-column .column2 {
	border-left:1px solid #CCC;
	border-right:1px solid #CCC;
	margin-left:-1px; /*Expandable*/
}
.three-column .column3 {
	border-left:1px solid #CCC;
	margin-left:-1px; /*Expandable*/
}
.three-column div.hr {
	margin-left:-21px;
	width:304px;
}
.two-column .column1, .two-column .column2 {
	float:left;
	padding:0 17px;
}
.two-column .column1 {
	border-right:1px solid #CCC;
	margin-top:21px;
	width:563px;
}
.two-column .column2 {
	border-left:1px solid #CCC;
	margin-top:72px;
	margin-left:-1px; /*Expandable*/
	width:282px;
}

.two-column .column1 td a {font-size:12px; line-height:18pt;}

.two-column div.hr {
	margin:15px 0 15px -17px;
	width:296px;
}
#content a {
	color:#98a458;
}
#content a:hover, #content p.bold a:hover, #content a.bold {
	color:#ad5819;
}
#content p.bold a, #content a.bold {
	font-size:14px;
	font-weight:bold;
	text-decoration:none;
	text-transform:uppercase;
}
#content p.bold {
	margin:-13px 0 23px 0;
}
h2 {
	font-size:50px;
	letter-spacing:-5px;
	margin:-7px 0 20px 0;
	text-transform:uppercase;
}
h3 {
	color:#AD5819;
	clear:left;
	font-size:19px;
	letter-spacing:-1px;
	margin:10px 0;
	word-spacing:-1px;
}
h4 {
	color:#ADB96E;
	margin:10px 0 -5px 0;
}

h5 {
	color:#AD5819;
	margin:10px 0 -16px 0;
}

h3, h4, h5 {
	text-transform:uppercase;
}
#content p {
	font-size:12px;
	line-height:1.65em;
	margin:23px 0;
}
span.bfm-logo {
	background:url(/images/icon_bfm.png) no-repeat;
	float:left;
	height:25px;
	margin:-10px 5px 0 0;
	text-indent:-9999px;
	width:75px;
}
ul.arrow-bullets {
	margin:20px 0 23px 0;
}
ul.arrow-bullets li {
	background:url(/images/bullet_green_arrows.png) no-repeat left center;
	font-size:12px;
	list-style:none;
	list-style-type:none;
	padding-left:18px;
	margin:0 0 8px 4px;
}
ul.thumb-photo-gallery {
	float:left;
	margin:15px 0;
}
ul.thumb-photo-gallery li {
	float:left;
	height:63px;
	margin:0 10px 10px 0;
	width:65px;
}
ul.thumb-photo-gallery li a {
	border:1px solid #BABABA;
	display:block;
	height:100%;
	overflow:hidden;
	text-decoration:none;
	width:100%;
}
ul.thumb-photo-gallery li a:hover {
	border-color:#CCC;
}
dl.news {
	font-size:12px;
	margin:27px 0 35px;
}
@media screen and (-webkit-min-device-pixel-ratio:0){ /* Making Pixel Perfection : Remove When Ready */
	dl.news {
		margin-bottom:37px;
	}
}
dl.news dt {
	font-weight:bold;
	margin-bottom:5px;
}
dl.news dd {
	line-height:1.65em;
	margin-bottom:24px;
}
dl.news dd a {
	color:#8D9855;
}
.textbox {
	background-color:#EEE;
	border:1px solid #CCC;
	color:#42413C;
	padding:5px 3px;
	margin:0 0 7px 0;
	width:248px;
}
.submit {
	border:none;
	cursor:pointer;
	display:block;
	height:26px;
	margin:11px 0 0;
	text-indent:-9999px;
	width:100px;
}
.button-subscribe {
	background:url(/images/button_subscribe.png) no-repeat;
}
.button-send-info {
	background:url(/images/button_send_info.png) no-repeat;
}
/*mmmm Footer mmmm*/

#footerWrapper {
	background:url(/images/bkg_city_skyline.gif) center no-repeat;
	height:240px;
	clear:both;
	margin-left:auto;
	margin-right:auto;
	width:100%;
}

#footer {
	margin:0 auto;
	height:240px;
	width:914px;
}

#footer p {
	color:#FFF;
	float:left;
	font-size:11px;
	margin:198px 0 0 18px;
	width:270px;
}
#footer ul {
	float:right;
	font-size:11px;
	margin:198px 18px 0 0;
}
#footer ul li {
	border-left:1px solid #FFF;
	float:left;
}
#footer ul li a {
	color:#FFF;
	display:block;
	padding:0 5px;
	text-transform:uppercase;
	text-decoration:none;
}
#footer ul li:first-child {
	border-left:none;
}
#footer ul li a:hover {
	color:#ADB96E;
}

/*mmmm Fancy Box Styling mmmm*/
div#fancy_overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #666;
	display: none;
	z-index: 30;
}
* html div#fancy_overlay {
	position: absolute;
	height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}
div#fancy_wrap {
	text-align: left;
}
div#fancy_loading {
	position: absolute;
	height: 40px;
	width: 40px;
	cursor: pointer;
	display: none;
	overflow: hidden;
	background: transparent;
	z-index: 100;
}
div#fancy_loading div {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 480px;
	background: transparent url('/images/fancy_progress.png') no-repeat;
}
div#fancy_loading_overlay {
	position: absolute;
	background-color: #FFF;
	z-index: 30;
}
div#fancy_loading_icon {
	position: absolute;
	background: url('/images/fancy_loading.gif') no-repeat;
	z-index: 35;
	width: 16px;
	height: 16px;
}
div#fancy_outer {
	position: absolute;
    top: 0;
    left: 0;
    z-index: 90;
    padding: 18px 18px 33px 18px;
    margin: 0;
    overflow: hidden;
    background: transparent;
    display: none;
}
div#fancy_inner {
	position: relative;
	width:100%;
	height:100%;
	border: 1px solid #BBB;
	background: #FFF;
}
div#fancy_content {
	margin: 0;
	z-index: 100;
	position: absolute;
}
div#fancy_div {
	background: #000;
	color: #FFF;
	height: 100%;
	width: 100%;
	z-index: 100;
}
img#fancy_img {
	position: absolute;
	top: 0;
	left: 0;
	border:0; 
	padding: 0; 
	margin: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
}
div#fancy_close {
	position: absolute;
	top: -12px;
	right: -15px;
	height: 30px;
	width: 30px;
	background: url('/images/fancy_closebox.png') top left no-repeat;
	cursor: pointer;
	z-index: 181;
	display: none;
}
#fancy_frame {
	position: relative;
	width: 100%;
	height: 100%;
	display: none;
}
#fancy_ajax {
	width: 100%;
	height: 100%;
	overflow: auto;
}
a#fancy_left, a#fancy_right {
	position: absolute; 
	bottom: 0px; 
	height: 100%; 
	width: 35%; 
	cursor: pointer;
	z-index: 111; 
	display: none;
	background-image: url(data:image/gif;base64,AAAA);
	outline: none;
}
a#fancy_left {
	left: 0px; 
}
a#fancy_right {
	right: 0px; 
}
span.fancy_ico {
	position: absolute; 
	top: 50%;
	margin-top: -15px;
	width: 30px;
	height: 30px;
	z-index: 112; 
	cursor: pointer;
	display: block;
}
span#fancy_left_ico {
	left: -9999px;
	background: transparent url('/images/fancy_left.png') no-repeat;
}
span#fancy_right_ico {
	right: -9999px;
	background: transparent url('/images/fancy_right.png') no-repeat;
}
a#fancy_left:hover {
  visibility: visible;
}
a#fancy_right:hover {
  visibility: visible;
}
a#fancy_left:hover span {
	left: 20px; 
}
a#fancy_right:hover span {
	right: 20px; 
}
.fancy_bigIframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
}
div#fancy_bg {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 100%;
	z-index: 70;
	border: 0;
	padding: 0;
	margin: 0;
}
div.fancy_bg {
	position: absolute;
	display: block;
	z-index: 70;
	border: 0;
	padding: 0;
	margin: 0;
}
div.fancy_bg_n {
	top: -18px;
	width: 100%;
	height: 18px;
	background: transparent url('/images/fancy_shadow_n.png') repeat-x;
}
div.fancy_bg_ne {
	top: -18px;
	right: -13px;
	width: 13px;
	height: 18px;
	background: transparent url('/images/fancy_shadow_ne.png') no-repeat;
}
div.fancy_bg_e {
	right: -13px;
	height: 100%;
	width: 13px;
	background: transparent url('/images/fancy_shadow_e.png') repeat-y;
}
div.fancy_bg_se {
	bottom: -18px;
	right: -13px;
	width: 13px;
	height: 18px;
	background: transparent url('/images/fancy_shadow_se.png') no-repeat;
}
div.fancy_bg_s {
	bottom: -18px;
	width: 100%;
	height: 18px;
	background: transparent url('/images/fancy_shadow_s.png') repeat-x;
}
div.fancy_bg_sw {
	bottom: -18px;
	left: -13px;
	width: 13px;
	height: 18px;
	background: transparent url('/images/fancy_shadow_sw.png') no-repeat;
}
div.fancy_bg_w {
	left: -13px;
	height: 100%;
	width: 13px;
	background: transparent url('/images/fancy_shadow_w.png') repeat-y;
}
div.fancy_bg_nw {
	top: -18px;
	left: -13px;
	width: 13px;
	height: 18px;
	background: transparent url('/images/fancy_shadow_nw.png') no-repeat;
}
div#fancy_title {
	position: absolute;
	bottom: -33px;
	left: 0;
	width: 100%;
	z-index: 100;
	display: none;
}
div#fancy_title div {
	color: #FFF;
	font: bold 12px Arial;
	padding-bottom: 3px;
}
div#fancy_title table {
	margin: 0 auto;
}
div#fancy_title table td {
	padding: 0;
	vertical-align: middle;
}
td#fancy_title_left {
	height: 32px;
	width: 15px;
	background: transparent url(/images/fancy_title_left.png) repeat-x;
}
td#fancy_title_main {
	height: 32px;
	background: transparent url(/images/fancy_title_main.png) repeat-x;
}
td#fancy_title_right {
	height: 32px;
	width: 15px;
	background: transparent url(/images/fancy_title_right.png) repeat-x;
}

/*mmmm Generic Styles mmmm*/
div.hr hr { /* HR styling inconsistent across browsers */
	display:none;
}
div.hr {
	background-color:#CCC;
	clear:left;
	height:1px;
	margin-left:-21px;
	width:304px;
}
/*.paddedBorder {
	border:1px solid #CCC;
	padding:2px;
}*/
.floatLeft { 
	float:left;
	margin:0 12px 12px 0;
}
.floatRight { 
	float:right;
	margin:0 0 12px 12px;
}
.clearLeft {
	clear:left;
}
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.clearfix {
    display: inline-block;
}
html[xmlns] .clearfix {
    display: block;
}
* html .clearfix {
    height: 1%;
}