/*! Made with Bones: http://themble.com/bones :) */
/******************************************************************
Site Name:
Author:

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.

Helpful articles on Sass file organization:
http://thesassway.com/advanced/modular-css-naming-conventions

******************************************************************/
/*********************
IMPORTING PARTIALS
These files are needed at the beginning so that we establish all
our mixins, functions, and variables that we'll be using across
the whole project.
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Variables

Here is where we declare all our variables like colors, fonts,
base values, and defaults. We want to make sure this file ONLY
contains variables that way our files don't get all messy.
No one likes a mess.

******************************************************************/
/*******************
BREAKPOINTS
*******************/
/*********************
COLORS
Need help w/ choosing your colors? Try this site out:
http://0to255.com/
*********************/
/*
Here's a great tutorial on how to
use color variables properly:
http://sachagreif.com/sass-color-variables/
*/
@import url("https://fonts.googleapis.com/css2?family=Cabin:ital,wght@0,400..700;1,400..700&display=swap");
@import url("https://use.typekit.net/ave2cdb.css");
.sj-icon {
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-size: contain;
  mask-size: contain;
  line-height: 1.25em;
  font-size: 1rem;
  width: 24px;
  height: 24px;
}

.search-icon {
  -webkit-mask-image: url("../images/icons/search.svg");
          mask-image: url("../images/icons/search.svg");
}

.arrow-right-icon {
  -webkit-mask-image: url("../images/icons/arrow-right-square.svg");
          mask-image: url("../images/icons/arrow-right-square.svg");
}

/******************************************************************
Site Name:
Author:

Stylesheet: Typography

Need to import a font or set of icons for your site? Drop them in
here or just use this to establish your typographical grid. Or not.
Do whatever you want to...GOSH!

Helpful Articles:
http://trentwalton.com/2012/06/19/fluid-type/
http://ia.net/blog/responsive-typography-the-basics/
http://alistapart.com/column/responsive-typography-is-a-physical-discipline

******************************************************************/
/*********************
FONT FACE (IN YOUR FACE)
*********************/
/*  To embed your own fonts, use this syntax
  and place your fonts inside the
  library/fonts folder. For more information
  on embedding fonts, go to:
  http://www.fontsquirrel.com/
  Be sure to remove the comment brackets.
*/
/***********************
// Typoagraphy Global Styles
**********************/
body {
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  line-height: 1.4;
  font-weight: 400;
  color: #404040;
  letter-spacing: 1px;
  hyphens: initial;
  word-break: initial;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
}

h1 {
  font-size: 50px;
  line-height: 60px;
}

h2, .h2 {
  font-size: 40px;
  line-height: 60px;
}

h3 {
  font-size: 24px;
  line-height: 30px;
}

h4 {
  font-size: 20px;
}

h5 {
  font-size: 16px;
}

h1,
h2,
h3 {
  margin: 24px 0;
  font-weight: 700;
}

h4,
h5 {
  margin: 12px 0;
  font-weight: 400;
}

p {
  font-size: 16px;
  line-height: 1.4;
  hyphens: none;
  margin-bottom: 0.66667rem;
}

p.large {
  font-size: 16px;
  line-height: 1.25;
  font-weight: 500;
}

button, .button, input[type=submit], input[type=reset], input[type=button] {
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  line-height: 1.4;
  font-weight: 400;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-size: inherit;
}

a:not(.button), .link, .link--cta {
  font-size: 16px;
  line-height: 1.4;
  font-weight: 400;
  color: var(--sj-accent-color, #005B7F);
  transition: color 0.3s ease;
}
a:not(.button):hover, .link:hover, .link--cta:hover {
  color: var(--sj-accent-color, rgba(0, 91, 127, 0.5));
}

li, label {
  font-size: 16px;
  margin-bottom: 0.66667rem;
}

/*
some nice typographical defaults
more here: http://www.newnet-soft.com/blog/csstypography
*/
p {
  -ms-word-wrap: break-word;
  word-break: break-word;
  word-wrap: break-word;
  hyphens: none;
  -ms-font-feature-settings: "liga", "dlig";
  -o-font-feature-settings: "liga", "dlig";
  font-feature-settings: "liga", "dlig";
}

@media (min-width: 576px) {
  h1 {
    font-size: 60px;
  }
  h2, .h2 {
    font-size: 50px;
  }
}
@media (min-width: 876px) {
  h1 {
    font-size: 78px;
    line-height: 110px;
  }
}
@media screen and (min-width: 1200px) {
  h4 {
    font-size: 21px;
  }
}
/******************************************************************
Site Name:
Author:

Stylesheet: Mixins Stylesheet

This is where you can take advantage of Sass' great features: Mixins.
I won't go in-depth on how they work exactly,
there are a few articles below that will help do that. What I will
tell you is that this will help speed up simple changes like
changing a color or adding CSS3 techniques gradients.

A WORD OF WARNING: It's very easy to overdo it here. Be careful and
remember less is more.

Helpful:
http://sachagreif.com/useful-sass-mixins/
http://thesassway.com/intermediate/leveraging-sass-mixins-for-cleaner-code
http://web-design-weekly.com/blog/2013/05/12/handy-sass-mixins/

******************************************************************/
/*********************
TRANSITION
*********************/
/*
I totally rewrote this to be cleaner and easier to use.
You'll need to be using Sass 3.2+ for these to work.
Thanks to @anthonyshort for the inspiration on these.
USAGE: @include transition(all 0.2s ease-in-out);
*/
/*********************
Backgrounds
*********************/
/*
I totally rewrote this to be cleaner and easier to use.
You'll need to be using Sass 3.2+ for these to work.
Thanks to @anthonyshort for the inspiration on these.
USAGE: @include backgroundsize(all 0.2s ease-in-out);
*/
/*********************
CSS3 GRADIENTS
Be careful with these since they can
really slow down your CSS. Don't overdo it.
*********************/
/* @include css-gradient(#dfdfdf,#f8f8f8); */
/*********************
BOX SIZING
*********************/
/* @include box-sizing(border-box); */
/* NOTE: value of "padding-box" is only supported in Gecko. So
probably best not to use it. I mean, were you going to anyway? */
/*********************
CSS3 TRANSITIONS
Be careful with these since they can
really slow down your CSS. Don't overdo it.
*********************/
/* Accesibility */
.sr-only:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* Global Styles */
html, body {
  overflow-x: hidden;
  transition: background 0.2s ease-in;
}

body.active {
  background: #132E56;
  transition: background 0.2s ease-in;
}

.bg-light {
  background: #fff;
}

.bg-dark {
  background: #202020;
}

.bg-dark-blue {
  background: #132E56;
}

.bg-light-blue {
  background: #EBF5FD;
}

.text-white {
  color: #fff;
}

.text-light-blue {
  color: #EBF5FD;
}

.text-teal {
  color: #005B7F;
}

.text-green {
  color: #53950E;
}

.font-weight-700 {
  font-weight: 700;
}

.border-radius, .text-editor img, img.full-width-img {
  border-radius: 4px;
}

.has-top-line:before {
  display: block;
  content: "";
  width: 100%;
  height: 10px;
  background: var(--sj-accent-color, #132E56);
  margin-bottom: 29px;
}

a {
  text-decoration: none;
}

img {
  max-width: 100%;
}
img.full-width-img {
  display: block;
  width: 100%;
  margin: 50px auto 0;
}
@media screen and (min-width: 1200px) {
  img.full-width-img {
    margin: 100px auto 0;
  }
}

.sj-max-width {
  max-width: 1280px;
  margin: 0 auto;
}

.section-padding {
  padding: 30px;
}

.section-heading {
  text-align: center;
  margin-bottom: 12px;
}

.section-subheading {
  text-align: center;
  font-size: 24px;
}

.bg-center {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 50px;
}
.bg-center.is-logo {
  background-size: 80%;
  background-color: #fff;
}

strong, b {
  font-weight: 700;
}

em, i {
  font-style: italic;
}

.list-style-none {
  list-style: none;
}

.img-placeholder {
  background-color: #FFF8DF;
  background-size: 120px;
}
.img-placeholder img {
  transform: scale(0.5);
}

@media (min-width: 768px) {
  .section-padding {
    padding: 50px 30px;
  }
}
.pill {
  border-radius: 100px;
  border: 1px solid #404040;
  padding: 8px 16px;
}
.pill.white {
  color: #fff;
  border-color: #fff;
}

.p-relative {
  position: relative;
}

input[type=text], input[type=search] {
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  outline: none !important;
  box-shadow: none !important;
}
input[type=text]:focus, input[type=text]:focus-visible, input[type=text]:active, input[type=search]:focus, input[type=search]:focus-visible, input[type=search]:active {
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  outline: none !important;
  box-shadow: none !important;
}
input[type=text]::-moz-placeholder, input[type=search]::-moz-placeholder {
  color: #969696;
}
input[type=text]::placeholder, input[type=search]::placeholder {
  color: #969696;
}
input[type=text]::-webkit-search-decoration, input[type=text]::-webkit-search-cancel-button, input[type=text]::-webkit-search-results-button, input[type=text]::-webkit-search-results-decoration, input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-results-button, input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
  appearance: none;
}
input[type=text]::-webkit-inner-spin-button, input[type=text]::-webkit-outer-spin-button, input[type=search]::-webkit-inner-spin-button, input[type=search]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.circle-separator, .gf_login_links a:not(:last-of-type):after {
  width: 4px;
  height: 4px;
  display: inline-block;
  background: #969696;
  border-radius: 100px;
  vertical-align: middle;
  margin: 0 5px;
}

/*********************
IMPORTING MODULES
Modules are reusable blocks or elements we use throughout the project.
We can break them up as much as we want or just keep them all in one.
I mean, you can do whatever you want. The world is your oyster. Unless
you hate oysters, then the world is your peanut butter & jelly sandwich.
*********************/
.button-wrapper {
  margin-top: 24px;
  -moz-column-gap: 16px;
       column-gap: 16px;
}
.button-wrapper .button {
  margin-bottom: 15px;
}
.button-wrapper .button:last-of-type {
  margin-bottom: 0;
}

.button {
  display: inline-block;
  width: 100%;
  padding: 8px 10px;
  text-align: center;
  border: 1px solid var(--sj-accent-color, #132E56);
  background: var(--sj-accent-color, #132E56);
  color: #fff;
  border-radius: 4px;
  transition: all 0.35s ease-in;
}
.button:hover {
  color: var(--sj-accent-color, #132E56);
  background: #fff;
}
.button.ghost-btn {
  background: transparent;
  color: var(--sj-accent-color, #fff);
  border-color: #fff;
}
.button.ghost-btn:hover {
  background: var(--sj-accent-color, #fff);
  color: #000000;
}
.button.green {
  background: #53950E;
  border-color: #53950E;
}
.button.white {
  background: #fff;
  color: #202020;
  border-color: #fff;
}
.button.white:hover {
  background: #202020;
  color: #fff;
}

@media (min-width: 576px) {
  .button-wrapper .button {
    margin-bottom: 0;
  }
  .button {
    width: -moz-max-content;
    width: max-content;
  }
}
.inner-section .inner-container {
  border-top: 1px solid #969696;
  padding-top: 10px;
}

@media screen and (min-width: 1200px) {
  .inner-section .inner-container {
    display: grid;
    grid-template-columns: 210px 1fr;
    gap: 32px;
    padding-top: 20px;
  }
  .inner-section .inner-container .inner-left-col h4 {
    margin-top: 0;
  }
}
@media screen and (min-width: 1440px) {
  .inner-section .inner-container {
    grid-template-columns: 300px 1fr;
  }
}
.section-inner-full {
  padding-top: 50px;
}
.section-inner-full .gform_wrapper .gform_title {
  text-align: left;
  font-size: 24px;
  line-height: 30px;
  margin-top: 0;
}

@media screen and (min-width: 1200px) {
  .section-inner-full .inner-full-title {
    margin-top: 0;
  }
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item {
  margin-top: 60px;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-image {
  padding-bottom: 100%;
  width: 100%;
  border-radius: 16px;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-image.is-logo {
  padding-bottom: 60%;
  background-size: contain !important;
  background-repeat: no-repeat;
  background-position: center;
}

.full-width-img.is-logo {
  max-width: 300px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 auto;
  display: block;
}

.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .inner-tile-text {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .inner-tile-text h3 {
  margin-bottom: 0;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .inner-tile-text p {
  margin-bottom: 0;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .inner-tile-text a {
  margin-bottom: 0;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .inner-tile-text .team-info-toggle {
  margin-top: 1rem;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .button {
  width: 100%;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .phone-number {
  font-size: 16px;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board .phone-number-placeholder {
  font-size: 16px;
  visibility: hidden;
  margin: 0;
  line-height: 1.2;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded {
  display: flex;
  flex-direction: column;
  background: #005B7F;
  padding: 20px 16px;
  border-radius: 16px;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-image {
  display: none;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .expanded-name {
  color: #FFF8DF;
  margin: 0;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .expanded-description {
  color: #fff;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-text h3.text-teal, .section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-text p.text-green, .section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-text .link, .section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-text .phone-number, .section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-text .phone-number-placeholder, .section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .inner-tile-text .button-placeholder {
  display: none;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .team-info-toggle {
  display: none;
}
.section-inner-tiles .inner-tile-wrapper .inner-tile-item.team-board.expanded .team-description-expanded {
  display: block !important;
}
.section-inner-tiles .inner-tile-wrapper .team-description-expanded .team-description-content .expanded-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}
.section-inner-tiles .inner-tile-wrapper .team-description-expanded .team-description-content .expanded-description {
  color: #202020;
  line-height: 1.6;
  margin-bottom: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-size: 16px;
}
.section-inner-tiles .inner-tile-wrapper .team-info-collapse {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  font-size: 20px;
  padding: 8px;
  line-height: 1;
  transition: color 0.25s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  min-height: 30px;
}
.section-inner-tiles .inner-tile-wrapper .team-info-collapse:hover {
  color: #FFF8DF;
  border-radius: 4px;
  text-decoration: none;
}
.section-inner-tiles .inner-tile-wrapper .team-info-collapse i {
  pointer-events: none;
  font-size: 16px;
}

@media screen and (min-width: 576px) {
  .section-inner-tiles .inner-tile-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: stretch;
  }
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 1.5rem;
    align-content: start;
  }
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text {
    display: grid;
    grid-template-rows: auto auto auto 1fr auto;
    gap: 0.5rem;
    align-content: start;
  }
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text h3 {
    margin-bottom: 0;
    min-height: 1.5em;
    display: flex;
    align-items: flex-start;
  }
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text p {
    margin-bottom: 0;
  }
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text p.text-green {
    min-height: 1.2em;
  }
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text > div:last-child,
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text > a:last-child,
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item .inner-tile-text .team-info-toggle {
    margin-top: auto;
    align-self: end;
  }
}
@media screen and (min-width: 876px) {
  .section-inner-tiles .inner-tile-wrapper {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (min-width: 992px) {
  .section-inner-tiles .inner-tile-wrapper {
    gap: 32px;
  }
}
@media screen and (min-width: 1200px) {
  .section-inner-tiles .inner-tile-wrapper .inner-tile-item {
    margin-top: 0;
  }
}
.faq-item {
  background: #FFF8DF;
  padding: 0;
  transition: all 0.25s ease-in;
  width: 100%;
  margin-bottom: 12px;
}
.faq-item:hover {
  background: #EBF5FD;
}
.faq-item .faq-question {
  width: 100%;
  background: none;
  border: none;
  padding: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  text-align: left;
  transition: background-color 0.25s ease-in;
}
.faq-item .faq-question:hover {
  background: #EBF5FD;
}
.faq-item .faq-question[aria-expanded=true] .faq-icon {
  transform: rotate(45deg);
}
.faq-item .faq-question h3 {
  margin: 0;
  flex: 1;
}
.faq-item .faq-question .faq-icon {
  font-size: 24px;
  font-weight: 300;
  color: #005B7F;
  transition: transform 0.25s ease-in;
  margin-left: 16px;
}
.faq-item .faq-answer {
  padding: 0 24px 24px;
}
.faq-item .faq-answer .text-editor {
  margin-top: 0;
}

@media screen and (min-width: 1200px) {
  .section-inner-faqs .post-ajax-list {
    grid-template-columns: 1fr; /* Make FAQs full-width */
  }
}
.listings-container li {
  margin-bottom: 0;
  padding: 10px 0;
  border-bottom: 1px solid #969696;
}
.listings-container li:first-of-type {
  border-top: 1px solid #969696;
}

@media screen and (min-width: 1200px) {
  .listings-container li {
    padding: 20px 0;
  }
  .listings-container li:first-of-type {
    border-top: 0;
    padding-top: 0;
  }
}
/* Reveal Animation */
.reveal {
  transition: all 0.35s ease-in;
}
.reveal.intro-card-image, .reveal.list-style-none, .reveal.listing-item-right-col, .reveal.hero-content-container {
  opacity: 0;
  transform: translateY(50px);
}
.reveal.intro-card-image.active, .reveal.list-style-none.active, .reveal.listing-item-right-col.active, .reveal.hero-content-container.active {
  opacity: 1;
  transform: translateY(0);
}
.reveal.button-wrapper, .reveal.listing-item-image, .reveal.inner-left-col {
  opacity: 0;
  transform: translateX(-50px);
}
.reveal.button-wrapper.active, .reveal.listing-item-image.active, .reveal.inner-left-col.active {
  opacity: 1;
  transform: translateX(0);
}
.reveal.inner-right-col {
  opacity: 0;
  transform: translateX(50px);
}
.reveal.inner-right-col.active {
  opacity: 1;
  transform: translateX(0);
}
.reveal.inner-tile-item {
  opacity: 0;
  transform: translateY(-50px);
}
.reveal.inner-tile-item.active {
  opacity: 1;
  transform: translateY(0);
}

#footer,
#footer p,
#footer a:not(.button) {
  color: #fff;
}
#footer h6 {
  text-transform: uppercase;
}
#footer .footer-text {
  margin-bottom: 60px;
}
#footer .footer-text .footer-logo {
  height: 100px;
}
#footer .button {
  text-align: center;
}
#footer .footer-items {
  gap: 80px;
}
#footer .footer-items .footer-sitemap,
#footer .footer-items .footer-social-links {
  max-width: calc(50% - 40px);
  flex-basis: calc(50% - 40px);
}
#footer .footer-items .footer-sitemap .link,
#footer .footer-items .footer-social-links .link {
  display: inline-block;
  width: 100%;
  margin-top: 20px;
}
#footer .footer-items .footer-sitemap .link:first-of-type,
#footer .footer-items .footer-social-links .link:first-of-type {
  margin-top: 0;
}
#footer .footer-items .footer-contact-info {
  width: 100%;
  margin-bottom: 30px;
}
#footer .footer-items .footer-contact-info p {
  margin: 20px 0;
  font-size: 16px;
}
#footer .footer-items .footer-contact-info .phone {
  display: block;
}
#footer .footer-items .footer-contact-info .button {
  margin-top: 20px;
}
#footer .separator {
  display: inline-block;
  margin: 0 7px;
  width: 1px;
  height: 20px;
  background: #969696;
  vertical-align: middle;
}
#footer .upper-footer {
  padding-bottom: 30px;
}
#footer .lower-footer {
  padding-top: 30px;
  border-top: 1px solid #404040;
}
#footer .lower-footer p {
  text-align: center;
  font-size: 16px;
}
#footer .lower-footer p.copyright {
  text-indent: 0 !important;
}
#footer .lower-footer p::first-letter {
  margin: 0;
  padding: 0;
}
#footer .lower-footer .lower-footer-links-wrapper a:not(.button) {
  color: #DCE0E6;
  font-size: 16px;
}
#footer .lower-footer .lower-footer-left-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

@media screen and (min-width: 576px) {
  #footer .button {
    max-width: 250px;
  }
}
@media screen and (min-width: 876px) {
  #footer {
    z-index: 1000;
  }
  #footer .button-wrapper {
    -moz-column-gap: 24px;
         column-gap: 24px;
  }
  #footer .button-wrapper .button {
    width: auto;
  }
  #footer .footer-items {
    justify-content: space-between;
    gap: unset;
  }
  #footer .footer-items .footer-sitemap,
  #footer .footer-items .footer-social-links,
  #footer .footer-items .footer-contact-info {
    max-width: calc(33% - 40px);
    flex-basis: calc(33% - 40px);
  }
}
@media screen and (min-width: 876px) {
  #footer .upper-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #footer .button-wrapper {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
  #footer .footer-text {
    max-width: 275px;
    flex-basis: 275px;
    margin-bottom: 0;
  }
  #footer .footer-items {
    max-width: 60%;
    flex-basis: 60%;
    justify-content: flex-end;
  }
  #footer .footer-items .footer-sitemap,
  #footer .footer-items .footer-social-links,
  #footer .footer-items .footer-contact-info {
    max-width: calc(33% - 10px);
    flex-basis: calc(33% - 10px);
  }
  #footer .lower-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
input, textarea {
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
}

.gform_wrapper .gform_title {
  text-align: center;
}
.gform_wrapper .gform_heading {
  margin-bottom: 30px;
}
.gform_wrapper .gfield_label {
  color: #132E56;
  font-size: 16px;
}
.gform_wrapper .ginput_container input[type=text], .gform_wrapper .ginput_container input[type=text]:focus, .gform_wrapper .ginput_container input[type=text]:focus-visible, .gform_wrapper .ginput_container input[type=text]:focus-within, .gform_wrapper .ginput_container input[type=text]:active, .gform_wrapper .ginput_container input[type=email], .gform_wrapper .ginput_container input[type=email]:focus, .gform_wrapper .ginput_container input[type=email]:focus-visible, .gform_wrapper .ginput_container input[type=email]:focus-within, .gform_wrapper .ginput_container input[type=email]:active, .gform_wrapper .ginput_container input[type=password], .gform_wrapper .ginput_container input[type=password]:focus, .gform_wrapper .ginput_container input[type=password]:focus-visible, .gform_wrapper .ginput_container input[type=password]:focus-within, .gform_wrapper .ginput_container input[type=password]:active, .gform_wrapper .ginput_container input[type=checkbox], .gform_wrapper .ginput_container input[type=checkbox]:focus, .gform_wrapper .ginput_container input[type=checkbox]:focus-visible, .gform_wrapper .ginput_container input[type=checkbox]:focus-within, .gform_wrapper .ginput_container input[type=checkbox]:active {
  border-radius: 4px;
  border: 1px solid #DCE0E6;
  outline: none;
  -webkit-appearance: none;
}
.gform_wrapper .ginput_container textarea {
  border-radius: 4px;
  border: 1px solid #DCE0E6;
}
.gform_wrapper .gform-footer .gform_button[type=submit] {
  background-color: #132E56 !important;
  font-size: 16px !important;
}
.gform_wrapper.gf_login_form #gform_fields_login {
  display: grid;
  -moz-column-gap: 16px;
       column-gap: 16px;
  grid-row-gap: 16px;
}
.gform_wrapper.gf_login_form #gform_fields_login > .gfield {
  grid-column: span 12;
}
.gform_wrapper.gf_login_form #gform_fields_login > .gfield .gfield_label {
  display: block;
}
.gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=text], .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=text]:focus, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=text]:focus-visible, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=text]:focus-within, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=text]:active, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=password], .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=password]:focus, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=password]:focus-visible, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=password]:focus-within, .gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=password]:active {
  padding: 0 12px;
  inline-size: 100%;
  line-height: 38px;
  height: 38px;
}
.gform_wrapper.gf_login_form #gform_fields_login > .gfield .ginput_container input[type=checkbox] {
  accent-color: #005B7F;
}
.gform_wrapper.gf_login_form .gform_footer {
  margin-top: 16px;
}

.gf_login_links {
  display: flex;
  margin-top: 16px;
}
.gf_login_links a:not(:last-of-type):after {
  content: "";
  margin: 0 10px;
}

@media screen and (min-width: 768px) {
  .gform_wrapper #gform_fields_3 {
    display: flex;
    flex-wrap: wrap;
  }
  .gform_wrapper #gform_fields_3 .gfield--input-type-email,
  .gform_wrapper #gform_fields_3 .gfield--input-type-text {
    max-width: calc(50% - 10px);
    flex-basis: calc(50% - 10px);
  }
  .gform_wrapper #gform_fields_3 .gfield--input-type-name,
  .gform_wrapper #gform_fields_3 .gfield--input-type-textarea {
    width: 100%;
  }
}
/* Flex, Grid */
.display-grid {
  display: grid;
  gap: 30px;
}

@media (min-width: 1200px) {
  .grid-half {
    grid-template-columns: 1fr 1fr;
  }
  .grid-half .right {
    order: 2;
  }
}

.grid-two-thirds.left .media-col {
  order: -1;
}
.grid-two-thirds .media-col {
  order: 1;
}
@media (min-width: 1200px) {
  .grid-two-thirds {
    grid-template-columns: 2fr 1fr;
  }
  .grid-two-thirds.left {
    grid-template-columns: 1fr 2fr;
  }
  .grid-two-thirds .media-col {
    height: auto;
  }
}

.grid-one-third {
  gap: 40px;
}
@media (min-width: 1200px) {
  .grid-one-third {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .grid-one-third li {
    display: grid;
  }
  .grid-one-third li a {
    display: grid;
    grid-template-rows: auto 1fr auto;
  }
  .grid-one-third li a .card-img {
    align-self: flex-end;
  }
}
@media (min-width: 1820px) {
  .grid-one-third {
    gap: 92px;
  }
}

.display-flex {
  display: flex;
  flex-wrap: wrap;
}

.lists-wrapper.square .list-thumb {
  width: 100%;
  position: relative;
  padding-top: 100%;
  overflow: hidden;
}
.lists-wrapper.square .list-thumb a {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media (min-width: 576px) {
  .lists-wrapper {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 992px) {
  .lists-wrapper {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .lists-wrapper.two {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .lists-wrapper.four {
    grid-template-columns: repeat(4, 1fr);
  }
}
.display-flex.align-center,
.display-grid.align-center {
  align-items: center;
}
.display-flex.justify-center,
.display-grid.justify-center {
  justify-content: center;
}
.display-flex.justify-start,
.display-grid.justify-start {
  justify-content: flex-start;
}

html.active {
  overflow-y: hidden;
}

#header.active {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
  background-color: #fff;
}
#header.active .header-logo.white {
  display: none;
}
#header.active .header-logo.black {
  display: block;
}
#header.active nav #burgerTrigger.active .burger-inner {
  background: transparent;
}
#header.active nav #burgerTrigger .burger-inner, #header.active nav #burgerTrigger .burger-inner:after, #header.active nav #burgerTrigger .burger-inner:before {
  background-color: #404040;
}
#header {
  position: fixed;
  background-color: #202020;
  width: 100vw;
  z-index: 99;
  transition: all 0.25s ease-in;
}
#header nav {
  position: relative;
  padding: 0 30px;
}
#header nav .header-logo {
  height: 60px;
}
#header nav .header-logo.black {
  display: none;
}
#header nav #burgerTrigger {
  position: absolute;
  top: 12px;
  right: 30px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  background: transparent;
  border: none;
}
#header nav #burgerTrigger .burger-inner {
  display: block;
  position: relative;
  width: 20px;
  height: 3px;
  background-color: #fff;
  transition: all 200ms ease-in;
}
#header nav #burgerTrigger .burger-inner:after, #header nav #burgerTrigger .burger-inner:before {
  display: block;
  content: "";
  background-color: #fff;
  position: absolute;
  width: 100%;
  height: 3px;
  border-radius: 4px;
  transition: all 200ms ease-in;
}
#header nav #burgerTrigger .burger-inner:after {
  top: 7px;
}
#header nav #burgerTrigger .burger-inner:before {
  bottom: 7px;
}
#header nav #burgerTrigger.active .burger-inner {
  background: transparent;
}
#header nav #burgerTrigger.active .burger-inner:after {
  top: -3px;
  transform: rotate(135deg);
}
#header nav #burgerTrigger.active .burger-inner:before {
  bottom: 3px;
  transform: rotate(45deg);
}

.tablet-additional-header-links {
  display: none;
}

.header-menu-wrapper .mobile-menu-title {
  font-size: 60px;
  padding-left: 20px;
}
.header-menu-wrapper {
  left: -100vw;
  width: 100vw;
  color: #EBF5FD;
  height: calc(100% - 66px);
  background-color: var(--sj-accent-color, #202020);
  position: fixed;
  z-index: 9997;
  overflow-y: auto;
  transform: translate3d(0, 0, 205px);
  transition: all 500ms ease-in-out;
}
.header-menu-wrapper.active {
  left: 0;
  transform: translate3d(0, 0, 0);
  transition: all 500ms ease-in-out;
}
.header-menu-wrapper li {
  font-weight: 600;
  transition: background 0.25s ease-in;
  position: relative;
}
.header-menu-wrapper li:last-of-type {
  margin-bottom: 0;
}
.header-menu-wrapper li.header-cta-wrapper {
  padding: 10px 20px;
}
.header-menu-wrapper li.header-cta-wrapper .button {
  padding: 8px 10px;
}
.header-menu-wrapper li a {
  display: inline-block;
  width: 100%;
  color: #fff;
  padding: 10px 20px;
  transition: color 0.25s ease-in;
}
.header-menu-wrapper li a:hover {
  color: #fff;
}
.header-menu-wrapper li i {
  display: none;
}
.header-menu-wrapper li.menu-item-has-children i {
  display: inline-block;
  font-size: 18px;
  color: #EBF5FD;
  cursor: pointer;
  font-size: 14px;
  margin-left: 10px;
  transition: transform 0.15s ease-in;
}
.header-menu-wrapper li.menu-item-has-children i.open {
  transform: rotate(-90deg);
}
.header-menu-wrapper li .sub-menu {
  display: none;
}
.header-menu-wrapper li .sub-menu.open {
  display: block;
}
.header-menu-wrapper li .sub-menu li {
  margin: 0;
}
.header-menu-wrapper li .sub-menu li a {
  margin-left: 15px;
}
.header-menu-wrapper li .sub-menu li i {
  display: none;
}
.header-menu-wrapper .header-menu-inner-wrapper {
  position: relative;
  height: 100%;
}
.header-menu-wrapper .header-menu-inner-wrapper .bg-mobile-menu-bottom {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 430px;
  height: 200px;
  z-index: -1;
}
@media (min-width: 1200px) {
  .header-menu-wrapper .header-menu-inner-wrapper .bg-mobile-menu-bottom {
    display: none;
  }
}
.header-menu-wrapper .header-menu-inner-wrapper .search-icon {
  background: #fff;
}

.header-additional-links {
  display: flex;
  flex-direction: column-reverse;
}

@media screen and (min-width: 876px) {
  #header.active .tablet-additional-header-links .header-additional-links li a:not(.button) {
    color: #404040;
  }
  #header.active .tablet-additional-header-links .header-additional-links li a.sign-in-link {
    color: #53950E;
  }
  #header.active .tablet-additional-header-links .header-additional-links li.menu-item-has-children i {
    color: #404040;
  }
  #header.active .tablet-additional-header-links .header-additional-links li .search-icon {
    background: #404040;
  }
  #header nav #burgerTrigger {
    top: 18px;
  }
  .tablet-additional-header-links .header-additional-links {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  .tablet-additional-header-links {
    display: flex;
    max-width: calc(100% - 150px);
    flex-basis: calc(100% - 150px);
    justify-content: flex-end;
    margin-right: 50px;
  }
  .tablet-additional-header-links li {
    margin-bottom: 0;
  }
  .tablet-additional-header-links li .sign-in-link {
    color: #fff;
  }
  .tablet-additional-header-links li .search-icon {
    background: #fff;
  }
  .logo-burger-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .logo-burger-wrapper .home-link {
    max-width: 100px;
    flex-basis: 100px;
  }
  .header-menu-wrapper .header-additional-links :nth-child(2) {
    display: none;
  }
}
@media screen and (min-width: 992px) {
  .header-menu-wrapper .header-additional-links :nth-child(2) {
    display: block;
  }
}
@media (min-width: 1200px) {
  #burgerTrigger {
    display: none;
  }
  .tablet-additional-header-links {
    display: none;
  }
  #header.active nav .header-menu-wrapper li a:not(.button) {
    color: #404040;
  }
  #header.active nav .header-menu-wrapper li a.sign-in-link {
    color: #53950E;
  }
  #header.active nav .header-menu-wrapper li.menu-item-has-children i {
    color: #404040;
  }
  #header.active nav .header-menu-wrapper li .search-icon {
    background: #404040;
  }
  #header nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  #header nav .header-logo {
    height: 100px;
  }
  #header nav .logo-burger-wrapper {
    max-width: 100px;
    flex-basis: 100px;
  }
  #header nav .header-menu-wrapper .mobile-menu-title {
    display: none;
  }
  #header nav .header-menu-wrapper .header-additional-links {
    display: flex;
    flex-direction: row;
  }
  #header nav .header-menu-wrapper .header-menu-inner-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }
  #header nav .header-menu-wrapper {
    max-width: calc(100% - 150px);
    flex-basis: calc(100% - 150px);
    position: initial;
    justify-content: flex-end;
    background: none;
    overflow: unset;
    padding: 0;
  }
}
@media screen and (min-width: 1200px) and (min-width: 1260px) {
  #header nav .header-menu-wrapper {
    max-width: calc(100% - 200px);
    flex-basis: calc(100% - 200px);
  }
}
@media (min-width: 1200px) {
  #header nav .header-menu-wrapper .primary-menu {
    display: flex;
  }
  #header nav .header-menu-wrapper li {
    font-weight: 300;
    margin: 0 7px;
  }
  #header nav .header-menu-wrapper li.header-cta-wrapper {
    padding: 0;
  }
  #header nav .header-menu-wrapper li a {
    color: var(--sj-accent-color, #fff);
    font-size: 16px;
    padding: 10px;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children {
    position: relative;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children i {
    color: #fff;
    font-size: 8px;
    top: calc(50% - 8px);
    right: -4px;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children .sub-menu {
    display: block;
    visibility: hidden;
    width: 200px;
    position: absolute;
    background: var(--sj-accent-color, #005B7F);
    border: 1px solid var(--sj-accent-color, #005B7F);
    transform: translateY(-5px);
    transition: all 0.15s ease-in;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children .sub-menu li {
    background: transparent;
    padding: 0;
    margin: 0;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children .sub-menu li a {
    display: block;
    width: auto;
    font-size: 15px;
    margin: 0;
    padding: 15px;
    color: #fff;
    transition: all 0.15s ease-in;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children .sub-menu li a:before {
    content: none;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children .sub-menu li a:hover {
    color: var(--sj-accent-color, #132E56);
    background: #fff;
  }
  #header nav .header-menu-wrapper li.menu-item-has-children:hover .sub-menu {
    visibility: visible;
    transform: translateY(0);
  }
  #header nav .header-menu-wrapper > li {
    border: none;
  }
  #header nav .header-menu-wrapper > li:first-of-type {
    border: none;
  }
}
@media screen and (min-width: 1340px) {
  #header nav {
    padding: 0;
  }
}
#home-hero {
  position: relative;
  overflow: hidden;
}
#home-hero h1 {
  margin-top: 0;
}
#home-hero .button-wrapper {
  margin-bottom: 0;
}
#home-hero .button-wrapper .button {
  width: 100%;
}
#home-hero .hero-bg {
  position: absolute;
  right: 0;
  bottom: -2px;
}
#home-hero .hero-bg.tablet, #home-hero .hero-bg.desktop {
  display: none;
}

@media screen and (min-width: 576px) {
  #home-hero .button-wrapper .button {
    max-width: calc(50% - 8px);
    flex-basis: calc(50% - 8px);
  }
}
@media screen and (min-width: 600px) {
  #home-hero .hero-bg.mobile {
    display: none;
  }
  #home-hero .hero-bg.tablet {
    display: block;
    height: 360px;
  }
}
@media screen and (min-width: 876px) {
  #home-hero .hero-description {
    font-size: 24px;
  }
  #home-hero .button-wrapper .button {
    max-width: -moz-max-content;
    max-width: max-content;
    flex-basis: max-content;
  }
}
@media screen and (min-width: 1200px) {
  #home-hero .hero-bg.tablet {
    display: none;
  }
  #home-hero .hero-bg.desktop {
    display: block;
    height: 240px;
  }
}
.section-intro-cards .home-intro-cards .home-intro-card {
  position: relative;
  overflow: hidden;
  margin-bottom: 80px;
  padding: 50px 30px;
}
.section-intro-cards .home-intro-cards .home-intro-card .description {
  border-top: 1px solid #969696;
  font-size: 24px;
  padding-top: 24px;
  margin-bottom: 16px;
}
.section-intro-cards .home-intro-cards .home-intro-card.pink {
  background: #FFEEF7;
}
.section-intro-cards .home-intro-cards .home-intro-card.pink .title {
  color: #893D65;
}
.section-intro-cards .home-intro-cards .home-intro-card.pink .home-intro-card-deco-3 {
  background: #893D65;
}
.section-intro-cards .home-intro-cards .home-intro-card.blue {
  background: #EBF5FD;
}
.section-intro-cards .home-intro-cards .home-intro-card.blue .title {
  color: #005B7F;
}
.section-intro-cards .home-intro-cards .home-intro-card.blue .home-intro-card-deco-3 {
  background: #005B7F;
}
.section-intro-cards .home-intro-cards .home-intro-card.green {
  background: #ECFADC;
}
.section-intro-cards .home-intro-cards .home-intro-card.green .title {
  color: #53950E;
}
.section-intro-cards .home-intro-cards .home-intro-card.green .home-intro-card-deco-3 {
  background: #53950E;
}
.section-intro-cards .home-intro-cards .home-intro-card .intro-card-image-wrapper {
  position: relative;
}
.section-intro-cards .home-intro-cards .home-intro-card .intro-card-image-wrapper .intro-card-image {
  position: relative;
  width: 100%;
  border-radius: 16px;
}
.section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-1 {
  position: absolute;
  height: 400px;
}
.section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-2 {
  display: none;
}
.section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-wrapper {
  position: absolute;
}
.section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-3 {
  width: 100px;
  height: 100px;
  border-radius: 100%;
}
.section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-card-deco-1 {
  top: -110px;
  left: -180px;
}
.section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-card-deco-wrapper {
  top: 30px;
  right: -50px;
}
.section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-card-deco-1 {
  top: -110px;
  right: -180px;
}
.section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-card-deco-wrapper {
  top: 30px;
  left: -50px;
}

@media screen and (min-width: 876px) {
  .section-intro-cards .section-intro-header {
    margin: 80px 0;
  }
  .section-intro-cards .home-intro-cards .home-intro-card {
    overflow: unset;
    margin-bottom: 150px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card .home-intro-inner-wrapper {
    width: 620px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-1 {
    height: 600px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-wrapper {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-card-deco-wrapper {
    right: -730px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right {
    display: flex;
    justify-content: flex-end;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-card-deco-wrapper {
    flex-direction: row-reverse;
    left: -850px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-card-deco-1, .section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-card-deco-1 {
    top: -190px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-2 {
    display: block;
  }
  .section-intro-cards .home-intro-cards .home-intro-card .home-intro-card-deco-3 {
    width: 150px;
    height: 150px;
  }
}
@media screen and (min-width: 1200px) {
  .section-intro-cards .home-intro-cards .home-intro-card {
    display: flex;
    justify-content: center;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.left {
    margin-right: 20%;
    border-radius: 0 40px 40px 0;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-inner-wrapper {
    margin-left: 25%;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-card-deco-1 {
    left: -260px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right {
    margin-left: 20%;
    border-radius: 40px 0 0 40px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-inner-wrapper {
    margin-right: 25%;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-card-deco-1 {
    right: -230px;
  }
}
@media screen and (min-width: 1440px) {
  .section-intro-cards .home-intro-cards .home-intro-card.left {
    margin-right: 25%;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.left .home-intro-inner-wrapper {
    margin-left: 210px;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right {
    margin-left: 25%;
  }
  .section-intro-cards .home-intro-cards .home-intro-card.right .home-intro-inner-wrapper {
    margin-right: 310px;
  }
}
.section-listing {
  transition: background 0.2s ease-in;
}
.section-listing .home-listing-wrapper {
  margin: 24px 0;
}
.section-listing .home-listing-wrapper .listing-item {
  margin-top: 36px;
  padding: 24px;
  border-radius: 16px;
}
.section-listing .home-listing-wrapper .listing-item:nth-of-type(2n+1) {
  background: #FFF8DF;
}
.section-listing .home-listing-wrapper .listing-item:nth-of-type(2n) {
  background: #EBF5FD;
}
.section-listing .home-listing-wrapper .listing-item .listing-item-image {
  padding-bottom: 50%;
}
.section-listing .home-listing-wrapper .listing-item .listing-item-title {
  margin: 18px 0;
}
.section-listing .home-listing-wrapper .listing-item .button {
  margin-top: 18px;
}
.section-listing.active {
  background: #132E56;
  transition: background 0.2s ease-in;
}

@media screen and (min-width: 876px) {
  .section-listing .home-listing-wrapper .listing-item {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    padding: 60px 32px;
  }
  .section-listing .home-listing-wrapper .listing-item .listing-item-image {
    max-width: calc(30% - 16px);
    flex-basis: calc(30% - 16px);
    height: auto;
    padding-bottom: 0;
  }
  .section-listing .home-listing-wrapper .listing-item .listing-item-right-col {
    max-width: calc(70% - 16px);
    flex-basis: calc(70% - 16px);
  }
  .section-listing .home-listing-wrapper .listing-item .listing-item-right-col .listing-item-title {
    font-size: 50px;
    line-height: 60px;
    margin-top: 0;
  }
  .section-listing .home-listing-wrapper .listing-item .button {
    width: -moz-max-content;
    width: max-content;
  }
  .section-listing .home-listing-wrapper .listing-item:nth-of-type(2n) .listing-item-image {
    order: 2;
  }
}
@media screen and (min-width: 1200px) {
  .section-listing .home-listing-wrapper .listing-item {
    gap: 40px;
  }
  .section-listing .home-listing-wrapper .listing-item .listing-item-image {
    max-width: calc(55% - 20px);
    flex-basis: calc(55% - 20px);
    border-radius: 16px;
  }
  .section-listing .home-listing-wrapper .listing-item .listing-item-right-col {
    max-width: calc(45% - 20px);
    flex-basis: calc(45% - 20px);
  }
  .section-listing .home-listing-wrapper .listing-item .listing-item-right-col .listing-item-title {
    margin-top: 100px;
  }
}
.section-home-featured .tiles-wrapper {
  margin: 50px 0;
}

.back-to-link {
  color: #fff !important;
  transition: -webkit-text-decoration 0.25s ease-in;
  transition: text-decoration 0.25s ease-in;
  transition: text-decoration 0.25s ease-in, -webkit-text-decoration 0.25s ease-in;
}
.back-to-link:hover {
  text-decoration: underline;
}

.page-title:after {
  display: block;
  content: "";
  background-color: #fff;
  width: 30px;
  height: 2px;
  margin: 20px 0;
}

.tile {
  display: grid;
  grid-template-rows: auto auto 1fr;
  border-radius: 16px;
  padding: 20px;
  opacity: 0;
  transition: all 0.25s ease;
  position: relative;
}
.tile:nth-of-type(2n+1) {
  background: #FFF8DF;
}
.tile:nth-of-type(2n) {
  background: #EBF5FD;
}
.tile.show {
  opacity: 1;
  transition: all 0.25s ease;
}
.tile:hover {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}
.tile .tile-link {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.tile header {
  justify-content: space-between;
  align-items: center;
}
.tile header.musicians {
  justify-content: flex-end;
}
.tile header .terms-container {
  gap: 8px;
}
.tile header,
.tile header .date {
  font-size: 14px;
}
.tile header .date {
  margin-bottom: 0;
}
.tile .img {
  height: auto;
  margin-top: 10px;
  padding-bottom: 100%;
  margin-bottom: 24px;
}
.tile .img-placeholder {
  background-color: #fff;
}
.tile .member-contact-info,
.tile .member-contact-info a {
  color: #53950E;
}

@media screen and (min-width: 768px) {
  .tiles-wrapper {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 1200px) {
  .tiles-wrapper {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.single .page-header-wrapper .pill {
  display: inline-block;
  margin-top: 24px;
  margin-left: 16px;
}
.single .page-header-wrapper .pill:first-of-type {
  margin-left: 0;
}
.single .member-header .contact-info,
.single .member-header .contact-info a {
  color: #EBF5FD;
}
.single .member-header.has-profile {
  margin: 20px 0;
}
.single .member-header .img {
  padding-bottom: 100%;
}

@media screen and (min-width: 768px) {
  .single .member-header.has-profile {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .single .member-header.has-profile {
    grid-template-columns: 350px 1fr;
  }
  .single .member-header.has-profile .member-header-right-col {
    display: grid;
    grid-template-rows: 1fr auto auto;
  }
  .single .member-header.has-profile h1 {
    margin-top: 0;
  }
}
.text-editor {
  margin: 24px 0;
  color: #202020;
}
.text-editor h3 {
  color: #005B7F;
}
.text-editor blockquote {
  position: relative;
  padding-left: 100px;
}
.text-editor blockquote:before {
  display: block;
  content: "";
  width: 10px;
  height: 100%;
  background: #132E56;
  position: absolute;
  left: 50px;
}
.text-editor img.alignnone {
  display: block;
  width: 100%;
  height: auto;
}
.text-editor img.aligncenter {
  display: block;
  margin: 24px auto;
}
.text-editor img.alignleft {
  float: left;
}
.text-editor img.alignright {
  float: right;
}
.text-editor p:first-of-type {
  margin-top: 0;
}
.text-editor p:last-of-type {
  margin-bottom: 0;
}
.text-editor ul {
  list-style-type: disc;
}
.text-editor ol {
  list-style-type: decimal;
}
.text-editor ul, .text-editor ol {
  padding-left: 35px;
  padding-top: 15px;
}
.text-editor ul li, .text-editor ol li {
  color: #893D65;
}
.text-editor table td,
.text-editor table th {
  padding: 10px 25px !important;
}
.text-editor table tbody tr td:not(:last-of-type) {
  border-right: 1px solid #eee;
}
.text-editor table tbody tr:nth-child(2n+1) {
  background-color: #d7e0e7;
}

.half-width-wrapper .text-editor img {
  display: block;
  width: 100%;
  margin: 0 auto;
}

#page-header p {
  color: #EBF5FD;
}

.inner-right-col .text-editor {
  margin-top: 0;
}
.inner-right-col .text-editor h2:first-child,
.inner-right-col .text-editor h3:first-child,
.inner-right-col .text-editor h4:first-child,
.inner-right-col .text-editor h5:first-child,
.inner-right-col .text-editor p:first-child {
  margin-top: 0;
}

.terms-wrapper {
  gap: 16px;
  margin: 20px 0;
}

.filter {
  border-radius: 4px;
  border: 1px solid #202020;
  color: #202020;
  padding: 8px 10px;
  cursor: pointer;
  margin: 0;
  transition: all 0.25s ease;
}
.filter.active {
  background: #202020;
  color: #fff;
  transition: all 0.25s ease;
}

#ajax_loader {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 10;
}
#ajax_loader .sp-3balls {
  width: 100px;
  height: 100px;
  clear: both;
  margin: 20px auto;
  left: 50%;
  margin-right: -50%;
  position: absolute;
  z-index: 100;
  top: 50%;
}
#ajax_loader .sp-3balls, #ajax_loader .sp-3balls:before, #ajax_loader .sp-3balls:after {
  border-radius: 50%;
  width: 18px;
  height: 18px;
  transform-origin: center center;
  display: inline-block;
}
#ajax_loader .sp-3balls {
  background-color: #893D65;
  position: relative;
  opacity: 1;
  animation: spScaleAlpha 1s infinite linear;
}
#ajax_loader .sp-3balls:before, #ajax_loader .sp-3balls:after {
  content: "";
  position: relative;
}
#ajax_loader .sp-3balls:before {
  background-color: #005B7F;
  left: 30px;
  top: 0px;
  animation: spScaleAlphaBefore 1s infinite linear;
}
#ajax_loader .sp-3balls:after {
  background-color: #53950E;
  left: -30px;
  top: -23px;
  animation: spScaleAlphaAfter 1s infinite linear;
}
#ajax_loader.hide {
  display: none;
}

.load-more {
  display: flex;
  justify-content: center;
  margin: 40px 0;
}
.load-more .button {
  cursor: pointer;
}
@keyframes spScaleAlpha {
  0% {
    opacity: 1;
  }
  33% {
    opacity: 0.25;
  }
  66% {
    opacity: 0.25;
  }
  100% {
    opacity: 1;
  }
}
@keyframes spScaleAlphaBefore {
  0% {
    opacity: 0.25;
  }
  33% {
    opacity: 1;
  }
  66% {
    opacity: 0.25;
  }
}
@keyframes spScaleAlphaAfter {
  33% {
    opacity: 0.25;
  }
  66% {
    opacity: 1;
  }
  100% {
    opacity: 0.25;
  }
}
.as-search-filters {
  margin-bottom: 30px;
}

.as-search-filter-toggle {
  text-align: center;
  margin: 15px 0;
}
.as-search-filter-toggle #as_filter_toggle {
  display: inline-block;
  position: relative;
  margin-left: 26px;
  color: #000000;
}
.as-search-filter-toggle #as_filter_toggle .filter_span {
  position: absolute;
  width: 13px;
  height: 2px;
  content: "";
  top: 10px;
  left: -20px;
  background-color: #000000;
}
.as-search-filter-toggle #as_filter_toggle .filter_span:nth-of-type(2) {
  opacity: 1;
  transform: rotate(90deg);
}
.as-search-filter-toggle #as_filter_toggle .hide {
  display: none;
}
.as-search-filter-toggle #as_filter_toggle.show .filter_span:nth-of-type(2) {
  opacity: 0;
}
.as-search-filter-toggle #as_filter_toggle.show .show {
  display: none;
}
.as-search-filter-toggle #as_filter_toggle.show .hide {
  display: inline;
}

.instruments_search_bar {
  width: 100%;
  padding: 8px;
  border: 1px solid #969696;
  border-radius: 4px;
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  line-height: 1.5;
  -webkit-appearance: none;
  outline: none;
}

@media (min-width: 768px) {
  .as-search-filter-toggle {
    display: none;
  }
}
#filters_search_box_con {
  display: none;
}

@media (min-width: 768px) {
  #filters_search_box_con {
    display: block;
    height: auto !important;
    overflow: unset;
  }
}
@media (min-width: 1200px) {
  #filters_search_box_con {
    display: grid;
    grid-template-columns: 1fr 450px;
    justify-content: space-between;
    gap: 60px;
    align-items: flex-start;
  }
  #filters_search_box_con .terms-wrapper {
    margin-top: 0;
  }
}
.search-input-wrapper {
  position: relative;
}
.search-input-wrapper #as_search_bar {
  width: 100%;
  padding: 8px 8px 8px 34px;
  border: 1px solid #969696;
  border-radius: 4px;
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  line-height: 1.5;
  -webkit-appearance: none;
  outline: none;
}
.search-input-wrapper #as_search_submit {
  position: absolute;
  top: calc(50% - 12px);
  left: 4px;
  background: transparent;
  border: none;
}
.search-input-wrapper #as_search_submit svg {
  fill: #000000;
}

.additional-filters {
  margin: 20px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  visibility: visible;
}
.additional-filters.hide {
  visibility: hidden;
}
.additional-filters .select2-container {
  width: 100% !important;
}

.additional-filters-inner-wrapper {
  cursor: pointer;
  display: none;
  width: 100%;
}
.additional-filters-inner-wrapper.show {
  display: block;
}
.additional-filters-inner-wrapper .selected {
  border: 1px solid #969696;
  border-radius: 4px;
  padding: 8px 30px 8px 8px;
  position: relative;
  font-family: "Cabin", "Helvetica", "Arial", "sans-serif";
  font-size: 16px;
  line-height: 1.5;
  background: #fff;
  cursor: pointer;
}
.additional-filters-inner-wrapper .selected .selected-text,
.additional-filters-inner-wrapper .selected i {
  color: #969696;
}
.additional-filters-inner-wrapper .selected i {
  font-size: 14px;
  position: absolute;
  right: 10px;
  top: calc(50% - 7px);
}
.additional-filters-inner-wrapper .terms-dropdown {
  display: none;
  border: 1px solid #202020;
  max-height: 400px;
  overflow-y: scroll;
}
.additional-filters-inner-wrapper .terms-dropdown.open {
  display: block;
}
.additional-filters-inner-wrapper .terms-dropdown li {
  padding: 8px;
  margin-bottom: 0;
  background: #fff;
  transition: background 0.25s ease-in;
}
.additional-filters-inner-wrapper .terms-dropdown li.active {
  font-weight: 700;
  color: #005B7F;
}
.additional-filters-inner-wrapper .terms-dropdown li:hover {
  background: #FFF8DF;
}

@media screen and (min-width: 768px) {
  .additional-filters-inner-wrapper {
    max-width: calc(50% - 10px);
    flex-basis: calc(50% - 10px);
    position: relative;
  }
  .additional-filters-inner-wrapper .terms-dropdown.open {
    position: absolute;
    width: 100%;
    z-index: 5;
  }
}
@media screen and (min-width: 1200px) {
  .additional-filters-inner-wrapper {
    max-width: 300px;
    flex-basis: 300px;
  }
}
.reset:not(.button) {
  color: #969696;
}

@media screen and (min-width: 768px) {
  .section-search-filter .post-ajax-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 1200px) {
  .section-search-filter .post-ajax-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

/* Advanced Search Page */
.page-template-template-advanced-search .section-search-filter.hide,
.page-template-template-advanced-search .section-search-landing.hide {
  display: none;
}
.page-template-template-advanced-search .section-search-filter .search-input-wrapper #as_search_bar,
.page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar {
  padding: 8px 8px 8px 34px;
}
.page-template-template-advanced-search .section-search-filter .as-search-input {
  margin-bottom: 45px;
}
.page-template-template-advanced-search .section-search-landing .search-input-wrapper .search-icon {
  position: absolute;
  top: calc(50% - 12px);
  left: 8px;
  border: none;
}
.page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar {
  padding: 8px 34px;
}
.page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_submit {
  left: unset;
  right: 4px;
}
.page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_submit .arrow-right-icon {
  background: #969696;
}
.page-template-template-advanced-search .search-run-buttons-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .page-template-template-advanced-search .section-search-landing .as-search-input {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper {
    width: 100%;
    max-width: 750px;
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper .search-icon {
    width: 35px;
    height: 35px;
    top: calc(50% - 17.5px);
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar {
    padding-left: 45px;
    padding-right: 45px;
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar::-moz-placeholder {
    font-size: 24px;
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar, .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar::placeholder {
    font-size: 24px;
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_submit {
    top: calc(50% - 17.5px);
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_submit .arrow-right-icon {
    width: 35px;
    height: 35px;
  }
}
@media screen and (min-width: 1200px) {
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper .search-icon {
    left: 16px;
  }
  .page-template-template-advanced-search .section-search-landing .search-input-wrapper #as_search_bar {
    padding: 23px 55px;
  }
}
.success-image-wrapper, .error-image-wrapper {
  width: 100%;
  min-height: 500px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.success-image-wrapper {
  background-image: url("../images/deco-assets/success.png");
  position: relative;
}
.success-image-wrapper .cards-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 40px 0;
}
@media screen and (min-width: 992px) {
  .success-image-wrapper .cards-wrapper {
    flex-direction: row;
    gap: 80px;
    padding: 195px 0;
  }
}
.success-image-wrapper .cards-wrapper .card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 38px 40px;
  color: #fff;
  border-radius: 4px;
  box-shadow: -4px 4px 20px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 992px) {
  .success-image-wrapper .cards-wrapper .card {
    width: 432px;
    padding: 60px 40px;
  }
}
.success-image-wrapper .cards-wrapper .card h3, .success-image-wrapper .cards-wrapper .card p {
  margin: 0;
}
.success-image-wrapper .cards-wrapper .card .icon {
  width: 44px;
  height: 44px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.success-image-wrapper .cards-wrapper .card .icon.document-icon {
  background-image: url("../images/icons/ac-document.svg");
}
.success-image-wrapper .cards-wrapper .card .icon.dashboard-icon {
  background-image: url("../images/icons/dashboard.svg");
}
.success-image-wrapper .cards-wrapper .card.contract {
  background-color: #005B7F;
}
.success-image-wrapper .cards-wrapper .card.dashboard {
  background-color: #132E56;
}
.success-image-wrapper .cards-wrapper .card:hover {
  text-decoration: none;
  box-shadow: -6px 6px 24px 0 rgba(0, 0, 0, 0.35);
  translate: -2px 2px;
  transition: all 0.3s ease;
}
.success-image-wrapper .circles-1 {
  position: absolute;
  width: 150px;
  height: 100px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
  bottom: -10%;
  right: 2%;
  background-image: url("../images/deco-assets/circles-1.png");
}
@media screen and (min-width: 768px) {
  .success-image-wrapper .circles-1 {
    width: 250px;
    height: 250px;
  }
}

.error-image-wrapper {
  background-image: url("../images/deco-assets/wawaa.png");
  position: relative;
}
.error-image-wrapper .circles-2 {
  position: absolute;
  width: 150px;
  height: 100px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
  top: -5%;
  right: 2%;
  background-image: url("../images/deco-assets/circles-2.png");
}
@media screen and (min-width: 768px) {
  .error-image-wrapper .circles-2 {
    width: 250px;
    height: 250px;
    top: -10%;
    right: 5%;
  }
}

/*********************
LARGER MOBILE DEVICES
This is for devices like the Galaxy Note or something that's
larger than an iPhone but smaller than a tablet. Let's call them
tweeners.
*********************/
/*********************
TABLET & SMALLER LAPTOPS
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
/*********************
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
/*********************
LARGE VIEWING SIZE
This is for the larger monitors and possibly full screen viewers.
*********************/
/*********************
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution. You can also create a media
query for retina AND a certain size if you want. Go Nuts.
*********************/
/*********************
PRINT STYLESHEET
Feel free to customize this. Remember to add things that won't make
sense to print at the bottom. Things like nav, ads, and forms should
be set to display none.
*********************/