/*
1. BUTTONS
2. ELEMENTS LIBRARY
3. BASIC THEME STUFF
4. FACETS (FACETS WP)
5. THE EVENTS CALENDAR
6. FORMS
7. SSO STUFF
8. PROTECTED CONTENT (CONTENT RESTRICTION)
*/



/*************************************************************/
/************************** BUTTONS **************************/
/*************************************************************/

/*************************************** DEFAULT BUTTON ***************************************/

.fl-page-content button,
.fl-page-content .button,
.fl-page-content .fl-button {
	display: inline-block;
}

.fl-page button,
.fl-page .button,
a.button,
.fl-page input[type=button],
.fl-page input[type=submit],
.fl-page .fl-builder-content a.fl-button,
.fl-page .fl-builder-content a.fl-button:visited,
.fl-page .wp-block-button__link {
	border: 0px;
	border-radius: 0px; 
	padding: 21px 24px;
	font-size: 18px;
	font-weight: 600;
	text-decoration: none;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
	background-color: #B7273D;
	color: #fff;
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

.fl-page button *,
.fl-page .button *,
a.button *,
.fl-page input[type=button] *,
.fl-page input[type=submit] *,
.fl-page .fl-builder-content a.fl-button *,
.fl-page .fl-builder-content a.fl-button:visited *,
.fl-page .wp-block-button__link * {
	color: #fff;
}

.fl-page button::after,
.fl-page .button::after,
a.button::after,
.fl-page input[type=button]::after,
.fl-page input[type=submit]::after,
.fl-page .fl-builder-content a.fl-button::after,
.fl-page .fl-builder-content a.fl-button:visited::after,
.fl-page .wp-block-button__link::after {
	content: '';
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.1905L18 6.9998L11.8093 0.809082L10.1844 2.42256L13.5715 5.80972L0 5.80972L0 8.18988H13.5715L10.1844 11.577L11.8093 13.1905Z' fill='white'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	display: block;
	height: 14px;
	width: 18px;
}

.fl-page button:hover,
.fl-page .button:hover,
a.button:hover,
.fl-page input[type=button]:hover,
.fl-page input[type=submit]:hover,
.fl-page .fl-builder-content a.fl-button:hover,
.fl-page .fl-builder-content a.fl-button:visited:hover,
.fl-page .wp-block-button__link:hover {
	color: #fff;
	border: 0px;
	background-color: #D8495F;
}

.fl-page button:hover *,
.fl-page .button:hover *,
.fl-page input[type=button]:hover *,
.fl-page input[type=submit]:hover *,
.fl-page .fl-builder-content a.fl-button:hover *,
.fl-page .fl-builder-content a.fl-button:visited:hover *,
.fl-page .wp-block-button__link:hover * {
	color: #fff;
}

.fl-page .invert button,
.fl-page .invert .button,
.invert a.button,
.fl-page .invert input[type=button],
.fl-page .invert input[type=submit],
.fl-page .fl-builder-content .invert a.fl-button,
.fl-page .fl-builder-content .invert a.fl-button:visited,
.fl-page .invert .wp-block-button__link {
	background-color: #D8495F;
}

.fl-page .invert button:hover,
.fl-page .invert .button:hover,
.invert a.button:hover,
.fl-page .invert input[type=button]:hover,
.fl-page .invert input[type=submit]:hover,
.fl-page .fl-builder-content .invert a.fl-button:hover,
.fl-page .fl-builder-content .invert a.fl-button:visited:hover,
.fl-page .invert .wp-block-button__link:hover {
	background-color: #DA596D;
}

.wp-block-button__link {
	margin-top: 10px;
}

/*************************************** BUTTON SIZES ***************************************/

.fl-page button.larger,
.fl-page .button.larger,
a.button.larger,
.fl-page input[type=button].larger,
.fl-page input[type=submit].larger,
.fl-page .fl-builder-content .larger a.fl-button,
.fl-page .fl-builder-content .larger a.fl-button:visited,
.fl-page .wp-block-button__link.larger {
	font-size: 21px;
}

.fl-page button.smaller,
.fl-page .button.smaller,
a.button.smaller,
.fl-page input[type=button].smaller,
.fl-page input[type=submit].smaller,
.fl-page .fl-builder-content .smaller a.fl-button,
.fl-page .fl-builder-content .smaller a.fl-button:visited,
.fl-page .wp-block-button__link.smaller {
	font-size: 16px;
}

/*************************************** GHOST BUTTON ***************************************/

.fl-page button.ghost-button,
.fl-page .button.ghost-button,
a.button.ghost-button,
.fl-page .ghost-button input[type=button],
.fl-page .ghost-button input[type=submit],
.fl-page .fl-builder-content .ghost-button a.fl-button,
.fl-page .fl-builder-content .ghost-button a.fl-button:visited,
.fl-page .ghost-button.wp-block-button__link {
	background-color: rgba(0,0,0,0);
	border: 1px solid #B7273D;
	color: #B7273D;
 	-webkit-transition: all 0.5s;
 	transition: all 0.5s;
}

.fl-page button.ghost-button *,
.fl-page .button.ghost-button *,
a.button.ghost-button *,
.fl-page .ghost-button input[type=button] *,
.fl-page .ghost-button input[type=submit] *,
.fl-page .fl-builder-content .ghost-button a.fl-button *,
.fl-page .fl-builder-content .ghost-button a.fl-button:visited *,
.fl-page .ghost-button.wp-block-button__link * {
	color: #B7273D;
}

.fl-page button.ghost-button::after,
.fl-page .button.ghost-button::after,
a.button.ghost-button::after,
.fl-page .ghost-button input[type=button]::after,
.fl-page .ghost-button input[type=submit]::after,
.fl-page .fl-builder-content .ghost-button a.fl-button::after,
.fl-page .fl-builder-content .ghost-button a.fl-button:visited::after,
.fl-page .ghost-button.wp-block-button__link::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.1905L18 6.9998L11.8093 0.809082L10.1844 2.42256L13.5715 5.80972L0 5.80972L0 8.18988H13.5715L10.1844 11.577L11.8093 13.1905Z' fill='%23B7273D'/%3E%3C/svg%3E%0A");
}

.fl-page button.ghost-button:hover,
.fl-page .button.ghost-button:hover,
a.button.ghost-button:hover,
.fl-page .ghost-button input[type=button]:hover,
.fl-page .ghost-button input[type=submit]:hover,
.fl-page .fl-builder-content .ghost-button a.fl-button:hover,
.fl-page .ghost-button.wp-block-button__link:hover {
	background-color: #D8495F;
	border: 1px solid #D8495F;
	color: #fff;
}

.fl-page button.ghost-button:hover::after,
.fl-page .button.ghost-button:hover::after,
a.button.ghost-button:hover::after,
.fl-page .ghost-button input[type=button]:hover::after,
.fl-page .ghost-button input[type=submit]:hover::after,
.fl-page .fl-builder-content .ghost-button a.fl-button:hover::after,
.fl-page .ghost-button.wp-block-button__link:hover::after,
.fl-page .invert button.ghost-button::after,
.fl-page .invert .button.ghost-button::after,
.invert a.button.ghost-button::after,
.fl-page .invert .ghost-button input[type=button]::after,
.fl-page .invert .ghost-button input[type=submit]::after,
.fl-page .fl-builder-content .invert .ghost-button a.fl-button::after,
.fl-page .fl-builder-content .invert .ghost-button a.fl-button:visited::after,
.fl-page .invert .ghost-button.wp-block-button__link::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.1905L18 6.9998L11.8093 0.809082L10.1844 2.42256L13.5715 5.80972L0 5.80972L0 8.18988H13.5715L10.1844 11.577L11.8093 13.1905Z' fill='white'/%3E%3C/svg%3E%0A");
}

.fl-page button.ghost-button:hover *,
.fl-page .button.ghost-button:hover *,
a.button.ghost-button:hover *,
.fl-page .ghost-button input[type=button]:hover *,
.fl-page .ghost-button input[type=submit]:hover *,
.fl-page .fl-builder-content .ghost-button a.fl-button:hover *,
.fl-page .ghost-button.wp-block-button__link:hover * {
	color: #fff;
}

.fl-page .invert button.ghost-button,
.fl-page .invert .button.ghost-button,
.invert a.button.ghost-button,
.fl-page .invert .ghost-button input[type=button],
.fl-page .invert.ghost-button input[type=submit],
.fl-page .fl-builder-content .invert .ghost-button a.fl-button,
.fl-page .fl-builder-content .invert .ghost-button a.fl-button:visited,
.fl-page .invert .ghost-button.wp-block-button__link {
	background-color: rgba(0,0,0,0);
	border: 1px solid #fff;
	color: #fff;
}

.fl-page .invert button.ghost-button *,
.fl-page .invert .button.ghost-button *,
.invert a.button.ghost-button *,
.fl-page .invert .ghost-button input[type=button] *,
.fl-page .invert .ghost-button input[type=submit] *,
.fl-page .fl-builder-content .invert .ghost-button a.fl-button *,
.fl-page .fl-builder-content .invert .ghost-button a.fl-button:visited *,
.fl-page .invert .ghost-button.wp-block-button__link * {
	color: #fff;
}

.fl-page .invert button.ghost-button:hover,
.fl-page .invert .button.ghost-button:hover,
.invert a.button.ghost-button:hover,
.fl-page .invert .ghost-button input[type=button]:hover,
.fl-page .invert .ghost-button input[type=submit]:hover,
.fl-page .fl-builder-content .invert .ghost-button a.fl-button:hover,
.fl-page .invert .ghost-button.wp-block-button__link:hover  {
	background-color: #DA596D;
	border: 1px solid #DA596D;
}

/*************************************** SIMPLE BUTTON ***************************************/

.fl-page button.simple-button,
.fl-page .button.simple-button,
a.button.simple-button,
.fl-page .simple-button input[type=button],
.fl-page .simple-button input[type=submit],
.fl-page .fl-builder-content .simple-button a.fl-button,
.fl-page .fl-builder-content .simple-button a.fl-button:visited,
.fl-page .simple-button.wp-block-button__link {
	background-color: rgba(0,0,0,0);
	border: none;
	color: #B7273D;
	padding: 16px 0px 0px 0px;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	display: flex;
	justify-content: space-between;
}

.fl-page button.simple-button *,
.fl-page .button.simple-button *,
a.button.simple-button *,
.fl-page .simple-button input[type=button] *,
.fl-page .simple-button input[type=submit] *,
.fl-page .fl-builder-content .simple-button a.fl-button *,
.fl-page .fl-builder-content .simple-button a.fl-button:visited *,
.fl-page .simple-button.wp-block-button__link * {
	color: #B7273D;
}

.fl-page button.simple-button::after,
.fl-page .button.simple-button::after,
a.button.simple-button::after,
.fl-page .simple-button input[type=button]::after,
.fl-page .simple-button input[type=submit]::after,
.fl-page .fl-builder-content .simple-button a.fl-button::after,
.fl-page .fl-builder-content .simple-button a.fl-button:visited::after,
.fl-page .simple-button.wp-block-button__link::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.191L18 7.00029L11.8093 0.80957L10.1844 2.42305L13.5715 5.81021L0 5.81021L0 8.19037H13.5715L10.1844 11.5775L11.8093 13.191Z' fill='%23B7273D'/%3E%3C/svg%3E%0A");
}

.fl-page button.simple-button:hover *,
.fl-page .button.simple-button:hover *,
a.button.simple-button:hover *,
.fl-page .simple-button input[type=button]:hover *,
.fl-page .simple-button input[type=submit]:hover *,
.fl-page .fl-builder-content .simple-button a.fl-button:hover *,
.fl-page .fl-builder-content .simple-button a.fl-button:visited:hover *,
.fl-page .simple-button.wp-block-button__link:hover * {
	color: #D8495F;
}

.fl-page button.simple-button:hover::after,
.fl-page .button.simple-button:hover::after,
a.button.simple-button:hover::after,
.fl-page .simple-button input[type=button]:hover::after,
.fl-page .simple-button input[type=submit]:hover::after,
.fl-page .fl-builder-content .simple-button a.fl-button:hover::after,
.fl-page .fl-builder-content .simple-button a.fl-button:visited:hover::after,
.fl-page .simple-button.wp-block-button__link:hover::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.191L18 7.00029L11.8093 0.80957L10.1844 2.42305L13.5715 5.81021L0 5.81021L0 8.19037H13.5715L10.1844 11.5775L11.8093 13.191Z' fill='%23D8495F'/%3E%3C/svg%3E%0A");
}

.fl-page .invert button.simple-button,
.fl-page .invert .button.simple-button,
.invert a.button.simple-button,
.fl-page .invert .simple-button input[type=button],
.fl-page .invert .simple-button input[type=submit],
.fl-page .fl-builder-content .invert .simple-button a.fl-button,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:visited,
.fl-page .invert .simple-button.wp-block-button__link {
	background-color: rgba(0,0,0,0);
	border: none;
	color: #fff;
 	-webkit-transition: all 0.5s;
 	transition: all 0.5s;
	padding: 12px 0px;
	border-bottom: 2px solid rgba(0,0,0,0);
}

.fl-page .invert button.simple-button *,
.fl-page .invert .button.simple-button *,
.invert a.button.simple-button *,
.fl-page .invert .simple-button input[type=button] *,
.fl-page .invert .simple-button input[type=submit] *,
.fl-page .fl-builder-content .invert .simple-button a.fl-button *,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:visited *,
.fl-page .simple-button.wp-block-button__link * {
	color: #fff;
}

.fl-page .invert button.simple-button::after,
.fl-page .invert .button.simple-button::after,
.invert a.button.simple-button::after,
.fl-page .invert .simple-button input[type=button]::after,
.fl-page .invert .simple-button input[type=submit]::after,
.fl-page .fl-builder-content .invert .simple-button a.fl-button::after,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:visited::after,
.fl-page .simple-button.wp-block-button__link::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.191L18 7.00029L11.8093 0.80957L10.1844 2.42305L13.5715 5.81021L0 5.81021L0 8.19037H13.5715L10.1844 11.5775L11.8093 13.191Z' fill='white'/%3E%3C/svg%3E%0A");
}

.fl-page .invert button.simple-button:hover *,
.fl-page .invert .button.simple-button:hover *,
.invert a.button.simple-button:hover *,
.fl-page .invert .simple-button input[type=button]:hover *,
.fl-page .invert .simple-button input[type=submit]:hover *,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:hover *,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:visited:hover *,
.fl-page .simple-button.wp-block-button__link:hover * {
	color: #E7EEF9;
}

.fl-page .invert button.simple-button:hover::after,
.fl-page .invert .button.simple-button:hover::after,
.invert a.button.simple-button:hover::after,
.fl-page .invert .simple-button input[type=button]:hover::after,
.fl-page .invert .simple-button input[type=submit]:hover::after,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:hover::after,
.fl-page .fl-builder-content .invert .simple-button a.fl-button:visited:hover::after,
.fl-page .simple-button.wp-block-button__link:hover::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8093 13.191L18 7.00029L11.8093 0.80957L10.1844 2.42305L13.5715 5.81021L0 5.81021L0 8.19037H13.5715L10.1844 11.5775L11.8093 13.191Z' fill='%23E7EEF9'/%3E%3C/svg%3E%0A");
}

/*************************************** NO ARROW & FULL WIDTH ***************************************/

.fl-page button.full-width-button,
.fl-page .button.full-width-button,
a.button.full-width-button,
.fl-page .full-width-button input[type=button],
.fl-page .full-width-button input[type=submit],
.fl-page .fl-builder-content .full-width-button a.fl-button,
.fl-page .fl-builder-content .full-width-button a.fl-button:visited,
.fl-page .full-width-button.wp-block-button__link {
	display: block;
}

.fl-page .fl-builder-content .full-width-button .fl-button-has-icon a.fl-button,
.fl-page .fl-builder-content .full-width-button .fl-button-has-icon a.fl-button:visited {
	display: flex;
	justify-content: space-between;
}

.fl-page button.no-icon-button::after,
.fl-page .button.no-icon-button::after,
a.button.no-icon-button::after,
.fl-page .no-icon-button input[type=button]::after,
.fl-page .no-icon-button input[type=submit]::after,
.fl-page .fl-builder-content .no-icon-button a.fl-button::after,
.fl-page .fl-builder-content .no-icon-button a.fl-button:visited::after,
.fl-page .no-icon-button.wp-block-button__link::after {
	display: none;
}

/*****************************************************************************/
/**************************** ELEMENTS LIBRARY *******************************/
/*****************************************************************************/

/**************************** STATIC GRIDS *******************************/

.grid-cards .fl-col-group {
	padding-left: 10px;
	padding-right: 10px;
}

.grid-cards .fl-col-group .fl-col .fl-col-content {
	margin-left: 10px; 
	margin-right: 10px;
}

.grid-cards .fl-col-group .fl-col:not(.unset), .card.fl-col {
	display: flex;
}

.grid-cards .fl-col-group .fl-col:not(.unset) .fl-col-content, .card.fl-col .fl-col-content {
	overflow: hidden; 
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

.grid-cards .fl-col-group .fl-col:not(.unset) .fl-col-content .fl-module-button, .card.fl-col .fl-col-content .fl-module-button {margin-top: auto;}

.grid-cards .fl-module-photo:not(.unset) > .fl-module-content {
	margin-top: 0px; 
	margin-left: 0px; 
	margin-right: 0px; 
}

@media screen and (max-width: 992px) {
	.grid-cards .fl-col-group .fl-col .fl-col-content {
		margin-bottom: 20px; 
	}
}


/**************************** RIVERS *******************************/

/* Note: These river settings work for an 1120px container width. If you have a container that is a different size, update accordingly. The calculation should be container width + 20px (so for 1120px, the calc should use 1140px) */

@media screen and (min-width: 1160px) {
	.river-open-content-image .river-content-col .fl-col-content {
		margin-left: calc((100vw - 1140px)/2);
	}		
	.river-open-image-content .river-content-col .fl-col-content {
		margin-right: calc((100vw - 1140px)/2);
	}
}

@media screen and (min-width: 768px) {
	.river-open .fl-row-content-wrap {
		padding-left: 0px; 
		padding-right: 0px; 
	}
	
	.river-open .fl-module-photo .fl-module-content {
		margin-right: 0px;
		margin-left: 0px;
	}

	.river-open-image-content .fl-module-photo .fl-module-content {
		margin-left: 0px;
	}
	
	.river-open-content-image .river-content-col .fl-col-content {
		margin-right: 6%;
	}
	
	.river-open-image-content .river-content-col .fl-col-content {
		margin-left: 6%;
	}
}


/**************************** CTAs *******************************/

.fl-module-cta .fl-cta-inline {
	padding: 30px 30px 20px; 
	border: 1px solid #E7EEF9; 
	background: #fff;
	box-shadow: 0px 12px 26px 2px rgba(0, 0, 0, 0.04);
}

.fl-module-cta .fl-cta-stacked {
	padding: 30px; 
	border: 1px solid #E7EEF9; 
	background: #fff;
	box-shadow: 0px 12px 26px 2px rgba(0, 0, 0, 0.04);
}

/**************************** DYNAMIC FEEDS AND GRIDS *******************************/

.fl-post-column .fl-post-grid-post {
	background: rgba(0,0,0,0);
	display: flex;
}

.complex-grid-item, .simple-grid-item,
.complex-list, .simple-list {background-color: #fff;}

.complex-list .feed-item-right .post-content-container, .simple-list .feed-item-right .post-content-container {height: 100%;}

.complex-grid-item, .simple-grid-item,
.complex-list .feed-item-right .post-content-container, .simple-list .feed-item-right .post-content-container {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

.complex-grid-item .fl-post-text, .simple-grid-item .fl-post-text,
.complex-list .feed-item-right .post-content-container .post-content, .simple-list .feed-item-right .post-content-container .post-content {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

.complex-grid-item .fl-post-more-link, .simple-grid-item .fl-post-more-link,
.complex-list .feed-item-right .post-content-container .post-content .fl-post-more-link, .simple-list .feed-item-right .post-content-container .post-content .fl-post-more-link {margin-top: auto;}

.fl-post-meta.fri-meta-item:last-of-type {
	padding-bottom: 0px; 	
}

.img-square .full-bleed-card-container {
	padding-bottom: 100%; 
}

.img-tall .full-bleed-card-container {
	padding-bottom: 125%; 
}

.img-wide .full-bleed-card-container {
	padding-bottom: 70%; 
}

@media screen and (min-width: 992px) {
	.larger .full-bleed-card-content h2 {
		font-size: 3em; 
		line-height: 4rem; 
		max-width: 600px; 
	}
}

/* Full Bleed Card */

.full-bleed-card-container {
	position: relative; 
	width: 100%; 
	padding-bottom: 100%; 
}

.full-bleed-card-content {
	position: absolute;
	width: 100%; 
	height: 100%;
	display: flex; 
	flex-direction: column; 
	background: rgb(0,0,0);
	background: -moz-linear-gradient(20deg, rgba(0,0,0,0.7) 7%, rgba(0,0,0,0) 50%);
	background: -webkit-linear-gradient(20deg, rgba(0,0,0,0.7) 7%, rgba(0,0,0,0) 50%);
	background: linear-gradient(20deg, rgba(0,0,0,0.7) 7%, rgba(0,0,0,0) 50%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
}

.full-bleed-link {
	position: absolute; 
	display: block; 
	width: 100%; 
	height: 100%;
	top: 0; 
	left: 0; 
}

.full-bleed-card-top {
	width: 100%;
	align-self: flex-start;
}


.full-bleed-card-top .feed-meta-block {
	background: #fff; 
	padding: 4px 6px;  
	float: right; 
}

.full-bleed-card-bottom {
	width: 100%;
	align-self: flex-end;
	margin-top: auto; 
	padding-bottom: 0px; 
	transition: padding-bottom 0.25s; 
}

.full-bleed-card-content .more-icon-link {
	font-size: 16px;
}

.full-bleed-card-bottom a, 
.full-bleed-card-bottom h2 {
	color: #fff; 
}

.full-bleed-card-container:hover .full-bleed-card-bottom {
	padding-bottom: 10px; 
}


.fri-feed .fl-post-feed-post {
	border: 0px; 
}

/* Fri Flex Rows */

.fri-flex-row {
	display: flex; 
	flex-direction: row; 
    flex-wrap: wrap;
}

.fri-flex-row-center {
	align-items: stretch;
}

.fri-flex-1 {
        flex: 1;
}

.fri-flex-2 {
        flex: 2;
}

.fri-flex-3 {
		flex: 3; 
}

.fri-flex-4 {
		flex: 4; 
}

.fri-flex-5 {
		flex: 5; 
}

/* Media Queries */

@media screen and (max-width: 767px) {
	.fri-flex-row {
			flex-direction: column; 
		}
	.fri-flex-1, .fri-flex-2, .fri-flex-3, .fri-flex-4, .fri-flex-5 {
		flex: 100%; 
		width: 100%; 
	}
}

/*************************************************************************/
/************************** BASIC THEME STUFF ****************************/
/*************************************************************************/

/* Authors */

h3.fl-author-bio-name {
	font-size: 20px; 
}

.fl-author-bio-text {
	font-size: 0.85em; 
}

/* Heroicons */

.heroicon {
	display: inline-block;
	height: 24px;
	width: 24px;
}

.heroicon svg {
	stroke-width: 2px;
}

.heroicon-solid svg {
	fill: currentColor;
	stroke-width: 0px;
}

/**************************** MISC *******************************/


@media screen and (min-width: 768px) {
	.content-info-card .fl-col-group .fl-col:first-of-type .fl-col-content {
		margin-right: 40px; 
	}	
}

.announcement-bar {
	font-size: 16px; 
}

.announcement-bar a {
	text-decoration: underline; 
}

.general-meta {
	font-size: 0.8em; 
}

.general-share-buttons .a2a_svg {
	width: 24px; 
	height: 24px; 
}

@media screen and (min-width: 767px) {
	.a2a_kit {
		float: right; 
	}
}




/*************************************************************/
/************************** FACETS ***************************/
/*************************************************************/

.facet-results-left {
	font-size: 16px; 
	opacity: 0.75; 
	float: left; 
}

.facet-sort-right {
	float: right; 
}

.facet-results .fl-module-separator {
	clear: both; 
}

.facet-accordion-inline .fl-accordion-content {
	
}


@media screen and (min-width: 768px) {
	.inline-facet {
		display: inline-block; 
		width: 33%; 
	}
	.data-filters.facet-accordion-inline .fl-accordion-small .fl-accordion-button {
		display: none; 
	}
}


 
.facetwp-sort-select {
	font-size: 15px; 
	padding: 3px 4px; 
}

.data-filters .fl-accordion-content {
	padding: 10px 25px 10px;
}

.data-filters .facetwp-facet {
	margin-bottom: 0px;
}

.data-filters .fs-label-wrap, .data-filters .fs-dropdown {
	width: 100%;
}

.data-filters .fs-label-wrap {
	display: inline-block;
	width: 100%;
}

.data-filters .fs-option {
	padding: 10px; 
}

.fs-option:hover {
	background: rgba(0,0,0,0.07);
}

.fs-label-wrap .fs-label {
	padding: 9px 22px 9px 10px;
}

.facetwp-facet input.facetwp-search, .facetwp-facet input.facetwp-location {
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border: 0px;
	font-weight: 700;
	padding: 8px 22px 8px 12px;
}

.facetwp-facet-search .facetwp-input-wrap {
	display: block;
	margin-bottom: 30px;
}

.facetwp-counter {
	display: none;
}

.facetwp-facet-name_search .facetwp-input-wrap {
	width: 100%;
}

.facetwp-facet.facetwp-facet-name_search input.facetwp-search {
	min-width: 80px;
	width: 100%;
}

.facet-accordion .fl-accordion-button-label {
	font-size: 15px; 
}

.data-filters {
	font-size: 16px;
}

.data-filters h4 {
}

.data-filters .fs-search {
	display: none;
}

.data-filters .facetwp-type-fselect .fs-wrap {
	width: 100%;
	display: block;
	margin-bottom: 20px;
}

.data-filters .fs-option[data-value="featured"] {
	display: none;
}

.data-filters .facetwp-type-fselect .fs-dropdown {
	max-width: 80vw;
	width: 220px;
	box-shadow: 0px 30px 40px rgba(255,255,255,1);
	-moz-box-shadow: 0px 30px 40px rgba(255,255,255,1);
	-webkit-box-shadow: 0px 30px 40px rgba(255,255,255,1);
}

.data-filters .facetwp-checkbox {
	line-height: 18px;
	margin-top: 12px;
}

.data-filters .facetwp-facet input.facetwp-search, .facetwp-facet input.facetwp-location {
	min-width: 210px;
}

.data-filters h4 {
	margin-bottom: 4px;
}

.data-filters p {
	display: none;
}

.data-filters p.display-content {
	display: block;
}

.data-filters .facetwp-icon {
	right: 6px;
}

.data-sort {
	text-align: right;
}

.data-sort select {
	border: 1px solid #0074c8;
	border-radius: 8px;
	padding: 4px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 12px;
	font-size: 16px;
	color: #0074ca;
}

.facet-sort-label {
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 1px;
	font-weight: 700;
	color: #98A6B2;
}

.fl-page button.facet-reset {
	width: 100%;
	background-color: #000000;
}

.fl-page button.facet-reset:hover {
	background-color: #333333;
}


/*******************************************************************************************/
/********************************** THE EVENTS CALENDAR ************************************/
/*******************************************************************************************/

.single-tribe_events a.tribe-events-gcal, .single-tribe_events a.tribe-events-gcal:hover, .single-tribe_events a.tribe-events-ical, .single-tribe_events a.tribe-events-ical:hover {
	padding-left: 30px; 
	display: block; 
	text-align: left; 
}

.tribe-events-meta-group.tribe-events-meta-group-venue {
	padding-top: 0px; 
}

#tribe-events-content .tribe-venue-url a {
	font-size: 0.75em; 
	text-decoration: underline; 
}

.tribe-venue-location {
	font-size: 0.8em; 
}

.tribe-country-name {
	display: block; 
}

#tribe-events-content  .tribe-events-gmap {
	display: block;
	text-decoration: underline; 
}

.fl-module-fl-the-events-calendar-venue .tribe-events-single-section-title {
	display: none; 
}

.tribe-event-date-end {
	display: block; 
}

.tribe-event-date-end:before {
	content:'until';
	display: block; 
	font-size: 0.7em; 
	opacity: 0.7; 
}

.single-event-date-info em {
	display: none; 
}

.single-event-date-info .tribe-event-date-start + em + .tribe-event-time:before {
	content: ' - '
}

/*****************************************************************************/
/********************************** FORMS ************************************/
/*****************************************************************************/

.gform_wrapper label.gfield_label, .gform_wrapper legend.gfield_label {
	font-weight: 400;
}

body .gform_wrapper ul li.gfield {
	margin-top: 20px;
}

.gform_wrapper {
	border: 1px solid #ddd;
    padding: 10px 18px 30px 32px;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
}

.gform_wrapper .top_label li.gfield.gf_left_half .ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(.gfield_time_ampm):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker), .gform_wrapper .top_label li.gfield.gf_right_half .ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(.gfield_time_ampm):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker) {
	margin-top: 4px;
}

/*****************************************************************************/
/******************************* SSO STUFF ***********************************/
/*****************************************************************************/



/*****************************************************************************/
/**************************** PROTECTED CONTENT ******************************/
/*****************************************************************************/
.current-user-is-restricted .fl-post-header {
	display: none;
}

.current-user-is-restricted .restricted-content-notice-background {
	position: relative;
}

@media (min-width: 769px) {
	.current-user-is-restricted .restricted-content-notice-background:before {
		color: transparent;
		content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc pharetra tortor ac velit congue feugiat. Suspendisse maximus justo in ullamcorper pulvinar. Fusce eget ante vel risus commodo hendrerit. Sed et erat porta, rhoncus libero eget, imperdiet eros.\A \ANunc facilisis sagittis elit, at sollicitudin elit ullamcorper eu. Morbi eu neque et nibh vestibulum eleifend. Aenean efficitur pretium massa ut lacinia. Nulla finibus quam quis cursus rhoncus. Donec non egestas justo. Donec iaculis massa ac tortor fermentum finibus. Ut sodales pellentesque fringilla. Sed commodo ipsum vel luctus faucibus. Donec ac nibh ante. Proin lacus lectus, tincidunt a enim vel, aliquet ullamcorper justo. Ut vel condimentum justo.\A \ALorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vehicula sapien ullamcorper lectus scelerisque egestas. Sed porttitor, arcu eget vestibulum maximus, lorem elit facilisis massa, non sodales diam eros vel elit. Quisque eu elit ex. Curabitur ut congue quam, malesuada hendrerit libero. Sed pulvinar, odio at tempor facilisis, nisi justo tincidunt lectus, id sagittis tellus ante ut est.\A \AInteger non quam id tortor aliquam molestie. Donec rutrum efficitur dui sed pretium. Duis lectus risus, faucibus eget sollicitudin eu, consectetur id massa. Nunc mattis sodales tortor ac rutrum. In hac habitasse platea dictumst. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean arcu lacus, aliquam et sagittis ac, auctor at eros. Etiam non cursus ipsum. Curabitur aliquet, leo et faucibus tincidunt, velit velit faucibus orci, a porttitor nulla mi id nibh.\A \AInteger imperdiet hendrerit lorem vitae lacinia. Praesent eget augue ipsum. Phasellus sit amet massa id nulla posuere condimentum et venenatis leo. Morbi euismod purus eget varius finibus. Nunc eget accumsan tortor. Quisque sed sem in mi suscipit fermentum varius a diam. Nulla et ligula vel nulla rutrum pellentesque non ut erat. Quisque ut mattis turpis, ac volutpat tortor. Donec pellentesque condimentum diam, ac mollis risus ornare non. In hac habitasse platea dictumst. Duis in sapien congue, dignissim nisl bibendum, gravida metus. Aliquam euismod odio ex. Etiam suscipit lectus vel leo consequat pellentesque. Mauris tempus, enim vel euismod posuere, felis augue tristique enim, ut pharetra ligula mauris in nulla. Nulla vulputate sed purus nec vestibulum. Integer elit orci, maximus non volutpat vitae, interdum eget nibh.\A \APraesent sagittis dolor in tristique pellentesque. Fusce non turpis sit amet eros tincidunt facilisis eget quis sem. Aliquam ac augue et tellus semper suscipit ut sit amet eros. Vivamus at odio eros. Donec lorem sapien, tincidunt quis faucibus a, convallis quis magna. Cras egestas orci non quam hendrerit, vel pretium magna vehicula. Nulla venenatis imperdiet arcu, a ullamcorper est lobortis ac. In hac habitasse platea dictumst.\A \APraesent fringilla, ante ac vulputate tempor, sapien augue laoreet mi, id gravida sem eros quis mi. Praesent ac metus a erat gravida pellentesque. Vivamus sit amet arcu quis justo semper egestas. Etiam est neque, vehicula et interdum at, interdum sit amet libero. Cras dignissim lorem ut neque mattis congue. Vivamus bibendum rutrum augue, non sodales ligula scelerisque sed. Suspendisse eu dolor et mi scelerisque varius a nec ex. Duis lobortis vel mi iaculis rutrum. Morbi non eros convallis, placerat nulla et, mattis purus.';
		display: block;
		margin-left: -15px;
		margin-right: -15px;
		padding-left: 15px;
		padding-right: 15px;
		overflow: hidden;
		position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
		text-shadow: 0 0 8px #333333;
		white-space: pre-wrap;
		z-index: 0;
	}
	.current-user-is-restricted .restricted-content-notice-background:after {
		content: '';
		position: absolute;
			top: 0;
			left: -15px;
			right: -15px;
		width: 100%;
		height: 100%;
		background: white;
		background: linear-gradient(180deg, rgba(0, 0, 255, 0) 0%, rgba(0, 0, 255, 0) 50%, white 100%);
	}

	.current-user-is-restricted .restricted-content-notice {
		background-color: #ffffff;
		border: 2px solid #91AAB7;
		margin: 0 100px 100px;
		padding: 50px;
		position: relative;
			top: 66px;
			bottom: 66px;
		z-index: 2;
	}
}

/* Beaver Builder pages */
.current-user-is-restricted.fl-builder .container.fl-content-full {
	margin-right: auto;
	margin-left: auto;
	padding-left: 20px;
	padding-right: 20px;
	width: auto;
}

@media (min-width: 769px) {
	.current-user-is-restricted.fl-builder .container.fl-content-full {
		padding-left: 40px;
		padding-right: 40px;
	}
}

@media (min-width: 1100px) {
	.current-user-is-restricted.fl-builder .container.fl-content-full {
		max-width: 90%;
		padding: 0;
		width: 1080px;
	}
}

.current-user-is-restricted.fl-builder .container.fl-content-full .fl-content {
	margin: 20px 0;
}

@media (min-width: 769px) {
	.current-user-is-restricted.fl-builder .container.fl-content-full .fl-content {
		margin: 40px 0;
	}
}