.wpcp-ab-wrap {
  color: var(--wpcp-ab-text, #666);
  font-family: inherit;
  font-size: 13px;
  font-style: inherit;
  font-weight: inherit;
  line-height: 1.4;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  margin: 0;
  padding: 0;
}

.wpcp-ab-wrap,
.wpcp-ab-wrap * {
  box-sizing: border-box;
}

.wpcp-ab-wrap p {
  margin: 0;
}

.wpcp-ab-list {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.35em;
  list-style: none;
  padding: 0;
  margin: 0;
}

.wpcp-ab-item,
.wpcp-ab-separator {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.wpcp-ab-link {
  color: var(--wpcp-ab-accent, #0b7fab);
  text-decoration: none;
}

.wpcp-ab-link:hover,
.wpcp-ab-link:focus {
  opacity: 0.86;
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

.wpcp-ab-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 0.16em;
  border-radius: 0.2em;
}

.wpcp-ab-current {
  color: var(--wpcp-ab-current, #111);
  font-weight: 600;
}

.wpcp-ab-separator {
  color: var(--wpcp-ab-text, #666);
  opacity: 0.55;
}

@media (max-width: 767px) {
  .wpcp-ab-wrap {
    font-size: 12px;
  }

  .wpcp-ab-list {
    gap: 0.3em;
  }

  .wpcp-ab-item.is-current .wpcp-ab-current {
    display: inline-block;
    max-width: 76vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
  }
}

/* v1.2.3: Prevent Elementor widget FOUC before Elementor's generated CSS finishes loading. */
.wpcp-ab-wrap.wpcp-ab-elementor {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  vertical-align: top;
  background-color: transparent;
}

/* v1.2.5: Remove Elementor baseline gap without changing breadcrumb pill width/layout. */
.elementor-widget-wpcp_agency_breadcrumbs > .elementor-widget-container {
  line-height: 0;
}
.elementor-widget-wpcp_agency_breadcrumbs .wpcp-ab-wrap {
  line-height: 1.4;
}




/* v1.2.8: Overflow-safe pill mode without crushing parent crumbs.
   Parent crumbs stay readable. The current/final crumb is the flexible item that truncates first. */
.wpcp-ab-wrap.wpcp-ab-elementor {
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.wpcp-ab-wrap.wpcp-ab-elementor .wpcp-ab-list {
  display: flex;
  max-width: 100%;
  min-width: 0;
  width: auto;
  flex-wrap: nowrap;
  overflow: hidden;
}

.wpcp-ab-wrap.wpcp-ab-elementor .wpcp-ab-item,
.wpcp-ab-wrap.wpcp-ab-elementor .wpcp-ab-separator {
  flex: 0 0 auto;
  min-width: 0;
}

.wpcp-ab-wrap.wpcp-ab-elementor .wpcp-ab-item.is-current {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
}

.wpcp-ab-wrap.wpcp-ab-elementor .wpcp-ab-link {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
}

.wpcp-ab-wrap.wpcp-ab-elementor .wpcp-ab-current {
  display: inline-block;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
}

.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap {
  overflow: visible;
}

.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap .wpcp-ab-list {
  flex-wrap: wrap;
  overflow: visible;
}

.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap .wpcp-ab-item,
.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap .wpcp-ab-separator,
.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap .wpcp-ab-item.is-current {
  flex: 0 1 auto;
}

.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap .wpcp-ab-link,
.wpcp-ab-wrap.wpcp-ab-elementor.wpcp-ab-allow-wrap .wpcp-ab-current {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
