/*
*************************************************

MOZILLA.ORG
General Screen Styles

Created by the friendly folks at Happy Cog
http://www.happycog.com/

*************************************************
*/

/*-------------------------------------------    
    Reset
-------------------------------------------*/
* { margin:0; padding:0; line-height:1.4; }
body { background:#fff url(/i/screen/bg_body_0.jpg) no-repeat left top; color:#888; font:62.5% Arial, sans-serif; }


/*-------------------------------------------    

    NOTES

	-----
	
	Layout: 	
	'*-wrap' is used for a negative
	margin to allow source order to reflect
	visual order, I don't like it any more
	than you do.

	-----
	
	Z-Index Reference
	
	1:	#header h1
	2:	#crumbs

-------------------------------------------*/


body { margin:0 166px; min-width:800px; }
body { /*width:90%; margin-left:10%;*/ }

#header { border-bottom:23px solid #a5151e; min-height:176px; margin-bottom:2em; position:relative; background: #2a2a2a; }
	#header > h1 { background:transparent url(/i/screen/bg_body_1.png) no-repeat left top; position:absolute; left:-110px; margin:0; top:-39px; width:466px; height:288px; /*text-indent:-9999px;*/ z-index: 1; }
		#header h1 a { display: block; width: 230px; height: 51px; text-indent: -9999px; position: absolute; top: 136px; left: 174px; background: transparent url(/i/screen/logo.png) no-repeat 0 0; overflow: hidden; }
		#header h1 a:hover, #header h1 a:focus { background-position: 0 -51px; border: none; }
			
		#nav { float: right; width: 250px; margin: 15px 0; border-top: 1px solid #1d1d1d; }
			#nav li { background: none; border-bottom: 1px solid #1d1d1d; font-size: 12px; font-weight: bold; padding: 0; }
				#nav a, #nav strong { color: #fff; display: block; padding: 0.75em 10px; text-transform: uppercase; letter-spacing: 1px; font-weight: normal; }
				#nav a:hover, #nav a:focus { border: none; color: #f59d56; }
				#nav strong { background: #191919; color: #f59d56; }
	
	#footer-wrap { background:transparent url(/i/screen/bg_body_2.jpg) no-repeat left bottom; margin-left:-166px; padding-left:166px; }
	#footer { background: #2a2a2a; border-top:13px solid #a5151e; clear:both; color:#999; margin-top:105px; padding:25px 166px 5em 64px; position:relative; }
		#footer h1, #footer h2, #footer h3, #footer h4, #footer h5, #footer h6, #footer p { color:#999; }
		.footer-nav { list-style:none; margin:0; }
		.footer-nav li { font-size:12px; background:none; padding-left:0; margin-bottom: 0.25em; }
		.footer-nav-title { font-family:Arial, sans-serif; text-transform:uppercase; font-size:12px; }
		#footer .col-span { font-size:13px; }
		#footer .six-col { background:#2a2a2a; }
		#copyright { background:transparent url(/i/screen/logo_footer.gif) no-repeat 0 0; font-size:11px; padding-top:120px; }
		#copyright a { display:block; }
		#copyright .first { margin-top:10px; }
	
		#languages { position:absolute; top:2em; right:166px; }
		#languages select { margin-left:10px; }

#quick-search { background:transparent url(/i/screen/bg_search.gif) no-repeat left top; position:absolute; bottom:-23px; right:143px; height:23px; width:285px; padding:0 23px 0 26px; }
	#quick-search p { background:#a5151e; padding:10px 15px; }	
	#quick-search #q { width:212px; margin-right:12px; font-size: 90%; }
	#quick-search-btn { vertical-align:bottom; }

#localnav { background:transparent url(/i/screen/bg_localnav.png) no-repeat left top; float:left; width:195px; list-style:none; margin:-10px 0 0 18px; padding:10px 33px 10px 15px; }
	#localnav .first { border-top:9px solid #a8212a; padding-top:15px; } /* @todo placing `first` on anything other than the UL doesn't look right, need to fix this */
	#localnav ul { list-style:none; margin:0; }
	#localnav a, #localnav strong { color:#000; font: normal 121% Georgia, serif; padding: 5px 10px; }
	#localnav a:hover, #localnav a:focus { color: #148cb5; border: none; }
	#localnav a.on, #localnav strong { background:#148cb5; color:#fff; }
	#localnav li { background: none; border-top:1px solid #CFE1E7; padding:10px 20px; }
	#localnav li:first-child { border-top:none; }
	#localnav li ul { margin-top:10px; }
	#localnav li li { background:transparent url(/i/screen/bullet_localnav.gif) no-repeat left .85em; border:none; margin-left:15px; padding:4px 4px 4px 14px; }
	#localnav li li a { color:#148cb5; font-family:Arial, sans-serif; font-size:92%; padding: 0; }
	#localnav li li a:hover, #localnav li li a:focus { border-bottom: 1px dashed #4ca4c2; }

#main { overflow:hidden; padding-top:35px; position:relative; top:-35px; }
	.home #main { top:0; }
#primary-wrap { float:left; margin-right:-250px; width:100%; }
#primary { margin-right:250px; }

#sub { float:right; width:230px; margin: 40px 0 0; }


/*-------------------------------------------    
    Defaults
-------------------------------------------*/
li, p, code { font-size:14px; }
	p { margin-bottom:1em; }
		p.section { margin:0; }
	li { list-style-type: none; background: transparent url(/i/screen/bullet.gif) no-repeat 0 0.5em; padding-left: 10px; }
		li li {  }

h1, h2, h3, h4, h5, h6, #moral { color:#2a2a2a; font-family:Georgia, serif; font-weight:normal; }
	h1 { font-size:800%; margin:.2em 0; }
	h2 { font-size:450%; margin:.55em 0; color:#b91e27; }
	h3 { font-size:250%; margin:.75em 0; }
	h4 { font-family: Arial, sans-serif; font-size:130%; font-weight:bold; text-transform:uppercase; margin:.8em 0; }
		.section h4 { margin-top: 0; }
	h5 { font-size:150%; margin:.85em 0; }
	h6 { font-size:125%; margin:.875em 0; }

ul, ol { margin:1em 0 1em 30px; }
	li ul, li ol { margin:0 0 0 30px; }

pre { background:#eee; border:1px solid #ccc; margin:1em; padding:1em; }

a { color:#148cb5; text-decoration:none; }
a:hover, a:focus { border-bottom: 1px dashed #4ca4c2; /*background: transparent url(/i/screen/bg_link.gif) repeat-x 0 bottom;*/ }

img { display: block; float: left; margin: 0 10px 10px 0; }
img.right { margin: 0 0 10px 10px; float: right; }

object, embed { display: block; margin: 0 auto 20px; background-color: #fff; padding: 7px; }
.video-holder { background: transparent url(/i/screen/video-bg.png) no-repeat 50% 50%; min-height: 375px; min-width: 428px; /*display: table-cell; vertical-align: middle;*/ }
	.video { background-color: rgba(0, 0, 0, 0.2); padding: 7px; margin-left: auto; margin-right: auto; position: absolute; top: 50%; left: 50%; }

/*-------------------------------------------    
    Modules
-------------------------------------------*/
.clearfix, #main:after, .projects:after, .cols:after, #news:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }

#skip, #quick-search label { display: block; position:absolute; left:-9999px; }

#utility { font-family:"Trebuchet MS", sans-serif; margin: 1.1em 0 1em 30px; text-align:right; text-transform:uppercase; letter-spacing: 0.1em; }
	#utility * { display:inline; }
	#utility strong { color:#000; font-size:11px; }
	#utility ul { margin-left:10px; }
	#utility li { background:transparent url(/i/screen/bullet_utility.gif) no-repeat 4px center; padding-left:14px; font-size:11px; }
		#utility li:first-child { background:none; padding:0; } /* @todo: needs ie fixing */

.section { border-bottom:1px solid #c3c3c3; padding:2em 0; overflow:hidden; position: relative; }
#primary .section { border-bottom: none; border-top:1px solid #c3c3c3; }
#primary .section.first { border-top: none; padding-top: 0; }

.title, .more { text-transform:uppercase; /*display:block;*/ }
.more { color:#2987AD; font-family:"Trebuchet MS", sans-serif; font-weight:bold; font-size: 80%; letter-spacing: 1px; }

/*.left { float:left; padding-bottom:999px; margin:0 20px -999px 20px; overflow:hidden; }
.right { padding-bottom:999px; margin:0 20px -999px 20px; overflow:hidden; float: right; }
	.left img, .right img { float: none; display: inline; }*/

.cols { clear:both; } /* @todo: add more col possibilities */
	.three-col { float:left; width:30%; margin-right:5%; }
	.six-col { float:left; width:14.5%; padding-right:2.6%; }
	.cols > *:last-child { margin-right:0; padding-right:0; }
	
	.col-span { border-bottom:1px solid #404040; padding-bottom:15px; }

ul.rows { border-top: 1px solid #dbe2e8; margin: 0 0 1em; }	
	ul.rows li { border-bottom: 1px solid #dbe2e8; padding: 1em 10px; background: none; }

#crumbs { margin-left: 64px; font-size:12px; position: relative; z-index: 2; clear: both; letter-spacing: 0.1em; }
	#crumbs a { display:inline; }
	
#page-title { margin:-12px 0 37px 60px; }

#main .first { border-top:3px solid #c3c3c3; }

.lead { font-family:Georgia, serif; font-size:200%; }

.cta { background:#dadada url(/i/screen/bg_cta.gif) repeat-x 0 0; padding:20px; margin: 0 0 30px; }
	.cta h4 { font: 250% Georgia, serif; text-transform: none; color: #fff; }
	.cta p { color:#565353; line-height: 1.7; font-style: italic; }
	.cta h4 + p:first-line { font-weight: bold; }
	
.powered-by { background: transparent url(/i/screen/powered-by-mozilla.gif) no-repeat 0 0; width: 205px; height: 73px; text-indent: -9999px; position: relative; left: -3px; margin: 0; }

/*-------------------------------------------    
    Homepage Layout
-------------------------------------------*/
.home #main-wrap { float:left; margin:0 -305px 0 0; width:100%; }
.home #main { margin:0 305px 0 0; overflow:visible; }

.home #sub { width:305px; padding: 0; }
	.home #community-sub { background: transparent url(/i/screen/bg_community_t.png) no-repeat left top; /*border-top:5px solid #0095B9;*/ /*min-height:438px; padding:20px;*/ padding: 2em 0 0; }
.home .section { border-bottom-color:#dbe2e8; }


/*-------------------------------------------    
    Homepage Morals
-------------------------------------------*/
#moral { color:#777; font-size:30px; line-height:1.2; margin: 0 20px 20px 63px; text-indent: -6px; }
	#moral strong { color:#A80C1E; font-weight:normal; font-size:266%; line-height:1; display: block; letter-spacing: -3.5px; margin-bottom:-9px; }
	
#morals { color:#888888; font-size:14px; margin: 0 20px 1em 63px; }
	#morals .title { font-size:13px; font-weight: bold; }

.moral-wrap { float:right; width:270px; height:70px; } /* @note to preserve a readable source order we had to add an empty div, sigh... */

.agree { position:absolute; top:23px; right:0; width:242px; background:transparent url(/i/screen/agree.gif) no-repeat left top; padding:24px; font-size:11px; text-transform:uppercase; font-family:"Trebuchet MS", sans-serif; }
.agree .comments { position:absolute; top:-3px; right:35px; background:transparent url(/i/screen/agree-comment.gif) no-repeat 6px bottom; padding-bottom:12px; }
.agree .comments:hover { border:none; }
.agree .comments span { background-color:#f07d20; padding:4px; color:#fff; }

	

/*-------------------------------------------    
    Homepage Projects
-------------------------------------------*/
#our-projects { color:#a5151e; font-size:30px; margin:0 0 0 53px; }
	#our-projects a { font-size:11px; text-transform:uppercase; font-family:"Trebuchet MS", sans-serif; font-weight:bold; letter-spacing: 1px; }

.project-carousel { background: #cbcccc; padding:6px; margin-bottom:4.1em; font-size:10px; }
	.projects { background: #dee0e1; /*border-radius:[see browser specifics]*/ }
	
	.project { width:200px; padding-right:36px; float:left; } /* @todo: inline-block candidate */
	.project .more { margin-top:2px; }
	
	
/*-------------------------------------------    
    Homepage Community
-------------------------------------------*/	
#feeds-url { font: bold 11px 'Trebuchet MS', Arial, sans-serif; text-transform: uppercase; letter-spacing: 0.1em; margin: 0 20px 1em 30px; }

#community-sub { margin-bottom: 3em; }
	#community-sub h2 { font-size:25px; margin:20px 35px 0 30px; }
	#community-sub ul.rows { margin-left:20px; margin-right:20px; }
		#community-sub .rows li { padding-left: 45px; font-size: 12px; background-color: transparent; background-position: 12px 12px; background-repeat: no-repeat; }
			#community-sub .rows a { color: #888; font-weight: bold; }
			#community-sub .rows a:hover { color: #148cb5; }
			#community-sub .rows span { display: block; }
			
	#community-sub p.more { background: transparent url(/i/screen/community-bottom.png) no-repeat 50% bottom; padding-bottom: 30px; }
		#community-sub p.more a { background: transparent url(/i/widgets/view-more.gif) no-repeat 0 0; width: 164px; height: 27px; display: block; text-indent: -9999px; position: relative; left: 67px; top: 5px; }
		#community-sub p.more a:hover, #community-sub p.more a:focus { background-position: 0 -27px; border: none; }



/*-------------------------------------------    
    Homepage News
-------------------------------------------*/
#news { margin-bottom: 4em; }
	#news h2 { color:#b91e27; font-size:25px; margin: 0 0 0 53px; padding-bottom: 0.3em; border-bottom: 1px solid #dbe2e8; width: 90%; }
	#news h2 a { font-size:11px; font-family:"Trebuchet MS", sans-serif; text-transform:uppercase; letter-spacing: 0.1em; }
	#news .section { color:#A8A5A2; float:left; font-size:13px; padding:1.5em 0; overflow:hidden; margin: 0 0 0 63px; width: 90%; }
	#news .date, #news .item { padding-bottom:999px; margin-bottom:-999px; overflow:hidden; }
		#news .date { color:#4b4740; color: #888; float:left; margin-right:22px; font-size:12px; text-transform:uppercase; letter-spacing: 0.1em; }
	#news .title, #news .more { display:inline; }
	#news .title { color: #888; }	
	
	
	
/*-------------------------------------------    
    Edit Page
-------------------------------------------*/
.modified { position:absolute; top:7px; right:128px; font-size:12px; color:#767676; }
.edit { position:absolute; top:0; right:0; width:110px; border:1px solid #cacaca; z-index:1; }
.edit dt { padding:5px 10px; color:#148cb5; background:transparent url(/i/widgets/down-arrow.gif) no-repeat 90px center; font-size:12px; }
.edit dd { background:#eaeaea; font-size:11px; }
.edit dd a { margin:0 5px; padding:5px; display:block; border-bottom:1px solid #c3c3c3; }
	.edit dd:last-child a { border:none; }

.edit dd { display:none; }
.edit:hover dd { display:block; }



/*-------------------------------------------    
    BUGS

	Bugs are coded to be self contained.
	Anything that's a bug has a class of "bug".
	It also has an id that makes it 
	individual.
-------------------------------------------*/
#get-involved { text-align: center; margin: 20px 0 46px; }
	#get-involved h2 { display: block; background: transparent url(/i/screen/get-involved.gif) no-repeat 52% 0; width: 263px; height: 168px; text-indent: -9999px; }
	#get-involved p { margin-left:-20px; }

.home #sub .bug { margin: 0 0 0 20px; }
	
.bug h2 { font-size: 20px; margin-bottom: 0; line-height: 1.2; }
.bug h3 { font-size: 13px; color: #888; font: 120% Arial, sans-serif; text-transform: uppercase; letter-spacing: 0.1em; }

.home #sub #gear { clear: both; margin: 0; overflow: hidden; position:relative; right:-20px; }
#gear h3 { font-size:13px; margin:0; font-weight:bold; }
#gear a { font-weight:bold; }

.looking-for-firefox { text-align:center; width:150px; margin:0 auto; }
.looking-for-firefox img { float:none; display:inline; }
.looking-for-firefox strong { font-size:16px; font-family:Georgia, serif; color:#2a2a2a; font-weight:normal; display:block; }
.looking-for-firefox a { display:block; }

.principles { background:transparent url(/i/principles/principle1.jpg) no-repeat left 2em; height:193px; padding:58px 44px 0 248px; font-size:16px; font-family:Georgia, serif; color:#2a2a2a; width:220px; margin:0 auto; }
.principles .more { display:block; margin-top:1em; }
.principle2 { background-image:url(/i/principles/principle2.jpg); }
.principle3 { background-image:url(/i/principles/principle3.jpg); }
.principle4 { background-image:url(/i/principles/principle4.jpg); }
.principle5 { background-image:url(/i/principles/principle5.jpg); }
.principle6 { background-image:url(/i/principles/principle6.jpg); }
.principle7 { background-image:url(/i/principles/principle7.jpg); }
.principle8 { background-image:url(/i/principles/principle8.jpg); }
.principle9 { background-image:url(/i/principles/principle9.jpg); }
.principle10 { background-image:url(/i/principles/principle10.jpg); }



/*-------------------------------------------    
    Browser Specific CSS
-------------------------------------------*/
/*body {
	background-color:#fff;
	background-image:url(/i/screen/bg_body_0.jpg), url(/i/screen/bg_body_2.jpg);
	background-repeat:no-repeat;
	background-position:left top, bottom left;
}*/

.projects { 
	padding:10px;
	
	border-radius:10px;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
}


/*-------------------------------------------    
    Debug
-------------------------------------------*/
/*#localnav { background:#ccc !important; }*/
/*body { background:#fff url(/tmp.jpg) no-repeat center top; }*/
/*body { background:#fff url(/tmp2.jpg) no-repeat center top; }*/
