/* master.css
	Filename is self-explanatory.

/* @group Fonts */
	
	/* Calibri is set as the default font-family for most elements in Tripoli, so no need to specify it anywhere here in master.css (theoretically). */
	@font-face {
		font-family: Calibri;
		src: url(../fonts/calibri.ttf);
	}
	
/* @end */
	
/* @group Page Background and Wrapper */
	
	div#pageBackground {
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 175px;
		background-image: url(../images/background.gif); /* Now we can animate the background with jQuery. */
		background-repeat: repeat-x;
	}
	
	div#pageWrapper {
		position: relative;	/* Not sure why this is neccesary, though I probably did at some point. Regardless, cutting it breaks floating elements, so don't touch. */
		width: 960px;
		margin: auto;
	}
	
/* @end */

/* @group Top Level Layout */
	
	div#pageHeaderNavWrapper {
		position: relative;	/* Enable z-index:;. */
		z-index: 3;			/* Position #pageHeaderNavWrapper above the body and footer, so hover cards and so on don't get covered. */
		padding-top: 10px;	/* Nudges the contents down 10px, without disturbing the background image (like margin:; would. Also contributes to the flow of the page, so the body and footer get nudged as well. */
	}
	
	div#pageBodyWrapper {
		position: relative;	/* For the benefit of child elements that are absolutely positioned. */
	}
	
	div#pageFooterNavWrapper {
		position: relative;
		z-index: 1;			/* Make sure the footer is below the body and header. */
		height: 119px;
		margin-top: 10px;
		background-image: url(../images/fnavshadow.png);
		background-repeat: no-repeat;
	}
	
/* @end */

/* @group Header Navigation */

	/* @group Positioning */
	
	div#phnLogoWrapper {
		position: relative;
		z-index: 1;			/* The logo goes beneath the pnav and snav. */
	}
	
	div#phnPNavWrapper {
		position: relative;
		z-index: 3;			/* The pnav goes above the logo and snav. */
	}
	
	div#phnSNavWrapper {
		position: relative;
		margin-top: 10px;	/* Nudge it down from the logo and pnav so it lines up with the background image. */
		z-index: 2;			/* The snav goes above the logo and below the pnav. */
	}
	
	/* @end */

	/* @group Box Model */
	
	div#phnLogoWrapper {
		height: 150px;	/* Browser compatibility hack. For some reason, something (probably the anchor) was adding an extra 1.5px to the content of this <div> and different browsers handle fractional pixels differently (Hello FF and Saf!). This overrides that. */
	}
	
	div#phnPNavWrapper {
		height: 40px;	/* Height given only for visualizing purposes. */
	}
	
	div#phnSNavWrapper {
		height: 45px;
	}
	
	/* @end */
	
	/* @group Static Styling */
	
	div#phnSNavWrapper {
		background-image: url(../images/snavshadow.png);	/* Creates that nice raised ribbon effect. */
	}
	
	/* @end */

	/* @group Primary Navigation */
	
		/* @group Positioning */
			
		ul#phnpnList {
			position: absolute;
			right: 0px;			/* Right align the list */
		}
		
		li.phnpnListItem {
			float: left;
		}
		
		a.phnpnListItemAnchor,
		li#phnpnliEmergencies > span {
			position: relative;	/* Enable z-index:;. */
			z-index: 2;			/* Make sure second level lists appear below their sibling anchors. */
		}
		
		/* @end */
		
		/* @group Box Model */
		
		li.phnpnListItem {
			margin-left: 25px;	/* Item Spacing */
		}
		
		/* @end */
	
		/* @group Static Styling */
		
		a.phnpnListItemAnchor:link,
		a.phnpnListItemAnchor:visited {
			padding: 5px;
			padding-bottom: 5px;
			border: 1px solid transparent;
			border-radius: 5px;
			-moz-border-radius: 5px;
			-webkit-border-radius: 5px;
			color: #445599;
			font-size: 24px;
			text-decoration: none;
		}
		
		li#phnpnliEmergencies > span {
			padding: 5px;
			padding-bottom: 5px;
			border: 1px solid transparent;
			border-radius: 5px 5px 0px 0px;
			-moz-border-radius: 5px 5px 0px 0px;
			-webkit-border-top-left-radius: 5px;
			-webkit-border-top-right-radius: 5px;
			color: #aa2211;
			font-size: 24px;
			text-decoration: none;
		}
		
		/* @end */
		
			
		/* @group Interactive Styling */
		
		li.phnpnListItem:hover > a.phnpnListItemAnchor {
			border-color: #112266;
			border-bottom-color: #4466aa;
			background-color: #4466aa;
			background-image: -moz-linear-gradient(#6688cc, #4466aa);
			background-image: -webkit-gradient(linear, left top, left bottom, from(#6688cc), to(#4466aa));
			color: white;
		}
		
		a.phnpnListItemAnchor:hover {
			text-decoration: underline;
		}
		
		li#phnpnliEmergencies:hover > span {
			border-color: #660000;
			border-bottom-color: #aa2211;
			background-color: #aa2211;
			background-image: -moz-linear-gradient(#cc4422, #aa2211);
			background-image: -webkit-gradient(linear, left top, left bottom, from(#cc4422), to(#aa2211));
			color: white;
		}
		
		/* @end */
		
		/* @group Emergencies Hovercard */
		
			/* @group Display Management */
			
			li#phnpnliEmergencies div {
				display: none;
			}
			
			li#phnpnliEmergencies:hover div {
				display: block;
			}
			
			/* @end */
		
			/* @group Positioning */
			
			li#phnpnliEmergencies > div {
				position: absolute;
				top: 29px;
				right: 0px;
				z-index: 1;			/* Make sure the hovercard appears below it's sibling anchor. */
			}
			
			/* @end */
			
			/* @group Box Model */
			
			li#phnpnliEmergencies > div {
				max-width: 300px;
				padding: 5px;
			}
			
			/* @end */
			
			/* @group Static Styling */
		
			li#phnpnliEmergencies > div {
				border: 1px solid #660000;
				border-radius: 0px 5px 5px 5px;
				-moz-border-radius: 5px 0px 5px 5px;
				-webkit-border-top-left-radius: 5px 5px;
				-webkit-border-bottom-left-radius: 5px 5px;
				-webkit-border-bottom-right-radius: 5px 5px;
				background-color: #aa2211;
				background-image: -moz-linear-gradient(#aa2211, #881100);
				background-image: -webkit-gradient(linear, left top, left bottom, from(#aa2211), to(#881100));
			}
			
			li#phnpnliEmergencies > div p {
				color: white;
				font-size: 16px;
			}
			
			li#phnpnliEmergencies > div strong {
				font-weight: bold;
			}
			
			/* @end */
		
		/* @end */
		
	/* @end */
	
	/* @group Secondary Navigation */
	
		/* @group Display Management */
		
		div.phnsnHovercard {
			display: none;
		}
		
		li.phnsnListItem:hover > div.phnsnHovercard {
			display: block;
		}
		
		/* @end */
		
		/* @group First Level */
		
			/* @group Positioning */
			
			ul#phnsnList {
				position: absolute;
				top: 13px;
				right: 160px;
			}
			
			li.phnsnListItem {
				float: left;
			}
			
			a.phnsnListItemAnchor:link,
			a.phnsnListItemAnchor:visited {
				position: relative;
				z-index: 2;				/*	Make sure the <a> appears above the <div> next to it. */
			}
			
			/* @end */
		
			/* @group Box Model */
			
			ul#phnsnList {
				height: 16px;
			}
			
			li.phnsnListItem {
				padding-left: 8px;				/* Spacing. */
				padding-right: 8px;				/* Spacing. */
			}
			
			li.phnsnlihc {
				padding-left: 3px;
				padding-right: 3px;
			}
			
			a.phnsnliahc:link,
			a.phnsnliahc:visited {
				padding: 4px;
				padding-bottom: 10px;
			}
			
			/* @end */
		
			/* @group Static Styling */
					
			li.phnsnListItem {
				border-left: 1px solid gray;	/* Seperator. */
			}
			
			li.phnsnListItem:first-child {
				border-left: none;	/* No seperator. */
			}
			
			a.phnsnListItemAnchor:link,
			a.phnsnListItemAnchor:visited {
				color: #444444;
				font-size: 14px;
				line-height: 14px;
				text-decoration: none;
			}
			
			a.phnsnliahc:link,
			a.phnsnliahc:visited {
				border: 1px solid transparent;
				border-bottom: none;
				border-radius: 5px 5px 0px 0px;
				-moz-border-radius: 5px 5px 0px 0px;
				-webkit-border-top-left-radius: 5px;
				-webkit-border-top-right-radius: 5px;
			}
			
			/* @end */
			
			/* @group Interactive Styling */
			
			li.phnsnListItem:hover > a:link,
			li.phnsnListItem:hover > a:visited {
				color: #4466aa;
			}
			
			a.phnsnListItemAnchor:hover {
				text-decoration: underline;
			}
			
			li.phnsnListItem:hover > a.phnsnliahc:link,
			li.phnsnListItem:hover > a.phnsnliahc:visited {
				background-color: white;
				background-image: -moz-linear-gradient(#eeeeee, #eeeeee);
				background-image: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#eeeeee));
				border-color: gray;
				border-bottom-color: transparent;
			}
			
			/* @end */
		
		/* @end */
		
		/* @group Hovercards */
		
			/* @group Positioning */
			
			div.phnsnHovercard {
				position: absolute;
				top: 24px;
			}
			
			/* @end */
			
			/* @group Box Model */
			
			div.phnsnHovercard {
				padding: 10px;
			}
			
			/* @end */
			
			/* @group Static Styling */
			
			div.phnsnHovercard {
				border: 1px solid gray;
				border-radius: 0px 5px 5px 5px;
				-moz-border-radius: 0px 5px 5px 5px;
				-webkit-border-top-right-radius: 5px;
				-webkit-border-bottom-left-radius: 5px;
				-webkit-border-bottom-right-radius: 5px;
				background-color: white;
				background-image: -moz-linear-gradient(#eeeeee, white 20%);
				background-image: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), color-stop(20%, white));
			}
			
				/* @group Content Styling */
				
				div.phnsnHovercard p {
					padding-bottom: 5px;
					font-size: 14px;
					line-height: 20px;
				}
				
				div.phnsnHovercard address {
					font-size: 14px;
					line-height: 16px;
				}
				
				div.phnsnHovercard td {
					min-width: 120px;
					padding: 3px;
					border-bottom: 1px dotted #dddddd;
					font-size: 14px;
					line-height: 16px;
				}
				
				/* @end */
			
			/* @end */
		
		/* @end */
		
		/* @group Search Bar */
	
			/* @group Positioning */
			
			/* Search Bar Positioning */
			form#phnsnSearchForm {
				position: absolute;
				top: 11px;
				right: 0px;
			}
			
			/* @end */
		
			/* @group Box Model */
			
			input#phnsnSearchInput {
				width: 130px;
				height: 16px;
				padding: 0px 10px 0px 18px;
			}
			
			/* @end */
		
			/* @group Static Styling */ 
		
			input#phnsnSearchInput {
				border: 1px solid gray;
				background-color: white;
				background-image: url(../images/search.png);
				background-repeat: no-repeat;
				border-radius: 20px;
				-moz-border-radius: 20px;
				-webkit-border-radius: 20px;
				-moz-box-shadow: inset 0px 2px 1px #dddddd;
				color: grey;
				font-family: Calibri, Helvetica, Arial, sans-serif;
				font-size: 14px;
			}
			
			/* @end */
	
			/* @group Interactive Styling */
			
			input#phnsnSearchInput:hover {
				color: black;
			}
			
			input#phnsnSearchInput:focus {
				color: black;
				outline: none;		/* Override tripoli. */
				-moz-box-shadow: inset 2px 2px 1px #dddddd, 0px 0px 3px 1px #88aaff;
				-webkit-box-shadow: 0px 0px 5px #88aaff;
			}
		
			/* @end */
			
		/* @end */
	
	/* @end */

/* @end */

/* @group Utlity Styles */

.small {				
	color: gray;
	font-size: 10px;
	line-height: 10px;
}

span.symbol {
	font-family: Arial;
}

* > span.parentHoverToggle {
	display: none;
}

*:hover > span.parentHoverToggle {
	display: inline;
}

/* @end */

/* @group Links */

a {
	color: #66aaff;
	text-decoration: none;
}

a:hover {
	color: #2288ff;
	text-decoration: underline;
}

a:visited {
	color: #6644ff;
}

/* @end */

/* @group Main Content */

	/* @group Text and Images */
	
	div.pbMainContent img.floatRight {
		float: right;
		margin-bottom: 10px;
		margin-left: 10px;
	}
	
	div.pbMainContent img.floatLeft {
		float: left;
		margin-bottom: 10px;
		margin-right: 10px;
	}
	
	div.pbMainContent div.pbMainHeaderGroup {
		display: block;					/* Some browsers will give it inline display by default. */
		margin-bottom: 10px;
		padding-bottom: 2px;
		border-bottom: 1px solid gray;
	}
	
	div.pbMainContent div.pbMainHeaderGroup h1 {
		color: #4466aa;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 48px;
		line-height: 48px;
		text-indent: 0px;
	}
	
	div.pbMainContent h1 {
		color: #4466aa;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 24px;
		line-height: 24px;
	}
	
	div.pbMainContent div.pbMainHeaderGroup h2 {
		color: #aa2211;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 24px;
		line-height: 24px;
		text-indent: 20px;
	}
	
	div.pbMainContent h2 {
		color: #aa2211;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 18px;
	}
	
	div.pbMainContent p {
		margin-bottom: 10px;
		color: #444444;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 16px;
		line-height: 20px;
	}
	
	div.pbMainContent address {
		margin-bottom: 10px;
		color: #444444;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 16px;
		line-height: 20px;
	}
		
	/* @end */
	
	/* @group Lists */
	
		/* @group Unordered */
		
		div.pbMainContent ul {
			list-style-position: inside;
			list-style-type: disc;
		}
		
		div.pbMainContent ul li {
			margin-bottom: 10px;
			color: #444444;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 16px;
			line-height: 20px;
		}
		
		/* @end */
		
		/* @group Definition */
		
		div.pbMainContent dl {
			list-style-position: inside;
			list-style-type: disc;
		}
		
		div.pbMainContent dt {
			margin-bottom: 5px;
			color: #4466aa;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 18px;
			line-height: 22px;
		}
		
		div.pbMainContent dd {
			margin-bottom: 10px;
			color: #444444;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 16px;
			line-height: 20px;
		}
		
		/* @end */
	
	/* @end */

	/* @group Horizontal Rules */
	
	div.pbMainContent hr {
		height: 1px;
		margin-bottom: 10px;
		border: none;
		background-color: gray;
	}
	
	/* @end */

	/* @group Forms */
	
		/* @group Headers */
		
		form.pbFullForm h1 {
			margin-bottom: 5px;
			border-bottom: 1px dotted #4466aa;
			color: #4466aa;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 24px;
			line-height: 24px;
			text-indent: 0px;
		
		}
		
		form.pbFullForm h1.noFollowingHeader {
			margin-bottom: 5px;
		}
		
		form.pbFullForm h2 {
			color: #aa2211;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 18px;
		}
	
		/* @end */
		
		/* @group Sections */
		
		div.pbffflSectionBody,
		div.pbffslSectionBody {
			margin-bottom: 5px;
		}
		
		/* @end */
		
		/* @group Inputs */
		
		div#pageBodyWrapper div.pbMainContent form label,
		div#pageBodyWrapper div.pbMainContent form span.formLabel {
			color: #444444;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 12px;
		}
		
		div.pbffInput {
			margin-bottom: 5px;
		}
		
			/* @group Text */
			
			form.pbFullForm input[type="text"] {
				padding: 2px;
				border: 1px solid gray;
				border-radius: 2px;
				-moz-border-radius: 2px;
				-webkit-border-radius: 2px;
				-moz-box-shadow: inset 0px 1px 2px #bbbbbb;
				background-color: white;
				background-image: -moz-linear-gradient(#eeeeee, white);
				background-image: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(white));
				color: #444444;
				font-family: Calibri, Helvetica, Arial, sans-serif;
				font-size: 18px;
			}
			
			form.pbFullForm input[type="text"]:hover {
				color: black;
			}
			
			form.pbFullForm input[type="text"]:focus {
				-moz-box-shadow: inset 0px 1px 2px #bbbbbb, 0px 0px 3px 1px #88aaff;
				-webkit-box-shadow: 0px 0px 5px #88aaff;
				color: #2244ff;
			}
			
			/* @end */
			
			/* @group Textareas */
			
			form.pbFullForm textarea {
				padding: 2px;
				border: 1px solid gray;
				border-radius: 2px;
				-moz-border-radius: 2px;
				-webkit-border-radius: 2px;
				-moz-box-shadow: inset 0px 1px 2px #bbbbbb;
				background-color: white;
				background-image: -moz-linear-gradient(#eeeeee, white);
				background-image: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(white));
				color: #444444;
				font-family: Calibri, Helvetica, Arial, sans-serif;
				font-size: 18px;
			}
			
			form.pbFullForm textarea:hover {
				color: black;
			}
			
			form.pbFullForm textarea:focus {
				-moz-box-shadow: inset 0px 1px 2px #bbbbbb, 0px 0px 3px 1px #88aaff;
				-webkit-box-shadow: 0px 0px 5px #88aaff;
				background-color: white;
				background-image: -moz-linear-gradient(#eeeeee, white);
				background-image: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(white));
				color: #2244ff;
			}
			
			/* @end */
			
			/* @group Submit */
			
			form.pbFullForm input.pbffSubmitButton {
				width: 150px;
				height: 40px;
				padding: 2px 10px 0px 10px;
				border: 1px solid gray;
				border-radius: 20px;
				-moz-border-radius: 20px;
				-webkit-border-radius: 20px;
				-moz-box-shadow: 0px 2px 5px #bbbbbb;
				background-color: white;
				background-image: -moz-linear-gradient(white, #eeeeee);
				background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(#eeeeee));
				color: #444444;
				font-family: Calibri, Helvetica, Arial, sans-serif;
				font-size: 20px;
			}
			
			form.pbFullForm input.pbffSubmitButton:hover {
				border: 1px solid #2244ff;
				-moz-box-shadow: 0px 2px 5px #aabbff;
				color: #2244ff;
			}
			
			/* @end */
			
			/* @group Print Button */
			
				/* @group Positioning */
				
				div#pbFormPrintButton {
					position: absolute;
					bottom: 15px;
					right: 0px;
				}
				
				/* @end */
				
				/* @group Box Model */
				
				div#pbFormPrintButton {
					display: none;
					padding: 2px 10px 0px 10px;
				}
				
				/* @end */
				
				/* @group Static Styling */
				
				div#pbFormPrintButton {
					border: 1px solid gray;
					border-radius: 20px;
					-moz-border-radius: 20px;
					-webkit-border-radius: 20px;
					-moz-box-shadow: 0px 2px 5px #bbbbbb;
					background-color: white;
					background-image: -moz-linear-gradient(white, #eeeeee);
					background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(#eeeeee));
					opacity: 0.0;
					color: #444444;
					font-family: Calibri, Helvetica, Arial, sans-serif;
					font-size: 20px;
					cursor: pointer;
				}
				
				/* @end */
			
			/* @end */
		
		/* @end */
	
	/* @end */
	
/* @end */

/* @group Side Content */

	/* @group Text and Images */

	div#pageBodyWrapper div.pbSideContent h1 {
		color: 
		#aa2211;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 24px;
	}
	
	div#pageBodyWrapper div.pbSideContent p {
		margin-bottom: 10px;
		color: #444444;
		font-family: Calibri, Helvetica, sans-serif;
		font-size: 15px;
		line-height: 18px;
	}

	/* @end */
	
	/* @group Lists */
	
		/* @group Unordered */
		
		div.pbSideContent ul {
			list-style-type: none;
		}
		
		div.pbSideContent ul li {
			margin-bottom: 10px;
			color: #444444;
			font-family: Calibri, Helvetica, sans-serif;
			font-size: 15px;
			line-height: 18px;
		}
		
		/* @end */
	
	/* @end */

/* @end */

/* @group Footer Navigation */

	/* @group First Level */
	
		/* @group Positioning */
	
		ul#pfnList {
			position: absolute;
			top: 15px;
		}	
	
		/* @end */
		
		
		/* @group Static Styling */
		
		a.pfnListItemAnchor:link,
		a.pfnListItemAnchor:visited,
		li#pfnliEmergencies > span {
			color: #444444;
			font-size: 24px;
			text-decoration: none;
		}
		
		/* @end */
		
		/* @group Interactive Styling */
		
		a.pfnListItemAnchor:hover {
			color: black;
			text-decoration: underline;
		}
		
		/* @end */
	
	/* @end */
	
	/* @group Second Level */
		
		/* @group Box Model */
		
		li.pfnListItem p {
			padding-bottom: 20px;
		}
		
		/* @end */
		
		/* @group Static Styling */
		
		a.pfnSubListItemAnchor:link,
		a.pfnSubListItemAnchor:visited {
			color: gray;
			font-size: 14px;
			line-height: 20px;
			text-decoration: none;
		}

		li.pfnListItem p {
			color: gray;
			font-size: 14px;
		}
		
		/* @end */
		
		/* @group Interactive Styling */
		
		a.pfnSubListItemAnchor:hover {
			color: black;
			text-decoration: underline;
		}
		
		/* @end */
	
	/* @end */

/* @end */