/* ==========================================================================
   MCOGL — How We Trade cluster
   Hub · Trading Model · Execution · Quality · Logistics · Risk
   ========================================================================== */

/* --------------------------------------------------------------------------
   Shared switcher (hub siblings + process + topics)
   -------------------------------------------------------------------------- */
.mc-tt__switcher {
  position: sticky;
  top: 68px;
  z-index: 40;
  background: var(--mc-ink-950);
  border-bottom: 1px solid var(--mc-ink-700);
}
.mc-tt__switcher-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3) var(--space-5);
  padding-block: 0.85rem;
}
.mc-tt__switcher-label {
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 0.65rem;
  color: var(--mc-blue-300);
  flex: none;
}
.mc-tt__switcher-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  flex: 1 1 auto;
}
.mc-tt__switcher-list li { margin: 0; }
.mc-tt__switcher-list a {
  display: inline-block;
  padding: 0.35rem 0.65rem;
  color: var(--mc-on-dark-2);
  text-decoration: none;
  letter-spacing: 0.06em;
  font-size: 0.72rem;
  text-transform: uppercase;
  border-radius: var(--radius);
  border: 1px solid transparent;
}
.mc-tt__switcher-list a:hover {
  color: #fff;
  border-color: var(--mc-ink-700);
}
.mc-tt__switcher-list a.is-active {
  color: #fff;
  border-color: var(--mc-red-500);
  background: rgba(237, 27, 36, 0.12);
}
.mc-tt__switcher-all {
  flex: none;
  color: var(--mc-blue-300);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.68rem;
  border-bottom: 1px solid rgba(143, 184, 236, 0.35);
  padding-bottom: 2px;
}
.mc-tt__switcher-all:hover { color: #fff; border-bottom-color: #fff; }

.mc-tt__kicker {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.7rem;
  color: var(--mc-blue-600);
  margin-bottom: var(--space-3);
}

/* --------------------------------------------------------------------------
   Trade topic hero + intro
   -------------------------------------------------------------------------- */
.mc-tt__hero.mc-phero {
  padding-block: clamp(5.5rem, 12vh, 7.5rem) clamp(2.5rem, 5vh, 3.25rem);
}
.mc-tt__hero .mc-phero__lede { max-width: 48ch; }
.mc-tt__hero-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3) var(--space-4);
  margin-bottom: var(--space-3);
}
.mc-tt__hero-top .mc-eyebrow { margin-bottom: 0; }
.mc-tt__hero-icon {
  display: inline-flex;
  color: var(--mc-blue-300);
  opacity: 0.9;
}

.mc-tt__intro { padding-block: clamp(2.5rem, 5vw, 3.5rem); }
.mc-tt__lead {
  max-width: 68ch;
}
.mc-tt__lead-p {
  font-size: var(--fs-lede);
  color: var(--mc-ink-900);
  font-variation-settings: 'wght' 500;
  line-height: 1.55;
  margin: 0 0 var(--space-5);
}
.mc-tt__lead p {
  margin: 0 0 var(--space-4);
  color: var(--mc-body);
  max-width: 62ch;
  line-height: 1.65;
}
.mc-tt__lead p:last-child { margin-bottom: 0; }

.mc-tt__section-note {
  margin: var(--space-7) 0 0;
  max-width: 62ch;
  color: var(--mc-slate);
  font-size: 0.95rem;
  line-height: 1.6;
  padding-top: var(--space-5);
  border-top: 1px solid var(--mc-rule);
}

/* Media band (logistics) */
.mc-tt__media-band {
  padding-block: 0 clamp(1.5rem, 3vw, 2rem);
}
.mc-tt__media {
  margin: 0;
  position: relative;
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--mc-ink-900);
}
.mc-tt__media img {
  display: block;
  width: 100%;
  height: clamp(200px, 28vw, 320px);
  object-fit: cover;
  opacity: 0.72;
}
.mc-tt__media-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-2) var(--space-5);
  padding: var(--space-5) var(--space-6);
  background: linear-gradient(transparent, rgba(8, 12, 17, 0.88));
  color: var(--mc-on-dark);
}
.mc-tt__media-caption .mc-mono {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.72rem;
  color: var(--mc-blue-300);
}
.mc-tt__media-caption span:last-child {
  font-size: 0.95rem;
  color: #fff;
}

/* --------------------------------------------------------------------------
   Phases (execution lifecycle) — balanced auto-fill, not left-tilted
   -------------------------------------------------------------------------- */
.mc-tt__phases .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__phase-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .mc-tt__phase-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-5);
  }
}
@media (min-width: 1024px) {
  .mc-tt__phase-grid {
    grid-template-columns: repeat(6, 1fr);
  }
  /* 3 then 2: first three span 2 cols each; last two span 3 each */
  .mc-tt__phase-grid > :nth-child(-n+3) { grid-column: span 2; }
  .mc-tt__phase-grid > :nth-child(n+4) { grid-column: span 3; }
}
.mc-tt__phase {
  padding: var(--space-5) var(--space-5) var(--space-6);
  background: #fff;
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  border-top: 3px solid var(--mc-blue-600);
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.mc-tt__phase:first-child { border-top-color: var(--mc-red-500); }
.mc-tt__phase-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
.mc-tt__phase-n {
  color: var(--mc-blue-600);
  letter-spacing: 0.12em;
  font-size: 0.68rem;
}
.mc-tt__phase:first-child .mc-tt__phase-n { color: var(--mc-red-500); }
.mc-tt__phase-icon {
  display: inline-flex;
  color: var(--mc-blue-600);
  opacity: 0.85;
}
.mc-tt__phase h3 {
  margin: 0;
  font-size: 1.05rem;
  letter-spacing: -0.01em;
  color: var(--mc-ink-900);
}
.mc-tt__phase p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--mc-body);
  max-width: none;
}

/* --------------------------------------------------------------------------
   Documentary set checklist
   -------------------------------------------------------------------------- */
.mc-tt__docs .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__docs-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-3) var(--space-5);
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .mc-tt__docs-grid { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 900px) {
  .mc-tt__docs-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1100px) {
  .mc-tt__docs-grid { grid-template-columns: repeat(4, 1fr); }
}
.mc-tt__doc {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin: 0;
  padding: 0.55rem 0;
  font-size: 0.78rem;
  letter-spacing: 0.02em;
  color: var(--mc-ink-900);
  border-bottom: 1px solid var(--mc-rule);
  line-height: 1.4;
}
.mc-tt__doc-mark {
  flex: none;
  width: 0.5rem;
  height: 0.5rem;
  margin-top: 0.28rem;
  background: var(--mc-red-500);
  border-radius: 1px;
}

/* --------------------------------------------------------------------------
   Split controls (quality) — light copy + dark panel
   -------------------------------------------------------------------------- */
.mc-tt__split {
  display: grid;
  gap: var(--space-6);
  align-items: stretch;
}
@media (min-width: 900px) {
  .mc-tt__split {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-7);
  }
}
.mc-tt__split-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: var(--space-4);
}
.mc-tt__split-copy h2 {
  max-width: 16ch;
  margin-bottom: var(--space-4);
}
.mc-tt__split-copy p {
  margin: 0;
  max-width: 42ch;
  color: var(--mc-body);
  line-height: 1.6;
}
.mc-tt__controls {
  padding: var(--space-7) var(--space-6);
  border-radius: var(--radius);
  border-left: 3px solid var(--mc-red-500);
  background: var(--mc-ink-900);
  min-height: 100%;
}
.mc-tt__controls-label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.68rem;
  color: var(--mc-blue-300);
  margin-bottom: var(--space-5);
}
.mc-tt__controls .mc-qlist li {
  border-color: var(--mc-ink-700);
  color: var(--mc-on-dark);
}
.mc-tt__controls .mc-qlist li::before {
  background: var(--mc-red-500);
}

/* --------------------------------------------------------------------------
   Verification steps (quality)
   -------------------------------------------------------------------------- */
.mc-tt__verify .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__verify-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .mc-tt__verify-grid { grid-template-columns: 1fr 1fr; gap: var(--space-5); }
}
@media (min-width: 1024px) {
  .mc-tt__verify-grid { grid-template-columns: repeat(4, 1fr); }
}
.mc-tt__verify-card {
  padding: var(--space-5);
  background: var(--mc-bone);
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  border-top: 3px solid var(--mc-blue-600);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  min-height: 100%;
}
.mc-tt__verify-card:first-child { border-top-color: var(--mc-red-500); }
.mc-tt__verify-n {
  color: var(--mc-blue-600);
  letter-spacing: 0.12em;
  font-size: 1.15rem;
  font-variation-settings: 'wght' 600;
}
.mc-tt__verify-card:first-child .mc-tt__verify-n { color: var(--mc-red-500); }
.mc-tt__verify-card h3 {
  margin: 0;
  font-size: 1rem;
  color: var(--mc-ink-900);
}
.mc-tt__verify-card p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--mc-body);
  max-width: none;
}

/* --------------------------------------------------------------------------
   Lanes 2×2 (logistics)
   -------------------------------------------------------------------------- */
.mc-tt__lanes .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__lane-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
@media (min-width: 700px) {
  .mc-tt__lane-grid {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-5);
  }
}
.mc-tt__lane {
  padding: var(--space-6) var(--space-5);
  background: #fff;
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  border-top: 3px solid var(--mc-blue-600);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  min-height: 100%;
}
.mc-tt__lane:nth-child(1) { border-top-color: var(--mc-red-500); }
.mc-tt__lane-icon {
  display: inline-flex;
  color: var(--mc-blue-600);
  margin-bottom: var(--space-2);
}
.mc-tt__lane h3 {
  margin: 0;
  font-size: 1.08rem;
  color: var(--mc-ink-900);
}
.mc-tt__lane p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--mc-body);
  max-width: none;
}

/* --------------------------------------------------------------------------
   Disciplines (logistics) — 4 equal columns, gold/red top rule
   -------------------------------------------------------------------------- */
.mc-tt__disciplines .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__disc-grid {
  display: grid;
  gap: var(--space-6);
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .mc-tt__disc-grid { grid-template-columns: 1fr 1fr; gap: var(--space-6) var(--space-5); }
}
@media (min-width: 1024px) {
  .mc-tt__disc-grid { grid-template-columns: repeat(4, 1fr); gap: var(--space-5); }
}
.mc-tt__disc {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding-top: var(--space-3);
}
.mc-tt__disc-rule {
  display: block;
  width: 1.75rem;
  height: 2px;
  background: var(--mc-red-500);
  margin-bottom: var(--space-2);
}
.mc-tt__disc:nth-child(even) .mc-tt__disc-rule {
  background: var(--mc-blue-600);
}
.mc-tt__disc h3 {
  margin: 0;
  font-size: 0.95rem;
  color: var(--mc-ink-900);
}
.mc-tt__disc p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--mc-slate);
  max-width: none;
}

/* --------------------------------------------------------------------------
   Onboarding 2×3 (risk)
   -------------------------------------------------------------------------- */
.mc-tt__onboard .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__onboard-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .mc-tt__onboard-grid { grid-template-columns: 1fr 1fr; gap: var(--space-5); }
}
@media (min-width: 1024px) {
  .mc-tt__onboard-grid { grid-template-columns: repeat(3, 1fr); }
}
.mc-tt__onboard-card {
  padding: var(--space-5) var(--space-5) var(--space-6);
  background: #fff;
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  border-left: 3px solid var(--mc-blue-600);
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.mc-tt__onboard-card--accent {
  border-left-color: var(--mc-red-500);
}
.mc-tt__onboard-card h3 {
  margin: 0;
  font-size: 0.98rem;
  color: var(--mc-ink-900);
}
.mc-tt__onboard-card p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--mc-body);
  max-width: none;
}

/* --------------------------------------------------------------------------
   Risk register table
   -------------------------------------------------------------------------- */
.mc-tt__risk .mc-section-head { margin-bottom: var(--space-6); }
.mc-tt__table-wrap {
  overflow-x: auto;
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  background: #fff;
}
.mc-tt__table {
  width: 100%;
  border-collapse: collapse;
  min-width: 520px;
}
.mc-tt__table thead th {
  text-align: left;
  padding: 0.85rem 1.15rem;
  background: var(--mc-ink-950);
  color: var(--mc-on-dark);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 0.68rem;
  font-weight: 500;
  border-bottom: 1px solid var(--mc-ink-700);
}
.mc-tt__table thead th:first-child { width: 28%; }
.mc-tt__table tbody th,
.mc-tt__table tbody td {
  padding: 0.95rem 1.15rem;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--mc-rule);
  font-size: 0.92rem;
  line-height: 1.5;
}
.mc-tt__table tbody tr:last-child th,
.mc-tt__table tbody tr:last-child td { border-bottom: 0; }
.mc-tt__table tbody th {
  font-weight: 600;
  color: var(--mc-ink-900);
  background: var(--mc-bone);
  width: 28%;
}
.mc-tt__table tbody td {
  color: var(--mc-body);
}
.mc-tt__table tbody tr:nth-child(even) td {
  background: rgba(245, 242, 236, 0.45);
}

/* --------------------------------------------------------------------------
   Trading Model (process)
   -------------------------------------------------------------------------- */
.mc-process__hero.mc-phero {
  padding-block: clamp(5.5rem, 12vh, 7.5rem) clamp(2.5rem, 5vh, 3.25rem);
}
.mc-process__hero .mc-phero__lede { max-width: 48ch; }

.mc-process__model .mc-section-head { margin-bottom: var(--space-7); }

.mc-process__split {
  display: grid;
  gap: var(--space-7);
  align-items: start;
}
@media (min-width: 1024px) {
  .mc-process__split {
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
    gap: var(--space-8);
  }
}

.mc-process__gives {
  padding: var(--space-7) var(--space-6);
  border-radius: var(--radius);
  border-left: 3px solid var(--mc-red-500);
  background: var(--mc-ink-900);
  position: sticky;
  top: calc(68px + 3.5rem);
}
.mc-process__gives-label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.68rem;
  color: var(--mc-blue-300);
  margin-bottom: var(--space-6);
}
.mc-process__gives-block + .mc-process__gives-block {
  margin-top: var(--space-7);
  padding-top: var(--space-6);
  border-top: 1px solid var(--mc-ink-700);
}
.mc-process__gives h3 {
  color: #fff;
  margin: 0 0 var(--space-4);
  font-size: 1.15rem;
}
.mc-process__gives .mc-qlist li {
  border-color: var(--mc-ink-700);
  color: var(--mc-on-dark);
}
.mc-process__gives .mc-qlist li::before {
  background: var(--mc-red-500);
}

/* Depth links under model */
.mc-process__depth .mc-section-head { margin-bottom: var(--space-6); }
.mc-process__depth-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
@media (min-width: 700px) {
  .mc-process__depth-list { grid-template-columns: 1fr 1fr; gap: var(--space-5); }
}
.mc-process__depth-item {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: var(--space-4);
  align-items: start;
  padding: var(--space-5);
  background: #fff;
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  border-top: 3px solid var(--mc-blue-600);
  text-decoration: none;
  color: inherit;
  min-height: 100%;
  transition: border-color 0.15s ease, transform 0.15s ease;
}
.mc-process__depth-list li:first-child .mc-process__depth-item {
  border-top-color: var(--mc-red-500);
}
.mc-process__depth-item:hover {
  border-color: var(--mc-blue-600);
  transform: translateY(-2px);
}
.mc-process__depth-icon {
  display: inline-flex;
  color: var(--mc-blue-600);
  margin-top: 2px;
}
.mc-process__depth-body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.mc-process__depth-short {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.65rem;
  color: var(--mc-blue-600);
}
.mc-process__depth-title {
  font-weight: 600;
  color: var(--mc-ink-900);
  font-size: 1rem;
  line-height: 1.3;
}
.mc-process__depth-lede {
  font-size: 0.88rem;
  color: var(--mc-slate);
  line-height: 1.45;
}
.mc-process__depth-item .mc-link-arrow {
  align-self: center;
  white-space: nowrap;
}

/* --------------------------------------------------------------------------
   Trade hub
   -------------------------------------------------------------------------- */
.mc-trade-hub__hero.mc-phero {
  padding-block: clamp(5.5rem, 12vh, 7.5rem) clamp(2.5rem, 5vh, 3.25rem);
}
.mc-trade-hub__hero .mc-phero__lede { max-width: 52ch; }

.mc-trade-hub__mininav {
  background: var(--mc-ink-950);
  border-bottom: 1px solid var(--mc-ink-700);
}
.mc-trade-hub__mininav-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3) var(--space-5);
  padding-block: 0.75rem;
}
.mc-trade-hub__mininav-label {
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 0.65rem;
  color: var(--mc-blue-300);
  flex: none;
}
.mc-trade-hub__mininav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}
.mc-trade-hub__mininav-list a {
  display: inline-block;
  padding: 0.3rem 0.6rem;
  color: var(--mc-on-dark-2);
  text-decoration: none;
  letter-spacing: 0.06em;
  font-size: 0.7rem;
  text-transform: uppercase;
  border-radius: var(--radius);
  border: 1px solid transparent;
}
.mc-trade-hub__mininav-list a:hover {
  color: #fff;
  border-color: var(--mc-ink-700);
}

/* Trading model: rail + balancing media */
.mc-trade-hub__steps-split {
  display: grid;
  gap: var(--space-7);
  align-items: start;
}
@media (min-width: 900px) {
  .mc-trade-hub__steps-split {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    gap: var(--space-8) var(--space-9);
  }
}
.mc-trade-hub__steps-copy .mc-section-head {
  margin-bottom: var(--space-7);
}
.mc-trade-hub__steps-copy .mc-section-head h2 {
  max-width: 16ch;
}
.mc-trade-hub__more {
  margin-top: var(--space-7);
  margin-bottom: 0;
}
.mc-trade-hub__steps-media {
  margin: 0;
  max-width: 28rem;
}
@media (min-width: 900px) {
  .mc-trade-hub__steps-media {
    max-width: none;
    position: sticky;
    top: calc(68px + 1.5rem);
  }
}
.mc-trade-hub__well {
  border-bottom-left-radius: var(--radius-arc);
  max-height: min(56vh, 28rem);
}
@media (min-width: 900px) {
  .mc-trade-hub__well {
    max-height: min(70vh, 36rem);
  }
}
.mc-trade-hub__well img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mc-trade-hub__media-cap {
  margin: var(--space-3) 0 0;
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mc-blue-600);
}

/* Balanced cluster grid: 2 on tablet, then 2+3 / 5-up without orphan awkwardness */
.mc-trade-hub__clusters {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .mc-trade-hub__clusters {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-5);
  }
}
@media (min-width: 900px) {
  .mc-trade-hub__clusters {
    grid-template-columns: repeat(6, 1fr);
  }
  /* Row 1: two cards spanning 3 cols each */
  .mc-trade-hub__clusters > :nth-child(1),
  .mc-trade-hub__clusters > :nth-child(2) {
    grid-column: span 3;
  }
  /* Row 2: three cards spanning 2 cols each */
  .mc-trade-hub__clusters > :nth-child(n+3) {
    grid-column: span 2;
  }
}
.mc-trade-hub__cluster {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.mc-trade-hub__cluster--lead {
  border-top: 3px solid var(--mc-red-500);
  padding-top: calc(var(--space-6) - 3px);
}
.mc-trade-hub__cluster-short {
  display: block;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.65rem;
  color: var(--mc-blue-600);
  margin-bottom: 0.15rem;
}
.mc-trade-hub__cluster .mc-card__icon { margin-bottom: var(--space-3); }
.mc-trade-hub__cluster h3 { margin-bottom: var(--space-2); }
.mc-trade-hub__cluster p { flex: 1; }

/* Dual producers/buyers — light surface so enquiry band has contrast */
.mc-trade-hub__dual-section {
  background: var(--mc-white);
  padding-block: clamp(3rem, 6vw, 4.5rem);
}
.mc-trade-hub__dual-head {
  margin-bottom: var(--space-7);
}
.mc-trade-hub__dual-head h2 {
  max-width: 16ch;
  margin: 0;
  color: var(--mc-ink-900);
}
.mc-trade-hub__dual {
  display: grid;
  gap: var(--space-5);
}
@media (min-width: 900px) {
  .mc-trade-hub__dual {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-6);
  }
}
.mc-trade-hub__side {
  margin: 0;
  padding: var(--space-6) var(--space-6) var(--space-7);
  background: var(--mc-bone);
  border: 1px solid var(--mc-rule);
  border-radius: var(--radius);
  border-top: 3px solid var(--mc-red-500);
  min-height: 100%;
}
.mc-trade-hub__side--buyers {
  border-top-color: var(--mc-blue-600);
}
.mc-trade-hub__side-kicker {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 0.7rem;
  color: var(--mc-blue-600);
  margin-bottom: var(--space-3);
}
.mc-trade-hub__side--producers .mc-trade-hub__side-kicker {
  color: var(--mc-red-500);
}
.mc-trade-hub__side h3 {
  margin: 0 0 var(--space-5);
  max-width: 14ch;
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  color: var(--mc-ink-900);
  letter-spacing: -0.02em;
}
.mc-trade-hub__side .mc-qlist li {
  border-color: var(--mc-rule);
  color: var(--mc-body);
}
.mc-trade-hub__side .mc-qlist li::before {
  background: var(--mc-red-500);
}
.mc-trade-hub__side--buyers .mc-qlist li::before {
  background: var(--mc-blue-600);
}

/* --------------------------------------------------------------------------
   Responsive switcher (match products: drop sticky on narrow)
   -------------------------------------------------------------------------- */
@media (max-width: 640px) {
  .mc-tt__switcher {
    top: 0;
    position: relative;
  }
  .mc-process__gives {
    position: static;
  }
}
