/* r59 page styles for the platform group (platform, platform/cleargate, platform/custody, platform/evidence-engine, platform/evidence-passport, platform/intake, platform/supplier-qualification, platform/veritura-seal). Owned by the platform agent only; shared components live in site3.css.
   Every rule here is scoped to a pf- section class that appears only on these eight pages, so nothing leaks to another group.
   Language of the site: Inter for text, Geist Mono only for 11px uppercase labels, near-black #131313, hairlines #e6e6e8, radius 12 to 16. */
/* ---------- the section frame every pf- section shares: the same width, gutter and rhythm as .outcomes ---------- */
.pg .pf{max-width:1290px;margin:0 auto;padding:var(--sec-y) var(--wrappad) 0;box-sizing:content-box;text-align:left}
.pg .pf-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:96px;align-items:end}
.pg .pf-head h2{font:500 44px/48px var(--sans);letter-spacing:-.022em;color:var(--ink);margin:0;text-wrap:balance}
.pg .pf-head>p{font:400 18px/28px var(--sans);letter-spacing:-.011em;color:var(--muted);margin:0;max-width:560px}
.pg .pf-k{display:block;font:500 11px/16px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#71717a;margin:0 0 16px}
.pg .pf-note{font:400 14px/22px var(--sans);color:#71717a;margin:24px 0 0;max-width:820px}
.pg .pf-note b{font-weight:500;color:var(--ink-2)}
@media (max-width:991px){
  .pg .pf-head{grid-template-columns:1fr;row-gap:16px}
}
@media (max-width:767px){
  .pg .pf{padding-top:96px}
  .pg .pf-head h2{font-size:32px;line-height:36px}
  .pg .pf-head>p{font-size:17px;line-height:26px}
}
/* ---------- the standards table: check, what it is held to, what the review shows ---------- */
/* ---------- the verdict: four headings side by side ---------- */
/* ---------- a worked example: what is recorded, what is computed, what the review then says ---------- */
/* ---------- one system: the platform overview's map of the six stages, each sending its reader on ---------- */
.pg .pf-sys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:var(--head-to-content);counter-reset:pfs}
.pg .pf-s{position:relative;display:flex;flex-direction:column;border:1px solid #e6e6e8;border-radius:16px;background:#fff;padding:26px 26px 24px;color:inherit;text-decoration:none;counter-increment:pfs;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.pg a.pf-s:hover{border-color:#dcdce0;box-shadow:0 1px 2px rgba(16,24,40,.04),0 12px 32px -12px rgba(16,24,40,.12)}
.pg .pf-s::before{content:counter(pfs,decimal-leading-zero);display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;height:24px;min-width:34px;padding:0 8px;border-radius:6px;background:#f4f4f5;font:500 11px/1 var(--mono);letter-spacing:.04em;color:#71717a}
.pg .pf-s b{font:500 20px/27px var(--sans);letter-spacing:-.018em;color:var(--ink);margin:28px 0 0;text-wrap:balance}
.pg .pf-s p{font:400 15px/24px var(--sans);color:#52525b;margin:10px 0 0}
.pg .pf-s small{display:block;font:400 14px/21px var(--sans);color:#71717a;margin:14px 0 0;padding-top:14px;border-top:1px solid #efeff1}
.pg .pf-s small i{font-style:normal;font:500 11px/16px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#a1a1aa;display:block;margin-bottom:4px}
.pg .pf-s .pf-go{margin-top:auto;padding-top:18px;font:500 15px/20px var(--sans);color:var(--blue);display:inline-flex;align-items:center;gap:6px}
.pg .pf-s .pf-go::after{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 3.5 10.5 8 6 12.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 3.5 10.5 8 6 12.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .3s var(--ease)}
.pg a.pf-s:hover .pf-go::after{transform:translateX(3px)}
@media (max-width:991px){
  .pg .pf-sys{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  .pg .pf-sys{grid-template-columns:1fr;gap:12px}
  .pg .pf-s b{margin-top:20px}
}
/* ---------- reader routes: who you are, and the page that answers you (overview) ---------- */
.pg .pf-who{margin-top:var(--head-to-content);border-top:1px solid #e6e6e8}
.pg .pf-who a{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr) auto;gap:32px;align-items:baseline;padding:22px 0;border-bottom:1px solid #e6e6e8;color:inherit;text-decoration:none}
.pg .pf-who a b{font:500 18px/26px var(--sans);letter-spacing:-.012em;color:var(--ink)}
.pg .pf-who a span{font:400 15px/24px var(--sans);color:#52525b}
.pg .pf-who a i{font-style:normal;font:500 15px/20px var(--sans);color:var(--blue);white-space:nowrap}
.pg .pf-who a:hover b{color:var(--blue)}
@media (max-width:767px){
  .pg .pf-who a{grid-template-columns:1fr;gap:6px}
}
/* ---------- element cards: a supplier file's six elements, the verified file's five groups ---------- */
/* ---------- a plain list of routes or rules, two columns of hairline rows ---------- */
/* ---------- a quoted refusal or system line, shown as the product prints it ---------- */
.pg .pf-said{margin:var(--head-to-content) 0 0;border:1px solid #e6e6e8;border-radius:16px;background:#fafafa;padding:22px 26px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}
.pg .pf-said .pf-k{margin:3px 0 0;white-space:nowrap}
.pg .pf-said p{font:400 17px/27px var(--sans);letter-spacing:-.011em;color:var(--ink);margin:0}
@media (max-width:767px){
  .pg .pf-said{grid-template-columns:1fr;gap:8px;padding:18px 18px}
  .pg .pf-said p{font-size:16px;line-height:25px}
}
/* ---------- picture cards in .outcomes: site3's ".oc span" (the 24px index badge) also matched the .oc-vis span and shrank the
   picture to a 43px thumbnail. Undo the badge box on the picture span only (requested for site3.css in the r59 report) ---------- */
.pg .oc .oc-vis{height:auto;min-width:0;padding:0;align-self:stretch;width:auto;border-radius:15px 15px 0 0}
.pg .oc .oc-vis img{border-radius:0}
.pg .oc:has(.oc-vis){justify-content:flex-start}
/* r60: the hero's opening statement can carry a second paragraph (the old lede, folded in) */
.pg .sh-intro p+p:not(.sh-src){margin-top:14px!important}

/* ===== r60 Part 3: the bespoke tables, grids, steps and calculations on these pages moved to the shared components in
   site3.css (.vt .vt--ba .vc .vl .vs .vg). What is left here: kickers as sentence-case labels, the citation line under a
   table row's name, a quiet role line in a text grid, the boundary as one plain line, and spacing around the components. ===== */
.pg .pf-k,.pg .sx-over,.pg .t-k,.pg .cx-over,.pg .art-sec>.overline{font:500 14px/20px Inter,sans-serif!important;letter-spacing:-.006em!important;text-transform:none!important;color:#71717a!important}
.pg .vt th[scope=row] small{display:block;margin-top:2px;font:400 14px/20px Inter,sans-serif;letter-spacing:-.006em;color:#3f3f46}
.pg .vg .vg-role{margin-top:2px!important;font:400 14px/20px Inter,sans-serif!important;color:#71717a!important}
.pg .vg ul{margin:10px 0 0;padding-left:18px;font:400 15px/24px Inter,sans-serif;color:#52525b}
.pg .vg ul li::marker{color:#a1a1aa}
.pg .vg .disc{display:inline-block;margin-top:12px}
.pg .vg h3 .vst{font:inherit}
.pg .vt,.pg .vg,.pg .vs,.pg .vl,.pg .vc{margin-top:var(--head-to-content,40px)}
.pg .vc .vl,.pg .vc .vt,.pg .vc-eq{margin-top:0!important}
.pg .art-sec .vc-total,.pg .art-sec .vc p{max-width:none}
.pg .sx-case-grid .vs,.pg .vg .vl,.pg .art-sec .vt,.pg .art-sec .vs,.pg .art-sec .vl{margin-top:24px}
.pg .t-two>div,.pg .cx-two>div,.pg .pf-said,.pg .art-note{border:0!important;border-top:1px solid #e6e6e8!important;border-radius:0!important;background:none!important;box-shadow:none!important;padding:20px 0 0!important}
.pg .t-two,.pg .cx-two{gap:40px 32px!important}
.pg .rc small,.pg .lp small,.pg .sx-role-body small,.pg .art-next .lbl,.pg .art-sec cite,.pg .pf-sys i,.pg .sx-rows-sec .overline,.pg .sx-rows-sec .frow-copy .overline,.pg .art-note .lbl,.pg .art-next small{font:500 13px/20px Inter,sans-serif!important;letter-spacing:-.006em!important;text-transform:none!important;color:#71717a!important;font-style:normal!important}
.pg .art-toc .n,.pg .art-sec h2 .n{display:none!important}
/* plain lists (VIBE 4(l)): native bullets in a quiet grey, no drawn dashes or squares; chips become a plain list */
.pg .t-copy ul,.pg .art-sec ul,.pg .cx-two ul,.pg .sx-role ul,.pg .t-two ul{list-style:disc!important;padding-left:20px!important}
.pg .t-copy li::before,.pg .art-sec ul li::before,.pg .cx-two li::before,.pg .sx-role li::before{content:none!important;display:none!important}
.pg .t-copy li,.pg .art-sec ul li,.pg .cx-two li,.pg .sx-role li,.pg .t-two li{padding-left:2px!important}
.pg .t-copy li::marker,.pg .art-sec ul li::marker,.pg .cx-two li::marker,.pg .sx-role li::marker,.pg .t-two li::marker{color:#a1a1aa}
.pg .cx-chips{gap:6px 20px!important}
.pg .cx-chips li{border:0!important;border-radius:0!important;background:none!important;padding:0!important;color:#3f3f46!important}
/* text-grid columns as classes: an inline --cols would beat the breakpoints and keep four columns on a phone */
.pg .vg.c2{--cols:2}.pg .vg.c3{--cols:3}.pg .vg.c4{--cols:4}
@media (max-width:991px){.pg .vg.c3,.pg .vg.c4{--cols:2}}
@media (max-width:599px){.pg .vg.c2,.pg .vg.c3,.pg .vg.c4{--cols:1}}
.pg .bnd-line{max-width:1290px;margin:0 auto;padding:var(--sec-y,96px) var(--wrappad,75px) 0;box-sizing:content-box}
.pg .bnd-line p{max-width:62ch;margin:0;padding-top:20px;border-top:1px solid #e6e6e8;font:400 17px/27px Inter,sans-serif;letter-spacing:-.011em;color:#52525b}
.pg .bnd-line b{font-weight:500;color:#131313}
@media (max-width:767px){.pg .bnd-line{padding:64px 20px 0}.pg .bnd-line p{font-size:16px;line-height:25px}}
.pg .vc .vt{margin-top:0}
