@charset "UTF-8";
/* ==========================================================================
	Fonts
============================================================================= */
/*! modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize */
/*
Document
========
*/
/**
Use a better box model (opinionated).
*/
*,
::before,
::after {
  box-sizing: border-box;
}

html {
  /* Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) */
  font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  line-height: 1.15; /* 1. Correct the line height in all browsers. */
  -webkit-text-size-adjust: 100%; /* 2. Prevent adjustments of font size after orientation changes in iOS. */
  tab-size: 4; /* 3. Use a more readable tab size (opinionated). */
}

/*
Sections
========
*/
body {
  margin: 0; /* Remove the margin in all browsers. */
}

/*
Text-level semantics
====================
*/
/**
Add the correct font weight in Chrome and Safari.
*/
b,
strong {
  font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
Tabular data
============
*/
/**
Correct table border color inheritance in Chrome and Safari. (https://issues.chromium.org/issues/40615503, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/
table {
  border-color: currentcolor;
}

/*
Forms
=====
*/
/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/
legend {
  padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -0.125rem; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Interactive
===========
*/
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}

/* ==========================================================================
	Custom Properties
============================================================================= */
:root {
  --color-black: oklch(0.252 0 0) /* #222 */;
  --color-white: oklch(1 0 0) /* #fff */;
  --color-red: oklch(0.4627 0.185 15.71) /* #a70034 */;
  --color-dream-dragon-green: oklch(0.4293 0.093378 162.5571) /* #005f40 */;
  --color-green-connection: oklch(0.7117 0.1762 138.97) /* #62bb46 */;
  --color-spark-of-joy: oklch(0.8592 0.1844 114.07) /* #d0dd28 */;
  --color-plum-creative: oklch(0.4792 0.2202 328.36) /* #990099 */;
  --color-community-cobalt: oklch(0.2768 0.1526 263.73) /* #001871 */;
  --color-sky-blue-innovation: oklch(0.6423 0.115272 217.7986) /* #009dbb */;
  --color-pale-green: oklch(0.9971 0.0105 112.36) /* #fefff7 */;
  --color-alert-yellow: oklch(0.8631 0.1606 87.13) /* #FFCA3A */;
  --color-warning-red: oklch(0.5699 0.2092 29.55) /* #D72A1D */;
  --color-grey: oklch(0.7699 0 0) /* #b4b4b4 */;
  --color-text-grey: oklch(0.3547 0.0117 258.37) /* #383c42 */;
  --color-caption-grey: oklch(0.3188 0.0034 48.62) /* #343231 */;
  --font-sans: 'Jost', sans-serif;
  --font-sans-alt: 'IBM Plex Sans', sans-serif;
  --font-size-h1: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
  --font-size-h2: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
  --font-size-h3: clamp(1.5625rem, 1.25868rem + (0.9722222222vw), 2rem);
  --font-size-h4: clamp(1.125rem, 1.03819rem + (0.2777777778vw), 1.25rem);
  --font-size-h5: 1rem;
  --font-size-h6: 0.875rem;
  --font-size-intro-text: clamp(1.25rem, 1.07639rem + (0.5555555556vw), 1.5rem);
  --font-size-body-text: clamp(1rem, 0.82639rem + (0.5555555556vw), 1.25rem);
  --font-size-small-text: 0.9375rem;
  --font-size-label-text: 0.75rem;
  --font-size-caption-text: 0.75rem;
  --line-height-h1: 1.05;
  --line-height-h2: 1.05;
  --line-height-h3: 1.2;
  --line-height-h4: 1.2;
  --line-height-h5: 1.2;
  --line-height-h6: 1.2;
  --line-height-intro-text: 1.4;
  --line-height-body-text: 1.4;
  --line-height-small-text: 1.6;
  --line-height-label-text: 1.8333;
  --line-height-caption-text: 1.8333;
  --transition-base-speed: 0.25s;
  --transition-base-timing: ease;
  --transition-delay: 0.05s;
  --aspect-ratio-ultra-wide: calc(100 / 43);
  --aspect-ratio-wide: calc(16 / 9);
  --aspect-ratio-full: calc(4 / 3);
  --aspect-ratio-square: calc(1 / 1);
  --aspect-ratio-classic: calc(3 / 2);
  --aspect-ratio-portrait-full: calc(3 / 4);
  --aspect-ratio-portrait-classic: calc(2 / 3);
  --header-background-color: $pale_green;
  --header-color: var(--color-black);
  --layout-min-width: 20rem;
  --layout-max-width: 90rem;
  --layout-padding: clamp(1.25rem, 0.38194rem + (2.7777777778vw), 2.5rem);
  --layout-gap-sm: 1.25rem;
  --layout-gap-md: 1.25rem;
  --layout-gap-lg: 1.25rem;
  --layout-count-sm: 2;
  --layout-count-md: 6;
  --layout-count-lg: 12;
}

/* ==========================================================================
	Base Elements
============================================================================= */
* {
  margin: 0;
}

html {
  background-color: var(--color-white);
}
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

body {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  min-inline-size: var(--layout-min-width);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.fs-page-lock {
  overflow-y: hidden;
}

::selection {
  text-shadow: none;
  background-color: #ddd;
}

iframe {
  border: none;
}

menu {
  padding: 0;
}

:is(audio, canvas, iframe, img, svg, video) {
  vertical-align: middle;
}

:where(ul:not(.typography ul)),
:where(ol:not(.typography ol)) {
  list-style: "";
  margin-block: 0;
  padding-inline-start: 0;
}

img,
picture,
video,
canvas,
svg {
  block-size: auto;
  max-inline-size: 100%;
  display: block;
}

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

hr {
  block-size: 0.0625rem;
  background-color: #ccc;
  border: none;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

p {
  text-wrap: pretty;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

a {
  text-decoration: none;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color, border-color, color, text-decoration-color;
  transition-timing-function: var(--transition-base-timing);
}

strong {
  font-weight: 700;
}

button {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color, border-color, color, text-decoration-color;
  transition-timing-function: var(--transition-base-timing);
}

/* ==========================================================================
	Base Grid
============================================================================= */
:root {
  --fw-page-width: calc(100vw - var(--scrollbar-width, 0px));
  --fw-container-width: min(
  	var(--layout-max-width),
  	calc(var(--fw-page-width) - (var(--layout-padding) * 2))
  );
  --fw-container-gutter: calc((var(--fw-page-width) - var(--fw-container-width)) / 2);
  --fw-column-count: var(--layout-count-sm);
  --fw-column-gap: var(--layout-gap-sm);
  /* prettier-ignore */
  --fw-column-width: calc(
  	(var(--fw-container-width) - (var(--fw-column-gap) * (var(--fw-column-count) - 1))) / var(--fw-column-count)
  );
  --fw-columns-1: calc(
  	(var(--fw-column-width) * 1) + (var(--fw-column-gap) * 0)
  );
  --fw-offset-1: calc((var(--fw-column-width) * 1) + (var(--fw-column-gap) * 1));
  --fw-columns-2: calc(
  	(var(--fw-column-width) * 2) + (var(--fw-column-gap) * 1)
  );
  --fw-offset-2: calc((var(--fw-column-width) * 2) + (var(--fw-column-gap) * 2));
}
@media (min-width:46.25rem) {
  :root {
    --fw-column-count: var(--layout-count-md);
    --fw-column-gap: var(--layout-gap-md);
    --fw-columns-1: calc(
    	(var(--fw-column-width) * 1) + (var(--fw-column-gap) * 0)
    );
    --fw-offset-1: calc(
    	(var(--fw-column-width) * 1) + (var(--fw-column-gap) * 1)
    );
    --fw-columns-2: calc(
    	(var(--fw-column-width) * 2) + (var(--fw-column-gap) * 1)
    );
    --fw-offset-2: calc(
    	(var(--fw-column-width) * 2) + (var(--fw-column-gap) * 2)
    );
    --fw-columns-3: calc(
    	(var(--fw-column-width) * 3) + (var(--fw-column-gap) * 2)
    );
    --fw-offset-3: calc(
    	(var(--fw-column-width) * 3) + (var(--fw-column-gap) * 3)
    );
    --fw-columns-4: calc(
    	(var(--fw-column-width) * 4) + (var(--fw-column-gap) * 3)
    );
    --fw-offset-4: calc(
    	(var(--fw-column-width) * 4) + (var(--fw-column-gap) * 4)
    );
    --fw-columns-5: calc(
    	(var(--fw-column-width) * 5) + (var(--fw-column-gap) * 4)
    );
    --fw-offset-5: calc(
    	(var(--fw-column-width) * 5) + (var(--fw-column-gap) * 5)
    );
    --fw-columns-6: calc(
    	(var(--fw-column-width) * 6) + (var(--fw-column-gap) * 5)
    );
    --fw-offset-6: calc(
    	(var(--fw-column-width) * 6) + (var(--fw-column-gap) * 6)
    );
  }
}
@media (min-width:61.25rem) {
  :root {
    --fw-column-count: var(--layout-count-lg);
    --fw-column-gap: var(--layout-gap-lg);
    --fw-columns-1: calc(
    	(var(--fw-column-width) * 1) + (var(--fw-column-gap) * 0)
    );
    --fw-offset-1: calc(
    	(var(--fw-column-width) * 1) + (var(--fw-column-gap) * 1)
    );
    --fw-columns-2: calc(
    	(var(--fw-column-width) * 2) + (var(--fw-column-gap) * 1)
    );
    --fw-offset-2: calc(
    	(var(--fw-column-width) * 2) + (var(--fw-column-gap) * 2)
    );
    --fw-columns-3: calc(
    	(var(--fw-column-width) * 3) + (var(--fw-column-gap) * 2)
    );
    --fw-offset-3: calc(
    	(var(--fw-column-width) * 3) + (var(--fw-column-gap) * 3)
    );
    --fw-columns-4: calc(
    	(var(--fw-column-width) * 4) + (var(--fw-column-gap) * 3)
    );
    --fw-offset-4: calc(
    	(var(--fw-column-width) * 4) + (var(--fw-column-gap) * 4)
    );
    --fw-columns-5: calc(
    	(var(--fw-column-width) * 5) + (var(--fw-column-gap) * 4)
    );
    --fw-offset-5: calc(
    	(var(--fw-column-width) * 5) + (var(--fw-column-gap) * 5)
    );
    --fw-columns-6: calc(
    	(var(--fw-column-width) * 6) + (var(--fw-column-gap) * 5)
    );
    --fw-offset-6: calc(
    	(var(--fw-column-width) * 6) + (var(--fw-column-gap) * 6)
    );
    --fw-columns-7: calc(
    	(var(--fw-column-width) * 7) + (var(--fw-column-gap) * 6)
    );
    --fw-offset-7: calc(
    	(var(--fw-column-width) * 7) + (var(--fw-column-gap) * 7)
    );
    --fw-columns-8: calc(
    	(var(--fw-column-width) * 8) + (var(--fw-column-gap) * 7)
    );
    --fw-offset-8: calc(
    	(var(--fw-column-width) * 8) + (var(--fw-column-gap) * 8)
    );
    --fw-columns-9: calc(
    	(var(--fw-column-width) * 9) + (var(--fw-column-gap) * 8)
    );
    --fw-offset-9: calc(
    	(var(--fw-column-width) * 9) + (var(--fw-column-gap) * 9)
    );
    --fw-columns-10: calc(
    	(var(--fw-column-width) * 10) + (var(--fw-column-gap) * 9)
    );
    --fw-offset-10: calc(
    	(var(--fw-column-width) * 10) + (var(--fw-column-gap) * 10)
    );
    --fw-columns-11: calc(
    	(var(--fw-column-width) * 11) + (var(--fw-column-gap) * 10)
    );
    --fw-offset-11: calc(
    	(var(--fw-column-width) * 11) + (var(--fw-column-gap) * 11)
    );
    --fw-columns-12: calc(
    	(var(--fw-column-width) * 12) + (var(--fw-column-gap) * 11)
    );
    --fw-offset-12: calc(
    	(var(--fw-column-width) * 12) + (var(--fw-column-gap) * 12)
    );
  }
}

/* ==========================================================================
	Footer
============================================================================= */
.footer {
  background-color: #005f40;
  color: #fff;
}
@media print {
  .footer {
    padding-block: 0;
  }
}

.footer__primary {
  padding-block: 2.5rem;
}
@media (min-width:61.25rem) {
  .footer__primary {
    margin-block-end: 3.125rem;
  }
}
@media print {
  .footer__primary {
    margin-block-end: 0;
  }
}

.footer__primary-inner {
  display: grid;
  gap: 1.875rem;
  grid-template-columns: 100%;
}
@media (min-width:61.25rem) {
  .footer__primary-inner {
    align-items: start;
    gap: var(--fw-column-gap);
    grid-template-columns: repeat(3, var(--fw-columns-4));
  }
}

.footer__primary-group {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
  order: 1;
  justify-items: center;
}
@media (min-width:61.25rem) {
  .footer__primary-group {
    justify-items: unset;
  }
}

.footer__footer-nav {
  order: 3;
}
@media (min-width:61.25rem) {
  .footer__footer-nav {
    order: 2;
  }
}

.footer__contact-link {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  order: 2;
}
@media (min-width:61.25rem) {
  .footer__contact-link {
    order: 3;
    align-items: end;
  }
}

.footer__ribbon-inner {
  display: flex;
  flex-direction: column;
}
.footer__utility-nav {
  padding-block-end: 1.25rem;
}

.footer__copyright {
  padding-block: 1.25rem;
  border-block-start: 0.0625rem solid rgba(98, 187, 70, 0.4);
}
/* Copyright
============================================================================= */
.copyright {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.4;
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
}

/* ==========================================================================
	Header
============================================================================= */
.header {
  position: relative;
  z-index: 10;
  color: var(--header-color);
  background-color: var(--header-background-color);
}

.header__primary {
  padding-block: 1.25rem;
}
@media print {
  .header__primary {
    padding: 0;
  }
}

.header__primary-inner {
  display: grid;
  gap: 0.625rem 0;
  grid-template-areas: "logo menu menu controls";
  grid-template-columns: 1fr 1fr;
}
@media (min-width:61.25rem) {
  .header__primary-inner {
    grid-template-areas: "logo second" "logo menu";
    grid-template-columns: 1fr 5fr;
  }
}

.header__logo {
  grid-area: logo;
}

.header__ribbon {
  display: none;
}

.header__secondary-nav {
  grid-area: second;
  display: none;
}
@media (min-width:61.25rem) {
  .header__secondary-nav {
    display: block;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 1.25rem;
  }
}
@media print {
  .header__secondary-nav {
    display: none;
  }
}

.header__secondary-nav-ctas {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: end;
  gap: 0.75rem;
}

.header__ribbon-inner {
  display: flex;
  gap: 1.875rem;
  justify-content: flex-end;
}

.header__controls {
  display: flex;
  gap: 0.625rem;
}

@media (min-width:61.25rem) {
  .header__control--menu {
    display: none;
  }
}
:where(.no-js) .header__control--menu {
  display: none;
}

.header__control--search {
  display: none;
}
@media (min-width:61.25rem) {
  .header__control--search {
    display: block;
  }
}

@media (max-width:61.1875rem) {
  .header__search {
    display: none;
  }
}
@media (min-width:61.25rem) {
  .header__search {
    flex: 0 0 30%;
  }
}
@media print {
  .header__search {
    display: none;
  }
}

.button-custom {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  display: inline-block;
  color: #fff;
  background-color: #005f40;
  padding-block: 0.5rem;
  padding-inline: 0.625rem;
  border-radius: 3.125rem;
}
@media (min-width:61.25rem) {
  .button-custom {
    padding-block: 0.4375rem;
    padding-inline: 0.5rem;
  }
}

.button-custom__inner {
  display: flex;
  align-items: center;
}

.button-custom__label {
  visibility: hidden;
  width: 0;
  height: 0;
}

.button-custom__icon {
  display: flex;
  fill: #fff;
}

.header__main-nav {
  grid-area: menu;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

@media (max-width:61.1875rem) {
  .header__main-nav--inner {
    display: none;
  }
}
@media (min-width:61.25rem) {
  .header__main-nav--inner {
    margin-inline-start: auto;
  }
}

/* ==========================================================================
	Menu
============================================================================= */
.menu {
  block-size: 100%;
  inline-size: max(100%, var(--layout-min-width));
  position: fixed;
  inset-block-start: 0;
  inset-inline-end: 0;
  z-index: 400;
  background-color: #005f40;
  opacity: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
@media print {
  .menu {
    display: none;
  }
}
:where(.loaded) .menu {
  transition: opacity 0.35s;
}
@media (prefers-reduced-motion: reduce) {
  :where(.loaded) .menu {
    transition-duration: 0s;
  }
}
.menu.state-swap-active, :where(.no-js) .menu {
  opacity: 1;
}
:where(.no-js) .menu {
  position: relative;
}

.menu__inner {
  display: grid;
  grid-template-columns: 100%;
  height: 100%;
}
@media (min-width:61.25rem) {
  .menu__inner {
    height: auto;
  }
}

.menu__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.menu__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.menu__primary {
  margin-block-end: 1.875rem;
}

.menu__primary-inner {
  display: grid;
  gap: 1.875rem;
  grid-template-columns: 100%;
}

.menu__ribbon-inner {
  display: grid;
  gap: 1.875rem;
  grid-template-columns: 100%;
}

.menu__secondary-nav-ctas {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 0.625rem;
}

/* Menu Close
============================================================================= */
.menu__close {
  grid-area: 1/1;
}
:where(.no-js) .menu__close {
  display: none;
}

.menu__close-inner {
  min-block-size: 6.25rem;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.menu__close-button {
  padding-inline-end: 0.25rem;
}
.menu__close-button .button-toggle {
  padding: 0.375rem;
}
.menu__close-button .button-toggle__label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}
.menu__close-button .button-toggle__icon .icon--close {
  inline-size: 1.5rem;
  padding: 0.375rem;
  fill: #fff;
}

/* ==========================================================================
	Page
============================================================================= */
.page-wrapper {
  min-block-size: 100vh;
  inline-size: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: [skipnav] auto [alert] auto [header] auto [main] minmax(0, 1fr) [footer] auto;
}
@media print {
  .page-wrapper {
    min-block-size: auto;
    display: block;
  }
}

.page {
  display: flex;
  flex-direction: column;
}

.full-width-components {
  flex: 1;
}

.page-lead-in {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  color: var(--color-dream-dragon-green);
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.page-lead-in__inner {
  margin-inline: auto;
}
@media (min-width:46.25rem) {
  .page-lead-in__inner {
    max-width: 66%;
  }
}

/* ==========================================================================
	Form Builder
============================================================================= */
.form_builder {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  --indicator-background-color: transparent;
  --indicator-border-color: var(--color-black);
  --indicator-color: var(--color-white);
  --indicator-shadow-color: var(--color-black);
  --indicator-selected-background-color: var(--color-black);
  --indicator-selected-border-color: var(--color-black);
  --indicator-selected-color: var(--color-white);
  --indicator-radio-background-color: var(--color-white);
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}
.form_builder :where(h2) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}
.form_builder :where(fieldset) {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  border: 0;
  margin-block: 2.5rem;
  padding: 0;
}
.form_builder :where(fieldset:has(.form_builder_date_2)) {
  flex-direction: row;
  column-gap: 1.25rem;
}
.form_builder :where(fieldset:has(.form_builder_date_2)) legend {
  flex: 1;
}
.form_builder :where(fieldset:has(.form_builder_split)) {
  flex-direction: row;
  flex-wrap: wrap;
}
.form_builder :where(fieldset > label) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  text-transform: capitalize;
}
.form_builder :where(legend) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  text-transform: capitalize;
  display: block;
  margin-block-end: 0.625rem;
}
.form_builder :where(input:not([type=submit]):not([type=file])),
.form_builder :where(textarea) {
  border: 0.0625rem solid var(--input-border-color, var(--color-dream-dragon-green));
  border-radius: 0.3125rem;
  font-size: 1.25rem;
  letter-spacing: -0.011em;
  padding-block: 0.5rem;
  padding-inline: 0.625rem;
}
@media (min-width:46.25rem) {
  .form_builder :where(input:not([type=submit]):not([type=file])),
  .form_builder :where(textarea) {
    padding-block: 0.625rem;
    padding-inline: 0.9375rem;
  }
}
.form_builder :where(input:not([type=submit]):not([type=file]))::placeholder,
.form_builder :where(textarea)::placeholder {
  color: var(--input-placeholder-color, oklch(from var(--color-text-grey) l c h/0.75));
}
.form_builder :where(input:not([type=submit]):not([type=file])),
.form_builder :where(textarea) {
  inline-size: 100%;
}
.form_builder :where(textarea) {
  min-block-size: 13.75rem;
  resize: vertical;
}

/* Custom Elements
============================================================================= */
.form_builder_sublabel {
  display: block;
}

@media (min-width:31.25rem) {
  .form_builder_wrap {
    display: flex;
  }
}
.form_builder_wrap:has(.form_builder_firstname), .form_builder_wrap:has(.form_builder_phone_3) {
  gap: 1.25rem;
}

.form_builder_firstname,
.form_builder_lastname {
  flex: 1;
}

.form_builder_full {
  flex: 0 0 100%;
}

.form_builder_split {
  flex: 0 0 calc(50% - 0.625rem);
}

.form_builder_date_2,
.form_builder_phone_3 {
  inline-size: 5rem;
}

.form_builder_date_4,
.form_builder_phone_4 {
  inline-size: 6.875rem;
}

/* Checkboxes & Radios
============================================================================= */
.form_builder_checkbox {
  position: relative;
}
.form_builder_checkbox input {
  position: absolute;
  z-index: -2;
  opacity: 0;
}
.form_builder_checkbox input:checked ~ [class$=indicator] {
  color: var(--indicator-selected-color);
  background-color: var(--indicator-selected-background-color);
  border-color: var(--indicator-selected-border-color);
}
.form_builder_checkbox input:checked ~ [class$=indicator]::before {
  scale: 1;
}
.form_builder_checkbox input:focus ~ [class$=indicator] {
  box-shadow: 0 0 0.1875rem 0.0625rem var(--indicator-focus-shadow-color);
}
.form_builder_checkbox [class$=indicator] {
  position: absolute;
  inset-block-start: 50%;
  translate: 0 -50% 0;
  display: block;
  color: var(--indicator-color);
  text-align: center;
  background-color: var(--indicator-background-color);
  border: 0.0625rem solid var(--indicator-border-color);
  pointer-events: none;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color, border, color;
  -webkit-user-select: none;
          user-select: none;
}
.form_builder_checkbox [class$=indicator]::before {
  position: absolute;
  inset: 0;
  display: block;
  margin: auto;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color, scale;
}
.form_builder_checkbox input:checked ~ [class$=indicator]::before {
  scale: 1;
}
.form_builder_checkbox [class$=indicator] {
  inline-size: 1.25rem;
  aspect-ratio: 1;
  border-radius: 0.125rem;
}
.form_builder_checkbox [class$=indicator]::before {
  inset-block-start: 0.1875rem;
  scale: 0;
  font-size: 0.875rem;
  line-height: 1;
  content: "✓";
}
.form_builder_checkbox {
  display: flex;
  align-items: center;
}

.form_builder_radio {
  position: relative;
}
.form_builder_radio input {
  position: absolute;
  z-index: -2;
  opacity: 0;
}
.form_builder_radio input:checked ~ [class$=indicator] {
  color: var(--indicator-selected-color);
  background-color: var(--indicator-selected-background-color);
  border-color: var(--indicator-selected-border-color);
}
.form_builder_radio input:checked ~ [class$=indicator]::before {
  scale: 1;
}
.form_builder_radio input:focus ~ [class$=indicator] {
  box-shadow: 0 0 0.1875rem 0.0625rem var(--indicator-focus-shadow-color);
}
.form_builder_radio [class$=indicator] {
  position: absolute;
  inset-block-start: 50%;
  translate: 0 -50% 0;
  display: block;
  color: var(--indicator-color);
  text-align: center;
  background-color: var(--indicator-background-color);
  border: 0.0625rem solid var(--indicator-border-color);
  pointer-events: none;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color, border, color;
  -webkit-user-select: none;
          user-select: none;
}
.form_builder_radio [class$=indicator]::before {
  position: absolute;
  inset: 0;
  display: block;
  margin: auto;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color, scale;
}
.form_builder_radio input:checked ~ [class$=indicator]::before {
  opacity: 1;
}
.form_builder_radio [class$=indicator] {
  inline-size: 1rem;
  aspect-ratio: 1;
  border-radius: 50%;
}
.form_builder_radio [class$=indicator]::before {
  inline-size: 0.375rem;
  aspect-ratio: 1;
  background-color: var(--indicator-radio-background-color);
  border-radius: inherit;
  content: "";
  opacity: 0;
}

.form_builder_for_checkbox {
  display: inline-block;
  cursor: pointer;
  padding-inline-start: 1.875rem;
}

.form_builder_checkbox,
.form_builder_radio {
  margin-block-end: 0.3125rem;
}
.form_builder_checkbox:last-child,
.form_builder_radio:last-child {
  margin-block-end: 0;
}

/* Selects
============================================================================= */
.form_builder_select {
  position: relative;
  display: inline-block;
}
.form_builder_select select {
  inline-size: 100%;
  display: inline-block;
  color: inherit;
  line-height: normal;
  appearance: none;
  background: none;
  border: 0.0625rem solid var(--input-border-color, var(--color-dream-dragon-green));
  border-radius: 0.3125rem;
  cursor: pointer;
  color: var(--input-placeholder-color, oklch(from var(--color-text-grey) l c h/0.75));
  font-size: 1.25rem;
  letter-spacing: -0.011em;
  margin: 0;
  outline: 0;
  padding-block: 0.5rem;
  padding-inline: 0.625rem 2rem;
}
@media (min-width:46.25rem) {
  .form_builder_select select {
    padding-block: 0.625rem;
    padding-inline: 0.9375rem 2.625rem;
  }
}
.form_builder_select {
  --focus-ring-color: rgba(var(--color-black), 0.25);
  inline-size: 100%;
  max-inline-size: 18.75rem;
}

/* Submit
============================================================================= */
.form_builder_submit {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  inline-size: max-content;
  display: block;
  color: var(--color-white);
  font-weight: 700;
  background-color: var(--color-black);
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
}

/* Errors
============================================================================= */
.form_builder_errors {
  color: var(--color-red);
}

.form_builder_captcha_error {
  color: var(--color-red);
}

.form_builder_error_list_entry :where(a) {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-green-connection);
  text-decoration-thickness: 0.0625rem;
}
.form_builder_error_list_entry :where(a):focus-visible {
  color: var(--color-dream-dragon-green);
  text-decoration-color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .form_builder_error_list_entry :where(a):hover {
    color: var(--color-dream-dragon-green);
    text-decoration-color: var(--color-dream-dragon-green);
  }
}

/* ==========================================================================
	Gravity Forms
============================================================================= */
.page .gform_legacy_markup_wrapper .gf_progressbar_percentage.percentbar_blue {
  background-color: var(--color-green-connection);
}
.page .gform_wrapper {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}
.page .gform_wrapper form h3.gform_title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}
.page .gform_wrapper form label.gfield_label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  text-transform: capitalize;
  font-weight: normal;
}
.page .gform_wrapper form .gfield_description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}
.page .gform_wrapper form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.page .gform_wrapper form textarea {
  border: 0.0625rem solid var(--input-border-color, var(--color-dream-dragon-green));
  border-radius: 0.3125rem;
  font-size: 1.25rem;
  letter-spacing: -0.011em;
  padding-block: 0.5rem;
  padding-inline: 0.625rem;
}
@media (min-width:46.25rem) {
  .page .gform_wrapper form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
  .page .gform_wrapper form textarea {
    padding-block: 0.625rem;
    padding-inline: 0.9375rem;
  }
}
.page .gform_wrapper form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file])::placeholder,
.page .gform_wrapper form textarea::placeholder {
  color: var(--input-placeholder-color, oklch(from var(--color-text-grey) l c h/0.75));
}
.page .gform_wrapper form select {
  border: 0.0625rem solid var(--input-border-color, var(--color-dream-dragon-green));
  border-radius: 0.3125rem;
  font-size: 1.25rem;
  letter-spacing: -0.011em;
  padding-block: 0.5rem;
  padding-inline: 0.625rem;
}
@media (min-width:46.25rem) {
  .page .gform_wrapper form select {
    padding-block: 0.625rem;
    padding-inline: 0.9375rem;
  }
}
.page .gform_wrapper form select::placeholder {
  color: var(--input-placeholder-color, oklch(from var(--color-text-grey) l c h/0.75));
}
.page .gform_wrapper form select {
  appearance: none;
  background-color: var(--color-white);
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='19' viewBox='0 0 12 19' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%2362bb46' d='M5.588 16.3L9.463 12.425C9.663 12.225 9.897 12.125 10.163 12.125C10.43 12.125 10.663 12.225 10.863 12.425C11.063 12.625 11.163 12.863 11.163 13.138C11.163 13.413 11.063 13.65 10.863 13.85L7.013 17.725C6.63 18.108 6.155 18.3 5.588 18.3C5.021 18.3 4.546 18.108 4.163 17.725L0.288 13.85C0.088 13.65-0.008 13.413 0.001 13.138C0.009 12.863 0.113 12.625 0.313 12.425C0.513 12.225 0.751 12.125 1.026 12.125C1.301 12.125 1.538 12.225 1.738 12.425L5.588 16.3ZM5.588 2L1.738 5.85C1.538 6.05 1.305 6.146 1.038 6.138C0.771 6.129 0.538 6.033 0.338 5.85C0.138 5.65 0.034 5.413 0.026 5.138C0.017 4.863 0.113 4.625 0.313 4.425L4.163 0.575C4.546 0.192 5.021 0 5.588 0C6.155 0 6.63 0.192 7.013 0.575L10.863 4.425C11.063 4.625 11.159 4.863 11.151 5.138C11.142 5.413 11.038 5.65 10.838 5.85C10.638 6.033 10.405 6.129 10.138 6.138C9.871 6.146 9.638 6.05 9.438 5.85L5.588 2Z'/%3E%3C/svg%3E");
  background-position: right 0.9375rem center;
  background-repeat: no-repeat;
  background-size: 0.75rem 1.1875rem;
  cursor: pointer;
  padding-inline-end: 2rem;
}
@media (min-width:46.25rem) {
  .page .gform_wrapper form select {
    background-position: right 0.9375rem center;
    padding-inline-end: 2.625rem;
  }
}
.page .gform_wrapper form .gfield_checkbox,
.page .gform_wrapper form .gfield_radio {
  overflow: visible !important;
}
.page .gform_wrapper form .gfield_checkbox li,
.page .gform_wrapper form .gfield_radio li {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  overflow: visible !important;
  padding-block: 0.25rem;
}
.page .gform_wrapper form .gfield_checkbox li label,
.page .gform_wrapper form .gfield_radio li label {
  cursor: pointer;
}
.page .gform_wrapper form input[type=checkbox] {
  inline-size: 1.375rem;
  min-inline-size: 1.375rem;
  block-size: 1.375rem;
  flex-shrink: 0;
  appearance: none;
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-black);
  border-radius: 0.1875rem;
  cursor: pointer;
  margin: 0 !important;
}
.page .gform_wrapper form input[type=checkbox]:checked {
  background-color: var(--color-green-connection);
  border-color: var(--color-black);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='11' viewBox='0 0 14 11'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M1.5 5.5L5 9L12.5 1.5'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.875rem 0.6875rem;
}
.page .gform_wrapper form input[type=checkbox]:focus-visible {
  box-shadow: 0 0 0 0.125rem var(--color-white), 0 0 0 0.25rem var(--color-green-connection);
}
.page .gform_wrapper form input[type=radio] {
  inline-size: 1.375rem;
  min-inline-size: 1.375rem;
  block-size: 1.375rem;
  flex-shrink: 0;
  appearance: none;
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-black);
  border-radius: 50%;
  cursor: pointer;
  margin: 0 !important;
}
.page .gform_wrapper form input[type=radio]:checked {
  background-color: var(--color-green-connection);
  border-color: var(--color-black);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='5' fill='%23000'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.625rem;
}
.page .gform_wrapper form input[type=radio]:focus-visible {
  box-shadow: 0 0 0 0.125rem var(--color-white), 0 0 0 0.25rem var(--color-green-connection);
}
.page .gform_wrapper form .ginput_container_consent input[type=checkbox] {
  position: relative;
  inset-block-start: -0.125rem;
  margin-inline-end: 0.5rem;
}
.page .gform_wrapper form .gform_footer input.button,
.page .gform_wrapper form .gform_footer input[type=submit],
.page .gform_wrapper form .gform_page_footer input.button,
.page .gform_wrapper form .gform_page_footer input[type=submit] {
  background-color: var(--submit-background-color, var(--color-spark-of-joy));
  border-radius: 0.3125rem;
  color: var(--submit-color, var(--color-black));
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2;
  padding-block: 0.75rem;
  padding-inline: 0.9375rem;
}
.page .gform_wrapper form .gform_footer input.button :where(.icon--arrow-right-alt),
.page .gform_wrapper form .gform_footer input[type=submit] :where(.icon--arrow-right-alt),
.page .gform_wrapper form .gform_page_footer input.button :where(.icon--arrow-right-alt),
.page .gform_wrapper form .gform_page_footer input[type=submit] :where(.icon--arrow-right-alt) {
  transition: translate var(--transition-base-speed);
  translate: 0 0 0;
}
.page .gform_wrapper form .gform_footer input.button:focus-visible,
.page .gform_wrapper form .gform_footer input[type=submit]:focus-visible,
.page .gform_wrapper form .gform_page_footer input.button:focus-visible,
.page .gform_wrapper form .gform_page_footer input[type=submit]:focus-visible {
  background-color: var(--submit-hover-background-color, var(--color-black));
  color: var(--submit-hover-color, var(--color-spark-of-joy));
}
.page .gform_wrapper form .gform_footer input.button:focus-visible :where(.icon--arrow-right-alt),
.page .gform_wrapper form .gform_footer input[type=submit]:focus-visible :where(.icon--arrow-right-alt),
.page .gform_wrapper form .gform_page_footer input.button:focus-visible :where(.icon--arrow-right-alt),
.page .gform_wrapper form .gform_page_footer input[type=submit]:focus-visible :where(.icon--arrow-right-alt) {
  translate: 0.375rem 0 0;
}
@media (hover: hover) {
  .page .gform_wrapper form .gform_footer input.button:hover,
  .page .gform_wrapper form .gform_footer input[type=submit]:hover,
  .page .gform_wrapper form .gform_page_footer input.button:hover,
  .page .gform_wrapper form .gform_page_footer input[type=submit]:hover {
    background-color: var(--submit-hover-background-color, var(--color-black));
    color: var(--submit-hover-color, var(--color-spark-of-joy));
  }
  .page .gform_wrapper form .gform_footer input.button:hover :where(.icon--arrow-right-alt),
  .page .gform_wrapper form .gform_footer input[type=submit]:hover :where(.icon--arrow-right-alt),
  .page .gform_wrapper form .gform_page_footer input.button:hover :where(.icon--arrow-right-alt),
  .page .gform_wrapper form .gform_page_footer input[type=submit]:hover :where(.icon--arrow-right-alt) {
    translate: 0.375rem 0 0;
  }
}
.page .gform_wrapper form .gform_footer input.button,
.page .gform_wrapper form .gform_footer input[type=submit],
.page .gform_wrapper form .gform_page_footer input.button,
.page .gform_wrapper form .gform_page_footer input[type=submit] {
  border-width: 0;
  transition: background-color var(--transition-base-speed) var(--transition-base-timing), color var(--transition-base-speed) var(--transition-base-timing);
}
.page .gform_wrapper form .gfield_error .gfield_label {
  color: var(--color-warning-red);
}
.page .gform_wrapper form .gfield_required {
  color: var(--color-warning-red);
}
.page .gform_wrapper form .gform_body .gfield.gfield_error {
  background-color: transparent;
  border-color: var(--color-warning-red);
  border-width: 0;
  padding-block: 0;
}
.page .gform_wrapper form li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.page .gform_wrapper form li.gfield_error textarea,
.page .gform_wrapper form li.gfield_error select {
  border-color: var(--color-warning-red);
  border-width: 0.125rem;
}
.page .gform_wrapper form .validation_error {
  color: var(--color-warning-red);
  border-color: var(--color-warning-red);
}
.page .gform_wrapper form .validation_message {
  color: var(--color-warning-red);
}
.page .gform_wrapper div.validation_error {
  border-width: 0;
  color: var(--color-warning-red) !important;
  padding: 0;
}
.page .gform_wrapper div.validation_error > h2 {
  color: var(--color-warning-red) !important;
}

/* ==========================================================================
    Swiper
============================================================================= */
/**
 * Swiper 12.1.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 18, 2026
 */
:root {
  --swiper-theme-color:#007aff;
}

:host {
  display: block;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}

.swiper {
  display: block;
  list-style: none;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  padding: 0;
  position: relative;
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  box-sizing: initial;
  display: flex;
  height: 100%;
  position: relative;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  width: 100%;
  z-index: 1;
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
  transform: translateZ(0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  display: block;
  flex-shrink: 0;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 75rem;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 75rem;
  .swiper-cube-shadow, .swiper-slide {
    transform-style: preserve-3d;
  }
}

.swiper-css-mode {
  > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    &::-webkit-scrollbar {
      display: none;
    }
  }
  > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  &.swiper-horizontal {
    > .swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-slides-offset-before);
      scroll-margin-inline-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-inline-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-vertical {
    > .swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-slides-offset-before);
      scroll-margin-block-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-block-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-free-mode {
    > .swiper-wrapper {
      scroll-snap-type: none;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: none;
    }
  }
  &.swiper-centered {
    > .swiper-wrapper:before {
      content: "";
      flex-shrink: 0;
      order: 9999;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }
  &.swiper-centered.swiper-horizontal {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper:before {
      height: 100%;
      min-height: 0.0625rem;
      width: var(--swiper-centered-offset-after);
    }
  }
  &.swiper-centered.swiper-vertical {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper:before {
      height: var(--swiper-centered-offset-after);
      min-width: 0.0625rem;
      width: 100%;
    }
  }
}

.swiper-3d {
  .swiper-slide-shadow, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left, .swiper-slide-shadow-right, .swiper-slide-shadow-top {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10;
  }
  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.1490196078);
  }
  .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
  }
}

.swiper-lazy-preloader {
  border: 0.25rem solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top: 0.25rem solid rgba(0, 0, 0, 0);
  box-sizing: border-box;
  height: 2.625rem;
  left: 50%;
  margin-left: -1.3125rem;
  margin-top: -1.3125rem;
  position: absolute;
  top: 50%;
  transform-origin: 50%;
  width: 2.625rem;
  z-index: 10;
}

.swiper-watch-progress .swiper-slide-visible, .swiper:not(.swiper-watch-progress) {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s linear infinite;
  }
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode {
  .swiper-wrapper:after {
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
  }
}

.swiper-virtual.swiper-css-mode.swiper-horizontal {
  .swiper-wrapper:after {
    height: 0.0625rem;
    width: var(--swiper-virtual-size);
  }
}

.swiper-virtual.swiper-css-mode.swiper-vertical {
  .swiper-wrapper:after {
    height: var(--swiper-virtual-size);
    width: 0.0625rem;
  }
}

:root {
  --swiper-navigation-size:2.75rem;
}

.swiper-button-next, .swiper-button-prev {
  align-items: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  cursor: pointer;
  display: flex;
  height: var(--swiper-navigation-size);
  justify-content: center;
  position: absolute;
  width: var(--swiper-navigation-size);
  z-index: 10;
  &.swiper-button-disabled {
    cursor: auto;
    opacity: 0.35;
    pointer-events: none;
  }
  &.swiper-button-hidden {
    cursor: auto;
    opacity: 0;
    pointer-events: none;
  }
  .swiper-navigation-disabled & {
    display: none !important;
  }
  svg {
    height: 100%;
    object-fit: contain;
    transform-origin: center;
    width: 100%;
    fill: currentColor;
    pointer-events: none;
  }
}

.swiper-button-lock {
  display: none;
}

.swiper-button-next, .swiper-button-prev {
  margin-top: calc(0 - var(--swiper-navigation-size) / 2);
  top: var(--swiper-navigation-top-offset, 50%);
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}

.swiper-button-next {
  left: auto;
  right: var(--swiper-navigation-sides-offset, 4px);
}

.swiper-horizontal {
  .swiper-button-next, .swiper-button-prev, ~ .swiper-button-next, ~ .swiper-button-prev {
    margin-left: 0;
    margin-top: calc(0 - var(--swiper-navigation-size) / 2);
    top: var(--swiper-navigation-top-offset, 50%);
  }
  &.swiper-rtl .swiper-button-next, &.swiper-rtl ~ .swiper-button-next, & ~ .swiper-button-prev, .swiper-button-prev {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }
  &.swiper-rtl .swiper-button-prev, &.swiper-rtl ~ .swiper-button-prev, & ~ .swiper-button-next, .swiper-button-next {
    left: auto;
    right: var(--swiper-navigation-sides-offset, 4px);
  }
  &.swiper-rtl .swiper-button-next, &.swiper-rtl ~ .swiper-button-next, & ~ .swiper-button-prev, .swiper-button-prev {
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }
  &.swiper-rtl .swiper-button-prev, &.swiper-rtl ~ .swiper-button-prev {
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}

.swiper-vertical {
  .swiper-button-next, .swiper-button-prev, ~ .swiper-button-next, ~ .swiper-button-prev {
    left: var(--swiper-navigation-top-offset, 50%);
    margin-left: calc(0 - var(--swiper-navigation-size) / 2);
    margin-top: 0;
    right: auto;
  }
  .swiper-button-prev, ~ .swiper-button-prev {
    bottom: auto;
    top: var(--swiper-navigation-sides-offset, 4px);
    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }
  .swiper-button-next, ~ .swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;
    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transform: translateZ(0);
  transition: opacity 0.3s;
  z-index: 10;
  &.swiper-pagination-hidden {
    opacity: 0;
  }
  &.swiper-pagination-disabled, .swiper-pagination-disabled > & {
    display: none !important;
  }
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  left: 0;
  top: var(--swiper-pagination-top, auto);
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  font-size: 0;
  overflow: hidden;
  .swiper-pagination-bullet {
    position: relative;
    transform: scale(0.33);
  }
  .swiper-pagination-bullet-active, .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
}

.swiper-pagination-bullet {
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  display: inline-block;
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  button& {
    appearance: none;
    border: none;
    box-shadow: none;
    margin: 0;
    padding: 0;
  }
  .swiper-pagination-clickable & {
    cursor: pointer;
  }
  &:only-child {
    display: none !important;
  }
}

.swiper-pagination-bullet-active {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  opacity: var(--swiper-pagination-bullet-opacity, 1);
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  left: var(--swiper-pagination-left, auto);
  right: var(--swiper-pagination-right, 8px);
  top: 50%;
  transform: translate3d(0, -50%, 0);
  .swiper-pagination-bullet {
    display: block;
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  }
  &.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 0.5rem;
    .swiper-pagination-bullet {
      display: inline-block;
      transition: transform 0.2s, top 0.2s;
    }
  }
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets {
  .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  &.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    .swiper-pagination-bullet {
      transition: transform 0.2s, left 0.2s;
    }
  }
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform 0.2s, right 0.2s;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.2509803922));
  position: absolute;
  .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: scale(0);
    transform-origin: left top;
    width: 100%;
  }
  .swiper-rtl & .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  &.swiper-pagination-horizontal, &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-horizontal > &, .swiper-vertical > &.swiper-pagination-progressbar-opposite {
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
    width: 100%;
  }
  &.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, &.swiper-pagination-vertical, .swiper-horizontal > &.swiper-pagination-progressbar-opposite, .swiper-vertical > & {
    height: 100%;
    left: 0;
    top: 0;
    width: var(--swiper-pagination-progressbar-size, 4px);
  }
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1019607843));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  &.swiper-scrollbar-disabled, .swiper-scrollbar-disabled > & {
    display: none !important;
  }
  &.swiper-scrollbar-horizontal, .swiper-horizontal > & {
    bottom: var(--swiper-scrollbar-bottom, 4px);
    height: var(--swiper-scrollbar-size, 4px);
    left: var(--swiper-scrollbar-sides-offset, 1%);
    position: absolute;
    top: var(--swiper-scrollbar-top, auto);
    width: calc(100% - var(--swiper-scrollbar-sides-offset, 1%) * 2);
    z-index: 50;
  }
  &.swiper-scrollbar-vertical, .swiper-vertical > & {
    height: calc(100% - var(--swiper-scrollbar-sides-offset, 1%) * 2);
    left: var(--swiper-scrollbar-left, auto);
    position: absolute;
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    width: var(--swiper-scrollbar-size, 4px);
    z-index: 50;
  }
}

.swiper-scrollbar-drag {
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5019607843));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  height: 100%;
  left: 0;
  position: relative;
  top: 0;
  width: 100%;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  text-align: center;
  width: 100%;
  > canvas, > img, > svg {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
  }
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-direction: column;
  flex-wrap: wrap;
}

.swiper-fade {
  &.swiper-free-mode {
    .swiper-slide {
      transition-timing-function: ease-out;
    }
  }
  .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    pointer-events: auto;
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube {
  .swiper-slide {
    backface-visibility: hidden;
    height: 100%;
    pointer-events: none;
    transform-origin: 0 0;
    visibility: hidden;
    width: 100%;
    z-index: 1;
    .swiper-slide {
      pointer-events: none;
    }
  }
  &.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
  }
  .swiper-slide-active {
    &, & .swiper-slide-active {
      pointer-events: auto;
    }
  }
  .swiper-slide-active, .swiper-slide-next, .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
  }
  .swiper-cube-shadow {
    bottom: 0;
    height: 100%;
    left: 0;
    opacity: 0.6;
    position: absolute;
    width: 100%;
    z-index: 0;
    &:before {
      background: #000;
      bottom: 0;
      content: "";
      filter: blur(3.125rem);
      left: 0;
      position: absolute;
      right: 0;
      top: 0;
    }
  }
}

.swiper-cube {
  .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
  }
}

.swiper-cube {
  .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    backface-visibility: hidden;
    z-index: 0;
  }
}

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip {
  .swiper-slide {
    backface-visibility: hidden;
    pointer-events: none;
    z-index: 1;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    &, & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

.swiper-flip {
  .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    backface-visibility: hidden;
    z-index: 0;
  }
}

.swiper-creative {
  .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards {
  .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transform-origin: center bottom;
  }
}

.swiper {
  --swiper-theme-color: currentColor;
  --swiper-navigation-size: 3rem;
  --swiper-pagination-bullet-size: 1.5rem;
}
.swiper:where(.state-locked) {
  overflow: visible;
}
.swiper:where(.state-locked) .swiper-wrapper {
  block-size: auto;
  inline-size: auto;
  transform: none !important;
  cursor: default;
}
.swiper:where(.state-locked) .swiper-slide {
  margin-inline-end: 0 !important;
}
.swiper:where(.state-locked) .swiper-controls,
.swiper:where(.state-locked) .swiper-pagination,
.swiper:where(.state-locked) .swiper-button-prev,
.swiper:where(.state-locked) .swiper-button-next {
  display: none;
}

.swiper-slide {
  block-size: auto;
}
.swiper-slide:last-of-type {
  margin-inline-end: 0 !important;
}

/* Controls
============================================================================= */
.swiper-button__label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* Bullets
============================================================================= */
.swiper-pagination-bullet-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* Progress Bar
============================================================================= */
/* ==========================================================================
	Background Video
============================================================================= */
.background-video {
  block-size: 100%;
  inline-size: 100%;
  position: absolute;
  inset: 0;
  --iframe-opacity: 0;
  --iframe-visibility: hidden;
  display: block;
  opacity: var(--iframe-opacity);
  transition: opacity 0.5s, visibility 0.5s;
  visibility: var(--iframe-visibility);
}

.background-video--loaded {
  --iframe-opacity: 1;
  --iframe-visibility: visible;
}
.background-video--loaded:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 4.67%, rgba(0, 0, 0, 0.2) 100%);
}

.background-video__iframe-target {
  block-size: 100%;
  inline-size: 100%;
  position: relative;
  container-type: size;
  overflow: hidden;
}
.background-video__iframe-target :where(iframe) {
  block-size: 100%;
  inline-size: auto;
  aspect-ratio: 16/9;
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  translate: -50% -50% 0;
}
@container (min-aspect-ratio: 16 / 9) {
  .background-video__iframe-target :where(iframe) {
    block-size: auto;
    inline-size: 100%;
  }
}

.background-video__controls {
  inline-size: 3rem;
  aspect-ratio: 1;
  position: absolute;
  inset-block-end: 1.375rem;
  inset-inline-end: 1.375rem;
  z-index: 5;
}

.background-video__control {
  --control-opacity: 1;
  --control-visibility: visible;
  block-size: 100%;
  inline-size: 100%;
  position: absolute;
  color: inherit;
  opacity: var(--control-opacity);
  transition-property: opacity, visibility;
  visibility: var(--control-visibility);
}

.background-video__control--pressed {
  --control-opacity: 0;
  --control-visibility: hidden;
}

.background-video__control-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.background-video__control-icon .icon {
  block-size: 100%;
  inline-size: 100%;
}
.background-video__control-icon .icon--video-play,
.background-video__control-icon .icon--video-pause {
  padding: 1.0625rem;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 0.8125rem;
}

/* ==========================================================================
	Button Toggle
============================================================================= */
.button-toggle {
  --button-toggle-opacity-default: 1;
  --button-toggle-visibility-default: visible;
  --button-toggle-opacity-active: 0;
  --button-toggle-visibility-active: hidden;
  display: grid !important;
  grid-template-columns: 100%;
}
.button-toggle.fs-swap-active {
  --button-toggle-opacity-default: 0;
  --button-toggle-visibility-default: hidden;
  --button-toggle-opacity-active: 1;
  --button-toggle-visibility-active: visible;
}

.button-toggle__inner {
  grid-area: 1/1;
  transition-duration: var(--transition-base-speed);
  transition-property: opacity, visibility;
}

.button-toggle__inner--default {
  opacity: var(--button-toggle-opacity-default);
  visibility: var(--button-toggle-visibility-default);
}

.button-toggle__inner--active {
  opacity: var(--button-toggle-opacity-active);
  visibility: var(--button-toggle-visibility-active);
}

.button-toggle__icon {
  margin-inline-start: auto;
}

/* ==========================================================================
	Buttons
============================================================================= */
/* Filled
============================================================================= */
.button-filled {
  --background-color: var(--color-black);
  --color: var(--color-white);
  --column-gap: 0.625rem;
  --font-size: 0.875rem;
  --font-weight: 700;
  --padding-block: 0.625rem;
  --padding-inline: 0.625rem;
}
.button-filled--white {
  --background-color: var(--color-white);
  --color: var(--color-black);
}
.button-filled--large {
  --column-gap: 0.9375rem;
  --font-size: 1.125rem;
  --padding-block: 1.25rem;
  --padding-inline: 1.875rem;
}

.button-filled {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  display: inline-block;
  color: var(--color);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  background-color: var(--background-color);
  padding-block: var(--padding-block);
  padding-inline: var(--padding-inline);
}

.button-filled__inner {
  display: flex;
  align-items: center;
  column-gap: var(--column-gap);
}

/* Bordered Buttons
============================================================================= */
.button-bordered {
  --background-color: transparent;
  --color: var(--color-black);
  --column-gap: 0.625rem;
  --font-size: 0.875rem;
  --font-weight: 700;
  --padding-block: 0.625rem;
  --padding-inline: 0.625rem;
}
.button-bordered--large {
  --column-gap: 0.9375rem;
  --font-size: 1.125rem;
  --padding-block: 1.25rem;
  --padding-inline: 1.875rem;
}

.button-bordered {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  display: inline-block;
  color: var(--color);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  background-color: var(--background-color);
  border: 0.0625rem solid var(--border-color, currentColor);
  padding-block: var(--padding-block);
  padding-inline: var(--padding-inline);
}

.button-bordered__inner {
  display: flex;
  align-items: center;
  column-gap: var(--column-gap);
}

/* Text Buttons
============================================================================= */
.button-text {
  --color: var(--color-black);
  --column-gap: 0.625rem;
  --font-size: inherit;
  --font-weight: normal;
  --padding-block: 0.3125rem;
  --text-decoration: underline;
}
.button-text {
  display: inline-block;
  color: var(--color);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  -webkit-text-decoration: var(--text-decoration);
          text-decoration: var(--text-decoration);
  padding-block: var(--padding-block);
}

.button-text__inner {
  display: flex;
  align-items: center;
  column-gap: var(--column-gap);
}

.button-text--large {
  --color: var(--color-black);
  --column-gap: 1.25rem;
  --font-size: 1.125rem;
  --font-weight: 700;
  --padding-block: 0.3125rem;
  --text-decoration: none;
}
.button-text--large {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  display: inline-block;
  color: var(--color);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  -webkit-text-decoration: var(--text-decoration);
          text-decoration: var(--text-decoration);
  padding-block: var(--padding-block);
}

:where(.button-text--large) .button-text__inner {
  display: flex;
  align-items: center;
  column-gap: var(--column-gap);
}

/* Paint Buttons
============================================================================= */
.button-paint {
  --color: #000;
  --background-color: #d0dd28;
  --font-size: 1.125rem;
  --font-weight: 700;
  --padding-block: 0.625rem;
  --padding-inline: 0;
  --text-decoration: none;
}
.button-paint:focus-visible {
  color: #d0dd28;
  background-color: #000;
}
@media (hover: hover) {
  .button-paint:hover {
    color: #d0dd28;
    background-color: #000;
  }
}

.button-paint--light {
  --color: #000;
  --background-color: #d0dd28;
}
.button-paint--light:focus-visible {
  color: #d0dd28;
  background-color: #000;
}
@media (hover: hover) {
  .button-paint--light:hover {
    color: #d0dd28;
    background-color: #000;
  }
}
.comp_style__alt .button-paint--light {
  --color: #000;
  --background-color: #fff;
}
.comp_style__alt .button-paint--light:focus-visible {
  color: #d0dd28;
  background-color: #000;
}
@media (hover: hover) {
  .comp_style__alt .button-paint--light:hover {
    color: #d0dd28;
    background-color: #000;
  }
}

.button-paint {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  display: inline-block;
  padding-block: 0.125rem;
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  -webkit-text-decoration: var(--text-decoration);
          text-decoration: var(--text-decoration);
  width: fit-content;
  background-color: var(--background-color);
  color: var(--color);
  mask: url("../images/button_bgnd.svg");
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: 100% 100%;
  max-height: 1.875rem;
}

.button-paint__label {
  padding: 0.25rem 1.875rem;
}

/* Custom Buttons
============================================================================= */
.button-custom--search:focus-visible {
  background-color: var(--color-spark-of-joy);
  color: var(--color-black);
}
@media (hover: hover) {
  .button-custom--search:hover {
    background-color: var(--color-spark-of-joy);
    color: var(--color-black);
  }
}

/* Arrow buttons
============================================================================= */
.button-arrow {
  background-color: var(--button-background-color, transparent);
  border: 0.0625rem solid var(--button-border-color, var(--color-spark-of-joy));
  border-radius: 0.3125rem;
  color: var(--button-color, var(--color-black));
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2;
  padding-block: 0.75rem;
  padding-inline: 0.9375rem;
  display: inline-block;
}
.button-arrow:focus-visible {
  --button-icon-translate: 0.375rem 0 0;
  background-color: var(--button-hover-background-color, var(--color-spark-of-joy));
  color: var(--button-hover-color, var(--color-black));
}
@media (hover: hover) {
  .button-arrow:hover {
    --button-icon-translate: 0.375rem 0 0;
    background-color: var(--button-hover-background-color, var(--color-spark-of-joy));
    color: var(--button-hover-color, var(--color-black));
  }
}

.button-arrow__inner {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

.button-arrow__icon {
  transition: translate var(--transition-base-speed);
  translate: var(--button-icon-translate, 0 0 0);
}

/* Rounded buttons
============================================================================= */
.button-rounded {
  background-color: var(--button-background-color, var(--color-white));
  border: 0.0625rem solid var(--button-border-color, var(--color-spark-of-joy));
  border-radius: 1.25rem;
  color: var(--button-color, var(--color-black));
  font-weight: 700;
  font-size: 0.75rem;
  line-height: normal;
  padding-block: 0.3125rem;
  padding-inline: 0.9375rem;
  display: inline-block;
  height: fit-content;
}
.button-rounded:focus-visible {
  background-color: var(--button-hover-background-color, var(--color-spark-of-joy));
  color: var(--button-hover-color, var(--color-black));
}
@media (hover: hover) {
  .button-rounded:hover {
    background-color: var(--button-hover-background-color, var(--color-spark-of-joy));
    color: var(--button-hover-color, var(--color-black));
  }
}

.button-rounded--alt {
  background-color: var(--button-background-color, var(--color-spark-of-joy));
  border: 0.0625rem solid var(--button-border-color, var(--color-spark-of-joy));
}
.button-rounded--alt:focus-visible {
  background-color: var(--button-hover-background-color, var(--color-black));
  color: var(--button-hover-color, var(--color-spark-of-joy));
  border: 0.0625rem solid var(--button-border-color, var(--color-black));
}
@media (hover: hover) {
  .button-rounded--alt:hover {
    background-color: var(--button-hover-background-color, var(--color-black));
    color: var(--button-hover-color, var(--color-spark-of-joy));
    border: 0.0625rem solid var(--button-border-color, var(--color-black));
  }
}

/* Skip Link
============================================================================= */
.skip-link {
  position: absolute;
  inset-block-start: 1.25rem;
  inset-inline-start: 50%;
  z-index: 100;
  translate: -50% 0;
  display: block;
  opacity: 0;
  pointer-events: none;
}
.skip-link:focus, .skip-link:active {
  opacity: 1;
  pointer-events: auto;
}

/* ==========================================================================
	Categories
============================================================================= */
.categories__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.categories__list {
  display: flex;
  flex-flow: row wrap;
  gap: 0.625rem;
}

.category-link {
  display: inline-block;
  background-color: var(--link-background-color, transparent);
  border: 0.0625rem solid var(--link-border-color, var(--color-spark-of-joy));
  border-radius: 100vmax;
  color: var(--link-color, var(--color-black));
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.2;
  padding-block: 0.1875rem;
  padding-inline: 0.625rem;
}
.category-link:focus-visible {
  background-color: var(--link-background-hover-color, var(--color-spark-of-joy));
  border-color: var(--link-border-hover-color, var(--color-spark-of-joy));
  color: var(--link-hover-color, var(--color-black));
}
@media (hover: hover) {
  .category-link:hover {
    background-color: var(--link-background-hover-color, var(--color-spark-of-joy));
    border-color: var(--link-border-hover-color, var(--color-spark-of-joy));
    color: var(--link-hover-color, var(--color-black));
  }
}

/* ==========================================================================
	Google CSE
============================================================================= */
#___gcse_0 {
  --search-border-radius: 0.3125rem;
  --search-input-border: 0.0625rem solid var(--color-dream-dragon-green);
  --search-button-background: var(--color-spark-of-joy);
  --search-button-background-hover: var(--color-black);
  --search-bottom-border: 0;
  --results-border-bottom: 0.0625rem solid oklch(from var(--color-green-connection) l c h / 0.4);
  --results-title-color: var(--color-dream-dragon-green);
  --results-title-color-hover: var(--color-black);
  --pagination-color: var(--color-dream-dragon-green);
  --pagination-color-active: var(--color-black);
  --pagination-color-hover: var(--color-black);
}
#___gcse_0 .gsc-control-cse {
  font-family: inherit;
  font-size: inherit;
  background-color: transparent;
  border-width: 0;
  padding: 0;
}
#___gcse_0 .gsc-control-cse * {
  max-width: none !important;
}
#___gcse_0 {
  /* Search Box
  ============================================================================= */
}
#___gcse_0 form.gsc-search-box {
  font-size: inherit;
  margin-block-end: 0;
}
@media (min-width:61.25rem) {
  #___gcse_0 form.gsc-search-box {
    max-inline-size: var(--fw-columns-8) !important;
    margin: 0 !important;
  }
}
#___gcse_0 table.gsc-search-box {
  position: relative;
  margin-block-end: 0;
}
#___gcse_0 .gsc-search-box {
  position: relative;
  font-size: inherit;
  margin: 0 !important;
}
#___gcse_0 .gsc-search-box .gsib_a {
  padding: 0 0.625rem 0 0 !important;
}
#___gcse_0 td.gsc-input {
  padding-inline-end: 0;
}
#___gcse_0 .gsib_a {
  background-image: none;
}
#___gcse_0 .gsc-input-box {
  position: relative;
  background: none;
  border-width: 0;
  padding: 0;
}
#___gcse_0 table.gsc-input {
  border-collapse: collapse;
}
#___gcse_0 [id=gs_tti50] {
  padding: 0;
}
#___gcse_0 input.gsc-input {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  block-size: 3.75rem !important;
  line-height: normal;
  background-color: var(--color-white) !important;
  background-position: 1.25rem 50% !important;
  border: var(--search-input-border) !important;
  border-radius: var(--search-border-radius);
  color: var(--color-text-grey) !important;
  margin: 0 !important;
  padding-block: 0.8125rem !important;
  padding-inline: 0.9375rem !important;
}
@media (min-width:46.25rem) {
  #___gcse_0 input.gsc-input {
    padding-inline: 1.25rem 4.375rem !important;
  }
}
#___gcse_0 input.gsc-input::placeholder {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  line-height: normal;
}
#___gcse_0 .gsib_b {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: 1.25rem;
  translate: 0 -50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width:46.25rem) {
  #___gcse_0 .gsib_b {
    inset-inline-end: 1.875rem;
  }
}
#___gcse_0 .gsst_b {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
#___gcse_0 .gsst_a {
  inline-size: 1.625rem;
  aspect-ratio: 1;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAAAXNSR0IArs4c6QAAAWpJREFUWAndmGEOwiAMhY1//Ou9vY+H8FLKMylhrGBpHyyThMBc+95Hh9nC5XLidk/sj9RvB6wBnvAGQ7ch4JX6O/Vn6ith4QVPeIOhCVtCInglbAkp3iqsBikJsyurQYr3Dhb7Qm5q4yzYHqRwgC03SwIb1u3pTszLtU/CXmEBAyvNgyakQNO16YIJeobmtxZMYaaW8qA4VZgOKeQRo0iu+A+NHkNPzhBUK3jEeCS25Rf63QogX0HyGqxH9ltOXZQFtgYrr5dACrkXdimkF/YQyFHYMORVHP95HN2n4ap6ijkKKf/6pbBeyKWwFkhUDV3AtHFqZa2QiBuJ9Wy9Zo7H2JPTBLDciBhGci1sOYZhxNDIQNqEacDU2rDOEKZr0gWLEtC0aUIFXD0Ne4QFaqLOtdvLndiB+XXL5XmaY8fTHOTiMWmwUz8eir2hbYPdaXMRv4FdBSn+JWwXUhJQWexZJK5u8IQ3GM7ZPqgwKEshiSLbAAAAAElFTkSuQmCC");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 1.25rem;
  margin-block-start: 0.125rem;
  padding: 0;
}
#___gcse_0 .gscb_a {
  display: none;
}
#___gcse_0 td.gsc-search-button {
  inline-size: 3.75rem;
  display: block !important;
  margin-inline-start: 0;
}
@media (min-width:46.25rem) {
  #___gcse_0 td.gsc-search-button {
    inline-size: 8.125rem;
  }
}
#___gcse_0 button.gsc-search-button {
  block-size: 3.75rem;
  inline-size: 100%;
  display: block !important;
  background-color: var(--search-button-background);
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAC00lEQVR4nM2YO2hUQRSGv93EqFgEIaIYZLELgq/CKKj4IEoKH4Uo2NiKnbHSPhJQsVUbsdNY+UYr04khWIkbMCJqCOtitIgaHzFXTjiBy3ju3rmvuD9McQfmzH/PnMc/U8IfZWA7cBjYCKzWsRiY0DEGPAQeA99YILQDA0AdCDzHNDAIdBVJTDzWB0wmIBY44zdwFegowmuPMhALnPEW2JCGSMmYW6vkoo6nCtwDRjXufmosVoBeYAfQYqz7ChwHHpDRc9UIL9wF1nvYWAFc0Di0YrM7S8xZx/oJ2JfCXgUYNuyJ1zvTEOwzjI3qkafFEs1m1+6TNEc7aXguC7l5LAKGDJI9JMCAYSDNsUZBykzNsf8iIknN2KsbCZE3ThlO2OKzcKex0Cdbk6IVeOfs0++z8JKz6BXF4bKz10uf45XGH4YU4aJw3/lep0nUkKB0gTCktBSFqvMtSbIqKUEppEWhDvxx5tz9/yEoei4M6a1FYVYVjlvMGxKcSPJHGbHcICReTURQemhRqBhzH+MIvnHmRDIVhV7n+wPwOW7REac2zRShgBXPnb2u44FlhnYTPZc39hod65jv4tuGsMwzFsvAiLPHONDma6BL0z9sYDiuBCTARcN7Z0iIa4aRwbhW5IGTht0xDa1E6NDbl2tsKGXSlCM8J0m4jZSQq+GUYbSmek4kk29CjERcvlzBkBgHIm5kgeo5kUx7tMmXQx1iE3DWKCXWOJ2VZLd2mLiNZhr8TNyQ2MyETr19BRnH64gEFOFwghzQoxecpMRqwLmQWuqPOAHvYt0IJb3gnFeZPhtB6j1wEzgaUZ5cyS/jF3CInCGbrwG2Arv1krXSc+0Vg+QPYD9NghJwwyD5HdhFk6AFuGWQnMpSxPNGK3DHIPkF2EyToE3fswPjXUhivCmwFHhqkJx7dZhvVf8T08BB4JkzH3sVWGjIE6AIZ3kGFJk3p0X/AuMIedJ1VkFxAAAAAElFTkSuQmCC");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 1.25rem;
  border-radius: var(--search-border-radius);
  border-width: 0;
  margin-inline-start: 0.1875rem;
}
#___gcse_0 button.gsc-search-button:focus-visible {
  background-color: var(--search-button-background-hover);
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAA6pJREFUWAm1mDloFVEUhn3ZjKSQQMRgCMEuCIlaJAoqLkSxcANRsLENdmqlfUSIYKs2YucCgnEJSaWdKGKj8AJGggtBg0vhEjUx8ftfXsLMmTszd55vfviZueee89/z7j6vsMwT8/PzNbhugQfherimzOU8J8sc5/kAjhQKhR888weJrYTn4RT0xTSON2FnbhkiXgNPwc+wUswQeBm2VDVRBNVrw7BamECou5IkCzYIobXYhmHc8BSpuwvHoObeb6j52AH3wq2wFlp8x3CMuXnfVniXSU49V4QuDGHsShPDZxUchJqHFrL1pmk46wnUnHMN6yfsu51BCUZiOuBTaDGJoS0h1F1FkBaExRgGDXlFILYRajVbjGYSJFpDa1ereq7i5BYTQKMePoIWfYs+qU8itc9ZZB7WuIYQboEfTAPPKUcWaUQDJ809uwkPRRz/00AbJ6BFT6osEdtsFOXU1ZoqbBzQrINvTFsDxi1S1PmqszWIInvVi6ChGu9ozqJz22gdMuVIUQnq4A9Cm3BeuGeE19Gj9cYWKipBnQJB6ITICzqFgtAiaQ0a7LsrQR1feWEK4b9G3HZQqFoJ6j4XhM7WXMA8nEN4xog3mnKoqARtjyX+olB0xgLzrZkQm5B6NRauBHUryQsu7Y9JjSnB18ZBV6a8YLXfMexfEhuj2w+bzXOWcnVvwOUM0H1i2rqamJwqCWiC9u42mBqY0YE2dpnkVDzqJYPjLROshF3zxUvPOqGl8/6ZaeM95Qbr6yzj2An1gROELpt2xTnj04zoXAgKl99Pp8WF6gm64hDRZTPxKAqJOArE9zt0x7E1OdzjTQTozjYBLXTZzLxoiNGwunpOi3BzfCYJNQR2w2/QQpdN3efqEsKXqvDTgrBzDlMJ9sKwFOf1gsQ+aFf1gvTCfe4ihZ2wFWof1U7QDDfAM9BuJZgiOOmVTJwTcr1QX19p0HDF/Zi02P649r3sqLfB0bRWPOpf4eNagHPYj3slk+SESB/UB05WaN6ehaXbEs8Bh4BGwG+zTkmygFAPPAdfQv16F95ivA6PwMj2hE3z1+IPhgNJ7WeuQ1Dfuu1wE9wBu+BqHyH8LkGLXxj2+MTn7kMiGo1rNkPKP+H23BPwaYBEauENaKE9uLJN3KfhLD4kou/kOzZDyl/hxixaufmSSAMcgRb6X6g9t4azCJPICvgQWpT+dSgdVVkEq+3LlX8azf3wsdFO/hQwzrkX6T79BaiLs/4G1DWvdBf9Bx10jEx7NnGhAAAAAElFTkSuQmCC");
}
@media (hover: hover) {
  #___gcse_0 button.gsc-search-button:hover {
    background-color: var(--search-button-background-hover);
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAA6pJREFUWAm1mDloFVEUhn3ZjKSQQMRgCMEuCIlaJAoqLkSxcANRsLENdmqlfUSIYKs2YucCgnEJSaWdKGKj8AJGggtBg0vhEjUx8ftfXsLMmTszd55vfviZueee89/z7j6vsMwT8/PzNbhugQfherimzOU8J8sc5/kAjhQKhR888weJrYTn4RT0xTSON2FnbhkiXgNPwc+wUswQeBm2VDVRBNVrw7BamECou5IkCzYIobXYhmHc8BSpuwvHoObeb6j52AH3wq2wFlp8x3CMuXnfVniXSU49V4QuDGHsShPDZxUchJqHFrL1pmk46wnUnHMN6yfsu51BCUZiOuBTaDGJoS0h1F1FkBaExRgGDXlFILYRajVbjGYSJFpDa1ereq7i5BYTQKMePoIWfYs+qU8itc9ZZB7WuIYQboEfTAPPKUcWaUQDJ809uwkPRRz/00AbJ6BFT6osEdtsFOXU1ZoqbBzQrINvTFsDxi1S1PmqszWIInvVi6ChGu9ozqJz22gdMuVIUQnq4A9Cm3BeuGeE19Gj9cYWKipBnQJB6ITICzqFgtAiaQ0a7LsrQR1feWEK4b9G3HZQqFoJ6j4XhM7WXMA8nEN4xog3mnKoqARtjyX+olB0xgLzrZkQm5B6NRauBHUryQsu7Y9JjSnB18ZBV6a8YLXfMexfEhuj2w+bzXOWcnVvwOUM0H1i2rqamJwqCWiC9u42mBqY0YE2dpnkVDzqJYPjLROshF3zxUvPOqGl8/6ZaeM95Qbr6yzj2An1gROELpt2xTnj04zoXAgKl99Pp8WF6gm64hDRZTPxKAqJOArE9zt0x7E1OdzjTQTozjYBLXTZzLxoiNGwunpOi3BzfCYJNQR2w2/QQpdN3efqEsKXqvDTgrBzDlMJ9sKwFOf1gsQ+aFf1gvTCfe4ihZ2wFWof1U7QDDfAM9BuJZgiOOmVTJwTcr1QX19p0HDF/Zi02P649r3sqLfB0bRWPOpf4eNagHPYj3slk+SESB/UB05WaN6ehaXbEs8Bh4BGwG+zTkmygFAPPAdfQv16F95ivA6PwMj2hE3z1+IPhgNJ7WeuQ1Dfuu1wE9wBu+BqHyH8LkGLXxj2+MTn7kMiGo1rNkPKP+H23BPwaYBEauENaKE9uLJN3KfhLD4kou/kOzZDyl/hxixaufmSSAMcgRb6X6g9t4azCJPICvgQWpT+dSgdVVkEq+3LlX8azf3wsdFO/hQwzrkX6T79BaiLs/4G1DWvdBf9Bx10jEx7NnGhAAAAAElFTkSuQmCC");
  }
}
#___gcse_0 button.gsc-search-button img,
#___gcse_0 button.gsc-search-button svg {
  display: none;
}
#___gcse_0 {
  /* Search Tabs
  ============================================================================= */
}
#___gcse_0 .gsc-positioningWrapper {
  display: none;
}
#___gcse_0 {
  /* Results Count
  ============================================================================= */
}
#___gcse_0 .gsc-above-wrapper-area {
  border-block-end: var(--search-bottom-border);
  padding-block: 1.25rem 0;
}
#___gcse_0 .gsc-result-info {
  color: var(--color-text-grey);
  font-size: 1rem;
  font-family: var(--font-sans-alt);
  margin: 0;
  padding: 0;
}
#___gcse_0 {
  /* Results
  ============================================================================= */
}
#___gcse_0 .gsc-results {
  inline-size: 100%;
  padding-block-end: 0;
}
#___gcse_0 .gsc-result {
  border-block-end: var(--results-border-bottom);
  padding-block: clamp(1.875rem, 0.78993rem + (3.4722222222vw), 3.4375rem) !important;
  padding-inline: 0 !important;
}
#___gcse_0 .gsc-thumbnail-inside {
  padding: 0;
}
#___gcse_0 div.gs-title {
  color: inherit;
  font-size: inherit;
  text-decoration: none;
  margin-block-end: 0.375rem;
}
#___gcse_0 a.gs-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
  display: block;
  color: var(--results-title-color);
  font-weight: 700;
}
#___gcse_0 a.gs-title:focus-visible {
  color: var(--results-title-color-hover);
  text-decoration: none;
}
@media (hover: hover) {
  #___gcse_0 a.gs-title:hover {
    color: var(--results-title-color-hover);
    text-decoration: none;
  }
}
#___gcse_0 a.gs-title b {
  color: inherit;
  font: inherit;
  text-decoration: none;
}
#___gcse_0 .gsc-url-top {
  padding: 0;
}
#___gcse_0 .gs-visibleUrl {
  color: var(--color-text-grey);
  font-family: var(--font-sans-alt);
  font-size: 1rem;
  line-height: 1.4;
  margin-block-end: 0.5rem;
  padding-block-end: 0;
}
#___gcse_0 .gs-visibleUrl b {
  color: inherit;
}
#___gcse_0 .gsc-table-result {
  font-family: inherit;
  font-size: inherit;
  padding: 0;
}
#___gcse_0 .gsc-thumbnail {
  display: none;
}
#___gcse_0 .gs-snippet {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  color: var(--color-text-grey);
  margin-block-start: 0;
}
#___gcse_0 .gsc-url-bottom {
  display: none;
  margin-block-start: 0.5rem;
}
#___gcse_0 {
  /* Pagination
  ============================================================================= */
}
#___gcse_0 .gsc-cursor-box {
  margin-block: 2.5rem !important;
  padding: 0;
}
#___gcse_0 .gsc-cursor {
  display: flex;
  align-items: center;
  color: inherit;
  fill: none;
}
#___gcse_0 .gsc-cursor-page {
  display: block;
  justify-content: center;
  color: var(--pagination-color) !important;
  font-size: 1rem;
  font-weight: normal;
  font-family: var(--font-sans-alt);
  line-height: 1.4;
  margin-inline-end: 0 !important;
  padding-inline-end: 0.625rem;
}
#___gcse_0 .gsc-cursor-page:focus-visible {
  color: var(--pagination-color-hover) !important;
  text-decoration: none;
}
@media (hover: hover) {
  #___gcse_0 .gsc-cursor-page:hover {
    color: var(--pagination-color-hover) !important;
    text-decoration: none;
  }
}
@media (min-width:46.25rem) {
  #___gcse_0 .gsc-cursor-page {
    padding-inline-end: 1.25rem;
  }
}
#___gcse_0 .gsc-cursor-page.gsc-cursor-current-page {
  color: var(--pagination-color-active) !important;
}
#___gcse_0 {
  /* Branding
  ============================================================================= */
}
#___gcse_0 .gcsc-more-maybe-branding-root > a {
  display: none;
}
#___gcse_0 .gcsc-branding {
  padding: 0;
}

/* ==========================================================================
	Icons
============================================================================= */
.icon {
  display: block;
  fill: currentColor;
  margin: auto;
  pointer-events: none;
  stroke: inherit;
  transition-duration: var(--transition-base-speed);
  transition-property: fill, stroke;
}
.icon--angle-down {
  inline-size: 0.3125rem;
  aspect-ratio: 5/4;
}
.icon--angle-right {
  inline-size: 0.4375rem;
  aspect-ratio: 7/7;
}
.icon--arrow-down {
  inline-size: 1.375rem;
  aspect-ratio: 22/22;
}
.icon--arrow-left {
  inline-size: 1.375rem;
  aspect-ratio: 22/22;
}
.icon--arrow-left-alt {
  inline-size: 0.6875rem;
  aspect-ratio: 11/8;
}
.icon--arrow-right {
  inline-size: 1.375rem;
  aspect-ratio: 22/22;
}
.icon--arrow-right-alt {
  inline-size: 0.6875rem;
  aspect-ratio: 11/8;
}
.icon--arrow-up {
  inline-size: 1.375rem;
  aspect-ratio: 22/22;
}
.icon--arrow-forward {
  inline-size: 0.75rem;
  aspect-ratio: 12/7;
}
.icon--building {
  inline-size: 1rem;
  aspect-ratio: 16/16;
}
.icon--caret-down {
  inline-size: 0.75rem;
  aspect-ratio: 12/8;
}
.icon--caret-right {
  inline-size: 0.5rem;
  aspect-ratio: 8/16;
}
.icon--caret-left {
  inline-size: 0.5rem;
  aspect-ratio: 8/16;
}
.icon--clock {
  inline-size: 1rem;
  aspect-ratio: 16/16;
}
.icon--close {
  inline-size: 1.25rem;
  aspect-ratio: 20/20;
}
.icon--date-page {
  inline-size: 4.25rem;
  aspect-ratio: 68/66;
}
.icon--expand {
  inline-size: 0.75rem;
  aspect-ratio: 12/19;
}
.icon--external {
  inline-size: 1.125rem;
  aspect-ratio: 18/18;
}
.icon--facebook {
  inline-size: 1.5rem;
  aspect-ratio: 24/24;
}
.icon--fax {
  inline-size: 1.125rem;
  aspect-ratio: 18/16;
}
.icon--file {
  inline-size: 1rem;
  aspect-ratio: 16/20;
}
.icon--flickr {
  inline-size: 3.25rem;
  aspect-ratio: 52/17;
}
.icon--home {
  inline-size: 1rem;
  aspect-ratio: 16/18;
}
.icon--instagram {
  inline-size: 1.5rem;
  aspect-ratio: 24/24;
}
.icon--label {
  inline-size: 0.875rem;
  aspect-ratio: 14/14;
}
.icon--linkedin {
  inline-size: 1.875rem;
  aspect-ratio: 30/30;
}
.icon--logo {
  inline-size: 12.0625rem;
  aspect-ratio: 193/129;
}
.icon--logo-mono {
  inline-size: 9.75rem;
  aspect-ratio: 156/88;
}
.icon--mail {
  inline-size: 1.375rem;
  aspect-ratio: 22/16;
}
.icon--menu {
  inline-size: 0.9375rem;
  aspect-ratio: 15/13;
}
.icon--minus {
  inline-size: 0.875rem;
  aspect-ratio: 14/2;
}
.icon--phone {
  inline-size: 1rem;
  aspect-ratio: 16/16;
}
.icon--place {
  inline-size: 0.75rem;
  aspect-ratio: 12/16;
}
.icon--play {
  inline-size: 1.25rem;
  aspect-ratio: 20/20;
}
.icon--plus {
  inline-size: 0.875rem;
  aspect-ratio: 14/14;
}
.icon--reset {
  inline-size: 1.125rem;
  aspect-ratio: 18/18;
}
.icon--search {
  inline-size: 0.9375rem;
  aspect-ratio: 15/15;
}
.icon--shape-dab-left {
  inline-size: 4.125rem;
  aspect-ratio: 66/54;
}
.icon--shape-dab-right {
  inline-size: 4.125rem;
  aspect-ratio: 66/54;
}
.icon--share-email {
  inline-size: 1.5625rem;
  aspect-ratio: 25/25;
}
.icon--share-facebook {
  inline-size: 1.5625rem;
  aspect-ratio: 25/25;
}
.icon--share-linkedin {
  inline-size: 1.5625rem;
  aspect-ratio: 25/25;
}
.icon--twitter {
  inline-size: 2.3125rem;
  aspect-ratio: 37/30;
}
.icon--video-pause {
  inline-size: 0.875rem;
  aspect-ratio: 14/15;
}
.icon--video-play {
  inline-size: 2.5625rem;
  aspect-ratio: 41/51;
}
.icon--vimeo {
  inline-size: 1.125rem;
  aspect-ratio: 18/18;
}
.icon--x {
  inline-size: 2rem;
  aspect-ratio: 32/30;
}
.icon--youtube {
  inline-size: 1.5rem;
  aspect-ratio: 24/17;
}
.icon--tiktok {
  inline-size: 1.25rem;
  aspect-ratio: 20/23;
}
.icon--warning {
  inline-size: 1.625rem;
  aspect-ratio: 26/27;
}

.icon-nowrap {
  white-space: nowrap;
}
.icon-nowrap :where(.icon) {
  display: inline;
}

/* ==========================================================================
	Inline Video
============================================================================= */
.lazy-video {
  --icon-size: 3.75rem;
  --icon-color: var(--color-black);
  --aspect-ratio: var(--aspect-ratio-wide);
}
@media (min-width:61.25rem) {
  .lazy-video {
    --icon-size: 7.5rem;
  }
}
.lazy-video :where(.lazy-video__toggle-btn):focus-visible {
  --icon-color: var(--color-white);
}
@media (hover: hover) {
  .lazy-video :where(.lazy-video__toggle-btn):hover {
    --icon-color: var(--color-white);
  }
}

.lazy-video--aspect-portrait {
  --aspect-ratio: var(--aspect-ratio-portrait-wide);
}

.lazy-video--aspect-square {
  --aspect-ratio: var(--aspect-ratio-portrait-square);
}

.lazy-video {
  block-size: 100%;
  inline-size: 100%;
  position: absolute;
  inset: 0;
}

.lazy-video__play {
  block-size: 100%;
  inline-size: 100%;
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  grid-template-columns: 100%;
  color: var(--icon-color);
}
:where(.no-js) .lazy-video__play {
  display: none;
}
@media (min-width:61.25rem) {
  .lazy-video__play:before {
    position: absolute;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0.8);
    height: 7.5rem;
    width: 7.5rem;
    content: "";
  }
}
.lazy-video__play :where(.icon) {
  inline-size: var(--icon-size);
  position: absolute;
  inset: auto;
  padding-block: 1.875rem;
  padding-inline: 2.8125rem 1.875rem;
  fill: #d0dd28;
  transition: var(--transition-base-speed) var(--transition-base-timing);
}

.lazy-video__iframe-wrapper {
  aspect-ratio: var(--aspect-ratio);
  display: block;
  opacity: 0;
  transition-duration: var(--transition-duration, 0);
  transition-property: opacity, visibility;
  visibility: hidden;
}
@media print {
  .lazy-video__iframe-wrapper {
    display: none;
  }
}
:where(.lazy-video--ready) .lazy-video__iframe-wrapper {
  --transition-duration: var(--transition-base-speed);
  opacity: 1;
  visibility: visible;
}
.lazy-video__iframe-wrapper :where(iframe) {
  block-size: 100%;
  inline-size: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
}

.lazy-video__iframe-target {
  block-size: 100%;
}

/* ==========================================================================
	Logo
============================================================================= */
@media (min-width:61.25rem) {
  .logo--footer {
    flex: 0 0 15.625rem;
  }
}

.logo__link {
  width: fit-content;
  position: relative;
  display: block;
  text-decoration: underline;
  white-space: nowrap;
  overflow: hidden;
}
.logo__link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .logo__link:hover {
    color: var(--color-black);
  }
}
@media print {
  .logo__link::after {
    display: none;
    content: normal;
  }
}

.logo__link-inner {
  display: block;
}

.logo__link-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.logo__link-icon {
  display: inline-block;
  vertical-align: top;
}

.logo__print {
  display: none;
}
@media print {
  .logo__print {
    display: block;
  }
}

/* ==========================================================================
	Meta
============================================================================= */
.meta-info {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}
@media (min-width:61.25rem) {
  .meta-info {
    flex: 0 0 30%;
  }
}

.meta-info__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.meta-info__details {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.meta-info__detail {
  display: grid;
  align-items: center;
  gap: 1.125rem;
}

.meta-info__detail-label {
  display: flex;
  flex-direction: column;
  text-align: center;
}
@media (min-width:61.25rem) {
  .meta-info__detail-label {
    text-align: left;
  }
}
@media print {
  .meta-info__detail-label::after {
    display: none;
  }
}

.meta-info__detail-label-link {
  display: inline-block;
  text-decoration: underline;
}
.footer__meta .meta-info__detail-label-link {
  color: #fff;
}
.meta-info__detail-label-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .meta-info__detail-label-link:hover {
    color: var(--color-black);
  }
}

.meta-info__detail-label-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* ==========================================================================
	Page Header
============================================================================= */
.page-header {
  display: grid;
  grid-template-columns: 100%;
  color: var(--header-color);
  background-color: var(--header-background-color);
}

.page-header__group {
  display: grid;
  grid-template-areas: "breadcrumb" "intro";
  grid-template-columns: 1fr;
  width: 100%;
  margin-inline: auto;
}
@media (min-width:61.25rem) {
  .page-header__group {
    width: 66%;
  }
}
.page-header__group:where(.has-media) {
  width: 100%;
  margin-inline: auto;
  grid-template-areas: "media" "breadcrumb" "intro";
  grid-template-columns: 1fr;
}
@media (min-width:61.25rem) {
  .page-header__group:where(.has-media) {
    grid-template-areas: "breadcrumb breadcrumb" "intro media";
    grid-template-columns: 1fr 1fr;
  }
}

.page-header__group--column {
  display: flex;
  flex-direction: column;
}

@media (min-width:61.25rem) {
  .page-header__group--wide {
    width: auto;
  }
}

.page-header__breadcrumb {
  grid-area: breadcrumb;
  margin-block: clamp(1.25rem, -0.48611rem + (5.5555555556vw), 3.75rem);
}
@media print {
  .page-header__breadcrumb {
    display: none;
  }
}
@media (min-width:61.25rem) {
  .page-header__group--column :where(.page-header__breadcrumb) {
    inline-size: var(--fw-columns-8);
    margin-inline: auto;
  }
}
:where(.page-header--has-background) .page-header__breadcrumb {
  background-image: linear-gradient(rgba(var(--color-black), 0.95), rgba(var(--color-black), 0));
  isolation: isolate;
  margin-block: 0;
  padding-block: 1.25rem;
}

.page-header__intro {
  grid-area: intro;
}
@media (min-width:61.25rem) {
  .page-header__group--column :where(.page-header__intro) {
    inline-size: var(--fw-columns-8);
    margin-inline: auto;
    margin-block-end: clamp(1.875rem, 0.57292rem + (4.1666666667vw), 3.75rem);
  }
}
@media (min-width:61.25rem) {
  .page-header__group--wide :where(.page-header__intro) {
    width: 66%;
    margin-inline: auto;
    text-align: center;
  }
}
:where(.page-header--has-background) .page-header__intro {
  background-image: linear-gradient(rgba(var(--color-black), 0), rgba(var(--color-black), 0.95));
  isolation: isolate;
  margin-block: auto 0;
  padding-block: clamp(1.875rem, -3.76736rem + (18.0555555556vw), 10rem) clamp(1.25rem, -0.48611rem + (5.5555555556vw), 3.75rem);
}
@media print {
  :where(.page-header--has-background) .page-header__intro {
    margin-block: 0.625rem 1.25rem;
    padding-block: 0;
  }
}

.page-header__intro-inner {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}
.page-header__group--column :where(.page-header__intro-inner) {
  row-gap: 1.5625rem;
}

.page-header__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  letter-spacing: clamp(-0.15em, -0.1vw, 0em);
  color: var(--color-dream-dragon-green);
}

.page-header__description {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.4;
  color: #005f40;
}

.page-header__media {
  grid-area: media;
}

.page-header__media-inner {
  position: relative;
}

@media (min-width:61.25rem) {
  .page-header__figure {
    margin-inline-start: 5%;
  }
}
@media (min-width:61.25rem) {
  .page-header__group--column :where(.page-header__figure) {
    inline-size: var(--fw-columns-10);
    margin-inline: auto;
  }
}

.page-header__image {
  block-size: auto;
  inline-size: 100%;
  border-radius: 1.25rem;
}

.page-header__video {
  aspect-ratio: var(--aspect-ratio-wide);
}
@media print {
  .page-header__video {
    display: none;
  }
}
:where(.page-header__media--has-video) .page-header__video {
  block-size: 100%;
  inline-size: 100%;
  position: absolute;
  inset: 0;
}
:where(.no-js) .page-header__video {
  display: none;
}

.page-header__bar {
  margin-block-start: clamp(1.25rem, -0.48611rem + (5.5555555556vw), 3.75rem);
  background-color: #d0dd28;
  mask: url("../images/band_pattern_2.svg");
  mask-repeat: repeat-x;
  mask-size: 61.1875rem 5rem;
  min-height: 5rem;
}

.page-header__nav {
  padding-block-start: 2.5rem;
}
@media (min-width:61.25rem) {
  .page-header__nav {
    padding-block-end: 2.5rem;
  }
}
@media print {
  .page-header__nav {
    display: none;
  }
}

.page-header__nav-inner {
  position: relative;
}

.page-header__nav-flat {
  display: none;
}
@media (min-width:61.25rem) {
  .page-header__nav-flat {
    display: block;
    display: flex;
    gap: 1.5625rem;
    justify-content: center;
  }
}

.page-header__nav-marker {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.03rem;
  text-transform: uppercase;
  align-content: end;
  color: #000;
}

.page-header__nav-toggle {
  display: block;
  width: fit-content;
  margin-inline: auto;
}
@media (min-width:61.25rem) {
  .page-header__nav-toggle {
    display: none;
  }
}
.page-header__nav-toggle :where(.button-toggle) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.03rem;
  text-transform: uppercase;
  text-decoration: none;
  align-content: end;
  color: #000;
  margin-inline: auto;
}
.page-header__nav-toggle :where(.button-toggle__icon) {
  margin-inline-start: 0;
  rotate: 180deg;
}
.page-header__nav-toggle .state-swap-active :where(.button-toggle__icon) {
  margin-inline-start: 0;
  rotate: 0deg;
}

/* ==========================================================================
	Pagination
============================================================================= */
.pagination {
  --pagination-disabled-opacity: 0.3;
}
@media print {
  .pagination {
    display: none;
  }
}
:where(.no-js) .pagination {
  display: none;
}

.pagination__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* Nav
============================================================================= */
.pagination__nav {
  --pagination-nav-gap: 0.625rem;
  display: grid;
  gap: var(--pagination-nav-gap);
  grid-template-areas: "prev numbers next";
  grid-template-columns: auto 1fr auto;
}

.pagination__nav-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  grid-area: numbers;
  justify-self: center;
  color: var(--color-text-grey);
  font-weight: 700;
  font-size: 1.125rem;
}
@media (min-width:46.25rem) {
  .pagination__nav-list {
    font-size: 1.25rem;
  }
}

@media (max-width:46.1875rem) {
  .pagination__nav-item--desktop-only {
    display: none;
  }
}

.pagination__nav-item--ellipsis {
  --pagination-nav-item-min-size: 1.6875rem;
  min-block-size: var(--pagination-nav-item-min-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 0.375rem;
}

/* Number Links
============================================================================= */
.pagination__nav-link {
  --pagination-nav-link-min-size: 1.6875rem;
  --pagination-nav-link-color: currentColor;
  --pagination-nav-link-background-color: transparent;
  min-block-size: var(--pagination-nav-link-min-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--pagination-nav-link-color);
  background-color: var(--pagination-nav-link-background-color);
  padding-inline: 0.375rem;
}
@media (min-width:46.25rem) {
  .pagination__nav-link {
    padding-inline: 0.5rem;
  }
}
.pagination__nav-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .pagination__nav-link:hover {
    color: var(--color-black);
  }
}

.pagination__nav-link--current {
  --pagination-nav-link-color: var(--color-black);
  --pagination-nav-link-background-color: var(--color-green-connection);
  cursor: default;
  pointer-events: none;
}

.pagination__nav-link-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* Controls
============================================================================= */
.pagination__control {
  --control-icon-color: var(--color-green-connection);
  --control-icon-opacity: 1;
  inline-size: 2.875rem;
  aspect-ratio: 66/54;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width:31.25rem) {
  .pagination__control {
    inline-size: 4.125rem;
  }
}
.pagination__control:has(.pagination__control-link--disabled) {
  --control-icon-opacity: var(--pagination-disabled-opacity);
}
.pagination__control:has(.pagination__control-link:focus-visible) {
  --control-icon-color: var(--color-black);
}
@media (hover: hover) {
  .pagination__control:has(.pagination__control-link:hover) {
    --control-icon-color: var(--color-black);
  }
}

.pagination__control--previous {
  grid-area: prev;
}

.pagination__control--next {
  grid-area: next;
}
@media (max-width:31.1875rem) {
  .pagination__control--next {
    margin-inline-start: auto;
  }
}

.pagination__control_icon {
  position: absolute;
  inset: 0;
  color: var(--control-icon-color);
  opacity: var(--control-icon-opacity);
  transition: color var(--transition-base-speed);
}

.pagination__control-link {
  --pagination-control-link-color: var(--color-black);
  --pagination-control-link-background-color: transparent;
  position: absolute;
  inset: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--pagination-control-link-color);
  background-color: var(--pagination-control-link-background-color);
}
.pagination__control-link:focus-visible {
  --pagination-control-link-color: var(--color-spark-of-joy);
}
@media (hover: hover) {
  .pagination__control-link:hover {
    --pagination-control-link-color: var(--color-spark-of-joy);
  }
}

.pagination__control-link--disabled {
  cursor: default;
  opacity: var(--pagination-disabled-opacity);
  pointer-events: none;
}

.pagination__control-link-inner {
  display: flex;
  align-items: center;
  justify-content: center;
}

.pagination__control-link-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* ==========================================================================
	Site Search
============================================================================= */
.site-search {
  position: relative;
}
:where(.no-js) .site-search {
  display: none;
}

.site-search__header {
  flex: 0 0 30%;
  margin-inline-start: auto;
}
@media print {
  .site-search__header {
    display: none;
  }
}

.site-search__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.site-search__menu {
  margin-block-end: 1.875rem;
}

.site-search__label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.site-search__field {
  position: relative;
  display: grid;
  gap: 0.625rem;
  grid-template-columns: minmax(0, 1fr) max-content;
}

.site-search__input {
  flex: 1;
  color: inherit;
  font: inherit;
  appearance: none;
  background: none;
  border: 0.0625rem solid;
  border-radius: 0;
  padding-inline: 0.625rem;
}
.site-search__input::placeholder {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.site-search--menu .site-search__input::placeholder {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: -0.01375rem;
  color: rgba(255, 255, 255, 0.4);
}
.site-search--menu .site-search__input {
  border: none;
  border-bottom: 0.125rem solid #d0dd28;
}

.site-search__submit :where(.button-bordered) {
  inline-size: 3rem;
  aspect-ratio: 1;
}
.site-search__submit :where(.button-bordered__inner) {
  block-size: 100%;
  inline-size: 100%;
  display: grid;
  gap: 0;
}
.site-search__submit :where(.button-bordered__label) {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.site-search__button {
  inline-size: 3rem;
  aspect-ratio: 1;
  position: relative;
  color: var(--color-black);
  border: 0.0625rem solid;
}

.site-search__button-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.site-search--menu .site-search__submit :where(.button-bordered) {
  inline-size: auto;
  aspect-ratio: auto;
  border-radius: 1.25rem;
  border: 0 solid transparent;
  background: #d0dd28;
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
}
.site-search--menu .site-search__submit :where(.button-bordered__inner) {
  block-size: 100%;
  inline-size: 100%;
  display: grid;
  gap: 0;
}
.site-search--menu .site-search__submit :where(.button-bordered__label) {
  block-size: auto;
  inline-size: auto;
  position: relative;
  border: unset;
  clip: unset;
  margin: auto;
  overflow: unset;
  padding: unset;
}
.site-search--menu .site-search__submit :where(.button-bordered__icon) {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* ==========================================================================
	Google Translate
============================================================================= */
#google_translate_element {
  clear: both;
}
#google_translate_element .goog-te-gadget {
  font-size: 0.75rem;
}
#google_translate_element .goog-te-gadget-simple {
  background-color: var(--color-white);
  border: 0;
  border-radius: 0.25rem;
  padding: 0.625rem;
}
#google_translate_element .goog-te-gadget-simple:focus-visible {
  background-color: rgba(var(--color-white), 0.85);
}
@media (hover: hover) {
  #google_translate_element .goog-te-gadget-simple:hover {
    background-color: rgba(var(--color-white), 0.85);
  }
}
#google_translate_element .goog-te-menu-value [style*=border-left] {
  display: none;
}
#google_translate_element .goog-te-menu-value span:last-child {
  position: relative;
  color: transparent !important;
}
#google_translate_element .goog-te-menu-value span:last-child::before {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  rotate: x 0deg;
  scale: 0.75 1;
  translate: -50% -50%;
  border: 0.375rem solid transparent;
  border-block-start-color: black;
  content: "";
  margin-block-start: 0.1875rem;
}
#google_translate_element .goog-te-menu-value span:last-child[style*="213"]::before {
  rotate: x 180deg;
  scale: 0.75 1;
  translate: -50% -50%;
  margin-block-start: -0.125rem;
}

/* Typography
============================================================================= */
.typography {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}
.typography :where(a:not(.wysiwyg-button)) {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-green-connection);
  text-decoration-thickness: 0.0625rem;
}
.typography :where(a:not(.wysiwyg-button)):focus-visible {
  color: var(--color-dream-dragon-green);
  text-decoration-color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .typography :where(a:not(.wysiwyg-button)):hover {
    color: var(--color-dream-dragon-green);
    text-decoration-color: var(--color-dream-dragon-green);
  }
}
.typography :where(p) {
  margin-block: 1.875rem;
}
.typography :where(h1, h2, h3, h4, h5, h6) {
  color: var(--color-dream-dragon-green);
  margin-block: 3.125rem 0.625rem;
}
.typography :where(h1, h2, h3, h4, h5, h6) + * {
  margin-block-start: 0;
}
.typography :where(h1) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  letter-spacing: clamp(-0.15em, -0.1vw, 0em);
}
.typography :where(h2) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}
.typography :where(h3) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}
.typography :where(h4) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}
.typography :where(h5) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  text-transform: uppercase;
}
.typography :where(h6) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.intro {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: var(--font-size-intro-text);
  line-height: var(--line-height-intro-text);
}
.intro :where(p) {
  margin-block: 0;
}

.copy {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.small {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.caption {
  font-size: var(--font-size-caption-text);
  line-height: var(--line-height-caption-text);
}

/* WYSIWYG Buttons
============================================================================= */
:where(.wysiwyg-button) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  inline-size: max-content;
  display: block;
  color: var(--color-white);
  font-weight: 700;
  background-color: var(--color-black);
  clear: both;
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
}
:where([style*="text-align: right"], [style*="text-align:right"]) :where(.wysiwyg-button) {
  margin-inline-start: auto;
}

:where([style*="text-align: center"], [style*="text-align:center"]) :where(.wysiwyg-button) {
  margin-inline: auto;
}

/* WYSIWYG Images
============================================================================= */
.typography :where(img) {
  block-size: auto;
  max-inline-size: 100%;
  border-radius: 1.25rem;
}
.typography :where(figure:has(img)) {
  max-inline-size: 100%;
}
.typography :where(.block_left,
.block_right,
.block_center,
.alignleft,
.alignright,
.aligncenter,
.alignnone,
.align-left,
.align-right,
.align-center) {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
  margin-block: 1.25rem;
}
.typography :where(.block_left,
.block_right,
.block_center,
.alignleft,
.alignright,
.aligncenter,
.alignnone,
.align-left,
.align-right,
.align-center) img {
  display: block;
}
.typography :where(.block_left,
.block_right,
.block_center,
.alignleft,
.alignright,
.aligncenter,
.alignnone,
.align-left,
.align-right,
.align-center) figcaption,
.typography :where(.block_left,
.block_right,
.block_center,
.alignleft,
.alignright,
.aligncenter,
.alignnone,
.align-left,
.align-right,
.align-center) .wp-caption-text {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}
.typography :where(.block_left, .block_right, .alignleft, .alignright, .align-left, .align-right) {
  max-inline-size: 50%;
}
@media (max-width:31.1875rem) {
  .typography :where(.block_left, .block_right, .alignleft, .alignright, .align-left, .align-right) {
    max-inline-size: 100%;
    float: none;
    margin-inline: 0;
  }
}
@media (min-width:31.25rem) {
  .typography :where(.block_left, .block_right, .alignleft, .alignright, .align-left, .align-right) {
    margin-block: 0.625rem 1.875rem;
  }
}
@media (min-width:31.25rem) {
  .typography :where(.block_left, .alignleft, .align-left) {
    float: inline-start;
    margin-inline-end: 1.875rem;
  }
}
@media (min-width:31.25rem) {
  .typography :where(.block_right, .alignright, .align-right) {
    float: inline-end;
    margin-inline-start: 1.875rem;
  }
}
.typography :where(.block_center, .aligncenter, .align-center) {
  text-align: center;
  margin-inline: auto;
}
.typography :where(.block_center, .aligncenter, .align-center) img {
  margin-inline: auto;
}

/* Blockquote
============================================================================= */
.typography :where(blockquote) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: var(--font-size-intro-text);
  line-height: var(--line-height-intro-text);
  margin-block: 3.125rem;
}
.typography :where(blockquote) p {
  margin-block: 0;
}
.typography :where(.quote) {
  position: relative;
  display: grid;
  gap: 2.5rem;
  grid-template-columns: 100%;
  border: 0.0625rem solid #d0dd28;
  background-color: #d0dd28;
  border-radius: 1.25rem;
  margin-block: 3.125rem;
  padding-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem) clamp(7.5rem, 6.63194rem + (2.7777777778vw), 8.75rem);
  padding-inline: clamp(2.5rem, -3.35938rem + (18.75vw), 10.9375rem) clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}
.typography :where(.quote)::before {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--color-green-connection);
  font-family: var(--font-sans-alt);
  font-size: clamp(7.8125rem, 1.30208rem + (20.8333333333vw), 17.1875rem);
  font-weight: 700;
  line-height: 1;
  content: "“";
}
@media (max-width:46.1875rem) {
  .typography :where(.quote)::before {
    display: none;
  }
}
.typography :where(.quote)::after {
  position: absolute;
  bottom: 0;
  left: 0;
  inline-size: 100%;
  block-size: 5rem;
  content: "";
  background-color: #005f40;
  mask: url("../images/band_pattern_2.svg");
  mask-repeat: repeat-x;
  mask-size: 60rem 5rem;
}
.typography :where(.quote__content) {
  margin: 0;
  font-size: clamp(1.5rem, 1.15278rem + (1.1111111111vw), 2rem);
  font-weight: 400;
  line-height: 1.4;
}
.typography :where(.quote__content) p:first-of-type {
  margin-block-start: 0;
}
.typography :where(.quote__content) p:last-of-type {
  margin-block-end: 0;
}
.typography :where(.quote__caption) {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  display: flex;
  flex-direction: column;
}
.typography :where(.quote__caption-name) {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  color: var(--color-dream-dragon-green);
}
/* Lists
============================================================================= */
.typography :where(ol),
.typography :where(ul) {
  padding-inline-start: 0;
}
.typography :where(ol) li,
.typography :where(ul) li {
  margin-block: 0.75rem;
}
.typography :where(ol) ol,
.typography :where(ol) ul,
.typography :where(ul) ol,
.typography :where(ul) ul {
  translate: 0;
  margin-block: 0;
}
.typography :where(ol) ::marker,
.typography :where(ul) ::marker {
  font-family: var(--font-sans);
  font-weight: bold;
  color: var(--color-dream-dragon-green);
}
.typography :where(ul) {
  margin-inline-start: 0.9em;
  list-style: outside disc;
}
.typography :where(ol) {
  margin-inline-start: 1.2em;
}

/* Tables
============================================================================= */
.typography :where(table) {
  inline-size: 100%;
  border: 0.0625rem solid var(--color-grey);
  border-collapse: collapse;
  background-color: #FBFBFB;
  border-radius: 0.625rem;
  overflow: hidden;
}
.typography :where(table) th,
.typography :where(table) td {
  border: 0.0625rem solid #EEE;
  padding-block: 0.75rem;
  padding-inline: 1.25rem;
  vertical-align: top;
}
.typography :where(table) th {
  text-align: left;
}
.typography :where(table) {
  /* Header row */
}
.typography :where(table) thead {
  background-color: var(--color-spark-of-joy);
}
.typography :where(table) thead th,
.typography :where(table) thead td {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
  color: var(--color-black);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-color: var(--color-spark-of-joy);
}
.typography :where(table) {
  /* Body cells */
}
.typography :where(table) td {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
  color: var(--color-text-grey);
}

.table-wrapper {
  position: relative;
  margin-block: 2.5rem;
}

.table-wrapper--overflow {
  position: relative;
  border: 0.0625rem solid var(--color-grey);
}
.table-wrapper--overflow::after {
  block-size: 100%;
  inline-size: 1.25rem;
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.15));
  content: "";
}

.table-wrapper__inner {
  overflow-y: hidden;
}

/* ==========================================================================
   iframe
============================================================================= */
.typography :where(.video-frame) {
  aspect-ratio: 16/9;
}
@media print {
  .typography :where(.video-frame) {
    display: none;
  }
}
.typography :where(.video-frame iframe) {
  block-size: 100%;
  inline-size: 100%;
  object-fit: cover;
}

/* ==========================================================================
   Spacing
============================================================================= */
.typography > :where(:first-child) {
  margin-block-start: 0;
}
.typography > :where(:last-child) {
  margin-block-end: 0;
}

/* ==========================================================================
	Audience Navigation
============================================================================= */
@media (min-width:61.25rem) {
  .audience-nav {
    position: relative;
  }
}
.audience-nav :where(.button-toggle) {
  inline-size: 100%;
}

.audience-nav__panel {
  background-color: var(--color-white);
  box-shadow: rgba(0, 0, 0, 0.24) 0 0.1875rem 0.5rem;
}
:where(.toggle-nav-overlay) .audience-nav__panel {
  inline-size: 12.5rem;
  inset-inline-end: 0;
}

.audience-nav__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.audience-nav__list {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.audience-nav__item-link {
  display: block;
  text-decoration: underline;
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
}
.audience-nav__item-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .audience-nav__item-link:hover {
    color: var(--color-black);
  }
}

/* ==========================================================================
	Breadcrumb Navigation
============================================================================= */
@media print {
  .breadcrumb__nav {
    display: none;
  }
}

.breadcrumb__nav-header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* Breadcrumb Links
============================================================================= */
.breadcrumb__list {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.03rem;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  background-image: url("../images/line_pattern_color.svg");
  background-repeat: repeat-x;
  background-position: right center;
}

.breadcrumb__item {
  display: flex;
  align-items: center;
  background-color: #fff;
}
@media (max-width:61.1875rem) {
  .breadcrumb__item:not(:nth-last-of-type(-n + 2)) {
    display: none;
  }
}

.breadcrumb__pill--link {
  text-decoration: none;
  color: #005f40;
  padding: 0.3125rem;
}
.breadcrumb__pill--link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .breadcrumb__pill--link:hover {
    color: var(--color-black);
  }
}
:where(.page-header--has-background) .breadcrumb__pill--link {
  color: inherit;
}

.breadcrumb__pill-inner {
  display: flex;
  align-items: center;
}

.breadcrumb__pill-icon {
  position: relative;
  inset-block-start: -0.125rem;
  margin-inline-end: 0.875rem;
  color: #62bb46;
}

:where(.breadcrumb__item:last-child) .breadcrumb__pill-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.breadcrumb__divider {
  margin-inline: 0.625rem;
}
:where(.breadcrumb__item:nth-last-child(2)) .breadcrumb__divider {
  display: none;
}
.breadcrumb__divider .icon {
  width: 0.3125rem;
  height: 0.625rem;
  aspect-ratio: 1/2;
  fill: #62bb46;
}

.breadcrumb__end {
  margin-inline-start: 0.25rem;
}

/* ==========================================================================
	Footer Navigation
============================================================================= */
.footer-nav__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.footer-nav__list {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(1.25rem, 1.07639rem + (0.5555555556vw), 1.5rem);
  line-height: 0.9;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--fw-column-gap);
}

.footer-nav__item-link {
  display: block;
  padding-block: 0.75rem;
  text-decoration: none;
  text-decoration-color: #62bb46;
  color: #fff;
  width: fit-content;
}
.footer-nav__item-link:focus-visible {
  text-decoration-line: underline;
  text-decoration-color: #62bb46;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
@media (hover: hover) {
  .footer-nav__item-link:hover {
    text-decoration-line: underline;
    text-decoration-color: #62bb46;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
  }
}

.footer-nav__children {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: clamp(0.875rem, 0.70139rem + (0.5555555556vw), 1.125rem);
  line-height: 0.9;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 0.75rem;
}

.footer-nav__child-link {
  text-decoration: none;
  color: #fff;
  width: fit-content;
}
.footer-nav__child-link:focus-visible {
  text-decoration: underline;
}
@media (hover: hover) {
  .footer-nav__child-link:hover {
    text-decoration: underline;
  }
}

/* ==========================================================================
	Toggle Navigation
============================================================================= */
.toggle-nav {
  position: relative;
}

:where(.no-js .toggle-nav-inline) .toggle-nav__button {
  display: none;
}

.toggle-nav__panel {
  transform: scaleY(1);
  height: auto;
  display: none;
}
:where(.toggle-nav-inline) .toggle-nav__panel {
  display: none;
}
:where(.toggle-nav-inline.state-swap-active) .toggle-nav__panel, :where(.no-js .toggle-nav-inline) .toggle-nav__panel {
  display: block;
}
:where(.toggle-nav-overlay.state-swap-active) .toggle-nav__panel {
  display: block;
}

/* ==========================================================================
	Reveal Navigation
============================================================================= */
:where(.no-js) .reveal-nav__item-toggle {
  display: none;
}

/* Collapse
============================================================================= */
:where(.collapse-nav) .reveal-nav__children {
  display: none;
}
:where(.collapse-nav .reveal-nav__item.state-swap-active) .reveal-nav__children, :where(.no-js .collapse-nav) .reveal-nav__children {
  display: block;
}

/* Dropdown
============================================================================= */
:where(.dropdown-nav) .reveal-nav__item {
  --children-opacity: 0;
  --children-pointer-events: none;
}
:where(.dropdown-nav) .reveal-nav__item.state-swap-active {
  --children-opacity: 1;
  --children-pointer-events: auto;
}
@media (hover: hover) {
  :where(.dropdown-nav) .reveal-nav__item:hover {
    --children-opacity: 1;
    --children-pointer-events: auto;
  }
}

:where(.dropdown-nav) .reveal-nav__item-inner {
  position: relative;
}

:where(.dropdown-nav) .reveal-nav__toggle {
  position: absolute;
  inset-block: 0;
  inset-inline-end: 0;
  display: block;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--transition-base-speed);
}
:where(.dropdown-nav) .reveal-nav__toggle:focus, :where(.dropdown-nav) .reveal-nav__toggle.state-swap-active {
  opacity: 1;
  pointer-events: auto;
}
:where(.no-js .dropdown-nav) .reveal-nav__toggle {
  display: none;
}

:where(.dropdown-nav) .reveal-nav__children {
  position: absolute;
  opacity: var(--children-opacity);
  pointer-events: var(--children-pointer-events);
  transition: opacity var(--transition-base-speed);
}

/* ==========================================================================
	Main Collapse Nav
============================================================================= */
.main-nav-collapse__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.main-nav-collapse__list {
  display: grid;
  gap: 0.25rem;
  grid-template-columns: 100%;
}

.main-nav-collapse__item-inner {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: minmax(0, 1fr) 3rem;
}

.main-nav-collapse__item-link {
  display: block;
  text-decoration: underline;
  padding-block: 0.625rem;
}
.main-nav-collapse__item-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .main-nav-collapse__item-link:hover {
    color: var(--color-black);
  }
}

.main-nav-collapse__item-toggle-icon {
  display: block;
  transition: rotate var(--transition-base-speed);
}
:where(.main-nav-collapse__item-toggle.fs-swap-active) .main-nav-collapse__item-toggle-icon {
  rotate: 180deg;
}

.main-nav-collapse__child-link {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
  display: block;
  padding-block: 0.625rem;
}
.main-nav-collapse__child-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .main-nav-collapse__child-link:hover {
    color: var(--color-black);
  }
}

/* ==========================================================================
	Main Dropdown Nav
============================================================================= */
.main-nav-dropdown__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.main-nav-dropdown__list {
  display: flex;
  gap: 1.25rem;
}
.main-nav-dropdown--mobile-nav .main-nav-dropdown__list {
  flex-direction: column;
}

.main-nav-dropdown--mobile-nav .main-nav-dropdown__item {
  width: fit-content;
}

.main-nav-dropdown__item-link {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 1.8125rem;
  display: block;
  padding-block: 0;
  padding-inline-end: 0;
}
@media (min-width:61.25rem) {
  .main-nav-dropdown__item-link {
    font-size: 1.25rem;
    padding-block: 0.625rem;
    padding-inline-end: 1.25rem;
  }
}

.main-nav-dropdown__item-link-label {
  text-decoration: none;
  background-image: linear-gradient(#d0dd28, #d0dd28);
  background-position: 0% 90%;
  background-repeat: no-repeat;
  background-size: 0% 0.125rem;
  transition: background-size 0.5s;
}
.main-nav-dropdown__item-link-label:focus-visible {
  background-size: 100% 0.125rem;
}
@media (hover: hover) {
  .main-nav-dropdown__item-link-label:hover {
    background-size: 100% 0.125rem;
  }
}
.main-nav-dropdown__item-link-label {
  color: #fff;
  transition: background-size 0.5s, color 0.5s;
}
.main-nav-dropdown__item-link-label:hover {
  color: #fff;
}
@media (min-width:61.25rem) {
  .main-nav-dropdown__item-link-label:hover {
    color: #005f40;
  }
}
@media (min-width:61.25rem) {
  .main-nav-dropdown__item-link-label {
    color: #005f40;
  }
}
.main-nav-dropdown--mobile-nav .main-nav-dropdown__item-link-label {
  background-image: none;
  text-decoration-line: underline;
  text-decoration-color: #d0dd28;
  text-underline-offset: 0.25rem;
}

.main-nav-dropdown__children {
  display: none;
  inline-size: 12.5rem;
  background-color: var(--color-white);
  box-shadow: rgba(0, 0, 0, 0.24) 0 0.1875rem 0.5rem;
}

.main-nav-dropdown__child-link {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
  display: block;
  text-decoration: underline;
  color: #000;
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
}
.main-nav-dropdown__child-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .main-nav-dropdown__child-link:hover {
    color: var(--color-black);
  }
}

/* ==========================================================================
	Secondary Navigation Common
============================================================================= */
@media (min-width:61.25rem) {
  .secondary-nav {
    block-size: 100%;
  }
}

.secondary-nav__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.secondary-nav__list {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 0.75rem;
  color: #005f40;
}
@media (min-width:61.25rem) {
  .secondary-nav__list {
    block-size: 100%;
    display: flex;
    gap: 1.25rem;
    justify-content: flex-end;
    align-items: end;
  }
}

.secondary-nav__item-link {
  display: block;
  position: relative;
  width: fit-content;
  text-decoration: none;
  color: #fff;
  padding-block: 0.3125rem;
  margin-inline: 1.25rem 0;
}
@media (min-width:61.25rem) {
  .secondary-nav__item-link {
    margin-inline: 0 1.25rem;
    color: #005f40;
  }
}
.secondary-nav__item-link:focus-visible {
  text-decoration: underline;
}
@media (min-width:61.25rem) {
  .secondary-nav__item-link:focus-visible {
    color: var(--color-black);
  }
}
@media (hover: hover) {
  .secondary-nav__item-link:hover {
    text-decoration: underline;
  }
}
@media (hover: hover) and (min-width:61.25rem) {
  .secondary-nav__item-link:hover {
    color: var(--color-black);
  }
}
.secondary-nav__item-link:after {
  content: "";
  position: absolute;
  top: 0.375rem;
  left: -1.125rem;
  height: 0.9375rem;
  width: 0.9375rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15"><g><path d="M2.50008 13.1259C2.15631 13.1259 1.86202 13.0035 1.61721 12.7586C1.3724 12.5138 1.25 12.2195 1.25 11.8758V4.37528H2.50008V11.8758H11.8757V13.1259H2.50008ZM5.00024 10.6257C4.65647 10.6257 4.36218 10.5033 4.11737 10.2585C3.87257 10.0137 3.75016 9.71938 3.75016 9.37561V1.87512H14.3759V9.37561C14.3759 9.71938 14.2535 10.0137 14.0086 10.2585C13.7638 10.5033 13.4695 10.6257 13.1258 10.6257H5.00024ZM5.00024 9.37561H13.1258V3.1252H5.00024V9.37561ZM6.25033 7.50049H8.75049V4.37528H6.25033V7.50049ZM9.37553 7.50049H11.8757V6.25041H9.37553V7.50049ZM9.37553 5.62537H11.8757V4.37528H9.37553V5.62537Z" fill="%2362BB46"/></g></svg>');
}
@media (min-width:61.25rem) {
  .secondary-nav__item-link:after {
    left: unset;
    right: -1.125rem;
  }
}
.secondary-nav__item-link[id*=__link-1]:after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15"><g><path d="M2.50008 13.1259C2.15631 13.1259 1.86202 13.0035 1.61721 12.7586C1.3724 12.5138 1.25 12.2195 1.25 11.8758V4.37528H2.50008V11.8758H11.8757V13.1259H2.50008ZM5.00024 10.6257C4.65647 10.6257 4.36218 10.5033 4.11737 10.2585C3.87257 10.0137 3.75016 9.71938 3.75016 9.37561V1.87512H14.3759V9.37561C14.3759 9.71938 14.2535 10.0137 14.0086 10.2585C13.7638 10.5033 13.4695 10.6257 13.1258 10.6257H5.00024ZM5.00024 9.37561H13.1258V3.1252H5.00024V9.37561ZM6.25033 7.50049H8.75049V4.37528H6.25033V7.50049ZM9.37553 7.50049H11.8757V6.25041H9.37553V7.50049ZM9.37553 5.62537H11.8757V4.37528H9.37553V5.62537Z" fill="%2362BB46"/></g></svg>');
}
.secondary-nav__item-link[id*=__link-2]:after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15"><g><path d="M5.62524 10.3132C5.18772 10.3132 4.8179 10.1621 4.5158 9.86001C4.21369 9.55791 4.06264 9.18809 4.06264 8.75056C4.06264 8.31304 4.21369 7.94322 4.5158 7.64112C4.8179 7.33901 5.18772 7.18796 5.62524 7.18796C6.06277 7.18796 6.43259 7.33901 6.73469 7.64112C7.03679 7.94322 7.18785 8.31304 7.18785 8.75056C7.18785 9.18809 7.03679 9.55791 6.73469 9.86001C6.43259 10.1621 6.06277 10.3132 5.62524 10.3132ZM3.12508 13.7509C2.78131 13.7509 2.48702 13.6285 2.24221 13.3837C1.9974 13.1389 1.875 12.8446 1.875 12.5008V3.75024C1.875 3.40647 1.9974 3.11218 2.24221 2.86737C2.48702 2.62256 2.78131 2.50016 3.12508 2.50016H3.75012V1.25008H5.0002V2.50016H10.0005V1.25008H11.2506V2.50016H11.8757C12.2194 2.50016 12.5137 2.62256 12.7585 2.86737C13.0033 3.11218 13.1257 3.40647 13.1257 3.75024V12.5008C13.1257 12.8446 13.0033 13.1389 12.7585 13.3837C12.5137 13.6285 12.2194 13.7509 11.8757 13.7509H3.12508ZM3.12508 12.5008H11.8757V6.2504H3.12508V12.5008ZM3.12508 5.00032H11.8757V3.75024H3.12508V5.00032Z" fill="%2362BB46"/></g></svg>');
}
.secondary-nav__item-link[id*=__link-3]:after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15" fill="none"><g><path d="M3.12508 13.1259C2.78131 13.1259 2.48702 13.0035 2.24221 12.7586C1.9974 12.5138 1.875 12.2195 1.875 11.8758V3.1252C1.875 2.78143 1.9974 2.48714 2.24221 2.24233C2.48702 1.99753 2.78131 1.87512 3.12508 1.87512H11.8757C12.2194 1.87512 12.5137 1.99753 12.7585 2.24233C13.0033 2.48714 13.1257 2.78143 13.1257 3.1252V11.8758C13.1257 12.2195 13.0033 12.5138 12.7585 12.7586C12.5137 13.0035 12.2194 13.1259 11.8757 13.1259H3.12508ZM3.12508 11.8758H11.8757V3.1252H3.12508V11.8758ZM3.75012 10.6257H11.2506L8.90671 7.50049L7.03159 10.0007L5.62524 8.12553L3.75012 10.6257Z" fill="%2362BB46"/></g></svg>');
}
.secondary-nav__item-link[id*=__link-4]:after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15" fill="none"><g><path d="M3.12508 11.157C3.68762 10.6049 4.34131 10.1699 5.08615 9.8522C5.83099 9.53447 6.63573 9.37561 7.50037 9.37561C8.36501 9.37561 9.16975 9.53447 9.91459 9.8522C10.6594 10.1699 11.3131 10.6049 11.8757 11.157V3.1252H3.12508V11.157ZM7.50037 8.12553C8.10457 8.12553 8.62023 7.91197 9.04734 7.48486C9.47445 7.05775 9.68801 6.54209 9.68801 5.93789C9.68801 5.33368 9.47445 4.81802 9.04734 4.39091C8.62023 3.9638 8.10457 3.75024 7.50037 3.75024C6.89616 3.75024 6.3805 3.9638 5.95339 4.39091C5.52628 4.81802 5.31272 5.33368 5.31272 5.93789C5.31272 6.54209 5.52628 7.05775 5.95339 7.48486C6.3805 7.91197 6.89616 8.12553 7.50037 8.12553ZM3.12508 13.1259C2.78131 13.1259 2.48702 13.0035 2.24221 12.7586C1.9974 12.5138 1.875 12.2195 1.875 11.8758V3.1252C1.875 2.78143 1.9974 2.48714 2.24221 2.24233C2.48702 1.99753 2.78131 1.87512 3.12508 1.87512H11.8757C12.2194 1.87512 12.5137 1.99753 12.7585 2.24233C13.0033 2.48714 13.1257 2.78143 13.1257 3.1252V11.8758C13.1257 12.2195 13.0033 12.5138 12.7585 12.7586C12.5137 13.0035 12.2194 13.1259 11.8757 13.1259H3.12508ZM4.20328 11.8758H10.7975C10.3391 11.4695 9.82083 11.1596 9.24267 10.946C8.66451 10.7325 8.08374 10.6257 7.50037 10.6257C6.917 10.6257 6.33102 10.7325 5.74244 10.946C5.15386 11.1596 4.64081 11.4695 4.20328 11.8758ZM7.50037 6.87545C7.23993 6.87545 7.01856 6.7843 6.83626 6.60199C6.65396 6.41969 6.56281 6.19832 6.56281 5.93789C6.56281 5.67745 6.65396 5.45608 6.83626 5.27378C7.01856 5.09148 7.23993 5.00033 7.50037 5.00033C7.7608 5.00033 7.98217 5.09148 8.16447 5.27378C8.34678 5.45608 8.43793 5.67745 8.43793 5.93789C8.43793 6.19832 8.34678 6.41969 8.16447 6.60199C7.98217 6.7843 7.7608 6.87545 7.50037 6.87545Z" fill="%2362BB46"/></g></svg>');
}

/* ==========================================================================
	Skip Navigation
============================================================================= */
.skip-nav__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* ==========================================================================
	Social Navigation
============================================================================= */
@media print {
  .social-nav {
    display: none;
  }
}

.social-nav__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* Social Links
============================================================================= */
.social-nav__list {
  display: flex;
  gap: 0 1.25rem;
  align-items: center;
}

.social-nav__item-link {
  display: block;
  padding-block: 0.625rem;
}
.footer__social-nav .social-nav__item-link {
  color: #62bb46;
}
.social-nav__item-link:focus-visible {
  color: #fff;
}
@media (hover: hover) {
  .social-nav__item-link:hover {
    color: #fff;
  }
}

.social-nav__item-link-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* ==========================================================================
	Sub Navigation Flat
============================================================================= */
.sub-nav-flat__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.sub-nav-flat__list {
  display: flex;
  flex-direction: row;
  column-gap: 1.5625rem;
  justify-content: center;
}

.sub-nav-flat__item-link {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.4;
  color: #000;
  text-decoration-line: underline;
  text-decoration-color: #62bb46;
  text-decoration-thickness: auto;
  text-underline-offset: 0;
  text-underline-position: from-font;
  transition: all 0.3s ease;
  padding-block: 0.625rem;
}
.sub-nav-flat__item-link:focus-visible {
  color: #000;
  text-decoration-color: #000;
  text-underline-offset: 0.1875rem;
}
@media (hover: hover) {
  .sub-nav-flat__item-link:hover {
    color: #000;
    text-decoration-color: #000;
    text-underline-offset: 0.1875rem;
  }
}

.sub-nav-flat__children {
  display: none;
}

/* ==========================================================================
	Sub Navigation Toggle
============================================================================= */
.sub-nav-toggle__button {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}

.sub-nav-toggle__panel {
  inline-size: 100%;
  width: fit-content;
  margin-block-start: 0.9375rem;
}

.sub-nav-toggle__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.sub-nav-toggle__list {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
}

.sub-nav-toggle__item-link {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.4;
  color: #000;
  text-decoration-line: underline;
  text-decoration-color: #62bb46;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  padding-block: 0.625rem;
}
.sub-nav-toggle__item-link:focus-visible {
  color: #000;
}
@media (hover: hover) {
  .sub-nav-toggle__item-link:hover {
    color: #000;
  }
}

/* ==========================================================================
	Utility Navigation
============================================================================= */
.utility-nav__title {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.utility-nav__list {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 0.9;
  display: flex;
  column-gap: 1.25rem;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width:61.25rem) {
  .utility-nav__list {
    display: flex;
    gap: 1.875rem;
    justify-content: unset;
  }
}

.utility-nav__item-link {
  display: block;
  text-decoration: none;
  color: #fff;
  padding-block: 0.625rem;
}
.utility-nav__item-link:focus-visible {
  color: #fff;
  text-decoration: underline;
}
@media (hover: hover) {
  .utility-nav__item-link:hover {
    color: #fff;
    text-decoration: underline;
  }
}

/* ==========================================================================
	Accordion
============================================================================= */
.accordion {
  background-color: #d0dd28;
  padding-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

@media (min-width:46.25rem) {
  .accordion__inner {
    max-width: 66.66%;
    margin: auto;
  }
}

.accordion__header {
  display: grid;
  gap: 2.5rem;
  grid-template-columns: 100%;
  margin-block-end: 1.875rem;
  margin-inline: auto;
}
@media (min-width:46.25rem) {
  .accordion__header {
    width: 66%;
    gap: 1.875rem;
  }
}

.accordion__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  text-align: center;
  color: #000;
}

.accordion__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  text-align: center;
}

.accordion__item {
  background-image: url("../images/line_pattern_color.svg");
  background-repeat: repeat-x;
  background-position: right bottom;
  overflow: visible;
}
.accordion__item:last-child {
  background-image: none;
}

.accordion__item-button {
  inline-size: 100%;
  text-align: start;
  color: inherit;
}

.accordion__item-button-inner {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  padding-block: 2.5rem 3rem;
}
.state-swap-enabled.state-swap-active .accordion__item-button-inner {
  padding-block: 2.5rem 0.5rem;
}
@media (min-width:46.25rem) {
  .accordion__item-button-inner {
    padding-block: 3.75rem 4.25rem;
  }
  .state-swap-enabled.state-swap-active .accordion__item-button-inner {
    padding-block: 3.75rem 0.5rem;
  }
}
.accordion__item-button-inner:hover {
  color: #005f40;
}

.accordion__item-button-label {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 0.625rem;
}

.accordion__item-button-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(2rem, 1.65278rem + (1.1111111111vw), 2.5rem);
  line-height: 0.9;
}

.accordion__item-button-icon {
  inline-size: 2.8125rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  mask: url("../images/button_toggle_bgnd.svg");
  mask-repeat: no-repeat;
  mask-size: 2.8125rem 2.25rem;
  min-height: 2.25rem;
  transition-duration: var(--transition-base-speed);
  transition-property: opacity, background-color, rotate, translate;
}
.accordion__item-button-inner:hover .accordion__item-button-icon {
  background-color: #62bb46;
}
:where(.accordion__item.state-swap-active) .accordion__item-button-icon {
  rotate: 90deg;
  background-color: #000;
}
@media print {
  .accordion__item-button-icon {
    display: none;
  }
}
.accordion__item-button-icon::before, .accordion__item-button-icon::after {
  block-size: 0.125rem;
  inline-size: 0.875rem;
  position: absolute;
  inset: 50% auto auto 50%;
  translate: -50% -50%;
  background-color: #000;
  border-radius: 0.125rem;
  content: "";
  transition-duration: var(--transition-base-speed);
  transition-property: opacity, background-color, rotate, translate;
}
.accordion__item-button-icon::before {
  rotate: -90deg;
}
:where(.accordion__item.state-swap-active) .accordion__item-button-icon::before {
  rotate: -90deg;
  background-color: #d0dd28;
}
.accordion__item-button-icon::after {
  rotate: 0deg;
}
:where(.accordion__item.state-swap-active) .accordion__item-button-icon::after {
  rotate: -90deg;
  background-color: #d0dd28;
}
:where(.no-js) .accordion__item-button-icon {
  display: none;
}

.accordion__item-content {
  display: none;
  overflow: hidden;
  padding-block: 1.25rem 4.25rem;
}
@media print {
  .accordion__item-content {
    display: block;
  }
}
:where(.accordion__item.state-swap-active) .accordion__item-content, :where(.no-js) .accordion__item-content {
  display: block;
}

/* ==========================================================================
	Alert
============================================================================= */
.alert {
  position: relative;
  background-color: #FFCA3A;
}
.alert.alert--enabled {
  display: none;
}
.alert.alert--visible {
  display: block;
}

.alert__inner {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
  padding-block: 1.875rem;
}

.alert__header {
  min-width: 1.625rem;
}

.alert__header-icon .icon {
  fill: #D72A1D;
}

.alert__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
  margin-inline-end: 6.25rem;
}
@media print {
  .alert__title {
    margin-inline-end: 0;
  }
}

.alert__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.4;
}
.alert__description a {
  font-weight: unset;
  color: inherit;
}

.alert__close {
  display: flex;
  min-width: 1.25rem;
  margin-inline-start: auto;
}
@media print {
  .alert__close {
    display: none;
  }
}
:where(.no-js) .alert__close {
  display: none;
}
.alert__close .button__label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}
.alert__close .icon {
  fill: #D72A1D;
}

/* ==========================================================================
	Card Group
============================================================================= */
.card-group {
  padding-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
  background-color: #fff;
}
.card-group.comp_style__alt {
  background-color: #d0dd28;
}

.card-group__header {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: space-between;
  margin-block-end: 1.875rem;
}
@media (min-width:46.25rem) {
  .card-group__header {
    flex-direction: row;
  }
}

.card-group__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  color: #000;
  flex: 1 0 50%;
}
.card-group__title:last-child {
  text-align: center;
}

.card-group__header-inner {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  flex: 0 0 41.6%;
}

.card-group__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.card-group__items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width:46.25rem) {
  .card-group__items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width:76.25rem) {
  .card-group__items {
    grid-template-columns: repeat(4, 1fr);
  }
}

.card-group__item {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.card-group__item:after {
  position: relative;
  content: "";
  border-bottom: 0.0625rem solid rgba(98, 187, 70, 0.4);
  height: auto;
  display: block;
}
@media (min-width:46.25rem) {
  .card-group__item:after {
    position: absolute;
    content: "";
    top: 4em;
    right: calc(-1em - 0.03125rem);
    bottom: 4em;
    border-right: 0.0625rem solid rgba(98, 187, 70, 0.4);
    height: auto;
  }
}
.card-group__item:last-child:after {
  border-right: none;
  border-bottom: none;
}
@media (min-width:31.25rem) and (max-width:76.1875rem) {
  .card-group__item:nth-child(2):after {
    border-right: none;
  }
}
@media (min-width:76.25rem) {
  .card-group__item:nth-child(4):after {
    border-right: none;
  }
}

.card-group__item-link {
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: clamp(1.25rem, 1.03299rem + (0.6944444444vw), 1.5625rem);
  margin-block-end: 2rem;
}
@media (min-width:46.25rem) {
  .card-group__item-link {
    margin-block-end: 0;
  }
}

.card-group__item-figure {
  display: block;
  position: relative;
}

.card-group__item-figure-media {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 0;
  transition-duration: var(--transition-base-speed);
  transition-property: border-radius;
  transition-timing-function: var(--transition-base-timing);
}
.card-group__item-link:hover .card-group__item-figure-media {
  border-radius: 1.25rem;
}

.card-group__item-image {
  display: block;
  width: 100%;
  height: auto;
  block-size: auto;
  max-inline-size: 100%;
  vertical-align: middle;
  transition-duration: var(--transition-base-speed);
  transition-property: scale;
  transition-timing-function: var(--transition-base-timing);
}
.card-group__item-link:hover .card-group__item-image {
  scale: 1.05;
}

.card-group__item-wrapper {
  position: relative;
  display: flex;
  gap: 1.25rem;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  background-color: rgba(208, 221, 40, 0);
  border-radius: 1.25rem;
  transition-duration: var(--transition-base-speed);
  transition-property: background-color;
  transition-timing-function: var(--transition-base-timing);
}
.card-group__item-link:hover .card-group__item-wrapper {
  background-color: rgba(208, 221, 40, 0.6);
}
.comp_style__alt .card-group__item-link:hover .card-group__item-wrapper {
  background-color: rgba(255, 255, 255, 0.4);
}
.comp_style__alt .card-group__item-wrapper {
  background-color: rgba(255, 255, 255, 0);
}

.card-group__item-body {
  display: grid;
  grid-template-columns: 100%;
  gap: 0.625rem;
  align-items: start;
  padding-block-start: 2.125rem;
  padding-inline: 1.25rem;
}

.card-group__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(2rem, 1.65278rem + (1.1111111111vw), 2.5rem);
  line-height: 1.1;
  color: #000;
  text-decoration: none;
  transition-duration: var(--transition-base-speed);
  transition-property: -webkit-text-decoration;
  transition-property: text-decoration;
  transition-property: text-decoration, -webkit-text-decoration;
  transition-timing-function: var(--transition-base-timing);
}
.card-group__item-link:hover .card-group__item-title {
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 2%; /* 0.8px */
  text-underline-position: from-font;
}

.card-group__item-description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  color: #000;
  text-wrap: pretty;
  overflow-wrap: break-word;
}

.card-group__item-links {
  padding: 1.25rem;
  padding-block-end: 2.5rem;
}

.card-group__border {
  background-color: #005f40;
  mask: url("../images/band_pattern_2.svg");
  mask-repeat: repeat-x;
  mask-size: 60rem 5rem;
  height: 5rem;
  margin-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

/* ==========================================================================
	Carousel
============================================================================= */
.carousel {
  --carousel-item-inline-size: 85%;
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}
@media (min-width:46.25rem) {
  .carousel {
    --carousel-item-inline-size: var(--fw-columns-4);
  }
}

.carousel--single-item {
  --carousel-item-inline-size: 100%;
}

@media (min-width:46.25rem) {
  .carousel--wide {
    --carousel-item-inline-size: var(--fw-columns-6);
  }
}

.carousel__item {
  inline-size: var(--carousel-item-inline-size);
  max-inline-size: none;
}

.carousel__controls {
  position: relative;
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.carousel__controls-inner {
  display: flex;
  align-items: center;
  column-gap: var(--fw-column-gap);
}

.carousel__buttons {
  display: flex;
  column-gap: 0.625rem;
}

.carousel__button {
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.carousel__button::after {
  content: none;
}

.carousel__pagination {
  position: static;
}

.carousel__progress {
  position: static;
  flex: 1;
  border-radius: 100vmax;
  overflow: hidden;
}

/* Full-bleed — grid alignment
============================================================================= */
.carousel__swiper:where(.state-locked) .swiper-wrapper {
  flex-wrap: wrap;
  gap: var(--fw-column-gap);
  padding-inline: var(--fw-container-gutter);
}

.carousel__swiper:where(.state-locked) .swiper-slide {
  flex: 1 0 0% !important;
  min-width: 0;
}

/* ==========================================================================
	Contact
============================================================================= */
.contact-info {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.contact-info__header {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  margin-block-end: 1.875rem;
}

.contact-info__name {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.contact-info__title {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.contact-info__figure {
  inline-size: 3.75rem;
}

.contact-info__image {
  block-size: auto;
  inline-size: 100%;
  border-radius: 50%;
}

.contact-info__details {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 5;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem;
}

.contact-info__detail {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  grid-template-columns: 100%;
  grid-template-rows: max-content;
}

.contact-info__detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.contact-info__detail-items {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.contact-info__detail-item {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 100%;
}

.contact-info__detail-item-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.contact-info__detail-item-header-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.contact-info__detail-item-body {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.contact-info__socials {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.contact-info__social-link-inner {
  display: inline-flex;
  align-items: center;
  flex-direction: row-reverse;
  gap: 0.625rem;
}

/* ==========================================================================
	Cookie Notice
============================================================================= */
.cookie-notice {
  max-inline-size: 34.375rem;
  position: fixed;
  inset-block-end: 0;
  inset-inline-end: 0;
  z-index: 9999;
  background-color: var(--color-white);
  box-shadow: rgba(0, 0, 0, 0.24) 0 0.1875rem 0.5rem;
  opacity: 0;
  transition-duration: var(--transition-base-speed);
  transition-property: opacity, visibility;
  visibility: hidden;
}
.cookie-notice.cookie-notice--visible {
  opacity: 1;
  visibility: visible;
}
:where(.no-js) .cookie-notice {
  display: none;
}

.cookie-notice__inner {
  position: relative;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
  padding: 1.875rem;
}

.cookie-notice__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.cookie-notice__description :where(a) {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-green-connection);
  text-decoration-thickness: 0.0625rem;
}
.cookie-notice__description :where(a):focus-visible {
  color: var(--color-dream-dragon-green);
  text-decoration-color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .cookie-notice__description :where(a):hover {
    color: var(--color-dream-dragon-green);
    text-decoration-color: var(--color-dream-dragon-green);
  }
}

.cookie-notice__footer {
  display: flex;
  gap: 0.625rem;
}

/* ==========================================================================
	Department List
============================================================================= */
.department-list {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.department-list__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.department-list__row {
  border-block-start: 0.0625rem solid;
  padding-block: 1.875rem;
}

.department-list__item {
  display: grid;
  grid-template-columns: 100%;
}

.department-list__item-header {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  margin-block-end: 1.875rem;
}

.department-list__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.department-list__item-title-link {
  text-decoration: underline;
}
.department-list__item-title-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .department-list__item-title-link:hover {
    color: var(--color-black);
  }
}

.department-list__item-figure {
  inline-size: 3.75rem;
}

.department-list__item-image {
  block-size: auto;
  inline-size: 100%;
  border-radius: 50%;
}

.department-list__item-details {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 3;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem;
}

.department-list__item-detail {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  grid-template-columns: 100%;
  grid-template-rows: max-content;
}

.department-list__item-detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.department-list__item-detail-items {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.department-list__item-detail-item {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 100%;
}

.department-list__item-detail-item-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.department-list__item-detail-item-header-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.department-list__item-detail-item-body {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.department-list__pagination {
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

/* ==========================================================================
	Department Meta
============================================================================= */
.department-meta {
  color: var(--header-color);
  background-color: var(--header-background-color);
}

.department-meta__inner {
  padding-block: 1.875rem;
}

.department-meta__details {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 5;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem;
}

.department-meta__detail {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  grid-template-columns: 100%;
  grid-template-rows: max-content;
}

.department-meta__detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.department-meta__detail-items {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.department-meta__detail-item {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 100%;
}

.department-meta__detail-item-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.department-meta__detail-item-header-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.department-meta__detail-item-body {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
  display: block;
}

.department-meta__socials {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.department-meta__social-link-inner {
  display: inline-flex;
  align-items: center;
  flex-direction: row-reverse;
  gap: 0.625rem;
}

/* ==========================================================================
	Detail
============================================================================= */
.detail-media {
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.detail-image {
  block-size: auto;
  inline-size: 100%;
}

/* ==========================================================================
	Shared Event
============================================================================= */
/* Time
============================================================================= */
.event-time {
  position: relative;
  display: inline-flex;
  align-items: center;
  column-gap: 1.25rem;
}

.event-time__item {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  min-inline-size: 4.25rem;
  aspect-ratio: 68/66;
  position: relative;
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: var(--color-black);
  line-height: 1;
}

.event-time__item-icon {
  position: absolute;
  inset: 0;
  color: var(--color-green-connection);
  pointer-events: none;
}

.event-time__item-month {
  position: relative;
  font-size: 1rem;
  letter-spacing: -0.011em;
}

.event-time__item-day {
  position: relative;
  font-size: 2.5rem;
}

.event-time__divider {
  inline-size: 2.3125rem;
  block-size: 0.125rem;
  position: absolute;
  inset-block: auto;
  inset-inline-start: 50%;
  z-index: 5;
  translate: -50% 0 0;
  background-color: var(--color-spark-of-joy);
  pointer-events: none;
}

/* Detail
============================================================================= */
.event-detail {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.event-detail__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  text-transform: uppercase;
  text-transform: uppercase;
}

.event-detail__label {
  font-size: 1rem;
  line-height: 1.4;
}

/* ==========================================================================
	Event Actions
============================================================================= */
@media (min-width:46.25rem) {
  .event-actions__inner {
    inline-size: var(--fw-columns-4);
    margin-inline: auto;
  }
}
@media (min-width:61.25rem) {
  .event-actions__inner {
    inline-size: var(--fw-columns-8);
  }
}

.event-actions__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.event-actions__list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.625rem, 0.01736rem + (1.9444444444vw), 1.5rem);
}

/* ==========================================================================
	Event Entry
============================================================================= */
.event-entry__media {
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.event-entry__image {
  block-size: auto;
  inline-size: 100%;
}

.event-entry__actions {
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

/* ==========================================================================
	Event Feature
============================================================================= */
.event-feature {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.event-feature__item {
  align-items: start;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}
@media (min-width:46.25rem) and (max-width:61.1875rem) {
  .event-feature__item {
    display: block;
  }
}
@media (min-width:61.25rem) {
  .event-feature__item {
    gap: 5%;
    grid-template-columns: minmax(0, 1fr) var(--fw-columns-6);
  }
}
@media (min-width:76.25rem) {
  .event-feature__item {
    align-items: center;
  }
}

.event-feature__item-figure {
  border-radius: 1.25rem;
  overflow: hidden;
}
@media (min-width:46.25rem) and (max-width:61.1875rem) {
  .event-feature__item-figure {
    inline-size: 40%;
    float: inline-end;
    margin-block-end: 1.875rem;
    margin-inline-start: 1.875rem;
  }
}

.event-feature__item-figure-link {
  display: block;
}

.event-feature__item-image {
  block-size: auto;
  inline-size: 100%;
}

.event-feature__item-wrapper {
  display: grid;
  row-gap: clamp(1.25rem, 0.59896rem + (2.0833333333vw), 2.1875rem);
}

.event-feature__item-header {
  display: flex;
  flex-direction: column-reverse;
  gap: clamp(1.25rem, 0.38194rem + (2.7777777778vw), 2.5rem);
}

.event-feature__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.event-feature__item-title-link {
  color: var(--color-dream-dragon-green);
}
.event-feature__item-title-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .event-feature__item-title-link:hover {
    color: var(--color-black);
  }
}

.event-feature__item-body {
  display: grid;
  row-gap: clamp(1.25rem, 0.59896rem + (2.0833333333vw), 2.1875rem);
  grid-template-columns: 100%;
}

.event-feature__item-description {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: var(--font-size-intro-text);
  line-height: var(--line-height-intro-text);
  color: var(--color-dream-dragon-green);
  font-weight: 500;
  line-height: 1.4;
}

.event-feature__item-details {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem clamp(1.25rem, 0.59896rem + (2.0833333333vw), 2.1875rem);
}

.event-feature__border {
  block-size: 5rem;
  background-color: var(--color-spark-of-joy);
  mask: url("../images/band_pattern_2.svg");
  mask-repeat: repeat-x;
  mask-size: 60rem 5rem;
  margin-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

/* ==========================================================================
	Event List
============================================================================= */
.event-list {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.event-list__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.event-list__row {
  background-image: url("../images/line_pattern_color.svg");
  background-repeat: repeat-x;
  background-position: 0 0;
  padding-block: 2.5rem;
}

@media (max-width:31.1875rem) {
  .event-list__item {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: 100%;
  }
}
@media (min-width:46.25rem) {
  .event-list__item {
    align-items: start;
    display: flex;
    gap: var(--fw-column-gap);
  }
}
@media (min-width:76.25rem) {
  .event-list__item {
    display: grid;
    align-items: center;
    grid-template-columns: minmax(0, 1fr) var(--fw-columns-3);
  }
}

.event-list__item-figure {
  border-radius: 0.9375rem;
  overflow: hidden;
}
@media (min-width:31.25rem) and (max-width:46.1875rem) {
  .event-list__item-figure {
    inline-size: 30.5%;
    float: inline-end;
    margin-block-end: 1.25rem;
    margin-inline-start: 1.25rem;
  }
}
@media (min-width:46.25rem) {
  .event-list__item-figure {
    flex: 0 0 var(--fw-columns-2);
    order: 2;
  }
}
@media (min-width:61.25rem) {
  .event-list__item-figure {
    flex-basis: var(--fw-columns-4);
  }
}

.event-list__item-image {
  block-size: auto;
  inline-size: 100%;
}

.event-list__item-figure-link {
  display: block;
}

.event-list__item-figure-image {
  block-size: auto;
  inline-size: 100%;
}

@media (min-width:46.25rem) {
  .event-list__item-wrapper {
    flex: 1%;
  }
}

.event-list__item-header {
  display: flex;
  flex-direction: column-reverse;
  gap: 1.5625rem;
  margin-block-end: 0.9375rem;
}

.event-list__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
  font-weight: 700;
}

.event-list__item-title-link {
  color: var(--color-dream-dragon-green);
}
.event-list__item-title-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .event-list__item-title-link:hover {
    color: var(--color-black);
  }
}

.event-list__item-description {
  color: var(--color-text-grey);
  font-size: 1rem;
  line-height: 1.4;
  margin-block-end: 1.25rem;
}
@media (min-width:76.25rem) {
  .event-list__item-description {
    flex: 0 0 47%;
    margin-inline-end: auto;
  }
}

.event-list__item-details {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem clamp(1.25rem, 0.59896rem + (2.0833333333vw), 2.1875rem);
}

.event-feature__item-detail--category {
  margin-block-end: 0.9375rem;
}

.event-list__pagination {
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

/* ==========================================================================
	Event Meta
============================================================================= */
.event-meta__inner {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  margin-block: clamp(1.875rem, 1.00694rem + (2.7777777778vw), 3.125rem);
}
@media (min-width:46.25rem) {
  .event-meta__inner {
    inline-size: var(--fw-columns-4);
    margin-inline: auto;
  }
}
@media (min-width:61.25rem) {
  .event-meta__inner {
    inline-size: var(--fw-columns-8);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
}

.event-meta__details {
  display: flex;
  gap: 1.25rem;
}
@media (max-width:61.1875rem) {
  .event-meta__details {
    flex-direction: column;
  }
}
@media (min-width:61.25rem) {
  .event-meta__details {
    flex-wrap: wrap;
    gap: 2.5rem;
  }
}

.event-meta__detail {
  font-size: 1rem;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}

.event-meta__detail-hint {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  text-transform: uppercase;
  text-transform: uppercase;
}

.event-meta__detail-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}
@media (min-width:61.25rem) {
  .event-meta__detail-list {
    flex-direction: column;
  }
}

/* ==========================================================================
	Related Events
============================================================================= */
.comp_style__default {
  --background-color: #005f40;
  --highlight-color: #62bb46;
}

.comp_style__alt {
  --background-color: #d0dd28;
  --highlight-color: #62bb46;
}

.event-related {
  --fw-column-gap: 2rem;
  padding-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
  background-color: var(--background-color);
}

.event-related__inner .carousel__controls {
  margin-block: 1.25rem;
}
.event-related__inner .carousel__controls .swiper-pagination-bullet {
  --swiper-theme-color: currentColor;
  --swiper-theme-color: #62bb46;
  --swiper-navigation-size: 3rem;
  --swiper-pagination-bullet-size: 0.625rem;
  --swiper-pagination-bullet-border-radius: 1.25rem;
  --swiper-pagination-bullet-inactive-color: #62bb46;
  --swiper-pagination-bullet-inactive-opacity: 0.6;
}
.event-related__inner .carousel__controls .swiper-pagination-bullet-active {
  --swiper-pagination-bullet-width: 1.875rem;
  --swiper-pagination-bullet-height: 0.625rem;
  --swiper-pagination-bullet-border-radius: 1.25rem;
}

.event-related__header {
  margin-block-end: 1.875rem;
}
@media (min-width:61.25rem) {
  .event-related__header {
    max-width: 83.33%;
    margin-inline: auto;
  }
}

.event-related__header-wrapper {
  align-items: center;
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
  text-align: center;
}
@media (min-width:61.25rem) {
  .event-related__header-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    text-align: unset;
  }
}

.event-related__border {
  background-color: var(--highlight-color);
  mask: url("../images/line_pattern.svg");
  mask-repeat: repeat-x;
  mask-size: 5.5rem 0.5rem;
  height: 0.5rem;
  margin-block-start: clamp(1rem, 0.47917rem + (1.6666666667vw), 1.75rem);
  margin-block-end: clamp(1.25rem, -0.48611rem + (5.5555555556vw), 3.75rem);
}

.event-related__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  color: #d0dd28;
}
.comp_style__alt .event-related__title {
  color: #005f40;
}

.event-related__link {
  justify-self: center;
}
@media (min-width:61.25rem) {
  .event-related__link {
    justify-self: flex-end;
  }
}

.event-related__body {
  margin-block-end: 0;
}
.comp_style__alt .event-related__body .swiper {
  padding-inline: var(--fw-container-gutter);
}
@media (min-width:46.25rem) {
  .comp_style__alt .event-related__body .swiper {
    padding-inline: 0;
  }
}

@media (min-width:46.25rem) {
  .event-related__row:not(:last-child) {
    border-right: 0.0625rem solid rgba(98, 187, 70, 0.4);
  }
  .comp_style__alt .event-related__row {
    border-right: none;
  }
}

.event-related__item {
  height: 100%;
}

.event-related__item-wrap {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: #005f40;
  color: #fff;
  padding-block: 2.5rem;
  padding-inline: 1.25rem;
  border-radius: 1.25rem;
}
@media (min-width:46.25rem) {
  .comp_style__default .event-related__item-wrap {
    padding-block: 0;
    padding-inline-start: 0;
  }
}

.event-related__item-link {
  text-decoration: none;
  color: #fff;
}
.event-related__item-link:focus-visible {
  color: #fff;
}
@media (hover: hover) {
  .event-related__item-link:hover {
    color: #fff;
  }
}

.event-related__item-header {
  display: flex;
  flex-direction: column-reverse;
  gap: 2.5rem;
  margin-block-end: 1.25rem;
}

.event-related__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 0.9;
}
.event-related__item-link:hover .event-related__item-title {
  text-decoration: underline;
}

.event-related__item-body {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.event-related__item-description {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: -0.011rem;
  display: block;
  margin-block-end: 1.25rem;
}

.event-related__item-details {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: -0.011rem;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.event-related__item-detail {
  display: grid;
  gap: 0.625rem;
}

.event-related__item-detail-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.event-related__item-detail-label {
  text-transform: uppercase;
}

/* ==========================================================================
	Filter
============================================================================= */
.filter {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}
@media print {
  .filter {
    display: none;
  }
}
:where(.no-js) .filter {
  display: none;
}

.filter__inner {
  display: grid;
  gap: clamp(1.5625rem, 1.12847rem + (1.3888888889vw), 2.1875rem);
  grid-template-columns: 100%;
}

.filter__form {
  --grid-template-columns: 100%;
  display: grid;
  gap: 0.625rem var(--fw-column-gap);
  grid-template-columns: var(--grid-template-columns);
}
@media (min-width:46.25rem) {
  .filter__form:has(.filter__form-item:nth-child(3):last-child) {
    --grid-template-columns: repeat(3, auto);
  }
}
@media (min-width:46.25rem) {
  .filter__form:has(.filter__form-item:nth-child(4):last-child) {
    --grid-template-columns: repeat(3, auto);
  }
}
@media (min-width:61.25rem) {
  .filter__form:has(.filter__form-item:nth-child(4):last-child) {
    --grid-template-columns: repeat(3, auto) max-content;
  }
}
@media (min-width:46.25rem) {
  .filter__form:has(.filter__form-item:nth-child(5):last-child) {
    --grid-template-columns: auto auto;
  }
}
@media (min-width:76.25rem) {
  .filter__form:has(.filter__form-item:nth-child(5):last-child) {
    --grid-template-columns: repeat(4, auto);
  }
}
@media (min-width:46.25rem) {
  .filter__form:has(.filter__form-item:nth-child(6):last-child) {
    --grid-template-columns: auto auto;
    --action-grid-column: 1 / -1;
  }
}
@media (min-width:61.25rem) {
  .filter__form:has(.filter__form-item:nth-child(6):last-child) {
    --grid-template-columns: repeat(3, auto);
  }
}
@media (min-width:76.25rem) {
  .filter__form:has(.filter__form-item:nth-child(6):last-child) {
    --grid-template-columns: repeat(4, auto);
  }
}
@media (min-width:87.125rem) {
  .filter__form:has(.filter__form-item:nth-child(6):last-child) {
    --grid-template-columns: repeat(5, auto);
  }
}

.filter__form-item {
  display: grid;
  row-gap: 0.75rem;
}
@media (min-width:46.25rem) {
  .filter__form-item {
    grid-row: span 2;
    grid-template-rows: subgrid;
  }
}

.filter__form-item--action {
  grid-column: var(--action-grid-column, auto);
}

.filter__form-item-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  text-transform: capitalize;
  display: block;
}

.filter__form-item-select-wrapper {
  position: relative;
  display: inline-block;
}
.filter__form-item-select-wrapper select {
  inline-size: 100%;
  display: inline-block;
  color: inherit;
  line-height: normal;
  appearance: none;
  background: none;
  border: 0.0625rem solid var(--input-border-color, var(--color-dream-dragon-green));
  border-radius: 0.3125rem;
  cursor: pointer;
  color: var(--input-placeholder-color, oklch(from var(--color-text-grey) l c h/0.75));
  font-size: 1.25rem;
  letter-spacing: -0.011em;
  margin: 0;
  outline: 0;
  padding-block: 0.5rem;
  padding-inline: 0.625rem 2rem;
}
@media (min-width:46.25rem) {
  .filter__form-item-select-wrapper select {
    padding-block: 0.625rem;
    padding-inline: 0.9375rem 2.625rem;
  }
}
.filter__form-item-select-wrapper {
  display: block;
}

.filter__form-item-select {
  block-size: 100%;
  padding-inline-end: 2.5rem;
}

.filter__form-item-select-icon {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: 1.25rem;
  translate: 0 -50%;
  color: var(--color-green-connection);
  pointer-events: none;
}

.filter__form-item-search-wrapper {
  position: relative;
}

.filter__form-item-search-input {
  border: 0.0625rem solid var(--input-border-color, var(--color-dream-dragon-green));
  border-radius: 0.3125rem;
  font-size: 1.25rem;
  letter-spacing: -0.011em;
  padding-block: 0.5rem;
  padding-inline: 0.625rem;
}
@media (min-width:46.25rem) {
  .filter__form-item-search-input {
    padding-block: 0.625rem;
    padding-inline: 0.9375rem;
  }
}
.filter__form-item-search-input::placeholder {
  color: var(--input-placeholder-color, oklch(from var(--color-text-grey) l c h/0.75));
}
.filter__form-item-search-input {
  block-size: 100%;
  inline-size: 100%;
  flex: 1;
  appearance: none;
  background: #fff;
  padding-inline-end: 2.8125rem;
}

.filter__form-item-search-icon {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: 1.25rem;
  translate: 0 -50%;
  color: var(--color-green-connection);
  pointer-events: none;
}

.filter__form-item-submit {
  grid-row: 2;
}

.filter__form-submit {
  background-color: var(--submit-background-color, var(--color-spark-of-joy));
  border-radius: 0.3125rem;
  color: var(--submit-color, var(--color-black));
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2;
  padding-block: 0.75rem;
  padding-inline: 0.9375rem;
}
.filter__form-submit :where(.icon--arrow-right-alt) {
  transition: translate var(--transition-base-speed);
  translate: 0 0 0;
}
.filter__form-submit:focus-visible {
  background-color: var(--submit-hover-background-color, var(--color-black));
  color: var(--submit-hover-color, var(--color-spark-of-joy));
}
.filter__form-submit:focus-visible :where(.icon--arrow-right-alt) {
  translate: 0.375rem 0 0;
}
@media (hover: hover) {
  .filter__form-submit:hover {
    background-color: var(--submit-hover-background-color, var(--color-black));
    color: var(--submit-hover-color, var(--color-spark-of-joy));
  }
  .filter__form-submit:hover :where(.icon--arrow-right-alt) {
    translate: 0.375rem 0 0;
  }
}
.filter__form-submit {
  height: 100%;
}

.filter__form-submit-inner {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

/* Results
============================================================================= */
.filter__results {
  display: flex;
  gap: 0.625rem;
  flex-direction: column;
  font-family: var(--font-sans-alt);
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.2;
}
@media (min-width:46.25rem) {
  .filter__results {
    align-items: center;
    gap: 2.5rem;
    flex-direction: row;
  }
}

.filter__results-category {
  color: var(--color-text-grey);
  display: block;
}
@media (min-width:31.25rem) {
  .filter__results-category {
    display: inline;
    padding-inline-start: 0.375rem;
  }
}

.filter__results-reset-link {
  color: var(--color-black);
}
.filter__results-reset-link:focus-visible {
  color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .filter__results-reset-link:hover {
    color: var(--color-dream-dragon-green);
  }
}

.filter__results-reset-link-inner {
  display: flex;
  align-items: center;
  gap: 0.3125rem;
  flex-direction: row-reverse;
}

.filter__results-reset-link-icon {
  color: var(--color-green-connection);
}

/* ==========================================================================
    Gallery
============================================================================= */
.gallery {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.gallery__header {
  display: grid;
  gap: 1.875rem;
  grid-template-columns: 100%;
  margin-block-end: 3.75rem;
  text-align: center;
}
@media (min-width:46.25rem) {
  .gallery__header {
    max-width: 50%;
    margin-inline: auto;
  }
}

.gallery__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.gallery__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.gallery__items {
  display: grid;
  gap: 3.75rem var(--fw-column-gap);
  grid-template-columns: 100%;
}
@media (min-width:46.25rem) {
  .gallery__items {
    grid-template-columns: repeat(3, 1fr);
  }
}

.gallery__row {
  display: grid;
  row-gap: 3.75rem;
  grid-template-columns: 100%;
}
@media (min-width:46.25rem) {
  .gallery__row {
    column-gap: inherit;
    row-gap: 0;
    grid-column: 1/-1;
    grid-template-columns: subgrid;
    grid-template-rows: minmax(0, max-content) 1.25rem minmax(0, max-content);
  }
}

@media (min-width:46.25rem) {
  .gallery__row--50-50 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width:46.25rem) {
  .gallery__row--30-30-30 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width:46.25rem) {
  .gallery__row--100 {
    grid-template-columns: 100%;
  }
}

@media (min-width:46.25rem) {
  .gallery__item {
    display: grid;
    grid-column: span 1;
    grid-row: 1/-1;
    grid-template-rows: subgrid;
  }
}
@media (min-width:46.25rem) {
  :where(.gallery__row--70-30, .gallery__row--30-70) .gallery__item:has(.gallery__item-media--wide) {
    grid-column: span 2;
  }
}

.gallery__item-figure {
  display: grid;
}
@media (max-width:46.1875rem) {
  .gallery__item-figure {
    row-gap: 1.25rem;
  }
}
@media (min-width:46.25rem) {
  .gallery__item-figure {
    grid-row: 1/-1;
    grid-template-rows: subgrid;
  }
}

.gallery__item-media {
  position: relative;
  display: block;
  border-radius: 1.25rem;
  overflow: hidden;
}
@media (min-width:46.25rem) {
  .gallery__item-media {
    grid-row: 1;
  }
}

.gallery__item-media--wide {
  aspect-ratio: var(--aspect-ratio-wide);
}
@media (min-width:46.25rem) {
  .gallery__item-media--wide {
    inline-size: 100%;
  }
}

@media (min-width:46.25rem) {
  .gallery__item-media--portrait {
    inline-size: 100%;
    align-self: stretch;
    overflow: hidden;
  }
}

.gallery__item-image {
  block-size: 100%;
  inline-size: 100%;
  display: block;
  object-fit: cover;
}
@media (min-width:46.25rem) {
  :where(.gallery__item-media--portrait) .gallery__item-image {
    block-size: auto;
    min-block-size: 100%;
    inline-size: auto;
    min-inline-size: 100%;
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    transform: translate(-50%, -50%);
  }
}

.gallery__item-caption {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  line-height: 1.4;
  color: #343231;
  display: block;
}
@media (min-width:46.25rem) {
  .gallery__item-caption {
    align-self: start;
    grid-row: 3;
  }
}
.gallery__item-caption :where(a) {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-green-connection);
  text-decoration-thickness: 0.0625rem;
}
.gallery__item-caption :where(a):focus-visible {
  color: var(--color-dream-dragon-green);
  text-decoration-color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .gallery__item-caption :where(a):hover {
    color: var(--color-dream-dragon-green);
    text-decoration-color: var(--color-dream-dragon-green);
  }
}
.gallery__item-caption :where(a) {
  color: #343231;
}

/* ==========================================================================
	Instagram Feed
============================================================================= */
.instagram__inner {
  padding-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
  align-items: center;
  display: flex;
  flex-direction: column;
}

.instagram__socials {
  margin-block-end: 2.5rem;
}

.social-nav--instagram-feed .social-nav__list {
  display: flex;
  gap: 0.9375rem;
  list-style-type: none;
}
.social-nav--instagram-feed .social-nav__item-link:focus-visible {
  color: var(--color-green-connection);
}
@media (hover: hover) {
  .social-nav--instagram-feed .social-nav__item-link:hover {
    color: var(--color-green-connection);
  }
}

/* ==========================================================================
	Link Group
============================================================================= */
.link-group {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.link-group__header {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
  margin-block-end: 1.875rem;
}

.link-group__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.link-group__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.link-group__list {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 2;
  --grid-item-min: 20rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
}

.link-group__item {
  border-block-end: 0.0625rem solid;
}

.link-group__link {
  block-size: 100%;
  inline-size: 100%;
  display: block;
  text-decoration: underline;
  padding-block: 1.25rem;
}
.link-group__link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .link-group__link:hover {
    color: var(--color-black);
  }
}

.link-group__link-inner {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
}

/* ==========================================================================
	News Feature
============================================================================= */
.news-feature {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.news-feature__item {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}
@media (min-width:46.25rem) and (max-width:61.1875rem) {
  .news-feature__item {
    display: block;
  }
}
@media (min-width:61.25rem) {
  .news-feature__item {
    gap: var(--fw-column-gap);
    grid-template-columns: minmax(0, 1fr) var(--fw-columns-5);
  }
}
@media (min-width:76.25rem) {
  .news-feature__item {
    align-items: center;
  }
}

@media (min-width:46.25rem) and (max-width:61.1875rem) {
  .news-feature__item-figure {
    inline-size: 40%;
    float: inline-end;
    margin-block-end: 1.875rem;
    margin-inline-start: 1.875rem;
  }
}
@media (min-width:61.25rem) {
  .news-feature__item-figure {
    grid-column: 2;
    grid-row: 1;
  }
}

.news-feature__item-figure-link {
  display: block;
}

.news-feature__item-image {
  block-size: auto;
  inline-size: 100%;
}

.news-feature__item-header {
  display: flex;
  flex-direction: column-reverse;
  gap: 0.9375rem;
}
@media (min-width:61.25rem) {
  .news-feature__item-header {
    margin-block-end: 1.25rem;
  }
}

.news-feature__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.news-feature__item-title-link {
  text-decoration: underline;
}
.news-feature__item-title-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .news-feature__item-title-link:hover {
    color: var(--color-black);
  }
}

.news-feature__item-categories {
  margin-block-end: 0.625rem;
}

.news-feature__item-category-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-feature__item-category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.news-feature__item-body {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.news-feature__item-details {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.news-feature__item-detail {
  display: inline-block;
  vertical-align: middle;
}

:where(.news-feature__item-detail--date) .news-feature__item-detail-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-feature__item-description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

/* ==========================================================================
	News List
============================================================================= */
.news-list {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.news-list__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-list__row {
  border-block-start: 0.0625rem solid;
  padding-block: 1.875rem;
}

@media (max-width:31.1875rem) {
  .news-list__item {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: 100%;
  }
}
@media (min-width:46.25rem) {
  .news-list__item {
    display: flex;
    gap: var(--fw-column-gap);
  }
}
@media (min-width:76.25rem) {
  .news-list__item {
    display: grid;
    align-items: center;
    grid-template-columns: minmax(0, 1fr) var(--fw-columns-4);
  }
}

.news-list__item-figure {
  block-size: auto;
  inline-size: 100%;
}
@media (min-width:31.25rem) and (max-width:46.1875rem) {
  .news-list__item-figure {
    inline-size: 30.5%;
    float: inline-end;
    margin-block-end: 1.25rem;
    margin-inline-start: 1.25rem;
  }
}
@media (min-width:46.25rem) {
  .news-list__item-figure {
    flex: 0 0 var(--fw-columns-2);
    order: 2;
  }
}
@media (min-width:61.25rem) {
  .news-list__item-figure {
    flex-basis: var(--fw-columns-4);
  }
}

.news-list__item-image {
  block-size: auto;
  inline-size: 100%;
}

.news-list__item-figure-link {
  display: block;
}

@media (min-width:46.25rem) {
  .news-list__item-wrapper {
    flex: 1%;
  }
}

.news-list__item-header {
  display: flex;
  flex-direction: column-reverse;
  gap: 0.9375rem;
}
@media (min-width:61.25rem) {
  .news-list__item-header {
    margin-block-end: 1.25rem;
  }
}

.news-list__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.news-list__item-title-link {
  text-decoration: underline;
}
.news-list__item-title-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .news-list__item-title-link:hover {
    color: var(--color-black);
  }
}

.news-list__item-categories {
  margin-block-end: 0.625rem;
}

.news-list__item-category-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-list__item-category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.news-list__item-body {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.news-list__item-details {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.news-list__item-detail {
  display: inline-block;
  vertical-align: middle;
}

:where(.news-list__item-detail--date) .news-list__item-detail-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-list__item-description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.news-list__pagination {
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

/* ==========================================================================
	News Meta
============================================================================= */
.news-meta {
  color: var(--header-color);
  background-color: var(--header-background-color);
}

.news-meta__inner {
  padding-block: 1.875rem;
}
@media (min-width:61.25rem) {
  .news-meta__inner {
    display: grid;
    align-items: center;
    gap: 1.875rem;
    grid-template-columns: minmax(0, 1fr) max-content;
  }
}

.news-meta__body {
  display: flex;
  gap: 1.25rem;
}
@media (max-width:46.1875rem) {
  .news-meta__body {
    flex-direction: column;
  }
}
@media (min-width:46.25rem) {
  .news-meta__body {
    align-items: center;
    flex-wrap: wrap;
    column-gap: 2.5rem;
  }
}

.news-meta__details {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.625rem;
}

:where(.news-meta__detail--date) .news-meta__detail-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-meta__categories-block {
  position: relative;
  padding-inline-start: 1.375rem;
}

.news-meta__categories-icon {
  position: absolute;
  inset-block-start: 0.125rem;
  inset-inline-start: 0;
}

.news-meta__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.news-meta__categories-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-meta__category {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.news-meta__category-link {
  text-decoration: underline;
}
.news-meta__category-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .news-meta__category-link:hover {
    color: var(--color-black);
  }
}

/* ==========================================================================
	Related News
============================================================================= */
.news-related {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.news-related__header {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
  margin-block-end: 1.875rem;
}

.news-related__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.news-related__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.news-related__items {
  display: grid;
  gap: 1.875rem var(--fw-column-gap);
  grid-template-columns: 100%;
}
@media (min-width:61.25rem) {
  .news-related__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:61.1875rem) {
  .news-related__item-figure {
    display: none;
  }
}
@media (min-width:61.25rem) {
  .news-related__item-figure {
    display: block;
    margin-block-end: 1.25rem;
  }
}

.news-related__item-figure-link {
  display: block;
}

.news-related__item-image {
  block-size: auto;
  inline-size: 100%;
}

@media (min-width:61.25rem) {
  .news-related__item-header {
    display: flex;
    flex-direction: column-reverse;
    margin-block-end: 0.9375rem;
  }
}

.news-related__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.news-related__item-title-link {
  text-decoration: underline;
}
.news-related__item-title-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .news-related__item-title-link:hover {
    color: var(--color-black);
  }
}

.news-related__item-categories {
  display: none;
}
@media (min-width:61.25rem) {
  .news-related__item-categories {
    display: block;
    margin-block-end: 0.625rem;
  }
}

.news-related__item-category-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-related__item-category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.news-related__item-body {
  display: none;
}
@media (min-width:61.25rem) {
  .news-related__item-body {
    display: block;
  }
}

.news-related__item-details {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.625rem;
}

:where(.news-related__item-detail--date) .news-related__item-detail-hint {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.news-related__item-description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

/* ==========================================================================
	No Results Message
============================================================================= */
.no-results-message {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

/* ==========================================================================
	People Entry
============================================================================= */
/* ==========================================================================
	People List
============================================================================= */
.people-list {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.people-list__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.people-list__row {
  border-block-start: 0.0625rem solid;
  padding-block: 1.875rem;
}

.people-list__item-header {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  margin-block-end: 1.875rem;
}

.people-list__item-name {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.people-list__item-name-link {
  text-decoration: underline;
}
.people-list__item-name-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .people-list__item-name-link:hover {
    color: var(--color-black);
  }
}

.people-list__item-title {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.people-list__item-figure {
  inline-size: 3.75rem;
}

.people-list__item-image {
  block-size: auto;
  inline-size: 100%;
  border-radius: 50%;
}

.people-list__item-details {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 3;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem;
}

.people-list__item-detail {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  grid-template-columns: 100%;
  grid-template-rows: max-content;
}

.people-list__item-detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.people-list__item-detail-items {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.people-list__item-detail-item {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 100%;
}

.people-list__item-detail-item-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.people-list__item-detail-item-header-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.people-list__item-detail-item-body {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.people-list__pagination {
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

/* ==========================================================================
	People Meta
============================================================================= */
.people-meta {
  color: var(--header-color);
  background-color: var(--header-background-color);
}

.people-meta__inner {
  padding-block: 1.875rem;
}

@media (min-width:61.25rem) {
  .people-meta__body {
    display: flex;
    align-items: start;
    flex-direction: row-reverse;
    gap: 1.875rem;
  }
}

.people-meta__figure {
  block-size: auto;
  inline-size: 100%;
}
@media (max-width:61.1875rem) {
  .people-meta__figure {
    block-size: 7.1875rem;
    margin-block-end: 1.25rem;
  }
}
@media (min-width:61.25rem) {
  .people-meta__figure {
    flex: 0 0 12.5rem;
    margin-inline-start: auto;
  }
}

.people-meta__image {
  border-radius: 50%;
}

.people-meta__details {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 5;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem;
}
@media (min-width:46.25rem) {
  .people-meta__details {
    flex: 1;
  }
}

.people-meta__detail {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  grid-template-columns: 100%;
  grid-template-rows: max-content;
}

.people-meta__detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.people-meta__detail-items {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.people-meta__detail-item {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 100%;
}

.people-meta__detail-item-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.people-meta__detail-item-header_label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.people-meta__detail-item-body {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
  display: block;
}

.people-meta__socials {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.people-meta__social-link-inner {
  display: inline-flex;
  align-items: center;
  flex-direction: row-reverse;
  gap: 0.625rem;
}

/* ==========================================================================
	Related People
============================================================================= */
.related-people {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.related-people__header {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
  margin-block-end: 1.875rem;
}

.related-people__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.related-people__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.related-people__row {
  border-block-start: 0.0625rem solid;
  padding-block: 1.875rem;
}

.related-people__item-header {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  margin-block-end: 1.875rem;
}

.related-people__item-name {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.related-people__item-name-link {
  text-decoration: underline;
}
.related-people__item-name-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .related-people__item-name-link:hover {
    color: var(--color-black);
  }
}

.related-people__item-title {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.related-people__item-figure {
  inline-size: 3.75rem;
}

.related-people__item-image {
  block-size: auto;
  inline-size: 100%;
  border-radius: 50%;
}

.related-people__item-details {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 3;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem var(--fw-column-gap);
}

.related-people__item-detail {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  grid-template-columns: 100%;
  grid-template-rows: max-content;
}

.related-people__item-detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.related-people__item-detail-items {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.related-people__item-detail-item {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 100%;
}

.related-people__item-detail-item-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.related-people__item-detail-item-header-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.related-people__item-detail-item-body {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

/* ==========================================================================
	Program List
============================================================================= */
.program-list {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.program-list__header {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.program-list__items {
  border-block-start: 0.0625rem solid;
}

.program-list__item {
  border-block-end: 0.0625rem solid;
}

.program-list__item-button {
  inline-size: 100%;
  text-align: start;
  text-decoration: underline;
}

.program-list__item-button-inner {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  padding-block: 1.25rem;
}

.program-list__item-button-label {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 0.625rem;
}

.program-list__item-button-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.program-list__item-button-mode {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  display: block;
}

.program-list__item-button-mode-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.program-list__item-button-mode-data {
  white-space: nowrap;
}

.program-list__item-button-icon {
  inline-size: 2.8125rem;
  aspect-ratio: 1;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-black);
  border-radius: 50%;
  transition: background-color var(--transition-base-speed);
}
@media print {
  .program-list__item-button-icon {
    display: none;
  }
}
.program-list__item-button-icon::before, .program-list__item-button-icon::after {
  block-size: 0.125rem;
  inline-size: 1.25rem;
  position: absolute;
  inset: 50% auto auto 50%;
  translate: -50% -50%;
  background-color: var(--color-white);
  border-radius: 0.125rem;
  content: "";
  transition-duration: var(--transition-base-speed);
  transition-property: opacity, rotate, translate;
}
:where(.program-list__item.state-swap-active) .program-list__item-button-icon::before {
  rotate: -45deg;
}
.program-list__item-button-icon::after {
  rotate: 90deg;
}
:where(.program-list__item.state-swap-active) .program-list__item-button-icon::after {
  rotate: 45deg;
}
:where(.no-js) .program-list__item-button-icon {
  display: none;
}

.program-list__item-content {
  display: none;
  overflow: hidden;
  padding-block: 0.625rem 2.5rem;
}
@media print {
  .program-list__item-content {
    display: block;
  }
}
:where(.program-list__item.state-swap-active) .program-list__item-content, :where(.no-js) .program-list__item-content {
  display: block;
}

.program-list__item-content-inner {
  display: grid;
  gap: 1.875rem var(--fw-column-gap);
  grid-template-columns: 100%;
}
@media (min-width:46.25rem) {
  .program-list__item-content-inner {
    grid-template-columns: minmax(0, 1fr) var(--fw-columns-2);
  }
}
@media (min-width:61.25rem) {
  .program-list__item-content-inner {
    grid-template-columns: minmax(0, 1fr) var(--fw-columns-4);
  }
}

.program-list__item-content-group {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 100%;
}

.program-list__item-description :where(p:first-child) {
  margin-block-start: 0;
}
.program-list__item-description :where(p:last-child) {
  margin-block-end: 0;
}

.program-list__item-details {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}
@media (min-width:46.25rem) {
  .program-list__item-details {
    text-align: end;
  }
}

.program-list__item-detail {
  border-block-end: 0.0625rem solid;
  padding-block: 0.625rem;
}

.program-list__item-detail-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

.program-list__item-detail-data_-link {
  text-decoration: underline;
}
.program-list__item-detail-data_-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .program-list__item-detail-data_-link:hover {
    color: var(--color-black);
  }
}

.program-list__pagination {
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

/* ==========================================================================
	Program Meta
============================================================================= */
.program-meta {
  color: var(--header-color);
  background-color: var(--header-background-color);
}

.program-meta__inner {
  padding-block: 1.875rem;
}

.program-meta__details {
  display: flex;
  gap: 1.25rem;
}
@media (max-width:46.1875rem) {
  .program-meta__details {
    flex-direction: column;
  }
}
@media (min-width:46.25rem) {
  .program-meta__details {
    flex-wrap: wrap;
    gap: 2.5rem;
  }
}

.program-meta__detail {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
}

.program-meta__detail-label {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.program-meta__detail-data {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.program-meta__detail-data-link {
  text-decoration: underline;
}
.program-meta__detail-data-link:focus-visible {
  color: var(--color-black);
}
@media (hover: hover) {
  .program-meta__detail-data-link:hover {
    color: var(--color-black);
  }
}

/* ==========================================================================
	Search Results
============================================================================= */
.search-results {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

@media (min-width:61.25rem) {
  .search-results__inner {
    max-inline-size: var(--fw-columns-10);
    margin-inline: auto;
  }
}

/* Form Only
============================================================================= */
.search-form {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.search-form__inner {
  margin-inline: auto;
}
@media (min-width:46.25rem) {
  .search-form__inner {
    max-width: 66%;
  }
}

/* ==========================================================================
	Share
============================================================================= */
.share-tools__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  text-transform: uppercase;
  text-transform: uppercase;
}

.share-tools__list {
  display: flex;
  translate: -0.3125rem -0.1875rem 0;
  font-size: 0;
}

.share-tools__link {
  display: block;
  color: var(--color-text-grey);
  padding-block: 0.625rem;
  padding-inline: 0.3125rem;
  transition: color var(--transition-base-speed);
}
.share-tools__link:focus-visible {
  color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .share-tools__link:hover {
    color: var(--color-dream-dragon-green);
  }
}

.share-tools__link-label {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* ==========================================================================
	Stat Group
============================================================================= */
.stat-group {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.stat-group__header {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
  margin-block-end: 1.875rem;
}

.stat-group__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.stat-group__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.stat-group__items {
  /* stylelint-disable */
  --grid-gap: var(--fw-column-gap);
  --grid-columns: 4;
  --grid-item-min: 12.5rem;
  --grid-gaps: calc(var(--grid-columns) - 1);
  --grid-gap-width: calc(var(--grid-gaps) * var(--grid-gap));
  --grid-item-max: calc((100% - var(--grid-gap-width)) / var(--grid-columns));
  /* stylelint-enable */
  display: grid;
  column-gap: var(--grid-gap);
  grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item-min), var(--grid-item-max)), 1fr));
  row-gap: 1.875rem;
}

.stat-group__item-value {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.stat-group__item-context {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}
.stat-group__item-context :where(a) {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-green-connection);
  text-decoration-thickness: 0.0625rem;
}
.stat-group__item-context :where(a):focus-visible {
  color: var(--color-dream-dragon-green);
  text-decoration-color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .stat-group__item-context :where(a):hover {
    color: var(--color-dream-dragon-green);
    text-decoration-color: var(--color-dream-dragon-green);
  }
}

/* ==========================================================================
	Topic Row
============================================================================= */
.topic-row__header {
  max-width: 66%;
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 100%;
  text-align: center;
  margin-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
  margin-block-end: 1.875rem;
  margin-inline: auto;
}

.topic-row__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.topic-row__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.topic-row__items {
  display: grid;
  grid-template-columns: 100%;
}

.topic-row__item {
  padding-block-start: clamp(2.5rem, -0.97222rem + (11.1111111111vw), 7.5rem);
}
.topic-row__item.alt-item {
  background-color: #62bb46;
}

.topic-row__item-inner {
  display: flex;
  flex-direction: column;
}
@media (min-width:61.25rem) {
  .topic-row__item-inner {
    flex-direction: row;
    gap: var(--fw-column-gap);
  }
  .topic-row__item:not(.alt-item) .topic-row__item-inner {
    flex-direction: row-reverse;
  }
}

@media (min-width:61.25rem) {
  .topic-row__item-figure {
    max-width: 54%;
  }
}

.topic-row__item-image {
  block-size: auto;
  inline-size: 100%;
  border-radius: 1.25rem;
}
.topic-row__item-wrapper {
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 0.38194rem + (2.7777777778vw), 2.5rem);
  margin-block-start: 1.875rem;
  background-image: url("../images/stars_bgnd.svg");
  background-repeat: no-repeat;
  background-position: top 0 right 0;
}
@media (min-width:61.25rem) {
  .topic-row__item-wrapper {
    flex: 1;
    min-width: 41.6%;
    padding-inline: 5% 3%;
    margin-block-start: 0;
    background-position: top 0 right 3.75rem;
  }
}

.topic-row__item-header {
  padding-block-start: 5.25rem;
}
@media (min-width:46.25rem) {
  .topic-row__item-header {
    padding-block-start: 4.5rem;
  }
}

.topic-row__item-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  letter-spacing: clamp(-0.15em, -0.1vw, 0em);
  margin-block: 0 0.625rem;
}

.topic-row__item-description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.topic-row__item-links {
  margin-block-start: 0.625rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.topic-row__item-border {
  background-color: #62bb46;
  mask: url("../images/band_pattern_1.svg");
  mask-repeat: repeat-x;
  mask-size: 60rem 5rem;
  height: 5rem;
  margin-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}
.alt-item .topic-row__item-border {
  background-color: #d0dd28;
  mask: url("../images/band_pattern_2.svg");
  mask-repeat: repeat-x;
  mask-size: 61.1875rem 5rem;
  height: 5rem;
  margin-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

/* ==========================================================================
	Video Embed
============================================================================= */
.video-embed {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.video-embed__figure {
  position: relative;
}
@media (min-width:61.25rem) {
  .video-embed__figure {
    grid-column: 3/span 8;
  }
}

.video-embed__image {
  block-size: auto;
  inline-size: 100%;
}

/* ==========================================================================
	WYSIWYG
============================================================================= */
.wysiwyg {
  color: var(--color-caption-grey);
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.wysiwyg__inner {
  margin-inline: auto;
}
@media (min-width:46.25rem) {
  .wysiwyg__inner {
    max-width: 66%;
  }
}

/* ==========================================================================
	Homepage Video
============================================================================= */
.homepage-video {
  padding-block-end: clamp(0.5rem, -0.19444rem + (2.2222222222vw), 1.5rem);
  background-color: #fff;
}

.homepage-video__figure {
  min-height: 31.25rem;
  position: relative;
  border-radius: 0.9375rem;
  overflow: hidden;
}
@media (min-width:61.25rem) {
  .homepage-video__figure {
    border-radius: 1.875rem;
  }
}

.figure-media-item__meta {
  position: absolute;
  inset-inline-start: 3%;
  inset-block-end: 12%;
}

.figure-media-item__img {
  width: 100%;
  aspect-ratio: 16/9;
  min-height: 31.25rem;
  object-fit: cover;
}

.figure-media-item__meta-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
  line-height: 1.05;
  color: #fff;
  margin-block-end: 1.5rem;
}
@media (min-width:61.25rem) {
  .figure-media-item__meta-title {
    max-width: 50%;
  }
}

/* ==========================================================================
	Showcase
============================================================================= */
.showcase {
  position: relative;
  overflow: hidden;
}
.showcase.carousel {
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}
.showcase .carousel__swiper {
  position: unset;
  inline-size: 100%;
}
@media (min-width:46.25rem) {
  .showcase .carousel__swiper {
    grid-column: 1;
    grid-row: 2;
  }
}
.showcase .carousel__swiper:where(.state-locked) .swiper-wrapper {
  gap: 0;
}
.showcase .swiper-wrapper {
  padding: 0;
  height: auto;
}
.showcase .swiper {
  overflow: visible;
}
@media (min-width:46.25rem) {
  .showcase .swiper {
    overflow: hidden;
  }
}
.showcase .carousel__controls {
  margin-block: 0;
}
.showcase .carousel__controls .swiper-pagination-bullet {
  --swiper-theme-color: currentColor;
  --swiper-theme-color: #62bb46;
  --swiper-navigation-size: 3rem;
  --swiper-pagination-bullet-size: 0.625rem;
  --swiper-pagination-bullet-border-radius: 1.25rem;
  --swiper-pagination-bullet-inactive-color: #62bb46;
  --swiper-pagination-bullet-inactive-opacity: 0.6;
}
.showcase .carousel__controls .swiper-pagination-bullet-active {
  --swiper-pagination-bullet-width: 1.875rem;
  --swiper-pagination-bullet-height: 0.625rem;
  --swiper-pagination-bullet-border-radius: 1.25rem;
}

.showcase__inner {
  display: grid;
  grid-template-columns: 100%;
  gap: 1.5625rem;
}
@media (min-width:46.25rem) {
  .showcase__inner {
    grid-template-columns: 1fr 1.75fr;
    grid-template-rows: min-content 1fr;
    gap: 3.125rem;
  }
}

@media (min-width:46.25rem) {
  .showcase__header {
    grid-column: 1;
    grid-row: 1;
  }
}

.showcase__title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  color: #005f40;
}

.showcase__description {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
  text-align: center;
}

.showcase__items .carousel__item {
  position: unset;
  inline-size: 100%;
  opacity: 0.6;
  transition: opacity var(--transition-base-speed);
}
.showcase__items .carousel__item:last-child {
  border-right: none;
}
.showcase__items .carousel__item:focus-visible {
  opacity: 1;
}
@media (hover: hover) {
  .showcase__items .carousel__item:hover {
    opacity: 1;
  }
}
.showcase__items .carousel__item.state-swap-active {
  opacity: 1;
}
@media (max-width:46.1875rem) {
  .showcase__items .carousel__item.swiper-slide-active {
    opacity: 1;
  }
}
@media (min-width:46.25rem) {
  .showcase__items .carousel__item {
    border-top: 0.0625rem solid #005f40;
    border-right: none;
  }
}
@media (min-width:46.25rem) {
  .showcase__items {
    flex-direction: column;
  }
}

.showcase__item {
  padding-inline-end: 2.5rem;
}
@media (min-width:46.25rem) {
  .showcase__item {
    padding-inline-end: unset;
  }
}

.showcase__item-button {
  inline-size: 100%;
  color: inherit;
  text-align: start;
  pointer-events: none;
}
@media (min-width:46.25rem) {
  .showcase__item-button {
    pointer-events: auto;
  }
}

.showcase__item-button-inner {
  display: grid;
  align-items: center;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) max-content;
  padding-block: 0.625rem;
}
@media (min-width:46.25rem) {
  .showcase__item-button-inner {
    padding-block: 1.25rem;
  }
}

.showcase__item-button-label {
  display: flex;
  align-items: baseline;
  flex-direction: column-reverse;
  gap: 0.3125rem;
}

.showcase__item-button-title {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-size: clamp(1.5rem, 1.23958rem + (0.8333333333vw), 1.875rem);
  line-height: 0.9;
}

.showcase__item-button-prefix {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(0.875rem, 0.78819rem + (0.2777777778vw), 1rem);
}

.showcase__item-meta {
  display: block;
  overflow: hidden;
  padding-block-end: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
@media print {
  .showcase__item-meta {
    display: block;
  }
}
@media (min-width:46.25rem) {
  .showcase__item-meta {
    display: none;
  }
}
:where(.carousel__item.state-swap-active) .showcase__item-meta, :where(.no-js) .showcase__item-meta {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.showcase__images {
  position: relative;
  width: 100%;
  height: 18.75rem;
}
@media (min-width:46.25rem) {
  .showcase__images {
    grid-column: 2;
    grid-row: 1/-1;
  }
}
@media (min-width:46.25rem) {
  .showcase__images {
    height: calc(100vh - clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem) * 2);
    overflow: hidden;
    margin-block-start: 0;
  }
}

.showcase__images-figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  opacity: 0;
  overflow: hidden;
  transition-duration: var(--transition-base-speed);
  transition-property: opacity, translate;
}
.showcase__images-figure.visible {
  opacity: 1;
}
.showcase__images:not(:has(.visible)) .showcase__images-figure:nth-child(1) {
  opacity: 1;
}
@media (min-width:46.25rem) {
  .showcase__images-figure {
    left: 0;
    width: 100%;
  }
}

.showcase__images-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ==========================================================================
	Print
============================================================================= */
@media print {
  * {
    color: #000 !important;
    text-shadow: none !important;
    background: none !important;
    box-shadow: none !important;
  }
  h2,
  h3,
  p {
    widows: 3;
    orphans: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  a {
    text-decoration: underline;
  }
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  a[href^="javascript:"]:after, a[href^="#"]:after {
    content: "";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 0.0625rem solid #999;
    padding: 0.625rem;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-inline-size: 100% !important;
  }
  .print {
    display: block;
  }
  [class*=fw-grid-overlay] {
    display: none !important;
  }
  .fw-container {
    padding-inline: 0;
  }
}
/* ==========================================================================
	Utilities
============================================================================= */
/* Accessibility
============================================================================= */
.visually-hide {
  block-size: 0.0625rem;
  inline-size: 0.0625rem;
  position: absolute;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -0.0625rem;
  overflow: hidden;
  padding: 0;
}

/* Layout
============================================================================= */
:where(.fw-container) {
  inline-size: var(--fw-container-width);
  min-inline-size: calc(var(--layout-min-width) - var(--layout-padding) * 2);
  margin-inline: auto;
}

:where(.fw-grid) {
  display: grid;
  column-gap: var(--fw-column-gap);
  grid-template-columns: repeat(auto-fill, var(--fw-column-width));
}

.clearfix::after {
  display: table;
  clear: both;
  content: "";
}

.margined-block-start-sm {
  margin-block-start: 2.5rem;
}

.margined-block-end-sm {
  margin-block-end: 2.5rem;
}

.margined-block-sm {
  margin-block: 2.5rem;
}

.padded-block-start-sm {
  padding-block-start: 2.5rem;
}

.padded-block-end-sm {
  padding-block-end: 2.5rem;
}

.padded-block-sm {
  padding-block: 2.5rem;
}

.margined-block-start-md {
  margin-block-start: clamp(2.5rem, 2.06597rem + (1.3888888889vw), 3.125rem);
}

.margined-block-end-md {
  margin-block-end: clamp(2.5rem, 2.06597rem + (1.3888888889vw), 3.125rem);
}

.margined-block-md {
  margin-block: clamp(2.5rem, 2.06597rem + (1.3888888889vw), 3.125rem);
}

.padded-block-start-md {
  padding-block-start: clamp(2.5rem, 2.06597rem + (1.3888888889vw), 3.125rem);
}

.padded-block-end-md {
  padding-block-end: clamp(2.5rem, 2.06597rem + (1.3888888889vw), 3.125rem);
}

.padded-block-md {
  padding-block: clamp(2.5rem, 2.06597rem + (1.3888888889vw), 3.125rem);
}

.margined-block-start-lg {
  margin-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.margined-block-end-lg {
  margin-block-end: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.margined-block-lg {
  margin-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.padded-block-start-lg {
  padding-block-start: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.padded-block-end-lg {
  padding-block-end: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.padded-block-lg {
  padding-block: clamp(2.5rem, 1.63194rem + (2.7777777778vw), 3.75rem);
}

.margined-block-start-xl {
  margin-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.margined-block-end-xl {
  margin-block-end: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.margined-block-xl {
  margin-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.padded-block-start-xl {
  padding-block-start: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.padded-block-end-xl {
  padding-block-end: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

.padded-block-xl {
  padding-block: clamp(2.5rem, 0.76389rem + (5.5555555556vw), 5rem);
}

/* Colors
============================================================================= */
.color-black {
  color: var(--color-black);
}

.color-white {
  color: var(--color-white);
}

/* Typography
============================================================================= */
.font-sans {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
}

.font-sans-alt {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
}

.type-h1 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  letter-spacing: clamp(-0.15em, -0.1vw, 0em);
}

.type-h2 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.type-h3 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.type-h4 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.type-h5 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  text-transform: uppercase;
}

.type-h6 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-transform: uppercase;
}

.type-intro_text {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: var(--font-size-intro-text);
  line-height: var(--line-height-intro-text);
}

.type-body_text {
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-body-text);
  line-height: var(--line-height-body-text);
}

.type-small_text {
  font-size: var(--font-size-small-text);
  line-height: var(--line-height-small-text);
}

.type-label_text {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-size: var(--font-size-label-text);
  line-height: var(--line-height-label-text);
}

.type-caption_text {
  font-size: var(--font-size-caption-text);
  line-height: var(--line-height-caption-text);
}

.type-link_text {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-green-connection);
  text-decoration-thickness: 0.0625rem;
}
.type-link_text:focus-visible {
  color: var(--color-dream-dragon-green);
  text-decoration-color: var(--color-dream-dragon-green);
}
@media (hover: hover) {
  .type-link_text:hover {
    color: var(--color-dream-dragon-green);
    text-decoration-color: var(--color-dream-dragon-green);
  }
}