*, html { margin: 0; padding: 0; font-family: Tahoma, Arial, Helvetica, sans-serif; }
html { height: 100%; }
body { height: 100%; background-color: #ececec; font-size: 12px; }

/* GENERAL COLOR DEFINITIONS */

	/* Main Foreground & Background Colors */
	html, img.border { color: #313131; border-color: #313131; }

	/* Link Color & Active Element Color */
	a { color: #0b3a71; }
	a:hover, input[type="text"]:focus, input[type="password"]:focus, select:focus, textarea:focus { color: #073c54; border-color: #073c54; }

/* GENERAL DIV DEFINITIONS */

div#container { margin: 0 auto; padding: 0 20px; width: 976px; background: #fff url("../images/shadowBG.jpg") repeat-y; }
div#content { position: relative; margin: 0; padding: 0; min-height: 320px; background: url("../images/contentBG.gif") repeat-y; }
div#content.home { height: 484px; background: url("../images/contentHomeBG.jpg") no-repeat; }
div#content.news { position: relative; margin: 0; padding: 0; min-height: 320px; background: url("../images/contentNewsBG.gif") no-repeat; }
div#content.register { height: 484px; }

div#header { position: relative; z-index: 50; padding: 0 20px; }
div#header.home { height: 395px; background: none; }
div#header .slideshow { position: absolute; z-index: 55; top: 0; left: 0; z-index: 0; }
div#header div.slideshow img { width: 976px; height: 395px; border: none; }
div#header.content, div#header.register, div#header.news { height: 411px; background: url("../images/headerContentBG.jpg") no-repeat; }
	div#header img#logo { position: relative; z-index: 100; margin-left: -20px; width: 277px; height: 95px; border: none; outline: none; }
	div#header h1 { padding: 10px 0 0 4px; letter-spacing: 0.12em; }
	div#header ul { position: absolute; z-index: 70; bottom: 12px; right: 24px; font-size: 12px; text-transform: uppercase; }
		div#header ul li { margin: 0; padding: 3px 20px 10px 20px; border-right: 1px solid #666; }
		div#header ul li.last { padding-right: 0; border: none; }
		div#header ul li a { color: #fff; }
		div#header ul li a:hover { text-decoration: underline; }

div#footer { clear: both; width: 942px; height: 68px; padding: 108px 18px 0 18px; }
div#footer.home { position: absolute; bottom: 0; left: 0; margin: 0; padding: 0 12px; width: 946px; }
div#footer.content { margin: 0; background: url("../images/footerBG.jpg") no-repeat; }
div#footer.register { margin: 0; background: url("../images/footerRegBG.jpg") no-repeat; }
div#footer * { font-size: 11px; }
	div#footer ul { margin: 16px 0 0 0; width: auto; }
	div#footer p, div#footer p a { color: #8dafd8; }
	div#footer p.clearfix { float: none; height: 1px; }
div.stickyFooter { min-height: 100%; } /* use stickyFooter in cojunction with #container to have the footer div stick to the bottom of the browser window */
div.stickyFooter div#footer { position: fixed; bottom: 0; padding-bottom: 8px; }

div.third, div.leftCol, div.contentArea { float: left; margin-top: 24px; padding: 0 28px; }
div.third { width: 266px; } div.leftCol { padding-right: 8px; width: 216px; }
div.contentArea { width: 665px; min-height: 300px; }
div.register div.contentArea { width: 920px; background-color: #fff; }

div.leftCol ul { list-style: none; font-size: 13px; }
	div.leftCol ul li { padding: 6px 0; }
	div.leftCol ul li a { color: #333; }
	div.leftCol ul li.highlighted a, div.leftCol ul li a:hover { color: #0b3a71; }
	div.leftCol ul.bulleted li { padding: 14px 0 14px 28px; border-bottom: 1px solid #ccc; background: url("http://67.18.15.34/~cpfpp/includes/images/bullet.jpg") no-repeat left center; }
	div.leftCol ul.bulleted li.narrow { padding: 4px 0 4px 28px; }
	div.leftCol ul.bulleted a { color: #0b3a71; }
	div.leftCol ul.bulleted a:hover { color: #333; }
	div.leftCol ul.bulleted li.selected { font-weight: bold; }
	div.leftCol ul.bulleted li.selected a { color: #333; }

div#programsFilter { margin-left: -12px; }

a.regLinkBottom { position: absolute; bottom: 8px; right: 22px; font-size: 16px; font-weight: bold; }
a.fileLinkBottom { position: absolute; bottom: 20px; right: 22px; font-size: 16px; font-weight: bold; }
ul#inlineMenu, ul.inlineMenu { display: block; margin: 0 0 20px 0; font-size: 11px; list-style: none; }
ul#inlineMenu li, ul.inlineMenu li { display: inline; padding-right: 8px; }
ul#inlineMenu li a, ul.inlineMenu li a { color: #0b3a71; }
ul#inlineMenu li.selected a, ul#inlineMenu li a:hover, ul.inlineMenu li.selected a, ul.inlineMenu li a:hover { color: #666; }

div#header h1#heading { 
	position: absolute;
	bottom: 40px;
	left: 17px;
	margin: 0;
	padding: 0;
	width: 224px;
	height: 36px;
	color: #fff;
	font-size: 30px;
	font-weight: 100;
	text-align: center;
	letter-spacing: 0.04em;
}
 span.sIFR-alternate {
	display: none;
	font-family: Arial;
}

/* GENERAL TABLE DEFINITIONS */

table#programs, table#registration { clear: both; margin-bottom: 8px; width: 100%; font-size: 0.9em; }
table#programs thead tr, table#registration thead tr { background-color: #0b3a70; color: #fff; font-weight: bold; }
table#programs thead tr th, table#registration thead tr th { padding: 4px 3px; text-align: center; }
table#programs thead tr th.header, table#registration thead tr th.header { 
	padding-left: 12px; background: #0b3a70 url("../images/headerSort.gif") no-repeat top left; text-align: left; cursor: pointer; 
}
table#programs thead tr th.headerSortUp, table#registration thead tr th.headerSortUp { background: #0b3a70 url("../images/headerSortUp.gif") no-repeat top left; }
table#programs thead tr th.headerSortDown, table#registration thead tr th.headerSortDown { background: #0b3a70 url("../images/headerSortDown.gif") no-repeat top left; }

table#programs tr td, table#registration tr td { padding: 4px 3px; background-color: #eee; vertical-align: top; }
table#programs tr.odd td, table#registration tr.odd td { background-color: #fff; }
a.return { float: left; margin: 0 0 45px 8px; font-size: 12px; }
a.printable { float: right; margin: 0 8px 45px 0; font-size: 12px; }

table#registration { margin-bottom: 18px; width: 920px; border: 1px solid #0b3a70; }
table#registration tr.divide td { border-top: 1px dashed #0b3a70; }
table#registration label { font-size: 1em; }

table td span.sub { padding-left: 8px; color: #555; }

form label.price { float: right; width: 127px; }

img.galleryImage { width: 100px; height: 100px; }
img.glossaryImage { float: left; margin-right: 12px; width: 200px; }
a img.glossaryImage { border: 1px solid #ccc; }
a:hover img.glossaryImage { border-color: #0b3a70; }
img#map { float: right; width: 250px; height: 417px; }

address { margin-bottom: 12px; font-style: normal; }
p label { margin: 0; padding: 0; width: 142px; }

/* GENERAL TEXT DEFINITIONS (Headings, anchors, paragraphs, blockquotes, lists, addresses */

	/* Main headings color */
	h1, h2, h3, h4, h5 { color: #484848; }

	h2 { padding-bottom: 10px; border-bottom: 1px solid #ccc; text-transform: uppercase; }
	h4 { margin-bottom: 20px; padding-bottom: 15px; border-bottom: 1px solid #ccc; letter-spacing: 0.05em; font-family: Arial; }
	h3 { margin: 4px 0; }

	/* Main headings sizes */
	h1 { font-size: 2em; }
	h2 { font-size: 12px; }
	h3 { font-size: 12px; font-weight: 300; }
	h4 { font-size: 18px; font-weight: 500; }
	h5 { font-size: 1em; }

	/* Main headings margins (and matching paragraphs) */
	h1, h5 { margin-bottom: 4px; }
	h2 { margin-bottom: 20px; }
	h3 { margin: 14px 0 6px 0; }

	div#container div h2, div#container div h3, div#container div h4, div#container div h5 { margin-left: 0; }

	/* Message heading (errors, notifications, etc) */
	h6 { clear: left; margin: 2px 0 12px 0; font-size: 1.1em; font-weight: bold; }
	h6, p.error { color: #900; }

	h2 span.normalCaps { text-transform: none; }

p { margin: 2px 0 12px 0; padding: 0; color: #484848; font-size: 12px; line-height: 150%; }
p.spaced { line-height: 170%; }
p.clearfix { clear: both; float: none; margin: 0; padding: 0; height: 0; }
p.success { color: #097509; }
p.error, p.success { clear: left; margin-left: 152px; font-size: smaller; }
fieldset p.error, fieldset p.success, fieldset input[type="submit"] { margin-left: 180px; }
fieldset input[type="text"], fieldset textarea { width: 200px; font-size: 12px; }
fieldset select { width: 208px; }
form fieldset label { width: 180px; }

a { text-decoration: none; outline: none; }
a:hover { color: #333; text-decoration: none; }
p a:hover { text-decoration: underline; }

hr { margin: 4px 2px; border-top: 1px solid; border-bottom: none; border-left: none; border-right: none; }
blockquote { font-style: italic; }
ul, ol { margin: 2px 0 10px 18px; }

/* GENERAL IMAGE DEFINITIONS */

img { margin: 0; padding: 0; }
a img { border: none; }
p img { float: left; margin: 0 6px 5px 0; padding: 0; }
p img.right { float: right; margin: 0 0 5px 6px; }
img.border { border: 1px solid; }
img.hoverFade { opacity: 0.9; filter: alpha(opacity=90); }
img.hoverFade:hover { opacity: 1.0; filter: alpha(opacity=100); }

img.btnLearn { margin-top: 12px; }

#seriesPrice { display: none; }

/* GENERAL LIST DEFINITIONS */

ul#nav { margin: 0; padding: 0; text-align: left; }
	ul#nav li, ul.inlineNav li { position: relative; display: inline; list-style: none; }

ul#nav li ul { 
	z-index: 60;
	position: absolute;
	float: none;
	top: 22px;
	left: -16px;
	display: none;
	padding-top: 5px;
	width: 220px;
	height: 100px;
}
ul#nav li.right ul { left: -64px; }
ul#nav li.last ul { left: -118px; }
ul#nav li:hover ul, ul#nav li.sfhover ul, ul#nav li ul:hover, ul#nav li.sfhover ul:hover { display: block; }

div#header ul#nav li ul li { position: static; clear: both; float: none; display: block; border: none; background: url("../images/dropDownBG.jpg") repeat-y; }
div#header ul#nav li ul li.last { 
	position: static;
	float: none;
	display: block;
	padding: 3px 20px 10px 20px;
	border: none;
	background: url("../images/dropDownBottom.jpg") no-repeat bottom left;
}

div#header ul#nav li.right ul li { padding-right: 50px; text-align: right; }
div#header ul#nav li.last ul li { padding-right: 40px; text-align: right; }

div.third ul, ul.bulleted { list-style: none; }
div.third ul li, ul.bulleted li { padding: 14px 0 14px 28px; border-bottom: 1px solid #ccc; background: url("../images/bullet.jpg") no-repeat left center; }
div.third ul li.last, ul.bulleted li.last { border-bottom: none; }
div.third ul a, ul.bulleted a { color: #0b3a71; }
div.third ul a:hover, ul.bulleted a:hover { color: #333; }

div#footer ul.inlineNav { color: #ccc; }
	div#footer ul.inlineNav li { padding: 0 3px; }
	div#footer ul.inlineNav li a { color: #ccc; }

	div.sideContent { float: right; margin: 0 0 18px 18px; padding: 4px 8px; width: 196px; background-color: #e2e2e2; -moz-border-radius: 4px; }
	div.sideContent h3 { margin-top: 4px; }

	p#aquanode { float: right; margin: 6px 0 2px 0; letter-spacing: 0.08em; }
	p#copyright { float: left; margin: 6px 0 16px 0; letter-spacing: 0.12em; }

/* FORM ELEMENT DEFINITIONS */

	/* Default form sizes (alters label widths and checkbox/radio offsets as well */
	form { margin: 0 4px; padding: 0; }
	form.small { width: 300px; }
	form.mid { width: 432px; }
	form.large { width: 600px; }
	form.x-large { width: 740px; }

	/* Default form positions */
	form.right { clear: right; float: right; }
	form.left { clear: left; float: left; }
	form.center { margin: 0 auto; }

	/* Fieldset and legend definitions / radio, checkbox, and submit offset classes and offset inheritance from form size class */
	span.access { text-decoration: underline; }
	hr { clear: both; margin: 14px 0; padding: 0; height: 1px; border-color: #999; }
	fieldset { float: left; margin: 0 32px 8px 0; padding: 6px 10px; width: 400px; border: 1px solid #aaa; -moz-border-radius: 5px; }
		fieldset fieldset, fieldset.radio, fieldset.check { clear: left; float: left; margin: 6px 0 10px 0; }

		form.small fieldset fieldset, form.small fieldset.radio, form.small fieldset.check, 
		form.small input[type="submit"], form.small input[type="radio"], form.small input[type="checkbox"] { margin-left: 44%; }

		form.mid fieldset fieldset, form.mid fieldset.radio, form.mid fieldset.check, 
		form.mid input[type="submit"], form.mid input[type="radio"], form.mid input[type="checkbox"] { margin-left: 44%; }

		form.large fieldset fieldset, form.large fieldset.radio, form.large fieldset.check, 
		form.large input[type="submit"], form.large input[type="radio"], form.large input[type="checkbox"] { margin-left: 44%; }

		form.x-large fieldset fieldset, form.x-large fieldset.radio, form.x-large fieldset.check, 
		form.x-large input[type="submit"], form.x-large input[type="radio"], form.x-large input[type="checkbox"] { margin-left: 44%; }

	legend { font-size: 11px; font-weight: light; font-style: italic; }
		legend span.access { font-size: smaller; }

	/* Default label sizes */
	label { clear: left; float: left; display: block; margin: 0 0 6px 0; padding: 2px 0 2px 1px; font-size: 12px; text-align: left; }
		label span.access { font-size: 12px; }
		form.small label { width: 44%; } form.mid label { width: 44%; } form.large label { width: 36%; } form.x-large label { width: 30%; }
		form label.short { width: 72px; } form label.mid { width: 108px; } form label.wide { width: 150px; } form label.x-wide { width: 200px; }

	/* Default submit, reset, and button properties */
	input[type="submit"], input[type="reset"], input[type="button"] { clear: left; float: left; margin: 5px 0 4px; 2px; }
	form input[type="submit"].inline, form input[type="reset"].inline, form input[type="button"].inline { clear: none; float: left; margin: -1px 0 6px 2px; }
	fieldset input[type="submit"], fieldset input[type="reset"], fieldset input[type="button"] { margin-bottom: 0; }

	/* Float inputs to their labels, set consistent paddings and margins */
	input[type="text"], input[type="password"], input[type="file"], select, textarea { float: left; margin: 0 0 6px 0; padding: 2px 3px; border: 1px solid #313131; }
	input[type="text"]:focus, input[type="password"]:focus, input[type="file"]:focus, select:focus, textarea:focus { border: 1px solid #369; }
	input.topLabelled { clear: left; }

	/* Default radio button and checkbox properties & custom label classes for radio buttons and checkboxes */
	input[type="radio"], input[type="checkbox"] { clear: left; float: left; margin: 1px 0 6px 0; }
	label.radio, label.check { clear: none; margin: 0 0 6px 4px; padding: 0; }
	label span { float: right; }
	span.red { color: #900; }

	form.small label.radio, form.mid label.radio, form.large label.radio, form.x-large label.radio { width: auto; }
	form.small label.check, form.mid label.check, form.large label.check, form.x-large label.check { width: auto; }

	/* Input, select, and textarea width classes and inheritance widths from form size class */
	form.small input[type="text"], form.small input[type="password"], form.small input[type="file"], form.small select, form.small textarea { width: 45%; }
	form input[type="text"].short, form input[type="password"].short, form input[type="file"].short, form select.short, form textarea.short { width: 80px; }

	form.mid input[type="text"], form.mid input[type="password"], form.mid input[type="file"], form.mid select, form.mid textarea { width: 45%; }
	form input[type="text"].mid, form input[type="password"].mid, form input[type="file"].mid, form select.mid, form textarea.mid { width: 140px; }

	form.large input[type="text"], form.large input[type="password"], form.large input[type="file"], form.large select, form.large textarea { width: 35%; }
	form input[type="text"].wide, form input[type="password"].wide, form input[type="file"].wide, form select.wide, form textarea.wide { width: 172px; }

	form.x-large input[type="text"], form.x-large input[type="password"], form.x-large input[type="file"], form.x-large select, form.x-large textarea { width: 30%; }
	form input[type="text"].x-wide, form input[type="password"].x-wide, form input[type="file"].x-wide, form select.x-large, form textarea.x-wide { width: 250px; }

	/* Remove margins for radio buttons and checkboxes in nested fieldsets */
	form.small fieldset fieldset input[type="radio"] { margin-left: 0; } form.mid fieldset fieldset input[type="radio"] { margin-left: 0; }
	form.large fieldset fieldset input[type="radio"] { margin-left: 0; } form.x-large fieldset fieldset input[type="radio"] { margin-left: 0; }
	form.small fieldset fieldset input[type="checkbox"] { margin-left: 0; } form.mid fieldset fieldset input[type="checkbox"] { margin-left: 0; }
	form.large fieldset fieldset input[type="checkbox"] { margin-left: 0; } form.x-large fieldset fieldset input[type="checkbox"] { margin-left: 0; }

	span.required { float: none; color: #900; font-size: 13px; font-weight: bold; }

	#loading {
		display: none;
		clear: left;
		position: relative;
		bottom: 26px;
		left: 164px;
		z-index: 150;
		margin: 0;
		padding: 0;
		width: 100px;
		height: 26px;
		background: #fff url('http://www.cpfpp.ab.ca/application/views/includes/images/loading.gif') center center no-repeat;
		opacity: 0.9;
		filter: alpha(opacity=90);
	}

	tr.surveyHeader td { padding: 3px 2px; background-color: #0b3a70; color: #fff; }
	tr.surveyHeader td.narrow { padding: 2px; width: 20px; font-size: 11px; text-align: center; }
	tr.surveyHeader td h3 { margin: 0; color: #fff; font-size: 16px; font-weight: bold; }
	tr.surveyHeader td p { color: #fff; font-style: italic; }
	td.surveyRadio { text-align: center; }
	td.surveyRadio input { float: none; }


