*{
  border: 0;
  padding: 0;
  margin: 0;
  font-family: Verdana, Arial;
  color: #25281D;
  text-decoration: none;
}
html{
  height: 100%;
  overflow-x: visible;
  font-size: 62.5%;
}
body{
  background: url(../images/bg.body.jpg) repeat-x ;
  height: 100%;
  width: 100%;
}
#main{
  height: auto !important;
  min-height: 100%;
  position: relative;
  text-align: center;
  width: 960px;
  margin: 0 auto;
}
#header{
  height: 187px;
  width: 960px;
  position: relative;
  text-align: left;
  background: url(../images/bg.header.jpg) no-repeat center top;
}
#header h1{
  display: none;
}
#header h3{
  display: none;
} 

.logo-header{
  display: block;
  float: left;
  clear: right;
  width: 400px;
  height: 160px;
}

.user-details{
  display: block;
  float: left;
  clear:both;
  color:#fff;
}

.user-details a{
  color:#fff;
}

#menu{
  display: block;
  margin: 0;
  padding: 0 0 0 506px;
  list-style: none;
}
#menu li{
  float: left;
  padding: 0 0 0 1px;
}
#menu li a{
  display: block;
  font-size: 90%;
  height: 141px;
  color: #230904;
}
#menu li a#approach{
  width: 100px;
  background: url(../images/bt.approach.menu.gif) no-repeat;
}
#menu li a#projects{
  width: 100px;
  background: url(../images/bt.projects.menu.gif) no-repeat;
}
#menu li a#people{
  width: 76px;
  background: url(../images/bt.people.menu.gif) no-repeat;
}
#menu li a#blog{
  width: 64px;
  background: url(../images/bt.blog.menu.gif) no-repeat;
}
#menu li a#contact{
  width: 90px;
  background: url(../images/bt.contact.menu.gif) no-repeat;
} 

#menu li a#approach:hover{
  background: url(../images/bt.hover.approach.menu.gif) no-repeat;
}
#menu li a#projects:hover{
  background: url(../images/bt.hover.projects.menu.gif) no-repeat;
}
#menu li a#people:hover{
  background: url(../images/bt.hover.people.menu.gif) no-repeat;
}
#menu li a#blog:hover{
  background: url(../images/bt.hover.blog.menu.gif) no-repeat;
}
#menu li a#contact:hover{
  background: url(../images/bt.hover.contact.menu.gif) no-repeat;
}  

#menu li a#approach.selected, #menu li a#approach.selected:hover{
  background: url(../images/bt.selected.approach.menu.gif) no-repeat;
}
#menu li a#projects.selected, #menu li a#projects.selected:hover{
  background: url(../images/bt.selected.projects.menu.gif) no-repeat;
}
#menu li a#people.selected, #menu li a#people.selected:hover{
  background: url(../images/bt.selected.people.menu.gif) no-repeat;
}
#menu li a#blog.selected, #menu li a#blog.selected:hover{
  background: url(../images/bt.selected.blog.menu.gif) no-repeat;
}
#menu li a#contact.selected, #menu li a#contact.selected:hover{
  background: url(../images/bt.selected.contact.menu.gif) no-repeat;
} 


#wrapper{
  margin: 0px auto;
  width: 960px;
  text-align: left;
  height: 422px;
  padding: 0 0 160px;
}
html>body #wrapper{
  height: auto;
  min-height: 422px;
}
.box{
  width: 960px;
  position: relative;
  min-height: 91px;
  height: auto !important;
  height: 91px;
}

#footer{
  background: #230904;
  width: 100%;
  height: 160px;
  position: relative;
  margin: -160px 0 0;
}
#footer p{
  width: 960px;
  height: 50px;
  margin: 0 auto;
  position: relative;
  text-align: right;
  color: #230904;
}
#twitter{
  display: block;
  width: 79px;
  height: 64px;
  position: absolute;
  top: 18px;
  left: 28px;
  z-index: 100;
  background: url(../images/bt.twitter.gif) no-repeat center center;
}
#facebook{
  display: block;
  width: 80px;
  height: 64px;
  position: absolute;
  top: 81px;
  left: 27px;
  z-index: 50;
  background: url(../images/bt.facebook.gif) no-repeat center center;
}
#twitter:hover{
  background: url(../images/bt.hover.twitter.gif) no-repeat center center;
}
#facebook:hover{
  z-index: 150;
  background: url(../images/bt.hover.facebook.gif) no-repeat center center;
}
#twitter strong, #facebook strong{
  display: none;
}
#footer p#fast-links{
  margin-top: -50px;
}
#footer p#fast-links a {
  color: #999;
  display: inline-block;
  font-size: 1.5em;
  padding: 16px 0 6px 0;
  margin: 0 0 0 14px;
}
#footer p#fast-links a.selected {
  color: #fff;
  border-bottom: 5px solid #ccc;
  background: url(../images/bt.selected.fast-links.gif) no-repeat center top;
}
#footer p#fast-links a:hover {
  color: #fff;
  border-bottom: 5px solid #ccc;
}
#footer p#fast-links a#radiant{
  display: block;
  position: absolute;
  height: 40px;
  padding: 40px 80px 0 0;
  bottom: -110px;
  right: -26px;
  color: #999;
  font-family: arial;
  font-size: 1.2em;
  text-decoration: none;
  background: url(../images/bt.radiant.gif) no-repeat right bottom;
}
#footer p#fast-links a#radiant:hover{
  color: #fff;
  border: none;
}

.left{
  float: left;
}
.right{
  float: right;
}
.darkpink{
  color:#C90E3F;
}
.bluearctic{
  color: #29ABE2;
}



.box.what-how{
  min-height: 194px;
  height: 194px;
  background: url(../images/bg.gradient-up.gif) no-repeat center bottom;
}
.what{
  padding: 45px 0 0 18px;
  width: 462px;
}
.what h2{
  width: 440px;
  height: 26px;
  background: #f2f2f2 url(../images/ttl.what.gif) no-repeat;
  text-indent: -10000px;
}
.what p{
  font-family: Arial;
  font-size: 134%;
  line-height: 19px;
  padding: 10px 20px 0 2px;
}

.how{
  padding: 45px 18px 0 0;
  width: 462px
}
.how h2{
  width: 440px;
  height: 26px;
  background: #f2f2f2 url(../images/ttl.how.gif) no-repeat;
  text-indent: -10000px;
}
.how p{
  font-family: Arial;
  font-size: 134%;
  line-height: 19px;
  padding: 10px 20px 0 2px;
}


.box.details{
  min-height: 145px;
  height: 145px;
  width: 924px;
  padding: 63px 18px 0;
}
.webapp{
  width: 244px;
  height: 100px;
  padding: 12px 0 0 64px;
  background: url(../images/ico.webapp.gif) no-repeat;
}
.humanware{
  width: 244px;
  height: 100px;
  padding: 12px 0 0 64px;
  background: url(../images/ico.humanware.gif) no-repeat 0 3px;
}
.ruby{
  width: 244px;
  height: 100px;
  padding: 12px 0 0 64px;
  background: url(../images/ico.ruby.gif) no-repeat;
}
.box.details h3{
  font-size: 170%;
  letter-spacing: 0.08em;
}
.box.details p{
  font-size: 1.2em;
  line-height: 1.5em;
}



.box.ask-us{
  width: 924px;
  min-height: 173px;
  height: 173px;
  padding: 77px 18px 0;
  background: url(../images/bg.gradient-down.gif) no-repeat;
}
.box.ask-us h4{
  width: 682px;
  height: 35px;
  text-indent: 8px;
  line-height: 35px;
  font-size: 2em;
  text-transform: uppercase;
  background: url(../images/ttl.ask-us.gif) no-repeat;
}
.box.ask-us a{
  display: block;
  width: 172px;
  height: 44px;
  margin: -3px 0 0 682px;
  background: url(../images/bt.ask-us.gif) no-repeat;
  text-indent: -10000px;
}
.box.ask-us a:hover{
  background: url(../images/bt.hover.ask-us.gif) no-repeat;
}



#wrapper .people{
  min-height: 240px;
  height: 240px;
  background: #fff url(../images/bg.gradient-down.gif) no-repeat;
}
#wrapper .first{
  min-height: 266px;
  height: 266px;
  background: none;
}        
.people img{
  padding: 34px 0 40px 75px;
}
.first img{
  padding: 60px 0 40px 75px;
}
.people h2{
  width: 681px;
  font-size: 20px;
  margin: 0 0 0 224px;
  padding: 8px 0 22px 0;
  text-transform: none;
  font-weight: normal;
  position: relative;
  bottom: -22px;
  background: url(../images/logo.puzzle.gif) no-repeat right bottom;
}
.first h2{
  padding: 35px 0 22px 0;
  margin: 0 0 0 224px;
}
.people h3{
  width: 681px;
  margin: 0 0 11px 224px;
  padding: 0 0 2px 0;
  font-size: 17px;
  line-height: 26px;
  text-transform: none;
  font-weight: normal;
  border-bottom: 1px solid #A0A0A0;
}
.people p{
  margin: 0 0 0 224px;
  width: 681px;
  font-size: 14px;
  line-height: 25px;
}

.david h2{
  background: url(../images/logo.david.gif) no-repeat right bottom;
}

.phil h2{
  background: url(../images/logo.philippe.gif) no-repeat right bottom;
}

.maxime h2{
  background: url(../images/logo.maxime.gif) no-repeat right bottom;
}























#wrapper .info-contactform{
  min-height: 380px;
  height: 380px;
  padding: 0 18px;
  background: url(../images/bg.gradient-up.gif) no-repeat center bottom;
}
.info{
  padding: 33px 0 0;
  width: 473px;
  height: 310px;
  background: url(../images/sep.vertical.gif) no-repeat right 100px;
}
.info h2{
  text-indent: -10000px;
  height: 29px;
  padding: 0 0 47px;
  background: url(../images/ttl.contact.gif) no-repeat;
}
.info h3{
  font-size: 1.95em;
  text-transform: none;
  margin: -4px 0 0;
  padding: 0 0 0 148px;
}
.info .address{
  display: block;
  width: 275px;
  margin: 0 0 0 148px;
  font-size: 1.4em;
  padding: 12px 0 12px 4px;;
  line-height: 1.5em;
  text-align: justify;
  text-decoration: none;
  background: url(../images/bt.gmap.gif) no-repeat right -100px;
}
.info .address:hover{
  background: url(../images/bt.gmap.gif) no-repeat right center;
}
.info p{
  font-size: 1.2em;
  padding: 0 0 0 148px ;
  line-height: 1.5em;
  text-align: justify;
}
.info p span{
  color: #666;
}


.fastcontact {
  height: 260px;
  width: 300px;
  padding: 100px 0 0 74px;
}
.fastcontact h3{
  font-size: 1.95em;
}

.fastcontact input{
  display: block;
  font-size: 14px;
}
#title{
  margin: 8px 0 0;
  width: 282px;
  padding: 3px 6px 0 6px;
  height: 21px;
  background: url(../images/bg.title.gif) no-repeat;
}
.fastcontact textarea{
  margin: 10px 0 0;
  width: 282px;
  padding: 6px 6px;
  height: 117px;
  font-size: 14px;
  background: url(../images/bg.message.gif) no-repeat;
}
#mail {
  margin: 14px 10px 0 0;
  width: 202px;
  padding: 3px 6px 0 6px;
  height: 21px;
  background: url(../images/bg.mail.gif) no-repeat;
}
#send{
  margin: 14px 0 0;
  display: block;
  width: 73px;
  height: 24px;
  background: url(../images/bt.send.gif) no-repeat;
  color: #fff;
  cursor: pointer;
}

.skype{
  padding: 40px 0 0;
}
.skype a{
  display: block;
  width:163px;
  height: 38px;
  padding: 29px 0 0 58px;
  margin: 0 0 0 100px;
  font-size: 14px;
  background: url(../images/bt.skype.gif) no-repeat center bottom;
}
.skype a:hover{
  background: url(../images/bt.skype.gif) no-repeat center top;
}

.projects {
  padding: 50px 0;
  min-height: 266px;
  height: 266px;
  background: url(../images/bg.gradient-down.gif) no-repeat;
}
.projects .picture{
  width: 400px;
  text-align: right;
}
.projects .picture img{
  padding: 0;
  margin: 0 0 4px; 
}
.projects .picture a{
  font-size: 1.3em;
  color: #999;
}
.projects .picture a:hover{
  color: #666;
}
.projects h2{
  margin: 0 0 0 420px;
  padding: 0;
  height: 24px;
  padding: 0 2px 0 0;
  font-size: 1.8em;
  font-weight: normal;
}
.projects h2 span{
  display: inline-block;
  background: #E6E6E6;
  width: auto;
  padding: 0 6px 0 0;
}
.projects p{
  margin: 0 0 0 420px;
  padding: 8px 0 0;
  font-size: 1.35em;
}
.projects p.ask-us{
  margin-top: 18px;
  padding: 14px 0 0;
  text-align: right;
  border-top: 1px solid #eee;
}
.projects p.ask-us a{
  text-align: left;
  display: inline-block;
  height: 22px;
  width: 96px;
  background: url(../images/bt.askus.small.gif) no-repeat left top;
  text-indent: -5000px;
}
.projects p.ask-us a:hover{
  background: url(../images/bt.askus.small.gif) no-repeat left bottom;
}





#side_nav.blog{
  width: 170px;
  margin: 30px 0 0;

}
#side_nav.blog #rss{
  display: block;
  width: 60px;
  padding: 28px 0 20px;
  background: url(../images/bt.rss.gif) no-repeat;
  font-size: 1.1em;
}
#side_nav.blog h4{
  font-size: 1.3em;
  padding: 0 0 6px;
}
#side_nav.blog ul{
  list-style: none;
}
#side_nav.blog ul li a{
  font-size: 1.2em;
  margin: 0 0 2px;
}
#side_nav.blog ul li a:hover{
  text-decoration: underline;
}


#wrapper .box.blog{
  width: 724px;
  padding: 20px 18px;
  background: url(../images/bg.gradient-down.gif) no-repeat center top;
}
.box.blog h2{
  height: 24px;
  padding: 14px 2px 6px 0;
  font-size: 1.9em;
  font-weight: normal;
}
.box.blog h2 span{
  display: inline-block;
  background: #E6E6E6;
  width: auto;
  padding: 0 6px 0 0;
}
.box.blog p{
  font-size: 1.4em;
}
.box.blog a.comments{
  display: block;
  position: absolute;
  top: 16px;
  right: 0;
  padding: 3px 5px;
  background: #444;
  color: #fff;
}

#wrapper .box.login {
  display: block;
  width: 920px;
  padding: 20px 18px;
  background: url(../images/bg.gradient-down.gif) no-repeat center top;
}
.login form {
  width: 600px;
  position: absolute;
  left: 50%;
  margin-left: -300px;
}
.login form p {
  padding: 30px 0;
  height:40px;
  line-height:40px;
}
.login label {
  display: block;
  float: left;
  font-size: 24px;
  width: 200px;
  text-align: right;
  padding: 0 20px;
}
.login input {
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  border: 2px solid #DDDDDD;
  font-size: 24px;
  padding:8px;
  display:block;
  float:left;
  clear: right;
  width: 300px;
}
.login input.check {
  height:40px;
}
.login input.submit {
  margin-left:200px;
}

#wrapper .box.admin {
  display: block;
  width: 920px;
  padding: 20px 18px;
  background: url(../images/bg.gradient-down.gif) no-repeat center top;
  font-size: 12px;
}
.admin .field {
  padding: 8px 0;
}
.admin input, .admin textarea {
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  border: 2px solid #DDDDDD;
}
.admin .group {
  padding: 12px;
}
.admin h2 {
  height: 24px;
  padding: 14px 2px 6px 0;
  font-size: 20px;
  font-weight: normal;
}
.admin ul {
  padding: 16px;
}
.admin .delete {
  border: none;
}
.admin .delete_form {
  display: inline;
}
