/* Global Stuff */
body
{
	background-color: white;
	/* MS browsers need help centering page content.
	text-align should not apply to block-level elements, but
	it does in MS browsers when it's on the BODY tag. */
	text-align: center;
}
#widthContainer, .widthContainer /* ids are deprecated for us*/
{
	margin-left: auto;
	margin-right: auto;
	/* and compensate for the text-align: center on the BODY... */
	text-align: left;
	padding-bottom: 2em;
}

div.mobileOnly { display: none; }

/* headlines */
h1, h2, h3, h4, h5
{
	padding: 0;
	margin: 0 0 4px 0;
	font-weight: bold;
}
h1 { font-size: 200%; }
/* section intro headline */
h2 { font-size: 155%; }
/* item summary headline links */
.summaryDisplay h3 { font-size: 115%; }
/* promotion "full" mode headlines */
h3 { font-size: 133%; }
/* promotion "full" mode DEs headline links, and smaller */
h4, h5 { font-size: 100%; }
h1 a, h2 a, h3 a, h4 a, h5 a { font-weight: bold; }

.column.narrow h1, .column.narrow h2, .column.narrow h3,
.column.narrow h4, .column.narrow h5, .column.narrow h6
{
	font-size: 100%;
	font-weight: inherit;
	margin: 0;
}

p { margin-top: 0; }
img { border: none; }

img[style*="float: left"]  { margin-right: 10px; margin-bottom: 5px; }
img[style*="float: right"] { margin-left:  10px; margin-bottom: 5px; }

.small, .contactInfo { font-size: 85%; }
.italic { font-style: italic; }
.narrow.column .small { font-size: 100%; }

/* normalize lists */

ul
{
	padding-left: 1.6em;
	margin: 0;
	/* list-style-type: disc; */
}
li
{
	list-style-position: outside;
	margin-bottom: 1ex;
	margin-top: 1ex;
}

/* VerticalLogo, Footer default appearance	*/
.verticalLogo, .verticalLogo_text, .footernav
{
	text-align: center;
	font-size: 9pt;
	margin: 1em 0;
}

/* Main column content display */
.centerColumn { padding: 0.6em 1em 1em 1em; }
.box, .infoblock.box { margin-bottom: 3em; } /* all boxes. this is a big deal */

/* attachments */
.attachments
{
	background-color: transparent;
	clear: both;
	margin: 1em 0 0 0;
}
.summaryDisplay .attachments { margin-top: 0.5em; }
.attachments img { margin-right: 0.5em; }
.attachments .attachment { margin: 2px; }
.attachments .attachment * { vertical-align: middle; }


/* Item and Item Summary display, search results */
.item.summaryDisplay, article.summaryDisplay
{
	margin:	1.5em 0;
	clear: both;
}
.item.summaryDisplay, article.summaryDisplay:first-child
{
	margin-top: 0;
}
.column.narrow .item.summaryDisplay:first-child,
.column.narrow article.summaryDisplay:first-child		{ margin-top: 0; }
/* GTP: I forget what the rationale for this was. it was screwing up RSS display. */
/* .item.summaryDisplay P, article.summaryDisplay P		{ margin-bottom: 0px; } */
/* .item.summaryDisplay h3, article.summaryDisplay h3		{ font-size: 100%; } */
/* GTP 6-4-2012: no idea why I put this here. it was causing all kinds of problems */
/* .summaryDisplay header h3 								{ display: inline; } */

/* SEARCH */
.searchtabstrip { padding: 5px; margin-bottom: 12px; }
.searchpages, .searchdocs{ margin-bottom: 10px; }
.searchpages h3, .searchdocs h3{ margin: 10px 5px 3px 0; }
.searchtab
{
	border: 1px solid #333;
	padding: 5px 10px;
	margin-right: 10px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	cursor: pointer;
	opacity: 0.8;
	font-size: 80%;
}
.searchtab.active { padding-bottom: 6px; box-shadow: 3px 3px 3px #555; opacity: 1.0; }
.searchdocs { display: none; }

a.item, .searchResult a									{ font-weight: bold; }
.searchResult span.note 								{ opacity: 0.5; margin-left: 0.5ex; }
article													{ margin-bottom: 2em; }
.itemHeadline											{ margin-bottom: 1em; }
.item .body, article .body								{ margin-bottom: 1em; }
.item > *:last-child, article > *:last-child			{ margin-bottom: 0px; }

.magnifyingGlass { width: 14px; height: 14px; }

.listingCheck
{
	text-align: right;
	padding-top: 1em;
}

.prop { display: none; }

#tinymce table td { min-width: 15px; }


/* html5 help for IEs */
header,nav,article,footer,section,aside,figure,figcaption { display:block }

/*==================================================( NAVIGATION )===*/
/*===================================================================*/

/* before we go any futher, flatten out nav ULs and some other stuff */
nav li a
{
	text-decoration: none;
}
nav.horizontal ul, nav.horizontal li, nav.vertical ul, nav.vertical li
{
	border: none;
	margin: 0;
	padding: 0;
	list-style-type: none;
	list-style-position: outside; /* ie7 needs this */
}


/* BLOCK-STYLE NAVS, BOTH VERTICAL AND HORIZONTAL */

nav.block ul, nav.block li
{
	display: block;
}
nav.block li
{
	/* this is extremely important. this solves the (almost) undefeatable
	   phantom 2px bottom margin on menu/other block nav items in IE<8. nobody
	   has any idea why it works. */
	vertical-align: bottom;
}

/* block-style menus shall have block-style links */
nav.block li a
{
	display: block;
}
nav.horizontal.block > ul:after  /* clear floats without overflow:hidden */
{
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	/* ie may need additional help here */
}


/* FOOTER NAV stuff is all in the designs */


/* SUBSECTIONS ONLY BOX */
nav.subsections > ul
{
	padding-left: 1.3em;
	margin: 0;
}
nav.subsections ul
{
	margin-bottom: 0.5em;
}
nav.subsections ul ul, nav.tree > ul > li > ul
{
	padding-left: 2ex;
}



/* HORIZONTAL NAVS */

/* home and top level sections */
nav.horizontal li
{
	display: inline;
}
nav.horizontal li a
{
	white-space: nowrap;
}
nav.horizontal > ul > li:last-child { border-right: none; }



/* HORIZONTAL-BLOCK STYLE */

nav.horizontal.block li
{
	/* this rule is relevant for tree-style and menu navs */
	display: block;
}
/* home and top level sections */
nav.horizontal.block > ul > li
{
	display: inline-block;
	float: left !ie;
}
nav.horizontal.block > ul > li > a
{
}
/* child sections */
nav.horizontal.block li li > a
{
	white-space: normal;
}
/* the full-width version! */
/* CSS hackery used here to exclude IE7 and under */
html>/**/body nav.horizontal.block.fullWidth > ul
{
	/* display: -moz-box; */
	/* -moz-box-orient: horizontal; */
	/* -moz-box-flex: 1; */
	display: table;
	position: relative;
	width: 100%;
}
html>/**/body nav.horizontal.block.fullWidth > ul li
{
	text-align: left;
}
html>/**/body nav.horizontal.block.fullWidth > ul > li
{
	position: relative;
	display: table-cell;
	/* display: -moz-box; */
	/* -moz-box-orient: horizontal; */
	/* -moz-box-flex: 1; */
	text-align: center;
}
html>/**/body nav.horizontal.block > ul:after  /* no float clearing needed */
{
	content: "";
	display: none;
}

/* MENU NAV */

nav.menu { zoom: 1; position: relative; }

/* z-index bomb */
/* this is for IE<8: when a menu is open, we must mark all its parent elements
   (up to the body) with this because of its broken z-index model */
.raised { z-index: 1010; }

/* top-level sections (menu titles) */
nav.menu li
{
	position: relative;
	zoom: 1;
}
/* nasty fix for improper spacing in IE < 8*/
nav.menu li
{
	/* margin-bottom: -2px !ie; */
}

nav.menu li.open
{
}
nav.menu ul.open { z-index: 1001; } /* open menu titles need to be raised */
nav.menu ul.closing { z-index: 1000; } /* menus that the cursor has left should be lowered immediately */
nav.menu > ul .triangle
{
	display: inline;
	vertical-align: middle;
	font: normal 8pt Arial, sans-serif;
	white-space: nowrap;
	line-height: 100%;

	margin-left: 7px;
	float: right;

	opacity: 0.3;
	filter: alpha(opacity = 30);
	zoom: 1;
}
nav.vertical.block.menu > ul .triangle
{
	position: relative;
	top: 1px;
}
nav.horizontal.block.menu > ul > li > a > .triangle { float: none; }
/* ie6 help */
* html nav.horizontal.block > ul .triangle { float: none; }
* html nav.horizontal.block > ul .triangle { float: right; }

/* subsections (menu items) */
nav.menu > ul > li li
{
	display: block;
}

/* all menus */
nav.menu ul ul
{
	position: absolute;

	box-shadow: -2px 6px 13px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: -2px 6px 13px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: -2px 6px 13px rgba(0, 0, 0, 0.3);

	zoom: 1;

	padding-top: 5px;
	padding-bottom: 5px;
}
/* sub-menus and all vertical menus */
nav.menu ul ul ul, nav.menu.vertical ul ul
{
}
/* open and shut */
nav.menu ul ul.open { display: block; }
nav.menu ul ul { display: none; }
/* nav.menu ul ul.open { visibility: visible; } */
/* nav.menu ul ul { visibility: hidden; } */


/* horizontal menus */
nav.menu.horizontal.block > ul > li > ul 	/* no curves on top edges for this special case */
{
	border-top-right-radius: 0px;
	border-top-left-radius: 0px;
	-moz-border-radius-topright: 0px;
	-moz-border-radius-topleft: 0px;
	-wekbit-border-top-right-radius: 0px;
	-wekbit-border-top-left-radius: 0px;
}

.notClickable { cursor: default !important; }
table.navHorizontal { width: 100%; }


/* slab-style menus */

/* NOTE: slab CSS is entirely in the design css, so that it's decoupled from
every other design. */


/*===============================================( IMAGE DISPLAY )===*/
/*===================================================================*/

.image > a { display: block; }
/* image wrapper */
.summaryDisplay .image { max-width: 100%; }
/* image itself */
.summaryDisplay .image img { width: 100%; }
.image.left
{
	float: left;
	margin: 0 25px 15px 0;
}
.image.right
{
	float: right;
	margin: 0 0 15px 25px;
}
.image .imageBoxCaption { text-align: justify; }
.item.summaryDisplay .image.left, .item.summaryDisplay .image.right,
article.summaryDisplay .image.left, article.summaryDisplay .image.right
{
	margin: 0 1em 1em 0em;
}
.item.summaryDisplay .image.right, article.summaryDisplay .image.right
{
	margin: 0 .25em .25em 0em;
}
/* the exception for QuickList... */
.quickList .item.summaryDisplay .image.right, .quickList article.summaryDisplay .image.right
{
	float: right;
	margin: .25em 0em .25em .25em;
}

.promoIcon
{
	float: left;
	margin: 0em 1em 1em 0em;
}
.sidebarImageBox { margin-bottom: 0.25em; text-align: center;}
.imageBoxCaption {  }

/*=========================================( DATATYPE FORMATTING )===*/
/*===================================================================*/


/* general */
/* news */
/* events */
.description, .location, .directions, .comment { margin-bottom: 1em; }
.quickList .itemLink, .item.summaryDisplayTitle { font-weight: bold; }
.calendarTable
{
	margin-bottom: 0.5em;
	clear: both;
}

/* Jobs */
.B_JOB .field { margin-bottom: 1em; }
.B_JOB .field.inline { margin-bottom: 3px; }
.B_JOB .field.inline h4 { width: 20%; }
.B_JOB .field.inline .value { max-width: 70%; }
div.jobData { float: left; }
.B_JOB a.link { font-weight: bold; }

/* location */
.B_LOC .summaryDisplay .address h4 { display: none; }
.B_LOC h4
{
	max-width: 8em;
}
.mapLink { padding-left: 7em; }
a.map
{
	display: inline-block;
	margin: 1em 0;
}
a.map img { display: block; }
a.map
{
	border-radius: 15px;
	overflow: hidden;
	opacity: 0.8;
	transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
}
a.map:hover
{
	opacity: 1;
	box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
}
a.map img {  }

/* DYNAFORMS */
FORM.tightForm
{
	margin: 0px;
	padding: 0px;
}
.formElement
{
	margin-bottom: 0.25em;
	padding: 1px;
}
.formElement .formField INPUT { font-weight: normal; }

/* main forms */
DIV.formLabel, DIV.formLabelReq
{
	width: 30%;
	float: left;
	text-align: right;
	padding: 4px;
}
DIV.formLabelReq { font-weight: bold; }
DIV.formField
{
	float: left;
	font-weight: normal;
}
/* left, right forms */
.narrow.column .formLabel, .narrow.column .formField
{
	padding: 0px;
	text-align: left;
	font-weight: normal;
}
.narrow.column .formField { display: inline; }

/* SuperForms */
DIV.signupButton
{
	margin-top: 0.5em;
	text-align: right;
}
.SF_box
{
	width: 85%;
	clear: both;
}
.SF .SF_field
{
	float: right;
	width: 68%;
	text-align: left;
}
.SF .SF_label
{
	float: left;
	width: 28%;
	text-align: right;
	padding-top: 0.2em;
}
.SF_buttons { clear: both; }
.spacerDIV
{
	clear: both;
	font-size: 1px;
}
.SF HR
{
	display: block;
	clear: both;
}

/* product catalog */
.typeAndQuantity { clear: both; }

/* guestbook */
.guestbookDivider
{
	margin-top: 0.75em;
	margin-bottom: 0.75em;
}

/* polls */
.error { color: red; }
.pollResults { width: 80%; }

/* quickpolls! */
.QUICKPOLL .body.results
{
	display: none;
	opacity: 0;
}
.QUICKPOLL .result .response
{
	font-size: 90%;
	margin-bottom: 1ex;
}
.QUICKPOLL .color
{
	color: white;
	font-weight: bold;
	background: rgba(0, 0, 0, 0.5);
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		color-stop(0, rgba(0,0,0,0.2)),
		color-stop(1, rgba(0,0,0,0.5))
	);
	background: -moz-linear-gradient(
		center top,
		rgba(0,0,0,0.2) 0%,
		rgba(0,0,0,0.5) 100%
	);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#33000000',endColorstr='#7f000000');
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr='#33000000',endColorstr='#7f000000')";

	box-shadow: 2px 2px 7px rgba(0,0,0,0.2);
	-moz-box-shadow: 2px 2px 7px rgba(0,0,0,0.2);
	-webkit-box-shadow: 2px 2px 7px rgba(0,0,0,0.2);
	padding: 2px 4px;
	width: 1.2ex;
}
.QUICKPOLL a.showResults { margin-left: 1em; font-size: 90%; }
.QUICKPOLL .error, .QUICKPOLL .thankYou
{
	display: none;
	margin: 1ex 0;
}

/* directory */
.B_DIR .fieldBlock { max-width: 400px; }
.B_DIR .note
{
	font-size: inherit;
	margin-bottom: inherit;
	opacity: inherit;
}

/* quicklist */
.B_LIST .index.horizontal
{
	display: block;
	margin: 0;
	padding: 0;
}
.B_LIST .index.horizontal li
{
	display: inline-block;
	display: inline !ie;		/* IE7 and under don't support inline-block here */
	margin: 0.3ex 0;
	padding: 0 1ex 0 0;
	padding: 0 0 0 1ex !ie;		/* spacing is different in IE7 and under */
	border-right: 1px solid #aaa;
	border-color: rgba(0,0,0,0.3);
}
.B_LIST .index.horizontal li a
{
	display: inline;
	white-space: nowrap;
	padding: 0 1ex 0 1ex;
	border: 1px solid transparent;
}
.B_LIST .index.horizontal li a:hover
{
	background: rgba(0,0,0,0.1);
	border: 1px solid rgba(0,0,0,0.3);
	box-shadow: inset 2px 2px 8px  rgba(0,0,0,0.2);
	border-radius: 10px;
	padding: 0.4ex 1ex;
	text-decoration: none;
}
.B_LIST .index.horizontal li:last-child
{
	border-right: none;
	padding-right: 0;
}
.B_LIST article h3 { font-size: 100%; }

.returnLink
{
	font-size: 80%;
	opacity: 0.7;
	margin-top: 1ex;
}

/* product list */
.ACE_Header
{
	background-color: black;
	color: white;
	padding: 1px;
	text-align: center;
}
/* item name */
.ACE_Row_Name
{
	background-color: white;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	color: black;
}

/* line total for each item */
.ACE_Row_SubTotal
{
	background-color: white;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	border-right-style: solid;
	border-right-width: 1px;
	border-right-color: black;
	text-align: right;
	color: black;
}

/* qty for each item */
.ACE_Row_Qty
{
	background-color: white;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	text-align: center;
	color: black;
}

/* cost of each item */
.ACE_Row_Cost
{
	background-color: white;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	text-align: right;
	color: black;
}
/* name of each item - alternating row */
.ACE_Row_Name_Alt
{
	background-color: #DDDDDD;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	color: black;
}

/* line total for each item - alternating row */
.ACE_Row_SubTotal_Alt
{
	background-color: #DDDDDD;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	border-right-style: solid;
	border-right-width: 1px;
	border-right-color: black;
	text-align: right;
	color: black;
}

/* qty for each item - alternating row */
.ACE_Row_Qty_Alt
{
	background-color: #DDDDDD;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	text-align: center;
	color: black;
}

/* row cost for each line - alternating row */
.ACE_Row_Cost_Alt
{
	background-color: #DDDDDD;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	text-align: right;
	color: black;
}

/* row cost for each line item */
.ACE_ShipToText
{
	text-align: left;
	padding: 3px;
}

/* total bar left  - total bar includes subtotal, shipping, tax, and total*/
.ACE_TotalBar_Left
{
	background-color: white;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	text-align: right;
	font-style: italic;
	color: black;
}

/* total bar right - total bar includes subtotal, shipping, tax, and total */
.ACE_TotalBar_Right
{
	background-color: white;
	padding: 1px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: black;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: black;
	text-align: right;
	border-right-style: solid;
	border-right-width: 1px;
	border-right-color: black;
	color: black;
}

/* generic field display */
.fieldBlock
{
	/* clear: both; */
	overflow: hidden;
	margin: 1em 0;
}
.field.inline
{
	display: block;
	overflow: hidden;
	line-height: inherit;
	white-space: nowrap;
}

/* style common to both labels and values */
.field.inline > *
{
	vertical-align: top;
	position: relative;
	display: inline-block;
	white-space: normal;
	overflow: hidden;

	/* in ie < 8: */
	/* display:inline + zoom:1 = display:inline-block!  */
	*display: inline;
	zoom: 1;

	margin: 0;
}

/* labels */
.fieldGrid { display: table; }
.ie7 .fieldGrid { display: inline-block; }
.fieldGrid .field { display: table-row; }
.ie7 .fieldGrid .field { display: block; }
.fieldGrid .field.inline h4 { display: table-cell; }
.ie7 .fieldGrid .field.inline h4 { display: inline; width: 20%; }
.fieldGrid .field.inline .value { display: table-cell; }
.ie7 .fieldGrid .field.inline .value { display: inline; width: 75%; }

.field.inline h4, .field.inline label, .field.inline .label
{
	/* width: 33%; */
	font-weight: bold;
	padding-right: 2ex;
}
/* values */
.field.inline .value
{
	/* width: 65%; */
}

/* nested fields */
.field.inline .field.inline .label
{
	width: auto;
	margin-right: 1em;
}
.field.inline .field.inline .value
{
	width: auto;
}

.field.radio { display: block; white-space: nowrap; }
.field.radio * { vertical-align: top; }
.field.radio .label
{
	display: inline-block;
	width: 86%;
	white-space: normal;
	overflow: hidden;
}
.field.radio .input
{
	display: inline-block;
	width: 14%;
	text-align: right;
}

/* common address block */
* html .field.address h4 { margin-left: 7em; } /* ie6 */
.field.address .department, .field.address .address1, .field.address .address2
{ display: block; }


/* other common parts */
time, .embargo, .date, .note, .readmore
{
	font-size: 88%;
	opacity: 0.8;
}
time, .embargo, .date
{
	/* font-weight: bold; */
 	margin-bottom: 6px;
}
div.readmore { margin-top: 1ex; }
.subtitle { margin-bottom: 1em; }

.infoblock
{
	font-size: 88%;
	margin-bottom: 1ex;
	background-color: #f8f8f8;
	background-color: rgba(0,0,0,0.02);
	padding: 1em 1.6em;
	box-shadow: 3px 3px 10px rgba(0,0,0,0.1);
	overflow: hidden;
	border-style: solid;
	border-width: 1px;
	border-color: #dfdfdf;
	border-color: rgba(0,0,0,0.1);
}
.infoblock h3
{
	color: #777;
	color: rgba(0,0,0,0.6);
}
article > header > time { display: block; }
h2 + time
{
	margin-top: -4px;
}
time + time
{
	margin-top: -6px;
}

/*===( SEARCH )===*/
.search
{
	margin: 0;
	position: relative;
}
.search.bar
{
	font-size: 8pt;
	line-height: 30px;
}

/* FIELD AND BUTTON */
.search .fieldAndButton { display:inline-block; white-space: nowrap; }
.search.bar *, .search.searchbox .fieldAndButton * { vertical-align: middle; line-height: normal; }
.search .searchField			/* both box and bar */
{
	color: #666;
	font-size: 11px;
	width: 200px;
	padding: 4px 24px 4px 4px;
	height: 13px;
	/* border-radius: 4px; */
	border: 1px solid #bbb;
	box-shadow: inset 3px 3px 11px rgba(0, 0, 0, 0.1);
}
.search.searchbox .fieldAndButton { width: 100%; width: auto !ie; }
.search.searchbox .searchField
{
	/* border-box sizing here: in IE8 and up, we can do this */
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	width: 100%;
	height: 23px;

	/* and for IE7 and under, we can't */
	width: 72% !ie;	/* wat */
	height: 14px !ie;
	zoom: 1;
}
.search.searchbox.plainButton .searchField
{
	width: 70%;
	width: 62% !ie;	/* wat */
	zoom: 1;
}
.search .searchButton
{
	display: inline-block;
    position: relative;
	zoom: 1;
	border: none;
}
.search.plainButton .searchButton
{
	background: #999;
	color: #333;
	border: 1px solid #666;
	height: 15px;
	line-height: 13px;
	padding: 2px;
	text-decoration: none;
}
.search.searchbox.plainButton .searchButton
{
	padding-left: 0;
	padding-right: 0;
	width: 17%;
	width: 17% !ie;	/* wat */
	padding: 2px 4px !ie;	/* wat */
	text-align: center;
}
.search .searchButton.plain:hover
{
	background: #aaa;
}
.search.magnifyingGlassButton .searchButton
{
    left: -6px;
	left: -23px !ie; 
    margin-left: -18px;
	background: transparent;
}
.search A.searchButton img { display: block; }

/* SEARCH CONTROLS */
.search.searchbox .searchOptions { display: block; margin-top: 10px; }
/* in bar, flatten out fields and stuff */
.search.bar .searchOptions
{
	display: inline-block;
	width: auto;				/* for ie7*/
	margin-top: 0;
	margin-bottom: 0;
}
.search.bar .searchOptions *
{
	display: inline;
	width: auto;				/* for ie7*/
	margin-top: 0;
	margin-bottom: 0;
}
.search.bar .searchControls, .search.bar .searchOptions, .search.bar .searchTips { display: inline-block; line-height: normal; }
.search.searchbox .searchControls, .search.searchbox .searchTips { display: block; }
.search.bar .searchTips { margin-left: 1ex; }
.search.searchbox .searchControls { display: block; }
.search.bar .searchOptions fieldset { border: none; }
.search.bar .searchOptions fieldset legend { display: none; }

/* SEARCH HEADER, if visible */
/* not visible by default, because labe-in-field is default now */
.search h3
{
	/* display: inline; */
	display: block;
	font-size: 100%;
	padding: 0;
	background: transparent;
}
.search.bar h3 { display: inline; margin: 0 1ex 0 0; }
.search.slif h3 { display: none; }

/*===( RSS )===*/
.RSSLinkAboveSectionIntro, .RSSLinkHACenter
{
	display: block;
	float: right;
	margin-left: 1em;
	margin-bottom: 1em;
}
.RSSSUB time { margin-bottom: 0; }
.RSSSUB .rssSummary { font-size: 94%; }
.promotion.RSSSUB h4
{
	font-size: 120%;
	margin-bottom: 1em;
}

/*===( PROMOS )===*/
.headlineDisplay
{
	margin-bottom: 0.6em;
}
.narrow.column .body {}

/*===( PRINTVIEW )===*/

.printView
{
	padding: 1em;
	background-color: transparent;
	text-align: center;
}
.printView.float
{
	float: right;
	margin-left: 1em;
	margin-bottom: 1em;
}
#printview-topleft
{
	text-align: left;
	margin-bottom: 0em;
}

/*===( LAST EDITED )===*/
.lastEdited { margin-bottom: 1em; }

/*===( IMAGE GALLERY )===*/
.galleryBox
{
	overflow: hidden;
}
.galleryBox .photoFrame
{
	position: relative;
	height: 400px;
	overflow: hidden;
	background: #444;
}
td.narrow.column .galleryBox .photoFrame
{
	height: 180px;
}
.mobile .galleryBox .photoFrame
{
	height: 270px;
}

/* main image */
.galleryBox img.bigImage
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;

	box-shadow: 0 0 10px rgba(0,0,0,0.5);
	-moz-box-shadow: 0 0 10px rgba(0,0,0,0.5);
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.5);

	background: url(../images/spinner_444bg.gif) no-repeat center center;
}
.galleryBox img.bigImage.fitHeight
{
	width: auto;
	height: 100%;
	margin: 0 auto;
}

/* overlays */
.galleryBox .photoFrame .text
{
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	padding: 4px 10px;
	color: white;
	background-color: #000; 	/* for those with no rgba */
	background: rgba(0,0,0,0.6);
	border-radius: 0 7px 0 0;
	-moz-border-radius: 0 7px 0 0;
	-webkit-border-radius: 0 7px 0 0;
	max-width: 100%;
}
.no-rgba .galleryBox .photoFrame .text
{
	background: #000;
}
.galleryBox .photoFrame .text .title { font-weight: bold; }
.galleryBox button
{
	display: block;
	z-index: 3;

	position: absolute;
	border: none;
	cursor: pointer;
}
.mobile .galleryBox .photoFrame button.nav { opacity: 1; }
.galleryBox .photoFrame button.nav
{
	opacity: 0;
	color: white;
	background-color: #000;	/* for those with no rgba */
	background-color: rgba(0,0,0,0.3);

	top: 35%;
	bottom: 35%;
	width: 60px;
	font: bold 18pt Arial, sans-serif;
	outline: none;
	visibility: hidden;

	-moz-transition: opacity 0.3s ease-out;
	-webkit-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	-o-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;

}
.galleryBox .photoFrame:hover button.nav
{
	opacity: 1;
	visibility: visible;
	-moz-transition: opacity 0.3s ease-out;
	-webkit-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	-o-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
}

/* for ie < 9 */
.no-rgba .galleryBox .photoFrame button.nav
{
	filter: alpha(opacity=30);
}
.opacity .galleryBox .photoFrame button.nav
{
	visibility: visible;
}

.galleryBox .photoFrame button.left
{
	left: 0;
	border-radius: 0 20px 20px 0;
	-moz-border-radius: 0 20px 20px 0;
	-webkit-border-radius: 0 20px 20px 0;
}
.galleryBox .photoFrame button.right
{
	right: 0;
	border-radius: 20px 0 0 20px;
	-moz-border-radius: 20px 0 0 20px;
	-webkit-border-radius: 20px 0 0 20px;
}

/* thumbnails */
.galleryBox div.thumbnails
{
	display: block;
	position: relative;
	overflow: hidden;
	background: #777;
	box-shadow: inset 10px 10px 10px rgba(0,0,0,0.3);
	-moz-box-shadow: inset 10px 10px 10px rgba(0,0,0,0.3);
	-webkit-box-shadow: inset 10px 10px 10px rgba(0,0,0,0.3);
	z-index: 3;
}
.galleryBox div.thumbnails ul.page
{
	display: none;
	margin: 0;
	padding: 10px 10px 10px 10px;
	overflow: hidden;
}
.galleryBox div.thumbnails ul.page.current { display: block; }
.galleryBox div.thumbnails li
{
	position: relative;
	/* display: inline-block; */
	display: block;
	float: left;
	margin: 0 1px 1px 0;
	padding: 0;
	/* height: 60px; */
	cursor: pointer;
	opacity: 0.7;
	/* transition: all 0.3s ease-out; */
	-moz-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	-webkit-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	-ms-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	-o-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
}
.galleryBox div.thumbnails li:hover, .galleryBox div.thumbnails li.selected
{
	opacity: 1;
	box-shadow: 5px 5px 10px rgba(0,0,0,0.3);
	-moz-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	-webkit-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	-ms-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	-o-transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
	transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
}
.galleryBox div.thumbnails li.selected
{
	border: 3px solid black;
	margin: -3px -2px -2px -3px;
	z-index: 2;
}
.galleryBox div.thumbnails img
{
	display: block;
	height: 60px;
	width: auto;				/* ie needs this to scale in proportion */
}
.narrow.column .galleryBox div.thumbnails img
{
	height: 25px;
}
.narrow.column .galleryBox div.thumbnails ul.page
{
	padding: 5px 5px 5px 5px;
}

/* thumbnail buttons */
.galleryBox .thumbnails .messages
{
	text-align: left;
	padding: 0px 10px 15px 15px;
	overflow: hidden;
}
.galleryBox .thumbnails a { color: white; }
.galleryBox .thumbnails span.thumbpages { float: right; }
.galleryBox .state.slideshowPlaying { display: none; }
.galleryBox.slideshowPlaying .state.slideshowPlaying { display: inline; }
.galleryBox.slideshowPlaying .state.slideshowNotPlaying { display: none; }


/*===( UTILITY )===*/
.blk { display: block; }
div.clr
{
	clear: both;
	font-size: 0px;
	height: 0px;
	padding-bottom: 0.1px;
}

a#skipLink { position: absolute; top: -9999px; left: -9999px; }
a#skipLinkTarget{ display: none; }

.cssAdjuster
{
	margin: 1em 0;
}
.cssAdjuster input
{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%
}

/*===( MOBILE STUFF )===*/
a.mobileDesignButton
{
	/* this has to be written out but display: none by default, due to
	caching reasons. If it's necessary, we need to show it with JavaScript
	at client-side run time. */
	display: none;
	text-align: center;
	padding: 1em;
	margin-top: 5px;

	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;

	color: white !important;
	text-decoration: none;
	font-weight: bold;

	background: rgb(80,143,114); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(80,143,114,1) 0%, rgba(45,87,67,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(80,143,114,1)), color-stop(100%,rgba(45,87,67,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(80,143,114,1) 0%,rgba(45,87,67,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(80,143,114,1) 0%,rgba(45,87,67,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(80,143,114,1) 0%,rgba(45,87,67,1) 100%); /* IE10+ */
	background: linear-gradient(top,  rgba(80,143,114,1) 0%,rgba(45,87,67,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#508f72', endColorstr='#2d5743',GradientType=0 ); /* IE6-9 */
}

/*===( SOCIAL MEDIA TOOLS )===*/
.socialTools { line-height: 1px; }

/* each link */
.socialTools a
{
	display: inline-block;
	line-height: 1;
	text-decoration: none;
	vertical-align: middle;

  -webkit-transition: all 0.3s ease-out;  /* Safari 3.2+, Chrome */
     -moz-transition: all 0.3s ease-out;  /* Firefox 4-15 */
       -o-transition: all 0.3s ease-out;  /* Opera 10.5–12.00 */
          transition: all 0.3s ease-out;  /* Firefox 16+, Opera 12.50+ */
}
.socialTools a:hover { opacity: 1; box-shadow: -3px 3px 6px rgba(0,0,0,0.2); }

/* old IE opacity */
.ie7 .socialTools a { filter: alpha(opacity=70); }
.ie8 .socialTools a { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; }

.ie7 .socialTools a:hover { filter: alpha(opacity=100); }
.ie8 .socialTools a:hover { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

/* the image inside the link */
.socialTools a img { display: block; border: none; }


/*===( THE ESSENTIAL FIXES )===*/

/* Sidebar fix */
.sidebar P, .leftSidebar P { margin-top: 0px; }

/* SuperForms fixes */
/* note: these classes should be gone from superforms_lt,
but until it's ready, we need these */
.SF_left .contentbox_left
{
	border: none;
	padding: 0px;
}
.SF_right .contentbox_right
{
	border: none;
	padding: 0px;
}

/* Preview Stuff */
#designPreviewHeader, #previewHeader
{
	display: none;
	color: white;
	background: #ddf;
	cursor: pointer;
	font: normal 8pt/1.3 Verdana, sans-serif;
	text-align: left;
	
	padding: 11px 14px;
	position: fixed;
	top: 0;
	left: 0;
	width: 600px;
	border: 1px solid #345A9F;
	border-top: none;
	border-left: none;
	z-index: 10000;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-bottomright: 10px;
	border-bottom-right-radius: 10px;

	-moz-box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
	
	/* stolen from the govoffice banner */
	background: #536482 url(../images/bannerBG_AV.png) repeat-x top left;
    /* gradient */
    background: -webkit-gradient(linear, left top, left bottom, from(#536482), to(#819cc9)); /* for webkit browsers */
    background: -moz-linear-gradient(top,  #536482,  #819cc9); /* for firefox 3.6+ */
}
.ie #designPreviewHeader, .ie #previewHeader
{
	box-shadow: none;
}
#designPreviewHeader h3, #previewHeader h3
{
	font: bold 17px/19px Georgia,serif;
	color: white;
	text-align: left;
}
#designPreviewHeader .hide
{
	font-size: 120%;
	font-weight: bold;
}
#designPreviewHeader.collapsed .hide
{
    font-size: 11px;
    position: absolute;
    right: 15px;
    top: 14px;
	opacity: 0.6;
}
#designPreviewHeader a { color: #fff; opacity: 0.6; }
#designPreviewHeader a:hover { opacity: 1.0; }

