/*
	Website		Impulse Development Application Framework
	Author		Impulse Development
	Date		June 2009
=============================================== */

/* =GENERAL
----------------------------------------------- */

/* GENERAL: =Reset */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, button {
	font-family: Arial, Helvetica, sans-serif;
	margin: 0;
	padding: 0;
}

body {
	font-size: 62.5%;
}

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

fieldset, img {
	border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}

ol, ul {
	list-style: none;
}

caption, th {
	text-align: left;
}

h1, h2, h3, h4, h5, h6, textarea, button {
	font-size: 100%;
	font-weight: normal;
}

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

abbr, acronym {
	border: 0;
}

button::-moz-focus-inner{
	padding:0;
	border:none
}

/* =TYPOGRAPHY
----------------------------------------------- */

/* TYPOGRAPHY: =Headings */

h1 {
	height: 55px;
	overflow: hidden;
	text-indent: -5000px;
	width: 100%;
}

	.home#index h1 {
		background: url(../images/h1-welcome_to_casa_of_el_paso.png) no-repeat left;
	}
	
	.home#page_not_found h1 {
		background: url(../images/h1-page_not_found.png) no-repeat left;
	}
	
	.about h1 {
		background: url(../images/h1-about_casa_of_el_paso.png) no-repeat left;
	}
	
	.volunteer h1 {
		background: url(../images/h1-volunteer.png) no-repeat left;
	}
	
	.donations h1 {
		background: url(../images/h1-donations.png) no-repeat left;
	}
	
	.calendar h1 {
		background: url(../images/h1-calendar.png) no-repeat left;
	}
	
	.questions h1 {
		background: url(../images/h1-questions.png) no-repeat left;
	}
	
	.careers h1 {
		background: url(../images/h1-careers.png) no-repeat left;
	}
	
	.contact h1 {
		background: url(../images/h1-contact_casa_of_el_paso.png) no-repeat left;
	}

h2 {
	clear: both;
	color: #b20000;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 0.5em;
}

h3 {
	clear: both;
	color: #001e66;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 1em;
}

/* TYPOGRAPHY: =Paragraphs */

p {
	color: #222222;
	font-size: 1.2em;
	line-height: 1.4em;
	margin-bottom: 1em;
}

/* TYPOGRAPHy: =Lists */

ul {
	list-style: disc inside;
	margin-bottom: 1em;
	padding-left: 1em;
}

	ul li {
		color: #222222;
		font-size: 1.2em;
		line-height: 1.4em;
	}
	
ol {
	list-style: decimal inside;
	margin-bottom: 1em;
}

	ol li {
		color: #222222;
		font-size: 1.2em;
		line-height: 1.4em;
	}
	
dl {
	clear: both;
	width: 100%;
}

	dl dt {
		color: #b20000;
		font-size: 1.6em;
		font-weight: bold;
		line-height: 1em;
		margin-bottom: 0.5em;
	}
	
	dl dd {
		color: #222222;
		font-size: 1.2em;
		line-height: 1.4em;
		margin-bottom: 1em;
	}
	
/* TYPOGRAPHY: =Links */

a {
	color: #b20000;
	font-weight: bold;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}
	
/* TYPOGRAPHY: =Variants */

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

/* =STRUCTURE
----------------------------------------------- */

/* STRUCTURE: =Background */

body {
	background: url(../images/bg-body.gif) repeat-x top center #98ccf0;
}

/* STRUCTURE: =Layout */

#pageContainer {
	margin: 0 auto;
	width: 956px;
}

#pageHeader {
	height: 190px;
	position: relative;
	width: 100%;
}

#pageBody {
	position: relative;
	width: 100%;
}

	#bodyContent {
		background-color: #f2f2f2;
		display: inline;
		float: left;
		padding: 6px;
		width: 684px;
	}
	
		#bodyContent .wrapper {
			background-color: #ffffff;
			border: 1px solid #cccccc;
			display: inline;
			float: left;
			padding: 12px 12px 0 12px;
			width: 658px;
		}
	
	#bodySidebar {
	  position: absolute;
	  right: 0;
	  top: 55px;
		width: 236px;
	}
	
		#bodySidebar .section {
			background-color: #b4e0ff;
			margin-bottom: 12px;
			padding: 6px;
		}
	
#pageFooter {
	clear: both;
	height: 40px;
	position: relative;
	width: 696px;
}

/* =HEADER
----------------------------------------------- */

/* HEADER: =Logo */

#headerTitle {
	left: 0;
	position: absolute;
	top: 12px;
}

	#headerTitle p {
		margin: 0;
	}
	
		#headerTitle p a {
			background: url(../images/logo-medium.png) no-repeat;
			display: block;
			height: 125px;
			overflow: hidden;
			text-indent: -5000px;
			width: 241px;
		}
		
/* HEADER: =Banner */

#headerBanner {
	display: inline;
	float: right;
}

/* HEADER: =Navigation */

#headerNavigation {
	bottom: 0;
	height: 40px;
	left: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	position: absolute;
	width: 100%;
}

	#headerNavigation li {
		display: inline;
		float: left;
		height: 40px;
	}
	
		#headerNavigation li a {
			display: block;
			height: 40px;
			overflow: hidden;
			text-indent: -5000px;
		}
		
		#headerNavigation li.home a {
			background: url(../images/nav-home.gif) no-repeat top;
			width: 88px;
		}

		#headerNavigation li.about a {
			background: url(../images/nav-about.gif) no-repeat top;
			width: 97px;
		}

		#headerNavigation li.volunteer a {
			background: url(../images/nav-volunteer.gif) no-repeat top;
			width: 133px;
		}

		#headerNavigation li.donations a {
			background: url(../images/nav-donations.gif) no-repeat top;
			width: 133px;
		}

		#headerNavigation li.calendar a {
			background: url(../images/nav-calendar.gif) no-repeat top;
			width: 122px;
		}

		#headerNavigation li.questions a {
			background: url(../images/nav-questions.gif) no-repeat top;
			width: 130px;
		}

		#headerNavigation li.careers a {
			background: url(../images/nav-careers.gif) no-repeat top;
			width: 109px;
		}

		#headerNavigation li.contact a {
			background: url(../images/nav-contact.gif) no-repeat top;
			width: 115px;
		}
		
		#headerNavigation li a:hover,
		#headerNavigation li a.current {
			background-position: 0 -40px;
		}
		
/* =CONTENT
----------------------------------------------- */

/* CONTENT: =Items */

#bodyContent .item {
	clear: both;
	width: 100%;
}

	#bodyContent .item h2 {
		margin-bottom: 0.25em;
	}

/* CONTENT: =Galleries */

#bodyContent .gallery {
	display: inline;
	float: left;
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

  #bodyContent .gallery .row {
    clear: both;
    float: left;
    width: 100%;
  }

	#bodyContent .gallery .item {
	  clear: none;
		display: inline;
		float: left;
		margin-bottom: 1em;
		*margin-bottom: 0;
		text-align: center;
		width: 33.3%;
	}
	
		#bodyContent .gallery .item strong {
			display: block;
		}

/* CONTENT: =Vcards */

#bodyContent .vcard {
	margin-bottom: 1em;
	text-align: center;
}

	#bodyContent .vcard p,
	#bodyContent .vcard a {
		color: #333333;
		line-height: 1.5em;
		margin: 0;
	}
	
		#bodyContent .vcard p .type {
			font-weight: bold;
		}
	
		#bodyContent .vcard p .street-address {
			display: block;
		}
		
/* CONTENT: =Donation Form */

.donationForm {
  clear: both;
  float: left;
  margin-bottom: 1em;
  text-align: center;
  width: 100%;
}

  .donationForm form {
    width: 100%;
  }
		
/* CONTENT: =Horizontal Rules */

#bodyContent .hr {
	border-bottom: 1px solid #cccccc;
	clear: both;
	float: left;
	height: 1px;
	margin: 0.5em 0 1.75em 0;
	width: 100%;
}

	#bodyContent .hr hr {
		display: none;
	}
	
/* =SIDEBAR
----------------------------------------------- */

/* SIDEBAR: =Donate To Casa */

#sidebarSection-donate p {
	margin: 0;
}

	#sidebarSection-donate p a {
		background: url(../images/misc-donate_to_casa.png) no-repeat;
		border: 1px solid #cccccc;
		display: block;
		height: 136px;
		overflow: hidden;
		text-indent: -5000px;
		width: 222px;
	}
	
/* SIDEBAR: =Volunteer With Casa */

#sidebarSection-volunteer p {
	margin: 0;
}

	#sidebarSection-volunteer p a {
		background: url(../images/misc-volunteer_with_casa.png) no-repeat;
		border: 1px solid #cccccc;
		display: block;
		height: 136px;
		overflow: hidden;
		text-indent: -5000px;
		width: 222px;
	}
	
/* SIDEBAR: =Vcard */

#sidebarVcard {
	text-align: center;
}

	#sidebarVcard h2,
	#sidebarVcard p,
	#sidebarVcard a {
		color: #333333;
		line-height: 1.5em;
		margin: 0;
	}
	
	#sidebarVcard h2 {
		font-size: 1.2em;
	}
	
	#sidebarVcard p {
		font-size: 1.1em;
	}
	
		#sidebarVcard p .type {
			font-weight: bold;
		}
	
		#sidebarVcard p .street-address {
			display: block;
		}
		
/* SIDEBAR: =Newsletter */

#sidebarSection-newsletter {
  float: left;
  width: 222px;
}

  #sidebarSection-newsletter form {
    background: url(../images/misc-sign_up.png) no-repeat;
    border: 1px solid #cccccc;
    height: 68px;
    padding-top: 68px;
    width: 222px;
  }
  
  #sidebarSection-newsletter input {
    background: #ffffff;
  	border: 1px solid #cccccc;
  	display: block;
  	font-size: 1.2em;
  	margin: 0 auto 12px auto;
  	padding: 4px;
  	text-align: center;
  	width: 195px;
  }
  
  #sidebarSection-newsletter button {
    background: transparent;
		border: none;
		cursor: pointer;
		display: block;
		margin: 0 auto;
		width: 56px;
  }
    
    #sidebarSection-newsletter button span {
      background: url(../images/btn-submit_sidebar.gif) no-repeat;
      display: block;
      height: 12px;
      overflow: hidden;
      text-indent: -5000px;
      width: 56px;
    }
		
/* SIDEBAR: =Facebook */
		
#sidebarFacebook {
  margin: 0;
  width: 100%;
}

  #sidebarFacebook p {
    width: 100%;
  }

    #sidebarFacebook p a {
      background: url(../images/facebook.png) no-repeat center center;
      display: block;
      height: 75px;
      margin: 0 auto;
      overflow: hidden;
      text-indent: -5000px;
      width: 75px;
    }
		
/* =FOOTER
----------------------------------------------- */

/* FOOTER: =Typography */

#pageFooter p {
	color: #3b6887;
	font-size: 1.1em;
	line-height: 40px;
	margin: 0;
}

#pageFooter a {
	color: #264d68;
}

/* FOOTER: =Copyright */

#footerCopyright {
	bottom: 0;
	left: 0;
	position: absolute;
}

/* FOOTER: =Developer */

#footerDeveloper {
	bottom: 0;
	position: absolute;
	right: 0;
}

	#footerDeveloper p {
		background: url(../images/logo-impulse_development.png) no-repeat right;
		display: inline;
		float: left;
		padding-right: 24px;
	}

/* =IMAGES
----------------------------------------------- */

.image {
	margin-bottom: 1em;
}

	.image img {
		border: 1px solid #dddddd;
		padding: 4px;
	}
	
	.image a:hover img {
		border: 1px solid #aaaaaa;
	}
	
/* =ALIGNMENT
----------------------------------------------- */

.floatLeft {
	display: inline;
	float: left;
	margin: 0 1em 1em 0;
}

.floatRight {
	display: inline;
	float: right;
	margin: 0 0 1em 1em;
}

/* =FORMS
----------------------------------------------- */

form {
	margin: 0 auto;
	width: 65%;
}

/* FORMS: =Field Containers */

.textField,
.textArea,
.fileField,
.submitButton {
	display: inline;
	float: left;
	margin-bottom: 1em;
	width: 100%;
}

/* FORMS: =Labels */

label {
	color: #222222;
	display: block;
	font-size: 1.2em;
	line-height: 2em;
}

/* FORMS: =Required Fields */

.required label {
	font-weight: bold;
}

/* FORMS: =Text Fields & Areas */

.textField input,
.textArea textarea {
	background: #ffffff;
	border: 1px solid #cccccc;
	font-size: 1.2em;
	padding: 4px;
	width: 97%;
}

.textArea textarea {
	height: 75px;
}

/* FORMS: =Fields With Errors */

.fieldWithErrors {
	display: inline;
}

.fieldWithErrors input,
.fieldWithErrors textarea {
	background-color: #fdf2f2;
	border: 1px solid #b00000;
}

/* FORMS: =Submit Buttons */

.submitButton {
	text-align: center;
}

	.submitButton button {
		background: #f2f2f2;
		border: none;
		cursor: pointer;
		padding: 6px;
	}

		.submitButton button span {
			background-color: #ffffff;
			border: 1px solid #cccccc;
			color: #222222;
			display: block;
			font-size: 1.4em;
			font-weight: bold;
			padding: 4px 12px;
			*padding: 4px 0px;
		}
		
	.submitButton button:hover {
		background: #b4e0ff;
	}
		
		.submitButton button:hover span {
			color: #001e66;
		}
		
/* FORMS: =Error Explanation */

.errorExplanation {
	background: #f7eded;
	border: 1px solid #b00000;
	margin-bottom: 12px;
	padding: 12px;
}

	.errorExplanation h2 {
		display: none;
	}

	.errorExplanation p {
		color: #b00000;
		font-size: 12px;
		font-weight: bold;
		text-align: center;
	}

	.errorExplanation ul {
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
	}

		.errorExplanation ul li {
			color: #b00000;
			font-size: 12px;
			line-height: 15px;
			list-style: none;
			margin-bottom: 0;
			text-align: center;
		}