.open_roles_group .listing_contents { grid-column: 1 / -1; } 
.listing_meta { align-self: center; }                        
.open_roles_layout [hidden]:not(.filter_menu) { display: none !important; }
.main_container:has(.open_roles_layout) { overflow: visible; }
.filter_item { position: relative; } 
.filter { cursor: pointer; }
.filter[data-dropdown], .filter_menu { -webkit-user-select: none; user-select: none; }
.filter:has(input.text-field) { cursor: text; font-weight: inherit; margin-bottom: 0; }
.filter:focus-visible { outline: 2px solid var(--swatch--copper, #c67a3c); outline-offset: 2px; }
.filter .toggle_icon { transition: transform 200ms cubic-bezier(0.22, 1, 0.36, 1); }
.filter[aria-expanded="true"] .toggle_icon { transform: rotate(180deg); }
.filter_menu {
  position: absolute; left: 0; top: calc(100% + 0.35rem); z-index: 30;
  min-width: 100%;

  max-height: min(24rem, 60vh); overflow-y: auto;
  padding: 0.25rem;
  background: var(--_theme---background, #fff);

  border-radius: var(--radius--md, 0.5rem);

  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--_theme---heading-text, #1b2a4a) 18%, transparent),
    0 0.75rem 2rem rgba(0, 0, 0, 0.12);

  transition:
    opacity 200ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 200ms cubic-bezier(0.22, 1, 0.36, 1),
    display 200ms;
  transition-behavior: allow-discrete;
}
.filter_menu[hidden] {
  display: none;
  opacity: 0;
  transform: translateY(-0.375rem);

  transition-duration: 150ms;
  transition-timing-function: ease-in;
}
@starting-style {
  .filter_menu:not([hidden]) { opacity: 0; transform: translateY(-0.375rem); }
}
.filter_menu::-webkit-scrollbar { width: 0.875rem; }
.filter_menu::-webkit-scrollbar-track { background: transparent; margin-block: 0.5rem; }
.filter_menu::-webkit-scrollbar-thumb {
  background-color: color-mix(in srgb, var(--_theme---heading-text, #1b2a4a) 25%, transparent);
  border: 0.25rem solid transparent;   
  background-clip: content-box;
  border-radius: 999px;
}
.filter_menu::-webkit-scrollbar-thumb:hover {
  background-color: color-mix(in srgb, var(--_theme---heading-text, #1b2a4a) 40%, transparent);
}
@supports not selector(::-webkit-scrollbar) {
  .filter_menu {
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--_theme---heading-text, #1b2a4a) 25%, transparent) transparent;
  }
}
.filter_option {
  padding: 0.65rem 0.85rem;   
  border-radius: calc(var(--radius--md, 0.5rem) - 0.25rem); 
  color: var(--_theme---heading-text, #1b2a4a);
  cursor: pointer;
}
.filter_option + .filter_option { margin-top: 0.15rem; }
.filter_option:hover,
.filter_option[aria-selected="true"] { background: var(--swatch--off-white, #f8f7f4); }
.filter input.text-field {
  appearance: none; border: 0; background: transparent; outline: 0;
  width: 100%; font: inherit; color: inherit; padding: 0;
}
.open_roles_layout [data-results-count] { font-variant-numeric: tabular-nums; }
.u-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
@media (prefers-reduced-motion: reduce) {
  .filter .toggle_icon { transition: none; }
  .filter_menu, .filter_menu[hidden] { transition: none; }
}
.open_roles_listings .listing_row:hover .listing_role h4,
.open_roles_listings .listing_row:focus-visible .listing_role h4 {
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (max-width: 767px) {
  .open_roles_filters_wrap .filter_item { grid-column: 1 / -1; }
  .listing_row > * { grid-column: 1 / -1; }
  .listing_action { justify-content: flex-start; } 

  .open_roles_group .listing_contents {
    row-gap: var(--_spacing---space--lg, 1.5rem);       
    padding-top: var(--_spacing---space--md, 1rem);     
  }
}
