html, body { margin: 0; padding: 0;}
body {
  font: 14px/24px Helvetica, Arial, Verdana, sans-serif;
  color: #303030;
  text-align: center;
  background: #e0e0e0;
}
a { text-decoration: underline; color: #6c9400; }
a:hover { text-decoration: none; }
.clearfix:after { content: "."; display: block;height: 0;clear: both;font-size: 1px;line-height: 1px;visibility: hidden;}
.clearfix { zoom:1; min-height: 10px;}
* html .clearfix { height: 10px; }

img { border: none;}
form { margin: 0; padding: 0; }
h1, h2, h3 {
  margin: 0;padding: 0px;
  font: normal 30px/35px Arial, Verdana, sans-serif;
}
h1 { padding-bottom: 10px; }
h2 { font-weight: bold; font-size: 18px; line-height: 22px; padding: 20px 0 10px;}
p { margin: 0; padding: 5px 0 5px 0; }
ul, ol { margin: 0; padding: 6px 0 6px 30px; }
ul { list-style-type: disc; }
ul li, ol li { margin: 0; padding: 3px 0 3px 0px; }


.green-link { background: #ddff7f; text-decoration: none; }
.green-link:hover { text-decoration: underline;}

.floatleft { float: left; }
.floatright { float: right;}
.centertext { text-align: center;}

.btn {
  height: 38px; border: none; color: white !important; font: normal bold 14px/38px Arial, Tahoma, Verdana, sans-serif !important; text-decoration: none !important;
  background: #90c10a url('../images/btn.gif') repeat-x top left;
  position:relative;border-radius: 4px;-moz-border-radius: 4px;-webkit-border-radius: 4px;
  display: -moz-inline-stack;display: inline-block;zoom: 1;*display: inline; cursor: pointer;
  vertical-align: middle;text-align: center;outline: 0;margin: 0 !important;padding: 0 40px !important;
  box-shadow: 1px 1px 2px #ddd;-moz-box-shadow: 1px 2px 3px #aaa;-webkit-box-shadow: 1px 1px 2px #ddd;
}

.wrap { width: 950px; margin: 0 auto; text-align: left;}

/* header */
  #header-holder { background: #2b2b2b url('../images/header.gif') repeat top left; color: white; }
    #header { position: relative;}
      #header a { color: #a9e211; text-decoration: none;}
      #header a:hover { text-decoration: underline;}

      /* logo */
        #logo { width: 280px; height: 45px; padding: 30px 0 25px;}
          #logo a { display: block; outline: 0; }
            #logo img { display: block;}

      /* header-inner */
        .header-inner { font-size: 28px; line-height: 30px; width: 610px; padding-bottom: 40px; }
        .header-inner, .header-inner h1, .header-inner h2 { font: 28px/30px 'Helvetica Neue', Helvetica, Arial, Verdana, sans-serif; color: white; font-weight: normal; }
          .header-inner h1, .header-inner h2 { padding: 0; margin: 0; }

      /* langmenu */
        #langmenu { margin: 0; padding: 0; list-style-type: none; position: absolute; top: 25px; right: 0;}
        #loginmenu { margin: 0; padding: 0; list-style-type: none; position: absolute; top: 45px; right: 0;}
          #langmenu li, #loginmenu li { display: inline; padding-left: 12px; font-size: 11px; line-height: 18px; }
            #langmenu a, #loginmenu a { white-space: nowrap; color:#7a7a7a; }
            #langmenu a.active, #loginmenu a.active { color: white}

      /* search */
        #search { position: absolute; bottom: 25px; right: 0;}
        .front #search { bottom: 47px; }
          #search div { width: 200px; padding: 3px 0 3px 5px; background: white; }
            #search .textbox { float: left; color: #303030; font: 12px/14px Helvetica, Arial, Verdana, sans-serif; outline: 0; border: none; background: none; width: 140px;  }
            #search .submit { float: right; color: #303030; font: 12px/14px Helvetica, Arial, Verdana, sans-serif; padding:0; margin: 0; width: 50px; border: none; background: none; }


          .front #search div { width: 275px; padding: 6px 0 6px 5px; }
          .front #search .textbox { font: 16px/18px Helvetica, Arial, Verdana, sans-serif; width: 205px;  }
          .front #search .submit { font: 16px/18px Helvetica, Arial, Verdana, sans-serif; width: 70px; }


      /* mainmenu */
        #mainmenu { margin: 0; padding: 0; list-style-type: none; background: white; }
          #mainmenu li { height: 29px; float: left; padding: 8px 10px 0; }
          #mainmenu li.active { background: url('../images/header.gif') repeat top left;}
            #mainmenu a { display: block; float: left; font-size: 14px; color: #333333; white-space: nowrap; text-decoration: none;}
            #mainmenu a:hover { border-bottom: 6px solid #a9e211; text-decoration: none;}
            #mainmenu .active a { font-weight: bold; color: #a9e211;}
            #mainmenu .active a:hover { border-bottom: none;}


/* container */
  #container-holder { background: #ffffff;}
    #container { padding: 35px 0 30px; }

      .front-left { float: left; width: 350px; min-height: 10px;}
      * html .front-left { height: 10px; }

      .front-center { float: left; width: 280px; padding: 0 20px; position: relative;}
        .front-center h2 { font-size: 14px; font-weight: bold; padding: 0; margin: 0; line-height: 18px;}
        .green-label { background: url('../images/green_label.gif') no-repeat; position: absolute; top: 15px; left: 17px; width: 7px; height: 19px;}

      .front-right { float: left; width: 280px; }
      * html .front-right { margin-right: -3px;}
        .front-right-top { padding-bottom: 10px;}
        .front-right-top a,.front-right-top img, .front-right-top a,.front-right-top img { display: block;}


/* textbox */
   #container .textbox { border: 1px solid #d4d4d4; background: white; font: 14px/15px Helvetica, Arial, Verdana, sans-serif; color: #303030; padding: 4px 5px; }

/* news */
  .news { margin: 0; padding: 0; list-style-type: none; color: #7faf00;}
    .news li { font-size: 12px; border-top: 1px solid #e8e8e8; padding: 4px 0;}
    .news li.first { font-size: 20px; border-top: none;}
    .news li.last { border-top: none;}
      .news a { color: #1e2616; font-size: 14px; text-decoration: none; }
      .news a:hover { text-decoration: underline;}
      .news .green-link { float: left; font-size: 12px;padding: 4px 5px;}

/* yellowbox */
  .yellow-box { background: #fbffbf; border-right: 1px solid #e7e7e7; border-left: 1px solid #e7e7e7; border-bottom: 1px solid #b3b3b3; color: #1e2616;}
  .front-center .yellow-box { height: 216px; overflow: hidden; padding: 15px 15px 0;}

/* events */
  .events {margin: 0; padding: 5px 0 0; list-style-type: none;}
    .events li { color: #7faf00; font-size: 12px; line-height: 14px; padding: 5px 0;}
    .events li.last { padding-top: 10px;}
      .events a { color: #1e2616; font-size: 14px; text-decoration: none;}
      .events a:hover { text-decoration: underline; }
      .events .green-link { float: left; font-size: 12px;padding: 4px 5px;}

/* categories */
  #categories { padding: 0px 0 20px; margin: 0; list-style-type: none; height: 95px; overflow: hidden; }
    #categories li { float: left; height:95px; width: 94px; padding: 0 1px 0 0; margin: 0; background: url('../images/categories_sep.gif') no-repeat bottom right;}
    #categories .last { margin-right: -3px;}
      #categories a { display: block; height: 95px; width: 94px; color: #737373; text-decoration: none; position: relative; }
      .cat-1 { background: url('../images/cat1.gif') no-repeat -75px 0; }
      #categories a.cat-1:hover { background-position: 25px 0; }
      .cat-2 { background: url('../images/cat2.gif') no-repeat -79px 0; }
      #categories a.cat-2:hover { background-position: 21px 0; }
      .cat-3 { background: url('../images/cat3.gif') no-repeat -79px 0; }
      #categories a.cat-3:hover { background-position: 23px 0; }
      .cat-4 { background: url('../images/cat4.gif') no-repeat -77px 0; }
      #categories a.cat-4:hover { background-position: 23px 0; }
      .cat-5 { background: url('../images/cat5.gif') no-repeat -63px 0; }
      #categories a.cat-5:hover { background-position: 37px 0; }
      .cat-6 { background: url('../images/cat6.gif') no-repeat -68px 0; }
      #categories a.cat-6:hover { background-position: 32px 0; }
      .cat-7 { background: url('../images/cat7.gif') no-repeat -80px 0; }
      #categories a.cat-7:hover { background-position: 20px 0; }
      .cat-8 { background: url('../images/cat8.gif') no-repeat -85px 0; }
      #categories a.cat-8:hover { background-position: 15px 0; }
      .cat-9 { background: url('../images/cat9.gif') no-repeat -81px 0; }
      #categories a.cat-9:hover { background-position: 19px 0; }
      .cat-10 { background: url('../images/cat10.gif') no-repeat -76px 0; }
      #categories a.cat-10:hover { background-position: 24px 0; }
        #categories span { display: block; width: 94px; padding: 0 0px; text-align: center; font-size: 14px; line-height: 15px; position: absolute; bottom: 0; left: 0;}

/* gategory-label */
  .category-label { display: block; width: 85px; color: #333333; text-decoration: none; position: relative; background-position: 0 0;  }
    .col-1 .cat-1 { height: 85px; }
    .col-1 .cat-2 { height: 85px; }
    .col-1 .cat-3 { height: 70px; }
    .col-1 .cat-4 { height: 70px; }
    .col-1 .cat-5 { height: 80px; }
    .col-1 .cat-6 { height: 85px; }
    .col-1 .cat-7 { height: 75px; }
    .col-1 .cat-8 { height: 65px; }
    .col-1 .cat-9 { height: 70px; }
    .col-1 .cat-10 { height: 65px; }

    .category-name { font-size: 16px; line-height: 16px; font-weight: bold; }

/* four-columns */
  .four-columns { font-size: 12px; line-height: 18px;}
    .four-columns .col-1 { float: left; min-height: 10px; width: 85px; padding-right: 10px;}
    * html .four-columns .col-1 { height: 10px; }
    .four-columns .col-2 { float: left; min-height: 10px; width: 170px; padding-right: 25px; font-size: 12px;}
    * html .four-columns .col-2 { height: 10px;}
    .four-columns .col-3 { float: left; min-height: 10px; width: 220px; padding-right: 10px;}
    * html .four-columns .col-3 { height: 10px;}
    .four-columns .col-4 { float: left; min-height: 10px; width: 430px;}
    * html .four-columns .col-4 { margin-right: -3px; }


/* person */
  .person-image { padding-bottom: 10px;}
    .person-image img { display: block; }
  .person-name { padding: 5px 0;}
    .person-name h1 { line-height: 30px; padding: 0; margin: 0; }
  .person-status { color: #89b80a; font-weight: bold; padding-bottom: 5px;}

  table.person-info { border-collapse: collapse; border: none; border-top: 1px solid #e7e7e7; margin: 5px 0 0; width: 100%;}
    table.person-info td { padding: 3px 5px; vertical-align: top;  }
    table.person-info td.first { padding-left: 0; width: 75px; }

  .person-projects { padding: 15px 0 0;}
    .person-projects h2 { padding: 0 0 5px; margin: 0; }
      .person-projects ul { padding: 0 0 0 20px; margin: 0;}

/* portfolio */
  .portfolio-big { margin-left: 11px; width: 418px; position: relative;}
    #portfolio-image img { width: 418px; display: block;}
    #portfolio-desc-holder { position: absolute; width: 418px; background: url('../images/overlay.png') repeat; bottom: 0; left: 0; }
      #portfolio-desc { font-size: 12px; color: #333333; padding: 5px 10px;}

  .portfolio-thumbs { overflow: hidden; }
    .portfolio-thumb { width: 96px; height: 96px; overflow: hidden; float: left; padding: 11px 0 0 11px;}
      .portfolio-thumb .image, .portfolio-thumb .desc {display: none;}
      .portfolio-thumb a, .portfolio-thumb img { display: block; height: 96px; width: 96px;}

/* sidemenu */
  .sidemenu { margin: 0; padding: 5px 0 0; list-style-type: none;}
    .sidemenu li { margin: ; padding: 0; display: block; min-height: 1px; font-size: 14px; line-height: 14px; }
    * html .sidemenu li { height: 1px; }
      .sidemenu a { display: block; min-height: 1px; color: #333333; text-decoration: none;}
      * html .sidemenu a { height: 1px;}
      .sidemenu a:hover { text-decoration: underline;}
        .sidemenu span { display: block; min-height: 1px; height: 22px; padding: 7px 0 0 13px; }
        * html .sidemenu { height: 1px; }

      .sidemenu .active a { background: url('../images/sidemenu_a.gif') repeat-x top left; color: white; font-weight: bold; }
        .sidemenu .active span { background: url('../images/sidemenu_a_arr.gif') no-repeat top right; }

/* sidebar */
  #sidebar { float: left; width: 230px; padding: 0 50px 0 0; }
  #sidebar-right { float: left; width: 230px; padding: 0 30px 0 20px; }
  #sidebar h2, #sidebar-right h2 { font: normal 30px/35px Arial, Verdana, sans-serif;  font-weight: normal; padding: 0 0 5px 0; }
  #sidebar h3, #sidebar-right h3 { font-weight: bold; font-size: 18px; line-height: 22px; border-bottom: 1px solid #e7e7e7; padding: 10px 0 5px 13px;}

    #sidebar .border-bottom, #sidebar-right .border-bottom { border-bottom: 1px solid #cccccc; padding-bottom: 10px; margin-bottom: 10px;}

/* content */
  #content { float: left; width: 670px;}
  * html #content { margin-right: -3px; }

/* competition-listing */
  #competition-listing { padding-top: 10px;}
    .competition-sorting { border-top: 1px solid #e7e7e7; padding: 10px 0;}
      .competition-sorting .floatleft { padding-right: 10px;}
      .competition-sorting .label2 { padding-left: 20px;}
      .competition-sorting select { vertical-align: middle;}
    .competition-row { border-top: 1px solid #e7e7e7; padding: 14px 0;}
    .competition-row .item { float: left; width: 210px; padding-right: 20px; font-size: 12px; line-height: 18px;}
    .competition-row .item-last {padding-right: 0;}
    * html .competition-row .item-last { margin-right: -3px; }
      .competition-row .image { width: 210px; height: 150px; overflow: hidden;}
      .competition-row .title { font-size: 14px; line-height: 18px; font-weight: bold; padding: 10px 0 5px; }
        .competition-row a { color: #333; text-decoration: none; }
        .competition-row a:hover { text-decoration: underline;}

/* competition-form */
  #edl-form { background: #f0f0f0; padding: 25px 25px 0px 25px; border-bottom: 1px solid #d9d9d9; }
    #edl-form h2 { padding: 0 0 15px;}
    #edl-form fieldset { border: none; border-top: 1px solid #dfdfdf; padding: 10px 0 20px; margin: 0;}
    #edl-form fieldset.author { padding-bottom: 0px; }
    #edl-form fieldset.authors { border-top: none; border-bottom: 1px solid #dfdfdf; }
    form.formtastic fieldset.authors ol li li label { line-height: 24px; padding-top: 2px; }
    #edl-form fieldset fieldset { border-top: none; padding: 0; }
    #edl-form legend { font-size: 14px; font-weight: bold; padding: 0 10px 0 0; margin: 0; }
    #edl-form fieldset fieldset legend { font-size: 14px; line-height: 24px; font-weight: normal; padding: 0 10px 0 0; margin: 0; }

    #edl-form .col-1 { float: left; padding-right: 40px; width: 180px; }
    #edl-form .col-2 { float: left; padding-right: 40px; width: 180px }
    #edl-form .col-3 { float: left; padding-right: 0; width: 180px; }
    * html #edl-form .col-3 { margin-right: -3px; }

    #edl-form .col-1 .textbox, #edl-form .col-2 .textbox, #edl-form .col-3 .textbox { width: 168px;}
    #edl-form .col-left .textbox, #edl-form .col-right .textbox { width: 278px;}

    #edl-form .col-left { float: left; width: 290px; padding-right: 40px;}
    #edl-form .col-right { float: left; width: 290px; }
    * html #edl-form .col-right { margin-right: -3px; }

    .competition-images { background: #e6e6e6; padding: 15px; border-bottom: 1px solid #cccccc; }
      .competition-images .image { border: 1px solid #d4d4d4; height: 96px; width: 96px; margin-right: 15px; float: left; background: #e5e5e5 url('../images/noimage.gif') no-repeat center center;}

    .file-add { padding-top: 5px; }
      .file-add img { cursor: pointer; }

    #edl-form .submit-next { font: normal 14px/40px Arial, Tahoma, Verdana, sans-serif; float: left; padding-left: 20px; }
      #edl-form .submit-next a  { text-decoration: underline; }
      #edl-form .submit-next a:hover { text-decoration: none; }

    fieldset.project-commit li.commit { float: left; padding-left: 80px; }

/* work */
  .work {}
    .work h2 { padding-top: 0;}
    .work .author { padding-top: 10px;}
    .work .author span, .work .category span { color: #808080; }

  .work-objects { border-bottom: 1px solid #e7e7e7; }
    .work-obj { padding-bottom: 30px;}

/* rss-button */
  .rss-button { font-size: 14px; font-weight: bold; display: block; height: 41px; background: url('../images/rss_btn.gif') 0 -82px repeat-x; color: white; text-decoration: none; }
    .rss-button .icon { display: block; height: 41px; background: url('../images/rss_btn.gif') 8px 0 no-repeat;}
      .rss-button .arrow { display: block; height: 33px; padding: 8px 0 0 45px; background: url('../images/rss_btn.gif') right -41px no-repeat;}

/* news-block */
  .news-block { border-top: 1px solid #cccccc; padding: 15px 0; }
  .news-block-first { border-top: none; padding: 0 0 15px;}
    .news-block h2 { padding: 0 0 10px;}
      .news-block h2 a { color: #333; text-decoration: none;}
      .news-block h2 a:hover { text-decoration: underline;}
      .news-block .date { color: #7fab0d; font-weight: normal;}
      .news-block .read-more { white-space: nowrap; }

/* footer */
  #footer { padding: 15px 0;}
    .footer-left { float: left; width: 300px; padding: 5px 20px 0 75px; background: url('../images/logo_footer.gif') no-repeat; min-height: 18px; font-size: 12px; line-height: 18px;}
    * html .footer-left { height: 18px;}
      .footer-left a { color: #333333; position: relative; }
    .footer-center { float: right; min-width:100px;}
      .footer-center ul {margin: 0;padding: 0; list-style-type: none; white-space: nowrap; float: left;}
        .footer-center li { float: left; border-left: 1px solid #afafaf; float: left; padding: 0 15px; white-space: nowrap; }
        .footer-center ul li:first-child { border-left: none; }
          .footer-center li img { display: block;}
    .footer-right { float: right; padding-left: 10px; width: 90px;}
      .footer-right .button { display: block; background: #f5f5f5; height: 25px; padding: 7px 14px 0; text-align: center; color: #333333; text-decoration: none; font-size: 12px;}
      .footer-right .button:hover { text-decoration: underline;}

/* paddings and margins */
  .pad-5-0 { padding: 5px 0;}
  .pad-10-0 { padding: 10px 0;}
  .pad-15-0-5 { padding: 15px 0 5px;}
  .pad-20-0-0 { padding: 20px 0 0;}

/* projects sidebar */
    .project_item { float: left; width: 230px;}
    .project_actions { float: right; padding-left: 10px; font-size: 12px; }
      .assets_gallery div.links { font-size: 16px; padding-top: 15px; }
      .assets_gallery div.links img { padding-bottom: 4px; vertical-align: bottom; }
      div.btn a { color: white !important; font: normal bold 14px/38px Arial, Tahoma, Verdana, sans-serif !important; text-decoration: none !important; }
      div.btn a:hover { text-decoration: none !important; }

/* formtastic forms */
  form.entry, form.user, form.project, form.signup {border: none;}
  form.formtastic fieldset ol li fieldset legend.label label, form.formtastic fieldset ol li label { float: none; width: auto; }
  form.formtastic legend, form.formtastic div.legend { padding: 10px 0; font-size: 16px; }
  form.formtastic p.inline-hints, form.formtastic p.inline-errors { font-size: 11px; line-height: 16px}
  form.formtastic fieldset ol li { margin-bottom: 5px; }
  form.formtastic fieldset ol li p.inline-hints { margin: 0px 0px 0px 5px; }
  form.formtastic fieldset ol li p.inline-errors { margin: 0px 0px 0px 5px; }
  form.formtastic ul.inline-errors li { font-size: 11px; line-height: 16px; margin: 0px 0px 0px 5px; color: #CC0000;}
  form.formtastic fieldset ol li.check_boxes fieldset ol li { float:left; margin: 5px; width: 200px; }
  form.formtastic fieldset ol li.text textarea, form.formtastic fieldset ol li.string input, form.formtastic fieldset ol li.password input { width: 278px; font-size: 16px; }
  form.formtastic fieldset ol li.numeric input { width: 50%; font-size: 16px; }
  form.formtastic fieldset ol li fieldset ol { padding: 30px 0 0; }
    form.formtastic fieldset ol li fieldset ol { padding: 30px 0 0; }
    form.formtastic fieldset.two_columns ol li.remove { width: 10px; float: left; padding-top: 23px; }
    form.formtastic fieldset.assets ol li.remove { float: left; padding-left: 10px; }
    form.formtastic fieldset.authors ol li.remove { text-align: right; }
    form.formtastic fieldset.assets ol li.file { float: left; }
    form.formtastic div.person-image { float: left; padding-right: 10px;}

/* clearer */
  .clear { clear: both; }

/* Error and notice messages */
  div.error, div.notice { font-size: 12px; padding: 15px; margin-top: 20px; margin-bottom: -10px; -webkit-border-radius: 3px; -moz-border-radius: 3px; -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 0px; }
  div.error { color: #fff; background-color: #c52907; background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#f85230), to(#c52907)); text-shadow: #800 0 1px 0; }
  div.notice { color: rgb(8, 41, 64); background-color: #d8ed90; background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff4c8), to(#ffea95)); -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 0px; }


/* Login form */
#container-resetpassword, #container-login { text-align: left; width: 380px; background-color: #fff; margin-left: 200px; padding: 15px 50px; -moz-border-radius: 5px; -webkit-border-radius: 5px; -moz-box-shadow: 0 1px 5px rgba(0,0,0,.3); box-shadow: 0 1px 5px rgba(0,0,0,.3); }
  #fci-login-top { margin: 0px auto; color: red; }
  #fci-login-inner { padding: 16px 0px; text-align: left; }
  #forgot { padding-bottom: 10px; text-align: left; font-size: 70%; }

  form#login-form fieldset ol li label, form#forgot-form fieldset ol li label { float:none; margin-bottom:5px; width:auto; }
  form#login-form, form#forgot-form { border: none; padding: 0px; }
  form#login-form fieldset ol li.string input, form#login-form fieldset ol li.password input, form#forgot-form fieldset ol li.string input, form#forgot-form fieldset ol li.password input
    { width: 90%; border: 1px solid #aaaaaa; padding: 5px 8px 5px; min-height: 18px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; font-size: 16px; line-height: 18px; }
  form#login-form ol li.commit, form#forgot-form ol li.commit { font: 14px/38px Arial, Tahoma, Verdana, sans-serif; padding-top: 10px; }


/* Preview table */
table.preview { width: 100%; border-collapse: collapse; line-height: 16px; }
table.preview td, table.preview th { padding: 7px 10px; }
table.preview tbody td { border-bottom: 1px solid #CCCCCC; vertical-align: top;}
table.preview thead th { font-size: 18px; line-height:22px; border-bottom: 1px solid #CCCCCC; }
table.preview td.label { color: #777777; }