/* reset styles */

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; }

body {
  line-height: 1;
  color: black;
  background: white; }

ol, ul {
  list-style: 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: "" ""; }

/* basic styles */

p,li,td,th,body {
  font-family: Verdana, Arial, Geneva, sans-serif;
  font-size: 13px;
  line-height: 14px;
  color: #484850;
  background: transparent; }

p {
  padding: 3px 0; }

html, body {
  height: 100.01%; }

body {
  background-color: #f3ecd3; }

a {
  color: #ff6000;
  text-decoration: underline; }

a:hover {
  color: #ff6000;
  text-decoration: underline; }

h1 {
  font-family: Arial, Tahoma, sans-serif;
  font-size: 18px;
  margin: 5px 0 10px 0;
  font-weight: normal;
  color: #ff6000;
  background: transparent; }

h2 {
  margin: 5px 0 10px 0;
  font-family: Tahoma, sans-serif;
  font-size: 18px;
  font-weight: bold;
  color: #ff6000;
  background: transparent; }

h3, h4, h5 {
  margin: 10px 0 5px 0;
  font-size: 14px;
  line-height: 14px;
  color: #ff6000;
  font-weight: bold; 
}

h4, h5 {
  margin: 5px 0 0px 0;
  font-size: 12px;
  line-height: 12px;
  font-weight: bold;
  color: #363a43; }

a h1, a h2, a h3, a h4, a h5, a:hover h1, a:hover h2, a:hover h3, a:hover h4, a:hover h5 {
  text-decoration: none; }

strong {
  font-weight: bold; }

button {
  border: none; }

textarea {
  width: 325px;
  font-family: Verdana, Arial, Geneva, sans-serif; }

.check_box {
  width: auto;
  background: transparent;
  border: none; }

form label {
  display: block;
  float: left;
  width: 90px;
  padding-top: 2px; }
form label.check_box {
  display: inline; }
form input, form select, form textarea, form button {
  background-color: #f3ecd3;
  border: 1px solid;
  border-color: #e9deb1;
  font-size: 11px;
  width: 235px; }
form button {
  float: left;
  width: auto;
  margin-right: 5px;
  padding: 0px 4px;
  background: url(/images/button_background.gif) left top repeat-x;
  background-color: #569f20;
  border: 1px solid;
  border-color: #3e8400;
  color: #ffffff;
  text-transform: uppercase;
  cursor: pointer; }
form p {
  clear: left;
  padding-bottom: 5px; }
form fieldset {
  clear: right;
  margin-bottom: 10px;
  padding: 5px 0 15px 0;
  border-bottom: 1px solid;
  border-color: #c5ccd4; }
form .fieldWithErrors input, form .fieldWithErrors select, form .fieldWithErrors textarea {
  margin-left: 90px;
  margin-bottom: 5px;
  border-color: #ff6000; }
form .formError {
  color: #ff6000;
  font-size: 9px; }
form .input_with_hint_message {
  position: relative; }
  form .input_with_hint_message .hint_message {
    position: absolute;
    top: -5px;
    right: 10px;
    width: 160px;
    background: transparent url(/images/speech_bubble_arrow.gif) left top no-repeat; }
    form .input_with_hint_message .hint_message p {
      padding: 0;
      margin: 0;
      margin-left: 11px;
      padding: 5px;
      border: 1px solid;
      border-color: #c5ccd4;
      border-left: none;
      font-size: 9px; }

/* averall buttons and links */

a.special_link {
	padding-left: 18px;
	background: transparent url(../images/arrow_right.gif) 0 1px no-repeat;
	color: #CCC;
	text-decoration:none;
}

a.special_link:hover {
	color: #ff6000;
	text-decoration:none;
}

a.pdf_download {
	padding: 0px 0 2px 22px;
	background: transparent url(../images/download_icon_pdf.gif) 0 0 no-repeat;
	line-height: 40px;
	color: #CCC;
	text-decoration:none;
}

a.pdf_download:hover {
	color: #ff6000;
	text-decoration:none;
}

/* skeletal structure */

body {
  background-color: #bebdbb;
  text-align: center; }

#page {
  width: 999px;
  margin: 30px auto 0 auto;
	padding-bottom:1px;
	background: url(../images/page_back.gif) left top no-repeat;
  background-color: #e2e2e2;
  text-align: left; }

#page h1 {
  margin: 0;
  padding: 0; 
}
#page h1 a {
  display: block;
  float: left;
  width: 286px;
  height: 70px;
  margin: 24px 0px 0px 5px;
  background: url(../images/logo.gif) left top no-repeat;
  text-indent: -5000px;
  outline: 0; 
}

#primary_navigation {
	clear: right;
  float: right;
  margin: 15px 15px 0 0;
}

#primary_navigation li {
	float:left;
}

#primary_navigation a {
  display: block;
	float: left;
  width: 132px;
  height: 57px;
  text-indent: -5000px; 
}

#primary_navigation a.press {
	background: url(../images/button_press.gif) left top no-repeat;
}
#primary_navigation a.services {
	background: url(../images/button_services.gif) left top no-repeat;
}
#primary_navigation a.cases {
	background: url(../images/button_cases.gif) left top no-repeat;
}
#primary_navigation a.about_us {
	background: url(../images/button_about_us.gif) left top no-repeat;
}

#primary_navigation a.press:hover, #primary_navigation li.active a.press{
	background-image: url(../images/button_press_active.gif);
}
#primary_navigation a.services:hover, #primary_navigation li.active a.services {
	background-image: url(../images/button_services_active.gif);
}
#primary_navigation a.cases:hover, #primary_navigation li.active a.cases {
	background-image: url(../images/button_cases_active.gif) ;
}
#primary_navigation a.about_us:hover, #primary_navigation li.active a.about_us {
	background-image: url(../images/button_about_us_active.gif);
}

#secondary_navigation {
	float: right;
	margin: 25px 15px 0 0;
}

#secondary_navigation li {
	float:left;
}

#secondary_navigation a {
  display: block;
	float: left;
  padding: 0px 8px;
  border-left: 1px solid;
	border-color: #bebdbb;
	color: #bebdbb;
  font-size: 10px;
	font-weight: bold;
  text-decoration: none;
	text-transform: uppercase;
}

#secondary_navigation a:hover {
	color: #ff6000;
}

#secondary_navigation li.first a {
	border: none;
}

#secondary_navigation ul a:hover, #page #secondary_navigation ul li.active a {
  color: #ff6000; 
}

#content {
  clear: both;
  margin: 0px 15px 15px 15px;
  background-color: #ffffff; 
}


#footer {
  width: 999px;
  margin: 0px auto;
}

#footer p {
	float: right;
  margin: 0px;
	color: #ffffff;
}


/* special main_pages */

.primary_visual {
	border-bottom:15px solid #e2e2e2;
}

#content h2 {
	text-transform: uppercase;
}


#primary_content {
	margin: 30px;
}

#categories_wrapper {
	width:969px;
}

.categories_list {
	float:left;
  margin: 0px 0 30px 0;
}

.categories_list dl {
	display:inline;
	float: left;
	width: 246px;
	margin: 0 10px 0 30px;
	padding: 12px;
	border: 1px solid #CCC;
	border-right: 2px solid #BBB;
	border-bottom: 2px solid #BBB;
}

#content .categories_list dt {
	margin: 5px 0 5px 0;
	color: #ff6000;
	font-size: 14px;
	font-weight: bold
} 

#content .categories_list dd p {
	font-size: 12px;
} 

.category_detail {
	margin: 22px 25px;
	text-align: left;
}

.category_detail h2 {
	margin: 15px 0 5px 0;
}

.scroller {
	position:relative;
}

a#scroller_left {
	position: absolute;
	top: -180px;
	left:-10px;
	display: block;
  width: 28px;
  height: 58px;
	background: url(../images/big_arrow_left.png) left top no-repeat;
  text-indent: -5000px;
	cursor:pointer;
	behavior: url(stylesheets/iepngfix.htc); /*IE6*/
}

a#scroller_right {
	position: absolute;
	top: -180px;
	right:-10px;
	display: block;
	float:right;
  width: 28px;
  height: 58px;
	background: url(../images/big_arrow_right.png) left top no-repeat;
  text-indent: -5000px;
	cursor:pointer;
	behavior: url(stylesheets/iepngfix.htc); /*IE6*/
}


/* special home */

#home #content {
	position: relative;
	height: 527px;
	background: url(../images/content_back_landing_page.jpg) left top no-repeat;
	padding-top:1px;
}

#home h2 {
	display:none;
}

#home p.citation {
  display: block;
  width: 476px;
  height: 41px;
	margin: 30px 30px 15px 30px;
	background: url(../images/citation_landing_page.gif) left top no-repeat;
  text-indent: -5000px; 
}

#home .content_list {
	display:inline; /*IE6*/
	width: 600px;
	margin-left: 30px;
	float:left;
}

#home .content_box {
	float: left;
	display:block;
	width:199px;
	height:132px;
	margin-right: 15px;
	margin-bottom:15px;
	padding: 5px 15px;
	background: url(../images/content_box_landing_page.gif) left top no-repeat;
}

#home .content_box a.special_link {
	color: #a0a0a0;
}

#home .content_box a.special_link:hover {
	color: #ff6000;
}

#home .news_box {
	position:absolute;
	bottom: 0px;
	left: -1px;
	width: 680px;
	height: 65px;
	padding: 10px 15px 0 12px;
	background: transparent url(../images/news_box_back.png) left top no-repeat;
	behavior: url(stylesheets/iepngfix.htc);
}

#home .news_box h3, #home .news_box p {
	margin-top:0;
	font-weight:normal;
	color: #ffffff;
}

/* special service */

#service_map {
	width:915px;
	height: 240px;
	position:relative;
}

#service_map a {
	position:absolute;
	display:block;
  width: 110px;
	height: 60px;
	text-indent: -5000em;
	background: transparent url(blank.gif);
}

#service_map a:hover {
	border: 1px solid #eee;
}


#service_map .research a {
	top: 54px;
	left:32px;
}

#service_map .strategy a {
	top: 54px;
	left:180px;
}

#service_map .concept a {
	top: 54px;
	left:340px;
}

#service_map .design a {
	top: 54px;
	left:478px;
}

#service_map .development a {
	top: 54px;
	left:634px;
}

#service_map .maintenance a {
	top: 54px;
	left:777px;
}


/* float clearing */

* html .content_list
{
  height: 1%;
  overflow: visible; 
}

*+html .content_list
{
  min-height: 1%; 
}

#content:after 
{
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden; 
}


/* moodalbox CSS */

div#mb_overlay {
position: absolute;
left: 0;
width: 100%;
background-color: #000;
cursor: pointer;
}

div#mb_center, div#mb_bottom {
position: absolute;
left: 50%;
overflow: hidden;
background-color: #DDD;
}

div#mb_center {
background-color: #FFF;
}


div#mb_contents {
width: 400px;
height: 400px;
border: 10px solid #DDD;
overflow: auto;
background-color: #FFF;
visibility: hidden;
}

#home div#mb_contents h2 {
	display:block;
}

.mb_loading {
background: #DDD url(../images/loading.gif) no-repeat center center;
}

#mb_error {
font-size: 1.2em;
color: #CD0000;
font-weight: bold;
text-align: center;
padding: 0.5em;
font-family: Verdana, Helvetica, sans-serif;
}

#mb_error em {
font-size: 0.8em;
}

div#mb_bottom {
font-family: Verdana, Helvetica, sans-serif;
font-size: 10px;
color: #666;
line-height: 1.4em;
text-align: left;
border: 10px solid #DDD;
border-top-style: none;
}

a#mb_close_link {
display: block;
float: right;
width: 66px;
height: 22px;
background: transparent url(../images/closelabel.gif) no-repeat center;
margin: 5px 0;
}

div#mb_caption {
margin-right: 71px;
}

