html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}
:focus {
	outline: 0;
}
body {
	line-height: 1;
	color: black;
	background: white;
}
ol, ul {
	list-style: none;
}

a img {border:none;}

table {
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
/*
custom
*/
body{
	background:#E7E6E6 url(../images/background.png) repeat-y top center;
	font-family:"Trebuchet MS", "Helvetica", sans-serif;
	font-size: smaller;
	line-height:140%;
	color:#333;
}
strong{
	color:#000;
	font-weight:bold;
}
address{
    font-style: normal;
}
a:link,
a:visited,
a:active{
	text-decoration:none;
}
a:hover{
	text-decoration:underline;
}
div.container{
	margin:0 auto;
	padding:0;
	padding-left:2px;
	width:1000px;
	background-color: #fff;
}
.ext-ie div.container{
	padding-left:1px;
}
.ext-gecko div.container{
	/*padding-left:0px;*/
	/*KT*/padding-left:2px;
}
.ext-mac div.container{
	padding-left:2px;
}
/*
header
*/
div.header{
	height:280px;
	width:968px;
	padding-top:23px;
	padding-left:30px;
	border-bottom:1px solid #b5b3b3;
	background:transparent url(../images/header-home.jpg) no-repeat 0 0;
}
div.header h1,
div.header h1 a:link,
div.header h1 a:visited,
div.header h1 a:active,
div.header h1 a:hover{
	float:left;
	width:193px;
	height:66px;
}
img#print-logo  {display: none;}
img#screen-logo {}
div.header ul{
	float:right;
	/*KT*/margin-right: 17px;
}
div.header ul li{
	float:left;
	text-indent:-1000em;
}
div.header ul li a:link,
div.header ul li a:visited,
div.header ul li a:active,
div.header ul li a:hover{
	background:transparent url(../images/header-menu.png) no-repeat 0 0;
	display:block;
	height:23px;
	margin-right:9px;
}
div.header ul li a.about-us{
	width:74px;
}
div.header ul li a.portfolio{
	width:74px;
	background-position:-85px 0;
}
div.header ul li a.what-we-do{
	width:94px;
	background-position:-170px 0;
}
div.header ul li a.contact-us{
	width:88px;
	background-position:-272px 0;
}
div.header ul li a.news{
	width:53px;
	background-position:-369px 0;
}
div.header ul li a.about-us:hover,
div.header ul li.selected a.about-us{
	background-position:0 -23px;
}
div.header ul li a.portfolio:hover,
div.header ul li.selected a.portfolio{
	background-position:-85px -23px;
}
div.header ul li a.what-we-do:hover,
div.header ul li.selected a.what-we-do{
	background-position:-170px -23px;
}
div.header ul li a.contact-us:hover,
div.header ul li.selected a.contact-us{
	background-position:-272px -23px;
}
div.header ul li a.news:hover,
div.header ul li.selected a.news{
	background-position:-369px -23px;
}
div.header img.blockquote{
	float:right;

	
	/*margin-top:70px;*/
	/*margin-right:40px;*/
	margin-top:102px;
	margin-right:49px;
}

/*
main content
*/
div.main-content{
	width:460px;
	padding:37px 40px 40px 40px;
	float:left;
}
div.main-content img.blockquote{
	margin:29px 0 30px -12px;
}
div.main-content img.sampling,
div.main-content h1{
	font-weight:normal;
	font-size:12pt;
}
div.main-content h2{
	margin-bottom:10px;
}

div.sampling-row-1  {height:129px;}
div.sampling-row-2  {height:178px; margin-bottom: 10px;}

/*
side content
*/
div.side-content{
	width:460px;
	margin-top:40px;
	padding-bottom:20px;
	float:right;
}
div.side-content h3{
	margin-bottom:12px;
}
div.side-content div{
	padding:20px 20px 15px 20px;
	border-top:1px solid #E5E4E4;
	border-left:1px solid #E5E4E4;
	width:417px;
}
div.side-content ul.about-us{
	font-size:15px;
	color: #000;
}
div.side-content ul.about-us li{
	margin-bottom:15px;
}
div.side-content ul.about-us li strong{
	color:#993333;
	font-weight:normal;
}
div.side-content ul.news li{
	margin-bottom:10px;
}
div.side-content ul.news li a span{
	color:#999;
}
div.side-content ul.news li a:link,
div.side-content ul.news li a:visited,
div.side-content ul.news li a:active{
	color:#000;
	font-weight:bold;
	text-decoration:none;
	border-bottom:1px dotted #c5c4c3;
	line-height: 1.8em;
}
div.side-content ul.news li a:hover{
	color:#af1313;
	font-weight:bold;
	text-decoration:none;
	border-bottom:1px dotted #af1313;
	line-height: 1.8em;
}
/*
footer
*/
div.footer{
	clear:both;	
	float:none;
	background:black url(../images/background-footer.png) repeat-x 0 0;
	height:129px;
	width:998px;
	color:#d8d6d6;
	font-size:.85em;
	padding-top:19px;
	margin-top:20px;
	text-shadow: 0 0 0 #fff;
}
div.footer div,
div.footer a:link,div.footer a:visited,div.footer a:active,div.footer a:hover{
	float:left;
	display:block;
	height:53px;
	border-right:1px dotted #848181;
	padding:20px 23px 0;
	margin-bottom:17px;
}
div.footer div a:link,div.footer div a:visited,div.footer div a:active,div.footer div a:hover{
	float:none;
	display:inline;
	height:auto;
	padding:0;
	border-width:0px;
	color:#fff;
	font-weight: bold;
}
div.footer div{
	padding-top:10px;
	height:63px;
}
div.footer div.right{
	float:right;
	border-right-width:0px;
	text-align:right;
}
div.footer div.bottom{
	clear:both;
	border-top:1px solid #383636;
	width:435px;
	padding-top:8px;
	padding-left:0px;
	color:#898686;
	height:15px;
}

div.footer div.bottom a {color: #d8d6d6;}




/*
we love
*/

div.we-love {
    padding:34px 0 0 11px !important;
    border:none !important;
    background: transparent url(../images/we-love/frame.png) no-repeat 0 0;
    height: 208px;
    width: 400px !important;
    color: #8a8a8a;
    font-size: 11px;
}

div.we-love img {margin-bottom: 7px;}
div.we-love div {
    padding: 0 !important;
    border: none !important;
    width: 271px;
    text-align: center;
}
div.we-love a:link,
div.we-love a:visited,
div.we-love a:active{
	color:#8a8a8a;
	border-bottom: 1px dotted #ccc;
}
div.we-love a:hover{
	color:#333;
	border-bottom: 1px dotted #8a8a8a;
	text-decoration: none;
}


/*alternative homepage*/
div.industries{
    margin-top: 15px;
    width: 451px;
}

div.industries ul{
    list-style-type: disc; 
    padding: 10px 0 0 20px;
    margin: 0;
    width: 182px;
    float: left;
}

div.industries ul li.portfolio-link {margin-top: 8px;}




/*
internal pages
*/
div.internal div.header{
	height:148px;
	border-bottom-width:0px;
}

div.internal div.header h1{
	margin-top:31px;
}
h1.title{
	float:left;
	clear:both;
	width:998px;
	border-top:1px solid #B5B3B3;
	margin-top:3px;
}
h1.title span{
	text-indent:-1000em;
	background-color:transparent;
	background-image:url(../images/titles.png);
	background-repeat:no-repeat;
	display:block;
	margin:40px 0 0 63px;
}
h1.about-us span{
	background-position:0px 0px;
	height:24px;
}
h1.portfolio span{
	background-position:0px -34px;
	height:29px;
	margin-top:41px;
	margin-left:64px;
}
h1.case-study span  {margin-left: 0 !important; margin-top: 0 !important; cursor: pointer;}
h1.case-study a     {margin-left: 64px; margin-top: 41px; display: block; height: 29px; width: 120px;}

h1.what-we-do span{
	background-position:0px -67px;
	height:23px;
	margin-top:41px;
}
h1.contact-us span{
	background-position:0px -102px;
	height:21px;
	margin-top:43px !important;
}
h1.news span{
	background-position:0px -139px;
	height:17px;
	margin-top:47px;
}
div.internal div.main-content{
	width:559px;
	padding:0 60px 0 0;
	margin-top:40px;
	margin-left:65px;
	border-right:1px solid #E5E4E4;
	margin-bottom: 20px;
}
div.internal div.main-content h2{
	border-top:1px solid #E5E4E4;
	padding-top:30px;
	position:relative;
	width:620px;
	margin-bottom: 15px;
}
div.internal div.main-content h3{
    font-size: 130%;
    font-weight: bold;
    margin-bottom: 10px;
}

div.internal div.side-content{
	width:310px;
}

div.internal div.side-content div{
	border-left-width:0px;
	width:240px;
}
div.internal div.side-content div a:link,
div.internal div.side-content div a:visited,
div.internal div.side-content div a:active,
div.internal div.side-content div a:hover{
	color:#333;
	font-size:.85em;
}
div.internal div.main-content p{
	margin-bottom:20px;
}
div.internal div.main-content p.last{
	margin-bottom:30px;
}

div.internal div.we-love{
    padding:64px 0 0 11px !important;
    border-top:1px solid #E5E4E4 !important;
    background-position: 0 30px;
    width: 608px !important;
    margin-bottom: 20px;
} 
/*
About Us and What we do
*/
div.key-people{
    background: transparent url(../images/key-people-lines.gif) no-repeat 0 0;
    height:281px;
}
div.expertise{
    background: transparent url(../images/expertise-lines.gif) no-repeat 0 0;
    height:267px;
}

div.key-people ul,
div.expertise ul{
    font-size: 11px;
    margin-top: 0px !important;
}

div.key-people ul li,
div.expertise ul li{
    width: 96px;
    line-height: 15px;
}

div.key-people ul li.person-dan     {margin: 10px 0 0 110px;}
div.key-people ul li.person-carl    {margin: -37px 0 0 300px;}
div.key-people ul li.person-greig   {margin: -17px 0 0 4px;}
div.key-people ul li.person-greg    {margin: -45px 0 0 200px;}
div.key-people ul li.person-kathryn {margin: -59px 0 0 420px;}
div.key-people ul li.person-paddy   {margin: 0px 0 0 470px; text-align: right;}

div.expertise ul li.expertise-process       {margin: 38px 0 0 25px;}
div.expertise ul li.expertise-database      {margin: -58px 0 0 140px;}
div.expertise ul li.expertise-interface     {margin: -9px 0 0 260px;}
div.expertise ul li.expertise-infrastructure{margin: -55px 0 0 370px;}
div.expertise ul li.expertise-strategy      {margin: -11px 0 0 475px; width: 104px;}


div.key-people ul li a,
div.expertise ul li a{
    color: #666;
}

div.key-people-bios,
div.expertise-desc{
    margin: 20px 0 40px 0;
}

div.key-people-bios div,
div.expertise-desc div{
    padding-top: 15px;
}

div.key-people-bios div h3,
div.expertise-desc div h3{
    padding-bottom: 6px;
    border-bottom: 1px solid #eee;
}

div.key-people-bios div h3 span,
div.expertise-desc div h3 span{
    color: #999;
}

div.tech-logos{
    border: none !important;
    padding: 0 !important;
    margin: 133px 0 0 20px;
    width: 223px !important;
    text-align: center;
    font-weight: bold;
    color: #999;
}
div.tech-logos p    {margin-top: 25px; margin-bottom: 25px;}


/*
portfolio and news pages
*/

div.portfolio h2.title,
div.news h2.title{
	font-size:1.4em;
	font-weight:bold;
	border-top: none !important;
	padding-top: 0 !important;
	line-height: 1.1em;
}
img.news-image  {float: left;}
div.portfolio h2.title span{
	color:#999;
}
div.portfolio div.main-content{
	width:734px;
	margin-top:34px;
	padding-right:0px;
}
div.news div.main-content{
	width:559px;
	padding:0 60px 0 0;
	margin-top:40px;
}
.ext-gecko div.portfolio div.main-content{
	margin-bottom:20px;
}

div.case-study-summary{
    width: 734px !important;
    float: none !important;
    border-bottom: 1px solid #e5e4e4;
    min-height: 142px;
    margin-bottom: 18px;
}
div.last-summary    {border: none !important; margin-bottom: 25px;}
div.case-study-summary-image{
    width: 239px !important;
}
div.case-study-summary-copy{
    width: 459px !important;
}
div.case-study-summary-copy p       {margin-bottom: 7px !important;}
div.case-study-summary-copy h3 span {color: #999;}
div.case-study-summary-copy h3 a    {color: #333;}
div.case-study-summary-copy h3 a:hover  {text-decoration: none;}
div.portfolio div.main-content img.example{
	margin-bottom:10px;
}
div.portfolio div.main-content div {
	float:left;
	width:450px;
}
div.float-container {float: none !important; width: auto !important;}
div.clear-both      {clear: both; font-size: 1px; line-height: 1px; float: none !important; width: auto !important;}

span.case-study-website {display: block; margin-bottom: 6px; color: #ccc;}

div.portfolio div.main-content a.go-to-website:link,
div.portfolio div.main-content a.go-to-website:visited,
div.portfolio div.main-content a.go-to-website:active,
div.portfolio div.main-content a.go-to-website:hover{
	color: #993333;
}
div.portfolio div.main-content a.no-website{
	color: #999;
	text-decoration: none !important;
} 

div.portfolio div.main-content div.back-next{
    float: none;
    width: 700px;
    height: 2.8em;
    font-size: 11px;
}

div.no-quote-above  {margin-top: 30px;}

div.portfolio div.back-next div{
    float: left;
    width: 350px;
}
div.portfolio div.back-next div.next{
    text-align: right;
}
div.main-content div.back-next a:link,
div.main-content div.back-next a:visited,
div.main-content div.back-next a:active{
	color:#333;
}
div.main-content div.back-next a:hover,
div.main-content div.back-next a:hover strong{
	color:#af1313;
}

div.portfolio div.main-content ul {
	float:left;
	margin-left:10px;
	margin-top: 24px;
	padding-left:15px;
	width:250px;
	border-left:1px solid #e5e4e4;
	list-style-type:disc;
	list-style-position:inside;
}
div.portfolio div.main-content ul li {
	font-size:1em;
	color:#333;
	margin-bottom:10px;
}
div.portfolio div.side-content{
	width:200px;
	margin-top:34px;
}
div.news div.side-content{
	width:315px;
	margin-top:40px;
}
div.portfolio div.side-content div,
div.news div.side-content div{
	width:180px;
	border-width:0px;
	padding:0;
}
div.news div.side-content div   {width: 250px;}
div.portfolio div.side-content div ul li,
div.news div.side-content div ul li{
	font-size:1em;
	line-height:110%;
	margin-bottom:5px;
	padding:4px 20px 6px 16px;
}
div.portfolio div.side-content div ul li.selected,
div.news div.side-content div ul li.selected{
	background-color:#f1f4f3;
	border-left:8px solid #e5e4e4;
	padding:4px 20px 6px 8px;
}

div.portfolio div.side-content li a:link,
div.portfolio div.side-content li a:visited,
div.portfolio div.side-content li a:active,
div.portfolio div.side-content li a:hover,
div.portfolio div.side-content li a strong,
div.news div.side-content li a:link,
div.news div.side-content li a:visited,
div.news div.side-content li a:active,
div.news div.side-content li a:hover,
div.news div.side-content li a strong{
	color:#999;
}
div.portfolio div.side-content li a strong,
div.news div.side-content li a strong{
	font-weight:bold;
}
div.portfolio div.side-content li.selected a,
div.news div.side-content li.selected a{
    color: #333;
}
div.portfolio div.side-content li.selected a strong,
div.news div.side-content li.selected a strong{
    color: #000;
}
/*
contact us
*/
img.contact-us-photos{
	border-top:1px solid #E5E4E4;
	padding:30px 31px 120px 0px;
	margin-bottom: 15px;
}

div.contact-details {height: 1.5em; margin-bottom: 10px;}
div.contact-details-left,
div.contact-details-right{
float: left;
margin-right: 10px;
}
div.contact-details span{font-weight: bold;}

div.physical-address    {height: 4.3em !important;}
div.postal-address      {height: 4.3em !important; margin-left: 40px;}
div.phone               {}
div.email-address       {margin-bottom: 30px !important;}

div.physical-address div.contact-details-left,
div.phone div.contact-details-left,
div.email-address div.contact-details-left
{width: 4.1em;}

div.physical-address address a  {color: #999;}
/*
news
*/
div.news div.main-content div.back-next{
    float: none;
    width: 560px;
    height: 2.8em;
    font-size: 11px;
}
div.news div.back-next div{
    float: left;
    width: 280px;
}
div.news div.back-next div.next{
    text-align: right;
}
p.news-entry-date   {margin-bottom: 10px !important; font-weight:bold;}

/*
links
*/
a.read-more:link,
a.read-more:visited,
a.read-more:active,
a.read-more:hover{
	color:#999;
	font-size:.9em;
	line-height: 130% !important;
}
a.see-more:link,
a.see-more:visited,
a.see-more:active{
	color:#999;
}
a.see-more:hover{
	color:#af1313;
}
a.in-content:link,
a.in-content:visited,
a.in-content:active{
	color: #993333;
}
a.in-content:hover{
	color: #af1313;
}

a.what-we-do-side,a.about-us-side{
    display: block;
    width: 225px;
    margin-left: 0px;
    text-align: center;
}
/*
exclusions
*/
.no-padding-top, .no-top-padding{
	padding-top:0px !important;
}
.no-border-top, .no-top-border{
	border-top:0px !important;
}
.no-border-right, .no-right-border{
	border-right:0px !important;
}
.submenu-padding-top, .submenu-top-padding{
	padding-top:4px !important;
}



/* news content styles to override global */

.news .main-content p           {}
.news .main-content a           {color: #993333;}
.news .main-content a:hover     {color: #af1313;}
.news .main-content blockquote  {margin: 0 20px 20px 20px; font-style: italic;}
.news .main-content ul          {margin: 0 20px 20px 0; padding-left: 40px; list-style-type: disc; }
.news .main-content ol          {margin: 0 20px 20px 0; padding-left: 40px; list-style-type: decimal;}
.news .main-content li          {margin-bottom: 0.3em;}