/* ============================================================
   Vandelay Companies — Page header & breadcrumb
   Active only inside .vc-design-context.
   ============================================================ */

/* ── Breadcrumb ─────────────────────────────────────────────── */
.vc-design-context .vc-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  padding: var(--vc-space-3) var(--vc-space-6);
  margin: 0;
  list-style: none;
  font-family: var(--vc-mono);
  font-size: 11px;
  color: var(--vc-ink-3);
  background: var(--vc-paper);
  border-bottom: 1px solid var(--vc-rule);
}

.vc-design-context .vc-breadcrumb__item {
  display: inline-flex;
  align-items: center;
}

.vc-design-context .vc-breadcrumb__item + .vc-breadcrumb__item::before {
  content: "/";
  margin: 0 8px;
  color: var(--vc-ink-4);
}

.vc-design-context .vc-breadcrumb__item a {
  color: var(--vc-ink-3);
  text-decoration: none;
  transition: color 0.12s ease;
}
.vc-design-context .vc-breadcrumb__item a:hover { color: var(--vc-navy); }

.vc-design-context .vc-breadcrumb__item--current { color: var(--vc-ink); }

/* ── Page header (eyebrow + title + meta + actions) ─────────── */
.vc-design-context .vc-page-header {
  padding: var(--vc-space-8) var(--vc-space-6) var(--vc-space-6);
  border-bottom: 1px solid var(--vc-rule);
  background: var(--vc-paper);
  /* Bleed to viewport edges on desktop. The parent <main> has .container
     padding (24px on desktop), so a -24px margin pulls the header strip
     flush with the edge. Mobile media query below zeros the side margins
     because .container has only 12px padding on phones — leaving the
     -24px pull would push the header offscreen by 12px on each side. */
  margin: 0 calc(var(--vc-space-6) * -1) var(--vc-space-6);
}

.vc-design-context .vc-page-header__eyebrow {
  font-family: var(--vc-mono);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--vc-ink-3);
  margin: 0 0 var(--vc-space-3);
}

.vc-design-context .vc-page-header__row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--vc-space-6);
  flex-wrap: wrap;
}

.vc-design-context .vc-page-header__title {
  font-family: var(--vc-serif);
  font-size: 60px;
  line-height: 1.0;
  letter-spacing: -0.025em;
  font-weight: 400;
  color: var(--vc-ink);
  margin: 0;
}

.vc-design-context .vc-page-header__meta {
  font-family: var(--vc-sans);
  font-size: 13.5px;
  color: var(--vc-ink-3);
  margin: var(--vc-space-3) 0 0;
}

.vc-design-context .vc-page-header__actions {
  display: flex;
  gap: var(--vc-space-2);
  flex-wrap: wrap;
}

/* Drop the negative side margins below 992px. The parent .container only
   has 12px padding on phones, so a -24px margin pushes the header strip
   12px past each viewport edge and clips on the right. */
@media (max-width: 991.98px) {
  .vc-design-context .vc-page-header {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 767.98px) {
  .vc-design-context .vc-page-header { padding: var(--vc-space-6) var(--vc-space-4) var(--vc-space-4); }
  .vc-design-context .vc-page-header__title { font-size: 36px; }
  .vc-design-context .vc-page-header__row { flex-direction: column; align-items: flex-start; }
}

/* ── Generic alert restyling inside vc context ──────────────── */
.vc-design-context .alert {
  font-family: var(--vc-sans);
  font-size: 13.5px;
  border-radius: var(--vc-r-md);
  border-width: 1px;
  border-style: solid;
}

.vc-design-context .alert-success {
  background: var(--vc-positive-soft);
  border-color: var(--vc-positive);
  color: var(--vc-ink);
}
.vc-design-context .alert-warning {
  background: var(--vc-warning-soft);
  border-color: var(--vc-warning);
  color: var(--vc-ink);
}
.vc-design-context .alert-danger,
.vc-design-context .alert-error {
  background: var(--vc-negative-soft);
  border-color: var(--vc-negative);
  color: var(--vc-ink);
}
.vc-design-context .alert-info {
  background: var(--vc-navy-tint);
  border-color: var(--vc-navy-soft);
  color: var(--vc-ink);
}

/* ── Footer ─────────────────────────────────────────────────── */
.vc-design-context .vc-footer {
  background: var(--vc-paper-2);
  border-top: 1px solid var(--vc-rule);
  padding: var(--vc-space-5) var(--vc-space-6);
  margin-top: var(--vc-space-12);
  font-family: var(--vc-sans);
  font-size: 12px;
  color: var(--vc-ink-3);
  text-align: center;
}
.vc-design-context .vc-footer a {
  color: var(--vc-ink-3);
  text-decoration: none;
  margin: 0 var(--vc-space-3);
}
.vc-design-context .vc-footer a:hover { color: var(--vc-navy); }
