/* Clear Browser Defaults  */
* {margin: 0; padding: 0;}
img {display: block; border: 0;}

body {
	font-family: "Lucida Grande", Verdana, sans-serif;
	font-size: small;
	text-align: center;
	line-height: 1.5em;
	color: #222;
	background: #333;
	}

/* links
---------------------------------------------------------- */
a:link, a:visited {
	padding: 0 0 1px;
	text-decoration: none;
	color: #209AAF;
	border-bottom: 1px dotted #26B7CF;
	}
#scol a,
#wd .more a {
	color: #007A8F;
	border-color: #007A8F;
	}

#c a:hover {
	color: #000;
	border-color: #000;
	border-bottom-style:solid; 
	outline: none;
	}
.moreX a {
	padding-right: 7px !important;
	background: url(/i/icon-more.gif) no-repeat 100% center;
	}


/* page structure
---------------------------------------------------------- */
#w {
	width:100%;
	background: url(/i/content-bg.png) repeat-y 50% 50%;
	_background: none;
	}
#w2 {
	position: relative;
	width:750px;
	margin: 0 auto;
	text-align: left;
	background: #fff url(/i/content-bg.png) repeat-y 50% 50%;
	_background: #fff url(/i/content-bg.gif) repeat-y 50% 50%;
	}
#c {
  background: url(/i/column-divider.gif) repeat-y 64.5% 0;
	}
#c2 {
	padding: 20px 30px 0 30px;
	}
#mcol {
	float: left;
	width: 65%;
	font-size: 95%;
	}
#mcol2 {
	margin: 0 25px 30px 0;
	}
#scol {
	padding: 0 0 0 25px;
	float: right;
	width: 31%;
	font-family: Verdana, sans-serif;
	font-size: 75%;
	line-height: 1.5em;
	color:#666;
	}
#scol2 {
	margin: -15px 0 30px;
	}
#bnav {
	clear: both;
	padding: 30px 30px 20px 30px;
	}

#one #mcol, 
#registration #mcol,
#dvd #mcol,
#staff #mcol,
#advisors #mcol {
  width: 100%;
  }

#one #mcol2, 
#registration #mcol2,
#dvd #mcol2,
#staff #mcol2,
#advisors #mcol2 {
  margin-right:0;
  }

#one #scol, 
#registration #scol,
#dvd #scol, 
#staff #scol, 
#advisors #scol {
  display:none;
  }
#one #c, 
#registration #c, 
#dvd #c, 
#staff #c, 
#advisors #c {
  background: none;
  }
#camps #registration #mcol {
  background: #fff;  
  }



/* header
---------------------------------------------------------- */

#h {
	width: 750px;
	height: 268px;
	text-indent: -9999px;
	background: #000 url(/i/masthead-images/v2/home.jpg) no-repeat top left;
	}
#dvd #h {background-image: url(/i/masthead-images/dvd.jpg);}
#staff #h {background-image: url(/i/masthead-images/v2/staff.jpg);}
#camps #h {background-image: url(/i/masthead-images/v2/camps.jpg);}
#program #h {background-image: url(/i/masthead-images/v2/program.jpg);}
#registration #h {background-image: url(/i/masthead-images/v2/registration.jpg);}
#multimedia #h {background-image: url(/i/masthead-images/v2/multimedia.jpg);}
#advisors #h {background-image: url(/i/masthead-images/v2/advisors.jpg);}

#technique #h {background-image: url(/i/masthead-images/v2/technique.jpg);}

/* navigation
---------------------------------------------------------- */

#nav {
	position: relative;
	width: 750px;
	height: 87px;
	background: #000 url(/i/nav-bg.jpg) no-repeat top left;
	}
#nav ul {
	position: relative;
	top: 2px;
	left: 30px;
	width: 690px;
	height: 31px;
	list-style-type: none;
	overflow: hidden;
	background: transparent url(/i/navbar-matrix.gif) no-repeat 0 5px;
	}
#nav ul li a {
	outline: none;
	position: absolute;
	top: 0;
	border:0;
	height: 31px;
	text-decoration: none;
	overflow: hidden;
	text-indent: -9999px;
	background: transparent url(/i/navbar-matrix.gif) no-repeat 0 5px;
	}
/* nav matrix */
#w #nav ul li#n-home a {
	width: 47px; left: 0;
	}
#w #nav ul li#n-home  a:hover {
	background-position: 0 -45px;
	}
#w #nav ul li#n-camps a {
	width: 60px; left: 69px;
	background-position: -69px 5px;
	}
#w #nav ul li#n-camps  a:hover {
	background-position: -69px -45px;
	}
#w #nav ul li#n-program a {
	width: 82px; left: 150px;
	background-position: -150px 5px;
	}
#w #nav ul li#n-program  a:hover {
	background-position: -150px -45px;
	}
#w #nav ul li#n-staff a {
	width: 53px; left: 254px;
	background-position: -254px 5px;
	}
#w #nav ul li#n-staff  a:hover {
	background-position: -254px -45px;
	}
#w #nav ul li#n-multimedia a {
	width: 108px; left: 328px;
	background-position: -328px 5px;
	}
#w #nav ul li#n-multimedia  a:hover {
	background-position: -328px -45px;
	}
#w #nav ul li#n-advisors a {
	width: 86px; left: 456px;
	background-position: -456px 5px;
	}
#w #nav ul li#n-advisors  a:hover {
	background-position: -456px -45px;
	}

#w #nav ul li#n-registration a {
	width: 125px; left: 565px;
	background-position: -565px 5px;
	}
#w #nav ul li#n-registration  a:hover {
	background-position: -565px -45px;
	}
#home #w #nav ul li#n-home  a {
	background-position: 0 -95px;
	}
#camps #w #nav ul li#n-camps  a {
	background-position: -69px -95px;
	}
#program #w #nav ul li#n-program  a {
	background-position: -150px -95px;
	}
#staff #w #nav ul li#n-staff  a {
	background-position: -254px -95px;
	}
#multimedia #w #nav ul li#n-multimedia  a {
	background-position: -328px -95px;
	}
#advisors #w #nav ul li#n-advisors  a {
	background-position: -456px -95px;
	}
#registration #w #nav ul li#n-registration  a {
	background-position: -565px -95px;
	}


/* hn
---------------------------------------------------------- */
h1, h2, h3, h4 {
	margin: 0 0 .2em 0;
	font: normal 40px/1.3em georgia, serif;
	color: #DF376D;
	text-transform:capitalize;
	}
#home h1 {
	font-size:29px;
	}
#program h1, .h1-small h1 {
	font-size:32px;
	}
#scol h1, #scol h1 a {
	margin-top: 1em;
	color: #DF376D;
	font-size:20px;
	letter-spacing: -1px;
	}
h1 a, h2 a, h3 a {
	border:0 !important;
	}
h2, h3, h4, h6 {
	margin-bottom: .3em;
	font-size:23px;
	color: #007A8F;
	font-family: "Trebuchet MS", tahoma, sans-serif;
	}
h4 {
  font-size:20px;
  }
#mcol h2 {
	letter-spacing:-1px;
	}
#scol h2, #scol h2 a {
	margin-top: .8em;
	color: #007A8F;
	font-size:16px;
	}
p+h1 {margin-top: 0.7em;}
p+h2 {margin-top: 1.3em;}

h3 {
	margin: 0;
	color: #333;
	font-size:16px;
	font-weight:bold;
	}
h5 {
  font-size:12px;
  }
h6 {
	margin-top: -1em;
	padding: 2px 0 2px 16px;
	color: #888;
	font-size:11px;
	font-weight:normal;
  background: transparent url(/i/document.gif) no-repeat left center;
	}

html>body #w #camp-info h4 {
  margin: 1em 0 .3em;
  }
html>body #w #camp-info h3 {
  margin: 1.5em 0 .3em;
  }
html>body #w #camp-info h4+h3 {
  margin-top: 0;
  }

/* content styles
---------------------------------------------------------- */
#camp-info {
  margin: 1em 0 2.5em;
  }
#hotels {
  }
.article, .hotel {
  margin-bottom:2em;
  padding-bottom:.5em;
  border-bottom: #ddd 1px dashed;
  }
.article .image {
  float:right;
  position:relative;
  margin: 0px 0 6px 12px;
  text-alignd:center; 
  font-size:11px;
  }
.article a {
  display:block;
  margin: 4px 0 0 5px;
  padding: 2px 0 2px 21px;
  border:0;
  color: #888;
  background: url(/i/zoom.gif) no-repeat 0 5px;
  }
div.hotel {
  padding: 0 15px;
  border-top: #ddd 1px dashed;
  background: #fafafa;
  }

div.bio {
  margin: 0 0 2em 0;
  padding: 0 0 1em;
  border-bottom: #ddd 1px dashed;
  }
div.bio h3 {
  margin: 0 0 .6em;
  }
div.bio-details {
  float: left;
  width: 380px;
  }
div.bio-image {
  float: right;
  width: 300px;
  }

.alt div.bio-detailsx {
  float: right;
  }
.alt div.bio-imagex {
  float: left;
  }


div.bio img {
  display:block;
  margin: 0 auto;
  }
div.bio h4 {
  font-size: 27px;
  font-weight:bold;
  }



div#oops, div#success {
  margin: 1em 0 1em;
  padding: 17px 15px 0;
  border: #f0dc48 1px dashed;
  background: #FFFFEF;
  }
div#success {
  border-color: #cbf048;
  background: #fcfff0;
  }
div#success b {
  color: #307300;
  }
div#oops b {
  color: #AF0000;
  }
html>body .article a {
  position:absolute;
  outline: none;
  text-indent: -9999px;
  top:0;
  right:0;
  bottom:0;
  left:0;
  border:0;
  background: url(/i/zoom.gif) no-repeat bottom right;   
  }


.article imgXXX {
  float:right;
  margin: 5px 0 6px 12px;
  padding:2px;
  border: #bbb 1px dashed;
  }
.article img.leftXXX {
  float:left;
  margin: 5px 12px 6px 0;
  }

#mcol p {
	margin: 0 0 1.5em 0;
	padding: 0;
	}

/* basic element styles */

#registration p em  {
  font-style:normal;
  padding-bottom: 1px;
  border-bottom: 1px solid #ddd;

  }

blockquote {
	font-size: 85%;
	line-height: 1.5em;
	color: #777;
	}
abbr, acronym {
	font-style: normal;
	border-bottom: 1px dotted #bbb;
	cursor: help;
	}
a abbr {
	border: none;
	}
em {
	font-style: italic;
	}
strong {
	font-weight: bold;
	}
del {
	text-decoration: line-through;
	color: #777;
	}
ins {
	text-decoration: none;
	font-style: italic;
	}
address {
	margin: 0;
	padding: 0;
	font-style: normal;
	}


/* lists
---------------------------------------------------------- */
ul, ol, dl {
	margin: 0 0 1.5em 0;
	}
ul, ol {
	margin-left: 15px;
	}
ol {
	padding-left: 20px;
	}
ul {
	list-style: none;
	}
ul li {
	padding: 0 0 4px 10px;
	background: url(/i/icon-arrow.gif) no-repeat 0 8px;
	}

#scol ul li {
  padding-left: 8px;
  background-position: 0 5px;
  }

dl dt {
	font-weight: bold;
	}
dl dd {
	margin: 0 0 15px 0;
	padding: 0;
	}

/* scol lists */
#scol ul.list {
	margin:1.5em 0 .5em;
	padding:0;
	border-top: 1px solid #ddd;
	line-height:1.3em;
	}
#scol ul.list li {
	padding:0;
	background: none;
	}
#w #scol ul.list li a {
	display:block;
	padding: 10px 8px 10px 38px;
	border-bottom: 1px solid #ddd;
	_height:1%;
	background: url(/i/calendar.png) no-repeat 5px 14px;
	_background-image: url(/i/calendar.gif);
	}
#w #scol ul.list li a span {
	color:#666;
	}
#w #scol ul.list li b {
  font-weight:normal;
	}
#w #scol ul.list li a:hover {
	color:#000;
	background-color: #f9f9f9;
	}
#w #scol ul.list li a:hover span {
	color:#222;
	}

/* current camp */
#w #c #scol ul.list li.current a {
  outline:none;
  margin-top: -1px;
  border-color:#000;
  border-top: #000 1px solid;
  color:#fff;
  background: url(/i/arrow.png) no-repeat 5px 14px;
  _background-image: url(/i/arrow.gif);
  }
#w #c #scol ul.list li.current a span {
  color:#f0f2dd;
  }
#w #c #scol ul.list li.currentXXX {
  display: none;
	}

#w #c #scol ul.list li.current {
  background: #758400 url(/i/gradient_green.gif) repeat-x 0 0;
  }




#w #scol ul#news li a {
	background-image: url(/i/News_24x24.gif);
	}
#scol p.more {
  margin:1em 0 3em;
  }

/* =Camps
---------------------------------------------------------- */

#camp-info ul, .hotel ul {
	margin-left: 0px;
	}
#camps ul li {
	padding-bottom: 0;
	}
#camps p.links {
	margin: -1.2em 0 1.5em !important;
	}


/* footer styles
---------------------------------------------------------- */
#f {
	position:relative;
	clear: both;
	margin-top:30px;
	padding: 30px 30px 0;
	width:690px;
	height:135px;
	background: url(/i/footer-bg.jpg) no-repeat bottom left;
	color:#ccc;
	text-align:center;
	}
#f #copyright a:link {
	color:#eaf7be;
	border:0;
	}
#f #copyright a:hover {
	color:#fff;
	background:none;
	}
#f p#copyright {
	position: absolute;
	width:690px;
	left:30px;
	right:30px;
	bottom:10px;
	color:#eee;
	font-size: 11px;
	margin: 0 !important;
	padding: 0;
	line-height:1.4em;
	}
/*  galleries
---------------------------------------------------------- */
p.galleries a:link, p.galleries a:hover {
	border: none;
	background: none;
	text-decoration: none;
	}

p.galleries span {
	display:block;
	float:left;
	width:162px;
	height:162px;
	margin: 0 5px 10px 5px;
	padding: 0;
	background: url(/i/img_border_horz.gif) no-repeat 0 0;
	}
p.galleries span.vert {
	background: url(/i/img_border_vert.gif) no-repeat 0 0;
	}
p.galleries img {
	margin: 0;
	margin: 26px 0 0 7px;
	}
p.galleries span.vert img {.
	margin: 7px 0 0 25px;
}



/* =Forms
---------------------------------------------------------- */
fieldset {
  margin:1.5em 0 2em;
  padding:15px;
  width: 655px;
  border: #c4d1b2 1px solid;
  }
#camps fieldset, #camps textarea {
  width: 393px;
  }
#camps fieldset {
  width: 394px;
  border: #f0dc48 1px dashed;
  background: #FFFFEF;
  }
#camps fieldset legend {
  border: #f0dc48 1px dashed;
  color: #a80000;
  background: #fff;
  }
#camps textarea {
  width: 385px;
  }
legend {
  padding: 2px 15px;
  font-weight:bold;
  letter-spacing:1px;
  color: #5b8028;
  font-size: 16px;
  font-weight:bold;
  font-family: "Trebuchet MS", Verdana, sans-serif;
  }

form input {
  padding: 1px 2px;
  }
form select {
  width:150px;
  }
form textarea, form select.select_camp {
  width:500px;
  }
form textarea {
  height:100px;
  }

.error, .zemError strong, .errorElement,
label.zemRequirederrorElement {
  font-weight:bold;
  color:#AF0000;
  }
input.zemRequirederrorElement, 
select.zemRequirederrorElement,
input.errorElement {
  background:#ffffde;
  }
ul.zemError li, ul.comments_error li {
  background: url(/i/icon-arrow-red.gif) no-repeat 0 7px;
  }

div.usable {
  marginXXX: 15px 0;
  paddingXXX: 5px 15px;
  backgroundXXX:#f4f4f4;
  }
#registration h3, #camps h3 {
  margin: 2em 0 .3em;
  border-bottom: 1px solid #eee;
  }
#camps h3 {
  margin: .8em 0 .3em;
  }
#registration form p {
  margin-bottom:1em;
  }
#registration form h3 {
  margin: .8em 0 8px;
  }
#camp-radio div {
  float:left;
  margin-top: 5px;
  width:10px;
  }
#camp-radio p {
  margin-left: 18px;
  }

.zemRadio {
  vertical-align:middle;
  }
.zemSubmit {
  margin-top:1em;
  padding: 2px 8px;
  }

/* =Tables
----------------------------------------------- */
table {
  width:100%;
  font-size:100%;
  }
table.table th, table.table td {
  width:60%;
  padding:5px;
  font-weight:normal;
  vertical-align:middle;
  }
table.table th {
  width:40%;
  text-align:right;
  white-space:nowrap;
  }

table.table tr.tr_check th, table.table tr.tr_check td {
  padding:1px 5px;
  }
table.table tr.tr_title th, table.table tr.tr_title td  {
  padding:15px 5px 0;
  }


/* =Minicalendar
----------------------------------------------- */
table.minical {
  width: 200px;
  border: 1px solid #ddd;
  text-align: center;
  color: #ccc;
  background:#fff;
  }
#registration table.minical td {
  padding-top:5px;
  vertical-align:bottom;
  }
table.minical th {
  color: #222;
  }
table.minical td.vspace {
  height: 5px;
  }
table.minical td.space {
  width: 5px;
  }
caption {
  padding: 5px;
  border: 1px solid #ddd;
  border-bottom: 0;
  color: #222;
  font-size: 16px;
  font-weight: bold;
  background:#fafafa;
  }
thead {
  font-weight: normal;
  }


/* open and closed */
.o, .x {
  border: 1px solid #fff;
  }
.o {
  font-weight: bold;
  color: #62a800;
  border-color: #c0d898;
  background: #fafff2;
  }
.x {
  color: #bfa8a8;
  border-color: #ead9d9;
  background: #fceded;
  }
span.o, span.x {
  padding: 2px 5px;
  }
.border-left {
  border-left-width: 1px !important;
  }
.border-right {
  border-right-width: 1px !important;
  }


/* camp date borders */
.mon, .tue, .wed, .thu, .fri, .sat {
  backgroundX: #f7f7f7;
  borderX: 1px dashed #ddd;
  }
.mon {
  border-width: 1px 0 1px 1px;
  }
.tue {
  border-width: 1px 0;
  }
.wed {
  border-width: 1px 1px 1px 0;
  }

td.wed {
  margin: 0 2px;
  }
.thu {
  border-width: 1px 0 1px 1px;
  }
.fri {
  border-width: 1px 0;
  }
.sat {
  border-width: 1px 1px 1px 0;
  }
.fall .sat {
  border-width: 1px 0px 1px 1px;
  }
.fall .sun {
  border-width: 1px 1px 1px 0px;
  }



/* =Columns
----------------------------------------------- */
.column {
  float:left;
  margin-bottom:1em;
  _margin-bottom:0;
	}
.three {
  width: 33.2%;
	}
.two,
#camps .three {
  width: 49.9%;
	}
.one {
  width: 99.9%;
	}

/* =Instructors
----------------------------------------------- */
#instructors p.top {
  display:block;
  margin-bottom: 3em;
  padding-bottom: 10px;
  border-bottom: #ddd 1px dashed;
  }
#instructors table {
  margin: 1em  0;
  padding:10px 5px;
  border: #eee 1px solid;
  background: #fafafa; 
  }
#instructors table td {
  padding:5px;
  }
#instructors textarea {
  width: 320px;
  height:200px;
  }


/* =Comments
----------------------------------------------- */


#comments {
  margin: 0 0 2em;
  font-size:11px;
  }
div.comment {
  position:relative;
  margin-bottom: -1px;
  padding: 1em;
  border: #eee 1px solid;
  border-width: 1px 0;
  background: #fafafa;  
  }
div.odd {
  background: #fff;  
  }
div.messageXXX {
  margin-right: 100px;
  }
div.comment img {
  float:right;
  margin: 0 0 8px 8px;  
  padding: 1px;  
  border: #f0dc48 1px solid;
  }
div.commenter span { 
  margin-right: 5px; 
  padding-right: 8px; 
  border:0;
  border-right: #ddd 1px solid;
  font: 24px/1em Georgia, serif;
  }
div.commenter a { 
  position:absolute;
  top:-20px;
  left:-9999px;
  }


p#txpCommentInputForm, ul.comments_error {
  display:block;
  margin: 2em 0;
  padding: 1em;
  border: #f0dc48 1px solid;
  border-width: 1px 0;
  background: #FFFFEF;
  }
ul.comments_error {
  color: #AF0000;
  }







/* misc.
---------------------------------------------------------- */
a.register {
  line-height: 1.6em;
  font-weight:bold;
  font-size: 16px;
  font-family: "trebuchet ms", verdana, sans-serif;
  }
a.register, a.register-small {
  color: #225ea8;
  border-color: #225ea8;
  color: #007A8F;
  border-color: #007A8F;   
  }

#t, hr, .hide {
	display: none;
	}
.nrm {margin-right: 0 !important;}
.ntm {margin-top: 0 !important;}
#ghost {color: #fff;}
cite {
  font-weight:bold;
  font-style:normal;
  }

/*~ sIFR Screen Styles 
---------------------------------------------------------- */

.sIFR-flash {
	visibility: visible !important;
	margin: 0;
}
.sIFR-replaced {
	visibility: visible !important;
}
span.sIFR-alternate {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	display: block;
	overflow: hidden;
}
/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] {
  display: none !important;
}
/* "decoy" styles  */

.sIFR-hasFlash h1 {
	visibility: hidden;
}
#mcol .sIFR-hasFlash h1 {
	visibility: hidden;
	letter-spacing: -9px;
	font-size: 41px;
}
#mcol .sIFR-hasFlash h2 {
	visibility: hidden;
	letter-spacing: -9px;
	font-size: 16px;
}
#scol .sIFR-hasFlash h1 {
	visibility: hidden;
	letter-spacing: -9px;
	font-size: 12px;
}
#scol .sIFR-hasFlash h2 {
	visibility: hidden;
	letter-spacing: -9px;
	font-size: 12px;
}


/*  Fixes for IE/win
----------------------------------------------------- */

/* fixes font-size keyword problem for IE5/Win */
body {
	font-size: x-small; /* IE5 Win */
  	voice-family: "\"}\"";
  	voice-family: inherit;
  	font-size: small;
	}
html>body { /* be nice to Opera */
	font-size: small;
	}



/* self-clearing floats
----------------------------------------------------- */
#c:after,
.article:after,
.bio:after,
#camps #registration #mcol:after,
#w #scol ul.list li.current div:after,
div.comment:after {
	content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    }

/* ie5+6/win */
* html #c2,
* html #c,
* html .article,
* html .bio,
* html div.comment {
	height: 1%;
	}

/* ie7/win */
*:first-child+html #c,
*:first-child+html .article,
*:first-child+html .bio,
*:first-child+html div.comment {
	min-height: 1px;
	}
