
/********************************************  CSS RESET  *********************************************/

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,sub,sup,tt,var,b,u,i,center,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-size: 100%;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
blockquote, q { quotes: none; }
ins { text-decoration: none; }
del { text-decoration: line-through; }
th { text-align: left; }
address { font-style: normal; }
.clearFloat { clear: both; }
.hidden { display: none; }
.center { text-align: center; }
body { font-family: arial, sans-serif; }
input,select,textarea { font-family: arial, sans-serif; } 
p a { white-space: nowrap; }

input[type="hidden"] {
	display: none !important;
	visibility: hidden !important;
	height: 0px !important;
}
abbr, acronym { 
	cursor: help;
	border-bottom: 1px #333 dotted;
}


/**********************************************  FONTS  ***********************************************/

h1 {
	color: #0a2573;
	font-size: 1.5em;
	letter-spacing: -2px;
	margin: 0 0 1em 0;
}
h1.home {
	font-size: 1.8em;
}
h2 {
	font-size: 1.25em;
	letter-spacing: -1px;
	color: #0a2573;
	margin: 0 0 .6em 0;
	clear: both;
}
h3 {
	font-size: 1.25em;
	letter-spacing: -1px;
	color: #0a2573;
	margin: 0 0 .6em 0;
}
h3.sm {
	font-size: 1em;
	font-weight: bold;
}
p {
	font-size: .75em;
	line-height: 160%;
	margin: 0 0 1.8em 0;
	color: #333;
}
p a:hover {
	text-decoration: none;
}
p a.external,
a.external.gmapLink,
.links a.external {
	background: url('/images/icons/ico-external-link.gif') no-repeat right center;
	padding: 0 13px 0 0;
	margin: 0 1px 0 0;
}
a {
	color: #0a2573;
}


/**********************************************  HEADER  **********************************************/

#headerBgRepeat {
	background: url('/images/bg/header-bg-repeat.gif') repeat-x;
	min-width: 980px;
}
#headerBg {
	background: url('/images/bg/header-bg.jpg') no-repeat center top;
}
#header {
	min-height: 870px;
	height: auto !important;
	height: 870px;
	width: 980px;
	margin: 0 auto;
	position: relative;
	padding: 80px 0 0 0;
	z-index: 1;
}
#header .homeLink {
	position: absolute;
	top: 9px;
	left: 17px;
}
#banner {
	margin: 0 auto;
	width: 525px;
	height: 185px;
	padding: 60px 385px 0 70px;
	overflow: hidden;
}
#banner.superhero {
	background: url('/images/banners/banner-superhero.png');
}
#banner h1 {
	font-size: 1.5em;
	color: #fff;
	letter-spacing: normal;
	margin: 0 0 15px 0;
}
#banner h2 {
	font-size: .8125em;
	color: #fff;
	letter-spacing: normal;
}
#banner .btn {
	margin: 0 0 0 -3px;
}


/**********************************************  FOOTER  **********************************************/

#footerBgRepeat {
	background: url('/images/bg/footer-bg-repeat.gif') repeat-x;
	margin-top: -100px;
	min-width: 980px;
	position: relative;
}
#footerBg {
	background: url('/images/bg/footer-bg.jpg') no-repeat center bottom;
}
#footer {
	height: 335px;
	width: 980px;
	margin: 0 auto;
	position: relative;
}
#footer a {
	color: #ffffff;
	text-decoration: none;
}
#footer a:hover {
	text-decoration: underline;
}
#footer .homeLink {
	position: absolute;
	bottom: 40px;
	left: 22px;
}
#footer .mobileLink {
	position: absolute;
	bottom: 111px;
	right: 59px;
}
#conformanceList {
	text-indent: -9999em;
	position: absolute;
	width: 370px;
	height: 26px;
	bottom: 38px;
	right: 140px;
	overflow: hidden;
}
#conformanceList li {
	float: left;
	margin: 0 5px 0 0;
	padding: 0 0 9px 0;
	background: url('/images/icons/ico-conformance.png');
}
#conformanceList a {
	display: block;
	width: 69px;
	height: 15px;
	background: url('/images/icons/ico-conformance.png');
}
#conformanceList #iconXHTML a, #conformanceList #iconXHTML { background-position: 0 top; }
#conformanceList #iconCSS a ,#conformanceList #iconCSS { background-position: -69px top; }
#conformanceList #iconWCAG a, #conformanceList #iconWCAG { background-position: -138px top; }
#conformanceList #iconXML a, #conformanceList #iconXML { background-position: -207px top; }
#conformanceList #iconWSG a, #conformanceList #iconWSG { background-position: -276px top; }

#conformanceList #iconXHTML a:hover, #conformanceList #iconXHTML.conformLiHover  { background-position: 0 26px; }
#conformanceList #iconCSS a:hover, #conformanceList #iconCSS.conformLiHover { background-position: -69px 26px; }
#conformanceList #iconWCAG a:hover, #conformanceList #iconWCAG.conformLiHover { background-position: -138px 26px; }
#conformanceList #iconXML a:hover, #conformanceList #iconXML.conformLiHover { background-position: -207px 26px; }
#conformanceList #iconWSG a:hover, #conformanceList #iconWSG.conformLiHover { background-position: -276px 26px; }

#footer p {
	position: absolute;
	right: 58px;
	bottom: 95px;
	font-size: .6875em;
	color: #fff;
	margin: 0;
}
#footerMenu {
	position: absolute;
	right: 58px;
	bottom: 77px;
	font-size: .6875em;
}
#footerMenu li {
	float: left;
	border-left: 1px #6388b4 solid;
	margin: 0 0 0 6px;
	padding: 0 0 0 6px;
}
#footerMenu .f {
	border: 0;
}
#footer #addThis {
	position: absolute;
	bottom: 45px;
	right: 57px;
}


/***********************************************  MENU  ***********************************************/

#menu {
	position: absolute;
	z-index: 40;
	right: 5px;
	top: 38px;
	cursor: default;
}
#menu li {
	float: left;
	margin: 0 0 0 5px;
}
#menu li.back {
	background: url('/images/menu/lava.gif') no-repeat right -30px;
	width: 9px; 
	height: 30px;
	z-index: 8;
	position: absolute;
	margin: 0;
}
#menu li.back .left {
	background: url('/images/menu/lava.gif') no-repeat top left;
	height: 30px;
	margin: 0 12px 0 0;
}
#menu li a {
	font: bold .9em "trebuchet ms",sans-serif;
	position: relative; 
	overflow: hidden;
	text-decoration: none;
	color: #fff;
	padding: 7px 12px 8px 14px;
	z-index: 10;
	display: block;
	text-indent: -9999em;
	background: no-repeat center;
	line-height: 100%;
	height: 15px;
}
#menu #menuItemHome a { background-image: url('/images/menu/menu-home.png'); width: 34px; }
#menu #menuItemWork a { background-image: url('/images/menu/menu-our-work.png'); width: 55px; }
#menu #menuItemServices a { background-image: url('/images/menu/menu-services.png'); width: 51px; }
#menu #menuItemClients a { background-image: url('/images/menu/menu-clients.png'); width: 40px; }
#menu #menuItemAboutUs a { background-image: url('/images/menu/menu-about-us.png'); width: 55px; }
#menu #menuItemJobs a { background-image: url('/images/menu/menu-jobs.png'); width: 28px; }
#menu #menuItemContacts a { background-image: url('/images/menu/menu-contacts.png'); width: 52px; }


/***********************************************  NAV  ************************************************/

#nav {
	font-size: .875em;
	font-family: tahoma, arial, sans-serif;
	margin: 0 0 30px 0;
	overflow: hidden;
	width: 210px;
}
#nav li {
	background: url('/images/deco/nav-border-repeat.gif') repeat-x left top;
	width: 210px;
	float: left;
	margin: 1px 0 0 0;
}
#nav li.f { background: none }
#nav a {
	text-decoration: none;
	color: #19388a;
	background: url('/images/icons/ico-nav-bullet.gif') no-repeat 7px .78em;
	height: 100%;
	display: block;
	padding: 10px 0 8px 30px;
}
#nav a:hover {
	color: #1a4ee4;
	background-image: url('/images/icons/ico-nav-bullet-hover.gif');
}
#nav .navStrategy,
#nav .navPrinciples {
	background: none;
}
#nav.strategy .navStrategy,
#nav.webDesign .navWebDesign,
#nav.webDev .navWebDev,
#nav.mobileWeb .navMobileWeb,
#nav.onlineAds .navOnlineAds,
#nav.SEO .navSEO,
#nav.eCommerce .navECommerce,
#nav.onlineGames .navOnlineGames,
#nav.eMarketing .navEMarketing,
#nav.multimedia .navMultimedia,
#nav.graphicDesign .navGraphicDesign,
#nav.hosting .navHosting,
#nav.principles .navPrinciples,
#nav.website .navWebsite,
#nav.pressRelases .navPressRelases,
#nav.testimonials .navTestimonials,
#nav.community .navCommunity,
#nav.pressReleases .navPress {
	padding-left: 15px !important;
}
#nav.strategy .navStrategy a,
#nav.webDesign .navWebDesign a,
#nav.webDev .navWebDev a,
#nav.mobileWeb .navMobileWeb a,
#nav.onlineAds .navOnlineAds a,
#nav.SEO .navSEO a,
#nav.eCommerce .navECommerce a,
#nav.onlineGames .navOnlineGames a,
#nav.eMarketing .navEMarketing a,
#nav.multimedia .navMultimedia a,
#nav.graphicDesign .navGraphicDesign a,
#nav.hosting .navHosting a,
#nav.principles .navPrinciples a,
#nav.website .navWebsite a,
#nav.testimonials .navTestimonials a,
#nav.community .navCommunity a,
#nav.pressReleases .navPress a {
	color: #1a4ee4;
	background-image: url('/images/icons/ico-nav-bullet-hover.gif');
}


/******************************************  QUICK ENQUIRY  *******************************************/

.qeForm li {
	position: relative;
	height: 30px;
	float: left;
	width: 183px;
	margin: 0 0 12px 0;
}
.qeForm ol input, 
.qeForm ol label, 
.qeForm textarea {
	position: absolute;
	font-size: .75em;
}
.qeForm ol label {
	z-index: 1;
	color: #bbb;
	top: 8px;
	left: 7px;
}
.qeForm ol input,
.qeForm textarea {
	height: 21px;
	border: 1px #7584b0 solid;
	width: 175px;
	padding: 7px 0 0 6px;
	color: #333;
}
.qeForm textarea {
	height: 65px;
	position: relative;
	display: block;
}
.qeForm li.message {
	height: auto;
}
.qeForm li.captcha {
	height: 74px;
	padding-top: 65px !important;
}
.qeForm li.captcha img {
	margin: 5px 0 0 8px;
}
.qeForm .error input,
.qeForm .error textarea {
	border-color: #ff0000;
}
.qeForm p.error {
	color: #ff0000;
	font-size: .6875em;
	margin-bottom: .5em;
}
.qeForm.compact li {
	padding-top: 16px;
	margin-bottom: 5px;
}
.qeForm.compact label {
	color: #0A2573;
	top: 0;
}
.qeForm .submitBtn {
	float: right;
	margin: 0 22px 0 0;
	font-size: .8125em;
}


/*******************************************  PAGE LAYOUT  ********************************************/

#content {
	margin: 0 auto;
	width: 980px;
	background: #fff;
	padding: 25px 0 0 0;
	min-height: 500px;
	height: auto !important;
	height: 500px;
}
.main {
	width: 650px;
	float: left;
	padding: 0 40px;
}
.main.full {
	width: 910px;
	padding: 0 35px;
}
.main.twoCol {
	width: 455px;
}
#sideBar {
	width: 210px;
	float: right;
	background: url('/images/bg/sidebar-bg.png') no-repeat center top;
	min-height: 650px;
	height: auto !important;
	height: 650px;
	margin: -54px 0 0 0;
	padding: 58px 20px 0 20px;
	position: relative;
	z-index: 10;
}


/*********************************************  MULTICOL  *********************************************/

.cols {
	overflow: hidden;
	padding: 1px 0 0 0;
	margin: 0 0 20px 0;
	width: 650px;
}
.cols.intro {
	margin-bottom: 5px;
}
.hasJS .cols {
	visibility: hidden;
}
.cols li {
	float: left;
	margin: 0 0 0 12px;
}
.cols li .contentList li {
	float: none;
	margin: 0;
	width: auto;
}
.cols .f { margin: 0 !important; }

.cols p {
	padding: 0 10px 0 0;
	margin: 0 0 1.6em 0;
}
.cols.two li {
	width: 319px;
}
.cols.three li {
	width: 208px;
}
.cols.three.divider {
	padding-top: 20px;
	margin-top: 30px;
	border-top: 1px dotted #dbdbdb;
}
.cols.four {
	width: auto;
}
.cols.four li {
	width: 208px;
	margin: 0 0 10px 26px;
}
.cols .feature {
	padding: 9px;
	margin: 0 0 12px 0;
	display: block;
	font-size: 0;
	background: url('/images/tiles/folio-bg-sm.gif');
	height: 107px;
	width: 190px;
}
.cols a.feature:hover {
	background: url('/images/tiles/folio-bg-sm.gif') left bottom;
}
.cols h2 {
	margin: 0 0 1em 0;
	color: #0A2573;
	font-size: 1em;
	letter-spacing: normal;
	padding: 0 0 0 8px;
}
.cols h3 {
	font-size: .9375em;
	font-weight: bold;
	margin-bottom: 3px;
}
.cols.indent p,
.cols h3 {
	padding: 0 13px 0 8px;
}


/**********************************************  LOGOS  ***********************************************/

.brands {
	width: 650px;
	height: 40px;
	margin: 20px auto 30px auto;
	font-size: 0px;
	clear: both;
}
.brands li {
	float: left;
	background-color: #fff;
}


/*********************************************  BUTTONS  **********************************************/

.btn {
	display: inline-block;
	font-size: .8125em;
	color: #fff;
	height: 42px;
	padding: 0 0 0 29px;
	background: url('/images/buttons/btn.png') no-repeat left -82px;
	text-decoration: none !important;
}
.btn span {
	display: block;
	text-transform: uppercase;
	font-family: tahoma, arial, sans-serif;
	padding: 10px 29px 0 0;
	height: 32px;
	background: url('/images/buttons/btn.png') no-repeat right top;
	cursor: pointer;
	float: left;
}
.btn:hover {
	text-decoration: none !important;
	background-position: left -123px;
}
.btn:hover span {
	background-position: right -41px;
}


/********************************************  GOOGLE MAP  ********************************************/

.gmap {
	width: 403px;
	height: 400px;
	float: right;
	background: #F8F8F8;
	border: 1px solid #DBDBDB;
}
.gmapLink {
	font-size: .75em;
	text-decoration: none;
}
.gmapLink:hover {
	text-decoration: underline;
}


/*********************************************  SITE MAP  *********************************************/

.sitemap {
	font-size: .75em;
	color: #666;
}
.sitemap ul {
	padding: 4px 0 0 0;
	margin: -5px 0 10px -5px;
}
.sitemap li {
	line-height: 2.5em;
	border-top: 1px #ccc solid;
	padding: 0 0 0 20px;
}
.sitemap li li {
	padding: 0 0 0 30px;
	border: 0;
}
.sitemap .f {
	border: 0;
}
.sitemap a {
	text-decoration: none;
}
.sitemap a:hover {
	text-decoration: underline;
}


/**********************************************  FOLIO  ***********************************************/

.folio {
	overflow: hidden;
	margin: 0 0 20px 0;
}
.folio .img {
	background: url('/images/tiles/folio-bg-lg.gif') no-repeat left top;
	padding: 9px;
	display: block;
	width: 426px;
	height: 205px;	
	margin: 0 0 10px 0;
}
.folio a.img:hover {
	background: url('/images/tiles/folio-bg-lg.gif') no-repeat left bottom;
}
.folio li {
	float: left;
	width: 444px;
	padding: 0 0 30px 0;
}
.folio .r { float: right; }

.folio p,
.folio h2,
.folio a {
	margin-left: 15px;
	margin-right: 15px;
}
.folio p {
	line-height: 140%;
	margin-bottom: .8em;
}
.folio p.desc {
	min-height: 4.4em;
	height: auto !important;
	height: 4.4em;
}
.folio a {
	text-decoration: none;
}
.folio a:hover {
	text-decoration: underline;
}
.hasJS .folio {
	display: none;
}


/***********************************************  FORM  ************************************************/

.pageForm {
	background: #f8f8f8;
	border: 1px #dbdbdb solid;
	padding: 30px 0 20px 0;
	font-size: .75em;
}
.pageForm p {
	padding: 0 0 20px 0;
	margin: 0 28px 20px 28px;
	border-bottom: 1px #dbdbdb dotted;
	font-size: 1em;
}
.pageForm .note {
	margin: 0 0 0 28px;
}
.pageForm fieldset {
	margin: 20px 0 0 0;
	position: relative;
}
.pageForm legend {
	margin: 0;
	color: #0fb5e9;
	font-size: 1.4em;
	display: none;
}
.pageForm legend span {
	position: absolute !important;
	left: 28px;
}
.pageForm .req {
	color: #0fb5e9;
}
.pageForm ol {
	padding: 0 0 23px 0;
	position: relative;
}
.pageForm textarea {
	font-family: arial, sans-serif;
	border: 1px #dbdbdb solid;
	padding: 3px 0 3px 4px;
	font-size: 1em;
	width: 240px;
	height: 103px;
}
.pageForm label, .pageForm .label {
	width: 12em;
	float: left;
	margin: 7px 0 0 0;
	position: relative;
	cursor: default;
}
.pageForm ol input {
	border: 1px #dbdbdb solid;
	padding: 3px 0 3px 4px;
	width: 240px;
	font-family: arial, sans-serif;
}
.pageForm .short {
	width: 110px;
}
.pageForm select {
	width: 156px;
	font-family: arial, sans-serif;
}
.pageForm .last ol {
	background: none;
}
.pageForm .noLegend ol {
	padding-top: 0px;
}
.pageForm li {
	padding: 4px 10px 4px 28px;
}
.pageForm fieldset li {
	border-top: 1px #f8f8f8 solid;
	border-bottom: 1px #f8f8f8 solid;
}
.pageForm .error {
	background: url('/images/form/form-error-bg.gif');
	border-top: 1px #f1cbcb solid;
	border-bottom: 1px #f1cbcb solid;
}
.pageForm .error p {
	border: 0;
	margin: 0 0 3px 13.7em;
	padding: 0;
	font-weight: bold;
	font-size: .9em;
	color: #ee5e5e;
}
.pageForm .error input,
.pageForm .error textarea {
	border: 1px #f06b6b solid;
}
.pageForm .focus {
	background: url('/images/form/form-selected-bg.gif');
	border-top: 1px #c5e3ec solid;
	border-bottom: 1px #c5e3ec solid;
}
.pageForm .focus input {
	border: 1px #9bc8d6 solid;
}
.pageForm .submitButton {
	margin: 0 0 0 173px;
}
.pageForm .captcha {
	border: 1px #dbdbdb solid;
}
.pageForm .hasError {
	background: url('/images/form/form-error-bg.gif');
	border-top: 1px #f1cbcb solid;
	border-bottom: 1px #f1cbcb solid;
	padding: 7px 10px 10px 28px;
	margin: 20px 0 20px 0;
	position: relative;
}
.pageForm .hasError ol {
	list-style-type: decimal;
	padding: 0;
	margin: 0 0 0 45px;
	background: none;
}
.pageForm .hasError li {
	padding: 3px 0;
}
.pageForm .hasError p {
	margin: 0 0 3px 0;
	padding: 0 0 0 23px;
	border: 0;
	background: url('images/icons/ico-exclamation.gif') no-repeat 0 .1em;
}
.pageForm .hasError a {
	color: #ee5e5e;
}
.pageForm .hasError a:hover {
	text-decoration: none;
}
.pageForm .submitBtn {
	margin: 0 0 0 168px;
}
.pageForm #verificationImage {
	border: 1px #dbdbdb solid;
}


/**********************************************  COMMON  **********************************************/

form.featureContent .btn {
	position: relative;
	top: 14px;
	left: 70px;
}
.contentList {
	font-size: .75em;
	list-style-type: disc;
	margin: 0 0 2.2em 20px;
}
ol.contentList {
	list-style-type: lower-alpha;
}
.contentList li {
	color: #333;
	line-height: 160%;
	width: auto;
	float: none;
	margin: 0;
}
.cols .contentList {
	margin-bottom: 0;
}
.folioFW {
	background: url('/images/tiles/folio-bg-fw.gif');
	padding: 7px;
	margin: 0 0 20px 0;
}
blockquote {
	border: 1px solid #dad9d6;
	margin: 0px 0px 3px 0px;
	background: #f6f6f6 url('/images/icons/quote-start.gif') no-repeat left top;
	
}
blockquote div {
	background: url('/images/icons/quote-end.gif') no-repeat right bottom;
	padding: 0 30px 20px 0;
	margin: 30px 0 0 40px;
}
.quoteBy {
	text-align: right;
	font-size: .7em;
	font-style: italic;
	color: #555;
	margin: 0 0 35px 0;
}
.memberLogos {
	text-align: center;
}
.memberLogos a {
	margin: 0 15px;
}
.submitBtn  {
	width: 113px;
	display: inline-block;
	color: #fff;
	height: 42px;
	padding: 0px 29px 9px 29px;
	background: url('/images/buttons/btn-fixed-sm.png') no-repeat center top;
	text-decoration: none !important;
	text-transform: uppercase;
	font-family: tahoma, arial, sans-serif;
	cursor: pointer;
	border: 0;
	line-height: 160%;
}
.submitBtn:hover, .submitBtn.hover {
	background-position: center bottom;
}
.toolsList li {
	position: relative;
	padding: 0 0 0 0;
}
.toolsList h3 {
	font-size: 1em;
	font-weight: bold;
	color: #333;
}
.links a {
	text-decoration: none;
}
.links a:hover {
	text-decoration: underline;
}
.dlList {
	font-size: .75em;
	color: #aaa;
	margin: 0 0 20px 0;
}
.dlList li {
	margin: 0 0 6px 0;
}
.dlList a {
	margin: 0 5px 0 0;
	background: url('/images/icons/ico-file.gif') no-repeat left center;
	padding: 3px 0 3px 22px;
}
.dlList a:hover {
	text-decoration: none;
}
.dlList.pdf a { background-image: url('/images/icons/ico-pdf.gif'); }
.dlList.doc a { background-image: url('/images/icons/ico-doc.gif'); }
.dlList.xls a { background-image: url('/images/icons/ico-xls.gif'); }
.dlList.ppt a { background-image: url('/images/icons/ico-ppt.gif'); }

#bannerPreviewHolder {
	width: 325px;
	height: 275px;
	margin: 0px auto 20px auto;
	background: url('/images/tiles/banner-ad-frame.gif') no-repeat center center;
	position: relative;
}
#bannerPreviewCover {
	width: 300px;
	height: 250px;
	position: absolute;
	top: 12px;
	left: 13px;
	z-index: 10;
}
#bannerPreview {
	width: 300px;
	height: 250px;
	padding: 12px 0px 0px 13px;
}
.contactDetails {
	width: 405px;
	float: right;
	margin: 55px 40px 0 0;
}
.contactDetails dl {
	width: 403px;
	border-bottom: 1px #dbdbdb solid;
	font-size: .8125em;
	line-height: 140%;
	margin: 44px 0 0 0;
	overflow: hidden;
}
.contactDetails dd,
.contactDetails dt {
	border-top: 1px #dbdbdb solid;
	float: left;
}
.contactDetails dt {
	width: 94px;
	font-weight: bold;
	text-align: right;
	padding: 4px 6px 4px 0;
}
.contactDetails dd {
	width: 297px;
	padding: 4px 0 4px 6px;
}
.contactDetails .l {
	border: 0;
}
.twitter {
	margin: 10px 0 0 -15px;
	display: block;
	width: 203px;
	height: 70px;
	clear: both;
}
.imgRight {
	float: right;
	margin: 0 0 20px 20px;
}
iframe#_atssh, #atff { display: none;  }