:root {
  --font-system: system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  --font-primary: "Lato", var(--font-system);
  --font-secondary: "Roboto Serif", serif;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --font-weight-black: 900;
  --color-pew-blue-40: #296ec3;
  --color-pew-blue-30: #5a90d2;
  --color-pew-blue-20: #8ab1e1;
  --color-pew-blue-10: #bbd3f0;
  --color-pew-blue-00: #f3f6fa;
  --color-pure-white: #fff;
  --color-pure-black: #000;
  --color-dialog-backdrop: rgba(0 0 0 / 20%);
  --color-pew-cream: #fcfaf5;
  --color-pew-dark-blue: #001d6c;
  --color-pew-blue: #229dc6;
  --color-pew-teal: #5ac7be;
  --color-pew-green: #6d9953;
  --color-pew-orange: #ff7f49;
  --color-pew-red: #d85555;
  --color-pew-pink: #e67cae;
  --color-pew-yellow: #fdb71c;
  --color-pew-neutrals-00: #f0f0f0;
  --color-pew-neutrals-10: #e1e1e1;
  --color-pew-neutrals-20: #b0b0b0;
  --color-pew-neutrals-30: #757575;
  --color-pew-neutrals-40: #333;
  --color-pew-ui-red-10: #ffc5d0;
  --color-pew-ui-red-100: #ee0004;
  --color-pew-ui-orange-10: #ffdaca;
  --color-pew-ui-orange-100: #fe7f49;
  --color-pew-ui-green-10: #d7fffc;
  --color-pew-ui-green-100: #5ac7be;
}

:root,
.theme--pew-light {
  /* Base */
  --theme-color-text-primary: var(--color-pure-black);
  --theme-color-text-secondary: var(--color-pew-dark-blue);
  --theme-color-text-tertiary: var(--color-pew-neutrals-40);
  --theme-color-text-inverted: var(--color-pure-white);
  --theme-color-background-primary: var(--color-pew-cream);

  /* Accent */
  --theme-color-secondary: var(--color-pew-dark-blue);
  --theme-color-primary-00: var(--color-pew-blue-00);
  --theme-color-primary-10: var(--color-pew-blue-10);
  --theme-color-primary-20: var(--color-pew-blue-20);
  --theme-color-primary-30: var(--color-pew-blue-30);
  --theme-color-primary: var(--color-pew-blue-40);

  /* Neutrals */
  --theme-color-neutral-00: var(--color-pew-neutrals-00);
  --theme-color-neutral-10: var(--color-pew-neutrals-10);
  --theme-color-neutral-20: var(--color-pew-neutrals-20);
  --theme-color-neutral-30: var(--color-pew-neutrals-30);
  --theme-color-neutral-40: var(--color-pew-neutrals-40);

  /* Buttons */
  --theme-color-btn-primary-text: var(--color-pure-white);
  --theme-color-btn-primary-background: var(--color-pew-blue-40);
  --theme-color-btn-primary-border: var(--color-pew-blue-40);
  --theme-color-btn-primary-text-hover: var(--color-pure-white);
  --theme-color-btn-primary-background-hover: var(--color-pew-dark-blue);
  --theme-color-btn-primary-border-hover: var(--color-pew-dark-blue);
  --theme-color-btn-primary-text-disabled: var(--color-pew-neutrals-30);
  --theme-color-btn-primary-background-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-primary-border-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-secondary-text: var(--color-pure-black);
  --theme-color-btn-secondary-background: var(--color-pew-cream);
  --theme-color-btn-secondary-border: var(--color-pure-black);
  --theme-color-btn-secondary-text-hover: var(--color-pure-white);
  --theme-color-btn-secondary-background-hover: var(--color-pew-dark-blue);
  --theme-color-btn-secondary-border-hover: var(--color-pew-dark-blue);
  --theme-color-btn-secondary-text-disabled: var(--color-pew-neutrals-20);
  --theme-color-btn-secondary-background-disabled: var(--color-pew-cream);
  --theme-color-btn-secondary-border-disabled: var(--color-pew-neutrals-20);

  /* UI Elements */
  --theme-color-divider-light: var(--color-pew-neutrals-20);
  --theme-color-divider-heavy: var(--color-pure-black);
  --theme-color-dropdown-text: var(--color-pure-black);
  --theme-color-dropdown-background: var(--color-pew-cream);
  --theme-color-dropdown-border: var(--color-pew-cream);

  /* Tables */
  --theme-color-table-text-header: var(--color-pure-white);
  --theme-color-table-background-header: var(--color-pew-neutrals-40);
  --theme-color-table-text: var(--color-pure-black);
  --theme-color-table-text-odd: var(--color-pure-black);
  --theme-color-table-background-odd: var(--color-pew-neutrals-00);
  --theme-color-table-text-even: var(--color-pure-black);
  --theme-color-table-background-even: var(--color-pew-cream);
  --theme-color-table-text-highlight: var(--color-pure-black);
  --theme-color-table-background-highlight: var(--color-pure-white);
  --theme-color-table-highlight-outline: var(--color-pew-blue-40);

  /* // User Inputs */
  --theme-color-focus-outline: var(--color-pure-black);
  --theme-color-ui-warning-10: var(--color-pew-ui-red-10);
  --theme-color-ui-warning-100: var(--color-pew-ui-red-100);
  --theme-color-ui-caution-10: var(--color-pew-ui-orange-10);
  --theme-color-ui-caution-100: var(--color-pew-ui-orange-100);
  --theme-color-ui-success-10: var(--color-pew-ui-green-10);
  --theme-color-ui-success-100: var(--color-pew-ui-green-100);
  --theme-color-ui-input-background: var(--color-pure-white);
  --theme-color-ui-input-text: var(--color-pure-black);
  --theme-color-ui-input-selected: var(--color-pew-dark-blue);
  --theme-color-ui-input-border: var(--color-pew-blue-40);
  --theme-color-ui-search-bar-text: var(--color-pure-white);
  --theme-color-ui-search-bar-background: var(--color-pew-neutrals-40);
}

.theme--pew-dark {
  --theme-color-text-primary: var(--color-pure-white);
  --theme-color-text-secondary: var(--color-pew-neutrals-20);
  --theme-color-text-tertiary: var(--color-pew-neutrals-00);
  --theme-color-text-inverted: var(--color-pure-white);
  --theme-color-background-primary: var(--color-pew-neutrals-40);
  --theme-color-secondary: var(--color-pew-blue-30);
  --theme-color-primary-00: var(--color-pew-neutrals-30);
  --theme-color-primary-10: var(--color-pew-neutrals-30);
  --theme-color-primary-20: var(--color-pew-blue-20);
  --theme-color-primary-30: var(--color-pew-blue-30);
  --theme-color-primary: var(--color-pew-blue-40);
  --theme-color-neutral-00: var(--color-pew-neutrals-00);
  --theme-color-neutral-10: var(--color-pew-neutrals-10);
  --theme-color-neutral-20: var(--color-pew-neutrals-20);
  --theme-color-neutral-30: var(--color-pew-neutrals-30);
  --theme-color-neutral-40: var(--color-pew-neutrals-40);
  --theme-color-ui-warning-10: var(--color-pew-ui-red-10);
  --theme-color-ui-warning-100: var(--color-pew-ui-red-100);
  --theme-color-ui-caution-10: var(--color-pew-ui-orange-10);
  --theme-color-ui-caution-100: var(--color-pew-ui-orange-100);
  --theme-color-ui-success-10: var(--color-pew-ui-green-10);
  --theme-color-ui-success-100: var(--color-pew-ui-green-100);
  --theme-color-ui-input-background: var(--color-pure-white);
  --theme-color-ui-input-text: var(--color-pure-black);
  --theme-color-ui-input-selected: var(--color-pew-blue-40);
  --theme-color-ui-input-border: var(--color-pure-white);
  --theme-color-ui-search-bar-text: var(--color-pure-white);
  --theme-color-ui-search-bar-background: var(--color-pew-neutrals-30);

  /* Tables */
  --theme-color-table-text-header: var(--color-pure-black);
  --theme-color-table-background-header: var(--color-pew-cream);
  --theme-color-table-text: var(--color-pure-black);
  --theme-color-table-text-odd: var(--color-pure-white);
  --theme-color-table-background-odd: var(--color-pew-neutrals-30);
  --theme-color-table-text-even: var(--color-pure-white);
  --theme-color-table-background-even: var(--color-pew-neutrals-40);
  --theme-color-table-text-highlight: var(--color-pure-black);
  --theme-color-table-background-highlight: var(--color-pure-white);
  --theme-color-table-highlight-outline: var(--color-pew-blue-40);
  --theme-color-divider-light: var(--color-pew-neutrals-20);
  --theme-color-divider-heavy: var(--color-pure-white);
  --theme-color-focus-outline: var(--color-pure-white);
  --theme-color-dropdown-text: var(--color-pure-white);
  --theme-color-dropdown-background: var(--color-pew-neutrals-40);
  --theme-color-dropdown-border: var(--color-pure-white);

  /* Buttons */
  --theme-color-btn-primary-text: var(--color-pure-white);
  --theme-color-btn-primary-background: var(--color-pew-blue-40);
  --theme-color-btn-primary-border: var(--color-pew-blue-40);
  --theme-color-btn-primary-text-hover: var(--color-pure-white);
  --theme-color-btn-primary-background-hover: var(--color-pew-dark-blue);
  --theme-color-btn-primary-border-hover: var(--color-pew-dark-blue);
  --theme-color-btn-primary-text-disabled: var(--color-pew-neutrals-30);
  --theme-color-btn-primary-background-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-primary-border-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-secondary-text: var(--color-pure-white);
  --theme-color-btn-secondary-background: var(--color-pew-neutrals-40);
  --theme-color-btn-secondary-border: var(--color-pure-white);
  --theme-color-btn-secondary-text-hover: var(--color-pure-white);
  --theme-color-btn-secondary-background-hover: var(--color-pew-dark-blue);
  --theme-color-btn-secondary-border-hover: var(--color-pure-white);
  --theme-color-btn-secondary-text-disabled: var(--color-pew-neutrals-20);
  --theme-color-btn-secondary-background-disabled: var(--color-pew-neutrals-40);
  --theme-color-btn-secondary-border-disabled: var(--color-pew-neutrals-20);
}

.theme--pew-light-blue {
  --theme-color-text-primary: var(--color-pure-black);
  --theme-color-text-secondary: var(--color-pew-dark-blue);
  --theme-color-text-tertiary: var(--color-pew-neutrals-40);
  --theme-color-text-inverted: var(--color-pure-white);
  --theme-color-background-primary: var(--color-pew-blue-00);
  --theme-color-secondary: var(--color-pew-dark-blue);
  --theme-color-primary-00: var(--color-pew-cream);
  --theme-color-primary: var(--color-pew-blue-40);
  --theme-color-neutral-00: var(--color-pew-neutrals-00);
  --theme-color-neutral-10: var(--color-pew-neutrals-10);
  --theme-color-neutral-20: var(--color-pew-neutrals-20);
  --theme-color-neutral-30: var(--color-pew-neutrals-30);
  --theme-color-neutral-40: var(--color-pew-neutrals-40);
  --theme-color-ui-warning-10: var(--color-pew-ui-red-10);
  --theme-color-ui-warning-100: var(--color-pew-ui-red-100);
  --theme-color-ui-caution-10: var(--color-pew-ui-orange-10);
  --theme-color-ui-caution-100: var(--color-pew-ui-orange-100);
  --theme-color-ui-success-10: var(--color-pew-ui-green-10);
  --theme-color-ui-success-100: var(--color-pew-ui-green-100);
  --theme-color-ui-input-background: var(--color-pure-white);
  --theme-color-ui-input-text: var(--color-pure-black);
  --theme-color-ui-input-selected: var(--color-pew-dark-blue);
  --theme-color-ui-input-border: var(--color-pew-blue-40);
  --theme-color-ui-search-bar-text: var(--color-pure-white);
  --theme-color-ui-search-bar-background: var(--color-pew-blue-40);

  /* Tables */
  --theme-color-table-text-header: var(--color-pure-white);
  --theme-color-table-background-header: var(--color-pew-blue-40);
  --theme-color-table-text: var(--color-pure-black);
  --theme-color-table-text-odd: var(--color-pure-black);
  --theme-color-table-background-odd: var(--color-pew-blue-10);
  --theme-color-table-text-even: var(--color-pure-black);
  --theme-color-table-background-even: var(--color-pew-blue-00);
  --theme-color-table-text-highlight: var(--color-pure-black);
  --theme-color-table-background-highlight: var(--color-pure-white);
  --theme-color-table-highlight-outline: var(--color-pew-dark-blue);
  --theme-color-divider-light: var(--color-pew-neutrals-20);
  --theme-color-divider-heavy: var(--color-pure-black);
  --theme-color-focus-outline: var(--color-pure-black);
  --theme-color-dropdown-text: var(--color-pure-black);
  --theme-color-dropdown-background: var(--color-pew-blue-00);
  --theme-color-dropdown-border: var(--color-pew-blue-00);

  /* Buttons */
  --theme-color-btn-primary-text: var(--color-pure-white);
  --theme-color-btn-primary-background: var(--color-pew-blue-40);
  --theme-color-btn-primary-border: var(--color-pew-blue-40);
  --theme-color-btn-primary-text-hover: var(--color-pure-white);
  --theme-color-btn-primary-background-hover: var(--color-pew-dark-blue);
  --theme-color-btn-primary-border-hover: var(--color-pew-dark-blue);
  --theme-color-btn-primary-text-disabled: var(--color-pew-neutrals-30);
  --theme-color-btn-primary-background-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-primary-border-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-secondary-text: var(--color-pew-blue-40);
  --theme-color-btn-secondary-background: var(--color-pew-blue-00);
  --theme-color-btn-secondary-border: var(--color-pew-blue-40);
  --theme-color-btn-secondary-text-hover: var(--color-pure-white);
  --theme-color-btn-secondary-background-hover: var(--color-pew-dark-blue);
  --theme-color-btn-secondary-border-hover: var(--color-pew-dark-blue);
  --theme-color-btn-secondary-text-disabled: var(--color-pew-neutrals-20);
  --theme-color-btn-secondary-background-disabled: var(--color-pew-blue-00);
  --theme-color-btn-secondary-border-disabled: var(--color-pew-neutrals-20);
}

.theme--election-initiative {
  --theme-color-text-primary: var(--color-pure-black);
  --theme-color-text-secondary: var(--color-pew-red);
  --theme-color-text-tertiary: var(--color-pew-neutrals-30);
  --theme-color-text-inverted: var(--color-pure-white);
  --theme-color-background-primary: var(--color-pure-white);
  --theme-color-secondary: var(--color-pew-dark-blue);
  --theme-color-primary-00: var(--color-pew-ui-red-10);
  --theme-color-primary: var(--color-pew-red);
  --theme-color-neutral-00: var(--color-pew-neutrals-00);
  --theme-color-neutral-10: var(--color-pew-neutrals-10);
  --theme-color-neutral-20: var(--color-pew-neutrals-20);
  --theme-color-neutral-30: var(--color-pew-neutrals-30);
  --theme-color-neutral-40: var(--color-pew-neutrals-40);
  --theme-color-ui-warning-10: var(--color-pew-ui-red-10);
  --theme-color-ui-warning-100: var(--color-pew-ui-red-100);
  --theme-color-ui-caution-10: var(--color-pew-ui-orange-10);
  --theme-color-ui-caution-100: var(--color-pew-ui-orange-100);
  --theme-color-ui-success-10: var(--color-pew-ui-green-10);
  --theme-color-ui-success-100: var(--color-pew-ui-green-100);
  --theme-color-ui-input-background: var(--color-pure-white);
  --theme-color-ui-input-text: var(--color-pure-black);
  --theme-color-ui-input-selected: var(--color-pew-red);
  --theme-color-ui-input-border: var(--color-pew-red);
  --theme-color-ui-search-bar-text: var(--color-pure-black);
  --theme-color-ui-search-bar-background: var(--color-pew-ui-red-10);

  /* Tables */
  --theme-color-table-text-header: var(--color-pure-white);
  --theme-color-table-background-header: var(--color-pew-blue-40);
  --theme-color-table-text: var(--color-pure-black);
  --theme-color-table-text-even: var(--color-pure-black);
  --theme-color-table-background-odd: var(--color-pew-neutrals-00);
  --theme-color-table-text-odd: var(--color-pure-black);
  --theme-color-table-background-even: var(--color-pure-white);
  --theme-color-table-text-highlight: var(--color-pure-black);
  --theme-color-table-background-highlight: var(--color-pure-white);
  --theme-color-table-highlight-outline: var(--color-pew-dark-blue);

  /* UI Elements */
  --theme-color-divider-light: var(--color-pew-neutrals-20);
  --theme-color-divider-heavy: var(--color-pure-black);
  --theme-color-focus-outline: var(--color-pure-black);
  --theme-color-dropdown-text: var(--color-pure-black);
  --theme-color-dropdown-background: var(--color-pew-cream);
  --theme-color-dropdown-border: var(--color-pew-cream);

  /* Buttons */
  --theme-color-btn-primary-text: var(--color-pure-white);
  --theme-color-btn-primary-background: var(--color-pew-red);
  --theme-color-btn-primary-border: var(--color-pew-red);
  --theme-color-btn-primary-text-hover: var(--color-pure-white);
  --theme-color-btn-primary-background-hover: #a70e10;
  --theme-color-btn-primary-border-hover: #a70e10;
  --theme-color-btn-primary-text-disabled: var(--color-pew-neutrals-30);
  --theme-color-btn-primary-background-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-primary-border-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-secondary-text: var(--color-pew-red);
  --theme-color-btn-secondary-background: var(--color-pure-white);
  --theme-color-btn-secondary-border: var(--color-pew-red);
  --theme-color-btn-secondary-text-hover: var(--color-pure-white);
  --theme-color-btn-secondary-background-hover: var(--color-pew-red);
  --theme-color-btn-secondary-border-hover: var(--color-pew-red);
  --theme-color-btn-secondary-text-disabled: var(--color-pew-neutrals-20);
  --theme-color-btn-secondary-background-disabled: var(--color-pure-white);
  --theme-color-btn-secondary-border-disabled: var(--color-pew-neutrals-20);
}

.theme--pew-blue {
  --theme-color-text-primary: var(--color-pure-white);
  --theme-color-text-secondary: var(--color-pure-white);
  --theme-color-text-tertiary: var(--color-pure-white);
  --theme-color-text-inverted: var(--color-pew-blue-40);
  --theme-color-background-primary: var(--color-pew-blue-40);
  --theme-color-secondary: var(--color-pew-blue-00);
  --theme-color-primary-00: var(--color-pew-blue-30);
  --theme-color-primary-10: var(--color-pew-blue-10);
  --theme-color-primary-20: var(--color-pew-blue-20);
  --theme-color-primary-30: var(--color-pew-blue-30);
  --theme-color-primary: var(--color-pure-white);
  --theme-color-neutral-00: var(--color-pew-neutrals-00);
  --theme-color-neutral-10: var(--color-pew-neutrals-10);
  --theme-color-neutral-20: var(--color-pew-neutrals-20);
  --theme-color-neutral-30: var(--color-pew-neutrals-30);
  --theme-color-neutral-40: var(--color-pew-neutrals-40);
  --theme-color-ui-warning-10: var(--color-pew-ui-red-10);
  --theme-color-ui-warning-100: var(--color-pew-ui-red-100);
  --theme-color-ui-caution-10: var(--color-pew-ui-orange-10);
  --theme-color-ui-caution-100: var(--color-pew-ui-orange-100);
  --theme-color-ui-success-10: var(--color-pew-ui-green-10);
  --theme-color-ui-success-100: var(--color-pew-ui-green-100);
  --theme-color-ui-input-background: var(--color-pure-white);
  --theme-color-ui-input-text: var(--color-pure-black);
  --theme-color-ui-input-selected: var(--color-pew-dark-blue);
  --theme-color-ui-input-border: var(--color-pure-white);
  --theme-color-ui-search-bar-text: var(--color-pure-white);
  --theme-color-ui-search-bar-background: var(--color-pew-blue-30);

  /* Tables */
  --theme-color-table-text-header: var(--color-pure-white);
  --theme-color-table-background-header: var(--color-pew-dark-blue);
  --theme-color-table-text: var(--color-pure-white);
  --theme-color-table-text-odd: var(--color-pure-white);
  --theme-color-table-background-odd: var(--color-pew-blue-30);
  --theme-color-table-text-even: var(--color-pure-white);
  --theme-color-table-background-even: var(--color-pew-blue-40);
  --theme-color-table-text-highlight: var(--color-pure-black);
  --theme-color-table-background-highlight: var(--color-pure-white);
  --theme-color-table-highlight-outline: var(--color-pew-dark-blue);

  /* UI Elements */
  --theme-color-divider-light: var(--color-pew-neutrals-20);
  --theme-color-divider-heavy: var(--color-pure-white);
  --theme-color-focus-outline: var(--color-pure-white);
  --theme-color-dropdown-text: var(--color-pure-white);
  --theme-color-dropdown-background: var(--color-pew-blue-40);
  --theme-color-dropdown-border: var(--color-pew-blue-40);

  /* Buttons */
  --theme-color-btn-primary-text: var(--color-pew-blue-40);
  --theme-color-btn-primary-background: var(--color-pure-white);
  --theme-color-btn-primary-border: var(--color-pure-white);
  --theme-color-btn-primary-text-hover: var(--color-pew-blue-40);
  --theme-color-btn-primary-background-hover: var(--color-pure-white);
  --theme-color-btn-primary-border-hover: var(--color-pure-white);
  --theme-color-btn-primary-text-disabled: var(--color-pew-neutrals-30);
  --theme-color-btn-primary-background-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-primary-border-disabled: var(--color-pew-neutrals-10);
  --theme-color-btn-secondary-text: var(--color-pure-white);
  --theme-color-btn-secondary-background: var(--color-pew-blue-40);
  --theme-color-btn-secondary-border: var(--color-pure-white);
  --theme-color-btn-secondary-text-hover: var(--color-pew-blue-40);
  --theme-color-btn-secondary-background-hover: var(--color-pure-white);
  --theme-color-btn-secondary-border-hover: var(--color-pure-white);
  --theme-color-btn-secondary-text-disabled: var(--color-pew-neutrals-20);
  --theme-color-btn-secondary-background-disabled: var(--color-pew-blue-40);
  --theme-color-btn-secondary-border-disabled: var(--color-pew-neutrals-20);
}

.theme--partial-white-background {
  --theme-color-component-border: var(--color-pew-neutrals-20);
  --theme-color-background-primary: var(--color-pure-white);
}

:root {
  --z-modal: 100;
  --z-sticky-content: 90;
  --z-dropdown: 80;
  --g-container-content-width: 1224px;
  --g-container-bleed-width: 1440px;
  --g-container-70-width: 808px;
  --g-site-gutter: 24px;
  --g-container-spacing: 24px;
  --g-container-max-width: var(--g-container-content-width);
  --g-grid-gap: 24px;
  --g-grid-count: 2;
  --g-component-padding: 24px;
}

@media (min-width: 56.9375rem) {
  :root {
    --g-site-gutter: 40px;
    --g-grid-count: 12;
    --g-grid-gap: 24px;
    --g-container-spacing: 40px;
  }
}

/* Global */

/* Roboto Serif */

@font-face {
    font-family: "Roboto Serif";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/RobotoSerif20pt-Regular.woff2) format("woff2")
}

@font-face {
    font-family: "Roboto Serif";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/RobotoSerif20pt-Medium.woff2) format("woff2")
}

@font-face {
    font-family: "Roboto Serif";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/RobotoSerif20pt-Bold.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/Lato-Regular.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/Lato-Italic.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/Lato-Bold.woff2) format("woff2")
}

@font-face {
    font-family: Lato;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(https://www.pew.org/assets/Pew/assets/fonts/Lato-Black.woff2) format("woff2")
}

:root {
  --font-system: system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  --font-primary: "Lato", var(--font-system);
  --font-secondary: "Roboto Serif", serif;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --font-weight-black: 900;
}

.text-body {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  line-height: 1.428;
  font-size: clamp(1rem, 0.875rem + 0.6667cqw, 1.125rem);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

@container (min-width: 37.5rem) {
  .text-body {
    line-height: 1.55;
  }
}

.text-body-lg {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-body-sm {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.428;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-body-xs {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-h1 {
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: clamp(2.5rem, 1.5rem + 5.3333cqw, 3.5rem);
  line-height: 1.2;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

@container (min-width: 450px) {
  .text-h1 {
    line-height: 1.179;
  }
}

.text-h1 strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-h2 {
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.75rem, 1rem + 4cqw, 2.5rem);
  line-height: 1.2;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

@container (min-width: 450px) {
  .text-h2 {
    line-height: 1.25;
  }
}

.text-h2 strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-h3 {
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.5rem, 1.25rem + 1.3333cqw, 1.75rem);
  line-height: 1.33;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

@container (min-width: 450px) {
  .text-h3 {
    line-height: 1.25;
  }
}

.text-h3 strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-h4 {
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.125rem, 1rem + 0.6667cqw, 1.25rem);
  line-height: 1.33;
  font-weight: 500;
  font-weight: var(--font-weight-medium);
}

@container (min-width: 450px) {
  .text-h4 {
    line-height: 1.3;
  }
}

.text-h4 strong {
  font-weight: 500;
  font-weight: var(--font-weight-medium);
}

.text-h5 {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

@container (min-width: 450px) {
  .text-h5 {
    letter-spacing: 0.01rem;
  }
}

.text-h5 strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-h6 {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 900;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  letter-spacing: 0.08rem;
}

.text-h6 strong {
  font-weight: 900;
  font-weight: var(--font-weight-black);
}

.text-super-graphic {
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: 5rem;
  line-height: 0.825;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-super-graphic strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-xl {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.5rem;
  line-height: 1.25;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-xl-bold {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.5rem;
  line-height: 1.25;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-ui-label-lg {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.25rem;
  line-height: 1.25;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-lg-bold {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.25rem;
  line-height: 1.25;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-ui-label-md {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.125rem;
  line-height: 1.33;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-md-bold {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1.125rem;
  line-height: 1.33;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-ui-label-sm {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-sm-bold {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-ui-label-xs {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.875rem;
  line-height: 1.28;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-xs-bold {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.875rem;
  line-height: 1.28;
  letter-spacing: 0.05rem;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-ui-label-xxs {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.75rem;
  line-height: 1.167;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.text-ui-label-xxs-bold {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.75rem;
  line-height: 1.167;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-pullquote {
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.5rem, 1.25rem + 1.3333cqw, 1.75rem);
  line-height: 1.5;
  font-weight: 500;
  font-weight: var(--font-weight-medium);
}

.text-caption {
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.625rem;
  line-height: 1.6;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.text-eyebrow {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.75rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.text-navigation {
  --underline-thickness: 1px;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.75rem;
  line-height: 1.167;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

*,
::before,
::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  overflow-x: hidden;
  overscroll-behavior: none;
  scroll-behavior: smooth;
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

html:has(dialog[open]) {
  overflow: hidden;
}

body {
  position: relative;
  color: var(--theme-color-text-primary);
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: clamp(1rem, 0.875rem + 0.6667cqw, 1.125rem);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1.428;
  line-height: 1.5;
  background: var(--theme-color-background-primary);
  -webkit-font-smoothing: antialiased;
}

@container (min-width: 37.5rem) {
  body {
    line-height: 1.55;
  }
}

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

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

dialog {
  color: inherit;
}

a {
  text-decoration: none;
  color: var(--theme-color-text-primary);
}

:where(:not(.rich-text)) * {
  margin: 0;
}

:where(ul[role="list"], ol[role="list"]) {
  padding: 0;
  list-style: none;
}

/* Icon */

.pew-icon {
  display: inline-block;
  height: 32px;
  height: var(--icon-size, 32px);
  width: 32px;
  width: var(--icon-size, 32px);
  vertical-align: middle;
  fill: currentcolor;
}

.pew-icon--xs {
  --icon-size: 16px;
}

.pew-icon--sm {
  --icon-size: 24px;
}

.pew-icon--md {
  --icon-size: 32px;
}

.pew-icon--lg {
  --icon-size: 48px;
}

.pew-icon--xl {
  --icon-size: 64px;
}

.pew-icon--twitterx {
  --icon-size: 1em;
}

.visually-hidden:not(:focus, :focus-within, :active) {
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
}

/* Global Header */

.layout-header {
  --global-header-padding: 24px;
  position: sticky;
  z-index: calc(90 + 1);
  z-index: calc(var(--z-sticky-content) + 1);
  top: -1px;
  background-color: var(--theme-color-background-primary);
}

.layout-header.is-sticky {
  padding-top: 1px;
  border-bottom: 1px solid var(--theme-color-divider-light);
}

.layout-header .header-skip-link {
  z-index: 1;
  max-width: calc(1224px + 24px * 2);
  max-width: calc(var(--g-container-max-width) + var(--g-site-gutter) * 2);
  overflow: visible;
  margin: 0 auto;
  padding-left: 24px;
  padding-left: var(--g-site-gutter);
  text-align: left;
  isolation: isolate;
}

.layout-header .header-skip-link .btn {
  margin-inline: 0;
  margin-block-end: 0;
}

.global-header {
  --global-header-height: 85px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: repeat(var(--g-grid-count), 1fr);
  grid-gap: 24px;
  grid-gap: var(--g-grid-gap);
  gap: 24px;
  gap: var(--g-grid-gap);
  max-width: calc(1224px + 24px * 2);
  max-width: calc(var(--g-container-max-width) + var(--g-site-gutter) * 2);
  margin-inline: auto;
  padding-inline: 24px;
  padding-inline: var(--g-site-gutter);
}

.global-header__wrapper {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .global-header__wrapper {
    grid-column: 1 / calc(2 + 1);
    grid-column: 1 / calc(var(--g-grid-count) + 1);
  }
}

.global-header__inner-wrapper {
  display: flex;
  background-color: var(--theme-color-background-primary);
}

@media (max-width: 67.5rem) {
  .global-header__inner-wrapper {
    align-items: center;
    justify-content: flex-end;
    padding-block: var(--global-header-padding);
  }

  .mobile-nav-open .global-header__inner-wrapper {
    border-bottom: 1px solid var(--theme-color-divider-heavy);
  }
}

@media (min-width: 67.5625rem) {
  .global-header__inner-wrapper {
    display: grid;
    align-items: center;
    grid-gap: 1rem;
    gap: 1rem;
    grid-template-columns: 1fr auto 1fr;
  }
}

.global-header__primary-nav {
  padding-inline-start: 8px;
}

@media (max-width: 67.5rem) {
  .global-header__primary-nav {
    order: 3;
  }
}

@media (min-width: 67.5625rem) {
  .global-header__primary-nav {
    padding-inline-start: 0;
    white-space: nowrap;
  }
}

@media (max-width: 500px) {
  .global-header__logo-link {
    order: 1;
    margin-inline-end: auto;
 margin-right: auto;
  }
}

@media (min-width: 501px) and (max-width: 67.5rem) {
  .global-header__logo-link {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}

.global-header__logo {
  min-width: 5.625rem;
  height: auto;
}

.global-header__search-menu {
  display: flex;
  justify-content: flex-end;
}

@media (max-width: 67.5rem) {
  .global-header__search-menu {
    order: 2;
    padding-inline-end: 8px;
    border-inline-end: 1px solid var(--theme-color-divider-heavy);
  }
}

.global-header--microsite .global-header__inner-wrapper {
  display: flex;
  justify-content: space-between;
}

.global-header--microsite .global-header__primary-nav {
  order: 1;
}

.global-header--microsite .global-header__logo-link {
  order: 0;
  margin-inline-end: 0;
}

.global-header--microsite .global-header__search-menu {
  display: none;
}

.mobile-nav-open {
  overflow: hidden;
}

@media (min-width: 67.5625rem) {
  .nav-item {
    padding-block: var(--global-header-padding);
  }
}

.nav-item__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-block: 1.75rem;
  padding-inline: 0;
  color: var(--theme-color-text-primary);
  font-size: 1.125rem;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.17;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: none;
  background: none;
  cursor: pointer;
}

@media (min-width: 67.5625rem) {
  .nav-item__button,
  .nav-item__link {
    padding-block: 1rem;
    font-size: 0.75rem;
  }
}

@media (max-width: 67.5rem) {
  .nav-item__link {
    border-bottom: 1px solid var(--theme-color-divider-light);
  }
}

@media (min-width: 67.5625rem) {
  .nav-item {
    --underline-thickness: 1px;
    --underline-color: transparent;
    --link-animation-duration: 0s;
    gap: 0.3125rem;
    width: auto;
    padding-block: 0.6125rem;
    text-decoration: none;
  }

  .nav-item__button:not(.nav-item__button:has(> span)) {
    background: linear-gradient(to right, currentcolor, currentcolor);
    background: linear-gradient(
      to right,
      var(--underline-color, currentcolor),
      var(--underline-color, currentcolor)
    );
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100% 2px;
    background-size: 100% var(--underline-thickness, 2px);
  }

  .nav-item__button:not(.nav-item__button:has(> span)):hover,
  .nav-item__button:not(.nav-item__button:has(> span)):focus {
    background-position: center bottom;
    animation: 500ms link-hover ease;
    animation: var(--link-animation-duration, 500ms) link-hover ease;
  }

  .nav-item__button:has(> span) > span {
    background: linear-gradient(to right, currentcolor, currentcolor);
    background: linear-gradient(
      to right,
      var(--underline-color, currentcolor),
      var(--underline-color, currentcolor)
    );
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100% 2px;
    background-size: 100% var(--underline-thickness, 2px);
  }

  .nav-item__button:has(> span):hover > span,
  .nav-item__button:has(> span):focus > span {
    background-position: center bottom;
    animation: 500ms link-hover ease;
    animation: var(--link-animation-duration, 500ms) link-hover ease;
  }

  .nav-item__button:hover,
  .nav-item__button:focus {
    --underline-color: currentcolor;
  }

  .nav-item:not(.is-open) .nav-item__button:focus span {
    background-size: 0;
    animation: none;
  }

  .nav-item.is-open .nav-item__button {
    --underline-color: currentcolor;
    background-position: left bottom;
    animation: 0ms link-hover ease;
  }
}

@media (min-width: 67.5625rem) {
  .primary-nav {
    white-space: nowrap;
  }
}

.primary-nav__menu-button {
  padding: 8px 4px;
  line-height: 0;
  border: none;
  background: none;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@media (min-width: 67.5625rem) {
  .primary-nav__menu-button {
    display: none;
  }
}

.primary-nav__nav {
  background-color: var(--theme-color-background-primary);
}

@media (max-width: 67.5rem) {
  .primary-nav__nav {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 100vh;
    overflow: auto;
    visibility: hidden;
    opacity: 0;
    padding-top: var(--global-header-height);
    transition: opacity 200ms;
  }

  .primary-nav--open .primary-nav__nav {
    z-index: -1;
    visibility: visible;
    opacity: 1;
  }
}

@media (max-width: 67.5rem) {
  .primary-nav__list {
    max-width: calc(808px + 24px * 2);
    max-width: calc(808px + var(--g-site-gutter) * 2);
    padding-inline: 24px;
    padding-inline: var(--g-site-gutter);
    margin-inline: auto;
    padding-top: 16px;
    padding-bottom: 16px;
  }
}

@media (min-width: 67.5625rem) {
  .primary-nav__list {
    display: flex;
    gap: 24px;
    padding: 0;
    list-style: none;
  }
}

.primary-nav__menu-icon {
  position: relative;
  display: inline-block;
  width: 24px;
  height: 16px;
}

.primary-nav__menu-icon-inner {
  position: absolute;
  top: calc(50% - 0.5px);
  display: block;
  height: 3px;
  width: 100%;
  margin-top: -1.5px;
  background-color: var(--theme-color-text-primary);
  transition-property: transform;
  transition-duration: 0.15s;
  transition-duration: 75ms;
  transition-timing-function: ease;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.primary-nav__menu-icon-inner::before,
.primary-nav__menu-icon-inner::after {
  position: absolute;
  display: block;
  height: 3px;
  width: 100%;
  background-color: var(--theme-color-text-primary);
  content: "";
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.primary-nav__menu-icon-inner::before {
  top: -8px;
  transition: top 75ms ease 0.12s, opacity 75ms ease;
}

.primary-nav__menu-icon-inner::after {
  bottom: -8px;
  transition: bottom 75ms ease 0.12s,
    transform 75ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.primary-nav__menu-button[aria-expanded="true"] .primary-nav__menu-icon-inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(45deg);
}

.primary-nav__menu-button[aria-expanded="true"]
  .primary-nav__menu-icon-inner::before {
  top: 0;
  opacity: 0;
  transition: top 75ms ease, opacity 75ms ease 0.12s;
}

.primary-nav__menu-button[aria-expanded="true"]
  .primary-nav__menu-icon-inner::after {
  bottom: 0;
  transition: bottom 75ms ease,
    transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
  transform: rotate(-90deg);
}

/* Container */
.container {
  --g-sticky-offset: calc(
    var(--global-header-height) + var(--in-page-navigation-height, 0px) +
      var(--section-navigation-height, 0px) + var(--g-container-spacing)
  );
  position: relative;
  color: var(--theme-color-text-primary);
}

.container--full-width,
.container--100-wide,
.container--30-70,
.container--50-50,
.container--70-30,
.container--70,
.container--25-50-25 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: repeat(var(--g-grid-count), 1fr);
  grid-gap: 24px;
  grid-gap: var(--g-grid-gap);
  gap: 24px;
  gap: var(--g-grid-gap);
  max-width: calc(1224px + 24px * 2);
  max-width: calc(var(--g-container-max-width) + var(--g-site-gutter) * 2);
  margin-inline: auto;
  padding-inline: 24px;
  padding-inline: var(--g-site-gutter);
}

.container--full-width .container--full-width,
.container--full-width .container--100-wide,
.container--full-width .container--30-70,
.container--full-width .container--50-50,
.container--full-width .container--70-30,
.container--full-width .container--70,
.container--full-width .container--25-50-25,
.container--100-wide .container--full-width,
.container--100-wide .container--100-wide,
.container--100-wide .container--30-70,
.container--100-wide .container--50-50,
.container--100-wide .container--70-30,
.container--100-wide .container--70,
.container--100-wide .container--25-50-25,
.container--30-70 .container--full-width,
.container--30-70 .container--100-wide,
.container--30-70 .container--30-70,
.container--30-70 .container--50-50,
.container--30-70 .container--70-30,
.container--30-70 .container--70,
.container--30-70 .container--25-50-25,
.container--50-50 .container--full-width,
.container--50-50 .container--100-wide,
.container--50-50 .container--30-70,
.container--50-50 .container--50-50,
.container--50-50 .container--70-30,
.container--50-50 .container--70,
.container--50-50 .container--25-50-25,
.container--70-30 .container--full-width,
.container--70-30 .container--100-wide,
.container--70-30 .container--30-70,
.container--70-30 .container--50-50,
.container--70-30 .container--70-30,
.container--70-30 .container--70,
.container--70-30 .container--25-50-25,
.container--70 .container--full-width,
.container--70 .container--100-wide,
.container--70 .container--30-70,
.container--70 .container--50-50,
.container--70 .container--70-30,
.container--70 .container--70,
.container--70 .container--25-50-25,
.container--25-50-25 .container--full-width,
.container--25-50-25 .container--100-wide,
.container--25-50-25 .container--30-70,
.container--25-50-25 .container--50-50,
.container--25-50-25 .container--70-30,
.container--25-50-25 .container--70,
.container--25-50-25 .container--25-50-25 {
  padding-inline: 0;
}

.container--bleed > * {
  margin-block-start: 24px;
  margin-block-start: var(--g-container-spacing);
}

.container--bleed > *:first-child {
  margin-block-start: 0;
}

.container--bleed.container--has-background {
  padding: 24px;
  padding: var(--g-component-padding);
  background-color: var(--theme-color-background-primary);
  background-image: var(--container-bg-image);
  background-repeat: no-repeat;
  background-size: cover;
}

@media (max-width: 56.875rem) {
  .container--bleed.container--has-background > * {
    --g-grid-gap: 8px;
  }
}

@media (min-width: 56.9375rem) {
  .container--bleed.container--has-background {
    padding-inline: 0;
  }
}

.container--full-width > .container__col,
.container--100-wide > .container__col {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container--full-width > .container__col,
  .container--100-wide > .container__col {
    grid-column: 1 / calc(2 + 1);
    grid-column: 1 / calc(var(--g-grid-count) + 1);
  }
}

.container__wrapper {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
  background-image: var(--container-bg-image);
  background-repeat: no-repeat;
  background-size: cover;
}

@media (min-width: 56.9375rem) {
  .container__wrapper {
    grid-column: 1 / calc(2 + 1);
    grid-column: 1 / calc(var(--g-grid-count) + 1);
  }
}

.container--70 > .container__wrapper {
  grid-column: 1/-1;
}

/* If container has background, .container__wrapper will be in charge of padding
** while maintaining max content width
*/
.container--has-background > .container__wrapper {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
  padding: 24px;
  padding: var(--g-component-padding);
  background-color: var(--theme-color-background-primary);
}

@media (min-width: 56.9375rem) {
  .container--has-background > .container__wrapper {
    grid-column: 1 / calc(2 + 1);
    grid-column: 1 / calc(var(--g-grid-count) + 1);
  }
}

@media (max-width: 56.875rem) {
  .container--has-background > .container__wrapper {
    grid-column: 1 / calc(2 + 2);
    grid-column: 1 / calc(var(--g-grid-count) + 2);
    padding-inline: 24px;
    padding-inline: var(--g-grid-gap);
  }
}

@media (max-width: 56.875rem) {
  .container--has-background .container__col {
    grid-column: 1 / calc(2 + 2);
    grid-column: 1 / calc(var(--g-grid-count) + 2);
  }
}

.container--exclude-padding {
  --g-component-padding: 0;
}

.container--100-wide {
  --g-container-max-width: var(--g-container-bleed-width);
}

.container--70 {
  --g-container-max-width: var(--g-container-70-width);
  gap: 0;
}

.container__col {
  position: relative;
  container-name: column;
  container-type: inline-size;
}

.container__col > * {
  margin-block-start: 24px;
  margin-block-start: var(--g-container-spacing);
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: clamp(1rem, 0.875rem + 0.6667cqw, 1.125rem);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1.428;
}

@container (min-width: 37.5rem) {
  .container__col > * {
    line-height: 1.55;
  }
}

.container__col > *:first-child {
  margin-block-start: 0;
}

.container__col--30-left {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--30-left {
    grid-column: 1 / calc(1 + 4);
  }
}

.container__col--70-right {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--70-right {
    grid-column: calc(1 + 4) / calc(2 + 1);
    grid-column: calc(1 + 4) / calc(var(--g-grid-count) + 1);
  }
}

.container__col--50-left {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--50-left {
    grid-column: 1 / calc(1 + 6);
  }
}

.container__col--50-center {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--50-center {
    grid-column: calc(1 + 1 + 2) / calc(1 + 6 + 1 + 2);
  }
}

.container__col--50-right {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--50-right {
    grid-column: calc(1 + 6) / calc(2 + 1);
    grid-column: calc(1 + 6) / calc(var(--g-grid-count) + 1);
  }
}

.container__col--70-left {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--70-left {
    grid-column: 1 / calc(1 + 8);
  }
}

.container__col--30-right {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--30-right {
    grid-column: calc(1 + 8) / calc(2 + 1);
    grid-column: calc(1 + 8) / calc(var(--g-grid-count) + 1);
  }
}

.container__col--25-left {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--25-left {
    grid-column: 1 / calc(1 + 2 + 1);
  }
}

@media (min-width: 73.1875rem) {
  .container__col--25-left {
    grid-column: 1 / calc(1 + 2);
  }
}

.container__col--25-right {
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
}

@media (min-width: 56.9375rem) {
  .container__col--25-right {
    grid-column: calc(1 + 2 + 6 + 2 - 1) / calc(1 + 6 + 2 + 4);
  }
}

@media (min-width: 73.1875rem) {
  .container__col--25-right {
    grid-column: calc(1 + 2 + 6 + 2) / calc(1 + 6 + 2 + 4);
  }
}

.container--show-hr {
  margin-block-start: 0;
  padding-block-start: 24px;
  padding-block-start: var(--g-container-spacing);
}

.container--show-hr::before {
  position: absolute;
  top: calc(24px * -1);
  top: calc(var(--g-container-spacing) * -1);
  left: 50%;
  height: 1px;
  width: calc(100% - 24px * 2);
  width: calc(100% - var(--g-site-gutter) * 2);
  max-width: 1224px;
  max-width: var(--g-container-max-width);
  margin-block-start: 24px;
  margin-block-start: var(--g-container-spacing);
  background-color: var(--theme-color-divider-light);
  content: "";
  transform: translateX(-50%);
}

.container--show-hr.container--bleed::before {
  left: 0;
  max-width: 100%;
  width: 100%;
  transform: none;
}

.container--show-hr.container--has-background {
  margin-block-start: calc(24px * 2);
  margin-block-start: calc(var(--g-container-spacing) * 2);
  padding-block: 0;
}

.container--show-hr.container--has-background::before {
  top: calc(24px * 2 * -1);
  top: calc(var(--g-container-spacing) * 2 * -1);
}

@media (min-width: 56.9375rem) {
  .container--show-vr .container__col:first-child {
    padding-inline-end: calc(24px + 4px);
    padding-inline-end: calc(var(--g-grid-gap) + 4px);
  }
}

@media (min-width: 56.9375rem) {
  .container--show-vr .container__col:first-child::after {
    position: absolute;
    top: 0;
    right: calc(24px / 2 * -1);
    right: calc(var(--g-grid-gap) / 2 * -1);
    bottom: 0;
    width: 1px;
    background-color: var(--theme-color-divider-light);
    content: "";
  }
}

@media (min-width: 56.9375rem) {
  .container--show-vr .container__col:last-child {
    margin-inline-start: calc(24px + 4px);
    margin-inline-start: calc(var(--g-grid-gap) + 4px);
  }
}

.container--include-bottom-margin {
  margin-block-end: 24px;
  margin-block-end: var(--g-container-spacing);
}

.container--sticky-left .container__col--inner-left {
  position: sticky;
  top: var(--g-sticky-offset);
  max-height: max-content;
  max-height: max-content;
}

.container--sticky-right .container__col--inner-right {
  position: sticky;
  top: var(--g-sticky-offset);
  max-height: max-content;
  max-height: max-content;
}

/* Global Footer */
.global-footer {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: repeat(var(--g-grid-count), 1fr);
  grid-gap: 24px;
  grid-gap: var(--g-grid-gap);
  gap: 24px;
  gap: var(--g-grid-gap);
  max-width: calc(1224px + 24px * 2);
  max-width: calc(var(--g-container-max-width) + var(--g-site-gutter) * 2);
  margin-inline: auto;
  padding-inline: 24px;
  padding-inline: var(--g-site-gutter);
  padding-block: 64px;
  border-block-start: 1px solid var(--theme-color-divider-light);
}

.global-footer__container {
  display: flex;
  flex-direction: column;
  grid-column: 1 / calc(2 + 1);
  grid-column: 1 / calc(var(--g-grid-count) + 1);
  gap: 32px;
}

@media (min-width: 56.9375rem) {
  .global-footer__container {
    grid-column: 1 / calc(2 + 1);
    grid-column: 1 / calc(var(--g-grid-count) + 1);
  }
}

.global-footer__logo-container {
  max-height: 21.5px;
  width: 100%;
  max-width: max-content;
  max-width: max-content;
}

.global-footer__logo-container .global-footer__logo {
  fill: currentcolor;
}

.global-footer__columns {
  display: grid;
  grid-gap: 56px;
  gap: 56px;
}

@media (min-width: 48.8125rem) {
  .global-footer__columns {
    grid-template-columns: repeat(3, minmax(auto, max-content));
  }
}

@media (min-width: 73.1875rem) {
  .global-footer__columns {
    grid-template-columns:
      minmax(229px, 289px) repeat(3, minmax(auto, max-content))
      241px;
    gap: 60px;
  }
}

.global-footer__column {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.global-footer__column:last-child {
  gap: 32px;
}

.global-footer__column:nth-child(1),
.global-footer__column:nth-child(2),
.global-footer__column:last-child {
  grid-column: span 2;
}

@media (min-width: 29.4375rem) {
  .global-footer__column:nth-child(2),
  .global-footer__column:last-child {
    grid-column: span 1;
  }

  .global-footer__column:last-child {
    gap: 12px;
  }
}

@media (min-width: 73.1875rem) {
  .global-footer__column:nth-child(1),
  .global-footer__column:nth-child(2) {
    grid-column: span 1;
  }
}

.global-footer__section-title {
  margin-block-end: 4px;
  font-weight: 900;
  font-weight: var(--font-weight-black);
}

.footer-navigation-links {
  display: inline;
  margin-left: 2px;
}

.global-footer__navigation-link {
  --underline-thickness: 1px;
  max-width: max-content;
  max-width: max-content;
  font-family: Lato, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu,
    Cantarell, "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-family: "Roboto Serif", serif;
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1.5;
}

.footer-social-links {
  --icon-size: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-block-start: 8px;
}

.footer-social-links__links {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--theme-color-text-primary);
}

.footer-social-links__links a {
  display: flex;
  transition: 150ms ease-in;
}

.footer-social-links__links a:hover {
  transform: translateY(-3px);
  transition: 150ms ease-out;
}

/* Link */

@keyframes link-hover {
  0% {
    background-size: 0% 2px;
    background-size: 0% var(--underline-thickness, 2px);
  }

  100% {
    background-size: 100% 2px;
    background-size: 100% var(--underline-thickness, 2px);
  }
}

.link {
  text-decoration: none;
}

.link:not(.link:has(> span)) {
  background: linear-gradient(to right, currentcolor, currentcolor);
  background: linear-gradient(
    to right,
    var(--underline-color, currentcolor),
    var(--underline-color, currentcolor)
  );
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% 2px;
  background-size: 100% var(--underline-thickness, 2px);
}

.link:not(.link:has(> span)):hover,
.link:not(.link:has(> span)):focus {
  background-position: center bottom;
  animation: 500ms link-hover ease;
  animation: var(--link-animation-duration, 500ms) link-hover ease;
}

.link:has(> span) > span {
  background: linear-gradient(to right, currentcolor, currentcolor);
  background: linear-gradient(
    to right,
    var(--underline-color, currentcolor),
    var(--underline-color, currentcolor)
  );
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% 2px;
  background-size: 100% var(--underline-thickness, 2px);
}

.link:has(> span):hover > span,
.link:has(> span):focus > span {
  background-position: center bottom;
  animation: 500ms link-hover ease;
  animation: var(--link-animation-duration, 500ms) link-hover ease;
}

.link--without-underline {
  --underline-color: transparent;
  --link-animation-duration: 0s;
}

.link--without-underline:hover,
.link--without-underline:focus {
  --underline-color: currentcolor;
}

.link--icon {
  --icon-size: 1.25em;
  --icon-link-gap: 2px;
}

.link--icon > span {
  margin-inline-end: calc(var(--icon-size) + var(--icon-link-gap));
}

.link--icon > span > svg {
  display: none;
}

.link--icon > span:last-child {
  margin-inline-end: 0;
}

.link--icon > svg {
  display: inline-block;
  height: var(--icon-size);
  width: var(--icon-size);
  margin-inline-start: calc(var(--icon-size) * -1);
  vertical-align: middle;
}

.link--icon-reversed {
  --icon-size: 1.25em;
  --icon-link-gap: 2px;
}

.link--icon-reversed > svg {
  display: inline-block;
  height: var(--icon-size);
  width: var(--icon-size);
  vertical-align: middle;
}

.link--download > svg {
  vertical-align: -0.25em;
}

.link--external {
  --icon-size: 1em;
}

.link--external > svg {
  vertical-align: -0.15em;
}

.link--cta {
  --icon-size: 2.5em;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 0.75rem;
  line-height: 1.33;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 900;
  font-weight: var(--font-weight-black);
}

/* Button */

.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  color: var(--btn-color-text, var(--theme-color-btn-primary-text));
  font-weight: 900;
  font-weight: var(--font-weight-black);
  text-align: center;
  text-transform: uppercase;
  border: 1px solid
    var(--btn-color-border, var(--theme-color-btn-primary-border));
  background-color: var(
    --btn-color-background,
    var(--theme-color-btn-primary-background)
  );
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@media (prefers-reduced-motion: no-preference) {
  .btn {
    transition: color 0.25s, background 0.25s, border-color 0.25s;
  }
}

.btn:hover {
  color: var(--btn-color-text-hover, var(--theme-color-btn-primary-text-hover));
  background: var(
    --btn-color-background-hover,
    var(--theme-color-btn-primary-background-hover)
  );
  border-color: var(
    --btn-color-border-hover,
    var(--theme-color-btn-primary-border-hover)
  );
}

.btn[disabled] {
  color: var(
    --btn-color-text-disabled,
    var(--theme-color-btn-primary-text-disabled)
  );
  background-color: var(
    --btn-color-background-disabled,
    var(--theme-color-btn-primary-background-disabled)
  );
  border-color: var(
    --btn-color-border-disabled,
    var(--theme-color-btn-primary-border-disabled)
  );
  cursor: not-allowed;
}

.btn--variant-primary {
  --btn-color-text: var(--theme-color-btn-primary-text);
  --btn-color-background: var(--theme-color-btn-primary-background);
  --btn-color-border: var(--theme-color-btn-primary-border);
  --btn-color-text-hover: var(--theme-color-btn-primary-text-hover);
  --btn-color-background-hover: var(--theme-color-btn-primary-background-hover);
  --btn-color-border-hover: var(--theme-color-btn-primary-border-hover);
  --btn-color-text-disabled: var(--theme-color-btn-primary-text-disabled);
  --btn-color-background-disabled: var(
    --theme-color-btn-primary-background-disabled
  );
  --btn-color-border-disabled: var(--theme-color-btn-primary-border-disabled);
}

.btn--variant-secondary {
  --btn-color-text: var(--theme-color-btn-secondary-text);
  --btn-color-background: var(--theme-color-btn-secondary-background);
  --btn-color-border: var(--theme-color-btn-secondary-border);
  --btn-color-text-hover: var(--theme-color-btn-secondary-text-hover);
  --btn-color-background-hover: var(
    --theme-color-btn-secondary-background-hover
  );
  --btn-color-border-hover: var(--theme-color-btn-secondary-border-hover);
  --btn-color-text-disabled: var(--theme-color-btn-secondary-text-disabled);
  --btn-color-background-disabled: var(
    --theme-color-btn-secondary-background-disabled
  );
  --btn-color-border-disabled: var(--theme-color-btn-secondary-border-disabled);
}

.btn--variant-icon {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: none;
  background-color: transparent;
  transition: 150ms ease-in;
  cursor: pointer;
}

.btn--variant-icon:hover {
  transform: translateY(-3px);
  transition: 150ms ease-out;
}

.btn--size-sm {
  padding: 0.7em 1.6em;
  font-size: 0.625rem;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.btn--size-lg {
  padding: 1em 1.33em;
  font-size: 0.75rem;
  line-height: 1.33;
  letter-spacing: 0.08em;
}

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

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

.placeholder-component {
  display: grid;
  place-items: center;
  height: 100%;
  height: var(--height, 100%);
  padding: 24px;
  padding: var(--g-component-padding);
  text-align: left;
  border: 2px dashed var(--theme-color-text-secondary);
  background-color: var(--theme-color-background-primary);
}

.rich-text-field:not(.rich-text) {
  --rte-spacing: 16px;
}
.rich-text-field a:not(.rich-text__embed a) {
  word-break: break-word;
}
.rich-text-field > * + * {
  margin-block-start: var(--rte-spacing);
}
.rich-text-field > p a, .rich-text-field > a, .rich-text-field > ul a, .rich-text-field > ol a {
  --underline-thickness: 1px;
}
.rich-text-field h1:not(.rich-text__embed h1) {
  font-family: "Roboto Serif", ui-serif, "Georgia", "Cambria",
    "Times New Roman", "Times", serif;
  font-family: var(--font-secondary);
  font-size: clamp(2.5rem, 1.5rem + 5.3333cqw, 3.5rem);
  line-height: 1.2;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
@container (min-width: 450px) {
  .rich-text-field h1:not(.rich-text__embed h1) {
    line-height: 1.179;
  }
}
.rich-text-field h1:not(.rich-text__embed h1) strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
.rich-text-field h2:not(.rich-text__embed h2) {
  font-family: "Roboto Serif", ui-serif, "Georgia", "Cambria",
    "Times New Roman", "Times", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.75rem, 1rem + 4cqw, 2.5rem);
  line-height: 1.2;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
@container (min-width: 450px) {
  .rich-text-field h2:not(.rich-text__embed h2) {
    line-height: 1.25;
  }
}
.rich-text-field h2:not(.rich-text__embed h2) strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
.rich-text-field h3:not(.rich-text__embed h3) {
  font-family: "Roboto Serif", ui-serif, "Georgia", "Cambria",
    "Times New Roman", "Times", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.5rem, 1.25rem + 1.3333cqw, 1.75rem);
  line-height: 1.33;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
@container (min-width: 450px) {
  .rich-text-field h3:not(.rich-text__embed h3) {
    line-height: 1.25;
  }
}
.rich-text-field h3:not(.rich-text__embed h3) strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
.rich-text-field h4:not(.rich-text__embed h4) {
  font-family: "Roboto Serif", ui-serif, "Georgia", "Cambria",
    "Times New Roman", "Times", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.125rem, 1rem + 0.6667cqw, 1.25rem);
  line-height: 1.33;
  font-weight: 500;
  font-weight: var(--font-weight-medium);
}
@container (min-width: 450px) {
  .rich-text-field h4:not(.rich-text__embed h4) {
    line-height: 1.3;
  }
}
.rich-text-field h4:not(.rich-text__embed h4) strong {
  font-weight: 500;
  font-weight: var(--font-weight-medium);
}
.rich-text-field h5:not(.rich-text__embed) {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
@container (min-width: 450px) {
  .rich-text-field h5:not(.rich-text__embed) {
    letter-spacing: 0.01rem;
  }
}
.rich-text-field h5:not(.rich-text__embed) strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
.rich-text-field h6:not(.rich-text__embed h6) {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 900;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  letter-spacing: 0.08rem;
}
.rich-text-field h6:not(.rich-text__embed h6) strong {
  font-weight: 900;
  font-weight: var(--font-weight-black);
}
.rich-text-field ul:not(.rich-text__embed ul),
.rich-text-field ol:not(.rich-text__embed ol) {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  line-height: 1.428;
  font-size: clamp(1rem, 0.875rem + 0.6667cqw, 1.125rem);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  padding-inline-start: 0;
  margin-block-start: 8px;
}
@container (min-width: 37.5rem) {
  .rich-text-field ul:not(.rich-text__embed ul),
  .rich-text-field ol:not(.rich-text__embed ol) {
    line-height: 1.55;
  }
}
.rich-text-field ul:not(.rich-text__embed ul) li,
.rich-text-field ol:not(.rich-text__embed ol) li {
  margin-block-start: 8px;
  list-style-type: inherit;
}
.rich-text-field ul:not(.rich-text__embed ul) {
  list-style-type: disc;
  list-style-position: inside;
}
.rich-text-field ul:not(.rich-text__embed ul) ul {
  list-style-type: circle;
}
.rich-text-field ul:not(.rich-text__embed ul) ul ul {
  list-style-type: square;
}
.rich-text-field ul:not(.rich-text__embed ul) li {
  padding-inline-start: 24px;
  text-indent: -24px;
}
.rich-text-field ol:not(.rich-text__embed ol) li {
  margin-inline-start: 28px;
  padding-inline-start: 8px;
  list-style-position: outside;
}
.rich-text-field ol:not(.rich-text__embed ol) ul li {
  list-style-position: inside;
}
.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a) {
  text-decoration: none;
}
.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):not(.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):has(> span)) {
  background: linear-gradient(to right, currentcolor, currentcolor);
  background: linear-gradient(to right, var(--underline-color, currentcolor), var(--underline-color, currentcolor));
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% 2px;
  background-size: 100% var(--underline-thickness, 2px);
}
.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):not(.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):has(> span)):hover, .rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):not(.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):has(> span)):focus {
  background-position: center bottom;
  animation: 500ms link-hover ease;
  animation: var(--link-animation-duration, 500ms) link-hover ease;
}
.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):has(> span) > span {
  background: linear-gradient(to right, currentcolor, currentcolor);
  background: linear-gradient(to right, var(--underline-color, currentcolor), var(--underline-color, currentcolor));
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% 2px;
  background-size: 100% var(--underline-thickness, 2px);
}
.rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):has(> span):hover > span, .rich-text-field a:not(.button, .pct-modal, .rich-text__embed a):has(> span):focus > span {
  background-position: center bottom;
  animation: 500ms link-hover ease;
  animation: var(--link-animation-duration, 500ms) link-hover ease;
}
.rich-text-field p strong {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.rich-text-field .nowrap {
  display: inline-block;
}
.rich-text-field blockquote:not(.rich-text__embed blockquote) {
  font-family: "Roboto Serif", ui-serif, "Georgia", "Cambria",
    "Times New Roman", "Times", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.5rem, 1.25rem + 1.3333cqw, 1.75rem);
  line-height: 1.5;
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  text-align: center;
}
.rich-text-field blockquote:not(.rich-text__embed blockquote) .source {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  line-height: 1.428;
  font-size: clamp(1rem, 0.875rem + 0.6667cqw, 1.125rem);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-block-start: 40px;
}
@container (min-width: 37.5rem) {
  .rich-text-field blockquote:not(.rich-text__embed blockquote) .source {
    line-height: 1.55;
  }
}
.rich-text-field table:not(.rich-text__embed table) {
  --underline-thickness: 1px;
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.428;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
  color: #000;
  color: var(--theme-color-table-text);
}
.rich-text-field table:not(.rich-text__embed table) * {
  word-break: initial;
}
.rich-text-field table:not(.rich-text__embed table) th,
.rich-text-field table:not(.rich-text__embed table) td {
  padding-block: 16px;
  padding-inline: 12px;
  text-align: left;
  text-wrap: balance;
}
.rich-text-field table:not(.rich-text__embed table) td {
  vertical-align: top;
}
.rich-text-field table:not(.rich-text__embed table) ol,
.rich-text-field table:not(.rich-text__embed table) ul {
  --underline-thickness: 1px;
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
    "Cantarell", "Noto Sans", sans-serif;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.428;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  margin-block-start: 0px;
}
.rich-text-field table:not(.rich-text__embed table) ul li {
  padding-inline-start: 14px;
  text-indent: -20px;
}
.rich-text-field table:not(.rich-text__embed table) li {
  margin-block-start: 0px;
}
.rich-text-field table:not(.rich-text__embed table) li + li {
  margin-block-start: 8px;
}
.rich-text-field table:not(.map-tool table) tbody tr {
  color: #000;
  color: var(--theme-color-table-text-odd);
  background-color: #f0f0f0;
  background-color: var(--theme-color-table-background-odd);
}
.rich-text-field table:not(.map-tool table) tbody tr:nth-child(2n+1) {
  color: #000;
  color: var(--theme-color-table-text-even);
  background-color: #fcfaf5;
  background-color: var(--theme-color-table-background-even);
}
.rich-text-field table:not(.map-tool table) thead tr:first-child:not(:only-child) {
  color: #fff;
  color: var(--theme-color-table-text-header);
  background-color: #333;
  background-color: var(--theme-color-table-background-header);
}
.rich-text-field .stat {
  font-size: 5rem;
  line-height: 1.07;
}
.rich-text-field .unit,
.rich-text-field .text {
  font-size: 0.5em;
}
.rich-text-field .text-stat {
  font-family: "Roboto Serif", ui-serif, "Georgia", "Cambria",
    "Times New Roman", "Times", serif;
  font-family: var(--font-secondary);
  font-size: clamp(1.75rem, 1rem + 4cqw, 2.5rem);
  line-height: 1.2;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}
@container (min-width: 450px) {
  .rich-text-field .text-stat {
    line-height: 1.25;
  }
}
.rich-text-field .text-stat strong {
  font-weight: 400;
  font-weight: var(--font-weight-regular);
}

.rich-text {
  --rte-spacing-sm: 16px;
  --rte-spacing-md: clamp(0.5rem, 0rem + 2.6667cqw, 1rem);
  --rte-spacing-lg: clamp(1.125rem, 1rem + 0.6667vw, 1.25rem);
  --rte-spacing-xl: clamp(2rem, 1.5rem + 2.6667cqw, 2.5rem);
  --rte-spacing: var(--rte-spacing-xl);
  --rte-max-width: 800px;
  max-width: 800px;
  max-width: var(--rte-max-width);
  margin-inline: auto;
  color: #000;
  color: var(--theme-color-text-primary);
  background-color: #fcfaf5;
  background-color: var(--theme-color-background-primary);
}
.container__col--70-left .rich-text, .container__col--70-right .rich-text {
  --rte-max-width: 808px;
}
.rich-text::after {
  display: table;
  clear: both;
  content: "";
}
.rich-text > *:first-child {
  margin-block-start: 0;
}
.rich-text > * + * {
  margin-block-start: var(--rte-spacing);
}
.rich-text h2 + * {
  --rte-spacing: var(--rte-spacing-lg);
}
.rich-text h3 + *,
.rich-text h4 + * {
  --rte-spacing: var(--rte-spacing-md);
}
.rich-text h5 + *,
.rich-text h6 + *,
.rich-text :where(p, section) + :where(ul, ol, p) {
  --rte-spacing: var(--rte-spacing-sm);
}
.rich-text table td > * + * {
  margin-block-start: var(--rte-spacing);
}
.rich-text .pct-aside-right,
.rich-text .pct-aside-left {
  margin-block: var(--rte-spacing-lg);
}
.rich-text .pct-aside-left + p,
.rich-text .pct-aside-right + p {
  margin-block-start: var(--rte-spacing-md);
}
.rich-text h2 + .pct-aside-right + p,
.rich-text h2 + .pct-aside-left + p {
  margin-block-start: var(--rte-spacing-lg);
}
.rich-text h2 + .pct-aside-left,
.rich-text h2 + .pct-aside-right {
  margin-block-start: var(--rte-spacing-lg);
}
.rich-text h3 + .pct-aside-left,
.rich-text h3 + .pct-aside-right,
.rich-text h4 + .pct-aside-left,
.rich-text h4 + .pct-aside-right {
  margin-block-start: var(--rte-spacing-md);
}
.rich-text h4 + .pct-aside-left,
.rich-text h4 + .pct-aside-right,
.rich-text h5 + .pct-aside-left,
.rich-text h5 + .pct-aside-right {
  margin-block-start: var(--rte-spacing-sm);
}
.rich-text .l-rte-pull-left,
.rich-text .l-rte-pull-right {
  margin-block-end: var(--rte-spacing-xl);
}

.rich-text--Center {
  text-align: center;
}

.rich-text--Right {
  text-align: right;
}

.rich-text--Left {
  margin-inline-start: 0;
  text-align: left;
}
.container__col--100 > .rich-text--Left {
  margin-inline-start: auto;
}

.page-header-with-image {
    --gap-space: 24px
}

.container__col--wide .page-header-with-image,.container__col--100 .page-header-with-image {
    --g-site-gutter: 0px;
    --gap-space: 0px
}

.page-header-with-image__container {
    max-width: 1440px;
    max-width: var(--g-container-bleed-width);
    margin-inline:auto}

@media (min-width: 42.5625rem) {
    .page-header-with-image__container {
        display:flex;
        flex-direction: row-reverse;
        justify-content: flex-start
    }
}

.page-header-with-image--no-image .page-header-with-image__container {
    display: block;
    max-width: 1272px;
    max-width: calc(var(--g-container-content-width) + 24px + 24px);
    padding-inline-end:24px}

.page-header-with-image__media {
    position: relative
}

@media (min-width: 42.5625rem) {
    .page-header-with-image__media {
        flex:1 0 60%;
        margin-bottom: 0
    }

    .page-header-with-image__media img {
        height: 100%;
        width: 100%;
        aspect-ratio: unset;
        -o-object-fit: contain;
        object-fit: contain
    }
}

.page-header-with-image__content {
    align-self: center;
    width: 100%;
    padding-block:40px;padding-inline:24px var(--gap-space);padding-inline: var(--g-site-gutter) var(--gap-space)
}

@media (min-width: 42.5625rem) {
    .page-header-with-image__content {
        --gap-space: 24px;
        max-width: 418px;
        max-width: calc(370px + var(--gap-space) + var(--g-site-gutter))
    }
}

@media (min-width: 56.9375rem) {
    .page-header-with-image__content {
        --gap-space: 63px;
        max-width: 587px;
        max-width: calc(500px + var(--gap-space) + var(--g-site-gutter))
    }
}

.page-header-with-image--no-image .page-header-with-image__content {
    width: 100%;
    max-width: 100%
}

.page-header-with-image__breadcrumb .breadcrumb {
    margin-bottom: 8px
}

.page-header-with-image__subtitle {
    max-width: 85ch;
    margin-top: 24px
}


.promo-card {
    container: promo-card/inline-size
}

.promo-card__inner-wrapper {
    display: flex;
    flex-direction: column;
    gap: 8px
}

@container (min-width: 500px) {
    .promo-card__inner-wrapper:has(.promo-card__image-container) {
        display: grid;
        grid-template-columns: repeat(12,1fr);
        align-items: center;
        grid-gap: 24px;
        gap: 24px;
        grid-row-gap: 0;
        row-gap: 0
    }

    .promo-card__inner-wrapper:has(.promo-card__image-container).promo-card--align-top {
        align-items: start
    }

    .promo-card__inner-wrapper:has(.promo-card__image-container).promo-card--align-center {
        align-items: center
    }

    .promo-card__inner-wrapper:has(.promo-card__image-container).promo-card--align-bottom {
        align-items: end
    }
}

@container (min-width: 73.1875rem) {
    .promo-card__inner-wrapper:has(.promo-card__image-container) {
        gap: 64px
    }
}

.promo-card.clickable-card--hovered .promo-card__title span {
    text-decoration: underline;
    text-decoration-color: currentcolor;
    text-decoration-color: var(--underline-color, currentcolor);
    text-decoration-thickness: 2px;
    text-decoration-thickness: var(--underline-thickness, 2px);
    text-underline-offset: .0625em;
    text-underline-offset: var(--underline-offset, .0625em)
}

.promo-card__image-container {
    grid-column: 1/7
}

@container (min-width: 500px) {
    .promo-card--image-small .promo-card__image-container {
        grid-column: 1/4
    }

    .promo-card--image-small.promo-card--image-right .promo-card__image-container {
        grid-column: 10/13
    }
}

.promo-card--image-right .promo-card__image-container {
    grid-column: 7/13
}

.promo-card__image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.promo-card__content {
    position: relative;
    grid-column: 1/13
}

.promo-card__image-container+.promo-card__content {
    grid-column: 7/13
}

@container (min-width: 500px) {
    .promo-card--image-small .promo-card__image-container+.promo-card__content {
        grid-column: 4/13
    }

    .promo-card--image-small.promo-card--image-right .promo-card__image-container+.promo-card__content {
        grid-column: 1/10
    }
}

.promo-card--image-right .promo-card__image-container+.promo-card__content {
    grid-column: 1/7;
    grid-row: 1
}

.promo-card__eyebrow-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-block-end:8px}

.promo-card__eyebrow {
    display: block;
    color: var(--theme-color-text-secondary);
    font-weight: 900;
    font-weight: var(--font-weight-black);
    letter-spacing: .08rem
}

.promo-card__eyebrow span {
    padding-bottom: 1px
}

.promo-card__flag {
    text-align: right
}

.promo-card__title,.promo-card__description {
    margin-block-end:8px}

.promo-card__title {
    display: block;
    color: var(--theme-color-text-primary);
    font-size: clamp(1.25rem,1rem + 2.5cqw,2.5rem)
}

.promo-card__property,.promo-card__description {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3
}

.promo-card__subtitle-container {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-block-end:8px}

.promo-card__subtitle-container .promo-card__subtitle+.promo-card__subtitle {
    position: relative
}

.promo-card__subtitle-container .promo-card__subtitle+.promo-card__subtitle:before {
    position: absolute;
    left: -8px;
    height: 100%;
    width: 1px;
    background-color: var(--theme-color-text-tertiary);
    content: ""
}

.promo-card__subtitle-container .promo-card__subtitle {
    color: var(--theme-color-text-tertiary)
}

.promo-card__subtitle-container .promo-card__subtitle.link {
    color: var(--theme-color-text-secondary)
}

.promo-card__description {
    color: var(--theme-color-text-primary)
}

.promo-card__property {
    margin-block-end:8px;color: var(--theme-color-text-tertiary);
    font-family: "Roboto Serif",ui-serif,Georgia,Cambria,Times New Roman,Times,serif;
    font-family: var(--font-secondary);
    font-weight: 500;
    font-weight: var(--font-weight-medium)
}

.promo-card__metadata {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2px 16px;
    overflow: hidden;
    color: var(--theme-color-text-tertiary)
}

.promo-card__content-type {
    position: relative;
    display: flex;
    align-items: center;
    gap: 4px
}

.promo-card__content-type .pew-icon {
    fill: none
}

.promo-card__content-type:before {
    position: absolute;
    left: -8px;
    height: 100%;
    width: 1px;
    background-color: var(--theme-color-text-tertiary);
    content: ""
}

.promo-card__date {
    position: relative
}

.promo-card__date:before {
    position: absolute;
    left: -8px;
    height: 100%;
    width: 1px;
    background-color: var(--theme-color-text-tertiary);
    content: ""
}

.promo-card__ctaLink {
    margin-block-start:40px}