/*!
Oregon Manifest

colors:
	dark gray		222
	light gray		2c2c2c
	green			8fc94b
	cyan			4bc9fd
*/


/* -- reset -- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, em, img, strong, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, button, table, tr, th, td { background: transparent no-repeat 0 0; border: 0; font-size: 100%; margin: 0; outline: none; padding: 0; vertical-align: baseline; }
ol, ul { list-style: none; }
table {	border-collapse: collapse; border-spacing: 0; width: 100%; }
input, textarea { margin: 0; padding: 0; }
legend { white-space: normal; width: 100%; }
object, img { vertical-align: top; }
a, button { cursor: pointer; }
.on { cursor: default; }


/* -- elements -- */
body {
   background-color: #222;
   color: #fff;
   font: 12px/1.5 'Helvetica Neue', Helvetica, Arial, Sans-Serif; /* 18px */
	}
a {
	color:  #fff;
	text-decoration: none;
	}
a:hover, #main a:hover, #sidebar a:hover {
	color:  #fff;
	text-decoration: underline;
	}
ol {
	counter-reset: section;
	margin: 0 0 10px;
	}
ol li:before {
	color: #8fc94b;
	content: counter(section) '. ';
	counter-increment: section;
	}
ul {
	margin: 0 0 10px;
	}
ul li {
	list-style-type: disc;
	margin-left: 12px;
	}
h1, h1 a {
	color:  #8fc94b;
	font-family: Georgia, Serif;
	font-size: 24px;
	font-style: italic;
	line-height: 1.25em;
	padding: 20px 0;
	
	text-shadow: 0 1px 0 #000;
	}
#content h1 a {
	padding: 0;
	}
h2 {
	color: #8fc94b;
	font-family: 'Helvetica Neue', Arial, Sans-Serif;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2em;
	margin-bottom: 2px;
	padding: 15px 0 5px 0;
	text-transform: uppercase;
	}
h3 {
	color: #000;
	font-family: Georgia, Serif;
	font-size: 18px;
	font-style: italic;
	padding: 10px;
	}
h4 {
	color: #fff;
	font: 14px 'Helvetica Neue', Arial, Sans-Serif;
	padding: 5px 10px;
	}
h5 {
	color:  #fff;
	font-family: 'Helvetica Neue', Arial, Sans-Serif;
	font-size: 14px;
	text-align: left;
	text-transform: uppercase;
	}
h6 {
	color: #fff;
	font-size: 12px;
	text-transform: uppercase;
	}
strong {
	color: #8fc94b;
	font-weight: bold;
	text-transform: uppercase;
	}
li strong {
	color: #fff;
	font-weight: 400;
	}
sup, sub {
	position: relative;
	top: -0.4em;
	vertical-align: baseline;
	}
sub { 
	top: 0.4em; 
	}
p {
	margin: 0 0 10px;
	}

	
/* -- structure -- */
.col {
	float: left;
	margin-right: 20px;
	width: 280px;
	}
.col1 { width:60px; }
.col2 { width:140px; }
.col3 { width:220px; }
.col4 { width:300px; }
.col5 { width:380px; }
.col6 { width:460px; }
.col7 { width:540px; }
.col8 { width:620px; }
.col9 { width:700px; }
.col10 { width:780px; }
.col11 { width:860px; }
.col12 { width:940px; }
.last { margin-right: 0; }
.i {
	margin: 0 auto;
	position: relative;
	width: 1000px;
	}
.i:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
	}
.lines {
	background: url(../img/structure/green_bar.png) repeat-x;
	height: 29px;
	min-width: 1000px;
	width: 100%;
	}
.divider {
	border-bottom: 1px dotted #4bc9fd;
	margin: 0 0 5px;
	padding: 5px 0 0;
	}
	
/* -- content -- */
.post h4 {
	color: #8fc94b;
	font-family: Georgia, Serif;
	font-size: 16px;
	font-style: italic;
	padding: 0 0 10px 0;
	}
.post h6 {
	color: #8fc94b;
	font-weight: bold;
	text-transform: none;
	padding-bottom: 10px;
	}	
.observation {
	color: #4bc9fd;
	display: block;
	font-size: 18px;
	}
#header {
	padding: 30px 0 20px;
	}
#logo {
	float: left;
	}  
#sponsor {
	float: right;
	width: 250px;
	}  
#content {
	background-color: #2c2c2c;
	min-height: 700px;	
	padding: 0 0 30px;
	}
#content img {
	display: block;
	position: relative;
	}

/* - content: home - */
#headerimg {
	background: #000;
	display: block;
	width: 100%;
	}
.bannerimg {
	position: relative;
	}
#homecontent {
	background: #2c2c2c;
	display: block;
	margin: 0 auto;
	padding: 45px 45px 100px;
	width: 910px;
	}
#homecontent .col3 {
	background: #000;
	color: #000;
	float: left;
	margin: 0 10px 0 0;
	}
#homecontent .col3.last {
	margin-right: 0;
	}
#homecontent .col3 p {
	padding: 10px;
	}
#homecontent .col3 .promotext {
	height: 140px;
	padding: 20px;
	position: relative;
	width: 180px;
	}
#homecontent .col3 .promoimg {
	height: 180px;
	overflow: hidden;
	width: 220px;
	}
#homecontent .sponsor a {
	bottom: 30px;
	left: 20px;
	position: absolute;
	}
#homecontent .col3 h3 {
	padding-bottom: 0;
	text-align: left;
	}
#homecontent h5 {
	font-size: 16px;
	font-weight: 500;
	}
#homecontent h5 a {
	color: #8FC94B;
	display: block;
	font-size: 16px;
	font-weight: 400;
	padding: 10px 0 0;
	}

/* - content: pages - */
#main {
	float: left;
	padding: 0 0 60px 30px;
	width: 600px;	
	}
.main {
	float: left;
	width: 600px;	
	}
#main a {
	color : #8fc94b;
	font-style: italic;
	text-decoration: underline;
	}
#main .post {
	padding: 20px 0;
	}
#main.news .post, #main.archives .post, #posts-constructor .post {
	border-bottom: 1px dotted #4bc9fd;
	}
#posts-constructor {
	margin-top: 20px;
	padding-bottom: 40px;
	}
#posts-constructor h4 {
	padding: 0;
	}
#main .post-meta, #posts-constructor {
	border-top: 1px dotted #4BC9FD;
	padding: 10px 0 0;
	}
#main.page .post {
	border-bottom: 0;
	}
#main.news, #main.archives {
	padding-top: 40px;
	}
#content #main.news .post, #content #main.archives .post {
	padding: 20px;
	}
#main #posts-constructor .post {
	padding: 6px;
	}
#content #main.news .post p, #content #main.archives .post p, #posts-constructor .post p {
	padding: 0;
	}
#main.news .post h4, #main.archives .post h4, #posts-constructor .post h4 {
	background: none;
	}
#main.news .post:nth-child(even), #main.archives .post:nth-child(even), #posts-constructor .archives .post:nth-child(odd) {
	background: #222;
	}
#main .quote .entry p {
	color: #aaa;
	float: right;
	font-size: 18px;
	font-style: italic;
	line-height: 1.5;
	text-shadow: 0 1px 2px #000;
	width: 585px;
	}
#main .quote .entry p:before, #main .quote .entry p:after {
	color: #ebebeb;
	font-family: Georgia, Serif;
	font-size: 42px;
	font-weight: italic;
	line-height: 27px;
	}
#main .quote .entry p:before {
	content: '\201C';
	left: 25px;
	min-width: 25px;
	padding-top: 6px;
	position: absolute;
	}
#main .quote .entry p:after {	
	content: '\201D';
	padding: 10px 0 0 0;
	position: absolute;
	}
#main .quote .citation {
	padding-left: 15px;
	}
	
/* - content: sponsors - */
.sponsors {
	border-bottom: 1px dotted #4bc9fd;
	}
.sponsors:last-child {
	border: 0;
	}
.sponsors .image {
	float: left;
	width: 180px;
	}
.sponsors .content {
	float: left;
	width: 420px;
	}
.sponsor {
	border-bottom: 1px dotted #ccc;
	padding: 20px 0;
	}
.sponsor:last-child {
	border: 0;
	}
.sponsor .image a:nth-child(2), .sponsor .image a:nth-child(3) {
	display: block;
	margin-top: 20px;
	}
	
/* - content: featured news - */
.news h3 {
	border-bottom: 1px dotted #ccc;
	border-top: 1px dotted #ccc;
	color: #fff;
	padding: 10px 0 10px 5px;
	}
.featured-news {
	padding: 20px;
	}
.featured-news h2 {
	color: #4BC9FD;
	font-family: Georgia, Serif;
	font-size: 18px;
	font-style: italic;
	padding-top: 0;
	text-transform: capitalize;
	}

/* - content: constructor signup - */
.constructor-signup {
	margin: 0 auto;
	position: relative;
	width: 940px;
	}
.constructor-signup form p {
	width: 600px;
	}
.constructor-signup .legal p {
	width: auto;
	}
.intro {
	float: left;
	width: 600px;
	}
	
/* - content: constructor listing - */
.constructor .image, .post-innovation .image {
	float: left;
	width: 120px;
	}
.post-innovation .image {
	width: 100px;
	}
.constructor .info, .post-innovation .info {
	float: left;
	width: 480px;
	}
.post-innovation .info {
	width: 460px;
	}
.list-constructors {
	margin-bottom: 40px;
	}
.constructor h3 {
	padding: 0;
	}
#main.page .constructor {
	border-top: 1px dotted #4bc9fd;
	}
#main.page .collaboration {
	border-bottom: 1px dotted #4bc9fd;
	border-top: 1px dotted #4bc9fd;
	}
#main.page .collaboration:last-child {
	border: 0;
	}
#main.page .collaboration ul li {
	list-style-type: none;
	}
.constructors-page h3, .constructor-profile h3 {
	color: #4bc9fd;
	padding: 0;
	}
	
/* - content: sidebar - */
#sidebar, .sidebar {
	border-bottom: 1px solid #4BC9FD;
	float: right;
	margin: 0 30px 0 0;
	padding: 65px 0 20px 0;
	width: 220px;
	}
#sidebar .sidebar {
	border: 0;
	float: none;
	margin: 0 0 20px;
	padding: 0;
	}
#sidebar.aside {
	border: 0;
	}
#sidebar h2 {
	background: #4bc9fd;
	color: #222;
	font-size: 12px;
	margin: 0 0 10px;
	padding: 10px 0 10px 10px;
	width: 210px;
	}
#sidebar p {
	color: #4BC9FD;
	font-family: Georgia, Serif;
	font-size: 14px;
	font-style: italic;
	line-height: 2em;
	margin: 0;
	padding: 0 0 10px 10px;
	width: 190px;
	}
#sidebar.bio p {
	padding-left: 0;
	}
#sidebar a {
	color: #4bc9fd;
	font-family: Georgia, Serif;
	font-size: 14px;
	font-style: italic;
	line-height: 2em;
	text-decoration: underline;
	}
#sidebar .builderlink {
	font-family: 'Helvetica Neue', Arial, Sans-Serif;
	font-size: 12px;
	font-style: normal;
	}
	
/* - banner buttons - */
.bannerbtn {
	background: url(../img/sidebar/sidebar-banners.png) no-repeat 0 0;
	display: block;
	height: 63px;
	margin: 0 0 20px;
	text-indent: -9999px;
	width: 162px;
	}
.bannerbtn.criteria:hover {
	background-position: left -66px;
	}
.bannerbtn.register {
	background-position: -168px 0;
	}
.bannerbtn.register:hover {
	background-position: -168px -66px;
	}
	
/* -- share -- */
.share-buttons {
	padding: 10px 0;
	}

/* -- nav -- */
.nav li {
	margin-left: 0;
	}
	
/* - nav: global - */
#nav-wrap {
	background-color: #000;
	border-top: 2px solid #2a2e24;
	border-bottom: 1px solid #333;
	display: block;
	height: 28px;
	width: 100%;
	}	
#nav {
	height: 25px;
	overflow: hidden;
	padding: 2px 0 0;
	width: 1000px;
	}	
#nav li {
	float: left;
	list-style-type: none;
	}
#nav a {
	background: url(../img/nav/global.png) no-repeat;
	border: 0 none;
	display: block;
	height: 26px;
	padding: 0 10px;
	}
#nav-challenge a {
	width: 98px;
	}
#nav-constructors a {
	background-position: -200px 0;
	width: 123px;
	}
#nav-sponsors a {
	background-position: -400px 0;
	width: 64px;
	}
#nav-news a {
	background-position: -600px 0;
	width: 96px;
	}
#nav-collaboration a {
	background-position: -800px 0;
	width: 174px;
	}
#nav-schedule a {
	background-position: -1000px 0;
	width: 65px;
	}

/* nav: global: hover/active */	
#nav-challenge a:hover, #nav-challenge .on { background-position: 0 -25px; }
#nav-constructors a:hover, #nav-constructors .on { background-position: -200px -25px; }
#nav-sponsors a:hover, #nav-sponsors .on { background-position: -400px -25px; }
#nav-news a:hover, #nav-news .on { background-position: -600px -25px; }
#nav-collaboration a:hover, #nav-collaboration .on { background-position: -800px -25px; }
#nav-schedule a:hover, #nav-schedule .on { background-position: -1000px -25px; }
	
/* - nav: footer - */
#nav-footer {
	color: #aaa;
	font-size: 11px;
	left: 0;
	padding: 0 0 0 30px;
	position: absolute;
	width: 940px;
	z-index: 888;
	}
#nav-footer li {
	float: left;
	list-style-type: none;
	margin: 0px 10px 0px 0px;
	}
#nav-footer a {
	color: #aaa;
	}
#nav-footer a span:last-child {
	padding: 0px 0px 0px 10px;
	}
#nav-footer a:hover {
	color: #fff;
	text-decoration: none;
	}
#nav-footer a:hover span:first-child {
	color: #fff;
	text-decoration: underline;
	}
#nav-footer a:hover span:last-child {
	color: #aaa;
	}


/* -- footer -- */
#footer {
	background: #000;
	display: block;
	height: 180px;
	padding: 10px 0 30px 0;
	}
.work-of {
	display: block;
	margin: 5px 0 0 -5px;
	}

/* - footer: social icons - */
#social {
	border-top: 1px dotted #4bc9fd;
	margin: 10px 0 0;
	padding: 10px 0 0;
	}
#social li {
	float: right;
	list-style: none;
	margin: 0 0 0 5px;
	}
#social a {
	border: 0;
	height: 23px;
	width: 23px;
	}
#social a:active {
	background-position: 0 0;
	}
#facebook a {
	background-image: url(../img/nav/facebook.png);
	}
#twitter a {
	background-image: url(../img/nav/twitter.png);
	}
#flickr a {
	background-image: url(../img/nav/flickr-icon.png);
	}
#rss a {
	background-image: url(../img/nav/rss.png);
	}

/* - footer: newsletter signup - */
#newslettersignup {
	position: absolute;
	right: 30px;
	width: 180px;
	z-index: 999;
	}
#newslettersignup button {
	background: url(../img/nav/go_btn.png) no-repeat;
	float: right;
	height: 30px;
	width: 30px;
	}
input[type='text'].emailform {
	float: right;
	height: 12px;
	width: 112px;
	}
#newsletter {
	line-height: 1.2em;
	text-align: right;
	}
	
/* - footer: copyright - */
#copyright {
	color: #aaa;
	font-size: 9px;
	left: 30px;
	position: absolute;
	top: 40px;
	}
#copyright a {
	color: #aaa;
	padding: 0;
	}
	
/* -- forms -- */
label {
	color:  #8fc94b;
	display: block;
	font-size: 11px;
	font-weight: normal;
	padding: 0 0 3px;
	text-transform: uppercase;
	}
#newslettersignup label {
	float: left;
	text-align: right;
	width: 50px;
	}
label em {
	display: block;
	font-size: 12px; font-weight: normal;
	line-height: 1;
	}
textarea, input, select {
	border: 0 none;
	font-family: inherit; font-size: inherit; font-weight: normal;
	margin: 0 0 10px;
	}
textarea, input[type=text], input[type=file], input[type=password] {
	display: block;
	padding: 3px;
	width: 300px;
	}
input[type=text], input[type=password], textarea {
	background: #fff;
	background: -webkit-gradient(linear,left bottom,left top,color-stop(0.01, rgb(235, 235, 235)),color-stop(1, rgb(255, 255, 255)));
	background: -moz-linear-gradient(center bottom,rgb(204, 204, 204) 1%,rgb(255, 255, 255) 100%);
	border: 1px solid #ccc;
	height: 25px;
	}
textarea {
	height: 100px;
	overflow: auto;
	width: 600px;
	}
input[size] {
	width: auto;
	}
button {
	display: block;
	}
button::-moz-focus-inner {
	border: 0;
	}
button[disabled] {
	cursor: default;
	}
input[type=submit] {
	background: #4bc9fd;
	border: 0;
	color: #222;
	cursor: pointer;
	font-size: 12px;
	font-weight: bold;
	height: 30px;
	margin: 20px 0 0;
	padding: 0;
	width: 200px;
	text-align: center;
	text-transform: uppercase;
	}
input[type=submit]:hover {
	color: #fff;
	}
input[type=submit]:focus {
	color: #fff;
	}
select {
	width: 220px;
	}
	
/* - forms: constructor-signup - */
.optional {
	border-top: 1px dotted #4bc9fd;
	padding: 20px 0 50px;
	width: 940px;
	}
.required {
	padding: 0 0 20px;
	}
.constructor-signup .optional section {
	position: relative;
	}
.constructor-signup span {
	display: block;
	}
.constructor-signup .optional section ul {
	display: none;
	left: 650px;
	position: absolute;
	top: 28px;
	width: 250px;
	}
.constructor-signup label span {
	border-bottom: 1px dotted #2C2C2C;
	margin: 0 0 4px;
	width: 600px;
	}
.constructor-signup label .focus {
	color: #4bc9fd;
	border-bottom: 1px dotted #4bc9fd;
	width: 940px;
	}
.constructor-signup h3 {
	color: #4bc9fd;
	padding-left: 0;
	}
	
/* - forms: contest rules - */
.legal {
	padding: 50px 0;
	width: 940px;
	}
.legal strong {
	color: #4bc9fd;
	}
.legal ol ol li {
	list-style: upper-alpha;
	margin: 0 0 0 20px;
	}
.legal ol ol li:before, .legal ol ul li:before {
	content: '';
	}
.legal ol li {
	padding: 0 0 15px;
	}
.legal ol ol li, .legal ol ul li {
	padding: 0;
	}
.legal table {
	margin: 20px 0 30px;
	}
th {
	color: #4bc9fd;
	}
td, th {
	border-left: 1px dotted #555;
	padding: 10px;
	text-align: left;
	}
td:last-child, th:last-child {
	border-right: 1px dotted #555;
	}

/* - forms: email-signup - */
#email-signup {
	border-top: 1px dotted #555;
	margin: 20px 0 0;
	padding: 20px 0 0;
	}
#email-signup div {
	padding: 0 0 0 10px;
	}
#email-signup h3 {
	color: #4bc9fd;
	padding: 0;
	}
#email-signup input[type=text] {
	float: left;
	height: 19px;
	width: 130px;
	}
#email-signup span {
	clear: both;
	display: block;
	padding: 20px 0 0;
	}
#email-signup input[type=submit] {
	float: right;
	height: 27px;
	margin: 0;
	padding: 0;
	width: 65px;
	}
#email-signup label {
	margin: 0;
}
	
/* - forms: validation - */
.error {
	color: #f00;
	margin: 0 0 5px;
	}
	
/* -- wp content -- */

/* - wp content: comments - */
#comments-box, #add-a-comment {
	padding: 20px 0 0;
	}
h3#respond, h3#comments {
	color: #8fc94b;
	padding: 0 0 40px;
	}
#content #main #commentform p {
	padding: 0;
	}
.box-style {
	background: #222;
	border: 1px solid #555;
	margin: 20px 0 0;
	padding: 10px;
	width: 96%;
	}
.commentlist li {
	background: #222;
	border-top: 1px dotted #555;
	display: block;
	padding: 20px 20px;
	} 
.commentlist li:last-child {
	border-bottom: 1px dotted #555;
	} 
.commentlist li.alt {
	padding: 20px 0;
	background: none;
	}
.comment-author-info {
	float: left;
	padding: 20px 0 0;
	}
.commentmetadata {
	float: right;
	}
.comment-author-avatar {
	float: left;
	width: 100px;
	}
#commentform textarea {
	height: 200px;
	width: 98%;
	}

/* - wp content: archives - */
#monthly-archives h2 {
	margin: 20px 0 10px;
	}

#monthly-archives li {
	display: block;
	padding: 4px 0 4px 10px;
	}
#subscribe-to-news {
	background: url(../img/nav/rss.png) no-repeat;
	padding: 6px 0 6px 30px;
	}

/* -- typography -- */	
.readmore a {
	color: #000;
	}
.caption {
	position: relative;
	top: -14px;
	}
.caption a {
	margin-bottom: -12px;
	text-decoration: none;
	}
.date {
	display: block;
	font-family: Georgia, Times, Serif;
	font-style: italic;
	font-size: 12px;
	margin-bottom: 10px;
	padding-bottom: 0;
	}
.entry {
	margin-bottom: 20px;
	}
.author {
	font-style: italic;
	}


/* -- 3rd party -- */

/* - 3rd party: wp polls - */
.wp-polls-wrap {
	position: relative;
	}
.wp-polls {
	background: #000;
	padding: 0 0 10px;
	}
.wp-polls ul {
	margin-bottom: 15px;
	}
.wp-polls li {
	line-height: 1.25; /* 15px */
	margin-top: 15px;
	}
.wp-polls label {
	color: #fff;
	text-transform: none;
	}
.wp-polls small {
	color: #bbb;
	}
.wp-polls .pollbar {
	background: #8fc94b;
	border: 0;
	margin: 5px 0 15px;
	}
.poll-msg, .wp-polls button, .btn-vote-bike {
	background-image: url(../img/buttons/poll.png);
	}
.poll-msg {
	background-color: #8fc84a;
	height: 63px;
	margin: 0 0 -10px;
	width: 100%;
	}
.poll-msg-thanks {
	background-position: 50% -130px;
	}
.poll-msg-closed {
	background-position: 50% -195px;
	}
.wp-polls button {
	background-position: 0 -65px;
	height: 63px;
	margin: 0 auto;
	width: 162px;
	}
.wp-polls button:hover {
	background-position: -168px -65px;
	}
.wp-polls-loading img {
	display: inline !important;
	}
.btn-vote-bike {
	height: 63px;
	margin: 0 0 0 10px;
	width: 162px;
	}
.btn-vote-bike:hover {
	background-position: -168px 0;
	}


/* -- font stacks -- */

	
/* -- contain floats -- */
.group:after, .emailform:after {
	clear: both; content: '.'; display: block; height: 0; visibility: hidden;
	}


/* -- image replacement -- */
button, .ir, .btn, .poll-msg, #social a {
	display: block;
	overflow: hidden;
	text-align: left;
	text-indent: -9999px;
	}
	
	
/* -- gallery for constructors -- */

#gallery-constructor {
	padding-left: 10px;
	padding-top: 20px;
	padding-bottom: 10px;
}

#gallery-constructor .gallery-item {
	margin-top: 10px;
	padding-bottom: 10px;
	text-align: center;
	width: 33%;
}

#gallery-constructor img {
	margin-bottom: 10px;
}

#gallery-constructor .gallery-caption {
	margin-left: 0;
}

#gallery-collabo {
	padding-top: 14px;
	padding-bottom: 20px;

}

#gallery-collabo .gallery-item {
	margin-top: 10px;
	text-align: center;
	width: 33%;
}

#gallery-collabo img {
	margin-bottom: 10px;
}

#gallery-collabo .gallery-caption {
	margin-left: 0;
}

/* -- homepage flag -- */
#judge {
	position:absolute;
	top: 235px;
	left: 715px;
}

#judge a {
	display: block;
	background-image: url(../img/banner/judges_flag.png);
	width: 198px;
	height: 97px;
	overflow: hidden;
	text-indent: -9999px;
}

#judge a:hover, a:active {
	background-position: 0 -97px;
}

#winners {
	position:absolute;
	top: 135px;
	left: 740px;
}

#winners a {
	display: block;
	background-image: url(../img/banner/winners_flag.png);
	width: 198px;
	height: 97px;
	overflow: hidden;
	text-indent: -9999px;
}

#winners a:hover, a:active {
	background-position: 0 -97px;
}