@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Manrope:wght@200..800&display=swap");
@import url("https://use.typekit.net/vsu2vhz.css");
@layer elements, layout, components, utilities;
@layer elements {
  @layer reset {
    *,
    *::before,
    *::after {
      margin: 0;
      padding: 0;
      -webkit-font-smoothing: antialiased;
      box-sizing: border-box;
    }
    img,
    picture,
    video,
    canvas,
    svg {
      display: block;
      max-width: 100%;
    }
    textarea {
      display: block;
      resize: vertical;
    }
    button {
      border: none;
    }
    table {
      border-collapse: collapse;
    }
    :where(button) {
      background: transparent;
      font: inherit;
      color: inherit;
      cursor: pointer;
      letter-spacing: inherit;
      text-transform: inherit;
    }
    :where(svg) {
      width: 100%;
      height: auto;
    }
  }
  :root {
    /* --- Fonts --- */
    --ff_eb_garamond: "EB Garamond", serif;
    --ff_manrope: "Manrope", sans-serif;
    --ff_trajan: "trajan-pro-3", serif;
    --fw_medium: 500;
    --fw_semibold: 600;
    --fw_bold: 700;
    --linear_slope: ((100dvw - 412px) / 1188);
    --fs_5xl: clamp(calc(30rem / 16), calc(calc(30rem / 16) + (34 * var(--linear_slope))), calc(64rem / 16));
    --fs_4xl: clamp(calc(32rem / 16), calc(calc(32rem / 16) + (16 * var(--linear_slope))), calc(48rem / 16));
    --fs_3xl: clamp(calc(20rem / 16), calc(calc(20rem / 16) + (20 * var(--linear_slope))), calc(40rem / 16));
    --fs_2xl: clamp(calc(18rem / 16), calc(calc(18rem / 16) + (10 * var(--linear_slope))), calc(28rem / 16));
    --fs_xl: clamp(calc(16rem / 16), calc(calc(16rem / 16) + (6 * var(--linear_slope))), calc(22rem / 16));
    --fs_l: clamp(calc(16rem / 16), calc(calc(16rem / 16) + (2 * var(--linear_slope))), calc(18rem / 16));
    --fs_m: clamp(calc(14rem / 16), calc(calc(14rem / 16) + (2 * var(--linear_slope))), calc(16rem / 16));
    --fs_s: clamp(calc(12rem / 16), calc(calc(12rem / 16) + (2 * var(--linear_slope))), calc(14rem / 16));
    --fs_xs: clamp(calc(10rem / 16), calc(calc(10rem / 16) + (2 * var(--linear_slope))), calc(12rem / 16));
    --font_primary: var(--ff_manrope);
    --font_secondary: var(--ff_trajan);
    --font_tertiary: var(--ff_eb_garamond);
    /* --- Spacing and Sizing --- */
    --spacer_xxs: calc(10rem / 16);
    --spacer_xs: clamp(calc(16rem / 16), calc(calc(16rem / 16) + (9 * var(--linear_slope))), calc(25rem / 16));
    --spacer_s: clamp(calc(25rem / 16), calc(calc(25rem / 16) + (15 * var(--linear_slope))), calc(40rem / 16));
    --spacer_m: clamp(calc(30rem / 16), calc(calc(30rem / 16) + (35 * var(--linear_slope))), calc(65rem / 16));
    --spacer_l: clamp(calc(40rem / 16), calc(calc(40rem / 16) + (50 * var(--linear_slope))), calc(90rem / 16));
    --spacer_xl: clamp(calc(65rem / 16), calc(calc(65rem / 16) + (35 * var(--linear_slope))), calc(100rem / 16));
    --spacer_xxl: clamp(calc(100rem / 16), calc(calc(100rem / 16) + (100 * var(--linear_slope))), calc(200rem / 16));
    --spacer_xxxl: clamp(calc(200rem / 16), calc(calc(200rem / 16) + (120 * var(--linear_slope))), calc(320rem / 16));
    --flow_spacing: var(--spacer_xs);
    --content_space: var(--spacer_s);
    --grid_gutter_row: 2.25rem;
    --grid_gutter_col: 20px;
    --grid_gutter: var(--grid_gutter_row) var(--grid_gutter_col);
    --container_max: 1360px;
    --container_l_max: 1486px;
    --page_gutter: clamp(var(--spacer_xs), calc(calc(25rem / 16) + (40 * var(--linear_slope))), var(--spacer_m));
    --button_height: 2.444rem;
    --button_cta_height: 3.333rem;
    --input_height: 3.5625rem;
    --input_border_radius: 4px;
    --alert_height: 0rem;
    --top_nav_height: calc(55rem / 16);
    --navbar_height: calc(131rem / 16);
    --header_height: calc(var(--top_nav_height) + var(--navbar_height));
    --visible_header_height: var(--header_height);
    --page_nav_height: 0px;
    /* --- Colors --- */
    --color_blue: #007CC7;
    --color_yellow: #FFC500;
    --color_dark_blue: #00174B;
    --color_light_grey: #F4F4F4;
    --color_medium_grey: #999999;
    --color_dark_grey: #5A5A5A;
    --color_black: #141414;
    --color_primary: var(--color_blue);
    --color_secondary: var(--color_yellow);
    --color_dark: var(--color_dark_blue);
    --color_light: var(--color_light_grey);
    --color_text: var(--color_dark_blue);
    --color_success: #00966C;
    --color_error: #FF5F52;
    --color_warning: var(--color_yellow);
    --color_border: #D1D9D7;
    /* --- Borders --- */
    --border_color: var(--color_border);
    --border_width: 1px;
    --border_radius: 4px;
    --border_style: solid;
  }
  :root:has(.alert-bar) {
    --alert_height: 5rem;
    --header_height: calc(var(--top_nav_height) + var(--navbar_height) + var(--alert_height));
  }
  @media only screen and (max-width: 40rem) {
    :root:has(.alert-bar) {
      --alert_height: 3.75rem;
    }
  }
  :root:has(.navbar.hide) {
    --visible_header_height: calc(var(--header_height) - var(--navbar_height));
  }
  :root:has(.nav-wrapper.hide) {
    --visible_header_height: var(--alert_height);
  }
  @media only screen and (max-width: 57.5rem) {
    :root {
      --navbar_height: calc(100rem / 16);
      --top_nav_height: calc(40rem / 16);
    }
    :root:has(.page-nav-container) {
      --page_nav_height: 65px;
    }
  }
  @media only screen and (max-width: 40rem) {
    :root {
      --navbar_height: calc(84rem / 16);
    }
  }
  :where(.page-scope) {
    font-family: var(--font_primary);
    color: var(--color_text);
    interpolate-size: allow-keywords;
  }
  :where(.page-scope) h1 {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_5xl);
    line-height: 1.156;
    letter-spacing: 0px;
  }
  :where(.page-scope) h2 {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_4xl);
    line-height: 1.208;
    letter-spacing: 0px;
  }
  :where(.page-scope) h3 {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_3xl);
    line-height: 1.2;
    letter-spacing: 0px;
  }
  :where(.page-scope) h4 {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_2xl);
    line-height: 1.214;
    letter-spacing: 0px;
  }
  :where(.page-scope) h5 {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_xl);
    line-height: 1.181;
    letter-spacing: 0px;
  }
  :where(.page-scope) h6 {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_l);
    font-weight: 600;
    line-height: 1.333;
    letter-spacing: 1px;
  }
  :where(.page-scope) p, :where(.page-scope) ol, :where(.page-scope) ul, :where(.page-scope) dl, :where(.page-scope) address {
    font-family: var(--font_primary);
    font-size: var(--fs_m);
    text-transform: none;
    line-height: 1.75;
    letter-spacing: 0.33px;
  }
  :where(.page-scope) ul, :where(.page-scope) ol {
    padding: 0;
    list-style: none;
  }
  :where(.page-scope) blockquote {
    font-family: var(--font_tertiary);
    font-size: var(--fs_xl);
    font-style: italic;
    line-height: 1.545;
  }
  :where(.page-scope) address {
    font: inherit;
    line-height: inherit;
  }
  :where(.page-scope) a {
    color: inherit;
    text-decoration: none;
  }
  :where(.page-scope) a:is(:hover, :focus-visible) {
    text-decoration: none;
  }
  :where(.page-scope) fieldset {
    border: none;
  }
  :where(.page-scope) input, :where(.page-scope) textarea, :where(.page-scope) select {
    font: inherit;
    font-size: max(var(--fs_m), 1rem);
    line-height: 1.2;
  }
  :where(.page-scope) input[type=checkbox] + label {
    font-size: var(--fs_m);
  }
  :where(.page-scope) input:not([type=radio], [type=checkbox], [type=file]), :where(.page-scope) textarea, :where(.page-scope) select {
    height: var(--input_height);
  }
  :where(.page-scope) input[type=text],
  :where(.page-scope) input[type=email],
  :where(.page-scope) input[type=tel],
  :where(.page-scope) input[type=password],
  :where(.page-scope) input[type=number],
  :where(.page-scope) input[type=date],
  :where(.page-scope) input[type=datetime-local],
  :where(.page-scope) select,
  :where(.page-scope) textarea {
    width: 100%;
    color: var(--color_text);
    background-color: #FFF;
    border: 1px solid var(--border_color);
    border-radius: var(--input_border_radius);
    appearance: none;
  }
  :where(.page-scope) input[type=text]:focus,
  :where(.page-scope) input[type=email]:focus,
  :where(.page-scope) input[type=tel]:focus,
  :where(.page-scope) input[type=password]:focus,
  :where(.page-scope) input[type=number]:focus,
  :where(.page-scope) input[type=date]:focus,
  :where(.page-scope) input[type=datetime-local]:focus,
  :where(.page-scope) select:focus,
  :where(.page-scope) textarea:focus {
    border-color: var(--color_primary);
    outline: none;
    -moz-outline: none;
    -webkit-outline: none;
  }
  :where(.page-scope) input[type=text].error,
  :where(.page-scope) input[type=email].error,
  :where(.page-scope) input[type=tel].error,
  :where(.page-scope) input[type=password].error,
  :where(.page-scope) input[type=number].error,
  :where(.page-scope) input[type=date].error,
  :where(.page-scope) input[type=datetime-local].error,
  :where(.page-scope) select.error,
  :where(.page-scope) textarea.error {
    border-color: var(--color_error);
  }
  :where(.page-scope) input[type=text]:not(textarea),
  :where(.page-scope) input[type=email]:not(textarea),
  :where(.page-scope) input[type=tel]:not(textarea),
  :where(.page-scope) input[type=password]:not(textarea),
  :where(.page-scope) input[type=number]:not(textarea),
  :where(.page-scope) input[type=date]:not(textarea),
  :where(.page-scope) input[type=datetime-local]:not(textarea),
  :where(.page-scope) select:not(textarea),
  :where(.page-scope) textarea:not(textarea) {
    padding: 1.125rem 1rem;
  }
  :where(.page-scope) input[type=text][required]:not(:placeholder-shown):not(:focus):invalid, :where(.page-scope) input[type=text][required][data-interacted]:invalid,
  :where(.page-scope) input[type=email][required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) input[type=email][required][data-interacted]:invalid,
  :where(.page-scope) input[type=tel][required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) input[type=tel][required][data-interacted]:invalid,
  :where(.page-scope) input[type=password][required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) input[type=password][required][data-interacted]:invalid,
  :where(.page-scope) input[type=number][required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) input[type=number][required][data-interacted]:invalid,
  :where(.page-scope) input[type=date][required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) input[type=date][required][data-interacted]:invalid,
  :where(.page-scope) input[type=datetime-local][required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) input[type=datetime-local][required][data-interacted]:invalid,
  :where(.page-scope) select[required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) select[required][data-interacted]:invalid,
  :where(.page-scope) textarea[required]:not(:placeholder-shown):not(:focus):invalid,
  :where(.page-scope) textarea[required][data-interacted]:invalid {
    color: var(--color_error);
    border-color: currentcolor;
  }
  :where(.page-scope) input[type=text][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) input[type=email][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) input[type=tel][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) input[type=password][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) input[type=number][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) input[type=date][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) input[type=datetime-local][required][data-interacted]:invalid::placeholder,
  :where(.page-scope) select[required][data-interacted]:invalid::placeholder,
  :where(.page-scope) textarea[required][data-interacted]:invalid::placeholder {
    color: var(--color_error);
  }
  :where(.page-scope) input[type=text][required]:not(:placeholder-shown):not(:focus):invalid + label, :where(.page-scope) input[type=text][required][data-interacted]:invalid + label,
  :where(.page-scope) input[type=email][required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) input[type=email][required][data-interacted]:invalid + label,
  :where(.page-scope) input[type=tel][required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) input[type=tel][required][data-interacted]:invalid + label,
  :where(.page-scope) input[type=password][required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) input[type=password][required][data-interacted]:invalid + label,
  :where(.page-scope) input[type=number][required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) input[type=number][required][data-interacted]:invalid + label,
  :where(.page-scope) input[type=date][required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) input[type=date][required][data-interacted]:invalid + label,
  :where(.page-scope) input[type=datetime-local][required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) input[type=datetime-local][required][data-interacted]:invalid + label,
  :where(.page-scope) select[required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) select[required][data-interacted]:invalid + label,
  :where(.page-scope) textarea[required]:not(:placeholder-shown):not(:focus):invalid + label,
  :where(.page-scope) textarea[required][data-interacted]:invalid + label {
    color: var(--color_error);
  }
  :where(.page-scope) input[type=text][required]:not(:placeholder-shown):not(:focus):invalid + label:after, :where(.page-scope) input[type=text][required][data-interacted]:invalid + label:after,
  :where(.page-scope) input[type=email][required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) input[type=email][required][data-interacted]:invalid + label:after,
  :where(.page-scope) input[type=tel][required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) input[type=tel][required][data-interacted]:invalid + label:after,
  :where(.page-scope) input[type=password][required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) input[type=password][required][data-interacted]:invalid + label:after,
  :where(.page-scope) input[type=number][required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) input[type=number][required][data-interacted]:invalid + label:after,
  :where(.page-scope) input[type=date][required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) input[type=date][required][data-interacted]:invalid + label:after,
  :where(.page-scope) input[type=datetime-local][required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) input[type=datetime-local][required][data-interacted]:invalid + label:after,
  :where(.page-scope) select[required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) select[required][data-interacted]:invalid + label:after,
  :where(.page-scope) textarea[required]:not(:placeholder-shown):not(:focus):invalid + label:after,
  :where(.page-scope) textarea[required][data-interacted]:invalid + label:after {
    font-size: clamp(14px, 0.778rem, 0.778rem);
    font-weight: normal;
    letter-spacing: 0.009rem;
    line-height: 1.571;
    content: attr(data-error);
  }
  :where(.page-scope) input[type=file] {
    width: auto;
  }
  :where(.page-scope) select {
    padding: 0 2rem 0 1rem;
    background-repeat: no-repeat;
    background-position: calc(100% - 1rem) center;
    background-size: 0.6rem auto;
  }
  :where(.page-scope) select[required][data-interacted]:invalid {
    color: var(--color_error);
    border-color: currentcolor;
  }
  :where(.page-scope) select[required][data-interacted]:invalid + label {
    color: var(--color_error);
  }
  :where(.page-scope) select[required][data-interacted]:invalid + label:after {
    letter-spacing: 0;
    content: attr(data-error);
  }
  :where(.page-scope) textarea {
    height: auto;
    padding: 1rem;
  }
  :where(.page-scope) input[type=radio], :where(.page-scope) input[type=checkbox] {
    accent-color: var(--color_primary);
  }
  :where(.page-scope) input::placeholder, :where(.page-scope) textarea::placeholder {
    color: var(--color_text);
  }
  :where(.page-scope) input:focus::placeholder, :where(.page-scope) textarea:focus::placeholder {
    opacity: 0;
  }
  :where(.page-scope) label {
    display: block;
    margin-bottom: 0;
    font-family: var(--font_secondary);
    font-size: var(--fs_m);
    font-weight: 600;
    letter-spacing: 0.001rem;
  }
  :where(.page-scope) ::placeholder {
    color: var(--color_text);
    opacity: 1;
  }
  :where(.page-scope) ::-ms-input-placeholder {
    color: var(--color_text);
  }
}
@layer layout {
  :where(.page-scope) {
    /* --- PageBuilder Slice Layout Styles --- */
    /* --- In-Lucy PageBuilder Layout Styles --- */
  }
  :where(.page-scope) .lucy-form {
    container-type: inline-size;
    container-name: lucy-form;
    margin-block-end: var(--content_space);
    padding-block: var(--spacer_s);
    padding-inline: clamp(20px, 5.5cqi, 48px);
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius);
  }
  :where(.page-scope) .lucy-form .thank-you {
    scroll-margin-top: var(--header_height);
  }
  :where(.page-scope) .lucy-form .form-title {
    margin-block-end: var(--spacer_xxs);
  }
  :where(.page-scope) .lucy-form .form-intro {
    margin-block: 0.5em var(--spacer_xs);
  }
  :where(.page-scope) .lucy-form legend {
    margin-block-end: var(--flow_spacing);
  }
  :where(.page-scope) .form-thanks-wrapper {
    display: grid;
    grid-template-columns: 2.625rem 1fr;
    gap: 20px;
    align-items: center;
    margin-block-end: var(--spacer_xxs);
    padding: 1.875rem;
    background-color: var(--color_light);
    border-radius: var(--border_radius);
  }
  :where(.page-scope) .form-thanks-wrapper h3 {
    margin-block-end: 0.1rem;
  }
  :where(.page-scope) .form-thanks-wrapper p {
    color: var(--color_dark_grey);
  }
  :where(.page-scope) .form-thanks-wrapper svg {
    color: var(--color_primary);
  }
  :where(.page-scope) .form-heading {
    margin-block: 0;
  }
  :where(.page-scope) .form-note-text {
    margin-block-start: calc(var(--grid_gutter_row) / -1.5);
  }
  :where(.page-scope) .form-divider {
    grid-column: 1/-1 !important;
    margin: calc(var(--spacer_m) - var(--grid_gutter_row)) 0;
    border-top: 1px solid var(--border_color);
  }
  :where(.page-scope) :where(.field-wrap) label {
    place-self: start;
    font-size: max(0.75rem, var(--fs_xs));
    font-family: var(--ff_manrope);
    font-weight: 800;
  }
  :where(.page-scope) :where(.field-wrap) label.error {
    color: var(--color_error);
  }
  :where(.page-scope) .field-wrap {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    gap: 0.5rem;
  }
  :where(.page-scope) .field-wrap > * {
    margin-bottom: 0;
  }
  :where(.page-scope) .field-wrap span.error {
    display: none;
  }
  :where(.page-scope) .field-wrap [disabled] {
    opacity: 0.5;
    cursor: not-allowed;
  }
  :where(.page-scope) .field-wrap [disabled] + label {
    opacity: 0.5;
    pointer-events: none;
  }
  :where(.page-scope) .field-wrap:has(select) select {
    appearance: none;
    background-image: url("/images/icons/arrow-down.svg");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 9px;
    padding-right: 2.5rem;
  }
  :where(.page-scope) .field-wrap:has(input[type=file]) {
    justify-self: start;
  }
  :where(.page-scope) .field-wrap:has(input[type=file]) input::file-selector-button {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_m);
    font-weight: var(--fw_semibold);
    line-height: 1.5;
    letter-spacing: 2px;
    text-transform: lowercase;
    display: block;
    margin-block-end: 0.5rem;
    padding-block: 0.625rem;
    padding-inline: 20px;
    color: var(--color_text);
    background-color: var(--color_light);
    border: none;
    border-radius: var(--border_radius);
    cursor: pointer;
    transition: background-color 0.3s ease;
  }
  :where(.page-scope) .field-wrap:has(input[type=file]) input::file-selector-button:hover, :where(.page-scope) .field-wrap:has(input[type=file]) input::file-selector-button:focus-visible {
    background-color: color-mix(in oklab, var(--color_light) 97%, #000000);
  }
  :where(.page-scope) .field-wrap.check, :where(.page-scope) .field-wrap.radio {
    --check_size: 1.1875rem;
    --check_size: 1lh;
    display: flex;
    gap: 0.5rem;
  }
  @media only screen and (max-width: 600px) {
    :where(.page-scope) .field-wrap.check, :where(.page-scope) .field-wrap.radio {
      --check_size: 1rem;
    }
  }
  :where(.page-scope) .field-wrap.check .option, :where(.page-scope) .field-wrap.radio .option {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    line-height: 1.2;
  }
  :where(.page-scope) .field-wrap.check input[type=radio], :where(.page-scope) .field-wrap.check input[type=checkbox], :where(.page-scope) .field-wrap.radio input[type=radio], :where(.page-scope) .field-wrap.radio input[type=checkbox] {
    flex-shrink: 0;
    width: var(--check_size);
    height: var(--check_size);
    line-height: inherit;
  }
  :where(.page-scope) .field-wrap.check .option:not(:last-of-type), :where(.page-scope) .field-wrap.radio .option:not(:last-of-type) {
    margin-block-end: 0.6875rem;
  }
  :where(.page-scope) .field-wrap.check label, :where(.page-scope) .field-wrap.radio label {
    font: inherit;
    font-size: var(--fs_m);
  }
  :where(.page-scope) form.grid, :where(.page-scope) div.grid[id*=form], :where(.page-scope) .form-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: var(--grid_gutter);
  }
  :where(.page-scope) form.grid .field-wrap, :where(.page-scope) form.grid .field-wrap.half, :where(.page-scope) div.grid[id*=form] .field-wrap, :where(.page-scope) div.grid[id*=form] .field-wrap.half, :where(.page-scope) .form-grid .field-wrap, :where(.page-scope) .form-grid .field-wrap.half {
    grid-column: auto/span 3;
  }
  :where(.page-scope) form.grid .field-wrap.third, :where(.page-scope) div.grid[id*=form] .field-wrap.third, :where(.page-scope) .form-grid .field-wrap.third {
    grid-column: auto/span 2;
  }
  :where(.page-scope) form.grid .field-wrap.textarea, :where(.page-scope) form.grid .field-wrap.check, :where(.page-scope) form.grid .field-wrap.full, :where(.page-scope) form.grid > *:not(.field-wrap), :where(.page-scope) div.grid[id*=form] .field-wrap.textarea, :where(.page-scope) div.grid[id*=form] .field-wrap.check, :where(.page-scope) div.grid[id*=form] .field-wrap.full, :where(.page-scope) div.grid[id*=form] > *:not(.field-wrap), :where(.page-scope) .form-grid .field-wrap.textarea, :where(.page-scope) .form-grid .field-wrap.check, :where(.page-scope) .form-grid .field-wrap.full, :where(.page-scope) .form-grid > *:not(.field-wrap) {
    grid-column: auto/span 6;
  }
  @container (max-width: 500px) {
    :where(.page-scope) form.grid, :where(.page-scope) div.grid[id*=form], :where(.page-scope) .form-grid {
      grid-template-columns: 1fr;
    }
    :where(.page-scope) form.grid .field-wrap, :where(.page-scope) form.grid .field-wrap.half, :where(.page-scope) form.grid .field-wrap.third, :where(.page-scope) form.grid .field-wrap.textarea, :where(.page-scope) form.grid .field-wrap.check, :where(.page-scope) form.grid .field-wrap.full, :where(.page-scope) form.grid > *:not(.field-wrap), :where(.page-scope) div.grid[id*=form] .field-wrap, :where(.page-scope) div.grid[id*=form] .field-wrap.half, :where(.page-scope) div.grid[id*=form] .field-wrap.third, :where(.page-scope) div.grid[id*=form] .field-wrap.textarea, :where(.page-scope) div.grid[id*=form] .field-wrap.check, :where(.page-scope) div.grid[id*=form] .field-wrap.full, :where(.page-scope) div.grid[id*=form] > *:not(.field-wrap), :where(.page-scope) .form-grid .field-wrap, :where(.page-scope) .form-grid .field-wrap.half, :where(.page-scope) .form-grid .field-wrap.third, :where(.page-scope) .form-grid .field-wrap.textarea, :where(.page-scope) .form-grid .field-wrap.check, :where(.page-scope) .form-grid .field-wrap.full, :where(.page-scope) .form-grid > *:not(.field-wrap) {
      grid-column: auto/span 1;
    }
  }
  :where(.page-scope) .control {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
  }
  :where(.page-scope) .control input, :where(.page-scope) .control select {
    grid-column: 1/-1;
    grid-row: 1;
  }
  :where(.page-scope) .control .icons-left, :where(.page-scope) .control .icons-right {
    grid-row: 1;
    display: grid;
    grid-auto-columns: auto;
    grid-auto-flow: column;
    place-items: center;
    gap: 10px;
    pointer-events: none;
  }
  :where(.page-scope) .control .icons-left {
    grid-column: 1;
    width: var(--icons_left_size);
  }
  :where(.page-scope) .control .icons-right {
    grid-column: 3;
    width: var(--icons_right_size);
  }
  :where(.page-scope) .control:has(.icons-left) :is(input, select) {
    padding-inline-start: calc(var(--control_padding, 0rem) + var(--icons_left_size, 1.5rem));
  }
  :where(.page-scope) .control:has(.icons-right) :is(input, select) {
    padding-inline-end: calc(var(--control_padding, 0rem) + var(--icons_right_size, 1.5rem));
  }
  :where(.page-scope) .display-5xl {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_5xl);
    line-height: 1.156;
    letter-spacing: 0px;
  }
  :where(.page-scope) .display-4xl {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_4xl);
    line-height: 1.208;
    letter-spacing: 0px;
  }
  :where(.page-scope) .display-3xl {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_3xl);
    line-height: 1.2;
    letter-spacing: 0px;
  }
  :where(.page-scope) .display-2xl {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_2xl);
    line-height: 1.214;
    letter-spacing: 0px;
  }
  :where(.page-scope) .display-xl {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_xl);
    line-height: 1.181;
    letter-spacing: 0px;
  }
  :where(.page-scope) .display-l {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_l);
    font-weight: 600;
    line-height: 1.333;
    letter-spacing: 1px;
  }
  :where(.page-scope) .body-l {
    font-family: var(--font_primary);
    font-size: var(--fs_m);
    text-transform: none;
    line-height: 1.75;
    letter-spacing: 0.33px;
    font-size: var(--fs_l);
    line-height: 1.66;
  }
  :where(.page-scope) .display-m {
    font-family: var(--font_primary);
    font-size: var(--fs_m);
    text-transform: none;
    line-height: 1.75;
    letter-spacing: 0.33px;
  }
  :where(.page-scope) .body-small, :where(.page-scope) .display-14 {
    font-size: var(--fs_s);
    text-transform: none;
    line-height: 1.57;
    letter-spacing: 0.22px;
  }
  :where(.page-scope) .caption, :where(.page-scope) .photo-caption, :where(.page-scope) .body-xsmall, :where(.page-scope) .display-12 {
    font-size: var(--fs_xs);
    text-transform: none;
    letter-spacing: 0.13px;
    line-height: 1.5;
  }
  :where(.page-scope) .intro {
    font-family: var(--font_tertiary);
    font-size: var(--fs_2xl);
    font-weight: normal;
    line-height: 1.357;
  }
  :where(.page-scope) .sub-header {
    font-family: var(--font_secondary);
    font-size: var(--fs_s);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 3px;
  }
  :where(.page-scope) .sub-header-m {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_m);
    font-weight: var(--fw_semibold);
    line-height: 1.5;
    letter-spacing: 2px;
  }
  :where(.page-scope) .link-underline-hover:is(a), :where(.page-scope) .link-underline-hover a {
    transition: text-decoration 0.3s ease;
    text-decoration-line: underline;
    text-decoration-color: transparent;
  }
  :where(.page-scope) .link-underline-hover:is(a:hover, a:focus-visible), :where(.page-scope) .link-underline-hover a:is(:hover, :focus-visible) {
    text-decoration-color: inherit;
  }
  :where(.page-scope) :is(a, button) .underline-hover-target {
    text-decoration-line: underline;
    text-decoration-color: transparent;
    transition: text-decoration 0.3s ease;
  }
  :where(.page-scope) :is(a, button):is(:hover, :focus-visible) .underline-hover-target {
    text-decoration-color: currentColor;
  }
  :where(.page-scope) :where(.editor-content) :where(* + :is(p, ul, ol, dl, blockquote)) {
    margin-block-start: 1em;
  }
  :where(.page-scope) :where(.editor-content) :where(p + p) {
    margin-block-start: 1.5em;
  }
  :where(.page-scope) :where(.editor-content) :where(* + :is(h2, h3, h4, h5, h6)) {
    margin-block-start: min(3.4375rem, 1.56em);
  }
  :where(.page-scope) :where(.editor-content) :where(:is(h2, h3, h4, h5, h6) + *) {
    margin-block-start: 0.7em;
  }
  :where(.page-scope) :where(.editor-content) :where(:is(p, ul, ol, dl, blockquote)) a {
    color: var(--color_primary);
    font-weight: var(--fw_semibold);
    text-decoration-line: underline;
  }
  :where(.page-scope) :where(.editor-content) :where(:is(p, ul, ol, dl, blockquote)) a:hover, :where(.page-scope) :where(.editor-content) :where(:is(p, ul, ol, dl, blockquote)) a:focus-visible {
    text-decoration: none;
  }
  :where(.page-scope) :where(.editor-content) ul, :where(.page-scope) :where(.editor-content) ol {
    padding-left: 1.25rem;
  }
  :where(.page-scope) :where(.editor-content) ul {
    list-style: none;
  }
  :where(.page-scope) :where(.editor-content) ul li::before {
    display: inline-block;
    margin-block-end: 1px;
    margin-inline-end: 10px;
    vertical-align: baseline;
    content: url("/images/list-marker.svg");
  }
  :where(.page-scope) :where(.editor-content) ol {
    counter-reset: list-counter;
  }
  :where(.page-scope) :where(.editor-content) ol li {
    counter-increment: list-counter;
  }
  :where(.page-scope) :where(.editor-content) ol li::before {
    display: inline-block;
    margin-inline-end: 10px;
    vertical-align: baseline;
    content: counter(list-counter) ".";
    font-weight: var(--fw_bold);
    color: var(--color_primary);
    min-width: 1.5ch;
  }
  :where(.page-scope) :where(.editor-content) table {
    width: 100%;
    line-height: 1.5;
    border-collapse: collapse;
    overflow: hidden;
  }
  :where(.page-scope) :where(.editor-content) table th, :where(.page-scope) :where(.editor-content) table td {
    font-family: var(--font_primary);
    font-size: var(--fs_m);
    text-transform: none;
    line-height: 1.75;
    letter-spacing: 0.33px;
    padding: 1rem;
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) :where(.editor-content) table th, :where(.page-scope) :where(.editor-content) table td {
      padding-block: 0.75rem;
      padding-inline: 10px;
    }
  }
  :where(.page-scope) :where(.editor-content) table tr {
    border-top: 1px solid var(--color_border);
  }
  :where(.page-scope) :where(.editor-content) table tr:last-child {
    border-bottom: 1px solid var(--color_border);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket] .plugin-wrapper {
    margin-block-end: var(--content_space);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket] .lucy-divider {
    position: relative;
    font-size: 0;
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket] .lucy-divider.separate-full {
    margin: calc(var(--content_space) * 1.5) 0;
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) :where(.lucy-layout) [data-bucket] .lucy-divider.separate-full {
      margin: var(--content_space) 0;
    }
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket] .lucy-divider.half {
    margin: calc(var(--content_space) * 0.75) 0;
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) :where(.lucy-layout) [data-bucket] .lucy-divider.half {
      margin: calc(var(--content_space) * 0.5) 0;
    }
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket] .lucy-divider[class*=separate-]:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--border_color);
    transform: translate(0, -50%);
    content: "";
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket] {
    display: grid;
    width: 100%;
    gap: var(--grid_gutter);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket][data-alignment=middle] {
    align-items: center;
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket][data-alignment=bottom] {
    align-items: end;
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket][data-margin="1"] {
    width: calc(100% - var(--spacer_m) * 2);
    margin-left: var(--spacer_m);
    margin-right: var(--spacer_m);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket][data-spacing=none] {
    gap: 0;
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket][data-spacing=small] {
    gap: calc(var(--grid_gutter) * 0.5);
  }
  @media only screen and (max-width: 700px) {
    :where(.page-scope) :where(.lucy-layout) [data-bucket][data-spacing=small] {
      gap: 0;
    }
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket][data-spacing=extra] {
    gap: var(--spacer_l);
  }
  @media only screen and (max-width: 700px) {
    :where(.page-scope) :where(.lucy-layout) [data-bucket][data-spacing=extra] {
      gap: 0;
    }
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket="1-column"] {
    grid-template-columns: minmax(0, 1fr);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket="2-column"] {
    grid-template-columns: repeat(2, 1fr);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket="3-column"] {
    grid-template-columns: repeat(3, 1fr);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket="4-column"] {
    grid-template-columns: repeat(4, 1fr);
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket="70-30"] {
    grid-template-columns: 7fr 3fr;
  }
  :where(.page-scope) :where(.lucy-layout) [data-bucket="30-70"] {
    grid-template-columns: 3fr 7fr;
  }
  @media only screen and (max-width: 700px) {
    :where(.page-scope) :where(.lucy-layout) [data-bucket="2-column"],
    :where(.page-scope) :where(.lucy-layout) [data-bucket="3-column"],
    :where(.page-scope) :where(.lucy-layout) [data-bucket="4-column"],
    :where(.page-scope) :where(.lucy-layout) [data-bucket="70-30"],
    :where(.page-scope) :where(.lucy-layout) [data-bucket="30-70"] {
      grid-template-columns: minmax(0, 1fr);
    }
  }
  :where(.page-scope)#lucy-page-template-inner {
    padding: var(--spacer_s) var(--spacer_s);
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-main {
    margin: 0;
    padding: 0;
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content {
    margin: 0;
    border-radius: unset;
    overflow: unset;
    background-color: unset;
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content .plugin {
    margin-bottom: calc(var(--content_space) / 2);
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content .lucy-divider {
    margin: 0 !important;
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content .lucy-divider.separate-full {
    padding: var(--content_space) 0;
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content .lucy-divider.half {
    padding: calc(var(--content_space) / 2) 0;
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content .plugin.filled[data-type=divider]:hover .lucy-divider:before {
    opacity: 0.3;
  }
  :where(.page-scope)#lucy-page-template-inner #lucy-content .plugin.filled[data-type=divider]:hover .lucy-divider:after {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    font-size: 1rem;
    text-align: center;
    font-family: "Roboto", sans-serif;
    color: #AAA;
    content: "Divider";
    transform: translate(0, -50%);
  }
  :where(.page-scope) .theformgroup-note {
    display: flex;
    width: 100%;
    max-width: none;
    padding: 1rem;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
    font-size: 1.25rem;
    color: #000;
    background: #FFF740;
    box-sizing: border-box;
  }
  :where(.page-scope) .theformgroup-note a:any-link {
    color: #000;
    text-decoration-color: #000;
  }
  :where(.page-scope) .theformgroup-note::before {
    display: inline-block;
    height: 2rem;
    aspect-ratio: 249/95;
    background: url(../images/icons/form.svg) no-repeat right;
    background-size: cover;
    content: "";
  }
  :where(.page-scope) .container {
    --container_size: var(--container_max);
    container-type: inline-size;
    container-name: container;
    width: 100%;
    max-width: calc(var(--container_size) + var(--page_gutter) * 2);
    margin-inline: auto;
    padding-inline: var(--page_gutter);
  }
  :where(.page-scope) .container.container-l {
    --container_size: var(--container_l_max);
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) .container.container-fluid-mobile {
      max-width: 100%;
      padding-inline: 0;
    }
  }
}
:where(.page-scope) {
  /* --- Pages Plugin (TOC) --- */
  /* --- FAQs Plugin --- */
  /* --- Facts Plugin --- */
  /* --- Resources Listing/Plugin --- */
  /* --- Gallery Plugin --- */
}
:where(.page-scope) #search-results {
  margin-block-end: var(--spacer_s);
}
:where(.page-scope) #search-results .results-heading {
  margin-block-end: var(--spacer_xs);
}
:where(.page-scope) #search-results .result-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: var(--spacer_s) 0;
  border-top: 1px solid var(--border_color);
}
:where(.page-scope) #search-results .result-container a {
  text-decoration: underline;
}
:where(.page-scope) #search-results .result-container a:hover, :where(.page-scope) #search-results .result-container a:focus-visible {
  text-decoration: none;
}
:where(.page-scope) #search-results .result-container > * {
  margin-bottom: 0;
}
:where(.page-scope) #search-results .result-container:last-of-type {
  border-bottom: 1px solid var(--border_color);
}
:where(.page-scope) .event-pb-container {
  container-name: event-article;
  container-type: inline-size;
}
:where(.page-scope) .event-pb-container:hover .inner-layout, :where(.page-scope) .event-pb-container:focus-within .inner-layout {
  background-color: var(--color_yellow);
}
:where(.page-scope) .event-pb-container:hover .date-block, :where(.page-scope) .event-pb-container:focus-within .date-block {
  background-color: var(--color_light);
  color: var(--color_text);
}
:where(.page-scope) .event-pb-container h2, :where(.page-scope) .event-pb-container p {
  margin: 0;
}
:where(.page-scope) .event-pb-container .img-wrap {
  align-self: center;
}
:where(.page-scope) .event-pb-container img {
  border-radius: var(--border_radius);
}
:where(.page-scope) .event-pb-container .inner-layout {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 38px;
  padding-block: 1.75rem;
  padding-inline: 30px;
  background-color: var(--color_light);
  border-radius: var(--border_radius);
  transition: all 0.3s ease;
}
:where(.page-scope) .event-pb-container .inner-layout:has(img) {
  grid-template-columns: 54px 1fr 220px;
}
:where(.page-scope) .event-pb-container .inner-content {
  align-self: center;
}
:where(.page-scope) .event-pb-container .event-heading {
  margin-block-end: 0.25rem;
}
:where(.page-scope) .event-pb-container .event-preview {
  margin-block-start: 0.75rem;
  color: var(--color_dark_grey);
}
@container event-article (max-width: 400px) {
  :where(.page-scope) .event-pb-container .inner-layout {
    gap: 20px;
    padding-block: 0.9375rem;
    padding-inline: 15px;
  }
  :where(.page-scope) .event-pb-container .event-heading {
    font-size: var(--fs_xl);
  }
  :where(.page-scope) .event-pb-container .event-when {
    font-size: var(--fs_xs);
    font-weight: var(--fw_bold);
  }
}
:where(.page-scope) .event-page-header {
  container: event-header/inline-size;
  display: grid;
  align-items: center;
  gap: var(--spacer_xs) clamp(20px, 6cqi, 80px);
  text-align: center;
}
:where(.page-scope) .event-page-header:has(.event-header-img) {
  grid-template-columns: 1fr 1fr;
}
:where(.page-scope) .event-page-header h1 {
  margin-block-end: 1.5rem;
}
@media only screen and (max-width: 910px) {
  :where(.page-scope) .event-page-header h1 {
    margin-block-end: var(--spacer_xs);
  }
}
:where(.page-scope) .event-page-header .event-header-date {
  margin-block-end: var(--spacer_xs);
  justify-self: center;
  color: var(--color_text);
}
:where(.page-scope) .event-page-header .event-header-details-container {
  container: event-header-details/inline-size;
}
:where(.page-scope) .event-page-header .event-header-details-container .when-wrap {
  display: flex;
  gap: 0px 12px;
  flex-wrap: wrap;
}
:where(.page-scope) .event-page-header .event-header-details {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: center;
  gap: 1.25rem;
}
:where(.page-scope) .event-page-header .event-header-details br {
  display: none;
}
@container event-header-details (max-width: 660px) {
  :where(.page-scope) .event-page-header .event-header-details {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .event-page-header .event-header-details br {
    display: inline;
  }
  :where(.page-scope) .event-page-header .event-header-details .when-wrap {
    display: block;
  }
}
@media only screen and (max-width: 910px) {
  :where(.page-scope) .event-page-header .event-header-details {
    margin-block-end: 0;
    gap: var(--spacer_xs);
  }
}
:where(.page-scope) .event-page-header .img-wrap {
  position: relative;
  color: var(--color_text);
  border-radius: var(--border_radius);
  overflow: hidden;
}
:where(.page-scope) .event-page-header .img-wrap .date-block {
  position: absolute;
  top: 10px;
  right: 10px;
}
:where(.page-scope) .event-page-header .event-header-img {
  width: 100%;
}
@media only screen and (max-width: 53.75rem) {
  :where(.page-scope) .event-page-header:has(.event-header-img) {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .event-page-header:has(.event-header-img) .img-wrap {
    order: -1;
  }
}
:where(.page-scope) .date-block {
  display: grid;
  place-content: center;
  text-align: center;
  align-self: start;
  min-width: 54px;
  padding-block: 1.125rem;
  padding-inline: 10px;
  border-radius: 2px;
  background-color: var(--color_yellow);
  transition: color 0.3s ease, background-color 0.3s ease;
}
:where(.page-scope) .date-block .month {
  font-family: var(--font_secondary);
  font-weight: 600;
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: lowercase;
}
:where(.page-scope) .date-block .day {
  margin: 0;
}
:where(.page-scope) .calendar-header {
  margin-block-end: var(--spacer_m);
}
@media only screen and (max-width: 48rem) {
  :where(.page-scope) .calendar-header {
    margin-block-end: var(--spacer_xs);
  }
}
:where(.page-scope) .calendar-header-layout {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: space-between;
  gap: var(--spacer_s) 20px;
}
:where(.page-scope) .calendar-header-layout .header-start {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: start;
  align-items: center;
  gap: 1rem 2.25rem;
}
:where(.page-scope) .calendar-header-layout .header-end {
  display: grid;
  grid-template-columns: auto fit-content(180px);
  align-items: center;
  gap: 1rem 2.25rem;
}
:where(.page-scope) .calendar-header-layout .nav-buttons {
  --circle_icon_size: 10px;
  display: flex;
  gap: 10px;
}
:where(.page-scope) .calendar-header-layout .calendar-legend {
  display: flex;
  gap: 10px 20px;
}
:where(.page-scope) .calendar-header-layout .calendar-legend-item {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 0 8px;
}
:where(.page-scope) .calendar-header-layout .calendar-legend-item .color-symbol {
  width: 9px;
  height: 9px;
  border-radius: 50%;
}
:where(.page-scope) .calendar-header-layout .calendar-legend-item .color-symbol.primary {
  background-color: var(--color_primary);
}
:where(.page-scope) .calendar-header-layout .calendar-legend-item .color-symbol.secondary {
  background-color: var(--color_secondary);
}
:where(.page-scope) .calendar-header-layout .calendar-year {
  font-size: 0.88em;
}
@container container (max-width: 65rem) {
  :where(.page-scope) .calendar-header-layout .header-start h2 {
    font-size: var(--fs_3xl);
  }
  :where(.page-scope) .calendar-header-layout .nav-buttons {
    --circle_size: clamp(32px, 5.2dvw, 50px);
    --circle_icon_size: clamp(8px, 1.3dvw, 16px);
  }
  :where(.page-scope) .calendar-header-layout .header-start, :where(.page-scope) .calendar-header-layout .header-end {
    gap: 14px;
  }
  :where(.page-scope) .calendar-header-layout .calendar-legend {
    column-gap: 12px;
  }
}
@media only screen and (max-width: 54rem) {
  :where(.page-scope) .calendar-header-layout .header-end {
    grid-template-columns: 1fr;
    row-gap: 6px;
  }
  :where(.page-scope) .calendar-header-layout .header-end .calendar-legend {
    order: 1;
    font-size: var(--fs_s);
  }
}
@media only screen and (max-width: 42.5rem) {
  :where(.page-scope) .calendar-header-layout {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .calendar-header-layout .header-start {
    order: 1;
  }
  :where(.page-scope) .calendar-header-layout .header-start h2 {
    font-size: max(var(--fs_3xl), 1.5rem);
  }
}
:where(.page-scope) .event-level-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  grid-template-rows: auto auto;
}
:where(.page-scope) .level-card-wrapper {
  display: contents;
  container-name: level-card;
  container-type: inline-size;
  --border_radius: 8px;
}
:where(.page-scope) .level-card-wrapper .level-card {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  height: 100%;
}
:where(.page-scope) .level-card-wrapper .card-start {
  display: grid;
  grid-row: 1;
  place-items: end center;
  padding-block: min(3rem, var(--spacer_m));
  padding-inline: 40px;
  text-align: center;
  background-color: var(--color_light);
  border-start-start-radius: var(--border_radius);
  border-start-end-radius: var(--border_radius);
}
:where(.page-scope) .level-card-wrapper .card-end {
  display: grid;
  grid-row: 2;
  padding-block: 1.875rem;
  padding-inline: 40px;
  border-inline: 1px solid var(--border_color);
  border-block-end: 1px solid var(--border_color);
  border-end-start-radius: var(--border_radius);
  border-end-end-radius: var(--border_radius);
}
:where(.page-scope) .level-card-wrapper .level-title {
  margin-block-end: 0.625rem;
}
:where(.page-scope) .level-card-wrapper .benefit-wrap {
  place-self: start;
}
:where(.page-scope) .level-card-wrapper .benefit-heading {
  margin-block-end: 0.625rem;
}
:where(.page-scope) .level-card-wrapper .benefit-list {
  margin-block-end: var(--spacer_xs);
}
:where(.page-scope) .level-card-wrapper .benefit-list li::before {
  content: url("../images/icons/circle-checkmark.svg");
  display: inline-block;
  margin-inline-end: 0.5rem;
  filter: invert(9%) sepia(45%) saturate(3685%) hue-rotate(210deg) brightness(94%) contrast(109%);
}
:where(.page-scope) .level-card-wrapper .button {
  place-self: end;
  width: 100%;
}
:where(.page-scope) #calendar {
  --calendar_cell_padding: 18px;
  overflow-x: auto;
}
@media only screen and (max-width: 48rem) {
  :where(.page-scope) #calendar {
    --calendar_cell_padding: 10px;
    margin-inline: calc(var(--page_gutter) / -1 + 10px);
  }
}
@media only screen and (max-width: 910px) {
  :where(.page-scope) #calendar {
    --calendar_cell_padding: 2px;
  }
}
:where(.page-scope) .fc {
  --fc-event-bg-color: var(--color_dark);
  --fc-bg-event-opacity: .15;
  --fc-event-text-color: #FFF;
  --fc-today-bg-color: #FFF;
  --fc-neutral-bg-color: var(--color_light);
}
:where(.page-scope) .fc table {
  border-top: none !important;
  border: none !important;
}
:where(.page-scope) .fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky > * {
  top: var(--header_height);
}
:where(.page-scope) .fc .fc-scrollgrid-section > td {
  border-right: none;
  border-bottom: none;
}
:where(.page-scope) .fc .fc-scrollgrid-section-liquid > td {
  border: none !important;
}
:where(.page-scope) .fc-theme-standard th {
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  font-family: var(--font_secondary);
  font-weight: normal;
  text-transform: lowercase;
  font-size: var(--fs_m);
  font-weight: var(--fw_semibold);
  line-height: 1.5;
  letter-spacing: 2px;
  text-transform: lowercase;
}
@media only screen and (max-width: 61.25rem) {
  :where(.page-scope) .fc-theme-standard th {
    font-size: var(--fs_s);
  }
}
:where(.page-scope) .fc .fc-col-header-cell-cushion {
  padding-block-end: 1rem;
}
@media only screen and (max-width: 61.25rem) {
  :where(.page-scope) .fc .fc-col-header-cell-cushion {
    padding-block-end: var(--spacer_xxs);
  }
}
:where(.page-scope) .fc-h-event {
  border: none;
  transition: 0.3s background-color ease;
  background-color: var(--color_dark) !important;
}
:where(.page-scope) .fc-h-event:not(:has(.important-date)):is(:hover, :focus) {
  background-color: #03287c;
}
:where(.page-scope) .fc-h-event .fc-event-main {
  padding: 6px var(--calendar_cell_padding);
  color: #FFF !important;
}
:where(.page-scope) .fc-bg-event .fc-event-custom {
  display: none;
}
:where(.page-scope) .fc .fc-daygrid-day-number {
  padding-top: var(--calendar_cell_padding);
  padding-left: var(--calendar_cell_padding);
}
@media only screen and (max-width: 48rem) {
  :where(.page-scope) .fc .fc-daygrid-day-number {
    font-size: var(--fs_s);
  }
}
:where(.page-scope) .fc-daygrid-dot-event {
  display: block;
  padding-inline: var(--calendar_cell_padding);
  padding-block: 6px;
}
:where(.page-scope) .fc-daygrid-dot-event:has(.important-date) {
  cursor: auto;
}
:where(.page-scope) .fc-daygrid-dot-event:has(.important-date):hover {
  background: transparent;
}
:where(.page-scope) .fc-event:not(:has(.important-date)) .fc-event-title {
  text-decoration-line: underline;
  font-weight: var(--fw_bold);
}
:where(.page-scope) .fc-event-time {
  margin-block-end: 0.25rem;
  letter-spacing: 0.13px;
  line-height: 1.5;
  font-weight: var(--fw_bold);
  font-size: var(--fs_xs);
}
:where(.page-scope) .fc-direction-ltr .fc-event-title {
  line-height: 1.3;
  font-weight: normal;
  font-size: var(--fs_m);
  letter-spacing: 0.33px;
}
:where(.page-scope) .fc-direction-ltr .fc-daygrid-event {
  white-space: normal;
}
:where(.page-scope) .fc-direction-ltr .fc-daygrid-event:has(.important-date) {
  cursor: auto;
}
@media only screen and (max-width: 70.625rem) {
  :where(.page-scope) .fc-direction-ltr .fc-daygrid-event {
    white-space: nowrap;
  }
}
:where(.page-scope) .fc .fc-day-disabled {
  background-color: var(--color_light);
}
:where(.page-scope) .fc .fc-daygrid-day-top {
  flex-direction: row;
}
:where(.page-scope) .fc .fc-daygrid-day-frame {
  display: flex;
  flex-direction: column;
  min-height: max(100%, 214px);
}
@media only screen and (max-width: 48rem) {
  :where(.page-scope) .fc .fc-daygrid-day-frame {
    min-height: auto;
  }
}
:where(.page-scope) .fc-daygrid-event-harness:not(.fc-daygrid-event-harness-abs) .fc-h-event .fc-event-main {
  color: var(--color_text);
}
:where(.page-scope) .fc-daygrid-event-harness:not(.fc-daygrid-event-harness-abs) .fc-event {
  background-color: transparent;
}
:where(.page-scope) .fc-daygrid-event-harness:is(.fc-daygrid-event-harness-abs) .fc-daygrid-event.fc-event-start {
  margin-left: var(--calendar_cell_padding);
}
:where(.page-scope) .fc-daygrid-event-harness:is(.fc-daygrid-event-harness-abs) .fc-daygrid-event.fc-event-end {
  margin-right: var(--calendar_cell_padding);
}
:where(.page-scope) .fc .fc-list-table td {
  padding-block: 1rem;
}
:where(.page-scope) .fc .fc-list-day-cushion {
  padding-block: 0.5rem;
}
:where(.page-scope) .fc .fc-list-event-time {
  text-transform: capitalize;
}
:where(.page-scope) .event-popover {
  z-index: 2;
  max-width: 440px;
  background-color: #FFF;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  border-radius: var(--border_radius);
  pointer-events: none;
}
:where(.page-scope) .event-popover .event-popover-layout {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 20px;
  padding: 20px;
}
:where(.page-scope) .event-popover .event-popover-layout h2 {
  margin: 0;
}
:where(.page-scope) .event-popover .event-popover-layout .date-block {
  color: var(--color_text);
}
:where(.page-scope) .event-popover .event-popover-layout .popover-date {
  color: var(--color_dark_grey);
  font-size: var(--fs_s);
  letter-spacing: 0.23px;
}
:where(.page-scope) .event-popover .event-popover-image img {
  display: block;
}
:where(.page-scope) .event-popover .formatted-date {
  font-weight: 800;
}
:where(.page-scope) .no-events-wrapper {
  container-type: inline-size;
  container-name: no-events;
}
:where(.page-scope) .no-events-wrapper h3 {
  margin-block-end: var(--spacer_xxs);
}
:where(.page-scope) .no-events-wrapper .inner {
  padding-block: var(--spacer_s);
  padding-inline: clamp(20px, 5cqi, 80px);
  background-color: var(--color_light);
  border-radius: var(--border_radius);
}
:where(.page-scope) .lucy-staff {
  display: grid;
  gap: 20px;
}
:where(.page-scope) .staff-wrapper {
  display: grid;
  grid-template-columns: fit-content(150px) auto minmax(0, 240px);
  align-items: center;
  padding-block: 1.25rem;
  padding-inline: 20px;
  gap: var(--spacer_xxs) clamp(20px, 0.5rem + 2.5cqi, 40px);
  background-color: var(--color_light);
  border-radius: var(--border_radius);
}
:where(.page-scope) .staff-wrapper h3, :where(.page-scope) .staff-wrapper p {
  margin: 0;
}
:where(.page-scope) .staff-wrapper a {
  color: var(--color_primary);
  text-decoration-line: underline;
}
:where(.page-scope) .staff-wrapper a:hover {
  text-decoration: none;
}
:where(.page-scope) .staff-wrapper img {
  border-radius: var(--border_radius);
}
:where(.page-scope) .staff-wrapper:not(:has(.staff-image)) {
  grid-template-columns: 1fr auto;
}
:where(.page-scope) .staff-wrapper .contact {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
:where(.page-scope) .staff-wrapper .contact p {
  display: grid;
  grid-template-columns: 13px 1fr;
  align-items: center;
  gap: 10px;
  font-weight: var(--fw_medium);
}
:where(.page-scope) .staff-wrapper .contact p a {
  overflow: hidden;
  text-overflow: ellipsis;
}
:where(.page-scope) .staff-wrapper .contact svg {
  color: var(--color_primary);
}
@container main-content (max-width: 660px) {
  :where(.page-scope) .staff-wrapper {
    grid-template-columns: fit-content(150px) auto;
  }
  :where(.page-scope) .staff-wrapper img {
    grid-row: span 2;
  }
}
@container main-content (max-width: 400px) {
  :where(.page-scope) .staff-wrapper {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .staff-wrapper img {
    width: 100%;
    grid-row: auto;
  }
}
:where(.page-scope) .directory-listing {
  display: grid;
  gap: 10px;
  margin-block: 2.5rem;
}
:where(.page-scope) #directory-form {
  --icons_right_size: 3rem;
}
:where(.page-scope) #directory-form .control svg {
  width: 1rem;
}
:where(.page-scope) .staff-detail-header {
  margin-block-end: var(--spacer_s);
}
:where(.page-scope) .staff-aside {
  display: grid;
  place-content: center;
  background-color: #FFF;
  border-radius: var(--border_radius);
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.05);
}
:where(.page-scope) .lucy-pages-toc {
  margin-bottom: var(--content_space);
  container-type: inline-size;
  container-name: lucy-pages;
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper {
  border-inline-start: 2px solid var(--color_primary);
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper h2 {
  margin-block-start: -0.25em;
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper h3, :where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper svg {
  transition: translate 0.3s ease, color 0.3s ease;
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper a:is(:hover, :focus-visible) h3 {
  color: var(--color_primary);
  translate: 10px 0;
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper a:is(:hover, :focus-visible) svg {
  color: var(--color_primary);
  translate: -20px 0;
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper .inner {
  padding-block: var(--spacer_s);
  padding-inline-start: 55px;
  padding-inline-start: clamp(20px, 5.7cqi, 55px);
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper .title {
  display: grid;
  grid-template-columns: 1fr clamp(10px, 1.5rem + 2dvw, 40px);
  align-items: center;
  padding-inline: clamp(10px, 4cqi, 22px);
  gap: 24px;
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper .content {
  padding-block: var(--spacer_xs);
  border-block-end: 1px solid var(--color_border);
}
:where(.page-scope) .lucy-pages-toc .pages-plugin-wrapper .page:first-of-type .content {
  border-block-start: 1px solid var(--color_border);
}
:where(.page-scope) .lucy-faqs {
  display: grid;
  gap: 10px;
  margin-bottom: var(--content_space);
  container-type: inline-size;
  container-name: lucy-faqs;
}
:where(.page-scope) .faq {
  padding-block: 1rem;
  padding-inline: clamp(20px, 0.5rem + 2.5cqi, 30px);
  background-color: var(--color_light);
  border-radius: var(--border_radius);
}
:where(.page-scope) .faq .top {
  display: grid;
  grid-template-columns: 35px 1fr;
  align-items: center;
  gap: 20px;
  cursor: pointer;
}
:where(.page-scope) .faq .top button {
  display: grid;
  place-content: center;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: var(--color_primary);
  transition: background-color 0.3s ease;
}
:where(.page-scope) .faq .top button svg {
  rotate: -45deg;
  color: #FFF;
  transition: rotate 0.3s ease;
}
:where(.page-scope) .faq .top .title {
  font-weight: var(--fw_medium);
}
:where(.page-scope) .faq .top > * {
  margin-bottom: 0;
}
:where(.page-scope) .faq .answer {
  height: 0;
  transition: height 0.3s ease, background-color 0.3s ease;
  overflow: hidden;
}
:where(.page-scope) .faq .answer .text p {
  margin-bottom: 0.5rem;
}
:where(.page-scope) .faq .answer .text :first-child {
  margin-top: 0.75rem;
}
:where(.page-scope) .faq .answer .text :last-child {
  margin-bottom: 0;
}
:where(.page-scope) .faq.open .title {
  font-weight: var(--fw_bold);
}
:where(.page-scope) .faq.open .top button {
  background-color: var(--color_yellow);
}
:where(.page-scope) .faq.open .top button svg {
  rotate: 0deg;
}
:where(.page-scope) .faq.open .answer {
  height: auto;
}
@container lucy-callout (max-width: 300px) {}
@container lucy-callout (max-width: 700px) {}
@container lucy-callout (max-width: 1000px) {}
@container lucy-callout (min-width: 1000px) {}
:where(.page-scope) .lucy-facts {
  margin-block-end: var(--content_space);
  container-type: inline-size;
  container-name: lucy-facts;
}
:where(.page-scope) .lucy-facts .fact-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@container main-content (max-width: 43.75rem) {
  :where(.page-scope) .lucy-facts .fact-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  :where(.page-scope) .lucy-facts .fact-grid:has(:last-child:nth-child(odd)) .fact:first-child {
    grid-column: 1/-1;
  }
}
@container main-content (max-width: 35rem) {
  :where(.page-scope) .lucy-facts .fact-grid {
    grid-template-columns: 1fr;
  }
}
:where(.page-scope) .lucy-facts .fact-grid .fact {
  display: grid;
  place-content: center;
  padding-block: var(--spacer_s);
  padding-inline: 32px;
  padding-inline: clamp(20px, 5cqi, 32px);
  text-align: center;
  color: var(--color_blue);
  border-radius: var(--border_radius);
  transition: all 0.3s ease;
  background-color: var(--color_light);
}
:where(.page-scope) .lucy-facts .fact-grid .fact p {
  margin: 0;
}
:where(.page-scope) .lucy-facts .fact-grid .fact .fact-label {
  font-size: 4rem;
  font-weight: 100;
}
@media only screen and (max-width: 57.5rem) {
  :where(.page-scope) .lucy-facts .fact-grid .fact .fact-label {
    font-size: 3.375rem;
  }
}
:where(.page-scope) .lucy-facts .fact-grid .fact .fact-value {
  font-weight: 600;
}
@container lucy-callout (max-width: 300px) {}
@container lucy-callout (max-width: 700px) {}
@container lucy-callout (max-width: 1000px) {}
@container lucy-callout (min-width: 1000px) {}
@layer lucy-utilities {
  :where(.page-scope) .lucy-resources {
    margin-bottom: var(--content_space);
    container-type: inline-size;
    container-name: lucy-resources;
  }
  :where(.page-scope) .lucy-resources .resource {
    --resource_icon_width: 1.75rem;
    position: relative;
    margin-bottom: var(--spacer_xxs);
    padding-block: 1.25rem;
    padding-inline: 20px 30px;
    background-color: var(--color_light);
    border-radius: var(--border_radius);
    transition: background-color 0.3s ease;
  }
  @container lucy-resources (max-width: 400px) {
    :where(.page-scope) .lucy-resources .resource {
      padding-inline: 20px;
    }
  }
  :where(.page-scope) .lucy-resources .resource:has(a:hover), :where(.page-scope) .lucy-resources .resource:focus-within {
    background-color: #EAEAEA;
  }
  :where(.page-scope) .lucy-resources .resource:has(a:hover) .title, :where(.page-scope) .lucy-resources .resource:focus-within .title {
    font-weight: var(--fw_bold);
  }
  :where(.page-scope) .lucy-resources .resource:has(a:hover) a, :where(.page-scope) .lucy-resources .resource:focus-within a {
    text-decoration-line: underline;
  }
  :where(.page-scope) .lucy-resources .resource .title {
    font-weight: var(--fw_medium);
    line-height: 1.5;
  }
  :where(.page-scope) .lucy-resources .resource:last-of-type {
    margin-bottom: 0;
  }
  :where(.page-scope) .lucy-resources .resource .top {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 18px;
  }
  :where(.page-scope) .lucy-resources .resource .top .media-type {
    display: grid;
    place-content: center;
  }
  :where(.page-scope) .lucy-resources .resource .top .media-type svg {
    width: 22px;
    color: var(--color_secondary);
  }
  :where(.page-scope) .lucy-resources .resource .top .info {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  :where(.page-scope) .lucy-resources .resource .top .info > * {
    margin-bottom: 0;
  }
  :where(.page-scope) .lucy-resources .resource .top .buttons {
    display: flex;
    align-items: center;
    gap: var(--spacer_xxs);
  }
  :where(.page-scope) .lucy-resources .resource .top .buttons > * {
    margin-bottom: 0;
  }
  :where(.page-scope) .lucy-resources .resource .top .resource-link {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    gap: 8px;
    color: var(--color_primary);
    letter-spacing: 0.33px;
    font-size: var(--fs_m);
    font-weight: 800;
  }
  :where(.page-scope) .lucy-resources .resource .top .resource-link svg {
    width: 16px;
  }
  @container lucy-resources (max-width: 400px) {
    :where(.page-scope) .lucy-resources .resource .top {
      gap: 12px;
    }
  }
  :where(.page-scope) .lucy-resources .resource .desc {
    display: none;
  }
  :where(.page-scope) .lucy-resources .resource .desc .text {
    margin-top: var(--spacer_xxs);
    padding-left: calc(var(--resource_icon_width) + var(--grid_gutter));
  }
  :where(.page-scope) .lucy-resources .resource .desc .text :last-child {
    margin-bottom: 0 !important;
  }
}
:where(.page-scope) .lucy-callout {
  --callout_space: clamp(20px, 3dvw, 40px);
  container-type: inline-size;
  container-name: lucy-callout;
  display: block;
  margin-bottom: var(--content_space);
  border-radius: var(--border_radius);
  background-color: var(--color_secondary);
  text-decoration: none;
  overflow: hidden;
}
:where(.page-scope) .lucy-callout p {
  margin-block-start: 0.85rem;
}
:where(.page-scope) .lucy-callout .callout-wrapper {
  display: grid;
  grid-template-columns: 1fr;
}
:where(.page-scope) .lucy-callout .callout-wrapper:has(.callout-image) {
  grid-template-columns: clamp(100px, 36cqi, 254px) 1fr;
}
@container lucy-callout (max-width: 33.5rem) {
  :where(.page-scope) .lucy-callout .callout-wrapper:has(.callout-image) {
    grid-template-columns: 1fr;
  }
}
:where(.page-scope) .lucy-callout .callout-wrapper .callout-image {
  position: relative;
}
:where(.page-scope) .lucy-callout .callout-wrapper .callout-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@container lucy-callout (max-width: 33.5rem) {
  :where(.page-scope) .lucy-callout .callout-wrapper .callout-image img {
    position: static;
  }
}
:where(.page-scope) .lucy-callout .callout-wrapper .callout-content {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: var(--spacer_xs) clamp(10px, 3cqi, 40px);
  padding-block: var(--spacer_s);
  padding-inline: var(--callout_space);
}
:where(.page-scope) .lucy-callout .callout-wrapper .callout-content .button {
  margin: 0;
}
@container lucy-callout (max-width: 760px) {
  :where(.page-scope) .lucy-callout .callout-wrapper .callout-content {
    grid-template-columns: 1fr;
  }
}
:where(.page-scope) .sidebar-callout-wrapper {
  container-name: sidebar-callout;
  container-type: inline-size;
  max-width: 290px;
}
:where(.page-scope) .sidebar-callout-wrapper:not(:first-child) {
  margin-block-start: 3.125rem;
}
@media only screen and (max-width: 81.25rem) {
  :where(.page-scope) .sidebar-callout-wrapper:not(:first-child) {
    margin-block-start: var(--spacer_s);
  }
}
:where(.page-scope) .sidebar-callout-wrapper .sidebar-callout {
  display: block;
  background-color: var(--color_yellow);
  text-align: center;
  border-radius: var(--border_radius);
  overflow: hidden;
}
:where(.page-scope) .sidebar-callout-wrapper .callout-content {
  padding-block: 28px;
  padding-inline: 28px;
}
:where(.page-scope) .sidebar-callout-wrapper .callout-title {
  margin-block-end: 0.625rem;
}
:where(.page-scope) .sidebar-callout-wrapper .callout-body {
  margin-block-end: 1rem;
}
:where(.page-scope) .sidebar-callout-wrapper .callout-image img {
  width: 100%;
}
:where(.page-scope) .sidebar-callout-wrapper .button {
  width: 100%;
}
:where(.page-scope) .sidebar-callout-wrapper .callout-links {
  display: grid;
  gap: 10px;
  margin-block-start: 1rem;
}
@media only screen and (max-width: 57.5rem) {
  :where(.page-scope) .sidebar-callout-wrapper {
    display: none;
  }
}
:where(.page-scope) .lucy-embed {
  margin-bottom: var(--content_space);
  max-width: 100%;
}
:where(.page-scope) .lucy-embed iframe {
  max-width: 100%;
}
:where(.page-scope) .lucy-embed p.message {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  padding: var(--spacer_m);
  background-color: var(--color_light);
  border-radius: var(--border_radius);
  text-align: center;
}
:where(.page-scope) .lucy-slideshow {
  margin-bottom: var(--content_space);
  container-type: inline-size;
  container-name: lucy-slideshow;
}
:where(.page-scope) .lucy-slideshow .images {
  overflow: hidden;
  position: relative;
  aspect-ratio: 16/9;
}
:where(.page-scope) .lucy-slideshow .images .slider {
  display: flex;
  align-items: center;
  height: 100%;
  transition: transform 0.5s ease;
}
:where(.page-scope) .lucy-slideshow .images .slider img {
  display: block;
  position: relative;
  max-width: 100%;
  max-height: 100%;
  margin-bottom: 0 !important;
}
:where(.page-scope) .lucy-slideshow .images .slider .image {
  margin-right: var(--grid_gutter);
  opacity: 0.5;
  transition: opacity 0.3s ease;
  border-radius: var(--border_radius);
}
:where(.page-scope) .lucy-slideshow .images .slider .image.active {
  opacity: 1;
}
:where(.page-scope) .lucy-slideshow .images .slider .video {
  align-self: normal;
  aspect-ratio: 16/9;
}
:where(.page-scope) .lucy-slideshow .images .slider :last-child {
  margin-right: 0;
}
:where(.page-scope) .lucy-slideshow nav {
  display: flex;
  gap: var(--spacer_xs);
  width: 100%;
  align-items: flex-start;
  margin-top: var(--grid_gutter);
  user-select: none;
}
:where(.page-scope) .lucy-slideshow nav p.caption {
  align-self: center;
  margin-bottom: 0;
}
:where(.page-scope) .lucy-slideshow nav .controls {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: var(--spacer_xxs);
}
:where(.page-scope) .lucy-slideshow nav .controls a:any-link {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  align-items: center;
  width: 2.222rem;
  height: 2.222rem;
  cursor: pointer;
  border-radius: var(--border_radius);
  background-color: var(--color_primary);
  transition: background-color 0.3s ease, scale 0.3s ease;
}
:where(.page-scope) .lucy-slideshow nav .controls a:any-link svg {
  width: 50%;
}
:where(.page-scope) .lucy-slideshow nav .controls a:any-link svg path {
  transition: fill 0.3s ease;
}
@media (pointer: fine) {
  :where(.page-scope) .lucy-slideshow nav .controls a:any-link:hover, :where(.page-scope) .lucy-slideshow nav .controls a:any-link:focus-visible {
    background-color: var(--color_dark);
  }
  :where(.page-scope) .lucy-slideshow nav .controls a:any-link:hover svg path, :where(.page-scope) .lucy-slideshow nav .controls a:any-link:focus-visible svg path {
    fill: #FFF;
  }
}
:where(.page-scope) .lucy-slideshow nav .controls .previous {
  margin-left: auto;
}
:where(.page-scope) .lucy-slideshow nav .controls .count {
  display: none;
}
@container lucy-slideshow (max-width: 1000px) {}
@container lucy-slideshow (min-width: 1000px) {}
:where(.page-scope) .decorative-line {
  --color: #FFF;
  width: 1px;
  height: 50px;
  height: clamp(35px, 10cqi, 50px);
  margin-block-end: calc(var(--spacer_xs) + 5px);
  margin-inline: auto;
  background-color: var(--color);
}
:where(.page-scope) :where([data-template=_home] main) {
  --home_section_block_padding: var(--spacer_xl);
}
@media only screen and (max-width: 525px) {
  :where(.page-scope) :where([data-template=_home] main) {
    --home_section_block_padding: 3.125rem;
  }
}
:where(.page-scope) :where([data-template=_home] main) .text-wrapper {
  --max_width: 1300px;
  max-width: var(--max_width);
  margin-inline: auto;
  text-align: center;
  text-wrap: balance;
}
:where(.page-scope) :where([data-template=_home] main) .text-wrapper h2, :where(.page-scope) :where([data-template=_home] main) .text-wrapper .text-wrapper-heading-small {
  margin-block-end: calc(var(--spacer_xs));
}
:where(.page-scope) :where([data-template=_home] main) .text-wrapper p, :where(.page-scope) :where([data-template=_home] main) .text-wrapper .text-wrapper-heading-large {
  margin-block-end: 1.875rem;
}
:where(.page-scope) :where([data-template=_home] main) .text-wrapper p.display-4xl, :where(.page-scope) :where([data-template=_home] main) .text-wrapper .text-wrapper-heading-large.display-4xl {
  margin-block-end: 0.62em;
}
@media only screen and (max-width: 525px) {
  :where(.page-scope) :where([data-template=_home] main) .text-wrapper p.mobile-smaller, :where(.page-scope) :where([data-template=_home] main) .text-wrapper .text-wrapper-heading-large.mobile-smaller {
    font-size: 1.375rem;
  }
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas {
  --col_size: minmax(323px, 1fr);
  display: grid;
  grid-template-columns: repeat(auto-fit, var(--col_size) var(--col_size));
  gap: 20px;
}
@container container (max-width: 666px) {
  :where(.page-scope) :where([data-template=_home] main) .home-ctas {
    grid-template-columns: 1fr;
  }
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas a:hover svg, :where(.page-scope) :where([data-template=_home] main) .home-ctas a:focus-visible svg {
  height: auto;
  opacity: 1;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas a:hover .inner-content, :where(.page-scope) :where([data-template=_home] main) .home-ctas a:focus-visible .inner-content {
  grid-template-rows: 1fr calc(18px + min(0.8rem, 2cqi));
  translate: 0 8.5px;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas a:hover img, :where(.page-scope) :where([data-template=_home] main) .home-ctas a:focus-visible img {
  scale: 1.05;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta-container {
  container-name: home-cta;
  container-type: inline-size;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta {
  container-name: home-cta;
  container-type: inline-size;
  position: relative;
  display: grid;
  place-items: end center;
  padding-block: 5rem var(--spacer_s);
  min-height: 400px;
  text-align: center;
  color: #FFF;
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 26%, rgba(0, 0, 0, 0.5) 78%);
  border-radius: var(--border_radius);
  overflow: hidden;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta .inner-content {
  display: grid;
  grid-template-rows: 1fr 0px;
  place-items: center;
  transition: all 0.3s ease;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta .inner-content h3 {
  font-size: 1.375rem;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta .inner-content .svg-wrap {
  margin-block-start: 0.8rem;
  height: 100%;
}
@container home-cta (min-width: 400px) {
  :where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta .inner-content h3 {
    font-size: 1.75rem;
  }
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta img {
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color_dark);
  object-fit: cover;
  object-position: center;
  transition: all 0.3s ease;
}
:where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta svg {
  width: 40px;
  margin-inline: auto;
  opacity: 0;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 450px) {
  :where(.page-scope) :where([data-template=_home] main) .home-ctas .home-cta {
    min-height: 232px;
  }
}
:where(.page-scope) .home-landing {
  --home_hero_block_padding: var(--spacer_m);
  --home_hero_ctas_shift: 60px;
  color: #FFF;
  text-align: center;
}
@media (max-aspect-ratio: 1/1) {
  :where(.page-scope) .home-landing {
    --home_hero_block_padding: var(--spacer_xl);
  }
}
@media only screen and (max-width: 525px) {
  :where(.page-scope) .home-landing {
    --home_hero_ctas_shift: 0px;
  }
}
:where(.page-scope) .home-landing .home-landing-hero {
  display: grid;
  align-content: center;
  min-height: calc(var(--header_height) + min(42.6vw, 100dvh));
  padding-block: calc(var(--header_height) + var(--home_hero_block_padding)) calc(var(--home_hero_block_padding) + var(--home_hero_ctas_shift));
  background-image: linear-gradient(rgba(20, 20, 20, 0.5), rgba(20, 20, 20, 0.5)), url("/images/home-landing.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: var(--color_dark);
}
:where(.page-scope) .home-landing .home-landing-hero .landing-text-wrap {
  --max_width: 660px;
}
:where(.page-scope) .home-landing .ctas-outer {
  --inline_padding_preferred: 7cqi;
  --shift: calc(var(--home_hero_ctas_shift) * -1);
  margin-block-end: var(--shift);
  padding-block: max(3.125rem, var(--spacer_m));
  padding-inline: clamp(20px, var(--inline_padding_preferred), 100px);
  border-radius: var(--border_radius);
  background-color: var(--color_primary);
  translate: 0 var(--shift);
}
@container container (max-width: 71.25rem) {
  :where(.page-scope) .home-landing .ctas-outer {
    --inline_padding_preferred: 3cqi;
  }
}
@media only screen and (max-width: 525px) {
  :where(.page-scope) .home-landing .ctas-outer {
    padding-inline: var(--page_gutter);
    border-radius: 0;
  }
}
:where(.page-scope) .home-landing .ctas-layout {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  justify-content: space-between;
  gap: 3.125rem 30px;
}
:where(.page-scope) .home-landing .ctas-layout .graphic-cta {
  max-width: 350px;
  margin-inline: auto;
}
@container container (max-width: 53.75rem) {
  :where(.page-scope) .home-landing .ctas-layout {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .home-landing .ctas-layout .graphic-cta .cta-title {
    font-family: var(--font_secondary);
    font-weight: normal;
    text-transform: lowercase;
    font-size: var(--fs_2xl);
    line-height: 1.214;
    letter-spacing: 0px;
  }
  :where(.page-scope) .home-landing .ctas-layout .graphic-cta .cta-desc {
    font-family: var(--font_primary);
    font-size: var(--fs_m);
    text-transform: none;
    line-height: 1.75;
    letter-spacing: 0.33px;
  }
}
:where(.page-scope) .home-about {
  padding-block: var(--home_section_block_padding) calc(var(--home_section_block_padding) + var(--spacer_l));
}
:where(.page-scope) .home-about .about-text-wrap {
  margin-block-end: var(--spacer_m);
}
:where(.page-scope) .home-about .decorative-line {
  --color: rgba(0, 23, 75, 0.3);
}
@media only screen and (max-width: 59.125rem) {
  :where(.page-scope) .home-about {
    padding-block: var(--home_section_block_padding);
  }
}
:where(.page-scope) .home-academics {
  --shift: -30px;
  background-color: var(--color_secondary);
}
:where(.page-scope) .home-academics .academics-text-wrap {
  align-self: center;
  padding-block: var(--spacer_m);
  max-width: 500px;
}
:where(.page-scope) .home-academics .inner-layout {
  display: grid;
  grid-template-columns: 500px minmax(0, 730px);
  grid-template-columns: minmax(350px, 500px) minmax(400px, 730px);
  justify-content: end;
  gap: 0 clamp(20px, 7dvw, 136px);
}
:where(.page-scope) .home-academics img {
  margin-top: -60px;
  border-radius: var(--border_radius);
}
:where(.page-scope) .home-academics .img-wrap {
  transform: translateY(var(--shift));
}
@media only screen and (max-width: 59.125rem) {
  :where(.page-scope) .home-academics .inner-layout {
    grid-template-columns: 1fr;
    justify-content: center;
    text-align: center;
  }
  :where(.page-scope) .home-academics .img-wrap {
    max-width: 720px;
    margin-inline: auto;
    margin-block-end: calc(var(--spacer_xl) * -1);
    transform: translateY(0) !important;
  }
  :where(.page-scope) .home-academics img {
    margin-block-start: 0;
  }
}
:where(.page-scope) .home-catholic {
  --shift: -30px;
  padding-block: var(--home_section_block_padding);
}
:where(.page-scope) .home-catholic .decorative-line {
  --color: #AAA;
}
:where(.page-scope) .home-catholic .catholic-text-wrap {
  align-self: center;
  max-width: 610px;
}
:where(.page-scope) .home-catholic .inner-layout {
  display: grid;
  grid-template-columns: minmax(204px, 610px) minmax(200px, 600px);
  justify-content: start;
  gap: var(--spacer_m) clamp(20px, 7dvw, 136px);
}
:where(.page-scope) .home-catholic img {
  border-radius: var(--border_radius);
}
:where(.page-scope) .home-catholic .img-wrap {
  transform: translateY(var(--shift));
}
@media only screen and (max-width: 59.125rem) {
  :where(.page-scope) .home-catholic {
    --shift: 0;
  }
  :where(.page-scope) .home-catholic .inner-layout {
    grid-template-columns: 1fr;
    margin-block-start: var(--spacer_xl);
  }
  :where(.page-scope) .home-catholic .img-wrap {
    max-width: 720px;
    margin-inline: auto;
    order: 1;
    transform: none !important;
  }
}
:where(.page-scope) .home-student-section {
  padding-top: 3.25rem;
  color: #FFF;
  background-image: url("/images/home/student-life.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--color_dark);
}
:where(.page-scope) .home-student-section .text-wrap-container {
  padding-block: clamp(3.25rem, 9.6cqi, 8.125rem) clamp(3.25rem, 11cqi, 9.375rem);
  padding-inline: 30px;
  background-color: var(--color_primary);
  border-radius: var(--border_radius);
  transform: translateY(-60px);
}
:where(.page-scope) .home-student-section .student-text-wrap {
  align-self: center;
  max-width: 550px;
}
:where(.page-scope) .home-student-section .inner-layout {
  display: grid;
  grid-template-columns: minmax(160px, 610px) minmax(0, 600px);
  justify-content: center;
  gap: 0;
  transform: translateY(60px);
}
@media only screen and (max-width: 53.75rem) {
  :where(.page-scope) .home-student-section {
    --mobile_shift: 260px;
    margin-block-end: var(--mobile_shift);
    padding-top: var(--mobile_shift);
    background-position: 67% center;
  }
  :where(.page-scope) .home-student-section .inner-layout {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .home-student-section .text-wrap-container {
    transform: translateY(var(--mobile_shift)) !important;
  }
}
:where(.page-scope) .home-activities {
  margin-block-end: var(--home_section_block_padding);
  padding-block: calc(var(--home_section_block_padding) + var(--spacer_m)) 0;
}
:where(.page-scope) .home-activities .decorative-line {
  --color: rgba(0, 23, 75, 0.3);
}
:where(.page-scope) .home-activities .activities-text-wrap {
  margin-block-end: var(--spacer_m);
}
:where(.page-scope) .home-calendar {
  margin-block-end: var(--home_section_block_padding);
}
:where(.page-scope) .home-calendar h2 {
  margin-block-end: 1rem;
}
:where(.page-scope) .home-calendar .decorative-line {
  --color: rgba(0, 23, 75, 0.3);
}
:where(.page-scope) .home-calendar .event-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(325px, 1fr));
  gap: 20px;
}
:where(.page-scope) .home-stories {
  padding-block-end: var(--home_section_block_padding);
}
:where(.page-scope) .home-stories h2 {
  margin-block-end: 1rem;
}
:where(.page-scope) .home-stories .decorative-line {
  --color: rgba(0, 23, 75, 0.3);
}
:where(.page-scope) .home-stories .stories-text-wrap {
  margin-block-end: var(--spacer_s);
}
:where(.page-scope) .home-stories .story-layout {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  justify-content: space-between;
  gap: clamp(20px, 3.438dvw, 66px);
}
@container container (max-width: 45.375rem) {
  :where(.page-scope) .home-stories .story-layout {
    grid-template-columns: 1fr;
  }
  :where(.page-scope) .home-stories .story-layout .story-container {
    padding-block: 0;
  }
  :where(.page-scope) .home-stories .story-layout .story-container:nth-child(n+3), :where(.page-scope) .home-stories .story-layout .separator {
    display: none;
  }
}
:where(.page-scope) .home-stories .separator {
  height: 100%;
  background-color: rgba(0, 23, 75, 0.3);
}
:where(.page-scope) .home-stories .story-container {
  padding-block: var(--spacer_m);
  text-align: center;
}
:where(.page-scope) .home-stories .story-container:hover .story-heading, :where(.page-scope) .home-stories .story-container:focus-visible .story-heading {
  text-decoration-color: currentColor;
}
:where(.page-scope) .home-stories .story-container:hover .img-wrap img, :where(.page-scope) .home-stories .story-container:focus-visible .img-wrap img {
  scale: 1.05;
}
:where(.page-scope) .home-stories .story-container .img-wrap {
  border-radius: var(--border_radius);
  margin-block-end: var(--spacer_s);
  overflow: hidden;
}
:where(.page-scope) .home-stories .story-container img {
  transition: scale 0.3s ease;
}
:where(.page-scope) .home-stories .story-date {
  margin-block-end: var(--spacer_xs);
  font-weight: var(--fw_medium);
}
:where(.page-scope) .home-stories .story-heading {
  margin-block-end: var(--spacer_xs);
  text-decoration-line: underline;
  text-decoration-color: transparent;
  transition: text-decoration 0.3s ease;
}
:where(.page-scope) .timeline-block {
  display: grid;
  gap: 48px;
  grid-template-columns: clamp(4rem, 10dvw, 8.4375rem) 1fr;
}
:where(.page-scope) .timeline-block:last-of-type h2::after {
  margin-block-end: 0.45rem;
}
:where(.page-scope) .timeline-block:last-of-type .timeline-content:last-child {
  margin-block-end: 0;
}
:where(.page-scope) .timeline-block h2 {
  display: grid;
  grid-template-rows: auto 1fr;
  text-align: center;
  grid-row: 1;
}
:where(.page-scope) .timeline-block h2::after {
  content: "";
  display: block;
  width: 1px;
  height: auto;
  min-height: 22px;
  margin-block: 0.3rem 0.7rem;
  margin-inline: auto;
  background-color: var(--color_border);
}
:where(.page-scope) .timeline-block p {
  max-width: 80ch;
}
:where(.page-scope) .timeline-block img {
  display: block;
  margin-block-end: var(--spacer_xs);
  border-radius: var(--border_radius);
}
:where(.page-scope) .timeline-block .timeline-title {
  margin-block: 0.4em var(--spacer_xs);
}
@media only screen and (max-width: 26.25rem) {
  :where(.page-scope) .timeline-block .timeline-title {
    margin-block-start: 0.05em;
  }
}
:where(.page-scope) .timeline-block .timeline-content {
  grid-column: 2;
  margin-block-end: var(--spacer_s);
  max-width: 730px;
}
@media only screen and (max-width: 31.25rem) {
  :where(.page-scope) .timeline-block {
    gap: 24px;
  }
}
@media only screen and (max-width: 26.25rem) {
  :where(.page-scope) .timeline-block {
    gap: 16px;
  }
  :where(.page-scope) .timeline-block h2 {
    font-size: 22px;
  }
}
:where(.page-scope) .job-category-wrap {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  margin-block-end: 0.5rem;
}
:where(.page-scope) .job-category-wrap svg {
  width: 14px;
}
:where(.page-scope) .job-article-container {
  container-name: job-article;
  container-type: inline-size;
}
:where(.page-scope) .job-article-container .job-article {
  padding-block: var(--spacer_s) min(var(--spacer_m), 3.125rem);
}
:where(.page-scope) .job-article-container .job-title {
  margin-block-end: 1rem;
}
:where(.page-scope) .job-article-container .job-preview {
  margin-block: 1rem 1.6rem;
}
:where(.page-scope) .jobs-listing-wrapper .job-article-container:first-of-type .job-article {
  border-block-start: 1px solid var(--color_border);
}
:where(.page-scope) .jobs-listing-wrapper .job-article {
  border-block-end: 1px solid var(--color_border);
}
:where(.page-scope) .job-detail-header {
  margin-block-end: var(--spacer_m);
}
:where(.page-scope) .job-detail-header .job-category-wrap {
  margin-block-start: 0.5rem;
}
:where(.page-scope) .job-form-wrapper {
  margin-block-start: var(--spacer_m);
}
:where(.page-scope) .job-form-wrapper .files-section {
  padding-block: var(--grid_gutter_row);
  border-block: 1px solid var(--color_border);
  max-width: 100cqi;
}
:where(.page-scope) .message-wrapper {
  margin-block: var(--spacer_s);
  padding: 30px;
  background-color: var(--color_light);
}
:where(.page-scope) .message-wrapper:has(.success) {
  background-color: color-mix(in oklab, var(--color_light) 97%, var(--color_success));
}
:where(.page-scope) .message-wrapper:has(.error) {
  background-color: color-mix(in oklab, var(--color_light) 97%, var(--color_error));
}
:where(.page-scope) .message-wrapper .message {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: center;
  border-radius: var(--border_radius);
}
:where(.page-scope) .message-wrapper .message.success svg {
  color: var(--color_success);
}
:where(.page-scope) .message-wrapper .message.error svg {
  color: var(--color_error);
}
:where(.page-scope) .message-wrapper .message svg {
  width: 26px;
}
:where(.page-scope) .message-wrapper .message .message-text {
  line-height: 1.5;
  color: var(--color_text);
  font-weight: var(--fw_medium);
  max-width: 80ch;
  text-wrap: balance;
}
:where(.page-scope) .story-link:is(:hover, :focus-visible, :focus-within) {
  text-decoration: none;
}
:where(.page-scope) .story-link:is(:hover, :focus-visible, :focus-within) .story-heading {
  text-decoration-color: currentColor;
}
:where(.page-scope) .story-link:is(:hover, :focus-visible, :focus-within) .img-wrapper img {
  scale: 1.05;
}
:where(.page-scope) .story-outer:first-of-type .story-article {
  border-block-start: 1px solid var(--color_border);
}
:where(.page-scope) .story-article {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 45px;
  padding-block: 3.125rem;
  border-block-end: 1px solid var(--color_border);
}
:where(.page-scope) .story-article .story-heading, :where(.page-scope) .story-article .story-preview {
  max-width: 65ch;
}
:where(.page-scope) .story-article .story-heading {
  margin-block-end: 1rem;
  text-wrap: balance;
  text-decoration-line: underline;
  text-decoration-color: transparent;
  transition: text-decoration 0.3s ease;
}
:where(.page-scope) .story-article .story-preview {
  color: var(--color_dark_grey);
  margin-block-end: 1.5rem;
}
:where(.page-scope) .story-article .img-wrapper {
  max-width: 385px;
  border-radius: var(--border_radius);
  overflow: hidden;
}
:where(.page-scope) .story-article .img-wrapper img {
  transition: scale 0.3s ease;
}
:where(.page-scope) .story-detail {
  max-width: 900px;
  margin-inline: auto;
}
:where(.page-scope) .story-header {
  margin-block-end: var(--spacer_s);
  text-align: center;
}
:where(.page-scope) .story-header h1 {
  margin-block-end: var(--spacer_xs);
}
:where(.page-scope) .story-header .intro {
  margin-block-end: var(--spacer_xs);
}
:where(.page-scope) .story-header .button svg {
  width: 16px;
}
:where(.page-scope) .story-header .story-image {
  margin-block: var(--spacer_s);
  margin-inline: auto;
  border-radius: var(--border_radius);
  width: 100%;
}
:where(.page-scope) .news-form {
  margin-block-end: 2.5rem;
}
:where(.page-scope) .news-form .news-filter-grid {
  --icons_right_size: 3rem;
  display: grid;
  grid-template-columns: minmax(auto, 270px) minmax(auto, 1fr);
  grid-template-columns: minmax(240px, 1fr) 2fr;
  gap: var(--grid_gutter);
}
:where(.page-scope) .news-form .news-filter-grid .control svg {
  width: 1rem;
}
@media only screen and (max-width: 36.25rem) {
  :where(.page-scope) .news-form .news-filter-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
:where(.page-scope) .news-listing .listing-wrap {
  border-bottom: 1px solid var(--color_light);
}
:where(.page-scope) .news-listing .listing-wrap:first-of-type {
  border-top: 1px solid var(--color_light);
}
:where(.page-scope) .news-listing:not(:has(~ .pagination-wrap)) .listing-wrap:last-of-type {
  border-bottom: none;
}
:where(.page-scope) .news-detail {
  max-width: 900px;
  margin-inline: auto;
}
:where(.page-scope) .news-header {
  margin-block-end: var(--spacer_s);
  text-align: center;
}
:where(.page-scope) .news-header h1 {
  margin-block-end: var(--spacer_xs);
}
:where(.page-scope) .news-header .intro {
  margin-block-end: var(--spacer_xs);
}
:where(.page-scope) .news-header .button svg {
  width: 16px;
}
:where(.page-scope) .news-header .news-image {
  margin-block: var(--spacer_s);
  margin-inline: auto;
  border-radius: var(--border_radius);
  width: 100%;
}
:where(.page-scope) .news-header-meta {
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: center;
  margin-block-end: 2.5rem;
}
:where(.page-scope) .news-header-meta .news-meta-wrap {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 10px;
  padding-block: 0.25rem;
}
:where(.page-scope) .news-header-meta .news-meta-separator {
  width: 1px;
  height: stretch;
  background-color: var(--color_border);
}
:where(.page-scope) .news-header-meta .news-meta-separator:last-of-type {
  display: none;
}
:where(.page-scope) .news-header-meta svg {
  height: 18px;
}
:where(.page-scope) .news-page-end {
  margin-block-start: var(--spacer_xs);
  text-align: center;
}
:where(.page-scope) .news-page-end .button svg {
  width: 16px;
}
:where(.page-scope) .lucy-sponsor-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  align-items: center;
  justify-items: center;
  gap: 1rem;
}
:where(.page-scope) .lucy-sponsor-grid .sponsor-wrap {
  display: grid;
  place-content: center;
  height: 100%;
  background-color: #FFF;
  border-radius: var(--border_radius);
  overflow: hidden;
}
:where(.page-scope) .lucy-sponsor-grid .sponsor-wrap a {
  display: block;
  width: 100%;
}
:where(.page-scope) .lucy-sponsor-grid .sponsor-wrap p {
  padding: 2rem 20px;
}

@layer components {
  :where(.page-scope) .video-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    margin-bottom: var(--spacer_xxs);
    border-radius: var(--border_radius);
    overflow: hidden;
  }
  :where(.page-scope) .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  :where(.page-scope) .testimonial-wrapper {
    --dist: 10px;
    position: relative;
    background-color: var(--color_light);
    overflow: hidden;
  }
  :where(.page-scope) .testimonial-wrapper::after {
    content: "";
    position: absolute;
    top: calc(var(--dist) * -1);
    left: calc(var(--dist) * -1);
    width: calc(100% + var(--dist) * 2);
    height: calc(100% + var(--dist) * 2);
    background-image: radial-gradient(closest-side at 50% var(--dist), var(--color_light) 100%, transparent 100%), radial-gradient(closest-side at 50% calc(100% - var(--dist)), var(--color_light) 100%, transparent 100%), radial-gradient(closest-side at calc(100% - var(--dist)) 50%, var(--color_light) 100%, transparent 100%), radial-gradient(closest-side at var(--dist) 50%, var(--color_light) 100%, transparent 100%);
    background-repeat: no-repeat;
    pointer-events: none;
  }
  :where(.page-scope) .testimonial-wrapper svg {
    width: auto;
    margin-inline: auto;
  }
  :where(.page-scope) .testimonial-wrapper blockquote {
    max-width: 668px;
    margin-block-start: 1rem;
    margin-inline: auto;
  }
  :where(.page-scope) .testimonial-wrapper figcaption {
    margin-block-start: var(--flow_spacing);
  }
  :where(.page-scope) .testimonial-wrapper .inner {
    position: relative;
    padding: var(--dist);
    background-color: #FFF;
  }
  :where(.page-scope) .testimonial-wrapper .layout {
    padding-block: var(--spacer_m);
    padding-inline: 20px;
    text-align: center;
  }
  :where(.page-scope) .lucy-news {
    display: grid;
    gap: 10px;
  }
  :where(.page-scope) .news-pb-article {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    gap: var(--flow_spacing) clamp(20px, 5cqi, 70px);
    padding-block: var(--spacer_s);
    padding-inline: clamp(20px, 5cqi, 46px) clamp(20px, 5cqi, 30px);
    border-radius: var(--border_radius);
    background-color: var(--color_light);
  }
  :where(.page-scope) .news-pb-article:is(:hover, :focus-visible) img {
    scale: 1.1;
  }
  :where(.page-scope) .news-pb-article:has(img) {
    grid-template-columns: auto minmax(70px, 220px);
  }
  @container (max-width: 400px) {
    :where(.page-scope) .news-pb-article:has(img) {
      grid-template-columns: 1fr;
    }
    :where(.page-scope) .news-pb-article:has(img) .image-wrap {
      order: -1;
      width: 100%;
    }
    :where(.page-scope) .news-pb-article:has(img) .image-wrap img {
      width: 100%;
    }
  }
  :where(.page-scope) .news-pb-article img {
    transition: all 0.3s ease;
  }
  :where(.page-scope) .news-pb-article h3, :where(.page-scope) .news-pb-article p {
    margin-block: 0;
  }
  :where(.page-scope) .news-pb-article .date {
    margin-block-end: 1rem;
    font-weight: bold;
  }
  :where(.page-scope) .news-pb-article .news-title {
    margin-block-end: 1.875rem;
    margin-block-end: var(--spacer_xs);
  }
  :where(.page-scope) .news-pb-article .button-link {
    --color: var(--color_blue);
  }
  :where(.page-scope) .news-pb-article .image-wrap {
    position: relative;
    border-radius: var(--border_radius);
    overflow: hidden;
  }
  :where(.page-scope) .news-article {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    gap: var(--flow_spacing) clamp(20px, 5cqi, 70px);
    padding-block: var(--spacer_s);
  }
  :where(.page-scope) .news-article.featured {
    margin-block-end: var(--spacer_s);
    padding-block: 1.875rem;
    padding-inline: 40px 32px;
    background-color: var(--color_secondary);
    border-radius: var(--border_radius);
  }
  :where(.page-scope) .news-article.featured .featured-arrow-wrap {
    margin-block-start: 1.75rem;
    width: 40px;
  }
  :where(.page-scope) .news-article:is(:hover, :focus-visible) img {
    scale: 1.1;
  }
  :where(.page-scope) .news-article:has(img) {
    grid-template-columns: 1fr clamp(150px, 42cqi, 328px);
  }
  @container (max-width: 500px) {
    :where(.page-scope) .news-article:has(img) {
      grid-template-columns: 1fr;
    }
    :where(.page-scope) .news-article:has(img) .image-wrap {
      order: -1;
      width: 100%;
      max-width: 100%;
    }
    :where(.page-scope) .news-article:has(img) .image-wrap img {
      width: 100%;
    }
  }
  :where(.page-scope) .news-article img {
    transition: all 0.3s ease;
  }
  :where(.page-scope) .news-article h3, :where(.page-scope) .news-article p {
    margin-block: 0;
  }
  :where(.page-scope) .news-article .date {
    margin-block-end: 1rem;
  }
  :where(.page-scope) .news-article .news-preview {
    margin-block-start: 1.4rem;
    color: var(--color_dark_grey);
  }
  :where(.page-scope) .news-article .button-link {
    --color: var(--color_blue);
  }
  :where(.page-scope) .news-article .image-wrap {
    position: relative;
    max-width: 328px;
    border-radius: var(--border_radius);
    overflow: hidden;
  }
  :where(.page-scope) .news-article .start .news-title {
    max-width: 60ch;
    text-wrap: balance;
  }
  :where(.page-scope) .news-article .start .news-preview {
    max-width: 60ch;
  }
  :where(.page-scope) .gallery-wrapper {
    container-name: gallery;
    container-type: inline-size;
  }
  :where(.page-scope) .gallery-wrapper .slides-wrapper {
    position: relative;
    width: 100cqi;
    border-radius: var(--border_radius);
    overflow: hidden;
  }
  :where(.page-scope) .gallery-wrapper .gallery-slides {
    display: flex;
    gap: 20px;
    align-items: start;
    grid-auto-flow: column;
    grid-auto-columns: max-content;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    grid-row: 1;
    grid-column: 1/-1;
  }
  :where(.page-scope) .gallery-wrapper .gallery-slide {
    width: 100%;
    flex: 1 0 auto;
    position: relative;
    scroll-snap-align: start;
    display: grid;
    align-items: center;
    align-self: stretch;
    place-content: center;
    overflow: hidden;
    background-color: var(--color_light);
  }
  :where(.page-scope) .gallery-wrapper .gallery-slide img {
    display: block;
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) .gallery-wrapper .gallery-slide {
      max-width: 100cqi;
    }
  }
  :where(.page-scope) .gallery-wrapper .gallery-controls {
    display: flex;
    gap: 10px;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  :where(.page-scope) .gallery-wrapper .gallery-controls [data-prev] svg {
    rotate: 180deg;
  }
  :where(.page-scope) .gallery-wrapper .gallery-controls .circle-button svg {
    color: #FFF;
    width: 8px;
  }
  :where(.page-scope) .gallery-wrapper .gallery-controls .circle-button:focus-visible, :where(.page-scope) .gallery-wrapper .gallery-controls .circle-button:hover {
    transform: scale(1.1);
  }
  :where(.page-scope) .gallery-wrapper .gallery-end {
    display: grid;
    grid-template-columns: 1fr 136px 1fr;
    gap: 20px;
    justify-content: center;
    align-items: center;
    margin-block: min(1.5rem, var(--spacer_xxs)) 0;
  }
  :where(.page-scope) .gallery-wrapper .gallery-end .gallery-controls {
    margin-inline: auto;
  }
  :where(.page-scope) .gallery-wrapper .gallery-end .line {
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--color_border);
  }
  @container gallery (max-width: 400px) {
    :where(.page-scope) .gallery-wrapper .gallery-end {
      grid-template-columns: 1fr 120px 1fr;
      gap: 10px;
    }
  }
  :where(.page-scope) .arrow-wrap {
    display: grid;
    place-content: center;
    width: var(--button_circle_size);
    height: var(--button_circle_size);
    background-color: var(--button_circle_bg);
    border-radius: 50%;
    opacity: 0;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .arrow-wrap svg {
    width: var(--button_circle_icon_size);
    color: var(--button_circle_fg);
  }
  :where(.page-scope) .button {
    --button_fg: var(--color_dark);
    --button_bg: var(--color_secondary);
    --button_circle_size: 18px;
    --button_circle_icon_size: 4px;
    --button_circle_fg: currentColor;
    --button_circle_bg: #FFF;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding-block: 0.7rem;
    padding-inline: calc(1.75rem - var(--button_circle_size));
    color: var(--button_fg);
    font-family: var(--font_secondary);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none !important;
    text-transform: lowercase;
    line-height: 1;
    border-radius: 0.25rem;
    background-color: var(--button_bg);
    transition: all 0.3s ease;
  }
  :where(.page-scope) .button .button-text {
    padding-inline: 10px;
    letter-spacing: 2px;
    text-box-trim: trim-both;
    text-transform: lowercase;
    transform: translateX(calc(var(--button_circle_size) / 2));
    transition: all 0.3s ease;
  }
  :where(.page-scope) .button.cta {
    padding-block: 1.15rem;
    padding-inline: calc(2.5rem - var(--button_circle_size));
    font-size: 16px;
    letter-spacing: 2px;
  }
  :where(.page-scope) .button.alt {
    --button_circle_bg: var(--color_secondary);
    --button_bg: var(--color_light);
  }
  :where(.page-scope) .button.disabled, :where(.page-scope) .button[disabled] {
    --button_bg: #F9F9F9;
    --button_fg: #00000082;
    cursor: not-allowed;
  }
  :where(.page-scope) .button:is(:hover, :focus-visible) .arrow-wrap {
    opacity: 1;
  }
  :where(.page-scope) .button:is(:hover, :focus-visible) .button-text {
    transform: translateX(0);
  }
  :where(.page-scope) a:is(:hover, :focus-visible) .button .arrow-wrap {
    opacity: 1;
  }
  :where(.page-scope) a:is(:hover, :focus-visible) .button .button-text {
    transform: translateX(0);
  }
  :where(.page-scope) .button-link {
    --color: var(--button_link_color, inherit);
    --button_circle_size: 18px;
    --button_circle_icon_size: 4px;
    --button_circle_bg: var(--color_secondary);
    --button_circle_fg: var(--color_text);
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-size: var(--fs_m);
    font-family: var(--font_primary);
    font-weight: 800;
    color: var(--color);
  }
  :where(.page-scope) .button-link .arrow-wrap {
    opacity: 1;
  }
  :where(.page-scope) .button-link svg {
    transition: translate 0.3s ease;
  }
  :where(.page-scope) .button-link:hover, :where(.page-scope) .button-link:focus-visible {
    color: var(--color_primary);
    text-decoration: underline;
  }
  :where(.page-scope) .button-link:hover svg, :where(.page-scope) .button-link:focus-visible svg {
    translate: 25% 0;
  }
  :where(.page-scope) a:is(:hover, :focus-visible) .button-link {
    color: var(--color_primary);
    text-decoration: underline;
  }
  :where(.page-scope) .circle-button {
    --size: 36px;
    display: grid;
    place-content: center;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    color: #FFF;
    background-color: var(--color_primary);
    cursor: pointer;
  }
  :where(.page-scope) .circle {
    --circle_size_default: 3.75rem;
    --circle_default_bg: var(--color_secondary);
    display: grid;
    place-items: center;
    width: var(--circle_size, var(--circle_size_default));
    height: var(--circle_size, var(--circle_size_default));
    color: var(--circle_color, currentColor);
    border-radius: 50%;
    background-color: var(--circle_bg, var(--circle_default_bg));
    transition: background-color 0.3s ease;
  }
  :where(.page-scope) .circle svg {
    width: var(--circle_icon_size, 1em);
    max-width: 100%;
    max-height: 100%;
  }
  :where(.page-scope) .circle:is(a, button):hover, :where(.page-scope) .circle:is(a, button):focus-visible {
    background-color: color-mix(in srgb, var(--circle_bg, var(--circle_default_bg)) 80%, rgba(255, 255, 255, 0.5) 10%);
  }
  :where(.page-scope) .pagination-wrap {
    --circle_size: 3.75rem;
    --circle_bg: var(--color_secondary);
    --circle_icon_size: 8px;
    display: grid;
    grid-template-columns: var(--circle_size) auto var(--circle_size);
    gap: 30px;
    justify-content: center;
    align-items: center;
  }
  :where(.page-scope) .pagination-wrap.search-pagination {
    margin-block-start: var(--spacer_m);
  }
  :where(.page-scope) .pagination-wrap .middle {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
  }
  :where(.page-scope) .pagination-wrap .middle select {
    display: inline-block;
    width: auto;
    min-width: 70px;
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) .pagination-wrap {
      justify-items: center;
      grid-template-columns: 1fr 1fr;
      grid-auto-flow: dense;
    }
    :where(.page-scope) .pagination-wrap .middle {
      display: none;
      grid-column: 1/-1;
    }
  }
  :where(.page-scope) .graphic-cta {
    --block_gap: calc(var(--spacer_xs) + 5px);
  }
  :where(.page-scope) .graphic-cta:hover .cta-title, :where(.page-scope) .graphic-cta a:focus-visible .cta-title {
    text-decoration-color: currentColor;
  }
  :where(.page-scope) .graphic-cta:hover svg:first-child, :where(.page-scope) .graphic-cta a:focus-visible svg:first-child {
    translate: 0 -6px;
    color: var(--color_secondary);
  }
  :where(.page-scope) .graphic-cta:hover svg:last-child, :where(.page-scope) .graphic-cta a:focus-visible svg:last-child {
    color: var(--color_secondary);
  }
  :where(.page-scope) .graphic-cta .cta-title {
    margin-block-end: 0.727em;
    text-decoration-line: underline;
    text-decoration-color: transparent;
    transition: text-decoration-color 0.3s ease;
  }
  :where(.page-scope) .graphic-cta .cta-desc {
    margin-block-end: var(--block_gap);
    line-height: 1.57;
  }
  :where(.page-scope) .graphic-cta svg {
    margin-inline: auto;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .graphic-cta svg:first-child {
    width: 70px;
    margin-block-end: var(--block_gap);
  }
  :where(.page-scope) .graphic-cta svg:last-child {
    width: 40px;
  }
  :where(.page-scope) .graphic-cta svg .arrow-tail {
    stroke-dasharray: 40;
    stroke-dashoffset: 80;
  }
  :where(.page-scope) .skip-link {
    position: fixed;
    top: 1rem;
    left: 50%;
    z-index: 25;
    padding: 0.75rem 2rem;
    text-decoration: none;
    line-height: 1;
    font-size: 1rem;
    font-weight: bold;
    color: #FFF;
    text-transform: uppercase;
    background-color: var(--color_primary);
    translate: -50% calc(-100% - 1rem);
  }
  :where(.page-scope) .skip-link:focus {
    translate: -50% 0;
    outline: none;
    -moz-outline: none;
  }
  :where(.page-scope) #page-header {
    position: relative;
    display: grid;
    width: 100%;
    color: #FFF;
    margin-block-start: calc(var(--header_height) - var(--navbar_height));
    padding-block-start: var(--navbar_height);
    background-color: var(--color_primary);
    overflow: hidden;
  }
  :where(.page-scope) #page-header:has(.page-header-image) {
    min-height: clamp(240px, 33.7cqi, 600px);
  }
  :where(.page-scope) #page-header:has(.page-header-image)::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(20, 20, 20, 0.4);
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) #page-header:has(.page-header-image)::after {
      background-color: rgba(20, 20, 20, 0.55);
    }
  }
  :where(.page-scope) #page-header .page-header-image {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  :where(.page-scope) #page-header .header-layout {
    display: grid;
    height: 100%;
    align-items: center;
  }
  :where(.page-scope) #page-header .header-layout .header-main-content {
    position: relative;
    z-index: 1;
    padding-block: var(--spacer_m) calc(var(--spacer_m) + var(--page_nav_height) / 2);
  }
  :where(.page-scope) #page-header .header-layout h1 {
    margin: 0;
    text-align: center;
  }
  :where(.page-scope) #page-header > * {
    margin-block: 0;
  }
  :where(.page-scope) #page-header .page-header-logo-bg {
    position: absolute;
    bottom: -146px;
    right: -58px;
    width: 444px;
  }
  :where(.page-scope) #page-header:has(.bg-white) {
    color: var(--color_text);
    background-color: #FFF;
  }
  :where(.page-scope) #page-header:has(.bg-white) .page-header-logo-bg {
    opacity: 0.2;
  }
  :where(.page-scope) #page-header:has(.event-page-header) .page-header-logo-bg {
    top: 100px;
    bottom: auto;
  }
  :where(.page-scope) #page-header:has(.bg-white) .page-header-logo-bg {
    filter: grayscale(1) brightness(1.7);
  }
  :where(.page-scope) .page-header-margin {
    margin-block-start: var(--header_height);
  }
  :where(.page-scope) .condensed-header .condensed-header-layout {
    --edge_width: 5rem;
    z-index: 1;
    display: grid;
    grid-template-columns: var(--edge_width) 1fr minmax(0, var(--edge_width));
    gap: 0 20px;
    align-items: center;
    position: relative;
    padding-block: 1.25rem;
    border-block-end: 1px solid var(--border_color);
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  :where(.page-scope) .condensed-header .condensed-header-layout::-webkit-scrollbar {
    display: none;
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .condensed-header .condensed-header-layout {
      padding-block: 1rem;
    }
  }
  :where(.page-scope) .condensed-header .back-link {
    display: flex;
    gap: 10px;
    align-items: center;
    cursor: pointer;
  }
  :where(.page-scope) .condensed-header .back-link svg {
    width: 22px;
    flex-shrink: 0;
  }
  :where(.page-scope) .condensed-header .back-link svg g {
    stroke-width: 2px;
  }
  :where(.page-scope) .condensed-header .back-link span {
    font-size: var(--fs_s);
    letter-spacing: 1.75px;
    text-transform: lowercase;
  }
  :where(.page-scope) .condensed-header .lucy-trail {
    grid-column: 2;
  }
  :where(.page-scope) .condensed-header .lucy-trail ol {
    margin: 0;
  }
  :where(.page-scope) :where(:is(#lucy-main, .main-alt)) {
    display: grid;
    grid-template-columns: 1fr;
    position: relative;
    padding-block-start: var(--spacer_l);
  }
  :where(.page-scope) :where(:is(#lucy-main, .main-alt)).no-page-header {
    padding-top: var(--spacer_m);
  }
  :where(.page-scope) :where(:is(#lucy-main, .main-alt)):has(.hide-main-content) {
    display: none;
  }
  :where(.page-scope) :where(:is(#lucy-main, .main-alt)):has(> .sidebar) {
    --sidebar_slope: ((100dvw - 920px) / 680);
    grid-template-columns: minmax(240px, 290fr) 900fr;
    column-gap: clamp(60px, 60px + 110 * var(--sidebar_slope), 170px);
    justify-content: space-between;
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) :where(:is(#lucy-main, .main-alt)):has(> .sidebar) {
      grid-template-columns: 1fr;
    }
  }
  :where(.page-scope) .lucy-layout {
    container-type: inline-size;
    container-name: main-content;
    position: relative;
    margin-bottom: var(--spacer_l);
  }
  :where(.page-scope) .main-alt {
    padding-top: 0;
  }
  :where(.page-scope) .footer-cta-section {
    padding-block: var(--spacer_xl);
    color: #FFF;
    text-align: center;
    background-color: var(--color_primary);
  }
  :where(.page-scope) .footer-cta-section .text-wrapper {
    max-width: 1000px;
    margin-block-end: var(--spacer_xl);
    margin-inline: auto;
    padding: 0 1.5rem;
  }
  :where(.page-scope) .footer-cta-section .text-wrapper h2 {
    margin-block-end: 1.625rem;
  }
  :where(.page-scope) .footer-cta-section .text-wrapper p {
    margin-block-end: 2rem;
  }
  :where(.page-scope) .footer-cta-section .ctas-layout {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 3.125rem 20px;
  }
  @container container (max-width: 53.75rem) {
    :where(.page-scope) .footer-cta-section .ctas-layout {
      grid-template-columns: 1fr;
    }
    :where(.page-scope) .footer-cta-section .ctas-layout .graphic-cta .cta-title {
      font-family: var(--font_secondary);
      font-weight: normal;
      text-transform: lowercase;
      font-size: var(--fs_2xl);
      line-height: 1.214;
      letter-spacing: 0px;
    }
    :where(.page-scope) .footer-cta-section .ctas-layout .graphic-cta .cta-desc {
      font-family: var(--font_primary);
      font-size: var(--fs_m);
      text-transform: none;
      line-height: 1.75;
      letter-spacing: 0.33px;
    }
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .footer-cta-section {
      padding-block: max(var(--spacer_m), 3.125rem);
    }
  }
  :where(.page-scope) .footer-nav-section {
    --bg_image_space: 62cqi;
    display: grid;
    align-items: end;
    color: #FFF;
    background-color: var(--color_dark);
    background-image: linear-gradient(to bottom, transparent 0%, var(--color_dark) 100%), url(/images/footer-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 25%;
    min-height: 61.25rem;
  }
  :where(.page-scope) .footer-nav-section a:is(:hover, :focus-visible) {
    text-decoration-line: underline;
  }
  :where(.page-scope) .footer-nav-section .footer-nav-inner-wrapper {
    display: grid;
    align-items: end;
    align-content: end;
  }
  :where(.page-scope) .footer-nav-section .nav-layout {
    display: grid;
    grid-template-columns: auto minmax(205px, auto) minmax(157px, auto) minmax(170px, 268px);
    justify-content: space-between;
    gap: var(--spacer_s) 20px;
  }
  :where(.page-scope) .footer-nav-section .nav-layout .buttons-end .button {
    width: 100%;
  }
  :where(.page-scope) .footer-nav-section .nav-layout .buttons-end li:not(:last-child) {
    margin-block-end: 0.625rem;
  }
  :where(.page-scope) .footer-nav-section .nav-layout .mobile-footer-nav-wrap {
    display: none;
  }
  :where(.page-scope) .footer-nav-section .nav-layout .mobile-footer-nav-wrap .field-wrap {
    max-width: 300px;
    margin-inline: auto;
  }
  @media only screen and (max-width: 68.125rem) {
    :where(.page-scope) .footer-nav-section .nav-layout {
      grid-template-columns: minmax(205px, auto) minmax(157px, auto) minmax(170px, 268px);
    }
    :where(.page-scope) .footer-nav-section .nav-layout .footer-main-nav {
      font-family: var(--font_secondary);
      font-weight: normal;
      text-transform: lowercase;
      font-size: var(--fs_5xl);
      line-height: 1.156;
      letter-spacing: 0px;
      grid-column: 1/-2;
      grid-row: 1;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .footer-nav-2, :where(.page-scope) .footer-nav-section .nav-layout .footer-nav-3 {
      grid-row: 2;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .buttons-end {
      grid-row: 1/3;
      grid-column: -2/-1;
      align-self: end;
    }
  }
  @container container (max-width: 39.375rem) {
    :where(.page-scope) .footer-nav-section .nav-layout {
      grid-template-columns: 1fr;
      justify-items: stretch;
      text-align: center;
      gap: var(--spacer_l);
    }
    :where(.page-scope) .footer-nav-section .nav-layout .footer-main-nav {
      grid-column: auto;
      grid-row: auto;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .footer-main-nav .circle {
      display: none;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .footer-nav-2, :where(.page-scope) .footer-nav-section .nav-layout .footer-nav-3 {
      display: none;
      grid-row: auto;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .buttons-end {
      grid-row: auto;
      grid-column: auto;
      align-self: center;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .buttons-end .button {
      max-width: 300px;
    }
    :where(.page-scope) .footer-nav-section .nav-layout .mobile-footer-nav-wrap {
      display: block;
    }
  }
  :where(.page-scope) .footer-nav-section .footer-main-nav li:not(:last-child) {
    margin-block-end: 0.7rem;
  }
  :where(.page-scope) .footer-nav-section .footer-main-nav a {
    white-space: nowrap;
    text-decoration: none;
  }
  :where(.page-scope) .footer-nav-section .footer-main-nav a:is(:hover, :focus-visible) {
    text-decoration-color: currentColor;
  }
  :where(.page-scope) .footer-nav-section .footer-main-nav a:is(:hover, :focus-visible) .list-icon {
    opacity: 1;
  }
  :where(.page-scope) .footer-nav-section .footer-main-nav a .circle {
    --circle_size: 26px;
    --circle_icon_size: 6px;
    --circle_color: var(--color_text);
  }
  :where(.page-scope) .footer-nav-section .footer-main-nav a .list-icon {
    display: inline-grid;
    vertical-align: middle;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  :where(.page-scope) .footer-nav-section .footer-nav-2 li:not(:last-child) {
    margin-block-end: 1rem;
  }
  :where(.page-scope) .footer-nav-section .footer-nav-3 li:not(:last-child) {
    margin-block-end: 0.25rem;
  }
  :where(.page-scope) .footer-nav-section .footer-nav-3 a {
    display: flex;
    align-items: baseline;
    gap: 10px;
  }
  :where(.page-scope) .footer-nav-section .footer-nav-3 svg {
    width: 14px;
  }
  @media only screen and (max-width: 43.75rem) {
    :where(.page-scope) .footer-nav-section {
      background-size: 100% auto;
      background-position: 50% 0;
    }
  }
  :where(.page-scope) .footer-nav-section .footer-nav-outer {
    padding-block: 3.625rem;
  }
  @media only screen and (max-width: 43.75rem) {
    :where(.page-scope) .footer-nav-section .footer-nav-outer {
      margin-block-start: var(--bg_image_space);
      background-color: transparent;
      background-image: linear-gradient(to top, var(--color_dark), var(--color_dark) calc(100% - 20px), transparent 100%);
    }
  }
  :where(.page-scope) .location-info-wrap {
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
    align-items: center;
    gap: 1.875rem 20px;
    padding-block-start: 3.625rem;
  }
  @container container (max-width: 67.38rem) {
    :where(.page-scope) .location-info-wrap {
      grid-auto-columns: min-content;
    }
  }
  @container container (max-width: 39.375rem) {
    :where(.page-scope) .location-info-wrap {
      grid-auto-flow: unset;
      justify-content: center;
      padding-block-start: var(--spacer_l);
      text-align: center;
    }
  }
  :where(.page-scope) .location-info {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  :where(.page-scope) .location-info > div {
    display: flex;
    flex-wrap: wrap;
    gap: 0px 8px;
  }
  :where(.page-scope) .location-info svg {
    flex-shrink: 0;
    width: var(--fs_m);
    color: var(--color_secondary);
  }
  @container container (max-width: 79rem) {
    :where(.page-scope) .location-info {
      align-items: flex-start;
    }
    :where(.page-scope) .location-info > div .separator {
      display: none;
    }
    :where(.page-scope) .location-info > div > :last-child {
      flex-basis: 100%;
    }
  }
  @container container (max-width: 39.375rem) {
    :where(.page-scope) .location-info {
      display: grid;
    }
    :where(.page-scope) .location-info svg {
      width: 16px;
      margin-inline: auto;
    }
    :where(.page-scope) .location-info .display-m {
      font-size: var(--fs_l);
    }
  }
  :where(.page-scope) .mission-wrap {
    padding-block: 2.5rem;
  }
  :where(.page-scope) .mission-wrap .mission-layout {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: var(--spacer_s) 45px;
  }
  :where(.page-scope) .mission-wrap .mission-layout > p {
    max-width: 800px;
    text-wrap: balance;
    line-height: 1.3636363636;
  }
  @container container (max-width: 53.75rem) {
    :where(.page-scope) .mission-wrap .mission-layout {
      grid-template-columns: auto 1fr;
    }
    :where(.page-scope) .mission-wrap .mission-layout .social-nav {
      grid-column: 2;
    }
  }
  @container container (max-width: 33.75rem) {
    :where(.page-scope) .mission-wrap .mission-layout {
      grid-template-columns: 1fr;
      justify-items: center;
      text-align: center;
    }
    :where(.page-scope) .mission-wrap .mission-layout .ndcl-logo {
      grid-column: auto;
    }
    :where(.page-scope) .mission-wrap .mission-layout .social-nav {
      grid-column: auto;
    }
  }
  :where(.page-scope) .mission-wrap .ndcl-logo svg {
    width: 126px;
  }
  :where(.page-scope) .mission-wrap .social-nav {
    display: flex;
    align-items: center;
    gap: 28px;
    color: var(--color_secondary);
  }
  :where(.page-scope) .mission-wrap .social-nav svg {
    transition: all 0.3s ease;
  }
  :where(.page-scope) .mission-wrap .social-nav a:is(:hover, :focus-visible) svg {
    translate: 0 -2px;
    scale: 1.05;
  }
  :where(.page-scope) .footer-mission-wrap {
    color: #FFF;
    background-color: var(--color_dark);
    border-top: 1px solid rgba(137, 137, 137, 0.5);
  }
  :where(.page-scope) .menu-mission-wrap .ndcl-logo path {
    fill: var(--color_text);
  }
  :where(.page-scope) .menu-mission-wrap .social-nav {
    color: var(--color_text);
  }
  :where(.page-scope) .footer-end {
    color: #FFF;
    background-color: var(--color_dark);
    border-top: 1px solid rgba(137, 137, 137, 0.5);
  }
  :where(.page-scope) .footer-end-layout {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding-block: 1.25rem;
  }
  :where(.page-scope) .footer-end-layout a:is(:hover, :focus-visible) {
    text-decoration-line: underline;
  }
  :where(.page-scope) .footer-end-layout p {
    line-height: 1.5;
  }
  :where(.page-scope) .footer-end-layout .separator {
    margin-inline: 5px;
  }
  :where(.page-scope) .footer-end-layout .by-form {
    flex-basis: 273px;
    flex-shrink: 0.5;
  }
  :where(.page-scope) .footer-end-layout .by-form:is(:hover, :focus-visible) svg {
    scale: 1.02;
    translate: 0 -2px;
  }
  :where(.page-scope) .footer-end-layout .by-form svg {
    max-width: 273px;
    transition: all 0.3s ease;
  }
  @container container (max-width: 42.5rem) {
    :where(.page-scope) .footer-end-layout {
      display: grid;
      text-align: center;
      gap: var(--spacer_s);
      padding-block-end: 1.75rem;
    }
    :where(.page-scope) .footer-end-layout svg {
      margin-inline: auto;
    }
  }
  :where(.page-scope) .footer-back-to-wrapper {
    padding-block: var(--spacer_m);
    color: #FFF;
    text-align: center;
    background-color: #0071B5;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .footer-back-to-wrapper:is(:hover, :focus-visible, :focus-within) {
    background-color: #0065a3;
  }
  :where(.page-scope) .footer-back-to-wrapper:is(:hover, :focus-visible, :focus-within) svg {
    translate: -8px 0;
  }
  :where(.page-scope) .footer-back-to-wrapper .back-to-text {
    display: grid;
    grid-template-columns: auto auto;
    place-content: center;
    gap: 20px;
  }
  @media only screen and (max-width: 910px) {
    :where(.page-scope) .footer-back-to-wrapper .back-to-text {
      gap: 16px;
    }
  }
  :where(.page-scope) .footer-back-to-wrapper svg {
    width: 48px;
    margin-top: 1px;
    transition: translate 0.3s ease;
  }
  @media only screen and (max-width: 910px) {
    :where(.page-scope) .footer-back-to-wrapper svg {
      width: 36px;
    }
  }
  :where(.page-scope) .sidebar {
    --left_padding: 28px;
    position: sticky;
    top: calc(var(--visible_header_height) + var(--spacer_s));
    margin-bottom: var(--spacer_l);
    align-self: flex-start;
    transition: top 0.3s ease;
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .sidebar {
      position: static;
      display: none;
    }
  }
  :where(.page-scope) .sidebar :where(#nav-content) {
    padding-block-start: 1.125rem;
    border-left: 1px solid var(--color_border);
  }
  :where(.page-scope) .sidebar :where(#nav-content) h2 {
    padding-inline-start: var(--left_padding);
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .sidebar :where(#nav-content) {
      padding-block-start: 0;
    }
  }
  :where(.page-scope) .sidebar .list-toggle {
    display: none;
  }
  :where(.page-scope) .sidebar .sidebar-nav li {
    margin-block-end: 0.5rem;
    padding-inline-start: var(--left_padding);
  }
  :where(.page-scope) .sidebar .sidebar-nav li:is(:has(.active)) {
    position: relative;
  }
  :where(.page-scope) .sidebar .sidebar-nav li:is(:has(.active))::before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 12px;
    height: 12px;
    padding: 14px 0;
    background-color: #FFF;
    translate: -50% -50%;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTJweCIgaGVpZ2h0PSIxMnB4IiB2aWV3Qm94PSIwIDAgMTIgMTIiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+bm91bi1zdGFyLTExODQ2OTY8L3RpdGxlPgogICAgPGcgaWQ9IvCfm6DvuI8tRm9yLURldnMtLS1EZXNpZ24iIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQYWdlYnVpbGRlci1HdWlkZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwMjUsIC0xOTAyKSIgZmlsbD0iIzAwN0NDNyI+CiAgICAgICAgICAgIDxnIGlkPSJHcm91cC03IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1ODAsIDE4NDYpIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJub3VuLXN0YXItMTE4NDY5NiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNDQ1LCA1NikiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTUuNzQ3NDk2MjEsMC4wMDA0MjYzOTUwMzUgQzUuNzQ2ODg4NjMsMC4wMDA0MjYzOTUwMzUgNS43NDYyMTM1NSwwLjAwMDQ5Mzg5NTE5NyA1Ljc0NTYwNTksMC4wMDA1NjE0MTI2NDEgQzUuNzQzMzc4MDYsMC4wMDA2Mjg5MTI4MDMgNS43NDExNTA0LDAuMDAwNzYzOTEzMTI4IDUuNzM4ODU1MTcsMC4wMDA4OTg5MzA3MzQgQzUuNjc2Mjc1LDAuMDAzNDY0MTQ0MjggNS42MTY2NjU2MiwwLjAyODUwOTAyMDIgNS41NzA5NjMxNCwwLjA3MTMwNTc4MjEgQzUuNTI1MjYwNjUsMC4xMTQxNzE2NjkgNS40OTY0MzQxMywwLjE3MjAyMjAzOCA1LjQ4OTgxODU1LDAuMjM0MzI5MjE2IEM0LjkxNjY3NTM2LDMuMTYzMzEwOTIgMy4zMjMzMzU5NCw0Ljk3NjQ0ODkyIDAuMjM4NDgzMTUsNS40ODk2OTkgQzAuMTgzMTk0MjkyLDUuNDk0NTU5MzIgMC4xMzA4MDcwOTcsNS41MTY4MzU1OSAwLjA4OTAyMDczNTgsNS41NTM0OTA2MyBDMC4wNDczMDAwNDYxLDUuNTkwMDc4MjcgMC4wMTgyNzEzMjIxLDUuNjM5MDE4NDggMC4wMDYyNTUwODYwMiw1LjY5MzI5MTY2IEwwLjAwNjEyMDA2MTA2LDUuNjkzMjkxNjYgQzAuMDA0NDMyMzYxNDMsNS43MDA5ODcxMiAwLjAwMzAxNDY0MjU5LDUuNzA4ODE3NzMgMC4wMDIwMDIwODUwMiw1LjcxNjcxNjI1IEMwLjAwMTczMjA1MjM5LDUuNzE5MTQ2MzMgMC4wMDE1Mjk1MjM2LDUuNzIxNjQ0MTQgMC4wMDEyNTk0OTA5Nyw1LjcyNDE0MTc5IEMwLjAwMDcxOTQyNTcwMiw1LjcyOTgxMjA4IDAuMDAwMzE0Mzg1Mzk1LDUuNzM1NDgyNTQgMCw1Ljc0MTE1MyBDMCw1Ljc0NTU0MDg2IDAsNS43NDk5OTYxMSAwLDUuNzU0MzgzOCBDMCw1Ljc1ODE2NDA1IDAuMDAwMTc5MzYwNDM4LDUuNzYxOTQ0MyAwLjAwMDM4MTg4OTIzMiw1Ljc2NTcyNDU1IEMwLjAwMDc4Njk0NjgyMSw1Ljc3MjA3MDAxIDAuMDAxNDYyMDE5NzYsNS43NzgzNDc5MSAwLjAwMjMzOTYwNDIxLDUuNzg0NTU3NTQgQzAuMDAyNTQyMTMzMDEsNS43ODY0NDc3NSAwLjAwMjgxMjE2NTY0LDUuNzg4MzM3NzkgMC4wMDMwMTQ2OTQ0Myw1Ljc5MDIyODAxIEMwLjAxMjA2MDgzMDgsNS44NDgyODIyOSAwLjA0MDM0NzQ2MTksNS45MDE2MTAxOSAwLjA4MzQxNjE1NDUsNS45NDE2NDAyNCBDMC4xMjY0ODY1NzUsNS45ODE2MDI4OSAwLjE4MTc3NTQzMyw2LjAwNTkwNTM3IDAuMjQwMzA0NjgyLDYuMDEwNjMwMDMgQzMuMzIyOTEwOCw2LjUyNDIwODQ2IDQuOTE1NjI4MDcsOC4zMzYxNTQwNiA1LjQ4OTIyMDU5LDExLjI2Mjg4OTIgTDUuNDg5MjIwNTksMTEuMjYyODIxNyBDNS40OTQ5NTg3NiwxMS4zMjM1NzUzIDUuNTIxNjkxOSwxMS4zODA0MTQ3IDUuNTY0OTY0NTIsMTEuNDIzNDgyOCBDNS42MDgxNjk3NCwxMS40NjY0ODM1IDUuNjY1MTQ3MDYsMTEuNDkzMDc5MiA1LjcyNTkwMzk3LDExLjQ5ODU0ODcgQzUuNzI2MDM5LDExLjQ5ODU0ODcgNS43MjYxNzQsMTEuNDk4NjE2MiA1LjcyNjMwOTAxLDExLjQ5ODYxNjIgTDUuNzI2Mzc2NTMsMTEuNDk4NjE2MiBDNS43MzE5MTIxNiwxMS40OTkyMjM3IDUuNzM3NTE1MzYsMTEuNDk5Njk2MiA1Ljc0MzExODU2LDExLjUgQzUuNzQ2ODMxNDQsMTEuNSA1Ljc1MDU0NDUsMTEuNSA1Ljc1NDI1NzM4LDExLjUgQzUuNzU2NDg1MjEsMTEuNSA1Ljc1ODcxMjg4LDExLjUgNS43NjA5NDA3MSwxMS41IEM1LjgyMzUyMDg4LDExLjQ5NzQwMTEgNS44ODMxMzAyNiwxMS40NzI0MjUyIDUuOTI4OTAxODcsMTEuNDI5NjI2NyBDNS45NzQ2MDQzNSwxMS4zODY4MjgyIDYuMDAzNDMwODgsMTEuMzI5MDQ1MiA2LjAxMDExMzg2LDExLjI2NjczODEgQzYuNTg0NDY2NzksOC4zMzc1ODM1NCA4LjE3NjU5NjQ3LDYuNTI0MjcyNzMgMTEuMjYxNDQ5Myw2LjAxMTAyMjY0IEMxMS4zMTY2NzA3LDYuMDA2MjI5ODkgMTEuMzY4OTkwNSw1Ljk4Mzk1MzQ1IDExLjQxMDcwOTUsNS45NDc1MDA2IEMxMS40NTI0OTc2LDUuOTEwOTgwMzUgMTEuNDgxNTI2Myw1Ljg2MjE3NDk0IDExLjQ5MzY3NzMsNS44MDgwMzY1NiBDMTEuNDkzODc5OCw1LjgwNzIyNjUgMTEuNDk0MDE0OSw1LjgwNjQ4Mzk3IDExLjQ5NDE0OTksNS44MDU2NzM4OCBDMTEuNDk1NzcwMSw1Ljc5ODQ1MDg4IDExLjQ5Njk4NTIsNS43OTEwOTI5MSAxMS40OTc5OTc5LDUuNzgzNzM1NDYgQzExLjQ5ODI2NzksNS43ODExNzAyNSAxMS40OTg0NzA1LDUuNzc4NjcyNiAxMS40OTg2NzMsNS43NzYxNzQ5NiBDMTEuNDk5MjgwNiw1Ljc3MDUwNDY3IDExLjQ5OTY4NTYsNS43NjQ4MzQyMSAxMS41LDUuNzU5MTYzNzQgQzExLjUsNS43NTQ3MDg0OSAxMS41LDUuNzUwMzIwNjMgMTEuNSw1Ljc0NTkzMjk1IEMxMS41LDUuNzQyMTUyNyAxMS40OTk3NTMxLDUuNzM4MzcyNDUgMTEuNDk5NjE4MSw1LjczNDUyNDYzIEMxMS40OTkxNDU1LDUuNzI4MjQ2NzMgMTEuNDk4NTM4LDUuNzIxOTY4ODQgMTEuNDk3NjYwNCw1LjcxNTY5MTYzIEMxMS40OTc0NTc5LDUuNzEzODAxNDIgMTEuNDk3MTg3OCw1LjcxMTk3ODk1IDExLjQ5NjkxNzgsNS43MTAwODg3NCBDMTEuNDk1NzAyNyw1LjcwMTk4ODIgMTEuNDk0MDE0OSw1LjY5Mzg4NzY2IDExLjQ5MTk4OTYsNS42ODU5OTAxOCBDMTEuNDc4NjIzLDUuNjMzMTM0MDYgMTEuNDQ5MDU0LDUuNTg1ODEzMSAxMS40MDc0Njk5LDUuNTUwNjQ0MjMgQzExLjM2NTg4NTcsNS41MTU0MDYyNCAxMS4zMTQzMDksNS40OTQxNDM1MiAxMS4yNTk5NjM4LDUuNDg5Njg4NDQgQzguMTc3MTg0ODQsNC45NzU1NzQzIDYuNTg1Njc3MzEsMy4xNjM0NzMxNyA2LjAxMDg3NTA1LDAuMjM2NzM4MDE4IEM2LjAwNTEzNjg4LDAuMTc1OTg0NDE1IDUuOTc4MjY4OTMsMC4xMTkwNzc1OTYgNS45MzQ5Mjg5MSwwLjA3NjAwOTUyMDQgQzUuODkxNTg4ODksMC4wMzMwMDg4NDA5IDUuODM0NTQ0MTcsMC4wMDY0ODA1NTEzIDUuNzczNjUyNDYsMC4wMDExNDc1ODkxNyBDNS43NjgwNDkyNiwwLjAwMDc0MjU1MzYyOSA1Ljc2MjQ0NjA3LDAuMDAwNDcyNTM1Njk5IDUuNzU2ODQyODcsMC4wMDA0MDUwMzU1MzYgQzUuNzUzODA1MDIsMC4wMDAyMDI1MTc3NjggNS43NTA2OTk2LDAgNS43NDc1OTQxOCwwIEw1Ljc0NzQ5NjIxLDAuMDAwNDI2Mzk1MDM1IFoiIGlkPSJQYXRoIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==");
    background-position: center;
    background-repeat: no-repeat;
    content: "";
  }
  :where(.page-scope) .sidebar .sidebar-nav li a:is(.active, :hover) {
    font-weight: var(--fw_bold);
    color: var(--color_blue);
  }
  :where(.page-scope) .sidebar .sidebar-nav li a:is(.active, :hover):hover svg {
    opacity: 1;
  }
  :where(.page-scope) .sidebar .sidebar-nav li svg {
    display: inline-block;
    width: 4px;
    margin-inline-start: 10px;
    vertical-align: middle;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  :where(.page-scope) .nav-wrapper {
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
  }
  :where(.page-scope) .nav-wrapper.hide .navbar {
    --shadow_color: transparent;
    margin-top: calc(var(--navbar_height) * -1);
    opacity: 0;
  }
  :where(.page-scope) .nav-wrapper.hide:not(:has(#shelf-menu:not([inert]))) .nav-top {
    --shadow_color: transparent;
    margin-top: calc(var(--top_nav_height) * -1);
    opacity: 0;
  }
  :where(.page-scope) .navbar {
    --shadow_color: transparent;
    position: relative;
    z-index: 1;
    color: #FFF;
    height: var(--navbar_height);
    font-weight: var(--fw_semibold);
    transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease, margin-top 0.3s ease, opacity 0.3s ease;
    box-shadow: 0 1px 4px 2px var(--shadow_color);
  }
  :where(.page-scope) .navbar > div {
    height: 100%;
  }
  :where(.page-scope) .navbar.scrolled, :where(.page-scope) .navbar.fill-always {
    background-color: var(--color_primary);
    --shadow_color: rgba(0, 0, 0, 0.05);
  }
  :where(.page-scope) .navbar.scrolled .navbar-inner-layout, :where(.page-scope) .navbar.fill-always .navbar-inner-layout {
    border-bottom-color: transparent;
  }
  :where(.page-scope) .navbar .navbar-content {
    container-type: inline-size;
    container-name: navbar-content;
    height: 100%;
  }
  :where(.page-scope) .navbar .navbar-inner-layout {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    justify-content: space-between;
    align-items: center;
    gap: clamp(20px, 8.8cqi, 200px);
    height: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  }
  @media only screen and (max-width: 1200px) {
    :where(.page-scope) .navbar .navbar-inner-layout {
      gap: clamp(20px, 6.6cqi, 150px);
    }
  }
  @media only screen and (max-width: 1100px) {
    :where(.page-scope) .navbar .navbar-inner-layout {
      gap: clamp(20px, 4cqi, 100px);
    }
  }
  :where(.page-scope) .navbar .navbar-inner-layout .navbar-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
  }
  :where(.page-scope) .navbar .navbar-inner-layout .navbar-nav a {
    text-decoration-line: underline;
    text-decoration-color: transparent;
    text-underline-offset: 4px;
    text-decoration-thickness: 2px;
    text-decoration-color: transparent;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .navbar .navbar-inner-layout .navbar-nav a:hover, :where(.page-scope) .navbar .navbar-inner-layout .navbar-nav a:focus-visible {
    text-decoration-color: #FFF;
  }
  :where(.page-scope) .navbar .navbar-logo {
    width: clamp(70px, 12dvw, 166px);
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .navbar .navbar-logo {
      width: 120px;
    }
  }
  :where(.page-scope) .navbar .navbar-logo .logo-small {
    display: none;
  }
  @media only screen and (max-width: 40rem) {
    :where(.page-scope) .navbar .navbar-logo {
      width: 70px;
    }
    :where(.page-scope) .navbar .navbar-logo .logo-main {
      display: none;
    }
    :where(.page-scope) .navbar .navbar-logo .logo-small {
      display: block;
    }
  }
  :where(.page-scope) .navbar .navbar-button {
    display: flex;
    align-items: center;
    gap: 12px;
    transition: background-color 0.3s ease, color 0.3s ease;
  }
  :where(.page-scope) .navbar .navbar-button svg {
    width: 16px;
    color: #FFF;
  }
  :where(.page-scope) .navbar .navbar-button.fill-button {
    display: flex;
    padding-block: 8px;
    padding-inline: 18px;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: var(--border_radius);
    text-box-trim: trim-both;
  }
  :where(.page-scope) .navbar .navbar-button.fill-button:where(.transparent) {
    background-color: transparent;
  }
  :where(.page-scope) .navbar .navbar-button.fill-button svg {
    flex-shrink: 0;
    transition: inherit;
  }
  :where(.page-scope) .navbar .navbar-button.fill-button:hover, :where(.page-scope) .navbar .navbar-button.fill-button:focus-visible {
    background-color: #FFF;
    color: var(--color_text);
  }
  :where(.page-scope) .navbar .navbar-button.fill-button:hover svg, :where(.page-scope) .navbar .navbar-button.fill-button:focus-visible svg {
    color: var(--color_text);
  }
  @media only screen and (max-width: 40rem) {
    :where(.page-scope) .navbar .navbar-button.fill-button .fill-button-text {
      display: none;
    }
    :where(.page-scope) .navbar .navbar-button.fill-button#menu-trigger {
      display: grid;
      place-content: center;
      width: 44px;
      height: 44px;
      padding: 8px;
    }
    :where(.page-scope) .navbar .navbar-button.fill-button#menu-trigger svg {
      width: 100%;
    }
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .navbar .hide-condensed {
      display: none;
    }
    :where(.page-scope) .navbar .nav-right {
      margin-inline-start: auto;
    }
  }
  :where(.page-scope) .nav-top {
    position: relative;
    z-index: 3;
    height: var(--top_nav_height);
    background-color: #FFF;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .nav-top > div {
    height: 100%;
  }
  :where(.page-scope) .nav-top .nav-top-layout {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    height: 100%;
  }
  :where(.page-scope) .nav-top .nav-top-nav {
    display: flex;
    gap: 30px;
    align-items: center;
  }
  @media only screen and (max-width: 62.5rem) {
    :where(.page-scope) .nav-top .nav-top-nav {
      gap: 16px;
    }
  }
  @media only screen and (max-width: 27.5rem) {
    :where(.page-scope) .nav-top .nav-top-nav {
      font-size: var(--fs_xs);
    }
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-left {
    height: 100%;
    color: var(--color_primary) !important;
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-left svg {
    width: 11px;
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-left a > * {
    transition: all 0.3s ease;
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-left a:is(:hover, :focus-visible) > * {
    opacity: 1;
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-left a:is(:hover, :focus-visible) span {
    text-decoration-line: underline;
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-right svg {
    width: 16px;
    color: var(--color_secondary);
  }
  :where(.page-scope) .nav-top .nav-top-nav.top-nav-right .small-only {
    display: none;
  }
  @media only screen and (max-width: 1180px) {
    :where(.page-scope) .nav-top .nav-top-nav.top-nav-right .hide-condensed {
      display: none;
    }
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .nav-top .nav-top-nav.top-nav-right li.small-only {
      display: flex;
    }
    :where(.page-scope) .nav-top .nav-top-nav.top-nav-right li:not(.small-only) {
      display: none;
    }
  }
  @media only screen and (max-width: 32.5rem) {
    :where(.page-scope) .nav-top .nav-top-nav.top-nav-right .hide-mobile {
      display: none;
    }
  }
  :where(.page-scope) .nav-top .nav-top-nav li {
    display: flex;
    gap: 10px;
    align-items: center;
    height: 100%;
    font-weight: bold;
  }
  @media only screen and (max-width: 62.5rem) {
    :where(.page-scope) .nav-top .nav-top-nav li {
      gap: 8px;
    }
  }
  :where(.page-scope) .nav-top .nav-top-nav li a {
    display: contents;
  }
  :where(.page-scope) .nav-top .nav-top-nav li a span {
    text-decoration-line: underline;
    text-decoration-color: transparent;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .nav-top .nav-top-nav li a:is(:hover, :focus-visible) span {
    text-decoration-color: inherit;
  }
  :where(.page-scope) .nav-top .nav-top-nav .current {
    position: relative;
  }
  :where(.page-scope) .nav-top .nav-top-nav .current:after {
    --size: 16px;
    content: "";
    position: absolute;
    bottom: calc(var(--size) / -2);
    left: 50%;
    translate: -50%;
    rotate: 45deg;
    width: var(--size);
    height: var(--size);
    background-color: #FFF;
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .nav-top .nav-top-nav .current:after {
      --size: 12px;
    }
  }
  @media only screen and (max-width: 40rem) {
    :where(.page-scope) .nav-top .nav-top-nav .current:after {
      --size: 10px;
      left: 0;
      translate: 0;
    }
  }
  :where(.page-scope) .nav-top .nav-top-nav .muted > * {
    opacity: 0.62;
  }
  :where(.page-scope) #shelf-menu {
    position: fixed;
    z-index: 2;
    top: calc(var(--top_nav_height) + var(--alert_height));
    left: 0;
    width: 100%;
    max-height: calc(100dvh - (var(--top_nav_height) + var(--alert_height)));
    padding-block: 3rem var(--spacer_l);
    background-color: var(--color_light);
    overflow-y: auto;
    overscroll-behavior: contain;
    translate: 0 0;
    transition: 0.3s ease;
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) #shelf-menu {
      padding-block-start: var(--spacer_s);
    }
  }
  :where(.page-scope) #shelf-menu .mobile-only {
    display: none;
  }
  @media only screen and (max-width: 525px) {
    :where(.page-scope) #shelf-menu .mobile-only {
      display: block;
    }
  }
  :where(.page-scope) #shelf-menu + .backdrop {
    position: fixed;
    z-index: 1;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5);
    pointer-events: none;
  }
  :where(.page-scope) #shelf-menu[inert] {
    opacity: 0;
    translate: 0 -4rem;
  }
  :where(.page-scope) #shelf-menu[inert] + .backdrop {
    background-color: transparent;
  }
  :where(.page-scope) #shelf-menu :where(#close-shelf-menu) {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-block-end: var(--spacer_xs);
  }
  :where(.page-scope) #shelf-menu :where(#close-shelf-menu).right {
    margin-left: auto;
    justify-self: flex-end;
  }
  :where(.page-scope) #shelf-menu :where(#close-shelf-menu) svg {
    width: 12px;
  }
  :where(.page-scope) #shelf-menu :where(#close-shelf-menu) span {
    display: block;
    text-box-trim: trim-both;
  }
  :where(.page-scope) #shelf-menu .shelf-layout {
    display: grid;
    grid-template-columns: auto minmax(200px, 1fr) minmax(200px, 268px);
    justify-content: space-between;
    gap: var(--spacer_s) var(--spacer_xl);
  }
  @media only screen and (max-width: 79.25rem) {
    :where(.page-scope) #shelf-menu .shelf-layout {
      column-gap: var(--spacer_m);
    }
  }
  @media only screen and (max-width: 73.75rem) {
    :where(.page-scope) #shelf-menu .shelf-layout {
      grid-template-columns: auto minmax(200px, 1fr);
      column-gap: var(--spacer_s);
    }
    :where(.page-scope) #shelf-menu .shelf-layout .shelf-nav-secondary {
      grid-column: 1/-1;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      column-gap: 10px;
    }
  }
  @media only screen and (max-width: 41.25rem) {
    :where(.page-scope) #shelf-menu .shelf-layout {
      grid-template-columns: 1fr;
    }
    :where(.page-scope) #shelf-menu .shelf-layout .shelf-sub-menus, :where(.page-scope) #shelf-menu .shelf-layout .shelf-nav-main .circle {
      display: none;
    }
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main {
    display: grid;
    align-content: start;
    justify-items: start;
    gap: 0.8rem;
  }
  @media only screen and (max-width: 48.75rem) {
    :where(.page-scope) #shelf-menu .shelf-nav-main {
      font-size: var(--fs_3xl);
      row-gap: 0.6rem;
    }
  }
  @media only screen and (max-width: 41.25rem) {
    :where(.page-scope) #shelf-menu .shelf-nav-main {
      font-size: 1.875rem;
    }
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main:has(:hover, [aria-expanded=true]) > li:is(:hover, :has(button[aria-expanded=true])) .list-icon {
    opacity: 1;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main:has(:hover, [aria-expanded=true]) > li:not(:hover, :has(button[aria-expanded=true])) {
    opacity: 0.3;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main > li {
    display: inline-block;
    transition: opacity 0.3s ease;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main > li ul {
    display: none;
    height: auto;
    padding-inline: 30px 0;
    overflow: hidden;
    transition: margin-block 0.3s ease, height 0.3s ease, opacity 0.3s;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main > li ul li {
    margin-block-end: 0.5rem;
    font-size: var(--fs_l);
  }
  @media only screen and (max-width: 41.25rem) {
    :where(.page-scope) #shelf-menu .shelf-nav-main > li ul {
      display: block;
      margin-block: 0.5rem 1rem;
    }
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main > li ul[inert] {
    margin-block: 0;
    opacity: 0;
    height: 0;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main button, :where(.page-scope) #shelf-menu .shelf-nav-main a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-align: left;
    white-space: nowrap;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main button .circle, :where(.page-scope) #shelf-menu .shelf-nav-main a .circle {
    --circle_size: clamp(16px, 2.7dvw, 26px);
    --circle_icon_size: 25%;
    flex-shrink: 0;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-main .list-icon {
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus > * {
    grid-column: 1/-1;
    grid-row: 1/-1;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus .shelf-sub-menu {
    translate: 0 0;
    transition: all 0.5s ease;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus .shelf-sub-menu li {
    margin-block-end: 0.33rem;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus .shelf-sub-menu li a:is(:hover, :focus-visible) {
    font-weight: bold;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus .shelf-sub-menu a {
    display: flex;
    align-items: center;
    gap: 10px;
    transition: font-weight 0.3s ease;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus .shelf-sub-menu a svg {
    width: 26px;
    opacity: 0;
    transition: opacity 0.3s ease;
    translate: 0 1px;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus .shelf-sub-menu a:is(:hover, :focus-visible) svg {
    opacity: 1;
  }
  :where(.page-scope) #shelf-menu .shelf-sub-menus [inert] {
    opacity: 0;
    translate: 0 -2.5rem;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-secondary li:not(:last-child) {
    margin-block-end: 0.625rem;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-secondary a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-block: 0.625rem;
    padding-inline: 15px;
    background-color: #FFF;
    border-radius: var(--border_radius);
    text-decoration: none;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-secondary a:is(:hover, :focus-visible) {
    background-color: var(--color_primary);
    color: #FFF;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-secondary a:is(:hover, :focus-visible) svg path {
    fill: #FFF;
  }
  :where(.page-scope) #shelf-menu .shelf-nav-secondary svg {
    width: 14px;
    color: var(--color_primary);
  }
  :where(.page-scope) #shelf-menu #search-wrapper {
    --icons_left_size: 70px;
    display: none;
  }
  @media only screen and (max-width: 40rem) {
    :where(.page-scope) #shelf-menu #search-wrapper {
      --icons_left_size: 50px;
    }
  }
  :where(.page-scope) #shelf-menu #search-wrapper label {
    margin-block-end: 1rem;
  }
  :where(.page-scope) #shelf-menu #search-wrapper input {
    font-size: var(--fs_l);
    height: clamp(3.5rem, 1rem + 5dvw, 4.375rem);
  }
  :where(.page-scope) #shelf-menu #search-wrapper .search-icon svg {
    width: 19px;
  }
  @media only screen and (max-width: 40rem) {
    :where(.page-scope) #shelf-menu #search-wrapper .search-icon svg {
      width: 16px;
    }
  }
  :where(.page-scope) #shelf-menu #search-wrapper .button {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
  }
  :where(.page-scope) #shelf-menu #search-wrapper .search-callouts {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 50px;
    align-items: start;
    margin-block-start: 3.125rem;
  }
  @media only screen and (max-width: 68.75rem) {
    :where(.page-scope) #shelf-menu #search-wrapper .search-callouts {
      grid-template-columns: 1fr 1fr;
      gap: 30px;
    }
  }
  @media only screen and (max-width: 38.75rem) {
    :where(.page-scope) #shelf-menu #search-wrapper .search-callouts {
      grid-template-columns: 1fr;
    }
  }
  :where(.page-scope) #shelf-menu #search-wrapper .search-callout p {
    margin-block-end: 1.25rem;
  }
  :where(.page-scope) #shelf-menu #search-wrapper .search-callout .button-link {
    --button_link_color: var(--color_primary);
    --button_circle_bg: var(--color_primary) !important;
    --button_circle_fg: #FFF !important;
    --button_circle_size: 12px !important;
  }
  :where(.page-scope) #shelf-menu #search-wrapper .search-callout .button-link .arrow-wrap {
    opacity: 0 !important;
    transition: all 0.3s ease;
  }
  :where(.page-scope) #shelf-menu #search-wrapper .search-callout:is(:hover, :focus-within) .button-link .arrow-wrap {
    opacity: 1 !important;
  }
  :where(.page-scope) .lucy-trail ol {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 1.06rem;
    padding: 0;
    list-style-type: none;
    white-space: nowrap;
  }
  :where(.page-scope) .lucy-trail ol li {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-weight: 600;
    letter-spacing: 0.13px;
  }
  :where(.page-scope) .lucy-trail ol li:last-child .trail-separator {
    display: none;
  }
  :where(.page-scope) .lucy-trail ol li .trail-separator {
    width: 5px;
    margin: 0 14px;
  }
  :where(.page-scope) .lucy-trail ol li:after {
    display: inline-block;
    margin: 0 14px;
  }
  :where(.page-scope) .lucy-trail ol li:last-child:after {
    display: none;
  }
  :where(.page-scope) .lucy-trail ol a:is(:hover, :focus-visible) {
    color: var(--color_secondary);
  }
  :where(.page-scope) .lucy-trail .home {
    display: flex;
    gap: 10px;
    align-items: center;
  }
  :where(.page-scope) .lucy-trail .home svg {
    flex-shrink: 0;
    width: 0.66rem;
    margin-bottom: 0.05rem;
    margin-right: 0.1rem;
    color: var(--color_secondary);
  }
  :where(.page-scope) .alert-bar {
    position: relative;
    z-index: 4;
    width: 100%;
    height: var(--alert_height);
    background-color: var(--color_yellow);
  }
  :where(.page-scope) .alert-bar .container, :where(.page-scope) .alert-bar .alert-layout {
    height: 100%;
  }
  :where(.page-scope) .alert-bar h2, :where(.page-scope) .alert-bar p, :where(.page-scope) .alert-bar .button {
    margin: 0 !important;
  }
  :where(.page-scope) .alert-bar #alert-close {
    position: relative;
    z-index: 1;
    padding: 10px;
    margin-inline-end: -10px;
    color: var(--color_text);
    border-radius: 50%;
    background-color: transparent;
  }
  :where(.page-scope) .alert-bar #alert-close:is(:hover, :focus-visible) {
    color: #FFF;
  }
  :where(.page-scope) .alert-bar #alert-close:is(:hover, :focus-visible) svg {
    border-radius: 50%;
    background-color: var(--color_text);
  }
  :where(.page-scope) .alert-bar #alert-close:is(:hover, :focus-visible) svg path:first-of-type {
    color: var(--color_text);
  }
  :where(.page-scope) .alert-bar .alert-layout {
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    gap: 10px;
  }
  :where(.page-scope) .alert-bar .alert-layout .alert-start {
    display: grid;
    justify-content: start;
    align-items: center;
    grid-template-columns: auto auto auto;
    gap: 0 16px;
  }
  :where(.page-scope) .alert-bar .alert-body {
    margin-inline-start: 20px;
    padding-inline-start: 16px;
    border-left: 1px solid #FFF;
    line-height: 1.5;
    max-height: 2lh;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
  }
  @media only screen and (max-width: 40rem) {
    :where(.page-scope) .alert-bar .alert-body {
      font-size: var(--fs_s);
    }
  }
  :where(.page-scope) .alert-bar .button::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 100cqi;
    height: 100%;
  }
  @container container (max-width: 51.875rem) {
    :where(.page-scope) .alert-bar .button {
      position: absolute;
      width: 100%;
      height: 100%;
      overflow: hidden;
      white-space: nowrap;
      opacity: 0;
      transition: none;
    }
  }
  @container container (max-width: 36.25rem) {
    :where(.page-scope) .alert-bar .alert-layout .alert-start {
      grid-template-columns: auto;
    }
    :where(.page-scope) .alert-bar .alert-body {
      padding-inline: 0;
      border: none;
    }
  }
  :where(.page-scope) .page-nav-container {
    display: none;
  }
  @media only screen and (max-width: 57.5rem) {
    :where(.page-scope) .page-nav-container {
      display: block;
      margin-block-start: calc(var(--page_nav_height) / -2);
    }
  }
  :where(.page-scope) .page-nav-inner {
    position: relative;
    z-index: 1;
    height: auto;
    background-color: #FFF;
    border-radius: var(--border_radius);
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
    overflow: hidden;
  }
  :where(.page-scope) .page-nav-inner:not(:has(.page-nav-menu[inert])) .toggle-button {
    border-bottom: 1px solid var(--color_light);
  }
  :where(.page-scope) .page-nav-inner:not(:has(.page-nav-menu[inert])) .toggle-button .circle svg {
    scale: -1 1;
  }
  :where(.page-scope) .page-nav-inner .toggle-button {
    --circle_size: 20px;
    --circle_icon_size: 6px;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 20px;
    width: 100%;
    height: var(--page_nav_height);
    padding-block: 11px;
    padding-inline: 20px;
    text-align: left;
    background-color: #FFF;
  }
  :where(.page-scope) .page-nav-inner .toggle-button .circle svg {
    rotate: 90deg;
    transition: all 0.3s ease;
  }
  :where(.page-scope) .page-nav-inner .active-page-wrap {
    container-type: inline-size;
  }
  :where(.page-scope) .page-nav-inner .nav-label, :where(.page-scope) .page-nav-inner .nav-page {
    white-space: nowrap;
    overflow: hidden;
    max-width: 100cqi;
    text-overflow: ellipsis;
  }
  :where(.page-scope) .page-nav-inner .nav-label {
    font-size: var(--fs_xs);
    text-transform: lowercase;
  }
  :where(.page-scope) .page-nav-inner .page-nav-menu {
    background-color: #FFF;
    transition: all 0.3s ease;
    overflow: hidden;
  }
  :where(.page-scope) .page-nav-inner .page-nav-menu[inert] {
    opacity: 0;
    height: 0;
  }
  :where(.page-scope) .page-nav-inner .page-nav-menu ul {
    padding-block: 11px var(--spacer_xs);
    padding-inline: 20px;
  }
  :where(.page-scope) .page-nav-inner .page-nav-menu .active {
    color: var(--color_primary);
    font-weight: var(--fw_bold);
    text-decoration: underline;
  }
}
@layer utilities {
  .fw-medium {
    font-weight: var(--fw_medium);
  }
  .fw-semibold {
    font-weight: var(--fw_semibold);
  }
  .fw-bold {
    font-weight: var(--fw_bold);
  }
  .text-box {
    text-box: cap alphabetic;
  }
  .mb-flow {
    margin-block-end: var(--flow_spacing);
  }
  .mb-0 {
    margin-block-end: 0;
  }
  .no-wrap {
    white-space: nowrap;
  }
}

/*# sourceMappingURL=site.css.map */
