/*
Theme Name: Seneca Global Theme
Theme URI: https://www.seneca-global.com
Version: 1.0
Description: A custom theme built for Seneca Global.
Author: Gerard Agency
Author URI: https://www.gerardagency.com
template: bb-theme
*/

:root
{
	--white: #ffffff;
	--coolgray050: #F2F5F6;
	--coolgray075: #E5EAEC;
    --coolgray100: #e3e7e9;
    --coolgray150: #d4dbdf;
	--coolgray200: #bbc8cd;
    --coolgray250: #B2C1C7;
    --coolgray450: #7F99A3;
    --coolgray500: #4D717F;
    --coolgray650: #1a485a;
    --coolgray750: #0D3246;
	--black: #000000;
	--olive: #A3A466;
    --olive100: #e3e4d1;
	--primary-color: var(--accent-color); /* (navy) - via functions.php - pulling from WP customizer */
	--secondary-color: var(--accent-color-hover); /* (orange) via functions.php */
	--orange: #F26F21;
	--shadow-color: rgba(0, 0, 0, 0.3);
	--drop-shadow: 0px 5px 10px 0px var(--shadow-color);
	--bb-shadow: 0 1px 20px rgb(0 0 0 / 15%);
	--spacer: 1rem;
    --spacer-2: calc( var(--spacer) * 0.5);
    --spacer-3: calc( var(--spacer) * 1);
    --spacer-4: calc( var(--spacer) * 1.5);
	--spacer-45: calc( var(--spacer) * 2);
    --spacer-5: calc( var(--spacer) * 3);
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	--ctnr-w-px: 540px;
    --sctn-spacing: calc(1.525rem + 3.3vw);
	--transition: ease-in 0.2s;
	--logo-maxw: 200px;
	--angle-ht: 10.26041666vw;
	--shadow-edge-ht: 31px;
    --hero-proportion: 0.42575757;
	--sctn-hdr-mb: calc(1.375rem + 1.5vw);
	--img-radii: 0.625rem; /* 10px */
}

@media (min-width: 768px)
{
	:root 
	{
		--cntr-w-px: 720px;
		--hero-minht: 368px;
		--logo-maxw: 250px;
	}
}

@media (min-width: 992px)
{
	:root 
	{
		--cntr-w-px: 960px;
		--hero-minht: 490px;
	}
}

@media (min-width: 1200px)
{
	:root 
	{
		--sctn-spacing: 3rem; /* 4rem */
        --cntr-w-px: 1140px;
		--hero-minht: 582px;
		--sctn-hdr-mb: var(--sctn-spacing);
	}
} 

@media (min-width: 1400px)
{
	:root 
	{
		--cntr-w-px: 1320px;
		--hero-minht: 674px;
	}
} 

/*!
 * Bootstrap v4.5.2 + mild v5.1.3 updates (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 *
 * grid XXL addition for breakpoint at 
 *
 */

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl
{
	width: 100%;
	/* removed here since BB nests full-width sections INSIDE .container SMH */
	margin-right: auto;
	margin-left: auto;
}

.w-48p 
{
	width: 48%;
}

.mw-48p 
{
	max-width: 48%;
}

.mw-50p 
{
	max-width: 50%;
}

.mw-100p 
{
	max-width: 100%;
}

.mw-800 
{
	max-width: 800px;
}

.mw-1000 
{
	max-width: 1000px;
}

.mw-1200 
{
	max-width: 1200px;
}

.center-col 
{
	float: none;
	margin-left: auto;
	margin-right: auto;
}

.fl-row-fixed-width 
{
	max-width: var(--cntr-w-px);
	transition: max-width var(--transition);
}

/* bb sets max width on this with .fl-row-content.fl-row-fixed-width - therefore it is roughly equivalent to .container, parent .fl-row-content-wrap applies BB set bgcolors and images */
.fl-row-content 
{
	padding-right: var(--bs-gutter-x, .75rem);
	padding-left: var(--bs-gutter-x, .75rem);
}

/* revised gutter dimensions - match BS5 */
.row
{
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
}

.fl-col-group /* let's say this is .row */
{
	margin-top: calc(-1 * var(--bs-gutter-y));
	margin-right: calc(-0.5 * var(--bs-gutter-x));
	margin-left: calc(-0.5 * var(--bs-gutter-x));
}

.fl-col-group-equal-height 
{
	width: unset;
}

.row > *
{
	max-width: 100%;
}

.fl-col-group > [class*="fl-col"] 
{
	margin-top: var(--bs-gutter-y);
	padding-right: calc(var(--bs-gutter-x) * 0.5);
	padding-left: calc(var(--bs-gutter-x) * 0.5);
}

.no-gutters,
.no-gutters .fl-col-group
{
	margin-right: 0;
	margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"],
.no-gutters .fl-col-group > [class*="fl-col"]
{
	padding-right: 0;
	padding-left: 0;
}

.col-xxl-1,
.col-xxl-2,
.col-xxl-3,
.col-xxl-4,
.col-xxl-5,
.col-xxl-6,
.col-xxl-7,
.col-xxl-8,
.col-xxl-9,
.col-xxl-10,
.col-xxl-11,
.col-xxl-12,
.col-xxl,
.col-xxl-auto
{
	position: relative;
	width: 100%;
}

@media (min-width: 1400px)
{
	.col-xxl
	{
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-ms-flex-positive: 1;
		flex-grow: 1;
		max-width: 100%;
	}

	.row-cols-xxl-1 > *
	{
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}

	.row-cols-xxl-2 > *
	{
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}

	.row-cols-xxl-3 > *
	{
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}

	.row-cols-xxl-4 > *
	{
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}

	.row-cols-xxl-5 > *
	{
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		max-width: 20%;
	}

	.row-cols-xxl-6 > *
	{
		-ms-flex: 0 0 16.666667%;
		flex: 0 0 16.666667%;
		max-width: 16.666667%;
	}

	.col-xxl-auto
	{
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: auto;
		max-width: 100%;
	}

	.col-xxl-1
	{
		-ms-flex: 0 0 8.333333%;
		flex: 0 0 8.333333%;
		max-width: 8.333333%;
	}

	.col-xxl-2
	{
		-ms-flex: 0 0 16.666667%;
		flex: 0 0 16.666667%;
		max-width: 16.666667%;
	}

	.col-xxl-3
	{
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}

	.col-xxl-4
	{
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}

	.col-xxl-5
	{
		-ms-flex: 0 0 41.666667%;
		flex: 0 0 41.666667%;
		max-width: 41.666667%;
	}

	.col-xxl-6
	{
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}

	.col-xxl-7
	{
		-ms-flex: 0 0 58.333333%;
		flex: 0 0 58.333333%;
		max-width: 58.333333%;
	}

	.col-xxl-8
	{
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}

	.col-xxl-9
	{
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		max-width: 75%;
	}

	.col-xxl-10
	{
		-ms-flex: 0 0 83.333333%;
		flex: 0 0 83.333333%;
		max-width: 83.333333%;
	}

	.col-xxl-11
	{
		-ms-flex: 0 0 91.666667%;
		flex: 0 0 91.666667%;
		max-width: 91.666667%;
	}

	.col-xxl-12
	{
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}

	.order-xxl-first
	{
		-ms-flex-order: -1;
		order: -1;
	}

	.order-xxl-last
	{
		-ms-flex-order: 13;
		order: 13;
	}

	.order-xxl-0
	{
		-ms-flex-order: 0;
		order: 0;
	}

	.order-xxl-1
	{
		-ms-flex-order: 1;
		order: 1;
	}

	.order-xxl-2 {
		-ms-flex-order: 2;
		order: 2;
	}

	.order-xxl-3
	{
		-ms-flex-order: 3;
		order: 3;
	}

	.order-xxl-4
	{
		-ms-flex-order: 4;
		order: 4;
	}

	.order-xxl-5
	{
		-ms-flex-order: 5;
		order: 5;
	}

	.order-xxl-6
	{
		-ms-flex-order: 6;
		order: 6;
	}

	.order-xxl-7
	{
		-ms-flex-order: 7;
		order: 7;
	}

	.order-xxl-8
	{
		-ms-flex-order: 8;
		order: 8;
	}

	.order-xxl-9
	{
		-ms-flex-order: 9;
		order: 9;
	}

	.order-xxl-10
	{
		-ms-flex-order: 10;
		order: 10;
	}

	.order-xxl-11
	{
		-ms-flex-order: 11;
		order: 11;
	}

	.order-xxl-12
	{
		-ms-flex-order: 12;
		order: 12;
	}

	.offset-xxl-0
	{
		margin-left: 0;
	}

	.offset-xxl-1
	{
		margin-left: 8.333333%;
	}

	.offset-xxl-2
	{
		margin-left: 16.666667%;
	}

	.offset-xxl-3
	{
		margin-left: 25%;
	}

	.offset-xxl-4
	{
		margin-left: 33.333333%;
	}

	.offset-xxl-5
	{
		margin-left: 41.666667%;
	}

	.offset-xxl-6
	{
		margin-left: 50%;
	}

	.offset-xxl-7
	{
		margin-left: 58.333333%;
	}

	.offset-xxl-8
	{
		margin-left: 66.666667%;
	}

	.offset-xxl-9
	{
		margin-left: 75%;
	}

	.offset-xxl-10
	{
		margin-left: 83.333333%;
	}

	.offset-xxl-11
	{
		margin-left: 91.666667%;
	}
}

/* END BS5 upgrades ====================== */


/* START Beaver Builder flex grid enhancements */
.cg-jc-center .fl-col-group
{
	justify-content: center;
	display: flex;
    flex-wrap: wrap;
}

.cg-jc-center .fl-col-group .fl-col 
{
	float: none;
}

[class*='col-cc-'] 
{
	float: none;
	display: flex;
}

.col-cc-6 .fl-col-content
{
	max-width: calc( var(--cntr-w-px) * 0.5);
}

.cg-dflex .fl-col-group 
{
	display: flex;
	flex-wrap: wrap;
}

.col-ai-end
{
	align-items: flex-end;
}

@media (max-width: 767px) 
{
	.col-smo-mx-auto 
	{
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

@media (min-width: 992px)
{
	.col-cc-lg-6 .fl-col-content
	{
		max-width: calc( var(--cntr-w-px) * 0.5);
	}
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto 
{
	width: 100% !important;
}

@media (min-width: 576px) 
{
	.col-sm-6,
	.cols-sm-6 .fl-col 
	{
		max-width: 50% !important;
		flex: 0 0 50% !important;
	}
}

@media (min-width: 768px)
{
    .cg-md-d-flex .fl-col-group,
	.cg-md-dflex .fl-col-group 
	{
		display: flex;
		flex-wrap: wrap;
	}

	.cg-md-jc-center .fl-col-group
	{
		justify-content: center !important;
	}

	.cg-md-jc-end .fl-col-group
	{
		justify-content: flex-end !important;
	}

	.cg-md-d-flex .fl-col 
	{
		float: none;
	}
	
	.cg2-md-dflex .fl-row-content > .fl-col-group:nth-child(2) 
	{
		display: flex;
	}
	
	.col-md-7
	{
		flex: 0 0 58.333333% !important;
		max-width: 58.333333% !important;
	}

	.col-md-6,
	.cols-md-6 .fl-col 
	{
		max-width: 50% !important;
		flex: 0 0 50% !important;
	}

	.col-md-4,
	.cols-md-4 .fl-col 
	{
		max-width: 33.33333% !important;
		flex: 0 0 33.33333% !important;
	}

	.col-md-3,
	.cols-md-3 .fl-col 
	{
		max-width: 25% !important;
		flex: 0 0 25% !important;
	}

	/* do a bunch of flex stuff to a section for 100% col height */
	.flex-md-cols.fl-row:before,
	.flex-md-cols.fl-row:after,
	.flex-md-cols .fl-col-group:before,
	.flex-md-cols .fl-col-group:after,
	.flex-md-cols .fl-row-content:after
	{
		display: none;
	}

	.flex-md-cols > .fl-row-content-wrap
	{
		display: flex;
		flex-wrap: wrap;
	}

	.flex-md-cols  > .fl-row-content-wrap > .fl-row-content 
	{
		width: 100%;
		display: flex;
	}

	.flex-md-cols  > .fl-row-content-wrap > .fl-row-content:before 
	{
		display: none;
	}

	.flex-md-cols  > .fl-row-content-wrap > .fl-row-content > .fl-col-group
	{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}

	.flex-md-cols  > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col 
	{
		float: unset;
		display: flex;
	}

	.flex-md-cols  > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col > .fl-col-content 
	{
		display: flex;
		flex-direction: column;
	}

	.cc-md-dflex > .fl-col-content
	{
		display: flex;
	}

	.cc-md-fd-row > .fl-col-content 
	{
		flex-direction: row;
	}

	.cc-md-ai-center > .fl-col-content 
	{
		align-items: center;
	}

	.flex-md-order-last 
	{
		order: 12;
	}
}

@media (min-width: 992px)
{
	.cc-lg-dflex > .fl-col-content
	{
		display: flex;
	}

	.cc-lg-fd-row > .fl-col-content 
	{
		flex-direction: row;
	}

	.cc-lg-ai-center > .fl-col-content 
	{
		align-items: center;
	}

	.flex-lg-order-last 
	{
		order: 12;
	}
	
	.cg-lg-dflex .fl-col-group 
	{
		display: flex;
		flex-wrap: wrap;
	}
	
	.cg2-lg-dflex .fl-row-content > .fl-col-group:nth-child(2) 
	{
		display: flex;
		flex-wrap: wrap;
	}

	.col-lg-6,
	.cols-lg-6 .fl-col 
	{
		max-width: 50% !important;
		flex: 0 0 50%;
	}

	.col-lg-4,
	.cols-lg-4 .fl-col 
	{
		max-width: 33.33333% !important;
		flex: 0 0 33.33333% !important;
	}

	.col-lg-3,
	.cols-lg-3 .fl-col 
	{
		max-width: 25% !important;
		flex: 0 0 25% !important;
	}
}

@media (min-width: 1200px)
{
	.col-xl-9,
	.cols-xl-9 .fl-col 
	{
		max-width: 75% !important;
		flex: 0 0 75%;
	}
	
	.col-xl-6,
	.cols-xl-6 .fl-col 
	{
		max-width: 50% !important;
		flex: 0 0 50%;
	}

	.col-xl-4,
	.cols-xl-4 .fl-col 
	{
		max-width: 33.33333% !important;
		flex: 0 0 33.33333% !important;
	}

	.col-xl-3,
	.cols-xl-3 .fl-col 
	{
		max-width: 25% !important;
		flex: 0 0 25% !important;
	}
}

@media (min-width: 1400px)
{
	.col-xxl-6,
	.cols-xxl-6 .fl-col 
	{
		max-width: 50% !important;
		flex: 0 0 50%;
	}

	.col-xxl-4,
	.cols-xxl-4 .fl-col 
	{
		max-width: 33.33333% !important;
		flex: 0 0 33.33333% !important;
	}

	.col-xxl-3,
	.cols-xxl-3 .fl-col 
	{
		max-width: 25% !important;
		flex: 0 0 25% !important;
	}

	.pl-xl-6 
	{
		padding-left: calc( var(--spacer) * 6) !important;
	}
}
/* END beaver builder flex grid enhancements */



/* START typo ============================ */
.strong,
.strong .fl-heading 
{
	font-weight: 700;
}

.text-left,
.text-left > li,
.text-left .fl-heading 
{
	text-align: left !important;
}

.text-center .fl-menu-horizontal 
{
	text-align: center;
}

@media (min-width: 992px) 
{
	.text-lg-right .fl-menu-horizontal 
	{
		text-align: right;
	}
}

.h3,
.h3 .fl-heading 
{
	font-size: var(--h3-fsz);
}

.h3 .fl-heading 
{
	font-weight: 700;
}

.h4,
.h4 .fl-heading  
{
	font-size: var(--h4-fsz);
}

.h4 .fl-heading  
{
	font-weight: 700;
}

.display-1 .fl-heading,
.display-1.callout-title .fl-heading 
{
	font-size: calc(1.625rem + 4.5vw);
}

.display-2 .fl-heading,
.display-2.callout-title .fl-heading  
{
	font-size: calc(1.575rem + 3.9vw);
}

.display-3 .fl-heading,
.display-3.callout-title .fl-heading  
{
	font-size: calc(1.525rem + 3.3vw);
}

.display-4 .fl-heading,
.display-4.callout-title .fl-heading  
{
	font-size: calc(1.475rem + 2.7vw);
}

.display-5-self,
.display-5 .fl-heading,
.display-5.callout-title .fl-heading  
{
	font-size: calc(1.425rem + 2.1vw);
}

.display-6-self,
.display-6 .fl-heading,
.display-6.callout-title .fl-heading  
{
	font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) 
{
	.display-1 .fl-heading,
	.display-1.callout-title .fl-heading  
	{
		font-size: 5rem;
	}

	.display-2 .fl-heading,
	.display-2.callout-title .fl-heading  
	{
		font-size: 4rem;
	}

	.display-3 .fl-heading,
	.display-3.callout-title .fl-heading  
	{
		font-size: 3rem;
	}

	.display-4 .fl-heading,
	.display-4.callout-title .fl-heading  
	{
		font-size: 2rem;
	}

	.display-5-self,
	.display-5 .fl-heading,
	.display-5.callout-title .fl-heading  
	{
		font-size: 3rem;
	}
	
	.display-6-self,
	.display-6 .fl-heading,
	.display-6.callout-title .fl-heading  
	{
		font-size: 2rem;
	}
}

.fw-300 
{
	font-weight: 300;
}

#page-subtitle .fl-heading,
.breadcrumbs 
{
	color: var(--coolgray500);
	margin-bottom: 0.5rem;
	text-transform: uppercase;
	font-size: calc( var(--body-fsz) * 0.7);
}

.breadcrumbs a 
{
	color: var(--coolgray500);
	transition: color var(--transition);
}

.breadcrumbs a:hover 
{
	color: var(--primary-color);
}

.breadcrumbs p 
{
	margin-bottom: 0;
}

#page-title .fl-heading 
{
	font-weight: 900;
	line-height: 1.1;
	margin-bottom: 0.75rem !important;
}

.sctn-hdr 
{
	text-align: center;
	position: relative;
	max-width: 992px;
	padding-bottom: var(--spacer);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: var(--sctn-hdr-mb);
}

.sctn-hdr:after
{
    content: "";
    display: block;
    height: 5px;
    width: 100px;
    background-color: var(--secondary-color);
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.orange-separator 
{
	position: relative;
}

.orange-separator:after 
{
	content: "";
    display: block;
    height: 5px;
    width: 100px;
    background-color: var(--secondary-color);
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.orange-separator-left:after 
{
	left: 0;
	transform: unset;
}

.sctn-hdr-left 
{
	text-align: left;
}

.sctn-hdr-left:after 
{
	left: 0;
	transform: unset;
}

.text-secondary,
.text-secondary .fl-heading
{
	color: var(--secondary-color) !important;
}

.text-secondary a 
{
	color: var(--secondary-color);
}

.text-secondary a:hover 
{
	color: var(--secondary-color);
}

.text-orange,
a.text-orange,
a.text-orange:hover,
.text-orange .fl-heading 
{
	color: var(--orange);
}

.text-olive,
.text-olive .fl-heading 
{
	color: var(--olive);
}

.text-coolgray500,
.text-coolgray500 .fl-heading
{
	color: var(--coolgray500);
}

.text-white,
.text-white .fl-heading 
{
	color: var(--white);
}

a.text-white,
a.text-white:hover 
{
	color: var(--white);
}

.list-align-left 
{
	padding-left: 1.125rem;
}

.list-li-mb-3 > li:not(:last-child) 
{
	margin-bottom: var(--spacer-3);
}

.list-li-mb-4 > li:not(:last-child) 
{
	margin-bottom: var(--spacer-4);
}

ul > li > ul.list-align-left 
{
	padding-left: 0.5rem;
}

.bullets-dash > li
{
	list-style-type: "-";
	padding-left: 0.5rem;
}

.tt-uc,
.tt-uc .fl-heading 
{
	text-transform: uppercase;
}

.tt-unset,
.tt-unset .fl-heading 
{
	text-transform: unset !important;
}

.big-hdr .fl-heading 
{
	font-size: 200%;
}

.fl-hdgs-strong .fl-heading
{
	font-weight: 600;
}

.fl-hdgs-mt-sctn .fl-module-heading:not(:first-child) 
{
	margin-top: var(--sctn-spacing);
}

.fl-hdgs-mt-sctn-half .fl-module-heading:not(:first-child) 
{
	margin-top: calc( var(--sctn-spacing) * 0.5);
}

.fl-hdgs-mt-4 .fl-module-heading:not(:first-child) 
{
	margin-top: var(--spacer-4);
}

.fl-hdgs-mt-3 .fl-module-heading:not(:first-child) 
{
	margin-top: var(--spacer-3);
}

.fl-hdgs-mb-2 .fl-module-heading 
{
	margin-bottom: var(--spacer-2);
}

.fl-hdgs-mb-1 .fl-module-heading 
{
	margin-bottom: var(--spacer-1);
}

.link-ul 
{
	text-decoration: underline !important;
}

.blockquote cite 
{
	font-style: normal;
}

.fl-rich-text > .blockquote:only-child 
{
	margin-bottom: 0;
}


/* END typo ============================ */



/* START buttons ========================= */
.fl-page a.fl-button,
.fl-page a.fl-button *
{
	transition: background-color var(--transition), color var(--transition);
}

.fl-page .btn-sg-secondary a.fl-button
{
	border-color: var(--white);
	background-color: var(--secondary-color);
}

.fl-page .btn-sg-secondary a.fl-button *
{
	color: var(--white);
}

.fl-page .btn-sg-secondary a.fl-button:hover
{
	border-color: var(--secondary-color);
	background-color: var(--white);
}

.fl-page .btn-sg-secondary a.fl-button:hover *
{
	color: var(--secondary-color);
}

.fl-page .btn-text-link a.fl-button
{
	background-color: unset;
	border: unset;
	border-radius: unset;
	padding: unset;
	border-bottom: 1px solid var(--accent-color-hover);
	transition: border-bottom-color var(--transition);
}

.fl-page .btn-text-link a.fl-button:hover
{
	color: var(--primary-color);
	border-bottom-color: var(--primary-color);
}

/* END buttons =========================== */


.li-mb-3 li:not(:last-child)
{
	margin-bottom: var(--spacer-3);
}

.mb-45 
{
	margin-bottom: var(--spacer-45) !important;
}

@media (min-width: 768px) 
{
	.mb-md-45 
	{
		margin-bottom: var(--spacer-45) !important;
	}
}

@media (min-width: 992px) 
{
	.mb-lg-45 
	{
		margin-bottom: var(--spacer-45) !important;
	}
}

.flh-mb-0 .fl-heading 
{
	margin-bottom: 0 !important;
}

.text-cols-2 
{
	column-width: 50%;
	column-count: 2;
	-webkit-columns: 50% 2;
	-moz-columns: 50% 2;
}

@media (min-width: 768px) 
{
	.text-cols-md-2 
	{
		column-width: 50%;
		column-count: 2;
		-webkit-columns: 50% 2;
  		-moz-columns: 50% 2;
	}
}

@media (min-width: 992px) 
{
	.text-cols-lg-2 
	{
		column-width: 50%;
		column-count: 2;
		-webkit-columns: 50% 2;
  		-moz-columns: 50% 2;
	}
}

.lc-mb-0 > :last-child,
.lc-rt-mb-0 .fl-rich-text > :last-child 
{
	margin-bottom: 0;
}


/* START images ========================== */
.rounded-sm-img img
{
	border-radius: 0.2rem !important;
}
  
.rounded-img img
{
	border-radius: 0.25rem !important;
}

.rounded-lg-img img
{
	border-radius: 0.3rem !important;
}

.rounded-xxl-img img
{
	border-radius: 0.625rem !important;
}

.img-caption-overlay .fl-photo-caption 
{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	color: var(--white);
	font-size: calc( var(--h2-fsz) * 0.8);
	line-height: 1;
	overflow: visible;
	text-align: center;
	width: 100%;
}

.img-caption-overlay .fl-photo-caption-below 
{
	padding: 0;
}

/* image galleries */

.gallery-img-mw-90 img,
.fl-post .gallery-img-mw-90 img[class*="wp-image-"]
{
	max-width: 90px;
}

.gallery-img-w-90 img,
.fl-post .gallery-img-w-90 img[class*="wp-image-"]
{
	width: 90px;
	height: auto;
}

.gallery-img-mh-40 img,
.fl-post .gallery-img-mh-40 img[class*="wp-image-"]
{
	max-height: 40px;
}

.gallery-img-h-40 img,
.fl-post .gallery-img-h-40 img[class*="wp-image-"]
{
	height: 40px !important;
	width: auto !important;
}

/* cancel out the absolute positioning */
.gallery-flx .fl-gallery
{
	display: flex;
	height: auto !important;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

.gallery-flx .fl-gallery-item
{
	position: unset !important;
	top: unset !important;
	left: unset !important;
	min-height: unset !important;
	width: unset !important;
}

.gallery-flx .fl-photo 
{
	line-height: unset;
	padding: var(--spacer);
}

.img-abs-r 
{
	position: absolute;
	right: 0;
}

@media (min-width: 768px) 
{
	.img-md-abs-r 
	{
		position: absolute;
		right: 0;
	}
}

@media (min-width: 768px) and (max-width: 991px) 
{
	.img-mdo-mw-50 img
	{
		max-width: 50% !important;
	}
}

@media (min-width: 992px) 
{
	.img-lg-abs-r 
	{
		position: absolute;
		right: 0;
	}
}

.caption 
{
	text-transform: uppercase;
	display: block;
	text-align: center;
	font-size: 80%;
	color: var(--coolgray450);
	margin-top: 1rem;
}

/* END images ============================ */
 


/* START bg stuff --------------------- */
.bgc-olive,
.bgc-rc-olive > .fl-row-content-wrap > .fl-row-content 
{
    background-color: var(--olive);
}

.bgc-olive100,
.bgc-rc-olive100 > .fl-row-content-wrap > .fl-row-content 
{
    background-color: var(--olive100);
}

.bgc-coolgray075,
.bgc-rc-coolgray075 > .fl-row-content-wrap > .fl-row-content 
{
	background-color: var(--coolgray075);
}

.bgc-coolgray200,
.bgc-rc-coolgray200 > .fl-row-content-wrap > .fl-row-content 
{
	background-color: #c6d1d6;
}

.bgc-coolgray250,
.bgc-rc-coolgray250 > .fl-row-content-wrap > .fl-row-content 
{
	background-color: #bbc7cd;
}

.bgc-rc-coolgray650,
.bgc-rc-coolgray650 > .fl-row-content-wrap > .fl-row-content,
.bgc-cc-coolgray650 .fl-col-content
{
	background-color: var(--coolgray650);
}

.bgg-top-coolgray150,
.bgg-rc-top-coolgray150 > .fl-row-content-wrap > .fl-row-content
{
    background: linear-gradient(180deg, rgba(192,204,209,1) 0%, rgba(192,204,209,0) 50%);
}

.bgg-btm-coolgray050,
.bgg-rc-btm-coolgray050 > .fl-row-content-wrap > .fl-row-content 
{
    background: linear-gradient(180deg, rgba(242,244,245,0) 50%, rgba(242,244,245,1) 100%);
}

.bgg-coolgray050-olive,
.bgg-rc-coolgray050-olive > .fl-row-content-wrap > .fl-row-content 
{
	background: linear-gradient(180deg, rgba(204,214,218,0.5) 0%, rgba(255,255,255,0) 50%, rgba(163,164,102,0.3) 100%);
}

.bgg-top-coolgray050,
.bgg-rc-top-coolgray050 > .fl-row-content-wrap > .fl-row-content
{
    background: linear-gradient(180deg, rgba(242,244,245,1) 0%, rgba(242,244,245,0) 50%);
}

.bgg-top-olive,
.bgg-rc-top-olive > .fl-row-content-wrap > .fl-row-content 
{
    background: linear-gradient(180deg, rgba(163,164,102,0.5) 0%, rgba(163,164,102,0) 50%);
}

.bgg-btm-olive,
.bgg-rc-btm-olive > .fl-row-content-wrap > .fl-row-content 
{
    background: linear-gradient(180deg, rgba(163,164,102,0) 50%, rgba(163,164,102,0.5) 100%);
}

.bgp-wavedots,
.bgp-rc-wavedots > .fl-row-content-wrap > .fl-row-content
{
    position: relative;
    z-index: 0;
}

.bgp-wavedots:before,
.bgp-rc-wavedots > .fl-row-content-wrap > .fl-row-content:before
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('imgs/bgp-wavedots_35.svg');
    background-size: 100% auto;
    background-position: bottom left;
	background-repeat: no-repeat;
    z-index: 0;
	display: block;
	/* opacity: 0.35; */
}

.bgp-sctn-wavedots 
{
	background-image: url('imgs/bgp-wavedots_35.svg');
    background-size: 100% auto;
    background-position: bottom left;
	background-repeat: no-repeat;
}

.bgp-wavedots > .container,
.bgp-rc-wavedots > .fl-row-content-wrap > .fl-row-content > .fl-col-group
{
    position: relative;
    z-index: 1;
}

.bgp-triangles,
.bgp-rc-triangles > .fl-row-content-wrap > .fl-row-content 
{
    position: relative;
    z-index: 0;
}

.bgp-triangles:after,
.bgp-rc-triangles > .fl-row-content-wrap > .fl-row-content:after
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('imgs/bgp-triangles.png');
    z-index: 0;
	display: block;
}

.bgp-rc-triangles[class*='bgg-rc-top-'] > .fl-row-content-wrap > .fl-row-content:after
{
	bottom: 50%;
}

.bgp-triangles > .row,
.bgp-rc-triangles > .fl-row-content-wrap > .fl-row-content > .fl-col-group
{
    position: relative;
    z-index: 1;
}

.bg-olive100-triangles,
.bg-rc-olive100-triangles > .fl-row-content-wrap > .fl-row-content
{
    background: var(--olive100) url('imgs/bgp-triangles.png');
}

.top-angle 
{
    position: relative;
    padding-top: var(--angle-ht);
}

.fl-row.top-angle:before
{
	display: block;
}

.top-angle::before 
{
    content: "";
    position: absolute;
    top: -2px;
    left: 0;
    right: 0;
    min-height: var(--angle-ht);
    /* angle dims: 1920 x 197 */
    /* ht = calc(vw * 0.1026041666) */
    background: url('imgs/bg-angle-top.svg') no-repeat top center;
    background-size: 100% auto;
	display: block;
}

.top-angle-green::before 
{
    background-image: url('imgs/bg-angle-top_green.svg');
}

.btm-angle
{
    position: relative;
    padding-bottom: var(--angle-ht);
}

.btm-angle::after
{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    min-height: var(--angle-ht);
    /* angle dims: 1920 x 197 */
    /* ht = calc(vw * 0.1026041666) */
    background-image: url('imgs/bg-angle-btm.svg');
    background-repeat: no-repeat;
    background-position: bottom -2px center;
    background-size: 100% auto;
	display: block;
}

.fl-row.btm-angle:after
{
	display: block;
}

.btm-shadow-edge 
{
	position: relative;
}

.sctn-pb.btm-shadow-edge 
{
	padding-bottom: calc( var(--sctn-spacing) + var(--shadow-edge-ht))
}

.btm-shadow-edge::after 
{
	content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    min-height: var(--shadow-edge-ht);
	width: auto;
    background-image: url('imgs/shadow-edge_min.png');
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: auto 100%;
	display: block;
	opacity: 0.35;
}

/* END bg stuff ----------------------- */


/* START sections ======================== */
.sctn-my,
.sctn-rc-my > .fl-row-content-wrap > .fl-row-content 
{
	margin-top: var(--sctn-spacing) !important;
	margin-bottom: var(--sctn-spacing) !important;
	transition: margin-top var(--transition), margin-bottom var(--transition);
}

.sctn-mt,
.sctn-rc-mt > .fl-row-content-wrap > .fl-row-content  
{
	margin-top: var(--sctn-spacing) !important;
	transition: margin-top var(--transition);
}

.sctn-mt-4,
.sctn-rc-mt-4 > .fl-row-content-wrap > .fl-row-content  
{
	margin-top: calc( var(--sctn-spacing) * 1.5) !important;
	transition: margin-top var(--transition);
}

.sctn-mt-45,
.sctn-rc-mt-45 > .fl-row-content-wrap > .fl-row-content  
{
	margin-top: calc( var(--sctn-spacing) * 2) !important;
	transition: margin-top var(--transition);
}

.sctn-mt-half,
.sctn-rc-mt-half > .fl-row-content-wrap > .fl-row-content  
{
	margin-top: calc( var(--sctn-spacing) / 2) !important;
	transition: margin-top var(--transition);
}

@media (min-width: 1200px)
{
	.sctn-mt-xl-half,
	.sctn-rc-mt-xl-half > .fl-row-content-wrap > .fl-row-content  
	{
		margin-top: calc( var(--sctn-spacing) / 2) !important;
		transition: margin-top var(--transition);
	}
}

.sctn-mb,
.sctn-rc-mb > .fl-row-content-wrap > .fl-row-content  
{
	margin-bottom: var(--sctn-spacing) !important;
	transition: margin-bottom var(--transition);
}

.sctn-mb-half,
.sctn-rc-mb-half > .fl-row-content-wrap > .fl-row-content  
{
	margin-bottom: calc( var(--sctn-spacing) / 2) !important;
	transition: margin-bottom var(--transition);
}

.sctn-py,
.sctn-rc-py > .fl-row-content-wrap > .fl-row-content  
{
	padding-top: var(--sctn-spacing);
	padding-bottom: var(--sctn-spacing);
	transition: padding-top var(--transition), padding-bottom var(--transition);
}

.sctn-pt,
.sctn-rc-pt > .fl-row-content-wrap > .fl-row-content  
{
	padding-top: var(--sctn-spacing);
	transition: padding-top var(--transition);
}

.sctn-pb,
.sctn-rc-pb > .fl-row-content-wrap > .fl-row-content  
{
	padding-bottom: var(--sctn-spacing);
	transition: padding-bottom var(--transition);
}

/* dvdr = divider - row level */
.cg-01-dvdr .fl-col-group:first-child,
.cg-02-dvdr .fl-col-group:nth-child(2),
.cg-03-dvdr .fl-col-group:nth-child(3)
{
	border-bottom-width: 3px;
	border-bottom-style: solid;
	border-bottom-color: var(--coolgray450);
}

.dvdr-coolgray450 .fl-col-group 
{
	border-bottom-color: var(--coolgray450);
}

/* END sections ========================== */



/* START callouts ======================== */
.callout,
.callout-cc > .fl-col-content 
{
    padding: var(--spacer-45) !important;
    background-color: var(--primary-color);
    border: 5px solid var(--white);
    color: var(--white);
    box-shadow: var(--drop-shadow);
}

.callout-cc > .fl-col-content a 
{
	color: var(--white);
	text-decoration: underline;
}

.callout-cc > .fl-col-content a.text-orange 
{
	color: var(--orange);
	transition: color var(--transition);
}

.callout-cc > .fl-col-content a:hover 
{
	color: var(--accent-color-hover);
	text-decoration: underline;
}

.callout-cc > .fl-col-content a.text-orange:hover 
{
	color: var(--white);
}

.fl-page .callout-cc .btn-text-link a.fl-button:hover
{
	color: var(--white);
	border-bottom-color: var(--white);
}

.fl-page [class*="callout-cc"] div:not(.btn-text-link) .fl-button:hover 
{
	border-color: var(--white);
	transition: border-color var(--transition), background-color var(--transition), color var(--transition);
}

.fcc-p-0 > .fl-col-content 
{
	padding: 0 !important;
}

@media (max-width: 767px) 
{
	.callout,
	.callout-cc > .fl-col-content 
	{
		padding: var(--spacer-4) !important;
	}
	
	.fl-col.callout-cc 
	{
		float: none;
	}
	
	.fl-col.callout-cc:not(:last-child) 
	{
		margin-bottom: var(--spacer-4);
	}
}

.callout-cc .callout-img 
{
	margin-bottom: var(--spacer-4);
}

.callout-title .fl-heading 
{
	font-size: calc( var(--body-fsz) * 1.1);
}

.callout-title:only-child .fl-heading 
{
	font-size: 2rem;
}

.callout-title:not(:last-child) .fl-heading
{
	margin-bottom: var(--spacer-2) !important;
}

.callout-title-brdr .fl-heading,
.callout-title-brdr-white .fl-heading
{
	border-bottom-width: 3px;
	border-bottom-style: solid;
	border-bottom-color: var(--olive);
}

.callout-title-brdr-white .fl-heading
{
	border-bottom-color: var(--white);
}

.callout-subtitle .fl-heading
{
	font-size: calc( var(--body-fsz) * .95);
}

.callout-cc > .fl-col-content .fl-module:only-child .fl-heading 
{
	margin-bottom: 0 !important;
}

.callout-cc > .fl-col-content .big-hdr .fl-heading 
{
	font-size: 200%;
}

.callout-cc [class*="display-"] .fl-heading 
{
	line-height: 1.1;
}

.callout > ol,
.callout > ul:not(.list-inline),
.callout-cc .fl-rich-text > ul:not(.list-inline)
{
    padding-left: 1.125rem;
}

.callout-cc .fl-rich-text > ol
{
    padding-left: 1.5rem; /* 1.125 */
}

.callout-cc .fl-rich-text > ul.list-unstyled,
.callout-cc .fl-rich-text > ol.list-unstyled
{
    padding-left: 0;
}

.callout-text 
{
	font-size: 80%;
}

@media (min-width: 992px) 
{
	.callout-text-sm 
	{
		font-size: 70%;
	}
}

.callout .fl-rich-text > :last-child,
.callout-cc .fl-rich-text > :last-child
{
	margin-bottom: 0;
}

.callout-olive,
.callout-cc-olive > .fl-col-content
{
    background-color: var(--olive);
    color: var(--primary-color);
}

.fl-page .callout-cc-olive div:not(.btn-text-link) a.fl-button
{
	color: var(--accent-color-hover);
	text-decoration: none;
}

.fl-page .callout-cc-olive div:not(.btn-text-link) a.fl-button:hover 
{
	color: var(--white);
}

.callout-coolgray500,
.callout-cc-coolgray500 > .fl-col-content 
{
	background-color: var(--coolgray500);
}

.callout-orange,
.callout-cc-orange > .fl-col-content
{
    background-color: var(--orange);
    color: var(--white);
}

.source 
{
	color: var(--coolgray250);
	font-size: 65%;
	margin-top: auto;
	border-top: 2px solid var(--coolgray250);
	padding-top: 1rem;
}

/* END callouts ========================== */



/* START header ========================== */
/* default theme */
.fl-page-header 
{
	border-color: unset;
}

.fl-page-header .container 
{
	border-bottom: 10px solid var(--olive);
	max-width: var(--cntr-w-px);
	transition: max-width var(--transition);
}

/* header class heirarchy is different than main content area */
/* the below selector is also .container */
.fl-page-nav-toggle-visible-always .fl-page-header-wrap .fl-page-header-container, .fl-page-nav-toggle-visible-medium-mobile .fl-page-header-wrap .fl-page-header-container
{
	--px: calc(0.5 * var(--bs-gutter-x));
	padding-right: var(--px, .75rem);
	padding-left: var(--px, .75rem);
}

/* formerly #menu-primary-1, but the theme creates TWO versions, one for the static header and one for the header that follows during a scroll - this creates #menu-primary also, so -1 styling isn't assigned */
header.fl-page-header .menu a 
{
	transition: color var(--transition);
}

header.fl-page-header .menu > li.menu-item > a
{
	position: relative;
}

header.fl-page-header .menu > li.menu-item > a:after
{
	content: "";
	display: block;
	height: 3px;
	width: 55px;
	background-color: transparent;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	transition: background-color var(--transition);
}

header.fl-page-header .menu > li.menu-item-has-children.fl-mobile-sub-menu-open > a:after,
header.fl-page-header .menu > li.menu-item-has-children.fl-sub-menu-open > a:after
{
	background-color: var(--secondary-color);
}

header.fl-page-header .menu .sub-menu 
{
	border-top: unset;
	background-color: var(--coolgray050);
}

header.fl-page-header .menu .sub-menu > .nav-item
{
	border-color: transparent;
	border-bottom-width: unset;
}

header.fl-page-header .menu .sub-menu .nav-link,
header.fl-page-header .menu .sub-menu .nav-link:visited
{
	color: var(--coolgray500);
	transition: color var(--transition);
	text-align: center;
}

header.fl-page-header .menu .fl-sub-menu-open > .nav-link,
header.fl-page-header .menu .sub-menu .nav-link:hover,
header.fl-page-header .menu .sub-menu .nav-link:focus
{
	color: var(--secondary-color);
}

header.fl-page-header .menu .sub-menu > .nav-item:not(:last-child):after
{
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: linear-gradient(90deg, rgba(204,214,218,0) 20%, rgba(204,214,218,1) 45%, rgba(204,214,218,1) 55%, rgba(204,214,218,0) 80%);
}

@media (min-width: 768px) and (max-width: 991px) 
{
	.fl-page-nav-toggle-visible-medium-mobile .fl-page-header-wrap .fl-page-header-container 
	{

	}
}

@media (max-width: 991px)
{
	.fl-page-nav.navbar-expand-md .fl-page-nav-collapse 
	{
		border-top: unset;
	}
	
	.fl-page-nav-toggle-icon.fl-page-nav-toggle-visible-medium-mobile .fl-page-nav .navbar-toggle
	{
		top: 50px;
	}

	.fl-page-header.fl-page-nav-toggle-visible-medium-mobile .fl-page-nav-collapse ul.navbar-nav > li
	{
		border-color: transparent;
		border-bottom-width: unset;
	}

	.fl-page-header.fl-page-nav-toggle-visible-medium-mobile .fl-page-nav-collapse ul.navbar-nav > li:not(:last-child):after
	{
		content: "";
		display: block;
		height: 1px;
		width: 100%;
		background: linear-gradient(90deg, rgba(204,214,218,0) 20%, rgba(204,214,218,1) 45%, rgba(204,214,218,1) 55%, rgba(204,214,218,0) 80%);;
	}

	.fl-page-header.fl-page-nav-toggle-visible-medium-mobile .fl-page-nav-collapse ul.navbar-nav .nav-link 
	{
		text-align: center;
	}

	.fl-submenu-toggle .fl-page-nav-toggle-icon.fl-page-nav-toggle-visible-medium-mobile .fl-page-nav ul.navbar-nav li.menu-item-has-children > a 
	{
		padding-right: 15px;
	}

	.fl-page-nav-toggle-icon.fl-page-nav-toggle-visible-medium-mobile .fl-page-nav ul.sub-menu li a:before 
	{
		display: none;
	}
}


@media (min-width: 992px)
{
	.fl-page-nav-right .fl-page-header-wrap 
	{
		border-bottom: unset;
	}

	.fl-page-header .navbar-expand-md .fl-sub-menu-open .sub-menu
	{
		left: 50%;
		transform: translateX(-50%);
	}
}

.fl-page-header-primary .fl-logo-img 
{
	--w: var(--logo-maxw);
	width: var(--w);
}

/* END header ============================ */



/* START #hero =========================== */
#hero 
{
	color: var(--coolgray500);
}

#hero.bgg-illfix 
{
	background: linear-gradient(180deg, rgba(187,200,205,1) 99%, rgba(255,255,255,1) 99%);
}

#hero.bgg-coolgray > .fl-row-content-wrap
{
	position: relative;
	z-index: 1;
}

/* background gradient */
#hero.bgg-coolgray 
{
	background: radial-gradient(circle, rgba(128,153,162,0) 33%, rgba(128,153,162,0.5) 100%);
}

#hero > .fl-row-content-wrap 
{
	padding-top: var(--sctn-spacing);
	padding-bottom: var(--sctn-spacing);
	min-height: var(--hero-minht);
	transition: min-height var(--transition);
}

#hero.mh-rcw-unset > .fl-row-content-wrap
{
	min-height: unset;
}

.rcw-pb-0 > .fl-row-content-wrap,
#hero.rcw-pb-0 > .fl-row-content-wrap 
{
	padding-bottom: 0 !important;
}

@media (min-width: 992px) 
{
	.rcw-lg-pb-0 > .fl-row-content-wrap,
	#hero.rcw-lg-pb-0 > .fl-row-content-wrap 
	{
		padding-bottom: 0 !important;
	}
}

@media (min-width: 1200px) 
{
	.rcw-xl-pb-0 > .fl-row-content-wrap,
	#hero.rcw-xl-pb-0 > .fl-row-content-wrap 
	{
		padding-bottom: 0 !important;
	}
}

.post-template-default.single-post #hero > .fl-row-content-wrap,
.news-releases-template-default.single-news-releases #hero > .fl-row-content-wrap,
.white-papers-template-default.single-white-papers #hero > .fl-row-content-wrap,
.us-careers-template-default.single-us-careers #hero > .fl-row-content-wrap,
.india-careers-template-default.single-india-careers #hero > .fl-row-content-wrap
{
	min-height: unset;
}

@media (max-width: 767px) 
{
	#hero > .fl-row-content-wrap 
	{
		background-size: 150% auto;
	}
}

@media (min-width: 768px) and (max-width: 991px) 
{
	body:not(.single-post):not(.single-news-releases):not(.single-white-papers):not(.single-us-careers):not(.single-india-careers) #hero > .fl-row-content-wrap,
	{
		background-size: contain;
	}
}

#hero.item-hero 
{
	color: var(--white);
}

#hero.item-hero > .fl-row-content-wrap 
{
	position: relative;
	display: flex;
	min-height: unset;
	background-position: center center;
}

#hero.item-hero > .fl-row-content-wrap div 
{
	display: flex;
}

#hero.item-hero > .fl-row-content-wrap:before 
{
	background-color: rgba(51,92,108,0.6);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	z-index: 1;
}

#hero.item-hero .fl-heading 
{
	color: var(--white);
	position: relative;
	z-index: 2;
}

.hero-empty
{
	min-height: 300px;
	transition: min-height var(--transition);
}

.post-template-default.single-post #hero,
.news-releases-template-default.single-news-releases #hero,
.white-papers-template-default.single-white-papers #hero,
.us-careers-template-default.single-us-careers #hero,
.india-careers-template-default.single-india-careers #hero
{
	background: linear-gradient(180deg, rgba(192,204,209,1) 0%, rgba(192,204,209,0) 100%);
}

.post-template-default.single-post #hero .fl-row-content-wrap,
.news-releases-template-default.single-news-releases #hero .fl-row-content-wrap,
.white-papers-template-default.single-white-papers #hero .fl-row-content-wrap,
.us-careers-template-default.single-us-careers #hero .fl-row-content-wrap,
.india-careers-template-default.single-india-careers #hero .fl-row-content-wrap
{
    position: relative;
    padding-bottom: var(--angle-ht);
}

.post-template-default.single-post #hero .fl-row-content-wrap::after,
.news-releases-template-default.single-news-releases #hero .fl-row-content-wrap::after,
.white-papers-template-default.single-white-papers #hero .fl-row-content-wrap::after,
.us-careers-template-default.single-us-careers #hero .fl-row-content-wrap::after,
.india-careers-template-default.single-india-careers #hero .fl-row-content-wrap::after
{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    min-height: var(--angle-ht);
    /* angle dims: 1920 x 197 */
    /* ht = calc(vw * 0.1026041666) */
    background-image: url('imgs/bg-angle-btm.svg');
    background-repeat: no-repeat;
    background-position: bottom -1px center;
    background-size: 100% auto;
	display: block;

	top: 0;
	height: 100%;
}

/* .post-template-default.single-post #hero .fl-row-content-wrap::after,
.news-releases-template-default.single-news-releases #hero .fl-row-content-wrap::after,
.white-papers-template-default.single-white-papers #hero .fl-row-content-wrap::after
{
	top: 0;
	height: 100%;
	background-color: rgba(51,92,108,0.6);
} */


#hero .breadcrumbs 
{
	margin-bottom: 0;
}

#hero #page-title:first-child 
{
	margin-top: var(--sctn-spacing);
}

#hero .fl-col-content .fl-module-rich-text:last-child .fl-rich-text > *:last-child 
{
	margin-bottom: 0;
}

@media (min-width: 576px) 
{
	.hero-empty
	{
		min-height: 380px;
	}
}

@media (min-width: 768px) 
{
	#hero 
	{
		--bs-gutter-x: 3rem;
	}
	
	#hero.flex-md-cols > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col.hero-content > .fl-col-content
	{
		justify-content: space-between;
	}

	#hero.flex-md-cols > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col.hero-content > .fl-col-content > .fl-module:last-child 
	{
		margin-bottom: 3rem;
		transition: margin-bottom var(--transition);
	}

	.hero-empty
	{
		min-height: 280px;
	}
}

@media (max-width: 991px) 
{
	#hero .hero-content,
	#hero .hero-empty 
	{
		width: 100% !important;
	}
}

@media (min-width: 992px) 
{
	#hero 
	{
		--bs-gutter-x: 4rem; /* 3rem */
	}
	
	#hero.flex-lg-cols > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col.hero-content > .fl-col-content
	{
		justify-content: space-between;
	}

	#hero.flex-md-cols > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col.hero-content > .fl-col-content > .fl-module:last-child,
	#hero.flex-lg-cols > .fl-row-content-wrap > .fl-row-content > .fl-col-group > .fl-col.hero-content > .fl-col-content > .fl-module:last-child 
	{
		margin-bottom: 35%; /* 3rem */
		transition: margin-bottom var(--transition);
	}

	.hero-empty
	{
		min-height: unset;
	}
}

@media (min-width: 1200px) 
{
	#hero 
	{
		--bs-gutter-x: 5rem;
	}
}

/* END #hero ============================= */



/* START #intro ========================= */
#intro 
{
	text-align: center;
	color: var(--coolgray500);
}

#intro .fl-rich-text > :last-child
{
	margin-bottom: 0;
}
/* END #intro =========================== */



/* START #topic-search ================== */
#topic-search .fl-html
{
	display: flex;
	justify-content: center;
	align-items: center;
}

#topic-search .label 
{
	font-size: 80%;
}

#topic-search .searchandfilter ul 
{
	margin-bottom: 0;
}

#topic-search #ofpost_tag 
{
	background-color: var(--coolgray075);
	border: unset;
	border-radius: var(--btn-brdr-radius);
	color: var(--body-color);
	font-size: 90%;
	padding: 6px 12px;
}
/* END #topic-search ================== */


/* START Team cards (.team-cards) ======= */
.team-cards .fl-post-column
{
	padding-bottom: 0;
}

.team-cards .card 
{
	border: none;
	background: var(--coolgray650);
	color: var(--white);
	border-radius: 0;
	margin-bottom: var(--spacer-4);
}

.team-cards .card-title 
{
	margin-bottom: 0;
}

.team-cards .card-text 
{
	color: var(--coolgray250);
}

.team-cards .card-text:last-child 
{
	position: relative;
	padding-bottom: var(--spacer);
}

.team-cards .card-text:last-child:after 
{
	content: " ";
	position: absolute;
	left: 0;
	bottom: 0;
	right: 150px;
	height: 5px;
	background-color: var(--secondary-color);
}

.team-cards a,
.team-cards a:visited
{
	color: var(--white);
	transition: color var(--transition);
}

.team-cards a:hover,
.team-cards a:focus
{
	color: var(--accent-color-hover);
	text-decoration: none;
}

.team-cards .card-body,
.team-cards .card-footer > a
{
	padding: var(--spacer-4);
}

.team-cards .card-footer 
{
	padding: 0;
}

.team-cards .card-footer > a
{
	display: block;
	text-transform: uppercase;
	position: relative;
	padding-right: calc( var(--spacer-4) + 2rem);
}

.team-cards .card-footer > a:after 
{
	font-family: "Font Awesome 5 Pro";
	content: "\f105";
	display: block;
	position: absolute;
	height: 1.5rem;
	width: 1rem;
	font-size: 1.5rem;
	line-height: 1;
	right: var(--spacer-4);
	top: 50%;
	transform: translateY(-50%);
}

.team-cards .card-img 
{
	max-height: 420px;
	overflow: hidden;
}

/* END Team cards (.team-cards) ======= */



/* START team individual page ========= */
.team-member-hdr 
{
	position: relative;
	padding-bottom: 1.5rem;
	margin-bottom: calc(var(--sctn-spacing) / 2);
}

.team-member-hdr:after 
{
	content: "";
	position: absolute;
	left: calc(var(--bs-gutter-x) * 0.5);
	bottom: 0;
	height: 5px;
	width: 200px;
	background-color: var(--secondary-color);
}

.single-team_members #page-title .fl-heading
{
	font-weight: 500;
	font-size: var(--h2-fsz);
}

.team-member-hdr .employee-title .fl-heading
{
	color: var(--coolgray500);
	font-size: calc( var(--body-fsz) * 0.8);
}
/* END team individual page =========== */



/* START testimonials ================= */
.fl-module-testimonials.callout,
.fl-module-testimonials.callout .blockquote-footer
{
	color: var(--coolgray150);
}

@media (min-width: 992px)
{
	.fl-module-testimonials.callout 
	{
		padding: var(--spacer-45) var(--spacer-5) !important;
	}
}

@media (min-width: 1200px)
{
	.fl-module-testimonials.callout 
	{
		padding: var(--spacer-45) calc( var(--spacer-5) * 2) !important;
	}
}

@media (min-width: 1400px)
{
	.fl-module-testimonials.callout 
	{
		padding: var(--spacer-45) calc( var(--spacer-5) * 4) !important;
	}
}

.fl-module-testimonials.callout .blockquote 
{
	padding-top: 2.5rem;
	border-top: 5px solid var(--olive);
	margin-top: 2.5rem;
	position: relative;
}

.fl-module-testimonials.callout .blockquote:before 
{
	content: "“";
	display: block;
	font-size: 8rem;
	line-height: 1;
	position: absolute;
	top: -2rem;
	right: 50%;
	transform: translateX(50%);
	padding: 0.25rem;
	background-color: var(--primary-color);
	color: var(--olive);
	z-index: 0;
}

.fl-module-testimonials.callout .blockquote > p,
.fl-module-testimonials.callout .blockquote > .blockquote-footer 
{
	position: relative;
	z-index: 1;
}

.fl-module-testimonials.callout .bx-pager.bx-default-pager a 
{
	opacity: 0.25;
	background: var(--coolgray250);
	transition: background var(--transition), opacity var(--transition);
	border-radius: 0;
	width: 50px;
	height: 7px;
}

.fl-module-testimonials.callout .bx-pager.bx-default-pager a.active 
{
	background: var(--olive);
	opacity: 1;
}

/* END testimonials =================== */


/* START .sg-accordion ================ */
.sg-accordion .fl-accordion-button-label,
.sg-accordion .fl-accordion-button-icon
{
	color: var(--secondary-color);
}

.sg-accordion .fl-accordion-button-icon-left 
{
	opacity: 1;
}

/* align left with label when dropdown icon is on the left */
.sg-accordion .fl-accordion-small .fl-accordion-content
{
	padding-left: 40px;
}
/* END .sg-accordion ================== */


/* START .content-item ================ */
.content-item 
{
	background-color: transparent;
	border: unset;
}

.content-item .fl-post-grid-image > a 
{
	position: relative;
	display: flex;
}

.content-item .fl-post-grid-image img
{
	border-radius: var(--btn-brdr-radius);
}

.content-item .fl-post-grid-text 
{
	padding-left: 0;
	padding-right: 0;
}

.content-item .fl-post-grid-title 
{
	font-size: var(--h3-fsz);
}

.content-item .fl-post-grid-title a
{
	color: var(--secondary-color);
	font-weight: 700;
}

.content-item .fl-post-grid-title a:hover,
.content-item .fl-post-grid-title a:focus
{
	color: var(--secondary-color);
}

.content-item .fl-post-grid-content,
.content-item .fl-post-grid-content p
{
	font-size: calc( var(--body-fsz) * 0.86);
	line-height: calc( var(--body-lh) * 1.2);
}

.content-item .fl-post-meta 
{
	font-size: 80%;
	color: var(--coolgray450);
	margin-top: -10px;
	margin-bottom: var(--spacer-3);
	padding: unset;
}

/* hide dates on all archive pages EXCEPT news releases and media mentions */
.post-type-archive .content-item .fl-post-meta 
{
	display: none;
}

.post-type-archive-news-releases .content-item .fl-post-meta,
.post-type-archive-media-mentions .content-item .fl-post-meta
{
	display: block;
} 

.content-item .fl-post-grid-more,
.content-item .fl-post-grid-more > a 
{
	color: var(--secondary-color);
    background-color: var(--white);
    font-family: "Roboto",sans-serif;
    font-weight: 400;
    font-size: var(--btn-fsize);
    line-height: var(--btn-lht);
    text-transform: var(--btn-transform);
    border-style: var(--btn-brdr-style);
    border-width: var(--btn-brdr-w);
    border-color: var(--btn-brdr-color);
    border-radius: var(--btn-brdr-radius);
	padding: 12px 24px;
	margin-top: 25px;
}

.content-item .fl-post-grid-more:hover,
.content-item .fl-post-grid-more:focus,
.content-item .fl-post-grid-more > a:hover,
.content-item .fl-post-grid-more > a:focus
{
	color: var(--white);
    border-color: var(--secondary-color);
    background-color: var(--secondary-color);
    border-style: var(--btn-brdr-style);
    border-width: var(--btn-brdr-w);
    border-radius: var(--btn-brdr-radius);
}

section[class*="bgg-btm-"] .fl-builder-pagination li a.page-numbers,
section[class*="bgg-btm-"] .fl-builder-pagination li span.page-numbers,
section[class*="bgc-"] .fl-builder-pagination li a.page-numbers,
section[class*="bgc-"] .fl-builder-pagination li span.page-numbers 
{
	border-color: var(--white);
}

/* END .content-item ================== */


/* START post grid items (wraps post item below) ============== */
@media (min-width:768px)
{
	.pg-md-center-h .fl-post-grid
	{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}

	.pg-md-center-h .fl-post-grid:before,
	.pg-md-center-h .fl-post-grid:after 
	{
		display: none;
		content: unset;
	}

	.pg-md-center-h .fl-post-grid .fl-post-column
	{
		float: unset;
		max-width: 100%;
		clear: unset;
	}

	.pc-md-6 .fl-post-column 
	{
		flex: 0 0 auto !important;
    	width: 50% !important;
	}

	.pc-md-4 .fl-post-column 
	{
		flex: 0 0 auto !important;
		width: 33.33333% !important;
	}
}

@media (min-width: 992px) 
{
	.pc-lg-4 .fl-post-column 
	{
		flex: 0 0 auto !important;
		width: 33.33333% !important;
	}
}

/* END post grid items ================ */


/* START post item ==================== */
/* .post-template-default.single-post #hero
{
	background: linear-gradient(180deg, rgba(192,204,209,1) 0%, rgba(192,204,209,0) 100%);
}

.post-template-default.single-post #hero .fl-row-content-wrap::after
{
	top: 0;
	height: 100%;
} */

.single-post #article-main h2,
.single-news-releases #article-main h2
{
	font-size: calc( (var(--h2-fsz) + var(--h3-fsz) ) / 2);
}

.single-post #article-main h2,
.single-post #article-main h3,
.single-news-releases #article-main h2,
.single-news-releases #article-main h3
{
	font-weight: 700;
}

.single-post #article-main a 
{
	text-decoration: underline;
}

.single-post #article-main ul,
.single-post #article-main ol 
{
	margin-bottom: 2rem;
}

/* END post item ====================== */


/* START careers item ================= */
/* .us-careers-template-default.single-us-careers #hero
{
	background: linear-gradient(180deg, rgba(192,204,209,1) 0%, rgba(192,204,209,0) 100%);
}

.us-careers-template-default.single-us-careers #hero .fl-row-content-wrap::after
{
	top: 0;
	height: 100%;
} */

@media (max-width: 991px) 
{
	.us-careers-template-default.single-us-careers #content,
	.india-careers-template-default.single-india-careers #content
	{
		margin-bottom: 3rem;
	}
}

.us-careers-template-default.single-us-careers #content h3,
.india-careers-template-default.single-india-careers #content h3
{
	font-weight: 600;
}

.us-careers-template-default.single-us-careers #content h3:not(:first-child),
.india-careers-template-default.single-india-careers #content h3:not(:first-child)
{
	margin-top: 2rem;
}

.career-item .row 
{
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}

.career-item .fl-post-more-link a
{
	color: var(--btn-color);
    background-color: var(--btn-bgc);
    font-family: "Roboto",sans-serif;
    font-weight: 400;
    font-size: var(--btn-fsize);
    line-height: var(--btn-lht);
    text-transform: var(--btn-transform);
    border-style: solid;
    border-width: var(--btn-brdr-w);
    border-color: var(--btn-brdr-color);
    border-radius: var(--btn-brdr-radius);
	display: inline-block;
	padding: 12px 24px;
    text-decoration: none;
}

.career-item .fl-post-more-link a:hover 
{
	color: var(--btn-color-hover);
    background-color: var(--btn-bgc-hover);
    border-color: var(--btn-brdr-color);
    border-style: solid;
    border-width: var(--btn-brdr-w);
    border-radius: var(--btn-brdr-radius);
}

/* END careers item =================== */



/* form col --------------------------- */
.form-col > .fl-col-content 
{
	height: 100%;
	padding: var(--spacer-4) !important;
	border: 1px solid #666;
	background-color: var(--white);
	box-shadow: var(--drop-shadow);
}

@media (min-width: 1200px) 
{
	.form-col > .fl-col-content 
	{
		padding: var(--spacer-45) !important;
	}
}


/* START #cta ========================= */
#cta 
{
	color: var(--coolgray500);
}

#cta .sctn-hdr 
{
	margin-bottom: var(--spacer-45);
}

#cta .sctn-hdr:after 
{
	background-color: var(--primary-color);
}

#cta .sctn-hdr .fl-heading 
{
	color: var(--secondary-color);
}
/* END #cta =========================== */



/* START footer (#pg-ftr) -------- */
#pg-ftr 
{
    padding-top: calc( var(--angle-ht) + var(--spacer-4) );
    padding-bottom: var(--sctn-spacing);
    background: var(--primary-color) url('imgs/bg-angle-top.svg') no-repeat;
    background-position: top center;
    background-size: 100% auto;
    color: var(--white);
    border-bottom: 5px solid var(--secondary-color);
}

#pg-ftr a,
#pg-ftr a:visited 
{
    color: var(--coolgray250);
    text-decoration: none;
    transition: color var(--transition);
}

#pg-ftr a:hover,
#pg-ftr a:focus 
{
    color: var(--white);
}

/* hide dropdown */
#pg-ftr #menu-primary-2 .sub-menu 
{
	display: none;
}

/* .social-nav .nav-link svg
{
    fill: var(--coolgray250);
    width: 50px;
    height: 50px;
    transition: fill var(--transition);
}

.social-nav .nav-link:hover svg,
.social-nav .nav-link:focus svg
{
    fill: var(--white);
} */

#pg-copyright 
{
    margin-top: var(--spacer-4);
    margin-bottom: var(--spacer-4);
    font-size: 0.85rem;
    color: var(--coolgray450);
}

#pg-copyright a,
#pg-copyright a:visited
{
    color: var(--coolgray450);
    transition: color var(--transition);
}

#pg-copyright a:hover,
#pg-copyright a:focus
{
    color: var(--primary-color);
}

#pg-copyright p:only-child 
{
    margin-bottom: 0;
}

/* #menu-social */

[class*="socialicon-"] > a
{
    position: relative;
    text-align: center;
}

[class*="socialicon-"] > a:before
{
    font-family: "Font Awesome 5 Brands";
    font-size: 20px;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    padding: 10px;
    display: inline-block;
    color: var(--primary-color);
    background-color: var(--coolgray250);
    transition: color var(--transition), background-color var(--transition);
    line-height: 1.1;
    margin: 0 auto;
}

[class*="socialicon-"] > a:hover:before,
[class*="socialicon-"] > a:focus:before 
{
	background-color: var(--white);
}

.socialicon-facebook > a:before
{
    content: "\f39e";
}

.socialicon-linkedin > a:before
{
    content: "\f0e1";
}

.socialicon-twitter > a:before
{
    content: "\f099";
}

#menu-social span
{
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}
/* END footer -------------------- */