
:root{
  --paper:#F7F6FB;--surface:#FFFFFF;--ink:#111111;--ink2:#3A3750;--muted:#5E5A73;
  --line:#DDD9EC;--line2:#ECE9F6;--violet:#8364FF;--violetInk:#5B3FD6;--violetWash:#EFEBFF;
  --green:#1F7A52;--greenWash:#E4F4EB;--amber:#B8730F;--amberWash:#FBF1DF;
  --display:'Space Grotesk',sans-serif;--body:'IBM Plex Sans',sans-serif;--mono:'IBM Plex Mono',monospace;
  --max:1180px;--radius:10px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);line-height:1.3175}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
header{position:sticky;top:0;z-index:100;background:rgba(247,246,251,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
.navbar{min-height:72px;display:flex;align-items:center;gap:20px}.brand{font-family:var(--display);font-weight:700;letter-spacing:-.02em;white-space:nowrap}.brand b{color:var(--violetInk);font-weight:600}
.navlinks{margin-left:auto;display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.navlinks a{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:10px 11px;border-radius:6px;color:var(--muted)}.navlinks a:hover,.navlinks a.active{background:var(--violetWash);color:var(--violetInk)}
.navlinks .cta{background:var(--violet);color:#fff;border-radius:4px}.navlinks .cta:hover{background:var(--violetInk);color:#fff}
main{min-height:70vh}.page{display:none}.page.active{display:block}.hero{padding:88px 0 64px}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--violetInk);font-weight:600}.hero h1,.section h2{font-family:var(--display);letter-spacing:-.025em;line-height:1.08}.hero h1{font-size:clamp(40px,6vw,68px);max-width:920px;margin:14px 0 22px}.hero p.lead{font-size:19px;max-width:760px;color:var(--ink2)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{border:1px solid var(--violet);background:var(--violet);color:#fff;padding:12px 18px;border-radius:4px;font-family:var(--display);font-weight:600;cursor:pointer}.btn.secondary{background:transparent;color:var(--violetInk)}
.section{padding:70px 0;border-top:1px solid var(--line)}.section h2{font-size:clamp(30px,4vw,45px);margin:10px 0 16px}.section .intro{font-size:18px;color:var(--ink2);max-width:850px}
.assurance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.card .meta{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--violetInk);font-weight:600}.card h3{font-family:var(--display);font-size:20px;margin:9px 0 8px}.card p{color:var(--ink2);margin:0}.card.evidence{border-left:4px solid var(--green)}.card.attention{border-left:4px solid var(--amber)}
.problem{margin-top:30px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--violet);border-radius:var(--radius);padding:28px}.problem h3{font-family:var(--display);font-size:24px;margin:0 0 10px}.problem p{font-size:17px;color:var(--ink2);max-width:930px;margin:0}
.credentials{font-family:var(--mono);font-size:12px;letter-spacing:.07em;color:var(--muted);margin-top:26px}
/* Trustworthy AI */
.tai-shell{padding:46px 0 78px}.tai-header{max-width:900px}.tai-header h1{font-family:var(--display);font-size:clamp(36px,5vw,56px);line-height:1.08;margin:12px 0 15px}.tai-header p{font-size:18px;color:var(--ink2)}
.stage-nav{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 22px}.stage-nav button{min-height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink2);padding:9px 12px;border-radius:6px;cursor:pointer;font-family:var(--mono);font-size:10.5px;letter-spacing:.05em}.stage-nav button[aria-selected="true"]{background:var(--violetWash);border-color:var(--violet);color:var(--violetInk)}
.stage-frame{max-width:1100px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:28px;overflow:hidden}.stage-content{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:22px;align-items:start;animation:stageIn .32s cubic-bezier(.2,.8,.2,1)}
@keyframes stageIn{from{opacity:.2;transform:translateX(8px)}to{opacity:1;transform:none}}
.stage-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--violetInk)}.stage-content h2{font-family:var(--display);font-size:32px;line-height:1.15;margin:7px 0 10px}.stage-content .tagline{font-size:17px;color:var(--ink2);margin-bottom:20px}.tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:100%}.tile{min-width:0;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:8px;padding:17px}.tile h3{font-family:var(--display);font-size:16px;margin:0 0 7px}.tile p{font-size:14px;color:var(--ink2);margin:0}.tile.evidence{background:var(--greenWash);border-color:#BBDDCB}.tile.mandate{background:var(--amberWash);border-color:#E8CFA9}.tile.active{background:var(--violetWash);border:2px solid var(--violet)}
.signal{background:var(--paper);border:1px solid var(--line2);border-radius:8px;padding:20px}.signal .k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.signal h3{font-family:var(--display);font-size:19px;margin:7px 0 16px}.signal-row{border-top:1px solid var(--line);padding:12px 0}.signal-row:first-of-type{border-top:0}.signal-row b{display:block;font-size:13px;margin-bottom:3px}.signal-row span{font-size:13px;color:var(--ink2)}
.stage-controls{display:flex;justify-content:space-between;gap:12px;margin-top:18px;max-width:1100px;margin-left:auto;margin-right:auto}.stage-controls button{min-width:120px;min-height:44px;border:1px solid var(--line);background:var(--surface);border-radius:6px;cursor:pointer;font-family:var(--display);font-weight:600;color:var(--ink2)}.stage-controls button:hover{border-color:var(--violet);color:var(--violetInk)}.stage-controls button:disabled{opacity:.45;cursor:not-allowed}
.progress{max-width:1100px;margin:14px auto 0;display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.progress i{height:4px;background:var(--line2);border-radius:2px}.progress i.on{background:var(--violet)}
/* Engage + privacy */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:30px}.form-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:26px}.form-card h3{font-family:var(--display);font-size:23px;margin-top:0}.field{display:grid;gap:6px;margin:14px 0}.field label{font-family:var(--mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.field input,.field textarea,.field select{border:1px solid var(--line);border-radius:6px;padding:12px;background:#fff;color:var(--ink)}.notice{font-size:13px;color:var(--muted);background:var(--paper);border-left:3px solid var(--violet);padding:12px 14px;margin:14px 0}.privacy-rights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0}.right-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px}.right-card h3{font-family:var(--display);font-size:17px;margin:0 0 7px}.legal h2{font-family:var(--display);font-size:28px;margin-top:36px}.legal p,.legal li{color:var(--ink2)}
footer{border-top:1px solid var(--line);padding:36px 0 50px;background:var(--surface)}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.foot nav{display:flex;gap:16px;flex-wrap:wrap}.foot a{font-size:13px;color:var(--muted)}

/* Interactive lab system */
.lab-shell{padding:44px 0 78px}.lab-head{max-width:900px}.lab-head h1{font-family:var(--display);font-size:clamp(36px,5vw,56px);line-height:1.08;margin:12px 0 15px}.lab-head p{font-size:18px;color:var(--ink2)}
.lab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:24px 0 16px}.lab-tabs,.filter-chips{display:flex;gap:8px;flex-wrap:wrap}.lab-tab,.chip,.trace-btn{min-height:44px;border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:9px 12px;cursor:pointer;color:var(--ink2);font-family:var(--mono);font-size:10.5px;letter-spacing:.04em}.lab-tab.on,.chip.on{background:var(--violetWash);border-color:var(--violet);color:var(--violetInk)}.trace-btn{border-color:var(--violet);color:var(--violetInk);font-weight:600}.trace-btn:hover{background:var(--violetWash)}
.interactive-frame{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.diagram-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;min-height:630px}.diagram-pane{position:relative;min-width:0;padding:18px;background:linear-gradient(var(--paper),var(--paper))}.diagram-pane svg{width:100%;height:590px;display:block}.detail-pane{border-left:1px solid var(--line);padding:24px;background:#fff}.detail-pane .meta{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--violetInk)}.detail-pane h2{font-family:var(--display);font-size:25px;line-height:1.16;margin:8px 0 12px}.detail-pane h3{font-family:var(--display);font-size:15px;margin:18px 0 5px}.detail-pane p{font-size:14px;color:var(--ink2);margin:0}.detail-pane .risk{border-left:3px solid var(--amber);padding-left:11px}.detail-pane .control{border-left:3px solid var(--green);padding-left:11px}.hintline{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:12px}
.node rect,.node path,.node circle{transition:fill .22s ease-out,stroke .22s ease-out,transform .22s ease-out}.node{cursor:pointer;outline:none}.node .n-title{font-family:var(--display);font-size:13px;font-weight:600;fill:var(--ink)}.node .n-meta{font-family:var(--mono);font-size:8.5px;fill:var(--muted);letter-spacing:.04em}.node:hover rect,.node:focus rect,.node.sel rect{stroke:var(--violet);stroke-width:2.2;fill:var(--violetWash)}.node.sel .n-meta{fill:var(--violetInk)}
.edge{fill:none;stroke:var(--muted);stroke-width:1.5;opacity:.55}.edge.evidence{stroke:var(--green);stroke-width:2}.edge.mandate{stroke:var(--amber);stroke-width:2}.edge.assurance{stroke:var(--violet);stroke-width:2}.edge.portable{stroke-dasharray:6 6}.edge.trace{opacity:1;stroke-width:3;animation:traceEdge .46s ease-in-out}
@keyframes traceEdge{from{stroke-dasharray:5 120;stroke-dashoffset:125}to{stroke-dasharray:125 0;stroke-dashoffset:0}}
.tooltip{position:fixed;z-index:300;pointer-events:none;max-width:310px;background:#fff;border:1px solid var(--violet);border-radius:8px;padding:12px 14px;box-shadow:0 12px 34px rgba(17,17,17,.12);opacity:0;transform:translateY(5px);transition:opacity .18s ease-out,transform .18s ease-out}.tooltip.show{opacity:1;transform:none}.tooltip .tt-k{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--violetInk)}.tooltip b{font-family:var(--display);font-size:14px;display:block;margin:3px 0}.tooltip span{font-size:12.5px;color:var(--ink2);display:block}
.legend{display:flex;gap:13px;flex-wrap:wrap;margin:12px 0 0;font-family:var(--mono);font-size:9.5px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:5px}.sw{width:24px;height:0;border-top:2px solid var(--muted)}.sw.ev{border-color:var(--green)}.sw.ma{border-color:var(--amber)}.sw.as{border-color:var(--violet)}.sw.pt{border-top-style:dashed}
/* portable trust labs */
.lab-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px 0}.lab-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;cursor:pointer;transition:border-color .22s ease-out,transform .22s ease-out,background .22s ease-out}.lab-card:hover,.lab-card:focus,.lab-card.on{border-color:var(--violet);transform:translateY(-2px);background:var(--violetWash)}.lab-card .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--violetInk)}.lab-card h3{font-family:var(--display);font-size:18px;margin:7px 0}.lab-card p{font-size:13.5px;color:var(--ink2);margin:0}.lab-map{display:grid;grid-template-columns:220px 1fr;gap:16px}.lab-layers{display:grid;gap:9px}.layer-btn{min-height:62px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:8px;padding:11px 13px;cursor:pointer}.layer-btn b{display:block;font-family:var(--display);font-size:14px}.layer-btn span{font-size:11px;color:var(--muted)}.layer-btn.on{background:var(--violetWash);border-color:var(--violet)}.pt-canvas{position:relative;min-height:460px;border:1px solid var(--line2);border-radius:8px;background:var(--paper);overflow:hidden}.pt-node{position:absolute;width:180px;min-height:82px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px;cursor:pointer;transition:all .28s cubic-bezier(.2,.8,.2,1)}.pt-node:hover,.pt-node:focus,.pt-node.on{border:2px solid var(--violet);background:var(--violetWash);transform:translateY(-2px)}.pt-node.evidence{border-left:4px solid var(--green)}.pt-node.mandate{border-left:4px solid var(--amber)}.pt-node .nk{font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.pt-node b{font-family:var(--display);font-size:14px;display:block;margin-top:4px}.pt-node small{font-size:11px;color:var(--ink2)}.pt-line{position:absolute;height:2px;background:var(--muted);transform-origin:left center;opacity:.55}.pt-line.ev{background:var(--green)}.pt-line.ma{background:var(--amber)}.pt-line.as{background:var(--violet)}.pt-line.port{height:0;border-top:2px dashed var(--muted);background:none}.pt-line.trace{opacity:1;animation:lineFlash .48s ease-in-out}@keyframes lineFlash{0%{filter:opacity(.25)}50%{filter:opacity(1)}100%{filter:opacity(.75)}}
.lab-definition{margin-top:15px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:17px;min-height:126px}.lab-definition .k{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--violetInk);text-transform:uppercase}.lab-definition h3{font-family:var(--display);font-size:19px;margin:5px 0}.lab-definition p{font-size:13.5px;color:var(--ink2);margin:0}
/* governance forum */
.forum-grid{display:grid;grid-template-columns:280px 1fr;gap:20px;margin-top:26px}.forum-cats{display:grid;gap:8px;align-content:start}.forum-cat{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px;text-align:left;cursor:pointer}.forum-cat.on{background:var(--violetWash);border-color:var(--violet)}.forum-cat b{font-family:var(--display);display:block}.forum-cat span{font-size:12px;color:var(--muted)}.forum-main{display:grid;gap:12px}.topic{background:#fff;border:1px solid var(--line);border-radius:9px;padding:18px}.topic .meta{font-family:var(--mono);font-size:9px;color:var(--muted);letter-spacing:.07em;text-transform:uppercase}.topic h3{font-family:var(--display);font-size:18px;margin:6px 0}.topic p{font-size:13.5px;color:var(--ink2);margin:0}.forum-compose{background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px}.forum-compose h3{font-family:var(--display);margin-top:0}.forum-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.moderation{font-size:12px;color:var(--muted);max-width:620px}.badge{font-family:var(--mono);font-size:9px;border:1px solid var(--line);border-radius:999px;padding:3px 7px;color:var(--muted)}
@media(max-width:960px){.diagram-grid{grid-template-columns:1fr}.detail-pane{border-left:0;border-top:1px solid var(--line)}.lab-index{grid-template-columns:repeat(2,1fr)}.lab-map,.forum-grid{grid-template-columns:1fr}.lab-layers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.lab-index{grid-template-columns:1fr}.lab-layers{grid-template-columns:1fr}.diagram-pane svg{height:520px}.pt-node{width:145px}.navlinks{max-height:112px;overflow:auto}}

@media(max-width:860px){.assurance-grid,.two-col,.privacy-rights{grid-template-columns:1fr}.stage-content{grid-template-columns:1fr}.tile-grid{grid-template-columns:1fr}.navbar{align-items:flex-start;padding:14px 0}.navlinks{gap:2px}.wrap{width:min(var(--max),calc(100% - 32px))}}
@media(max-width:620px){.brand{font-size:14px}.navlinks a{font-size:9.5px;padding:8px}.hero{padding-top:56px}.stage-frame{padding:18px}.stage-controls button{min-width:0;flex:1}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{header,.stage-nav,.stage-controls,.progress,.actions{display:none!important}.page{display:block!important;page-break-after:always}.stage-frame{border:0;padding:0}.stage-content{display:block}.tile-grid{grid-template-columns:1fr 1fr}}

/* Personal showcase architecture layer */
.personal-note{margin-top:34px;max-width:870px;border-left:3px solid var(--violet);padding:18px 22px;background:rgba(255,255,255,.68)}
.personal-note .personal-k{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--violetInk);font-weight:600}.personal-note p{margin:5px 0 0;color:var(--ink2);font-size:16px}
.personal-section{background:#fff}.career-architecture{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:34px;padding:22px 0 16px;isolation:isolate}.career-node{position:relative;z-index:2;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px;min-height:178px}.career-node span{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;color:var(--violetInk)}.career-node h3{font-family:var(--display);font-size:19px;margin:8px 0}.career-node p{margin:0;color:var(--ink2);font-size:13.5px}.career-node.cn-assure{border:2px solid var(--violet);background:var(--violetWash)}.career-lines{position:absolute;z-index:1;inset:0;width:100%;height:100%;pointer-events:none}.career-lines path{fill:none;stroke:var(--violet);stroke-width:2;vector-effect:non-scaling-stroke;opacity:.45}
.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.proof-grid article{border-top:1px solid var(--line);padding:16px 4px}.proof-grid span{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--muted)}.proof-grid b{display:block;font-family:var(--display);font-size:15px;margin:5px 0}.proof-grid p{font-size:12.5px;color:var(--ink2);margin:0}
/* Architecture v4-like presentation: open canvas, thin rules, fixed node geometry */
.interactive-frame{box-shadow:none}.diagram-pane{background:var(--paper);overflow:auto}.diagram-pane svg{min-width:980px}.node text{pointer-events:none}.node .n-title{font-size:12px}.node .n-meta{font-size:8px}.edge{stroke-linejoin:round;stroke-linecap:square;pointer-events:none}.detail-pane{min-width:0}.detail-pane p{overflow-wrap:anywhere}
.pt-canvas{min-height:480px}.pt-node{width:190px;min-height:94px;display:flex;flex-direction:column;justify-content:flex-start;overflow-wrap:anywhere}.pt-node b{font-size:13px;line-height:1.28}.pt-node small{font-size:10.5px;line-height:1.25}.pt-line{z-index:0}.pt-node{z-index:2}
@media(max-width:1100px){.career-architecture{grid-template-columns:repeat(2,minmax(0,1fr))}.career-lines{display:none}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.career-architecture,.proof-grid{grid-template-columns:1fr}.career-node{min-height:0}.diagram-pane{overflow-x:auto}.diagram-pane svg{height:590px;min-width:980px}.pt-canvas{overflow:auto;min-width:720px}.lab-map>div:last-child{overflow-x:auto}}

.pt-flow-svg{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.pt-edge{fill:none;stroke-width:2;vector-effect:non-scaling-stroke;marker-end:url(#ptA);opacity:.68}.pt-edge.mandate{stroke:var(--amber)}.pt-edge.assurance{stroke:var(--violet)}.pt-edge.evidence{stroke:var(--green)}.pt-edge.portable{stroke:var(--muted);stroke-dasharray:6 6}.pt-edge.trace{opacity:1;stroke-width:3;animation:traceEdge .46s ease-in-out}


/* v5 governance, resilience, flow-integrity and navigation refinements */
html{scroll-behavior:smooth}.page.active{animation:pageIn .18s ease-out}@keyframes pageIn{from{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:none}}
.nav-toggle{display:none;margin-left:auto;background:#fff;border:1px solid var(--line);border-radius:6px;padding:9px 12px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2)}
.text-link{font-family:var(--mono);font-size:11px;letter-spacing:.03em;color:var(--violetInk);text-decoration:underline;text-underline-offset:3px}
.resilience-callout{margin-top:30px;border:2px solid var(--violet);background:linear-gradient(90deg,var(--violetWash),#fff 58%);border-radius:12px;padding:24px;display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.45fr);gap:28px}.resilience-callout h3{font-family:var(--display);font-size:26px;line-height:1.08;margin:6px 0}.resilience-copy p{margin:0 0 12px;color:var(--ink2)}
.governance-strip{margin:20px 0 24px;border:1px solid var(--line);border-left:4px solid var(--violet);background:#fff;border-radius:8px;padding:14px 16px;display:grid;grid-template-columns:190px 1fr;gap:18px;align-items:start}.governance-strip b{font-family:var(--display);font-size:15px}.governance-strip span{font-size:13.5px;line-height:1.3175;color:var(--ink2)}
.resilience-mini{margin-top:20px;border:1px solid var(--line);border-radius:10px;background:var(--violetWash);padding:18px}.resilience-mini p{margin:6px 0 9px;color:var(--ink2)}
.diagram-pane svg{min-width:1200px;height:820px}.node .n-title{font-size:12px;font-weight:600}.node .n-meta{font-size:8.4px;letter-spacing:.06em}.edge-label{font-family:var(--mono);font-size:8px;fill:var(--muted);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round}.telemetry-bus{fill:#fff;stroke:var(--green);stroke-width:1.5}.bus-title{font-family:var(--mono);font-size:9px;font-weight:600;fill:var(--green)}.bus-sub{font-size:9px;fill:var(--ink2)}
.detail-pane h4{font-family:var(--display);font-size:14px;margin:14px 0 5px}.detail-pane .governance{border-left:3px solid var(--violet);padding-left:12px;margin-top:14px}.detail-pane .compliance{border-left:3px solid var(--amber);padding-left:12px;margin-top:14px}
.sw.gov{background:var(--violetInk)}
.pt-canvas{min-width:1000px;min-height:680px}.pt-node{width:210px;height:140px;min-height:140px;padding:13px;overflow:hidden}.pt-node.governance{border-left:4px solid var(--violetInk)}.pt-node b{font-size:13.5px;line-height:1.24}.pt-node small{font-size:10.6px;line-height:1.24;margin-top:5px}.pt-edge.governance{stroke:var(--violetInk)}.pt-flow-label{font-family:var(--mono);font-size:10px;fill:var(--muted);paint-order:stroke;stroke:var(--paper);stroke-width:5px;stroke-linejoin:round}
.lab-definition{min-height:250px;padding:20px}.lab-definition h3{font-size:21px}.lab-definition p{font-size:13.8px;line-height:1.3175}.explainer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.explainer-box{border:1px solid var(--line2);border-radius:7px;background:var(--paper);padding:12px}.explainer-box b{display:block;font-family:var(--display);font-size:13px;margin-bottom:5px}.explainer-box span{display:block;font-size:12.5px;line-height:1.2325;color:var(--ink2)}.reg-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.reg-tags a,.ri-tags span{font-family:var(--mono);font-size:9.5px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 9px;color:var(--ink2)}
.reg-landscape{margin-top:38px;padding-top:28px;border-top:1px solid var(--line)}.reg-filters{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.reg-filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.reg-filter.on,.reg-filter:hover,.reg-filter:focus{background:var(--violetWash);border-color:var(--violet);color:var(--violetInk)}.reg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reg-card{border:1px solid var(--line);background:#fff;border-radius:9px;padding:15px;min-height:168px}.reg-card .rk{font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--violetInk)}.reg-card h3{font-family:var(--display);font-size:16px;line-height:1.2;margin:7px 0}.reg-card p{font-size:12.5px;line-height:1.2325;color:var(--ink2);margin:0 0 10px}.reg-card a{font-family:var(--mono);font-size:9.5px;color:var(--violetInk);text-decoration:underline}.source-note{font-size:11.5px;color:var(--muted);margin-top:14px}
.resilience-page>h1{font-family:var(--display);font-size:clamp(38px,5.2vw,64px);line-height:1.02;max-width:900px;margin:10px 0 18px}.resilience-page>.lead{max-width:920px}.ri-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:28px 0}.ri-grid article{border:1px solid var(--line);border-radius:10px;background:#fff;padding:20px}.ri-grid article span{font-family:var(--mono);font-size:9px;color:var(--violetInk);letter-spacing:.09em}.ri-grid h3{font-family:var(--display);font-size:20px;margin:7px 0}.ri-grid p{margin:0;color:var(--ink2);font-size:13.5px}.ri-policy{border:2px solid var(--violet);border-radius:12px;background:var(--violetWash);padding:22px;margin:24px 0}.ri-policy h2{font-family:var(--display);font-size:24px;margin:0 0 8px}.ri-policy p{color:var(--ink2)}.ri-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
@media(max-width:980px){.resilience-callout,.governance-strip{grid-template-columns:1fr}.reg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explainer-grid{grid-template-columns:1fr}}
@media(max-width:760px){.nav-toggle{display:block}.navlinks{display:none;position:absolute;top:63px;left:16px;right:16px;z-index:30;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;box-shadow:0 10px 30px rgba(17,17,17,.08)}.navlinks.open{display:grid}.navlinks a{font-size:10px;padding:11px}.navbar{position:relative;align-items:center}.reg-grid,.ri-grid{grid-template-columns:1fr}.pt-canvas{min-width:1000px}.resilience-callout{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page.active{animation:none}}

.marker-assurance{fill:#8364FF}.marker-evidence{fill:#1F7A52}.marker-mandate{fill:#B8730F}.marker-portable{fill:#5E5A73}.marker-governance{fill:#5B3FD6}
.node.sel rect{stroke:#8364FF;stroke-width:2;fill:#EFEBFF}.evidence-edge{opacity:.35;stroke-dasharray:4 5}.primary-edge{opacity:.78}
.pt-edge.mandate{marker-end:url(#pt-mandate)}
.pt-edge.governance{marker-end:url(#pt-governance)}
.pt-edge.assurance{marker-end:url(#pt-assurance)}
.pt-edge.evidence{marker-end:url(#pt-evidence)}
.pt-edge.portable{marker-end:url(#pt-portable)}

/* v6 layout QA refinements: spacing, overflow, alignment, social profile */
:root{--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--space-5:32px}
img,svg{max-width:100%}
.card,.tile,.right-card,.form-card,.lab-card,.reg-card,.topic,.forum-cat,.explainer-box,.career-node,.proof-grid article{min-width:0;overflow-wrap:anywhere}
.assurance-grid,.privacy-rights,.lab-index,.reg-grid,.proof-grid{align-items:stretch}
.assurance-grid>.card,.privacy-rights>.right-card,.lab-index>.lab-card,.reg-grid>.reg-card,.proof-grid>article{height:100%}
.tile-grid{align-items:stretch}.tile{height:100%;display:flex;flex-direction:column;gap:2px}.tile p{overflow-wrap:anywhere;hyphens:auto}
.stage-content{min-width:0}.stage-content>*{min-width:0}.stage-frame{overflow:visible}
.signal,.detail-pane,.lab-definition{overflow-wrap:anywhere}
.actions{align-items:stretch}.actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;line-height:1.25;text-align:center}
.profile-links{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}.linkedin-profile,.footer-linkedin,.linkedin-link{display:inline-flex;align-items:center;gap:7px;color:var(--violetInk);font-family:var(--mono);font-size:10.5px;letter-spacing:.03em}.linkedin-profile svg,.footer-linkedin svg,.linkedin-link svg{width:19px;height:19px;flex:0 0 19px;fill:currentColor}.linkedin-profile{padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:#fff}.linkedin-profile:hover,.linkedin-profile:focus-visible{border-color:var(--violet);background:var(--violetWash)}
.linkedin-link{padding:9px 10px!important;text-transform:none!important;letter-spacing:.02em!important}.linkedin-link:hover{background:var(--violetWash)!important;color:var(--violetInk)!important}
.footer-linkedin{margin-top:10px;width:max-content}.footer-linkedin:hover{text-decoration:underline;text-underline-offset:3px}
/* Interactive canvases deliberately scroll instead of shrinking labels below legibility. */
.diagram-pane{overflow:auto;max-height:min(860px,78vh);scrollbar-gutter:stable both-edges;padding:20px}.diagram-pane svg{display:block;min-width:1200px;height:820px;margin:0 auto}
.lab-map>div:last-child{min-width:0;overflow:auto;scrollbar-gutter:stable}.pt-canvas{overflow:auto;scrollbar-gutter:stable both-edges;min-width:1000px;min-height:720px}
.pt-node{width:210px;height:156px;min-height:156px;padding:14px;overflow:hidden}.pt-node b{font-size:13.5px;line-height:1.25;margin-top:5px}.pt-node small{font-size:10.6px;line-height:1.32;margin-top:7px;display:block}
.lab-definition{padding:22px;min-height:0}.explainer-box{padding:14px;min-height:118px}.explainer-box span{line-height:1.292}
.detail-pane{padding:26px;overflow:auto;max-height:min(860px,78vh);scrollbar-gutter:stable}.detail-pane h3,.detail-pane h4{line-height:1.25}
/* Visible scrollbar affordance on architecture canvases. */
.diagram-pane,.detail-pane,.lab-map>div:last-child,.pt-canvas{scrollbar-width:auto;scrollbar-color:#B8B1D6 #ECE9F6}
.diagram-pane::-webkit-scrollbar,.detail-pane::-webkit-scrollbar,.lab-map>div:last-child::-webkit-scrollbar,.pt-canvas::-webkit-scrollbar{width:12px;height:12px}
.diagram-pane::-webkit-scrollbar-track,.detail-pane::-webkit-scrollbar-track,.lab-map>div:last-child::-webkit-scrollbar-track,.pt-canvas::-webkit-scrollbar-track{background:var(--line2)}
.diagram-pane::-webkit-scrollbar-thumb,.detail-pane::-webkit-scrollbar-thumb,.lab-map>div:last-child::-webkit-scrollbar-thumb,.pt-canvas::-webkit-scrollbar-thumb{background:#B8B1D6;border:3px solid var(--line2);border-radius:999px}
/* Stable card rhythm and paragraph spacing. */
.card h3,.lab-card h3,.reg-card h3,.career-node h3,.right-card h3{overflow-wrap:anywhere}.card p,.lab-card p,.reg-card p,.career-node p,.right-card p{line-height:1.292}
.personal-note,.problem,.resilience-callout,.governance-strip,.resilience-mini,.ri-policy{overflow-wrap:anywhere}
.foot>div{min-width:260px}.foot nav{align-content:flex-start;justify-content:flex-end;max-width:720px}
@media(max-width:980px){.detail-pane{max-height:none}.diagram-pane{max-height:72vh}.pt-node{height:156px}.explainer-box{min-height:0}}
@media(max-width:760px){.linkedin-link{justify-content:flex-start!important}.linkedin-link span{display:inline}.profile-links{margin-top:12px}.diagram-pane{max-height:68vh;padding:12px}.detail-pane{padding:20px}.pt-canvas{min-height:720px}.foot nav{justify-content:flex-start}}
@media(max-width:520px){.wrap{width:min(var(--max),calc(100% - 24px))}.hero h1{font-size:clamp(36px,12vw,52px)}.section{padding:54px 0}.hero{padding:48px 0 44px}.card,.form-card,.problem,.resilience-callout{padding:18px}.stage-frame{padding:14px}.stage-content h2{font-size:28px}.profile-links{width:100%}.linkedin-profile{max-width:100%}.linkedin-profile span{overflow-wrap:anywhere}.foot{display:grid}.foot>div{min-width:0}}
.linkedin-link span{display:none}.linkedin-link{padding:9px!important;min-width:38px;justify-content:center}
@media(max-width:760px){.linkedin-link{justify-content:flex-start!important;padding:11px!important}.linkedin-link span{display:inline}}
