/*------------------------------------------------------------------
global.css
Last edited: 9/19/25
[Table of contents]

 1. GLOBAL STYLES
 2. WORDPRESS WYSIWYG
 3. BUTTONS
 4. ADMIN INSTRUCTIONS
 5. FLEX ROW
 6. RESPONSIVE VIDEO IFRAME
 7. TABLES
 8. VIDEO PLAY BUTTON
 9. SUB-MENU SHORTCODE
10. WIDGETS
11. BANDS
    11a. BANDS - GLOBAL COLORS
    11b. BANDS - PADDING
    11c. BANDS - GUTTER
12. SITE SEARCH RESULTS
13. PAGINATION
14 MOVE RECAPTCHA V3 BADGE TO THE LEFT 


100. MEDIA QUERIES
    100a. EXTRA SMALL DEVICES (phones 576px and up)
    100b. SMALL DEVICES (tablets, 768px and up)
    100c. MEDIUM DEVICES (desktops, 992px and up)
    100d. LARGE DEVICES (large desktops, 1200px and up)
    100e. EXTRA LARGE DEVICES (large desktops, 1450px and up)

[Notes]
-------------------------------------------------------------------*/

/*------------------------------------------------------------------
1. GLOBAL STYLES
-------------------------------------------------------------------*/

:root {
	/* Colors */
	--theme-color-blue: #073E66;
	--theme-color-red: #A23D23;
	--theme-color-orange: #BC8442;
	--theme-color-green: #828b35;
	--theme-color-slate: #5C645F;
	--theme-color-brown: #573E31;
	--theme-color-brown-transparent: rgba(87, 62, 49, 0.4);
	--theme-color-lichen: #BDBF89;
	--theme-color-eggshell: #F5F5F2;
	--theme-color-dark: #191919;
	--theme-color-black: #000;
	--theme-color-light: #fff;

	/* Fonts and Globally Used Sizes - small screens */
	--theme-fs-base: 19px;
	--theme-fs-large: 28px;
	--theme-fs-medium: 24px;
	--theme-fs-small: 16px;

	
	--theme-fs-h1: 42px;
	--theme-fs-h2: 34px;
	--theme-fs-h3: var(--theme-fs-large);
	--theme-fs-h4: var(--theme-fs-base);
	--theme-fs-h5: 18px;
	--theme-fs-h6: var(--theme-fs-small);
	
	--theme-fs-button: var(--theme-fs-base);

	--theme-lh-base: 1.5;

	--theme-fw-extra-bold: 900;

	--theme-font-manrope: 'Manrope', Sans Serif;
	--theme-font-opensans: 'Open Sans', Sans Serif;
	
	--container-width: 100%;
    --container-offset: calc(50vw - (var(--container-width) * 0.5));
}

@media screen and (min-width: 992px) {
	:root {
	/* Fonts and Globally Used Sizes - desktop sizes */
	--theme-fs-base: 20px;
	--theme-fs-large: 32px;
	--theme-fs-medium: 28px;
	--theme-fs-small: 18px;

	--theme-fs-h1: 55px;
	--theme-fs-h2: 42px;
	--theme-fs-h3: var(--theme-fs-large);
	--theme-fs-h4: var(--theme-fs-base);
	--theme-fs-h5: 21px;
	--theme-fs-h6: var(--theme-fs-small);
	
	}
}


/* adjust container width variable with bootstrap container width, allowing for offset/exended object positioning outside container areas */

@media (min-width: 576px) {
  :root {
        --container-width: 540px;
  }
}

@media (min-width: 768px) {
  :root{
        --container-width: 720px;
  }
}


@media (min-width: 992px) {
  :root {
        --container-width: 960px;
  }
}

@media (min-width: 1200px) {
  :root {
        --container-width: 1140px;
  }
}


@media screen and (min-width: 1450px) {
    :root{
        --container-width: 1390px;
    }
}


/* background utility classes */

.has-background-eggshell {
	background-color: var(--theme-color-eggshell);
}

.has-background-blue {
	background-color: var(--theme-color-blue);
}

.has-background-red {
	background-color: var(--theme-color-red);
}

.has-background-green {
	background-color: var(--theme-color-green);
}

.has-background-brown {
	background-color: var(--theme-color-brown);
}
.has-background-lichen {
	background-color: var(--theme-color-lichen);
}
.has-background-orange {
	background-color: var(--theme-color-orange);
}
.has-background-light {
	background-color: var(--theme-color-light);
}

/* change all text on darker backgrounds to light color */
:is(.has-background-blue, .has-background-red, .has-background-orange, .has-background-green, .has-background-brown) :is(h1, h2, h3, h4, h5, p, li, a:link, a:visited) {
	color: var(--theme-color-light);
}
.band:is(.has-background-red, .has-background-orange, .has-background-blue) li:not(.logo-item)::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Layer 2' viewBox='0 0 15.49 17.91'%3E%3Cpath d='M0 17.91V0l15.49 8.95L0 17.91Z' data-name='Layer 1' style='fill:%23fff'/%3E%3C/svg%3E");
		color: var(--theme-color-light);

}
/* text color utility classes */
.has-color-eggshell {
	color: var(--theme-color-eggshell)
}

.has-color-blue {
	color: var(--theme-color-blue);
}

.has-color-red {
	color: var(--theme-color-red);
}

.has-color-green {
	color: var(--theme-color-green);
}

.has-color-brown {
	color: var(--theme-color-brown);
}
.has-color-lichen,
:is(.has-background-blue, .has-background-red) :is(h1.has-color-lichen, h2.has-color-lichen, h3.has-color-lichen, h4.has-color-lichen, p.has-color-lichen, li.has-color-lichen) {
	color: var(--theme-color-lichen);
}
.has-color-orange {
	color: var(--theme-color-orange);
}

.has-text-transform-uppercase, .has-text-transform-uppercase * {
	text-transform: uppercase;
}




body {
	color: var(--theme-color-dark);
	font-family: var(--theme-font-opensans);
	font-size: var(--theme-fs-base);
	line-height: var(--theme-lh-base);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/* this will only show on keyboard focus */
body *:focus-visible {
    outline: solid 2px #6495ED;
    outline-offset: 5px;	
}

/* this will only show on both keyboard and mouse focus */
body *:focus {
    outline: solid 2px #6495ED;
    outline-offset: 5px;	
}
h1, 
h2, 
h3, 
h4, 
h5, 
h6 {
	line-height: 1.2;
}

h1, 
.h1,
.fake-h1 {
	font-family: var(--theme-font-manrope);
	font-size: var(--theme-fs-h1);
	font-weight: 500;
	margin-bottom: 1em;
}

h2, 
.h2, 
.fake-h2 {
	font-family: var(--theme-font-manrope);
	font-size: var(--theme-fs-h2);
	color: var(--theme-color-red);
	font-weight: 600;
	margin-bottom: 0.4em;
}

h2.h2-alt,
.fake-h2.h2-alt {
	color: var(--theme-color-blue);
	text-transform: uppercase;
	font-weight: bold;
	font-family: var(--theme-font-opensans);
}
.h2-intro {
	background-color: var(--theme-color-blue);
	padding: 15px 0;
}
.h2-intro h2 {
	color: var(--theme-color-light);
	font-weight: var(--theme-fw-extra-bold);
	margin: 0;
	text-align: center;
	text-transform: uppercase;
}

h3,
.h3 {
	font-size: var(--theme-fs-h3);
	font-weight: 700;
	margin-bottom: 0.4em;
	text-transform: none;
}
h4,
.h4 {
	font-size: var(--theme-fs-h4);
	font-weight: 700;
	margin: 0;
}
h5,
.h5 {
	font-size: var(--theme-fs-h5);
	font-weight: 700;
	margin-bottom: 0.4em;
}
h6,
.h6 {
	font-size: var(--theme-fs-small);
}
p {
	margin-bottom: 0.9em;
}
a:link {
	color: var(--theme-color-orange);
	font-weight: 700;
}
a:visited {
	color: var(--theme-color-green);
}
a:hover {
	color: var(--theme-color-dark);
	text-decoration: underline;
}
a:active {
	color: var(--theme-color-orange);
	text-decoration: underline;
}
ul, 
ol {
	margin: 0 0 0.9em 1.0em;
}

blockquote {
	color: var(--theme-color-blue);
	font-family: var(--theme-font-manrope);
	font-weight: 300;
	font-size: var(--theme-fs-medium);

}
blockquote + p, blockquote cite {
	color: var(--theme-color-black);
	font-size: var(--theme-fs-base);
	font-weight: 500;
}

blockquote cite {
	padding-top: 1rem;
	display: block;
}


@media screen and (min-width: 768px) {

	.has-blockquote-green blockquote {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_2' data-name='Layer 2' viewBox='0 0 159.89 266.48'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23828b35%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M53.3 0h53.3v53.29H53.3zM53.3 106.59h53.3v53.3H53.3zM0 53.29h53.3v53.3H0zM0 159.89h53.3v53.3H0zM106.59 53.29h53.3v53.3h-53.3zM106.59 159.89h53.3v53.3h-53.3z' class='cls-1'/%3E%3Cpath d='M53.3 213.18h53.3v53.3H53.3z' class='cls-1'/%3E%3C/g%3E%3C/svg%3E");
	}

	blockquote {
		padding: 0 0 70px 260px;
		background-position: top left;
		background-size: 210px;
		background-repeat: no-repeat;
		font-size: var(--theme-fs-large);
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_2' data-name='Layer 2' viewBox='0 0 158.09 175.12'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23a23d23%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M0 175.12h158.09L79.04 62.34 0 175.12z' class='cls-1'/%3E%3Cpath d='m23.91 0 55.13 64.63L134.18 0H23.91zM125.36 115.79 94.29 72.62h63.29l-32.22 43.17zM.15 72.62l32.22 43.17 30.88-43.17H.15z' class='cls-1'/%3E%3C/g%3E%3C/svg%3E");
	}
	.has-blockquote-long blockquote {
		font-size: var(--theme-fs-medium);
	}

	blockquote + p {
		padding: 0 0 0 260px;
		margin-top: -2em;
		margin-bottom: 60px;
	}

	.has-blockquote-green blockquote {
		padding: 0 0 70px 260px;
		background-size: 180px;
	}

}


blockquote p:last-child {
	margin-bottom: 0;
}

strong, 
b {
	font-weight: bold;
}
.extra-bold {
	font-weight: var(--theme-fw-extra-bold);
}
em {
	font-style: italic;
}
i {
    font-style: italic;
}
sub, 
sup { 
	font-size: 75%;
	line-height: 0; 
	position: relative; 
	vertical-align: baseline; 
}
sup { 
	top: -0.5em; 
}
sub { 
	bottom: -0.25em; 
}
hr {
	border: 0;
	border-top: 3px solid var(--theme-color-blue);
	height: 0;
}
pre {
    font-family: "Operator Mono SSm A", "Operator Mono SSm B", 'Source Code Pro', Menlo, Consolas, Monaco, monospace;
    clear: both;
    color: white;
    background: rgba(0,0,0,0.85);
	line-height: 28px;
	margin-bottom: 1.0em;
	min-width: 100%;
    padding: 0;
	position: relative;
    -moz-tab-size: 2;
    -o-tab-size: 2;
    tab-size: 2;
    -ms-word-break: normal;
    word-break: normal;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}
pre[rel] {
    padding-top: 28px;
}
pre[rel]::before {
	background: #999;
	color: white;
    content: attr(rel);
    font-size: 1rem;
	left: 0;
	padding: 0;
    position: absolute;
	text-indent: 15px;
    top: 0;
    width: 100%;
}
pre code {
	background: none;
	display: block;
    font-size: 16px;
    line-height: 1.75;
    padding: 1.5rem;
    white-space: pre;
    -webkit-overflow-scrolling: touch;
}
/* Vertical Center */
.vertical-center [class^="col-"] {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
/* icons */
[class^="icon-"], 
[class*=" icon-"] {
    display: inline-block;
    font-size: 20px;
    padding: 10px;
}
/*------------------------------------------------------------------
2. WORDPRESS WYSIWYG
-------------------------------------------------------------------*/
/*https://codex.wordpress.org/CSS*/
/*.alignnone {
	margin: 5px 20px 20px 0;
}*/
.alignnone {
	margin: 0;
}
.aligncenter, 
div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}
.alignright {
	float:right;
	margin: 5px 0 20px 20px;
}
.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}
a img.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}
a img.alignnone {
	margin: 0;
}
a img.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
.wp-caption {
    background: var(--theme-color-light);
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}
.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}
.screen-reader-text { /* Text meant only for screen readers. */
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	overflow: hidden;
	width: 1px;
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}
/*------------------------------------------------------------------
3. BUTTONS
-------------------------------------------------------------------*/
.btn, 
a.btn {
	background-color: var(--theme-color-orange);
	border-radius: 0px;
	color: var(--theme-color-light);
	display: inline-block;
	font-size: 1.1rem;
	padding: 15px 30px;
	text-decoration: none;
	text-transform: none;
	font-weight: bold;
}
.btn:hover, 
a.btn:hover {
	background-color: var(--theme-color-blue);
	color: var(--theme-color-light);
	text-decoration: none;
}
.btn.focus, 
.btn:focus {
	box-shadow: none;
    outline: 0;
}

.btn.btn-arrow {
	background-color: transparent;
	padding-inline: 0;
	text-transform: uppercase;
	display: flex;
	flex-wrap: nowrap;
	width: max-content;
	border-bottom: 2px solid transparent;
}

.btn.btn-arrow:hover {
	padding-right: 10px;
	border-bottom: 2px solid currentColor;
	background-color: transparent;
}

.btn.btn-arrow:hover::after {
	margin-left: 20px;
	transition: margin-left 0.2s ease-in-out;
}

.btn.btn-arrow::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Layer 2' viewBox='0 0 15.49 17.91'%3E%3Cpath d='M0 17.91V0l15.49 8.95L0 17.91Z' data-name='Layer 1' style='fill:%23fff'/%3E%3C/svg%3E");
	display: inline-block;
	width: 0.75em;
	height: 0.75em;
	position: relative;
	top: 7px;
	content: '';
	margin-left: 0.5em;
	background-repeat: no-repeat;
	background-size: contain;
}
.btn.btn-arrow.btn-dark-arrow::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Layer 2' viewBox='0 0 15.49 17.91'%3E%3Cpath d='M0 17.91V0l15.49 8.95L0 17.91Z' data-name='Layer 1' style='fill:%23191919'/%3E%3C/svg%3E");
}

.btn.btn-blue {
	background-color: var(--theme-color-blue);
}
.btn.btn-blue:hover {
	background-color: var(--theme-color-orange);
}

@media screen and (min-width: 992px) {
p + p:has(.btn):last-child {
	margin-top: 40px;
}
}


.has-background-green :is(a.btn, a.btn-arrow) {
	color: var(--theme-color-light);
}
/*------------------------------------------------------------------
4. ADMIN INSTRUCTIONS
-------------------------------------------------------------------*/
.grid-directions {
	margin-top: 10px;
	text-align: center;
}
.grid-directions:first-of-type {
    margin-top: 0;
}
.grid-directions .row div {
	background: var(--theme-color-green);
}
.grid-directions .row div:nth-of-type(odd) {
    background: #00559b;
}
.grid-directions .row p {
	background: #8bb929;
	color: var(--theme-color-light);
	margin: 0;
}
.grid-directions .row div:nth-of-type(odd) p {
    background: #005daa;
}
.band-icon-key [class^="icon-"] {
	background: none;
	color: var(--theme-color-blue);
	float: left;
	font-size: 25px;
	margin-right: 15px;
	padding: 0;
}
.band-icon-key p {
	margin-bottom: 20px;
}
/*------------------------------------------------------------------
5. FLEX ROW
-------------------------------------------------------------------*/
/* Add class to bootstrap row to convert to Flexbox, gives boxes equal height */
.flex-row {
	display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex-row > [class*='col-'] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.row.flex-row:before,
.row.flex-row:after {
   content: normal;
}
/*------------------------------------------------------------------
6. RESPONSIVE VIDEO IFRAME
-------------------------------------------------------------------*/
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*------------------------------------------------------------------
7. TABLES
-------------------------------------------------------------------*/
table {
	border-collapse: collapse;
}
table th, 
table td {
	border: solid 1px #e3e3e3;
	font-size: 12px;
	padding: 3px;
	vertical-align: top;
}
table th {
	background: #ebebeb;
	text-transform: uppercase;
}

/*------------------------------------------------------------------
8. VIDEO PLAY BUTTON
-------------------------------------------------------------------*/
.video-play-wrapper {
	display: inline-block;
    position: relative;
}
.play-button:after {
	content: "\e928";
	font-family: 'icomoon';
	font-size: 90px;
	line-height: 1;
}
.play-button {
	align-items: center;
    background: none;
	color: rgba(0,0,0,0.6);
	cursor: pointer;
	display: flex;
	height: 100%;
	justify-content: center;
	margin: 0;
    padding: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.play-button:hover {
	color: rgba(0,0,0,1.0);
}
.play-button-white {
	color: rgba(255,255,255,0.6);
}
.play-button-white:hover {
	color: rgba(255,255,255,1.0);
}

/*------------------------------------------------------------------
9. SUB-MENU SHORTCODE
-------------------------------------------------------------------*/
ul.menu-style-02, 
ul.menu-style-02 .sub-menu {
	list-style-type: none; 
	margin: 0;
	max-width: 400px;
	padding: 0;
}
.menu-style-02 li a {
	background: var(--theme-color-blue);
	color: var(--theme-color-light);
	display: block;
	margin-bottom: 1px;
	padding: 8px 15px;
}
ul.menu-style-02 .sub-menu li a::before {
    content: "- ";
}
ul.menu-style-02 .sub-menu li a {
	padding: 8px 15px 8px 30px;
	
}
.menu-style-02 li a:hover {
	background: #7eaf22;
	color: var(--theme-color-light);
	text-decoration: none;
}
ul.menu-style-03, 
ul.menu-style-03 .sub-menu {
	list-style-type: none; 
	margin: 0;
	max-width: 400px;
	padding: 0;
}
ul.menu-style-03 li a::before {
	content: "\e909";
    font-family: 'icomoon' !important; /* Use !important to prevent issues with browser extensions that change fonts */
    font-size: 9px;
    margin: 7px 3px 0 0;
    display: block;
    float: left;
}
.menu-style-03 li a {
    display: block;
    margin-bottom: 1px;
    padding: 3px 0;
    border-bottom: dotted 1px #cdcdcd;
}
ul.menu-style-03 .sub-menu li a::before {
    content: "- ";
}
.menu-style-03 li a:hover {
	text-decoration: none;
}
/*------------------------------------------------------------------
10. WIDGETS
-------------------------------------------------------------------*/
.widget {
	background: #f5f5f5;
    border-bottom: solid 2px #ebebeb;
    margin-bottom: 15px;
    padding: 25px 15px;
}
.widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.widget ul li {
	border-bottom: dotted 1px #cdcdcd;
	margin: 0 0 15px;
	padding-bottom: 15px;
}
.widget ul li a {
	color: var(--theme-color-slate);
}
.widget ul li a:hover {
	color: var(--theme-color-blue);
	text-decoration: none;
}
.widget ul li:last-child {
    border-bottom: 0;
    margin-bottom: 0;
	padding-bottom: 0;
}
.widget span.post-date,
.widget span.event-dates,
.widget span.career-location {
	display: block;
	font-size: 14px;
	text-transform: uppercase;
}

/* GRAVITY FORM WIDGET */
.widget .gravity-form {
	background: none;
	padding: 0;
}
.widget .gravity-form ul li {
	border-bottom: none;
	margin: 0;
	padding: 0;
}
/* NEWS ARCHIVE WIDGET */
.widget.aac_widget_news_archive ul li {
	border-bottom: none;
	margin: 0 0 10px;
	padding: 0;
}
.widget.aac_widget_news_archive ul li a {
	color: var(--theme-color-blue);
}
.widget.aac_widget_news_archive ul li a:hover {
	color: var(--theme-color-slate);
	text-decoration: underline;
}
/*------------------------------------------------------------------
11. BANDS - GLOBAL COLORS & PADDING
-------------------------------------------------------------------*/
/*------------------------------------------------------------------
11a. BANDS - GLOBAL COLORS
-------------------------------------------------------------------*/
.band {

}

/* bordered column bands */
.band-bordered-columns .col-lg:not(:last-child)::before {
		content: '';
		position: absolute;
		width: calc(100% - 30px);
		height: 3px;
		bottom: -30px;
		left: 15px;
		background-color: var(--theme-color-blue);
	}
.band-bordered-columns h3 {
	text-transform: uppercase;
	font-weight: bold;
	color: var(--theme-color-blue);
	font-family: var(--theme-font-opensans);
	font-size: 30px;
	line-height: 40px;
	margin-bottom: 1em;
}

.band-consultation-cta h2 {
	color: var(--theme-color-blue);
	text-transform: uppercase;
	font-weight: bold;
	font-family: var(--theme-font-opensans);
}

.band-consultation-cta {
	margin-top: 40px;
}

.band-consultation-cta .btn {
	margin-top: 20px;
}
@media screen and (min-width: 992px) {
	.band-consultation-cta {
		margin-top: 0;
	}
}

.band-bordered-columns p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 991px) {
	.band-3-col .col-lg {
		margin-bottom: 50px;
	}
}


@media screen and (min-width: 992px) {
	
	.band-bordered-columns .row .col-lg {
		position: relative;
		min-height: 380px;
	}
	.band-bordered-columns .row .col-lg:not(:first-child) {
		padding-left: 50px;
	}
	.band-bordered-columns .row .col-lg:not(:last-child) {
		padding-right: 50px;
	}
	.band-bordered-columns .col-lg:not(:last-child)::before {
		content: '';
		position: absolute;
		width: 3px;
		height: 100%;
		top: 0;
		right: 0;
		bottom: auto;
		left: auto;
		background-color: var(--theme-color-blue);
	}
	.band-bordered-columns h3 {
		margin-bottom: 1.5em;
	}
}
@media screen and (min-width: 1200px) {
	
	.band-bordered-columns .row .col-lg {
		position: relative;
		min-height: 380px;
	}
	.band-bordered-columns .row .col-lg:not(:first-child) {
		padding-left: 80px;
	}
	.band-bordered-columns .row .col-lg:not(:last-child) {
		padding-right: 80px;
	}
	.band-bordered-columns h3 {
		margin-bottom: 1.5em;
	}
}


.band-gray, .band-eggshell {
	background-color: var(--theme-color-eggshell);
}

.band-graphic-white-triangles {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_2' data-name='Layer 2' viewBox='0 0 220.54 492.44'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fff%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M2.46 178.82 153.82 0H0v492.44h220.54L2.46 178.82z' class='cls-1'/%3E%3Cpath d='m129.22 325.61 89.9-121.4H42.54l86.68 121.4z' class='cls-1'/%3E%3C/g%3E%3C/svg%3E");
	background-position: bottom left;
	background-repeat: no-repeat;
	background-size: min(250px, calc(var(--container-offset) - 15px));
}


@media screen and (max-width: 992px) {
	.band-graphic-white-triangles h2:first-child {
		margin-top: 30px;
	}
}

@media screen and (min-width: 992px) {
	.band-graphic-white-triangles h2 + p {
		margin-top: 60px;
	}
}

.band-graphic-squiggle {
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_2' data-name='Layer 2' viewBox='0 0 1884.57 165.08'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%232c5b7d%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='m715.16 165.08-.01-.01M1884.56 64.33l.01.01v-33.4l-.01-.01v33.4zM286.29.02 196.4 121.4 109.74.02H88.38l108.2 155.6L304.78.02M542.09.02 452.2 121.4 365.53.02h-20.94l107.99 155.3L560.57.02M1525.75.02l-89.89 121.38L1349.2.02h-21.36l108.2 155.6L1544.24.02M1862.49.02h-22.65l44.72 64.31v-33.4L1862.49.02zM1173.29 165.03 1288.03.02h-18.49l-89.89 121.38L1092.99.02h-293.4L709.7 121.4 623.03.02h-22.64l114.76 165.05M1691.66 121.4 1604.99.02h-20.94l107.99 155.3L1800.03.02h-18.48l-89.89 121.38zM542.09.02l.01-.02M365.52 0l.01.02M1781.55.02l.01-.02M1604.98 0l.01.02M286.29.02l.02-.02M109.73 0l.01.02M1525.75.02l.01-.02M1349.18 0l.02.02M30.09.02 30.1 0M1269.54.02l.02-.02M1092.98 0l.01.02M48.57.02H30.09L0 40.64v29.23L48.57.02z' class='cls-1'/%3E%3C/g%3E%3C/svg%3E");
}

.band-graphic-squares {
	background-position: left;
	background-repeat: no-repeat;
	background-size: min(250px, calc(var(--container-offset) - 15px));
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_2' data-name='Layer 2' viewBox='0 0 220.54 367.55'%3E%3Cdefs%3E%3CclipPath id='clippath'%3E%3Cpath d='M0 0h220.54v367.55H0z' class='cls-1'/%3E%3C/clipPath%3E%3CclipPath id='clippath-1'%3E%3Cpath d='M0 0h220.54v367.55H0z' class='cls-1'/%3E%3C/clipPath%3E%3CclipPath id='clippath-2'%3E%3Cpath d='M-17-15h254.54v383.55H-17z' class='cls-1'/%3E%3C/clipPath%3E%3Cstyle%3E.cls-1%7Bfill:none%7D.cls-4%7Bfill:%23fff%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2' data-name='Layer 1' style='clip-path:url(%23clippath)'%3E%3Cg style='clip-path:url(%23clippath-1)'%3E%3Cg style='opacity:.5'%3E%3Cg style='clip-path:url(%23clippath-2)'%3E%3Cpath d='M73.51 0h73.51v73.51H73.51zM73.51 147.02h73.51v73.51H73.51zM0 73.51h73.51v73.51H0zM0 220.53h73.51v73.51H0zM147.02 73.51h73.51v73.51h-73.51zM147.02 220.53h73.51v73.51h-73.51zM73.51 294.04h73.51v73.51H73.51z' class='cls-4'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
:is(.has-background-blue.band-graphic-squares) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_2' data-name='Layer 2' viewBox='0 0 159.89 266.48'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%232c5b7d%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M53.3 0h53.3v53.29H53.3zM53.3 106.59h53.3v53.3H53.3zM0 53.29h53.3v53.3H0zM0 159.89h53.3v53.3H0zM106.59 53.29h53.3v53.3h-53.3zM106.59 159.89h53.3v53.3h-53.3z' class='cls-1'/%3E%3Cpath d='M53.3 213.18h53.3v53.3H53.3z' class='cls-1'/%3E%3C/g%3E%3C/svg%3E");

}

/* styling lists within content */

.band ul {
	position: relative;
	margin-left: 0;
	
}

.band ul:not(:first-child) {
	margin-top: 1.5em;
}

.band ul:not(:last-child) {
	margin-bottom: 3em;
}

.band li:not(.logo-item, .flex-nav-next, .flex-nav-prev) {
	list-style-type: none;
	margin-left: 0;
	padding-left: 40px;
	margin-bottom: 0.75em;
	position: relative;
}

.band ul:not([class^="menu-style"]) li:not(.logo-item, .flex-nav-prev, .flex-nav-next):before {
	position: absolute;
	width: 0.75em;
	height: 0.75em;
	content: '';
	top: 7px;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Layer 2' viewBox='0 0 15.49 17.91'%3E%3Cpath d='M0 17.91V0l15.49 8.95L0 17.91Z' data-name='Layer 1' style='fill:%23073e66'/%3E%3C/svg%3E");
	left: 0;
	color: var(--theme-color-blue);	
}


/*------------------------------------------------------------------
11b. BANDS - PADDING
-------------------------------------------------------------------*/
.band-top-bottom-padding {
	padding: 25px 0;
}
.band-bottom-padding {
	padding: 0 0 25px 0;
}
.band-top-padding {
	padding: 25px 0 0 0;
}
/* 0-200 padding choices */
/* BOTTOM */

.band-bottom-padding-0 {
	padding-bottom: 0px;
}
.band-bottom-padding-10 {
	padding-bottom: 5px;
}
.band-bottom-padding-20 {
	padding-bottom: 10px;
}
.band-bottom-padding-30 {
	padding-bottom: 15px;
}
.band-bottom-padding-40 {
	padding-bottom: 20px;
}
.band-bottom-padding-50 {
	padding-bottom: 25px;
}
.band-bottom-padding-60 {
	padding-bottom: 30px;
}
.band-bottom-padding-70 {
	padding-bottom: 35px;
}
.band-bottom-padding-80 {
	padding-bottom: 40px;
}
.band-bottom-padding-90 {
	padding-bottom: 45px;
}
.band-bottom-padding-100 {
	padding-bottom: 50px;
}
.band-bottom-padding-110 {
	padding-bottom: 55px;
}
.band-bottom-padding-120 {
	padding-bottom: 60px;
}
.band-bottom-padding-130 {
	padding-bottom: 65px;
}
.band-bottom-padding-140 {
	padding-bottom: 70px;
}
.band-bottom-padding-150 {
	padding-bottom: 75px;
}
.band-bottom-padding-160 {
	padding-bottom: 80px;
}
.band-bottom-padding-170 {
	padding-bottom: 85px;
}
.band-bottom-padding-180 {
	padding-bottom: 90px;
}
.band-bottom-padding-190 {
	padding-bottom: 95px;
}
.band-bottom-padding-200 {
	padding-bottom: 100px;
}

/* TOP */
.band-top-padding-0 {
	padding-top: 0px;
}
.band-top-padding-10 {
	padding-top: 5px;
}
.band-top-padding-20 {
	padding-top: 10px;
}
.band-top-padding-30 {
	padding-top: 15px;
}
.band-top-padding-40 {
	padding-top: 20px;
}
.band-top-padding-50 {
	padding-top: 25px;
}
.band-top-padding-60 {
	padding-top: 30px;
}
.band-top-padding-70 {
	padding-top: 35px;
}
.band-top-padding-80 {
	padding-top: 40px;
}
.band-top-padding-90 {
	padding-top: 45px;
}
.band-top-padding-100 {
	padding-top: 50px;
}
.band-top-padding-110 {
	padding-top: 55px;
}
.band-top-padding-120 {
	padding-top: 60px;
}
.band-top-padding-130 {
	padding-top: 65px;
}
.band-top-padding-140 {
	padding-top: 70px;
}
.band-top-padding-150 {
	padding-top: 75px;
}
.band-top-padding-160 {
	padding-top: 80px;
}
.band-top-padding-170 {
	padding-top: 85px;
}
.band-top-padding-180 {
	padding-top: 90px;
}
.band-top-padding-190 {
	padding-top: 95px;
}
.band-top-padding-200 {
	padding-top: 100px;
}
/*------------------------------------------------------------------
11c. BANDS - GUTTER
-------------------------------------------------------------------*/
/* Thin Gutter */
.thin-gutter .row, 
.thin-gutter.row {
margin-right: -8px;
margin-left: -8px;
}
.thin-gutter > [class^="col-"], 
.thin-gutter > [class^=" col-"] {
padding-right: 8px;
padding-left: 8px;
}
/* No Gutter */
.no-gutter .row, 
.no-gutter.row {
margin-right: 0;
margin-left: 0;
}
.no-gutter [class^="col"],
.no-gutter [class^="col-"] {
padding-right: 0;
padding-left: 0;
}
/*------------------------------------------------------------------
12. SITE SEARCH RESULTS
-------------------------------------------------------------------*/
.search-results-wrapper form {
	margin: 20px 0;
}
.search-result {
	margin-bottom: 20px;
}
.search-result span.highlight {
	background: yellow;
}
/*------------------------------------------------------------------
13. PAGINATION
-------------------------------------------------------------------*/
.pagination {
	margin: 50px 0;
}
.page-item,
.page-item-link {
	text-align: center;
}
.page-item .page-link,
.page-item-link .page-link {
	color: #303030;
	padding: 15px;
	min-width: 58px;
}
.page-item.active .page-link,
.page-item-link.active .page-link {
	background-color: var(--theme-color-blue);
	border-color: transparent;
	font-weight: 700;
	color: var(--theme-color-light);
}
.page-item .page-link,
.page-item:first-child .page-link,
.page-item:last-child .page-link,
.page-item-link .page-link,
.page-item-link:first-child .page-link,
.page-item-link:last-child .page-link {
	border-radius: 0px;
	margin: 0;
}
.pagination [class^="icon-"],
.pagination [class*=" icon-"] {
	font-size: 16px;
	padding: 0;
}
/*------------------------------------------------------------------
14. MOVE RECAPTCHA V3 BADGE TO THE LEFT 
-------------------------------------------------------------------*/
 .grecaptcha-badge {
  width: 70px !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  left: 4px !important;
}
.grecaptcha-badge:hover {
  width: 256px !important;
}
/*------------------------------------------------------------------
100. MEDIA QUERIES
-------------------------------------------------------------------*/
/*------------------------------------------------------------------
100a. EXTRA SMALL DEVICES (phones 576px and up)
-------------------------------------------------------------------*/
@media (min-width: 576px) {
    
}
/*------------------------------------------------------------------
100b. SMALL DEVICES (tablets, 768px and up)
-------------------------------------------------------------------*/
@media (min-width: 768px) {
/*------------------------------------------------------------------
11. BANDS
-------------------------------------------------------------------*/
/*------------------------------------------------------------------
11b. BANDS - PADDING
-------------------------------------------------------------------*/    
.band-top-bottom-padding {
	padding: 50px 0;
}
.band-bottom-padding {
	padding: 0 0 50px 0;
}
.band-top-padding {
	padding: 50px 0 0 0;
}    
/* 0-200 padding choices */
/* BOTTOM */
.band-bottom-padding-0 {
	padding-bottom: 0px;
}
.band-bottom-padding-10 {
	padding-bottom: 10px;
}
.band-bottom-padding-20 {
	padding-bottom: 20px;
}
.band-bottom-padding-30 {
	padding-bottom: 30px;
}
.band-bottom-padding-40 {
	padding-bottom: 40px;
}
.band-bottom-padding-50 {
	padding-bottom: 50px;
}
.band-bottom-padding-60 {
	padding-bottom: 60px;
}
.band-bottom-padding-70 {
	padding-bottom: 70px;
}
.band-bottom-padding-80 {
	padding-bottom: 80px;
}
.band-bottom-padding-90 {
	padding-bottom: 90px;
}
.band-bottom-padding-100 {
	padding-bottom: 100px;
}
.band-bottom-padding-110 {
	padding-bottom: 110px;
}
.band-bottom-padding-120 {
	padding-bottom: 120px;
}
.band-bottom-padding-130 {
	padding-bottom: 130px;
}
.band-bottom-padding-140 {
	padding-bottom: 140px;
}
.band-bottom-padding-150 {
	padding-bottom: 150px;
}
.band-bottom-padding-160 {
	padding-bottom: 160px;
}
.band-bottom-padding-170 {
	padding-bottom: 170px;
}
.band-bottom-padding-180 {
	padding-bottom: 180px;
}
.band-bottom-padding-190 {
	padding-bottom: 190px;
}
.band-bottom-padding-200 {
	padding-bottom: 200px;
}
/* TOP */

.band-top-padding-0 {
	padding-top: 0px;
}
.band-top-padding-10 {
	padding-top: 10px;
}
.band-top-padding-20 {
	padding-top: 20px;
}
.band-top-padding-30 {
	padding-top: 30px;
}
.band-top-padding-40 {
	padding-top: 40px;
}
.band-top-padding-50 {
	padding-top: 50px;
}
.band-top-padding-60 {
	padding-top: 60px;
}
.band-top-padding-70 {
	padding-top: 70px;
}
.band-top-padding-80 {
	padding-top: 80px;
}
.band-top-padding-90 {
	padding-top: 90px;
}
.band-top-padding-100 {
	padding-top: 100px;
}
.band-top-padding-110 {
	padding-top: 110px;
}
.band-top-padding-120 {
	padding-top: 120px;
}
.band-top-padding-130 {
	padding-top: 130px;
}
.band-top-padding-140 {
	padding-top: 140px;
}
.band-top-padding-150 {
	padding-top: 150px;
}
.band-top-padding-160 {
	padding-top: 160px;
}
.band-top-padding-170 {
	padding-top: 170px;
}
.band-top-padding-180 {
	padding-top: 180px;
}
.band-top-padding-190 {
	padding-top: 190px;
}
.band-top-padding-200 {
	padding-top: 200px;
}
}

/*------------------------------------------------------------------
100c. MEDIUM DEVICES (desktops, 992px and up)
-------------------------------------------------------------------*/
@media (min-width: 992px) {
/*------------------------------------------------------------------
11c. BANDS - GUTTER
-------------------------------------------------------------------*/
/* 10 - 100 choices */
.gutter-10 [class^="col"],
.gutter-10 [class^="col-"] {
    padding-right: 5px;
    padding-left: 5px;
}
.gutter-20 [class^="col"],
.gutter-20 [class^="col-"] {
    padding-right: 10px;
    padding-left: 10px;
}
/*.gutter-30 [class^="col"],
.gutter-30 [class^="col-"] {
    padding-right: 15px;
    padding-left: 15px;
}*/
.gutter-40 [class^="col"],
.gutter-40 [class^="col-"] {
    padding-right: 20px;
    padding-left: 20px;
}
.gutter-50 [class^="col"],
.gutter-50 [class^="col-"] {
    padding-right: 25px;
    padding-left: 25px;
}
.gutter-60 [class^="col"],
.gutter-60 [class^="col-"] {
    padding-right: 30px;
    padding-left: 30px;
}
.gutter-70 [class^="col"],
.gutter-70 [class^="col-"] {
    padding-right: 35px;
    padding-left: 35px;
}
.gutter-80 [class^="col"],
.gutter-80 [class^="col-"] {
    padding-right: 40px;
    padding-left: 40px;
}
.gutter-90 [class^="col"],
.gutter-90 [class^="col-"] {
    padding-right: 45px;
    padding-left: 45px;
}
.gutter-100 [class^="col"],
.gutter-100 [class^="col-"] {
    padding-right: 50px;
    padding-left: 50px;
}
[class*="gutter-"].row [class^="col"]:first-of-type:not(.order-lg-2),
[class*="gutter-"].row [class^="col-"]:first-of-type:not(.order-lg-2), 
[class*="gutter-"] .row [class^="col"]:first-of-type:not(.order-lg-2),
[class*="gutter-"] .row [class^="col-"]:first-of-type:not(.order-lg-2),
[class*="gutter-"].row [class^="col"].order-lg-1,
[class*="gutter-"].row [class^="col-"].order-lg-1, 
[class*="gutter-"] .row [class^="col"].order-lg-1,
[class*="gutter-"] .row [class^="col-"].order-lg-1 {
    padding-left: 15px;
}
[class*="gutter-"].row [class^="col"]:last-of-type:not(.order-lg-1),
[class*="gutter-"].row [class^="col-"]:last-of-type:not(.order-lg-1), 
[class*="gutter-"] .row [class^="col"]:last-of-type:not(.order-lg-1),
[class*="gutter-"] .row [class^="col-"]:last-of-type:not(.order-lg-1),
[class*="gutter-"].row [class^="col"].order-lg-2,
[class*="gutter-"].row [class^="col-"].order-lg-2, 
[class*="gutter-"] .row [class^="col"].order-lg-2,
[class*="gutter-"] .row [class^="col-"].order-lg-2 {
    padding-right: 15px;
}    
}

/*------------------------------------------------------------------
100d. LARGE DEVICES (large desktops, 1200px and up)
-------------------------------------------------------------------*/
@media (min-width: 1200px) {
	
}

/*------------------------------------------------------------------
100e. EXTRA LARGE DEVICES (large desktops, 1450px and up)
-------------------------------------------------------------------*/
@media screen and (min-width: 1450px) {
/*------------------------------------------------------------------
1. GLOBAL STYLES
-------------------------------------------------------------------*/    
  .container {
    max-width: 1390px;
  }   
}