



.link_list a {
  background-image: url(/images/layout/sprite.png);
  background-position: -530px 4px;
  background-repeat: no-repeat;
  color: #666;
  font-size: 10px;
  padding-left: 15px;
  text-decoration: none; }
  .link_list a:active {
    position: relative;
    top: 1px; }
  .link_list a:hover {
    color: #cc6633;
    text-decoration: underline; }

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, dialog, figure, footer, header, hgroup, nav, section {
  display: block; }

ul, ol {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }
  a:active {
    outline: 1px dotted #fff;
    outline: 1px dotted rgba(255, 255, 255, 0.<5></5>); }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

img {
  border: 0;
  vertical-align: top; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

img {
  -ms-interpolation-mode: bicubic; }

html {
  font-family: Arial, Tahoma, Verdana, sans-serif;
  background-color: #FFFFFF;
  color: #111111; }

body {
  width: 960px;
  margin: auto; }

input.check {
  display: none; }

input,
textarea {
  font-family: Arial, Tahoma, Verdana, sans-serif;
  margin: 0px;
  padding: 5px;
  border: none;
  background-color: #E5E5E5;
  font-size: 12px;
  color: #111111; }
  input.placeholder,
  textarea.placeholder {
    text-transform: uppercase; }

textarea {
  margin-top: 10px;
  line-height: 16px; }

button {
  height: 24px;
  padding: 0px;
  border: none;
  cursor: pointer; }

.pdf_link {
  text-decoration: none;
  color: #666; }
  .pdf_link span {
    display: block;
    background-image: url(/images/layout/sprite.png);
    background-repeat: no-repeat;
    background-color: transparent;
    text-indent: -9999px;
    outline: none;
    margin-right: 8px;
    background-position: -399px -269px;
    height: 16px;
    width: 16px;
    display: inline-block;
    position: relative;
    top: 0.15em; }
  * html .pdf_link span {
    display: inline; }
  *+ html .pdf_link span {
    display: inline; }
  .pdf_link:hover {
    color: #000; }
    .pdf_link:hover span {
      background-position: -399px -289px; }

#header,
#error_header {
  *display: inline-block;
  overflow: hidden;
  height: 78px;
  margin-bottom: 30px;
  padding-left: 15px;
  padding-right: 15px;
  background-color: #000000; }
  #header:after,
  #error_header:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #header a#logo,
  #error_header a#logo {
    float: left;
    width: 197px;
    height: 30px;
    background-color: #000;
    margin-top: 25px;
    cursor: pointer; }
    #header a#logo:active,
    #error_header a#logo:active {
      position: relative;
      top: 1px; }
    #header a#logo h1,
    #error_header a#logo h1 {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      font-weight: normal;
      text-transform: uppercase;
      width: 197px;
      height: 30px;
      background-position: -349px -196px;
      font-size: 28px;
      color: #FFFFFF;
      overflow: hidden; }
  #header ul,
  #error_header ul {
    float: right; }
    #header ul li,
    #error_header ul li {
      float: left;
      margin-left: 45px; }
      #header ul li:first-child,
      #error_header ul li:first-child {
        margin-left: 0px; }
      #header ul li a,
      #error_header ul li a {
        display: block;
        background-image: url(/images/layout/sprite.png);
        background-repeat: no-repeat;
        background-color: transparent;
        text-indent: -9999px;
        outline: none;
        display: block;
        height: 44px;
        margin-top: 34px;
        font-size: 20px;
        text-transform: uppercase;
        text-decoration: none;
        color: #999999; }
        #header ul li a:hover,
        #error_header ul li a:hover {
          color: #FFFFFF; }
        #header ul li a:active,
        #error_header ul li a:active {
          margin-top: 35px; }
      #header ul li.who a,
      #error_header ul li.who a {
        width: 103px;
        background-position: -154px -147px; }
        #header ul li.who a:hover,
        #header ul li.who a.active,
        #error_header ul li.who a:hover,
        #error_header ul li.who a.active {
          background-position: -154px -93px; }
      #header ul li.what a,
      #error_header ul li.what a {
        width: 127px;
        background-position: -267px -147px; }
        #header ul li.what a:hover,
        #header ul li.what a.active,
        #error_header ul li.what a:hover,
        #error_header ul li.what a.active {
          background-position: -267px -93px; }
      #header ul li.where a,
      #error_header ul li.where a {
        width: 141px;
        background-position: -405px -147px; }
        #header ul li.where a:hover,
        #header ul li.where a.active,
        #error_header ul li.where a:hover,
        #error_header ul li.where a.active {
          background-position: -405px -93px; }

#self_praise {
  *display: inline-block;
  margin-bottom: 30px;
  padding-left: 10px;
  padding-right: 10px; }
  #self_praise:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #self_praise h2 {
    float: left;
    display: block;
    background-image: url(/images/layout/sprite.png);
    background-repeat: no-repeat;
    background-color: transparent;
    text-indent: -9999px;
    outline: none;
    font-weight: normal;
    text-transform: uppercase;
    width: 550px;
    height: 64px;
    background-position: 0px -310px;
    font-size: 40px;
    margin-right: 244px;
    overflow: hidden; }
    #self_praise h2 a {
      display: block;
      height: 64px;
      width: 550px; }
  #self_praise div {
    float: left;
    width: 146px; }
    #self_praise div h3 {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      font-weight: normal;
      text-transform: uppercase;
      width: 105px;
      height: 9px;
      margin-bottom: 10px;
      background-position: 0px -73px;
      font-size: 13px; }
    #self_praise div ul {
      *display: inline-block; }
      #self_praise div ul:after {
        content: " ";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden; }
      #self_praise div ul li {
        float: left;
        padding-left: 10px; }
        #self_praise div ul li.first_child {
          padding-left: 0px; }
        #self_praise div ul li a,
        #self_praise div ul li span {
          display: block;
          background-image: url(/images/layout/sprite.png);
          background-repeat: no-repeat;
          background-color: transparent;
          text-indent: -9999px;
          outline: none;
          height: 41px;
          font-size: 13px; }
          #self_praise div ul li a:active,
          #self_praise div ul li span:active {
            position: relative;
            top: 1px; }
        #self_praise div ul li.red_dot a {
          width: 27px;
          background-position: -3px -92px; }
          #self_praise div ul li.red_dot a:hover {
            background-position: -3px -143px; }
        #self_praise div ul li.if a,
        #self_praise div ul li.if span {
          width: 30px;
          background-position: -42px -93px; }
        #self_praise div ul li.designpreis a,
        #self_praise div ul li.designpreis span {
          width: 27px;
          background-position: -82px -91px; }
        #self_praise div ul li.sae a,
        #self_praise div ul li.sae span {
          width: 26px;
          background-position: -115px -93px; }

#main_content {
  *display: inline-block; }
  #main_content:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

#footer {
  margin-top: 50px;
  border-top: 1px dashed #000000;
  zoom: 1; }
  #footer a {
    color: #666666;
    text-decoration: none; }
    #footer a:hover,
    #footer a.active {
      color: #cc6633; }
  #footer #navigation,
  #footer #contact,
  #footer #misc,
  #footer #client_comment {
    padding: 20px;
    padding-left: 10px;
    padding-right: 10px; }
  #footer #navigation,
  #footer #contact,
  #footer #client_comment {
    float: left;
    width: 286px; }
    #footer #navigation h3,
    #footer #contact h3,
    #footer #client_comment h3 {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      font-weight: normal;
      text-transform: uppercase;
      height: 17px;
      margin-bottom: 10px;
      font-size: 24px; }
  #footer #navigation {
    padding-right: 20px; }
    #footer #navigation h3 {
      width: 235px;
      background-position: 0px -200px; }
    #footer #navigation ul {
      padding-top: 3px; }
      #footer #navigation ul li {
        margin-top: 3px; }
        #footer #navigation ul li:first-child {
          margin-top: 0px; }
        #footer #navigation ul li a {
          padding-left: 20px;
          background-image: url(/images/layout/sprite.png);
          background-position: -530px 4px;
          background-repeat: no-repeat;
          font-size: 12px;
          text-transform: uppercase; }
          #footer #navigation ul li a:active {
            position: relative;
            top: 1px; }
  #footer #client_comment {
    padding-left: 20px;
    padding-right: 20px;
    border-left: 1px dashed #000000;
    border-right: 1px dashed #000000;
    position: relative;
    min-height: 177px; }
    * html #footer #client_comment {
      height: 177px; }
    *+ html #footer #client_comment {
      height: 177px; }
    #footer #client_comment h3 {
      width: 132px;
      background-position: -51px -262px;
      margin-bottom: 14px; }
    #footer #client_comment blockquote {
      font-size: 13px;
      color: #666;
      line-height: 1.4;
      margin-bottom: 10px;
      padding-left: 1px; }
    #footer #client_comment p {
      font-size: 11px;
      text-transform: uppercase;
      text-align: right;
      color: #000; }
      #footer #client_comment p a {
        color: #000; }
        #footer #client_comment p a:active {
          position: relative;
          top: 1px; }
        #footer #client_comment p a:hover {
          color: #cc6633; }
  #footer #contact {
    padding-left: 20px;
    position: relative; }
    #footer #contact h3 {
      width: 82px;
      background-position: -245px -200px;
      margin-bottom: 14px; }
    #footer #contact p {
      font-size: 13px;
      line-height: 1.4;
      margin-bottom: 15px;
      color: #666; }
    #footer #contact ul li {
      line-height: 1.6; }
      #footer #contact ul li a,
      #footer #contact ul li span {
        padding-left: 15px;
        text-transform: uppercase;
        font-size: 14px;
        color: #666;
        color: #000; }
      #footer #contact ul li a {
        background: url('/images/layout/sprite.png') no-repeat -530px 5px; }
        #footer #contact ul li a:active {
          position: relative;
          top: 1px; }
        #footer #contact ul li a:hover {
          color: #cc6633; }
    #footer #contact ul#contact_form_link {
      margin-bottom: 5px; }
      #footer #contact ul#contact_form_link a {
        background: #000;
        color: #FFF;
        font-size: 14px;
        padding: 2px 8px; }
        #footer #contact ul#contact_form_link a:active {
          position: relative;
          top: 1px; }
        #footer #contact ul#contact_form_link a:hover {
          background-color: #CC6600; }
  #footer #misc {
    *display: inline-block;
    clear: left;
    border-top: 1px dashed #000000;
    color: #666666;
    font-size: 10px;
    line-height: 12px; }
    #footer #misc:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #footer #misc address {
      font-style: normal;
      float: left; }
    #footer #misc ul {
      float: right; }
      #footer #misc ul li {
        float: left;
        margin-left: 10px; }
        #footer #misc ul li:first-child {
          margin-left: 0px; }
        #footer #misc ul li a {
          display: block;
          background-image: url(/images/layout/sprite.png);
          background-repeat: no-repeat;
          background-color: transparent;
          text-indent: -9999px;
          outline: none;
          height: 16px;
          width: 16px; }
          #footer #misc ul li a:active {
            position: relative;
            top: 1px; }
        #footer #misc ul li.xing a {
          background-position: -399px -229px; }
          #footer #misc ul li.xing a:hover {
            background-position: -399px -249px; }
        #footer #misc ul li.delicious a {
          background-position: -425px -229px; }
          #footer #misc ul li.delicious a:hover {
            background-position: -425px -249px; }
        #footer #misc ul li.facebook a {
          background-position: -451px -229px; }
          #footer #misc ul li.facebook a:hover {
            background-position: -451px -249px; }
        #footer #misc ul li.flickr a {
          background-position: -477px -229px; }
          #footer #misc ul li.flickr a:hover {
            background-position: -477px -249px; }
        #footer #misc ul li.lastfm a {
          background-position: -503px -229px; }
          #footer #misc ul li.lastfm a:hover {
            background-position: -503px -249px; }
        #footer #misc ul li.twitter a {
          background-position: -529px -229px; }
          #footer #misc ul li.twitter a:hover {
            background-position: -529px -249px; }


#error_page body {
  width: 960px; }
#error_page #error_header {
  margin-bottom: 30px; }
  #error_page #error_header #header_back {
    float: right;
    background: url('/images/icons/arrow_right_white.png') no-repeat 0 3px;
    padding-left: 15px;
    color: #FFF;
    font-size: 12px;
    text-transform: uppercase;
    text-decoration: none;
    margin-top: 38px; }
    #error_page #error_header #header_back:active {
      position: relative;
      top: 1px; }
    #error_page #error_header #header_back:hover {
      color: #CCC; }
#error_page #error_content a,
#error_page #error_content img {
  display: block; }
#error_page #footer {
  margin-top: 50px; }
  #error_page #footer #misc {
    border: none; }

#teaser {
  *display: inline-block;
  width: 960px; }
  #teaser:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  .js #teaser {
    overflow: hidden;
    position: relative;
    height: 436px; }
  #teaser li {
    *display: inline-block;
    width: 960px;
    margin-top: 20px;
    background-color: transparent;
    background-repeat: no-repeat; }
    #teaser li:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #teaser li.first {
      margin-top: 0px; }
    .js #teaser li {
      display: none;
      position: absolute;
      left: 960px;
      margin-top: 0px; }
    #teaser li.first {
      display: block;
      left: 0px;
      box-shadow: 0px 0px 0px black;
      -webkit-box-shadow: 0px 0px 0px black;
      -moz-box-shadow: 0px 0px 0px black; }
    #teaser li a.catch {
      float: left;
      width: 29px;
      height: 436px;
      border-left: 1px solid #FFFFFF;
      background-color: transparent;
      color: #FFFFFF;
      font-size: 10px;
      text-transform: uppercase;
      text-decoration: none;
      cursor: pointer; }
      .rgba #teaser li a.catch:hover {
        border-left-color: rgba(0, 0, 0, 0.05);
        background-color: rgba(0, 0, 0, 0.05);
        transition-property: background-color;
        transition-duration: 0.5s;
        -moz-transition-property: background-color;
        -moz-transition-duration: 0.5s;
        -webkit-transition-property: background-color;
        -webkit-transition-duration: 0.5s; }
      #teaser li a.catch:active {
        margin-top: 0px; }
    #teaser li.first a.catch {
      width: 30px;
      border-left: none; }
    #teaser li span {
      display: block;
      height: 5px;
      width: 9px;
      margin-left: 10px;
      margin-top: 420px;
      text-indent: -9999px; }
    #teaser li.open span {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: -537px -80px; }
    #teaser li.open.black span {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: -537px -70px; }
    #teaser li.closed span {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: -537px -85px; }
    #teaser li.closed.black span {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: -537px -75px; }
    #teaser li .teaser {
      float: left;
      position: relative; }
      #teaser li .teaser .teaser_link {
        display: block; }
    #teaser li a.teaser {
      float: left; }
    #teaser li a.link_area {
      display: block;
      background: transparent;
      position: absolute;
      top: 0;
      left: 0; }
      #teaser li a.link_area.appstore {
        width: 130px;
        height: 45px; }
    #teaser li .teaser.zwanzigzehn_teaser .appstore {
      left: 661px;
      top: 360px; }
    #teaser li .teaser.sport1_teaser .appstore {
      left: 45px;
      top: 356px; }
    #teaser li .teaser.hiring_teaser .link_area {
      left: 503px;
      top: 346px;
      height: 55px;
      width: 225px; }

#kw_intro {
  margin-top: 45px;
  padding-left: 10px;
  padding-right: 10px;
  color: #666;
  font-size: 15px;
  line-height: 22px; }
  #kw_intro .col1,
  #kw_intro .col2 {
    display: inline;
    display: inline-block;
    width: 445px;
    vertical-align: top; }
  #kw_intro .col1 {
    margin-right: 40px; }
  #kw_intro p strong {
    color: #666;
    font-weight: normal; }
  #kw_intro .who_we_are {
    text-indent: -999px;
    overflow: hidden;
    background: url('/images/who/sprite.png') no-repeat;
    height: 44px; }
  #kw_intro .col2 {
    text-align: right; }
    #kw_intro .col2 p {
      text-align: left; }
  #kw_intro .what_we_do_link {
    color: #000;
    padding-left: 15px;
    background-image: url(/images/layout/sprite.png);
    background-position: -530px 5px;
    background-repeat: no-repeat;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 14px; }
    #kw_intro .what_we_do_link:active {
      position: relative;
      top: 1px; }
    #kw_intro .what_we_do_link:hover {
      color: #cc6633; }
  #kw_intro em {
    font-weight: normal;
    font-style: italic; }

#teaser_projects {
  *display: inline-block;
  padding-left: 10px;
  border-top: 1px dashed #000;
  padding-top: 30px;
  margin-bottom: -3em; }
  #teaser_projects:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #teaser_projects ul li {
    float: left;
    margin-right: 20px;
    margin-bottom: 30px;
    width: 300px;
    position: relative;
    height: 246px; }
    #teaser_projects ul li.last_in_row {
      margin-right: 0; }
    #teaser_projects ul li .teaser {
      position: relative;
      display: block;
      text-decoration: none; }
      #teaser_projects ul li .teaser img {
        display: block;
        height: 160px;
        margin-bottom: 10px;
        position: relative;
        z-index: 1; }
      #teaser_projects ul li .teaser h1 {
        font-size: 16px;
        color: #000;
        text-transform: uppercase;
        text-decoration: none;
        font-weight: bold; }
      #teaser_projects ul li .teaser .hover {
        background: url("/images/what/sprite.png");
        position: absolute;
        left: 0;
        top: 0;
        height: 160px;
        width: 300px;
        cursor: pointer;
        display: none;
        z-index: 3; }
      #teaser_projects ul li .teaser .category_icon {
        display: block;
        position: absolute;
        right: 0;
        top: 0;
        width: 23px;
        height: 37px;
        background: url('/images/what/sprite.png') no-repeat;
        z-index: 5; }
    #teaser_projects ul li.iphone .teaser .category_icon {
      background-position: 0 -200px; }
    #teaser_projects ul li p {
      color: #666;
      font-size: 11px;
      margin-top: 8px;
      line-height: 1.3; }

#other_projects {
  padding-left: 10px;
  padding-right: 10px;
  border-top: 1px dashed #000;
  margin-top: 40px;
  padding-top: 30px; }
  #other_projects h1 {
    background-image: url('/images/what/sprite.png');
    background-repeat: no-repeat;
    background-position: 0 -160px;
    height: 20px;
    text-indent: -9999px;
    overflow: hidden;
    margin-bottom: 10px; }
  #other_projects ul li {
    width: 99px;
    display: inline;
    display: inline-block;
    margin-right: 20px;
    margin-bottom: 5px;
    height: 48px;
    text-align: center; }
    #other_projects ul li img {
      vertical-align: middle; }


#project_detail {
  *display: inline-block; }
  #project_detail:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #project_detail .header h1 {
    background: #CC6633;
    color: #FFF;
    height: 103px;
    line-height: 100px;
    margin-bottom: 30px;
    font-size: 75px;
    text-transform: uppercase;
    text-indent: -9999px;
    margin-bottom: 35px; }
  #project_detail .project_description {
    float: right;
    *display: inline-block;
    padding-right: 10px;
    width: 420px;
    padding-left: 40px;
    padding-top: 8px;
    font-size: 15px;
    line-height: 1.45; }
    #project_detail .project_description:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #project_detail .project_description h2 {
      font-size: 17px; }
    #project_detail .project_description .details {
      color: #666;
      margin-bottom: 20px; }
      #project_detail .project_description .details p {
        margin-top: 1em; }
      #project_detail .project_description .details a {
        line-height: 1.9; }
    #project_detail .project_description .project_link,
    #project_detail .project_description .details a {
      background: url('/images/icons/arrow_right_white.png') no-repeat #000 5px center;
      color: #FFF;
      padding: 3px 8px 3px 20px;
      text-decoration: none;
      font-size: 14px;
      font-weight: bold; }
      #project_detail .project_description .project_link:active,
      #project_detail .project_description .details a:active {
        position: relative;
        top: 1px; }
      #project_detail .project_description .project_link:hover,
      #project_detail .project_description .details a:hover {
        background-color: #CC6600; }
    #project_detail .project_description .project_link {
      float: left;
      margin-bottom: 16px; }
      #project_detail .project_description .project_link.upcase {
        text-transform: uppercase;
        font-size: 12px; }
    #project_detail .project_description .option_links {
      clear: left;
      padding-top: 20px; }
      #project_detail .project_description .option_links .back_to_projects,
      #project_detail .project_description .option_links .next_project {
        background-image: url('/images/what/project_sprite.png');
        background-repeat: no-repeat;
        background-position: left -40px;
        overflow: hidden;
        text-indent: -999em;
        display: block;
        width: 180px;
        margin-left: 6px;
        opacity: .5; }
        #project_detail .project_description .option_links .back_to_projects:hover,
        #project_detail .project_description .option_links .next_project:hover {
          opacity: 1; }
      #project_detail .project_description .option_links .next_project {
        float: right;
        background-position: left -60px;
        width: 118px; }
  #project_detail .project_infos {
    float: left;
    width: 480px; }
    #project_detail .project_infos #project_slide {
      *display: inline-block; }
      #project_detail .project_infos #project_slide:after {
        content: " ";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden; }
      #project_detail .project_infos #project_slide #images_container {
        background: url('/images/what/project_sprite.png') no-repeat -240px 0; }
        .js #project_detail .project_infos #project_slide #images_container {
          position: relative;
          overflow: hidden;
          width: 480px;
          height: 322px; }
        #project_detail .project_infos #project_slide #images_container #images {
          *display: inline-block;
          margin-bottom: 10px;
          background: transparent;
          white-space: nowrap; }
          #project_detail .project_infos #project_slide #images_container #images:after {
            content: " ";
            display: block;
            height: 0;
            clear: both;
            visibility: hidden; }
          .js #project_detail .project_infos #project_slide #images_container #images {
            position: absolute;
            top: 0px;
            left: 0px;
            margin-bottom: 0px; }
          #project_detail .project_infos #project_slide #images_container #images li {
            *display: inline-block;
            width: 480px;
            margin-top: 20px;
            background-color: transparent; }
            #project_detail .project_infos #project_slide #images_container #images li:after {
              content: " ";
              display: block;
              height: 0;
              clear: both;
              visibility: hidden; }
            #project_detail .project_infos #project_slide #images_container #images li:first-child {
              margin-top: 0px; }
            .js #project_detail .project_infos #project_slide #images_container #images li {
              display: inline;
              display: inline-block;
              margin-top: 0px; }
            #project_detail .project_infos #project_slide #images_container #images li a,
            #project_detail .project_infos #project_slide #images_container #images li img {
              display: block; }
            #project_detail .project_infos #project_slide #images_container #images li img {
              width: 480px;
              height: 322px; }
      #project_detail .project_infos #project_slide #slide_navigation {
        *display: inline-block;
        float: right;
        text-align: right;
        margin-top: 15px; }
        #project_detail .project_infos #project_slide #slide_navigation:after {
          content: " ";
          display: block;
          height: 0;
          clear: both;
          visibility: hidden; }
        #project_detail .project_infos #project_slide #slide_navigation li {
          float: left;
          padding-left: 4px; }
          #project_detail .project_infos #project_slide #slide_navigation li a {
            display: block;
            font-size: 9px;
            background: #BEBEBE;
            color: #BEBEBE;
            width: 12px;
            height: 12px;
            text-indent: 999em;
            overflow: hidden; }
          #project_detail .project_infos #project_slide #slide_navigation li.active a,
          #project_detail .project_infos #project_slide #slide_navigation li a:hover {
            color: #000;
            background-color: #000; }
    #project_detail .project_infos #technologies,
    #project_detail .project_infos #contact_partner,
    #project_detail .project_infos #project_testimonial {
      padding-left: 10px;
      border-top: 1px dashed #000;
      margin-top: 30px;
      padding-top: 10px; }
      #project_detail .project_infos #technologies h1,
      #project_detail .project_infos #contact_partner h1,
      #project_detail .project_infos #project_testimonial h1 {
        background-image: url('/images/what/project_sprite.png');
        background-repeat: no-repeat;
        height: 20px;
        text-indent: -9999px; }
    #project_detail .project_infos #technologies p {
      color: #666;
      font-size: 13px;
      margin-top: 10px;
      line-height: 1.4; }
    #project_detail .project_infos #contact_partner {
      *display: inline-block; }
      #project_detail .project_infos #contact_partner:after {
        content: " ";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden; }
      #project_detail .project_infos #contact_partner .photo {
        float: left;
        background-color: #EEE;
        padding: 4px;
        margin-right: 14px; }
        #project_detail .project_infos #contact_partner .photo img {
          display: block;
          background: #FFF;
          padding: 2px; }
      #project_detail .project_infos #contact_partner .details {
        float: left;
        width: 135px;
        padding-top: 2px; }
        #project_detail .project_infos #contact_partner .details h2 {
          font-size: 12px;
          font-weight: normal; }
        #project_detail .project_infos #contact_partner .details .link_list {
          text-transform: uppercase; }
      #project_detail .project_infos #contact_partner h1 {
        margin-bottom: 10px;
        background-position: left -20px; }
    #project_detail .project_infos #project_testimonial h1 {
      background-position: left -80px;
      margin-bottom: 10px; }
    #project_detail .project_infos #project_testimonial blockquote {
      font-size: 13px;
      color: #666;
      line-height: 1.4; }
    #project_detail .project_infos #project_testimonial .project_testimonial_author {
      font-size: 11px;
      text-transform: uppercase;
      margin-top: 10px;
      text-align: right; }

#where {
  *display: inline-block;
  padding-right: 10px;
  padding-left: 10px;
  border-top: 1px dashed #000;
  border-bottom: 1px dashed #000;
  padding-top: 30px;
  padding-bottom: 30px; }
  #where:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #where #contact_info {
    float: right;
    margin-top: 50px;
    width: 450px; }
    #where #contact_info h1 {
      background-image: url('/images/where/sprite.png');
      background-repeat: no-repeat;
      background-position: -415px 0;
      height: 30px;
      text-indent: -9999px;
      margin-bottom: 20px; }
    #where #contact_info #address {
      font-size: 26px;
      font-style: normal;
      margin-bottom: 30px; }
      #where #contact_info #address em {
        font-size: 30px;
        font-weight: normal;
        font-style: normal; }
      #where #contact_info #address .pdf_link {
        font-size: 16px; }
      #where #contact_info #address small {
        font-size: 12px;
        color: #666; }
    #where #contact_info #contact_data {
      line-height: 1.6; }
      #where #contact_info #contact_data dt {
        float: left;
        clear: both;
        font-weight: bold;
        width: 80px; }
      #where #contact_info #contact_data dd a {
        background: #000;
        font-size: 14px;
        font-weight: bold;
        color: #FFF;
        padding: 3px 8px;
        text-decoration: none; }
        #where #contact_info #contact_data dd a:active {
          position: relative;
          top: 1px; }
        #where #contact_info #contact_data dd a:hover {
          background-color: #CC6600; }
  #where #map {
    background-image: url('/images/where/sprite.png');
    background-repeat: no-repeat;
    width: 403px;
    height: 408px; }

.cols_with_border {
  *display: inline-block;
  background: url('/images/layout/vertical_border.png') repeat-y center 0;
  padding-top: 30px;
  border-bottom: 1px dashed #000;
  padding-bottom: 30px;
  margin-bottom: 30px; }
  .cols_with_border:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

#contact_form,
#flickr_stream {
  float: left;
  width: 450px; }

#contact_form h1,
#flickr_stream h1 a {
  background-image: url('/images/where/sprite.png');
  background-repeat: no-repeat;
  display: block;
  background-position: -414px -91px;
  height: 20px;
  width: 124px;
  text-indent: -9999px;
  margin-bottom: 20px;
  overflow: hidden; }
  #contact_form h1:active,
  #flickr_stream h1 a:active {
    position: relative;
    top: 1px; }

#contact_form p.intro,
#newsletter_form p.intro {
  color: #666;
  font-size: 13px;
  margin-bottom: 15px;
  line-height: 1.4; }

#contact_form,
#newsletter_form {
  position: relative; }
  #contact_form ul.form_list li,
  #newsletter_form ul.form_list li {
    position: relative; }
    #contact_form ul.form_list li .form_hint,
    #contact_form ul.form_list li .form_error,
    #newsletter_form ul.form_list li .form_hint,
    #newsletter_form ul.form_list li .form_error {
      display: none;
      position: absolute;
      left: 0;
      background: #000;
      color: #FFF;
      top: -15px;
      font-size: 12px;
      height: 18px;
      line-height: 17px;
      padding: 0 7px;
      text-transform: uppercase; }
      .no-js #contact_form ul.form_list li .form_hint,
      .no-js #contact_form ul.form_list li .form_error,
      .no-js #newsletter_form ul.form_list li .form_hint,
      .no-js #newsletter_form ul.form_list li .form_error {
        display: block; }
    #contact_form ul.form_list li .form_error,
    #newsletter_form ul.form_list li .form_error {
      background-color: #D61E21;
      display: none; }
    #contact_form ul.form_list li.with_error .form_error,
    #newsletter_form ul.form_list li.with_error .form_error {
      display: block; }
    #contact_form ul.form_list li.with_error .form_hint,
    #newsletter_form ul.form_list li.with_error .form_hint {
      display: none; }
    #contact_form ul.form_list li button,
    #newsletter_form ul.form_list li button {
      float: left;
      font-family: Arial, Tahoma, Verdana, sans-serif;
      text-transform: uppercase;
      background-color: #000;
      width: 140px;
      color: #FFF;
      font-size: 12px;
      font-weight: bold;
      padding-bottom: 2px;
      height: 24px; }
      #contact_form ul.form_list li button:active,
      #newsletter_form ul.form_list li button:active {
        position: relative;
        top: 1px; }
      #contact_form ul.form_list li button:hover,
      #newsletter_form ul.form_list li button:hover {
        background-color: #CC6600; }
      #contact_form ul.form_list li button[disabled],
      #newsletter_form ul.form_list li button[disabled] {
        opacity: 0.3;
        cursor: default;
        text-indent: 0; }
    #contact_form ul.form_list li .spinner,
    #newsletter_form ul.form_list li .spinner {
      padding-top: 4px;
      margin-left: 10px; }

#contact_form {
  padding-left: 10px;
  padding-right: 20px; }
  #contact_form p.intro {
    margin-bottom: 20px; }
  #contact_form #contact_success {
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
    filter: alpha(opacity=90);
    opacity: 0.9;
    background: #FFF;
    position: absolute;
    top: 20px;
    left: -10px;
    width: 365px;
    height: 66%;
    padding-top: 100px;
    padding-left: 100px;
    z-index: 10; }
    #contact_form #contact_success div {
      float: left;
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: left -263px;
      width: 37px;
      height: 37px;
      margin-right: 10px; }
    #contact_form #contact_success .close {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: -425px -269px;
      position: absolute;
      right: 112px;
      top: 74px;
      width: 16px;
      height: 16px; }
      #contact_form #contact_success .close:hover {
        background-position: -425px -289px; }
    #contact_form #contact_success h4,
    #contact_form #contact_success p {
      padding-left: 50px; }
    #contact_form #contact_success h4 {
      text-transform: uppercase;
      font-size: 20px;
      padding-top: 3px;
      margin-top: -10px;
      margin-bottom: 5px; }
  #contact_form ul.form_list li {
    *display: inline-block;
    margin-bottom: 20px; }
    #contact_form ul.form_list li:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #contact_form ul.form_list li label {
      float: left;
      width: 42px;
      padding-right: 25px;
      font-size: 14px;
      line-height: 1.4; }
      #contact_form ul.form_list li label span {
        float: right;
        background: url(/images/layout/sprite.png);
        background-position: -530px 8px;
        background-repeat: no-repeat;
        width: 9px;
        height: 14px; }
    #contact_form ul.form_list li textarea,
    #contact_form ul.form_list li input {
      width: 320px; }
    #contact_form ul.form_list li textarea {
      margin-top: 0;
      height: 130px; }
    #contact_form ul.form_list li .form_hint,
    #contact_form ul.form_list li .form_error {
      left: 67px; }
    #contact_form ul.form_list li.buttons {
      padding-left: 67px;
      margin-bottom: 0; }

#flickr_stream {
  padding-right: 10px;
  padding-left: 20px;
  overflow: hidden; }
  #flickr_stream h1 a {
    background-position: -414px -32px;
    width: 124px;
    margin-bottom: 5px; }
  #flickr_stream ul {
    *display: inline-block; }
    #flickr_stream ul:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #flickr_stream ul li {
      float: left;
      margin-right: 18px;
      margin-top: 15px; }
      #flickr_stream ul li.first {
        margin-right: 0px; }
      #flickr_stream ul li a:active {
        position: relative;
        top: 1px; }
      #flickr_stream ul li a,
      #flickr_stream ul li img {
        display: block;
        color: #FFF;
        background: #000; }

#newsletter_form {
  padding-left: 10px;
  padding-right: 10px; }
  #newsletter_form h1 {
    background-image: url('/images/where/sprite.png');
    background-repeat: no-repeat;
    background-position: -414px -60px;
    height: 20px;
    width: 154px;
    text-indent: -9999px;
    margin-bottom: 20px;
    overflow: hidden; }
  #newsletter_form label {
    display: none; }
  #newsletter_form ul {
    *display: inline-block; }
    #newsletter_form ul:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #newsletter_form ul li {
      float: left;
      width: 256px;
      padding-right: 10px;
      min-height: 1px; }
    #newsletter_form ul li.buttons {
      padding-right: 0;
      width: auto; }
      #newsletter_form ul li.buttons img.spinner {
        position: absolute;
        right: -26px; }
  #newsletter_form #newsletter_success {
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
    filter: alpha(opacity=90);
    opacity: 0.9;
    background: #FFF;
    position: absolute;
    top: 40px;
    left: 0;
    width: 760px;
    height: 40px;
    padding-top: 73px;
    padding-left: 190px;
    text-transform: uppercase;
    z-index: 2; }
    #newsletter_form #newsletter_success div {
      float: left;
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: left -263px;
      width: 37px;
      height: 37px;
      margin-right: 10px;
      position: relative;
      top: -15px; }
    #newsletter_form #newsletter_success .close {
      display: block;
      background-image: url(/images/layout/sprite.png);
      background-repeat: no-repeat;
      background-color: transparent;
      text-indent: -9999px;
      outline: none;
      background-position: -425px -269px;
      position: absolute;
      right: 185px;
      top: 53px;
      width: 16px;
      height: 16px; }
      #newsletter_form #newsletter_success .close:hover {
        background-position: -425px -289px; }
  #newsletter_form ul.error_list .newsletter_errors {
    text-transform: uppercase;
    background: #D61E21;
    color: #FFF;
    font-size: 14px;
    padding: 4px 6px;
    margin-bottom: 10px;
    line-height: 1.4; }
  #newsletter_form ul.form_list li input {
    font-size: 12px;
    width: 237px; }

#press #press_headline {
  background: #CC6633;
  color: #FFF;
  height: 103px;
  line-height: 100px;
  margin-bottom: 30px;
  font-size: 75px;
  text-transform: uppercase;
  text-indent: -9999px;
  background-image: url('/images/press/sprite.png');
  background-repeat: no-repeat; }
#press #presskits {
  float: left;
  padding-left: 10px;
  width: 640px; }
  #press #presskits li.kit {
    *display: inline-block;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #EEE; }
    #press #presskits li.kit:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #press #presskits li.kit .aside {
      float: left;
      width: 134px; }
      #press #presskits li.kit .aside h2 {
        font-size: 40px;
        font-weight: bold;
        font-style: italic;
        letter-spacing: -0.04em; }
      #press #presskits li.kit .aside .time {
        font-size: 12px;
        text-transform: uppercase; }
    #press #presskits li.kit .details {
      float: left;
      border-left: 1px solid #000;
      margin-right: 15px;
      padding-left: 20px;
      padding-top: 4px;
      padding: 4px 0 4px 20px;
      min-height: 55px;
      width: 375px; }
      #press #presskits li.kit .details h1 {
        font-size: 16px;
        font-weight: bold;
        margin-bottom: 10px; }
        #press #presskits li.kit .details h1 a {
          color: #000;
          text-decoration: none; }
          #press #presskits li.kit .details h1 a:active {
            position: relative;
            top: 1px; }
      #press #presskits li.kit .details .description {
        font-size: 12px;
        line-height: 1.45;
        color: #666666; }
    #press #presskits li.kit .download {
      background-image: url('/images/press/sprite.png');
      background-repeat: no-repeat;
      background-position: -224px -138px;
      display: block;
      overflow: hidden;
      padding-top: 38px;
      text-decoration: none;
      width: 67px; }
      #press #presskits li.kit .download:hover {
        background-position: -224px -136px; }
        #press #presskits li.kit .download:hover span {
          background-color: #333; }
      #press #presskits li.kit .download:active {
        margin-top: 0;
        background-position: -224px -134px; }
      #press #presskits li.kit .download span {
        background: #000;
        color: #FFF;
        display: block;
        font-size: 10px;
        padding: 4px 0;
        text-transform: uppercase;
        text-align: center; }
#press #press_sidebar {
  padding-right: 10px;
  float: right;
  width: 220px; }
  #press #press_sidebar .sidebar_item {
    *display: inline-block;
    margin-bottom: 35px; }
    #press #press_sidebar .sidebar_item:after {
      content: " ";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #press #press_sidebar .sidebar_item:last-child {
      margin-bottom: 0; }
    #press #press_sidebar .sidebar_item h1 {
      background-repeat: no-repeat;
      font-size: 14px;
      font-weight: bold;
      height: 20px;
      margin-bottom: 12px;
      text-indent: -9999px; }
  #press #press_sidebar #press_contact h1,
  #press #press_sidebar #company_infos h1,
  #press #press_sidebar #press_images h1,
  #press #press_sidebar #agency_contact h1 {
    background-image: url('/images/press/sprite.png');
    background-repeat: no-repeat;
    background-position: 0 -106px; }
  #press #press_sidebar #press_contact .photo {
    float: left;
    background-color: #EEE;
    padding: 4px;
    margin-right: 14px; }
    #press #press_sidebar #press_contact .photo img {
      display: block;
      background: #FFF;
      padding: 2px; }
  #press #press_sidebar #press_contact .details {
    float: left;
    width: 135px;
    padding-top: 2px; }
    #press #press_sidebar #press_contact .details h2 {
      font-size: 12px;
      font-weight: normal; }
    #press #press_sidebar #press_contact .details .link_list {
      text-transform: uppercase; }
  #press #press_sidebar #press_contact .details {
    width: 135px; }
  #press #press_sidebar #company_infos h1 {
    background-position: 0 -126px; }
  #press #press_sidebar #company_infos a {
    background: #000;
    color: #FFF;
    display: block;
    font-size: 10px;
    margin-top: 1px;
    padding: 6px 7px;
    text-decoration: none; }
    #press #press_sidebar #company_infos a:active {
      position: relative;
      top: 1px; }
    #press #press_sidebar #company_infos a:hover {
      background: #333; }
  #press #press_sidebar #press_images h1 {
    background-position: 0 -146px; }
  #press #press_sidebar #press_images ul li {
    float: left;
    margin-right: 10px; }
    #press #press_sidebar #press_images ul li.last_in_row {
      margin-right: 0; }
    #press #press_sidebar #press_images ul li a:active {
      position: relative;
      top: 1px; }
    #press #press_sidebar #press_images ul li a,
    #press #press_sidebar #press_images ul li img {
      display: block; }
    #press #press_sidebar #press_images ul li img:hover {
      opacity: 0.7; }
  #press #press_sidebar #agency_contact h1 {
    background-position: 0 -166px; }
  #press #press_sidebar #agency_contact .address {
    background-image: url('/images/press/sprite.png');
    background-repeat: no-repeat;
    background-position: -395px -108px;
    display: block;
    font-style: normal;
    padding-left: 80px; }
    #press #press_sidebar #agency_contact .address h2 a {
      background-image: url('/images/press/sprite.png');
      background-repeat: no-repeat;
      background-position: -250px -109px;
      overflow: hidden;
      display: block;
      text-indent: -9999px;
      height: 22px;
      width: 130px; }
      #press #press_sidebar #agency_contact .address h2 a:active {
        position: relative;
        top: 1px; }
    #press #press_sidebar #agency_contact .address h3 {
      margin-top: 7px;
      font-size: 12px;
      font-weight: normal; }

#imprint,
#terms {
  *display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  line-height: 1.4;
  padding-top: 25px;
  border-top: 1px dashed #000; }
  #imprint:after,
  #terms:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #imprint h1,
  #terms h1 {
    font-size: 24px;
    margin-bottom: 25px; }
  #imprint h2,
  #terms h2 {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 15px; }
  #imprint .left_col,
  #terms .left_col {
    float: left;
    width: 310px;
    margin-right: 15px; }
  #imprint .right_col,
  #terms .right_col {
    margin-left: 325px; }
  #imprint dt,
  #terms dt {
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 3px; }
  #imprint dd,
  #terms dd {
    font-size: 13px;
    margin-bottom: 20px;
    color: #666; }
    #imprint dd a,
    #terms dd a {
      background: #000;
      color: #FFF;
      text-decoration: none;
      padding: .2em .4em;
      font-weight: bold; }
      #imprint dd a:hover,
      #terms dd a:hover {
        background-color: #CC6600; }

#terms {
  line-height: 1.4;
  font-size: 11px; }
  #terms .agb_table {
    color: #666; }
    #terms .agb_table td {
      padding-top: 10px;
      padding-right: 10px; }
      #terms .agb_table td ul {
        margin: 15px 0; }
        #terms .agb_table td ul li {
          background: url('/images/icons/arrow_right.png') no-repeat left 5px;
          margin-bottom: 5px;
          padding-left: 20px; }
    #terms .agb_table .headline {
      color: #000;
      font-weight: bold;
      font-size: 15px; }
      #terms .agb_table .headline td {
        padding-top: 30px; }
    #terms .agb_table tr.single_headline td {
      padding-top: 30px; }
    #terms .agb_table tr.single_headline span.headline {
      display: block;
      padding-bottom: 15px;
      font-size: 15px; }
