/**
 * Festival breadcrumbs — sitewide
 * Match HTML sitemap style: muted gray + slash separators.
 * Overrides Bono/WooCommerce magenta + chevron (>) look.
 * Left-aligned with H1 / body content (Bono .article-meta is center by default).
 */

/* Theme wraps page crumbs in .article-meta { text-align: center } */
.article-meta,
.article-header .article-meta,
.site-main .article-meta {
  text-align: left !important;
}

.fst-crumbs,
.fst-sitemap-crumbs,
.breadcrumb,
.woocommerce-breadcrumb,
nav.woocommerce-breadcrumb,
.breadcrumbs,
.rank-math-breadcrumb,
.article-meta .breadcrumb {
  --fst-crumb-muted: #6b7280;
  --fst-crumb-current: #4b5563;
  --fst-crumb-hover: #c41a5b;

  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0 0 14px 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0;
  text-align: left !important;
  font-size: 0.9rem;
  line-height: 1.4;
  font-weight: 400;
  color: var(--fst-crumb-muted) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  float: none !important;
}

/* Custom + WC crumbs: flex with equal 8px gaps (no theme &nbsp; noise) */
.fst-crumbs,
.fst-sitemap-crumbs,
.woocommerce-breadcrumb,
nav.woocommerce-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start !important;
  gap: 8px;
}

/* Bono theme crumbs keep inline flow — HTML already has &nbsp; around separator */
.breadcrumb,
.breadcrumbs,
.rank-math-breadcrumb,
.article-meta .breadcrumb {
  display: block;
}

.fst-crumbs a,
.fst-sitemap-crumbs a,
.breadcrumb a,
.breadcrumb a span,
.breadcrumb .breadcrumb-item a,
.breadcrumb .breadcrumb-item a span,
.woocommerce-breadcrumb a,
.breadcrumbs a,
.rank-math-breadcrumb a {
  color: var(--fst-crumb-muted) !important;
  text-decoration: none !important;
  font-weight: 400;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.fst-crumbs a:hover,
.fst-crumbs a:focus,
.fst-sitemap-crumbs a:hover,
.fst-sitemap-crumbs a:focus,
.breadcrumb a:hover,
.breadcrumb a:focus,
.breadcrumb a:hover span,
.breadcrumb a:focus span,
.woocommerce-breadcrumb a:hover,
.woocommerce-breadcrumb a:focus,
.breadcrumbs a:hover,
.breadcrumbs a:focus,
.rank-math-breadcrumb a:hover,
.rank-math-breadcrumb a:focus {
  color: var(--fst-crumb-hover) !important;
}

/* Current / last crumb — slightly darker muted gray (not magenta) */
.fst-crumbs > span:not(.fst-crumbs__sep):not([class*="sep"]),
.fst-sitemap-crumbs > span:not(.fst-sitemap-crumbs__sep),
.breadcrumb .breadcrumb_last,
.breadcrumb .breadcrumb_last span,
.breadcrumb > span:last-child,
.breadcrumb > span:last-child > span,
.woocommerce-breadcrumb,
.rank-math-breadcrumb .last {
  color: var(--fst-crumb-current) !important;
}

/* Theme chevron icon → slash */
.breadcrumb .wci-chevron-right,
.breadcrumb [class*="wci-chevron"],
.breadcrumbs .wci-chevron-right,
.woocommerce-breadcrumb .wci-chevron-right {
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: 400 !important;
  speak: never;
  color: var(--fst-crumb-muted) !important;
  opacity: 0.55;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  line-height: 1 !important;
}

.breadcrumb .wci-chevron-right::before,
.breadcrumb [class*="wci-chevron"]::before,
.breadcrumbs .wci-chevron-right::before,
.woocommerce-breadcrumb .wci-chevron-right::before {
  content: "/" !important;
  font-family: inherit !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  color: var(--fst-crumb-muted) !important;
  opacity: 1;
  margin: 0 !important;
  padding: 0 !important;
}

/* Explicit slash separators (sitemap / WC filter) */
.fst-crumbs__sep,
.fst-sitemap-crumbs__sep,
.woocommerce-breadcrumb .fst-crumbs__sep {
  color: var(--fst-crumb-muted) !important;
  opacity: 0.55;
  font-weight: 400;
  pointer-events: none;
  user-select: none;
}

/* WooCommerce often injects plain "/" text between anchors — keep muted */
.woocommerce-breadcrumb {
  white-space: normal;
}

.breadcrumb .breadcrumb-item,
.breadcrumb .wci-chevron-right {
  display: inline;
  vertical-align: baseline;
}

/* Meta / schema-only nodes stay invisible */
.breadcrumb meta,
.woocommerce-breadcrumb meta {
  display: none !important;
}

/* Blog singles: crumbs sit above centered H1, left with content edge */
body.fs-blog-single .fst-crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start !important;
  gap: 8px;
  width: 100%;
  margin: 4px 0 12px !important;
  text-align: left !important;
}

body.fs-blog-single .article-meta:not(:has(.breadcrumb)):not(:has(.fst-crumbs)) {
  /* keep meta for schema/category; crumbs are before H1 */
  min-height: 0;
}
