/* *****************************************************
	B O U L D E R  D E S I G N  style sheet
	V6.0 June 2009 - 
	----------------------------------------------------- */

/* ------------------------------------------------------
#	1. Defaults and universal elements
--------------------------------------------------------- */

.clear { clear: both; height: 1px; margin-top: -1px; font-size: 1px; line-height: 1px; }
a img { border:none; }
ul, li, a, ol, ul, dl, li, dt, dd, table, tr, td { margin: 0; padding: 0; border: none; }
h1, h2, h3, h4, p, span { margin: 0; padding: 0; font-size: 1em; font-weight: normal; }
fieldset, form, label, legend, input, textarea { margin: 0; padding: 0; font-size: 1em; font-family: inherit; }
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
a, a:link, a:visited, a:hover, a:active { text-decoration: none; color: #BC8B97; }
a:hover { text-decoration: inherit; }
a:focus { outline: none; }
ul, ol, dl { list-style: none; }
.hidden { display: none; }

/* ------------------------------------------------------
#	2. Basic structure
--------------------------------------------------------- */

	html {
		padding:0; 
		margin:0; 
		border:0; 
		background:#9CA248; 
		font-size:63%; 
		font-family: arial,"Museo-700","arial rounded mt bold","trebuchet ms", tahoma, verdana, arial, sans-serif;
		min-height: 100%;
		background:#9CA248 url(../images/bkg_lines.png) repeat 0 0;
	}
	body {
		/*height:100%;*/
		padding:0;
		margin:0;
		border:0;
		min-height: 100%;
	}
	#sitewrap {
		width: 908px;
		margin: 0 auto;
		padding: 1px 0 1px 15px;
		position: relative;
	}

	/* ---- Header ---- */
	#logoHomeLink {
		display: block;
		height: 95px;
		width: 651px;
		margin: 33px 0 19px 246px;
	}
	
	/* ---- Navigation ---- */
	#mainnavigation {
		/* Minus border - padding of .contentBox */
		height: 110px;
		width: 854px;
		background:#FFFFFF url(../images/nav_bkg_lines.gif) no-repeat 0 15px;
	}
	#mainnavigation.contentBox { margin: 0; 	}
	
	#mainmenu {
		display: block;
		width: 827px;
		height: 113px;
		margin-left: 32px;
		background: url(../images/text/menu_text.png) no-repeat left center;
	}
	
	#mainmenu li { display: block; float: left; line-height: 113px; }
	#mainmenu li a { display: block; height: 113px; width: 97px; }
	#mainmenu li a span { display: none; }
	#mainmenu li#mm_portfolio a { margin-right: 24px; }
	#mainmenu li#mm_profile a { margin-right: 35px; }
	#mainmenu li#mm_services a { width: 122px; margin-right: 56px; }
	#mainmenu li#mm_resources { width: 111px; margin-right: 150px; background: #fff; }
	/*#mainmenu li#mm_resources a { width: 111px; margin-right: 162px; }*/
	#mainmenu li#mm_contact { width: 123px; }
	#mainmenu li#mm_contact a { width: 122px; }
	#mainmenu li#mm_resources.menuactive {	
		background:#FFFFFF none repeat scroll 0 0;
		border-color:#C3C33D;
		border-style:solid;
		border-width: 7px 7px 0;
		height:150px;
		margin: -7px 172px 0 -17px;
		padding: 0 0 0 10px;
		width:93px;
	}
	#mainmenu li div { display: none; }
	#mainmenu li div {
		width: 130px;
		height: 90px;
		padding: 20px 20px 0;
		line-height: 2em;
		background: url(../images/rollover_bkg.png) left top no-repeat;
		z-index: 20;
		color: #b3b3b3;
		
		}
	
	li#mm_portfolio.menuactive a, li#mm_profile.menuactive a, li#mm_services.menuactive a { background: url(../images/bullet.png) no-repeat 50% 74%; }
	li#mm_portfolio.menuactive a { background-position: 38% 74%; }
	li#mm_contact.menuactive { background: url(../images/bullet.png) no-repeat 0 50%; }	
		
	/* Submenu */
	#mainmenu ul {
		margin-top: 18px;
	}
	#mainmenu ul li {
		float: none;
		line-height: 20px;
		margin-bottom: 6px;
	}
	#mainmenu ul li a {
		height: 20px;
	}
	li#mm_news { background: #fff url(../images/mm_details.png) no-repeat 0 3px;  }
	li#mm_articles { background: #fff url(../images/mm_details.png) no-repeat 0 -20px; }
	li#mm_resource { background: #fff url(../images/mm_details.png) no-repeat 0 -42px; }
	
	
	
	#mainmenu ul li.menuactive a { background: url(../images/bullet.png) no-repeat 85% 52%; }
	
	/* Phone Number */
	#mainnavigation p {
		position: absolute;
		right: 12px;
		top: 7px;
		height: 0;
		width: 172px;
		padding-top: 25px;
		overflow: hidden;
		background: url(../images/text/08453886238.png) left top no-repeat;
		z-index: 15;
	}
	/* Extra links in main menu area */
	.extramenulinks {
		position: absolute;
		bottom: 1.2em;
		right: 16px;
		text-align: right;
		font-size: 1.2em;
	}
	.extramenulinks a:link,
	.extramenulinks a:visited,
	.extramenulinks a:hover,
	.extramenulinks a:active { color: #BCA744; }
	
	/* Home page link */
	#HomeLink {
		display: block;
		position: absolute;
		width: 15px;
		height: 50px;
		padding: 5px;
		top: -7px;
		left: -32px;
		
	}
	
	
	/* Footer -------------- */
	#footerWrap {
		width: 100%;
		margin-top: 170px;
		height: 300px;
		padding-top: 20px;
		background: #9CA248 url(../images/dotted_line.png) repeat-x left top;
	}
	#footerCol1 { margin-left: 2%; text-align: right; }
	#footerCol1, #footerCol2, #footerCol3, #footerCol4 { width: 20%; padding: 20px 2%; height: 250px; float: left; }
	#footerCol2 { text-align: center; width: 140px;}
	#footerCol4 { padding-top: 0; }
	
	#footerWrap ul li {
		margin-bottom: 2.2em;
	}
	#footerWrap ul li a, #footerWrap ul li a:link, #footerWrap ul li a:visited, #footerWrap ul li a:hover, #footerWrap ul li a:active {
		font-size: 1.6em;
		font-weight: bold;
		color: #BCE4EE;
	}
	#footerWrap ul ul {
		margin: 0.8em 0 0 0;
	}
	#footerWrap ul ul li {
		margin-bottom: 0.5em;
	}
	#footerWrap ul ul li a, #footerWrap ul ul li a:link, #footerWrap ul ul li a:visited, #footerWrap ul ul li a:hover, #footerWrap ul ul li a:active {
		font-size: 1.2em;
		font-weight: bold;
		/*color: #C3C33D;*/
		color: #fff;
	}
	#footerWrap ul li p {
	font-size: 1.2em;
		/*color: #C3C33D;*/
		color: #fff;
		line-height: 1.2em;
		margin: 1em 0;
	}
	#footerWrap ul li p span.phonenumber { color: #fff; }
	
/* ------------------------------------------------------
#	3. Boxes
--------------------------------------------------------- */
	.contentBox {
		position: relative;
		background: #fff;
		border: 7px solid #C3C33D;
		padding: 20px;
		margin: 20px;
		line-height: 1.6em;
	}
	.filledBox { background-color: #9CA248; }
	.size1 {
		width: 218px; /* Minus border - padding of .contentBox */
	}
	.size2 {
		width: 470px; /* Minus border - padding of .contentBox */
	}
	.size3 {
		width: 715px; /* Minus border - padding of .contentBox */
	}
	.size4 {
		/*width: 715px;  Minus border - padding of .contentBox */
		margin: 20px 0;
	}
	
	.boxTab {
		position: absolute;
	}
	.topEdge {
		top: -63px;
		right: 50px;
		width: 67px;
		height: 63px;
		background: url(../images/tab_top.png) no-repeat left top;
	}
	.rightEdge {
		top: 100px;
		right: -63px;
		width: 63px;
		height: 67px;
		background: url(../images/tab_right.png) no-repeat left top;
	}
	.rightEdge.filled {
		background: url(../images/rightEdge_fill.png) no-repeat left top;
	}
	.leftEdge {
		top: 100px;
		left: -63px;
		width: 63px;
		height: 67px;
		background: url(../images/leftEdge_fill.png) no-repeat left top;
	}
	/* Individual cases of boxes */
	#homepageContent, #pricesContentBox { margin-left: 309px; }
	#homepageContent .topEdge { right: 74px; }
	#homepageCaseStudy { position: absolute; /*top: 529px;*/ top: 443px; left: 0;  }
	#homepageCaseStudy img { margin: 20px 0; }
	#homepageCaseStudy li { font-weight: bold; }
	#homepageCaseStudy ul { margin-top: 20px; }
	#homepageCaseStudy p { color:#BCA744; font-size: 1.3em; }
	#homepageCaseStudy li p { font-size: 1em; }
	#profileContentBox .topEdge { right: 519px; }
	#contactContentBox .topEdge { right: 70px; }
	#portfolioContentBox .topEdge { right: auto; left: 56px; }
	#servicesContentBox .topEdge { right: 376px; }
	#resourcesContentBox .topEdge { right: 351px; }
	#articlesContentBox .topEdge { right: 351px; }
	#resourceContentBox .topEdge, #softwareContentBox  .topEdge { right: 351px; }
	#resourceContentBox, #softwareContentBox { margin-left: 257px; }
	#resourceContentBox.size3, #softwareContentBox.size3 { width: 597px; }
		
	#resourcesExtraBox { position: absolute; top: 370px; left: -5px; width: 174px; }
	#resourcesExtraBox .rightEdge { background: url(../images/rightEdge_fill.png) no-repeat left top; }

	#readonBox { position: absolute; top: 353px; right: -10px; height: 300px; min-height: 300px;  }
	#readonBox.inSize4 { right: -30px; height: 242px; min-height: 242px; }
	
	#pricesContentBox .pageIntro { width: 90%; }
	#readonBox.prices { position: absolute; top: 504px; left: 5px; height: 200px; min-height: 200px;  }
	#pricesContentBox .topEdge { right: 114px; }
	
	
	/* Full height top tab */
	#articlesContentBox .topEdge, #resourcesContentBox .topEdge, #softwareContentBox .topEdge {
		border: solid #C3C33D;
		border-width:0 7px;
		height:35px;
		right:311px;
		width: 103px;
		top: -35px;
		background: url(../images/white_block.png) no-repeat left bottom;
	}
	
	
	/* Content tabs */
	#contentTabMenu {
		width: 560px;
		float: none;
		height: 43px;
		margin-bottom: 30px;
	}
	#contentTabMenu.extrasize1 {
		width: 700px;
		height: 90px;
	}
	#contentTabMenu li {
		display: block;
		float: left;
		padding: 8px 14px 14px;
		margin-bottom: 14px;
		position: relative;
	}
	#contentTabMenu li a {
		display: block;
		position: absolute;
		top: 0; left: 0;
		width: 100%;
		height: 100%;
	}
	#contentTabMenu .current {
		border: solid #C3C33D;
		border-width: 0 0 7px 0;
	}
	#contentTabMenu li p {
		color: #b3b3b3;
		margin-top: 14px;
	}
	.tabs_content {
		width: 520px;
		float: none;
		background: none;
		min-height: 500px;
		margin: 0;
		padding: 10px 20px 20px 16px;
	}
	.tabs_content.extrasize1 {
		width: 680px;
	}
	.tabs_content img {
		margin: 0 auto 15px;
	}
	.tabs_content p, #articleBody p, #resourceContentBox p {
		color: #666;
		margin: 4px 25px 1.5em 0;
		font-size: 1.2em;
		line-height: 1.6em;
	}
	#resourcesContentBox .tabs_content {
		width: auto;
		padding: 0;
	}
	#resourcesContentBox .tabs_content p { font-size: 1em; }
	
	/* Work type menu */
	#contentTabMenu li#wt1, #contentTabMenu li#wt2, #contentTabMenu li#wt3, #contentTabMenu li#wt4, #contentTabMenu li#wt5, #contentTabMenu li#wt6, #contentTabMenu li#wt7 { width: 90px; padding: 70px 0 10px; text-align: center; font-size: 1.3em; color: #8D782E; margin-right: 10px;}
	#wt1 { background: #fff url(../images/worktypes_bkg.png) no-repeat 27px 0; }
	#wt2 { background: #fff url(../images/worktypes_bkg.png) no-repeat -37px 0; }
	#wt3 { background: #fff url(../images/worktypes_bkg.png) no-repeat -102px 0;  }
	#wt4 { background: #fff url(../images/worktypes_bkg.png) no-repeat -168px 0;  }
	#wt5 { background: #fff url(../images/worktypes_bkg.png) no-repeat -237px 0;  }
	#wt6 { background: #fff url(../images/worktypes_bkg.png) no-repeat -302px 0;  }
	#wt7 { background: #fff url(../images/worktypes_bkg.png) no-repeat -302px 0;  }
	
	#wt1 { background: #fff url(../images/services_header_bkg.png) no-repeat 0 0; }
	#wt2 { background: #fff url(../images/services_header_bkg.png) no-repeat -100px 0; }
	#wt3 { background: #fff url(../images/services_header_bkg.png) no-repeat -200px 0;  }
	#wt4 { background: #fff url(../images/services_header_bkg.png) no-repeat -300px 0;  }
	#wt5 { background: #fff url(../images/services_header_bkg.png) no-repeat -400px 0;  }
	#wt6 { background: #fff url(../images/services_header_bkg.png) no-repeat -500px 0;  }
	#wt7 { background: #fff url(../images/services_header_bkg.png) no-repeat -600px 0;  }
	
	#res_menu { height: 130px; }
	#res_menu li { width: 132px; margin-right: 30px; display: block; float: left; height: 88px;}
	#res_menu li a { display:block; width: 100%; height: 100%; padding-bottom: 15px;}
	#res_menu li a.current { border-bottom: 7px solid #C3C33D; }
	#res_menu li#product1 a { background: url(../images/volumes_logo.png) no-repeat left top; }
	#res_menu li#product2 a { background: url(../images/control_logo.png) no-repeat left top; }
	#res_menu li#product3 a { background: url(../images/sharing_logo.png) no-repeat left top; }
	
	/* Costs table */
	.costs_table td {
		padding: 5px 0;
		color: #636363;
		font-size: 1.2em;
	}
	td.category {
		font-size: 1.5em;
		font-weight: bold;
		color: #666;
	}
	td.categoryImage { padding: 5px 12px; vertical-align: middle; }
	td.small_note { padding-bottom: 20px; padding-right: 30px; line-height: 1.6em; }
	
	/* Code snippets */
	
	.codesnippet {
		padding: 10px;
		border: 2px solid #e1e1e1;
		margin: 1em 3em;
		width: 75%;
		min-height: 100px;
	}
	
/* ------------------------------------------------------
#	4. Typography
--------------------------------------------------------- */	
	
	.contentHeader {
		font-size: 2.2em;
		line-height: 1.4em;
		margin: 1em 0 2em;
		padding: 1em 1em 0.6em 0.8em;
		color: #C3C33D;
		width: 60%;
		border-bottom: 7px solid #BC8B97;
	}
	h2.contentHeader {
		font-size: 1.8em;
		border-bottom: 1px solid #BC8B97;
		padding: 0.5em 1em 0.3em 0.8em;
	}
	.tabs_content h2 {
		font-size: 1.8em;
		margin: 3em 0;
	}
	.tabs_content h2.contentHeader { margin-bottom: 1.5em; }
	.articleHeader {
		font-size: 2.5em;
		color: #BC8B97;
		margin: 1em 0 0;
		padding: 1em 1em 0.6em 0.2em;
		border-bottom: 1px solid #ddd;
	}
	.articleDate {
		color: #666;
		padding-left: 0.5em;
	}
	.meta-heading, #homepageCaseStudy p.meta-heading {
		text-transform: uppercase;
		font-size: 9px;
	}
	
	
	/* ---- Replace Headers ---- */
	
	.replaceheader {
		padding-top: 21px;
		height: 0;
		overflow: hidden;
		background-repeat: no-repeat;
	}
	#h_websites { background-image: url(../images/text/homepage_titles.png); background-position: 0 0; }
	#h_applications { background-image: url(../images/text/homepage_titles.png); background-position: 0 -73px; }
	#h_design { background-image: url(../images/text/homepage_titles.png); background-position: 0 -211px; }
	#h_casestudy { background-image: url(../images/text/homepage_titles.png); background-position: 0 -141px; }
	#h_readon { background-image: url(../images/text/h_readon.png); background-position: 0 0; }
	#h_newthings { background-image: url(../images/text/h_misc.png); background-position: 0 0; }
	#h_people { background-image: url(../images/text/h_profile_tabs.png); background-position: 0 4px; width: 158px; }
	#h_values { background-image: url(../images/text/h_profile_tabs.png); background-position: 20px -59px; width: 98px; }
	#h_feedback { background-image: url(../images/text/h_profile_tabs.png); background-position: 20px -122px; width: 108px; }
	#h_code { background-image: url(../images/text/h_resource_types.png); background-position: 51px 4px; width: 158px; }
	#h_links { background-image: url(../images/text/h_resource_types.png); background-position: 52px -68px; width: 158px; }
	
	ul.bulleted li {
		background: url(../images/bullet.png) no-repeat left 0.4em;
		padding: 0 0 0 18px;
		margin-bottom: 1.4em;
		color: #666;
		font-size: 1.3em;
	}
	.tabs_content ul.bulleted, #articleBody ul.bulleted { margin-left: 25px; }
	.pageIntro, #softwareContentBox p.pageIntro {
		font-size: 1.4em;
		line-height: 1.4em;
		color: #636363;
		margin: 20px 0 1.8em 14px;
		width: 60%;
	}
	#readonBox ul, #resourcesExtraBox ul { margin-top: 20px; }
	#readonBox li, #resourcesExtraBox li { height: 57px; margin-bottom: 14px; padding-left: 63px; }
	li#listicon1 { background: url(../images/listicon1.png) no-repeat left center; }
	li#listicon2 { background: url(../images/listicon2.png) no-repeat left center; }
	li#listicon3 { background: url(../images/listicon3.png) no-repeat left center; }
	
	#readonBox li a, #readonBox li a:link, #readonBox li a:visited, #readonBox li a:hover, #readonBox li a:active,
	#resourcesExtraBox li a, #resourcesExtraBox li a:link, #resourcesExtraBox li a:visited, #resourcesExtraBox li a:hover, #resourcesExtraBox li a:active	{
		display: block;
		color: #BCE4EE;
		font-size: 1.4em;
		padding-top: 18px;
	}
	blockquote {
		padding: 0;
		margin: 0;
		line-height: 1.7em;
		color: #BC8B97;
	}
	.tabs_content blockquote p {
		color: #BC8B97;
		font-size: 1.5em;
		padding: 0;
		margin: 0;
	}
	p.quote_attribution { font-size:10px;
font-weight:bold;
margin-bottom:3em;
text-transform:uppercase; }
	span.phonenumber { font-size: 1.7em; }
	
	
	.imgRight, .tabs_content img.imgRight { 
		float: right;
		margin: 1em 0 1em 2em;
	}

