/* CSS Document */

/*	Resets
============================================================================================== */
@font-face {
  font-family:'Agenor Neue';
  src:url('/css/fonts/AgenorNeue-Regular.woff2') format('woff2'),
    url('/css/fonts/AgenorNeue-Regular.woff') format('woff');
  font-weight:normal;
  font-style:normal;
  font-display:swap;
}

:root {
  --color-black:#040404;
  --color-navy:#194674;
  --color-blue:#6a8aa5;
  --color-yellow:#fac12e;
  --color-gray-10:#1a1a1a;
  --color-gray-30:#363636;
  --color-gray-50:#808080;
  --color-gray-70:#a0a0a0;
  --color-gray-90:#e7e6e6;
  --color-gray-98:#f8f8f8;
  --color-white:#ffffff;

  --color-primary:var(--color-navy);
  --color-secondary:var(--color-blue);
  --color-accent:var(--color-yellow);
  --color-trim:var(--color-black);

  --units-1:16px;
  --units-2:calc(var(--units-1) * 2);
  --units-3:calc(var(--units-1) * 3);
  --units-4:calc(var(--units-1) * 4);
  --units-5:calc(var(--units-1) * 5);
  --units-6:calc(var(--units-1) * 6);
  --units-7:calc(var(--units-1) * 7);
  --units-8:calc(var(--units-1) * 8);
  --units-9:calc(var(--units-1) * 9);

  --radius-default:0;

  --typeface-display:"Agenor Neue", Helvetica, Arial, sans-serif;
  --typeface-default:"Open Sans", Helvetica, Arial, sans-serif;

  --font-size-1:var(--units-1);
  --font-size-2:calc(var(--font-size-1) * 1.200);
  --font-size-3:calc(var(--font-size-1) * 1.440);
  --font-size-4:calc(var(--font-size-1) * 1.728);
  --font-size-5:calc(var(--font-size-1) * 2.074);
  --font-size-6:calc(var(--font-size-1) * 2.488);
  --font-size-7:calc(var(--font-size-1) * 2.986);
  --font-size-neg-1:calc(var(--font-size-1) * 0.875);
  --font-size-neg-2:calc(var(--font-size-1) * 0.750);
}
html, body, h2, h3, h4, p, ul, li, form, fieldset, label, img, div {
	margin:0;
	padding:0;
	border:none;
	-webkit-text-size-adjust:none;
}
html, body {
	height:100%;
	min-height:100%;
  color:var(--color-gray-30);
	font-family:var(--typeface-default);
	font-size:var(--font-size-1);
	line-height:1.8;
}
html { background:var(--color-gray-98); }
.panel *::selection,
.header *::selection,
.footer *::selection,
.banner *::selection,
.mainNav *::selection,
.excerpt .simplesearch-highlight {
  color:var(--color-gray-10);
  background:rgba(52, 199, 89, 0.5);
}
.panel *::-moz-selection,
.header *::-moz-selection,
.footer *::-moz-selection,
.banner *::-moz-selection,
.mainNav *::-moz-selection,
.excerpt .simplesearch-highlight {
  color:var(--color-gray-10);
  background:rgba(52, 199, 89, 0.5);
}
a[href^="tel"] { cursor:pointer; }
.centre {
  max-width:1100px;
  margin:0 auto;
  padding:var(--units-6) var(--units-2);
  position:relative;
	z-index:10;
}
.id_30 .centre {
  padding:var(--units-4) var(--units-2);
}
.bg-default:not(.panel_media_floated) + .bg-default .centre,
.bg-white:not(.panel_media_floated) + .bg-white .centre,
.bg-blue + .bg-blue .centre { padding-top:0; }
.centre:has(p.ctas) {
  padding-bottom:var(--units-5);
}
.tpl_6 .panel.bg-default .centre { padding-bottom:var(--units-5); }
.tpl_6 .panel_media_featured .centre { padding-bottom:var(--units-5); }
.panel.thin .centre { padding:var(--units-3) var(--units-2) var(--units-4); }
.panel.thin_alt .centre,
.id_25 .panel .centre { padding:var(--units-3) var(--units-2) var(--units-4); }
.panel_cta .centre { padding:var(--units-8) var(--units-2) !important; }
.panel_cta .content { padding:20px 0; }
.panel_cta h2 { margin-top:10px; }

.clearfix, .centre { zoom:1; }
.clearfix:before, .centre:before  { content:"\0020"; display:block; height:0; overflow:hidden; }
.clearfix:after, .centre:after { content:"\0020"; display:block; height:0; overflow:hidden; clear:both; }
.csst,
.csst:hover,
.csst *,
.csst *:hover,
.btn,
.btn:hover {
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.border-box {
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.fauxlink, .fauxlink:hover { cursor:pointer; }
.elem-flip {
  -moz-transform:scaleX(-1);
  -o-transform:scaleX(-1);
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
  filter:FlipH;
  -ms-filter:"FlipH";
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color:var(--color-gray-30);
  font-family:var(--typeface-display);
  font-weight:normal;
  line-height:1.4;
  margin:0 auto 0.5em;
  display:block;
}
h1, .h1 { font-size:var(--font-size-6); }
h2, .h2 { font-size:var(--font-size-5); }
h3, .h3 { font-size:var(--font-size-4); }
h4, .h4 { font-size:var(--font-size-3); }
h5, .h5 { font-size:var(--font-size-1); }
h6, .h6 { font-size:var(--font-size-1); }
p { 
  font-size:18px;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
 }
p + h2, p + h3, p + h4, p + h5, p + h6,
p + .h2, p + .h3, p + .h4, p + .h5, p + .h6,
ul + h2, ul + h3, ul + h4, ul + h5, ul + h6,
ul + .h2, ul + .h3, ul + .h4, ul + .h5, ul + .h6,
ol + h2, ol + h3, ol + h4, ol + h5, ol + h6,
ol + .h2, ol + .h3, ol + .h4, ol + .h5, ol + .h6
{ margin-top:45px; }
blockquote { 
  /* color:rgba(0,0,0,0.85); */
  font-family:var(--typeface-display);
  font-size:var(--font-size-4);
  line-height:1.6;
  margin:0 auto; 
  padding:0;
}
blockquote p {
  /* color:rgba(0,0,0,0.85); */
  font-family:var(--typeface-display);
  font-size:1em !important;
  line-height:1.6;
  text-align:center;
}
.centre a,
.centre a:hover {
  text-decoration:none;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
input[type=text],
input[type=email],
input[type=number],
input[type=tel],
input[type=password],
select,
textarea {
	font-family:inherit;
	font-size:inherit;
	color:#1a1a1a;
}
.center { text-align:center; }
img, iframe { max-width:100%; }
.panel img { height:auto !important; }
img.framed {
  background:var(--color-white);
  padding:var(--units-1);
  border:1px solid var(--color-gray-70);
  box-shadow:3px 3px 7px rgba(0,0,0,0.10);
}
.sep { 
  margin:0 10px;
  display:inline-block;
  opacity:0.75;
}
hr {
  border:none;
  border-top:1px solid #ccc;
  margin:25px auto;
}
.wrapper { min-height:100%; }


/*	Base Classes
============================================================================================== */
.btn {
  font-family:var(--typeface-default);
  font-size:16px;
  font-weight:500;
  text-transform:uppercase;
  text-align:center;
  text-decoration:none !important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.15);
  border-radius:0;
  min-width:7.25em;
  margin:1.618em auto 0;
  padding:0.7em 1.5em 0.75em;
  display:inline-block;
  position:relative;
  cursor:pointer;
}
.ctas:first-child .btn { margin-top:0; }
.btn:hover {
  cursor:pointer;
}
.btn.navy {
  color:var(--color-white) !important;
  background:var(--color-navy);
}
.btn.navy:hover {
  color:var(--color-white) !important;
  background:var(--color-blue);
}
.btn.blue {
  color:var(--color-white) !important;
  background:var(--color-blue);
}
.btn.blue:hover {
  color:var(--color-white) !important;
  background:var(--color-navy);
}
.btn.yellow,
.btn.default {
  color:var(--color-white) !important;
  background:var(--color-yellow);
}
.btn.yellow:hover,
.btn.default:hover {
  color:var(--color-white) !important;
  background:var(--color-blue);
}
.btn.white {
  color:var(--color-navy) !important;
  text-shadow:none !important;
  background:var(--color-white);
}
.btn.white:hover {
  color:var(--color-white) !important;
  background:var(--color-blue);
}
.btn.ghost {
  color:var(--color-secondary) !important;
  background:transparent;
  border:1px solid var(--color-secondary);
}
.btn.ghost:hover {
  color:var(--color-white) !important;
  background:var(--color-secondary);
}
.panel.dark .btn.ghost {
  color:var(--color-white) !important;
  background:transparent;
  border:1px solid var(--color-white);
}
.panel.dark .btn.ghost:hover {
  color:var(--color-primary) !important;
  text-shadow:none !important;
  background:var(--color-white);
}
.btn.mini {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1px;
}
p + .btn,
ol + .btn,
ul + .btn { margin-top:0; }
.btn i {
	margin:0 0.33em;
	font-size:0.9em;
	vertical-align:baseline;
}


/*	LAYOUT
============================================================================================== */

/*	Header
============================================================================================== */
.header {
  background:#fff;
  width:100%;
  height:70px;
  position:fixed;
  top:0;
  z-index:200;
	opacity:1;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header.fixed {
  height:60px;
  box-shadow:0 2px 4px rgba(0,0,0,0.15);
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header .centre {
  height:100%;
}
.header .logo {
  display:block;
  position:absolute;
  top:53%;
  left:2em;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.header .logo img {
  height:44px;
  width:auto;
  display:block;
  opacity:1;
}
.header.fixed .logo img {
  height:34px;
}
.header .logo:hover img {
  opacity:0.85;
}
.header .phone {
  color:var(--color-secondary);
  font-family:var(--typeface-display);
  font-size:var(--font-size-3);
  font-weight:700;
  letter-spacing:-0.05em;
  text-decoration:none;
  line-height:46px;
  height:50px;
  margin:20px 0 0 24px;
  padding:0 0.75em;
  display:block;
  float:right;
}
.header .phone:hover {
	color:var(--color-white);
}
.header .fa-search {
  color:var(--color-blue);
  font-size:18px;
  line-height:56px;
  height:60px;
  margin:0 2em 0 0;
  padding:0px 24px;
  display:block;
  float:right;
  position:relative;
  top:50%;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.header .fa-search:hover {
  color:var(--color-accent);
}
.jbmodal-search {
  position:relative;
  width:auto;
}
.jbmodal-search input[type=text] {
  color:var(--color-black);
  font-family:inherit;
  font-size:1em;
  line-height:1.2em;
  background:var(--color-gray-98);
  border:1px solid var(--color-gray-70);
  border-radius:var(--radius-default);
  height:2.75em;
  width:100%;
  margin:0;
  padding:0.75em 1em;
  display:block;
  outline:none;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.jbmodal-search input[type=text]:focus {
  border:1px solid var(--color-secondary);
}
.jbmodal-search input[type=submit] {
  color:transparent;
  text-align:center;
  line-height:2.25em;
  height:2.25em;
  width:2.25em;
  background:transparent;
  border-radius:var(--radius-default);
  border:0;
  position:absolute;
  top:0.25em;
  left:auto;
  right:0.25em;
  opacity:0;
  z-index:2;
  cursor:pointer;
}
.jbmodal-search i.fa {
  color:var(--color-white);
  text-align:center;
  background:var(--color-secondary);
  border:0;
  border-radius:var(--radius-default);
  line-height:2.25em;
  height:2.25em;
  width:2.25em;
  position:absolute;
  top:0.25em;
  left:auto;
  right:0.25em;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.jbmodal-search input[type=submit]:hover+i.fa {
  color:var(--color-white);
  background:var(--color-primary);
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header > .fa-bars, .header > .fa-times {
  color:var(--color-navy);
  font-size:24px;
  text-align:center;
  line-height:60px;
  height:60px;
  margin:0;
  padding:0px 1.25em;
  position:absolute;
  top:50%;
  right:0.75em;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
  cursor:pointer;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.header > .fa-times { display:none; }


/*	Nav
============================================================================================== */
.mainNav {
  margin:0;
  position:relative;
  float:right;
  z-index:1000;
}
/* First Level Nav */
.mainNav ul {
  font-size:0;
  font-family:var(--typeface-display);
  font-weight:400;
  margin:0;
}
.mainNav>ul>li {
  font-size:18px;
  margin:0;
  display:inline-block;
  position:relative;
}
.fixed .mainNav>ul>li {
  font-size:17px;
}
.mainNav li.id_1 { display:none; }
.mainNav>ul>li>a,
.mainNav>ul>li>span {
  color:var(--color-navy);
  text-decoration:none !important;
  height:70px;
  line-height:70px;
  padding:0 1em;
  margin:0;
  display:inline-block;
  position:relative;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.fixed .mainNav>ul>li>a,
.fixed .mainNav>ul>li>span {
  height:60px;
  line-height:60px;
}
.mainNav>ul>li.current>a {
  color:#fff !important;
  background:var(--color-yellow);
}
.mainNav>ul>li>a:hover {
  color:var(--color-accent);
}
/* Second Level Nav */
.mainNav>ul>li>ul {
  border:none;
  background:#222c33;
  width:210px;
  display:none;
  position:absolute;
  top:60px;
  left:-1px;
  z-index:10;
}
.mainNav>ul>li:hover>ul {
  display:block;
}
.mainNav>ul>li:last-child>ul {
  right:-1px;
  left:auto;
}
.mainNav>ul>li>ul>li {
  border-top:1px solid rgba(255,255,255,0.1);
	line-height:1em;
  margin:0;
  position:relative;
}
.mainNav>ul>li>ul>li:first-child {
  border-top:0;
}
.mainNav>ul>li>ul>li>a {
  font-size:16px;
  color:var(--color-white);
  font-weight:100;
  text-decoration:none;
  line-height:1em;
  padding:10px 20px;
  display:block;
}
.mainNav>ul>li>ul>li>a:hover {
  color:var(--color-white);
  background:var(--color-secondary);
}
.mainNav>ul>li>ul>li.parent>a:after,
.mainNav>ul>li>ul>li.parent>span:after {
  display:inline-block;
	-moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 6 Free";
	font-weight:900;
  content:"\f0da";
  position:absolute;
  right:5px;
	top:50%;
  margin-top:-5px;
  font-size:14px;
  height:10px;
  line-height:10px;
  color:rgba(255,255,255,0.4);
  width:14px;
  text-align:center;
}
.mainNav>ul>li>ul>li.parent:hover>a:after,
.mainNav>ul>li>ul>li.parent:hover>span:after {
  color:rgba(255,255,255,0.8);
}

/* Third Level Nav */
.mainNav>ul>li>ul>li>ul {
  background:#000;
  border-top:0;
  border-left:1px solid rgba(255,255,255,0.1);
  width:210px;
  display:none;
  position:absolute;
  top:0;
  left:100%;
  z-index:10;
}
.mainNav>ul>li>ul>li:hover>ul {
  display:block;
}
.mainNav>ul>li>ul>li>ul>li {
  border-top:1px solid rgba(255,255,255,0.1);
  margin:0;
  position:relative;
}
.mainNav>ul>li>ul>li>ul>li:first-child {
  border-top:0;
}
.mainNav>ul>li>ul>li>ul>li>a {
  color:#fafafa !important;
  font-size:16px;
  line-height:1em;
  font-weight:100;
  text-decoration:none !important;
  padding:10px 20px;
  display:block;
}
.mainNav>ul>li>ul>li>ul>li>a:hover {
  background:var(--color-secondary);
}
.mainNav li .trigger { display:none; }



/*	Footer
============================================================================================== */
.footer {
  color:var(--color-white);
  font-size:13px;
	line-height:1.6em;
  background:linear-gradient(45deg, #113254, var(--color-navy));
  padding:15px 2em;
  position:relative;
}
.footer .left { 
  float:left; 
  position:relative;
  top:5px;
}
.footer .right { 
  text-align:right;
  float:right; 
  position:relative;
}
.footer .logo {
  height:34px;
  display:inline-block;
  filter:grayscale(100%) brightness(100);
}
.footer .social {
  font-size:18px;
  position:absolute;
  top:50%;
  left:45%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.footer .social a {
  color:var(--color-white);
  line-height:20px;
  height:20px;
  width:auto;
  margin:0 10px;
  display:inline-block;
}
.footer .social a:hover {
  color:var(--color-yellow);
}
.footer .social .fa-linkedin { font-size:19px; }
.footer .credits {
  color:var(--color-gray-98);
  text-align:right;
  font-size:15px;
  line-height:1;
  margin:0;
}
.footer .credits a {
  color:var(--color-gray-98);
	text-decoration:none;
  font-weight:700;
  border-right:1px solid rgba(255,255,255,0.75);
  padding:0 1em;
  display:inline-block;
}
.footer .credits a:hover {
  color:var(--color-yellow);
	text-decoration:none;
}
.footer .credits a:last-of-type {
  border-right:0;
	padding-right:0;
}
.footer .copy {
  font-size:13px; 
  margin-top:5px; 
}


/*	Banner
============================================================================================== */
.banner {
  text-align:center;
  background:var(--color-navy);
	margin:0;
  padding:70px 0 0;
  position:relative;
	z-index:2;
	overflow:hidden;
}
.banner-home {
  background:linear-gradient(45deg, #113254, var(--color-navy));
  height:560px;
  overflow:hidden; 
}
.banner-home .texture {
  background:url(/assets/images/theme/wave-grain-texture.jpg) center center;
  -webkit-background-size:cover !important;
  -moz-background-size:cover !important;
  -o-background-size:cover !important;
  background-size:cover !important;
  height:100%;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  z-index:-2;
  mix-blend-mode:overlay;
  opacity:0.25;
}
.banner:not(.banner-home) .bg {
  background:url(/assets/images/bg-banner.jpg) center center;
  -webkit-background-size:cover;
  -moz-background-size:cover;
  -o-background-size:cover;
  background-size:cover;
  width:100%;
  height:100%;
  display:block;
  position:absolute;
  top:30px;
  left:0;
  opacity:0.25;
  z-index:-2;
}
.tpl_6 .banner .bg {
  background:url(/assets/images/bridge-banner.png) center bottom  #fff !important;
}
.banner-home .bg {
  height:100%;
  width:60%;
  position:absolute;
  left:auto;
  right:0;
  z-index:0;
}
.banner .centre {
  padding:160px var(--units-2) 150px;
}
.banner-home .centre {
  text-align:center;
  width:40%;
  padding:0 var(--units-2);
  position:absolute;
  top:54%;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
  z-index:1;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.banner h1,
.banner .h1 {
  color:var(--color-gray-98);
  text-shadow:2px 2px 0 rgba(0,0,0,0.75);
  margin:0 0 25px;
  display:inline-block;
}
.tpl_6 .banner h1 span {
    font-size:0.75em;
    font-style:italic;
    display:block;
}
.banner .intro {
	color:var(--color-gray-98);
	font-size:24px;
	text-align:center;
  width:640px;
  max-width:100%;
  margin:0 auto 30px;
}
.banner-home .btn { 
  width:180px;
  display:block;
 }

/* Breadcrumbs */
.crumbContainer {
	font-size:0;
  text-align:center;
  position:absolute;
  bottom:30px;
  left:30px;
}
.crumbContainer .crumb {
  color:rgba(255,255,255,0.5);
	font-size:13px;
	text-transform:uppercase;
}
.crumbContainer .crumb:after {
  display:inline-block;
	-moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 6 Free";
	font-weight:900;
  content:"\f054";
}
.crumbContainer .crumb.current:after {
	content:"";
}
.crumbContainer .crumb.current{
	color:rgba(255,255,255,0.5);
  padding:0 1em;
}
.crumbContainer .crumb a {
	color:var(--color-white);
	text-decoration:none;
  padding:5px 1em;
  display:inline-block;
}
.crumbContainer .crumb a:hover {
  color:var(--color-secondary);
}
.crumbContainer .crumb .home { font-size:0; }
.crumbContainer .crumb .home i { 
  font-size:13px; 
  margin-right:10px;
  position:relative;
  top:-1px;
}


/*	Template Panels
============================================================================================== */
.content-wrapper {
  background:transparent;
  margin:-1px auto;
  padding:1px 0;
  position:relative;
  z-index:1;
}
.panel {
	position:relative;
}
.panel .bg {
  -webkit-background-size:cover !important;
  -moz-background-size:cover !important;
  -o-background-size:cover !important;
  background-size:cover !important;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:0;
  opacity:0.25;
}
.panel .grad {
	position:absolute;
  bottom:0;
  left:0;
  display:block;
  width:100%;
	height:329px;
  max-height:100%;
	background:linear-gradient(to top, var(--color-gray-50), transparent);
  mix-blend-mode:darken;
	opacity:0;
  z-index:1;
}
/* Panel Backgrounds */
.panel				    { background:var(--color-gray-98); }
.panel.bg-navy		{ background:linear-gradient(45deg, #112e4d, var(--color-navy)); }
.panel.bg-blue		{ background:var(--color-blue); }
.panel.bg-yellow		{ background:var(--color-yellow); }
.panel.bg-white		{ background:var(--color-white); }
.panel.bg-black		{ background:var(--color-gray-10); }
.panel.bg-gray		{ background:var(--color-gray-90); }
.panel.bg-dk-gray { background:#A0A0A0; }

.panel_content_plain.bg-img .bg,
.panel_accordion.bg-img .bg,
.panel_tabs.bg-img .bg	{ opacity:0.2; }

/* Panel Gradients */
.panel.bg-white .grad { background:linear-gradient(to top, transparent, #fff); }

/* Panel Color Modes */
.panel .content,
.panel .content h1, .panel .content .h1,
.panel .content h2, .panel .content .h2,
.panel .content h3, .panel .content .h3,
.panel .content h4, .panel .content .h4,
.panel .content h5, .panel .content .h5,
.panel .content h6, .panel .content .h6 { color:var(--color-gray-30); }
.panel.dark .content,
.panel.dark h2, .panel.dark .h2,
.panel.dark .content h3, .panel.dark .content .h3,
.panel.dark .content h4, .panel.dark .content .h4,
.panel.dark .content h5, .panel.dark .content .h5,
.panel.dark .content h6, .panel.dark .content .h6,
.panel.dark p { color:var(--color-gray-98); }
.panel_cta.dark .content { text-shadow:1px 1px 0 rgba(0,0,0,0.25); }

/* Panel Text Alignment */
.panel.content-left .content h1, .panel.content-left .content .h1,
.panel.content-left .content h2, .panel.content-left .content .h2,
.panel.content-left .content { text-align:left; }
.panel_content_plain.content-right .content h1, .panel_content_plain.content-right .content .h1,
.panel_content_plain.content-right .content h2, .panel_content_plain.content-right .content .h2 { text-align:right; }
.panel_content_plain.content-right ul, .panel.content-right ol { display:inline-block; text-align:left; }

.panel.panel_map { min-height:720px; }
.panel_content_plain .content,
.panel_accordion .content,
.panel_accordion .accordion,
.panel_tabs .content {
	width:960px;
	max-width:100%;
	margin:0 auto;
}
.tpl_5 .panel-articles .content,
.tpl_6 .panel_content_plain .content,
.tpl_6 .panel_accordion .centre > .content,
.tpl_6 .panel_accordion .accordion,
.tpl_6 .panel_tabs .content,
.tpl_6 .panel_media_featured .media,
.tpl_6 .panel_media_featured .content {
  width:740px;
  max-width:100%;
}
.tpl_6 .panel h2,
.tpl_6 .panel h3,
.tpl_6 .panel_content_plain .content { text-align:left; }

.panel h1,
.panel .h1,
.panel h2,
.panel .h2 { text-align:center; }
.panel_content_plain .content .ctas,
.panel_content_columns .content .ctas,
.panel_accordion .content .ctas,
.panel_tabs .content .ctas { text-align:center; }
.panel_content_plain.content-left .content .ctas { text-align:left; }
.panel_content_plain.content-right .content .ctas { text-align:right; }
.panel_map .content h2, .panel_map .content .h2,
.panel_media_featured .content h2, .panel_media_featured .content .h2,
.panel_media_floated  .content h2, .panel_media_floated  .content .h2 { text-align:left; }

.panel_media_featured .media {
  text-align:center;
  width:800px;
  max-width:100%;
  margin:10px auto var(--units-4);
}
.panel_media_featured .media:last-child {
  margin-bottom:10px;
}
.panel_media_featured .media img {
  width:100%;
  height:100%;
	object-fit:cover;
  display:block;
}
.panel .media.jbmodal .fa-play {
	position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
  width:var(--units-5);
  height:var(--units-5);
  line-height:var(--units-5);
  text-align:center;
  border:2px solid var(--color-white);
  background:rgba(255,255,255,0.25);
  border-radius:var(--units-5);
  color:var(--color-white);
  font-size:2.5em;
	text-indent:0.15em;
	backdrop-filter:blur(calc(var(--units-1) * 0.25));
}
.panel .media.jbmodal:hover .fa-play,
.panel .media.jbmodal .fa-play:hover {
	color:var(--color-aqua);
	border:2px solid var(--color-aqua);
  background:rgba(255,255,255,1);
}
.panel_media_featured .content,
.panel_buckets .content {
	width:800px;
	max-width:100%;
	margin:0 auto;
	text-align:center;
}
.banner .columns,
.panel .columns {
  display:grid;
  gap:var(--units-6);
  margin:0 auto 0;
}
.panel .columns {
  align-items:center;
}
.columns.count-2 { grid-template-columns:repeat(2, 1fr); }
.columns.count-3 { grid-template-columns:repeat(3, 1fr); }
.columns.count-4 { grid-template-columns:repeat(4, 1fr); }
.panel .columns h2,
.panel .columns .h2,
.panel .columns h3,
.panel .columns .subheading,
.panel .columns p.ctas {
	width:auto;
  text-align:left;
}
.panel_content_columns .columns h3 {
  line-height:1.1em;
  margin-bottom:0.25em;
  color:inherit;
}
.panel_content_columns.dark .columns h3 {
  color:#fff;
}


/*	Element Blocks
============================================================================================== */
.video-js {
  margin:0 auto 50px;
  display:block !important;
}
.video-js,
video { outline:none !important; }
.video169 {
  height:0;
	width:100%;
	max-width:100%;
	padding-bottom:56.25%;
	position:relative;
}
.video169 iframe,
.video169 video {
  border:none;
  width:100%;
  height:100%;
	position:absolute;
	top:0;
	left:0;
}
.panel .content p,
.panel .content ul,
.panel .content ol {
	margin:0 auto 1em;
}
.panel .content h1:last-child,
.panel .content h2:last-child,
.panel .content p:last-child,
.panel .content ul:last-child,
.panel .content ol:last-child {
	margin-bottom:0;
}
.panel .content ul,
.panel .content ol {
	padding-left:1.15em;
}
.panel .content a,
.panel .link,
.banner .link {
	color:var(--color-secondary);
}
.panel .content a:hover,
.panel .link:hover,
.banner .link:hover {
	color:var(--color-accent);
}
.panel .content .ctas + .ctas .btn { margin-top:0; }
.panel .content:not(.fauxTable .content) {
  margin:var(--units-2) auto 0;
}
.panel .repeater {
  margin:var(--units-3) auto;
}
.panel .content:first-child,
.panel .repeater:first-child {
  margin:0 auto !important;
}
.panel .repeater:last-child { margin-bottom:0; }
.panel .content:empty { margin:0; height:0; display:none; }
.panel .content:empty + .content,
.panel .centre > .content:first-child,
.panel .content_pre { margin-top:0; }

.panel_media_floated .centre { 
  max-width:100%; 
  padding:0 !important; 
}
.fauxTable { 
  align-items:center;
  grid-template-columns:1fr 1fr;
  display:grid; 
}
.fauxTable > div { overflow:hidden; }
.panel_media_floated .content {
  margin:auto !important;
  padding:var(--units-7); 
}
.panel_media_floated .content:has(.ctas) {
  padding-bottom:var(--units-8);
}
.panel_media_floated.content-left .content {
  padding-left:var(--units-8);
}
.panel_media_floated.content-right .content {
  padding-right:var(--units-8);
}
.panel_media_floated .content .middle {
  max-width:480px;
}

.id_1 .panel_media_floated .content p {
  font-weight:400;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
}
.panel_media_floated .media { 
  height:100%;
  padding:0;
  position:relative; 
}
.panel_media_floated .media img { 
  min-height:100%;
  max-width:none;
  /* max-width:120%; */
  min-width:100%;
  display:block;
  position:absolute;
  top:50%;
  left:50%;
  transform:translateY(-50%) translateX(-50%);
  -moz-transform:translateY(-50%) translateX(-50%);
  -webkit-transform:translateY(-50%) translateX(-50%);
 }
.panel_map .mapwrap {
  height:100%;
  width:50%;
	position:absolute;
	top:0;
	right:0;
	z-index:20;
}
.panel_map.content-right .mapwrap { right:auto; left:0; }
.panel_map.content-default .content, .panel_map.content-left .content { padding-right:var(--units-3); }
.panel_map.content-right .content { padding-left:var(--units-3); }
.panel_map .centre {
  position:relative;
  width:100%;
  padding:6em 2em 5.75em;
  display:table;
}
.buckets:not(.columns) .bucket {
	position:relative;
  display:inline-block;
  width:380px;
  height:405px;
  margin:0 10px 20px;
}
.bucket {
  position:relative;
  padding:1.5em 2em;
  vertical-align:top;
  font-size:var(--font-size-1);
  background:var(--color-gray-98);
  border-bottom:4px solid rgba(0,0,0,0.1);
  box-sizing:border-box;
  -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-shadow:0 0 0 transparent;
}
.buckets-image .bucket,
.buckets-expanded .bucket {
  padding-bottom:calc(var(--units-3) + 1.5em);
}
.bucket:hover {
	background:var(--color-white);
  border-bottom:4px solid var(--color-secondary);
	box-shadow:0 0 5px rgba(0,0,0,0.1);
}
.bucket > i {
  color:var(--color-primary);
  font-size:1.5em;
  text-align:center;
  line-height:var(--units-2);
  height:var(--units-2);
  width:var(--units-2);
  position:absolute;
  top:1em;
  left:1em;
}
.bucket a {
  color:var(--color-primary);
  font-size:var(--font-size-3);
  font-weight:600;
  font-family:var(--typeface-display);
  text-align:left;
  line-height:var(--units-2);
  margin:0;
  display:block;
  position:relative;
}
.buckets-icon .bucket a,
.buckets-expanded .bucket a {
  padding-left:var(--units-2);
}
.buckets-image .bucket a {
  color:var(--color-white);
}
.bucket p {
  color:var(--color-gray-50);
  text-align:left;
  width:unset;
  margin:var(--units-2) 0 0;
  position:relative;
}
.buckets-image .bucket p {
  color:var(--color-gray-90);
}
.bucket .link {
  position:absolute;
  left:2em;
  bottom:1.5em;
}
.buckets-image .bucket {
  background:linear-gradient(45deg, var(--color-black), var(--color-navy));
}
.bucket .bg {
  mix-blend-mode:soft-light;
  filter:grayscale(1) contrast(1.2);
  -moz-filter:grayscale(1) contrast(1.2);
  -webkit-filter:grayscale(1) contrast(1.2);
  opacity:0.7;
}
.buckets-image .bucket a,
.buckets-image .bucket p,
.buckets-image .bucket .link {
  z-index:1;
}
.buckets:not(.columns) .bucket .btn {
	position:absolute;
  bottom:40px;
  left:50%;
  margin-left:-80px;
}
.bucket .btn {
  width:160px;
  padding-left:0;
  padding-right:0;
}

/* Accordion */
.accordion {
  margin:0 auto 3em;
}
.panel .filters {
  margin:0 auto 3em;
  color:var(--color-gray-50);
}
.panel.dark .filters {
  color:var(--color-gray-70);
}
.panel .filters span,
.panel .filters a {
  text-transform:uppercase;
}
.panel .filters .label {
  margin:0 1em 0 0;
  font-size:var(--font-size-neg-2);
  color:inherit;
  letter-spacing:0.02em;
}
.panel .filters .filter {
  display:inline-block;
  padding:0 1.5em;
  font-size:var(--font-size-neg-1);
  letter-spacing:0.05em;
  color:inherit;
  border-right:1px solid var(--color-gray-50);
  cursor:pointer;
}
.panel .filters .filter:last-child {
  border-right:0;
}
.panel .filters .filter:hover {
  color:var(--color-accent);
}
.panel .filters .filter.active {
  color:var(--color-yellow);
}
.panel.dark .filters .filter.active {
  color:var(--color-yellow);
}
.accordion .item {
  background:var(--color-white);
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  margin:0 0 1em;
  position:relative;
  overflow:hidden;
  -webkit-transition:border 0.165s ease;
  -moz-transition:border 0.165s ease;
  -ms-transition:border 0.165s ease;
  -o-transition:border 0.165s ease;
  transition:border 0.165s ease;
}
.accordion .heading {
  margin:0;
  padding:0.5em 1em 0.5em var(--units-4);
  position:relative;
  cursor:pointer;
}
.accordion .item:has(.heading:hover) {
  border:1px solid var(--color-secondary);
  -webkit-transition:border 0.165s ease;
  -moz-transition:border 0.165s ease;
  -ms-transition:border 0.165s ease;
  -o-transition:border 0.165s ease;
  transition:border 0.165s ease;
}
.accordion .item .heading:after {
	-moz-osx-font-smoothing:grayscale;
	-webkit-font-smoothing:antialiased;
	display:inline-block;
	font-style:normal;
	font-variant:normal;
	text-rendering:auto;
	font-family:"Font Awesome 6 Free";
	font-weight:900;
  content:"\f0da";
  display:block;
  width:45px;
  height:30px;
  line-height:30px;
  text-align:center;
  position:absolute;
  top:8px;
  left:0px;
  border-right:1px solid var(--color-gray-70);
  color:var(--color-secondary);
  font-size:24px;
}
.accordion .item.active .heading:after {
  content:"\f0d7";
}
.accordion .item .heading:hover:after {
  color:var(--color-secondary);
}
.accordion .heading .headline {
  font-size:var(--font-size-2);
  font-weight:600;
  line-height:1.618em;
  vertical-align:middle;
  margin:0;
  display:block;
}
.accordion .content {
  width:auto;
  margin:0 !important;
  padding:1em 2em 2em var(--units-4);
  display:none;
}
.accordion .content p,
.accordion .content .description {
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
  font-size:16px;
  line-height:1.6em;
  margin:0 auto 1em;
}
.accordion .content p.ctas { text-align:left; }
.accordion .heading .headline,
.accordion .content p,
.accordion .content .description,
.accordion .content > * { color:#333; }
.tabs { margin:0 auto 3em; }
.tabs .triggers {
  float:left;
  width:25%;
  position:relative;
  margin:1em 0 0 0;
  background:var(--color-gray-90);
  border:1px solid var(--color-gray-70);
  border-right:1px solid var(--color-white);
}
.tabs .triggers .trigger {
  color:var(--color-gray-30);
  font-size:var(--font-size-neg-1);
  font-weight:600;
  padding:0.75em 1em;
  display:block;
  cursor:pointer;
}
.tabs .triggers .trigger:hover {
  color:var(--color-white);
  background:var(--color-secondary);
}
.tabs .triggers .trigger.active {
  color:inherit !important;
  background:var(--color-white);
}
.tabs .mobileTriggers {}
.tabs .mobileTriggers select {
	display:inline-block;
  background:var(--color-gray-98);
  border:1px solid var(--color-gray-70);
  border-radius:3px;
  font-family:var(--typeface-default);
  font-size:var(--font-size-1);
  line-height:1.618em;
  min-width:250px;
  padding:0.25em 0.5em;
}
.tabs .tabContent {
  margin:0 auto 0 25%;
  border:1px solid #ccc;
  background:#fff;
}
.tabs .tabContent .item {
	display:none;
	padding:1em 2em 1.5em;
}
.tabs .tabContent .item:first-child { display:block; }
.tabs .tabContent .item p + p { margin-top:1em; }
.mapwrap iframe { width:100%; height:100%; }

.articles_list .item {
  max-width:100%;
  margin:0 0 var(--units-3);
}
.articles_list .item .postmeta {
  color:var(--color-gray-70);
  font-size:var(--font-size-neg-1);
  font-style:oblique;
}
.link i {
  font-size:0.8em;
  margin-left:5px;
  position:relative;
  top:-1px;
}


/* Testimonials */
.slick-track {
  display:flex;
}
.slick-track .slick-slide {
  display:flex;
  height:auto;
  align-items:center;
  justify-content:center;
}
.slick-arrow {
  color:var(--color-navy);
  font-size:0;
  text-align:center;
  background:none;
  border:none;
  height:40px;
  width:40px;
  display:block;
  position:absolute;
  top:40%;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
  cursor:pointer !important;
  z-index:99;
}
.panel.dark .slick-arrow,
.slick-arrow:hover {
  color:var(--color-yellow);
}
.panel.dark .slick-arrow:hover { color:var(--color-blue); }
.slick-prev { left:0; }
.slick-next { right:0; }
.slick-arrow:before {
  display:inline-block;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  font-size:30px;
}
.slick-prev:before {
  content:"\f053";  
}
.slick-next:before {
  content:"\f054";  
}
.testimonials .item,
.testimonials-videos .item {
  text-align:center;
  line-height:1.8;
  padding:0 100px;
  overflow:hidden;
}
.testimonials .item .inner {
  display:inline-block;
  vertical-align:middle;
}
.testimonials .quote {
  font-style:italic;
}
.testimonials .credits {
  color:var(--color-gray-50);
  font-size:0.85em;
  margin-top:25px;
}


/* Pillars */
.content-home .panel_html_custom:first-child {
  background:url(/assets/images/theme/bridge.png) center bottom no-repeat;
}
.content-home .panel_html_custom .centre {
  padding-top:0;
}
.content-home .panel_html_custom:first-child .centre { 
  padding-top:55px;
  padding-bottom:0; 
}
.content-home .panel_html_custom h2 {
  margin-bottom:1.25em;
}
.pillars {
  display:grid;
  grid-template-columns:33.33% 33.33% 33.33%;
}
.pillars .block {
  text-align:center;
  padding:50px 30px 40px;
  position:relative;
}
.pillars .navy { background:var(--color-navy); }
.pillars .yellow { background:var(--color-yellow); }
.pillars .blue { background:var(--color-blue); }
.pillars .block .bg {
  background-position:center center;
  -webkit-background-size:cover;
  -moz-background-size:cover;
  -o-background-size:cover;
  background-size:cover;
  filter:grayscale(100%);
  opacity:0.1;
}
.pillars .block .icon,
.pillars .block .h3 { position:relative; z-index:1; }
.pillars .block .icon { height:100px !important; }
.pillars .block .h3 { 
  color:var(--color-white); 
  text-shadow:1px 1px 0 rgba(0,0,0,0.15);
  margin:35px 0 0;
}


/*	Forms
============================================================================================== */
.form {
  text-align:center;
  width:960px;
  max-width:100%;
  margin:var(--units-3) auto 0;
  position:relative;
}
.fauxTable .form {
  width:540px;
  max-width:100%;
  margin:0 auto;
  display:inline;
}
.form .row { margin:0 -1em; }
.form .row .input {
  margin:0;
  padding:0 1em;
  width:50%;
  display:block;
  float:left;
  position:relative;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.form .row .input.full { width:100%; }
.form .input label {
  font-size:0.825em;
  font-weight:100;
  position:absolute;
  top:12px;
  left:30px;
  z-index:2;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.form .input label.focus {
	top:-26px;
	-webkit-transition:all 0.165s ease;
	-moz-transition:all 0.165s ease;
	-ms-transition:all 0.165s ease;
	-o-transition:all 0.165s ease;
	transition:all 0.165s ease;
	font-style:normal;
}
/* .form .input label.focus:after {
	content:"\f0d7";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
	font-size:inherit;
	text-rendering:auto;
  margin-left:0.5em;
  display:inline-block;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
} */
.form .input label.hidden { opacity:0.0; }
.form label .req { color:red; }
.form label.error { display:none !important; }
.form .options label.error { 
  color:#900;
  display:block !important; 
  position:absolute;
  bottom:0;
}
.form .input input[type=text],
.form .input input[type=email],
.form .input input[type=number],
.form .input input[type=tel],
.form .input input[type=date],
.form .input input[type=password],
.form .input select,
.form .input textarea {
  font-family:inherit;
  font-size:14px;
  background:#fff;
  border:1px solid var(--color-gray-70);
  border-radius:var(--radius-default);
  line-height:1.2em;
  height:3.4em;
  width:100%;
  margin:0 0 2.75em;
  padding:1em;
  display:block;
  outline:none;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.form .input select {
  -moz-appearance:none;
  -webkit-appearance:none;
}
.form .select {
  position:relative;
}
.form .select:after {
  content:"\f078";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  font-size:12px;
  line-height:1;
  display:block;
  position:absolute;
  top:50%;
  right:20px;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.form .input input[type=text].error,
.form .input input[type=email].error,
.form .input input[type=number].error,
.form .input input[type=tel].error,
.form .input input[type=date].error,
.form .input input[type=password].error,
.form .input select.error,
.form .input textarea.error {
	background:#FFB5B5 !important;
	border:1px solid #900 !important;
}
.form .input select {}
.form .input textarea {
  min-width:100%;
  width:100%;
	max-width:100%;
  min-height:100px;
	height:100px;
	max-height:200px;
}
.form .options {
  text-align:left;
  margin-bottom:1.5em;
  padding-left:25px;
  position:relative;
}
.form .row.last .options {
  margin-bottom:2.5em;
}
.form .input .options label {
  display:block;
  position:relative;
  top:-2px;
  left:auto;
}
.form .input .radCheck {
  vertical-align:middle;
  display:inline-block;
  position:absolute;
  top:0;
  left:0;
}
.form .input input[type=radio],
.form .input input[type=checkbox] {}
.form .btn { margin-top:0; }
.form p.error {
  color:#900;
  font-size:14px;
  background:#FFB5B5 !important;
  border:1px solid #900 !important;
  margin:0 0 3em !important;
  padding:0.75em 1em;
  outline:none;
  border-radius:4px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.token { color:transparent !important; }


/* Search Results */
.simplesearch-results {
  margin-bottom:2em !important;
}
.simplesearch-result {
  border-bottom:1px solid var(--color-gray-90);
  padding:25px 0;
}
.simplesearch-result:first-child {
  border-top:1px solid var(--color-gray-90);
}
.simplesearch-result h3 {
  font-style:normal;
  text-align:left;
  margin-bottom:15px;
}
.panel .simplesearch-result h3 a {
  color:var(--color-secondary);
  font-style:normal;
  border-bottom:none;
}
.panel .simplesearch-result:hover {
  cursor:pointer;
}
.panel .simplesearch-result:hover a,
.panel .simplesearch-result:hover .link {
  color:var(--color-accent);
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
  cursor:pointer;
}

.simplesearch-paging {
  font-size:0;
  margin:30px 0;
}
.simplesearch-result h3:last-child,
.simplesearch-paging:last-child {
  margin-bottom:0;
}
.pageList li,
.simplesearch-paging span {
  font-size:14px;
  vertical-align:middle;
  display:inline-block;
}
.simplesearch-page {
  margin:0 10px;
}
.pageList li+li {
  margin-left:10px;
}
.pageList li.prev {
  margin-right:3px;
}
.pageList li.next {
  margin-left:13px;
}
.pageList li.first,
.pageList li.last {
  display:none;
}
.pageList li a,
.simplesearch-page a,
.simplesearch-current-page {
  color:var(--color-gray15) !important;
  font-weight:normal !important;
  font-style:normal !important;
  text-align:center;
  border:1px solid var(--color-accent) !important;
  border-radius:var(--radius-default);
  line-height:39px;
  height:40px;
  width:40px;
  display:inline-block;
}
.pageList li a.active,
.simplesearch-current-page {
  color:var(--color-white) !important;
  font-weight:bold;
  background:var(--color-gray-70);
  border-color:var(--color-gray-70) !important;
  pointer-events:none;
}
.pageList li a:hover,
.simplesearch-page a:hover {
  color:var(--color-white) !important;
  background:var(--color-accent);
  border-color:var(--color-accent) !important;
  cursor:pointer;
}
.pageList li.control a {
  line-height:43px;
}
.pageList li i {
  font-size:20px;
}
.pageList li.control i:before,
.pageList li.control i:after {
  color:var(--color-brown) !important;
}
.pageList li a:hover i:before,
.pageList li a:hover i:after {
  color:var(--color-white) !important;
}

/* Page-Specific Customization */
.id_25 .crumbContainer {
  text-align:left;
  margin:-20px auto 23px;
  position:relative;
  bottom:0;
  left:0;
}
.id_25 .crumbContainer .crumb a {
  color:var(--color-white) !important;
}
.id_25 .crumbContainer .crumb a:hover {
  color:var(--color-yellow) !important;
}
.id_29 h1,
.id_31 h1 { font-size:24px; }
.id_23 .panel .columns { 
  width:960px; 
  max-width:100%;
}
.id_25 .panel_html_custom .centre { padding-bottom:0; }
.id_9 .panel .content,
.id_25 .panel .content,
.panel_form .content,
.tpl_5 .panel_cta:last-child .content,
.tpl_6 .panel_cta:last-child .content { 
  width:700px; 
  max-width:100%;
}
.id_25 .panel_html_custom .content {
  width:auto;
}
.id_25 iframe {
  width:100%;
  margin:0 auto;
  display:block;
}
.tpl_7 .panel_media_floated .content { 
  padding:var(--units-3) var(--units-5); 
}
.id_29 .fauxTable .form,
.id_31 .fauxTable .form {
  width:96%;
  margin-top:50px;
  display:block;
} 
.id_30 .form .options { margin-bottom:1em; }

.id_81 .panel .columns { align-items:start; }

/*	Misc
============================================================================================== */
.progressBar {
  position:fixed;
  top:60px;
  left:0;
  height:6px;
  background:var(--color-secondary);
  width:0%;
	max-width:100%;
	z-index:201;
}
@media only screen and (max-width:767px) {
  .progressBar { height:4px; }
}
.jbmodal-box {
  background:var(--color-white);
  border:none;
  padding:25px;
}
.jbmodal-box h2,
.jbmodal-box h3,
.jbmodal-box h4,
.jbmodal-box h5 {}
.jbmodal-box .jbmodal-title {}
.jbmodal-box .jbmodal-controls i.fa:hover {
  color:#fff;
  background:var(--color-accent);
}
.screenType {
  color:transparent;
  width:1px;
  height:1px;
  border:0;
  position:fixed;
  bottom:0;
  overflow:hidden;
}
.accessibe {
	position:fixed;
	display:block !important;
	inset:auto 20px 20px auto;
  border-radius:50%;
  width:30px;
  height:30px;
  font-size:30px;
  line-height:30px;
  text-align:center;
  visibility:visible;
  cursor:pointer;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  opacity:0.5;
  line-height:1;
  outline:none 0 !important;
  overflow:visible !important;
  color:var(--color-accent);
	background:var(--color-white);
  z-index:999999999999;
  -webkit-transition:all .15s ease;
  -moz-transition:all .15s ease;
  -o-transition:all .15s ease;
  transition:all .15s ease;
}
.accessibe:hover {
	opacity:1;
  -webkit-transition:all .15s ease;
  -moz-transition:all .15s ease;
  -o-transition:all .15s ease;
  transition:all .15s ease;
}
.modx_edit {
	position:fixed;
  display:block !important;
  inset:auto 20px 60px auto;
  border-radius:50%;
  width:30px;
  height:30px;
  font-size:1em;
  line-height:30px !important;
  text-align:center;
  visibility:visible;
  cursor:pointer;
  line-height:1;
  outline:none 0 !important;
  overflow:visible !important;
  background:var(--color-yellow);
	color:var(--color-white);
  z-index:999999999999;
  transition:all 0.15s ease;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
.modx_edit:hover {
  opacity:1;
}

.gt_switcher_wrapper {
  background:var(--color-gray-30);
  padding:5px 5px 5px 15px;
  left:0 !important;
}
.gt_switcher_wrapper a.glink {
  color:var(--color-white);
}
.gt_switcher_wrapper a.glink img,
.gt_switcher_wrapper a.glink span {
  vertical-align:middle !important;
  display:inline-block !important;
}
.gt_switcher_wrapper a.glink img {
  height:18px !important; 
  width:18px !important;
}
.gt_switcher_wrapper .gt-current-lang img { opacity: 1; }
.gt_switcher_wrapper a.glink span {
  font-size:16px !important;
}


/*	RESPONSIVE
============================================================================================== */

/*	XL Desktop			--	1900+
============================================================================================== */
@media only screen and (min-width:1900px){

  .content-home .panel_html_custom {
    background-size:105% auto;
  }
  
}

@media only screen and (max-width:1399px) {
  p br { display:none; }
  .form p br { display:block; }
  
  .tpl_7 .fauxTable {
    grid-template-columns:40% 60%;
  }
}

/*	Small Desktop	--	1024-1199
============================================================================================== */
@media only screen and (max-width:1199px) {
	.mainNav { display:none; }
	.mainNav li.id_1 { display:block; }
  .header {
    height:60px;
    box-shadow:0 2px 4px rgba(0, 0, 0, 0.15);
  }
  .header .logo img { height:40px; }
	.header .fa-bars { display:block; }
  .menuOpen .header .fa-bars:before {
    content:"\f00d";
  }
	.header .fa-search {
    font-size:20px !important;
    line-height:60px;
		margin-right:4.5em;
	}
  .mainNav {
    width:375px;
    max-width:100%;
    margin:0;
    background:var(--color-primary);
    position:absolute;
    top:60px;
    right:0;
    overflow-y:scroll;
  }
	.mainNav ul li { font-size:16px; }
  .mainNav>ul>li {
    display:block !important;
    margin:0 0 -1px 0;
    height:auto;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,0.1);
    border-bottom:1px solid rgba(255,255,255,0.1);
  }
  .mainNav>ul>li>a,
  .mainNav>ul>li>span {
    color:#fff !important;
    font-size:18px;
    text-transform:uppercase;
    letter-spacing:1px;
    background:inherit !important;
    margin:0;
    padding:18px 20px 18px 48px !important;
    height:auto !important;
    line-height:1em !important;
    display:block;
    z-index:1;
    transition:none !important;
  }
  .mainNav>ul>li.current>a:before,
  .mainNav li.parent>a:after,
  .mainNav li.parent>span:after,
  .mainNav>ul li.id_20 .trigger {
    display:none !important;
  }
  .mainNav>ul li.parent .trigger {
    color:#fafafa;
    font-size:14px;
    text-align:center;
    line-height:40px;
    height:40px;
    width:48px;
    display:block;
    position:absolute;
    top:0;
    left:0;
    z-index:2;
  }
  .mainNav>ul>li>ul {
    display:none;
    max-height:unset;
    position:relative;
    top:0;
    width:auto !important;
    background:transparent;
  }
  .mainNav>ul>li:hover>ul,
  .mainNav>ul>li>ul>li:hover>ul {
    display:none;
    max-height:unset;
    overflow:visible;
  }
  .mainNav>ul>li>a:hover,
  .mainNav>ul>li:hover>a {
    color:inherit;
    background:inherit;
  }
	.mainNav > ul > li > ul > li { border-top:0; }
  .mainNav>ul>li>ul li.parent .trigger { padding-left:20px; }
  .mainNav>ul>li>ul>li>a {
    font-size:16px;
    padding:8px 32px 12px 64px;
    display:block;
  }
  .mainNav>ul>li>ul>li>ul {
    display:none;
    background:transparent;
    max-height:unset;
    width:auto;
    position:relative;
    left:auto;
  }
  .mainNav>ul>li>ul>li>ul>li>a {
    font-size:16px;
    padding:8px 32px 8px 84px;
    display:block;
  }

  h1, .h1 { font-size:var(--font-size-6); }

  .banner { padding-top:50px; }

  .panel_media_floated.content-left .content,
  .panel_media_floated.content-right .content {
    padding-left:var(--units-5);
    padding-right:var(--units-5);
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
  }
  .tpl_7 .panel_media_floated .content {
    padding:var(--units-4) !important;
  }
	.panel-media_featured .bg {
		aspect-ratio:16 / 8;
	}
  
  h1 br,
  h2 br,
  h3 br,
  p br { display:none; }
}


/*	Tablets			--	768-1023
============================================================================================== */
@media only screen and (max-width:1023px){
	.header .fa-phone {
	  font-size:16px;
    line-height:48px;
	  height:48px;
    padding:0px 12px;
    float:right;
	}
  
  .banner-home .centre,
  .banner-home .bg { width:50%; }

  .pillars .block { padding:50px 25px; }
  .pillars .block .h3 { font-size:24px; }
  
	.tabs .mobileTriggers { display:block; margin:0 0 0.5em; }
	.tabs .tabContent { margin-left:0; min-height:0 !important; }
  .columns.count-4 {
    grid-template-columns:repeat(2, 1fr);
  }
	.panel_map { min-height:0; }
	.panel_map .content {
		width:100%;
		max-width:100% !important;
		padding:0 !important;
	}
	.panel_map .mapwrap {
		width:100%;
		height:540px;
    position:relative;
	}
  
  .video-js { max-width:100% !important; }
}


/*	Phones			--	under 768
============================================================================================== */
@media only screen and (max-width:767px){
  
	.centre { padding:var(--units-4) 1.5em; }
  .banner .centre { padding:var(--units-5) 1.5em var(--units-4); }
  
  .header .logo { left:1.5em; }
	.header > .fa-bars, .header > .fa-times { right:0; }
	.header .fa-search { margin-right:3.5em; }

	.wrapper { min-height:60%; }
	.wrapper > div:last-child { padding-bottom:0; }
  
  h1 { font-size:var(--font-size-5); }
  h2 { font-size:var(--font-size-5); }
  p { font-size:18px; }
  
  .btn { 
    font-size:15px;
    padding:0.7em 1.4em 0.75em;
  }
  .btn.yellow { background:#f0b318; }
  
  .banner-home { height:500px; }
  .banner-home .centre, .banner-home .bg { width:100%; }
  .banner-home .bg {
    opacity:0.25;
  }
  
  .testimonials .item,
  .testimonials-videos .item { padding:0 40px; }
  .slick-arrow {
    width:30px;
    height:30px;
  }
  .slick-arrow:before { font-size:20px; }
  .slick-prev { text-align:left; }
  .slick-next { text-align:right; }
  
	.panel_media_featured .content,
	.panel_media_floated .content { max-width:100% !important; }

	.panel_media_floated .fauxTable { 
    display:grid; 
    grid-template-columns:1fr;
  }
	.panel_media_floated .fauxTable > div { 
    display:block; 
    margin:0 auto; 
  }
  .panel_media_floated .fauxTable .content { 
    order:2; 
    width:100%; 
    padding:var(--units-4) 1.5em var(--units-5);
    margin-bottom:0; 
  }
  .tpl_7 .panel_media_floated .content {
    padding:var(--units-3) 2em !important;
  }
	.panel_media_floated .fauxTable .media { 
    order:1; 
    width:100%;
    height:300px;
  }
  .panel_media_floated .media img {
    max-width:170%;
    top:60%;
  }

  .accordion .content { padding:8px 16px 16px; }

  .panel .columns {
    gap:var(--units-4);
  }
  .columns.count-2,
  .columns.count-3,
  .columns.count-4 {
    grid-template-columns:repeat(1, 1fr);
  }
  .columns.count-2 .media {
    text-align:center;
    order:1;
  }
  .columns.count-2 .item:not(.media) {
    order:2;
  }
  .id_81 .columns.count-2 .media {
    text-align:center;
    order:2;
  }
  .id_81 .columns.count-2 .item:not(.media) {
    order:1;
  }
  .id_81 .panel h2,
  .id_81 .panel p { text-align:left !important; }
  .id_81 .panel_cta h2,
  .id_81 .panel-testimonials h2, 
  .id_81 .panel_cta p,
  .id_81 .panel-testimonials p {text-align:center !important; }
  
  
  .pillars { grid-template-columns:1fr; }
  .pillars .block .icon { height:80px; }
  .pillars .block .h3 { margin:20px 0 0; }

	.form .row { margin:0; }
	.form .row .input,
	.form .label {
	  padding:0 0px;
	  width:100%;
	}
	.form .input label { left:1em; }
  
  .footer {  padding:30px 2em; }
  .footer .left,
  .footer .social,
  .footer .right,
  .footer .credits { 
    text-align:center;
    float:none;
  }
  .footer .social { margin:20px auto; }
  .footer .credits,
  .footer .copy { font-size:14px; }
  .footer .credits a:last-of-type { padding-right:1em; }
  .footer .credits a:first-of-type { padding-left:0; }
  .footer .social {
    position:relative;
    top:auto;
    left:auto;
    transform:none !important;
  }

  .id_1 .media p { text-align:left !important; }
  .panel_media_floated .content .middle { max-width:100%; }
  .panel_cta .centre { padding:var(--units-4) 1.5em !important; }
}


/*	Phones Portrait	--	under 540
============================================================================================== */
@media only screen and (max-width:539px){
  
  .header .logo img { height:34px; }
  
	.panel_media_floated .fauxTable .media { width:100%; }
	.panel .filters .label {
	  display:block;
	  margin:0 0 0.5em;
	}
	.panel .filters .filter {
	  padding:0.33em 1em;
	  margin:0 1em 0.5em 0;
	  border:1px solid #999;
	  border-radius:4px;
	}
	.panel .filters .filter:last-child { border-right:1px solid #999; }
	.panel .filters .filter:hover,
	.panel .filters .filter.active {
	  background:#fafafa;
	}
	.panel.dark .filters .filter {}
	.panel.dark .filters .filter:hover,
	.panel.dark .filters .filter.active {
		background:#232b33;
  	color:#88abb8;
	}
  .columns.count-2,
  .columns.count-3,
  .columns.count-4 {
    grid-template-columns:repeat(1, 1fr);
  }

}




/*	Small Phones	--	under 420
============================================================================================== */
@media only screen and (max-width:420px){
  
  blockquote { font-size:var(--font-size-3); }
  
  .footer * { text-align:center !important; }
  .footer .left,
  .footer .right {
    float:none;
  }
  .footer .logo {
    display:inline-block;
    position:relative;
    top:auto;
    left:auto;
    transform:none !important;
  }

}




/*	SCREEN SIZE GLOBALS
============================================================================================== */
@media only screen and (min-width:1024px){ /* desktop only */ .desktop { display:none; } }
@media only screen and (min-width:768px) and (max-width:1023px) { /* tablets */ .tablet { display:none; } }
@media only screen and (max-width:767px) { /* phones */ .mobile { display:none; } }