/* Platform page — composes the approved Homepage website system (site.css + scenes.css). One product canvas per story. */
.pscreen{position:relative;width:100%;overflow:hidden;border-radius:var(--radius-surface);border:var(--border-w) solid var(--border-subtle);box-shadow:var(--shadow-md);background:var(--surface-app)}
.pscreen__in{position:absolute;top:0;left:0;width:1440px;overflow:hidden;transform-origin:0 0;background:var(--surface-app)}
.pframe{box-shadow:var(--shadow-md);height:100%}
.pintro{display:flex;flex-direction:column;gap:clamp(12px,2vh,20px)}
.pintro .mk-head{font-size:min(var(--mk-head-size),7vh);line-height:1.1;max-width:16ch}
.pquote{font:var(--type-h4);color:var(--text-brand);padding-inline-start:var(--space-16);border-inline-start:2px solid var(--fid-violet);max-width:32ch}
.pquote--dark{color:var(--fid-plum-100);border-color:var(--fid-violet-200)}
section[data-screen-label]{position:relative}

/* shared grids — same wrap and left axis as the Homepage */
.psplit__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-64);align-items:start}
.pwide__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--space-48);align-items:start}
.psplit__grid,.pwide__grid{align-items:start}
.psplit__left,.psplit__right{align-self:start;margin-top:0;padding-top:0;transform:none}
.psplit__left{display:flex;flex-direction:column;gap:clamp(20px,3.4vh,32px);min-width:0}
.psplit__right{display:flex;flex-direction:column;gap:var(--space-12);min-width:0}
.psplit{padding:clamp(64px,9vh,96px) 0}
.psplit.dark .mk-lead{color:var(--text-on-shell)}

/* rail */
.prail{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:var(--border-w) solid var(--border-default)}
.prail li{border-bottom:var(--border-w) solid var(--border-default)}
.prail li>*{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:var(--space-12);width:100%;text-align:start;padding:clamp(6px,1vh,10px) 0;background:none;border:0;font:inherit;color:var(--text-muted);cursor:default}
.prail button{cursor:pointer}.prail button:hover .prail__t{color:var(--text-heading)}
.prail button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-xs)}
.prail__n{font:var(--type-label);font-variant-numeric:tabular-nums;color:inherit;padding-top:2px}
.prail__t{font:var(--type-ui-medium);color:inherit}
.prail__d{grid-column:2;font:var(--type-meta);color:var(--text-muted);margin-top:var(--space-4)}
.prail li.is-on>*{color:var(--text-heading)}.prail li.is-on .prail__n{color:var(--sem-inprogress-text)}
.prail li.is-done .prail__n{color:var(--text-heading)}
.dark .prail,.dark .prail li{border-color:var(--border-on-shell)}
.dark .prail li>*{color:var(--text-on-shell-muted)}.dark .prail li.is-on>*,.dark .prail li.is-done .prail__n,.dark .prail button:hover .prail__t{color:var(--fid-white)}
.dark .prail li.is-on .prail__n{color:var(--fid-violet-200)}.dark .prail__d{color:var(--text-on-shell)}
.dark .prail button:focus-visible{outline-color:var(--fid-violet-200)}

/* canvas */
.pcanvas{position:relative;height:600px}
.pcanvas--pin{height:min(600px,calc(100vh - var(--hdr-h) - 96px))}
.pcanvas__st{position:absolute;inset:0;opacity:0;transform:translateY(8px);transition:opacity 220ms var(--ease-out),transform 220ms var(--ease-out);pointer-events:none}
.pcanvas__st.is-past{transform:translateY(-8px)}.pcanvas__st.is-on{opacity:1;transform:none}
.pcanvas .jframe__body{overflow:hidden}
.jp__two{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12)}
.pframe .fid-radio{margin-block:var(--space-4)}

/* pinned stories */
.ppin__stick{display:flex;align-items:stretch;padding-top:var(--hdr-h);box-sizing:border-box}
.ppin__grid{flex:1;padding-block:clamp(12px,2.4vh,32px)}
.ppin__stick .psplit__left{gap:clamp(12px,2.4vh,32px)}
.ppin__stick .prail li>*{padding:clamp(4px,.7vh,10px) 0}
.ppin__stick .pquote{font:var(--type-body-lg);font-weight:var(--weight-medium)}
.preq{background:var(--surface-app)}
.preq--m{background:var(--surface-app)}
.pmlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-48)}
.pmlist__t{font:var(--type-h4);color:var(--text-heading);margin:var(--space-4) 0}
.pmlist .prail__n{color:var(--sem-inprogress-text)}
.pmlist .jframe{height:auto}

/* 01 hero */
.phero{background:var(--fid-white);padding:calc(var(--hdr-h) + clamp(24px,4.5vh,64px)) 0 clamp(64px,10vh,96px)}
.phero__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-64);align-items:center}
.phero__text{display:flex;flex-direction:column;gap:clamp(12px,2.4vh,24px)}
.phero__roles{font-size:min(var(--text-h3),3.4vh)!important;line-height:1.35!important}
.phero__h{font-size:min(var(--mk-head-size),6.8vh);line-height:1.1;max-width:13ch}
.phero__roles{display:flex;flex-direction:column;font:var(--type-h3);color:var(--text-heading)}
.phero__roles span:nth-child(2){color:var(--fid-plum-600)}.phero__roles span:nth-child(3){color:var(--sem-inprogress-text)}
.phero__vis{display:flex;flex-direction:column;gap:var(--space-12);min-width:0}
.prole-sel{display:flex;gap:var(--space-24);border-bottom:var(--border-w) solid var(--border-default)}
.prole-sel button{display:inline-flex;align-items:center;gap:var(--space-8);padding:var(--space-8) 0;background:none;border:0;box-shadow:inset 0 -2px 0 transparent;font:var(--type-ui-medium);color:var(--text-muted);cursor:pointer;margin-bottom:-1px}
.prole-sel button:hover{color:var(--text-heading)}
.prole-sel button.is-on{color:var(--text-heading);box-shadow:inset 0 -2px 0 var(--fid-plum)}
.prole-sel button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
.phero__canvas,.pshell{position:relative}
.phero__st,.pshell__st{position:absolute;inset:0 0 auto 0;opacity:0;transition:opacity 220ms var(--ease-out),transform 220ms var(--ease-out);pointer-events:none}
.phero__st:first-child,.pshell__st:first-child{position:relative}
.phero__st.is-on,.pshell__st.is-on{opacity:1}

/* 03 workspace / 07 management */
.pws,.pmgmt{background:var(--surface-app)}
.pmgmt{background:var(--fid-white)}
.pws .psplit__right,.pmgmt .psplit__right{align-items:flex-end}
.pshell{width:min(100%,calc((100vh - var(--hdr-h) - 104px) * 1.6))}
.pmgmt .pshell{width:min(100%,calc((100vh - var(--hdr-h) - 104px) * 1.44))}
.pcap{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-16);border-top:2px solid var(--fid-plum)}
.pcap .prail__n{color:var(--sem-inprogress-text)}
.pcap__t{font:var(--type-h4);color:var(--text-heading)}
.pws__ref{max-width:40ch}
.pmg__dash.is-under{opacity:1;transform:scale(.97);transform-origin:top center;filter:none}
.pmg__detail{transform:scale(1.02);transform-origin:top center}
.pmg__detail.is-on{transform:none}
.psplit.pws,.psplit.pmgmt{padding:clamp(64px,9vh,96px) 0}

/* 04 governance */
.pgov__labels{display:flex;flex-wrap:wrap;gap:var(--space-8) var(--space-16);font:var(--type-meta);color:var(--text-on-shell-muted);margin:0}
.pgov__labels span+span::before{content:"·";margin-inline-end:var(--space-16)}
.pchecks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-8)}
.pcheck{display:flex;gap:var(--space-8);align-items:center;font:var(--type-ui);color:var(--text-default)}
.pcheck .fid-icon{color:var(--sem-success)}
.pcheck.is-flag .fid-icon{color:var(--sem-exception-text)}
.pout{display:flex;gap:var(--space-8);align-items:center;font:var(--type-ui-medium);color:var(--sem-success);padding-top:var(--space-12);border-top:var(--border-w) solid var(--border-subtle)}

/* 05 sourcing / 06 execution */
.psrc{background:var(--fid-white)}
.pexec{background:var(--surface-app)}
.pexec .pcanvas{height:640px}.pexec .pcanvas--pin{height:min(640px,calc(100vh - var(--hdr-h) - 72px))}
.pstory.pgov{background:var(--fid-plum-deep)}.pstory.psrc{background:var(--fid-white)}.pstory.pexec{background:var(--surface-app)}
.pfrozen{display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-12);background:var(--surface-sunken);border-radius:var(--radius-card)}
.plock{font:var(--type-meta);color:var(--text-muted);display:inline-flex;align-items:center;gap:var(--space-6-sub)}

/* 08 roles + closing */
.pclose{padding-top:clamp(96px,14vh,136px)}
.stack-80{display:flex;flex-direction:column;gap:clamp(56px,9vh,80px)}
.proles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-64)}
.proles__r{font:var(--type-label);color:var(--fid-plum-200);margin-bottom:var(--space-12)}
.proles__col ul{list-style:none;margin:0;padding:0}
.proles__col li{font-weight:var(--weight-semibold);font-size:var(--text-h2);line-height:var(--leading-h2);letter-spacing:var(--tracking-display);color:var(--fid-white)}
.proles__col:nth-child(3) li{color:var(--fid-violet-200)}

@media (max-width:1099px){
.phero__grid,.psplit__grid,.pwide__grid{grid-template-columns:1fr;gap:var(--space-40)}
.pshell,.pmgmt .pshell{width:100%}
.pcanvas{height:620px}
.prole-sel{gap:var(--space-16);overflow-x:auto;scrollbar-width:none}
.proles{grid-template-columns:1fr;gap:var(--space-32)}
}
@media (max-width:600px){.jp__two{grid-template-columns:1fr}.pcanvas,.pexec .pcanvas{height:720px}.prole-sel button{font:var(--type-label)}}

/* story navigator */
.pnav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:var(--border-w) solid var(--border-default)}
.pnav li{position:relative;border-bottom:var(--border-w) solid var(--border-default)}
.pnav li::before{content:"";position:absolute;inset-block:-1px;inset-inline-start:0;width:2px;background:var(--fid-violet);transform:scaleY(0);transition:transform 220ms var(--ease-out)}
.pnav li.is-on::before{transform:scaleY(1)}
.pnav button{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:var(--space-12);width:100%;text-align:start;padding:clamp(5px,.9vh,10px) 0 clamp(5px,.9vh,10px) var(--space-16);background:none;border:0;font:inherit;color:var(--text-muted);cursor:pointer}
.pnav button:hover .pnav__t{color:var(--text-heading)}
.pnav button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:var(--radius-xs)}
.pnav__n{font:var(--type-label);font-variant-numeric:tabular-nums;color:inherit;padding-top:2px}
.pnav__t{font:var(--type-ui-medium);color:inherit;transition:color 160ms}
.pnav__dw{grid-column:2;display:grid;grid-template-rows:0fr;transition:grid-template-rows 220ms var(--ease-out)}
.pnav__d{overflow:hidden;min-height:0;font:var(--type-meta);color:var(--text-muted)}
.pnav li.is-on .pnav__dw{grid-template-rows:1fr}.pnav li.is-on .pnav__d{padding-top:var(--space-4)}
.pnav li.is-on button{color:var(--text-heading)}
.pnav li.is-on .pnav__t{font-weight:var(--weight-semibold);color:var(--text-heading)}
.pnav li.is-on .pnav__n{color:var(--sem-inprogress-text)}
.pnav li.is-done .pnav__n{color:var(--text-heading)}
.dark .pnav,.dark .pnav li{border-color:var(--border-on-shell)}
.dark .pnav li::before{background:var(--fid-violet-200)}
.dark .pnav button{color:var(--text-on-shell-muted)}
.dark .pnav button:hover .pnav__t,.dark .pnav li.is-on .pnav__t,.dark .pnav li.is-done .pnav__n{color:var(--fid-white)}
.dark .pnav li.is-on .pnav__n{color:var(--fid-violet-200)}
.dark .pnav__d{color:var(--text-on-shell)}
.dark .pnav button:focus-visible{outline-color:var(--fid-violet-200)}
@media (prefers-reduced-motion:reduce){.pnav li::before,.pnav__dw,.pcanvas__st,.pshell__st{transition:none}}
/* mobile navigator */
.pmnav{display:flex;flex-direction:column;gap:var(--space-16)}
.pmnav__chips{display:flex;gap:var(--space-4);overflow-x:auto;scrollbar-width:none;border-bottom:var(--border-w) solid var(--border-default)}
.pmnav__chips button{min-width:44px;min-height:44px;background:none;border:0;box-shadow:inset 0 -2px 0 transparent;font:var(--type-label);font-variant-numeric:tabular-nums;color:var(--text-muted);cursor:pointer}
.pmnav__chips button.is-on{color:var(--text-heading);box-shadow:inset 0 -2px 0 var(--fid-plum)}
.pmnav__chips button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}
.pmnav__head .pnav__n{color:var(--sem-inprogress-text)}
.pmnav__t{font:var(--type-h4);color:var(--text-heading);margin:var(--space-4) 0}
.pmnav__pn{display:flex;justify-content:space-between;gap:var(--space-12)}
.dark .pmnav__chips{border-color:var(--border-on-shell)}.dark .pmnav__chips button{color:var(--text-on-shell-muted)}
.dark .pmnav__chips button.is-on{color:var(--fid-white);box-shadow:inset 0 -2px 0 var(--fid-violet-200)}
.dark .pmnav__t{color:var(--fid-white)}.dark .pmnav__head .pnav__n{color:var(--fid-violet-200)}

/* Platform explorer — one stage: master menu · area content · product canvas */
.pex{background:var(--surface-app)}
.pex__stick{display:flex;align-items:stretch;padding-top:var(--hdr-h);box-sizing:border-box}
.pex__grid{flex:1;display:grid;grid-template-columns:232px minmax(0,1fr);gap:var(--space-40);align-items:start;padding-block:clamp(14px,2.6vh,32px)}
.pex__areas{display:flex;flex-direction:column;gap:var(--space-8);padding-top:2px}
.pex__areas-h{font:var(--type-meta);color:var(--text-muted)}
.pex__areas ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:var(--border-w) solid var(--border-default)}
.pex__areas li{position:relative;border-bottom:var(--border-w) solid var(--border-default)}
.pex__areas li::before{content:"";position:absolute;inset-block:-1px;inset-inline-start:0;width:2px;background:var(--fid-violet);transform:scaleY(0);transition:transform 220ms var(--ease-out)}
.pex__areas li.is-on::before{transform:scaleY(1)}
.pex__areas button{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:var(--space-8);width:100%;text-align:start;padding:clamp(8px,1.4vh,14px) 0 clamp(8px,1.4vh,14px) var(--space-16);background:none;border:0;font:var(--type-ui-medium);line-height:1.35;color:var(--text-muted);cursor:pointer}
.pex__areas button:hover{color:var(--text-heading)}
.pex__areas button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:var(--radius-xs)}
.pex__areas li.is-on button{color:var(--text-heading);font-weight:var(--weight-semibold)}
.pex__areas li.is-on .pnav__n{color:var(--sem-inprogress-text)}
.pex__areas li.is-done .pnav__n{color:var(--text-heading)}
.pex__body{display:flex;flex-direction:column;gap:clamp(10px,1.8vh,18px);min-width:0;animation:pex-in 240ms var(--ease-out)}
@keyframes pex-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.pex__h{font-weight:var(--weight-semibold);font-size:min(var(--text-h1),5vh);line-height:1.15;letter-spacing:var(--tracking-display);color:var(--text-heading);text-wrap:balance}
.pex__quote{font:var(--type-body);font-weight:var(--weight-medium)}
.pex__labels{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-12);font:var(--type-meta);color:var(--text-muted);margin:0}
.pex__labels span+span::before{content:"·";margin-inline-end:var(--space-12)}
.pex__right{display:flex;flex-direction:column;gap:var(--space-12);min-width:0}
.pex__canvas{position:relative;height:min(600px,calc(100vh - var(--hdr-h) - 148px))}
.pex__layer{position:absolute;inset:0;opacity:0;transition:opacity 240ms var(--ease-out);pointer-events:none}
.pex__layer.is-on{opacity:1}
.pex__layer .pshell{width:100%}
.pcanvas--fill{height:100%}
.pex--m{padding:clamp(64px,9vh,96px) 0}
.pex__mareas{display:flex;gap:var(--space-16);overflow-x:auto;scrollbar-width:none;border-bottom:var(--border-w) solid var(--border-default)}
.pex__mareas button{display:inline-flex;align-items:center;gap:var(--space-8);min-height:44px;white-space:nowrap;background:none;border:0;box-shadow:inset 0 -2px 0 transparent;font:var(--type-label);color:var(--text-muted);cursor:pointer}
.pex__mareas button.is-on{color:var(--text-heading);box-shadow:inset 0 -2px 0 var(--fid-plum)}
.pex__mareas button.is-on .pnav__n{color:var(--sem-inprogress-text)}
.pex__mareas button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}
.pex__mcanvas .pcanvas--fill{height:620px}
@media (max-width:600px){.pex__mcanvas .pcanvas--fill{height:720px}}
@media (prefers-reduced-motion:reduce){.pex__body{animation:none}.pex__layer,.pex__areas li::before{transition:none}}

/* Level-2 vertical stepper (subordinate to the Level-1 area menu: no dividers, connector + markers) */
.pstep{list-style:none;margin:0;padding:var(--space-4) 0 0;display:flex;flex-direction:column}
.pstep li{position:relative}
.pstep li::after{content:"";position:absolute;inset-inline-start:4px;top:0;bottom:0;width:1px;background:var(--border-default)}
.pstep li:first-child::after{top:calc(clamp(4px,.7vh,8px) + 9px)}
.pstep li:last-child::after{bottom:auto;height:calc(clamp(4px,.7vh,8px) + 9px)}
.pstep li:only-child::after{display:none}
.pstep button{position:relative;z-index:1;display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:var(--space-8);width:100%;text-align:start;padding:clamp(4px,.7vh,8px) 0 clamp(4px,.7vh,8px) var(--space-24);background:none;border:0;font:inherit;color:var(--text-muted);cursor:pointer}
.pstep button:hover .pstep__t{color:var(--text-heading)}
.pstep button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:var(--radius-xs)}
.pstep__m{position:absolute;inset-inline-start:0;top:calc(clamp(4px,.7vh,8px) + 5px);width:9px;height:9px;box-sizing:border-box;border-radius:var(--radius-pill);background:var(--surface-app);border:1.5px solid var(--fid-grey-400,var(--border-strong));transition:background-color 180ms,border-color 180ms,box-shadow 180ms}
.pstep__n{font:var(--type-meta);font-variant-numeric:tabular-nums;color:inherit;padding-top:1px}
.pstep__t{font:var(--type-ui-medium);color:inherit;transition:color 160ms}
.pstep__dw{grid-column:2;display:grid;grid-template-rows:0fr;transition:grid-template-rows 220ms var(--ease-out)}
.pstep__d{overflow:hidden;min-height:0;font:var(--type-meta);color:var(--text-muted)}
.pstep li.is-done button{color:var(--text-default)}
.pstep li.is-done .pstep__m{background:var(--fid-plum-300);border-color:var(--fid-plum-300)}
.pstep li.is-on button{color:var(--text-heading);padding-block:clamp(6px,1vh,10px)}
.pstep li.is-on .pstep__t{font-weight:var(--weight-semibold)}
.pstep li.is-on .pstep__n{color:var(--sem-inprogress-text)}
.pstep li.is-on .pstep__m{top:calc(clamp(6px,1vh,10px) + 5px);background:var(--fid-violet);border-color:var(--fid-violet);box-shadow:0 0 0 3px var(--fid-violet-100)}
.pstep li.is-on .pstep__dw{grid-template-rows:1fr}.pstep li.is-on .pstep__d{padding-top:2px}
@media (prefers-reduced-motion:reduce){.pstep__m,.pstep__dw{transition:none}}

/* Level-1 stronger; Level-2 horizontal workflow bar */
.pex__areas-h{font:var(--type-label);color:var(--text-muted)}
.pex__areas li.is-on button{color:var(--text-heading);font-weight:var(--weight-semibold)}
.pex__main{display:flex;flex-direction:column;gap:clamp(14px,2.4vh,24px);min-width:0}
.pex__split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:var(--space-40);align-items:start}
.pbar{list-style:none;margin:0;padding:0;display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:var(--border-w) solid var(--border-default)}
.pbar::-webkit-scrollbar{display:none}
.pbar li{flex:1 1 0;min-width:96px}
.pbar button{display:flex;flex-direction:column;gap:2px;width:100%;height:100%;text-align:start;padding:var(--space-8) var(--space-12) var(--space-8) 0;background:none;border:0;box-shadow:inset 0 -2px 0 transparent;font:inherit;color:var(--text-muted);cursor:pointer;margin-bottom:-1px;transition:box-shadow 180ms,color 160ms}
.pbar button:hover{color:var(--text-heading)}
.pbar button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:var(--radius-xs)}
.pbar__n{font:var(--type-meta);font-variant-numeric:tabular-nums;color:inherit}
.pbar__t{font:var(--type-label);color:inherit;text-wrap:balance}
.pbar li.is-done button{color:var(--text-default)}
.pbar li.is-on button{color:var(--text-heading);box-shadow:inset 0 -2px 0 var(--fid-violet)}
.pbar li.is-on .pbar__n{color:var(--sem-inprogress-text)}
.pbar li.is-on .pbar__t{font-weight:var(--weight-semibold)}
.pex__step{display:flex;flex-direction:column;gap:var(--space-4);padding-top:clamp(10px,1.8vh,16px);border-top:2px solid var(--fid-plum);animation:pex-in 200ms var(--ease-out)}
.pex__stepn{font:var(--type-meta);color:var(--sem-inprogress-text);font-variant-numeric:tabular-nums}
.pex__stept{font:var(--type-h4);color:var(--text-heading)}
.pfit{height:100%;overflow:hidden}
.pfit__in{transform-origin:0 0;min-height:100%;display:flex;flex-direction:column}
.pfit__in>.jframe{height:auto;flex:1}
.pex--m .pbar li{flex:0 0 auto;min-width:120px}
@media (prefers-reduced-motion:reduce){.pex__step{animation:none}.pbar button{transition:none}}

/* Shared explorer height logic: stage = 100svh − header; body = stage − workflow bar − padding. Both columns share it. */
.pex__stick{height:100svh}
.pex__grid{align-items:stretch;min-height:0}
.pex__areas{align-self:start}
.pex__main{min-height:0;height:100%}
.pex__split{flex:1;min-height:0;grid-template-rows:minmax(0,1fr)}
.pex__body{gap:0;min-height:0}
.pex__body>.eyebrow{margin-bottom:clamp(8px,1.4vh,14px)}
.pex__h{font-size:min(var(--text-h1),4.6vh)}
.pex__body>.pex__h{margin-bottom:clamp(10px,1.8vh,18px)}
.pex__body>.pex__lead{margin-bottom:clamp(10px,1.8vh,18px)}
.pex__body>.pex__quote{margin-bottom:clamp(12px,2.2vh,22px)}
.pex__body>.pex__step{margin-bottom:clamp(12px,2vh,18px)}
.pex__step{padding-top:clamp(8px,1.4vh,14px)}
.pex__right{height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--space-8)}
.pex__canvas{flex:1;min-height:0;height:auto;max-height:600px;container-type:size}
.pex__layer .pshell{width:min(100%,calc(100cqh * 1.6))}
.pex__layer .pshell:has(.pmg__dash){width:min(100%,calc(100cqh * 1.44))}

/* Pre-footer: one screen — role band + CTA band */
.pclose.close{padding:clamp(48px,7vh,64px) 0 clamp(40px,6vh,56px);min-height:calc(100svh - var(--hdr-h));box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
.pclose__in{display:flex;flex-direction:column;gap:clamp(40px,6.5vh,56px);box-sizing:border-box;width:100%;max-width:calc(var(--wrap) + 2 * var(--pad-x))}
.pclose .proles{gap:var(--space-48);padding-bottom:clamp(28px,4.5vh,40px);border-bottom:var(--border-w) solid var(--border-on-shell)}
.pclose .proles__col li{font-size:min(var(--text-h2),4.2vh);line-height:1.25}
.pclose__cta{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-64);align-items:end}
.pclose__h{font-size:min(var(--mk-head-size),7.2vh);line-height:1.1;max-width:none}
.pclose__act{display:flex;flex-direction:column;gap:var(--space-24)}
.pclose__act .mk-lead{max-width:44ch}
@media (max-width:1099px){.pclose.close{min-height:0;display:block;padding:var(--space-80) 0}.pclose__cta{grid-template-columns:1fr;gap:var(--space-24);align-items:start}.pclose .proles{grid-template-columns:1fr;gap:var(--space-32)}}

/* Pre-footer alignment: both bands on one 3-column grid; CTA row top-aligned */
.pclose__in{gap:clamp(40px,6.8vh,56px)}
.pclose .proles{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-48);padding-bottom:clamp(24px,3.6vh,32px)}
.pclose__cta{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--space-48);align-items:start}
.pclose__cta>:first-child{grid-column:1 / span 2}
.pclose__cta>:last-child{grid-column:3}
.pclose__act{gap:var(--space-24);padding-top:.35em}
.pclose__act .row-gap{gap:var(--space-12)}
@media (max-width:1099px){.pclose__cta{grid-template-columns:1fr}.pclose__cta>:first-child,.pclose__cta>:last-child{grid-column:auto}.pclose__act{padding-top:0}}

/* Pre-footer width fix: wrap kept inside the approved content width; CTA row 7fr / 5fr */
.pclose__cta{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:clamp(40px,5vw,72px)}
.pclose__cta>*{min-width:0;box-sizing:border-box}
.pclose__cta>:first-child{grid-column:1}
.pclose__cta>:last-child{grid-column:2;justify-self:end;width:min(100%,460px)}
.pclose__act .mk-lead{max-width:none}
.pclose__act .row-gap{flex-wrap:wrap;gap:var(--space-12)}
.pclose__act .fid-btn{max-width:100%}
