.rmb-state-list {
  width: min(100% - 40px, 1100px);
  margin: 24px auto 72px;
  border-top: 2px solid #181818;
}

.rmb-state-accordion {
  border-bottom: 2px solid #181818;
}

.rmb-state-heading {
  margin: 0;
}

.rmb-state-toggle {
  appearance: none;
  display: flex;
  width: 100%;
  min-height: 78px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 24px;
  border: 0;
  border-radius: 0;
  background: #fff;
  color: #181818;
  font: inherit;
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 800;
  line-height: 1.2;
  text-align: left;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease;
}

.rmb-state-toggle:hover,
.rmb-state-toggle[aria-expanded="true"] {
  background: #fdb431;
}

.rmb-state-toggle:focus-visible {
  position: relative;
  z-index: 1;
  outline: 3px solid #181818;
  outline-offset: -6px;
}

.rmb-state-chevron {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  margin-right: 4px;
  border-right: 3px solid currentColor;
  border-bottom: 3px solid currentColor;
  transform: rotate(45deg);
  transition: transform 180ms ease;
}

.rmb-state-toggle[aria-expanded="true"] .rmb-state-chevron {
  transform: rotate(225deg);
}

.rmb-state-panel[hidden] {
  display: none !important;
}

.rmb-state-panel {
  padding: 16px 0 32px;
}

.rmb-state-panel > .elementor-element.e-parent {
  width: 100%;
}

/*
 * The imported Elementor cards use equal-height grid rows and pull their
 * details upward with a negative margin. Let each row size to its content so
 * wrapped location names move every following field down in normal flow.
 */
.rmb-state-panel > .e-con.e-parent > .e-con-inner > .e-con.e-child {
  --e-con-grid-template-rows: none;
}

.rmb-state-panel > .e-con.e-parent > .e-con-inner > .e-con.e-child > .elementor-widget-icon-list > .elementor-widget-container {
  margin: 0;
}

@media (max-width: 767px) {
  .rmb-state-list {
    width: min(100% - 24px, 1100px);
    margin-top: 16px;
    margin-bottom: 48px;
  }

  .rmb-state-toggle {
    min-height: 64px;
    gap: 16px;
    padding: 14px 16px;
  }

  .rmb-state-panel {
    padding-top: 8px;
    padding-bottom: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rmb-state-toggle,
  .rmb-state-chevron {
    transition: none;
  }
}
