/* CSS */

/*************** Layout */


#wrapper {
  width: 960px;
  height: auto;
  margin: 0 auto;
  padding: 0px;
}

.body {
  float: left;
  clear: both;
  width: 100%;
  height: auto;
  margin: 0px;
  padding: 0px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 18px;
  color: #2e2d2b;
}

.default {
  float: left;
  clear: both;
  width: 100%;
  height: auto;
}

/*************** Header */


#header {
  margin: 1px 0px 0px 0px;
  position: relative;
}

#logo {
  float: left;
  margin: 25px 0px 20px 0px;
}

/*************** Search & Social */

#search {
  float: right;
  display: inline;
  position: relative;
  padding: 0px 6px 6px;
  width: 300px;
  height: auto;
  background: url("../image/dot.gif");
}

#search input.text {
  float: left;
  border: 0px;
  width: 200px;
  padding: 4px 32px 4px 4px;
  overflow: hidden;
}

#search input.search {
  position: absolute;
  top: -1px;
  left: 209px;
  z-index: 2;
  border: solid #ffffff;
  border-width: 4px 5px;
}

#social {
  float: right;
  display: inline;
  position: relative;
  padding: 0px 6px 6px;
  width: 154px;
  height: auto;
  background: url("../image/dot.gif");
}

#social img.google {
  float: right;
  border: solid #ffffff;
  border-width: 3px 4px;
}

#social img.linkedin {
  float: right;
  border: solid #ffffff;
  border-width: 3px 0px 3px 4px;
}

#social img.twitter {
  float: right;
  border: solid #ffffff;
  border-width: 3px 0px 3px 4px;
}

#social img.facebook {
  float: right;
  border: solid #ffffff;
  border-width: 3px 0px 3px 4px;
}

#social #___plusone_0{
  float: right !important;
  border: solid #ffffff !important;
  border-width: 3px 4px 3px 0px !important; 
}

.share img{
  display: inline;
  margin: 0px 0px -8px 0px;
}

/*************** Nav */

#nav {
  float: right;
  display: inline;
  width: 700px;
  height: 18px;
  margin: 24px 0px 0px 0px;
}

#nav p {
  margin: 0px;
  height: 18px;
  line-height: 18px;
}

#nav a:link,
#nav a:visited {
  float: right;
  display: inline;
  height: 18px;
  margin: 0px 0px 0px 10px;
  background-position: top;
  background-repeat: no-repeat;
  text-align: center;
  border: 0px;
}

#nav a:hover,
#nav a:active,
#nav a.here:link,
#nav a.here:visited {
  background-position: bottom;
  border: 0px;
}

#nav a#navHome {
  width: 51px;
  background-image: url("../image/nav_home.gif");
}

#nav a#navSolutions {
  width: 92px;
  background-image: url("../image/nav_solutions.gif");
}

#nav a#navBlog {
  width: 45px;
  background-image: url("../image/nav_blog.gif");
}

#nav a#navWork {
  width: 52px;
  background-image: url("../image/nav_work.gif");
}

#nav a#navClients {
  width: 69px;
  background-image: url("../image/nav_clients.gif");
}

#nav a#navElement {
  width: 85px;
  background-image: url("../image/nav_element.gif");
}

#nav a#navProducts {
  width: 87px;
  background-image: url("../image/nav_products.gif");
}

#nav a#navSEO {
  width: 35px;
  background-image: url("../image/nav_seo.gif");
}

#nav a#navContact {
  width: 100px;
  background-image: url("../image/nav_contact.gif");
}

#nav a span {
  display: none;
}

/*************** Main */

#main {
  margin: 20px 0px 0px 0px;
}

#main div.quarter {
  width: 240px;
}

div.homeWrapper {
  float: left;
  display: inline;
  position: relative;
  width: 920px;
  height: 95px;
  left: -23px;
  margin: 0px 0px 15px 0px;
  padding: 45px 43px;
  background: url("../image/vintage_bg.jpg") no-repeat;
}

div.intro {
  float: left;
  display: inline;
  width: 650px;
  font-size: 28px;
  line-height: 38px;
  font-weight: normal;
  color: #333333;
  margin: 0px 0px 15px 0px;
}

div.homeWrapper div.intro {
  margin: 0px;
}

div.intro h2 {
  color: #333333;
  margin: 0px;
}

.process {
  float: right;
  display: inline;
  position: relative;
  left: 15px;
  margin: 0px 0px 15px 0px;
}

/*************** Home */

div.column {
  width: 460px;
  height: auto;
}

div.breadcrumb {
  margin: 0px 0px 5px 0px;
  font-size: 11px;
}

div.breadcrumb a.block:link,
div.breadcrumb a.block:visited,
div.breadcrumb a.block:hover,
div.breadcrumb a.block:active {
  padding: 3px;
  font-weight: normal;
}

/*************** "Element" Headers */

div.header {
  float: left;
  display: inline;
  width: 100%;
  height: auto;
  position: relative;
  margin: 0px 0px 20px 0px;
}

div.header img.element {
  position: absolute;
  z-index: 2;
  top: 0px;
  left: 0px;
}

div.header h2 {
  width: 410px;
  padding: 2px 0px 0px 50px;
  margin: 0px;
}

div.header div.hr {
  width: 410px;
  padding: 0px 0px 0px 50px;
}

/*************** Blog Entries */

div.blog {
  float: left;
  display: inline;
  width: 100%;
  height: auto;
  margin: 0px 0px 15px 0px;
}

img.avatar {
  float: left;
  position: relative;
  width: 48px;
}

div.blog div.blogContent {
  float: right;
  width: 400px;
}

div.blog div.hr {
  margin: 0px;
}

div.blog div.hr.mb {
  margin-bottom: 8px;
}

p.meta {
  margin: 0px 0px 8px 0px;
  padding: 0px 0px 8px 0px;
  border-bottom: dotted 1px #cccccc;
}

p.discuss {
  font-size: 11px;
  padding: 9px 0px 0px 0px;
  border-top: dotted 1px #cccccc;
}

/*************** Primary Column */

div.primary {
  width: 560px;
}

#main div.primary div.sitemap {
  width: 186px !important;
}

#main div.primary div.sitemap li {
  margin-bottom: 2px !important;
}

div.primary div.half {
  display: inline;
  width: 280px;
  height: auto;
}

div.primary div.blog {
  margin: 15px 0px 25px 0px;
}

div.primary div.blog div.blogContent {
  float: right;
  width: 500px;
}

div.primary div.blog p {
  margin: 0px 0px 10px 0px;
}

div.primary blockquote {
  width: 540px;
}

div.primary blockquote p {
  margin: 0px;
}

div.primary code {
  width: 520px;
}

/*************** Blog Comments */

div.primary div.comment {
  display: inline;
  float: left;
  padding: 0px 0px 10px 0px;
  margin: 0px 0px 15px 0px;
  width: 100%;
  border-bottom: 1px dotted #dadada;
}

div.primary div.comment div.commentText {
  float: right;
  width: 500px;
}

div.comment img.avatar, 
div.commentForm img.fl {
  float: left;
}

/*************** Slideshow */

div.slideshow {
  margin: 0px 0px 15px 0px;
}

div.slideshow img {
  margin: 0px 0px 1px 0px;
}

/*************** Secondary Column */

div.secondary {
  width: 360px;
  margin-top: 15px;
}

div.secondary div.header h2 {
  width: 310px;
  padding: 2px 0px 0px 50px;
  margin: 0px;
}

div.secondary div.header div.hr {
  width: 310px;
  padding: 0px 0px 0px 50px;
}

div.secondary div.callout {
  float: right;
  width: 310px;
  margin: 0px 0px 15px 0px;
}

div.secondary div.callout img.fr {
  margin: 0px 0px 0px 15px;
}

div.secondary div.blog {
  margin: 0px 0px 15px 0px;
}

div.secondary div.blog div.blogContent {
  width: 300px;
}

div.secondary div.blog p.blogIntro a:link,
div.secondary div.blog p.blogIntro a:visited {
  color: #999999;
} 

div.secondary div.blog p.blogIntro a:hover,
div.secondary div.blog p.blogIntro a:active {
  color: #666666;
  background: #eeeeee;
} 

div.secondary div.line {
  float: right;
  width: 300px;
  margin: 0px 0px 15px 0px;
}

div.secondary h1 {
  font-size: 40px;
  line-height: 40px;
}

div.secondary div.half {
  width: 180px;
  margin: 10px 0px 20px 0px;
}

div.secondary div.third {
  width: 140px;
  margin: 10px 0px 20px 0px;
}

div.secondary div.twoThirds {
  width: 220px;
  margin: 10px 0px 20px 0px;
}

div.secondary p.social {
  margin: 15px 0px;
}

div.secondary p.social img {
  margin: 0px 15px 15px 0px;
}

div.secondary p.field {
  width: 298px;
  margin-bottom: 6px;
}

div.secondary p.field input.text {
  width: 290px;
}

/*************** Tag Cloud */

div.callout #tagCloud {
  line-height: 2em;
}

div.callout #tagCloud a:link,
div.callout #tagCloud a:visited {
  text-decoration: none;
  border-bottom: dotted 1px;
}

div.callout #tagCloud a:hover,
div.callout #tagCloud a:active {
  text-decoration: none;
  border-bottom: dotted 1px;
}

/*************** Work Columns */

div.work {
  width: 300px;
  height: auto;
  margin: 0px 30px 30px 0px;
}

div.work.fr {
  margin-right: 0px;
}

div.work img {
  margin: 0px 0px 1px 0px;
}

div.work p.title {
  margin: 8px 0px 4px 0px;
}

/*************** Clients */

div.tabs {
  border-bottom: dotted 1px #cccccc;
  z-index: 1;
  margin: 0px 0px 20px 0px;
}

div.tabs p {
  margin: 0px;
  position: relative;
  top: 1px;
  z-index: 2;
}

div.tabs a:link,
div.tabs a:visited {
  float: left;
  display: inline;
  width: auto;
  height: auto;
  padding: 5px 10px;
  margin: 0px 10px 0px 0px;
  color: #333333;
  background: #eeeeee;
  border: dotted 1px #cccccc;
  position: relative;
  z-index: 2;
}

div.tabs a:hover,
div.tabs a:active {
  background: #cccccc;
  color: #111111;
}

div.tabs a.here:link,
div.tabs a.here:visited {
  border: dotted 1px #fa9b00;
  border-bottom: solid 1px #ffffff;
  background: #ffffff;
  color: #fa9b00;
}

div.client {
  width: 180px;
  margin: 0px 15px 20px 0px;
}

div.client img {
  margin: 0px 0px 1px 0px;
}

div.client p.title {
  margin: 8px 0px 4px 0px;
}

div.clientList.three div.client {
  margin-right: 210px;
}

div.clientList.four div.client {
  margin-right: 80px;
}

div.client.fr {
  margin-right: 0px !important;
}

/*************** Services */

div.service {
  width: 170px;
  height: auto;
  margin: 0px 0px 15px 0px;
}

div.service p {
  float: right;
  width: 110px;
  margin: 0px 0px 10px 0px;
}

/*************** Support/Stats Report */

div.fifth {
  width: 184px;
}

div.fifth .stats {
  float: left;
  display: inline;  
  width: 129px;
  min-height: 60px;
  height: auto !important;
  height: 60px;
  padding: 5px 0px 0px 55px;
  background-position: top left;
  background-repeat: no-repeat;
  color: #666666;
}

div.fifth .stats strong { color: #111111; }

.stats.osx { background-image: url('/image/support_icon_os_mac.gif'); }
.stats.windows { background-image: url('/image/support_icon_os_windows.gif'); }
.stats.linux { background-image: url('/image/support_icon_os_linux.gif'); }

.stats.ff  { background-image: url('/image/support_icon_br_firefox.gif'); }
.stats.ie6  { background-image: url('/image/support_icon_br_ie6.gif'); }
.stats.ie7  { background-image: url('/image/support_icon_br_ie7.gif'); }
.stats.ie8  { background-image: url('/image/support_icon_br_ie7.gif'); }
.stats.ie9, .stats.ie { background-image: url('/image/support_icon_br_ie9.gif'); }
.stats.safari  { background-image: url('/image/support_icon_br_safari.gif'); }
.stats.opera  { background-image: url('/image/support_icon_br_opera.gif'); }
.stats.chrome  { background-image: url('/image/support_icon_br_chrome.gif'); }

.stats.ip  { background-image: url('/image/support_icon_ip.gif'); }

.stats.screen  { background-image: url('/image/support_icon_screen.gif'); }

.stats.viewport  { background-image: url('/image/support_icon_viewport.gif'); }

.stats.js  { background-image: url('/image/support_icon_script.gif'); }

.stats.html5  { background-image: url('/image/support_icon_html5.gif'); }

.stats.css3  { background-image: url('/image/support_icon_css3.gif'); }

.stats.color  { background-image: url('/image/support_icon_color.gif'); }

.stats.cookies  { background-image: url('/image/support_icon_cookies.gif'); }

input.submitOverlay { position: absolute; right: 8px; top: 8px; border: 0px !important; font-size: 13px !important; width: 92px; }



/*************** Mouseware */

div.mouseware { display: inline; float: left; height: auto; width: 100%; margin: 0px 0px 15px 0px; }
div.mouseware div.logo  { display: inline; float: left; height: auto; width: 180px; }
div.mouseware div.title { display: inline; float: right; height: auto; width: 780px; }

/*************** Footer */

#footer {
  padding: 20px 0px;
}

#footer p {
  margin: 15px 0px 0px 0px;
  text-align: center;
  color: #889999;
  font-size: 11px;
}

#footer a:link,
#footer a:visited,
#footer span {
  color: #889999;
  margin: 0px 4px;
  text-decoration: none;
  font-weight: normal;
}

#footer a:hover,
#footer a:active {
  color: #ffffff;
  background: #889999;
  font-weight: normal;
}

#footer span.fusionbox a:link,
#footer span.fusionbox a:visited {
  margin: 0px;
}

#footer img {
  display: inline;
}

/*************** Forms */

div.form {
  margin: 0px 0px 10px 0px;
}

p.label {
  width: 160px;
  font-size: 18px;
  line-height: 30px;
  color: #666666;
  margin: 0px;
}

p.field {
  float: right;
  width: 388px;
  padding: 6px;
  background: url("../image/dot.gif") top;
  margin: 0px;
}

p.field.textarea {
  padding: 4px 6px;
}

input.text,
textarea,
select {
  width: 380px;
  padding: 4px;
  font-size: 18px;
  line-height: 22px;
  background: #ffffff;
  border: 0px;
  font-family: Arial, Helvetica, sans-serif;
}

textarea {
  height: 120px;
  font-size: 14px;
  line-height: 18px;
}

input.submit {
  background: #f7ad32;
  border: solid 6px #ffffff;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
  font-size: 14px;
  color: #ffffff;
  padding: 4px;
  font-family: Arial, Helvetica, sans-serif;
}

input.submit:hover {
  background: #ffbb44;
}

/*************** Error */

p.error {
  font-weight: bold;
  color: #990000;
}

img.error,
div.commentForm img.error {
  float: left;
  position: relative;
  top: 3px;
  left: 0px;
  margin: 0px 8px 0px 0px;
}


/*************** Recaptcha */

#recaptcha_image_wrapper {
  float: right;
  width: 400px;
  height: auto;
  margin: 0px 0px 10px 0px;
}

#recaptcha_image_wrapper #recaptcha_image {
  float: left;
}


/*************** All */

h1, h2, h3, h4, div.list, p {
  float: left;
  display: inline;
  font-weight: normal;
  width: 100%;
  height: auto;
  margin: 0px 0px 10px 0px;
}

h1, .h1 {
  font-size: 60px;
  line-height: 60px;
  font-weight: bold;
  color: #1f1f1d;
  letter-spacing: -2px;
  margin: 0px 0px 10px 0px;
}

h1.solo {
  margin-bottom: 15px;
}

.secondary h1 {
  margin: 0px;
}

h2 {
  font-size: 22px;
  line-height: 18px;
  color: #1f1f1d;
  margin: 0px;
}

h3, .h3 {
  font-size: 22px;
  line-height: 22px;
  font-weight: normal;
  color: #333333;
  letter-spacing: -1px;
}

.blog h3 {
  font-size: 20px;
  font-weight: bold;
  margin: 0px 0px 2px 0px;
}

h3 a:link,
h3 a:visited {
  color: #333333;
  text-decoration: none;
  border: 0px;
  background: transparent;
}

h3 a:hover,
h3 a:active {
  color: #111111;
  text-decoration: none;
  border: 0px;
  background: transparent;
}

h4 {
  font-size: 16px;
  line-height: 22px;
  font-weight: bold;
  color: #333333;
  letter-spacing: -1px;
}

blockquote {
  float: left;
  clear: left;
  display: inline;
  width: auto;
  padding: 5px 0px 0px 17px;
  border-left: solid 3px #fe9b00;
  color: #666666;
  margin: 0px 0px 15px 0px;
}

code {
  float: left;
  display: inline;
  width: auto;
  height: auto;
  margin: 0px 0px 15px 0px;
  font-family: monospace;
  border: dotted 1px #cccccc;
  background: #eeeeee;
  padding: 15px;
}

div.hr {
  float: left;
  display: inline;
  width: 100%;
  height: 6px;
  font-size: 1px;
  line-height: 1px;
  background: url("../image/dot.gif") top left;
}

div.line {
  float: left;
  display: inline;
  width: 100%;
  height: 2px;
  font-size: 1px;
  line-height: 1px;
  background: url("../image/dot.gif") top left;
}

div.break {
  clear: both;
  overflow: hidden;
  width: 100%;
  height: 1px;
  font-size: 1px;
  line-height: 1px;
}

strong, .bold {
  font-weight: bold;
}

em, .italic {
  font-style: italic;
}

a:link,
a:visited {
  color: #fa9b00;
  font-weight: bold;
  text-decoration: none;
  border-bottom: dotted 1px;
}

a:hover,
a:active {
  color: #dd7700;
  background: #ffeeaa;
  text-decoration: none;
  border-bottom: 0px;
}

a.img {
  border: 0px;
  background: transparent;
  text-decoration: none;
}

a.grey:link,
a.grey:visited {
  color: #666666;
  font-weight: normal;
  text-decoration: none;
  border-bottom: dotted 1px;
  background-color: transparent;
}

a.grey:hover,
a.grey:active {
  color: #444444;
  background-color: #eeeeee;
  text-decoration: none;
  border-bottom: 0px;
}

a.block:link,
a.block:visited {
  padding: 0px 2px;
  background: #fa9b00;
  color: #ffffff;
  text-decoration: none;
  font-weight: bold;
  border-bottom: 0px;
}

a.block:hover,
a.block:active {
  color: #ffffff;
  background: #fabb33;
  border-bottom: 0px;
}

a.grey.block:link,
a.grey.block:visited {
  background: #666666;
  color: #ffffff;
}

a.grey.block:hover,
a.grey.block:active {
  background: #888888;
}

a.block.grey.fade:link,
a.block.grey.fade:visited {
  background: #888888;
}

a.block.grey.fade:hover,
a.block.grey.fade:active{
  background: #aaaaaa;
}

a.block.grey.fadest:link,
a.block.grey.fadest:visited {
  background: #aaaaaa;
}

a.block.grey.fadest:hover,
a.block.grey.fadest:active {
  background: #cccccc;
}

a.block.lightgrey:link,
a.block.lightgrey:visited {
  background: #eeeeee;
  color: #666666;
}

a.block.lightgrey:hover,
a.block.lightgrey:active {
  background: #666666;
  color: #eeeeee;
}

a.cloudLink{
  padding: 0px 2px 0px 0px;
}

img {
  display: block;
}

.w3cLinks {
  text-align: center;
}
.w3cLinks img {
  display: inline;
}

/*************** List */

ul {
  list-style: square outside;
  margin-left: 40px;
}

ul.blogList {
  margin-left: 20px;
}

ol {
  list-style: decimal outside;
  margin-left: 40px;
}

ul li,
ol li {
  margin: 0px 0px 8px 0px;
}

/*************** Misc */

.fl { float: left; }
.fr { float: right; }
.ar { text-align: right; }
.nm { margin: 0px !important; }
.sm { margin-bottom: 2px; }
.hmb { margin-bottom: 8px; }
.mb { margin-bottom: 15px; }
.mt { margin-top: 10px; }
.mr { margin-right: 8px; }
.ml { margin-left: 10px !important; }
.small { font-size: 11px; line-height: 15px; }
.normal { font-size: 12px; line-height: 18px; }
.medium { font-size: 14px; line-height: 21px; }
.big { font-size: 17px; line-height: 24px; }
.huge { font-size: 21px; line-height: 26px; }
.black { color: #111111; }
.grey { color: #889999; }
.darkgrey { color: #666666; }
.orange { color: #fe9b00; }
.bold { font-weight: bold; }
.serif { font-family: Georgia, serif; }
.relative { position: relative; }
.centered {text-align: center;}
img.centered { margin: 0 auto; }

#sopaPopup {
  background: #000000 !important;
  color: #ffffff;
  display:inline;
  float:left;
  font-family: 'Helvetica', 'Arial', sans-serif;
  height:auto;
  padding: 20px;
  width: 600px;
}

#sopaPopup .h1 { color: #cc2222 !important; line-height: 40px; text-align: center; margin-bottom: 15px; }
#sopaPopup .h3 { color: #cccccc !important; line-height: 30px; text-align: center; }
#sopaPopup p { line-height: 20px; }

