#pageJumpButtons {
	position: fixed;
	font-size: 40px;
	bottom: 10px;
	right: 20px;
	width: 40px;
	z-index: 9999;
}
#pageJumpButtons i {
	background: #00c2eb;
	color: #ffffff;
	margin: 5px 0;
	width: 40px;
	height: 40px;
	text-align: center;
	cursor: pointer;
	border: 1px solid #ffffff;
	-webkit-transition: background-color 100ms linear;
	-moz-transition: background-color 100ms linear;
	-o-transition: background-color 100ms linear;
	-ms-transition: background-color 100ms linear;
	transition: background-color 100ms linear;
}
#pageJumpButtons i:hover {
	background: #cccccc;
	color: #004e61;
}
#jumpToPageBlockContainer {
    float: right;
    text-align: right;
    width: 40%;
}
#jumpToPageBlock {
    width: 40%;
}
#contentAreas {
	width: 300px;
}
#addContentArea {
	float: none;
}
#pageBuilder {
	background: #ffffff;
	min-height: 200px;
	color: #585858;
	float: left;   
    width: 100%;
    clear: both;
    margin-top: 15px;
}
#pageBuilder .pageBuilderBlock {
    padding-top: 0px;
    padding-bottom: 35px;
    border-bottom: 2px dashed #666666;
    min-height: 175px;
    position: relative;
	clear: both;
	-webkit-transition: box-shadow .5s ease-in-out;
    -moz-transition: box-shadow .5s ease-in-out;
    -o-transition: box-shadow .5s ease-in-out;
    transition: box-shadow .5s ease-in-out;
}
.pageBuilderBlock {
    position: relative;
    overflow: hidden;
}
.pageBuilderBlock .smartBlockOverlay {
    position: absolute;
    width: 100%;
    height: 100%;
}
:is(.pageBuilderBlock:has(> .smartBlockOverlay.lightText), .pageBlockContentOverBackground:has(.smartBlockOverlay.lightText)) :is(p,strong,a,span,h1,h2,h3,h4,h5,ol,ul,li,td,tr):not(.pageBlockManagementLabel span),
.lightText,
:is(.pageBuilderBlock:has(> .smartBlockOverlay.lightText), .pageBlockContentOverBackground:has(.smartBlockOverlay.lightText)) li:not(.pageBlockManagementLabel span)::marker,
li:has(.lightText)::marker {
    color: #ffffff !important;
}
:is(.pageBuilderBlock, .pageBlockContentOverBackground).pageBlockPhotoShapeRectangle::before {
    content: "";
    height: 100%;
    width: 100%;pageBlockContentOverBackground
    display: block;
    position: absolute;
    box-sizing: border-box;
}
:is(.pageBuilderBlock, .pageBlockContentOverBackground).pageBlockPhotoShapeCircle::before {
    content: "";
    height: 100%;
    left: 0;
    right: 0;
    margin: auto;
    aspect-ratio: 1 / 1;
    display: block;
    position: absolute;
    border-radius: 100%;
    box-shadow: 0 0 0 100vw white;
    box-sizing: border-box;
}
.pageBuilderBlock * {
	position: relative;
}
#pageBuilder .pageBlockLatestVideos,
#pageBuilder .pageBlockUpcomingEvents,
#pageBuilder .pageBlockNewsletterSignup,
#pageBuilder .pageBlockPartnerLogos,
#pageBuilder .pageBlockElections,
#pageBuilder .pageBlockLatestNews,
#pageBuilder .pageBlockLatestBlogPost,
#pageBuilder .pageBlockFeaturedProject{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    height: 35px;
    font-weight: bold;
    font-size: 25px;
}
#pageBuilder img.projectBlockIcon{
	background: transparent;
	margin-top: -50px;
	min-height: 0;
	width: 100px;
}
#pageBuilder .editPageBlockEmployment,
#pageBuilder .editPageBlockPresentation,
#pageBuilder .editPageBlockWebForm,
#pageBuilder .editPageBlockStaffListing {
    margin-left: 2%;
    width: 40%;
    display: block;
    background: #ffffff !important;
}
#pageBuilder .pageBlockStaffListing,
#pageBuilder .pageBlockStaffListingSortContainer {
	float: left;
    width: 100%;
    padding-top: 25px;
}
#pageBuilder .pageBlockStaffListing select
{
     margin: 0px auto 0px auto;   
}
#pageBuilder .pageBlockStaffListing .staffMemberGrid {
	min-height: 450px;
}
#pageBuilder .editPageBlockEmployment,
#pageBuilder .editPageBlockPresentation,
#pageBuilder .editPageBlockWebForm {
	position: absolute;
    left: 0;
    right: 0;
    top: 80px;
    bottom: 0;
    margin: auto;
    height: 32px;
}

#pageBuilder .pageBlockVideoEmbed .removeForPublicContent {
    position: relative;
    margin: auto;
    height: 150px;
    width: 350px;
    margin-bottom: 30px;
    padding-top: 50px;
}
#pageBuilder .pageBlockVideoEmbedCodes {
    height: 40px;
	margin-top: 5px;
}
#pageBuilder .pageBlockVideoEmbed .editPageBlockVideoEmbedURL {
	margin-top: 5px;
}
#pageBuilder .pageBlockVideoEmbedCodes .editPageBlockVideoEmbedShortCode,
#pageBuilder .pageBlockVideoEmbed .editPageBlockVideoEmbedShowControls {
    width: 150px;
    float: right;
    margin-right: 35px;
}
#pageBuilder .pageBlockCustomHTML .customHtmlSpan {
    width: 100%;
	display: inline-block;
    height: 250px;
}
#pageBuilder .pageBlockCustomHTML .customHtmlSpan textarea {
    width: 100% !important;
    box-sizing: border-box;
    text-align: left;
	top: 0 !important;
}
.pageBlock_LayoutContentCards, 
.pageBlock_LayoutContentOverBackground, 
.pageBlock_LayoutContentTabs,
.pageBlock_FormattedText, 
.pageBlock_WebForm, 
.pageBlock_CustomHTML, 
.pageBlock_Presentation, 
.pageBlock_Employment, 
.pageBlock_StaffListing, 
.pageBlock_UpcomingEvents,
.pageBlock_LatestNews,
.pageBlock_LatestVideos,
.pageBlock_NewsletterSignup,
.pageBlock_PartnerLogos,
.pageBlock_Elections,
.pageBlockLatestBlogPost,
.pageBlock_FeaturedProject{
    float: left;
    clear: both;
    width: auto;  /* was 100% */
}

.pageBlockLatestNews #newsDiv {
    padding: 0 5% 50px 5% !important;
    width: 90% !important;
    margin: 0px auto;
}

.pageBlockUpcomingEvents .eventsLeft,
.pageBlockLatestNews .newsRight {
    width: 40%;
}

.pageBlockLatestNews .featuredNewsImageHolder {
    box-sizing: border-box;
    width: 95% !important;
}

.pageBlockUpcomingEvents .eventsLeft .newsEventListingPhotoIcon,
.pageBlockLatestNews .newsRight .newsEventListingPhotoIcon {
    width: 25%;
    height: auto;
    box-sizing: border-box;
}

.pageBlockUpcomingEvents .eventsLeft :is(.homeArticle, .newsEventListingPhotoIcon img),
.pageBlockLatestNews .newsRight :is(.homeArticle, .newsEventListingPhotoIcon img) {
    width: 100% !important;
    height: auto;
}

:is(.pageBlockUpcomingEvents .eventsLeft, .pageBlockLatestNews .newsRight) .homeArticleText {
    width: 70% !important;
    height: auto;
    margin: 0px 0px 0px 5%;
    float: left;
}

.pageBlockLatestBlogPost {
    position: relative;
    width: 100%;
    margin-top: 5%;
}

.pageBlockEmployment .listingImageContainer {
    width: 17%;
}

.pageBlockEmployment .listingImageContainer img {
    margin-bottom: 0;
}

.pageBlockEmployment .listingTextContainer {
    width: 51%;
}

.pageBlockEmployment .listingButtonContainer {
    width: 30%;
}

:is(#content, #contentFull, #cmsWebViewContainer, .homePageContentBlock, .maxWidthWrapper) .pageBlockLatestBlogPost {
    border-top: 2px solid #FAAA17;
}

#cmsWebViewContainer :is(
	.pageBlock_LayoutContentCards,
	.pageBlock_LayoutContentOverBackground,
	.pageBlock_LayoutContentTabs,
	.pageBlock_FormattedText,
	.pageBlock_WebForm,
	.pageBlock_CustomHTML,
	.pageBlock_Presentation,
	.pageBlock_Employment,
	.pageBlock_StaffListing,
	.pageBlock_UpcomingEvents,
	.pageBlock_LatestNews,
	.pageBlock_LatestVideos,
	.pageBlock_NewsletterSignup,
	.pageBlock_PartnerLogos,
	.pageBlock_Elections,
	.pageBlockLatestBlogPost,
	.pageBlock_FeaturedProject
) {
    float: none;
}
.pageBlock_WebForm .pageBlockWebForm .formPadDiv {
    width: 100% !important;
}
.pageBlockElections .electionDiv {
    background: none;
}
.pageBlock_Presentation {
    overflow: visible;
}
.pageBlock_Presentation .tsgContentSliderArrow {
    position: absolute;
}
.homePageContentBlock .pageBlock_Presentation{
	padding: 25px 10%;
	width: 80%;
}
.homePageContentBlock .pageBlock_Presentation .smartBlockOverlay{
	width: 80%;
}
.pageBlock_LayoutAccordion, .pageBlock_VideoEmbed
 {
    float: none;
    clear: both;
    width: auto;  /* was 100% */
}
.pageBlock_LayoutContentCards .cardTextHolder
{
     min-height: 250px;   
}

.pageBlockVideoEmbedVideoLabel {
    display: block;
    text-align: center;
}
.pageBlockVideoEmbed{
	text-align: center;
}
iframe.pageBlockVideoEmbedVideoFrame
{
  min-height: 375px;
}
.pageBlockMarginNone {
    margin: 0px;
    width: 100%;
}
.pageBlockMarginSmall {
    margin: 10px 1%;
    width: 98%;
}
.pageBlockMarginMedium {
    margin: 20px 2%;
    width: 96%;
}
.pageBlockMarginLarge {
    margin: 40px 3%;
    width: 94%;
}
/*
.pageBlockInnerContentAreaWidthFullScreen
.pageBlockInnerContentAreaWidthHalfScreen
.pageBlockInnerContentAreaWidthThirdScreen
*/
/* NONE */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginNone {
    margin: 0px;
    width: 100%;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginNone {
    margin: 0px;
    width: 49%;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginNone {
    margin: 0px;
    width: 33%;
}
/* SMALL */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginSmall {
    margin: 10px 1%;
    width: 98%;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginSmall {
    margin: 10px 1%;
    width: 47%;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginSmall {
    margin: 10px 1%;
    width: 31%;
}
/* MEDIUM */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginMedium {
    margin: 20px 2%;
    width: 96%;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginMedium {
    margin: 20px 2%;
    width: 45%;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginMedium {
    margin: 20px 2%;
    width: 29%;
}
/* LARGE */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginLarge {
    margin: 30px 3%;
    width: 94%;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginLarge {
    margin: 30px 3%;
    width: 43%;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginLarge {
    margin: 30px 3%;
    width: 27%;
}

.pageBlockInnerContentAreaHeightAuto {
    height: auto;
}
.pageBlockInnerContentAreaHeightShort {
    min-height: 200px;
}
.pageBlockInnerContentAreaHeightMedium {
    min-height: 300px;
}
.pageBlockInnerContentAreaHeightTall {
    min-height: 400px;
}
.pageBlockBorderSolid, .pageBlockInnerContentAreaBorderSolid {
    border: 1px solid #CCCCCC;
    box-sizing: border-box;
}
.pageBlockAreaFlowOverflow {
	white-space: nowrap;
	overflow: auto;
}
.pageBlockAreaFlowOverflow :is(p,strong,a,span,h1,h2,h3,h4,h5,ol,ul,li,td,tr) {
    white-space: normal;
}
.editPageBlockImage img {
	width: 100%;
}
#pageBuilder .cardImageHolder {
    background: #666666;
    color: #FFFFFF;
    padding: 80px 0px;
    text-align: center;
}
.cardTextHolder {
     text-align: center;
    width: 80%;
    padding: 0px 10%;
}
.pageBlockInnerContentAreaWidthThirdScreen {
    display: inline-block;
}
.pageBlockAreaFlowOverflow .pageBlockInnerContentAreaWidthThirdScreen {
	display: inline-block !important;
	float: none !important;
    vertical-align: top;
}
#pageBuilder .removeForPublicContent {
    background: transparent !important;
    padding: 4px;
}
#pageBuilder i.removeForPublicContent,
#pageBuilder i.removeStaffListing{
    color: #20bfe9;
}
#pageBuilder.pageBlockStaffMember {
    width: 25%;
    float: left;
    text-align: center;
    padding: 10px 2%;   
}
.pageBlockStaffMember .staffMemberGrid,
#pageBuilder .staffMemberGrid img {
    width: 100%;
    margin: 0 0 25px 0;
}
.pageBlockStaffMember .staffMemberGrid img {
    box-sizing: border-box;
}
#pageBuilder .staffMemberGrid strong {
    color: #333333;
    font-size: 1em;
    font-weight: bold;
    letter-spacing: normal;
    line-height: 1.4;
}
#pageBuilder .staffMemberGrid i.sortStaffListing {
    font-size: 30px;
    margin-bottom: 15px;
}
#addContentArea  {
    font-size: 1.15em;
    left: -16px;
    top: 1px;
}
#pageBlockSettingsShadow,
#uploadPhotoSettingsShadow {
	/*
    position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: #ffffff;
	opacity: 0.5;
	z-index: 9;
	display: none;*/
    position: fixed;
    /* left: 0; */
    right: 0;
    top: 0;
    width: 79%;
    bottom: 0;
    z-index: 9;
    display: none;
    background-color: #1a4e60;
    backdrop-filter: blur(4px) brightness(80%);
    background: rgb(26 78 96 / 80%);
}
#pageBlockSettings,
#uploadPhotoSettings,
#loadingUploadPhotoSettings {
	position: fixed;
    height: 400px;
    overflow: scroll;   
    /* left: 70%; */
    right: 10%;
    top: 100px;
    margin: auto;
    /* background: #004e61; */
    padding: 20px;
    /* border: 1px solid #ffffff; */
    width: 50%;
    min-height: 625px;
    z-index: 9;
    display: none;
    border: 1px solid #5792a0;
    /*
    position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background: #004e61;
	padding: 20px;
	border: 1px solid #ffffff;
	width: 50%;
	height: 625px;
	z-index: 9;
	display: none;
    */
}
#pageBlockSettings .pageBlockSetting:first-of-type,
#uploadPhotoSettings .pageBlockSetting:first-of-type,
#loadingUploadPhotoSettings .pageBlockSetting:first-of-type {
  border-top: 0px;
}
#uploadPhotoSettings {
	width: 50%;
}
#uploadPhotoSettings .pageBlockSetting.percentBlock {
    text-align: right;
}
#uploadPhotoSettings .pageBlockSetting.percentBlock strong {
    text-align: left;
    float: left;
}
#uploadPhotoSettings .pageBlockSetting.percentBlock input {
    width: 100px;
    min-width: auto !important;
}
:is(#uploadPhotoSettings, #libraryPhotos)::webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
}
:is(#uploadPhotoSettings, #libraryPhotos)::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, .5);
    box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}
#loadingUploadPhotoSettings {
    width: 50px;
    height: 50px;
}
#loadingUploadPhotoSettings i {
    color: #20bfe9;
    font-size: 50px;
}
#uploadPhotoSettingsShadow,
#uploadPhotoSettings,
#loadingUploadPhotoSettings {
	z-index: 10;
	display: block;
}
#pageBlockSettings #pageBlockSettingsColumnOne {
	float: left;
	width: 40%;
	padding: 20px 1%;
	box-sizing: border-box;
}
#pageBlockSettings #pageBlockSettingsColumnTwo {
	float: left;
	width: 60%;
	padding: 20px 1%;
	box-sizing: border-box;
}

#pageBlockSettingsColumnTwo>div
{
    border: 1px solid #FFFFFF;
    padding: 25px 10%;
    min-height: 360px;
}

#pageBlockSettings .pageBlockSetting,
#uploadPhotoSettings .pageBlockSetting {
	min-height: 60px;
    border-top: 1px solid #5792a0;
    padding-top: 20px;
}
#pageBlockSettings .pageBlockSetting strong,
#uploadPhotoSettings .pageBlockSetting strong {
	display: inline-block;
	width: 63%;
	vertical-align: middle;
}
#pageBlockSettings .pageBlockSetting select,
#uploadPhotoSettings .pageBlockSetting select,
#pageBlockSettings .pageBlockSetting input,
#uploadPhotoSettings .pageBlockSetting input {
	min-width: 35% !important;
	width: 35%;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
}
#uploadPhotoSettings .pageBlockSetting input[type=radio] {
    min-width: auto !important;
    width: auto;
    margin-top: 0;
}
#pageBlockSettings .pageBlockSetting .optionalField,
#uploadPhotoSettings .pageBlockSetting .optionalField {
	font-size: 10px;
}
#pageBlockSettings #pageBlockSettingsButtons {
	float: left;
	clear: both;
}
#pageBlockSettings #customMargins,
#pageBlockSettings #customColor,
#pageBlockSettings #customGradient,
#pageBlockSettings #customCSS {
	display: none;
}
#pageBlockSettings #customMargins .customMarginField {
	float: left;
	width: 15%;
	margin: 0 5%;
}
#pageBlockSettings #customColor .colorPicker {
	margin: 0;
	padding: 6px 10px;
	border: 0;
	width: 90%;
	border-width: 2px;
	border-right-width: 34px;
	border-style: solid;
	border-color: #616261;
	text-transform: uppercase;
	line-height: 34px;
}
#pageBuilder a {
	color: #585858;
}
#pageBuilder .editPageBlockHeading,
#pageBuilder .editPageBlockParagraph {
	border: none;
	box-shadow: none;
	resize: none;
	text-align: center;
	background: transparent;
}
#uploadPhotoSettings #photoLibrary,
#uploadPhotoSettings #iconLibrary {
	display: none;
}
#uploadPhotoSettings #photoLibrary #libraryPhotos {
    height: 300px;
    overflow: auto;
    display: flex;
    flex-flow: row;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 30px;
    margin-top: 15px;
}
#uploadPhotoSettings #photoLibrary #libraryPhotos img {
	margin: 10px;
    cursor: pointer;
    width: 80px;
    height: 80px;
}
#uploadPhotoSettings #iconLibrary #libraryIcons .iconpicker-popover.popover {
	display: block;
	position: relative;
	width: auto;
}
#uploadPhotoSettings #photoLibrary .photoSelected img {
	box-shadow: 0 0 4px 5px #20bfe9;
}
#customGradient #gradientBackground,
#customCSS #cssBackground {
    height: 75px;
    width: 240px;
    margin-bottom: 10px;
    border: 2px solid #00c5ed;
}
#customGradient #customGradientDirection {
	width: 135px;
}
#pageBuilder .editable {
    position: relative;
	/*display: inline-block;*/
}
#pageBuilder .editable input {
	text-align: center;  
	padding: 10px !important;
	border: 0px !important;
	max-width: 750px;
}
#pageBuilder .editable textarea {
    text-align: center;
	max-width: 100%;
}
#pageBuilder .editable ::placeholder {
	color: #c5c5c5;
	opacity: 1;
}
#pageBuilder .pageBuilderBlock .removeForPublicContent.pageBlockManagementLabel {
	float: left;
    clear: both;
    width: 100%;
	box-sizing: border-box;
    position: absolute;
	height: 35px !important;
    bottom: 0 !important;
    left: 0;
}
#pageBuilder .pageBlockManagementLabel span {
	float: right;
	margin-right: 15px;
    color: #20bfe9;
}
#pageBuilder .showHiddenElement {
	color: #20bfe9;
	margin-top: 15px;
	display: block;
	text-align: center;
}
#pageBuilder .mce-tinymce {
    display: block !important;
}
tsgWebForm,
tsgContentSlider,
tsgEmployment,
tsgStaff {
	display: none;
}
.pageBlockInnerContentAreaWidthFullScreen {
	display: inline-block;
	width: 100%;
}
.pageBlockInnerContentAreaWidthHalfScreen {
	display: inline-block;
	width: 49%;
}
.pageBlockInnerContentAreaWidthThirdScreen {
	display: inline-block;
	width: 33%;
}
.fontAwesomeBackground {
    position: relative;
}
.fontAwesomeBackground:before {
    position: absolute;
    /*font-size: 400px;*/
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 400px;
}
i.fontAwesomeBackground {
	overflow: hidden;
}
.pageBlockContentTab {
    box-sizing: border-box;
    float: left;
    text-align: center;
    background: rgb(0,0,0);
    background: linear-gradient(180deg,rgba(0,0,0,0) 80%, rgba(0,0,0,0.08) 100%);
    padding: 15px 5px;
    border: 1px solid #CCCCCC;
    border-radius: 15px 15px 0px 0px;
}
.pageBlockContentTab.tabActive {
    border-bottom: 0px;
    font-weight: bold;
    background: none;
}
#pageBuilder .pageBlockContentTab .tabHeadingSpan,
#pageBuilder .accordionHeadingSpan {
	width: 75%;
	display: inline-block;
}
.pageBlockContentTabContentContainer {
	display: none;
	float: left;
	width: 90%;
    padding: 25px 5%;
    min-height: 300px;
    text-align: left;
}
.pageBlockContentTabContentContainer.tabActive {
	display: block;
}
.pageBlockAccordionHeader {
	padding: 5px;
	background: none;
	text-align: center;
    border: 1px solid #CCCCCC;
    border-radius: 15px;
}
.pageBlockAccordionHeader.accordionActive {
	background: #CCCCCC;
    font-weight: bold;
     border-radius: 15px 15px 0px 0px;
}
.pageBlockAccordionContent {
	height: 0;
	overflow: hidden;
    text-align: left;
}
.pageBlockAccordionContent.accordionActive {
	height: auto;
    width: 90%;
    padding: 25px 5%;
    border: 1px solid #CCCCCC;
    border-radius: 0px 0px 15px 15px;
}
.cardImageHolder img {
	width: 100%;
	object-fit: cover;
	object-position: center center;
	margin: auto;
}
.cardImageHolder img.pageBlockPhotoShapeCircle {
	/*clip-path: circle();*/
	border-radius: 100%;
	aspect-ratio: 1 / 1;
	width: auto !important;
    max-width: 100%;
	margin: auto !important;
}
.cardImageHolder .ui-wrapper {
	overflow: visible !important;
	width: auto !important;
	margin: auto !important;
}
.cardImageHolder .ui-resizable-handle {
	font-size: 15px;
	bottom: 0;
	z-index: 8 !important;
}
.cardImageHolder .ui-resizable-handle:before {
    display: block;
    width: 100%;
    text-align: center;
    text-shadow: 0px 0px 2px #000000;
    color: #ffffff;
}
.cardImageHolder:has(img, i) {
	padding: 0;
	background: none !important;
}
.cardImageHolder:has(.pageBlockPhotoShapeCircle) {
	background: none !important;
}
.cardImageHolder .pageBlockPhotoBorderSolid {
	padding: 4px !important;
	/*background: black !important;*/
	box-sizing: border-box;
}
.pageBlockContentCard,
.pageBlockContentOverBackground {
	white-space: normal;
    overflow: hidden;
}
.deletePageBlockContentArea {
	float: right;
}
.editPageBlockContentOverBackgroundBackground {
	display: block;
    text-align: center;
}
.cardImageHolder .fontAwesomeBackground:before {
    position: relative;
    /*font-size: 200px;*/
}
.pageBuilderBlock.fontAwesomeBackground {
	font-family: inherit;
	font-weight: inherit;
}
.pageBuilderBlock.fontAwesomeBackground:before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	text-align: center;
}
#pageBuilder .pageBuilderBlock .mce-tinymce:not(.mce-fullscreen),
#pageBuilder .pageBuilderBlock .mce-tinymce:not(.mce-fullscreen) .mce-edit-area {
	background: none;
}
/* THIS CSS IS FOR THE PUBLIC SIDE ONLY */
#content .removeForPublicContent,
#contentFull .removeForPublicContent,
#content .cardImageHolder:not(:has(img, i)),
#contentFull .cardImageHolder:not(:has(img, i)) {
	display: none;
}

#content .pageBlockPartnerLogos .partnersContainer {
	padding: 0;
}

.pageBlockPartnerLogos #partnersDiv {
	background: none;
}

.pageBlockStaffListing .staffMemberGrid {
	min-height: 250px;
}

.pageBlockPartnerLogos .partnersContainer {
    position: absolute;
}

.homePageContentBlock:has(.pageBuilderBlock)
{
    width: 100%;
    padding: 0px;
}
/* #contentBGFullContent:has(#contentFull):has(.pageBuilderBlock) */
#contentBGFullContent:has(#contentFull)
{
    width: 100%;
    padding: 0px;
}
#contentFull:has(.pageBuilderBlock)
{
    width: 100%;
    margin-left: 0px;
    margin-top: 0px;
}
#contentFull:has(.pageBuilderBlock) h1
{
    text-align: center;
}
#customPageBuilderMenu {
	position: absolute;
    background: #ffffff;
    list-style: none;
    border: 2px solid #00c2eb;
    padding: 0;
	margin: 0;
}
#customPageBuilderMenu li {
	padding: 5px 10px;
    background: #00c2eb;
    font-weight: bold;
    color: #ffffff;
    border: 2px solid #ffffff;
}
#customPageBuilderMenu li:hover {
	background: #cccccc;
    color: #004e61;
	cursor: pointer;
}

/* New Icons System for Layout */

.adminButtonGold {
    background-color: #f8a91a;
    color: #FFFFFF;
    text-decoration: none;
    padding: 5px 10px;
    border-radius: 5px;
    display: block;
    font-weight: bold;
}

.adminButtonGold i {
    font-size: 1.2em;
}

.adminButtonFloatRight {
    float: right;
}

.smartBlockIconsBackdrop
{
    position: absolute;
    z-index: 9;
    top: 0px;
    right: 0px;
    width: 100%;
    height: auto;
    min-height: 100%;
    background-color: #1a4e60;
    backdrop-filter: blur(4px) brightness(80%);
    background: rgb(26 78 96 / 80%);
    display: none;
}

.closeSmartBlockGrid
{
    clear: both;
    position: relative;
    top: 10px;
    right: 2%;
    display: inline-block;
    float: right;
}

.smartBlockIconsGrid
{
    margin: 50px 5%;
    width: 90%;
}

.smartBlockIconsGridItem
{
    width: 28%;
    height: auto;
    margin: 0px 2%;
    display: inline-block;
}

.smartBlockIconsGridItem img
{
     width: 100%;
    height: auto;
    margin-bottom: 15px;
    opacity: 1.0;
    -webkit-transform-origin: 0 0;
	-moz-transform-origin: 0 0;
	-o-transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	translate3d(0, 0, 0);
	-webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;  
    position: relative;
    top: 0px;
}

.smartBlockIconsGridItem img:hover
{
     opacity: 1.0;
    cursor:pointer;
    top: -5px;
}

.smartBlockTypeDisplayName
{
    position: relative;
    top: -10px;
}

#libraryPhotosContainer strong
{
     display: none !important;
}

tsgfeaturedblocks i
{
    font-size: 2em;
    color: #666666;
    margin-top: -25px;
}

/* Animation keyframes for fade-in and fade-out effects */

@keyframes fadeInOut {
    0%, 100% { opacity: 0; }
    25%, 75% { opacity: 1; }
}

:is(a, button).adminButtonGold{
	background-color: #f8a91a;
	background-image: -webkit-linear-gradient(
		top left,
		rgba(255, 255, 255, 0.2) 0%,
		rgba(255, 255, 255, 0.2) 37%,
		rgba(255, 255, 255, 0.8) 45%,
		rgba(255, 255, 255, 0.0) 50%
	);
	background-image: -moz-linear-gradient(
		0 0,
		rgba(255, 255, 255, 0.2) 0%,
		rgba(255, 255, 255, 0.2) 37%,
		rgba(255, 255, 255, 0.8) 45%,
		rgba(255, 255, 255, 0.0) 50%
	);    
	background-image: -o-linear-gradient(
		0 0,
		rgba(255, 255, 255, 0.2) 0%,
		rgba(255, 255, 255, 0.2) 37%,
		rgba(255, 255, 255, 0.8) 45%,
		rgba(255, 255, 255, 0.0) 50%
	);

	background-image: linear-gradient(
		0 0,
		rgba(255, 255, 255, 0.2) 0%,
		rgba(255, 255, 255, 0.2) 37%,
		rgba(255, 255, 255, 0.8) 45%,
		rgba(255, 255, 255, 0.0) 50%
	);

	background-position: 80% -45px, 0 0;
	background-size: 250% 250%, 100% 100%;
	display: inline-block;
	position: relative;
	text-decoration: none;
	text-shadow: var(--default-text-shadow);
	transition: background-position 0s ease;

}

:is(a, button).adminButtonGold:hover{
	background-position: 0 0, 0 0;
	transition-duration: 0.5s;
}

.roundedRect:has(.pageBlock_NewsletterSignup) .signupwrapper {
    position: relative;
    left: -13%;
    top: -25px;
    width: 126%;
}

.roundedRect:has(.pageBlock_NewsletterSignup) .newsletterDivSubheading {
    padding: 0;
}

/* NEW SELECT STYLES TO APPLY TO ADMIN.CSS */

#adminBox select {
  background-color: white;
  display: inline-block;
  font: inherit;
  line-height: 1.5em;
  padding: 0.5em 3.5em 0.5em 1em;
  margin: 0;      
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box !important;
  height: 43px;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, gray 50%),
    linear-gradient(135deg, gray 50%, transparent 50%),
    radial-gradient(#ddd 70%, transparent 72%) !important;
  background-position:
    calc(100% - 20px) calc(1em + 2px),
    calc(100% - 15px) calc(1em + 2px),
    calc(100% - .5em) .5em !important;
  background-size:
    5px 5px,
    5px 5px,
    1.5em 1.5em !important;
  background-repeat: no-repeat !important;
}

/* START SMARTBLOCK SYSTEM CORE CSS STYLES ///////////////////////////////////////////////////////////////////////////////////////////////////////// */
.pageBlockUpcomingEvents .eventsLeft,
.pageBlockUpcomingEvents .eventsRight
{
    width: 45%;
    text-align: left;
}
.pageBlock_LayoutContentCards
{
    display: grid;
    grid-template-columns: auto auto auto;
    float: none;
}
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginNone
{
    margin: 0px;
    width: 100%;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginNone
{
    margin: 0px;
    width: 100%
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginNone
{
    margin: 0px;
    width: 100%;
}
/* SMALL */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginSmall
{
    margin: 10px 1%;
    width: 98% !important;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginSmall
{
    margin: 10px 1%;
    width: 98% !important;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginSmall
{
    margin: 10px 1%;
    width: 98% !important;
}
/* MEDIUM */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginMedium
{
    margin: 20px 2%;
    width: 96% !important;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginMedium
{
    margin: 20px 2%;
    width: 96% !important;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginMedium
{
    margin: 20px 2%;
    width: 96% !important;
}
/* LARGE */
.pageBlockInnerContentAreaWidthFullScreen.pageBlockInnerContentAreaMarginLarge
{
    margin: 30px 3%;
    width: 94%;
}
.pageBlockInnerContentAreaWidthHalfScreen.pageBlockInnerContentAreaMarginLarge
{
    margin: 30px 3%;
    width: 94% !important;
}
.pageBlockInnerContentAreaWidthThirdScreen.pageBlockInnerContentAreaMarginLarge
{
    margin: 30px 3%;
    width: 94% !important;
}

/* EDIT HERE */

.lightText
{
color: #FFFFFF !important;
}
#quickMenuScroll .removeForPublicContent
{
display:none;
}
#quickMenuScroll .pageBuilderBlock
{
border-bottom: 0px !important;
}

.cardImageHolder a img
{
    -webkit-transform-origin: 0 0;
 -moz-transform-origin: 0 0;
 -o-transform-origin: 0 0;
 -ms-transform-origin: 0 0;
 transform-origin: 0 0;
 translate3d(0, 0, 0);
 -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
min-height: 230px;
}
.cardImageHolder a img:hover
{
opacity: 0.8;
}

#contentBGFullContent #contentFull
{
    position: relative;   
}
#contentBGFullContent #contentFull #adminEditButton
{   
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 3;
}

#contentBGFullContent #contentFull .adminlink + br
{
    display: none;
}

#contentBGFullContent #contentFull .pageBlockFormattedText
{
     padding: 25px 15%;   
}

#contentBGFullContent #contentFull #FormBuilder
{
    max-width: 600px;
    margin: 25px auto;   
}

.pageBlockFormattedText h1, .pageBlockFormattedText h2, .pageBlockFormattedText p
{
    text-wrap: pretty;
}
.pageBlockFormattedText h1, .pageBlockFormattedText h2, .pageBlockFormattedText h3, .pageBlockFormattedText h4
{
     line-height: 1;   
}
.headingSpan /* H1 color, family FROM THEME */
{
    font-size: 1.5em;
    line-height: 1em;
    width: 100%;
    display: block;
    padding: 20px 0px;
}
.pageBlockContentOverBackground  .headingSpan
{
    font-size: 2.5em;
}

.pageBlockContentOverBackground .cardTextHolder
{
    padding-top: 25px;
    padding-bottom: 25px;
}

.paragraphSpan /* body font,color,family FROM THEME */
{ 
    font-size: 0.9em; 
    font-weight: 400;
    width: 100%;
    display: block;
}
.pageBuilderBlock {
    border-bottom: 3px solid #fff;
}
:is(.pageBuilderBlock:has(> .smartBlockOverlay.lightText), .pageBlockContentOverBackground:has(.smartBlockOverlay.lightText)) :is(p,strong,a,span,h1,h2,h3,h4,h5,ol,ul,li,td,tr,label,select,input):not(.pageBlockManagementLabel span) {
    color: #000;
}
/* START STYLES THAT WILL BE BAKED INTO THEME.CSS UPON THEME SETTINGS SAVE ///////////////////////////////////////////////////////////////////////////////////////////////////////// */

.headingSpan /* H1 color, family FROM THEME */
{
    color: #000 !important;
}
.paragraphSpan /* body font,color,family FROM THEME */
{ 
    color:#333333 !important; 
}
.linkButton /* use same settings as .largeContentButton from FROM THEME */
{ 
    font-size: 1.2em !important;
    background:#FAAA17; 
    color:#ffffff !important; 
    border-radius:10px !important; 
    -moz-border-radius:10px !important; 
    -webkit-border-radius:10px !important; 
    width: 100% !important;
    max-width: 300px !important;
    display: block !important;
    padding: 5px 0px !important;
    margin: 25px auto !important;
    border: 2px solid #FFFFFF;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    translate3d(0, 0, 0);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
.pageBlock_LayoutContentCards .linkButton:hover /* use same settings as .largeContentButton:hover from FROM THEME */
{ 
    opacity: 0.7;
}
.pageBlockMarginNone{
    margin: 0px;
    width: 100%;
}
.pageBlockMarginSmall{
    margin: 10px 1%;
    width: 98%;
}
.pageBlockMarginMedium{
    margin: 20px 2%;
    width: 96%;
}
.pageBlockMarginLarge{
    margin: 40px 3%;
    width: 94%;
}

.pageBlockInnerContentAreaHeightAuto{
    height: auto;
}
.pageBlockInnerContentAreaHeightShort{
    min-height: 200px;
}
.pageBlockInnerContentAreaHeightShort .cardTextHolder
{
    min-height: 130px !important;
}

.pageBlockInnerContentAreaHeightMedium{
    min-height: 300px;
}
.pageBlockInnerContentAreaHeightTall{
    min-height: 400px;
}
.pageBlockBorderSolid{
    border: 1px solid #CCCCCC;
}
.editPageBlockImage img{
    width: 100%;
}
.cardImageHolder{
    background: #666666;
    color: #FFFFFF;
    padding: 80px 0px;
    text-align: center;
}
.cardTextHolder{
    text-align: center;
    width: 80%;
    padding: 0px 10%;
}
.removeForPublicContent{
    background: #FFFFFF;
    padding: 4px;
}
.pageBlockStaffMember{
    width: 25%;
    float: left;
    text-align: center;
    padding: 10px 2%;   
    box-sizing: border-box;
}
.My_Test_Class {
    box-shadow: 0px 0px 50px 50px blue;
}
.pageBlockInnerContentAreaWidthFullScreen, 
.pageBlockInnerContentAreaWidthHalfScreen, 
.pageBlockInnerContentAreaWidthThirdScreen
{
    display: block;
    float: left;
}
.homePageContentBlock:has(.pageBuilderBlock){
    width: 100%;
    padding: 0px;
}
/* Feature Blog Section */
#featureBlogWrapper {
    text-align: left;
}
#featureBlogWrapper .blogImageThumbContainer {
    border: 1.9px solid #CCCCCC;
    border-radius: 15px;
    -moz-border-radius: 15px;
    -webkit-border-radius: 15px;
    overflow: hidden;
    padding: 0px;
}
.pageBlockLatestBlogPost h1 {
    border-bottom: 2px solid #2C3138;
    padding-bottom: 20px;
}

/*START MOBILE STYLES //////////////////////////////////////////////////////////////////////////////////////////*/
@media only screen and (max-width: 600px) 
{    
    /* MOBILE CORE UPDATES */
    html, body {
      overflow-x: hidden;
    }
    body {
      position: relative
    }
    .roundedRect - pageBuilderBlock
    {
    width: 86%;
    margin-left: 7%;
    margin-right: 7%;
    }

    .newsEventListingPhotoIcon
    {
    width: 80px !important;
    height: 80px !important;
    }

    .pageBlock_LayoutContentCards
    {
        display: block;
        float: none;
    }
    .roundedRect h1, .roundedRect h2, .roundedRect h3
    {
    text-align: center;
    padding: 45px!important;
    }
    .pageBlockVideoEmbed iframe
    {
    width: 100%;
    }
	iframe.pageBlockVideoEmbedVideoFrame{
		min-height: 250px;
	}

    .pageBlockUpcomingEvents .eventsLeft, .pageBlockUpcomingEvents .eventsRight
    {
    width: 90% !important;
    margin: 0px 5%;
    text-align: left;
    float: left;
    }

    #mainDiv :is(.backgroundToTopBannerForMobile:has(> .smartBlockOverlay.lightText), .pageBlockContentOverBackground:has(.smartBlockOverlay.lightText)) :is(p,strong,span,ol,ul,li,td,tr,h1,h2,h3):not(.pageBlockManagementLabel span) {
    color: #000000 !important;
    }

    .pageBlockFormattedText h1 em, .pageBlockFormattedText h2 em
    {
        display: block;
    }
}



@media screen and (max-width: 600px) {
    :is(.pageBlockInnerContentAreaWidthThirdScreen, .pageBlockInnerContentAreaWidthHalfScreen).pageBlockInnerContentAreaMarginNone {
        width: 100%;
    }
    
    :is(.pageBlockInnerContentAreaWidthThirdScreen, .pageBlockInnerContentAreaWidthHalfScreen).pageBlockInnerContentAreaMarginSmall {
        width: 98%;
    }
    
    :is(.pageBlockInnerContentAreaWidthThirdScreen, .pageBlockInnerContentAreaWidthHalfScreen).pageBlockInnerContentAreaMarginMedium {
        width: 96%;
    }
    
    :is(.pageBlockInnerContentAreaWidthThirdScreen, .pageBlockInnerContentAreaWidthHalfScreen).pageBlockInnerContentAreaMarginLarge {
        width: 94%;
    }
    
    .pageBlockStaffMember {
        width: 50%;
    }
    
    /*.pageBlockStaffListing .staffMemberGrid {
        height: auto !important;
    }*/
    
    .pageBlockPartnerLogos #partnersDiv img.partners {
        width: 40%;
        margin: 20px 5%;
    }
    
    ul#myList {
        padding-left: 0;
    }
}