/* STANDARD ELEMENTS */
/** Clearfix: Updated to prevent margin-collapsing on child elements.  **/
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

h1,h2,h3,h4,h5,h6{ font-weight:normal; font:Arial, Helvetica, sans-serif;  }
h1{ color: #0077c1; font: 24px/24px Arial, Helvetica, sans-serif; margin: 0px 0px 14px; }
h2{ color: #0077c1; font-size: 21px; margin: 0px 0px 14px; }
h3{ color: #0077c1; font-size:17px; margin: 0px 0px 14px; }
h4{ font-size:15px;}
h5{ font-size:13px;}
h6{ font-size:12px;}

a{ color: #0077c1; text-decoration:underline; }
a:active, a:visited { color: #0077c1; }
a:hover { color: #666; text-decoration: underline; }

td, p { color:#7a7c7e;	font:14px/16px Arial, Helvetica, sans-serif; }

/* WEBSTART: SITE WRAPPER AND MAIN CONTAINER */
#wrapper-body { background: #FFFFFF url(site_images/wrapper_body_bg.jpg) repeat-x; min-height: 649px; min-width: 980px; padding: 0px 0 0 0; margin: 0 0; }
#wrapper-footer { background: #0274BC url(site_images/wrapper_footer_bg.jpg) repeat-x; min-height: 464px; min-width: 980px; margin: 0 0; }

/* Special wrapper for unbound speach mark - SF */
#wrapper-content { min-width: 980px; padding: 0px 0 0 0; margin: 0 0; }

/* WEBSTART: HEADER ELEMENTS */
#header { height: 136px; width: 980px; margin: 0 auto 0; padding: 0px 0 0px; position: relative; }
/* WEBSTART: LOGO AREA */
#header-logo { width: 980px; height: 136px; }

/* WEBSTART: MENU STYLES - HORIZONTAL MENU */
#navbar { width: 980px; height: 47px; padding: 0 0; margin: 0px auto 0; position: relative; }
#navigation {  height: 47px; padding: 0 0; width: 980px; list-style: none; position: absolute; left: 0px; bottom: 0px; background: url(site_images/menu-home-bg.gif) repeat-x; }

#navigation li { position: relative; float: left; width: 163px; background: url(site_images/menu-bg.jpg) no-repeat; font: 14px/47px Arial, Helvetica, sans-serif; text-align: center; color: #FFF; }
#navigation li a { color: #FFF; display: block; text-decoration: none; }
#navigation li:hover { color: #FFF; background: url(site_images/menu-bg-over.jpg); }
#navigation li:hover a { color: #FFF; text-decoration: none; }

/** Special Items - Home **/
#navigation li:first-child { color: #FFF; width: 165px; background: url(site_images/menu-home-bg.gif) repeat-x; }
#navigation li:first-child a { color: #FFF; text-align: center; }
#navigation li:first-child:hover { background: url(site_images/menu-home-bg-over.gif) repeat-x; }
#navigation li:first-child:hover a { color: #FFF; }

/** Submenu Level 1 **/
#navigation li ul { width: 163px; display: none; position: absolute; top: 47px; left: 1px; list-style: none; z-index: 10; }
#navigation li ul li { width: 163px !important; height: 31px !important; background: #87888A !important; border-top: 1px solid #727272; font: 14px/31px Arial, Helvetica, sans-serif !important; padding: 0; } /* bg 0278C1 */
#navigation li:hover ul li a { color: #FFF !important; }
#navigation li:hover ul li:hover { background: #9E9F9F !important; } /* bg 0265A2 */
#navigation li:hover ul li:hover a { color: #FFF !important; }
#navigation li:hover>ul { display: block; }

/** Submenu Level 2 **/
#navigation li ul li ul { width: 163px; top: -1px !important; left: 163px !important; list-style: none; }
#navigation li ul li ul li { width: 163px; border-left: 1px solid #727272; }
#navigation li:hover ul li:hover ul li a { color: #FFF !important; }
#navigation li:hover ul li:hover ul li:hover a { color: #FFF !important; }

/** Submenu Level 3 **/
#navigation li ul li ul li ul { list-style: none; }
#navigation li:hover ul li:hover ul li:hover ul li a { color: #FFF !important; }
#navigation li:hover ul li:hover ul li:hover ul li:hover a { color: #FFF !important; }



/* WEBSTART: MAIN CONTENT STYLES */
/** Style on the main body content **/
.MainContent{ 
	margin: 0px auto 0px;
	width: 980px;
	min-height: 450px;
	padding: 15px 0px 10px;
	vertical-align: top;
}


/** Style on the main body content for INDEX page only **/
.IndexContent{
	margin: 0px auto 0px;
	width: 980px;
	min-height: 450px;
	padding: 20px 0px 10px;
	vertical-align: top;
}

/* WEBSTART: CUSTOM FOOTER STYLES */
/** BG Bound footer wrapper - SF **/
#footer-content { width: 980px; margin: 0px auto 0; padding: 0; }

#fc-table {width: 980px; height: 106px; vertical-align: top; background: url(site_images/footer-bg-support.jpg) no-repeat;}
#fc-table td { width: 215px; padding: 50px 0 0 30px; }
#fc-table td h1 {font-size: 21px; color: #fff; }
#fc-table td p { font-size: 17px; line-height: 28px; color: #fff; text-decoration: none; }
#fc-table td p a { color: #fff; text-decoration: none;  }
#fc-table td p a:hover {color: #fff; text-decoration: underline; list-style: none;}


#footer-seo {width: 980px; vertical-align: top; background: url(site_images/seo-footer-bg-repeat.gif) repeat-y; margin: 0; padding: 0;}

.fs-links { width: 182px; vertical-align: top; margin: 0; padding: 25px 10px 20px 30px;  }
.fs-links h1 a { font-size: 17px; line-height: 30px; color: #389cda ; text-decoration: none;  }
.fs-links h1 a:hover {color: #fff; text-decoration: underline; list-style: none;}
.fs-links p {font-size: 12px; line-height: 22px; color: #389cda; text-decoration: none; padding: 0 0 0 0px;}
.fs-links p a { color: #389cda; text-decoration: none;  }
.fs-links p a:hover {color: #fff; text-decoration: underline; list-style: none;}


#fs-social { width: 188px; vertical-align: top; margin: 0; padding: 25px 30px 0 50px;  }
#fs-social img { padding: 0 20px 8px 0;}
#fs-social p a { font-size: 17px;  color: #389cda ; text-decoration: none;  }
#fs-social p a:hover {color: #fff; text-decoration: underline; list-style: none;}

#fs-bottom { width: 980px; height: 23px; vertical-align: top; margin: 0; padding: 0;  }



/** Footer links and copyright footer - SF **/
#footer-sitelinks { width: 980px; margin: 0px auto 0; } #fs-table { width: 980px; margin: 0 0; }
.FullLinksCell { width: 980px; text-align: left; vertical-align: top; padding: 0px 0px; border-bottom: 1px solid #53B0E7; }
.SurefireText { text-align: right; font-size: 11px; color: #53B0E7; padding: 0; vertical-align: top; }

/* WEBSTART: STANDARD PAGE AND SFD LINKS FOOTER **/
.SurefireText, .SFDLinks, .SFDLinks a, .SiteLinks, .SiteLinks a, .CopyrightText, .CopyrightText a { font: 11px/30px Arial, Helvetica, sans-serif; color: #53B0E7; text-decoration: none; } 
.SFDLinks a:hover, .SiteLinks a:hover, .SurefireText a:hover, .CopyrightText a:hover { color: #FFF; text-decoration: underline; }


/* WEBSTART: CUSTOM SITE SPECIFIC CLASSES - ON ALL PAGES*/


/* WEBSTART: HOMEPAGE SPECIFIC CLASSES */

/** Key Message table on blue - SF **/
#home-message { width: 980px; margin: 0 0; padding: 0; }

#hm-text {width: 930px; height: 171px; vertical-align: top; margin: 0; padding: 22px 25px 19px 25px; background: url(site_images/speech-box.jpg) no-repeat;}
#hm-text h1 { font: 75px/65px 'Pontano Sans', Arial, Helvetica, Verdana, sans-serif; color: #fff; margin: 0;}
#hm-text h2 { font: 35px/50px 'Pontano Sans', Arial, Helvetica, Verdana, sans-serif; color: #fff; margin: 0;}
#hm-text a { color: #fff; text-decoration: none; } #hm-text a:hover { color: #fff; text-decoration: none; } 

/** Three column table feature panels - SF **/
#home-feature { width: 980px; margin: 0; padding: 0; }

.hf-cell {width: 272px; height: 188px; vertical-align: top; padding: 106px 22px 25px 22px; }
.hf-cell h1 { font-size: 19px; margin: 0 0 6px; color: #0077c1; }
/*.hf-cell p { font-size: 12px; line-height: 14px; color: #7a7c7e; } */
.hf-cell a { width: 120px; font-size: 14px; color: #0077c1; text-decoration: none; display: block; background: url(site_images/arrow.gif) 75px 1px no-repeat; }
.hf-cell a:hover {color: #666; text-decoration: underline; background: url(site_images/arrow-over.gif) 75px 1px no-repeat; }
.hf-spacer { width: 16px; vertical-align: top; margin: 0; padding: 0;}

#hf-no-money {width: 316px; height: 213px;  background:url(site_images/no-money-up-front.jpg) no-repeat; }
#hf-edit-easily {width: 316px; height: 213px;  background:url(site_images/make-your-own-changes-easily.jpg) no-repeat; }
#hf-get-found {width: 316px; height: 213px;  background:url(site_images/get-found-on-google.jpg) no-repeat; }

/** One column portfolio rotator - SF **/
#home-rotator { width: 980px; height: 314px; vertical-align: top; margin: 0; padding: 0; background: url(site_images/view-our-portfolio-bg.gif) no-repeat;}
#hr-image { width: 940px; height: 252px; vertical-align: top; padding: 10px 10px 21px 10px; }



/* CONTENT PAGE TEMPLATE STYLES */
/** Template Styles - SFD **/
.ContentTable {
	width: 980px;
	margin: 0;
	padding: 0;
}
.ContentTop { width: 980px; height: 8px; margin: 0; padding: 0; background:url(site_images/content-bg-top.png) no-repeat;}
.ContentFull, .ContentFullTable, .ContentPortfolio { width: 910px; min-height: 490px; margin: 0; padding: 30px 35px; background:url(site_images/content-bg-repeat.png) repeat-y; vertical-align: top; }
.ContentBottom { width: 980px; height: 8px; margin: 0; padding: 0; background:url(site_images/content-bg-bottom.png) no-repeat;}

.ContentBlogHead { width: 980px; height: 8px; background: url(site_images/blog-bg-header.png) no-repeat; display: block; }
.ContentBlogFoot { width: 980px; height: 8px; background: url(site_images/blog-bg-footer.png) no-repeat; display: block; }

.SummaryTable { 
	width: 980px;
	margin: 0;
	padding: 0;
}
.SummaryContent { width: 575px; height: 153px; vertical-align: top; margin: 0; padding: 28px 64px 55px 25px; background: url(site_images/summary-box-bg.jpg) no-repeat;} 
.SummaryContent h1 { font-size: 19px; color: #0077c1;}

.SummaryLink { width: 326px; height: 211px; vertical-align: middle; margin: 0; padding: 0 0px 25px 0px; background: url(site_images/call-to-action-box-bg.jpg) no-repeat; text-align: center; }
.SummaryLink a { display: block; margin: 0; padding: 40px 40px; text-align: center; text-decoration: none; font-family: 'Pontano Sans', Arial, Helvetica, Verdana, sans-serif; font-size: 36px; line-height: 40px; color: #fff; }
.SummaryLink a:hover {color: #fff; text-decoration: underline;}

.ContentText, .ContentTextTable { width: 425px; min-height: 490px; margin: 0; padding: 30px 35px; background:url(site_images/content-bg-repeat.png) repeat-y; vertical-align: top; }
.ContentImages { width: 450px; min-height: 490px; margin: 0; padding: 30px 35px 30px 0; background:url(site_images/content-bg-repeat.png) repeat-y right; vertical-align: top; text-align: right; }
.ContentImages IMG {  }

.ContentTextTable table, .ContentFullTable table { border-top: 1px solid #E8E8E8; border-left: 1px solid #E8E8E8; }
.ContentTextTable table td, .ContentFullTable table td { border-bottom: 1px solid #E8E8E8; border-right: 1px solid #E8E8E8; padding: 3px 5px; }

/** Portfolio Styles - SF **/
.PortfolioTable { 
	width: 910px;
	margin: 0;
	padding: 0;
}
.PortfolioLink { width: 121px; padding: 0 4px 0 0; }
.PortfolioLink a { display: block; width: 110px; height: 28px; padding: 0 0 0 11px; background:url(site_images/portfolio-link.jpg) no-repeat; color: #0077c1; text-decoration: none; line-height: 28px; }
.PortfolioLink a:hover { background:url(site_images/portfolio-link-over.jpg) no-repeat; color: #FFF; text-decoration: none; }
.PortfolioLinkAll  { width: 89px; padding: 0; }
.PortfolioLinkAll a { width: 78px; background:url(site_images/portfolio-view-all.jpg) no-repeat; }
.PortfolioLinkAll a:hover { background:url(site_images/portfolio-view-all-over.jpg) no-repeat; }
.PortfolioAlphabet { width: 523px; padding: 0 0px 0 0; font-size: 17px; }
.PortfolioAlphabet a { display: inline; padding: 1px 3px; background:#FFF; color: #707070; text-decoration: none; }
.PortfolioAlphabet a:hover { background: #0265A2; color: #FFF; text-decoration: none; }

/** Portfolio Profile listings - SF **/
.ProfileTable { 
	width: 910px;
	height: 362px;
	margin: 0;
	padding: 0;
	background:url(site_images/portfolio-bg.gif) no-repeat;
}
.ProfileWebsiteImage { width: 389px; height: 335px; padding: 14px 35px 0 14px; vertical-align: top; }
.ProfileWebsiteText { width: 437px; padding: 25px 35px 14px 0; vertical-align: top; }
.ProfileWebsiteText h3 { color: #7a7c7e; }
.ProfileWebsiteText a { text-decoration: none; } .ProfileWebsiteText a:hover { text-decoration: none; }

.ContentFull li, .ContentText li, .SummaryContent li, .ProfileWebsiteText li, .ContentPortfolio li { list-style: outside; margin: 0 0 0 20px; }

/** Blog Styles - SF **/
.BlogTable {
	width: 980px;
	background: url(site_images/blog-bg-repeat.png) repeat-y;
}
.BlogContent {
	vertical-align: top;
	width: 620px;
	height: 370px;
	padding: 30px 45px 20px 35px;
}
.BlogSidebar {
	vertical-align: top;
	width: 240px;
	padding: 20px 20px 20px 30px;
}
.BlogFull {
	width: 910px;	
	height: 400px;
	vertical-align: top;
	padding: 30px 35px 20px;
}
.BlogContent H1, .BlogSidebar H1, .BlogFull H1 { margin: 30px 0px 10px; }
.BlogContent H2, .BlogSidebar H2, .BlogFull H2 { margin: 10px 0px 10px; }
.BlogContent H3, .BlogSidebar H3, .BlogFull H3 { margin: 10px 0px 10px; }
.BlogSidebar aside { padding: 0 0 20px; }
.BlogSidebar aside .cat-item {  }
 
.BlogSidebar li { list-style: none; }
.BlogContent H1 A { color: #0077c1; text-decoration: none; } 
.BlogContent H1 A:hover { color: #666; text-decoration: underline; }
#comments { padding: 20px 0 0; }
.BlogContent li, .BlogFull li { list-style: outside; margin: 0 0 0 20px; }
.BlogContent blockquote, .BlogFull blockquote { margin: 1.12em; }

/* Blog Category items - override styles */
.cat-item { margin: 5px 0; }
.cat-item a { color:#0077c1; text-decoration: none; font:16px/19px Arial, Helvetica, sans-serif; }
.cat-item a:hover { color:#7a7c7e; text-decoration: underline; }

/* Blog Recent posts - override styles */
.widget_recent_entries li { margin: 5px 0; }
.widget_recent_entries li a { color:#7a7c7e; text-decoration: none; }
.widget_recent_entries li a:hover { color:#0077c1; text-decoration: underline; }

/* Blog Archive items - override styles */
.widget_archive li { margin: 1px 0; }
.widget_archive li a { color:#7a7c7e; text-decoration: none; font:12px/14px Arial, Helvetica, sans-serif; }
.widget_archive li a:hover { color:#0077c1; text-decoration: underline; }

/* Blog Archive items - override styles */
.entry-content img { padding: 10px 10px 10px 0; }


/* WEBSTART: FORM ELEMENT STYLES */
.InputBox, input, select, textarea { font:14px Arial, Helvetica, sans-serif; border: 1px solid #87888A; color: #000; margin: 2px 2px; } 
.InputButton, input[type="submit"], input[type="button"] { font:14px Arial, Helvetica, sans-serif; color: #FFF; background-color: #0378C1; border: 1px solid #03629E; }

/** Contact Page Styles - PTM **/
.ContentContactText {
	vertical-align: top;	
	width: 575px;
	min-height: 400px;
	padding: 30px 35px; 
	background:url(site_images/content-bg-repeat.png) repeat-y;;
}
.ContentContactDetails {
	vertical-align: top;	
	width: 300px;
	padding: 30px 35px 30px 0; 
	background:url(site_images/content-bg-repeat.png) repeat-y right;
}
.ContentContactDetailsText {
	background: #F6F6F6;
	width: 238px;
	padding: 30px 30px;
	vertical-align: top;
	text-align: left;
	border: 1px solid #ECECEC;
}
.ContentContactDetailsText a { color: #7a7c7e; text-decoration:none; }
.ContentContactDetailsText a:hover { color: #0077c1; text-decoration:underline; }


/* WEBSTART: SITEMAP STYLES */
A.SiteMapLinks{ color: #333; line-height: 19px; text-decoration: none; } A:hover.SiteMapLinks { color: #0077c1; text-decoration: underline; }
A.SiteMapSubLinks{ color: #666; line-height: 19px; text-decoration: none; } A:hover.SiteMapSubLinks { color: #0077c1; text-decoration: underline; }

/* WEBSTART: STANDARD GALLERY STYLES */
.GalleryImgMain { border: solid 1px #CACACA; }
.GalleryImgThumb { border: solid 1px #CACACA; cursor:pointer; }
/** WS: General main gallery image cell content **/
.GalleryContent { width: 604px; height: 500px; text-align: center; }
/** WS: General gallery thumbs image cell content **/
.GalleryThumbs { vertical-align: top; width: 336px; height: 500px; padding-left: 40px; }