.face-exchange { margin: 28px 0; overflow: hidden; border: 1px solid var(--ctm-border); border-radius: 18px; background: linear-gradient(145deg, #f8f4ec 0%, #eef4f1 100%); box-shadow: var(--ctm-shadow-panel); }
.face-exchange__head { padding: 16px 19px 14px; border-bottom: 1px solid rgba(23, 75, 62, .1); }
.face-exchange__head > span { display: block; color: var(--ctm-terracotta-dark); font-size: .69rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.face-exchange__head h3 { margin: 4px 0 0; color: var(--ctm-forest-dark); font-family: var(--ctm-font-serif); font-size: 1.28rem; font-weight: 600; line-height: 1.25; }
.face-exchange__track { display: grid; margin: 0; padding: 21px 21px 15px; list-style: none; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.face-exchange__track > li { position: relative; display: flex; min-width: 0; min-height: 244px; padding: 14px 13px 13px; border: 1px solid rgba(23, 75, 62, .13); border-radius: 14px; background: rgba(255, 255, 255, .9); flex-direction: column; }
.face-exchange__track > li:not(:last-child)::after { position: absolute; top: 25px; right: -15px; z-index: 2; display: grid; width: 18px; height: 18px; border: 1px solid rgba(23, 75, 62, .16); border-radius: 50%; background: var(--ctm-surface); color: var(--ctm-forest); content: "›"; font-weight: 800; place-items: center; }
.face-exchange__number { color: var(--ctm-terracotta-dark); font-family: var(--ctm-font-serif); font-size: .78rem; font-weight: 700; }
.face-exchange__track div { margin-top: 11px; }
.face-exchange__track small { display: block; color: var(--ctm-terracotta-dark); font-size: .68rem; font-weight: 800; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.face-exchange__track strong { display: block; margin-top: 5px; color: var(--ctm-forest-dark); font-family: var(--ctm-font-serif); font-size: .98rem; font-weight: 600; line-height: 1.24; }
.face-exchange__track p { margin: 7px 0 0; color: var(--ctm-text-muted); font-size: 13px; line-height: 1.5; }
.face-exchange__track em { margin-top: auto; padding-top: 11px; color: var(--ctm-forest); font-size: 13px; font-style: normal; font-weight: 800; line-height: 1.4; }
.face-exchange__outcome { display: grid; margin: 0 21px 16px; padding: 11px 13px; border: 1px solid rgba(23, 75, 62, .14); border-radius: 12px; background: rgba(23, 75, 62, .07); grid-template-columns: auto auto 1fr auto; gap: 8px; align-items: center; }
.face-exchange__outcome span { color: var(--ctm-terracotta-dark); font-size: .69rem; font-weight: 800; text-transform: uppercase; }
.face-exchange__outcome strong { justify-self: center; color: var(--ctm-forest-dark); font-family: var(--ctm-font-serif); font-size: .95rem; }
.face-exchange figcaption { padding: 14px 20px 16px; border-top: 1px solid rgba(23, 75, 62, .1); color: var(--ctm-text-muted); font-size: 13px; line-height: 1.55; }

@media (max-width: 780px) {
  .face-exchange__track { padding: 14px; grid-template-columns: 1fr; gap: 9px; }
  .face-exchange__track > li { min-height: 0; padding: 14px; }
  .face-exchange__track > li:not(:last-child)::after { display: none; }
  .face-exchange__track p, .face-exchange__track em, .face-exchange figcaption { font-size: 14px; }
  .face-exchange__track em { margin-top: 9px; padding-top: 0; }
  .face-exchange__outcome { margin: 0 14px 14px; grid-template-columns: 1fr 1fr; text-align: center; }
  .face-exchange__outcome strong { grid-column: 1 / -1; grid-row: 1; }
}

@media (max-width: 600px) {
  .face-exchange__head { padding: 15px 16px 14px; }
  .face-exchange__head h3 { font-size: 1.18rem; }
  .face-exchange figcaption { padding: 13px 16px 15px; }
}
