@charset "utf-8";
@media all {

/* BODY AND FONTS: =body
----------------------------------------------- */
	body { background: #fff; color: #242d37; margin:0; padding: 0; text-align: center;  } 
	body, input, textarea, select { font: 12px/18px Arial, Helvetica, sans-serif; }
	
/* LINKS AND IMAGES: =links
----------------------------------------------- */
	a img { border: none; }
	a { color: #1e8f55; }
	a:hover { color: #174f32; }
	a.gotobutton { font-size: 14px; letter-spacing: -1px; text-decoration: none; display: block; float: left; padding: 0px 0px 0px 12px; font-weight: bold; background: url("/images/gotobutton-left.gif") top left no-repeat; }
	a.gotobutton span { display: block; padding: 4px 15px 4px 0px; background: url("/images/gotobutton-right.gif") top right no-repeat; }
	
/* TYPOGRAPHY: =typography
----------------------------------------------- */	
	h1, h2, h3, h4, h5, h6 { margin: 0 0 4px 0; padding: 0;  }
	h1 { margin: 0 0 18px 0; }
	h2 { color: #000; lettr-spacing: -1px; font-size: 14px; }
	h2.title { font-size: 18px; margin-bottom: 18px; line-height: 23px; }
	h3 { font-size: 12px; margin: 0;}
	p, blockquote, table { margin: 0 0 18px 0; }
	p.caption { color: #5c5c5c; font: 100% Georgia, "Times New Roman", Times, serif; font-style: italic; }
	p.bellhelp { text-indent: -999em; background: url("/images/bellhelp.gif") top left no-repeat; width: 131px; margin-bottom: 12px; height: 23px; }
	.dropcapintro { line-height: 18px; background: #155e48 url("/images/bg-dropcapintro.gif") top left no-repeat; color: #fff; padding: 18px 18px 6px 18px; }
	.dropcapintro a { color: #fff; }
	.dropcap { display: block; float: left; margin: 0 5px 0 0; text-indent: -999em; background-repeat: no-repeat; background-position: top left; }
	.dropcap.b { background-image: url("/images/dropcap-b.gif"); width: 31px; height: 35px; }
	.dropcap.t { background-image: url("/images/dropcap-t.gif"); width: 32px; height: 35px; }
	.dropcap.w { background-image: url("/images/dropcap-w.gif"); width: 50px; height: 35px; }
	
/* LAYOUT: =layout
----------------------------------------------- */
	#wrapper { background: #074c8c url("/images/background.jpg") 50% 0 no-repeat; padding: 48px 0 0 0; }
	#content { clear: both; border-bottom: 2px solid #cecece; margin: 0 0 15px 0; padding: 0 0 25px 0; }
	.container { width: 930px; text-align: left; margin: 0 auto; }
	.left { float: left; }
	.right { float: right; }
	.threecol { width: 219px; }
	.fourcol { width: 298px; }
	.fivecol { width: 378px; }
	.sevencol { width: 535px; }
	.eightcol { width: 614px; }
	.ninecol { width: 693px; }
	.page .splitleft { float: left; width: 320px; }
	.page .splitright { float: right; width: 320px; }
	
/* HEADER: =header
----------------------------------------------- */
	#header { background: transparent; float: left; width: 100%; padding: 0 0 16px 0; }
	#header img { float: left; }
	#logobar { height: 60px; }
	p#addnav { letter-spacing: -1px; float: right; font-weight: bold; font-size: 14px; width: 700px; text-align: right; margin: 0; padding: 26px 0 0 0; }
	p#addnav a { color: #60ae86; text-decoration: none; }
	p#addnav a:hover { color: #174f32; }
	p#addnav span { color: #d6d6d6; padding: 0 9px; }

/* NAVIGATION: =nav
----------------------------------------------- */
	#globalnav { clear: both; list-style: none; float: left; display: inline; background: url("/images/globalnav.gif") top left no-repeat; margin: 0; padding: 0; width: 100%; height: 57px; }
	#globalnav li { float: left; text-indent: -999em; margin: 0; padding: 0; }
	#globalnav li a { outline: none; background: url("/images/globalnav.gif") top left no-repeat; text-decoration: none; border: none; display: block; height: 57px; text-decoration: none; overflow: hidden; }
	#globalnav li a.selected:hover { cursor: default; }
	
	#globalnav li.home a { background-position: 0px 0px; width: 85px; }
	#globalnav li.home a:hover,
	#globalnav li.home a.selected { background-position: 0px -57px; }
	
	#globalnav li.technology a { background-position: -85px 0px; width: 215px; }
	#globalnav li.technology a:hover,
	#globalnav li.technology a.selected { background-position: -85px -57px; }
	
	#globalnav li.education a { background-position: -300px 0px; width: 210px; }
	#globalnav li.education a:hover,
	#globalnav li.education a.selected { background-position: -300px -57px; }
	
	#globalnav li.casestudies a { background-position: -510px 0px; width: 165px; }
	#globalnav li.casestudies a:hover,
	#globalnav li.casestudies a.selected { background-position: -510px -57px; }
	
	#globalnav li.partners a { background-position: -675px 0px; width: 135px; }
	#globalnav li.partners a:hover,
	#globalnav li.partners a.selected { background-position: -675px -57px; }
	
	#globalnav li.about a { background-position: -810px 0px; width: 120px; }
	#globalnav li.about a:hover,
	#globalnav li.about a.selected { background-position: -810px -57px; }
	
	#subnav { background: #fff; margin: 0; padding: 12px 18px 0 18px; }

	#subnav ul { list-style: none; margin: 0; padding: 0; }
	#subnav ul li { margin: 0; padding: 2px 0; }
	#subnav ul li a { display: block; width: 166px; font-weight: bold; background-image: url("/images/subnav.gif"); background-position: 0px 4px; text-decoration: none; padding-left: 17px; background-repeat: no-repeat; line-height: 18px; }
	#subnav ul li a:hover,
	#subnav ul li.selected a { color: #000; background-position: 0 -146px; }
	#subnav ul li.selected.down a { background-position: 0 -298px; }
	#subnav ul li.selected ul { margin: 0; padding: 4px 0 0 15px; }
	#subnav ul li.selected.down ul li a { display: block; width: 155px; background-position: 0 -446px; color: #1e8f55; font-weight: normal; padding-left: 14px; }
	#subnav ul li.selected.down ul li.selected a,
	#subnav ul li.selected.down ul li a:hover,
	#subnav ul li.selected.down ul li.selected a:hover { color: #000; background-position: 0 -596px; }
	#subnav ul li.selected ul li a:hover { color: #174f32; }
	.subnav-bottom { float: left; width: 100%; background: url("/images/subnav-bottomfade.png") top left no-repeat; height: 69px; }
	
	.sidetabs { border-bottom: 3px solid #cecece; float: left; width: 240px; position: absolute; list-style: none; margin: 0; padding: 0; }
	.sidetabs li { line-height: 14px; margin: 0; }
	.sidetabs li a { outline: none; padding: 10px 15px; width: 210px; background: #f7f7f7 url("/images/sidetabs-unselected-top.gif") top left no-repeat; text-decoration: none; font-weight: bold; display: block; }
	.sidetabs li a.last {  }
	.sidetabs li.ui-tabs-selected a { color: #000; background: #fff url("/images/sidetabs-selected-top.gif") top left no-repeat; }
	
/* LISTS: =lists
----------------------------------------------- */
	ul { margin: 0 0 18px 0; padding: 0 0 0 20px; }
	ol { margin: 0 0 18px 0; padding: 0; }
	li { margin: 0 0 3px 0; padding: 0; }
	
	dl { margin: 0 0 18px 0; padding: 0; }
	dt { margin: 0 0 3px 0; padding: 0; }
	dd { margin-left: 0; }
	
	dl.table dt { font-weight: bold; color: #808080; float: left; width: 80px; clear: both; }
	dl.table dd { margin-left: 95px; margin-bottom: 15px; }
	
	ul.biglist { list-style: none; margin: 0; padding: 0; }
	ul.biglist li { height: 128px; }
	ul.biglist li a { color: #000000; text-decoration: none; position: relative; background-image: url("/images/bg-biglist.gif"); background-position: top left; background-repeat: no-repeat; display: block; height: 128px; }
	ul.biglist li a:hover { background-position: 0 -128px; }
	ul.biglist li a span { padding-left: 132px; padding-top: 25px; display: block; }
	ul.biglist li a img { position: absolute; top: 18px; left: 17px; }
	ul.biglist li a strong { color: #074c8c; font-size: 14px; font-weight: bold; letter-spacing: -1px; }
	ul.biglist li a:hover strong { color: #000; }
	
/* FORMS: =forms
----------------------------------------------- */
	form { margin: 0 0 18px 0; padding: 0; }
	form fieldset { border: 0; padding: 15px; background: #f7f7f7; }
	form dd { margin: 0 0 12px 0; }
	form label { font-weight: bold; font-size: 14px; letter-spacing: -1px; margin: 0 0 3px 0; padding:0 ; }
	form label strong { font-weight: normal; font-family: Georgia, "Times New Roman", Times, serif; color: #808080; font-size: 12px; letter-spacing: 0; font-style: italic; }
	form input.text, 
	form textarea { width: 375px; border: 1px solid #000000;  }
	form input.submit {  }
	form p { margin: 0 0 1em 0; }
	
	form input.error,
	form textarea.error { background-color: #FFDDDE; }
              label.error { display: block; color: red; padding: 3px 0; margin: 0; vertical-align: top; font-weight: normal; letter-spacing: 0px; float: right; }
	
/*              iframe { width: 50% !important; }*/


/* TABLES: =tables
----------------------------------------------- */
	table { border-collapse: collapse; margin: 0 0 18px 0; }
	table.accessibility { background: #f7f7f7; }
	table.accessibility tr th,
	table.accessibility tr td { padding: 4px 10px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; }

/* HOMEPAGE: =home
----------------------------------------------- */
	body.home #header { padding-bottom: 2px; }
	#homeflash { margin: 0 0 12px 0; height: 431px; }
	#homenavtabs { background: url("/images/bg-homenavtabs.gif") top left no-repeat; float: left; list-style: none; margin: 0; padding: 0; width: 100%; height: 44px; }
	#homenavtabs li { float: left; text-indent: -999em; margin: 0; padding: 0; }
	#homenavtabs li a { outline: none; background: url("/images/bg-homenavtabs.gif") top left no-repeat; text-decoration: none; border: none; display: block; height: 44px; text-decoration: none; overflow: hidden; }
	#homenavtabs li.business { margin: 0 0 0 18px; }
	#homenavtabs li.business a { background-position: -18px 0px; width: 88px; }
	#homenavtabs li.business a:hover,
	#homenavtabs li.business.ui-tabs-selected a { background-position: -18px -44px; }
	
	#homenavtabs li.education { margin: 0 0 0 27px; }
	#homenavtabs li.education a { background-position: -133px 0px; width: 100px; }
	#homenavtabs li.education a:hover,
	#homenavtabs li.education.ui-tabs-selected a { background-position: -133px -44px; }
	
	#homenavtabs li.clients { margin: 0 0 0 27px; }
	#homenavtabs li.clients a { background-position: -260px 0px; width: 130px; }
	#homenavtabs li.clients a:hover,
	#homenavtabs li.clients.ui-tabs-selected a { background-position: -260px -44px; }

	#homenavcontent { background: url("/images/bg-homenavcontent.gif") top left repeat-y; clear:both; height: 150px; padding: 5px 18px 18px 18px; }
	#homenavcontent ul { list-style: none; margin: 0; padding: 0; }
	#homenavcontent h3 a { color: #000000; text-decoration: none; }
	#homenavcontent .fourcol { float: left; width: 208px; margin-right: 20px; }
	#homenavcontent .fivecol { float: left; width: 162px; margin-right: 20px; }
	#homenavcontent .last { margin-right: 0; }

	#homenavcontent #business .fourcol.one { width: 198px; }
	#homenavcontent #business .fourcol.two { width: 228px; }
	#homenavcontent #business .fourcol.three { width: 198px; }
	#homenavcontent #business .fourcol.four { width: 208px; }
	
	#homenavcontent #clients .fourcol { width: 165px; }
	#homenavcontent #clients .fourcol.one { width: 220px; }
	
	.homenavcontent-bottom { background: url("/images/bg-homenavcontent-bottom.gif") top left no-repeat; height: 25px; }

	#homeannouncements { clear: both; margin: 0 0 12px 0; }
	#homeannouncements div {  width: 332px; font-size: 14px; font-weight: bold; letter-spacing: -1px;  }
	#homeannouncements div p { margin: 10px 0; }
	
	.announcement { float: left; background: #d9f5e7 url("/images/bg-callout1.jpg") right 50% no-repeat; border: 3px solid #89d7c1; padding: 8px 100px 8px 18px; }	
	.announcement2 { float: right; background: #f8f7e5 url("/images/bg-callout2.jpg") right top no-repeat; border: 3px solid #b9b9b9; padding: 8px 100px 8px 18px; }	
	.announcement2 a { color: #cb7d29; }
	.announcement2 a:hover { color: #7b4c1a; }

	
/* INTERIOR PAGES: =interior
----------------------------------------------- */
	.category-header { background-position: top left; background-repeat: no-repeat; text-indent: -999em; margin: 0 0 18px 0; }
	.category-header.lg { height: 186px; }
	.category-header.sm { height: 93px; }
	.category-header.technology-lg { background-image: url("/images/header-tbs-lg.jpg"); height: 186px; }
	.category-header.technology-sm { background-image: url("/images/header-tbs-sm.jpg"); height: 93px; }
	.category-header.education-lg { background-image: url("/images/header-ets-lg.jpg"); height: 186px; }
	.category-header.education-sm { background-image: url("/images/header-ets-sm.jpg"); height: 93px; }
	.category-header.cs-sm { background-image: url("/images/header-cs-sm.jpg"); height: 93px; }
	.category-header.partners-sm { background-image: url("/images/header-partners-sm.jpg"); height: 93px; }
	.category-header.about-sm { background-image: url("/images/header-about-sm.jpg"); height: 93px; }
	
	.page { background: #fff; border: 3px solid #cecece; padding: 10px 15px 15px 15px; }
	.pagebottom { height: 27px; background: url("/images/pagebottom.png") top left no-repeat; }
	.pagebottomfull { height: 27px; background: url("/images/pagebottomfull.png") top left no-repeat; }
	.page-left { float: left; width: 405px; }
	.page-right { font-size: 11px; float: right; width: 232px; }
	.page-right img, img.border { padding: 4px; border: 1px solid #d6d6d6; }
	.page-right p { margin-bottom: 6px; line-height: 16px; }
	.page-right h3 { font-size: 12px; margin-bottom: 0; }
	.page-right dt { font-family: Georgia, "Times New Roman", Times, serif; font-style: italic; color: #808080; margin-bottom: 0; }
	.page-right ul { list-style: none; margin-bottom: 12px; padding: 0; }
	.page-right ul.files a { background: url("/images/file.png") top left no-repeat; padding: 2px 0px 2px 20px; }
	.page-right ul.links a { background: url("/images/world.png") top left no-repeat; padding: 2px 0px 2px 20px; }
	.page-right .viewall { margin-bottom: 25px; }
	
	/* case studies */
	#casestudies .item { min-height: 230px; }
	#casestudies .item .left { width: 308px; }
	#casestudies .item .right { width: 308px; }
	
	/* partners */
	.partnerrow { margin: 0 0 24px 0; }
	.partner {  font-size: 11px; color: #808080; line-height: 14px; width: 162px; float: left; text-align: center; margin-right: 21px; }
	.partner.last { margin-right: 0; }
	.partner img { border: 1px solid #cecece; margin: 0 0 8px 0; padding: 10px; }
	.partner a:hover img { border: 1px solid #808080; }
	.partner strong { color: #000; line-height: 18px; font-size: 14px; font-weight: bold; letter-spacing: -1px; }
	
	/* about */
	ul.tradeshows .date { color: #808080; }
	ul.tradeshows li.all { text-align: right; }
	.page-right input.text { font-size: 11px; color: #808080; width: 155px; }
	.page-right input.text:focus { color: #000; }
	.page-right input.submit { font-size: 11px; }
	dl.tradeshows .date { font-weight: bold; }
	dl.tradeshows dd { margin: 0 0 18px 0; }
	.leader { margin: 0 0 18px 0; }
	.leader img { float: left; }
	/*.leader div { float: right; width: 530px; }*/
	.locations h3 { color: #808080; }
	ul.news { list-style: none; padding-left: 0; }
	ul.news .date { font-weight: bold; }
	ul.news li, ul.careers li { margin: 0 0 12px 0; }
	
/* FOOTER: =footer
----------------------------------------------- */
	#footer { float: left; width: 100%; clear: both; padding: 0 0 25px 0; }
	#footer p { float: right; width: 260px; text-align: right; font-weight: bold; }
	#footer ul { list-style: none; float: left; width: 600px; margin: 0; padding: 0; }
	#footer ul li { float: left; margin: 0 20px 0 0; }
	#footer ul li.credits { font-weight: normal; color: #8b8b8b; }
	#footer ul li.credits a { font-weight: normal;color: #8b8b8b;  }
	#footer a { color: #175793; font-weight: bold; }
	#footer a:hover { color: #000; }
	#footer a.invis,
	#footer a.invis:hover { text-decoration: none; cursor: default; }
	
/* SIFR: =sifr
----------------------------------------------- */
	.sIFR-flash { visibility: visible !important; margin: 0; padding: 0; }
	.sIFR-replaced { visibility: visible !important; }
	.sIFR-alternate { position: absolute; left: 0; top: 0; width: 0; height: 0; display: block; overflow: hidden; }
	.sIFR-active h1 { visibility: hidden; line-height: 1em; font-size: 25px; }
		
	/* 
	  Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it.
	  Conveniently, the object tab is always in a div, so we hide all divs directly inside the replaced element.
	*/
	
	.sIFR-replaced > div { display: none !important; }
	
/* MISC: =misc
----------------------------------------------- */	
	.ui-tabs-hide { display: none; }
	.clearboth { clear: both; }
	.nowrap { white-space: nowrap; }
	.skip { margin-bottom: 0; position: absolute; left: -999em; width: 999em; }
	.nowrap { white-space: nowrap; }
	.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%; }
}