*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul[role=list], ol[role=list] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

img, picture {
  max-width: 100%;
  height: auto;
}

iframe {
  display: block;
  width: 100%;
}

button, input, textarea, select {
  font-family: inherit;
}

button {
  cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
:root {
  --step--2: clamp(0.6944rem, 0.6566rem + 0.1593vw, 0.8rem);
  --step--1: clamp(0.8333rem, 0.7736rem + 0.2516vw, 1rem);
  --step-0: clamp(1rem, 0.9104rem + 0.3774vw, 1.25rem);
  --step-1: clamp(1.2rem, 1.07rem + 0.5472vw, 1.5625rem);
  --step-2: clamp(1.44rem, 1.256rem + 0.7745vw, 1.9531rem);
  --step-3: clamp(1.728rem, 1.4723rem + 1.0768vw, 2.4414rem);
  --step-4: clamp(2.0736rem, 1.7229rem + 1.4765vw, 3.0518rem);
  --step-5: clamp(2.4883rem, 2.0128rem + 2.0021vw, 3.8147rem);
  --step-6: clamp(2.986rem, 2.347rem + 2.6904vw, 4.7684rem);
  --step-7: clamp(3.5832rem, 2.7309rem + 3.5884vw, 5.9605rem);
  --step-8: clamp(4.2998rem, 3.1703rem + 4.7559vw, 7.4506rem);
  --letter-spacing: 0.02em;
}

body {
  font-size: var(--step-0);
  line-height: 1.4;
  font-weight: 400;
  font-family: "Castoro", Georgia, serif;
  font-optical-sizing: auto;
  font-style: normal;
}

h1, h2, h3, h4, h5, h6,
.step-6, .step-5, .step-4, .step-3, .step-2, .step-1 {
  font-weight: 400;
  line-height: 1.1;
}

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

.step-5 {
  font-size: var(--step-5);
}

h2, .step-4 {
  font-size: var(--step-4);
}

h3, .step-3 {
  font-size: var(--step-3);
}

h4, .step-2 {
  font-size: var(--step-2);
}

h5, .step-1 {
  font-size: var(--step-1);
}

h6, .step-0 {
  font-size: var(--step-0);
}

.step--1 {
  font-size: var(--step--1);
}

.step--2 {
  font-size: var(--step--2);
}

b, strong {
  font-weight: 700;
}

:root {
  --space-3xs: clamp(0.25rem, 0.2052rem + 0.1887vw, 0.375rem);
  --space-2xs: clamp(0.5rem, 0.4328rem + 0.283vw, 0.6875rem);
  --space-xs: clamp(0.75rem, 0.638rem + 0.4717vw, 1.0625rem);
  --space-s: clamp(1rem, 0.8656rem + 0.566vw, 1.375rem);
  --space-m: clamp(1.5rem, 1.2983rem + 0.8491vw, 2.0625rem);
  --space-l: clamp(2rem, 1.7311rem + 1.1321vw, 2.75rem);
  --space-xl: clamp(3rem, 2.5967rem + 1.6981vw, 4.125rem);
  --space-2xl: clamp(4rem, 3.4623rem + 2.2642vw, 5.5rem);
  --space-3xl: clamp(6rem, 5.1934rem + 3.3962vw, 8.25rem);
  --space-4xl: clamp(8rem, 6.9245rem + 4.5283vw, 11rem);
  --space-3xs-2xs: clamp(0.25rem, 0.0932rem + 0.6604vw, 0.6875rem);
  --space-2xs-xs: clamp(0.5rem, 0.2983rem + 0.8491vw, 1.0625rem);
  --space-xs-s: clamp(0.75rem, 0.5259rem + 0.9434vw, 1.375rem);
  --space-s-m: clamp(1rem, 0.6191rem + 1.6038vw, 2.0625rem);
  --space-m-l: clamp(1.5rem, 1.0519rem + 1.8868vw, 2.75rem);
  --space-l-xl: clamp(2rem, 1.2382rem + 3.2075vw, 4.125rem);
  --space-xl-2xl: clamp(3rem, 2.1038rem + 3.7736vw, 5.5rem);
  --space-2xl-3xl: clamp(4rem, 2.4764rem + 6.4151vw, 8.25rem);
  --space-3xl-4xl: clamp(6rem, 4.2075rem + 7.5472vw, 11rem);
  --prose-bottom-gap: var(--space-s);
  --prose-top-gap: var(--space-s);
}

.flow > * + * {
  margin-top: var(--flow-space, 1rem);
}

.flow-space-3xs > * + * {
  margin-top: var(--space-3xs);
}

.flow-space-2xs > * + * {
  margin-top: var(--space-2xs);
}

.flow-space-xs > * + * {
  margin-top: var(--space-xs);
}

.flow-space-s > * + * {
  margin-top: var(--space-s);
}

.flow-space-m > * + * {
  margin-top: var(--space-m);
}

.flow-space-l > * + * {
  margin-top: var(--space-l);
}

.flow-space-xl > * + * {
  margin-top: var(--space-xl);
}

.flow-space-xl-2xl > * + * {
  margin-top: var(--space-xl-2xl);
}

.flow-space-2xl > * + * {
  margin-top: var(--space-2xl);
}

.flow-space-2xl-3xl > * + * {
  margin-top: var(--space-2xl-3xl);
}

.flow-space-3xl > * + * {
  margin-top: var(--space-3xl);
}

.flow-space-4xl > * + * {
  margin-top: var(--space-4xl);
}

:root {
  --grid-gutter: var(--space-s-m);
  --grid-columns: 12;
  --grid-min-item-size: 18rem;
}

.container {
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: var(--grid-gutter);
}

.grid {
  display: -ms-grid;
  display: grid;
  gap: var(--grid-gutter);
}

.auto-grid {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(var(--grid-placement, auto-fill), minmax(var(--grid-min-item-size), 1fr));
  gap: var(--grid-gutter);
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--grid-gutter);
}
@media (max-width: 767px) {
  .d-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

[class*=col-] {
  min-width: 0;
}

.col-1 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(8.3333333333% - var(--grid-gutter) * 0.9166666667);
          flex: 0 0 calc(8.3333333333% - var(--grid-gutter) * 0.9166666667);
}

.col-2 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(16.6666666667% - var(--grid-gutter) * 0.8333333333);
          flex: 0 0 calc(16.6666666667% - var(--grid-gutter) * 0.8333333333);
}

.col-3 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(25% - var(--grid-gutter) * 0.75);
          flex: 0 0 calc(25% - var(--grid-gutter) * 0.75);
}

.col-4 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(33.3333333333% - var(--grid-gutter) * 0.6666666667);
          flex: 0 0 calc(33.3333333333% - var(--grid-gutter) * 0.6666666667);
}

.col-5 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(41.6666666667% - var(--grid-gutter) * 0.5833333333);
          flex: 0 0 calc(41.6666666667% - var(--grid-gutter) * 0.5833333333);
}

.col-6 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(50% - var(--grid-gutter) * 0.5);
          flex: 0 0 calc(50% - var(--grid-gutter) * 0.5);
}

.col-7 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(58.3333333333% - var(--grid-gutter) * 0.4166666667);
          flex: 0 0 calc(58.3333333333% - var(--grid-gutter) * 0.4166666667);
}

.col-8 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(66.6666666667% - var(--grid-gutter) * 0.3333333333);
          flex: 0 0 calc(66.6666666667% - var(--grid-gutter) * 0.3333333333);
}

.col-9 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(75% - var(--grid-gutter) * 0.25);
          flex: 0 0 calc(75% - var(--grid-gutter) * 0.25);
}

.col-10 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(83.3333333333% - var(--grid-gutter) * 0.1666666667);
          flex: 0 0 calc(83.3333333333% - var(--grid-gutter) * 0.1666666667);
}

.col-11 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(91.6666666667% - var(--grid-gutter) * 0.0833333333);
          flex: 0 0 calc(91.6666666667% - var(--grid-gutter) * 0.0833333333);
}

.col-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% - var(--grid-gutter) * 0);
          flex: 0 0 calc(100% - var(--grid-gutter) * 0);
}

:root {
  --blue-1: #B2DAF9;
  --blue-3: #1790EC;
  --blue-5: #073355;
  --blue-7: #041F33;
  --blue-9: #031422;
  --gold-3: #FFD56C;
  --gold-5: #FFBA0A;
  --gold-7: #9F7200;
  --gray-1: #F2F2F3;
  --gray-3: #E0E0E1;
  --gray-5: #807C83;
  --gray-7: #4D4A4F;
}

body {
  color: var(--black);
}

a {
  color: currentColor;
}

html {
  scroll-behavior: smooth;
}

.container ul:not([role=list]) li,
.container ol:not([role=list]) li {
  margin-top: var(--space-2xs);
}
.container p,
.container ul:not([role=list]),
.container ol:not([role=list]) {
  max-width: 70ch;
}

.prose > * {
  margin-bottom: var(--prose-bottom-gap);
  margin-top: var(--prose-top-gap);
}

.prose > *:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) + :is(h2, h3, h4, h5, h6) {
  --prose-top-gap: var(--space-m);
}

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

.cluster {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--gutter, var(--grid-gutter));
  -webkit-box-pack: var(--justify-content, flex-start);
      -ms-flex-pack: var(--justify-content, flex-start);
          justify-content: var(--justify-content, flex-start);
  -webkit-box-align: var(--align-items, center);
      -ms-flex-align: var(--align-items, center);
          align-items: var(--align-items, center);
}

.video video,
.video iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.alignright {
  float: right;
  margin-left: var(--space-m);
}

.alignleft {
  float: left;
  margin-right: var(--space-m);
}

.aligncenter {
  display: block;
  margin-inline: auto;
}

.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: var(--space-2xs) var(--space-m);
  text-decoration: none;
  line-height: 1.1;
}

header#page-header .container {
  background-color: var(--blue-5);
  padding-block: var(--space-2xs);
  padding-inline: var(--space-m-l);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid var(--gold-7);
}

ul#menu-main-header {
  padding: 0;
  margin: 0;
  list-style: none;
  max-width: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--space-l);
}
ul#menu-main-header li {
  margin: 0;
  position: relative;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  padding-block: var(--space-s);
}
ul#menu-main-header li a {
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  color: white;
}
ul#menu-main-header li a:hover {
  color: var(--gold-3);
}
ul#menu-main-header li.current-menu-item a {
  color: var(--gold-3);
}
ul#menu-main-header li ul {
  margin: 0;
  list-style: none;
  position: absolute;
  top: 100%;
  opacity: 0;
  visibility: hidden;
  left: calc(0px - var(--space-xs));
  background-color: var(--blue-7);
  padding-inline: var(--space-s);
  padding-block: var(--space-xs);
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  z-index: 10;
  -webkit-box-shadow: var(--shadow);
          box-shadow: var(--shadow);
}
ul#menu-main-header li ul li {
  margin-top: 0;
  padding-block: var(--space-3xs);
  letter-spacing: 0;
}
ul#menu-main-header li ul li a {
  text-transform: none;
  display: block;
  white-space: nowrap;
}
ul#menu-main-header li:hover ul {
  visibility: visible;
  opacity: 1;
}

#mobile-header {
  display: none;
}

@media (max-width: 991px) {
  #mobile-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  ul#menu-main-header {
    display: none;
    position: absolute;
    top: 100%;
    z-index: 1000;
    left: 0;
    right: 0;
    padding: var(--space-s);
    -webkit-box-shadow: var(--shadow);
            box-shadow: var(--shadow);
  }
  ul#menu-main-header li {
    padding-block: var(--space-2xs);
  }
  ul#menu-main-header li ul {
    position: relative;
    opacity: 1;
    visibility: visible;
    background-color: transparent;
    border: 0;
    padding-block: 0;
    padding-inline: var(--space-m);
  }
  #page-header.menu-open ul#menu-main-menu {
    display: block;
  }
}
#mobile-menu-button {
  position: absolute;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  padding: 0;
  color: white;
  border: 2px solid currentColor;
  background-color: transparent;
  cursor: pointer;
  height: 54px;
  width: 54px;
  border-radius: 50%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.33rem;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#mobile-menu-button span.line {
  display: block;
  width: 24px;
  height: 2px;
  background-color: currentColor;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  -webkit-transform-origin: center;
          transform-origin: center;
}

#page-header.menu-open #mobile-menu-button {
  color: currentColor;
}
#page-header.menu-open #mobile-menu-button span.line {
  position: absolute;
}
#page-header.menu-open #mobile-menu-button span.line.line-1 {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#page-header.menu-open #mobile-menu-button span.line.line-2 {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
#page-header.menu-open #mobile-menu-button span.line.line-3 {
  opacity: 0;
  -webkit-transform: scale(0);
          transform: scale(0);
}