body {
	background-color: white;
	text-align: left;
}

p {
	margin-bottom: 5px;
}

.widthContainer {
	margin-left: auto;
	margin-right: auto;
}

div.mobileOnly {
	display: none;
}

.noscroll {
	overflow: hidden;
}

.topbar.scroll {
	overflow-y: scroll;
}

.desktoponly {
	display: none;
}

h1, h2, h3, h4, h5 {
	padding: 0;
	font-weight: normal;
	margin: 0;
}

h1 {
	font-size: 200%;
}

h2 {
	font-size: 155%;
}

h3 {
	font-size: 133%;
}

.box.promotion.B_EV h3,
.box.promotion article.summaryDisplay h3,
.box.promotion div.headlineDisplay h3 {
	font-size: 14pt;
}

h4, h5 {
	font-size: 100%;
}

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 {
	font-size: 85%;
}

.italic {
	font-style: italic;
}

ul {
	padding-left: 1.6em;
	margin: 0;
}

	ul li, ol li {
		list-style-position: outside;
		margin-bottom: 1ex;
		margin-top: 1ex;
	}

.tar {
	text-align: right;
}

.grecaptcha-badge {
	bottom: 80px !important;
}

table tr td, table tr th {
	padding: 5px;
}

.verticalLogo, .verticalLogo_text, .footernav {
	text-align: center;
	font-size: 9pt;
	margin: 1em 0;
}

	.verticalLogo img {
		max-width: 150px;
	}

.centerColumn {
	padding: 6px 10px 10px 10px;
}

.box, .infoblock.box {
	margin-bottom: 10px;
}

.box {
	clear: both;
}

.attachments {
	clear: both;
	display: block;
	background-color: transparent;
	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: 5px 0;
	padding: 10px 0;
	clear: both;
}

	.item.summaryDisplay, article.summaryDisplay:first-child {
		margin-top: 0;
	}

		.item.summaryDisplay h2, article.summaryDisplay h2 {
			text-align: left;
			padding: 5px 0;
		}

.leftColumn .item.summaryDisplay:first-child,
.leftColumn article.summaryDisplay:first-child,
.rightColumn .item.summaryDisplay:first-child,
.rightColumn article.summaryDisplay:first-child {
	margin-top: 0;
}

/* SEARCH */
.searchtabstrip {
	padding: 5px;
	margin-bottom: 12px;
	white-space: nowrap;
}

.searchpages, .searchdocs {
	margin-bottom: 10px;
}

	.searchpages h3, .searchdocs h3 {
		margin: 10px 5px 3px 0;
	}

.searchtab {
	border: 1px solid #333;
	padding: 5px 10px;
	margin-right: 8px;
	border-radius: 3px;
	cursor: pointer;
	opacity: 0.8;
	font-size: 14pt;
	overflow: hidden;
	white-space: nowrap;
}

	.searchtab.active {
		box-shadow: 3px 3px 3px #555;
		opacity: 1.0;
	}

.searchdocs {
	display: none;
}

.searchResult i {
	margin-right: 10px;
}

a.item, .searchResult a {
	font-weight: normal;
}

.searchResult span.note {
	opacity: 0.5;
	margin-left: 0.5ex;
}

article {
	margin-bottom: 1em;
}

.itemHeadline {
	margin-bottom: 1em;
}

.item .body {
	margin-bottom: 1em;
}

.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;
}

section, article {
	clear: both;
}

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;
}
	/* 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;
}

/* 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;
		vertical-align: middle;
	}

nav.horizontal > ul > li:last-child {
	border-right: none;
}

/* HORIZONTAL-BLOCK STYLE */
nav.horizontal.block li {
	display: block;
}
/* home and top level sections */
nav.horizontal.block > ul > li {
	display: inline-block;
}

	nav.horizontal.block > ul > li > a {
	}
/* child sections */
nav.horizontal.block li li > a {
	white-space: normal;
}
/* the full-width version! */
nav.horizontal.block.fullWidth > ul {
	display: table;
	position: relative;
	width: 100%;
}

	nav.horizontal.block.fullWidth > ul li {
		text-align: left;
	}

	nav.horizontal.block.fullWidth > ul > li {
		position: relative;
		display: table-cell;
		text-align: center;
	}

nav.horizontal.block > ul:after /* no float clearing needed */ {
	content: "";
	display: none;
}

/* MENU NAV */
nav.menu {
	zoom: 1;
	position: relative;
}

.raised {
	z-index: 1010;
}

/* top-level sections */
nav.menu li {
	position: relative;
	zoom: 1;
}

nav.menu li {
}

	nav.menu li.open {
	}

nav.menu ul.open {
	z-index: 1001;
}

nav.menu ul.closing {
	z-index: 1000;
}

nav.menu > ul li a .triangle {
	display: inline-block;
	vertical-align: middle;
	font: normal 10pt Arial, sans-serif;
	white-space: nowrap; /* line-height: 100%; */
	margin: 0 3px 0 7px;
	float: right;
	zoom: 1;
	cursor: pointer;
	opacity: 1.0;
	padding: 1px 3px;
	background: transparent;
	border: none;
}

nav.vertical.block.menu > ul .triangle {
	position: relative;
	top: 1px;
	color: inherit;
}

nav.horizontal.block.menu > ul > li > a > .triangle {
	float: none;
	margin-top: 0;
}

/* 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; } */

.notClickable {
	cursor: default !important;
}

table.navHorizontal {
	width: 100%;
}

/* NOTE: slab CSS is entirely in the design css */

/*===( IMAGE DISPLAY )===*/
.image > a {
	display: block;
}

.summaryDisplay .image {
	max-width: 100%;
}

	.summaryDisplay .image img {
		/* width: 100%; */
		max-width: 100%;
	}

.image.left, article.summaryDisplay .image.cyclerSlide {
	float: left;
	margin: 0 25px 15px 0;
}

.image.right {
	float: right;
	margin: 0 0 15px 25px;
}

.container.content div.sidebarImageBox img {
	width: auto;
	max-width: 100%;
}

/* .image.left, .image.right { width: 33%; } */
.image.left, .image.right {
	max-width: 100%;
}
/* .image.left > img, .image.right > img { width: 100%; } */

.image .imageBoxCaption {
	text-align: left;
}

.item.summaryDisplay .image.left,
.item.summaryDisplay .image.right,
article.summaryDisplay .image.left,
article.summaryDisplay .image.cyclerSlide,
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;
}


/*===( cycler slide) ===*/
.cycler {
	float: left;
	position: relative;
	margin-bottom: 15px;
	text-align: left;
	display: inline-block;
	margin: 0 15px 15px 0;
	width: 40%;
	max-width: 500px;
}

	.cycler .cyclerSlide {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		text-align: center;
		display: none;
	}

		.cycler .cyclerSlide:first-child {
			display: inline-block;
		}

		.cycler .cyclerSlide a {
			display: block;
			margin: 0 auto; /* width: 100% !important; */
		}

		.cycler .cyclerSlide img,
		.cycler .cyclerSlide .small.imageBoxCaption {
			display: block;
			margin: 0 auto;
		}

		.cycler .cyclerSlide .small.imageBoxCaption {
			text-align: center;
		}

		.cycler .cyclerSlide.active {
			display: inline-block;
			margin: 0 auto;
		}

		.cycler .cyclerSlide img {
			max-height: 100%;
			max-width: 100%;
		}



.promoIcon {
	float: left;
	margin: 0em 1em 1em 0em;
}

.sidebarImageBox {
	margin-bottom: 0.25em;
	text-align: center;
}

.imageBoxCaption {
}

/*===( DATATYPE FORMATTING )===*/
/* general */
/* new promo layouts (flexin') groups */
.card-container {
	flex-direction: column;
	display: flex;
	justify-content: stretch;
	align-items: flex-start;
	flex-wrap: wrap;
}

	.card-container .card-item {
		padding: 25px 25px 55px 25px;
		justify-self: stretch;
		align-self: stretch;
		position: relative;
	}

		.card-container .card-item .readmore.small {
			position: absolute;
			bottom: 5px;
			right: 25px;
		}

		.card-container .card-item .story,
		.promotion .story {
			display: flex;
			justify-content: flex-start;
			align-items: flex-start;
			padding-bottom: 25px;
		}

			.card-container .card-item .story i,
			.promotion .story i {
				font-size: 3rem;
				color: #888;
				padding: 10px 15px 10px 0;
			}

			.card-container .card-item .story .image.left,
			.promotion .story .image.left {
				margin: 0;
				padding: 0 15px 15px 0;
				float: none;
			}

				.card-container .card-item .story .image.left img,
				.promotion .story .image.left img {
					width: 150px !important;
				}

/* news and events date labels*/
.newsdatetime label,
.eventsdatetime label {
	display: inline-block;
	padding-right: 5px;
	font-weight: bold;
}

.newsdatetime time,
.eventsdatetime time {
	display: inline-block;
}


/* events */
.description, .location, .directions, .comment, .contactInfo {
	margin-bottom: 1em;
}

.quickList .itemLink, .item.summaryDisplayTitle {
	font-weight: bold;
}

/* Jobs */
.B_JOB .field {
	margin-bottom: 10px;
}

	.B_JOB .field.inline {
		margin-bottom: 3px;
		display: block;
	}

div.jobData {
	float: left;
}

.B_JOB .field.inline h4,
.B_JOB .field.inline .value {
	white-space: normal;
	display: inline-block;
}

.B_JOB .field h4, .B_JOB a.link {
	font-weight: bold;
}




/* Meetings */
.B_MEET .meetings.search {
	display: block;
	text-align: center;
	padding: 10px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
	max-width: 100%;
}
/* new meeting subsection list */
.B_MEET .subsections {
	padding: 10px 0;
}

	.B_MEET .subsections h2 {
		display: none;
	}

	.B_MEET .subsections ul {
		padding-left: 0;
	}

	.B_MEET .subsections li a {
		font-size: 100%;
		line-height: normal;
	}

	.B_MEET .subsections li {
		display: block;
		background: #eee;
		border-radius: 5px;
		margin-right: 3px;
		padding: 6px 15px;
		border: 1px solid #999;
	}

.B_MEET .meetings.search .searchHeader {
	display: inline;
	font-size: 12pt;
	margin-right: 15px;
}

.B_MEET .meetings.search .fieldAndButton {
	display: block;
	border: none;
}

	.B_MEET .meetings.search .fieldAndButton .searchField {
		color: #222;
		width: calc(100% - 80px);
		border: 1px solid #ccc;
		padding: 3px 5px 2px 5px;
	}

.B_MEET .meetings.search .button {
	font-size: 10pt;
	padding: 1px 8px;
}

.B_MEET i.fa {
	margin-right: 10px;
}

.B_MEET .attachments {
	clear: both;
}

	.B_MEET .attachments .attachment {
		display: block;
		padding: 10px 20px 0 10px;
	}

.B_MEET .boxdate {
	clear: both;
	margin-bottom: 10px;
	position: relative;
	float: left;
	text-align: center;
	margin-right: 25px;
	padding: 5px 20px;
	border-radius: 5px;
	background-color: #fff;
	color: #333;
	border: 2px solid #333;
	line-height: 1.2;
}

	.B_MEET .boxdate.done {
		background-color: #333;
		color: #fff;
		border: 2px solid #333;
	}

	.B_MEET .boxdate .month {
		font-size: 10pt;
	}

	.B_MEET .boxdate .day {
		font-size: 16pt;
	}

	.B_MEET .boxdate .year {
		font-size: 10pt;
	}

	.B_MEET .boxdate.small {
		padding: 5px 20px;
		line-height: normal;
	}

		.B_MEET .boxdate.small .month {
			font-size: 10pt;
		}

		.B_MEET .boxdate.small .day {
			font-size: 16pt;
		}

		.B_MEET .boxdate.small .year {
			font-size: 10pt;
		}

.B_MEET .body article.summaryDisplay time {
	font-size: 90%;
}

.B_MEET i.fa {
	font-size: 18pt;
}


/* 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;
}

	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 */
label, div.label {
	display: block;
}

	label.radio, label.checkbox {
		display: inline;
	}

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 */
.leftColumn .formLabel, .leftColumn .formField,
.rightColumn .formLabel, .rightColumn .formField {
	padding: 0px;
	text-align: left;
	font-weight: normal;
}

.leftColumn .formField, .rightColumn .formField {
	display: inline;
}

.mainTable td.column * {
	max-width: 100% !important;
}

.mainTable td.column .galleryBox * {
	max-width: none !important;
}

/* SuperForms */
:not(output):-moz-ui-invalid {
	box-shadow: none;
}

.spinner {
	visibility: hidden;
	vertical-align: bottom;
	display: inline-block;
	border: 8px solid #f3f3f3;
	border-top: 8px solid #273d6d;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	animation: spin 2s linear infinite;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

input[type='button'] {
	cursor: pointer;
}

.container form {
	margin: 0 auto;
	max-width: 1280px;
}

html textarea {
	width: 100%;
	padding: 10px;
}

input[type='radio'], input[type='checkbox'] {
	margin-right: 5px;
}

body select > option {
	padding: 3px 8px 5px 8px;
}

body select {
	padding: 3px 8px;
}

div.sffield select {
	padding: 3px 8px;
	margin-bottom: 5px;
}

div.sffield.GCSZ input {
	margin-bottom: 5px;
}

abbr[title], acronym[title] {
	border-bottom: none;
	text-decoration: none;
}

form abbr {
	display: inline-block;
	padding: 0 0 0 5px; /* color: #a00;  */
	border: none;
	text-decoration: none; /* font-size: 20pt; */
	vertical-align: top;
}

form input[type='button'],
form input[type='submit'] {
	padding: 5px 10px;
	border-radius: 10px;
	font-size: 120%;
	box-shadow: none;
	border: none;
	border: 1px solid #999;
	background: #f0f4f6;
	margin-right: 8px;
}

.uploadfield input.sfUpload {
	padding: 5px 10px;
}
/* .sffield.checkboxes, .sffield.radios { padding: 5px; }
select:invalid { color: #555; border: 1px solid #aa0000; }
input:invalid { border-bottom: 1px solid #aa0000; } */
/* form textarea { border: 1px solid #999; } */

/* hide the labels ? */
/* instead of off-screen positioning them, what if we hide them, and then show them (fade in) when the user clicks or tabs into the field. */
form.hidelabels div.sffield.nodefault.GNAM label,
form.hidelabels div.sffield.nodefault.textbox label,
form.hidelabels div.sffield.nodefault.GCSZ label,
form.hidelabels div.sffield.nodefault.textarea label {
	/*	position: absolute;
	top: -10000px;
	left: -10000px;
*/
	/* visibility: hidden; */
	height: 0;
	opacity: 0;
	transition: opacity .7s, height .7s;
}

/* new forms style */
div.sffield input,
div.sffield select,
div.sffield.radios,
div.sffield.checkboxes,
div.sffield textarea {
	border: none;
	border-radius: 10px;
	background: #f0f4f6;
	padding: 10px;
	max-width: 100%;
	font-family: inherit;
	font-size: inherit;
}

	div.sffield select:invalid,
	div.sffield input:invalid,
	div.sffield textarea:invalid,
	div.sffield.radios.invalid,
	div.sffield.checkboxes.invalid { /* border: 1px solid #aa0000; */
	}

/* .sffield label { position: absolute; top: -10000px; left: -10000px; } */

input.sfUploaded {
	border: none;
	background: none;
	display: none;
}

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 .response label {
	display: inline;
}

.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: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.5) 100%);
	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 {
}

.B_DIR .note {
	font-size: inherit;
	margin-bottom: inherit;
	opacity: inherit;
}

.B_DIR h1 {
	text-align: left;
}

.B_DIR .field.inline {
	display: block;
}

.B_DIR .field h4 {
	/* width: 14ex; */
}

.B_DIR .fieldGrid h4 {
	/* width: 14.5ex; */
}


/* name search (javascript filter by title / name on current page) */
.namesearchbox label {
	display: inline-block;
	margin: 2px 15px 0 0;
	font-weight: bold;
}

.namesearchbox {
	display: block;
	width: 100%;
}

	.namesearchbox > div {
		line-height: 1.2;
		vertical-align: top;
		display: inline-block;
		padding: 3px 5px 4px 5px;
		border: 1px solid #999;
		white-space: nowrap;
	}

	.namesearchbox i {
		vertical-align: middle;
		cursor: pointer;
		margin-left: 5px;
	}

.namesearch {
	padding: 3px 5px;
	border: none;
	width: 250px;
}

.filtered {
	display: none !important;
}


/* directory business */
section.DIR_BUS > article {
	clear: both;
	vertical-align: top;
}

section.DIR_BUS.summary > article {
	margin-bottom: 30px;
}

section.DIR_BUS h2, section.DIR_BUS h3 {
	text-align: left;
}

.DIR_BUS i, .DIR_PER i {
	display: inline-block;
	padding: 3px 8px 0 0;
}

section.DIR_BUS article.summaryDisplay, section.DIR_BUS.accordion article.summaryDisplay .flexit {
	flex-direction: column;
	display: flex;
	justify-content: space-evenly;
	align-content: stretch;
	border-bottom: 2px solid #ddd;
	padding: 30px 0;
}

section.DIR_BUS.accordion article.summaryDisplay,
section.DIR_PER.accordion article.summaryDisplay {
	display: block;
	border-bottom: none;
	padding: 2px 0;
	margin-bottom: 0;
}

	section.DIR_BUS.accordion article.summaryDisplay .flexit {
		border-bottom: none;
	}

section.DIR_BUS.boxes article.summaryDisplay {
	flex-direction: column;
}

	section.DIR_BUS.boxes article.summaryDisplay div.image img,
	section.DIR_BUS.accordion article.summaryDisplay div.image img,
	section.DIR_PER.boxes article.summaryDisplay div.image img,
	section.DIR_PER.accordion article.summaryDisplay div.image img {
		display: block;
		margin: 0 auto;
	}

section.DIR_BUS.boxes .viewdetails {
	border-top: 2px solid #ddd;
	margin: 0 20px;
	padding: 20px 0;
}

section.DIR_BUS.summary article.summaryDisplay:last-child,
section.DIR_BUS.HA_Full article.summaryDisplay:last-child,
section.DIR_BUS.HA_Full_NOPIC article.summaryDisplay:last-child {
	border-bottom: none;
}

section.DIR_BUS article.summaryDisplay > div {
	flex: 1 1 0;
}

section.DIR_BUS article.summaryDisplay div.image,
section.DIR_PER article.summaryDisplay div.image {
	float: none;
}

section.DIR_BUS article.summaryDisplay div.address {
	display: inline-block;
}

section.DIR_BUS article.summaryDisplay div.titleaddressdescription {
	flex: 2 1 0;
	padding: 20px;
}

.DIR_BUS div.address {
	font-weight: bold;
}

section.DIR_BUS article.summaryDisplay div.details {
	padding: 20px;
}

section.DIR_BUS article.summaryDisplay.right div.details {
	border-left: none;
	border-right: 2px solid #ddd;
}

section article.summaryDisplay div.details h3 {
	font-weight: bold;
	margin-bottom: 15px;
}

section.DIR_BUS article.summaryDisplay div.showonmap {
	cursor: pointer;
}

section.DIR_BUS .businessdescription {
	padding: 15px 0;
}

section.DIR_BUS.boxes,
section.DIR_PER.boxes {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	align-content: stretch;
	align-items: stretch;
}

	section.DIR_BUS.boxes > article,
	section.DIR_PER.boxes > article {
		display: flex;
		flex-direction: column;
		margin: 10px 0;
		width: 100%;
		padding: 10px;
		border: 1px solid #ccc;
	}

		section.DIR_BUS.boxes > article h2 {
			text-align: center;
		}

	section.DIR_BUS.boxes article.summaryDisplay div.image {
		margin: 0 auto;
		float: none;
		text-align: center;
	}

#dirmap {
	aspect-ratio: 2 / 1;
	width: 100%;
	margin: 20px auto;
}

.DIR_BUS .field.inline, .DIR_PER .field.inline {
	padding: 0;
}

article.DIR_BUS div.fieldBlock {
	border-top: 2px solid #ddd;
	padding: 20px 0;
}

/* directory personnel */
section.DIR_PER article.summaryDisplay {
	clear: both;
	vertical-align: top;
	flex-direction: column;
	display: flex;
	justify-content: space-evenly;
	align-content: stretch;
	border-bottom: 2px solid #ddd;
	padding: 30px 0;
}

section.DIR_PER.accordion article.summaryDisplay {
	padding: 2px 0;
	border-bottom: none;
}

	section.DIR_PER.accordion article.summaryDisplay .flexit {
		vertical-align: top;
		flex-direction: column;
		display: flex;
		justify-content: space-evenly;
		align-content: stretch;
	}

section.DIR_PER article:last-child {
	border-bottom: none;
}

section.DIR_BUS.accordion article.summaryDisplay .flexit,
section.DIR_BUS.accordion article.summaryDisplay {
	padding: 1px;
	border-bottom: none !important;
}

/* section.DIR_PER article.summaryDisplay > div { flex: 1 1 0; } */
section.DIR_PER article.summaryDisplay div.image {
	float: none;
}

section.DIR_PER article.summaryDisplay div.titlepositionabout,
section.DIR_PER.accordion article.summaryDisplay .flexit .details {
	flex: 3 1 0;
	padding: 10px 20px;
}

section.DIR_PER div.about {
	padding: 20px 0;
}

section.DIR_PER.summary > article {
	margin-bottom: 30px;
}

section.DIR_PER h2 {
	text-align: left;
}

section.DIR_PER.boxes > article h2 {
	text-align: center;
}

section.DIR_PER.boxes article.summaryDisplay div.image {
	margin: 0 auto;
	float: none;
	text-align: center;
}


div.image.circle img {
	clip-path: circle(50% at 50% 50%);
}

div.image.square img {
	clip-path: inset(0 0 0 0);
}

div.image.rightpoint img {
	clip-path: polygon(0% 0%, 75% 0%, 100% 50%, 75% 100%, 0% 100%);
}

div.image.leftpoint img {
	clip-path: polygon(25% 0%, 100% 0%, 100% 100%, 25% 100%, 0% 50%);
}

div.image.triangle img {
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

div.image.itriangle img {
	clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}

div.image.octagon img {
	clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}

div.image.bevel img {
	clip-path: polygon(20% 0%, 80% 0%, 100% 20%, 100% 80%, 80% 100%, 20% 100%, 0% 80%, 0% 20%);
}


/* quicklist */
div.box.B_LIST {
	padding: 0 15px 15px 15px;
}

.B_LIST .index.horizontal {
	display: block;
	margin: 0;
	padding: 0;
}

	.B_LIST .index.horizontal li {
		display: inline-block;
		margin: 0.3ex 0;
		padding: 0 1ex 0 0;
		border-right: 1px solid #aaa;
		border-color: rgba(0,0,0,0.3);
	}

		.B_LIST .index.horizontal li a { /* white-space: nowrap; */
			display: inline;
			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%;
}

/* accordion */
.accordion button.accordionall {
	float: right;
	padding: 5px 20px;
	font-size: 12pt;
}

.accordion article.summaryDisplay h2 {
	background: #ddd;
	padding: 5px 10px;
	line-height: 1.2;
	vertical-align: middle;
	clear: both;
	cursor: pointer;
}

	.accordion article.summaryDisplay h2:hover {
		background: #333;
		color: #fff;
	}

	.accordion article.summaryDisplay h2 button {
		float: right;
		padding: 0 0 0 10px;
		line-height: 1.2;
		vertical-align: middle;
		border: none;
		background: transparent;
		font-size: inherit;
		cursor: pointer;
	}

	.accordion article.summaryDisplay h2:hover button {
		color: white;
	}

.accordion article.summaryDisplay .description {
	clear: both;
	display: none;
}

/* milestones */
div.MILESTONES {
	padding-left: 30px;
}

	div.MILESTONES div.body {
		position: relative;
		padding-left: 30px;
	}

		div.MILESTONES div.body .leftborder {
			position: absolute;
			top: 20px;
			left: 0;
			bottom: 10px;
			border-left: 4px solid #ccc;
		}

		div.MILESTONES div.body .circle.end {
			position: absolute;
			top: auto;
			right: auto;
			bottom: 0;
			left: -13px;
		}

		div.MILESTONES div.body article {
			position: relative;
		}

		div.MILESTONES div.body .circle {
			position: absolute;
			top: 10px;
			left: -43px;
			right: auto;
			bottom: auto;
			height: 30px;
			width: 30px;
			border-radius: 50%;
			background: #fff;
			border: 4px solid #ccc;
		}

.returnLink {
	font-size: 80%;
	opacity: 0.7;
	margin-top: 1ex;
}

/* product list */
.cart_table, .orderItems {
	width: 100%;
	background: white;
	color: #222;
	border-collapse: collapse;
	border-spacing: 0;
}

	.cart_table td.cart_Header {
		font-weight: bold;
		padding: 1px 3px 10px 3px;
		text-align: left;
	}

		.cart_table td.cart_Header.cart_title {
			text-align: right;
		}


/* item name */
td.cart_cell {
	padding: 3px;
}

.cart_table select {
	padding: 2px;
}

	.cart_table select option {
		padding: 0 2px;
	}

.cart_item_row:nth-child(even) {
	background: #eee;
}
/* line total for each item */
.cart_price, .cart_title, .cart_value,
td.right, th.right {
	text-align: right;
}

td.left, th.left {
	text-align: left;
}

td.center, th.center {
	text-align: center;
}

.feeMessage {
	border: 1px solid #999;
	padding: 10px;
	margin: 0 0 20px 0;
	border-radius: 5px;
}
/* row cost for each line item */
.ACE_ShipToText {
	text-align: left;
	padding: 3px;
}

.shoppingCart, .orderConfirmation {
	max-width: 1280px;
	margin: 0 auto;
	padding: 20px;
	font-size: 9pt;
}

.proceedCheckout {
	text-align: right;
	margin-top: 30px;
}

table.orderItems {
	margin: 30px 0;
}

	table.orderItems tr:nth-child(even) {
		background: #eee;
	}

.tar.totals span {
	display: inline-block;
	text-align: right;
	min-width: 100px;
}


/* generic field display */
.fieldBlock { /* clear: both; */
	overflow: hidden;
	margin: 1em 0;
}

.field.inline {
	display: inline-block;
	overflow: hidden;
	line-height: inherit;
	white-space: normal;
	padding: 3px 0;
}

	/* style common to both labels and values */
	.field.inline > * { /* display: inline-block; */
		vertical-align: top;
		position: relative;
		white-space: normal;
		overflow: hidden;
		margin: 0;
	}

/* labels */
.fieldGrid {
	display: table;
}

	.fieldGrid .field {
		display: table-row;
	}

		.fieldGrid .field.inline h4 {
			display: table-cell;
		}

		.fieldGrid .field.inline .value {
			display: table-cell;
		}

.field.inline h4, .field.inline label, .field.inline .label {
	font-weight: bold;
	padding-right: 2ex;
}
/* values */
.field.inline .value {
}

/* 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 */
.field.address .department, .field.address .address1, .field.address .address2 {
	display: block;
}


/* other common parts */
time, .embargo, .date, .note, .readmore {
	display: block; /* font-size: 88%; */ /* opacity: 0.8; */
}

body time, .embargo, .date {
	padding: 3px 0;
	margin-bottom: 5px;
}

div.readmore {
	margin-bottom: 10px;
}

.subtitle {
	margin-bottom: 1em;
}

div.readmore {
	clear: both;
}

.infoblock { /* font-size: 88%; */
	margin-bottom: 1ex;
	background-color: #f8f8f8;
	background-color: rgba(0,0,0,0.02);
	padding: 10px 15px;
	overflow: hidden;
	border: 1px solid 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; } */
body time + time {
	margin-top: -8px;
}

/*===( SEARCH )===*/
.searchSocial {
	position: absolute;
	bottom: 8px;
	right: 8px;
	zoom: 1;
}

.searchPositioner {
	float: right;
	margin-right: 5px;
	font-size: 0;
}

.socialPositioner {
	float: right;
}

/* search bar */
.search.bar { /* width: 200px; */
	display: inline-block;
	font-size: 0;
}

	.search.bar h3 {
	}

	.search.bar .fieldAndButton,
	.meetings.search .fieldAndButton
	.search.bar h3 {
		background: white;
		color: black;
	}

	.search.bar .fieldAndButton {
		display: inline-block;
		border: 1px solid #999;
		background: white;
		padding: 1px 1px 0 1px;
		overflow: hidden;
		vertical-align: bottom;
	}

		.search.bar .fieldAndButton .searchField,
		.meetings.search .fieldAndButton .searchField {
			color: #555;
			border: none;
			background: transparent;
			padding: 3px 5px 0 5px;
			line-height: 20px;
			font: normal 12px arial, verdana, sans-serif;
			display: inline-block;
			width: 155px;
		}

			.search.bar .fieldAndButton .searchField:focus {
			}

		.search.bar .fieldAndButton .searchMag {
			font-size: 20px;
			color: #555;
			line-height: 20px;
			height: 20px;
			width: 20px;
			float: right;
			cursor: pointer;
			opacity: 0.9;
		}

body.mobile .search.bar .fieldAndButton .searchMag {
	height: 35px;
	width: 35px;
}

/* social tools */
.socialTools {
	float: right;
	line-height: 1px;
}

	.socialTools a {
		display: inline-block;
		line-height: 1;
		text-decoration: none;
		vertical-align: middle;
		transition: all 0.3s ease-out;
	}

		.socialTools a:hover, .socialTools a:focus {
			box-shadow: -3px 3px 6px rgba(0,0,0,0.3);
		}

		.socialTools a img {
			display: block;
			border: none;
		}

.searchSocial .newSocialTools {
	float: right;
}

.newSocialTools {
	--iconsize: 24px;
}

	.newSocialTools a {
		padding: 0;
		text-decoration: none;
		display: inline-block;
		margin-right: 2px;
		height: var(--iconsize);
		width: var(--iconsize);
	}

		.newSocialTools a:hover
		.newSocialTools a:focus {
			outline: 1px dashed #333;
		}

	.newSocialTools img {
		height: var(--iconsize);
		width: var(--iconsize);
	}


.navDrop nav.block.mobilemenu li .newSocialTools {
	padding: 12px 10px 8px 10px;
}

	.navDrop nav.block.mobilemenu li .newSocialTools a {
		display: inline-block;
		padding: 0;
		margin: 0 5px 0 0;
	}


.fixedSocialTools {
	float: none;
	opacity: 0.7;
	transition: opacity 0.5s;
	--fixediconsize: 30px;
}

	.fixedSocialTools:hover,
	.fixedSocialTools:focus {
		opacity: 1.0;
	}

	.fixedSocialTools a {
		width: 50px;
		text-align: right;
		display: block;
		padding: 4px;
		margin-bottom: 4px;
		color: white;
		opacity: 1;
		border-radius: 0 10px 10px 0;
		transition: width .5s;
		box-shadow: rgba(0, 0, 0, 0.5) 3px 3px 5px;
	}

		.fixedSocialTools a img {
			display: inline-block;
			width: var(--fixediconsize);
			height: var(--fixediconsize);
			vertical-align: middle;
		}

		.fixedSocialTools a:hover,
		.fixedSocialTools a:focus {
			width: 60px;
		}

		.fixedSocialTools a.cart {
			background: #cc0000;
		}

		.fixedSocialTools a.facebook {
			background: #3b5998;
		}

		.fixedSocialTools a.instagram {
			background: linear-gradient(-20deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
		}

		.fixedSocialTools a.linkedin {
			background: #007bb5;
		}

		.fixedSocialTools a.nextdoor {
			background: #00b246;
		}

		.fixedSocialTools a.twitterx {
			background: #333333;
		}

		.fixedSocialTools a.youtube {
			background: #ff0000;
		}


/*===( 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; */
}


/*===( boxes ) ===*/
.box.B_BOXES,
.box.promotion.HA_Boxes,
.box.promotion.HA_Boxes_Top {
	vertical-align: top;
	text-align: center;
	padding: 30px 0;
}

	.box.B_BOXES .summary {
		text-align: left;
	}

	.box.B_BOXES .responsivebox,
	.box.promotion.HA_Boxes .responsivebox,
	.box.promotion.HA_Boxes_Top .responsivebox {
		display: inline-block;
		border-radius: 5px;
		padding: 15px;
		margin-bottom: 30px;
		width: 100%;
		vertical-align: top;
		text-align: left;
		height: auto;
		text-decoration: none;
	}

	.box.B_BOXES .attachments {
		display: block;
	}

	.box.promotion.HA_Boxes .responsivebox a,
	.box.promotion.HA_Boxes_Top .responsivebox a {
	}

	.box.B_BOXES.image_top .responsivebox div.image,
	.box.promotion.HA_Boxes_Top .responsivebox div.image {
		float: none;
		clear: both;
		text-align: center;
		width: 100% !important;
		margin: 0 0 15px 0;
		display: block;
		max-width: 100%;
		height: auto;
		border: none;
	}
		/* stretch the image to the full box size? */
		.box.promotion.HA_Boxes_Top .responsivebox div.image img {
			width: 100%;
		}

/*===( LAST EDITED )===*/
.lastEdited {
	margin-bottom: 1em;
}

/*===( IMAGE GALLERY )===*/
.galleryBox {
	overflow: hidden;
	margin-top: 30px;
}

	.galleryBox .photoFrame {
		position: relative;
		overflow: hidden;
		background: transparent;
		text-align: center;
	}

.insideLeftContent .galleryBox .photoFrame,
.insideRightContent .galleryBox .photoFrame {
	height: 200px;
}

/* main image */
.galleryBox img.bigImage {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
	background: url(../images/spinner_444bg.gif) no-repeat center center;
}

.container.content div.photoFrame .galleryBox img.bigImage.fitHeight {
	width: auto;
	height: 100%;
	margin: 0 auto;
}

.galleryBox .photoFrame .text {
	text-align: center;
	z-index: 2;
	max-width: 100%;
}

	.galleryBox .photoFrame .text .textbackground {
		display: inline-block;
		padding: 4px 10px;
		color: white;
		background-color: #000;
		background: rgba(0,0,0,0.7);
		border-radius: 7px;
		font-size: 10pt;
	}

	.galleryBox .photoFrame .text .title {
		font-weight: bold;
	}

.galleryBox .controls {
	padding-top: 5px;
}

.galleryBox span.arrowleft,
.galleryBox span.arrowright,
.galleryBox span.arrowpause,
.galleryBox span.arrowplay {
	display: inline-block;
	cursor: pointer;
	font-size: 18px;
	color: #333;
	background: #fff;
	;
	z-index: 5;
	padding: 4px 5px;
	border-radius: 30px;
	height: 30px;
	width: 30px;
	text-align: center;
	line-height: normal;
	vertical-align: middle;
	margin-left: 5px;
	border: 1px solid #555;
}

	.galleryBox span.arrowleft:focus, .galleryBox span.arrowright:focus,
	.galleryBox span.arrowpause:focus, .galleryBox span.arrowplay:focus,
	.galleryBox span.arrowleft:hover, .galleryBox span.arrowright:hover,
	.galleryBox span.arrowpause:hover, .galleryBox span.arrowplay:hover {
		color: #fff;
		background: #333;
		outline: none;
		border: 1px solid #ccc;
	}

.galleryBox span.arrowpause {
	display: none;
}


/* .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;
	background-color: rgba(0,0,0,0.5);
	top: 40%;
	bottom: 40%;
	width: 40px;
	font: bold 18pt Arial, sans-serif;
	outline: none;
	visibility: hidden;
	transition: opacity 0.3s ease-out;
} */

/* .galleryBox .photoFrame button.nav:focus { outline: 1px dashed #000; } */

/* .galleryBox .photoFrame:hover button.nav
{
	opacity: 1;
	visibility: visible;
	transition: opacity 0.3s ease-out;
}
.opacity .galleryBox .photoFrame button.nav { visibility: visible; } */

.galleryBox .photoFrame button.left {
	left: 0;
	border-radius: 0 20px 20px 0;
}

.galleryBox .photoFrame button.right {
	right: 0;
	border-radius: 20px 0 0 20px;
}

/* thumbnails */
.galleryBox div.thumbnails {
	display: block;
	position: relative;
	overflow: hidden; /* background: #555; */
	background: transparent;
	color: #333;
	z-index: 3;
}

	.galleryBox div.thumbnails ul.page {
		display: none;
		margin: 0;
		padding: 10px 10px 2px 10px;
		overflow: hidden;
	}

.galleryBox .text {
	text-align: center;
}

	.galleryBox .text .textbackground {
		display: inline-block;
		text-align: left;
	}

.galleryBox div.thumbnails ul.page.current {
	display: block;
	text-align: center;
}

.galleryBox div.thumbnails li {
	position: relative;
	display: inline-block;
	line-height: 60px;
	vertical-align: top; /* display: block;
	float: left; */
	margin: 0 1px 1px 0;
	padding: 0; /* height: 60px; */
	cursor: pointer;
	opacity: 1.0;
	border: 3px solid transparent; /* transition: all 0.3s ease-out; */
	transition: box-shadow 0.2s ease-out, opacity 0.2s ease-out;
}

	.galleryBox div.thumbnails li:focus,
	.galleryBox div.thumbnails li:hover,
	.galleryBox div.thumbnails li.selected {
		opacity: 1;
		border: 3px solid black;
		z-index: 2;
	}

.galleryBox div.thumbnails img {
	display: block;
	height: 60px;
	width: auto;
	line-height: 60px;
}

.leftColumn .galleryBox div.thumbnails img,
.rightColumn .galleryBox div.thumbnails img {
	height: 25px;
}

.leftColumn .galleryBox div.thumbnails ul.page,
.rightColumn .galleryBox div.thumbnails ul.page {
	padding: 5px 5px 5px 5px;
}

/* thumbnail buttons */
.galleryBox .thumbnails .messages {
	text-align: center;
	padding: 0px 10px 15px 15px;
	overflow: hidden;
}

	.galleryBox .thumbnails .messages .slideshow {
		margin-right: 20px;
	}

.galleryBox .thumbnails a {
	display: inline-block;
	color: #333;
	background: transparent;
	padding: 4px 8px;
	border-radius: 5px;
}

	.galleryBox .thumbnails a:hover,
	.galleryBox .thumbnails a:focus {
		color: #fff;
		background: #333;
	}
/* .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: 0;
	height: 0;
}

a#skipLinkTarget {
	display: none;
}

a#skipLink {
	position: absolute;
	background: white;
	top: -41px;
	left: 0;
	color: black;
	transition: top 1s ease-out 0s, background 1s linear 0s;
	border-radius: 0 0 5px 0;
	border-bottom: 1px solid white;
	border-right: 1px solid white;
	padding: 8px 5px;
	z-index: 999999;
	line-height: normal;
}

	a#skipLink:focus {
		background: #bf1722;
		color: white;
		top: 0;
		transition: top 0.1s ease-in 0s, background 0.5s linear 0s;
	}

.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 */
}

/* Sidebar fix */
.sidebar P, .leftSidebar P {
	margin-top: 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;
	max-width: 100%;
	border: none;
	z-index: 999999;
	border-radius: 0 0 20px 0;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
	background: rgba(0,0,0,0.7);
}

	#designPreviewHeader h3, #previewHeader h3 {
		font: bold 17px/19px Arial, Sans-Serif;
		color: white;
		text-align: left;
	}

	#designPreviewHeader .detail {
		margin-top: 10px;
	}

	#designPreviewHeader .hide {
		font-size: 120%;
		font-weight: bold;
	}

	#designPreviewHeader.collapsed .hide {
		font-size: 11px;
		position: absolute;
		right: 15px;
		top: 14px;
	}

	#designPreviewHeader a.close {
		color: white;
		font-size: 14px;
		margin-left: 10px;
	}

	#designPreviewHeader a, #designPreviewHeader.collapsed .hide a {
		color: #fff;
	}

		#designPreviewHeader a:hover {
		}

/* hidden */
.hidden, h2.hidden, .search.bar h3, .search.bar h3.hidden {
	border: none;
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden; /* default colors for ADA */
	background: white;
	color: black;
}

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	height: 1px;
	width: 1px;
}

#backTop {
	width: 35px;
	height: 35px;
	padding: 5px;
	border-radius: 35px;
	cursor: pointer;
	z-index: 999999;
	display: none;
	box-sizing: content-box;
	color: rgba(0,0,0,0.7);
	font-size: 24pt;
	text-align: center;
	vertical-align: middle;
	line-height: 35px;
	background: rgba(255,255,255,0.5);
	border: 1px solid rgba(0,0,0,0.5);
}

/* GOVCONNECT */
.govConnectContainer {
	width: 100%;
	max-height: 100%;
}

.socialFixed .socialTools a {
	background: #333;
}

	.socialFixed .socialTools a.cart {
		background: #cc0000;
	}

	.socialFixed .socialTools a.facebook {
		background: #3b5998;
	}

	.socialFixed .socialTools a.twitter {
		background: #1da1f2;
	}

	.socialFixed .socialTools a.youtube {
		background: #ff0000;
	}

	.socialFixed .socialTools a.instagram {
		background: linear-gradient(-20deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
	}

	.socialFixed .socialTools a.linkedin {
		background: #007bb5;
	}

	.socialFixed .socialTools a.nextdoor {
		background: #00b246;
	}

	.socialFixed .socialTools a.pinterest {
		background: #cb2028;
	}

	.socialFixed .socialTools a.flickr {
		background: linear-gradient(90deg, #0063db 0%,#0063db 70%,#ff0084 80%,#ff0084 100%);
	}

	.socialFixed .socialTools a.blogger {
		background: #f4923d;
	}

	.socialFixed .socialTools a.reddit {
		background: #ff4500;
	}

	.socialFixed .socialTools a.tumblr {
		background: #1992fb;
	}

	.socialFixed .socialTools a.vimeo {
		background: #1ab7ea;
	}

	.socialFixed .socialTools a.foursquare {
		background: #f94877;
	}

	.socialFixed .socialTools a.nixle {
		background: red;
	}

	.socialFixed .socialTools a.rss {
		background: #ea7819;
	}

	.socialFixed .socialTools a.email {
		background: #333333;
	}

	.socialFixed .socialTools a.subscribe {
		background: #009900;
	}

	.socialFixed .socialTools a.chat {
		background: #3c646e;
	}

nav.block .mobileSocial .socialTools {
	padding: 5px 10px;
}

	nav.block .mobileSocial .socialTools a {
		border-radius: 5px;
		padding: 5px;
	}

		nav.block .mobileSocial .socialTools a img {
			width: 23px;
		}

/* Page Level Subscription Bar at bottom of page */
.PageLevelSubscriptionBar {
	padding: 15px;
	max-width: 100%;
}

	.PageLevelSubscriptionBar fieldset {
		padding: 10px;
	}

	.PageLevelSubscriptionBar legend {
		padding: 0 5px;
	}

	.PageLevelSubscriptionBar input, .PageLevelSubscriptionBar label {
		display: inline;
		margin: 3px 5px;
	}

	.PageLevelSubscriptionBar label {
		margin-right: 15px;
	}

a#managesubscriptionslink {
	display: inline-block;
	margin-left: 20px;
}

/* Subscriptions Page */
.box.SUBSCRIBE div label {
	margin-right: 20px;
	display: inline-block;
}

.box.SUBSCRIBE.pageLevelSubscriptions, .box.SUBSCRIBE.subscriptionSignInLink {
	width: 100%;
}

.box.SUBSCRIBE div .subscribeSectionTitle {
	font-weight: bold;
	padding: 10px 20px;
}

.box.SUBSCRIBE div #unsubscribeall, .box.SUBSCRIBE fieldset div .cepSignIn {
	display: inline-block;
	margin: 10px 10px;
}

.box.SUBSCRIBE span.subscribetext {
	display: none;
}

.box.SUBSCRIBE i.fa {
	font-size: 16pt;
}

.dt {
	display: table;
}

	.dt.it {
		display: inline-table;
	}

.tr {
	display: table-row;
}

.td {
	display: table-cell;
}

/* CEP */
.cepContainer {
	position: relative;
}

	.cepContainer .cepProfilePanel,
	.cep_fixed .cepProfilePanel {
		display: none;
	}

		.cep_fixed .cepProfilePanel a {
			margin-left: 65px;
		}

.cepProfilePanel a {
	display: block;
}

.cepContainer .cepProfilePanel a.cepClose {
	position: absolute;
	top: -10px;
	right: -10px;
	font-size: 30px;
}

.ceptransactions th span {
	display: inline-block;
	cursor: pointer;
}

.cepaddresses, .ceppeople {
	max-width: 1000px;
	padding: 10px;
}

	.cepaddresses fieldset, .ceppeople fieldset {
		padding: 10px;
		max-width: 100%;
	}

		.cepaddresses fieldset legend, .ceppeople fieldset legend {
			margin-left: 10px;
			padding: 0 10px;
			text-align: left;
		}

	.cepaddresses form div.field, .ceppeople form div.field {
		text-align: left;
		max-width: 100%;
		margin-bottom: 5px;
	}

	.cepaddresses form label, .ceppeople form label {
		display: block;
	}

	.cepaddresses form input[type=text], .ceppeople form input[type=text] {
		display: block;
		padding: 3px;
		width: 320px;
		max-width: 100%;
	}

.cepaddresslist div.cepaddress, .ceppeoplelist div.cepperson {
	border: 1px solid #555;
	padding: 15px;
	max-width: 100%;
	margin: 10px;
	text-align: left;
}

	.cepaddresslist div.cepaddress:nth-child(odd),
	.ceppeoplelist div.cepperson:nth-child(odd) {
		background: #eee;
	}

.navDrop nav.block.mobilemenu .cepContainer .cepProfilePanel {
	border-top: 1px solid white;
	padding-top: 10px;
}

	.navDrop nav.block.mobilemenu .cepContainer .cepProfilePanel a.cepClose {
		position: absolute;
		top: -5px;
		right: 2px;
		font-size: 20px;
	}

.d-block {
	display: block;
}

.vertical-align-baseline {
	vertical-align: baseline;
}

.a-Process-Disable {
	pointer-events: none;
	cursor: wait !important;
	color: #d1d1d1;
}

/* testing CEP fixed position */
.cep_fixed {
	position: fixed;
	top: 200px;
	right: 0;
	border-radius: 30px 0 0 30px;
	padding: 5px 10px;
	color: white;
	background: #333;
	border: 2px solid #222;
	font-size: 16px;
	z-index: 15000;
	width: 65px;
	transition: width 2s;
	overflow: hidden;
	white-space: nowrap;
	opacity: 0.8;
}

	.cep_fixed:hover {
		opacity: 1.0;
	}

	.cep_fixed a:focus {
		outline: 1px dashed #fff;
	}

	.cep_fixed i.fa {
		font-size: 24px;
	}

	.cep_fixed a, .cep_fixed a:hover {
		color: white;
		cursor: pointer;
	}

.cepFixedSignIn,
.cepFixedWelcome {
	margin-left: 20px;
	padding: 0 5px;
	display: inline-block;
}

.cep_fixedopenclose {
	display: inline-block;
	padding: 5px;
	cursor: pointer;
}

.cep_fixed .cep_text {
}

.cep_fixed .cepSignOut {
	margin-bottom: 20px;
}

.d-inline {
	display: inline;
}

.f-left {
	float: left;
}

.f-right {
	float: right;
}

.w-50 {
	width: 50%;
}

.mt-30 {
	margin-top: 30px;
}

select[readonly] {
	background: #eee;
	cursor: no-drop;
}

	select[readonly] option {
		display: none;
	}

.cartStore p.storeReview {
	white-space: pre
}

.listlinks {
	margin-bottom: 20px;
}

/* documents (document manager) */
.docmanContainer .subfolders {
	padding-top: 20px;
}

	.docmanContainer .subfolders > div {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		border-top: 1px solid #d8d8d8;
	}

		.docmanContainer .subfolders > div:hover {
			background: rgba(235,235,235,0.9);
		}

	.docmanContainer .subfolders > .folder,
	.docmanContainer .subfolders > .file,
	.docmanConatiner .headings i.fa-arrow-up {
		cursor: pointer;
	}

	.docmanContainer .subfolders > div.headings {
		font-weight: bold;
		border-top: none;
	}

		.docmanContainer .subfolders > div.headings:hover {
			background: none;
		}

		.docmanContainer .subfolders > div.headings .fa-arrow-up,
		.docmanContainer .subfolders > div.headings .fa-arrow-right {
			color: transparent;
		}

	.docmanContainer .subfolders > div > div {
		flex-grow: inherit;
		text-align: left;
		padding: 10px 0px;
	}

		.docmanContainer .subfolders > div > div:nth-child(1) {
			flex-basis: 70%;
		}

		.docmanContainer .subfolders > div > div:nth-child(2) {
			flex-basis: 25%;
		}

		.docmanContainer .subfolders > div > div:nth-child(3) {
			flex-basis: 5%;
		}

		.docmanContainer .subfolders > div > div > i {
			margin: 0 10px;
			color: #0f3a55;
		}

.docmanContainer .breadcrumb {
	padding: 10px 0;
	margin: 20px 0;
	border-top: 1px dashed #ccc;
	border-bottom: 1px dashed #ccc;
	font-size: 1.1rem;
	font-weight: bold;
	color: #0e3a57;
	position: relative;
}

	.docmanContainer .breadcrumb > div > span {
		display: inline-block;
		padding: 5px 10px;
		cursor: pointer;
	}

	.docmanContainer .breadcrumb i.fa-list {
		position: absolute;
		top: 15px;
		right: 0;
	}

.docmanContainer h3.searchTitle {
	color: #0e3a57;
	font-size: 1.1rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.docmanContainer .docmanSearch {
	border: 1px solid #ccc;
	padding: 5px 10px;
	display: inline-block;
	max-width: 100%;
}

	.docmanContainer .docmanSearch input {
		border: none;
		width: 30rem;
		font-size: 1rem;
		padding: 5px 10px;
		max-width: calc(100% - 2.2rem) !important;
	}

	.docmanContainer .docmanSearch i.fa-magnifying-glass {
		margin-left: 8px;
		margin-right: 0;
		cursor: pointer;
	}

.docmanContainer #docmanSearchButton {
	font-size: 1rem;
	padding: 8px 60px;
	margin: 10px 20px;
	font-weight: bold;
	border-radius: 0;
	background: #0e3a57;
	color: white;
	display: none;
	cursor: pointer;
}


/* new promo grid */
.grid-container {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 2rem;
	padding: 70px 0;
	margin-bottom: 1rem;
}

	.grid-container .grid-item:first-of-type {
		padding-left: 70px;
		background-color: #bdd7e4;
	}

	.grid-container .grid-item:last-of-type {
		padding-right: 70px;
	}

.grid-item {
	position: relative;
	/* Add common styles for grid items here */
}

	.grid-item .box,
	.grid-item .box .body {
		height: 100%;
	}

.parent {
	/* Add styles for parent elements here */
}

.child {
	/* Add styles for child elements here */
}

.grid-placeholder {
}

.box.promotion .list_promotions {
	position: relative;
	height: 100%;
}

.imagePromoContainer {
	width: 20%;
	min-width: 160px;
	padding-right: 1.6rem;
}

.grid-item .imagePromoContainer {
	max-height: 48.8px;
}

.imagePromoContainer img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.promotion_item .text {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}


/*tax calc*/
.calcContainer h3, .calcContainer th {
	font-weight: 600;
	font-size: 20px;
	color: #0e3a57;
}

.calcContainer .taxTitle {
	margin: 10px 0;
}

.calcContainer {
	width: 80%;
}

div.CalcdAssessmentVal {
	margin-bottom: 7px;
	border-bottom: 2px solid #b4b4b4;
	padding-bottom: 18px;
	margin-top: 10px;
}

.middleCont {
	width: 100%;
	border-bottom: 2px solid #b4b4b4;
	padding-bottom: 18px;
	/*margin-top: 10px;*/
}

.assessedValue, input.propValue, input.vehicleValue,
select.jurisdictionDropdown, .Ratios select,
.ratioSelect {
	border: 1px solid #b4b4b4;
	height: 33px;
	width: 650px;
	padding: 0 0 0 7px;
	font-size: 18px;
	font-weight: 400;
	color: #333;
}

.assessedValue {
	background: #e9e6e6;
	max-width: 100%;
}

.levyTableContainer, .credits {
	border-top: 2px solid #b4b4b4;
	margin-top: 5px;
	padding-top: 6px;
	width: 100%;
}

td.millLevy, td.calcResult, .calcContainer .tblHeader, td.basefactor {
	text-align: right;
}

.calcContainer td, .calcContainer th {
	width: 250px;
	padding-left: 0;
}

.descriptionPropertyTax {
	margin-bottom: 10px;
}

div.results {
	font-size: 20px;
	margin-left: 14px;
}

.baseFactorTable th, .baseFactorTable td {
	padding-left: 0;
}

div.resultsDiv {
	display: flex;
	border-top: 2px solid #b4b4b4;
	padding-top: 9px;
}

select.jurisdictionDropdown, .Ratios select {
	max-width: 100%;
}

div.VehicleRatios {
	margin-bottom: 11px;
}


/* pro calendar */
.calendar-container {
	background: #fff;
	border-radius: 10px;
	/* box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12); */
	container-type: inline-size;
}

	.calendar-container .hide {
		display: none;
	}

	.calendar-container .calendar-header {
		display: flex;
		flex-direction: column;
		gap: 10px;
		justify-content: space-between;
		align-items: center;
		margin: 10px 0 25px;
		align-content: center;
	}

		.calendar-container .calendar-header .header-left {
			display: flex;
			align-content: center;
		}

			.calendar-container .calendar-header .header-left .calendar-current-date,
			.calendar-container .calendar-header .header-left .calendar-nav,
			.calendar-container .calendar-header .header-left .today {
				font-weight: 600;
				font-size: 1rem;
			}

			.calendar-container .calendar-header .header-left .calendar-current-date {
				padding: 5px;
				width: 150px;
				text-align: center;
			}

			.calendar-container .calendar-header .header-left .calendar-nav {
				padding: 2px 6px;
				cursor: pointer;
				border-radius: 2px;
				background: #15224B;
				color: white;
			}

				.calendar-container .calendar-header .header-left .calendar-nav i {
					padding: 2px 4px;
				}

				.calendar-container .calendar-header .header-left .calendar-nav:focus i {
					outline: 1px dashed #fff;
				}

			.calendar-container .calendar-header .header-left .today {
				padding: 0px 15px;
				margin-left: 15px;
			}

@container (min-width: 600px) {
	.calendar-container .calendar-header .header-left .calendar-current-date {
		width: 200px;
		padding: 5px 15px;
	}

	.calendar-container .calendar-header .header-left .calendar-current-date,
	.calendar-container .calendar-header .header-left .calendar-nav,
	.calendar-container .calendar-header .header-left .calendar-nav .today {
		font-size: 1.30rem;
	}

	.calendar-container .calendar-header .header-left .today {
		padding: 0px 20px;
	}
}

.calendar-container .calendar-header .header-right label {
	display: inline-block;
}

.calendar-container .calendar-header .header-right button.prolistswap {
	padding: 3px;
	border-radius: 50%;
	background: transparent;
	color: #333;
	border: none;
	cursor: pointer;
	border: 1px solid transparent;
	height: 25px;
	width: 25px;
	line-height: 15px;
	text-align: center;
	vertical-align: middle;
}

	.calendar-container .calendar-header .header-right button.prolistswap:hover,
	.calendar-container .calendar-header .header-right button.prolistswap:focus {
		background: #dedede;
		border: 1px solid #aaa;
	}

.calendar-container .calendar-header .header-right .active {
	background: #dedede;
	border: 1px solid #aaa;
}

.calendar-container .calendar-box .calendar-header .header-right > label {
	display: none;
}

.calendar-container .calendar-box .calendar-header .header-right .categories {
	width: 180px;
	padding: 4px 8px;
	font-size: 14px;
}

@container (min-width: 600px) {
	.calendar-container .calendar-header {
		flex-direction: row;
	}
}

.calendar-container .calendar-body {
	padding: 1px;
	background: #ccc;
	container-type: inline-size;
}

	.calendar-container .calendar-body ul {
		margin: 0;
		padding: 0;
		list-style: none;
		flex-wrap: wrap;
		display: flex;
		text-align: left;
		gap: 1px;
	}

		.calendar-container .calendar-body ul.calendar-weekdays {
			text-align: center;
			font-size: .8rem;
			gap: 0;
			width: 100%;
		}

			.calendar-container .calendar-body ul.calendar-weekdays li {
				flex-grow: 1;
			}

	.calendar-container .calendar-body .mday,
	.calendar-container .calendar-body .lday {
		display: none;
	}

@container (min-width: 500px) {
	.calendar-container .calendar-body .mday {
		display: inline-block;
	}
}

@container (min-width: 800px) {
	.calendar-container .calendar-body .lday {
		display: inline-block;
	}
}

.calendar-container .calendar-body li {
	width: calc((100% / 7) - 1px);
	font-size: 1.07rem;
	color: #414141;
	background: white;
}

.calendar-container .calendar-body .calendar-weekdays li {
	cursor: default;
	font-weight: 500;
	margin: 0 0 1px 0;
	padding: 10px;
	background: #15224B;
	color: white;
}

.calendar-container .calendar-body .calendar-dates li {
	margin: 0;
	padding: 3px;
	position: relative;
	z-index: 1;
	font-weight: 600;
	min-height: 100px;
}

	.calendar-container .calendar-body .calendar-dates li div.day {
		--calendar-circle-size: 30px;
		display: inline-block;
		width: var(--calendar-circle-size);
		height: var(--calendar-circle-size);
		line-height: var(--calendar-circle-size);
		border-radius: 50%;
		background: #eee;
		text-align: center;
		vertical-align: middle;
	}

	.calendar-container .calendar-body .calendar-dates li a.event {
		display: block;
		background: #fff;
		font-size: .5rem;
		line-height: 1.2;
		color: #333;
		border: 1px solid #ccc;
		border-radius: 3px;
		padding: 3px;
		cursor: pointer;
		margin-top: 2px;
		text-decoration: none;
	}

		.calendar-container .calendar-body .calendar-dates li a.event:hover {
			text-decoration: underline;
		}

	.calendar-container .calendar-body .calendar-dates li button.more {
		display: block;
		font-size: .7rem;
		line-height: 1.2;
		color: #333;
		border: 1px solid #ccc;
		border-radius: 3px;
		padding: 3px;
		cursor: pointer;
		margin-top: 2px;
		text-decoration: none;
		background: #eee;
	}

		.calendar-container .calendar-body .calendar-dates li button.more:hover {
			background: #ddd;
		}

	.calendar-container .calendar-body .calendar-dates li div.hide.moreevents {
		display: none;
	}


	.calendar-container .calendar-body .calendar-dates li.inactive {
		background-color: #eee;
		;
		color: #666;
		font-weight: 400;
	}

	.calendar-container .calendar-body .calendar-dates li.active div.day {
		color: #fff;
		background: #000066
	}

@container (min-width: 500px) {
	.calendar-container .calendar-body .calendar-dates li {
		padding: 5px;
	}

		.calendar-container .calendar-body .calendar-dates li a.event {
			font-size: .7rem;
		}
}

@container (min-width: 800px) {
	.calendar-container .calendar-body .calendar-dates li {
		padding: 10px;
	}

		.calendar-container .calendar-body .calendar-dates li a.event {
			font-size: .8rem;
		}
}

.calendar-container .procal-box {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
	align-content: flex-start;
	align-items: flex-start;
}

	.calendar-container .procal-box div.calendar-box {
		width: 100%;
		flex-basis: 100%;
	}

.calendar-container div.calendar-body.hidden {
	display: none;
}

.calendar-container div.calendar-list {
	width: 100%;
	flex-basis: 100%;
}

.calendar-container div.calendar-prolist {
	width: 100%;
	flex-basis: 100%;
}

	.calendar-container div.calendar-prolist span.label {
		display: inline-block;
		padding: 0 10px;
		font-size: 1rem;
		font-weight: 600;
	}

	.calendar-container div.calendar-prolist .rightside {
		padding-left: 8%;
		flex-grow: 1;
	}

	.calendar-container div.calendar-prolist .category i {
		margin-right: 5px;
	}

	.calendar-container div.calendar-prolist .category .title {
		font-weight: bold;
	}


	.calendar-container div.calendar-prolist .category .category,
	.calendar-container div.calendar-prolist .category .image,
	.calendar-container div.calendar-prolist .category .eventtime,
	.calendar-container div.calendar-prolist .category h3 {
		clear: both;
		padding: 5px;
	}

	.calendar-container div.calendar-prolist .category .summary {
		clear: both;
		padding: 15px 5px;
	}

	.calendar-container div.calendar-prolist .category .bottomthree {
		clear: both;
		display: flex;
		margin: 0;
		padding: 0;
		flex-direction: column;
		gap: 10px;
	}

		.calendar-container div.calendar-prolist .category .bottomthree > div {
			flex-grow: 1;
			padding: 15px 15px 15px 0;
			margin: 0 5px 10px 5px;
		}

@container (min-width: 800px) {
	.calendar-container div.calendar-prolist .category .bottomthree {
		flex-direction: row;
	}

		.calendar-container div.calendar-prolist .category .bottomthree > div {
			flex-basis: 32%;
		}

	.calendar-container .procal-box.ProRight,
	.calendar-container .procal-box.HA_ProRight {
		flex-direction: row;
	}

		.calendar-container .procal-box.ProRight div.calendar-box,
		.calendar-container .procal-box.HA_ProRight div.calendar-box {
			flex-basis: 60%;
		}

		.calendar-container .procal-box.ProRight div.calendar-list,
		.calendar-container .procal-box.HA_ProRight div.calendar-list {
			flex-basis: 40%;
		}
}

.calendar-container .procal-box.ProLeft,
.calendar-container .procal-box.HA_ProLeft {
	flex-direction: row-reverse;
}

	.calendar-container .procal-box.ProLeft div.calendar-box,
	.calendar-container .procal-box.HA_ProLeft div.calendar-box {
		flex-basis: 60%;
	}

	.calendar-container .procal-box.ProLeft div.calendar-list,
	.calendar-container .procal-box.HA_ProLeft div.calendar-list {
		flex-basis: 40%;
	}

.calendar-container .procal-box .boxdate {
	display: flex;
	flex-direction: column;
	align-content: center;
	justify-content: center;
	height: 75px;
	font-size: 1.2rem;
	font-weight: 600;
	color: white;
	background: #338445;
	border-radius: 50%;
	text-align: center;
	aspect-ratio: 1 / 1;
	vertical-align: middle;
}

/* Share button styles (mostly directly from all-net plugins.css) */
a.modalBTNSocial,
a.modalBTNSocial:link {
	font-size: 14px;
	color: #FFF;
	display: inline-block;
	margin-top: 0.8rem;
	padding: 0.5rem 1.2rem;
	-webkit-transition: background 300ms ease 0s;
	-moz-transition: background 300ms ease 0s;
	-o-transition: background 300ms ease 0s;
	transition: background 300ms ease 0s;
	background: #165751;
	text-decoration: none;
}

	a.modalBTNSocial:visited {
		color: #FFF;
	}

	a.modalBTNSocial:hover,
	a.modalBTNSocial:active,
	a.modalBTNSocial:focus {
		color: #FFF;
		background: #FCB040;
	}

	a.modalBTNSocial i {
		display: inline-block;
		margin-right: 0.5rem;
	}

	a.modalBTNSocial.facebook,
	a.modalBTNSocial.facebook:link {
		background: #3D5A97;
	}

		a.modalBTNSocial.facebook:visited {
			background: #3D5A97;
		}

		a.modalBTNSocial.facebook:hover,
		a.modalBTNSocial.facebook:active,
		a.modalBTNSocial.facebook:focus {
			background: #4565A8;
		}

	a.modalBTNSocial.twitter,
	a.modalBTNSocial.twitter:link {
		background: #000000;
	}

		a.modalBTNSocial.twitter:visited {
			background: #000000;
		}

		a.modalBTNSocial.twitter:hover,
		a.modalBTNSocial.twitter:active,
		a.modalBTNSocial.twitter:focus {
			background: #333333;
		}

	a.modalBTNSocial.copy,
	a.modalBTNSocial.copy:link {
		background: #57b6b2;
	}

		a.modalBTNSocial.copy:visited {
			background: #57b6b2;
		}

		a.modalBTNSocial.copy:hover,
		a.modalBTNSocial.copy:active,
		a.modalBTNSocial.copy:focus {
			background: #60ccc7;
			cursor: pointer;
		}

.eventlistitem {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	width: 100%;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 10px;
	padding: 10px;
	border-bottom: 1px solid #ccc;
}

	.eventlistitem:last-of-type {
		border-bottom: none;
	}

	.eventlistitem h3 {
		font-weight: 600;
	}

	.eventlistitem a {
		text-decoration: none;
	}

		.eventlistitem a:hover {
			text-decoration: underline;
		}

		.eventlistitem a:hover {
			text-decoration: underline;
		}

.showmap button {
	padding: 5px 10px;
	border-radius: 5px;
	cursor: pointer;
}

div.map.shown {
	aspect-ratio: 2 / 1;
	width: 100%;
	margin: 20px auto;
}

dialog.dialog:modal {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	border-radius: 10px;
	padding: 50px 20px; /* default for all dialogs */
	max-width: 95%;
	width: 800px;
	border: none;
}

dialog.event.dialog {
	padding: 40px 0; /* event dialogs are different in this way */
}

dialog.dialog::backdrop {
	background: rgba(0, 0, 0, 0.5);
}

dialog.dialog .category {
	font-size: 1.2rem;
	font-weight: 600;
	margin: 10px 0;
}

dialog.dialog i {
	margin-right: 5px;
}

dialog.dialog span.label {
	font-size: 1.2rem;
	font-weight: 600;
}

span.label {
	font-size: 1.2rem;
	font-weight: 600;
}

dialog.dialog h2 {
	text-align: left;
	font-size: 1.3rem;
	font-weight: bold;
	margin: 0;
}

dialog.dialog .beforemap,
dialog.dialog .aftermap {
	padding: 20px 20px;
}

dialog.dialog .description {
	font-size: 1.1rem;
	margin: 10px 0;
}

dialog.dialog button.readmore {
	font-weight: 600;
	padding: 5px 10px;
	border-radius: 5px;
	cursor: pointer;
}

dialog.dialog button.closedialog {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: .9rem;
	font-weight: 600;
	cursor: pointer;
	padding: 0 5px;
	background: transparent;
	border: none !important;
}

dialog.dialog .category {
	font-size: 1.2rem;
	font-weight: 600;
	margin: 10px 0;
}

dialog.dialog hr {
	margin: 20px 0;
}

dialog.dialog .sidebyside {
	display: flex;
	/* flex-wrap: nowrap; */
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
}

	dialog.dialog .sidebyside div {
		flex-basis: 50%;
	}

dialog.dialog .attachments i {
	margin-right: 10px;
	min-width: 23px;
}

dialog.dialog span.label {
	font-size: 1.2rem;
	font-weight: 600;
}

dialog.dialog .description {
	font-size: 1.1rem;
	margin: 10px 0;
}

	dialog.dialog .description.showit {
		display: block;
	}

dialog.dialog button.readmore {
	font-weight: 600;
	padding: 5px 10px;
	border-radius: 5px;
	cursor: pointer;
}

dialog.dialog .location .maplink {
	margin-top: 10px;
	display: block;
}

dialog.dialog img {
	max-width: 100%;
}


.sidebyside {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
}

	.sidebyside div {
		flex-basis: 50%;
	}

.alertcontainer {
	width: 100%;
	position: relative;
	z-index: 10;
}

.alert {
	background: darkgreen;
	color: white;
	padding: 15px 85px 15px 15px;
	text-align: center;
	min-height: 50px;
}

.withcontrols .alert {
	padding: 45px 15px 15px 15px;
}

.alert.priority2 {
	background: darkgoldenrod;
}

.alert.priority3 {
	background: darkred;
}

.alerts .alert a {
	color: white;
	text-decoration: underline;
}

	.alerts .alert a:focus {
		outline: 1px dashed #fff;
	}

.alerts .alert dialog p,
.alerts .alert dialog div {
	text-align: left;
	margin-bottom: 2rem;
}

.alerts .alert dialog a {
	color: #333;
	text-decoration: underline;
}

.alerts .alert button.dialogbutton {
	background: rgba(0,0,0,0.5);
	padding: 3px 5px;
	margin-left: 10px;
	border-radius: 4px;
	border: none;
	color: white;
	cursor: pointer;
	font-size: 0.8rem;
}

.alertcontainer button.closealerts {
	position: absolute;
	right: 15px;
	top: 15px;
	background: transparent;
	border: none;
	color: white;
	cursor: pointer;
	font-size: 1.2rem;
	z-index: 20;
}

	.alertcontainer button.closealerts i {
		margin-left: 5px;
	}

.alertcontainer .controls {
	position: absolute;
	top: 15px;
	left: 15px;
	display: flex;
	gap: 8px;
	justify-content: flex-start;
	align-items: center;
	color: white;
	z-index: 20;
}

	.alertcontainer .controls button {
		background: transparent;
		border: none;
		color: white;
		cursor: pointer;
		font-size: 20px;
	}

.alertcontainer button:focus,
.alertcontainer a:focus {
	outline: 1px dashed #fff;
}
/* .alertcontainer .controls > div {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 2px;
	line-height: 1;
} */
.alertcontainer .controls .arrowplay {
	display: none;
}


/* responsive */
@media (min-width: 100px) {
	.content {
		width: 100%;
	}

	.mainContent {
		width: 100%;
	}

	.mainContent, .leftContent, .rightContent {
		padding: 20px;
	}

	.calendarTable .medium {
		display: none;
	}

	.allContainer {
		padding: 0;
	}

	.calendarTable .eventTitle, .calendarTable hr {
		display: none;
	}
}

@media (min-width:500px) and (max-width:899px) {
	.allContainer {
		padding: 0;
	}

	.content {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
		flex-flow: row wrap;
	}

	.mainContent {
		order: 1;
		transition: all .5s ease-in-out;
		width: 100%;
	}

	.leftContent {
		order: 2;
		transition: all .5s ease-in-out;
		width: 100%;
	}

	.rightContent {
		order: 3;
		transition: all .5s ease-in-out;
		width: 100%;
	}

		.leftContent.hasRight, .rightContent.hasLeft {
			width: 50%;
			transition: all .5s ease-in-out;
		}

	div.image.left, div.image.right {
		max-width: 100%;
		margin: 10px 0;
		float: none !important;
	}
}

@media (min-width:600px) {
	.twocolumn, .threecolumn, .fourcolumn {
		column-count: 2;
	}
}

@media (max-width:899px) {

	.w-50 {
		width: 100%;
	}

	.d-inline {
		display: block;
	}

	.f-left {
		float: none;
	}

	.f-right {
		float: none;
		text-align: right;
	}

	.summaryDisplay .image img,
	.fullDisplay .image img,
	.sectionIntro .image img,
	.box.promotion.HA_Boxes
	.responsivebox div.image {
		float: none;
		clear: both;
		text-align: center;
		width: 100%;
		margin: 0 0 15px 0;
		display: block;
		max-width: 100%;
		height: auto;
	}

	.container.content .galleryBox div.photoFrame img.bigImage.fitHeight {
		left: 0 !important;
		position: relative;
	}

	.container.content .galleryBox div.photoFrame {
		height: auto;
	}

	#designPreviewHeader .hide, #designPreviewHeader.collapsed .hide {
		position: relative;
		top: auto;
		right: auto;
	}

		#designPreviewHeader .hide a.close {
			display: inline-block;
			margin: 5px 0 5px 0;
		}
}

@media (min-width:900px) {
	.desktoponly {
		display: block;
	}

	.mobileonly {
		display: none;
	}

	.container.content div.left, .container.content div.cyclerSlide {
		float: left;
		margin: 10px 25px 15px 0;
		clear: left;
	}

	.container.content div.right {
		float: right;
		margin: 10px 0 15px 25px;
		clear: right;
	}

	.content {
		display: flex;
		flex-wrap: wrap;
		flex-flow: row wrap;
	}

	.mainContent.hasLeft, .mainContent.hasRight {
		width: calc(75% - 20px);
	}

		.mainContent.hasLeft.hasRight {
			width: calc(50% - 20px);
		}

	.mainContent .docmanContainer {
		padding: 30px 40px;
	}

		.mainContent .docmanContainer .subfolders > div > div > i {
			margin: 0 20px;
		}

		.mainContent .docmanContainer #docmanSearchButton {
			display: inline-block;
		}

	.leftContent, .rightContent {
		width: 25%;
		padding: 0px;
	}

		.leftContent .box, .rightContent .box {
			padding: 15px;
		}

	/*
		.home .mainContent.hasLeft.hasRight { width: 33%; }
		.home .leftContent, .home .rightContent	{ width: 33%; }
		.home .mainContent.hasLeft, .home .mainContent.hasRight { width: calc(66% - 20px); }
		*/

	.mainContent.hasLeft {
		order: 2;
		transition: all .5s ease-in-out;
	}

	.leftContent {
		order: 1;
		transition: all .5s ease-in-out;
	}

	.rightContent {
		order: 3;
		transition: all .5s ease-in-out;
	}

	.mainContent .calendarTable .medium {
		display: inline;
	}

	.mainContent .calendarTable .eventTitle {
		font-size: 7pt;
	}

	.mainContent .calendarTable .eventTitle {
		display: inline-block;
	}

	.mainContent .calendarTable hr {
		display: block;
	}

	.mainContent .calendarTable .eventStar {
		display: none;
	}

	.mainContent .galleryBox .photoFrame {
		height: 500px;
	}

	.mainContent .B_EV hr {
		margin: 20px 0;
	}

	.mainContent .box.B_BOXES .responsivebox,
	.mainContent .box.promotion.HA_Boxes .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top .responsivebox /*,
		.Above .box.promotion.HA_Boxes .responsivebox,
		.Above .box.promotion.HA_Boxes_Top .responsivebox,
		.Below .box.promotion.HA_Boxes .responsivebox,
		.Below .box.promotion.HA_Boxes_Top .responsivebox*/ {
		/* width: calc(32.5% - 30px); */
		width: calc(49% - 15px);
		margin: 7px;
		/* margin: 15px;  */
		/* height: 300px; */
	}

		.mainContent .box.promotion.B_BOXES.HA_Boxes_Wrap .responsivebox div.image,
		.mainContent .box.promotion.B_BOXES.HA_Boxes_NoWrap .responsivebox div.image,
		.mainContent .box.B_BOXES.image_left_wrap .responsivebox div.image,
		.mainContent .box.B_BOXES.image_left_no_wrap .responsivebox div.image,
		.mainContent .box.promotion.HA_Boxes .responsivebox div.image /*,
		.Above .box.promotion.B_BOXES.HA_Boxes_Wrap .responsivebox div.image,
		.Above .box.promotion.B_BOXES.HA_Boxes_NoWrap .responsivebox div.image,
		.Above .box.promotion.HA_Boxes .responsivebox div.image,
		.Below .box.promotion.B_BOXES.HA_Boxes_Wrap .responsivebox div.image,
		.Below .box.promotion.B_BOXES.HA_Boxes_NoWrap .responsivebox div.image,
		.Below .box.promotion.HA_Boxes .responsivebox div.image*/ {
			max-width: 50%;
		}

	.mainContent.box.B_BOXES.count1 .responsivebox,
	.mainContent.box.promotion.HA_Boxes.count1 .responsivebox {
		width: calc(100% - 30px);
		height: auto;
	}

	.mainContent .box.B_BOXES.count2 .responsivebox,
	.mainContent .box.B_BOXES.count4 .responsivebox,
	.mainContent .box.B_BOXES.count8 .responsivebox,
	.mainContent .box.B_BOXES.count10 .responsivebox,
	.mainContent .box.B_BOXES.count12 .responsivebox,
	.mainContent .box.B_BOXES.count14 .responsivebox,
	.mainContent .box.B_BOXES.count16 .responsivebox,
	.mainContent .box.B_BOXES.count18 .responsivebox,
	.mainContent .box.B_BOXES.count20 .responsivebox,
	.mainContent .box.B_BOXES.count22 .responsivebox,
	.mainContent .box.B_BOXES.count24 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count2 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count4 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count8 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count10 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count12 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count14 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count16 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count18 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count20 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count22 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count24 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count2 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count4 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count8 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count10 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count12 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count14 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count16 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count18 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count20 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count22 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count24 .responsivebox /*,
		.Above .box.promotion.HA_Boxes.count2 .responsivebox,
		.Above .box.promotion.HA_Boxes.count4 .responsivebox,
		.Above .box.promotion.HA_Boxes.count8 .responsivebox,
		.Above .box.promotion.HA_Boxes.count10 .responsivebox,
		.Above .box.promotion.HA_Boxes.count12 .responsivebox,
		.Above .box.promotion.HA_Boxes.count14 .responsivebox,
		.Above .box.promotion.HA_Boxes.count16 .responsivebox,
		.Above .box.promotion.HA_Boxes.count18 .responsivebox,
		.Above .box.promotion.HA_Boxes.count20 .responsivebox,
		.Above .box.promotion.HA_Boxes.count22 .responsivebox,
		.Above .box.promotion.HA_Boxes.count24 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count2 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count4 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count8 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count10 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count12 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count14 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count16 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count18 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count20 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count22 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count24 .responsivebox,
		.Below .box.promotion.HA_Boxes.count2 .responsivebox,
		.Below .box.promotion.HA_Boxes.count4 .responsivebox,
		.Below .box.promotion.HA_Boxes.count8 .responsivebox,
		.Below .box.promotion.HA_Boxes.count10 .responsivebox,
		.Below .box.promotion.HA_Boxes.count12 .responsivebox,
		.Below .box.promotion.HA_Boxes.count14 .responsivebox,
		.Below .box.promotion.HA_Boxes.count16 .responsivebox,
		.Below .box.promotion.HA_Boxes.count18 .responsivebox,
		.Below .box.promotion.HA_Boxes.count20 .responsivebox,
		.Below .box.promotion.HA_Boxes.count22 .responsivebox,
		.Below .box.promotion.HA_Boxes.count24 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count2 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count4 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count8 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count10 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count12 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count14 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count16 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count18 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count20 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count22 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count24 .responsivebox*/ {
		width: calc(49.5% - 30px);
	}

	.box.promotion.B_BOXES.HA_Boxes_NoWrap .responsivebox .boxbody,
	.box.B_BOXES.image_left_no_wrap .responsivebox .boxbody {
		float: left;
		max-width: 42%;
	}

	.leftContent .insideLeftContent .box.B_BOXES .responsivebox,
	.rightContent .insideRightContent .box.B_BOXES .responsivebox,
	.leftContent .insideLeftContent .box.promotion.HA_Boxes .responsivebox,
	.rightContent .insideRightContent .box.promotion.HA_Boxes .responsivebox,
	.leftContent .insideLeftContent .box.promotion.HA_Boxes_Top .responsivebox,
	.rightContent .insideRightContent .box.promotion.HA_Boxes_Top .responsivebox {
		margin: 0;
		width: 100%;
		height: auto;
	}

		.leftContent .insideLeftContent .box.B_BOXES.HA_Boxes_Wrap .responsivebox div.image,
		.leftContent .insideLeftContent .box.B_BOXES.HA_Boxes_NoWrap .responsivebox div.image,
		.rightContent .insideRightContent .box.B_BOXES.HA_Boxes_Wrap .responsivebox div.image,
		.rightContent .insideRightContent .box.B_BOXES.HA_Boxes_NoWrap .responsivebox div.image,
		.leftContent .insideLeftContent .box.promotion.HA_Boxes .responsivebox div.image,
		.rightContent .insideRightContent .box.promotion.HA_Boxes .responsivebox div.image {
			float: none;
			clear: both;
			text-align: center;
			width: 100%;
			margin: 0 0 15px 0;
			display: block;
			max-width: 100%;
			height: auto;
		}

	.card-container {
		flex-direction: row;
	}

	.thirtythree {
		flex-basis: 33%;
		max-width: 33%;
	}

	.thirtyfour {
		flex-basis: 34%;
		max-width: 34%;
	}

	.forty {
		flex-basis: 40%;
		max-width: 40%;
	}

	.fifty {
		flex-basis: 50%;
		max-width: 50%;
	}

	.sixty {
		flex-basis: 60%;
		max-width: 60%;
	}

	.sixtysix {
		flex-basis: 66%;
		max-width: 66%;
	}

	.card-container.Above .card-item.fifty:nth-child(2n+1),
	.card-container.Above .card-item.thirtythree:nth-child(3n+1),
	.card-container.Above .card-item.sixtysix:nth-child(2n+1),
	.card-container.Above .card-item.sixty:nth-child(2n+1),
	.card-container.Below .card-item.fifty:nth-child(2n+1),
	.card-container.Below .card-item.thirtythree:nth-child(3n+1),
	.card-container.Below .card-item.sixtysix:nth-child(2n+1),
	.card-container.Below .card-item.sixty:nth-child(2n+1) {
		padding-left: 70px;
		/* background: lightgoldenrodyellow; */
	}

	.card-container.Above .card-item.fifty:nth-child(2n+2),
	.card-container.Above .card-item.thirtythree:nth-child(3n+3),
	.card-container.Above .card-item.sixtysix:nth-child(2n+2),
	.card-container.Above .card-item.forty:nth-child(2n+2),
	.card-container.Below .card-item.fifty:nth-child(2n+2),
	.card-container.Below .card-item.thirtythree:nth-child(3n+3),
	.card-container.Below .card-item.sixtysix:nth-child(2n+2),
	.card-container.Below .card-item.forty:nth-child(2n+2) {
		padding-right: 70px;
		/* background: lightsteelblue; */
	}

	/* new promo layouts (no group) */
	.nogroup.Above,
	.nogroup.Below {
		padding: 20px 70px;
	}

	.container.content .galleryBox div.photoFrame img.bigImage.fitHeight {
		height: 100% !important;
		width: auto !important;
	}

	.withcontrols .alert {
		padding: 15px 100px;
	}

	.field.inline > * {
		display: inline-block;
	}

	.field.category {
		padding: 8px 0;
	}

	.field i {
		margin-right: 8px;
	}

	.B_LIST .index.horizontal li a {
		white-space: nowrap;
	}

	.mainContent .B_MEET .subsections li {
		display: inline;
		white-space: nowrap;
	}

	.mainContent .B_MEET .meetings.search .fieldAndButton {
		display: inline-block;
	}

		.mainContent .B_MEET .meetings.search .fieldAndButton .searchField {
			width: 250px;
		}

	.mainContent .B_MEET .boxdate .month {
		font-size: 16pt;
	}

	.mainContent .B_MEET .boxdate .day {
		font-size: 28pt;
	}

	.mainContent .B_MEET .boxdate .year {
		font-size: 16pt;
	}

	.mainContent .B_MEET i.fa {
		font-size: 24pt;
	}

	.mainContent .B_MEET ._moderncalendar i.fa {
		font-size: 14pt;
	}

	.mainContent .B_MEET .boxdate {
		padding: 10px 40px;
		line-height: 1.4;
	}

	.mainContent .responsivebox.B_MEET .boxdate.small {
		padding: 5px 20px;
		line-height: normal;
	}

		.mainContent .responsivebox.B_MEET .boxdate.small .month {
			font-size: 10pt;
		}

		.mainContent .responsivebox.B_MEET .boxdate.small .day {
			font-size: 16pt;
		}

		.mainContent .responsivebox.B_MEET .boxdate.small .year {
			font-size: 10pt;
		}

	.mainContent .B_MEET .body article.summaryDisplay .boxdate {
		float: none;
		position: absolute;
		top: 15px;
		left: 15px;
	}

	.mainContent .B_MEET .body article.summaryDisplay {
		position: relative;
		margin-top: 20px;
		padding-left: 180px;
		min-height: 165px;
	}

	.mainContent .B_MEET .body ._eventsbox article.summaryDisplay {
		padding-left: 0;
		min-height: 0;
	}

	.mainContent .B_MEET .body article.summaryDisplay time {
		clear: none;
	}

	.mainContent .B_MEET .attachments .attachment {
		display: inline-block;
	}

	.procalendar dialog.dialog .beforemap, .procalendar dialog.dialog .aftermap {
		padding: 20px 60px;
	}

	.procalendar dialog.dialog button.closedialog {
		right: 60px;
	}


	.leftContent .B_DIR .field h4,
	.rightContent .B_DIR .field h4,
	.leftContent .B_DIR .fieldGrid h4,
	.rightContent .B_DIR .fieldGrid h4 {
		width: auto;
	}

	.fourcolumn, .threecolumn {
		column-count: 3;
	}

	.shoppingCart, .orderConfirmation {
		font-size: 12pt;
	}


	/* business directory / personnel directory */
	.mainContent #dirmap {
		aspect-ratio: 4 / 1;
	}

	.mainContent section.DIR_BUS.summary article.summaryDisplay,
	.mainContent section.DIR_BUS.HA_Full article.summaryDisplay,
	.mainContent section.DIR_BUS.HA_Full_NOPIC article.summaryDisplay,
	.mainContent section.DIR_BUS.accordion article.summaryDisplay .flexit,
	.mainContent section.DIR_PER.summary article.summaryDisplay,
	.mainContent section.DIR_PER.HA_Full article.summaryDisplay,
	.mainContent section.DIR_PER.HA_Full_NOPIC article.summaryDisplay,
	.mainContent section.DIR_PER.accordion article.summaryDisplay .flexit {
		flex-direction: row;
	}

	.mainContent section.DIR_BUS article.summaryDisplay.right,
	.mainContent section.DIR_PER article.summaryDisplay.right {
		flex-direction: row-reverse;
	}

	.mainContent section.DIR_BUS article.summaryDisplay div.details {
		border-left: 2px solid #ddd;
	}

	.mainContent section.DIR_BUS .attachments,
	.mainContent article.DIR_BUS .attachments {
		clear: none;
	}

	.mainContent section.DIR_BUS.summary > article div.image,
	.mainContent section.DIR_BUS.HA_Full > article div.image,
	.mainContent section.DIR_BUS.accordion > article div.image,
	.mainContent section.DIR_PER.summary > article div.image,
	.mainContent section.DIR_PER.HA_Full > article div.image,
	.mainContent section.DIR_PER.accordion > article div.image {
		max-width: 33%; /* flex-basis: 33%; */
	}

	.mainContent section.DIR_BUS.boxes.two > article,
	.mainContent section.DIR_BUS.boxes.three > article,
	.mainContent section.DIR_BUS.boxes.four > article,
	.mainContent section.DIR_PER.boxes.two > article,
	.mainContent section.DIR_PER.boxes.three > article,
	.mainContent section.DIR_PER.boxes.four > article {
		margin: 10px;
		width: 45%;
		flex-basis: 45%;
	}


	/* CEP */
	.cepContainer {
		display: inline-block;
		padding: 3px 10px 5px 10px;
		vertical-align: top;
		line-height: normal;
		position: relative;
	}

		.cepContainer .cepAuthedPanel {
			display: none;
		}

		.cepContainer .cepProfilePanel {
			display: none;
			position: absolute;
			top: 100%;
			right: 0;
			background: #ffffff;
			border-radius: 8px;
			border: 2px solid #333;
			padding: 30px 5px 5px 5px;
			z-index: 20000;
		}

			.cepContainer .cepProfilePanel a,
			.cepContainer .cepProfilePanel a:hover {
				color: #333;
				display: block;
				white-space: nowrap;
				padding: 10px 15px;
			}

				.cepContainer .cepProfilePanel a:focus {
					outline: 1px dashed #333;
				}

	.ceptransactions, .cepaddresses, .ceppeople {
		padding: 15px;
		text-align: center;
		max-width: 1440px;
		margin: 15px auto;
	}

		.ceptransactions table {
			width: 100%;
			background: white;
			color: #222;
			border-collapse: collapse;
			border-spacing: 0;
			text-align: left;
		}

	.productitems table {
		background: white;
		color: #222;
		border-collapse: collapse;
		border-spacing: 0;
		text-align: left;
	}

		.productitems table th, .productitems table td {
			padding: 10px;
		}

		.ceptransactions table hr, .productitems table hr {
			font-weight: bold;
			padding: 1px 3px 10px 3px;
			text-align: left;
		}

		.ceptransactions table tr:nth-child(odd),
		.productitems table tr:nth-child(odd) {
			background: #eee;
		}

	.cepaddresses fieldset, .ceppeople fieldset {
		padding: 20px;
	}

		.cepaddresses fieldset legend, .ceppeople fieldset legend {
			margin-left: 20px;
			padding: 0 10px;
		}

	.cepaddresses form div, .ceppeople form div {
		text-align: left;
	}

	.cepaddresses form label, .ceppeople form label {
		display: inline-block;
		margin-right: 15px;
		width: 130px;
	}

	.cepaddresses form input[type=text], .ceppeople form input[type=text] {
		display: inline-block;
		width: 450px;
	}

	.cepaddresslist div.cepaddress, .ceppeoplelist div.cepperson {
		width: calc(33% - 20px);
		display: inline-block;
		vertical-align: top;
	}

		.cepaddresslist div.address:nth-child(odd), .ceppeoplelist div.cepperson:nth-child(odd) {
			background: #eee;
		}

	.cepaddresslist .cepaddress .editbar,
	.ceppeoplelist .cepperson .editbar {
		text-align: right;
		margin-top: 10px;
	}

	.cepaddresslist input[type=button],
	.ceppeoplelist input[type=button] {
		padding: 3px 10px;
		margin-left: 10px;
	}

	/* social fixed */
	.socialFixed {
		position: fixed;
		left: 0;
		top: 250px;
		z-index: 99999;
	}

		.socialFixed .socialTools {
			float: none;
			opacity: 0.7;
			transition: opacity 0.5s;
		}

			.socialFixed .socialTools:hover,
			.socialFixed .socialTools:focus {
				opacity: 1.0;
			}

			.socialFixed .socialTools a {
				width: 50px;
				text-align: right;
				font-size: 20pt;
				display: block;
				padding: 10px 10px 8px 10px;
				margin-bottom: 4px;
				color: white;
				opacity: 1;
				border-radius: 0 10px 10px 0;
				transition: width .5s;
				box-shadow: rgba(0, 0, 0, 0.5) 3px 3px 5px;
			}

				.socialFixed .socialTools a img {
					display: inline-block;
					width: 28px;
					vertical-align: middle;
				}

				.socialFixed .socialTools a:hover,
				.socialFixed .socialTools a:focus {
					width: 60px;
				}

	/* CEP Subscriptions Page */
	.box.SUBSCRIBE span.subscribetext {
		display: inline;
	}

	.box.SUBSCRIBE i.fa {
		display: none;
	}
}

@media (min-width:1400px) {
	.mainContent .box.B_BOXES.count3 .responsivebox,
	.mainContent .box.B_BOXES.count6 .responsivebox,
	.mainContent .box.B_BOXES.count7 .responsivebox,
	.mainContent .box.B_BOXES.count9 .responsivebox,
	.mainContent .box.B_BOXES.count12 .responsivebox,
	.mainContent .box.B_BOXES.count15 .responsivebox,
	.mainContent .box.B_BOXES.count18 .responsivebox,
	.mainContent .box.B_BOXES.count21 .responsivebox,
	.mainContent .box.B_BOXES.count24 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count3 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count3 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count6 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count6 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count9 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count9 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count12 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count12 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count15 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count15 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count18 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count18 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count21 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count21 .responsivebox,
	.mainContent .box.promotion.HA_Boxes.count24 .responsivebox,
	.mainContent .box.promotion.HA_Boxes_Top.count24 .responsivebox /*,
		.Above .box.promotion.HA_Boxes.count3 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count3 .responsivebox,
		.Above .box.promotion.HA_Boxes.count6 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count6 .responsivebox,
		.Above .box.promotion.HA_Boxes.count9 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count9 .responsivebox,
		.Above .box.promotion.HA_Boxes.count12 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count12 .responsivebox,
		.Above .box.promotion.HA_Boxes.count15 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count15 .responsivebox,
		.Above .box.promotion.HA_Boxes.count18 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count18 .responsivebox,
		.Above .box.promotion.HA_Boxes.count21 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count21 .responsivebox,
		.Above .box.promotion.HA_Boxes.count24 .responsivebox,
		.Above .box.promotion.HA_Boxes_Top.count24 .responsivebox,
		.Below .box.promotion.HA_Boxes.count3 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count3 .responsivebox,
		.Below .box.promotion.HA_Boxes.count6 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count6 .responsivebox,
		.Below .box.promotion.HA_Boxes.count9 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count9 .responsivebox,
		.Below .box.promotion.HA_Boxes.count12 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count12 .responsivebox,
		.Below .box.promotion.HA_Boxes.count15 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count15 .responsivebox,
		.Below .box.promotion.HA_Boxes.count18 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count18 .responsivebox,
		.Below .box.promotion.HA_Boxes.count21 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count21 .responsivebox,
		.Below .box.promotion.HA_Boxes.count24 .responsivebox,
		.Below .box.promotion.HA_Boxes_Top.count24 .responsivebox*/ {
		width: calc(33% - 15px);
	}

	.mainContent section.DIR_BUS.boxes.three > article,
	.mainContent section.DIR_BUS.boxes.four > article,
	.mainContent section.DIR_PER.boxes.three > article,
	.mainContent section.DIR_PER.boxes.four > article /*,
		.Above section.DIR_BUS.boxes.three > article,
		.Above section.DIR_BUS.boxes.four > article,
		.Above section.DIR_PER.boxes.three > article,
		.Above section.DIR_PER.boxes.four > article,
		.Below section.DIR_BUS.boxes.three > article,
		.Below section.DIR_BUS.boxes.four > article,
		.Below section.DIR_PER.boxes.three > article,
		.Below section.DIR_PER.boxes.four > article */ {
		margin: 10px;
		width: 30%;
		flex-basis: 30%;
		max-width: 30%;
	}
}

@media (min-width:1500px) {
	.fourcolumn {
		column-count: 4;
	}
}

@media (min-width:1900px) {
	.fourcolumn {
		column-count: 4;
	}

	.mainContent .calendarTable .eventTitle {
		font-size: 8pt;
	}

	.mainContent .calendarTable .long {
		display: inline;
	}

	.mainContent section.DIR_BUS.boxes.four > article,
	.mainContent section.DIR_PER.boxes.four > article {
		margin: 10px;
		width: 22%;
		flex-basis: 22%;
		max-width: 22%;
	}
}
