@font-face { font-family: Astra; src: url("/wp-content/themes/astra/assets/fonts/astra.woff") format("woff"), url("/wp-content/themes/astra/assets/fonts/astra.ttf") format("truetype"); font-weight: normal; font-style: normal; font-display: fallback; }

/* ---------- header ---------- */

.site-header {
  border: 0;
  position: relative;
  z-index: 99;
  color: #161f39;
  font-family: Quicksand, sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 29.7px;
}

.h-box {
  border: 0;
  position: relative;
}

.h-box-2 {
  margin: 0px auto;
  border: 0;
  position: relative;
  background-color: #ffffff;
  z-index: 4;
  line-height: 72px;
}

.h-wrap {
  margin: 0px auto;
  padding: 0px 20px;
  border: 0;
  max-width: 1240px;
}

.h-box-3 {
  border: 0;
  display: flex;
  position: relative;
  flex-wrap: wrap;
  align-items: stretch;
}

.h-logo {
  border: 0;
  align-self: center;
  line-height: 18px;
}

.h-box-4 {
  padding: 18px 0px;
  border: 0;
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
}

.h-logo-2 {
  padding: 0px 18px 0px 0px;
  border: 0;
  display: block;
}

.h-logo-3 {
  border: 0;
  color: #2e3192;
  font-family: Quicksand, sans-serif;
  font-size: 18px;
  font-weight: 600;
  font-style: normal;
  line-height: 18px;
  letter-spacing: normal;
  text-transform: none;
  text-decoration-line: none;
  cursor: pointer;
}

.h-logo-img {
  border: 0;
  max-width: 270px;
  vertical-align: middle;
  width: 270px;
  height: auto;
}

.h-toggle {
  display: none;
}

.h-button {
  border: 0;
  display: inline-block;
}

.h-toggle-2 {
  padding: 0px 13.5px;
  border: 0;
  border-radius: 2px 2px 2px 2px;
  background-color: #2e3192;
  color: #ffffff;
  font-size: 27px;
  font-weight: 400;
  line-height: 50.1429px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  font-family: Quicksand, sans-serif;
  letter-spacing: normal;
  text-transform: none;
  height: 56.7px;
}

.h-s {
  margin: -1px;
  border: 0;
  display: block;
  position: absolute;
  overflow-x: hidden;
  overflow-y: hidden;
  width: 1px;
  height: 1px;
}

.h-s-2 {
  border: 0;
}

.h-toggle-3 {
  border: 0;
  display: inline-block;
  line-height: 55.35px;
  vertical-align: middle;
}

.h-toggle-3::before {
  border: 0;
  content: "\e5d2";
  font-family: Astra;
}

.h-box-5 {
  margin: 0px 0px 0px auto;
  border: 0;
}

.h-box-6 {
  border: 0;
  text-align: right;
  height: 100%;
}

.h-nav {
  border: 0;
  flex-grow: 1;
  height: 100%;
}

.h-nav-2 {
  padding: 0px 0px 0px 15px;
  border: 0;
  display: inline-flex;
  font-size: 14px;
  line-height: 56px;
  vertical-align: top;
  height: 100%;
}

.h-nav-3 {
  margin: 0px;
  padding: 0px;
  border: 0;
  display: flex;
  position: relative;
  flex-wrap: wrap;
  justify-content: flex-end;
  list-style-type: none;
}

.h-logo-4 {
  padding: 0px 14px;
  border: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.h-logo-5 {
  border: 0;
  display: block;
  background-position: 0px 0px;
  color: #2e3192;
  font-family: Quicksand, sans-serif;
  font-size: 14px;
  font-weight: 600;
  font-style: normal;
  line-height: 56px;
  letter-spacing: normal;
  text-transform: none;
  text-decoration-line: none;
  vertical-align: middle;
  cursor: pointer;
}

.h-logo-6 {
  padding: 10px 40px;
  border: 0;
  background-color: #2e3192;
  color: #ffffff;
  line-height: 14px;
}

.h-link {
  display: none;
}

.h-logo:hover .h-logo-3 {
  color: #161f39;
}

.h-logo-2:hover .h-logo-3 {
  color: #161f39;
}

.h-logo-3:hover {
  color: #161f39;
}

@media (max-width: 921px) {
  .h-box-2 {
    line-height: 54px;
  }

  .h-logo {
    padding: 0px 18px 0px 0px;
    display: flex;
    flex-grow: 1;
    flex-basis: 0%;
    text-align: left;
  }

  .h-box-4 {
    display: flex;
    width: 100%;
  }

  .h-toggle {
    border: 0;
    display: flex;
    justify-content: flex-end;
    align-self: center;
    text-align: right;
  }

  .h-button {
    display: block;
  }

  .h-toggle-2 {
    padding: 0px 15.3px;
    border: 0;
    background-color: rgba(0, 0, 0, 0);
    color: #2e3192;
    font-size: 30.6px;
    line-height: 56.8286px;
    height: 64.26px;
  }

  .h-s {
    border: 0;
  }

  .h-s-2 {
    border: 0;
  }

  .h-toggle-3 {
    border: 0;
    line-height: 62.73px;
  }

  .h-toggle-3::before {
    border: 0;
  }

  .h-box-5 {
    flex-grow: 1;
    order: 4;
    width: 100%;
  }

  .h-box-6 {
    border: 0;
    display: none;
    text-align: inherit;
    height: initial;
  }

  .h-nav-2 {
    padding: 0px;
    line-height: 42px;
    width: 100%;
    display: block;
  }

  .h-nav-3 {
    border-top: 1px solid #dddddd;
    background-color: #f9f9f9;
  }

  .h-logo-4 {
    padding-top: 0px;
    padding-right: initial;
    padding-bottom: 0px;
    padding-left: initial;
    border: 0;
    display: none;
    flex-direction: initial;
    justify-content: initial;
  }

  .h-logo-5 {
    border: 0;
    display: none;
    background-position: initial;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    font-style: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
    text-decoration-line: initial;
    vertical-align: initial;
    cursor: inherit;
  }

  .h-link {
    padding: 0px 20px;
    border-bottom: 1px solid #eaeaea;
    display: inline-block;
    background-position: 0px 0px;
    color: #161f39;
    font-family: Quicksand, sans-serif;
    font-size: 14px;
    font-weight: 600;
    font-style: normal;
    line-height: 42px;
    letter-spacing: normal;
    text-transform: none;
    text-decoration-line: none;
    vertical-align: middle;
    cursor: pointer;
    width: 100%;
  }

  .site-header.open .h-toggle-3::before {
    content: "\e5cd";
  }

  .site-header.open .h-box-6 {
    margin: 0px -20px;
    border: 0;
    flex-grow: 1;
    text-align: left;
    width: calc(100% + 40px);
    height: 100%;
    display: block;
  }
}

@media (max-width: 768px) {
  .site-header {
    font-size: 16.416px;
    line-height: 27.0864px;
  }

  .h-box-2 {
    line-height: 49.248px;
  }

  .h-wrap {
    max-width: 100%;
  }

  .h-logo {
    padding: 0px 16.416px 0px 0px;
    line-height: 16.416px;
  }

  .h-box-4 {
    padding: 16.416px 0px;
  }

  .h-logo-2 {
    padding: 0px 16.416px 0px 0px;
  }

  .h-logo-3 {
    font-size: 16.416px;
    line-height: 16.416px;
  }

  .h-toggle-2 {
    padding: 0px 13.9536px;
    font-size: 27.9072px;
    line-height: 51.8277px;
    height: 58.6051px;
  }

  .h-toggle-3 {
    line-height: 57.2098px;
  }

  .h-nav-2 {
    font-size: 12.768px;
    line-height: 38.304px;
  }

  .h-logo-6 {
    line-height: 12.768px;
  }

  .h-link {
    font-size: 12.768px;
    line-height: 38.304px;
  }

  .site-header.open .h-toggle-3::before {
    content: "\e5cd";
  }

  .site-header.open .h-box-6 {
    margin: 0px -20px;
    border: 0;
    flex-grow: 1;
    text-align: left;
    width: calc(100% + 40px);
    height: 100%;
    display: block;
  }
}

@media (max-width: 544px) {
  .h-logo-img {
    max-width: 100%;
  }

  .site-header.open .h-toggle-3::before {
    content: "\e5cd";
  }

  .site-header.open .h-box-6 {
    margin: 0px -20px;
    border: 0;
    flex-grow: 1;
    text-align: left;
    width: calc(100% + 40px);
    height: 100%;
    display: block;
  }
}

@media (max-width: 543px) {
  .h-wrap {
    max-width: none;
  }

  .site-header.open .h-toggle-3::before {
    content: "\e5cd";
  }

  .site-header.open .h-box-6 {
    margin: 0px -20px;
    border: 0;
    flex-grow: 1;
    text-align: left;
    width: calc(100% + 40px);
    height: 100%;
    display: block;
  }
}

/* ---------- footer ---------- */

.site-footer {
  border: 0;
  color: #ffffff;
  font-family: Quicksand, sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 29.7px;
}

.f-box {
  border-top: 3px solid #ffffff;
  position: relative;
  color: #272727;
  font-size: 14px;
  line-height: 26px;
  text-align: center;
}

.f-box-2 {
  padding: 37.3332px 0px;
  border: 0;
  background-color: #ffffff;
}

.f-wrap {
  margin: 0px auto;
  padding: 0px 35px;
  border: 0;
  max-width: 100%;
}

.f-box-3 {
  border: 0;
}

@media (max-width: 768px) {
  .site-footer {
    font-size: 16.416px;
    line-height: 27.0864px;
  }

  .f-box {
    font-size: 12.768px;
    line-height: 23.712px;
  }

  .f-box-2 {
    padding: 25.536px 0px;
  }

  .f-wrap {
    padding: 0px 20px;
  }
}

@media (max-width: 543px) {
  .f-wrap {
    max-width: none;
  }
}


/* content defaults: what plain headings, text and links look like on this site */
html {
  font-size: 18px;
}

body {
  margin: 0;
  font-family: Quicksand, sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: rgb(22, 31, 57);
  background-color: rgb(255, 255, 255);
  line-height: 1.65em;
  overflow-wrap: break-word;
  -webkit-font-smoothing: antialiased;
}

a {
  color: rgb(46, 49, 146);
  text-decoration: none;
}

h1,
h1.heading {
  font-size: 1.8889rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4em;
  color: rgb(58, 58, 58);
  text-transform: uppercase;
  text-decoration-line: none;
}

h2,
h2.heading {
  font-size: 1.7778rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3em;
  color: rgb(58, 58, 58);
  text-transform: uppercase;
  text-decoration-line: none;
}

h3,
h3.heading {
  font-size: 1.4444rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3em;
  color: rgb(58, 58, 58);
  text-transform: uppercase;
  text-decoration-line: none;
}

h4,
h4.heading {
  font-size: 1.3333rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.2em;
  color: rgb(58, 58, 58);
  text-transform: none;
  text-decoration-line: none;
}

h5,
h5.heading {
  font-size: 1.1111rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.2em;
  color: rgb(58, 58, 58);
  text-transform: none;
  text-decoration-line: none;
}

h6,
h6.heading {
  font-size: 0.8889rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.25em;
  color: rgb(58, 58, 58);
  text-transform: none;
  text-decoration-line: none;
}

.text p,
.custom p,
.acc-content p {
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  text-decoration-line: none;
  margin-bottom: 1.6em;
}

.text h1,
.custom h1,
.acc-content h1 {
  font-size: 1.8889rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4em;
  color: rgb(58, 58, 58);
  text-transform: uppercase;
  text-decoration-line: none;
  margin-bottom: 20px;
}

.text h2,
.custom h2,
.acc-content h2 {
  font-size: 1.7778rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3em;
  color: rgb(58, 58, 58);
  text-transform: uppercase;
  text-decoration-line: none;
  margin-bottom: 20px;
}

.text h3,
.custom h3,
.acc-content h3 {
  font-size: 1.4444rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3em;
  color: rgb(58, 58, 58);
  text-transform: uppercase;
  text-decoration-line: none;
  margin-bottom: 20px;
}

.text h4,
.custom h4,
.acc-content h4 {
  font-size: 1.3333rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.2em;
  color: rgb(58, 58, 58);
  text-transform: none;
  text-decoration-line: none;
  margin-bottom: 20px;
}

.text h5,
.custom h5,
.acc-content h5 {
  font-size: 1.1111rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.2em;
  color: rgb(58, 58, 58);
  text-transform: none;
  text-decoration-line: none;
  margin-bottom: 20px;
}

.text h6,
.custom h6,
.acc-content h6 {
  font-size: 0.8889rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.25em;
  color: rgb(58, 58, 58);
  text-transform: none;
  text-decoration-line: none;
  margin-bottom: 20px;
}

.text ul,
.custom ul,
.acc-content ul {
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  text-decoration-line: none;
  margin-bottom: 1.5em;
  margin-left: 54px;
}

.text ol,
.custom ol,
.acc-content ol {
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  text-decoration-line: none;
  margin-bottom: 1.5em;
  margin-left: 54px;
  list-style-type: decimal;
}

.text li,
.custom li,
.acc-content li {
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  text-decoration-line: none;
}

.text blockquote,
.custom blockquote,
.acc-content blockquote {
  font-size: 1.1rem;
  font-weight: 600;
  font-style: italic;
  color: rgb(0, 0, 0);
  text-transform: none;
  text-decoration-line: none;
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  margin-left: 59.4px;
  margin-right: 19.8px;
  padding-left: 23.76px;
}

.text a {
  font-weight: 600;
  font-style: normal;
  color: rgb(46, 49, 146);
  text-transform: none;
  text-decoration-line: none;
}

.text strong {
  font-weight: 700;
  font-style: normal;
  text-transform: none;
  text-decoration-line: none;
}

.text table,
.p-content table {
  border-collapse: separate;
  border-spacing: 0px;
  border: 1px solid rgb(221, 221, 221);
  width: 100%;
  margin-bottom: 1.5em;
}

.text th,
.p-content th {
  border: 0px solid rgb(221, 221, 221);
  padding: 0.7em 1em 0.7em 1em;
  font-weight: 600;
  text-align: center;
  vertical-align: baseline;
  background-color: rgba(0, 0, 0, 0);
  font-size: 1rem;
}

.text td,
.p-content td {
  border: 0px solid rgb(221, 221, 221);
  padding: 0.7em 1em 0.7em 1em;
  vertical-align: baseline;
  font-size: 1rem;
}

@media (max-width: 768px) {
  html {
    font-size: 16.416px;
  }

  body {
    font-size: 16.416px;
    line-height: 1.65em;
  }
}

/* buttons: how this site's theme styles a button that has no look of its own */
a.button, a.button:visited {
  color: #333333;
  background-color: #fafafa;
  border: 1px solid #cccccc;
  border-radius: 4px;
  padding: 12px 24px;
  font-family: Quicksand, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 18px;
  text-decoration: none;
}



/* headings: sizes at smaller screens */
@media (max-width: 768px) {
  h1.heading {
    font-size: 30px;
    line-height: 1.4em;
  }

  h2.heading {
    font-size: 25px;
    line-height: 1.3em;
  }

  h3.heading,
  .t-name,
  .tl-title,
  .post-title {
    font-size: 20px;
    line-height: 1.3em;
  }

  h4.heading {
    font-size: 21.888px;
    line-height: 1.2em;
  }

  h5.heading,
  h5.acc-label {
    font-size: 18.24px;
    line-height: 1.2em;
  }

  h6.heading {
    font-size: 14.592px;
    line-height: 1.25em;
  }

  .text h1 {
    font-size: 30px;
    line-height: 1.4em;
  }

  .p-content h1 {
    font-size: 30px;
    line-height: 1.4em;
  }

  .text h2 {
    font-size: 25px;
    line-height: 1.3em;
  }

  .p-content h2 {
    font-size: 25px;
    line-height: 1.3em;
  }

  .text h3 {
    font-size: 20px;
    line-height: 1.3em;
  }

  .p-content h3 {
    font-size: 20px;
    line-height: 1.3em;
  }

  .text h4 {
    font-size: 21.888px;
    line-height: 1.2em;
  }

  .p-content h4 {
    font-size: 21.888px;
    line-height: 1.2em;
  }

  .text h5 {
    font-size: 18.24px;
    line-height: 1.2em;
  }

  .p-content h5 {
    font-size: 18.24px;
    line-height: 1.2em;
  }

  .text h6 {
    font-size: 14.592px;
    line-height: 1.25em;
  }

  .p-content h6 {
    font-size: 14.592px;
    line-height: 1.25em;
  }
}
