/* 
Theme Name: Emerge Group 2024
Theme URI: https://emergegroup.com
Description: Custom Theme by SQRD Media
Author: Joel Jenkins
Version: 1.0
Tags: 
*/
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css | Slight Mods for Me */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;900&display=swap");
* {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.35;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article, aside, footer, header, nav, section {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 1em 0;
}

figcaption, figure, main {
  display: block;
}

figure {
  margin: 1em 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active, a:hover {
  outline-width: 0;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: inherit;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

audio, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

img {
  border-style: none;
  vertical-align: middle;
}

svg:not(:root) {
  overflow: hidden;
}

button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring, [type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details, menu {
  display: block;
}

summary {
  display: list-item;
}

canvas {
  display: inline-block;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

.container {
  width: 96vw;
  margin: 0 auto;
  max-width: 1240px;
}
.container h1, .container h2, .container h3, .container h4 {
  text-wrap: balance;
}

.button, .ebook-download .container .content fieldset .frm_fields_container .frm_submit button, header .container .content a#header-phone {
  border-radius: 2em;
  text-align: center;
  font-size: 0.85rem;
  text-transform: uppercase;
  font-weight: 700;
  padding: 0.35em 2em;
  display: inline-block;
  text-decoration: none;
  align-self: flex-start;
  border-style: solid;
  border-width: 0.15em;
}
.button.solid, .ebook-download .container .content fieldset .frm_fields_container .frm_submit button.solid, header .container .content a.solid#header-phone {
  color: white;
  background: linear-gradient(99deg, #E87024 14.2%, #F1A676 89.47%);
  transition: all 0.2s ease-in-out;
  border-color: #E87024;
}
.button.solid:hover, .ebook-download .container .content fieldset .frm_fields_container .frm_submit button.solid:hover, header .container .content a.solid#header-phone:hover {
  background: linear-gradient(99deg, #E87024 50%, #F1A676 100%);
  transition: all 0.2s ease-in-out;
}
.button.outline, .ebook-download .container .content fieldset .frm_fields_container .frm_submit button.outline, header .container .content a.outline#header-phone {
  border-color: #E87024;
  color: #E87024;
  background: transparent;
}

figure {
  margin: 0;
}
figure img {
  width: 100%;
  height: auto;
}

html, body {
  scroll-behavior: smooth;
  font-size: 16px;
  font-family: "Inter", sans-serif;
  line-height: 175%;
}
html h1, html h2, html h3, body h1, body h2, body h3 {
  line-height: 130%;
}
html p, body p {
  line-height: 1.75;
}

header {
  position: fixed;
  width: 100%;
  height: auto;
  left: 0;
  top: 0;
  transition: all 0.2s ease-in-out;
  z-index: 100;
}
header.transparent {
  background: transparent;
}
header.blue {
  background: #5A6AFF;
}
header.sticky {
  background: rgba(255, 255, 255, 0.6);
  -webkit-backdrop-filter: blur(0.25em);
  backdrop-filter: blur(0.25em);
  transition: all 0.35s ease-in-out;
}
header.sticky .container .content {
  padding: 0.5em 0;
  transition: all 0.7s ease-in-out;
}
header.sticky .container .content figure {
  width: 5em;
  transition: all 0.7s ease-in-out;
}
header .container .content {
  padding: 1em 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  transition: all 0.2s ease-in-out;
}
@media screen and (min-width: 768px) {
  header .container .content {
    flex-direction: row;
    justify-content: flex-end;
    gap: 2em;
  }
}
@media screen and (min-width: 1024px) {
  header .container .content {
    gap: 0;
  }
}
header .container .content figure {
  width: 6em;
  margin: 0;
  transition: all 0.2s ease-in-out;
}
@media screen and (min-width: 768px) {
  header .container .content figure {
    width: 7.5em;
    margin-right: auto;
  }
}
header .container .content a#shownav {
  display: block;
  width: 2em;
  height: 2em;
}
@media screen and (min-width: 1024px) {
  header .container .content a#shownav {
    display: none;
  }
}
header .container .content a#shownav path {
  fill: black !important;
}
header .container .content a#shownav #times {
  display: none;
}
header .container .content a#shownav.showing #ham {
  display: none;
}
header .container .content a#shownav.showing #times {
  display: inline;
}
header .container .content a#header-phone {
  margin: 0;
  color: white;
  background: linear-gradient(99deg, #E87024 14.2%, #F1A676 89.47%);
  transition: all 0.2s ease-in-out;
  border-color: #E87024;
  align-self: center;
}
header .container .content a#header-phone:hover {
  background: linear-gradient(99deg, #E87024 50%, #F1A676 100%);
  transition: all 0.2s ease-in-out;
}
@media screen and (min-width: 1024px) {
  header .container .content a#header-phone {
    order: 3;
    margin-left: 1em;
  }
}
@media screen and (min-width: 1240px) {
  header .container .content a#header-phone {
    margin-left: 2em;
  }
}
header .container .content nav {
  position: absolute;
  top: -120vh;
  left: 0;
  width: 100%;
  background: #D6DAFF;
  border-radius: 0.3rem;
  padding: 3em 2em;
  z-index: 100;
  transition: all 0.2s ease-in-out;
  /* Resets the Nav ULs */
  /* End of Reset */
}
header .container .content nav.showing {
  top: 105%;
  transition: all 0.2s ease-in-out;
}
@media screen and (min-width: 1024px) {
  header .container .content nav {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    background: transparent;
    padding: 0;
    z-index: 10;
  }
}
header .container .content nav ul {
  margin: 0;
  padding: 0;
}
header .container .content nav ul li {
  list-style-type: none;
  padding: 0;
  margin: 0;
  line-height: 1;
}
header .container .content nav ul li a {
  text-decoration: none;
  font-size: 5vw;
}
@media screen and (min-width: 550px) {
  header .container .content nav ul li a {
    font-size: 1.25em;
  }
}
@media screen and (min-width: 1024px) {
  header .container .content nav ul li a {
    font-size: 0.9em;
  }
}
header .container .content nav > ul {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}
@media screen and (min-width: 1024px) {
  header .container .content nav > ul {
    flex-direction: row;
  }
}
header .container .content nav > ul > li > a {
  text-transform: uppercase;
  color: #5A6AFF;
  font-weight: 700;
}
@media screen and (min-width: 1024px) {
  header .container .content nav > ul > li > a {
    color: #333333;
    font-weight: 600;
  }
}
header .container .content nav li.menu-item-has-children {
  position: relative;
}
@media screen and (min-width: 1024px) {
  header .container .content nav li.menu-item-has-children {
    position: relative;
    padding-right: 1.5em;
  }
  header .container .content nav li.menu-item-has-children:after {
    content: "";
    display: block;
    background-image: url("assets/svg/graphic-dropdown.svg");
    width: 0.7em;
    height: 0.7em;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -0.35em;
  }
  header .container .content nav li.menu-item-has-children:hover ul {
    display: flex;
  }
}
@media screen and (max-width: 1024px) {
  header .container .content nav li.menu-item-has-children ul {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    margin-top: 1em;
    padding-left: 1em;
  }
  header .container .content nav li.menu-item-has-children ul li a {
    color: inherit;
  }
}
@media screen and (min-width: 1025px) {
  header .container .content nav li.menu-item-has-children ul {
    display: none;
    position: absolute;
    right: 0;
    width: 200%;
    max-width: 18em;
    flex-direction: column;
    padding-top: 0.6em;
    box-shadow: 0 1em 1em rgba(0, 0, 0, 0.1);
    border-radius: 0.3rem;
  }
  header .container .content nav li.menu-item-has-children ul li:first-child a {
    border-top-left-radius: 0.3rem;
    border-top-right-radius: 0.3rem;
  }
  header .container .content nav li.menu-item-has-children ul li:last-child a {
    border-bottom-left-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
  }
  header .container .content nav li.menu-item-has-children ul li a {
    background: white;
    color: #E87024;
    display: block;
    padding: 0.7em;
  }
  header .container .content nav li.menu-item-has-children ul li a:hover {
    background: #E87024;
    color: white;
  }
}

main > section:first-of-type.simple-content {
  padding-top: 8em;
}

footer {
  background: #5A6AFF;
  padding: 3em 0;
  color: white;
}
footer p {
  text-align: center;
  margin: 0;
  font-size: 0.85em;
}
footer p a {
  color: inherit;
}
footer figure {
  margin: 0 auto 1em;
  width: 8em;
}

#overlay {
  display: flex;
  position: fixed;
  top: -110vh;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 100;
  transition: all 0.2s ease-in-out;
}
#overlay.showing {
  top: 0;
  transition: all 0.2s ease-in-out;
}
#overlay .modal {
  margin: auto;
  background: white;
  padding: 1em;
  border-radius: 1em;
  width: 90vw;
  max-width: 400px;
  position: relative;
  display: none;
}
@media screen and (min-width: 768px) {
  #overlay .modal {
    padding: 2em;
  }
}
#overlay .modal h3 {
  font-size: 7vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  #overlay .modal h3 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1240px) {
  #overlay .modal h3 {
    font-size: 2.5rem;
  }
}
#overlay .modal h3 {
  font-size: 1.5em;
  margin: 0;
  text-align: center;
}
#overlay .modal figure {
  margin: 0 0 2em;
  border-radius: 1em;
  overflow: hidden;
}
#overlay .modal figure img {
  width: 100%;
  height: auto;
}
#overlay .modal ul.ct-buttons {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  gap: 1em;
}
#overlay .modal ul.ct-buttons li {
  list-style-type: none;
}
#overlay .modal a.modal-close {
  position: absolute;
  top: 1em;
  right: 1em;
  width: 1em;
  height: 1em;
  display: block;
}

.blocks-over-colored-image {
  padding: 3em 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .blocks-over-colored-image {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .blocks-over-colored-image {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .blocks-over-colored-image {
    padding: 10em 0;
  }
}
.blocks-over-colored-image:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.35;
}
.blocks-over-colored-image:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  mix-blend-mode: multiply;
}
.blocks-over-colored-image.blue-overlay:after {
  background: linear-gradient(0deg, rgba(90, 106, 255, 0.1) 0%, rgba(90, 106, 255, 0.1) 100%), linear-gradient(95deg, rgba(90, 106, 255, 0.9) 4.36%, rgba(31, 50, 160, 0.9) 98.56%), url(<path-to-image>), lightgray 0px -316.578px/100% 151.14% no-repeat;
}
.blocks-over-colored-image.dark-overlay:after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(284deg, rgba(51, 51, 51, 0.8) 1.04%, rgba(97, 96, 96, 0.8) 99.56%), url(<path-to-image>), lightgray 50%/cover no-repeat;
}
.blocks-over-colored-image .container {
  position: relative;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .blocks-over-colored-image .container {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 1024px) {
  .blocks-over-colored-image .container {
    font-size: 1.625rem;
  }
}
.blocks-over-colored-image .container .content {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
@media screen and (min-width: 1024px) {
  .blocks-over-colored-image .container .content {
    width: 50%;
    margin-left: auto;
  }
}
.blocks-over-colored-image .container .content .boc-block {
  background: #D6DAFF;
  padding: 1em;
  border-radius: 0.6rem;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.blocks-over-colored-image .container .content .boc-block * {
  margin: 0;
}
.blocks-over-colored-image .container .content .boc-block h3 {
  font-size: 1em;
}
.blocks-over-colored-image .container .content .boc-block h3 h3 {
  font-size: 7vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .blocks-over-colored-image .container .content .boc-block h3 h3 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1240px) {
  .blocks-over-colored-image .container .content .boc-block h3 h3 {
    font-size: 2.5rem;
  }
}
.blocks-over-colored-image .container .content .boc-block p {
  font-size: 0.75em;
}
@media screen and (min-width: 1024px) {
  .blocks-over-colored-image .container .content .boc-block {
    padding: 2em;
  }
}

.book-download {
  background: #EFF0FF;
  padding: 3em 0;
}
@media screen and (min-width: 768px) {
  .book-download {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .book-download {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .book-download {
    padding: 10em 0;
  }
}
.book-download .container {
  padding: 2em;
  border-radius: 0.3rem;
  display: flex;
  flex-direction: column-reverse;
  gap: 2em;
}
@media screen and (min-width: 768px) {
  .book-download .container {
    flex-direction: row-reverse;
    align-items: center;
  }
}
@media screen and (min-width: 768px) {
  .book-download .container .content {
    width: 55%;
  }
}
.book-download .container .content strong {
  display: block;
  color: #5A6AFF;
  font-size: 1.35em;
}
.book-download .container .content h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .book-download .container .content h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .book-download .container .content h2 {
    font-size: 4rem;
  }
}
.book-download .container .content h2 {
  margin: 0;
}
.book-download .container .content blockquote {
  margin: 2em 0;
}
.book-download .container .content blockquote p {
  font-style: italic;
}
.book-download .container .content blockquote cite {
  display: block;
  font-style: normal;
  font-size: 0.9em;
}
.book-download .container .content ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
@media screen and (min-width: 1024px) {
  .book-download .container .content ul {
    flex-direction: row;
  }
}
.book-download .container .content ul li {
  list-style-type: none;
}
@media screen and (min-width: 1024px) {
  .book-download .container .content ul li {
    flex: 1;
  }
}
.book-download .container .content ul li a {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .book-download .container .content ul li a {
    padding-left: 1em;
    padding-right: 1em;
  }
}
.book-download .container figure {
  width: 65%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .book-download .container figure {
    width: 40%;
  }
}

.cta-over-image {
  padding: 3em 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .cta-over-image {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .cta-over-image {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .cta-over-image {
    padding: 10em 0;
  }
}
.cta-over-image:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.35;
}
.cta-over-image:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  mix-blend-mode: multiply;
}
.cta-over-image.blue-overlay:after {
  background: linear-gradient(0deg, rgba(90, 106, 255, 0.1) 0%, rgba(90, 106, 255, 0.1) 100%), linear-gradient(95deg, rgba(90, 106, 255, 0.9) 4.36%, rgba(31, 50, 160, 0.9) 98.56%), url(<path-to-image>), lightgray 0px -316.578px/100% 151.14% no-repeat;
}
.cta-over-image.dark-overlay:after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(284deg, rgba(51, 51, 51, 0.8) 1.04%, rgba(97, 96, 96, 0.8) 99.56%), url(<path-to-image>), lightgray 50%/cover no-repeat;
}
.cta-over-image.haslogobar {
  padding-bottom: 10em;
}
@media screen and (min-width: 1240px) {
  .cta-over-image.haslogobar {
    padding-bottom: 13em;
  }
}
.cta-over-image .container {
  position: relative;
  z-index: 5;
  max-width: 28em;
}
@media screen and (min-width: 768px) {
  .cta-over-image .container {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 1024px) {
  .cta-over-image .container {
    font-size: 1.625rem;
  }
}
.cta-over-image .container .content {
  color: white;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  font-size: 16px;
}
.cta-over-image .container .content * {
  margin: 0;
}
.cta-over-image .container .content h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .cta-over-image .container .content h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .cta-over-image .container .content h2 {
    font-size: 4rem;
  }
}

.ebook-download {
  background: url("assets/images/graphic-ebook-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right bottom;
  padding: 2em 0;
}
@media screen and (min-width: 1024px) {
  .ebook-download {
    padding: 3em 0;
  }
}
.ebook-download .container {
  display: flex;
  flex-direction: column-reverse;
  gap: 2em;
}
@media screen and (min-width: 768px) {
  .ebook-download .container {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
@media screen and (min-width: 1024px) {
  .ebook-download .container {
    justify-content: space-evenly;
  }
}
.ebook-download .container .content {
  display: flex;
  flex-direction: column;
  gap: 1.25em;
}
.ebook-download .container .content * {
  margin: 0;
}
.ebook-download .container .content h3 {
  font-size: 7vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .ebook-download .container .content h3 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1240px) {
  .ebook-download .container .content h3 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 768px) {
  .ebook-download .container .content {
    width: 60%;
  }
}
.ebook-download .container .content h3 {
  background: var(--Gradient-Blue-01, linear-gradient(99deg, #1F32A0 14.2%, #5A6AFF 89.47%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ebook-download .container .content p {
  font-size: 1.25em;
}
.ebook-download .container .content fieldset {
  border: none;
}
.ebook-download .container .content fieldset .frm_fields_container {
  display: flex;
  align-items: stretch;
  gap: 0;
}
.ebook-download .container .content fieldset .frm_fields_container * {
  margin: 0;
}
.ebook-download .container .content fieldset .frm_fields_container label {
  display: none;
}
.ebook-download .container .content fieldset .frm_fields_container .frm_form_field {
  width: 60%;
}
.ebook-download .container .content fieldset .frm_fields_container .frm_form_field input[type=email] {
  padding: 0.35em;
  border-top-left-radius: 2em;
  border-bottom-left-radius: 2em;
  border: none;
  padding-left: 1em;
  width: 100%;
}
.ebook-download .container .content fieldset .frm_fields_container .frm_submit {
  position: relative;
  width: 45%;
}
@media screen and (min-width: 768px) {
  .ebook-download .container .content fieldset .frm_fields_container .frm_submit {
    left: -3em;
  }
}
.ebook-download .container .content fieldset .frm_fields_container .frm_submit button {
  color: white;
  background: linear-gradient(99deg, #E87024 14.2%, #F1A676 89.47%);
  transition: all 0.2s ease-in-out;
  border-color: #E87024;
}
.ebook-download .container .content fieldset .frm_fields_container .frm_submit button:hover {
  background: linear-gradient(99deg, #E87024 50%, #F1A676 100%);
  transition: all 0.2s ease-in-out;
}
@media screen and (min-width: 768px) {
  .ebook-download .container aside {
    width: 35%;
  }
}
@media screen and (min-width: 1240px) {
  .ebook-download .container aside {
    width: 25%;
  }
}
.ebook-download .container aside img {
  width: 100%;
  height: auto;
}

.form-over-image {
  padding: 3em 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .form-over-image {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .form-over-image {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .form-over-image {
    padding: 10em 0;
  }
}
.form-over-image:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.35;
}
.form-over-image:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  mix-blend-mode: multiply;
}
.form-over-image.blue-overlay:after {
  background: linear-gradient(0deg, rgba(90, 106, 255, 0.1) 0%, rgba(90, 106, 255, 0.1) 100%), linear-gradient(95deg, rgba(90, 106, 255, 0.9) 4.36%, rgba(31, 50, 160, 0.9) 98.56%), url(<path-to-image>), lightgray 0px -316.578px/100% 151.14% no-repeat;
}
.form-over-image.dark-overlay:after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(284deg, rgba(51, 51, 51, 0.8) 1.04%, rgba(97, 96, 96, 0.8) 99.56%), url(<path-to-image>), lightgray 50%/cover no-repeat;
}
.form-over-image .container {
  position: relative;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .form-over-image .container {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 1024px) {
  .form-over-image .container {
    font-size: 1.625rem;
  }
}
.form-over-image .container .content {
  color: white;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  font-size: 16px;
}
.form-over-image .container .content * {
  margin: 0;
}
.form-over-image .container .content h3 {
  font-size: 7vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .form-over-image .container .content h3 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1240px) {
  .form-over-image .container .content h3 {
    font-size: 2.5rem;
  }
}
.form-over-image .container .content ul {
  padding: 0;
}
.form-over-image .container .content ul li {
  list-style-type: none;
  background-image: url("assets/svg/graphic-li-checkbox.svg");
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 2em;
  background-size: 1em 1em;
}
@media screen and (min-width: 1024px) {
  .form-over-image .container .content {
    width: 50%;
  }
}

.logobar-container.bg-dark {
  background: #333333;
  margin-bottom: -3em;
}
@media screen and (min-width: 1240px) {
  .logobar-container.bg-dark {
    margin-bottom: -5em;
  }
}
.logobar-container .logobar {
  background: white;
  border-radius: 1.2rem;
  padding: 1em;
  position: relative;
  z-index: 10;
  top: -6em;
}
@media screen and (min-width: 1024px) {
  .logobar-container .logobar {
    padding: 2em;
  }
}
@media screen and (min-width: 1240px) {
  .logobar-container .logobar {
    top: -8em;
  }
}
.logobar-container .logobar h3 {
  text-align: center;
  color: #E87024;
  text-transform: uppercase;
}
.logobar-container .logobar ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
}
.logobar-container .logobar ul li {
  list-style-type: none;
  width: 45%;
}
@media screen and (min-width: 768px) {
  .logobar-container .logobar ul li {
    width: 17%;
  }
}
.logobar-container .logobar ul li img {
  width: 100%;
  height: auto;
}

.hero-main {
  padding: 3em 0;
  margin-top: 6em;
}
@media screen and (min-width: 768px) {
  .hero-main {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .hero-main {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .hero-main {
    padding: 10em 0;
  }
}
@media screen and (min-width: 1240px) {
  .hero-main {
    margin: 0;
  }
}
.hero-main .container {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
@media screen and (min-width: 1024px) {
  .hero-main .container {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
@media screen and (min-width: 1024px) {
  .hero-main .container .content, .hero-main .container aside {
    flex: 1;
  }
}
.hero-main .container .content {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  font-size: 16px;
}
.hero-main .container .content h1 {
  font-size: 12vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .hero-main .container .content h1 {
    font-size: 3em;
  }
}
@media screen and (min-width: 1240px) {
  .hero-main .container .content h1 {
    font-size: 5em;
  }
}
.hero-main .container .content * {
  margin: 0;
}
.hero-main .container .content .copy {
  font-size: 1.25rem;
  font-style: italic;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .hero-main .container .content .copy {
    font-size: 1.625rem;
  }
}
.simple-content .container {
  max-width: 768px;
}
.simple-content .container .content {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  font-size: 16px;
}
.simple-content .container .content * {
  margin: 0;
}

.sxs-solid-color {
  padding: 3em 0;
}
@media screen and (min-width: 768px) {
  .sxs-solid-color {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .sxs-solid-color {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .sxs-solid-color {
    padding: 10em 0;
  }
}
.sxs-solid-color.bg-dark {
  background: #333333;
}
.sxs-solid-color.bg-light {
  background: #D6DAFF;
}
.sxs-solid-color.bg-light .container .content {
  color: #333333;
}
.sxs-solid-color .container {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
@media screen and (min-width: 1024px) {
  .sxs-solid-color .container {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
.sxs-solid-color .container .content {
  color: white;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  font-size: 16px;
}
.sxs-solid-color .container .content * {
  margin: 0;
}
.sxs-solid-color .container .content h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .sxs-solid-color .container .content h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .sxs-solid-color .container .content h2 {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1024px) {
  .sxs-solid-color .container .content {
    width: 45%;
  }
}
@media screen and (min-width: 1024px) {
  .sxs-solid-color .container aside {
    width: 45%;
  }
}

.testimonial-carousel {
  padding: 3em 0;
}
@media screen and (min-width: 768px) {
  .testimonial-carousel {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .testimonial-carousel {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .testimonial-carousel {
    padding: 10em 0;
  }
}
.testimonial-carousel .container {
  display: flex;
  flex-direction: column-reverse;
}
@media screen and (min-width: 1024px) {
  .testimonial-carousel .container {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
.testimonial-carousel .container .content h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .testimonial-carousel .container .content h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .testimonial-carousel .container .content h2 {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1024px) {
  .testimonial-carousel .container .content {
    width: 46%;
  }
}
.testimonial-carousel .container .content ul li blockquote {
  background: #D6DAFF;
  margin: 0;
  padding: 1em;
  border-radius: 0.3rem;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .testimonial-carousel .container .content ul li blockquote {
    padding: 2.5em;
  }
}
.testimonial-carousel .container .content ul li blockquote cite {
  margin-top: 2em;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-style: normal;
  font-weight: 700;
  font-size: 0.85rem;
}
.testimonial-carousel .container .content ul li blockquote > figure {
  width: 4em;
  position: absolute;
  bottom: 1em;
  right: 1em;
}
@media screen and (min-width: 1024px) {
  .testimonial-carousel .container aside {
    width: 46%;
  }
}

.three-columns {
  background: #EFF0FF;
  padding: 3em 0;
}
@media screen and (min-width: 768px) {
  .three-columns {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .three-columns {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .three-columns {
    padding: 10em 0;
  }
}
.three-columns .container .content {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
@media screen and (min-width: 1024px) {
  .three-columns .container .content {
    flex-direction: row;
    justify-content: space-between;
    gap: 0;
  }
}
.three-columns .container .content .column {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.three-columns .container .content .column h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .three-columns .container .content .column h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .three-columns .container .content .column h2 {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1024px) {
  .three-columns .container .content .column {
    width: 30%;
  }
}
.three-columns .container .content .column h2 {
  text-align: center;
  margin: 0;
}
.three-columns .container .content .column figure {
  width: 90%;
  margin: 0 auto;
}
.three-columns .container .content .column .column-content {
  background: white;
  border-radius: 0.6rem;
  padding: 1em;
}
.three-columns .container .content .column .column-content h3 {
  margin: 0;
}

.two-column-content-blocked-list {
  padding: 3em 0;
}
@media screen and (min-width: 768px) {
  .two-column-content-blocked-list {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .two-column-content-blocked-list {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .two-column-content-blocked-list {
    padding: 10em 0;
  }
}
.two-column-content-blocked-list .container {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
@media screen and (min-width: 1024px) {
  .two-column-content-blocked-list .container {
    flex-direction: row;
    gap: 4em;
    justify-content: space-between;
  }
}
@media screen and (min-width: 1240px) {
  .two-column-content-blocked-list .container {
    gap: 6em;
  }
}
.two-column-content-blocked-list .container .content {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  font-size: 16px;
  padding-top: 2em;
  position: relative;
}
.two-column-content-blocked-list .container .content * {
  margin: 0;
}
.two-column-content-blocked-list .container .content h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .two-column-content-blocked-list .container .content h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .two-column-content-blocked-list .container .content h2 {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1024px) {
  .two-column-content-blocked-list .container .content {
    flex: 1;
  }
}
.two-column-content-blocked-list .container .content:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 8em;
  height: 0.5em;
  background-color: #5A6AFF;
  display: block;
  content: "";
}
@media screen and (min-width: 1024px) {
  .two-column-content-blocked-list .container aside {
    flex: 1;
  }
}
.two-column-content-blocked-list .container aside.full ul {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.two-column-content-blocked-list .container aside.full ul li {
  display: flex;
  gap: 1em;
}
.two-column-content-blocked-list .container aside.full ul li .list-content {
  flex: 1;
}
.two-column-content-blocked-list .container aside.half ul {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
@media screen and (min-width: 1024px) {
  .two-column-content-blocked-list .container aside.half ul {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
    justify-content: space-between;
    row-gap: 1em;
  }
}
.two-column-content-blocked-list .container aside.half ul li {
  display: flex;
  flex-direction: column;
  gap: 1em;
  align-items: center;
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .two-column-content-blocked-list .container aside.half ul li {
    width: 48%;
  }
}
.two-column-content-blocked-list .container aside ul {
  margin: 0;
  padding: 0;
}
.two-column-content-blocked-list .container aside ul li {
  padding: 1em;
  border-radius: 0.9rem;
  list-style-type: none;
}
.two-column-content-blocked-list .container aside ul li figure {
  width: 4em;
  margin: 0;
}
.two-column-content-blocked-list .container aside ul li .list-content {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
.two-column-content-blocked-list .container aside ul li .list-content * {
  margin: 0;
}
.two-column-content-blocked-list .container aside ul li .list-content h3 {
  font-size: 1.35em;
}
.two-column-content-blocked-list .container aside ul li .list-content a {
  color: inherit;
}
.two-column-content-blocked-list .container aside ul li.light {
  background: #EFF0FF;
}
.two-column-content-blocked-list .container aside ul li.light h3 {
  color: #5A6AFF;
}
.two-column-content-blocked-list .container aside ul li.dark {
  background: #5A6AFF;
  color: white;
}

.video {
  background: url("assets/images/graphic-video-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 3em 0;
}
@media screen and (min-width: 768px) {
  .video {
    padding: 4em 0;
  }
}
@media screen and (min-width: 1024px) {
  .video {
    padding: 5em 0;
  }
}
@media screen and (min-width: 1240px) {
  .video {
    padding: 10em 0;
  }
}
.video .container .content {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
.video .container .content h2 {
  font-size: 9vw;
  line-height: 110%;
}
@media screen and (min-width: 768px) {
  .video .container .content h2 {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 1240px) {
  .video .container .content h2 {
    font-size: 4rem;
  }
}
.video .container .content h2 {
  text-align: center;
  max-width: 14em;
  margin: 0 auto;
}
.video .container .content > div {
  box-shadow: 0.5em 0.5em 1.5em rgba(13, 43, 71, 0.25);
}
