/* Buyers page: "The spec sheet." An editorial, catalogue-like page around one product.
   Page parts are scoped to .p-buyers, the offer comparison to .sig-buyers. Colours come from the site tokens. */

/* ---------- Shared: running head, chapter openers, captions ---------- */
.p-buyers .pb-run { display: flex; justify-content: space-between; gap: var(--space-4); margin: 0 0 var(--space-12); padding-bottom: 12px; border-bottom: 1px solid var(--line);
  font: 500 11.5px/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-run span:first-child { color: var(--ink); }

.p-buyers .pb-chap { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 0 var(--space-12); align-items: end; margin-bottom: var(--space-16); }
.p-buyers .pb-chap .pb-chap__rule { grid-column: 1 / -1; }
.p-buyers .pb-chap--narrow { grid-template-columns: minmax(0, 1fr); margin-bottom: 0; }
.p-buyers .pb-chap--narrow .lead { margin-top: var(--space-6); }
.p-buyers .pb-chap__rule { display: flex; gap: var(--space-4); margin: 0 0 var(--space-8); padding-top: 12px; border-top: 1px solid var(--ink);
  font: 500 12px/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-chap__rule span:first-child { color: var(--ink); }
.p-buyers .pb-chap .lead i, .p-buyers .pb-chap .lead em { font-style: italic; color: var(--ink); }

.p-buyers .pb-cap { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-3); margin: 0 0 var(--space-3);
  font: 500 11px/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-cap__hint { letter-spacing: .04em; text-transform: none; font-family: var(--font-sans); font-size: 12.5px; }

/* ---------- Cover: headline over the catalogue plates ---------- */
.p-buyers .pb-cover { padding: var(--space-12) 0 var(--space-8); }
.p-buyers .pb-cover__top { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--space-12); align-items: end; }
.p-buyers .pb-cover__side { display: grid; gap: var(--space-8); padding-bottom: 10px; }

.p-buyers .pb-plates { list-style: none; margin: var(--space-16) 0 var(--space-6); padding: 0; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: var(--space-8) var(--space-4); }
.p-buyers .pb-plates > li { min-width: 0; }
.p-buyers .pb-plate { display: grid; gap: 3px; align-content: start; color: var(--ink); text-decoration: none; }
.p-buyers .pb-plate__img { display: block; aspect-ratio: 1; margin-bottom: 10px; border-radius: var(--radius-md); overflow: hidden; background: var(--surface-sunk); }
.p-buyers .pb-plate__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.p-buyers a.pb-plate:hover .pb-plate__img img { transform: scale(1.05); }
.p-buyers .pb-plate__no { font: 500 10.5px/1.2 var(--font-mono); letter-spacing: .06em; color: var(--muted); }
.p-buyers .pb-plate b { font-size: 15px; line-height: 1.25; font-weight: 600; letter-spacing: -0.01em; }
.p-buyers .pb-plate small { font-size: 12.5px; line-height: 1.35; color: var(--muted); }
.p-buyers .pb-plate em { margin-top: 6px; font-style: normal; font-size: 12.5px; font-weight: 500; color: var(--ink); }
.p-buyers .pb-plate.is-open .pb-plate__img { box-shadow: 0 0 0 1px var(--surface), 0 0 0 2px var(--ink); }
.p-buyers .pb-plate--yours .pb-plate__img { display: grid; place-items: center; background: transparent; border: 1px dashed var(--line-strong); }
.p-buyers .pb-plate--yours .pb-plate__img span { font: 300 34px/1 var(--font-sans); color: var(--muted); }
.p-buyers .pb-plate--yours:hover .pb-plate__img { border-color: var(--ink); }
.p-buyers .pb-plate--yours small { color: var(--ink-2); }

/* ---------- 01 The name: six names, one spec sheet ---------- */
.p-buyers .pb-spec__stage { display: grid; grid-template-columns: minmax(0, 1fr) 150px minmax(0, 1.05fr); align-items: start; margin-bottom: var(--space-8); }
.p-buyers .pb-via { margin-top: 270px; }

.p-buyers .pb-names__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.p-buyers .pb-name { width: 100%; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 4px 14px; align-items: start; padding: 13px 16px 12px; text-align: left;
  border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); color: var(--ink); font: inherit; cursor: pointer;
  transition: border-color .2s ease, box-shadow .2s ease; }
.p-buyers .pb-name:hover { border-color: var(--line-strong); }
.p-buyers .pb-name:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.p-buyers .pb-name__lang { grid-row: span 2; height: 22px; display: grid; place-items: center; margin-top: 1px; border: 1px solid var(--line); border-radius: 6px;
  font: 500 10.5px/1 var(--font-mono); color: var(--muted); transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.p-buyers .pb-name__t { font-size: 16px; line-height: 1.45; letter-spacing: -0.005em; }
.p-buyers .pb-name small { font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-seg i { display: none; }
.p-buyers .pb-name:not(.is-on) .pb-seg:not(:last-child) > span::after { content: ","; }
.p-buyers .pb-name.is-on { border-color: var(--ink); box-shadow: var(--shadow-float); }
.p-buyers .pb-name.is-on .pb-name__lang { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.p-buyers .pb-name.is-on .pb-name__t { display: flex; flex-wrap: wrap; gap: 8px 14px; padding: 2px 0 4px; }
.p-buyers .pb-name.is-on .pb-seg { display: inline-flex; flex-direction: column; }
.p-buyers .pb-name.is-on .pb-seg span { padding-bottom: 3px; border-bottom: 1.5px solid var(--ink); }
.p-buyers .pb-name.is-on .pb-seg i { display: block; margin-top: 4px; font: 500 9.5px/1 var(--font-mono); font-style: normal; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }

.p-buyers .pb-via { display: flex; align-items: center; padding: 0 10px; color: var(--muted); }
.p-buyers .pb-via__line { flex: 1; height: 1px; background: var(--line-strong); position: relative; }
.p-buyers .pb-via__line:last-child::after { content: ""; position: absolute; right: -1px; top: -3.5px; width: 7px; height: 7px; border-top: 1px solid var(--line-strong); border-right: 1px solid var(--line-strong); transform: rotate(45deg); }
.p-buyers .pb-via__tag { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface);
  font: 500 10.5px/1 var(--font-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--ink-2); white-space: nowrap; }
.p-buyers .pb-via__tag svg { width: 12px; height: 12px; color: var(--carmine); }

.p-buyers .pb-sheet { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow-window); overflow: hidden; color: var(--ink); }
.p-buyers .pb-sheet__head { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 18px; align-items: center; padding: 20px 24px; border-bottom: 1px solid var(--line); }
.p-buyers .pb-sheet__img { width: 72px; height: 72px; border-radius: var(--radius-md); overflow: hidden; background: var(--surface-sunk); }
.p-buyers .pb-sheet__img img { width: 100%; height: 100%; object-fit: cover; }
.p-buyers .pb-sheet__head small { display: block; font: 500 10.5px/1.2 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-sheet__head b { display: block; margin: 4px 0 2px; font-size: 20px; line-height: 1.2; font-weight: 600; letter-spacing: -0.02em; }
.p-buyers .pb-sheet__head span { font-size: 13px; color: var(--muted); }
.p-buyers .pb-sheet__rows { margin: 0; padding: 6px 24px 10px; }
.p-buyers .pb-sheet__row { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: baseline; padding: 9px 0; border-bottom: 1px dashed var(--line); font-size: 13.5px; line-height: 1.4; }
.p-buyers .pb-sheet__row:last-child { border-bottom: 0; }
.p-buyers .pb-sheet__row dt { font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-sheet__row dd { margin: 0; display: flex; justify-content: space-between; align-items: baseline; gap: 12px; min-width: 0; }
.p-buyers .pb-sheet__row dd > span:first-child { color: var(--ink); }
.p-buyers .pb-sheet__from { flex: none; max-width: 48%; text-align: right; font-size: 12.5px; font-style: italic; color: var(--ink-2); padding: 1px 7px; border-radius: 5px; background: var(--surface-sunk);
  transition: opacity .25s ease; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-buyers .pb-sheet__from.is-own { background: none; padding: 0; font: 500 10px/1.3 var(--font-mono); font-style: normal; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); opacity: .8; }
.p-buyers .pb-sheet__from.is-swap { opacity: 0; }
.p-buyers .pb-sheet__sign { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); padding: 16px 24px 18px; border-top: 1px solid var(--line); background: var(--surface-sunk); }
.p-buyers .pb-sheet__sign > div { display: grid; gap: 4px; align-content: start; min-width: 0; }
.p-buyers .pb-sheet__sign small { font: 500 10px/1.2 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-sheet__sign b { display: flex; align-items: center; gap: 8px; min-height: 28px; font-size: 14px; font-weight: 600; letter-spacing: -0.01em; color: var(--ink); }
.p-buyers .pb-sheet__sign .app-ico { width: 24px; height: 24px; border-radius: 7px; flex: none; }
.p-buyers .pb-sheet__sign .app-ico svg { width: 13px; height: 13px; }
.p-buyers .pb-sheet__sign span { font-size: 12px; line-height: 1.35; color: var(--muted); }
.p-buyers .pb-sheet__sign b.pb-sheet__line { font: 600 26px/1 "Caveat", cursive; letter-spacing: 0; border-bottom: 1px solid var(--line-strong); padding-bottom: 2px; }

/* ---------- 02 The offers: one request, every offer on the same spec ---------- */
.sig-buyers__body { display: grid; gap: var(--space-4); min-width: 0; }
.sig-buyers__sort { font-size: 12px; color: var(--muted); padding: 5px 10px; border-radius: var(--radius-pill); background: var(--surface-sunk); white-space: nowrap; }
.sig-buyers__rq { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 14px 16px; align-items: center; }
.sig-buyers__img { width: 56px; height: 56px; border-radius: var(--radius-md); overflow: hidden; background: var(--surface-sunk); }
.sig-buyers__img img { width: 100%; height: 100%; object-fit: cover; }
.sig-buyers__rqt { min-width: 0; }
.sig-buyers__rqt small { display: block; font: 500 10.5px/1.2 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.sig-buyers__rqt b { display: block; margin-top: 3px; font-size: 17px; font-weight: 600; letter-spacing: -0.015em; color: var(--ink); }
.sig-buyers__chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.sig-buyers__chips span { font-size: 12px; line-height: 1; padding: 5px 9px; border-radius: var(--radius-pill); border: 1px solid var(--line); color: var(--ink-2); background: var(--surface); white-space: nowrap; }
.sig-buyers__stats { margin: 0; display: grid; grid-template-columns: repeat(4, auto); border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.sig-buyers__stats div { padding: 9px 14px; display: grid; gap: 3px; }
.sig-buyers__stats div + div { border-left: 1px solid var(--line); }
.sig-buyers__stats dt { font-size: 11.5px; color: var(--muted); white-space: nowrap; }
.sig-buyers__stats dd { margin: 0; font: 500 14px/1.2 var(--font-mono); font-variant-numeric: tabular-nums; color: var(--ink); white-space: nowrap; }

.sig-buyers .cmp { display: grid; grid-template-columns: 132px repeat(4, minmax(196px, 1fr)); font-size: 13px; line-height: 1.4; color: var(--ink); }
.sig-buyers .cmp > div { padding: 11px 14px; border-bottom: 1px solid var(--line); min-width: 0; }
.sig-buyers .cmp > div.is-last { border-bottom: 0; }
.sig-buyers .cmp__c { border-left: 1px solid var(--line); display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.sig-buyers .cmp__c.is-pick { background: color-mix(in srgb, var(--ok-soft) 45%, var(--surface)); }
.sig-buyers .cmp__l { position: sticky; left: 0; z-index: 2; background: var(--surface-sunk); display: flex; flex-direction: column; gap: 3px;
  font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-2); }
.sig-buyers .cmp__l small { font: 400 11.5px/1.3 var(--font-sans); letter-spacing: 0; text-transform: none; color: var(--muted); }
.sig-buyers .cmp__ai { width: 12px; height: 12px; color: var(--carmine); margin-bottom: 1px; }
.sig-buyers .cmp__h b { font-size: 14px; font-weight: 600; letter-spacing: -0.01em; }
.sig-buyers .cmp__h small { margin-top: -4px; font-size: 12.5px; color: var(--ink-2); }
.sig-buyers .cmp__src { font: 500 10.5px/1.2 var(--font-mono); letter-spacing: .04em; color: var(--muted); }
.sig-buyers .cmp__tag { display: inline-flex; align-items: center; gap: 5px; font-size: 11.5px; font-weight: 500; color: var(--ok); }
.sig-buyers .cmp__tag svg { width: 12px; height: 12px; }
.sig-buyers .cmp__orig { font-style: italic; color: var(--ink-2); quotes: "“" "”"; }
.sig-buyers .cmp__read { color: var(--ink); }
.sig-buyers .cmp mark { background: var(--warn-soft); color: var(--warn); padding: 0 3px; border-radius: 3px; }
.sig-buyers .cmp__p { display: flex; align-items: baseline; gap: 2px; }
.sig-buyers .cmp__p b { font: 500 22px/1 var(--font-mono); letter-spacing: -0.03em; font-variant-numeric: tabular-nums; color: var(--ink); }
.sig-buyers .cmp__p small { font-size: 12px; color: var(--muted); }
.sig-buyers .cmp__d { margin-left: 8px; font: 500 11.5px/1 var(--font-mono); font-variant-numeric: tabular-nums; color: var(--muted); }
.sig-buyers .cmp__d--ok { color: var(--ok); }
.sig-buyers .cmp__how { font-size: 11.5px; line-height: 1.35; color: var(--muted); }
.sig-buyers .cmp__aps { display: flex; flex-wrap: wrap; gap: 4px; }
.sig-buyers .cmp__ap { font: 500 10.5px/1 var(--font-mono); padding: 4px 6px; border-radius: 5px; border: 1px solid var(--line-strong); color: var(--ink-2); white-space: nowrap; }
.sig-buyers .cmp__ap.is-warn { border-color: transparent; background: var(--warn-soft); color: var(--warn); }
.sig-buyers .cmp__sub { font-size: 12px; color: var(--muted); }
.sig-buyers .cmp__sub.is-warn { color: var(--warn); }
.sig-buyers .cmp__fl { display: flex; align-items: flex-start; gap: 7px; font-size: 12.5px; line-height: 1.4; }
.sig-buyers .cmp__fl--ok { color: var(--ok); }
.sig-buyers .cmp__fl--ok svg { width: 13px; height: 13px; margin-top: 2px; flex: none; }
.sig-buyers .cmp__fl--warn { color: var(--ink-2); }
.sig-buyers .cmp__fl--warn i { width: 7px; height: 7px; margin-top: 5px; border-radius: 50%; background: var(--warn); flex: none; }
.sig-buyers .cmp__act { padding-top: 12px; padding-bottom: 14px; }
.sig-buyers__hint { display: none; margin: 0; font-size: 12px; color: var(--muted); }

/* Where each part of the window comes from: one slim line, not a grid of cards */
.sig-buyers__line { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: var(--space-6) 0; font: 500 10.5px/1.4 var(--font-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--muted); }
.sig-buyers__line b { margin-right: 6px; font: 500 13.5px/1.4 var(--font-sans); letter-spacing: -0.005em; text-transform: none; color: var(--ink-2); }

/* One-time reveal (js/persona-buyers.js): the offers arrive, then they are read onto the spec */
.sig-buyers .cmp__c { transition: opacity .45s ease, transform .45s ease; transition-delay: calc(var(--c, 0) * 220ms); }
.sig-buyers .cmp__c[data-c="2"] { --c: 1; }
.sig-buyers .cmp__c[data-c="3"] { --c: 2; }
.sig-buyers .cmp__c[data-c="4"] { --c: 3; }
.sig-buyers .cmp__c.is-norm { transition-delay: calc(1100ms + var(--c, 0) * 160ms); }
.sig-buyers .sig-buyers__ai { transition: opacity .5s ease 2s, transform .5s ease 2s; }
.sig-buyers.is-pre .cmp__c { opacity: 0; transform: translateY(10px); }
.sig-buyers.is-pre .cmp__c.is-norm { transform: translateY(4px); }
.sig-buyers.is-pre .sig-buyers__ai { opacity: 0; transform: translateY(6px); }

/* ---------- 03 The plant: the supplier file with its checks stamped on ---------- */
.p-buyers .pb-plant__in { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: var(--space-16); align-items: center; margin-bottom: var(--space-8); }
.p-buyers .pb-figure { margin: var(--space-12) 0 0; display: grid; gap: 6px; padding-top: var(--space-6); border-top: 1px solid var(--line); }
.p-buyers .pb-figure b { font: 600 clamp(52px, 6vw, 84px)/1 var(--font-sans); letter-spacing: -0.045em; font-variant-numeric: tabular-nums; color: var(--ink); }
.p-buyers .pb-figure span { font-size: 16px; line-height: 1.45; color: var(--ink-2); max-width: 34ch; }
.p-buyers .pb-figure small { font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }

.p-buyers .pb-file { position: relative; padding-top: 31px; }
.p-buyers .pb-file__tab { position: absolute; top: 0; left: 28px; z-index: 1; height: 32px; padding: 0 18px; border: 1px solid var(--line); border-bottom: 0; border-radius: 10px 10px 0 0; background: var(--surface);
  font: 500 11px/31px var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-file__sheet { position: relative; padding: 24px 28px 26px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: var(--shadow-window); color: var(--ink); }
.p-buyers .pb-file__head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.p-buyers .pb-file__head .app-ico { width: 36px; height: 36px; border-radius: 10px; }
.p-buyers .pb-file__head .app-ico svg { width: 18px; height: 18px; }
.p-buyers .pb-file__head b { display: block; font-size: 17px; font-weight: 600; letter-spacing: -0.015em; }
.p-buyers .pb-file__head small { display: block; font-size: 12.5px; color: var(--muted); }
.p-buyers .pb-file__src { font: 500 10.5px/1 var(--font-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--muted); padding: 5px 8px; border: 1px solid var(--line); border-radius: var(--radius-pill); }
.p-buyers .pb-file__facts { margin: 18px 0 20px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; }
.p-buyers .pb-file__facts dt { font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-file__facts dd { margin: 3px 0 0; font-size: 13.5px; line-height: 1.4; color: var(--ink); }

.p-buyers .pb-stamps { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 18px 22px; padding: 26px 4px 4px; border-top: 1px dashed var(--line-strong); }
.p-buyers .pb-stamp { --k: 0; display: grid; justify-items: center; gap: 3px; padding: 8px 14px 9px; color: var(--ink-2); border: 2px solid currentColor; border-radius: 6px;
  outline: 1px solid currentColor; outline-offset: 2px; text-transform: uppercase; text-align: center; opacity: .9;
  transform: rotate(var(--r, 0deg)); transition: opacity .2s ease, transform .4s cubic-bezier(.3,1.5,.55,1); transition-delay: calc(var(--k) * 170ms); }
.p-buyers .pb-stamp small { font: 500 9.5px/1 var(--font-mono); letter-spacing: .12em; }
.p-buyers .pb-stamp b { font: 600 17px/1.05 var(--font-mono); letter-spacing: .01em; }
.p-buyers .pb-stamp span { font: 500 9.5px/1 var(--font-mono); letter-spacing: .07em; }
.p-buyers .pb-stamp--ok { color: var(--ok); }
.p-buyers .pb-stamp--ring { width: 124px; height: 124px; padding: 0; border: 0; outline: 0; }
.p-buyers .pb-stamp__ring { width: 100%; height: 100%; overflow: visible; }
.p-buyers .pb-stamp__ring text { fill: currentColor; }
.p-buyers .pb-stamp__path { font: 500 10.5px var(--font-mono); letter-spacing: .06em; }
.p-buyers .pb-stamp__mid { font: 600 26px var(--font-mono); letter-spacing: .02em; }
.p-buyers .pb-stamp__sub { font: 500 8px var(--font-mono); letter-spacing: .2em; }
.p-buyers .pb-stamp:nth-child(2) { --k: 1; }
.p-buyers .pb-stamp:nth-child(3) { --k: 2; }
.p-buyers .pb-stamp:nth-child(4) { --k: 3; }
.p-buyers .pb-stamp:nth-child(5) { --k: 4; }
.p-buyers .pb-plant.is-pre .pb-stamp { opacity: 0; transform: rotate(var(--r, 0deg)) scale(1.3); }

/* ---------- 04 After yes ---------- */
.p-buyers .pb-after__in { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr); gap: var(--space-16); align-items: center; }
.p-buyers .pb-after__photo { aspect-ratio: 4 / 5; border-radius: var(--radius-lg); }
.p-buyers .pb-after__text .display-m { max-width: 16ch; }
.p-buyers .pb-after__list { list-style: none; margin: var(--space-8) 0 var(--space-6); padding: 0; border-top: 1px solid var(--line); }
.p-buyers .pb-after__list li { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: var(--space-4); align-items: baseline; padding: 16px 0; border-bottom: 1px solid var(--line); }
.p-buyers .pb-after__list span { font: 500 11px/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--ink); }
.p-buyers .pb-after__list p { font-size: 16px; line-height: 1.5; color: var(--ink-2); }
.p-buyers .pb-after__tool { display: flex; align-items: center; gap: 10px; font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-after__tool .app-ico { width: 28px; height: 28px; border-radius: 8px; }
.p-buyers .pb-after__tool .app-ico svg { width: 15px; height: 15px; }

/* ---------- 05 Your spec: closing with a request card, then the index ---------- */
.p-buyers .pb-close { padding: var(--space-24) 0; border-top: 1px solid var(--line); }
.p-buyers .pb-close__in { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: var(--space-16); align-items: center; }
.p-buyers .pb-close__text { display: grid; gap: var(--space-6); justify-items: start; }
.p-buyers .pb-close__text .pb-chap__rule { justify-self: stretch; margin-bottom: var(--space-2); }
.p-buyers .pb-close .display-xl { font-size: clamp(52px, 7.4vw, 108px); }
.p-buyers .pb-close__contact { display: grid; gap: 4px; font-size: 15px; color: var(--muted); }
.p-buyers .pb-close__contact a { justify-self: start; color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--line-strong); }

.p-buyers .pb-req { justify-self: end; width: 100%; max-width: 460px; display: grid; gap: 16px; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: var(--shadow-window); color: var(--ink); }
.p-buyers .pb-req__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; font: 500 11px/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-req__file { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px dashed var(--line-strong); border-radius: var(--radius-md); background: var(--surface-sunk); }
.p-buyers .pb-req__file b { display: block; font: 500 13.5px/1.3 var(--font-mono); color: var(--ink); }
.p-buyers .pb-req__file small { display: block; font-size: 12px; color: var(--muted); }
.p-buyers .pb-req__doc { width: 32px; height: 40px; flex: none; display: grid; place-items: end center; padding-bottom: 6px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface); font: 600 8.5px/1 var(--font-mono); color: var(--muted); }
.p-buyers .pb-req__rows { margin: 0; }
.p-buyers .pb-req__rows div { display: grid; grid-template-columns: 82px minmax(0, 1fr); gap: 12px; align-items: baseline; padding: 9px 0; border-bottom: 1px solid var(--line); }
.p-buyers .pb-req__rows div:first-child { padding-top: 0; }
.p-buyers .pb-req__rows dt { font: 500 10.5px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.p-buyers .pb-req__rows dd { margin: 0; display: flex; gap: 6px; font-size: 13.5px; line-height: 1.4; color: var(--ink); }
.p-buyers .pb-req__ai { width: 12px; height: 12px; margin-top: 3px; flex: none; color: var(--carmine); }
.p-buyers .pb-req__send { width: 100%; }
.p-buyers .pb-req__note { font-size: 12.5px; color: var(--muted); text-align: center; }

.p-buyers .pb-index { margin-top: var(--space-24); }
.p-buyers .pb-index ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 var(--space-8); border-top: 1px solid var(--ink); }
.p-buyers .pb-index a { display: flex; align-items: baseline; gap: 8px; padding: 12px 0; border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; font-size: 15px; }
.p-buyers .pb-index a span { white-space: nowrap; }
.p-buyers .pb-index a i { flex: 1; min-width: 12px; border-bottom: 1px dotted var(--line-strong); transform: translateY(-4px); transition: border-color .2s ease; }
.p-buyers .pb-index a small { font: 500 11px/1 var(--font-mono); color: var(--muted); }
.p-buyers .pb-index a:hover i { border-bottom-color: var(--ink); }

/* ---------- Motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .sig-buyers .cmp__c, .sig-buyers .sig-buyers__ai, .p-buyers .pb-stamp, .p-buyers .pb-sheet__from, .p-buyers .pb-plate__img img { transition: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1200px) {
  .p-buyers .pb-plates { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
  .p-buyers .pb-spec__stage { grid-template-columns: minmax(0, 1fr); max-width: 640px; }
  .p-buyers .pb-via { flex-direction: column; height: 96px; padding: 6px 0; margin-top: 0; }
  .p-buyers .pb-via__line { width: 1px; height: auto; flex: 1; }
  .p-buyers .pb-via__line:last-child::after { right: auto; left: -3px; top: auto; bottom: 0; transform: rotate(135deg); }
  .p-buyers .pb-plant__in { grid-template-columns: minmax(0, 1fr); gap: var(--space-12); }
  .p-buyers .pb-file { max-width: 640px; }
  .sig-buyers__rq { grid-template-columns: 56px minmax(0, 1fr); }
  .sig-buyers__stats { grid-column: 1 / -1; justify-self: start; }
}
@media (max-width: 960px) {
  .p-buyers .pb-cover { padding-top: var(--space-8); }
  .p-buyers .pb-cover__top, .p-buyers .pb-chap, .p-buyers .pb-close__in { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .p-buyers .pb-chap { margin-bottom: var(--space-12); }
  .p-buyers .pb-chap__rule { margin-bottom: var(--space-2); }
  .p-buyers .pb-plates { margin-top: var(--space-12); }
  .p-buyers .pb-after__in { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .p-buyers .pb-after__photo { max-width: 420px; aspect-ratio: 4 / 3; }
  .p-buyers .pb-req { justify-self: start; }
  .p-buyers .pb-index ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sig-buyers__hint { display: block; }
  .sig-buyers .cmp { grid-template-columns: 112px repeat(4, minmax(208px, 1fr)); }
}
@media (max-width: 560px) {
  .p-buyers .pb-run span:last-child { display: none; }
  .p-buyers .pb-plates { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6) var(--space-3); }
  .p-buyers .pb-cap__hint { display: none; }
  .p-buyers .pb-name { padding: 12px 12px 11px; grid-template-columns: 30px minmax(0, 1fr); gap: 4px 10px; }
  .p-buyers .pb-name__t { font-size: 15px; }
  .p-buyers .pb-sheet__head { grid-template-columns: 56px minmax(0, 1fr); gap: 14px; padding: 16px; }
  .p-buyers .pb-sheet__img { width: 56px; height: 56px; }
  .p-buyers .pb-sheet__head b { font-size: 17px; }
  .p-buyers .pb-sheet__rows { padding: 4px 16px 8px; }
  .p-buyers .pb-sheet__row { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; font-size: 13px; }
  .p-buyers .pb-sheet__row dd { flex-direction: column; gap: 3px; }
  .p-buyers .pb-sheet__from { max-width: 100%; text-align: left; }
  .p-buyers .pb-sheet__sign { padding: 14px 16px 16px; gap: var(--space-4); }
  .p-buyers .pb-file__sheet { padding: 18px 16px 20px; }
  .p-buyers .pb-file__tab { left: 16px; }
  .p-buyers .pb-file__head { grid-template-columns: auto minmax(0, 1fr); }
  .p-buyers .pb-file__src { display: none; }
  .p-buyers .pb-file__facts { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .p-buyers .pb-stamps { gap: 14px 12px; }
  .p-buyers .pb-stamp--ring { width: 108px; height: 108px; }
  .p-buyers .pb-after__list li { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .p-buyers .pb-req { padding: 16px; }
  .p-buyers .pb-index ul { grid-template-columns: minmax(0, 1fr); }
  .sig-buyers__sort { display: none; }
  .sig-buyers__rq { align-items: start; }
  .sig-buyers__chips span { white-space: normal; }
  .sig-buyers__stats { justify-self: stretch; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sig-buyers__stats div + div { border-left: 0; }
  .sig-buyers__stats div:nth-child(even) { border-left: 1px solid var(--line); }
  .sig-buyers__stats div:nth-child(n+3) { border-top: 1px solid var(--line); }
  .sig-buyers .cmp { grid-template-columns: 96px repeat(4, minmax(196px, 1fr)); }
  .sig-buyers .cmp > div { padding: 10px 12px; }
}
