/* design-gate: surface-class: screen
 * Six Platform narratives. Cobalt Pearl profile owns every palette/font role.
 * Native HTML labels remain readable independently of decorative SVG geometry.
 */
body.platform-page { --pf-small-title:22px; --pf-space:88px; }
.platform-page .pf-main { padding-inline:var(--pearl-gutter); }
.platform-page .pf-main :is(p,li,dd) { font-family:var(--pearl-font-body); font-size:var(--pearl-type-body-size); line-height:var(--pearl-type-body-leading); }
.platform-page .pf-main :is(h1,h2,h3) { margin:0; font-family:var(--pearl-font-display); color:var(--pearl-ink); font-weight:500; letter-spacing:-0.02em; }
.platform-page .pf-main :is(h1,h2,h3)>span { display:block; }
.platform-page .pf-main h1 { font-size:var(--pearl-type-page-title-size); line-height:var(--pearl-type-page-title-leading); }
.platform-page .pf-main h2 { font-size:var(--pearl-type-section-title-size); line-height:var(--pearl-type-section-title-leading); }
.platform-page .pf-main h3 { font-size:var(--pf-small-title); line-height:1.3; font-weight:600; letter-spacing:-0.0125em; }
.platform-page .pf-main .pf-label { font:400 var(--pearl-type-label-size)/1.6 var(--pearl-font-mono); letter-spacing:.065em; color:var(--pearl-art); }
.pf-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; padding-block:24px; color:var(--pearl-muted); font-size:13px;  line-height:1.6; }
.pf-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; text-underline-offset:var(--pearl-link-underline-offset); }
.pf-breadcrumb [aria-current] { color:var(--pearl-ink); }
.pf-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:var(--pearl-hero-gap); padding-block:30px 80px; position:relative; }
.pf-hero-copy { min-width:0; }
.pf-hero-copy h1 { margin-top:20px!important; }
.platform-page .pf-main .pf-lead { font-size:var(--pearl-type-lead-size); line-height:var(--pearl-type-lead-leading); color:var(--pearl-ink); margin-top:24px; max-width:55ch; }
.pf-hero-context { margin-top:16px; color:var(--pearl-muted); max-width:56ch; }
.pf-text-link { display:inline-flex; align-items:center; gap:24px; min-height:44px; margin-top:22px; padding-block:10px; text-decoration:none; font-size:14px; font-weight:600; color:var(--pearl-accent-text);  line-height:1.6; }
.pf-text-link:hover { text-decoration:underline;text-decoration-thickness:var(--pearl-link-underline); text-underline-offset:var(--pearl-link-underline-offset); }
.pf-text-link>span { font-size:18px;  line-height:1.6; }
.pf-art { min-width:0; margin:0; padding:24px 24px 22px; border:1px solid var(--pearl-line); border-radius:var(--pearl-radius-panel); background:var(--pearl-panel); color:var(--pearl-art); }
.pf-art-top { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.pf-art-mark { font-size:24px; line-height:1; color:var(--pearl-strong); }
.platform-page .pf-main .pf-art-title { margin-top:14px; font:500 20px/1.4 var(--pearl-font-display); letter-spacing:-0.0125em; color:var(--pearl-ink); }
.pf-nodes { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:26px 0 22px; padding:0; position:relative; }
.pf-nodes:before { content:""; position:absolute; left:16.667%; right:16.667%; top:37px; border-top:1px solid var(--pearl-strong); }
.pf-nodes li { position:relative; display:flex; flex-direction:column; align-items:center; gap:15px; min-width:0; }
.pf-node-icon { width:76px; height:76px; display:grid; place-items:center; background:var(--pearl-panel); }
.pf-node-icon svg { width:58px; height:58px; fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
.pf-signal { stroke:var(--pearl-motion-data); }
.pf-node-name { text-align:center; font:400 14px/1.5 var(--pearl-font-body); color:var(--pearl-ink); }
.pf-node-name>span { display:block; }
.pf-art-key { padding-top:16px; border-top:1px solid var(--pearl-line); font:400 12px/1.6 var(--pearl-font-mono); color:var(--pearl-art); }
.pf-art figcaption { margin-top:10px; font:400 var(--pearl-type-caption-size)/var(--pearl-type-caption-leading) var(--pearl-font-body); color:var(--pearl-muted); }
.pf-section { padding-block:var(--pf-space); border-top:1px solid var(--pearl-line); position:relative; }
.pf-section-intro { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:var(--pearl-hero-gap); align-items:end; margin-bottom:40px; }
.pf-section-intro>p { color:var(--pearl-muted); max-width:63ch; }
.pf-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; list-style:none; margin:0; padding:0; }
.pf-steps li { display:grid; grid-template-columns:28px minmax(0,1fr); align-content:start; gap:14px; padding-top:24px; border-top:1px solid var(--pearl-line); }
.pf-step-number { font:400 12px/1.6 var(--pearl-font-mono); color:var(--pearl-muted); padding-top:5px; }
.pf-steps h3 { display:flex; flex-direction:column; justify-content:flex-end; min-height:2.6em; padding-bottom:0; }
.pf-steps p { margin-top:20px; padding-top:20px; border-top:1px solid var(--pearl-line); color:var(--pearl-muted); }
.pf-explorer { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); border:1px solid var(--pearl-line); border-radius:var(--pearl-radius-panel); background:var(--pearl-panel); }
.pf-tabs { display:flex; flex-direction:column; padding:12px; border-right:1px solid var(--pearl-line); background:var(--pearl-bg); align-self:stretch; }
.pf-tab { display:flex; align-items:center; gap:14px; min-height:64px; padding:14px 16px; border:1px solid transparent; border-bottom-color:var(--pearl-line); text-decoration:none; font-size:15px; line-height:1.45; color:var(--pearl-muted); }
.pf-tab:last-child { border-bottom-color:transparent; }
.pf-tab:hover { color:var(--pearl-ink); background:var(--pearl-soft); }
.pf-tab[aria-selected=true] { border-color:var(--pearl-strong); color:var(--pearl-ink); background:var(--pearl-alt); }
.pf-tab-index { font:400 12px/1.5 var(--pearl-font-mono); }
.pf-tab-arrow { margin-left:auto; color:var(--pearl-accent-text); font-size:18px;  line-height:1.6; }
.pf-records { min-width:0; }
.pf-record { padding:32px 40px; position:relative; }
.pf-record[hidden] { display:none; }
.pf-record:not([hidden])+.pf-record:not([hidden]) { border-top:1px solid var(--pearl-line); }
.pf-record-top { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-bottom:25px; border-bottom:1px solid var(--pearl-line); margin-bottom:26px; }
.pf-record-glyph { font:400 14px/1 var(--pearl-font-mono); color:var(--pearl-art); }
.pf-record h3 { max-width:28ch; }
.pf-record-purpose { color:var(--pearl-muted); margin-top:16px; max-width:58ch; }
.pf-record dl { margin:24px 0 0; }
.pf-record dl>div { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:20px; border-top:1px solid var(--pearl-line); padding-block:20px; }
.pf-record dt { font:400 12px/1.6 var(--pearl-font-mono); color:var(--pearl-muted); }
.pf-record dd { margin:0; color:var(--pearl-ink); }
/* CEO direction, 8 October 2026 (item 7): label and value in a record row share one size. */
.platform-page .pf-main .pf-record dd,.pf-main .pf-record dd { font-size:12px; line-height:1.6; }
.pf-record dl>div { align-items:baseline; }
.platform-page .pf-main .pf-record-note { border-top:1px solid var(--pearl-line); padding-top:20px; color:var(--pearl-muted); font-size:13px;  line-height:1.6; }
.pf-boundary,.pf-details { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:var(--pearl-hero-gap); }
.pf-boundary p { color:var(--pearl-muted); max-width:63ch; }
.pf-detail-list { min-width:0; }
.pf-detail-list details { border-top:1px solid var(--pearl-line); }
.pf-detail-list details:last-child { border-bottom:1px solid var(--pearl-line); }
.pf-detail-list summary { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:64px; padding-block:18px; font:400 16px/1.5 var(--pearl-font-body); color:var(--pearl-ink); list-style:none; }
.pf-detail-list summary::-webkit-details-marker { display:none; }
.pf-detail-list summary>span { flex:none; font-size:22px;  line-height:1.6; }
.pf-detail-list details[open]>summary>span { transform:rotate(45deg); }
.pf-detail-list details>p { padding:0 36px 24px 0; color:var(--pearl-muted); }
.pf-allocation-body { padding-bottom:24px; }
.pf-allocation-body>p { color:var(--pearl-muted); margin-bottom:24px; }
.pf-allocation table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:13px;  line-height:1.6; }
.pf-allocation caption { text-align:left; padding-bottom:16px; color:var(--pearl-muted); }
.platform-page .pf-allocation :is(td,th) { padding:12px 8px; border-bottom:1px solid var(--pearl-line); vertical-align:top; text-align:left; overflow-wrap:anywhere; font:400 13px/1.5 var(--pearl-font-body); }
.pf-allocation th:first-child { width:25%; }
.pf-allocation thead th { color:var(--pearl-muted); }
.pf-next { display:grid; grid-template-columns:1fr 1fr; gap:48px; padding-block:40px 64px; }
.pf-next-link { display:flex; justify-content:space-between; gap:24px; padding-block:12px; text-decoration:none; }
.pf-next-name { font:600 18px/1.4 var(--pearl-font-display); display:block; }
.pf-next-description { display:block; color:var(--pearl-muted); font-size:14px; margin-top:12px;  line-height:1.6; }
.pf-next-arrow { color:var(--pearl-accent-text); font-size:24px;  line-height:1.6; }
.pf-next-link:hover .pf-next-name { text-decoration:underline;text-decoration-thickness:var(--pearl-link-underline); text-underline-offset:var(--pearl-link-underline-offset); }
.pf-anchor { display:block; position:absolute; top:0; left:0; scroll-margin-top:28px; }
@media (min-width:1600px) { .pf-hero { padding-block:40px 88px; } }
@media (max-width:1100px) { body.platform-page { --pf-small-title:20px; --pf-space:72px; } .pf-art { padding:22px 20px; } .pf-steps { gap:24px; } .pf-record { padding:28px; } }
@media (max-width:900px) { .pf-hero { grid-template-columns:1fr; gap:36px; padding-block:16px 56px; } .pf-hero-copy { max-width:68ch; } .pf-art { max-width:660px; width:100%; } .pf-section-intro,.pf-boundary,.pf-details { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:32px; } .pf-steps { gap:24px; } .pf-steps li { grid-template-columns:1fr; gap:12px; } .pf-explorer { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); } .pf-tab { padding:14px 10px; gap:10px; } .pf-record dl>div { grid-template-columns:1fr; gap:8px; } }
@media (max-width:680px) {
 body.platform-page { --pf-space:52px; --pf-small-title:22px; }
 .pf-breadcrumb { padding-block:16px; column-gap:9px; font-size:12px;  line-height:1.6; }
 .pf-hero { padding-top:8px; gap:30px; }
 .pf-hero-copy h1 { margin-top:16px!important; }
 .platform-page .pf-main .pf-label { font-size:12px; letter-spacing:.035em;  line-height:1.6; }
 .pf-art { padding:18px 16px; }
 .platform-page .pf-main .pf-art-title { font-size:18px;  line-height:1.6; }
 .pf-nodes { margin-block:20px; }
 .pf-nodes:before { top:30px; }
 .pf-node-icon { width:58px; height:60px; }
 .pf-node-icon svg { width:48px; height:48px; }
 .pf-node-name { font-size:13px; line-height:1.5; }
 .pf-section-intro,.pf-boundary,.pf-details { grid-template-columns:1fr; gap:24px; }
 .pf-section-intro { margin-bottom:30px; }
 .pf-steps { grid-template-columns:1fr; gap:28px; }
 .pf-steps li { grid-template-columns:28px minmax(0,1fr); gap:14px; padding-top:24px; }
 .pf-steps p { margin-top:16px; padding-top:16px; }
 .pf-explorer { grid-template-columns:1fr; }
 .pf-tabs { border-right:0; border-bottom:1px solid var(--pearl-line); }
 .pf-tabs[role=tablist] { display:grid; grid-template-columns:1fr 1fr; gap:4px; }
 .pf-tab { font-size:14px; padding:12px 10px; min-height:68px; border-bottom-color:transparent;  line-height:1.6; }
 .pf-tab-index,.pf-tab-arrow { display:none; }
 .pf-record { padding:24px 20px; }
 .pf-record-top { padding-bottom:20px; margin-bottom:22px; }
 .pf-next { grid-template-columns:1fr; gap:20px; padding-block:32px 52px; }
 .pf-next-link+.pf-next-link { border-top:1px solid var(--pearl-line); padding-top:28px; }
 .pf-allocation thead { position:absolute; clip-path:inset(50%); width:1px; height:1px; overflow:hidden; }
 .pf-allocation tbody,.pf-allocation tr,.pf-allocation td,.pf-allocation th { display:block; width:100%; }
 .pf-allocation tr { border:1px solid var(--pearl-line); margin-bottom:16px; padding:12px; }
 .platform-page .pf-allocation th[scope=row] { width:100%; font-weight:600; }
 .platform-page .pf-allocation td { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
 .pf-allocation td:before { content:attr(data-label); color:var(--pearl-muted); }
}

/* Home-derived expression: colour carries structure; motion follows a stated flow. */
.platform-page .pf-main h1>span:last-child { color:var(--pearl-accent-text); }
.platform-page .pf-main h2 { letter-spacing:-0.0275em; }
.platform-page .pf-main h2>span:last-child { color:var(--pearl-accent-text); }
.platform-page .pf-main .pf-section-label { display:flex; align-items:center; gap:10px; margin:0 0 20px; color:var(--pearl-art); font:400 12px/1.6 var(--pearl-font-mono); letter-spacing:.05em; }
.pf-section-label>span { width:7px; height:7px; border:1px solid var(--pearl-motion-data); background:var(--pearl-motion-data); transform:rotate(45deg); flex:none; }
.pf-heading { min-width:0; }
.pf-art { position:relative; padding:28px; background:var(--pearl-panel); border-color:var(--pearl-strong); box-shadow:12px 12px 0 -1px var(--pearl-bg),12px 12px 0 0 var(--pearl-line); width:calc(100% - 12px); }
.pf-art-top { border-bottom:1px solid var(--pearl-line); padding-bottom:14px; }
.pf-art-mark { color:var(--pearl-motion-data); }
.platform-page .pf-main .pf-art-title { font-size:21px; line-height:1.4; }
.pf-motion-stage { position:relative; margin:24px 0; }
.pf-nodes { margin:0; }
.pf-nodes:before { display:none; }
.pf-nodes li { gap:16px; }
.pf-node-icon { position:relative; width:88px; height:88px; border:1px solid var(--pearl-strong); border-radius:4px; background:var(--pearl-alt); color:var(--pearl-art); }
.pf-node-icon:after { content:""; position:absolute; width:16px; height:2px; bottom:-1px; left:calc(50% - 8px); background:var(--pearl-motion-data); }
.pf-node-icon svg { width:64px; height:64px; stroke-width:1.3; }
.pf-nodes li:nth-child(2) .pf-node-icon { background:color-mix(in srgb,var(--pearl-motion-data) 9%,var(--pearl-panel)); }
.pf-nodes .pf-signal { stroke:var(--pearl-motion-data); }
.pf-nodes .is-passing .pf-node-icon { color:var(--pearl-motion-data); border-color:var(--pearl-motion-data); background:color-mix(in srgb,var(--pearl-motion-data) 13%,var(--pearl-panel)); }
.pf-motion-track { position:absolute; height:1px; background:var(--pearl-strong); left:16.6667%; right:16.6667%; top:44px; }
.pf-motion-pulse { position:absolute; width:7px; height:7px; border-radius:50%; left:0; top:-3px; background:var(--pearl-motion-data); transform:translateX(-50%); box-shadow:0 0 0 4px color-mix(in srgb,var(--pearl-motion-data) 12%,transparent); opacity:0; }
.pf-motion-toggle { border:0; background:transparent; padding:8px 0 0; margin-top:4px; color:var(--pearl-muted); min-height:44px; display:inline-flex; align-items:center; gap:10px; font:400 12px/1.5 var(--pearl-font-body); }
.pf-motion-toggle[hidden] { display:none; }
.pf-pause-symbol { color:var(--pearl-motion-data); font-size:15px; line-height:1.5; }
.pf-spotlight { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:var(--pearl-hero-gap); }
.pf-spotlight-copy>p { margin-top:26px; max-width:59ch; color:var(--pearl-muted); }
.pf-thread-figure { margin:0; padding:28px; border:1px solid var(--pearl-line); background:var(--pearl-alt); border-radius:var(--pearl-radius-panel); }
.pf-thread { display:grid; grid-template-columns:minmax(0,1.1fr) 64px minmax(0,1fr); align-items:center; margin:24px 0; }
.pf-thread-inputs { display:grid; gap:12px; }
.pf-source-node { display:flex; align-items:center; gap:10px; min-height:60px; border:1px solid var(--pearl-strong); padding:12px; color:var(--pearl-ink); background:var(--pearl-panel); font:400 14px/1.5 var(--pearl-font-body); }
.pf-source-dot { width:5px; height:5px; flex:none; background:var(--pearl-motion-data); }
.pf-connections { width:100%; height:204px; fill:none; stroke:var(--pearl-strong); stroke-width:1.3; }
.pf-connections circle { fill:var(--pearl-motion-data); stroke:var(--pearl-motion-data); }
.pf-core-node { padding:20px 12px; border:1px solid var(--pearl-motion-data); background:var(--pearl-panel); display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
.pf-core-node>svg { width:62px; height:62px; fill:none; stroke:var(--pearl-art); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.pf-core-node>span { font:500 15px/1.5 var(--pearl-font-display); }
.pf-core-node>span>span { display:block; }
.pf-thread-figure figcaption { display:flex; gap:12px; align-items:center; padding-top:18px; border-top:1px solid var(--pearl-line); color:var(--pearl-muted); font:400 13px/1.6 var(--pearl-font-body); }
.pf-output-mark { flex:none; width:8px; height:8px; border:1px solid var(--pearl-motion-data); border-radius:50%; }
.pf-record { border-top:3px solid var(--pearl-motion-data); }
.pf-record-glyph { color:var(--pearl-motion-data); }
.pf-capabilities { list-style:none; padding:0; margin:22px 0 0; display:grid; gap:12px; }
.platform-page .pf-main .pf-capabilities li { display:flex; gap:12px; font-size:15px; line-height:1.6; color:var(--pearl-ink); }
.pf-capabilities li:before { content:""; flex:none; width:5px; height:5px; margin-top:10px; background:var(--pearl-motion-data); }
.pf-detail-list summary { font-family:var(--pearl-font-display); font-size:17px; line-height:1.55; font-weight:500; padding-block:22px; letter-spacing:-0.01em; }
.pf-detail-list summary>span { color:var(--pearl-accent-text); display:grid; place-items:center; width:32px; height:32px; border:1px solid var(--pearl-strong); border-radius:50%; font-size:20px; line-height:1.5; }
.pf-detail-list details[open]>summary { color:var(--pearl-accent-text); }
.pf-detail-list details[open] { border-top-color:var(--pearl-strong); }
@media(max-width:1100px) {
 .pf-art { padding:24px 20px; }
 .pf-thread-figure { padding:24px 20px; }
 .pf-thread { grid-template-columns:minmax(0,1.1fr) 40px minmax(0,1fr); }
 .pf-source-node { padding:10px; gap:7px; font-size:13px; line-height:1.5; }
}
@media(max-width:900px) {
 .pf-spotlight { grid-template-columns:1fr; gap:32px; }
 .pf-thread-figure { max-width:660px; width:100%; }
}
@media(max-width:680px) {
 .platform-page .pf-main .pf-section-label { font-size:11px; line-height:1.6; letter-spacing:.035em; margin-bottom:16px; }
 .pf-art { padding:20px 16px; width:calc(100% - 6px); box-shadow:6px 6px 0 -1px var(--pearl-bg),6px 6px 0 0 var(--pearl-line); }
 .platform-page .pf-main .pf-art-title { font-size:18px; line-height:1.5; }
 .pf-node-icon { width:60px; height:70px; }
 .pf-node-icon svg { width:48px; height:48px; }
 .pf-motion-track { top:35px; }
 .pf-node-name { font-size:12px; line-height:1.6; }
 .pf-motion-stage { margin-block:18px; }
 .pf-art-key { padding-top:12px; }
 .pf-art figcaption { margin-top:6px; }
 .pf-thread-figure { padding:24px 16px; }
 .pf-thread { grid-template-columns:minmax(0,1.15fr) 28px minmax(0,.9fr); }
 .pf-source-node { padding:8px; font-size:13px; line-height:1.5; min-height:60px; }
 .pf-core-node { padding:16px 8px; }
 .pf-core-node>span { font-size:13px; line-height:1.5; }
 .pf-core-node>svg { width:48px; height:48px; }
 .pf-detail-list summary { font-size:16px; line-height:1.5; }
}

/* Page-specific explanatory compositions, sharing the selected type and colour roles. */
.platform-page .pf-main h1>span:last-child { color:var(--pearl-ink); }
.pf-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; margin-top:28px; }
.pf-hero-actions .pf-text-link { margin:0; }
.pf-button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:15px 22px; min-height:52px; border:1px solid var(--pearl-strong); border-radius:2px; font:600 14px/1.6 var(--pearl-font-body); text-decoration:none; }
.pf-button>span { flex:none; font-size:20px; line-height:1.6; }
.pf-button--primary { background:var(--pearl-accent-mark); border-color:var(--pearl-accent-mark); color:var(--pearl-on); }
.pf-button--primary:hover { background:var(--pearl-hover); border-color:var(--pearl-hover); }
.pf-button--outline { background:transparent; color:var(--pearl-ink); }
.pf-button--outline:hover { background:var(--pearl-alt); }
.pf-section-intro { display:block; }
.pf-section-intro>p { margin-top:24px; max-width:70ch; }
.pf-record-purpose { max-width:none; width:100%; }
.pf-detail-list details>p { padding-right:0; }
.pf-line-icon { width:64px; height:64px; fill:none; stroke:currentColor; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; flex:none; }
.pf-art { box-shadow:none; width:100%; }
.pf-art--launch-os,.pf-art--workspaces { background:transparent; border:0; padding-inline:0; }
.pf-art--evidence-model { border-color:var(--pearl-line); box-shadow:8px 8px 0 -1px var(--pearl-bg),8px 8px 0 0 var(--pearl-line); width:calc(100% - 8px); }
.pf-art--programs-activation { background:transparent; border:0; padding-inline:8px; }
.pf-launch-map { display:grid; grid-template-columns:minmax(0,1fr) 120px; gap:20px; align-items:center; margin:24px 0; }
.pf-lifecycle-rail { position:relative; list-style:none; margin:0; padding:0; }
.pf-lifecycle-rail:before { content:""; position:absolute; left:7px; top:15px; bottom:38px; width:1px; background:var(--pearl-strong); }
.pf-lifecycle-rail li { display:flex; gap:18px; align-items:start; position:relative; padding:13px 0; }
.pf-lifecycle-rail strong { font:500 16px/1.6 var(--pearl-font-display); color:var(--pearl-ink); }
.pf-lifecycle-rail li div>span { display:block; margin-top:4px; font:400 13px/1.6 var(--pearl-font-body); color:var(--pearl-muted); }
.pf-rail-dot { width:15px; height:15px; border:1px solid var(--pearl-strong); background:var(--pearl-bg); border-radius:50%; margin-top:5px; flex:none; }
.is-passing .pf-rail-dot { background:var(--pearl-motion-data); border-color:var(--pearl-motion-data); box-shadow:0 0 0 6px color-mix(in srgb,var(--pearl-motion-data) 10%,transparent); }
.pf-continuing-record { position:relative; display:flex; align-items:center; flex-direction:column; gap:14px; text-align:center; padding:20px 8px; border-block:1px solid var(--pearl-strong); color:var(--pearl-art); }
.pf-continuing-record>span { font:400 13px/1.6 var(--pearl-font-body); }
.pf-record-thread { position:absolute; width:20px; height:1px; right:100%; top:50%; background:var(--pearl-strong); }
.pf-evidence-map { display:grid; grid-template-columns:1fr 1.25fr 1fr; grid-template-rows:44px 124px 44px; position:relative; align-items:center; justify-items:center; margin:16px 0; }
.pf-orbit-lines { position:absolute; inset:0; width:100%; height:100%; stroke:var(--pearl-strong); stroke-width:1.2; fill:none; z-index:0; }
.pf-orbit-lines circle { fill:var(--pearl-motion-data); stroke:var(--pearl-motion-data); }
.pf-orbit-label { z-index:1; background:var(--pearl-panel); padding:8px; font:400 13px/1.6 var(--pearl-font-body); color:var(--pearl-muted); }
.pf-orbit-top { grid-area:1/2; }.pf-orbit-left { grid-area:2/1; }.pf-orbit-right { grid-area:2/3; }.pf-orbit-bottom { grid-area:3/2; }
.pf-evidence-core { grid-area:2/2; z-index:1; display:flex; flex-direction:column; align-items:center; padding:8px; background:var(--pearl-panel); text-align:center; gap:10px; }
.pf-evidence-core svg { width:76px; height:76px; }
.pf-evidence-core span { font:400 13px/1.6 var(--pearl-font-body); color:var(--pearl-ink); }
.pf-ai-map { margin:24px 0; }
.pf-ai-sources { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.pf-ai-sources>span { border-top:1px solid var(--pearl-strong); padding-top:12px; text-align:center; font:400 13px/1.6 var(--pearl-font-body); }
.pf-ai-joins { display:block; width:100%; height:34px; stroke:var(--pearl-strong); stroke-width:1.3; fill:none; }
.pf-ai-stream { stroke:var(--pearl-motion-data); stroke-width:2; stroke-dasharray:100; stroke-dashoffset:100; }
.pf-ai-core { display:flex; align-items:center; justify-content:center; gap:18px; border-block:1px solid var(--pearl-strong); padding:14px 0; }
.pf-ai-core>span { font:500 16px/1.6 var(--pearl-font-display); color:var(--pearl-ink); }
.pf-ai-core small { display:block; font:400 12px/1.6 var(--pearl-font-body); color:var(--pearl-muted); margin-top:5px; }
.pf-ai-core.is-passing { background:color-mix(in srgb,var(--pearl-motion-data) 8%,var(--pearl-panel)); border-color:var(--pearl-motion-data); }
.pf-ai-output { display:flex; align-items:center; gap:12px; margin-top:18px; font:400 13px/1.6 var(--pearl-font-body); }
.pf-ai-output.is-passing { color:var(--pearl-motion-data); }
.pf-citation-lines { flex:1; height:9px; min-width:12px; border-block:1px solid var(--pearl-strong); }
.pf-workspace-map { margin:20px 0; }
.pf-workspace-core { display:flex; align-items:center; gap:20px; padding-bottom:22px; margin-bottom:18px; border-bottom:1px solid var(--pearl-strong); }
.pf-workspace-core>span { color:var(--pearl-ink); font:500 17px/1.6 var(--pearl-font-display); }
.pf-workspace-core small { display:block; font:400 13px/1.6 var(--pearl-font-body); color:var(--pearl-muted); margin-top:4px; }
.pf-surface-network { display:grid; grid-template-columns:1fr 1fr; gap:14px 18px; }
.pf-surface-network>span { display:flex; gap:10px; align-items:center; color:var(--pearl-art); font:400 13px/1.6 var(--pearl-font-body); }
.pf-surface-network i { width:6px; height:6px; flex:none; border:1px solid var(--pearl-motion-data); border-radius:50%; }
.pf-transfer-map { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:0 50px; margin:24px 0; }
.pf-transfer-end { display:flex; flex-direction:column; align-items:center; gap:10px; z-index:1; }
.pf-transfer-end>svg { background:var(--pearl-panel); }
.pf-transfer-end>span { font:400 13px/1.6 var(--pearl-font-body); text-align:center; color:var(--pearl-ink); }
.pf-transfer-end small { display:block; color:var(--pearl-muted); font:inherit; }
.pf-transfer-end.is-passing svg { color:var(--pearl-motion-data); }
.pf-transfer-track { position:absolute; height:1px; left:22%; right:22%; top:32px; background:var(--pearl-strong); }
.pf-transfer-check { position:absolute; left:50%; top:0; transform:translate(-50%,-50%); background:var(--pearl-panel); }
.pf-transfer-check svg { width:40px; height:40px; }
.pf-transfer-check.is-passing { color:var(--pearl-motion-data); }
.pf-transfer-caption { grid-column:1/-1; text-align:center; border-top:1px solid var(--pearl-line); padding-top:14px; margin-top:20px; font:400 13px/1.6 var(--pearl-font-mono); color:var(--pearl-art); }
.pf-transfer-caption>span { display:block; font:400 12px/1.6 var(--pearl-font-body); color:var(--pearl-muted); }
.pf-contribution-file { position:relative; margin:28px 0 20px; padding:20px; border:1px solid var(--pearl-strong); background:var(--pearl-panel); box-shadow:6px -6px 0 -1px var(--pearl-bg),6px -6px 0 0 var(--pearl-line); }
.pf-file-heading { display:flex; align-items:center; gap:16px; font:500 15px/1.6 var(--pearl-font-display); color:var(--pearl-ink); }
.pf-file-heading svg { width:40px; height:40px; }
.pf-contribution-file dl { margin:18px 0 0; }
.pf-contribution-file dl>div { display:flex; justify-content:space-between; gap:16px; border-top:1px solid var(--pearl-line); padding-block:10px; }
.pf-contribution-file dt,.platform-page .pf-main .pf-contribution-file dd { font:400 13px/1.6 var(--pearl-font-body); margin:0; }
.pf-contribution-file dt { color:var(--pearl-muted); }.pf-contribution-file dd { text-align:right; }
.pf-mechanism--launch-os { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:var(--pearl-hero-gap); }
.pf-mechanism--launch-os .pf-steps { display:block; border-left:1px solid var(--pearl-strong); padding-left:32px; }
.pf-mechanism--launch-os .pf-steps li { position:relative; border-top:0; padding:0 0 32px; }
.pf-mechanism--launch-os .pf-steps li:last-child { padding-bottom:0; }
.pf-mechanism--launch-os .pf-steps li:before { content:""; position:absolute; left:-38px; top:8px; width:11px; height:11px; border:1px solid var(--pearl-strong); border-radius:50%; background:var(--pearl-bg); }
.pf-mechanism--evidence-model .pf-steps { gap:0; border-bottom:1px solid var(--pearl-line); }
.pf-mechanism--evidence-model .pf-steps li { padding:28px; background:var(--pearl-alt); }
.pf-mechanism--evidence-model .pf-steps li+li { border-left:1px solid var(--pearl-line); }
.pf-mechanism--alpha-ai-engine .pf-steps { counter-reset:context; }
.pf-mechanism--alpha-ai-engine .pf-step-number { font:500 24px/1.4 var(--pearl-font-display); color:var(--pearl-art); }
.pf-mechanism--workspaces { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:var(--pearl-hero-gap); }
.pf-mechanism--workspaces .pf-steps { grid-template-columns:1fr; gap:28px; }
.pf-mechanism--workspaces .pf-steps li { grid-template-columns:32px 1fr; }
.pf-mechanism--workspaces .pf-steps h3 { min-height:0; flex-direction:row; justify-content:start; gap:.3em; flex-wrap:wrap; }
.pf-mechanism--workspaces .pf-steps p { padding:0; border:0; margin-top:14px; }
.pf-mechanism--utility-rails .pf-steps { display:block; border-bottom:1px solid var(--pearl-line); }
.pf-mechanism--utility-rails .pf-steps li { padding:24px 0; }
.pf-mechanism--utility-rails .pf-steps li>div { display:grid; grid-template-columns:minmax(0,.5fr) minmax(0,1fr); gap:32px; }
.pf-mechanism--utility-rails .pf-steps p { margin:0; padding:0; border:0; }
.pf-mechanism--programs-activation .pf-steps li { padding:24px; background:var(--pearl-panel); border-top:3px solid var(--pearl-strong); }
.pf-relation { margin:0; padding:28px; border-block:1px solid var(--pearl-strong); }
.pf-relation-body { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); align-items:center; gap:28px; margin-block:24px; }
.pf-relation-record { display:flex; flex-direction:column; align-items:start; gap:14px; color:var(--pearl-art); }
.pf-relation-record>span { font:500 18px/1.5 var(--pearl-font-display); color:var(--pearl-ink); }
.pf-relation-record>span>span { display:block; }
.pf-relation-rows>div { display:flex; align-items:center; gap:12px; border-bottom:1px solid var(--pearl-line); padding:16px 0; font:400 14px/1.6 var(--pearl-font-body); }
.pf-relation-index { font:400 12px/1.6 var(--pearl-font-mono); color:var(--pearl-muted); }
.pf-relation-joint { width:6px; height:6px; margin-left:auto; border:1px solid var(--pearl-motion-data); border-radius:50%; flex:none; }
.pf-relation figcaption { color:var(--pearl-muted); border-top:1px solid var(--pearl-line); padding-top:16px; font:400 13px/1.6 var(--pearl-font-body); }
.pf-relation--evidence-model { background:var(--pearl-panel); border:1px solid var(--pearl-strong); box-shadow:8px 8px 0 -1px var(--pearl-bg),8px 8px 0 0 var(--pearl-line); width:calc(100% - 8px); }
.pf-relation--workspaces { border:0; border-left:2px solid var(--pearl-strong); background:var(--pearl-alt); }
.pf-relation--utility-rails .pf-relation-body { grid-template-columns:1fr; }
.pf-relation--utility-rails .pf-relation-record { flex-direction:row; align-items:center; }
.pf-relation--programs-activation { border:0; background:var(--pearl-panel); }
.pf-spotlight--evidence-model>.pf-spotlight-copy,.pf-spotlight--programs-activation>.pf-spotlight-copy { order:2; }
.pf-journey { padding-block:64px 80px; border-top:1px solid var(--pearl-strong); }
.pf-journey-intro { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:40px; margin-bottom:36px; }
.pf-journey-intro>p { color:var(--pearl-muted); max-width:55ch; }
.pf-journey-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.pf-journey-action { min-width:0; display:flex; flex-direction:column; }
.pf-journey-action>.pf-label { margin-bottom:12px; }
.pf-journey-action .pf-button { width:100%; flex:1; }
@media(max-width:1100px) {
 .pf-launch-map { grid-template-columns:minmax(0,1fr) 98px; gap:12px; }
 .pf-lifecycle-rail li { gap:12px; }
 .pf-journey-actions { gap:16px; }
 .pf-journey-action .pf-button { padding:14px; gap:12px; }
}
@media(max-width:900px) {
 .pf-mechanism--launch-os,.pf-mechanism--workspaces { grid-template-columns:1fr; gap:20px; }
 .pf-mechanism--evidence-model .pf-steps li,.pf-mechanism--programs-activation .pf-steps li { padding:20px 16px; }
 .pf-spotlight--evidence-model>.pf-spotlight-copy,.pf-spotlight--programs-activation>.pf-spotlight-copy { order:0; }
 .pf-journey-intro { grid-template-columns:1fr; gap:24px; }
}
@media(max-width:680px) {
 .pf-hero-actions { align-items:start; gap:12px 22px; }
 .pf-button { padding:13px 18px; }
 .pf-launch-map { grid-template-columns:minmax(0,1fr) 82px; }
 .pf-continuing-record svg { width:50px; height:50px; }
 .pf-lifecycle-rail strong { font-size:14px; line-height:1.6; }
 .pf-lifecycle-rail li div>span { font-size:12px; line-height:1.6; }
 .pf-lifecycle-rail li { padding-block:10px; }
 .pf-art--launch-os,.pf-art--workspaces { padding-inline:0; }
 .pf-evidence-map { grid-template-rows:32px 128px 32px; }
 .pf-orbit-label { padding:5px; font-size:12px; line-height:1.6; }
 .pf-evidence-core svg { width:62px; height:62px; }
 .pf-ai-sources { gap:8px; }
 .pf-ai-sources>span { font-size:12px; line-height:1.6; }
 .pf-ai-core { gap:12px; }
 .pf-ai-core svg { width:48px; height:48px; }
 .pf-ai-core>span { font-size:14px; line-height:1.6; }
 .pf-ai-core small { font-size:12px; line-height:1.6; }
 .pf-ai-output { font-size:12px; line-height:1.6; }
 .pf-surface-network { gap:12px; }
 .pf-surface-network>span { font-size:12px; line-height:1.6; gap:8px; }
 .pf-transfer-end>svg { width:54px; height:54px; }
 .pf-transfer-track { top:27px; }
 .pf-transfer-end>span { font-size:12px; line-height:1.6; }
 .pf-contribution-file { padding:16px; }
 .pf-contribution-file dl>div { gap:12px; }
 .pf-contribution-file dt,.platform-page .pf-main .pf-contribution-file dd { font-size:12px; line-height:1.6; }
 .pf-file-heading { font-size:14px; line-height:1.6; gap:12px; }
 .pf-mechanism--launch-os .pf-steps { padding-left:24px; }
 .pf-mechanism--launch-os .pf-steps li:before { left:-30px; }
 .pf-mechanism--evidence-model .pf-steps li+li { border-left:0; }
 .pf-mechanism--utility-rails .pf-steps li>div { grid-template-columns:1fr; gap:16px; }
 .pf-relation { padding:24px 16px; }
 .pf-relation-body { grid-template-columns:1fr 1.3fr; gap:16px; }
 .pf-relation-record>span { font-size:16px; line-height:1.5; }
 .pf-relation-rows>div { font-size:13px; line-height:1.6; gap:8px; }
 .pf-journey { padding-block:48px 56px; }
 .pf-journey-actions { grid-template-columns:1fr; gap:22px; }
 .pf-journey-action>.pf-label { margin-bottom:8px; }
}
.pf-ai-sources.is-passing>span { color:var(--pearl-motion-data); border-top-color:var(--pearl-motion-data); }
/* The launch checkpoint connects continuously to the retained record. */
.pf-lifecycle-rail { display:grid; grid-template-rows:repeat(3,1fr); }
.pf-lifecycle-rail li>div { min-width:0; }
.pf-lifecycle-rail li:nth-child(2):after { content:""; flex:1; min-width:8px; height:1px; align-self:center; background:var(--pearl-strong); margin-right:-20px; }
.pf-record-thread { display:none; }
@media(max-width:1100px) { .pf-lifecycle-rail li:nth-child(2):after { margin-right:-12px; } }

/* Strategic exhibits: source, interpretation, participation and eligibility. */
.pf-standards-rail { display:flex; align-items:center; gap:12px; margin-top:24px; padding:12px 0; border-bottom:1px solid var(--pearl-strong); color:var(--pearl-ink); font:500 14px/1.6 var(--pearl-font-display); }
.pf-standards-rail>span { color:var(--pearl-motion-data); font-size:22px; line-height:1.2; }
.pf-standards-rail+.pf-launch-map { margin-top:8px; }
.pf-provenance-art,.pf-intelligence-art,.pf-collaboration-art { width:100%; max-width:420px; margin:24px auto; }
.pf-exhibit-lines { width:100%; display:block; overflow:visible; fill:none; stroke:var(--pearl-art); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.pf-exhibit-lines .pf-line-icon { width:64px; height:64px; }
.pf-exhibit-lines .pf-line-icon[width="48"] { width:48px; height:48px; }
.pf-exhibit-lines .pf-drawing-link { stroke:var(--pearl-strong); }
.pf-exhibit-lines .pf-drawing-ground { stroke:var(--pearl-line); }
.pf-exhibit-lines .pf-drawing-dot { fill:var(--pearl-motion-data); stroke:var(--pearl-motion-data); }
.pf-exhibit-lines .pf-engine-halo { fill:color-mix(in srgb,var(--pearl-motion-data) 5%,var(--pearl-panel)); stroke:var(--pearl-strong); }
.pf-exhibit-lines .is-passing { color:var(--pearl-motion-data); }
.pf-exhibit-lines .is-passing .pf-engine-halo { stroke:var(--pearl-motion-data); fill:color-mix(in srgb,var(--pearl-motion-data) 10%,var(--pearl-panel)); }
.pf-exhibit-labels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); text-align:center; gap:12px; }
.pf-exhibit-labels>span { color:var(--pearl-ink); font:400 13px/1.5 var(--pearl-font-body); }
.pf-evidence-return { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:18px; color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-body); }
.pf-evidence-return>span { color:var(--pearl-motion-data); font-size:18px; line-height:1.4; }
.pf-collaboration-art .pf-exhibit-labels { margin-bottom:8px; }
.pf-access-joints { stroke:var(--pearl-motion-data); fill:var(--pearl-bg); }
.pf-shared-record-label { color:var(--pearl-ink); text-align:center; font:500 15px/1.6 var(--pearl-font-display); margin-top:8px; }
.pf-shared-record-label>span { display:block; color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-body); margin-top:4px; }
.pf-program-art { margin:26px auto 24px; max-width:420px; }
.pf-program-inputs { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.pf-program-inputs>div { display:flex; align-items:center; flex-direction:column; gap:10px; }
.pf-program-inputs svg { width:48px; height:48px; }
.pf-program-inputs span { font:400 13px/1.5 var(--pearl-font-body); color:var(--pearl-ink); text-align:center; }
.pf-program-joins { display:block; width:100%; height:38px; fill:none; stroke:var(--pearl-strong); stroke-width:1.3; }
.pf-program-aperture { display:flex; justify-content:center; align-items:center; gap:24px; padding:8px; color:var(--pearl-ink); font:500 16px/1.5 var(--pearl-font-display); }
.pf-aperture-edge { width:16px; height:42px; flex:none; border-block:1px solid var(--pearl-motion-data); border-left:1px solid var(--pearl-motion-data); }
.pf-aperture-edge:last-child { transform:rotate(180deg); }
.pf-program-result { display:flex; align-items:center; justify-content:center; gap:12px; padding-top:26px; position:relative; font:400 14px/1.5 var(--pearl-font-body); color:var(--pearl-ink); }
.pf-program-result svg { width:34px; height:34px; }
.pf-program-thread { position:absolute; left:50%; top:0; height:20px; width:1px; background:var(--pearl-strong); }
/* A visible end to each narrative, followed by a consistent navigation choice. */
.pf-journey { margin-inline:calc(-1 * var(--pearl-gutter)); padding:56px var(--pearl-gutter) 64px; background:var(--pearl-accent-mark); border:0; color:var(--pearl-on); }
.pf-journey-intro { grid-template-columns:1fr 1fr; align-items:end; gap:40px; margin-bottom:36px; padding-bottom:32px; border-bottom:1px solid color-mix(in srgb,var(--pearl-on) 35%,var(--pearl-accent-mark)); }
.platform-page .pf-main .pf-journey :is(h2,h2>span,.pf-label) { color:var(--pearl-ink); }
.pf-journey-heading>.pf-label { margin-bottom:20px; }
.platform-page .pf-main .pf-journey-intro>p { color:var(--pearl-on); max-width:52ch; }
.pf-journey-actions { gap:28px; }
.pf-journey-action>.pf-label { font-size:12px; line-height:1.6; }
.pf-journey .pf-button { border-color:var(--pearl-on); color:var(--pearl-on); background:transparent; }
.pf-journey .pf-button--primary { color:var(--pearl-accent-text); background:var(--pearl-on); }
.pf-journey .pf-button:hover { background:color-mix(in srgb,var(--pearl-on) 10%,var(--pearl-accent-mark)); }
.pf-journey .pf-button--primary:hover { color:var(--pearl-accent-text); background:color-mix(in srgb,var(--pearl-on) 90%,var(--pearl-accent-mark)); }
.pf-journey a:focus-visible { outline:2px solid var(--pearl-on); outline-offset:var(--pearl-focus-offset); }
@media(max-width:900px) { .pf-journey-intro { grid-template-columns:1fr 1fr; gap:28px; } }
@media(max-width:680px) {
 .pf-exhibit-labels { gap:6px; }
 .pf-exhibit-labels>span { font-size:12px; line-height:1.5; }
 .pf-provenance-art,.pf-intelligence-art,.pf-collaboration-art { margin-block:22px; }
 .pf-journey { padding-block:40px 48px; }
 .pf-journey-intro { grid-template-columns:1fr; gap:20px; padding-bottom:24px; margin-bottom:28px; }
 .pf-journey-actions { gap:20px; }
 .pf-journey-action .pf-button { padding:14px 18px; }
}
.pf-protocol-label { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 16px; margin-top:22px; padding-bottom:14px; border-bottom:1px solid var(--pearl-line); }
.pf-protocol-label>span { color:var(--pearl-ink); font:500 14px/1.6 var(--pearl-font-display); }
.pf-protocol-label>small { color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-body); }

/* One title per exhibit; compact rhythm also accommodates motion controls. */
.pf-art-top { border:0; padding:0; align-items:flex-start; gap:20px; }
.platform-page .pf-main .pf-art-top .pf-art-title { margin:0; }
.pf-art-top .pf-art-mark { flex:none; margin-top:2px; }
.pf-standards-rail { margin-top:16px; padding-block:8px; }
.pf-journey { margin-inline:calc(50% - 50vw); padding-inline:calc(50vw - 50%); }

/* The operating framework, distinct from the lifecycle explanation below. */
.pf-operating-system { margin:32px auto 14px; max-width:440px; }
.pf-os-reference { display:flex; flex-direction:column; align-items:center; margin-left:50%; color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-mono); text-align:center; }
.pf-os-reference i { display:block; width:1px; height:26px; background:var(--pearl-strong); }
.pf-os-frame { border:1px solid var(--pearl-strong); border-radius:6px; background:var(--pearl-panel); }
.pf-os-title { display:flex; align-items:center; justify-content:space-between; padding:12px 18px; border-bottom:1px solid var(--pearl-line); color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-mono); }
.pf-os-title>span:last-child { font-size:20px; line-height:1; color:var(--pearl-art); }
.pf-os-roles { display:grid; grid-template-columns:1fr 28px 1fr; align-items:center; padding:24px 20px; }
.pf-os-roles>div { display:flex; flex-direction:column; align-items:center; text-align:center; position:relative; }
.pf-os-roles svg { width:56px; height:56px; }
.pf-os-roles strong { color:var(--pearl-ink); font:500 14px/1.5 var(--pearl-font-display); margin-top:14px; }
.pf-os-roles div>span { color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-body); margin-top:6px; }
.pf-os-link { height:1px; background:var(--pearl-strong); margin-top:-52px; }
.pf-os-foundation { position:relative; display:flex; align-items:center; justify-content:center; gap:12px; margin-top:30px; padding:16px 8px; border-block:1px solid var(--pearl-strong); color:var(--pearl-ink); font:400 14px/1.5 var(--pearl-font-body); background:var(--pearl-alt); }
.pf-os-foundation:before,.pf-os-foundation:after { content:""; position:absolute; bottom:100%; height:30px; width:1px; background:var(--pearl-strong); }
.pf-os-foundation:before { left:25%; }.pf-os-foundation:after { right:25%; }
.pf-os-record-mark { width:14px; height:18px; border:1px solid var(--pearl-strong); border-radius:2px; position:relative; flex:none; }
.pf-os-record-mark:after { content:""; position:absolute; left:3px; right:3px; top:5px; height:5px; border-block:1px solid var(--pearl-motion-data); }
.pf-os-roles .is-passing svg,.pf-os-foundation.is-passing .pf-os-record-mark { color:var(--pearl-motion-data); border-color:var(--pearl-motion-data); }
.pf-os-foundation.is-passing { border-color:var(--pearl-motion-data); }
/* One record. Four useful, continuous relationships. */
.pf-record-constellation { display:grid; grid-template-columns:minmax(0,1fr) minmax(110px,1.5fr) minmax(0,1fr); gap:24px; align-items:stretch; margin:56px auto 44px; max-width:470px; }
.pf-evidence-document { position:relative; z-index:0; border:1px solid var(--pearl-strong); padding:24px 18px 18px; border-radius:3px; background:var(--pearl-panel); }
.pf-evidence-document:before { content:""; position:absolute; z-index:-1; top:-10px; bottom:10px; left:10px; right:-10px; border:1px solid var(--pearl-line); border-radius:3px; }
.pf-document-header { display:flex; flex-direction:column; gap:14px; color:var(--pearl-ink); font:500 16px/1.5 var(--pearl-font-display); }
.pf-document-mark { width:16px; height:4px; background:var(--pearl-motion-data); }
.pf-evidence-document .pf-document-lines { display:block; width:64px; height:64px; margin-block:20px 16px; color:var(--pearl-strong); }
.pf-document-version { display:block; border-top:1px solid var(--pearl-line); padding-top:12px; font:400 12px/1.5 var(--pearl-font-body); color:var(--pearl-muted); }
.pf-record-links { display:flex; flex-direction:column; justify-content:space-around; padding-block:38px; }
.pf-record-links>span { position:relative; padding-block:8px; color:var(--pearl-ink); font:400 13px/1.5 var(--pearl-font-body); }
.pf-record-links--left { text-align:right; }.pf-record-links--right { text-align:left; }
.pf-record-links>span:after { content:""; position:absolute; top:50%; width:24px; height:1px; background:var(--pearl-strong); }
.pf-record-links--left>span:after { left:100%; }.pf-record-links--right>span:after { right:100%; }
.pf-record-links>span:before { content:""; position:absolute; width:5px; height:5px; background:var(--pearl-motion-data); border-radius:50%; top:calc(50% - 2px); }
.pf-record-links--left>span:before { left:calc(100% + 22px); }.pf-record-links--right>span:before { right:calc(100% + 22px); }
.pf-art--evidence-model { box-shadow:none; border:0; background:transparent; width:100%; }
.pf-ai-architecture { max-width:420px; margin:30px auto; }
.pf-ai-graph-points { fill:var(--pearl-panel); stroke:var(--pearl-motion-data); }
.pf-ai-architecture .is-passing { stroke:var(--pearl-motion-data); }
/* Five audience routes share context; the named work surfaces remain in the body. */
.pf-participation-map { max-width:460px; margin:32px auto 12px; }
.pf-audience-top { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; text-align:center; }
.pf-audience-top>span,.pf-audience-bottom>span { font:400 13px/1.5 var(--pearl-font-body); color:var(--pearl-ink); }
.pf-audience-network { position:relative; height:240px; margin-top:8px; }
.pf-audience-lines { width:100%; height:240px; fill:none; stroke:var(--pearl-strong); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.pf-audience-lines>g { stroke:var(--pearl-art); }
.pf-audience-lines>.pf-signal { stroke:var(--pearl-motion-data); fill:var(--pearl-bg); }
.pf-audience-hub { position:absolute; width:114px; height:100px; left:calc(50% - 57px); top:87px; border:1px solid var(--pearl-strong); background:var(--pearl-panel); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; border-radius:6px; color:var(--pearl-ink); text-align:center; }
.pf-audience-hub svg { width:32px; height:32px; color:var(--pearl-art); }
.pf-audience-hub>span { font:500 13px/1.4 var(--pearl-font-display); }
.pf-audience-bottom { display:grid; grid-template-columns:1fr 1fr; text-align:center; gap:16px; margin-top:2px; }
.pf-access-caption { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:26px; color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-body); }
.pf-access-caption>span { color:var(--pearl-motion-data); }
/* Program conditions meet contribution at one review junction. */
.pf-activation-map { max-width:480px; margin:40px auto 28px; }
.pf-activation-condition { text-align:center; width:100%; color:var(--pearl-muted); font:400 12px/1.6 var(--pearl-font-mono); }
.pf-activation-condition:after { content:""; display:block; margin:12px auto 0; width:1px; height:42px; background:var(--pearl-strong); }
.pf-activation-flow { display:grid; grid-template-columns:1fr 1fr 1fr; align-items:start; position:relative; }
.pf-contribution-origin,.pf-activation-review { position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:22px; }
.pf-contribution-origin>span,.pf-activation-review>span { color:var(--pearl-ink); font:400 13px/1.5 var(--pearl-font-body); }
.pf-contribution-origin:after { content:""; position:absolute; left:calc(50% + 21px); right:calc(-50% + 27px); top:31px; height:1px; background:var(--pearl-strong); }
.pf-review-aperture { width:46px; height:46px; margin:9px; border:1px solid var(--pearl-art); transform:rotate(45deg); background:var(--pearl-panel); display:grid; place-items:center; }
.pf-review-aperture>span { display:block; width:14px; height:14px; border:1px solid var(--pearl-motion-data); }
.pf-activation-review:after { content:""; position:absolute; left:calc(50% + 32px); right:-16px; top:31px; height:1px; background:var(--pearl-strong); }
.pf-activation-paths { display:grid; gap:26px; padding-top:22px; padding-left:16px; position:relative; }
.pf-activation-paths:before { content:""; position:absolute; left:16px; top:31px; bottom:10px; width:1px; background:var(--pearl-strong); }
.pf-activation-paths>span { position:relative; margin-left:16px; color:var(--pearl-ink); font:400 13px/1.5 var(--pearl-font-body); }
.pf-activation-paths>span:before { content:""; position:absolute; right:100%; top:9px; width:16px; height:1px; background:var(--pearl-strong); }
/* A quiet continuation of the page; emphasis stays on the destination. */
.pf-journey { margin-inline:0; padding:56px 0 64px; background:transparent; color:var(--pearl-ink); border-top:1px solid var(--pearl-line); }
.pf-journey-intro { border:0; padding-bottom:0; margin-bottom:32px; }
.platform-page .pf-main .pf-journey :is(h2,h2>span) { color:var(--pearl-ink); }
.platform-page .pf-main .pf-journey .pf-label { color:var(--pearl-muted); }
.platform-page .pf-main .pf-journey-intro>p { color:var(--pearl-muted); }
.pf-journey .pf-button { background:transparent; color:var(--pearl-ink); border:0; border-bottom:1px solid var(--pearl-line); padding:14px 0; min-height:76px; }
.pf-journey .pf-button>span { display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--pearl-strong); border-radius:50%; font-size:18px; line-height:1.5; }
.pf-journey .pf-button--primary { background:transparent; color:var(--pearl-ink); }
.pf-journey .pf-button--primary>span { color:var(--pearl-on); background:var(--pearl-accent-mark); border-color:var(--pearl-accent-mark); }
.pf-journey .pf-button:hover,.pf-journey .pf-button--primary:hover { color:var(--pearl-ink); background:transparent; border-bottom-color:var(--pearl-strong); }
.pf-journey .pf-button:hover>span { transform:translateX(2px); }
.pf-journey a:focus-visible { outline-color:var(--pearl-focus); }
.pf-art .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:1100px) {
 .pf-record-constellation { gap:16px; grid-template-columns:minmax(0,1fr) minmax(100px,1.5fr) minmax(0,1fr); }
 .pf-record-links>span:after { width:16px; }
 .pf-record-links--left>span:before { left:calc(100% + 14px); }.pf-record-links--right>span:before { right:calc(100% + 14px); }
 .pf-evidence-document { padding:20px 12px 16px; }
 .pf-activation-paths { padding-left:6px; }
 .pf-activation-paths:before { left:6px; }
 .pf-activation-review:after { right:-6px; }
}
@media(max-width:680px) {
 .pf-os-reference { margin-left:42%; font-size:12px; line-height:1.6; }
 .pf-os-roles { padding:22px 12px; grid-template-columns:1fr 16px 1fr; }
 .pf-os-roles strong { font-size:13px; line-height:1.5; }
 .pf-os-foundation { font-size:13px; line-height:1.5; gap:10px; }
 .pf-record-constellation { margin-block:40px 24px; gap:12px; grid-template-columns:minmax(0,1fr) 108px minmax(0,1fr); }
 .pf-record-links>span { font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
 .pf-record-links>span:after { width:12px; }
 .pf-record-links--left>span:before { left:calc(100% + 10px); }.pf-record-links--right>span:before { right:calc(100% + 10px); }
 .pf-document-header { font-size:14px; line-height:1.5; }
 .pf-art--evidence-model { padding-inline:0; }
 .pf-audience-top>span,.pf-audience-bottom>span { font-size:12px; line-height:1.5; }
 .pf-audience-hub { width:100px; left:calc(50% - 50px); }
 .pf-participation-map { margin-top:28px; }
 .pf-activation-map { margin-block:32px; }
 .pf-activation-flow { grid-template-columns:1fr 1fr 1fr; }
 .pf-contribution-origin>span,.pf-activation-review>span,.pf-activation-paths>span { font-size:12px; line-height:1.5; }
 .pf-activation-condition { font-size:12px; line-height:1.6; }
 .pf-contribution-origin svg { width:52px; height:64px; }
 .pf-review-aperture { width:38px; height:38px; margin:13px; }
 .pf-contribution-origin:after { left:calc(50% + 17px); right:calc(-50% + 27px); }
 .pf-activation-review:after { left:calc(50% + 27px); }
 .pf-activation-paths { padding-left:0; }
 .pf-activation-paths:before { left:0; }
 .pf-activation-review:after { right:0; }
 .pf-activation-paths>span { margin-left:10px; }
 .pf-activation-paths>span:before { width:10px; }
 .pf-journey { padding-block:40px 48px; }
 .pf-journey-actions { gap:22px; }
 .pf-journey .pf-button { padding:8px 0 12px; min-height:64px; }
}

.pf-graph-label { display:block; color:var(--pearl-muted); font:400 12px/1.5 var(--pearl-font-body); margin-top:6px; }

.pf-os-roles { position:relative; align-items:start; }
.pf-os-roles div>span { min-height:3.2em; }
.pf-os-link { position:absolute; top:52px; left:calc(25% + 24px); right:calc(25% + 20px); margin:0; }
.pf-audience-person { position:absolute; width:32px; height:40px; fill:none; stroke:var(--pearl-art); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.pf-audience-person--0 { left:calc(16.6667% - 16px); top:8px; }
.pf-audience-person--1 { left:calc(50% - 16px); top:8px; }
.pf-audience-person--2 { left:calc(83.3333% - 16px); top:8px; }
.pf-audience-person--3 { left:calc(25% - 16px); top:202px; }
.pf-audience-person--4 { left:calc(75% - 16px); top:202px; }
@media(max-width:680px) { .pf-os-link { top:50px; } }
.pf-os-review { grid-column:3; }

/* Framed hero exhibits. Native drawings and HTML labels share a deliberate grid. */
.pf-art.pf-art--exhibit { container-type:inline-size; width:100%; max-width:660px; padding:26px; min-height:480px; border:1px solid var(--pearl-line); border-radius:var(--pearl-radius-panel); background:var(--pearl-panel); box-shadow:none; display:flex; flex-direction:column; }
.pf-art--exhibit .pf-art-top { align-items:center; min-height:44px; padding-bottom:18px; border-bottom:1px solid var(--pearl-line); gap:16px; }
.platform-page .pf-main .pf-art--exhibit .pf-art-title { font:500 20px/1.35 var(--pearl-font-display); color:var(--pearl-ink); }
.ph-controls { display:flex; align-items:center; flex:none; }
.ph-controls>.pf-art-mark { display:none; }
.ph-controls .pf-motion-toggle { width:44px; height:44px; min-height:44px; margin:0; padding:0; display:grid; place-items:center; border:1px solid var(--pearl-line); border-radius:50%; background:transparent; }
.ph-controls .pf-motion-toggle[hidden] { display:none; }
.ph-controls [data-pf-motion-label] { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.ph-controls .pf-pause-symbol { color:var(--pearl-art); font-size:16px; line-height:1.5; }
.ph-scene { position:relative; width:100%; margin-top:26px; color:var(--pearl-art); }
.ph-name { display:block; font:500 21px/1.35 var(--pearl-font-display); color:var(--pearl-ink); }
.ph-note { display:block; font:400 14px/1.5 var(--pearl-font-body); color:var(--pearl-muted); }
.pf-art--exhibit .ph-symbol { display:block; width:116px; height:116px; stroke:var(--pearl-art); stroke-width:1.4; fill:none; }
.ph-symbol path,.ph-symbol rect,.ph-symbol circle { vector-effect:non-scaling-stroke; }
.ph-symbol .pf-signal { stroke:var(--pearl-motion-data); }
.pf-art--exhibit .is-passing .ph-symbol { stroke:var(--pearl-motion-data); }
.pf-art--exhibit .is-passing { border-color:var(--pearl-motion-data); }
/* Launch: the outer figure is the operating console. */
.ph-launch { margin-top:18px; }
.ph-console-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; color:var(--pearl-muted); font:400 13px/1.5 var(--pearl-font-mono); }
.ph-console-heading>span:last-child { position:relative; text-align:center; width:50%; }
.ph-console-heading i { display:block; height:22px; width:1px; margin:10px auto 0; background:var(--pearl-strong); }
.ph-stations { display:grid; grid-template-columns:1fr 1fr; position:relative; }
.ph-stations:before { content:""; position:absolute; top:58px; left:calc(25% + 50px); right:calc(25% + 45px); height:1px; background:var(--pearl-strong); }
.ph-station { display:flex; flex-direction:column; align-items:center; text-align:center; padding-inline:8px; }
.ph-station .ph-name { margin-top:10px; }
.ph-station .ph-note { margin-top:7px; min-height:42px; }
.ph-foundation { position:relative; display:flex; align-items:center; gap:20px; justify-content:center; margin-top:28px; border:1px solid var(--pearl-strong); background:var(--pearl-alt); padding:12px 20px; }
.ph-foundation:before,.ph-foundation:after { content:""; position:absolute; width:1px; height:28px; bottom:100%; background:var(--pearl-strong); }
.ph-foundation:before { left:25%; }.ph-foundation:after { right:25%; }
.pf-art--exhibit .ph-foundation .ph-symbol { width:54px; height:54px; }
.ph-foundation .ph-name { font-size:18px; line-height:1.4; }
/* Evidence: a substantial folio and four attached relationships. */
.ph-evidence { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:44px; padding:14px 0 12px; min-height:346px; }
.ph-evidence-sheet { position:relative; padding:28px 24px 20px; border:1px solid var(--pearl-strong); border-radius:4px; background:var(--pearl-bg); isolation:isolate; }
.ph-evidence-sheet:before { content:""; position:absolute; z-index:-1; inset:-9px 9px 9px -9px; border:1px solid var(--pearl-line); border-radius:4px; }
.ph-sheet-tab { width:32px; height:4px; margin-bottom:16px; background:var(--pearl-motion-data); }
.ph-evidence-sheet>.ph-name { font-size:24px; line-height:1.35; }
.ph-record-lines { display:block; width:100%; height:100px; margin-block:15px 8px; fill:none; stroke:var(--pearl-strong); stroke-width:1.3; }
/* The rules fill the text column, sharing its left edge with the heading and the divider; the stroke keeps its weight when the box stretches. */
.ph-record-lines path { vector-effect:non-scaling-stroke; }
.ph-record-lines .pf-signal { stroke:var(--pearl-motion-data); }
.ph-version { display:block; padding-top:14px; border-top:1px solid var(--pearl-line); font:400 14px/1.5 var(--pearl-font-body); color:var(--pearl-muted); }
.ph-revisions { display:flex; justify-content:space-between; position:relative; margin-top:16px; height:8px; }
.ph-revisions:before { content:""; position:absolute; left:0; right:0; top:3px; border-top:1px solid var(--pearl-strong); }
.ph-revisions i { position:relative; width:7px; height:7px; border:1px solid var(--pearl-art); background:var(--pearl-bg); }
.ph-record-relations { display:grid; grid-template-rows:repeat(4,1fr); align-items:center; padding-block:5px; }
.ph-record-relations>div { position:relative; min-height:48px; display:flex; align-items:center; border-bottom:1px solid var(--pearl-line); color:var(--pearl-ink); font:500 19px/1.4 var(--pearl-font-display); }
.ph-record-relations>div:before { content:""; position:absolute; right:100%; width:44px; top:50%; border-top:1px solid var(--pearl-strong); }
.ph-junction { position:absolute; right:calc(100% + 40px); width:7px; height:7px; border:1px solid var(--pearl-motion-data); background:var(--pearl-panel); border-radius:50%; }
/* AI: a vertical, permissioned architecture with a visible evidence boundary. */
.ph-intelligence { height:328px; display:grid; grid-template-rows:64px 106px 110px; gap:24px; margin-top:18px; }
.ph-ai-route { position:absolute; width:100%; height:328px; inset:0; fill:none; stroke:var(--pearl-strong); stroke-width:1.5; }
.ph-ai-route .ph-ai-packet { fill:var(--pearl-motion-data); stroke:none; opacity:0; }
.ph-ai-origin,.ph-ai-model,.ph-ai-engine { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; gap:24px; }
.ph-ai-origin { justify-self:center; padding-inline:18px; border:1px solid var(--pearl-strong); background:var(--pearl-panel); border-radius:4px; }
.pf-art--exhibit .ph-ai-origin .ph-symbol { width:54px; height:54px; }
.ph-ai-model { justify-self:stretch; margin-inline:24px; border:1px solid var(--pearl-strong); background:var(--pearl-alt); border-radius:6px; }
.ph-ai-model .ph-note { margin-top:5px; }
.ph-model-port { position:absolute; width:8px; height:8px; bottom:-5px; left:calc(50% - 4px); border:1px solid var(--pearl-art); border-radius:50%; background:var(--pearl-panel); }
.pf-art--exhibit .ph-ai-model .ph-symbol { width:90px; height:90px; }
.ph-graph-points { fill:var(--pearl-alt); stroke:var(--pearl-motion-data); }
.ph-ai-engine { width:max-content; max-width:100%; justify-self:center; padding-inline:16px; background:var(--pearl-panel); }
.pf-art--exhibit .ph-ai-engine .ph-symbol { width:110px; height:110px; }
.pf-art--exhibit.pf-art--alpha-ai-engine figcaption { padding-top:14px; border-top:1px solid var(--pearl-line); margin-top:16px; }
/* Participation: five distinct roles joined through shared evidence. */
.ph-workspaces { margin-top:22px; }
.ph-audience-row { display:grid; gap:12px; }
.ph-audience-row--top { grid-template-columns:1fr 1fr; }
.ph-audience-row--bottom { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ph-audience { min-width:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:8px; padding:8px 4px 10px; border:1px solid var(--pearl-line); border-radius:4px; background:var(--pearl-bg); }
.pf-art--exhibit .ph-audience .ph-symbol { width:58px; height:58px; }
.ph-audience>span { display:flex; align-items:center; justify-content:center; min-height:42px; color:var(--pearl-ink); font:400 16px/1.35 var(--pearl-font-body); }
.ph-audience-row--top .ph-audience { flex-direction:row; gap:14px; min-height:76px; }
.ph-role-join { height:25px; display:flex; justify-content:space-around; position:relative; margin-inline:25%; border-bottom:1px solid var(--pearl-strong); }
.ph-role-join:after { content:""; width:1px; height:8px; background:var(--pearl-strong); position:absolute; top:100%; left:50%; }
.ph-role-join i { position:absolute; width:1px; height:100%; background:var(--pearl-strong); top:0; }
.ph-role-join i:first-child { left:0; }.ph-role-join i:last-child { right:0; }
.ph-role-join--bottom { margin-inline:16.6667%; height:25px; border-top:1px solid var(--pearl-strong); border-bottom:0; margin-top:8px; }
.ph-role-join--bottom:after { top:auto; bottom:100%; }
.ph-role-join--bottom i:nth-child(2) { left:50%; }
.ph-shared-record { display:flex; align-items:center; justify-content:center; gap:16px; margin-top:8px; padding:8px; border:1px solid var(--pearl-strong); background:var(--pearl-alt); border-radius:4px; }
.pf-art--exhibit .ph-shared-record .ph-symbol { width:62px; height:62px; }
.ph-workspace-access { display:flex; align-items:center; justify-content:center; gap:10px; border-top:1px solid var(--pearl-line); padding-top:14px; margin-top:18px; font:400 13px/1.5 var(--pearl-font-body); color:var(--pearl-muted); }
.ph-workspace-access>span { color:var(--pearl-motion-data); }
/* Programs: evidence meets conditional review, then opens three possible routes. */
.ph-programs { margin-top:22px; }
.ph-program-condition { position:relative; padding:12px; margin-left:44%; text-align:center; border:1px solid var(--pearl-line); border-radius:4px; background:var(--pearl-alt); color:var(--pearl-muted); font:400 14px/1.5 var(--pearl-font-body); }
.ph-program-condition:after { content:""; width:1px; height:22px; background:var(--pearl-strong); position:absolute; top:100%; left:50%; }
.ph-program-core { display:grid; grid-template-columns:44% 56%; position:relative; margin-top:22px; }
.ph-program-core:before { content:""; position:absolute; left:calc(22% + 42px); right:calc(28% + 52px); top:57px; border-top:1px solid var(--pearl-strong); }
.ph-contribution,.ph-program-review { display:flex; align-items:center; flex-direction:column; text-align:center; gap:16px; }
.ph-program-review .ph-symbol { width:116px; height:116px; }
.ph-program-branch { position:relative; height:28px; border-bottom:1px solid var(--pearl-strong); margin:22px 16.6667% 20px; }
.ph-program-branch:before { content:""; position:absolute; height:100%; left:83%; top:0; border-left:1px solid var(--pearl-strong); }
.ph-program-branch i { position:absolute; top:100%; height:20px; width:1px; background:var(--pearl-strong); }
.ph-program-branch i:first-child { left:0; }.ph-program-branch i:nth-child(2) { left:50%; }.ph-program-branch i:last-child { right:0; }
.ph-program-outcomes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.ph-program-outcomes>span { display:grid; place-items:center; min-height:56px; padding:8px 4px; border:1px solid var(--pearl-strong); background:var(--pearl-alt); color:var(--pearl-ink); font:400 16px/1.4 var(--pearl-font-body); }
@container (max-width:380px) {
 .ph-name { font-size:17px; line-height:1.4; }
 .ph-note { font-size:13px; line-height:1.5; }
 .ph-console-heading { font-size:12px; line-height:1.5; }
 .pf-art--exhibit .ph-symbol { width:96px; height:96px; }
 .ph-stations:before { top:48px; left:calc(25% + 41px); right:calc(25% + 37px); }
 .ph-station { padding-inline:4px; }
 .ph-foundation { padding:12px; gap:10px; }
 .ph-foundation .ph-name { font-size:17px; line-height:1.4; }
 .ph-evidence { gap:26px; min-height:330px; }
 .ph-evidence-sheet { padding:22px 14px 18px; }
 .ph-evidence-sheet>.ph-name { font-size:21px; line-height:1.4; }
 .ph-record-relations>div { font-size:16px; line-height:1.4; }
 .ph-record-relations>div:before { width:26px; }
 .ph-junction { right:calc(100% + 22px); }
 .ph-ai-model { margin-inline:0; gap:12px; }
 .ph-ai-origin,.ph-ai-engine { gap:12px; }
 .pf-art--exhibit .ph-ai-model .ph-symbol { width:78px; height:78px; }
 .ph-audience-row { gap:6px; }
 .ph-audience-row--top .ph-audience { gap:5px; padding-inline:4px; }
 .pf-art--exhibit .ph-audience .ph-symbol { width:48px; height:48px; }
 .ph-audience>span { font-size:14px; line-height:1.5; }
 .ph-audience-row--top .ph-audience .ph-symbol { width:38px; height:38px; }
 .ph-shared-record { gap:10px; }
 .ph-workspace-access { font-size:12px; line-height:1.5; gap:6px; }
 .ph-program-condition { padding:10px 6px; font-size:13px; line-height:1.5; }
 .ph-program-core:before { top:48px; left:calc(22% + 35px); right:calc(28% + 44px); }
 .ph-program-core .ph-name { font-size:17px; line-height:1.4; }
 .ph-program-outcomes>span { font-size:14px; line-height:1.5; padding:6px 2px; }
}
@media(max-width:680px) {
 .pf-art.pf-art--exhibit { padding:18px 16px; min-height:0; }
 .platform-page .pf-main .pf-art--exhibit .pf-art-title { font-size:18px; line-height:1.4; }
 .ph-scene { margin-top:22px; }
 .ph-intelligence { margin-top:18px; }
 .ph-evidence { min-height:322px; }
}
/* Connector endpoints meet their operating surface and engine boundary. */
.ph-console-heading i { height:38px; margin-bottom:-16px; }
.ph-stations:before { right:calc(25% + 36px); }
.ph-station { padding-bottom:12px; border-bottom:1px solid var(--pearl-line); }
.ph-ai-engine { border:1px solid var(--pearl-strong); border-radius:4px; background:var(--pearl-alt); padding-inline:24px; }
@container(max-width:380px) { .ph-stations:before { right:calc(25% + 30px); } }
@container(max-width:380px) {
 .ph-evidence-sheet { padding-inline:10px; }
 .ph-evidence-sheet>.ph-name { font-size:20px; line-height:1.4; }
 .ph-intelligence { height:274px; grid-template-rows:56px 88px 98px; gap:16px; }
 .ph-ai-route { height:274px; }
 .pf-art--exhibit .ph-ai-model .ph-symbol { width:72px; height:72px; }
 .pf-art--exhibit .ph-ai-engine .ph-symbol { width:94px; height:94px; }
 .ph-ai-engine { padding-inline:14px; }
 .ph-program-outcomes { grid-template-columns:1.25fr .85fr .9fr; }
 .ph-program-branch { margin-inline:0; border-bottom:0; }
 .ph-program-branch:before { left:72%; }
 .ph-program-branch:after { content:""; position:absolute; left:calc((100% - 16px) * .2083333); right:calc((100% - 16px) * .15); bottom:0; border-top:1px solid var(--pearl-strong); }
 .ph-program-branch i:first-child { left:calc((100% - 16px) * .2083333); }
 .ph-program-branch i:nth-child(2) { left:calc((100% - 16px) * .5583333 + 8px); }
 .ph-program-branch i:last-child { left:calc((100% - 16px) * .85 + 16px); right:auto; }
}
@container(max-width:300px) {
 .ph-audience-row--top .ph-audience { min-height:62px; padding-block:5px; }
 .pf-art--exhibit .ph-shared-record .ph-symbol { width:46px; height:46px; }
 .ph-audience-row--bottom { display:flex; flex-direction:column; position:relative; margin-left:20px; }
 .ph-audience-row--bottom:before { content:""; position:absolute; left:-10px; top:0; bottom:24px; border-left:1px solid var(--pearl-strong); }
 .ph-audience-row--bottom .ph-audience { position:relative; display:flex; flex-direction:row; justify-content:flex-start; gap:14px; padding:5px 14px; min-height:48px; }
 .ph-audience-row--bottom .ph-audience:before { content:""; position:absolute; right:100%; top:50%; width:10px; border-top:1px solid var(--pearl-strong); }
 .pf-art--exhibit .ph-audience-row--bottom .ph-symbol { width:36px; height:36px; }
 .ph-audience-row--bottom .ph-audience>span { min-height:0; text-align:left; display:block; }
 .ph-audience-row--bottom br { display:none; }
 .ph-audience-row--bottom br:after { content:" "; }
 .ph-role-join--bottom { width:calc(50% - 10px); margin:0 0 0 10px; height:18px; border:0; }
 .ph-role-join--bottom i { display:none; }
 .ph-role-join--bottom:before { content:""; position:absolute; top:9px; left:0; right:0; height:9px; border-top:1px solid var(--pearl-strong); border-left:1px solid var(--pearl-strong); }
 .ph-role-join--bottom:after { left:100%; top:0; bottom:auto; height:9px; }
}
/* Alpha AI: one process board, three equally weighted architectural stages. */
.ph-ai-flow { height:330px; grid-template-rows:repeat(3,minmax(0,1fr)); gap:0; }
.ph-ai-flow .ph-ai-route { height:100%; }
.ph-ai-flow .ph-ai-origin,.ph-ai-flow .ph-ai-model,.ph-ai-flow .ph-ai-engine { display:grid; grid-template-columns:96px minmax(0,1fr); justify-self:stretch; width:100%; max-width:none; margin:0; gap:24px; padding:7px 20px 7px 56px; border:0; border-bottom:1px solid var(--pearl-line); border-radius:0; background:transparent; }
.ph-ai-flow .ph-ai-engine { border-bottom:0; }
.ph-ai-flow .ph-ai-origin:before,.ph-ai-flow .ph-ai-model:before,.ph-ai-flow .ph-ai-engine:before { content:""; position:absolute; left:4%; top:50%; width:calc(56px - 4%); height:1px; background:var(--pearl-strong); }
.ph-ai-flow .ph-ai-origin:after,.ph-ai-flow .ph-ai-model:after,.ph-ai-flow .ph-ai-engine:after { content:""; position:absolute; left:calc(4% - 3px); top:calc(50% - 3px); width:7px; height:7px; border:1px solid var(--pearl-strong); background:var(--pearl-panel); border-radius:50%; }
.pf-art--exhibit .ph-ai-flow .ph-symbol { width:96px; height:96px; }
.ph-ai-flow .ph-model-port { display:none; }
.ph-ai-flow .is-passing:after { border-color:var(--pearl-motion-data); background:var(--pearl-motion-data); }
@container(max-width:380px) {
 .ph-ai-flow { height:280px; }
 .ph-ai-flow .ph-ai-origin,.ph-ai-flow .ph-ai-model,.ph-ai-flow .ph-ai-engine { grid-template-columns:70px minmax(0,1fr); gap:12px; padding:8px 0 8px 36px; }
 .pf-art--exhibit .ph-ai-flow .ph-symbol { width:70px; height:70px; }
 .ph-ai-flow .ph-ai-origin:before,.ph-ai-flow .ph-ai-model:before,.ph-ai-flow .ph-ai-engine:before { width:calc(36px - 4%); }
}
/* Selective chapter navigation: long reference journeys retain orientation. */
.platform-page .pf-chapters { position:sticky; top:0; z-index:20; background:var(--pearl-bg); border-block:1px solid var(--pearl-line); margin-top:24px; }
.platform-page .pf-chapters summary { min-height:52px; padding:12px 0; align-items:center; justify-content:space-between; list-style:none; cursor:pointer; font:600 14px/1.5 var(--pearl-font-display); }
.platform-page .pf-chapters summary::-webkit-details-marker { display:none; }
.platform-page .pf-chapters nav { display:flex; gap:12px 28px; flex-wrap:wrap; }
.platform-page .pf-chapters a { display:flex; align-items:center; min-height:56px; font:400 13px/1.5 var(--pearl-font-body); color:var(--pearl-muted); text-decoration:none; border-bottom:2px solid transparent; }
.platform-page .pf-chapters a[aria-current=location] { border-color:var(--pearl-accent-mark); color:var(--pearl-ink); }
.platform-page .pf-chapters~section { scroll-margin-top:88px; }
@media(min-width:901px) { .platform-page .pf-chapters summary { display:none; } }
@media(max-width:900px) {
 .platform-page .pf-chapters summary { display:flex; }
 .platform-page .pf-chapters nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; padding-bottom:12px; }
 .platform-page .pf-chapters a { min-height:48px; }
 .platform-page .pf-chapters details[open] summary>span { transform:rotate(45deg); }
}
.platform-page .pf-hero.pf-hero--task { grid-template-columns:1fr; padding-block:36px 48px; gap:0; }
.platform-page .pf-hero--task .pf-hero-copy { max-width:840px; }
.platform-page .pf-hero--task h1 { margin-block:20px; }
.platform-page .pf-hero--task h1>span { display:block; }

.platform-page .pf-hero--task .pf-lead { max-width:62ch; }
.platform-page .pf-hero--task+.pf-section { padding-top:36px; }
@media(max-width:680px) {
 .platform-page .pf-hero.pf-hero--task { padding-block:24px 32px; }
 .platform-page .pf-hero--task h1>span { display:block; }
 .platform-page .pf-hero--task h1>span+span::before { content:none; }
}
.platform-page .pf-review-record { display:grid; grid-template-columns:.8fr 1.2fr; gap:48px; margin-top:56px; padding:32px; border:1px solid var(--pearl-line); background:var(--pearl-panel); }
.platform-page .pf-review-record h3 { font:600 28px/1.2 var(--pearl-font-display); margin:20px 0; }
.platform-page .pf-review-record h3>span { display:block; }
.platform-page .pf-review-record p { font:400 16px/1.7 var(--pearl-font-body); color:var(--pearl-muted); }
.platform-page .pf-review-record .pf-label { font:400 12px/1.5 var(--pearl-font-mono); }
.platform-page .pf-review-record dl { margin:0; }
.platform-page .pf-review-record dl>div { display:grid; grid-template-columns:140px 1fr; gap:24px; padding:16px 0; border-top:1px solid var(--pearl-line); }
.platform-page .pf-review-record dt { color:var(--pearl-ink); font:600 14px/1.6 var(--pearl-font-display); }
.platform-page .pf-review-record dd { margin:0; color:var(--pearl-muted); font:400 16px/1.6 var(--pearl-font-body); }
.platform-page .pf-output-index { display:grid; grid-template-columns:.85fr 1.15fr; gap:64px; align-items:start; }
.platform-page .pf-output-index>div>p { color:var(--pearl-muted); font:400 17px/1.7 var(--pearl-font-body); margin:24px 0; }
.platform-page .pf-output-index ol { list-style:none; margin:0; padding:0; }
.platform-page .pf-output-index li { display:flex; gap:24px; padding:24px 0; border-top:1px solid var(--pearl-line); }
.platform-page .pf-output-index li>span { font:400 12px/1.6 var(--pearl-font-mono); padding-top:5px; color:var(--pearl-muted); }
.platform-page .pf-output-index h3 { font:600 20px/1.4 var(--pearl-font-display); margin:0 0 8px; }
.platform-page .pf-output-index li p { margin:0; font:400 16px/1.7 var(--pearl-font-body); color:var(--pearl-muted); }
@media(max-width:900px) { .platform-page .pf-review-record,.platform-page .pf-output-index { grid-template-columns:1fr; gap:28px; } }
@media(max-width:480px) { .platform-page .pf-review-record { padding:24px; } .platform-page .pf-review-record dl>div { grid-template-columns:1fr; gap:8px; } }
.platform-page .pf-main .pf-section-label { font-size:12px; line-height:1.6; }
.platform-page .pf-main .pf-hero--task h1 { font-size:var(--pearl-type-section-title-size); line-height:var(--pearl-type-section-title-leading); }
.platform-page .pf-hero--task+.pf-section>.pf-heading { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.platform-page .pf-hero--task+.pf-section>:is(.tf-section-lead,.rs-section-lead) { margin-top:0; }
