@charset "UTF-8";
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a, a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
    content: "";
  }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr, img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2, h3 {
    page-break-after: avoid;
  }
}
/*-------------- Gardevoir cross browser reset --------------*/
*, ::after, ::before {
  box-sizing: inherit;
  padding: 0;
  margin: 0;
}

:where(:root) {
  line-height: 1.15;
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

:where(main) {
  display: block;
}

:where(h1) {
  font-size: 2em;
  margin: 0.67em 0;
}

:where(p + p) {
  margin-top: 1rem;
}

:where(a) {
  background-color: transparent;
}

:where(abbr[title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

:where(code, kbd, samp, pre) {
  font-family: monospace, monospace;
  font-size: 1em;
}

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

:where(sub) {
  bottom: -0.25em;
}

:where(sup) {
  top: -0.5em;
}

:where(button, input, optgroup, select, textarea) {
  line-height: inherit;
  border: 1px solid currentColor;
}

:where(button) {
  overflow: visible;
  text-transform: none;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  padding: 1px 6px;
}

:where(input) {
  overflow: visible;
}

:where(input, textarea) {
  padding: 1px;
}

:where(fieldset) {
  border: 1px solid currentColor;
  margin: 0 2px;
}

:where(legend) {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

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

:where(select) {
  text-transform: none;
}

:where(textarea) {
  overflow: auto;
  vertical-align: top;
}

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

:where([type=color]) {
  background: inherit;
}

::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto;
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

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

::-moz-focus-inner {
  border: 0;
}

:-moz-focusring {
  outline: 1px dotted ButtonText;
}

:-moz-ui-invalid {
  box-shadow: none;
}

:where(hr) {
  box-sizing: content-box;
  height: 0;
  color: inherit;
  overflow: visible;
}

:where(dl, ol, ul) {
  margin: 1em 0;
}

:where(ol ol, ol ul, ol dl, ul ol, ul ul, ul dl, dl ol, dl ul, dl dl) {
  margin: 0;
}

:where(b, strong) {
  font-weight: bolder;
}

:where(audio, video) {
  display: inline-block;
}

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

:where(img) {
  border: 0;
}

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

:where(table) {
  text-indent: 0;
  border-color: inherit;
}

:where(details) {
  display: block;
}

:where(dialog) {
  background-color: inherit;
  border: solid;
  color: inherit;
  display: block;
  height: -moz-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
}

:where(dialog):not([open]) {
  display: none;
}

:where(summary) {
  display: list-item;
}

:where(canvas) {
  display: inline-block;
}

:where(template) {
  display: none;
}

:where([hidden]) {
  display: none;
}

/*-------------- WordPress core --------------*/
.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter, div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #F7FAFC;
  border: 1px solid #EAEEF1;
  max-width: 96%;
  padding: 5px 3px 10px;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption .wp-caption-text, .gallery-caption {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

/*-------------- Reset --------------*/
*, *:after, *:before {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smooth: always;
  text-rendering: optimizeLegibility;
}

* {
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  font-size: 100%;
}

a:focus, a:hover, a:active, input:focus {
  outline: 0;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

:root {
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}

body {
  font-size: 1.125rem;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  line-height: 1.65em;
  display: flex;
  display: -ms-flexbox;
  flex-direction: column;
  min-height: 100vh;
  justify-content: space-between;
  overflow-x: clip;
  /* Fix for scroll/overflow on body and hidden pre-header, while admin bar is active */
}
@media only screen and (min-width: 783px) {
  body.logged-in.admin-bar {
    min-height: calc(100vh - 32px);
  }
  body.logged-in.admin-bar .header {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 782px) and (min-width: 601px) {
  body.logged-in.admin-bar {
    min-height: calc(100vh - 46px);
  }
  body.logged-in.admin-bar .header {
    margin-top: 46px;
  }
}
@media only screen and (max-width: 600px) {
  body.logged-in.admin-bar .header {
    margin-top: 46px;
  }
  body.logged-in.admin-bar .header.header-scroll {
    margin-top: 0;
  }
}

main {
  background-color: #F7FAFC;
  color: #16181D;
  flex: 1;
  position: relative;
  z-index: 1;
}

::-moz-selection {
  background: rgba(94, 98, 110, 0.25);
  color: #105A93;
  text-shadow: none;
}

::selection {
  background: rgba(94, 98, 110, 0.25);
  color: #105A93;
  text-shadow: none;
}

::-webkit-selection {
  background: rgba(94, 98, 110, 0.25);
  color: #105A93;
  text-shadow: none;
}

::-moz-selection {
  background: rgba(94, 98, 110, 0.25);
  color: #105A93;
  text-shadow: none;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (min-width: 1341px) {
  .show_pre-header + .main-content {
    margin-top: 36px;
  }
}
@media (max-width: 1340px) {
  .show_pre-header + .main-content {
    margin-top: 36px;
  }
}
/*-------------- Structure --------------*/
/* Layout and display classes */
.clear:before, .clear:after {
  content: " ";
  display: table;
}

.clear:after {
  clear: both;
}

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

.flex-space {
  -ms-justify-content: space-between;
  justify-content: space-between;
}

.flex-end {
  -ms-justify-content: flex-end;
  justify-content: flex-end;
}

.flex-start {
  -ms-justify-content: flex-start;
  justify-content: flex-start;
}

.vert-center {
  -ms-align-items: center;
  align-items: center;
}

.horiz-center {
  -ms-justify-content: center;
  justify-content: center;
}

.row-reverse {
  flex-direction: row-reverse;
}

.col-reverse {
  flex-direction: column-reverse;
}

.flex-col {
  flex-direction: column;
}

.autoflex {
  flex: 1;
}

.grid {
  display: grid;
}

/* Wrappers and structures */
.col-wrapper {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  row-gap: 1.5rem;
}
.col-wrapper.with-gap {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.col-wrapper.no-gap {
  -moz-column-gap: 1px;
       column-gap: 1px;
}

.module_flow .grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  -moz-column-gap: clamp(1rem, 5vw, 2rem);
       column-gap: clamp(1rem, 5vw, 2rem);
  row-gap: clamp(1rem, 5vw, 2rem);
}

.grid:has(.card--article) {
  -moz-column-gap: 0;
       column-gap: 0;
}

.wrap-l {
  --wrap-max: 1560px;
}

.wrap-m {
  --wrap-max: 1280px;
}

.wrap-s {
  --wrap-max: 1000px;
}

.wrap-xs {
  --wrap-max: 800px;
}

.wrap-xxs {
  --wrap-max: 600px;
}

.wrap-xxl {
  width: 100%;
  margin: 0 auto;
  position: relative;
  --dist-to-edge: 0px;
}

.wrap-xl {
  width: 90%;
  margin: 0 auto;
  position: relative;
  --dist-to-edge: 5vw;
}

.wrap-l, .wrap-m, .wrap-s, .wrap-xs, .wrap-xxs {
  width: 90%;
  max-width: var(--wrap-max);
  margin: 0 auto;
  position: relative;
  --dist-to-edge: max(5vw, calc((100vw - var(--wrap-max)) / 2));
}

.wrap-overflow {
  /* Overflowing to the right */
}
.wrap-overflow.rightpos .overflowing {
  width: calc(100% + var(--dist-to-edge));
}
.wrap-overflow {
  /* Overflowing to the left */
}
.wrap-overflow.leftpos .overflowing {
  margin-left: calc(var(--dist-to-edge) * -1);
  width: calc(100% + var(--dist-to-edge));
}

/* Columns / Sections */
.module_intro,
.module_btnwrap,
.col-1,
.col-f-1,
.loop-msg,
.pagination,
.grid.grid_col_1 .loop {
  grid-column: span 12;
  width: 100%;
}

/* Spacing / Padding */
.pagination {
  gap: 0.375rem;
}

.pad-auto {
  padding: clamp(3.75rem, 5vw, 5.625rem) 0;
}

.main-content > section.none-bg:not(.no-pad) + .none-bg.pad-auto {
  padding-top: 0;
}

.pad-xxs {
  padding: 1rem 0;
}

.pad-xs {
  padding: clamp(0.75rem, 5vw, 1.5rem) 0;
}

.marg-b-xs {
  margin-bottom: clamp(0.75rem, 5vw, 1.5rem);
}

.marg-t-xs {
  margin-top: clamp(0.75rem, 5vw, 1.5rem);
}

.pad-s {
  padding: clamp(1rem, 5vw, 2rem) 0;
}

.marg-b-s {
  margin-bottom: clamp(1rem, 5vw, 2rem);
}

.marg-t-s {
  margin-top: clamp(1rem, 5vw, 2rem);
}

.pad-m {
  padding: clamp(2rem, 5vw, 3.75rem) 0;
}

.marg-b-m {
  margin-bottom: clamp(2rem, 5vw, 3.75rem);
}

.marg-t-m {
  margin-top: clamp(2rem, 5vw, 3.75rem);
}

.pad-l {
  padding: clamp(3.75rem, 5vw, 5.625rem) 0;
}

.pad-b-l {
  padding-bottom: clamp(3.75rem, 5vw, 5.625rem);
}

.pad-t-l {
  padding-top: clamp(3.75rem, 5vw, 5.625rem);
}

.marg-b-l {
  margin-bottom: clamp(3.75rem, 5vw, 5.625rem);
}

.marg-t-l {
  margin-top: clamp(3.75rem, 5vw, 5.625rem);
}

.pad-xl {
  padding: clamp(3.75rem, 5vw, 7.5rem) 0;
}

.marg-b-xl {
  margin-bottom: clamp(3.75rem, 5vw, 7.5rem);
}

.marg-t-xl {
  margin-top: clamp(3.75rem, 5vw, 7.5rem);
}

.pad-xxl {
  padding: clamp(3.75rem, 5vw, 9.375rem) 0;
}

.marg-b-xxl {
  margin-bottom: clamp(3.75rem, 5vw, 9.375rem);
}

.marg-t-xxl {
  margin-top: clamp(3.75rem, 5vw, 9.375rem);
}

/*--- Responsive ---*/
@media (min-width: 1341px) {
  .col-1-2 {
    grid-column: span 6;
  }
  .col-1-3 {
    grid-column: span 4;
  }
  .col-2-3 {
    grid-column: span 8;
  }
  .col-1-4 {
    grid-column: span 3;
  }
  .col-3-4 {
    grid-column: span 9;
  }
  /* Loops */
  .grid.grid_col_2 .loop {
    grid-column: span 6;
  }
  .grid.grid_col_3 .loop {
    grid-column: span 4;
  }
  .grid.grid_col_4 .loop {
    grid-column: span 3;
  }
}
@media (max-width: 1340px) {
  .col-1-2, .col-1-3, .col-2-3, .col-2-3, .col-1-4, .col-3-4 {
    grid-column: span 6;
  }
  .columns.threes .col-1-3, .columns.threes .col-1-4, .columns.threes .col-1-2 {
    grid-column: span 4;
  }
  .columns:not(.threes) .col-1-2, .columns:not(.threes) .col-1-3, .columns:not(.threes) .col-2-3, .columns:not(.threes) .col-2-3, .columns:not(.threes) .col-1-4, .columns:not(.threes) .col-3-4 {
    grid-column: span 6;
  }
  .module_intro .intro {
    max-width: 90vw;
  }
  /* Loops */
  .grid.grid_col_2 .loop, .grid.grid_col_3 .loop, .grid.grid_col_4 .loop {
    grid-column: span 6;
  }
}
@media (max-width: 840px) {
  .col-1-2, .col-1-3, .col-2-3, .col-2-3, .col-1-4, .col-3-4 {
    grid-column: span 12;
  }
  .columns.threes .col-1-2, .columns.threes .col-1-3, .columns.threes .col-2-3, .columns.threes .col-2-3, .columns.threes .col-1-4, .columns.threes .col-3-4,
  .columns:not(.threes) .col-1-2,
  .columns:not(.threes) .col-1-3,
  .columns:not(.threes) .col-2-3,
  .columns:not(.threes) .col-2-3,
  .columns:not(.threes) .col-1-4,
  .columns:not(.threes) .col-3-4 {
    grid-column: span 12;
  }
  .reorder > .module_intro {
    order: 1;
  }
  .reorder .module_img {
    order: 2;
  }
  .reorder > *:not(.module_img):not(.module_intro) {
    order: 3;
  }
  /*-- Loops --*/
  .grid.grid_col_2 .loop, .grid.grid_col_3 .loop, .grid.grid_col_4 .loop {
    grid-column: span 12;
  }
}
.white-txt {
  color: #F7FAFC;
}

.primary-txt {
  color: #105A93;
}

.accent-txt {
  color: #0B3E65;
}

.white-bg > *,
.white-bg > .content,
.bright-bg > *,
.bright-bg > .content {
  color: #16181D;
}

.dark-bg > *,
.dark-bg > .content,
.black-bg > *,
.black-bg > .content,
.primary-bg > *,
.primary-bg > .content {
  color: #F7FAFC;
}

.white-bg {
  background-color: #F7FAFC;
}
.white-bg .eyebrow {
  color: #5E626E;
}
.white-bg.has-border {
  border: 1px solid #D5D9DE;
}

.bright-bg {
  background-color: #EAEEF1;
}
.bright-bg.has-border {
  border: 1px solid #D5D9DE;
}

.dark-bg {
  background-color: #1F2229;
}
.dark-bg.has-border {
  border: 1px solid #D5D9DE;
}

.black-bg {
  background-color: #16181D;
}
.black-bg.has-border {
  border: 1px solid #EAEEF1;
}

.primary-bg {
  background-color: #0B3E65;
}
.primary-bg.has-border {
  border: 1px solid #F7FAFC;
}

/* SVG colors in i.e. 404 page */
svg.white-bg path {
  fill: #F7FAFC;
}

svg.bright-bg path {
  fill: #EAEEF1;
}

svg.dark-bg path {
  fill: #1F2229;
}

svg.primary-bg path {
  fill: #105A93;
}

.columns.primary-bg .btn-primary,
.columns.primary-bg input[type=submit],
.columns.primary-bg .forminator-button.forminator-button-submit, .columns.primary-bg > .none-bg .btn-primary,
.columns.primary-bg > .none-bg input[type=submit],
.columns.primary-bg > .none-bg .forminator-button.forminator-button-submit, .columns.primary-bg .module_btnwrap .btn-primary,
.columns.primary-bg .module_btnwrap input[type=submit],
.columns.primary-bg .module_btnwrap .forminator-button.forminator-button-submit, .columns.dark-bg .btn-primary,
.columns.dark-bg input[type=submit],
.columns.dark-bg .forminator-button.forminator-button-submit, .columns.dark-bg > .none-bg .btn-primary,
.columns.dark-bg > .none-bg input[type=submit],
.columns.dark-bg > .none-bg .forminator-button.forminator-button-submit, .columns.dark-bg .module_btnwrap .btn-primary,
.columns.dark-bg .module_btnwrap input[type=submit],
.columns.dark-bg .module_btnwrap .forminator-button.forminator-button-submit, .columns.black-bg .btn-primary,
.columns.black-bg input[type=submit],
.columns.black-bg .forminator-button.forminator-button-submit, .columns.black-bg > .none-bg .btn-primary,
.columns.black-bg > .none-bg input[type=submit],
.columns.black-bg > .none-bg .forminator-button.forminator-button-submit, .columns.black-bg .module_btnwrap .btn-primary,
.columns.black-bg .module_btnwrap input[type=submit],
.columns.black-bg .module_btnwrap .forminator-button.forminator-button-submit, .columns.bright-bg .btn-primary,
.columns.bright-bg input[type=submit],
.columns.bright-bg .forminator-button.forminator-button-submit, .columns.bright-bg > .none-bg .btn-primary,
.columns.bright-bg > .none-bg input[type=submit],
.columns.bright-bg > .none-bg .forminator-button.forminator-button-submit, .columns.bright-bg .module_btnwrap .btn-primary,
.columns.bright-bg .module_btnwrap input[type=submit],
.columns.bright-bg .module_btnwrap .forminator-button.forminator-button-submit,
.col-wrapper.primary-bg .btn-primary,
.col-wrapper.primary-bg input[type=submit],
.col-wrapper.primary-bg .forminator-button.forminator-button-submit,
.col-wrapper.primary-bg > .none-bg .btn-primary,
.col-wrapper.primary-bg > .none-bg input[type=submit],
.col-wrapper.primary-bg > .none-bg .forminator-button.forminator-button-submit,
.col-wrapper.primary-bg .module_btnwrap .btn-primary,
.col-wrapper.primary-bg .module_btnwrap input[type=submit],
.col-wrapper.primary-bg .module_btnwrap .forminator-button.forminator-button-submit,
.col-wrapper.dark-bg .btn-primary,
.col-wrapper.dark-bg input[type=submit],
.col-wrapper.dark-bg .forminator-button.forminator-button-submit,
.col-wrapper.dark-bg > .none-bg .btn-primary,
.col-wrapper.dark-bg > .none-bg input[type=submit],
.col-wrapper.dark-bg > .none-bg .forminator-button.forminator-button-submit,
.col-wrapper.dark-bg .module_btnwrap .btn-primary,
.col-wrapper.dark-bg .module_btnwrap input[type=submit],
.col-wrapper.dark-bg .module_btnwrap .forminator-button.forminator-button-submit,
.col-wrapper.black-bg .btn-primary,
.col-wrapper.black-bg input[type=submit],
.col-wrapper.black-bg .forminator-button.forminator-button-submit,
.col-wrapper.black-bg > .none-bg .btn-primary,
.col-wrapper.black-bg > .none-bg input[type=submit],
.col-wrapper.black-bg > .none-bg .forminator-button.forminator-button-submit,
.col-wrapper.black-bg .module_btnwrap .btn-primary,
.col-wrapper.black-bg .module_btnwrap input[type=submit],
.col-wrapper.black-bg .module_btnwrap .forminator-button.forminator-button-submit,
.col-wrapper.bright-bg .btn-primary,
.col-wrapper.bright-bg input[type=submit],
.col-wrapper.bright-bg .forminator-button.forminator-button-submit,
.col-wrapper.bright-bg > .none-bg .btn-primary,
.col-wrapper.bright-bg > .none-bg input[type=submit],
.col-wrapper.bright-bg > .none-bg .forminator-button.forminator-button-submit,
.col-wrapper.bright-bg .module_btnwrap .btn-primary,
.col-wrapper.bright-bg .module_btnwrap input[type=submit],
.col-wrapper.bright-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class^=module_].primary-bg .btn-primary,
[class^=module_].primary-bg input[type=submit],
[class^=module_].primary-bg .forminator-button.forminator-button-submit,
[class^=module_].primary-bg > .none-bg .btn-primary,
[class^=module_].primary-bg > .none-bg input[type=submit],
[class^=module_].primary-bg > .none-bg .forminator-button.forminator-button-submit,
[class^=module_].primary-bg .module_btnwrap .btn-primary,
[class^=module_].primary-bg .module_btnwrap input[type=submit],
[class^=module_].primary-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class^=module_].dark-bg .btn-primary,
[class^=module_].dark-bg input[type=submit],
[class^=module_].dark-bg .forminator-button.forminator-button-submit,
[class^=module_].dark-bg > .none-bg .btn-primary,
[class^=module_].dark-bg > .none-bg input[type=submit],
[class^=module_].dark-bg > .none-bg .forminator-button.forminator-button-submit,
[class^=module_].dark-bg .module_btnwrap .btn-primary,
[class^=module_].dark-bg .module_btnwrap input[type=submit],
[class^=module_].dark-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class^=module_].black-bg .btn-primary,
[class^=module_].black-bg input[type=submit],
[class^=module_].black-bg .forminator-button.forminator-button-submit,
[class^=module_].black-bg > .none-bg .btn-primary,
[class^=module_].black-bg > .none-bg input[type=submit],
[class^=module_].black-bg > .none-bg .forminator-button.forminator-button-submit,
[class^=module_].black-bg .module_btnwrap .btn-primary,
[class^=module_].black-bg .module_btnwrap input[type=submit],
[class^=module_].black-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class^=module_].bright-bg .btn-primary,
[class^=module_].bright-bg input[type=submit],
[class^=module_].bright-bg .forminator-button.forminator-button-submit,
[class^=module_].bright-bg > .none-bg .btn-primary,
[class^=module_].bright-bg > .none-bg input[type=submit],
[class^=module_].bright-bg > .none-bg .forminator-button.forminator-button-submit,
[class^=module_].bright-bg .module_btnwrap .btn-primary,
[class^=module_].bright-bg .module_btnwrap input[type=submit],
[class^=module_].bright-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class*=" module_"].primary-bg .btn-primary,
[class*=" module_"].primary-bg input[type=submit],
[class*=" module_"].primary-bg .forminator-button.forminator-button-submit,
[class*=" module_"].primary-bg > .none-bg .btn-primary,
[class*=" module_"].primary-bg > .none-bg input[type=submit],
[class*=" module_"].primary-bg > .none-bg .forminator-button.forminator-button-submit,
[class*=" module_"].primary-bg .module_btnwrap .btn-primary,
[class*=" module_"].primary-bg .module_btnwrap input[type=submit],
[class*=" module_"].primary-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class*=" module_"].dark-bg .btn-primary,
[class*=" module_"].dark-bg input[type=submit],
[class*=" module_"].dark-bg .forminator-button.forminator-button-submit,
[class*=" module_"].dark-bg > .none-bg .btn-primary,
[class*=" module_"].dark-bg > .none-bg input[type=submit],
[class*=" module_"].dark-bg > .none-bg .forminator-button.forminator-button-submit,
[class*=" module_"].dark-bg .module_btnwrap .btn-primary,
[class*=" module_"].dark-bg .module_btnwrap input[type=submit],
[class*=" module_"].dark-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class*=" module_"].black-bg .btn-primary,
[class*=" module_"].black-bg input[type=submit],
[class*=" module_"].black-bg .forminator-button.forminator-button-submit,
[class*=" module_"].black-bg > .none-bg .btn-primary,
[class*=" module_"].black-bg > .none-bg input[type=submit],
[class*=" module_"].black-bg > .none-bg .forminator-button.forminator-button-submit,
[class*=" module_"].black-bg .module_btnwrap .btn-primary,
[class*=" module_"].black-bg .module_btnwrap input[type=submit],
[class*=" module_"].black-bg .module_btnwrap .forminator-button.forminator-button-submit,
[class*=" module_"].bright-bg .btn-primary,
[class*=" module_"].bright-bg input[type=submit],
[class*=" module_"].bright-bg .forminator-button.forminator-button-submit,
[class*=" module_"].bright-bg > .none-bg .btn-primary,
[class*=" module_"].bright-bg > .none-bg input[type=submit],
[class*=" module_"].bright-bg > .none-bg .forminator-button.forminator-button-submit,
[class*=" module_"].bright-bg .module_btnwrap .btn-primary,
[class*=" module_"].bright-bg .module_btnwrap input[type=submit],
[class*=" module_"].bright-bg .module_btnwrap .forminator-button.forminator-button-submit,
#hero-section.primary-bg .btn-primary,
#hero-section.primary-bg input[type=submit],
#hero-section.primary-bg .forminator-button.forminator-button-submit,
#hero-section.primary-bg > .none-bg .btn-primary,
#hero-section.primary-bg > .none-bg input[type=submit],
#hero-section.primary-bg > .none-bg .forminator-button.forminator-button-submit,
#hero-section.primary-bg .module_btnwrap .btn-primary,
#hero-section.primary-bg .module_btnwrap input[type=submit],
#hero-section.primary-bg .module_btnwrap .forminator-button.forminator-button-submit,
#hero-section.dark-bg .btn-primary,
#hero-section.dark-bg input[type=submit],
#hero-section.dark-bg .forminator-button.forminator-button-submit,
#hero-section.dark-bg > .none-bg .btn-primary,
#hero-section.dark-bg > .none-bg input[type=submit],
#hero-section.dark-bg > .none-bg .forminator-button.forminator-button-submit,
#hero-section.dark-bg .module_btnwrap .btn-primary,
#hero-section.dark-bg .module_btnwrap input[type=submit],
#hero-section.dark-bg .module_btnwrap .forminator-button.forminator-button-submit,
#hero-section.black-bg .btn-primary,
#hero-section.black-bg input[type=submit],
#hero-section.black-bg .forminator-button.forminator-button-submit,
#hero-section.black-bg > .none-bg .btn-primary,
#hero-section.black-bg > .none-bg input[type=submit],
#hero-section.black-bg > .none-bg .forminator-button.forminator-button-submit,
#hero-section.black-bg .module_btnwrap .btn-primary,
#hero-section.black-bg .module_btnwrap input[type=submit],
#hero-section.black-bg .module_btnwrap .forminator-button.forminator-button-submit,
#hero-section.bright-bg .btn-primary,
#hero-section.bright-bg input[type=submit],
#hero-section.bright-bg .forminator-button.forminator-button-submit,
#hero-section.bright-bg > .none-bg .btn-primary,
#hero-section.bright-bg > .none-bg input[type=submit],
#hero-section.bright-bg > .none-bg .forminator-button.forminator-button-submit,
#hero-section.bright-bg .module_btnwrap .btn-primary,
#hero-section.bright-bg .module_btnwrap input[type=submit],
#hero-section.bright-bg .module_btnwrap .forminator-button.forminator-button-submit {
  background: #F7FAFC;
  border-color: #F7FAFC;
  color: #0B3E65;
}
.columns.primary-bg .btn-primary:hover,
.columns.primary-bg input[type=submit]:hover,
.columns.primary-bg .forminator-button.forminator-button-submit:hover, .columns.primary-bg > .none-bg .btn-primary:hover,
.columns.primary-bg > .none-bg input[type=submit]:hover,
.columns.primary-bg > .none-bg .forminator-button.forminator-button-submit:hover, .columns.primary-bg .module_btnwrap .btn-primary:hover,
.columns.primary-bg .module_btnwrap input[type=submit]:hover,
.columns.primary-bg .module_btnwrap .forminator-button.forminator-button-submit:hover, .columns.dark-bg .btn-primary:hover,
.columns.dark-bg input[type=submit]:hover,
.columns.dark-bg .forminator-button.forminator-button-submit:hover, .columns.dark-bg > .none-bg .btn-primary:hover,
.columns.dark-bg > .none-bg input[type=submit]:hover,
.columns.dark-bg > .none-bg .forminator-button.forminator-button-submit:hover, .columns.dark-bg .module_btnwrap .btn-primary:hover,
.columns.dark-bg .module_btnwrap input[type=submit]:hover,
.columns.dark-bg .module_btnwrap .forminator-button.forminator-button-submit:hover, .columns.black-bg .btn-primary:hover,
.columns.black-bg input[type=submit]:hover,
.columns.black-bg .forminator-button.forminator-button-submit:hover, .columns.black-bg > .none-bg .btn-primary:hover,
.columns.black-bg > .none-bg input[type=submit]:hover,
.columns.black-bg > .none-bg .forminator-button.forminator-button-submit:hover, .columns.black-bg .module_btnwrap .btn-primary:hover,
.columns.black-bg .module_btnwrap input[type=submit]:hover,
.columns.black-bg .module_btnwrap .forminator-button.forminator-button-submit:hover, .columns.bright-bg .btn-primary:hover,
.columns.bright-bg input[type=submit]:hover,
.columns.bright-bg .forminator-button.forminator-button-submit:hover, .columns.bright-bg > .none-bg .btn-primary:hover,
.columns.bright-bg > .none-bg input[type=submit]:hover,
.columns.bright-bg > .none-bg .forminator-button.forminator-button-submit:hover, .columns.bright-bg .module_btnwrap .btn-primary:hover,
.columns.bright-bg .module_btnwrap input[type=submit]:hover,
.columns.bright-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
.col-wrapper.primary-bg .btn-primary:hover,
.col-wrapper.primary-bg input[type=submit]:hover,
.col-wrapper.primary-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.primary-bg > .none-bg .btn-primary:hover,
.col-wrapper.primary-bg > .none-bg input[type=submit]:hover,
.col-wrapper.primary-bg > .none-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.primary-bg .module_btnwrap .btn-primary:hover,
.col-wrapper.primary-bg .module_btnwrap input[type=submit]:hover,
.col-wrapper.primary-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
.col-wrapper.dark-bg .btn-primary:hover,
.col-wrapper.dark-bg input[type=submit]:hover,
.col-wrapper.dark-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.dark-bg > .none-bg .btn-primary:hover,
.col-wrapper.dark-bg > .none-bg input[type=submit]:hover,
.col-wrapper.dark-bg > .none-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.dark-bg .module_btnwrap .btn-primary:hover,
.col-wrapper.dark-bg .module_btnwrap input[type=submit]:hover,
.col-wrapper.dark-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
.col-wrapper.black-bg .btn-primary:hover,
.col-wrapper.black-bg input[type=submit]:hover,
.col-wrapper.black-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.black-bg > .none-bg .btn-primary:hover,
.col-wrapper.black-bg > .none-bg input[type=submit]:hover,
.col-wrapper.black-bg > .none-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.black-bg .module_btnwrap .btn-primary:hover,
.col-wrapper.black-bg .module_btnwrap input[type=submit]:hover,
.col-wrapper.black-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
.col-wrapper.bright-bg .btn-primary:hover,
.col-wrapper.bright-bg input[type=submit]:hover,
.col-wrapper.bright-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.bright-bg > .none-bg .btn-primary:hover,
.col-wrapper.bright-bg > .none-bg input[type=submit]:hover,
.col-wrapper.bright-bg > .none-bg .forminator-button.forminator-button-submit:hover,
.col-wrapper.bright-bg .module_btnwrap .btn-primary:hover,
.col-wrapper.bright-bg .module_btnwrap input[type=submit]:hover,
.col-wrapper.bright-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class^=module_].primary-bg .btn-primary:hover,
[class^=module_].primary-bg input[type=submit]:hover,
[class^=module_].primary-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].primary-bg > .none-bg .btn-primary:hover,
[class^=module_].primary-bg > .none-bg input[type=submit]:hover,
[class^=module_].primary-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].primary-bg .module_btnwrap .btn-primary:hover,
[class^=module_].primary-bg .module_btnwrap input[type=submit]:hover,
[class^=module_].primary-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class^=module_].dark-bg .btn-primary:hover,
[class^=module_].dark-bg input[type=submit]:hover,
[class^=module_].dark-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].dark-bg > .none-bg .btn-primary:hover,
[class^=module_].dark-bg > .none-bg input[type=submit]:hover,
[class^=module_].dark-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].dark-bg .module_btnwrap .btn-primary:hover,
[class^=module_].dark-bg .module_btnwrap input[type=submit]:hover,
[class^=module_].dark-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class^=module_].black-bg .btn-primary:hover,
[class^=module_].black-bg input[type=submit]:hover,
[class^=module_].black-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].black-bg > .none-bg .btn-primary:hover,
[class^=module_].black-bg > .none-bg input[type=submit]:hover,
[class^=module_].black-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].black-bg .module_btnwrap .btn-primary:hover,
[class^=module_].black-bg .module_btnwrap input[type=submit]:hover,
[class^=module_].black-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class^=module_].bright-bg .btn-primary:hover,
[class^=module_].bright-bg input[type=submit]:hover,
[class^=module_].bright-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].bright-bg > .none-bg .btn-primary:hover,
[class^=module_].bright-bg > .none-bg input[type=submit]:hover,
[class^=module_].bright-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class^=module_].bright-bg .module_btnwrap .btn-primary:hover,
[class^=module_].bright-bg .module_btnwrap input[type=submit]:hover,
[class^=module_].bright-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class*=" module_"].primary-bg .btn-primary:hover,
[class*=" module_"].primary-bg input[type=submit]:hover,
[class*=" module_"].primary-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].primary-bg > .none-bg .btn-primary:hover,
[class*=" module_"].primary-bg > .none-bg input[type=submit]:hover,
[class*=" module_"].primary-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].primary-bg .module_btnwrap .btn-primary:hover,
[class*=" module_"].primary-bg .module_btnwrap input[type=submit]:hover,
[class*=" module_"].primary-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class*=" module_"].dark-bg .btn-primary:hover,
[class*=" module_"].dark-bg input[type=submit]:hover,
[class*=" module_"].dark-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].dark-bg > .none-bg .btn-primary:hover,
[class*=" module_"].dark-bg > .none-bg input[type=submit]:hover,
[class*=" module_"].dark-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].dark-bg .module_btnwrap .btn-primary:hover,
[class*=" module_"].dark-bg .module_btnwrap input[type=submit]:hover,
[class*=" module_"].dark-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class*=" module_"].black-bg .btn-primary:hover,
[class*=" module_"].black-bg input[type=submit]:hover,
[class*=" module_"].black-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].black-bg > .none-bg .btn-primary:hover,
[class*=" module_"].black-bg > .none-bg input[type=submit]:hover,
[class*=" module_"].black-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].black-bg .module_btnwrap .btn-primary:hover,
[class*=" module_"].black-bg .module_btnwrap input[type=submit]:hover,
[class*=" module_"].black-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
[class*=" module_"].bright-bg .btn-primary:hover,
[class*=" module_"].bright-bg input[type=submit]:hover,
[class*=" module_"].bright-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].bright-bg > .none-bg .btn-primary:hover,
[class*=" module_"].bright-bg > .none-bg input[type=submit]:hover,
[class*=" module_"].bright-bg > .none-bg .forminator-button.forminator-button-submit:hover,
[class*=" module_"].bright-bg .module_btnwrap .btn-primary:hover,
[class*=" module_"].bright-bg .module_btnwrap input[type=submit]:hover,
[class*=" module_"].bright-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
#hero-section.primary-bg .btn-primary:hover,
#hero-section.primary-bg input[type=submit]:hover,
#hero-section.primary-bg .forminator-button.forminator-button-submit:hover,
#hero-section.primary-bg > .none-bg .btn-primary:hover,
#hero-section.primary-bg > .none-bg input[type=submit]:hover,
#hero-section.primary-bg > .none-bg .forminator-button.forminator-button-submit:hover,
#hero-section.primary-bg .module_btnwrap .btn-primary:hover,
#hero-section.primary-bg .module_btnwrap input[type=submit]:hover,
#hero-section.primary-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
#hero-section.dark-bg .btn-primary:hover,
#hero-section.dark-bg input[type=submit]:hover,
#hero-section.dark-bg .forminator-button.forminator-button-submit:hover,
#hero-section.dark-bg > .none-bg .btn-primary:hover,
#hero-section.dark-bg > .none-bg input[type=submit]:hover,
#hero-section.dark-bg > .none-bg .forminator-button.forminator-button-submit:hover,
#hero-section.dark-bg .module_btnwrap .btn-primary:hover,
#hero-section.dark-bg .module_btnwrap input[type=submit]:hover,
#hero-section.dark-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
#hero-section.black-bg .btn-primary:hover,
#hero-section.black-bg input[type=submit]:hover,
#hero-section.black-bg .forminator-button.forminator-button-submit:hover,
#hero-section.black-bg > .none-bg .btn-primary:hover,
#hero-section.black-bg > .none-bg input[type=submit]:hover,
#hero-section.black-bg > .none-bg .forminator-button.forminator-button-submit:hover,
#hero-section.black-bg .module_btnwrap .btn-primary:hover,
#hero-section.black-bg .module_btnwrap input[type=submit]:hover,
#hero-section.black-bg .module_btnwrap .forminator-button.forminator-button-submit:hover,
#hero-section.bright-bg .btn-primary:hover,
#hero-section.bright-bg input[type=submit]:hover,
#hero-section.bright-bg .forminator-button.forminator-button-submit:hover,
#hero-section.bright-bg > .none-bg .btn-primary:hover,
#hero-section.bright-bg > .none-bg input[type=submit]:hover,
#hero-section.bright-bg > .none-bg .forminator-button.forminator-button-submit:hover,
#hero-section.bright-bg .module_btnwrap .btn-primary:hover,
#hero-section.bright-bg .module_btnwrap input[type=submit]:hover,
#hero-section.bright-bg .module_btnwrap .forminator-button.forminator-button-submit:hover {
  background: #F7FAFC;
  border-color: #F7FAFC;
  color: #105A93;
}
.columns.black-bg .btn-secondary,
.columns.black-bg p > a.btn,
.columns.black-bg input::file-selector-button, .columns.black-bg > .none-bg .btn-secondary,
.columns.black-bg > .none-bg p > a.btn,
.columns.black-bg > .none-bg input::file-selector-button, .columns.black-bg .module_btnwrap .btn-secondary,
.columns.black-bg .module_btnwrap p > a.btn,
.columns.black-bg .module_btnwrap input::file-selector-button, .columns.primary-bg .btn-secondary,
.columns.primary-bg p > a.btn,
.columns.primary-bg input::file-selector-button, .columns.primary-bg > .none-bg .btn-secondary,
.columns.primary-bg > .none-bg p > a.btn,
.columns.primary-bg > .none-bg input::file-selector-button, .columns.primary-bg .module_btnwrap .btn-secondary,
.columns.primary-bg .module_btnwrap p > a.btn,
.columns.primary-bg .module_btnwrap input::file-selector-button, .columns.dark-bg .btn-secondary,
.columns.dark-bg p > a.btn,
.columns.dark-bg input::file-selector-button, .columns.dark-bg > .none-bg .btn-secondary,
.columns.dark-bg > .none-bg p > a.btn,
.columns.dark-bg > .none-bg input::file-selector-button, .columns.dark-bg .module_btnwrap .btn-secondary,
.columns.dark-bg .module_btnwrap p > a.btn,
.columns.dark-bg .module_btnwrap input::file-selector-button,
.col-wrapper.black-bg .btn-secondary,
.col-wrapper.black-bg p > a.btn,
.col-wrapper.black-bg input::file-selector-button,
.col-wrapper.black-bg > .none-bg .btn-secondary,
.col-wrapper.black-bg > .none-bg p > a.btn,
.col-wrapper.black-bg > .none-bg input::file-selector-button,
.col-wrapper.black-bg .module_btnwrap .btn-secondary,
.col-wrapper.black-bg .module_btnwrap p > a.btn,
.col-wrapper.black-bg .module_btnwrap input::file-selector-button,
.col-wrapper.primary-bg .btn-secondary,
.col-wrapper.primary-bg p > a.btn,
.col-wrapper.primary-bg input::file-selector-button,
.col-wrapper.primary-bg > .none-bg .btn-secondary,
.col-wrapper.primary-bg > .none-bg p > a.btn,
.col-wrapper.primary-bg > .none-bg input::file-selector-button,
.col-wrapper.primary-bg .module_btnwrap .btn-secondary,
.col-wrapper.primary-bg .module_btnwrap p > a.btn,
.col-wrapper.primary-bg .module_btnwrap input::file-selector-button,
.col-wrapper.dark-bg .btn-secondary,
.col-wrapper.dark-bg p > a.btn,
.col-wrapper.dark-bg input::file-selector-button,
.col-wrapper.dark-bg > .none-bg .btn-secondary,
.col-wrapper.dark-bg > .none-bg p > a.btn,
.col-wrapper.dark-bg > .none-bg input::file-selector-button,
.col-wrapper.dark-bg .module_btnwrap .btn-secondary,
.col-wrapper.dark-bg .module_btnwrap p > a.btn,
.col-wrapper.dark-bg .module_btnwrap input::file-selector-button,
[class^=module_].black-bg .btn-secondary,
[class^=module_].black-bg p > a.btn,
[class^=module_].black-bg input::file-selector-button,
[class^=module_].black-bg > .none-bg .btn-secondary,
[class^=module_].black-bg > .none-bg p > a.btn,
[class^=module_].black-bg > .none-bg input::file-selector-button,
[class^=module_].black-bg .module_btnwrap .btn-secondary,
[class^=module_].black-bg .module_btnwrap p > a.btn,
[class^=module_].black-bg .module_btnwrap input::file-selector-button,
[class^=module_].primary-bg .btn-secondary,
[class^=module_].primary-bg p > a.btn,
[class^=module_].primary-bg input::file-selector-button,
[class^=module_].primary-bg > .none-bg .btn-secondary,
[class^=module_].primary-bg > .none-bg p > a.btn,
[class^=module_].primary-bg > .none-bg input::file-selector-button,
[class^=module_].primary-bg .module_btnwrap .btn-secondary,
[class^=module_].primary-bg .module_btnwrap p > a.btn,
[class^=module_].primary-bg .module_btnwrap input::file-selector-button,
[class^=module_].dark-bg .btn-secondary,
[class^=module_].dark-bg p > a.btn,
[class^=module_].dark-bg input::file-selector-button,
[class^=module_].dark-bg > .none-bg .btn-secondary,
[class^=module_].dark-bg > .none-bg p > a.btn,
[class^=module_].dark-bg > .none-bg input::file-selector-button,
[class^=module_].dark-bg .module_btnwrap .btn-secondary,
[class^=module_].dark-bg .module_btnwrap p > a.btn,
[class^=module_].dark-bg .module_btnwrap input::file-selector-button,
[class*=" module_"].black-bg .btn-secondary,
[class*=" module_"].black-bg p > a.btn,
[class*=" module_"].black-bg input::file-selector-button,
[class*=" module_"].black-bg > .none-bg .btn-secondary,
[class*=" module_"].black-bg > .none-bg p > a.btn,
[class*=" module_"].black-bg > .none-bg input::file-selector-button,
[class*=" module_"].black-bg .module_btnwrap .btn-secondary,
[class*=" module_"].black-bg .module_btnwrap p > a.btn,
[class*=" module_"].black-bg .module_btnwrap input::file-selector-button,
[class*=" module_"].primary-bg .btn-secondary,
[class*=" module_"].primary-bg p > a.btn,
[class*=" module_"].primary-bg input::file-selector-button,
[class*=" module_"].primary-bg > .none-bg .btn-secondary,
[class*=" module_"].primary-bg > .none-bg p > a.btn,
[class*=" module_"].primary-bg > .none-bg input::file-selector-button,
[class*=" module_"].primary-bg .module_btnwrap .btn-secondary,
[class*=" module_"].primary-bg .module_btnwrap p > a.btn,
[class*=" module_"].primary-bg .module_btnwrap input::file-selector-button,
[class*=" module_"].dark-bg .btn-secondary,
[class*=" module_"].dark-bg p > a.btn,
[class*=" module_"].dark-bg input::file-selector-button,
[class*=" module_"].dark-bg > .none-bg .btn-secondary,
[class*=" module_"].dark-bg > .none-bg p > a.btn,
[class*=" module_"].dark-bg > .none-bg input::file-selector-button,
[class*=" module_"].dark-bg .module_btnwrap .btn-secondary,
[class*=" module_"].dark-bg .module_btnwrap p > a.btn,
[class*=" module_"].dark-bg .module_btnwrap input::file-selector-button,
#hero-section.black-bg .btn-secondary,
#hero-section.black-bg p > a.btn,
#hero-section.black-bg input::file-selector-button,
#hero-section.black-bg > .none-bg .btn-secondary,
#hero-section.black-bg > .none-bg p > a.btn,
#hero-section.black-bg > .none-bg input::file-selector-button,
#hero-section.black-bg .module_btnwrap .btn-secondary,
#hero-section.black-bg .module_btnwrap p > a.btn,
#hero-section.black-bg .module_btnwrap input::file-selector-button,
#hero-section.primary-bg .btn-secondary,
#hero-section.primary-bg p > a.btn,
#hero-section.primary-bg input::file-selector-button,
#hero-section.primary-bg > .none-bg .btn-secondary,
#hero-section.primary-bg > .none-bg p > a.btn,
#hero-section.primary-bg > .none-bg input::file-selector-button,
#hero-section.primary-bg .module_btnwrap .btn-secondary,
#hero-section.primary-bg .module_btnwrap p > a.btn,
#hero-section.primary-bg .module_btnwrap input::file-selector-button,
#hero-section.dark-bg .btn-secondary,
#hero-section.dark-bg p > a.btn,
#hero-section.dark-bg input::file-selector-button,
#hero-section.dark-bg > .none-bg .btn-secondary,
#hero-section.dark-bg > .none-bg p > a.btn,
#hero-section.dark-bg > .none-bg input::file-selector-button,
#hero-section.dark-bg .module_btnwrap .btn-secondary,
#hero-section.dark-bg .module_btnwrap p > a.btn,
#hero-section.dark-bg .module_btnwrap input::file-selector-button {
  background: transparent;
  border-color: #F7FAFC;
  color: #EAEEF1;
}
.columns.black-bg .btn-secondary:hover,
.columns.black-bg p > a.btn:hover,
.columns.black-bg input::file-selector-button:hover, .columns.black-bg > .none-bg .btn-secondary:hover,
.columns.black-bg > .none-bg p > a.btn:hover,
.columns.black-bg > .none-bg input::file-selector-button:hover, .columns.black-bg .module_btnwrap .btn-secondary:hover,
.columns.black-bg .module_btnwrap p > a.btn:hover,
.columns.black-bg .module_btnwrap input::file-selector-button:hover, .columns.primary-bg .btn-secondary:hover,
.columns.primary-bg p > a.btn:hover,
.columns.primary-bg input::file-selector-button:hover, .columns.primary-bg > .none-bg .btn-secondary:hover,
.columns.primary-bg > .none-bg p > a.btn:hover,
.columns.primary-bg > .none-bg input::file-selector-button:hover, .columns.primary-bg .module_btnwrap .btn-secondary:hover,
.columns.primary-bg .module_btnwrap p > a.btn:hover,
.columns.primary-bg .module_btnwrap input::file-selector-button:hover, .columns.dark-bg .btn-secondary:hover,
.columns.dark-bg p > a.btn:hover,
.columns.dark-bg input::file-selector-button:hover, .columns.dark-bg > .none-bg .btn-secondary:hover,
.columns.dark-bg > .none-bg p > a.btn:hover,
.columns.dark-bg > .none-bg input::file-selector-button:hover, .columns.dark-bg .module_btnwrap .btn-secondary:hover,
.columns.dark-bg .module_btnwrap p > a.btn:hover,
.columns.dark-bg .module_btnwrap input::file-selector-button:hover,
.col-wrapper.black-bg .btn-secondary:hover,
.col-wrapper.black-bg p > a.btn:hover,
.col-wrapper.black-bg input::file-selector-button:hover,
.col-wrapper.black-bg > .none-bg .btn-secondary:hover,
.col-wrapper.black-bg > .none-bg p > a.btn:hover,
.col-wrapper.black-bg > .none-bg input::file-selector-button:hover,
.col-wrapper.black-bg .module_btnwrap .btn-secondary:hover,
.col-wrapper.black-bg .module_btnwrap p > a.btn:hover,
.col-wrapper.black-bg .module_btnwrap input::file-selector-button:hover,
.col-wrapper.primary-bg .btn-secondary:hover,
.col-wrapper.primary-bg p > a.btn:hover,
.col-wrapper.primary-bg input::file-selector-button:hover,
.col-wrapper.primary-bg > .none-bg .btn-secondary:hover,
.col-wrapper.primary-bg > .none-bg p > a.btn:hover,
.col-wrapper.primary-bg > .none-bg input::file-selector-button:hover,
.col-wrapper.primary-bg .module_btnwrap .btn-secondary:hover,
.col-wrapper.primary-bg .module_btnwrap p > a.btn:hover,
.col-wrapper.primary-bg .module_btnwrap input::file-selector-button:hover,
.col-wrapper.dark-bg .btn-secondary:hover,
.col-wrapper.dark-bg p > a.btn:hover,
.col-wrapper.dark-bg input::file-selector-button:hover,
.col-wrapper.dark-bg > .none-bg .btn-secondary:hover,
.col-wrapper.dark-bg > .none-bg p > a.btn:hover,
.col-wrapper.dark-bg > .none-bg input::file-selector-button:hover,
.col-wrapper.dark-bg .module_btnwrap .btn-secondary:hover,
.col-wrapper.dark-bg .module_btnwrap p > a.btn:hover,
.col-wrapper.dark-bg .module_btnwrap input::file-selector-button:hover,
[class^=module_].black-bg .btn-secondary:hover,
[class^=module_].black-bg p > a.btn:hover,
[class^=module_].black-bg input::file-selector-button:hover,
[class^=module_].black-bg > .none-bg .btn-secondary:hover,
[class^=module_].black-bg > .none-bg p > a.btn:hover,
[class^=module_].black-bg > .none-bg input::file-selector-button:hover,
[class^=module_].black-bg .module_btnwrap .btn-secondary:hover,
[class^=module_].black-bg .module_btnwrap p > a.btn:hover,
[class^=module_].black-bg .module_btnwrap input::file-selector-button:hover,
[class^=module_].primary-bg .btn-secondary:hover,
[class^=module_].primary-bg p > a.btn:hover,
[class^=module_].primary-bg input::file-selector-button:hover,
[class^=module_].primary-bg > .none-bg .btn-secondary:hover,
[class^=module_].primary-bg > .none-bg p > a.btn:hover,
[class^=module_].primary-bg > .none-bg input::file-selector-button:hover,
[class^=module_].primary-bg .module_btnwrap .btn-secondary:hover,
[class^=module_].primary-bg .module_btnwrap p > a.btn:hover,
[class^=module_].primary-bg .module_btnwrap input::file-selector-button:hover,
[class^=module_].dark-bg .btn-secondary:hover,
[class^=module_].dark-bg p > a.btn:hover,
[class^=module_].dark-bg input::file-selector-button:hover,
[class^=module_].dark-bg > .none-bg .btn-secondary:hover,
[class^=module_].dark-bg > .none-bg p > a.btn:hover,
[class^=module_].dark-bg > .none-bg input::file-selector-button:hover,
[class^=module_].dark-bg .module_btnwrap .btn-secondary:hover,
[class^=module_].dark-bg .module_btnwrap p > a.btn:hover,
[class^=module_].dark-bg .module_btnwrap input::file-selector-button:hover,
[class*=" module_"].black-bg .btn-secondary:hover,
[class*=" module_"].black-bg p > a.btn:hover,
[class*=" module_"].black-bg input::file-selector-button:hover,
[class*=" module_"].black-bg > .none-bg .btn-secondary:hover,
[class*=" module_"].black-bg > .none-bg p > a.btn:hover,
[class*=" module_"].black-bg > .none-bg input::file-selector-button:hover,
[class*=" module_"].black-bg .module_btnwrap .btn-secondary:hover,
[class*=" module_"].black-bg .module_btnwrap p > a.btn:hover,
[class*=" module_"].black-bg .module_btnwrap input::file-selector-button:hover,
[class*=" module_"].primary-bg .btn-secondary:hover,
[class*=" module_"].primary-bg p > a.btn:hover,
[class*=" module_"].primary-bg input::file-selector-button:hover,
[class*=" module_"].primary-bg > .none-bg .btn-secondary:hover,
[class*=" module_"].primary-bg > .none-bg p > a.btn:hover,
[class*=" module_"].primary-bg > .none-bg input::file-selector-button:hover,
[class*=" module_"].primary-bg .module_btnwrap .btn-secondary:hover,
[class*=" module_"].primary-bg .module_btnwrap p > a.btn:hover,
[class*=" module_"].primary-bg .module_btnwrap input::file-selector-button:hover,
[class*=" module_"].dark-bg .btn-secondary:hover,
[class*=" module_"].dark-bg p > a.btn:hover,
[class*=" module_"].dark-bg input::file-selector-button:hover,
[class*=" module_"].dark-bg > .none-bg .btn-secondary:hover,
[class*=" module_"].dark-bg > .none-bg p > a.btn:hover,
[class*=" module_"].dark-bg > .none-bg input::file-selector-button:hover,
[class*=" module_"].dark-bg .module_btnwrap .btn-secondary:hover,
[class*=" module_"].dark-bg .module_btnwrap p > a.btn:hover,
[class*=" module_"].dark-bg .module_btnwrap input::file-selector-button:hover,
#hero-section.black-bg .btn-secondary:hover,
#hero-section.black-bg p > a.btn:hover,
#hero-section.black-bg input::file-selector-button:hover,
#hero-section.black-bg > .none-bg .btn-secondary:hover,
#hero-section.black-bg > .none-bg p > a.btn:hover,
#hero-section.black-bg > .none-bg input::file-selector-button:hover,
#hero-section.black-bg .module_btnwrap .btn-secondary:hover,
#hero-section.black-bg .module_btnwrap p > a.btn:hover,
#hero-section.black-bg .module_btnwrap input::file-selector-button:hover,
#hero-section.primary-bg .btn-secondary:hover,
#hero-section.primary-bg p > a.btn:hover,
#hero-section.primary-bg input::file-selector-button:hover,
#hero-section.primary-bg > .none-bg .btn-secondary:hover,
#hero-section.primary-bg > .none-bg p > a.btn:hover,
#hero-section.primary-bg > .none-bg input::file-selector-button:hover,
#hero-section.primary-bg .module_btnwrap .btn-secondary:hover,
#hero-section.primary-bg .module_btnwrap p > a.btn:hover,
#hero-section.primary-bg .module_btnwrap input::file-selector-button:hover,
#hero-section.dark-bg .btn-secondary:hover,
#hero-section.dark-bg p > a.btn:hover,
#hero-section.dark-bg input::file-selector-button:hover,
#hero-section.dark-bg > .none-bg .btn-secondary:hover,
#hero-section.dark-bg > .none-bg p > a.btn:hover,
#hero-section.dark-bg > .none-bg input::file-selector-button:hover,
#hero-section.dark-bg .module_btnwrap .btn-secondary:hover,
#hero-section.dark-bg .module_btnwrap p > a.btn:hover,
#hero-section.dark-bg .module_btnwrap input::file-selector-button:hover {
  background: transparent;
  border: 1px solid #5E9BC9;
  color: #F7FAFC;
}

/* GLOBALS */
[class^=module_] p,
[class^=module_] ul:not([class]),
[class^=module_] ol:not([class]),
[class^=module_] blockquote, [class*=" module_"] p,
[class*=" module_"] ul:not([class]),
[class*=" module_"] ol:not([class]),
[class*=" module_"] blockquote,
#hero-section p,
#hero-section ul:not([class]),
#hero-section ol:not([class]),
#hero-section blockquote,
.footer p,
.footer ul:not([class]),
.footer ol:not([class]),
.footer blockquote,
#error-404 p,
#error-404 ul:not([class]),
#error-404 ol:not([class]),
#error-404 blockquote,
.contact-form p,
.contact-form ul:not([class]),
.contact-form ol:not([class]),
.contact-form blockquote,
.product-section p,
.product-section ul:not([class]),
.product-section ol:not([class]),
.product-section blockquote,
.search-results p,
.search-results ul:not([class]),
.search-results ol:not([class]),
.search-results blockquote {
  margin: 0 0 1rem 0;
  text-wrap: pretty;
}
[class^=module_] span[style*="text-decoration: underline"], [class*=" module_"] span[style*="text-decoration: underline"],
#hero-section span[style*="text-decoration: underline"],
.footer span[style*="text-decoration: underline"],
#error-404 span[style*="text-decoration: underline"],
.contact-form span[style*="text-decoration: underline"],
.product-section span[style*="text-decoration: underline"],
.search-results span[style*="text-decoration: underline"] {
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px;
}
[class^=module_] blockquote, [class*=" module_"] blockquote,
#hero-section blockquote,
.footer blockquote,
#error-404 blockquote,
.contact-form blockquote,
.product-section blockquote,
.search-results blockquote {
  font-size: 1.25rem;
  padding-left: 1.25rem;
  border-left: 3px solid #105A93;
}
[class^=module_] hr, [class*=" module_"] hr,
#hero-section hr,
.footer hr,
#error-404 hr,
.contact-form hr,
.product-section hr,
.search-results hr {
  height: 1px;
  background: #105A93;
  width: 100%;
  margin: 0 auto;
}
[class^=module_] pre, [class*=" module_"] pre,
#hero-section pre,
.footer pre,
#error-404 pre,
.contact-form pre,
.product-section pre,
.search-results pre {
  white-space: pre-wrap;
  word-break: break-word;
  min-width: 0;
}
[class^=module_] h1,
[class^=module_] h2,
[class^=module_] h3,
[class^=module_] h4,
[class^=module_] h5,
[class^=module_] h6,
[class^=module_] p.heading-1,
[class^=module_] p.heading-2,
[class^=module_] p.heading-3,
[class^=module_] p.heading-4, [class*=" module_"] h1,
[class*=" module_"] h2,
[class*=" module_"] h3,
[class*=" module_"] h4,
[class*=" module_"] h5,
[class*=" module_"] h6,
[class*=" module_"] p.heading-1,
[class*=" module_"] p.heading-2,
[class*=" module_"] p.heading-3,
[class*=" module_"] p.heading-4,
#hero-section h1,
#hero-section h2,
#hero-section h3,
#hero-section h4,
#hero-section h5,
#hero-section h6,
#hero-section p.heading-1,
#hero-section p.heading-2,
#hero-section p.heading-3,
#hero-section p.heading-4,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6,
.footer p.heading-1,
.footer p.heading-2,
.footer p.heading-3,
.footer p.heading-4,
#error-404 h1,
#error-404 h2,
#error-404 h3,
#error-404 h4,
#error-404 h5,
#error-404 h6,
#error-404 p.heading-1,
#error-404 p.heading-2,
#error-404 p.heading-3,
#error-404 p.heading-4,
.contact-form h1,
.contact-form h2,
.contact-form h3,
.contact-form h4,
.contact-form h5,
.contact-form h6,
.contact-form p.heading-1,
.contact-form p.heading-2,
.contact-form p.heading-3,
.contact-form p.heading-4,
.product-section h1,
.product-section h2,
.product-section h3,
.product-section h4,
.product-section h5,
.product-section h6,
.product-section p.heading-1,
.product-section p.heading-2,
.product-section p.heading-3,
.product-section p.heading-4,
.search-results h1,
.search-results h2,
.search-results h3,
.search-results h4,
.search-results h5,
.search-results h6,
.search-results p.heading-1,
.search-results p.heading-2,
.search-results p.heading-3,
.search-results p.heading-4 {
  line-height: 1.15em;
  margin: 0 0 1rem 0;
  text-wrap: pretty;
}
[class^=module_] h1,
[class^=module_] .heading-1, [class*=" module_"] h1,
[class*=" module_"] .heading-1,
#hero-section h1,
#hero-section .heading-1,
.footer h1,
.footer .heading-1,
#error-404 h1,
#error-404 .heading-1,
.contact-form h1,
.contact-form .heading-1,
.product-section h1,
.product-section .heading-1,
.search-results h1,
.search-results .heading-1 {
  font-size: clamp(1.875rem, 5vw, 3.75rem);
}
[class^=module_] h2,
[class^=module_] .heading-2, [class*=" module_"] h2,
[class*=" module_"] .heading-2,
#hero-section h2,
#hero-section .heading-2,
.footer h2,
.footer .heading-2,
#error-404 h2,
#error-404 .heading-2,
.contact-form h2,
.contact-form .heading-2,
.product-section h2,
.product-section .heading-2,
.search-results h2,
.search-results .heading-2 {
  font-size: clamp(1.625rem, 5vw, 2.5rem);
}
[class^=module_] h3,
[class^=module_] .heading-3, [class*=" module_"] h3,
[class*=" module_"] .heading-3,
#hero-section h3,
#hero-section .heading-3,
.footer h3,
.footer .heading-3,
#error-404 h3,
#error-404 .heading-3,
.contact-form h3,
.contact-form .heading-3,
.product-section h3,
.product-section .heading-3,
.search-results h3,
.search-results .heading-3 {
  font-size: clamp(1.375rem, 5vw, 1.875rem);
}
[class^=module_] h4,
[class^=module_] .heading-4, [class*=" module_"] h4,
[class*=" module_"] .heading-4,
#hero-section h4,
#hero-section .heading-4,
.footer h4,
.footer .heading-4,
#error-404 h4,
#error-404 .heading-4,
.contact-form h4,
.contact-form .heading-4,
.product-section h4,
.product-section .heading-4,
.search-results h4,
.search-results .heading-4 {
  font-size: clamp(1.25rem, 5vw, 1.5rem);
}
[class^=module_] h5, [class*=" module_"] h5,
#hero-section h5,
.footer h5,
#error-404 h5,
.contact-form h5,
.product-section h5,
.search-results h5 {
  font-size: 1.25rem;
}
[class^=module_] h6, [class*=" module_"] h6,
#hero-section h6,
.footer h6,
#error-404 h6,
.contact-form h6,
.product-section h6,
.search-results h6 {
  font-size: 1.125rem;
}

[class^=module_] ul[class], [class^=module_] ol[class], [class*=" module_"] ul[class], [class*=" module_"] ol[class],
#hero-section ul[class],
#hero-section ol[class],
#error-404 ul[class],
#error-404 ol[class] {
  list-style: none;
}
[class^=module_] ul:not([class]),
[class^=module_] ol:not([class]), [class*=" module_"] ul:not([class]),
[class*=" module_"] ol:not([class]),
#hero-section ul:not([class]),
#hero-section ol:not([class]),
#error-404 ul:not([class]),
#error-404 ol:not([class]) {
  list-style-position: outside;
  padding-left: 1em;
}
[class^=module_] ul:not([class]) li,
[class^=module_] ol:not([class]) li, [class*=" module_"] ul:not([class]) li,
[class*=" module_"] ol:not([class]) li,
#hero-section ul:not([class]) li,
#hero-section ol:not([class]) li,
#error-404 ul:not([class]) li,
#error-404 ol:not([class]) li {
  padding-left: 0.75rem;
}
[class^=module_] ul:not([class]) li:not(:last-child),
[class^=module_] ol:not([class]) li:not(:last-child), [class*=" module_"] ul:not([class]) li:not(:last-child),
[class*=" module_"] ol:not([class]) li:not(:last-child),
#hero-section ul:not([class]) li:not(:last-child),
#hero-section ol:not([class]) li:not(:last-child),
#error-404 ul:not([class]) li:not(:last-child),
#error-404 ol:not([class]) li:not(:last-child) {
  margin-bottom: 0.75rem;
}
[class^=module_] ul:not([class]):has(> li[style="text-align: center;"]), [class^=module_] ul:not([class])[style="text-align: center;"],
[class^=module_] ol:not([class]):has(> li[style="text-align: center;"]),
[class^=module_] ol:not([class])[style="text-align: center;"], [class*=" module_"] ul:not([class]):has(> li[style="text-align: center;"]), [class*=" module_"] ul:not([class])[style="text-align: center;"],
[class*=" module_"] ol:not([class]):has(> li[style="text-align: center;"]),
[class*=" module_"] ol:not([class])[style="text-align: center;"],
#hero-section ul:not([class]):has(> li[style="text-align: center;"]),
#hero-section ul:not([class])[style="text-align: center;"],
#hero-section ol:not([class]):has(> li[style="text-align: center;"]),
#hero-section ol:not([class])[style="text-align: center;"],
#error-404 ul:not([class]):has(> li[style="text-align: center;"]),
#error-404 ul:not([class])[style="text-align: center;"],
#error-404 ol:not([class]):has(> li[style="text-align: center;"]),
#error-404 ol:not([class])[style="text-align: center;"] {
  list-style-position: inside;
  padding-left: 0;
}
[class^=module_] ul:not([class]):has(> li[style="text-align: center;"]) li, [class^=module_] ul:not([class])[style="text-align: center;"] li,
[class^=module_] ol:not([class]):has(> li[style="text-align: center;"]) li,
[class^=module_] ol:not([class])[style="text-align: center;"] li, [class*=" module_"] ul:not([class]):has(> li[style="text-align: center;"]) li, [class*=" module_"] ul:not([class])[style="text-align: center;"] li,
[class*=" module_"] ol:not([class]):has(> li[style="text-align: center;"]) li,
[class*=" module_"] ol:not([class])[style="text-align: center;"] li,
#hero-section ul:not([class]):has(> li[style="text-align: center;"]) li,
#hero-section ul:not([class])[style="text-align: center;"] li,
#hero-section ol:not([class]):has(> li[style="text-align: center;"]) li,
#hero-section ol:not([class])[style="text-align: center;"] li,
#error-404 ul:not([class]):has(> li[style="text-align: center;"]) li,
#error-404 ul:not([class])[style="text-align: center;"] li,
#error-404 ol:not([class]):has(> li[style="text-align: center;"]) li,
#error-404 ol:not([class])[style="text-align: center;"] li {
  padding-left: 0;
}
[class^=module_] ul:not([class]), [class*=" module_"] ul:not([class]),
#hero-section ul:not([class]),
#error-404 ul:not([class]) {
  list-style-type: none;
}
[class^=module_] ul:not([class]) li, [class*=" module_"] ul:not([class]) li,
#hero-section ul:not([class]) li,
#error-404 ul:not([class]) li {
  position: relative;
}
[class^=module_] ul:not([class]) li::before, [class*=" module_"] ul:not([class]) li::before,
#hero-section ul:not([class]) li::before,
#error-404 ul:not([class]) li::before {
  content: "";
  position: absolute;
  left: -1em;
  top: 0.3em;
  width: 1em;
  height: 1em;
  background-color: #105A93;
  -webkit-mask-image: url("../../assets/icons/clear.svg");
          mask-image: url("../../assets/icons/clear.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
[class^=module_] ul:not([class])[style="text-align: center;"] li::before, [class*=" module_"] ul:not([class])[style="text-align: center;"] li::before,
#hero-section ul:not([class])[style="text-align: center;"] li::before,
#error-404 ul:not([class])[style="text-align: center;"] li::before {
  position: relative;
  left: -0.5em;
  top: 0.15em;
  margin-right: 0.5em;
  display: inline-block;
}
[class^=module_] ol:not([class]) li::marker, [class*=" module_"] ol:not([class]) li::marker,
#hero-section ol:not([class]) li::marker,
#error-404 ol:not([class]) li::marker {
  color: #105A93;
  font-weight: bolder;
  font-variant-numeric: tabular-nums;
}
[class^=module_] ol:not([class])[style="text-align: center;"] li::marker, [class*=" module_"] ol:not([class])[style="text-align: center;"] li::marker,
#hero-section ol:not([class])[style="text-align: center;"] li::marker,
#error-404 ol:not([class])[style="text-align: center;"] li::marker {
  content: counter(list-item) ". ";
}

/* CUSTOM CLASSES */
.center {
  text-align: center;
}

.left {
  text-align: left;
}

.hyph {
  hyphens: auto;
  -webkit-hyphenate-limit-before: 4;
  -webkit-hyphenate-limit-after: 4;
  -ms-hyphenate-limit-chars: 12 4 4;
  hyphenate-limit-chars: 12 4 4;
}

.col-wrapper .flex-col.col-1-3 h2,
.col-wrapper .flex-col.col-f-1-3 h2,
.col-wrapper .flex-col.col-1-4 h2,
.col-wrapper .flex-col.col-f-1-4 h2 {
  hyphens: auto;
  -webkit-hyphenate-limit-before: 4;
  -webkit-hyphenate-limit-after: 4;
  -ms-hyphenate-limit-chars: 12 4 4;
  hyphenate-limit-chars: 12 4 4;
}
.col-wrapper .flex-col.col-1-4 h3, .col-wrapper .flex-col.col-1-4 h4,
.col-wrapper .flex-col.col-f-1-4 h3,
.col-wrapper .flex-col.col-f-1-4 h4 {
  hyphens: auto;
  -webkit-hyphenate-limit-before: 4;
  -webkit-hyphenate-limit-after: 4;
  -ms-hyphenate-limit-chars: 12 4 4;
  hyphenate-limit-chars: 12 4 4;
}

h1 .thin,
h2 .thin,
h3 .thin,
h4 .thin,
h5 .thin,
h6 .thin,
p.heading-1 .thin,
p.heading-2 .thin,
p.heading-3 .thin,
p.heading-4 .thin {
  font-weight: 400;
}

.ingress {
  font-size: 1.25rem;
}

strong,
.strong {
  font-weight: bold;
}

.eyebrow {
  line-height: 1.15em;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
  font-size: 0.875rem;
}

.small {
  font-size: 1rem;
}

.excerpt {
  font-size: 1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

@media (max-width: 840px) {
  /* GLOBALS */
  [class^=module_] h1,
  [class^=module_] h2, [class*=" module_"] h1,
  [class*=" module_"] h2,
  #hero-section h1,
  #hero-section h2,
  .footer h1,
  .footer h2,
  #error-404 h1,
  #error-404 h2 {
    hyphens: auto;
    -webkit-hyphenate-limit-before: 4;
    -webkit-hyphenate-limit-after: 4;
    -ms-hyphenate-limit-chars: 12 4 4;
    hyphenate-limit-chars: 12 4 4;
  }
}
@font-face {
  font-family: "Quattrocento Sans";
  src: url("../../assets/fonts/QuattrocentoSans-Bold.woff2") format("woff2"), url("../../assets/fonts/QuattrocentoSans-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Quattrocento Sans";
  src: url("../../assets/fonts/QuattrocentoSans.woff2") format("woff2"), url("../../assets/fonts/QuattrocentoSans.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/*-------------- Animations & Effects --------------*/
.transition,
.bg-img {
  transition: all 0.25s ease;
}

img,
img::after,
img::before {
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
  -webkit-user-drag: none;
  -webkit-app-region: no-drag;
}

/*-------------- General --------------*/
.columns {
  overflow: hidden;
}

.content {
  height: 100%;
}

.columns a.flex,
.bg-img ~ div,
.content,
.col-wrapper,
.module_cta,
.module_text,
.module_img,
.module_video {
  position: relative;
}

.bg-img ~ div:not(.overlay),
.content,
.col-wrapper {
  z-index: 3;
}

a.module_cta {
  color: initial;
  text-decoration: none;
  overflow: hidden;
}

.module_cta .content.none-bg,
.module_text .content.none-bg {
  padding: 0;
}

.txtwrap > *:last-child,
.txtwrap > *:has(+ .twobtns),
.intro > *:last-child {
  margin-bottom: 0;
}

.columns > div + div.col-wrapper {
  padding-top: 0;
}

.imgwrap {
  position: relative;
  overflow: hidden;
}

.intro ul:has(> li[style="text-align: center;"]),
.intro p:has(> img.aligncenter),
.intro > *[style*="text-align: center"],
.intro > .col-f-1.horiz-center {
  margin-left: auto;
  margin-right: auto;
}
.intro p:has(> img.alignright),
.intro > *[style*="text-align: right"],
.intro > .col-f-1.flex-end {
  margin-left: auto;
}

/*-------------- Intro --------------*/
.intro {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 1.5rem 3.75rem;
  padding-bottom: 1.5rem;
}
@media (max-width: 840px) {
  .intro {
    grid-template-columns: 1fr;
  }
}
.intro--single {
  grid-template-columns: 1fr;
}
.intro--single .intro__primary {
  max-width: 800px;
}
.intro--center {
  justify-items: center;
}
.intro--center .intro__primary {
  max-width: 800px;
  margin-inline: auto;
}
.intro__secondary--button {
  display: flex;
  align-self: end;
  justify-content: flex-end;
}
@media (max-width: 840px) {
  .intro__secondary--button {
    align-self: start;
    justify-content: flex-start;
  }
}

/*-------------- Image & Video --------------*/
.module_img,
.module_video {
  overflow: hidden;
}

.module_img_cover,
.module_video:not(.layout-contain),
.videowrap {
  min-height: 250px;
}

.bg-img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  height: calc(100% + 2px);
  width: auto;
  min-width: calc(100% + 2px);
  position: absolute;
  left: -1px;
  top: -1px;
  z-index: 1;
  pointer-events: none;
}
.bg-img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  display: block;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  opacity: 0.5;
}

.module_img img:not(.bg-img),
.module_gallery .tns-item > img {
  width: 100%;
}

[class*=module_] p:has(> img.aligncenter) {
  text-align: center;
}

.module_video video {
  position: relative;
  z-index: 2;
}
.module_video video.bg-img {
  z-index: 1;
  position: absolute;
  transform: translateY(-50%) translateX(-50%);
  left: 50%;
  top: 50%;
}
.module_video .video-controls {
  gap: 0.75rem;
}
.module_video .video-pause-button {
  z-index: 3;
  position: relative;
}
.module_video.layout-cover .video-pause-button {
  margin: clamp(1rem, 5vw, 2rem);
}
.module_video > .content video {
  display: none;
}

.embed-container {
  position: relative;
  padding-bottom: 56.23%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.embed-container:has(.perfmatters-lazy-youtube, .perfmatters-lazy-video) {
  padding-bottom: 0;
}

.module_img__figure {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  width: 100%;
}
.module_img__caption {
  color: #5E626E;
  font-size: 1rem;
  line-height: 1.5;
}

/*-------------- Hero --------------*/
.hero__title {
  margin: 0;
}
.hero {
  /* ---------- Breadcrumbs ---------- */
}
.hero__breadcrumbs {
  font-size: 1rem;
  color: #1F2229;
}
.hero__breadcrumbs p {
  display: inline-flex;
  gap: 0.75rem;
  margin: 0 0 4px 0 !important;
}
.hero__breadcrumbs a {
  color: inherit;
  text-decoration: none;
}
.hero__breadcrumbs a:hover {
  color: #105A93;
}
.hero__breadcrumbs p, .hero__breadcrumbs a, .hero__breadcrumbs .last {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  white-space: nowrap;
}
@media (max-width: 840px) {
  .hero__breadcrumbs p, .hero__breadcrumbs a, .hero__breadcrumbs .last {
    white-space: wrap;
  }
}
.hero__breadcrumbs .separator {
  color: #D5D9DE;
}
.hero__breadcrumbs .last,
.hero__breadcrumbs [aria-current=page] {
  color: #105A93;
}
.hero {
  /* ---------- Overlay (image/video heroes) ---------- */
}
.hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: rgba(22, 24, 29, 0.6);
}
.hero {
  /* ---------- Buttons ---------- */
}
.hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.hero {
  /* ================= HOME ================= */
}
.hero--home {
  position: relative;
  height: 700px;
  overflow: hidden;
}
@media (max-width: 1340px) {
  .hero--home {
    height: 560px;
  }
}
@media (max-width: 840px) {
  .hero--home {
    height: 400px;
  }
}
.hero--home .bg-img,
.hero--home #hero-video,
.hero--home picture.bg-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
}
.hero--home .hero__inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  height: 100%;
}
.hero--home .hero__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  max-width: 40vw;
  color: #F7FAFC;
}
@media (max-width: 1340px) {
  .hero--home .hero__content {
    max-width: 60vw;
  }
}
@media (max-width: 840px) {
  .hero--home .hero__content {
    max-width: none;
  }
}
.hero--home .video-pause-button {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 10;
  background-color: rgba(22, 24, 29, 0.5);
}
.hero {
  /* ================= PAGE ================= */
}
.hero--page {
  padding-top: 126px;
  padding-bottom: 1.5rem;
  color: #16181D;
}
.hero--page .hero__inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 0.75rem;
}
@media (max-width: 840px) {
  .hero--page .hero__inner {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}
.hero--page .hero__lead {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.hero--page .hero__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  padding-top: 3.75rem;
}
@media (max-width: 840px) {
  .hero--page .hero__aside {
    padding-top: 0;
  }
}
.hero--page .hero__intro {
  line-height: 1.6;
}
.hero--page .hero__intro p {
  margin: 0;
}
.hero--page .hero__media {
  grid-column: 1/-1;
  margin-top: 1.5rem;
  overflow: hidden;
}
@media (max-width: 840px) {
  .hero--page .hero__media {
    margin-top: 1rem;
  }
}
.hero--page .hero__media-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 21/9;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero {
  /* ================= PRODUCT ================= */
}
.hero--product {
  padding-top: 126px;
}
.hero--product .hero__inner {
  display: flex;
  flex-direction: column;
  padding-bottom: clamp(3.75rem, 5vw, 5.625rem);
}
.hero--product .hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: stretch;
  gap: 1.5rem;
  padding-top: 0.75rem;
}
@media (max-width: 1340px) {
  .hero--product .hero__grid {
    grid-template-columns: 1fr;
  }
}
.hero--product {
  /* Gallery */
}
.hero--product .hero__gallery {
  position: relative;
  grid-column: span 7;
  height: 680px;
  overflow: hidden;
}
.hero--product .hero__gallery .splide__track,
.hero--product .hero__gallery .splide__list,
.hero--product .hero__gallery .splide__slide {
  height: 100%;
}
@media (max-width: 1340px) {
  .hero--product .hero__gallery {
    grid-column: auto;
    height: 600px;
  }
}
@media (max-width: 840px) {
  .hero--product .hero__gallery {
    height: 400px;
  }
}
.hero--product .hero__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero--product .splide__arrows {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
.hero--product .splide__arrow {
  width: 48px;
  height: 48px;
  background-color: #F7FAFC;
  color: #1F2229;
  cursor: pointer;
  pointer-events: auto;
}
.hero--product .splide__arrow:hover, .hero--product .splide__arrow:focus-visible {
  background-color: #EAEEF1;
  color: #105A93;
}
.hero--product .splide__arrow:disabled {
  opacity: 0;
  pointer-events: none;
}
.hero--product .splide__arrow .icon {
  width: 24px;
  height: 24px;
}
.hero--product .splide__slide {
  height: 100%;
}
.hero--product {
  /* Panel */
}
.hero--product .hero__panel {
  grid-column: span 5;
  padding: clamp(0.75rem, 5vw, 1.5rem) clamp(0.75rem, 5vw, 1.5rem) 0;
  border: 1px solid #D5D9DE;
}
@media (max-width: 1340px) {
  .hero--product .hero__panel {
    grid-column: auto;
  }
}
@media (max-width: 840px) {
  .hero--product .hero__panel {
    padding: clamp(0.375rem, 5vw, 1rem) clamp(0.375rem, 5vw, 1rem) 0;
  }
}
.hero--product .hero__tagline {
  color: #1F2229;
}
.hero--product .hero__overview {
  padding-top: 1rem;
}
.hero--product .hero__overview .eyebrow {
  color: #5E626E;
}
.hero--product {
  /* CTA + key specs */
}
.hero--product .hero__meta {
  align-items: start;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 2rem 0;
}
@media (max-width: 840px) {
  .hero--product .hero__meta {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.hero--product .hero__meta:not(:has(.hero__cta)) {
  grid-template-columns: 1fr;
}
.hero--product .hero__cta .btn {
  white-space: nowrap;
}
.hero--product .hero__specs {
  max-width: 340px;
}
.hero--product .hero__specs .eyebrow {
  color: #5E626E;
}
.hero--product .hero__spec-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0;
}
.hero--product .hero__spec {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 2rem;
  font-size: 1rem;
  line-height: 1.6;
}
.hero--product .hero__spec-label {
  color: #1F2229;
  font-weight: 400;
}
.hero--product .hero__spec-value {
  margin: 0;
  color: #105A93;
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}
.hero--product {
  /* Contact */
}
.hero--product .hero__contact {
  display: flex;
  align-items: stretch;
  gap: 1rem;
  height: 120px;
  margin-top: auto;
  border: 1px solid #D5D9DE;
  border-bottom: 0;
}
.hero--product .hero__contact-img {
  display: block;
  flex: 0 0 auto;
  width: 120px;
  height: 120px;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero--product .hero__contact-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero--product .hero__contact-body .eyebrow {
  margin-bottom: 0.375rem !important;
  color: #5E626E;
}
.hero--product .hero__contact-name {
  color: #16181D;
  font-weight: 600;
  margin-bottom: 0.375rem !important;
}
.hero--product .hero__contact-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem 1rem;
  margin-top: 0.375rem;
}
.hero--product .hero__contact-links a {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  color: #1F2229;
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 3px;
}
.hero--product .hero__contact-links a:hover {
  color: #105A93;
}
.hero--product .hero__contact-links a .icon {
  width: 20px;
  height: 20px;
  color: #105A93;
}

/* ---------------- FOOTER ---------------- */
.footer {
  background-color: #082D4A;
  color: #F7FAFC;
  /* ---------------- MAIN FOOTER ---------------- */
}
.footer__main {
  gap: 3.75rem;
}
.footer {
  /* ---------- TOP: logo + CTAs ---------- */
}
.footer__top {
  height: 100px;
  padding-bottom: 1.5rem;
  border-bottom: 0.5px solid #D5D9DE;
}
@media (max-width: 840px) {
  .footer__top {
    height: auto;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
  }
}
.footer__branding {
  display: inline-flex;
  align-items: center;
}
.footer__ctas {
  gap: 0.375rem;
}
@media (max-width: 840px) {
  .footer__ctas {
    flex-wrap: wrap;
  }
}
.footer__ctas svg.icon {
  aspect-ratio: 1/1;
  width: 1.2em;
  height: 1.2em;
  fill: currentColor;
}
.footer__cta {
  border-color: #F7FAFC !important;
}
.footer__cta:first-child {
  border-color: #1F2229 !important;
}
.footer__cta:hover {
  border: 1px solid #5E9BC9 !important;
}
.footer {
  /* ---------- BODY: info + columns ---------- */
}
.footer__body {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 3.75rem;
}
@media (max-width: 840px) {
  .footer__body {
    gap: 1.5rem;
    grid-template-columns: 1fr;
  }
}
.footer__info {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 3.75rem;
}
.footer__info-text p {
  color: #D5D9DE;
}
.footer__info-text a {
  text-decoration: underline;
}
.footer__info-text a:visited {
  color: #F7FAFC;
}
.footer__info-text a:hover {
  color: #AFC8DB;
}
@media (max-width: 840px) {
  .footer__info-text {
    text-align: center;
  }
}
.footer__badges {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer__badges img {
  display: block;
  height: 100px;
  width: auto;
}
@media (max-width: 840px) {
  .footer__badges {
    justify-content: center;
    margin-bottom: 2rem;
  }
}
.footer {
  /* ---------- COLUMNS ---------- */
}
.footer__columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.75rem 1.5rem;
  align-content: start;
}
@media (max-width: 1340px) {
  .footer__columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem 1.5rem;
  }
}
.footer__column {
  gap: 1rem;
}
.footer__heading {
  margin: 0 !important;
  color: #D5D9DE;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.footer__menu-list {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 0.375rem;
}
.footer__menu-link {
  display: block;
  color: #F7FAFC;
  text-decoration: none;
}
.footer__menu-link:visited {
  color: #F7FAFC;
}
.footer__menu-link:hover, .footer__menu-link:focus-visible {
  color: #AFC8DB;
}
.footer__text {
  color: #F7FAFC;
}
.footer__text a {
  color: #F7FAFC;
}
.footer__text a:visited {
  color: #F7FAFC;
}
.footer {
  /* ---------------- SUB FOOTER ---------------- */
}
.footer__sub {
  background-color: #EAEEF1;
  color: #1F2229;
  font-size: 1rem;
}
.footer__sub-wrapper {
  gap: 1.5rem;
  height: 48px;
}
@media (max-width: 840px) {
  .footer__sub-wrapper {
    flex-direction: column-reverse;
    align-items: center;
    height: auto;
    padding: 0.375rem 0;
    flex-wrap: wrap;
    gap: 0.75rem;
  }
}
.footer__sub-left {
  gap: 2rem;
}
.footer__copyright {
  margin: 0 !important;
  font-size: 1rem;
}
.footer__sub-links {
  display: flex;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer__sub-link {
  color: #1F2229;
  text-decoration: none;
}
.footer__sub-link:visited {
  color: #1F2229;
}
.footer__sub-link:hover {
  color: #105A93;
}
.footer__social {
  line-height: 1;
  display: flex;
  gap: 0.375rem;
  padding: 0;
  list-style: none;
}
@media (max-width: 840px) {
  .footer__social {
    margin-left: 0;
  }
}
.footer__social-link {
  border-color: #D5D9DE !important;
}
.footer__social-link:hover {
  border-color: #5E9BC9 !important;
}
.footer__credit-img {
  padding: 4px;
  filter: grayscale(1) contrast(1.5) brightness(0.3);
  border-radius: 999px;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.header svg.icon {
  aspect-ratio: 1/1;
  width: 1.2em;
  height: 1.2em;
  fill: currentColor;
}
.header:hover .header__main, .header.header-scroll .header__main, .header.is-panel-open .header__main, .header.is-solid .header__main, .header.is-search-open .header__main {
  background: transparent;
  background-color: #F7FAFC;
  border-bottom: 0.5px solid #D5D9DE;
}
.header:hover .header__menu-link, .header.header-scroll .header__menu-link, .header.is-panel-open .header__menu-link, .header.is-solid .header__menu-link, .header.is-search-open .header__menu-link {
  color: #16181D;
}
@media (max-width: 1340px) {
  .header:hover .header__menu-link, .header.header-scroll .header__menu-link, .header.is-panel-open .header__menu-link, .header.is-solid .header__menu-link, .header.is-search-open .header__menu-link {
    color: #105A93;
  }
}
.header:hover .btn-chevron, .header.header-scroll .btn-chevron, .header.is-panel-open .btn-chevron, .header.is-solid .btn-chevron, .header.is-search-open .btn-chevron {
  color: #5E626E;
}
.header:hover .header__hamburger-lines,
.header:hover .header__hamburger-lines::after,
.header:hover .header__hamburger-lines::before, .header.header-scroll .header__hamburger-lines,
.header.header-scroll .header__hamburger-lines::after,
.header.header-scroll .header__hamburger-lines::before, .header.is-panel-open .header__hamburger-lines,
.header.is-panel-open .header__hamburger-lines::after,
.header.is-panel-open .header__hamburger-lines::before, .header.is-solid .header__hamburger-lines,
.header.is-solid .header__hamburger-lines::after,
.header.is-solid .header__hamburger-lines::before, .header.is-search-open .header__hamburger-lines,
.header.is-search-open .header__hamburger-lines::after,
.header.is-search-open .header__hamburger-lines::before {
  background: #16181D;
  opacity: 1;
  transition: background-color 0.25s ease, background 0.25s ease;
}
.header:hover .header__logo-svg, .header.header-scroll .header__logo-svg, .header.is-panel-open .header__logo-svg, .header.is-solid .header__logo-svg, .header.is-search-open .header__logo-svg {
  color: #16181D;
}
.header:hover .header__cta--secondary, .header.header-scroll .header__cta--secondary, .header.is-panel-open .header__cta--secondary, .header.is-solid .header__cta--secondary, .header.is-search-open .header__cta--secondary {
  color: #16181D;
  border-color: #1F2229;
}
.header a {
  text-decoration: none;
}
.header a,
.header button {
  transition: all 0.25s ease;
}
.header__overlay {
  position: fixed;
  inset: 0;
  background: rgba(22, 24, 29, 0.5);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: -1;
  transition: opacity 0.25s ease, visibility 0.25s;
}
.header:has(.header__menu-item--mega.is-open) .header__overlay, .header.is-panel-open .header__overlay, .header.is-search-open .header__overlay {
  opacity: 1;
  visibility: visible;
}
.header.is-search-open .header__overlay {
  pointer-events: auto;
}
@media (max-width: 1340px) {
  .header__overlay {
    display: none;
  }
  .header.is-search-open .header__overlay {
    display: block;
  }
}
.header .pre-header {
  background-color: #16181D;
}
.header .pre-header__inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
  min-height: 36px;
}
.header .pre-header__brand {
  justify-self: start;
  display: flex;
  align-items: center;
}
.header .pre-header__brand-img {
  display: block;
}
.header .pre-header__nav {
  justify-self: center;
}
.header .pre-header__menu {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  height: 100%;
}
.header .pre-header__item {
  display: inline-flex;
  align-items: center;
}
.header .pre-header li {
  display: inline-flex;
  align-items: center;
  height: 100%;
  color: #F7FAFC;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
}
.header .pre-header li:hover, .header .pre-header li:focus-visible {
  color: #5E9BC9;
}
.header .pre-header__actions {
  height: 100%;
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
}
@media (max-width: 840px) {
  .header .pre-header__inner {
    grid-template-columns: auto auto;
  }
  .header .pre-header__menu {
    display: none;
  }
}
.header .mobile-utility-nav-items .mobile-utility-nav-title {
  font-weight: 400;
  padding: 2rem 0.75rem 0.75rem 0.75rem;
  color: #5E626E;
}
.header .mobile-utility-nav-items ul,
.header .mobile-utility-nav-items li {
  list-style: none;
}
.header .mobile-utility-nav-items ul {
  display: flex;
}
.header .mobile-utility-nav-items li {
  height: 44px;
}
.header .mobile-utility-nav-items a {
  width: 100%;
  height: 44px;
  padding: 0.75rem 0.75rem;
  color: #105A93;
  font-size: 1.125rem;
}
.header__main {
  background: linear-gradient(180deg, rgba(22, 24, 29, 0.5) 50%, rgba(22, 24, 29, 0.1) 100%);
  transition: background-color 0.3s ease-in-out;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header__main-wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  height: 100%;
}
@media (max-width: 1340px) {
  .header__main-wrapper {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 840px) {
  .header__main-wrapper {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 841px) {
  .header__main .mobile-utility-nav-items {
    display: none;
  }
}
.header__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  justify-self: end;
  gap: 0.75rem;
}
@media (max-width: 1340px) {
  .header__actions {
    z-index: 601;
  }
}
.header__ctas .header__cta--accent {
  background-color: #AA0833;
  border-color: #AA0833;
  color: #F7FAFC;
}
.header__ctas .header__cta--secondary {
  color: #EAEEF1;
  border-color: #EAEEF1;
}
.header__ctas .header__cta--secondary:hover {
  border-color: #5E9BC9;
}
.header__logo {
  display: inline-flex;
  align-items: center;
}
.header__logo-link {
  text-decoration: none;
  line-height: 0;
}
.header__logo-svg {
  color: #F7FAFC;
}
.header__panel-wrap {
  position: relative;
}
@media (max-width: 840px) {
  .header__panel-wrap {
    display: none;
  }
}
.header__panel {
  position: absolute;
  top: calc(100% + 27px);
  right: 0;
  min-width: 240px;
  z-index: 200;
  background-color: #F7FAFC;
  box-shadow: 0 1px 3px 0 rgba(22, 24, 29, 0.1), 0 1px 2px -1px rgba(22, 24, 29, 0.1);
  padding: 4px;
}
.header__panel[hidden] {
  display: none;
}
.header .hamburger-menu__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  list-style: none;
}
.header .hamburger-menu__list a {
  width: 100%;
}
.header__hamburger-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
}
.header__hamburger-btn .header__hamburger-lines {
  position: absolute;
  top: 50%;
  margin-top: -1.5px;
  left: calc(50% - 13px);
  width: 26px;
  height: 3px;
  border-radius: 3px;
  background: #F7FAFC;
  transition: background-color 0.25s ease;
}
.header__hamburger-btn .header__hamburger-lines::before, .header__hamburger-btn .header__hamburger-lines::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background: #F7FAFC;
  border-radius: 3px;
  transition: transform 0.3s 0s, top 0.3s 0.3s, bottom 0.3s 0.3s, background-color 0.25s ease;
}
.header__hamburger-btn .header__hamburger-lines::before {
  top: -8px;
}
.header__hamburger-btn .header__hamburger-lines::after {
  bottom: -8px;
}
.header__hamburger-btn.is-hamburger-active .header__hamburger-lines {
  background-color: transparent;
  transition: background-color 0s 0.3s;
}
.header__hamburger-btn.is-hamburger-active .header__hamburger-lines::before, .header__hamburger-btn.is-hamburger-active .header__hamburger-lines::after {
  transition: top 0.3s 0s, bottom 0.3s 0s, transform 0.3s 0.3s, background-color 0.25s ease;
}
.header__hamburger-btn.is-hamburger-active .header__hamburger-lines::before {
  top: 0;
  transform: rotate(45deg);
}
.header__hamburger-btn.is-hamburger-active .header__hamburger-lines::after {
  bottom: 0;
  transform: rotate(-45deg);
}
@media (min-width: 1341px) {
  .header__hamburger-btn {
    display: none;
  }
}
@media (max-width: 1340px) {
  .header__hamburger-btn {
    z-index: 601;
  }
}
.header__menu-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
}
.header__menu-btn .header__hamburger-lines {
  position: absolute;
  top: 50%;
  margin-top: -1px;
  left: calc(50% - 11px);
  width: 22px;
  height: 2px;
  border-radius: 2px;
  background: #F7FAFC;
  transition: background-color 0.25s ease;
}
.header__menu-btn .header__hamburger-lines::before, .header__menu-btn .header__hamburger-lines::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background: #F7FAFC;
  border-radius: 2px;
  transition: transform 0.3s 0s, top 0.3s 0.3s, bottom 0.3s 0.3s, background-color 0.25s ease;
}
.header__menu-btn .header__hamburger-lines::before {
  top: -5px;
}
.header__menu-btn .header__hamburger-lines::after {
  bottom: -5px;
}
.header__menu-btn.is-hamburger-active .header__hamburger-lines {
  background-color: transparent;
  transition: background-color 0s 0.3s;
}
.header__menu-btn.is-hamburger-active .header__hamburger-lines::before, .header__menu-btn.is-hamburger-active .header__hamburger-lines::after {
  transition: top 0.3s 0s, bottom 0.3s 0s, transform 0.3s 0.3s, background-color 0.25s ease;
}
.header__menu-btn.is-hamburger-active .header__hamburger-lines::before {
  top: 0;
  transform: rotate(45deg);
}
.header__menu-btn.is-hamburger-active .header__hamburger-lines::after {
  bottom: 0;
  transform: rotate(-45deg);
}
.header__menu-btn {
  cursor: pointer;
}
@media (max-width: 1340px) {
  .header__menu-btn {
    display: none;
  }
}
.header .mobile-hamburger-nav-items {
  display: none;
}
@media (max-width: 1340px) {
  .header .mobile-hamburger-nav-items {
    display: block;
    width: 100%;
  }
}
.header__nav {
  display: flex;
  height: 100%;
  align-items: center;
  gap: clamp(0.375rem, 5vw, 1rem);
}
@media (max-width: 1340px) {
  .header__nav.active-pre-header {
    top: 126px;
    height: calc(100vh - 126px);
    height: calc(100dvh - 126px);
  }
}
@media (max-width: 1340px) {
  .header__nav:not(.active-pre-header) {
    top: 90px;
    height: calc(100vh - 90px);
    height: calc(100dvh - 90px);
  }
}
@media (max-width: 1340px) {
  .header__nav {
    position: fixed;
    left: 0;
    width: 100%;
    gap: 0;
    background-color: #F7FAFC;
    flex-direction: column;
    align-items: flex-start;
    padding: 3.75rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 600;
    visibility: hidden;
    opacity: 0;
  }
  .header__nav.is-mobile-menu-active {
    visibility: visible;
    opacity: 1;
    transform: translateX(0);
    transition-delay: 0s;
  }
}
@media (max-width: 840px) {
  .header__nav {
    padding: 1.5rem;
  }
}
.header {
  /* ---------- Icon buttons ---------- */
}
.header .btn-chevron {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  color: #D5D9DE;
  transition: transform 0.3s ease;
}
@media (max-width: 1340px) {
  .header .btn-chevron {
    width: 48px;
    height: 48px;
  }
}
.header {
  /* ---------- Pre-header buttons: search + language switcher ---------- */
}
.header .btn-search {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 100%;
  padding: 0 0.75rem;
  background-color: #1F2229;
  color: #EAEEF1;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  font-size: 1rem;
  border-radius: 0.25rem;
  cursor: pointer;
}
.header .btn-search .icon {
  width: 16px;
  height: 16px;
}
.header .btn-search:hover {
  background-color: #5E626E;
}
.header .lang {
  position: relative;
  height: 100%;
}
.header .lang__toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 100%;
  padding: 0 0.75rem;
  background-color: #1F2229;
  color: #EAEEF1;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  font-size: 1rem;
  border-radius: 0.25rem;
  cursor: pointer;
}
.header .lang__toggle .icon {
  width: 16px;
  height: 16px;
}
.header .lang__toggle:hover {
  background-color: #5E626E;
}
.header .lang__list {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 999;
  min-width: 100%;
  padding: 2px;
  list-style: none;
  background-color: #16181D;
}
.header .lang__list[hidden] {
  display: none;
}
.header .lang__label, .header .lang__link {
  text-transform: uppercase;
}
.header .lang__item, .header .lang__link {
  width: 100%;
}
.header .lang__link {
  padding: 0.75rem;
  color: #F7FAFC;
  font-size: 1rem;
  text-decoration: none;
  text-align: center;
  border-radius: 0.25rem;
}
.header .lang__link:hover, .header .lang__link:focus-visible {
  background-color: #5E626E;
}
.header__menu-list {
  display: flex;
  height: 100%;
  gap: 0.375rem 0.75rem;
  margin: 0;
}
@media (max-width: 1340px) {
  .header__menu-list {
    flex-direction: column;
    width: 100%;
    height: auto;
  }
}
.header__menu-item {
  list-style: none;
  display: flex;
  align-items: center;
}
@media (max-width: 1340px) {
  .header__menu-item {
    width: 100%;
    flex-wrap: wrap;
    border-bottom: 1px solid #EAEEF1;
  }
}
.header__menu-item--active {
  color: #0B3E65;
}
.header__menu-item--has-children {
  position: relative;
}
.header__menu-item--has-children.is-open > .btn-chevron {
  transform: rotate(180deg);
}
.header__menu-item--mega, .header__menu-item--drill {
  position: static;
}
.header__menu-link {
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0 8px;
  font-weight: 400;
  font-size: 1.125rem;
  color: #F7FAFC;
}
@media (max-width: 1340px) {
  .header__menu-link {
    flex: 1;
    padding: 16px 8px;
    font-size: 1.125rem;
    height: auto;
    font-weight: 600;
  }
}
.header__menu-link:hover {
  color: #105A93;
}
.header__menu-item--has-children > .header__menu-link {
  padding-right: 0;
}
.header__dropdown {
  display: none;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 240px;
  z-index: 200;
  background-color: #F7FAFC;
  box-shadow: 0 1px 3px 0 rgba(22, 24, 29, 0.1), 0 1px 2px -1px rgba(22, 24, 29, 0.1);
  border-radius: 0.5rem;
  padding: 4px;
  transition: opacity 0.25s ease-in-out, visibility 0s linear 0.25s, transform 0.25s ease-in-out;
}
.header__dropdown-item {
  list-style: none;
  width: 100%;
}
.header__dropdown-item--has-children {
  position: relative;
  display: flex;
  align-items: center;
}
.header__dropdown-item--has-children .header__dropdown-link {
  width: 100%;
}
.header__dropdown-item--has-children .btn-chevron {
  transform: rotate(-90deg);
}
.header__dropdown-item:hover {
  background-color: #EAEEF1;
}
@media (max-width: 1340px) {
  .header__dropdown-item {
    border-bottom: 1px solid #EAEEF1;
    padding: 1rem 0;
  }
}
.header__dropdown-link {
  display: flex;
  align-items: center;
  height: 44px;
  padding: 0 8px;
  font-weight: bold;
  font-size: 1.125rem;
  color: #105A93;
}
@media (max-width: 1340px) {
  .header__dropdown-link {
    height: auto;
  }
}
.header__dropdown--level-2 .btn-chevron, .header__dropdown--level-3, .header__dropdown--level-4 {
  display: none;
}
.header__menu-item.is-open .header__dropdown--level-1 {
  display: flex;
  flex-direction: column;
  gap: 2px;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.header__dropdown-item--level-1.is-open .header__dropdown--level-2 {
  display: flex;
  flex-direction: column;
  gap: 2px;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  position: absolute;
  top: -4px;
  left: 100%;
  margin-left: 4px;
  min-width: 200px;
  z-index: 200;
}
.header__mega {
  display: none;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: min(100vw - 4rem, 1560px);
  background-color: #F7FAFC;
  box-shadow: 0 1px 3px 0 rgba(22, 24, 29, 0.1), 0 1px 2px -1px rgba(22, 24, 29, 0.1);
  z-index: 200;
  transition: opacity 0.25s ease, visibility 0.25s;
  padding: 36px 32px 0 32px;
}
@media (max-width: 1340px) {
  .header__mega {
    position: static;
    transform: none;
    width: 100%;
    box-shadow: none;
    background: transparent;
  }
}
.header__mega-title {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 36px;
  margin: 0;
  padding: 0.75rem;
  background-color: #EAEEF1;
  color: #5E626E;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
@media (max-width: 1340px) {
  .header__mega-title {
    display: none;
  }
}
.header__mega-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 0;
  padding: 0;
  list-style: none;
  padding: 1px 0 0 1px;
}
@media (max-width: 1340px) {
  .header__mega-list {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 0;
    gap: 0;
  }
}
.header__mega-link {
  display: flex;
  width: 100%;
  gap: 0.375rem;
  height: 100%;
  padding: 1rem;
  transition: all 0.25s ease;
}
.header__mega-link:hover, .header__mega-link:focus-visible {
  background-color: rgba(234, 238, 241, 0.5);
}
.header__mega-link:hover .header__mega-link-arrow, .header__mega-link:focus-visible .header__mega-link-arrow {
  transform: translateX(4px);
}
@media (max-width: 1340px) {
  .header__mega-link {
    padding: 0.75rem 0;
    gap: 0.75rem;
  }
}
.header__mega-link-icon {
  padding-top: 2px;
}
.header__mega-link-icon svg {
  width: 24px;
  height: 24px;
  color: #105A93;
}
.header__mega-item {
  list-style: none;
  border: 1px solid #EAEEF1;
  margin: -1px 0 0 -1px;
}
@media (max-width: 1340px) {
  .header__mega-item {
    width: 100%;
    margin: 0;
    border: 0;
    border-bottom: 1px solid #EAEEF1;
    grid-column: auto;
  }
  .header__mega-item:last-child {
    border-bottom: 0;
  }
}
.header__mega-item:last-child:nth-child(3n+1) {
  grid-column: span 3;
}
.header__mega-item:last-child:nth-child(3n+2) {
  grid-column: span 2;
}
.header__mega-link-content {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 1rem 0.75rem;
  width: 100%;
}
.header__mega-link-title {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.15em;
  color: #105A93;
}
@media (max-width: 1340px) {
  .header__mega-link-title {
    font-size: 1.125rem;
  }
}
.header__mega-link-arrow {
  display: inline-flex;
  color: #105A93;
  transition: transform 0.2s ease;
}
.header__mega-link-arrow .icon {
  width: 20px;
  height: 20px;
}
@media (max-width: 1340px) {
  .header__mega-link-arrow {
    display: none;
  }
}
.header__mega-link-description {
  grid-column: 1/-1;
  font-size: 1rem;
  line-height: 1.5;
  color: #1F2229;
}
@media (max-width: 1340px) {
  .header__mega-link-description {
    display: none;
  }
}
.header__menu-item--mega.is-open .header__mega {
  display: block;
  opacity: 1;
  visibility: visible;
}
@media (max-width: 1340px) {
  .header__dropdown, .header__mega, .header__mega-submenu {
    position: static;
    width: 100%;
    margin: 0;
    padding: 0 0 16px 16px;
    border: none;
    box-shadow: none;
    background: transparent;
    opacity: 1;
    visibility: visible;
    display: none;
  }
  .header__mega-list {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    min-height: auto;
  }
  .header__menu-item.is-open > .header__dropdown, .header__menu-item.is-open > .header__mega, .header__mega-item.is-open > .header__mega-submenu {
    display: flex;
    flex-direction: column;
  }
}

body.mobile-nav-no-scroll {
  overflow: hidden;
}

#error-404 {
  overflow: hidden;
}
#error-404 svg {
  display: block;
  background: none;
  margin: -1px -1px -1px 0;
}
#error-404 div.none-bg {
  background: #F7FAFC;
}
#error-404 svg.none-bg path {
  fill: #F7FAFC;
}
#error-404 .col-1-2 {
  width: 50%;
}
#error-404 .twobtns {
  margin-bottom: 1rem;
}
#error-404 h1 {
  font-size: clamp(1.625rem, 5vw, 2.5rem);
  padding: 0 2rem;
}

@media (max-width: 1340px) {
  #error-404 .col-1-2 {
    width: 90%;
    margin: 5% auto;
  }
}
.col-wrapper:not(.none-bg) {
  padding: clamp(3.75rem, 5vw, 5.625rem);
}

.module_cta .content,
.module_text .content,
.tab-content,
.module_video .content,
.module_gallery .content,
#error-404 .content > div {
  padding: clamp(1rem, 5vw, 2rem);
}

.module_flow .loop .txtwrap {
  padding: clamp(1rem, 5vw, 2rem);
}

.module_search {
  grid-area: 1/1/2/-1;
}

.module_text__inner {
  display: flex;
  flex-direction: column;
  /* ---------- Side-by-side variants ---------- */
}
.module_text__inner--img-left, .module_text__inner--img-right {
  display: grid;
  grid-template-columns: minmax(0, 120px) minmax(0, 1fr);
  align-items: start;
  gap: 3.75rem;
}
@media (max-width: 1340px) {
  .module_text__inner--img-left, .module_text__inner--img-right {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
  .module_text__inner--img-left .module_text__media, .module_text__inner--img-right .module_text__media {
    width: 100%;
    max-width: 120px;
    margin-bottom: 1.5rem;
  }
}
.module_text__inner--img-right .module_text__media {
  order: 2;
}
@media (max-width: 1340px) {
  .module_text__inner--img-right .module_text__media {
    order: 0;
  }
}
.module_text__inner--img-top .module_text__media {
  margin-bottom: 1.5rem;
}
.module_text {
  /* ---------- Media ---------- */
}
.module_text__media {
  overflow: hidden;
}
.module_text__media--16-9 {
  aspect-ratio: 16/9;
}
.module_text__media--4-3 {
  aspect-ratio: 4/3;
}
.module_text__media--1-1 {
  aspect-ratio: 1;
}
.module_text__media--auto {
  overflow: visible;
}
.module_text__media--auto .module_text__img {
  height: auto;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.module_text__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.module_text {
  /* ---------- Content ---------- */
}
.module_text__content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.module_text.vert-center .module_text__content {
  justify-content: center;
}
.module_text.flex-end .module_text__content {
  justify-content: flex-end;
}
.module_text__icon {
  flex: 0 0 auto;
  margin-bottom: 1.5rem;
}
.module_text__icon svg {
  width: 80px;
  height: 80px;
}
.module_text__body {
  flex: 0 0 auto;
}
.module_text__buttons {
  flex: 0 0 auto;
  margin-top: auto;
  padding-top: 1.5rem;
}
.module_text.vert-center .module_text__inner, .module_text.vert-bottom .module_text__inner {
  justify-content: inherit;
}

/* ---------------- Anchor nav ---------------- */
.product-nav {
  position: sticky;
  top: calc(var(--header-height, 90px) - 1px);
  z-index: 50;
  background-color: #F7FAFC;
}
@media (max-width: 1340px) {
  .product-nav__inner {
    width: 100%;
    max-width: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .product-nav__inner::-webkit-scrollbar {
    display: none;
  }
}
.product-nav__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 1340px) {
  .product-nav__list {
    justify-content: flex-start;
    flex-wrap: nowrap;
    padding: 0 5vw;
  }
}
.product-nav__item {
  flex: 0 0 auto;
}
.product-nav__item + .product-nav__item {
  margin-left: -1px;
}
.product-nav__link {
  height: 56px;
  padding: 0 1.5rem;
  color: #5E626E;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  border: 1px solid #EAEEF1;
  border-bottom-width: 2px;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.product-nav__link:hover, .product-nav__link:focus-visible {
  color: #1F2229;
  background-color: #EAEEF1;
}
.product-nav__link.is-active {
  color: #16181D;
  background-color: #EAEEF1;
  border-bottom-color: #105A93;
}
@media (max-width: 1340px) {
  .product-nav__link {
    height: 48px;
    padding: 0 1rem;
  }
}

/* Anchor targets clear the sticky bar + header */
.product-section {
  scroll-margin-top: var(--header-height, 90px);
}

/* ---------------- Spec tables ---------------- */
.product-specs__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 5vw, 2rem) 3.75rem;
  padding-top: 2rem;
}
@media (max-width: 840px) {
  .product-specs__grid {
    grid-template-columns: 1fr;
    gap: clamp(1rem, 5vw, 2rem);
  }
}
.product-specs__heading {
  margin: 0 0 0.75rem;
  color: #5E626E;
}
.product-specs__table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.product-specs__row {
  border-top: 1px solid #EAEEF1;
}
.product-specs__row:last-child {
  border-bottom: 1px solid #EAEEF1;
}
.product-specs__label, .product-specs__value {
  padding: 10px 0;
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
}
.product-specs__label {
  width: 50%;
  padding-right: 1rem;
  color: #16181D;
  font-weight: 600;
  border-right: 2px solid #105A93;
}
.product-specs__value {
  padding-left: 1rem;
  color: #1F2229;
  font-weight: 400;
}

/* ---------------- Service modules ---------------- */
.product-modules__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1340px) {
  .product-modules__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 840px) {
  .product-modules__grid {
    grid-template-columns: 1fr;
  }
}
.product-modules__item {
  padding: 1.5rem;
  margin: -1px 0 0 -1px;
  border: 1px solid #EAEEF1;
}
.product-modules__title {
  margin: 0 0 0.75rem;
  font-weight: 600;
  line-height: 1.3;
}
.product-modules__text {
  margin: 0;
  font-size: 1.125rem;
  color: #1F2229;
}

/* ---------------- Videos ---------------- */
.product-videos__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
}
@media (max-width: 840px) {
  .product-videos__grid {
    grid-template-columns: 1fr;
  }
}

body.single-product .main-content {
  padding-bottom: clamp(3.75rem, 5vw, 5.625rem);
}

/* ---------------- Office details card ---------------- */
.office-card {
  padding: 1.5rem;
  border: 1px solid #D5D9DE;
  gap: 1.5rem;
}
@media (max-width: 1340px) {
  .office-card {
    padding: 0.75rem;
  }
}
@media (max-width: 840px) {
  .office-card {
    padding: 1.5rem;
  }
}
.office-card__label {
  margin: 0 0 0.75rem;
  color: #5E626E;
  text-transform: uppercase;
}
.office-card__line {
  margin: 0 0 0.375rem;
}
.office-card__line:last-child {
  margin-bottom: 0;
}
.office-card__address {
  display: inline-flex;
  align-items: flex-start;
  gap: 0.75rem;
  color: #1F2229;
  text-decoration: none !important;
}
.office-card__address:hover, .office-card__address:focus-visible {
  color: #105A93;
}
.office-card__address:hover .office-card__map, .office-card__address:focus-visible .office-card__map {
  transform: translate(2px, -2px);
}
.office-card__map {
  flex: 0 0 auto;
  display: inline-flex;
  margin-top: 3px;
  color: #105A93;
  transition: transform 0.2s ease;
}
.office-card__map .icon {
  width: 16px;
  height: 16px;
}
.office-card a {
  color: #1F2229;
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 3px;
}
.office-card a:hover, .office-card a:focus-visible {
  color: #105A93;
}

.contact-form__inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 1.5rem;
}
@media (max-width: 1340px) {
  .contact-form__inner {
    grid-template-columns: 1fr;
  }
}
.contact-form__aside {
  gap: 1.5rem;
}
.contact-form__text {
  padding: clamp(1rem, 5vw, 2rem);
}
.contact-form__media {
  flex: 1 1 auto;
  overflow: hidden;
}
.contact-form__media--full .contact-form__img {
  height: 100%;
}
.contact-form__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.contact-form__form {
  padding: clamp(1rem, 5vw, 2rem);
}
@media (max-width: 840px) {
  .contact-form__form {
    padding: clamp(0.75rem, 5vw, 1.5rem);
  }
}

/* ================= ARCHIVE FILTERS ================= */
/* ---------- Shared: facets ---------- */
.default-filters__facets,
.faq-filters__facets,
.contacts-filters__facets,
.product-filters__facets {
  gap: 1rem;
  margin-bottom: 1.5rem;
}
@media (max-width: 840px) {
  .default-filters__facets, .default-filters__facet,
  .faq-filters__facets,
  .faq-filters__facet,
  .contacts-filters__facets,
  .contacts-filters__facet,
  .product-filters__facets,
  .product-filters__facet {
    width: 100%;
  }
}
.default-filters .facet-label,
.faq-filters .facet-label,
.contacts-filters .facet-label,
.product-filters .facet-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ---------- Shared: sidebar + main layout ---------- */
.contacts-filters__inner,
.product-filters__inner,
.faq-filters__inner {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  align-items: start;
  gap: 3.75rem;
}
.contacts-filters__sidebar,
.product-filters__sidebar,
.faq-filters__sidebar {
  position: sticky;
  top: calc(var(--header-height, 90px) + 3.75rem);
}
@media (max-width: 840px) {
  .contacts-filters__sidebar,
  .product-filters__sidebar,
  .faq-filters__sidebar {
    position: static;
  }
}

/* ---------- Shared: category navigation (products, FAQ) ---------- */
@media (max-width: 1340px) {
  .product-filters__inner,
  .faq-filters__inner {
    grid-template-columns: 200px minmax(0, 1fr);
    gap: 1.5rem;
  }
}
.product-filters__nav,
.faq-filters__nav {
  list-style: none;
}
@media (max-width: 840px) {
  .product-filters__nav,
  .faq-filters__nav {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.375rem;
  }
}
.product-filters__nav-item:first-child .product-filters__nav-link,
.product-filters__nav-item:first-child .faq-filters__nav-link,
.faq-filters__nav-item:first-child .product-filters__nav-link,
.faq-filters__nav-item:first-child .faq-filters__nav-link {
  border-top: 1px solid #EAEEF1;
}
.product-filters__nav-link,
.faq-filters__nav-link {
  gap: 0.75rem;
  padding: 12px 1rem;
  color: #5E626E;
  font-size: 1.25rem;
  font-weight: 600;
  text-decoration: none;
  border-left: 2px solid transparent;
  border-bottom: 1px solid #EAEEF1;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.product-filters__nav-link:hover, .product-filters__nav-link:focus-visible,
.faq-filters__nav-link:hover,
.faq-filters__nav-link:focus-visible {
  color: #16181D;
  background-color: rgba(234, 238, 241, 0.5);
}
.product-filters__nav-link.is-active,
.faq-filters__nav-link.is-active {
  color: #16181D;
  background-color: #EAEEF1;
  border-left-color: #105A93;
}
@media (max-width: 1340px) {
  .product-filters__nav-link,
  .faq-filters__nav-link {
    padding: 1rem 0.375rem;
    font-size: 1rem;
  }
}
@media (max-width: 840px) {
  .product-filters__nav-link,
  .faq-filters__nav-link {
    padding: 0.75rem 1rem;
    border: 1px solid #EAEEF1;
    border-bottom-width: 2px;
  }
  .product-filters__nav-link.is-active,
  .faq-filters__nav-link.is-active {
    border-left-color: #EAEEF1;
    border-bottom-color: #105A93;
  }
}
.product-filters__nav-count,
.faq-filters__nav-count {
  color: #5E626E;
  font-size: 1rem;
  font-weight: 400;
}

/* ================= DEFAULT ARCHIVE ================= */
.default-filters__grid.no-gap {
  row-gap: 0;
}

/* ================= CONTACTS ARCHIVE ================= */
@media (max-width: 1340px) {
  .contacts-filters__inner {
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 2rem;
  }
}
.contacts-filters__sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.contacts-filters {
  /* ---------- Office selector - flag sits inside the select ---------- */
}
.contacts-filters__flag {
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  width: 24px;
  height: auto;
  pointer-events: none;
}
.contacts-filters__office-select {
  padding-left: 48px !important;
}
.contacts-filters__grid {
  row-gap: 3.75rem;
}

/* ================= PRODUCTS ARCHIVE ================= */
.product-filters__facets {
  margin-bottom: 2rem;
}
@media (max-width: 840px) {
  .product-filters__facets {
    flex-direction: column;
  }
  .product-filters__facets .facetwp-reset {
    align-self: flex-end;
  }
}

/* ================= FAQ ARCHIVE ================= */
.faq-filters__inner {
  grid-template-columns: 380px minmax(0, 1fr);
}
@media (max-width: 1340px) {
  .faq-filters__inner {
    grid-template-columns: 280px minmax(0, 1fr);
  }
}

/* ---------- Shared: mobile collapse ---------- */
@media (max-width: 840px) {
  .contacts-filters__inner,
  .product-filters__inner,
  .faq-filters__inner {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}
/* ================= TIMELINE ================= */
.timeline__heading {
  margin: 0 0 2rem;
  text-align: center;
  color: #5E626E;
}
.timeline__list {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}
.timeline__list::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  margin-left: calc(1px / -2);
  background-color: #D5D9DE;
}
@media (max-width: 840px) {
  .timeline__list::before {
    left: calc(14px / 2);
  }
}
.timeline__item {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 14px 1fr;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  align-items: start;
  padding-bottom: 1.5rem;
}
.timeline__item:last-child {
  padding-bottom: 0;
}
.timeline__item:nth-child(odd) .timeline__content {
  grid-column: 1;
  text-align: right;
}
.timeline__item:nth-child(even) .timeline__content {
  grid-column: 3;
  text-align: left;
}
@media (max-width: 840px) {
  .timeline__item {
    grid-template-columns: 14px 1fr;
  }
  .timeline__item:nth-child(odd) .timeline__content, .timeline__item:nth-child(even) .timeline__content {
    grid-column: 2;
    text-align: left;
  }
}
.timeline__content {
  grid-row: 1;
}
.timeline__dot {
  grid-column: 2;
  align-self: start;
  margin-top: 6px;
  width: 14px;
  height: 14px;
  background-color: #F7FAFC;
  border: 2px solid #D5D9DE;
  border-radius: 999px;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
@media (max-width: 840px) {
  .timeline__dot {
    grid-column: 1;
  }
}
.timeline__year {
  margin: 0;
  color: #105A93;
  font-size: clamp(1.375rem, 5vw, 1.875rem);
  font-weight: 600;
  line-height: 1.2;
}
.timeline__events {
  margin: 0;
  padding: 0;
  list-style: none;
}
.timeline__event {
  margin: 0 0 0.75rem;
  color: #1F2229;
  line-height: 1.6;
}
.timeline__event:last-child {
  margin-bottom: 0;
}
.timeline {
  /* ---------- Reveal on scroll ---------- */
}
.timeline__item {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.timeline__item.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.timeline__item.is-visible .timeline__dot {
  background-color: #AA0833;
  border-color: #AA0833;
}
@media (prefers-reduced-motion: reduce) {
  .timeline__item {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .timeline__dot {
    background-color: #AA0833;
    border-color: #AA0833;
  }
}

.no-js .timeline__item {
  opacity: 1;
  transform: none;
}

/*-------------- Forms --------------*/
/* Accessibility & General */
input:focus-visible,
textarea:focus-visible,
.forminator-select .select2-selection[aria-expanded=true] {
  outline: 2px solid #5E9BC9;
  outline-offset: 1px;
  transition: none;
}

input, textarea, select {
  -webkit-tap-highlight-color: transparent;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  background-color: #F7FAFC;
  -webkit-text-fill-color: #1F2229 !important; /* Overrides the autofill text color */
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
}

::-moz-placeholder {
  color: #5E626E;
  opacity: 1;
}

::placeholder {
  color: #5E626E;
  opacity: 1;
}

/* Globals */
[class^=module_] input[type=text],
[class^=module_] input[type=tel],
[class^=module_] input[type=email],
[class^=module_] input[type=password],
[class^=module_] input[type=number],
[class^=module_] input[type=search],
[class^=module_] textarea,
[class^=module_] select, [class*=" module_"] input[type=text],
[class*=" module_"] input[type=tel],
[class*=" module_"] input[type=email],
[class*=" module_"] input[type=password],
[class*=" module_"] input[type=number],
[class*=" module_"] input[type=search],
[class*=" module_"] textarea,
[class*=" module_"] select,
#hero-section input[type=text],
#hero-section input[type=tel],
#hero-section input[type=email],
#hero-section input[type=password],
#hero-section input[type=number],
#hero-section input[type=search],
#hero-section textarea,
#hero-section select,
.footer input[type=text],
.footer input[type=tel],
.footer input[type=email],
.footer input[type=password],
.footer input[type=number],
.footer input[type=search],
.footer textarea,
.footer select,
#error-404 input[type=text],
#error-404 input[type=tel],
#error-404 input[type=email],
#error-404 input[type=password],
#error-404 input[type=number],
#error-404 input[type=search],
#error-404 textarea,
#error-404 select,
.product-filters input[type=text],
.product-filters input[type=tel],
.product-filters input[type=email],
.product-filters input[type=password],
.product-filters input[type=number],
.product-filters input[type=search],
.product-filters textarea,
.product-filters select,
.contacts-filters input[type=text],
.contacts-filters input[type=tel],
.contacts-filters input[type=email],
.contacts-filters input[type=password],
.contacts-filters input[type=number],
.contacts-filters input[type=search],
.contacts-filters textarea,
.contacts-filters select,
.news-filters input[type=text],
.news-filters input[type=tel],
.news-filters input[type=email],
.news-filters input[type=password],
.news-filters input[type=number],
.news-filters input[type=search],
.news-filters textarea,
.news-filters select,
.default-filters input[type=text],
.default-filters input[type=tel],
.default-filters input[type=email],
.default-filters input[type=password],
.default-filters input[type=number],
.default-filters input[type=search],
.default-filters textarea,
.default-filters select,
.faq-filters input[type=text],
.faq-filters input[type=tel],
.faq-filters input[type=email],
.faq-filters input[type=password],
.faq-filters input[type=number],
.faq-filters input[type=search],
.faq-filters textarea,
.faq-filters select {
  padding: 0.75rem 1rem;
  height: 48px;
  min-width: 200px;
  border-radius: 0.25rem;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  box-sizing: border-box;
  background: #F7FAFC;
  line-height: 1.2em;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  transition: all 0.25s ease;
  border: 1px solid #D5D9DE;
}
[class^=module_] input[type=text],
[class^=module_] input[type=tel],
[class^=module_] input[type=email],
[class^=module_] input[type=password],
[class^=module_] textarea,
[class^=module_] select, [class*=" module_"] input[type=text],
[class*=" module_"] input[type=tel],
[class*=" module_"] input[type=email],
[class*=" module_"] input[type=password],
[class*=" module_"] textarea,
[class*=" module_"] select,
#hero-section input[type=text],
#hero-section input[type=tel],
#hero-section input[type=email],
#hero-section input[type=password],
#hero-section textarea,
#hero-section select,
.footer input[type=text],
.footer input[type=tel],
.footer input[type=email],
.footer input[type=password],
.footer textarea,
.footer select,
#error-404 input[type=text],
#error-404 input[type=tel],
#error-404 input[type=email],
#error-404 input[type=password],
#error-404 textarea,
#error-404 select,
.product-filters input[type=text],
.product-filters input[type=tel],
.product-filters input[type=email],
.product-filters input[type=password],
.product-filters textarea,
.product-filters select,
.contacts-filters input[type=text],
.contacts-filters input[type=tel],
.contacts-filters input[type=email],
.contacts-filters input[type=password],
.contacts-filters textarea,
.contacts-filters select,
.news-filters input[type=text],
.news-filters input[type=tel],
.news-filters input[type=email],
.news-filters input[type=password],
.news-filters textarea,
.news-filters select,
.default-filters input[type=text],
.default-filters input[type=tel],
.default-filters input[type=email],
.default-filters input[type=password],
.default-filters textarea,
.default-filters select,
.faq-filters input[type=text],
.faq-filters input[type=tel],
.faq-filters input[type=email],
.faq-filters input[type=password],
.faq-filters textarea,
.faq-filters select {
  width: 100%;
}
[class^=module_] textarea, [class*=" module_"] textarea,
#hero-section textarea,
.footer textarea,
#error-404 textarea,
.product-filters textarea,
.contacts-filters textarea,
.news-filters textarea,
.default-filters textarea,
.faq-filters textarea {
  height: auto;
  max-height: 150px;
  resize: none;
}
[class^=module_] input[type=checkbox],
[class^=module_] input[type=radio], [class*=" module_"] input[type=checkbox],
[class*=" module_"] input[type=radio],
#hero-section input[type=checkbox],
#hero-section input[type=radio],
.footer input[type=checkbox],
.footer input[type=radio],
#error-404 input[type=checkbox],
#error-404 input[type=radio],
.product-filters input[type=checkbox],
.product-filters input[type=radio],
.contacts-filters input[type=checkbox],
.contacts-filters input[type=radio],
.news-filters input[type=checkbox],
.news-filters input[type=radio],
.default-filters input[type=checkbox],
.default-filters input[type=radio],
.faq-filters input[type=checkbox],
.faq-filters input[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  font: inherit;
  color: currentColor;
  background: #EAEEF1;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(94, 98, 110, 0.25);
  display: grid;
  place-content: center;
}
[class^=module_] input[type=checkbox]::before,
[class^=module_] input[type=radio]::before, [class*=" module_"] input[type=checkbox]::before,
[class*=" module_"] input[type=radio]::before,
#hero-section input[type=checkbox]::before,
#hero-section input[type=radio]::before,
.footer input[type=checkbox]::before,
.footer input[type=radio]::before,
#error-404 input[type=checkbox]::before,
#error-404 input[type=radio]::before,
.product-filters input[type=checkbox]::before,
.product-filters input[type=radio]::before,
.contacts-filters input[type=checkbox]::before,
.contacts-filters input[type=radio]::before,
.news-filters input[type=checkbox]::before,
.news-filters input[type=radio]::before,
.default-filters input[type=checkbox]::before,
.default-filters input[type=radio]::before,
.faq-filters input[type=checkbox]::before,
.faq-filters input[type=radio]::before {
  content: "";
  width: 22px;
  height: 22px;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 25px 25px #105A93;
}
[class^=module_] input[type=checkbox]:checked::before,
[class^=module_] input[type=radio]:checked::before, [class*=" module_"] input[type=checkbox]:checked::before,
[class*=" module_"] input[type=radio]:checked::before,
#hero-section input[type=checkbox]:checked::before,
#hero-section input[type=radio]:checked::before,
.footer input[type=checkbox]:checked::before,
.footer input[type=radio]:checked::before,
#error-404 input[type=checkbox]:checked::before,
#error-404 input[type=radio]:checked::before,
.product-filters input[type=checkbox]:checked::before,
.product-filters input[type=radio]:checked::before,
.contacts-filters input[type=checkbox]:checked::before,
.contacts-filters input[type=radio]:checked::before,
.news-filters input[type=checkbox]:checked::before,
.news-filters input[type=radio]:checked::before,
.default-filters input[type=checkbox]:checked::before,
.default-filters input[type=radio]:checked::before,
.faq-filters input[type=checkbox]:checked::before,
.faq-filters input[type=radio]:checked::before {
  transform: scale(1);
}
[class^=module_] input[type=checkbox], [class*=" module_"] input[type=checkbox],
#hero-section input[type=checkbox],
.footer input[type=checkbox],
#error-404 input[type=checkbox],
.product-filters input[type=checkbox],
.contacts-filters input[type=checkbox],
.news-filters input[type=checkbox],
.default-filters input[type=checkbox],
.faq-filters input[type=checkbox] {
  border-radius: 0.25rem;
}
[class^=module_] input[type=checkbox]::before, [class*=" module_"] input[type=checkbox]::before,
#hero-section input[type=checkbox]::before,
.footer input[type=checkbox]::before,
#error-404 input[type=checkbox]::before,
.product-filters input[type=checkbox]::before,
.contacts-filters input[type=checkbox]::before,
.news-filters input[type=checkbox]::before,
.default-filters input[type=checkbox]::before,
.faq-filters input[type=checkbox]::before {
  border-radius: calc(0.25rem - 1px);
}
[class^=module_] input[type=radio], [class*=" module_"] input[type=radio],
#hero-section input[type=radio],
.footer input[type=radio],
#error-404 input[type=radio],
.product-filters input[type=radio],
.contacts-filters input[type=radio],
.news-filters input[type=radio],
.default-filters input[type=radio],
.faq-filters input[type=radio] {
  border-radius: 100%;
}
[class^=module_] input[type=radio]::before, [class*=" module_"] input[type=radio]::before,
#hero-section input[type=radio]::before,
.footer input[type=radio]::before,
#error-404 input[type=radio]::before,
.product-filters input[type=radio]::before,
.contacts-filters input[type=radio]::before,
.news-filters input[type=radio]::before,
.default-filters input[type=radio]::before,
.faq-filters input[type=radio]::before {
  border-radius: 100%;
}

/* Search form */
form.search {
  gap: 0.75rem;
}
form.search .search-input {
  flex: 1;
}

/* Forminator */
.forminator-ui {
  /* ---------- Group headings ---------- */
}
.forminator-ui .forminator-repeater-label {
  margin-bottom: 0.75rem !important;
  font-size: clamp(1.25rem, 5vw, 1.5rem) !important;
  font-weight: 600;
  color: #16181D;
}
.forminator-ui .forminator-repeater-field {
  padding: 0 !important;
  box-shadow: none !important;
}
.forminator-ui {
  /* ---------- Inputs ---------- */
}
.forminator-ui .forminator-input,
.forminator-ui .forminator-select .select2-selection,
.forminator-ui .forminator-textarea {
  padding: 0.75rem 1rem !important;
  min-width: 200px !important;
  background-color: #F7FAFC !important;
  border-radius: 0.25rem !important;
  border-color: #D5D9DE !important;
  line-height: 1;
}
.forminator-ui .forminator-input,
.forminator-ui .forminator-select .select2-selection {
  height: 48px !important;
}
.forminator-ui .select2-selection__rendered {
  padding: 0 !important;
}
.forminator-ui .forminator-is_filled input,
.forminator-ui .forminator-is_filled textarea {
  box-shadow: inset 0 0 0 1px #105A93 !important;
}
.forminator-ui .forminator-is_checked input {
  border: 1px solid #105A93;
}
.forminator-ui .select2-selection__arrow {
  width: 22px !important;
  height: 22px !important;
  stroke-width: 1px !important;
}
.forminator-ui {
  /* ---------- Floating labels ---------- */
}
.forminator-ui .forminator-field {
  position: relative;
}
.forminator-ui .forminator-field .forminator-label {
  position: absolute;
  transition: all 0.25s ease;
  top: 10px;
  left: 0.625rem;
  background: #F7FAFC;
  padding: 0 0.375rem;
  font-size: 1.125rem !important;
  color: #1F2229 !important;
  font-weight: 400 !important;
}
.forminator-ui .forminator-field.forminator-is_active .forminator-label, .forminator-ui .forminator-field.forminator-is_filled .forminator-label {
  top: -0.75rem;
  font-size: 0.875rem !important;
  color: #5E626E !important;
}
.forminator-ui {
  /* ---------- Checkboxes, radios, consent ---------- */
}
.forminator-ui .forminator-field-checkbox > div[role=group] {
  padding: 0.75rem 0;
}
.forminator-ui .forminator-field-checkbox > div[role=group] .forminator-checkbox {
  display: flex;
  display: -ms-flexbox;
  gap: 1rem;
  -ms-align-items: center !important;
  align-items: center !important;
  width: 100%;
}
.forminator-ui .forminator-field-consent .forminator-label {
  display: none;
}
.forminator-ui .forminator-field-consent .forminator-checkbox__wrapper,
.forminator-ui label.forminator-radio {
  display: flex;
  display: -ms-flexbox;
  gap: 1rem;
  -ms-align-items: center !important;
  align-items: center !important;
  width: 100%;
  padding: 0.75rem 0;
}
.forminator-ui .forminator-field-consent .forminator-checkbox__wrapper .forminator-checkbox__label,
.forminator-ui label.forminator-radio .forminator-checkbox__label {
  margin-left: 0 !important;
}
.forminator-ui .forminator-field-consent .forminator-checkbox__wrapper .forminator-consent__label,
.forminator-ui label.forminator-radio .forminator-consent__label {
  font-size: 1rem;
}
.forminator-ui .forminator-field-consent .forminator-checkbox__wrapper .forminator-consent__label p,
.forminator-ui label.forminator-radio .forminator-consent__label p {
  line-height: 1.2;
  text-align: left;
}
.forminator-ui .forminator-field-consent .forminator-checkbox__wrapper a,
.forminator-ui label.forminator-radio a {
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 1px;
}
.forminator-ui .forminator-field-consent .forminator-checkbox__wrapper a:hover,
.forminator-ui label.forminator-radio a:hover {
  color: #5E626E;
}
.forminator-ui {
  /* ---------- Rows ---------- */
}
.forminator-ui .forminator-row:not(:last-child) {
  margin-bottom: 0.75rem;
}
.forminator-ui .forminator-ui .forminator-row:last-child {
  display: flex;
  justify-content: flex-end;
}
.forminator-ui {
  /* ---------- Messages ---------- */
}
.forminator-ui .forminator-error-message {
  font-size: 0.875rem;
  background: #105A93;
  display: block;
  margin-top: 0.375rem;
  padding: 2px 0.75rem;
}
.forminator-ui .forminator-response-message.forminator-success {
  margin-bottom: 1.5rem;
  background: #105A93;
  border-radius: 0.5rem;
  padding: 1.5rem;
}
.forminator-ui .forminator-response-message.forminator-accessible {
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.forminator-ui {
  /* ---------- Submit ---------- */
}
.forminator-ui .forminator-button.forminator-button-submit {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  padding: 0 1rem;
  gap: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  background: transparent;
  height: 48px;
  line-height: 1;
  text-align: center;
  font-size: 1.125rem;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  font-weight: 600;
  text-decoration: none;
  align-items: center;
  display: inline-flex;
  cursor: pointer;
}
.forminator-ui .forminator-button.forminator-button-submit::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: inherit;
  z-index: 1;
}
.forminator-ui .forminator-button.forminator-button-submit:hover {
  border-radius: 999px;
}
.forminator-ui .forminator-button.forminator-button-submit {
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  border-radius: 0.25rem !important;
  background: #AA0833;
  border-color: #AA0833;
  color: #F7FAFC;
  margin-right: 0 !important;
  margin-left: auto !important;
}
.forminator-ui .forminator-button.forminator-button-submit:hover {
  border-radius: 999px !important;
  box-shadow: none !important;
}
.forminator-ui .forminator-edit-module {
  display: none;
}

/* ---------- Select2 dropdown (renders outside the form) ---------- */
.forminator-select-dropdown {
  padding: 2px !important;
  border-radius: 0.25rem !important;
  border-width: 0 !important;
  border-color: transparent !important;
  gap: 2px !important;
}
.forminator-select-dropdown .select2-results {
  background-color: #F7FAFC;
  border: 1px solid #D5D9DE;
  border-radius: 0.25rem;
  overflow: hidden;
}
.forminator-select-dropdown .select2-results__option {
  height: 40px;
  padding: 0 0.75rem !important;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  border-radius: 0.25rem;
  font-size: 1.125rem !important;
  color: #1F2229;
}
.forminator-select-dropdown .select2-results__option:focus-visible {
  outline: 2px solid #5E9BC9;
  outline-offset: 1px;
  transition: none;
}
.forminator-select-dropdown .select2-results__option--highlighted {
  outline: none !important;
}
.forminator-select-dropdown .select2-results__options {
  padding: 4px;
}
.forminator-select-dropdown .select2-results__message {
  padding: 10px 0.75rem;
  color: #5E626E;
  font-size: 1rem;
}

/* ---------------- FacetWP (shared) ---------------- */
.facetwp-facet {
  margin-bottom: 0 !important;
}

.select-wrap {
  position: relative;
  display: block;
}
.select-wrap select {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: 100%;
  padding-right: 36px;
  background-image: none;
}
.select-wrap .icon {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  color: #1F2229;
  pointer-events: none;
}

button.facetwp-reset {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 1rem;
  background-color: #F7FAFC;
  cursor: pointer;
}
button.facetwp-reset:hover {
  color: #105A93;
}

/* Pagination — native and FacetWP share styling */
.facetwp-pager,
.pagination {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
.facetwp-pager .facetwp-page,
.facetwp-pager .page-numbers,
.pagination .facetwp-page,
.pagination .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0;
  border-radius: 0.25rem;
}
.facetwp-pager .facetwp-page.active, .facetwp-pager .facetwp-page.current,
.facetwp-pager .page-numbers.active,
.facetwp-pager .page-numbers.current,
.pagination .facetwp-page.active,
.pagination .facetwp-page.current,
.pagination .page-numbers.active,
.pagination .page-numbers.current {
  background-color: #105A93;
  color: #F7FAFC;
}
.facetwp-pager .facetwp-page.prev, .facetwp-pager .facetwp-page.next,
.facetwp-pager .page-numbers.prev,
.facetwp-pager .page-numbers.next,
.pagination .facetwp-page.prev,
.pagination .facetwp-page.next,
.pagination .page-numbers.prev,
.pagination .page-numbers.next {
  border: 1px solid #D5D9DE;
}
.facetwp-pager .facetwp-page.prev svg, .facetwp-pager .facetwp-page.next svg,
.facetwp-pager .page-numbers.prev svg,
.facetwp-pager .page-numbers.next svg,
.pagination .facetwp-page.prev svg,
.pagination .facetwp-page.next svg,
.pagination .page-numbers.prev svg,
.pagination .page-numbers.next svg {
  width: 20px;
  height: 20px;
}
.facetwp-pager .facetwp-page:hover:not(.active):not(.current),
.facetwp-pager .page-numbers:hover:not(.active):not(.current),
.pagination .facetwp-page:hover:not(.active):not(.current),
.pagination .page-numbers:hover:not(.active):not(.current) {
  border-radius: 999px;
}

/*-------------- Links & Buttons --------------*/
/* Accessibility & General */
button:focus-visible,
a:focus-visible {
  outline: 2px solid #5E9BC9;
  outline-offset: 1px;
  transition: none;
}

button, a {
  -webkit-tap-highlight-color: transparent;
}

a, a[href^=tel] {
  color: inherit;
}

/* Globals */
[class^=module_] a,
[class^=module_] button,
[class^=module_] input[type=submit],
[class*=" module_"] a,
[class*=" module_"] button,
[class*=" module_"] input[type=submit],
#hero-section a,
#hero-section button,
#hero-section input[type=submit],
.footer a,
.footer button,
.footer input[type=submit] {
  transition: background-color 0.3s ease, border-color 0.3s ease, border-radius 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  will-change: border-radius;
  text-decoration: none;
  font-family: "Quattrocento Sans", Arial, sans-serif;
}

[class^=module_],
[class*=" module_"] {
  /* Regular links */
}
[class^=module_] p > a,
[class^=module_] ul:not([class]) > li > a,
[class*=" module_"] p > a,
[class*=" module_"] ul:not([class]) > li > a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
[class^=module_] p > a:hover,
[class^=module_] ul:not([class]) > li > a:hover,
[class*=" module_"] p > a:hover,
[class*=" module_"] ul:not([class]) > li > a:hover {
  color: #105A93;
}
[class^=module_],
[class*=" module_"] {
  /* Buttons */
}
[class^=module_] input[type=submit],
[class*=" module_"] input[type=submit] {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  padding: 0 1rem;
  gap: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  background: transparent;
  height: 48px;
  line-height: 1;
  text-align: center;
  font-size: 1.125rem;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  font-weight: 600;
  text-decoration: none;
  align-items: center;
  display: inline-flex;
  cursor: pointer;
}
[class^=module_] input[type=submit]::after,
[class*=" module_"] input[type=submit]::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: inherit;
  z-index: 1;
}
[class^=module_] input[type=submit]:hover,
[class*=" module_"] input[type=submit]:hover {
  border-radius: 999px;
}
[class^=module_] input[type=submit],
[class*=" module_"] input[type=submit] {
  background: #105A93;
  border-color: #105A93;
  color: #F7FAFC;
}
[class^=module_] input[type=submit]:hover,
[class*=" module_"] input[type=submit]:hover {
  background: #0B3E65;
  border-color: #0B3E65;
  color: #F7FAFC;
}
[class^=module_] input::file-selector-button,
[class*=" module_"] input::file-selector-button {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  padding: 0 1rem;
  gap: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  background: transparent;
  height: 48px;
  line-height: 1;
  text-align: center;
  font-size: 1.125rem;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  font-weight: 600;
  text-decoration: none;
  align-items: center;
  display: inline-flex;
  cursor: pointer;
}
[class^=module_] input::file-selector-button::after,
[class*=" module_"] input::file-selector-button::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: inherit;
  z-index: 1;
}
[class^=module_] input::file-selector-button:hover,
[class*=" module_"] input::file-selector-button:hover {
  border-radius: 999px;
}
[class^=module_] input::file-selector-button,
[class*=" module_"] input::file-selector-button {
  background: transparent;
  border-color: #1F2229;
  color: #1F2229;
}
[class^=module_] input::file-selector-button:hover,
[class*=" module_"] input::file-selector-button:hover {
  background: #1F2229;
  border-color: #1F2229;
  color: #F7FAFC;
}

/* Buttons, custom */
.skip-link {
  position: absolute !important;
  transition: all 0.25s ease;
  top: -50px;
  left: 25px;
  z-index: 9999;
}
.skip-link:focus {
  top: 25px;
}

.openFullscreen {
  gap: 5px;
}

.twobtns {
  align-self: flex-end;
  padding-top: 1.5rem;
  gap: 0.75rem;
  height: auto;
}

button.btn,
a.btn,
.btn,
p > a.btn {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  padding: 0 1rem;
  gap: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  background: transparent;
  height: 48px;
  line-height: 1;
  text-align: center;
  font-size: 1.125rem;
  font-family: "Quattrocento Sans", Arial, sans-serif;
  font-weight: 600;
  text-decoration: none;
  align-items: center;
  display: inline-flex;
  cursor: pointer;
}
button.btn::after,
a.btn::after,
.btn::after,
p > a.btn::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: inherit;
  z-index: 1;
}
button.btn:hover,
a.btn:hover,
.btn:hover,
p > a.btn:hover {
  border-radius: 999px;
}
button.btn__icon,
a.btn__icon,
.btn__icon,
p > a.btn__icon {
  display: inline-flex;
  flex: 0 0 auto;
}
button.btn__icon .icon,
button.btn__icon svg,
a.btn__icon .icon,
a.btn__icon svg,
.btn__icon .icon,
.btn__icon svg,
p > a.btn__icon .icon,
p > a.btn__icon svg {
  width: 20px;
  height: 20px;
}

button.btn-icon,
a.btn-icon,
.btn-icon,
p > a.btn-icon {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  background: transparent;
  text-decoration: none;
  cursor: pointer;
}
button.btn-icon:hover,
a.btn-icon:hover,
.btn-icon:hover,
p > a.btn-icon:hover {
  border-radius: 999px;
}
button.btn-icon .icon,
button.btn-icon svg,
a.btn-icon .icon,
a.btn-icon svg,
.btn-icon .icon,
.btn-icon svg,
p > a.btn-icon .icon,
p > a.btn-icon svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

a.btn-primary,
.btn-primary,
button.btn-primary {
  background: #105A93;
  border-color: #105A93;
  color: #F7FAFC;
}
a.btn-primary:hover,
.btn-primary:hover,
button.btn-primary:hover {
  background: #0B3E65;
  border-color: #0B3E65;
  color: #F7FAFC;
}

a.btn-accent,
.btn-accent,
button.btn-accent {
  background: #AA0833;
  border-color: #AA0833;
  color: #F7FAFC;
}
a.btn-accent:hover,
.btn-accent:hover,
button.btn-accent:hover {
  background: #740423;
  border-color: #740423;
  color: #F7FAFC;
}

a.btn-secondary,
.btn-secondary,
button.btn-secondary,
p > a.btn {
  background: transparent;
  border-color: #5E626E;
  color: #16181D;
}
a.btn-secondary:hover,
.btn-secondary:hover,
button.btn-secondary:hover,
p > a.btn:hover {
  background: transparent;
  border: 1px solid #5E9BC9;
  color: #16181D;
}

/*-------- SPLIDE --------*/
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

:root {
  --slider-gap: 1rem;
  --slider-padding: clamp(40px, 5vw, 100px);
  --slider-breakpoint-phone: 520px;
  --slider-breakpoint-tablet: 840px;
  --slider-breakpoint-desktop: 1340px;
  --slider-breakpoint-wrap-m: 1280px;
  --slider-breakpoint-wrap-l: 1560px;
}

.module_slider,
.module_gallery {
  container-type: inline-size;
}

/* Left/Right navigation + Play/Pause button  */
.splide-navigations {
  margin: 0 1px;
  gap: 1rem;
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 99;
}
.splide-navigations .splide__arrows {
  display: flex;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}
.splide-navigations .splide__toggle {
  margin-bottom: 1.5rem;
}
.splide-navigations .splide__arrow,
.splide-navigations .splide__toggle {
  background-color: #F7FAFC;
  color: #5E626E;
}
.splide-navigations .splide__arrow--prev .icon-chevron-down,
.splide-navigations .splide__arrow--next .icon-chevron-up {
  transform: rotate(90deg);
}

.splide:not(.is-overflow) .splide-navigations {
  display: none;
}

/* Dots (Pagination) */
.module_slider .splide__pagination {
  list-style-type: none;
  margin: 0.75rem 0 0 0;
}
.module_slider .splide__pagination > li {
  padding: 0;
  margin: 0;
}
.module_slider .splide__pagination > li:not(:last-child) {
  margin: 0;
}
.module_slider .splide__pagination > li::before {
  display: none;
}
.module_slider .splide__pagination > li .splide__pagination__page {
  display: block;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  opacity: 1;
  position: relative;
  background: transparent;
}
.module_slider .splide__pagination > li .splide__pagination__page:hover {
  opacity: 0.5;
}
.module_slider .splide__pagination > li .splide__pagination__page::after {
  content: "";
  position: absolute;
  width: 44px;
  height: 8px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: #5E626E;
  z-index: 1;
}
.module_slider .splide__pagination > li .splide__pagination__page.is-active {
  width: 60px;
}
.module_slider .splide__pagination > li .splide__pagination__page.is-active::after {
  width: 56px;
  background: #105A93;
}

/* Dots & Navs position on overflow */
.wrap-overflow {
  /* Overflowing to the right */
}
.wrap-overflow.rightpos .overflowing .splide-navigations,
.wrap-overflow.rightpos .overflowing .splide__pagination {
  padding-right: var(--dist-to-edge);
}
.wrap-overflow {
  /* Overflowing to the left */
}
.wrap-overflow.leftpos .overflowing .splide-navigations,
.wrap-overflow.leftpos .overflowing .splide__pagination {
  padding-left: var(--dist-to-edge);
}

.module_slider .splide__slide > a {
  height: 100%;
}
.module_slider .splide__slide > a:focus, .module_slider .splide__slide > a:focus-visible, .module_slider .splide__slide > a:focus-within {
  outline-offset: -2px;
}
.module_slider .splide__slide > a .imgwrap {
  overflow: hidden;
}

.module_gallery .splide__slide {
  aspect-ratio: 1/1;
  overflow: hidden;
}
.module_gallery .splide__slide img {
  -o-object-fit: cover;
     object-fit: cover;
  min-height: 100%;
}
.module_gallery .splide-navigations {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
}
.module_gallery .gallery-thumbs {
  margin-top: 0.375rem;
  padding-bottom: 3px;
  gap: 0.375rem;
}
.module_gallery .gallery-thumbs .navimg {
  flex: 0 0 60px;
  height: 60px;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.3s ease;
  overflow: hidden;
}
.module_gallery .gallery-thumbs .navimg img {
  -o-object-fit: cover;
     object-fit: cover;
  min-height: 100%;
}
.module_gallery .gallery-thumbs .navimg:hover, .module_gallery .gallery-thumbs .navimg.is-active {
  opacity: 1;
}
.module_gallery .splide__list {
  max-height: 520px;
}
.module_gallery .gallery__img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 520px) {
  .module_gallery .gallery__img {
    aspect-ratio: 1;
  }
}

.splide__slide {
  display: flex;
}
.splide__slide .card {
  width: 100%;
}

/*--------------- Tables ---------------*/
table {
  border-collapse: collapse;
  line-height: 1;
}
table thead {
  border-bottom: 1px solid #5E626E;
}
table th {
  text-align: left;
  padding: 0.75rem;
}
table td {
  padding: 0.75rem;
}
table tbody tr:nth-child(even) {
  background: #F7FAFC;
}

/*--------------- Tabs ---------------*/
.module_tabs {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  align-items: stretch;
}
@media (max-width: 1340px) {
  .module_tabs {
    grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
  }
}
@media (max-width: 840px) {
  .module_tabs {
    grid-template-columns: 1fr;
  }
}

.tabs {
  background-color: #F7FAFC;
}
@media (max-width: 840px) {
  .tabs {
    flex-direction: row;
  }
}

.tab-item {
  background-color: #F7FAFC;
  border: 1px solid #EAEEF1;
  height: 100px;
  padding: 0 clamp(2rem, 5vw, 3.75rem);
  color: #5E626E;
  font-size: 1.25rem;
  text-align: left;
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.tab-item:hover {
  color: #1F2229;
}
.tab-item.current {
  background-color: #EAEEF1;
  color: #16181D;
  font-weight: bold;
  border-right: 1px solid transparent;
  margin-right: -1px;
  cursor: auto;
}
.tab-item:focus-visible {
  outline: 2px solid #5E9BC9;
  outline-offset: 1px;
  transition: none;
}
@media (max-width: 1340px) {
  .tab-item {
    height: 60px;
    padding: 0 clamp(0.75rem, 5vw, 1.5rem);
  }
}

.tab-contents {
  background-color: #EAEEF1;
  border: 1px solid #EAEEF1;
  padding: clamp(2rem, 5vw, 3.75rem);
}
@media (max-width: 1340px) {
  .tab-contents {
    padding: clamp(1rem, 5vw, 2rem);
  }
}

.tab-content[hidden] {
  display: none;
}

/*--------------- Toggles ---------------*/
.module_toggle .accordion-item {
  border: 1px solid #D5D9DE;
  border-bottom: 0 solid transparent;
}
.module_toggle .accordion-item:last-child {
  border-bottom: 1px solid #D5D9DE;
}
.module_toggle .accordion-item {
  background-color: transparent;
}
.module_toggle .accordion-item[open] {
  background-color: #F7FAFC;
}
.module_toggle .accordion-item summary {
  list-style: none;
}
.module_toggle .accordion-item summary::-webkit-details-marker {
  display: none;
}
.module_toggle .accordion-item summary:focus-visible {
  outline: 2px solid #5E9BC9;
  outline-offset: 1px;
  transition: none;
}
.module_toggle .accordion-item .accordion-header {
  margin: 0;
  gap: 0.375rem;
  padding: clamp(0.75rem, 5vw, 1.5rem) clamp(1rem, 5vw, 2rem);
  color: #1F2229;
  cursor: pointer;
}
.module_toggle .accordion-item .accordion-header .accordion-title {
  margin: 0;
}
.module_toggle .accordion-item .accordion-header svg.icon {
  width: 20px;
  height: 20px;
  color: #AA0833;
  transition: transform 0.3s ease;
  transform: rotate(45deg);
}
.module_toggle .accordion-item[open] .accordion-header svg.icon {
  transform: rotate(0deg);
}
.module_toggle .accordion-item .accordion-content {
  display: none;
  padding: clamp(1rem, 5vw, 2rem);
}

/* Toggle module — card style (FAQ archive columns), small changes */
.module_toggle--grid > div {
  gap: 1.5rem;
}
.module_toggle--grid .accordion-item {
  background-color: #EAEEF1;
  border: 1px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.module_toggle--grid .accordion-item:hover, .module_toggle--grid .accordion-item[open] {
  border-color: #105A93;
}
.module_toggle--grid .accordion-header {
  align-items: flex-start;
}

/* ---------- Search bar ---------- */
.module_search {
  position: absolute;
  inset: 0;
  z-index: 999;
  display: flex;
  align-items: center;
  background-color: #F7FAFC;
  opacity: 0;
  visibility: hidden;
  transition: all 0.25s ease;
}
.module_search > div {
  position: relative;
  width: 100%;
  height: 100%;
}

.header.is-search-open .module_search {
  opacity: 1;
  visibility: visible;
  transform: none;
}

/* ---------- Search results page ---------- */
.search-page {
  padding-top: 136px;
}
.search-page__group + .search-page__group {
  margin-top: 3.75rem;
}
.search-page__head {
  margin-bottom: 3.75rem;
}
.search-page__count, .search-page__group-count {
  margin: 0 0 1.5rem;
  color: #5E626E;
  font-size: 1.125rem;
}

/* ---------------- Base ---------------- */
.card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
  background-color: #EAEEF1;
  border: 1px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.card__arrow {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: #105A93;
  opacity: 0;
  transform: translate(-4px, 4px);
  transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.25s ease;
}
.card__arrow .icon {
  width: 20px;
  height: 20px;
}
.card__media {
  padding: 1.5rem 1.5rem 0;
}
.card__media--placeholder {
  padding: 3.75rem;
}
.card__media--placeholder .card__img {
  -o-object-fit: contain;
     object-fit: contain;
}
.card__img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: contain;
     object-fit: contain;
}
.card__body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  gap: 0.375rem;
  padding: 1.5rem 1.5rem 0;
}
.card__title {
  margin: 0;
  font-size: clamp(1.25rem, 5vw, 1.5rem);
  font-weight: 600;
}
.card__tag {
  color: #105A93;
  text-transform: uppercase;
}
.card__excerpt {
  margin: 0;
  color: #1F2229;
  line-height: 1.6;
}
.card__footer {
  display: flex;
  align-items: flex-end;
  margin-top: auto;
  padding: 1rem 1.5rem 1.5rem;
}
.card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin: 0;
  list-style: none;
  padding-top: 1rem;
}
.card__chip {
  padding: 4px 8px;
  background-color: #F7FAFC;
  border: 1px solid #EAEEF1;
  color: #1F2229;
  font-size: 1rem;
  line-height: 1;
  white-space: nowrap;
}

/* Hover only applies to cards that are links */
a.card:hover, a.card:focus-visible {
  z-index: 1;
  border-color: #105A93;
}
a.card:hover .card__arrow, a.card:focus-visible .card__arrow {
  opacity: 1;
  transform: translate(0, 0);
}

/* ---------------- Product ---------------- */
.card--product .card__media {
  padding: 2rem 2rem 0;
}
.card--product .card__img {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.card--product .card__body {
  padding: 1.5rem;
}

/* ---------------- Application ---------------- */
.card--application .card__media {
  padding: 1rem 1.5rem 0;
  overflow: hidden;
}
.card--application .card__img {
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}
.card--application .card__media--placeholder .card__img {
  -o-object-fit: contain;
     object-fit: contain;
}
.card--application .card__body {
  flex: 0 0 auto;
  padding: 1rem 1.5rem;
}
.card--application .card__title {
  margin: 0;
  font-size: 1.25rem;
  text-align: center;
}
.card--application:hover .card__arrow {
  background-color: #EAEEF1;
}

/* ---------------- News + learning article ---------------- */
.card--article {
  margin: -1px 0 0 -1px;
  border-color: #D5D9DE;
}
.card--article .card__img {
  -o-object-fit: cover;
     object-fit: cover;
}
.card--article .card__title {
  line-height: 1.4;
  padding-bottom: 0.375rem;
}
.card--article .card__date {
  color: #5E626E;
  text-transform: uppercase;
}
.card--article .card__media--placeholder .card__img {
  -o-object-fit: contain;
     object-fit: contain;
}
.card--article .card__arrow {
  position: static;
  transform: translateX(-4px);
}
.card--article:hover .card__arrow, .card--article:focus-visible .card__arrow {
  transform: translateX(0);
}

/* ---------------- Contact person ---------------- */
.card--contact {
  background-color: transparent;
  border-color: transparent;
}
.card--contact .card__media {
  padding: 0;
  overflow: hidden;
}
.card--contact .card__img {
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  filter: grayscale(1);
}
.card--contact .card__body {
  gap: 4px;
  padding: 1rem 0 0;
  flex: 0 1 auto;
}
.card--contact .card__tag {
  color: #5E626E;
  font-size: 1rem;
  letter-spacing: 0.05em;
}
.card--contact .card__title {
  font-size: clamp(1.25rem, 5vw, 1.5rem);
  font-weight: 600;
}
.card--contact .card__contact-links {
  display: flex;
  flex-direction: column;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}
.card--contact .card__contact-links a {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  color: #1F2229;
  font-size: 1rem;
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 3px;
}
.card--contact .card__contact-links a:hover, .card--contact .card__contact-links a:focus-visible {
  color: #105A93;
}
.card--contact .card__contact-links a .icon {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  color: #105A93;
}
@media (max-width: 840px) {
  .card--contact {
    grid-column: span 6 !important;
  }
}

/* ---------------- Default fallback ---------------- */
.card--default {
  margin: -1px 0 0 -1px;
  border-color: #D5D9DE;
}
.card--default .card__media {
  padding: 2rem 2rem 0;
}
.card--default .card__img {
  -o-object-fit: cover;
     object-fit: cover;
}
.card--default .card__body {
  padding: 1.5rem;
}
.card--default .card__media--placeholder .card__img {
  -o-object-fit: contain;
     object-fit: contain;
}

/* Color change for cards on bright bg */
.bright-bg .card {
  background-color: #F7FAFC;
}
.bright-bg .card__chip {
  background-color: #EAEEF1;
}
