 
/*
COLORS
Define main colors used in a site here for easy reference

Blue = 0072AD
Lt Blue = 29BECC

*/

html {
	height: 100%;
}

body {
	margin: 0;
	font: 62.5%/1.5em arial, helvetica, sans-serif;
	text-align: center;
	color: #333;
	height: 100%;
	background: #94dfe5 url(../images/design/bg_fade.gif) 0 0 repeat-x;
}

/* ----------------
	DEFAULTS AND RESETS
    ------------- */

/* PC FF3 adds an outline to Flash objects? */
a, object {
	outline: none;
}

a img { border: none; }

h1, h2, h3, h4, h5, h6 {
    color: #0072AD;
	margin: 0;
	line-height: 1.3em;
	margin-bottom: 0.5em;
}  

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, 
h1 a:link, h2 a:link, h3 a:link, h4 a:link, h5 a:link, h6 a:link,
h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited  {
    color: #0072AD;
    border-bottom: 0;
}
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
    color: #29BECC;
} 

h1 { font-size: 1.8em; }
h2 { font-size: 1.35em; }
h3 { font-size: 1.35em; }
h4 { font-size: 1.35em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1em; } 

/*
h1 { margin-bottom: 1em; }
*/

h2 {
	font-weight: bold;
}
	
	#faqSection ul.unorderedList { margin-top: 0; }
		
	body.home h2 {
		font-size: 1.25em;
	}
	
h3 {color: #28BECC; }
h3 span {text-transform: uppercase;}
	
	
dt {
	font-weight: bold;
	margin-bottom: 0;
}
dd {
	margin: 0 1.5em;
}
	dd p:first-child {
		margin-top: .5em;
	}
 
a,
a:link,
a:visited {
    color: #0072AD;
	text-decoration: none;
}
a:hover,
a:active {
    color: #29BECC;
}

strong, b { font-weight: bold; }
em, i { font-style: italic; }

p {
	line-height: 1.5em;
	font-size: 1.2em;
	margin-top:0;
}

/* For HR's with background images */	
div.hr {
  	height: 3px;
  	margin: 10px 0;
  	background: #fff url() 0 0 repeat-x;
}
	div.hr hr {
	  	display: none;
	}
hr {
	height: 1px;
	background: #BFECF0;
	color: #BFECF0;
	border: none;
	margin-bottom: 2em;
}
	
	table hr {
		margin-bottom: 0.5em;	
	}

ul, ol {
    margin: 0;
    padding: 0;
    list-style: disc;
    color: #666;
}

ol {
    list-style: decimal;
    padding: 0;
}
	ol ul,
	ol ol {
		margin: 0;
		padding: 0;
	}

/* orderedList class can be assigned manually, or with jQuery method. Intended to style bullets differently than text.  */
ol.orderedList li span {
    color: #666;
}
ol.orderedList {
	color: #000;
}
	li {
	    margin: 0;
	    padding: 0;
	} 

blockquote, q {
	margin: 0;
    margin-top: 1em;
    margin-bottom: 1em;
    padding: 0;
    /*border-left: 1px solid #dcd6c6;*/
    font-style: italic; 
    font-size: 1.2em;   
    color: #666; 
    line-height: 1.5em;
}

blockquote span {
	display: block;
	font-style: normal;
	color: #0072AD;	
}

small,
.small { 
    font-size: .8em;
}

/* table { border: 0; border-collapse: collapse; } */

address { font-style: normal; font-weight: bold; color: #0072AD; margin-bottom: 1.5em; }
form { margin: 0; }


/* ----------------
	PAGE STRUCTURE
	Elements that make up the skeleton of the layout and holds things together
    ------------- */
#page {
	text-align: center;
	padding: 0;
	margin: 0 0 2em 0;
	font-size: 1.2em; /* this, along with body font size of 62.5% renders type approximately 12px in size across all browsers */
	background: url(../images/design/flags.gif) 0 0 repeat-x;
}

#wrapper {
	position: relative;
	margin: 0 auto;	
	width: 960px;
	text-align: left;
}

#header {
	height: 215px;
	border-bottom: 2px solid #bfecf0;
	background: url(../images/design/bg_header.gif) 0 100% no-repeat;
}

#columns {
	background-color: #F4FCFC;
	border-left: 3px solid #c3edf1;
	border-right: 3px solid #c3edf1;
	/*background: url(../images/design/bg_columns.gif) 0 0 repeat-y;*/
}

#footer  {
	width: 960px;
	margin: 0 auto;
	border-top: 2px solid #bfecf0;
	background: url(../images/design/bg_footer.gif) 0 100% no-repeat;
}
	#footerInner {
		padding: 10px 30px;
	}
		#footer .main {
			float: right;
			text-align: right;
			width: 350px;
		}
		#footer .sub {
			float: left;
			text-align: left;
			width: 450px;
		}

#columnNav {
	width: 185px;
	float: left;
}

#content {
	float: left;
	width: 768px; /* 4px border is added via bg image, don't overlap it */
}

	#contentMain {
		float: left;
		width: 498px;
		border-left: 1px solid #bfecf0;
		border-right: 1px solid #bfecf0;
		background-color: #fff;
		min-height: 500px;
	}
		#contentMainInner {
			padding: 30px;
		}

	#contentSub {
		float: right;
		width: 268px;
	}
	
	#contentSubInnerText {
		padding: 20px 28px;
	}
	
	/*
		#contentSubInner {
			padding: 30px 15px;
		}	
		
	*/	
body.oneColumn #contentMain {
	width: 766px;
	border-right: 0;
}
body.oneColumn #contentSub {
	display: none;
}


body.home #contentMain {
	width: 555px;
}
body.home #contentSub {
	width: 210px;
}
body.home #contentSubInner {
	padding: 10px;
}
	
	.partner {margin: 80px 30px 10px 30px;}
	.partnerLogo {margin-left: 10px;}
	
#testimonialLeft {
	width: 320px; 
	float: left;
}

#testimonialRight {
	width: 320px; 
	float: right;
}

/* ----------------
	PAGE STRUCTURE ELEMENTS
	Elements  such as logos, search bars, and any other design element repeated throughout the site, but doesn't effect the structural layout
    ------------- */
#logo {
	width: 343px;
	height: 192px;
	display: block;
	background: url(../images/design/logo.png) 0 0 no-repeat;
	position: absolute;
	top: 28px;
	left: 30px;
	margin: 0;
	padding: 0;
	font-size: 1em;
}
	#logo a {
		width: 343px;
		height: 192px;
		display: block;
		text-indent: -9999px;
	}
	
#contactText {
	position: absolute;
	top: 90px;
	right: 150px;
	width: 181px;
	height: 44px;
	text-indent: -9999px;
	background: url(../images/design/txt_contact.gif) 0 0 no-repeat;
}

#donate {
	position: absolute;
	top: 90px;
	right: 15px;
	width: 120px;
	height: 46px;
}
	#donate a {
		display: block;
		width: 120px;
		height: 46px;
		text-indent: -9999px;
		background: url(../images/design/btn_donate.gif) 0 0 no-repeat;
	}

#tools {
	position: relative;
}

#login {
	position: relative;
	top: 10px;
	right: 0;
	color: #0072ad;
	font-size: .8em;
	text-align: right;
	padding-top: 20px;
}
	#login a { color: #0072ad; border-bottom: 1px solid #0072ad; font-size: .8em; }
	#login form { position: relative; padding-right: 40px;}
	#login .submit { 
		position: absolute;
		right: 0;
		top: 2px;
	}
	
	#login img {
		_margin-top: 15px;
	}
	 
	.loginBtn {
		margin: 0 0 0 14px;
	}
		#login .loginBtn a {
			border: 0;
		}
	
	
.contentHeader {
	margin-bottom: 2em;
	border-bottom: 1px solid #bfecf0;
}

	.contentHeader img {
		float: right;
		margin: -3.5em 0 2em 2em;
	}
	
	.video {padding-bottom: 2em; }

/* deprecated 
.contentInfo img {
		float: left;
		margin-right: 1.5em;
		margin-bottom: 1.5em;
	}
*/

#myiframe {
	width: 705px;
}

#homeFlash {
	margin: -15px -15px 2em -15px;
	height: 270px;
}

.pullOut {
	float: right;
	margin: 0 0 2em 2em;
}



table,
table#custom  {
		border-collapse: collapse;
		width: 100%;
		border-top: 1px solid #BFECF0;
		border-left: 1px solid #BFECF0;
		border-right: 1px solid #BFECF0;
		margin-bottom: 1.5em;
	}

table#custom {
	margin-left: 0;
	margin-bottom: 0;
}

	#contentSub table {
		border-left: none;
		border-right: none;
	}
	
	table caption {
		background: #FFF;
		margin: 1em 0;
	}
			
	table tr {
		margin-top: 0;
	}
	
	table th {
		background: #DDF5F7;
		text-align: left;
		padding: 0.5em;
		border-bottom: 1px solid #BFECF0;
	}
	
	table td,
	table#custom td {
		border-bottom: 1px solid #BFECF0;
		border-top: 1px solid #BFECF0;
		background: #FFF;
		text-align: left;
		padding: 0.5em;
	}
	
	table td.first-child {
		font-weight: bold;
	}
	
	table td.prices {
		text-align: center;
		font-weight: bold;
	}
		
	.calendar h2 {
			-moz-border-radius-bottomleft: 4px;
			-moz-border-radius-bottomright: 4px;
			-moz-border-radius-topleft: 4px;
			-moz-border-radius-topright: 4px;
			background-color: #D7F3F5;
			padding: 0.3em;
			text-align: center;
		}
		
		h2.calendar {margin-bottom: 1.5em;}
		
		.month {
			padding: 10px 3em;
		}
 		
 		.fromISE {
 			clear:left;
 		}
 		.month h3 {
 			margin-top: 0;
 			float: left;
 			color: #B00;
 		}
 		
 		.month p {
 			margin-left: 7em;
 			margin-top: 0;
 		}
 		
 		.student .month p {
 			margin-left:0;
 		}
	
/* ----------------
	TYPEOGRAPHY
    ------------- */
#contentMain a,
#footer a {
	border: none;
	text-decoration: underline;
}
#footer a.siteDesignCredit {
	text-decoration: none;
}
#footer a.siteDesignCredit .location {
	display: none;
}

#contentMain h1 a,
#contentMain h2 a,
#contentMain h3 a,
#contentMain h4 a {
	border-bottom: none;
}

#contentSub h2 {
		color: #28BECC;
	}
#contentSub ul,
#contentSub ol {
	margin: 1em 0;
}


#contentMain ul,
#contentMain ol {
	margin: .75em 1.5em;
}

	#contentMain ul.unorderedList,
	#contentMain ol.orderedList {
		color: #29BECC;
	}
		#contentMain ul.unorderedList span,
		#contentMain ol.orderedList span {
			color: #000;
		}
	#contentMain li,
	#contentSub li {
		line-height: 1.7em;
		clear: both;	
	}
	
	#contentMain .gallery li {
		clear: none;
	}
	
	#contentMain li {
		font-size: 1.2em;
	}
	#contentMain li ul {
		margin-top: .5em;
	}
	
	#contentMain li li {
		font-size: 1em;
	}
	
	ul.selectItemList { 
		margin: 0;
		padding: 0;
		list-style: none; 
		clear: both;
	}
		ul.selectItemList li {
			border-bottom: 1px dotted #BFECF0;
			margin-bottom: 1em;
		}
		
		ul.selectItemList li div {
			float: right;
			width:  258px;
			right: 0;
		}
		
		ul.selectItemList li img {
			clear: right;
		}
		
		ul.selectItemList h2 {
			margin-top: 0;
		}
/*	
.clickable:hover {
	cursor: pointer;
	background-color: #F4FCFC;
	border: 1px solid #BFECF0;
}
*/
li img {
	float: left;
	margin: 0 1.5em 1.5em 0;
}

/*
.contentHeader p {
	font-size: 1.2em;
}

*/


#breadCrumbs {
	margin: 0 0 1.5em 0;
	font-size: 1em;
	color: #999;
}
	#breadCrumbs a {
		color: #999;
		border-bottom: 1px solid #999;
	}
		#breadCrumbs a:hover {
			color: #29BECC;
			border-color: #29BECC;
		}
		
#footer {
	color: #0072AD;
	font-size: .6em;
}

/* Summary Style paragraph type */
p.summary {
	font-size: 1.3em;
	font-family: Georgia, 'Times New Roman', serif;
	font-style: italic;
	color: #777;
}

#staffBios {
	clear: both;
	margin-bottom: 1.5em;
}

#staffBios p span{
	display: block;
	color: #0072AD;
}
	#staffBios img {
		float: left; 
		margin-right: 1.5em;
		margin-bottom: 1.5em;
	}
	
	#staffBios p {
		float: right;
		width: 330px;
	}

.imgList {clear:both; margin-bottom: 1em; overflow: auto; border-bottom: 1px dotted #BFECF0; zoom: 1;}

.imgList img {float:left; margin: 0 1.5em 1.5em 0;}
.imgList div {width: 258px; float:right;}

.imgList div.alt {
	width: 515px;
	float: right;
	margin-bottom: 1em;
}

.programList {
	padding: 0.5em 0;
	padding-left: 0.5em;
	background: #DDF5F7;
	border: 1px solid #BFECF0;
}

.registration {
		margin-bottom: 250px;
	}
	
.rewards {
	font-weight: bold;
	font-style: italic;	
}

.mission {text-indent: 20px; }
/* ----------------
	NAVIGATION
    ------------- */
#navMain ul{
	list-style: none;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #bfecf0;
	background-color: #fff;
}
	#navMain li {
		border-left: 10px solid #fff;
	}
		#navMain a {
			display: block;
			font-weight: bold;
			font-size: 1.2em;
			padding: .5em 0 .5em 19px;
			border-left: 1px solid #bfecf0;
			border-top: 1px solid #bfecf0;
			color: #0072ad;
		}
			#navMain li:first-child a,
			#navMain li.first-child a{
				border-top: 0;
			}
			#navMain a:hover {
				background-color: #f4fcfc;
			}			
		
		#navMain li.active {
			border-color: #cc0000;
		}
			#navMain li ul {
				border: 0;
				padding-bottom: .5em;
			}
				#navMain li.active ul li{
					border-left: 0;
				}
					#navMain li ul li a {
						font-weight: normal;
						padding: .3em 0 .3em 30px;
					}
						#navMain li ul li a:hover {
							color: #29BECC;
							background-color: transparent;
						}
			#navMain li ul li ul {
				padding-bottom: 0;
			}
			
			/* 2nd level */
			#navMain li ul li.active a {
				background: url(../images/design/bullet_red.gif) 22px 9px no-repeat;
			}
			#navMain li ul li a {
				background: url(../images/design/bullet_blue.gif) 22px 9px no-repeat;
			}
				#navMain li ul li a:hover {
					background-image: url(../images/design/bullet_lt_blue.gif);
				}
				
			/* 3rd level */	
			#navMain li ul li.active ul li a { /* when 2nd level is active */
				background: url(../images/design/bullet_blue.gif) 32px 9px no-repeat;
				border-top: none;
			}
			#navMain li ul li ul li.active a {
				background: url(../images/design/bullet_red.gif) 32px 9px no-repeat;
				border-top: none;
			}
			#navMain li ul li ul li a {
				padding-left: 40px;
				background: url(../images/design/bullet_blue.gif) 32px 9px no-repeat;
				border-top: none;
			}
				#navMain li ul li ul li a:hover {
					background-image: url(../images/design/bullet_lt_blue.gif);
				}
				
#contentSubInner ul {list-style-type: none;}
				
	#contentSubInner li {
		background: url(../images/design/bullet_blue.gif) 0 9px no-repeat;
		padding-left: 1em;
	}
	
	#contentSubInner li a {
		text-decoration: underline;
	}
/* ----------------
	FORM ELEMENTS
	Label widths are set via jQuery autoWidth, unless you want to set them manually.
    ------------- */
fieldset {
	border: none;
	border-bottom: 1px dotted #BFECF0;
	margin: 2em 0 0 0;
	padding: 1.5em 0;
}
	fieldset ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
		fieldset li {
			clear: both;
			padding: .5em;
		}
			fieldset li.required {
				/*background-color: #FFFFCF;*/
			}			
		
fieldset legend {
	font-weight: bold;
	margin: 0;
	color: #0072AD;
	font-size: 1.35em;
	text-transform: uppercase;
	
}

fieldset table {
	width: auto;
	border: 0;
	margin: 0.5em 0 0 3em;
}
	fieldset table label {
		width: auto;
		display: inline;
		float: none;
		padding: 0;
		
	}
	
	fieldset table td {
		border: 0;
		padding: 10px;
		font-size: .75em;
		line-height: 1.5em;
		vertical-align: top;
	}
	
	fieldset table td input {
		margin: 0;
		padding: 0;
	}

fieldset label {
    float: left;
	display: block; 
}

fieldset select {
	margin-left: 0.5em;
}

fieldset label small {
   font-style: italic;
   display: block;
   margin: 0;
}

/*input, textarea {border: 1px solid #BFECF0;} */
fieldset label {
    margin-right: 5px;
    padding: 4px 0;
	width: 11em;
}

fieldset .inputText,
fieldset .inputTextareaSmall {
    width: 170px;
    overflow: auto;
    padding: 4px;
    margin-left: 5px;
}

fieldset .longForm {
	width: 250px;	
}

fieldset .inputTextSmall {
	width: 40px;
	padding: 4px;	
    margin-left: 5px;
}

fieldset .inputTextarea {
	height: 14em;
	width: 500px; 
}
fieldset .inputTextareaSmall {
	height: 4em;
}
fieldset p.submit {
	text-align: center;
}
fieldset .commandButton {
	background: #0072AD; 
	border: none;
	color: #FFF;
}
fieldset .errorText {
	color: #CC0000 !important;
	margin-left: 10px;
	font-size: 0.8em;
}

form input.protect {
	display: none;
}

div.errors {
	background: #FBE3E4 url(../images/bg_error.gif) 0 0 repeat-x;
	border: 1px solid #CC0000;
	margin: 1em 0;
	width: 100%;
}

	div.errors h4 {
		color: #CC0000;
		margin-top: 1em;
	}
	
	div.errors li {
		background: transparent url(../images/design/bullet_red.gif) no-repeat scroll 0px 9px;
		list-style: none;
		padding-left: 10px;
	}
	
	div.errorsInner {
		padding-left: 80px;
		background: url(../images/big_error.gif) 15px 1em no-repeat;
	}
	
label span {
	color: #DF4545;
}


#login .textField { 
	width: 90px; 
	height: 1.3em; 
	padding: 0;
	font-size: 1.2em;
	border: 1px solid #abe6eb;
}

	
		

/* ----------------
	MISC
    ------------- */
.floatLeft {float: left;}
.floatRight {float: right;}
.alignLeft {text-align: left;}
.alighRight {text-align: right;}
.alignCenter {text-align: center;}
.clear {clear: both;}




/* ----------------
	CLEAR FLOATS WITHOUT EXTRA HTML MARKUP
    ------------- */ 
.clearFix:after { 
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden; 
}

.survey:link, .survey:visited {color: #96cc29; margin-bottom: 15px; display: block; }


/* Switzerlnd page */

.switzerland .mediumFont {font-size: 1em; font-weight: bold; }
.switzerland .smallFont {font-size: .9em; ; }


/* the overlayed element */ 
#slideShare { 
     
    /* must be initially hidden */ 
    display:none; 
     
    /* place overlay on top of other elements */ 
    z-index:10000; 
     
    /* styling */ 
    background-color:#333; 
     
    width:425px;     
    min-height:200px; 
    border:1px solid #666; 
    padding: 20px; 
     
    /* CSS3 styling for latest browsers */ 
    -moz-box-shadow:0 0 90px 5px #000; 
    -webkit-box-shadow: 0 0 90px #000;     
} 
 
/* close button positioned on upper right corner */ 
#slideShare .close { 
    background-image:url(../images/images/close.png); 
    position:absolute; 
    right:-15px; 
    top:-15px; 
    cursor:pointer; 
    height:35px; 
    width:35px; 
}

p.slideshow {text-align: center; }

#slideShare h1 {color: #FFFFFF;}