/* SCREEN.CSS
   This is where all styles for on-screen media are declaired
   
   --------------------------------------------------------------------------------------------------------------------------
   FILE INFO
   Revision number:  1.0
   Last updated:     2010/03/20
   Last updated by:  Matt Wilcox
   ----------------------------------------------------------------------------------------------------------------------- */

/* =global_reset | based on http://meyerweb.com/eric/thoughts/2008/01/15/resetting-again/
   ----------------------------------------------------------------------------------------------------------------------- */
   
   html, body, div, span, applet, object, iframe,
   h1, h2, h3, h4, h5, h6, p, blockquote, pre,
   a, abbr, acronym, address, big, cite, code,
   del, dfn, em, font, img, ins, kbd, q, s, samp,
   small, strike, strong, sub, sup, tt, var,
   b, u, i, center,
   dl, dt, dd, ol, ul, li,
   fieldset, form, label, legend,
   table, caption, tbody, tfoot, thead, tr, th, td {
     margin: 0; padding: 0; border: 0; outline: 0;
     font-size: 100%; vertical-align: baseline; background: transparent; }
   body {
     line-height: 1; }
   ul {
     list-style: none; }
   blockquote, q {
     quotes: none; }

   /* remember to define focus styles! */
   :focus {
     outline: 0; }

   /* remember to highlight inserts somehow! */
   ins {
     text-decoration: none; }
   del {
     text-decoration: line-through; }

   /* tables still need 'cellspacing="0"' in the markup */
   table {
     border-collapse: collapse; border-spacing: 0; }

/* =typography | based on http://alistapart.com/articles/settingtypeontheweb/
                          http://24ways.org/2006/compose-to-a-vertical-rhythm/
                          
    NOTE: found that margin-top applied to everything is be a pain - it often messes up layout and requires jumping through
          hoops to fix, so have stopped doing this as a default and now add top margin manually when required instead.
    NOTE: using px for type is bad for people using IE6, but good for my brain. IE6 is dying, so I think that's OK. Feel free
          to tut if you're a purist. I'm a pragmatist.
   ----------------------------------------------------------------------------------------------------------------------- */
   body {
     font : 100%/1.5 "Helvetica Neau", Helvetica, Ariel, Verdana, sans-serif; }
   html > body {
     font-size : 16px; }
   div, applet, object, iframe,
   h1, h2, h3, h4, h5, h6, p, blockquote, pre,
   address, img, dl, dt, dd, ol, ul, li,
   fieldset, form, label, legend,
   table, caption, tbody, tfoot, thead, tr, th, td {
     margin-bottom : 1.5em; }
  
/* =html =body */
   html {}
   body {background : url(../images/body.jpg) 50% 0 no-repeat fixed; min-width : 980px;}
 
/* =fonts */   
   @font-face {
    font-family: 'BebasNeue';
    src: url('../fonts/BebasNeue-webfont.eot');
    src: url('../fonts/BebasNeue-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/BebasNeue-webfont.woff') format('woff'),
         url('../fonts/BebasNeue-webfont.ttf') format('truetype'),
         url('../fonts/BebasNeue-webfont.svg#BebasNeueRegular') format('svg');
    font-weight: normal;
    font-style: normal;}
		
	h1 {
		font-size : 64px; line-height: 54px; margin-bottom: 40px; font-weight : normal;
		font-family: BebasNeue, Arial, Sans-serif; color: #E14412; }
	h2 { 
		font-size : 40px; line-height: 36px; margin-bottom: 10px; margin-top: 20px; 
		font-weight : normal; color: #61002E; line-height: 42px;
		font-family: BebasNeue, Arial, Sans-serif; }
	h3, h4, h5, h6, legend {
     font-size : 26px; line-height: 26px; margin-bottom: 10px; margin-top: 30px;
     font-weight : normal; color : #61002e; font-family: BebasNeue, Arial, Sans-serif; }

		
/* =p */
    p {font-size: 16px; line-height: 24px !important;}  
     
/* =blockquote */
   blockquote {
     clear : both; }

/* =em =strong =del =ins =abbr =acronym =code */
   em          { font-style : italic; }
   strong      { font-weight : bold; }
   del         { text-decoration : line-through; }
   ins         { text-decoration : none; color : #006; }
   del[title],
   ins[title]  { cursor : help; }
   acronym,
   abbr        { text-decoration : none; border-bottom : none; font-style : italic; cursor : help; }
   code        { font-family : dialogue, 'Courier New', courier, serif; }
   sup         { vertical-align : super; font-size : .8333em; }
   sub         { vertical-align : sub; }
   
   #gallery_ambasador q {
     display : block; width : 203px; margin : 0 10px; }
   
   .ambassadors #content_main ul li q {
     font-size : 16px; }
   
/* =address */
   address {  }

/* =dl =dt =dd */
   dl {  }
   dt {
     margin-bottom : 0; padding : 12px 0; border-top : 1px solid #000;
     font-size : 16px; font-weight : bold; }
   dt#what-happens-if-i-cant-finish-the-race {
     border-top : 0; }
   dd {  }
   
/* =ul */  
     
/* =img */
  
     
/* =hr */
   hr { display : none; }

/* =a */
   a:link    { color : #750F3F; text-decoration : none; font-style: normal; }
   a:visited { color : #750F3F; text-decoration : none; font-style: normal; }
   a:hover   { }
   a:focus   { outline : none; }
   a:active  { outline : none; }
   :target   { background-color : #eee; }
   
   #content_main a {font-weight: bold;}
   #content_main h2 a,
   #content_main h3 a {font-weight: normal;}
   
   #content_main p.biglink {margin-top: 40px;}
   #content_main p.biglink a {
    background: none repeat scroll 0 0 #E14412;
    border: medium none;
    color: #FFFFFF;
    cursor: pointer;
    font: 29px/29px BebasNeue,Arial;
    padding: 6px 9px 3px;
    font-weight: normal;
    margin-top: 30
}  
     
/* =table */
   table {
     width : 100%;
     background-color : #FFF; }

/* =caption */
   caption {
     text-align : left; }

/* =thead */
   thead {
     text-align : left; background : #fff; }

/* =tfoot */
   tfoot {
     text-align : right; font-size : 10px; background : #fff; }
   
/* =tbody */
   tbody { font-size : 12px; }
   
/* =tr */
   tbody tr:hover {
     background-color : #f6f6f6; }
   tbody tr {
     border-bottom : 1px solid #ccc; }
   
/* =th */
   th {
     font-weight : bold; padding : 5px 6px;
     background: #750F3F; color: #fff; text-align: center; font-size: 16px; }
   tbody th {
     padding : 2px 6px;
     text-align : left; font-weight : bold;
     background: #dadada; color: #222; vertical-align: middle; }

/* =td*/
   td {
     padding : 5px 6px;
     text-align : left;
     font-size: 16px; }
   tfoot td {
     text-align : right; }
   

/* =form */
   form {
     position : relative;
     width : 100%;
     overflow : hidden; }
        
/* =fieldset */
   fieldset {}
     
/* =legend */
   legend {
     margin : 0; }
      
/* =blockquote */
   blockquote {}
     
/* =label */
   label {
     position : relative; /* so we can absolutely position errors */
     display : block;
     overflow : hidden; /* so no collapsing float issues */ }
           
/* =textarea */
    textarea {
      width : 99%; height : 8em; }

/* =select */
   select:focus {
     background-color : #ff9; }
     
/* =div */
   #container {
     position : relative;
     width : 940px; margin : 0  auto; margin-bottom: 0; padding: 30px 20px 0 20px; overflow: visible; background: #fff; opacity: 1;}

	#container * {opacity: 1;}
	
/* =blockquote */
	.info_box {
		width: 95%; margin: 0 0 40px; padding: 25px 10px;
		background: url(../images/blockquote.png) no-repeat top right;}
	.info_box h4 {
		margin: 15px 0;
		color: #fff; font-size: 38px; line-height: 36px;}
	.info_box div {margin-bottom: 0; font-family: HelveticaNeue, Arial; font-size: 18px;}
	
	blockquote {
		width: 95%; margin: 0 0 40px; padding: 35px 10px 10px;
		background: url(../images/blockquote.png) no-repeat top right;
		font-size: 18px; line-height: 26px !important; color: #fff; font-family: Arial;}
	blockquote p {margin-bottom: 0 ;font-family: Arial; font-size: 18px; line-height: 26px !important;}
	
/* =floats */
	.float-left {position: relative; float: left; margin: 10px 20px 30px 0;}
	.float-right {position: relative; float: right;  margin:10px 0 30px 20px;}
	
/* =lists */
	ul,
	ol {margin: 20px 0 20px 50px;}
	ul li {
		margin-bottom: 15px; padding-left: 30px;
		background: url(../images/bullet.png) left top no-repeat;
		font-size: 15px;}
	
	td ul {margin: 18px 0 0 5px; padding-right: 10px;}
	td ul li {font-size: 12px;}
	
	

/* =layout */
	#container #content_nav {
		position: relative; float: left; 
		width: 169px; padding: 2px 0 20px; margin-left: -60px; margin-right: 40px;
		background: url(../images/sub_nav.png) bottom center;}
	#container #content_main {
		position: relative; float: left; width: 425px; padding:5px 0px 0 0;}
	#container #content_supp {
		position: relative; float: right; width: 340px;}
		
/* =forms */
	form#ballot_signup {width: 60%; margin: 0 auto; margin-bottom: 60px;}
	form label {margin-bottom: 15px;}
	form label span {
		display: block;
		width: 153px; text-align: right; float: left;
		font-size: 14px;}
	form label span.required {font-size: 13px; color: #888;}
	form label.boolean span {display: inline; float: none;}
	form h2 {margin-bottom: 20px;}
		
	/* =inputs */
	input[type="text"],
  input[type="password"],
  textarea {
		width: 210px;
		border : 1px solid #999;
		padding: 5px; margin-left: 20px; }
	input[type="text"]:focus,
	input[type="password"]:focus,
	textarea:focus {
		background-color : #ffd; }
	input[type="submit"] {
		padding: 6px 9px 3px;
		background: #E14412; border: none;
		font: 22px/22px BebasNeue, Arial; color: #fff;
		cursor: pointer;}
	label select {
		width : 20%; margin-left: 20px;}
	
	
	span.message {color: #E14412;
    float: right;font-size: 12px;
    margin-top: 10px; margin-bottom: 15px; text-align: left; width: 253px;}
	
	fieldset > span.message {display: block; float: none;}
	
	label.day,
	label.month,
	label.year {position: relative; float: left; width: 170px; margin-top: 20px;}
	
	label.day {width: 124px;}
	label.year {width: 131px;}
	
	label.day span,
	label.month span,
	label.year span {width: 30px;}
	
	label.day select,
	label.month select,
	label.year select {width: auto;}

/* =images */
	#content_main img {margin: 10px;}
	
/* =span */
	span.highlight {color: #750F3F;}

/* =on every page    ----------------------------------------------------------------------------------------------------------------------- */

/* website header */
#site_context  {
	position: absolute; top:-26px; left: -15px;
	width:340px; height : 200px; margin-bottom : 0; z-index: 2;
	background : url(../images/site_logo.png) 0px 0px no-repeat; opacity: 1; }
#site_context .company {
	position : absolute; top : 0px; left : 27px;
	display : block; width : 250px; height : 103px; margin : 50px 15px 0 50px; padding : 0; 
	line-height: 20px; font-size: 19px; font-family: Arial; font-weight: bold; }
#site_context .company a {
	position : absolute; top : 0; left : 0;
	display : block; padding : 20px; width : 95%; height : 100%;
	color: #222; line-height: 23px; }
#site_context .company a span {
	position : absolute; top : 0; left : 0;
	display : block; width : 100%; height : 100%;}

/* website footer */
   #site_info {
     margin-bottom : 0;
     font-size : 15px; line-height : 23px; color : #333; background-color : #fff; overflow : hidden; }
   
   p#charityreg {
	   position: absolute; bottom: 10px; left: 20px;
	   font-size: 13px; color: #fff;}
     
/* =nav_main */
#nav_main {
	position : absolute; top : 50px; left : 26px;
	width: 960px; height : 57px; margin : 0; z-index: 1; 
	background: url(../images/nav_main.png) no-repeat -40px center;}
#nav_main h2 {display : none; }
#nav_main > ul {
	position: absolute; left: 312px;
	list-style-type : none; padding-top: 3px; margin: 0; height: 40px; }
#nav_main > ul li {
	float : left; position: relative;
	display : inline; margin : 0 2px 0 0; padding: 0;
	background: none;}
#nav_main > ul li a {
	position : relative;
	display : block; height : 29px; padding : 10px 7px 7px 4px; border-right : 0;
	line-height : 29px; font-size : 18px; color : #FFF;
	font-family: BebasNeue, Arial; text-shadow: 3px 3px 1px #000; }
#nav_main > ul li:last-child {
	margin-right : 0; }
#nav_main > ul li:hover a {
	background: #E14412; }
	/* =sub_nav */
#nav_main ul li ul {
	display: none;
	position: absolute; top: 46px;
	width: 200px; padding: 10px 0; margin: 0;
	background: #E14412;}	
#nav_main ul li ul li {
	display: block; 
	width: 200px; height: auto; margin: 0; padding: 0;}
#nav_main ul li ul li a {
	display: block;
	padding: 6px 0 5px 10px; height: auto;
	text-shadow: none; color: #fff; line-height: 18px; font-size: 19px;}
#nav_main ul li ul li a:hover {background: black;}
#nav_main li:hover ul {display: block;}
#nav_main > ul > li:nth-child(n+6) ul {right:0;}
	/* =sub_sub_nav */
#nav_main li:hover ul li ul {
	position: relative; top: 0;
	margin: 0 0 0 25px; padding: 0;}
#nav_main li:hover ul li ul li {width: auto; display: block; clear: left;}
#nav_main li:hover ul li ul li a {padding: 2px 5px; color: #333; font-size: 15px; color: #111;}
#nav_main li:hover ul li ul li a:hover {color: #fff;}

/* =sidebar navigation */
#content_nav > ul {margin: 0;}
#content_nav > ul li {background: none; margin: 0; padding: 0;}
#content_nav > ul li a {
	display: block;
	padding: 7px 10px 4px;
	font-family: BebasNeue, Arial; color: #fff; font-size: 24px; line-height: 22px;}
#content_nav > ul > li.here a,
#content_nav > ul li a:hover {background: #222;}
#content_nav > ul li ul {margin: 0 0 0 15px;}
#content_nav > ul li ul li { margin: 0; padding: 0;}
#content_nav > ul li ul li a {font-size: 20px; line-height: 18px; color: #222;}
#content_nav > ul li.here ul li a {background: none;}
#content_nav > ul li ul li.here a,
#content_nav > ul li ul li a:hover {color: #fff; background: #222;}


/* countdown */
#countdown {
	position: absolute; top: 130px; left: 5px;
	width: 300px; z-index: 3;
	font-family: BebasNeue, Arial; font-size: 18px;}
#countdown .date {position: absolute; left: 10px;}
#countdown .days {position: absolute; right: 10px;}
#countdown_d_1,
#countdown_d_2 {letter-spacing: -2px;}

/* social */
#social {position: absolute; top: 12px; right: 5px;}
#social a {color: #000; margin-right: 10px; font-family: BebasNeue, Arial; font-size: 20px; margin-bottom: 0; }
#social a img {margin-bottom: 0; vertical-align: middle;}
#social a#login {
	padding: 3px 8px 0;
	background: #6b0040; color: #fff;}

/* banner rotator */
#featured_wrapper {
	position: relative;
	margin-top: 68px; height: 380px; margin-bottom: 80px;
	overflow: hidden; clear: both; z-index: 0}
#featured_wrapper .jshowoff,
#featured_wrapper .jshowoff #featured,
#featured_wrapper .jshowoff #featured div {height: 350px; margin-bottom: 0;}
#featured_wrapper .jshowoff #featured div {position: relative;}
#featured_wrapper .jshowoff #featured div h2 {
	position: absolute; top: 130px; left: 110px;
	width: 600px; padding: 15px 15px 11px 15px;
	font-family: BebasNeue, Arial, Sans-serif; color: #fff;
	font-size: 30px; line-height: 30px;
	background: #e14412; opacity: 0.9;}
#featured_wrapper .jshowoff #featured div h2 a {
	color: #333; font-size: 20px; margin-left: 10px;}
#featured_wrapper .jshowoff #featured div h2 a:hover {text-decoration: underline;}
#featured_wrapper .jshowoff #featured div span {
	position: absolute; top:175px; right: 179px;
	width: 100px; height: 65px;
	background: url(../images/carousel_bg.png) no-repeat;}
#featured_wrapper .jshowoff-controls {
	position: absolute; top: 140px; left: 0; width: 100%;}
#featured_wrapper .jshowoff-controls .jshowoff-prev,
#featured_wrapper .jshowoff-controls .jshowoff-next {
	position: absolute;
	width: 35px; height: 90px;
	background: url(../images/carousel_arrow.png) no-repeat;
	text-indent: -9999px;}
#featured_wrapper .jshowoff-controls .jshowoff-prev {
	left: 10px; background-position: center left;}
#featured_wrapper .jshowoff-controls .jshowoff-next {
	right: 10px; background-position: center right; }

/* =calls to action */
#cta {position: absolute; top: 370px; clear: both;}
#cta div {
	position: relative; float:  left;
	display: block; width: 143px; height: 145px; margin:0 2px 0 0px; padding: 7px 5px 5px 7px;
	background: url(../images/cta_bg.png) no-repeat center center;}
#cta div a {
	font-family: BebasNeue, Arial, Sans-Serif; color: #fff; }
#cta div a {
	display: block; 
	width: 130px; height: 55px; padding: 85px 5px 0 5px;
	font-size: 23px; line-height: 24px;
	background: #f49600 url(../images/cta_secure_your_place.jpg) no-repeat;}
#cta div#food_and_fitness_festival a {
	background: #750541 url(../images/cta_food_and_fitness_festival.jpg) no-repeat;}
#cta div#choose_charities a {
	background: #e24207 url(../images/cta_charities.jpg) no-repeat;}
#cta div#training a {
	background: #ec82b3 url(../images/cta_training.jpg) no-repeat;}
#cta div#gallery a {
	background: #009bd3 url(../images/cta_gallery.jpg) no-repeat;}
#cta div#rpf a {
	background: #9bce4c url(../images/cta_rpf.jpg) no-repeat;}
#cta div a:hover,
#cta div#food_and_fitness_festival a:hover,
#cta div#choose_charities a:hover,
#cta div#training a:hover,
#cta div#gallery a:hover,
#cta div#rpf a:hover {
	background-position: 0 100%;}


/* =partners */
#partners {overflow: auto; clear: both;}
#partners div {
	overflow: auto; 
	position: relative; float: left;
	margin-right: 30px; padding-right: 29px;
	border-right: 1px solid #dda32d; }
#partners div h4 {
	display: block;
	padding: 3px 5px 25px;
	color: #fff; background: url(../images/partners_bg.png) no-repeat;
	font-family: BebasNeue, Arial, Sans-serif; font-size: 18px; line-height: 18px; font-style: normal;}
#partners div img {position: relative; float: left; margin-right: 25px;}
#partners div#media_partners {
	width: 120px; border: none; margin-right: 0; padding-right: 0;}
#partners div#event_partners img {margin-right: 57px;}

/* =footer */
#footer {
	overflow: auto; position: relative;
	width: 940px; height: 276px; padding: 70px 20px 20px 20px;  margin: 0 0 0 -20px;
	background: url(../images/footer.jpg) no-repeat top center;}

#footer #nav_footer {
	position : absolute; top : 60px; left : 16px;
	width: 960px; height : 55px; margin : 0; z-index: 1;}
#footer #nav_footer h2 {
	display : none; }
#footer #nav_footer ul {
	position: absolute; left: 312px;
	list-style-type : none; padding-top: 10px; margin: 0; height: 40px;
	overflow: hidden; }
#footer #nav_footer li {
	float : left; position: relative;
	display : inline; margin : 0 2px 0 0; padding: 0;
	background: none;}
#footer #nav_footer li a {
	position : relative;
	display : block; height : 29px; padding : 0 5px 13px; border-right : 0;
	line-height : 29px; font-size : 18px; color : #FFF;
	font-family: BebasNeue, Arial; text-shadow: 3px 3px 1px #000; }
#footer #nav_footer li:last-child {
	margin-right : 0; }
#footer #nav_footer li:hover a {
	text-shadow: none; }
	
#footer #footer_social {position: absolute; top: 260px; right: 5px;}
#footer #footer_social a {
	color: #000; margin-right: 10px; font-family: BebasNeue, Arial; 
	font-size: 20px; margin-bottom: 0; }
#footer #footer_social a img {margin-bottom: 0; vertical-align: middle;}
#footer #footer_social a#login {
	padding: 3px 8px 0;
	background: #6b0040; color: #fff;}

#footer #support {
	position: absolute; top: 120px; right: 270px;
	width: 480px; height: 200px;
	background: url(../images/squirrel.png) no-repeat;}
#footer #support h5 {
	position: absolute; top: 0px; right: 20px;
	width: 230px; margin-top:15px; 
	font-family: BebasNeue, Arial, Sans-Serif; color: #E14412;
	font-size: 25px; line-height: 25px;}
#footer #support a {
	position: absolute; top: 70px; right: 20px;
	width: 230px;
	font-family: Arial, Sans-Serif; color: #6b0041;
	font-size: 16px; line-height: 25px;}

#footer #link_rpf {
	position: absolute; top: 130px; left: 20px;
	display: block; width: 90px; height: 125px;
	text-indent: -9999px;}
#footer #link_view {
	position: absolute; top: 305px; right: 20px;
	display: block; width: 220px; height: 35px;
	text-indent: -9999px;}
	
/* news and twitter */
#infobox {
	position: relative;
	padding: 15px 20px; height: 290px; overflow: hidden;
	background: url(../images/news_bg.png) no-repeat;}
#infobox ul {margin: 10px 0 30px 0;}
#infobox ul li {display: inline;}
#infobox ul li a {
	font-size: 28px; line-height: 25px;
	font-family: BebasNeue, Arial,Sans-serif; color: #fff; }
#infobox ul li#news_select {
	padding: 15px 5px 20px 0;
	background: url(../images/news_heading_disabled.jpg) no-repeat;}
#infobox ul li#news_select:hover {
	padding: 15px 5px 20px 0;
	background: url(../images/news_heading.jpg) no-repeat;}
#infobox ul li#news_select.enabled {
	background: url(../images/news_heading.jpg) no-repeat;}
#infobox ul li#news_select a {padding: 3px 19px 7px 10px;}
#infobox ul li#twitter_select {
	padding: 15px 5px 20px 0;
	background: url(../images/twitter_disabled.jpg) no-repeat;}
#infobox ul li#twitter_select.enabled {
	background: url(../images/twitter_enabled.jpg) no-repeat;}
#infobox ul li#twitter_select a {padding: 3px 49px 7px 10px;}
#infobox ul li#twitter_select:hover {
	padding: 15px 5px 20px 0;
	background: url(../images/twitter_enabled.jpg) no-repeat;}
.news_item {
	position: relative; overflow: auto; margin: 0;}
.news_item a img {
	position: absolute; top: 0; left: 0;
	padding: 10px;
	background: url(../images/news_image_border.png) no-repeat;}
.news_item div {
	margin-left: 120px; margin-bottom: 5px;
	font-family: BebasNeue, Arial;}	
.news_item div a h3 {
	margin:0;
	color: #E14412; font-size: 24px; line-height: 24px;}
.news_item div a:hover {text-decoration: underline;}
.news_item div a {color: #333;}	
a#news_archive {
	position: absolute; bottom: 5px; right: 30px;
	font-family: BebasNeue, Arial,Sans-serif;
	color: #333; font-size: 16px}
a#news_archive:hover {color: #E14412;}
#twitter {margin-top: 35px; padding: 0 5px 0 10px; display: none;}
.tweet {margin-bottom: 50px;}
.tweet p {margin:0 0 5px 0; font-size: 13px; clear: right;}
.tweet .date {
	float: right;
	font-family: BebasNeue, Arial; font-size: 20px; color: #E14412;}

/* charities */
#charities { padding: 10px 15px 0;}
#charities h3 {
	display: block;
	padding: 8px 24px 38px 10px;
	background: url(../images/news_heading.jpg) no-repeat; color: #fff;
	font-size: 30px; font-style: normal;}
#charities div {
	display: inline; position: relative; float: left;
	width: 145px; margin: 0 10px 0 0;}
#charities div a span {position: absolute; top: 10px; left: 10px;}
#charities a img {
	padding: 0px; margin-bottom: 3px;
	border: 1px solid #eee; }
#charities a:hover img {
	border: 1px solid #E14412;}

/* =specific to every page */
	
/* =homepage
----------------------------------------------------------------------------------------------------------------------- */
body.home #container #content_main {
	position: relative; float: left; width: 560px; padding-right: 40px;}
body.home #container #content_supp {
	position: relative; float: right; width: 340px;}
	
body.home #container #content_main h2 {color: #E14412; font-size: 50px; margin-bottom: 0;}

body.home #runner_profile {position: relative; margin-top: 20px;}
body.home #runner_profile h3 {
	padding: 10px 2px 20px 10px;
	font-size: 30px;
	background: url(../images/our_runners.jpg) no-repeat; color: #fff;}
body.home #runner_profile img {
	position: absolute; top: 74px; left: 0;
	padding: 8px 11px 10px 8px;
	background: url(../images/img_border.png) center center;}
body.home #runner_profile div {padding-left: 175px;}
body.home #runner_profile div h4 {font-size: 26px; margin-bottom: 10px; color: #E14412;}
body.home #runner_profile div p {display: inline;}

	/* gallery */
body.home #photo-gallery {position:relative; clear: both; width: 100% !important;}
body.home #photo-gallery ul {margin: 0;}
body.home #photo-gallery ul li {
	display: inline; margin-right: 2px; 
	padding: 0;	
	background: none;}
body.home #photo-gallery ul li img {margin-bottom: 1px;}
body.home #photo-gallery h3 {
	padding: 10px 54px 48px 10px;
	color: #fff; font-size: 30px;
	background: url(../images/gallery_header.jpg) no-repeat;}
body.home #photo-gallery .bx-next,
body.home #photo-gallery .bx-prev {
	position: absolute;
	width: 35px; height: 90px;
	background: url(../images/carousel_arrow.png) no-repeat;
	text-indent: -9999px;}
body.home #photo-gallery .bx-prev {
	top:80px; left: 10px; background-position: center left;}
body.home #photo-gallery .bx-next {
	top:80px; right: 10px; background-position: center right; }

/* =ambassadors
----------------------------------------------------------------------------------------------------------------------- */
body.ambassadors #ambassadors {margin-top: 30px;}
body.ambassadors #ambassadors div {
	position:relative; 
	margin: 0 0 40px 0; padding-left: 120px;}
body.ambassadors #ambassadors div p {display: inline;}
body.ambassadors #ambassadors div a {display: block; overflow: auto;}
body.ambassadors #ambassadors div a#readmore {display: inline; overflow: auto;}
body.ambassadors #ambassadors div a:hover {text-decoration: underline;} 
body.ambassadors #ambassadors div a h2 {font-size: 38px;}
body.ambassadors #ambassadors div a img {position: absolute; top: 20px; left: 0;}

/* =partners
----------------------------------------------------------------------------------------------------------------------- */
body.partners #container #content_main {width: 575px;}
body.partners #container #content_main a img {margin-right: 50px; margin-bottom: 50px; border: 1px solid #fff;}
body.partners #container #content_main a:hover img {border: 1px solid #c7c7c7;}

/* =news
----------------------------------------------------------------------------------------------------------------------- */
body.news #container #content_main h2 {border-top:1px dashed #c7c7c7; padding-top: 15px;}

/* =gallery
----------------------------------------------------------------------------------------------------------------------- */
body.gallery #container #content_main {width: 575px;}

	/* gallery listing */
body.gallery #content_main ul.flickr {margin: 0;}
body.gallery #content_main ul.flickr li {
	position:relative; background: none; 
	width:500px; padding: 0;}
body.gallery #content_main ul.flickr li a {display: block;}
body.gallery #content_main ul.flickr li a img {margin: 0;}
body.gallery #content_main ul.flickr li a span {
	opacity: 0;
	display: inline; 
	position: absolute; bottom: 7px; left: 0; 
	margin: 0; width: 480px; padding: 10px;
	color: #fff; font-family: Arial; font-size: 18px; font-weight: normal;
	background: rgb(225, 135, 18,); background: rgba(225, 135, 18, 0.8); 
	-moz-transition: all .3s; -webkit-transition: all .3s; -o-transition: all .3s;
  transition:all .3s; }
body.gallery #content_main ul.flickr li a:hover span {opacity: 1;}

body.gallery #content_main ul.flickrset {margin: 0 0 0 30px; width: 475px;}
body.gallery #content_main ul.flickrset li {
	display: inline;
	position:relative; background: none; 
	width:200px; padding: 0; margin:0 5px 0 0;}
body.gallery #content_main ul.flickrset li.large {display: block;}
body.gallery #content_main ul.flickrset li a {display: inline; margin-bottom: 45px;}
body.gallery #content_main ul.flickrset li a img {margin: 0; display: inline;}
body.gallery #content_main ul.flickrset li a:hover span {opacity: 1;}


/* =international-challenge
----------------------------------------------------------------------------------------------------------------------- */
body.international-challenge #container #content_main {width: 575px;}


/* =charities
----------------------------------------------------------------------------------------------------------------------- */
#content_main .charity {
	position: relative; float: left;
	width: 110px; margin-right: 30px;}
#content_main .charity.golden_oak {
	position: relative; float: left;
	width: 110px; margin-right: 70px;}
#content_main .charity img {
	padding: 10px;
	border: 1px solid #c7c7c7;}
#content_main .charity a:hover img {
	border: 1px solid #E14412;}
#content_main .charity span.charity-name {
	position: absolute; top: 16px; left: 16px; font-size: 14px; line-height: 14px;}	
#content_main .charity span.charity-email {
	position: absolute; bottom: 16px; left: 16px; font-size: 14px;}
#content_main .charity span.charity-website {
	position: absolute; bottom: 16px; right: -25px; font-size: 14px;}

.charity span.charity-email a:hover,
.charity span.charity-website a:hover {color: #E14412;}

#content_main h2 {clear: both;}


/* =corporates
----------------------------------------------------------------------------------------------------------------------- */
body.teams .teams-div {position: relative; float: left; margin-bottom: 0;}
body.teams .teams-div img {padding: 3px; border: 1px solid #c7c7c7;}


/* =ballot
----------------------------------------------------------------------------------------------------------------------- */
	
	/* ballot signup  */
form#ballot_signup span.message {width: 391px; float: right;}
form#ballot_signup #birthday_error {clear: both;}
form#ballot_signup #birthday_error span.message {text-align: left; width: 100%;}
#validation-errors {padding: 5px 10px;}

p#resultsmobile {
	color: #888888; font-size: 11px; line-height: 11px !important;
  margin-left: 0px; margin-top: -20px; width: 157px;
  text-align: right;}

	/* payment success */
body.thank-you h2 {margin-top: 50px;}
	
	/* edit details */
body.edit_details form label.story {margin-top: 35px;}
body.edit_details form label.story span {width: 435px; text-align: left;}
body.edit_details form label.story textarea {width: 385px; margin-left: 0; margin-top: 10px;}
body.edit_details form label.race_pack select {width: 300px; margin-top: 15px;}


/* =misc
----------------------------------------------------------------------------------------------------------------------- */

body.error div#message {
    margin: 30px auto 0; padding: 10px 30px; width: 600px;
    background: none repeat scroll 0 0 #FFFFFF;
    border: 1px solid purple;}
    
    
/* =maintenance
----------------------------------------------------------------------------------------------------------------------- */
body.maintenance #container {padding: 0; height: 0;}
body.maintenance {background: #fafafa; margin-top: 50px;}
body.maintenance #site_context {
	top: 10px; left: 330px;
	background: url(../images/site_logo_2.png) 10px 40px no-repeat;}
body.maintenance #maintenance_message {
	position: absolute; top: 30px; left: 160px;
	width: 600px; padding: 140px 20px 20px 20px; margin: 0 auto;
	background: #fff; text-align: center;
	border: 1px solid #eee; border-radius: 16px; box-shadow: 0px 1px 2px #e7e7e7;
	font-size: 20px; font-weight: bold;}
