/* Zobi Research. Buyer exhibits share type and space, while each keeps its own encoding. */
#article .cv {
  --cv-ink: #171b17;
  --cv-soft: #424c45;
  --cv-line: #d5ddd4;
  --cv-green: #075f3b;
  --cv-paper: #f8faf6;
  --brand-type-article-body-size: .9375rem;
  --brand-type-article-leading: 1.43;
  color: var(--cv-ink);
  background: var(--cv-paper);
  border-top: 2px solid var(--cv-ink);
  border-bottom: 1px solid var(--cv-line);
  margin: 1.75rem 0;
  padding: clamp(17px, 4%, 28px);
  scroll-margin-top: 6rem;
  min-width: 0;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
  container-type: inline-size;
}
#article .cv *, #article .cv *::before, #article .cv *::after { box-sizing: border-box; }
#article .cv .cv-title {
  display: block;
  font-family: inherit;
  font-size: clamp(1.24rem, 2.4vw, 1.65rem);
  line-height: 1.15;
  letter-spacing: -.035em;
  font-weight: 700;
  margin: 0 0 1rem;
}
#article .cv .cv-copy, #article .cv .cv-list, #article .cv .cv-key, #article .cv .cv-caption {
  font-size: .9375rem;
  line-height: 1.43;
  color: var(--cv-soft);
  margin: 0;
}
#article .cv .cv-copy strong, #article .cv b, #article .cv dt { color: var(--cv-ink); }
#article .cv .cv-caption {
  border-top: 1px solid var(--cv-line);
  font-size: .875rem;
  margin-top: 1rem;
  padding: .75rem 0 0 !important;
  text-align: start;
}
/* The figure already supplies its gutter. The article shell adds one to bare captions. */
body[data-brand-id="zobi-seo"] main.dl-layout > article#article[data-ending-layout] figure.cv:not(.dl-cover):not(:has(> .table-wrap)) > :is(p, figcaption) {
  padding-inline: 0 !important;
}
#article .cv .cv-art {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1.83;
  object-fit: cover;
  object-position: 50% 53%;
  background: #e9d9bd;
  border-radius: 3px;
  margin: 0 0 1.05rem;
}
#article .cv .cv-list, #article .cv .cv-list li { list-style: none; padding: 0; }
#article .cv .cv-list li { margin: 0; min-width: 0; }
#article .cv .cv-list b, #article .cv .cv-list .cv-copy { display: block; }
#article .cv .cv-list .cv-copy { margin-top: .32rem; }
#article .cv .cv-stages {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
#article .cv .cv-stages li { border-top: 1px solid var(--cv-line); padding-top: .62rem; }
#article .cv .cv-step {
  color: var(--cv-green);
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .035em;
  display: block;
  margin: 0 0 .35rem;
}
#article .cv .cv-cutover {
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(0, 1fr);
  gap: 1rem;
}
#article .cv .cv-branch { border-top: 1px solid var(--cv-line); padding-top: .7rem; min-width: 0; }
#article .cv .cv-branch strong, #article .cv .cv-branch b { display: block; }
#article .cv .cv-branch .cv-copy + .cv-copy { margin-top: .6rem; }
#article .cv .cv-state-lead { margin-bottom: .85rem; }
#article .cv .cv-state-rows { border-top: 1px solid var(--cv-line); }
#article .cv .cv-state-rows li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
  align-items: center;
  gap: .65rem;
  padding: .7rem 0;
  border-bottom: 1px solid var(--cv-line);
}
#article .cv .cv-state { color: var(--cv-ink); text-align: start; font-weight: 650; }
#article .cv .cv-state-new { color: var(--cv-green); }
#article .cv .cv-relay { position: relative; padding-left: 16px; border-top: 1px solid var(--cv-line); }
#article .cv .cv-relay::before { content: ""; position: absolute; top: 18px; bottom: 20px; left: 3px; width: 1px; background: var(--cv-line); }
#article .cv .cv-relay li { position: relative; }
#article .cv .cv-relay li::before { content: ""; position: absolute; left: -16px; top: 15px; width: 7px; height: 7px; border: 1px solid var(--cv-soft); border-radius: 50%; background: var(--cv-paper); }
#article .cv .cv-relay li:nth-child(3)::before { background: var(--cv-green); border-color: var(--cv-green); }
#article .cv .cv-relay li > div:first-child { display: flex; align-items: baseline; gap: .45rem; }
#article .cv .cv-relay li {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.35fr);
  gap: .5rem 1rem;
  border-bottom: 1px solid var(--cv-line);
  padding: .68rem 0;
}
#article .cv .cv-relay .cv-copy { margin: 0; }
#article .cv .cv-flow { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem 1.1rem; }
#article .cv .cv-flow li { border-top: 1px solid var(--cv-line); padding-top: .66rem; }
#article .cv .cv-return { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem 1rem; }
#article .cv .cv-return-wrap {
  margin-top: .9rem;
  border-left: 2px solid var(--cv-green);
  padding: .2rem 0 .2rem .8rem;
}
#article .cv .cv-return-wrap > b { display: block; margin-bottom: .35rem; }
#article .cv .cv-return .cv-copy { margin-top: .15rem; }
#article .cv .cv-clock {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  padding-top: .18rem;
}
#article .cv .cv-clock li { position: relative; padding: .7rem .8rem 0 0; border-top: 1px solid var(--cv-line); }
#article .cv .cv-clock li::before {
  content: "";
  position: absolute;
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--cv-soft);
  top: -4px; left: 0;
}
#article .cv .cv-clock li:nth-child(2)::before { background: var(--cv-green); }
#article .cv .cv-clock time { font-size: 1.04rem; font-weight: 700; font-variant-numeric: tabular-nums; }
#article .cv .cv-clock b { margin-top: .25rem; }
#article .cv .cv-clock .cv-copy { margin-top: .18rem; }
#article .cv .cv-amounts { display: grid; gap: .9rem; }
#article .cv .cv-amount-title { display: flex; align-items: baseline; justify-content: space-between; gap: .7rem; margin-bottom: .34rem; }
#article .cv .cv-amount-title b { font-size: 1.15rem; font-variant-numeric: tabular-nums; }
#article .cv .cv-bar {
  display: flex;
  align-items: stretch;
  height: .7rem;
  border-left: 1px solid var(--cv-soft);
  background: #e7ebe4;
}
#article .cv .cv-bar span { display: block; width: var(--cv-share); }
#article .cv .cv-plan { background: #788776; }
#article .cv .cv-ai { background: #28372d; }
#article .cv .cv-sms { background: #a0ad9a; }
#article .cv .cv-extra { background: #087047; }
#article .cv .cv-key {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem .85rem;
  align-items: center;
  margin-top: .9rem;
}
#article .cv .cv-key span { display: inline-flex; align-items: center; gap: .38rem; }
#article .cv .cv-key i { width: 9px; height: 9px; display: inline-block; flex: 0 0 auto; }
#article .cv .cv-axis { display: flex; justify-content: space-between; gap: .45rem; margin-top: .25rem; }
#article .cv .cv-axis span { font-variant-numeric: tabular-nums; }
#article .cv .cv-linekey i { width: 16px; height: 0; border-top: 2px solid var(--cv-ink); }
#article .cv .cv-linekey .cv-prokey { border-top: 2px dashed var(--cv-green); }
#article .cv .cv-crossover { margin-top: .92rem; }
#article .cv .cv-chart {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .52rem;
  padding-top: .65rem;
}
#article .cv .cv-y { height: clamp(102px, 25cqw, 157px); position: relative; min-width: 2.8rem; }
#article .cv .cv-y span { position: absolute; right: 0; transform: translateY(-50%); line-height: 1; }
#article .cv .cv-y span:nth-child(2) { top: 50%; }
#article .cv .cv-y span:last-child { top: 100%; }
#article .cv .cv-y span, #article .cv .cv-x span { font-size: .81rem; color: var(--cv-soft); font-variant-numeric: tabular-nums; }
#article .cv .cv-plot-area { position: relative; }
#article .cv .cv-plot { display: block; width: 100%; height: clamp(102px, 25cqw, 157px); overflow: visible; }
#article .cv .cv-x { display: flex; justify-content: space-between; margin-top: .24rem; position: relative; }
#article .cv .cv-x .cv-x-mark { position: absolute; left: 60%; transform: translateX(-50%); font-weight: 700; color: var(--cv-green); }
#article .cv .cv-tick-short { display: none; }
#article .cv .cv-x-mark span { color: inherit; }
#article .cv .cv-outcomes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem .9rem; margin-top: .85rem; }
#article .cv .cv-outcomes > div { border-top: 1px solid var(--cv-line); padding-top: .45rem; }
#article .cv .cv-outcomes b { display: block; }
#article .cv .cv-x-title { text-align: center; margin-top: .3rem; font-size: .82rem; }
@container (max-width: 400px) {
  #article .cv .cv-art { aspect-ratio: auto; object-fit: contain; }
  #article .cv .cv-stages { grid-template-columns: minmax(0, 1fr); gap: .7rem; }
  #article .cv .cv-stages li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); align-items: baseline; gap: 0 .45rem; }
  #article .cv .cv-stages li .cv-copy { grid-column: 2; }
  #article .cv .cv-stages .cv-step { margin: 0; }
  #article .cv .cv-cutover, #article .cv .cv-return { grid-template-columns: minmax(0, 1fr); }
  #article .cv .cv-clock { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 0; margin-left: .22rem; }
  #article .cv .cv-clock li { border-top: 0; border-left: 1px solid var(--cv-line); padding: 0 0 .75rem .77rem; }
  #article .cv .cv-clock li:last-child { padding-bottom: 0; }
  #article .cv .cv-clock li::before { top: .43rem; left: -4px; }
  #article .cv .cv-clock b { margin-top: 0; }
  #article .cv .cv-clock .cv-copy { margin-top: .1rem; }
}
@container (max-width: 285px) {
  #article .cv .cv-flow, #article .cv .cv-outcomes { grid-template-columns: minmax(0, 1fr); }
  #article .cv .cv-relay li { grid-template-columns: minmax(0, 1fr); gap: .12rem; }
  #article .cv .cv-state-rows li { grid-template-columns: minmax(0, 1fr) minmax(0, .8fr); }
  #article .cv .cv-tick-long { display: none; }
  #article .cv .cv-tick-short { display: inline; }
}

/* Source-qualified reader checks. Three event columns stay aligned within each test. */
#article .cv .cv-journey { border-top: 1px solid var(--cv-line); }
#article .cv .cv-journey > li {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 1rem;
  align-items: center;
  padding: .85rem 0;
  border-bottom: 1px solid var(--cv-line);
}
#article .cv .cv-journey > li:last-child { border-bottom: 0; }
#article .cv .cv-events {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: .6rem;
  font-size: .825rem;
  line-height: 1.4;
  text-align: center;
}
#article .cv .cv-events::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 16.66%;
  right: 16.66%;
  border-top: 1px solid #bfc9bd;
}
#article .cv .cv-event { position: relative; color: var(--cv-soft); }
#article .cv .cv-seen { color: var(--cv-green); font-weight: 700; }
#article .cv .cv-event-dot {
  display: block;
  margin: 0 auto .18rem;
  width: 11px;
  height: 11px;
  border: 1px solid #6a776d;
  border-radius: 50%;
  background: var(--cv-paper);
}
#article .cv .cv-seen .cv-event-dot { background: var(--cv-green); border-color: var(--cv-green); }
#article .cv .cv-assist {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
#article .cv .cv-log .cv-step { margin: 0; }
#article .cv .cv-diagnosis { border-top: 1px solid var(--cv-line); margin-top: 1rem; padding-top: .75rem; }
#article .cv .cv-diagnosis > b { display: block; margin-bottom: .35rem; }
#article .cv .cv-diagnosis li { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.3fr); gap: .6rem; padding: .4rem 0; }
#article .cv .cv-diagnosis li .cv-copy { margin: 0; }
@container (max-width: 460px) {
  #article .cv .cv-journey > li, #article .cv .cv-diagnosis li { grid-template-columns: minmax(0, 1fr); gap: .4rem; }
  #article .cv .cv-diagnosis li { gap: .08rem; }
  #article .cv .cv-events { margin: .45rem 0 .15rem; }
}
