/********* GENERAL BODY ELEMENTS *********/
body { margin: 0 auto; text-align: left; background: #6C7D8E url(/images/general/background.jpg) repeat-x top left;}
body, p, div, a, form, td, li { font: 12px/17px verdana, Tahoma, Arial, "Lucida Grande", Helvetica, sans-serif; color: #5D6065; }
p { margin: 0 0 18px 0; }
img { border: 0; }
a:link, a:visited { text-decoration: underline; }
a:hover { text-decoration: none;}
h1, h1 a { margin: 24px 0 14px 0; padding: 0; font-size: 16px; font-weight: bold; }
h1.pageHeading { margin: 0 0 18px 0; padding: 0; text-align: left; font-weight: normal; font-size: 20px; color: #AB0D0D; }
h2, h2 a { margin: 24px 0 4px 0; padding: 0; font-size: 16px; font-weight: bold; }
h3, h3 a { margin: 20px 0 14px 0; padding: 0;  font-size: 14px;  font-weight: bold;  color:#989D09;}
h4, h4 a { margin: 20px 0 4px 0; padding: 0;  font-size: 14px;  font-weight: bold; color:#989D09;}
h5, h5 a { margin: 0 0 9px 0; padding: 0;  font-size: 12px; font-weight: bold;  }
h6, h6 a { margin: 0 0 4px 0; padding: 0;  font-size: 12px;  font-weight: bold; }

/********* LISTS *********/
ul { margin: 8px 0 10px 0; padding: 0 0 0 12px; }
ul li { list-style: none; padding: 0 0 6px 9px; background: url(/images/general/BULLET_POINT_BLUE.gif) no-repeat top left;}
.blueBullets li { list-style: none; padding: 0 0 6px 9px; background: url(/images/general/BULLET_POINT_BLUE.gif) no-repeat top left; color: #4A7DAE;}
.whiteBullets li { list-style: none; padding: 0 0 6px 9px; background: url(/images/general/bullet_point_white.gif) no-repeat top left; color: #5a8cbc;}
.whiteBullets li a {font-weight: bold; color: #F1F0F1;}
.whiteBullets li a:link, .whiteBullets li a:visited {text-decoration: none;}
.whiteBullets li a:hover{text-decoration: underline;}
.extraSpacing li { padding-bottom: 8px; }
.extraWideSpacing li { padding-bottom: 18px; }
ol {margin: 8px 0 18px 0; padding: 0 0 0 28px; }
ol li { margin: 0; padding: 0 0 12px 0;}

/********* GENERAL FORMATTING AND APPEARANCE *********/
.smallText { font-size: 11px; }
.largeText { font-size: 14px; }
.blue { color:#4A7DAE; }
.lightGold { color:#E7EBB9; }
.boldGold { font-weight: bold; color:#989D09; }
.boldLightGold { font-weight: bold; color:#EBEEA2; }
.boldBlue { font-weight: bold;  color:#5682BE; }
.boldRed { font-weight: bold; color: #BF3636;}
.bold { font-weight: bold; }
.moreArrow { vertical-align: middle; }
.yellowButton {padding-top: 10px; padding-right: 4px;}
.dottedWhiteLine { display: block; margin: 12px auto 10px auto; padding-right: 4px; }

/********* SPACING AND ALIGNMENT *********/
.block { display: block; }
.center { text-align: center; }
.left { text-align: left; }
.margin0 { margin: 0; }
.marginAuto { display: block; margin: 0 auto; }
.marginTop0 {margin-top: 0; }
.marginTop10px {margin-top: 10px; }
.marginTop12px {margin-top: 12px; }
.marginTop14px {margin-top: 14px; }
.marginTop20px {margin-top: 20px; }
.marginTop24px {margin-top: 24px; }
.marginTop30px {margin-top: 30px; }
.marginTop40px {margin-top: 40px; }
.marginBottom0 {margin-bottom: 0; }
.marginBottom4px { margin-bottom: 4px; }
.marginBottom8px { margin-bottom: 8px; }
.marginBottom10px { margin-bottom: 10px; }
.marginBottom12px { margin-bottom: 12px; }
.marginBottom20px { margin-bottom: 20px; }
.marginBottom24px { margin-bottom: 24px; }
.marginBottom30px { margin-bottom: 30px; }
.right { text-align: right; }
.floatRight { display: block; margin: 0 20px 8px 12px; float: right;  }
.floatLeft { display: block; margin: 6px 18px 12px 0; float: left;  }
.clearBoth { clear: both; }
.indent90 { margin-left: 90px; }
.indent60 { margin-left: 60px; }
.indent30 { margin-left: 30px; }

/********* FORMS AND FORM ELEMENTS *********/
/* FORM */
form { margin:0; padding: 0; }
/* FORM ELEMENTS */
.submit { margin: 0 10px 0 0; }
.error { font-weight: bold; color: #BF3636; }
/* FORM LAYOUT */
.joinFormTable { margin: 0 0 12px 0; width: 500px; }
.joinTableLeft { padding: 6px 10px 6px 16px; width: 155px; text-align: left; vertical-align: middle; font-weight: bold; }
.joinTableRight { padding: 6px 0; width: 319px;  text-align: left; vertical-align: middle; }
#joinMessage { padding-left: 18px; }
.contactUsTable { margin: 0 auto 12px auto; width: 420px; }
.contactUsLeft { padding: 6px 30px 2px 0; width: 145px; text-align: left; vertical-align: middle; font-weight: bold; }
.contactUsRight { padding: 16px 0 0 0; width: 245px;  text-align: center; vertical-align: middle; }
.contactMessage { width: 420px; height: 150px; }
#contactUsMessage { padding-left: 40px; padding-right: 46px; }

/********* GENERAL TEMPLATE LAYOUT *********/

/* HEADER AREA - LOGO AND CONTACT INFO */
#header { margin: 0 auto; border: 1px solid #46505a; border-top: 0; border-bottom: 0; padding: 0; width: 804px; text-align: left; background: #fff; }
#headerTable {  margin: 0 auto; width: 800px;  }
#headerLeft { padding: 22px 0 12px 24px; width: 200px; height: 43px; vertical-align: top; text-align: left;}
#headerRight { padding: 31px 24px 0 0; width: 552px; text-align: right; vertical-align: top; }
#headerRight div { font-size: 11px; line-height: 11px; color: #4A7DAE;  }
#phoneNumber { margin-bottom: 10px; }

/* MAIN NAVIGATION BAR */
#mainNav { margin: 0 auto; border: 1px solid #46505a; border-top: 0; border-bottom: 0; padding: 0 22px 1px 22px; width: 760px; background: #fff; }
#mainNavTable { margin: 0; width: 760px; height: 26px; }
#mainNavTable td { padding: 0; }
#mainNavTable img { display: block; }
#homeCell { width: 106px; }
#ourServicesCell { width: 128px; }
#technologyCell { width: 123px; }
#aboutUsCell { width: 106px; }
#whyChooseCell { width: 154px; }
#contactUsCell { width: 143px; }

/* MASTHEAD */
#masthead { margin: 0 auto; border: 1px solid #46505a; border-top: 0; border-bottom: 0; padding: 0 22px; width: 760px; background: #fff; }

/* MAIN CONTENT AREA */
#mainContentContainer { margin: 0 auto; border: 1px solid #46505a; border-top: 0; border-bottom: 0; padding: 20px 22px 18px 22px; width: 760px; background: #fff;}

/********* HOMEPAGE CONTENT *********/
#homepageContentTable { width: 760px; }
#homepageContentTable p { margin-bottom: 12px; }
#homepageContentTable p, #homepageContentTable a, #homepageContentTable li {font-size: 11px; line-height: 15px; }

/* HOMEPAGE CONTENT - LEFT AND MIDDLE COLUMNS */
.homepageHighlight { padding: 0; width: 256px; height: 250px; background: url(/images/general/shadow_border_tile.gif) repeat-y top left; vertical-align: top; }
.homepageHighlight h1  {margin: 0 0 14px 0; padding: 2px 0 0 0; background: #fff;}
.homepageHighlightBottom { padding: 0; width: 256px; height: 20px; background: url(/images/general/shadow_border_bottom.jpg) no-repeat top left;}
.homepageHighlightContent {padding: 14px 30px 0 30px; width: 196px; background: url(/images/general/shadow_border_top.jpg) no-repeat top left; }
.homepageHighlightContent ul {margin-bottom: 10px; }
.homepageHighlightContent .blueBullets li { padding-bottom: 2px; }

/* HOMEPAGE CONTENT - RIGHT COLUMN */
#homepageRight { padding: 0; width: 248px; background: #A49AAB; vertical-align: top;}
#homepageRight h1  {margin: 0 0 11px 0;}
#homepageFeaturedProject { padding: 0 16px 0 20px; width: 212px; background: #A49AAB; }
#homepageFeaturedProject p {color: #F7F6F7; }
#homepageFeaturedProject ul {marrgin-bottom: 0; }
#homepageFeaturedProject .whiteBullets li {padding-bottom: 2px; }
#homepageRightBottom { padding: 0; width: 248px; height: 20px; background: url(/images/general/featured_bottom.gif) no-repeat top; }

/* INTERNAL PAGES - LEFT COLUMN */
#contentLeft { padding: 0; width: 216px; vertical-align: top; background: #A49AAB; }
#contentLeftComplex { padding: 6px 0 0 0; width: 216px; vertical-align: top; }
#contentLeftComplex h1, #contentLeft h1  {margin: 0 0 12px 0;}
#contentLeft p, #contentLeftComplex p, #contentLeft a, #contentLeftComplex a, #contentLeft li, #contentLeftComplex li {  font-size: 11px; line-height: 16px; }
#contentLeftBottom { padding: 0; width: 216px; height: 20px; vertical-align: top; background: url(/images/general/leftcol_purple_box_btm.gif) no-repeat top left; }

/* LEFT COLUMN - SHADOW BOX */
.leftColumnShadowBoxTile { width: 216px; background: url(/images/general/leftcol_shadowbox_tile.gif) repeat-y; }
.leftColumnShadowBoxContent { padding: 8px 22px 10px 26px;  width: 168px; background: url(/images/general/leftcol_shadowbox_top.gif) no-repeat top left; }
.leftColumnShadowBoxBottom { width: 216px; height: 20px; background: url(/images/general/leftcol_shadowbox_btm.gif) no-repeat top left; }

/* LEFT COLUMN - PURPLE BOX */
.leftColumnPurpleBoxHeading { width: 216px; background: #A49AAB; }
.leftColumnPurpleBox { margin: 0; padding: 0; width: 216px;  background: url(/images/general/leftcol_purple_box_top.gif) no-repeat; }
.leftColumnPurpleBoxContent { margin: 0; padding: 1px 22px 10px 22px; width: 172px; background: #A49AAB; color: #F7F6F7; }
.leftColumnPurpleBoxContent p, .leftColumnPurpleBoxContent a { color: #F7F6F7;}
.leftColumnPurpleBoxBottom { width: 216px; height: 20px; background: url(/images/general/leftcol_purple_box_btm.gif) no-repeat top left; }

/* INTERNAL PAGES - RIGHT COLUMN */
#contentRight {padding: 12px 2px 10px 32px; width: 510px; vertical-align: top; text-align: left; }
#contentContainer { padding: 0 10px 0 0}
#contentRightBottom { padding: 0; height: 20px; background: url(/images/general/page_bottom_divider.gif) no-repeat top;}

/******** FOOTER *********/
#footerTop { margin: 0 auto; width: 806px; height: 20px; background: url(/images/general/page_bottom.gif) no-repeat top; }
#footer { margin: 0 auto;  padding: 6px 0 0 0; width: 800px; text-align: center;  background: transparent; }
#footer a, #footer p {  font-size: 10px; color: #E3E6CF; background: transparent;}


/* a.rollover,a.rolloverl,a.rolloverr {text-decoration: none;} */


a.rollover div, a.rolloverl div, a.rolloverr div { padding-top:0px; font-size:8pt; white-space: nowrap;padding-left:10px;padding-right:10px;height:26px;color:white;text-align: center;vertical-align:middle;}

a.rolloverl div,a.rolloverl:visited div {border-right:1px solid black;background: url(../images/nav_buttons/menu_left.jpg) top left repeat;}
a.rolloverl:hover div,a.rolloverl:active div {background: url(../images/nav_buttons/menu_left_over.jpg) top left repeat;}

a.rollover div,a.rollover:visited div {border-right:1px solid black;border-left:1px solid lightgray;background: url(../images/nav_buttons/menu.jpg) top left repeat;}
a.rollover:hover div {background: url(../images/nav_buttons/menu_over.jpg) top left repeat;}

a.rolloverr div,a.rolloverr:visited div {border-left:1px solid lightgray;background: url(../images/nav_buttons/menu_right.jpg) top right repeat;}
a.rolloverr:hover div {background: url(../images/nav_buttons/menu_right_over.jpg) top right repeat;}

