/* STRAXIS ONE / V30: proof-led website redesign. Isolated preview. */
:root { --so-red:#851f2d; --so-paper:#f8f8f8; --so-ink:#151a20; --so-edge:#e4e5e8; }
.wideInner {max-width:1480px}
.sectionTopline {display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:33px}
.sectionTopline h2 {max-width:990px;font-size:clamp(40px,4.4vw,69px);line-height:1.035;letter-spacing:-.067em;margin:15px 0 15px}
.sectionTopline .sectionIntro {max-width:710px;font-size:16px;line-height:1.64;margin:0}
.microProof,.monoTag {font:730 10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.07em;color:#827b80;white-space:nowrap}
.microProof {padding:11px 13px;border:1px solid #e2dadc;border-radius:7px;background:#fff;margin-bottom:5px}
.workflowSection {background:linear-gradient(180deg,#fff 0%,#f8f8f8 100%);padding-top:88px;padding-bottom:83px}
.workflowApp {border:1px solid #dcdedf;background:#fff;box-shadow:0 20px 70px #2327300b;border-radius:15px;overflow:hidden}
.workflowRail {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid #e2e4e6;background:#f8f9fa}
.workflowTab {position:relative;padding:22px 21px 20px;text-align:left;background:transparent;border:0;border-right:1px solid #e6e7e9;color:#7a8188;display:grid;gap:6px;align-content:start;min-height:126px;transition:background .16s,color .16s}
.workflowTab:last-child{border-right:0}
.workflowTab small{font:730 10px ui-monospace,monospace;color:#a4aab0}
.workflowTab b{font-size:16px;letter-spacing:-.035em;color:#535b63}
.workflowTab span{font-size:11px;color:#929aa1}
.workflowTab.is-active{background:#fff;color:#771f30}
.workflowTab.is-active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background:#8f2437}
.workflowTab.is-active small,.workflowTab.is-active b{color:#852638}
.workflowTab:hover{background:#fff}
.workflowBody{display:grid;grid-template-columns:1.17fr 1fr;min-height:414px}
.workflowStage{display:flex;flex-direction:column;padding:38px 43px 26px;min-width:0}
.workflowStage h3{font-size:clamp(29px,3vw,46px);letter-spacing:-.06em;line-height:1.1;margin:22px 0 17px;color:#1d252a}
.workflowStage>p{font-size:16px;line-height:1.7;color:#66717b;max-width:650px;min-height:60px;margin:0}
.workflowRoute{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:40px 0;min-height:50px}
.wfNode{border:1px solid #d9dde1;border-radius:7px;padding:11px 13px;background:#fafbfb;color:#59636d;font:730 12px ui-monospace,monospace}
.wfNode.focused{border-color:#b36472;background:#f7edf0;color:#822436;box-shadow:0 5px 17px #782b3610}
.wfConnector{color:#a0a9b1;font:700 15px ui-monospace,monospace}
.workflowStageFoot{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #e5e7ea;margin-top:auto;padding-top:22px;font:700 11px ui-monospace,monospace;color:#8b9399}
.signalDot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#20815e;margin-right:8px;vertical-align:middle}
.textBtn{border:0;background:transparent;color:#852537;font-weight:750;font-size:12px;padding:7px 0}
.textBtn:hover{text-decoration:underline}
.workflowArtifact{background:#191e24;color:#fff;display:flex;flex-direction:column;min-width:0}
.artifactTop{display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid #384149;padding:17px 24px;font:700 10px ui-monospace,monospace;letter-spacing:.055em;color:#a8b4be}
.artifactTop span:last-child{color:#798692}
.artifactContent{padding:37px 36px 30px;flex:1;display:flex;flex-direction:column}
.artifactLabel{font:710 12px ui-monospace,monospace;color:#db9ca8;letter-spacing:.015em;margin-bottom:32px}
.artifactContent pre{white-space:pre-wrap;word-break:break-word;font:600 clamp(13px,1.2vw,17px)/2 ui-monospace,SFMono-Regular,Consolas,monospace;color:#e5ecef;margin:0}
.artifactBottom{border-top:1px solid #354049;padding:15px 24px;color:#9babb3;font:650 11px ui-monospace,monospace}
.workflowDisclaimer{font-size:12px;color:#79838d;line-height:1.65;margin:15px 4px 0}
.proofsection{padding:95px 34px 107px;background:#f3f1f2}
.proofWrap{grid-template-columns:minmax(0,1.92fr) minmax(320px,.83fr);gap:16px;align-items:stretch}
.graphWorkspace{padding:0;overflow:hidden;background:#fff}
.graphWorkspace .proofHeader{padding:23px 26px;display:flex;align-items:center;min-height:86px;margin:0}
.proofHeader strong{font-size:17px;letter-spacing:-.035em}
.tinyContext{font-size:11px;color:#89939d;margin-top:6px}
.proofHeader .liveState{font:730 10px ui-monospace,monospace;white-space:nowrap;border:1px solid #d8e5df;background:#f7fbf9;color:#24674f;padding:10px;border-radius:6px}
.proofVisual{background:radial-gradient(circle at 1px 1px,#d8dde1 .85px,transparent 1.1px) 0 0 / 21px 21px,linear-gradient(145deg,#fcfcfd,#f5f6f7);padding:28px 22px;min-height:515px;display:flex;align-items:center;justify-content:center}
.proofVisual svg{max-width:100%;width:100%;height:auto;display:block;overflow:visible;filter:drop-shadow(0 9px 14px #14243e09)}
.graphNode{cursor:pointer}
.graphNode rect{rx:9;fill:#fff;stroke:#b8bec5;stroke-width:1.7}
.graphNode text{font:750 12px Inter,Arial,sans-serif}
.graphNode.impact rect{fill:#fbf1f3;stroke:#b87582;stroke-width:1.7}
.graphNode.current rect{fill:#852638;stroke:#852638;stroke-width:2.5}
.graphNode.current text{fill:#fff}
.graphNode.current:focus rect{stroke:#3d4550}
.edgeLine{stroke:#9faab3;stroke-width:1.9;fill:none;transition:stroke .15s;pointer-events:none}
.edgeLine.activeTrace{stroke:#922b3d;stroke-width:2.8}
.edgeLine.broken{stroke:#df3455;stroke-width:3;stroke-dasharray:5 5}
.graphLegend{display:flex;flex-wrap:wrap;gap:12px 20px;padding:12px 26px;color:#8a939b;font:670 10px ui-monospace,monospace;border-top:1px solid #eaedef;border-bottom:1px solid #eaedef}
.graphLegend span{display:flex;align-items:center;gap:7px}
.legendSelected,.legendBroken{display:inline-block;width:19px;height:3px;background:#932a3e}
.legendBroken{background:#e33f57}
.proofButtons{padding:19px 24px 0;display:flex;flex-wrap:wrap;gap:9px}
.proofButtons button{padding:12px 14px;min-height:43px;font:700 12px Inter,'Segoe UI',sans-serif;border-radius:6px;background:#fff}
.proofButtons .checkPrimary{background:#842637;color:white;border-color:#842637}
.proofButtons .checkPrimary:hover{background:#6f1e2e;color:white}
.checkOutput{margin:17px 24px 23px;min-height:97px;padding:14px 18px;font-size:11.5px;line-height:1.65}
.proofDetails{padding:29px 30px;display:flex;flex-direction:column;min-width:0}
.detailHeader{display:flex;align-items:center;justify-content:space-between;gap:9px}
.proofDetails h3{font-size:clamp(25px,2vw,32px);line-height:1.15;letter-spacing:-.055em;margin:20px 0 12px}
.proofDetails p{font-size:14px;line-height:1.67;color:#66717b}
.detailSubheading{font:730 10px ui-monospace,Consolas,monospace;letter-spacing:.095em;color:#8c939b;margin:31px 0 9px}
.relationList{margin:0 0 22px;padding:0}
.relationList li{font-size:12px;flex-wrap:wrap;gap:6px;align-items:center}
.relationList li span{font-size:10px;text-align:right}
.detailDivider{margin:8px 0 20px;border-top:1px solid #e7e9eb}
.modelLevels{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.modelLevels span{font:690 10px/1.5 ui-monospace,monospace;padding:10px 9px;border:1px solid #ebe5e7;background:#fbf9fa;color:#616b72;border-radius:5px}
.proofDetails .disclosure{font-size:11px;line-height:1.55;margin:23px 0}
.proofDetails .btn{margin-top:auto;align-self:flex-start;white-space:normal;text-align:center}
.evidenceSection{padding:102px 34px 105px;background:#fff}
.proofMosaic{display:grid;grid-template-columns:1.17fr .83fr;gap:15px}
.proofMosaic article{border:1px solid #e3e3e4;border-radius:12px;overflow:hidden;background:#fff;min-width:0;box-shadow:0 13px 35px #32202507}
.proofShot{grid-column:1/2;grid-row:span 2;display:flex;flex-direction:column}
.evidenceTop{padding:17px 21px;border-bottom:1px solid #ebebec;display:flex;justify-content:space-between;gap:18px;font:730 10px ui-monospace,monospace;color:#616971;letter-spacing:.045em}
.evidenceTop span:last-child{color:#979ca3}
.shotWrap{background:#10151b;display:flex;align-items:center;justify-content:center;padding:21px;min-height:390px}
.shotWrap img{display:block;width:100%;height:auto;max-height:515px;object-fit:contain;box-shadow:0 17px 38px #0006;border:1px solid #404750}
.mosaicFooter{padding:24px 26px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;background:#fff;margin-top:auto}
.mosaicFooter strong{font-size:17px;letter-spacing:-.035em}
.mosaicFooter p{font-size:12px;line-height:1.6;max-width:560px;color:#717982;margin:8px 0 0}
.stateText{white-space:nowrap;font:710 9px ui-monospace,monospace;color:#24795b;background:#f0f8f4;border:1px solid #d3e7db;padding:7px;border-radius:5px}
.proofText,.proofTest{display:flex;flex-direction:column}
.contractViz{padding:24px 26px;background:#f5f7f8;flex:1}
.microTag{font:750 11px ui-monospace,monospace;color:#953448}
.contractViz>strong{display:block;font-size:clamp(19px,1.8vw,27px);letter-spacing:-.05em;max-width:390px;margin:16px 0 24px;line-height:1.2}
.contractLines{font:700 12px ui-monospace,monospace;border-top:1px solid #dce2e5}
.contractLines div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #dce2e5}
.contractLines span{color:#9a4a5b}
.contractLines b{font-weight:600;color:#58656d;text-align:right}
.testViz{background:#191f26;color:#dce5e9;flex:1}
.terminalTitle{display:flex;align-items:center;gap:5px;padding:13px 21px;border-bottom:1px solid #2d353e}
.terminalTitle i{display:block;width:8px;height:8px;border-radius:50%;background:#787f87}
.terminalTitle i:first-child{background:#bb6570}
.terminalTitle span{font:650 10px ui-monospace,monospace;color:#a4acb4;margin-left:9px}
.testViz pre{margin:0;padding:19px 24px;color:#ecedf0;white-space:pre-wrap;line-height:1.9;font:650 12px ui-monospace,monospace}
.testViz p{margin:0;padding:0 24px 22px;color:#a7b0b8;font-size:11px;line-height:1.45}
.maturity{margin-top:25px;border:1px solid #e1e3e5;background:#fafafa;border-radius:11px;overflow:hidden}
.maturityHeading{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px 27px;border-bottom:1px solid #e4e5e7}
.maturityHeading h3{font-size:24px;letter-spacing:-.05em;margin:10px 0 0}
.maturityHeading>p{font-size:12px;line-height:1.55;color:#737b84;max-width:400px}
.maturityRows>div{display:grid;grid-template-columns:minmax(170px,.9fr) minmax(250px,1.65fr) minmax(125px,.45fr);align-items:center;gap:20px;padding:16px 28px;border-bottom:1px solid #e8eaec}
.maturityRows>div:last-child{border-bottom:0}
.maturityRows b{font-size:13px}
.maturityRows span{font-size:12px;line-height:1.4;color:#78808a}
.maturityRows em{justify-self:end;font:740 10px ui-monospace,monospace;color:#286b55;font-style:normal;text-align:right}
.maturityRows em.pending{color:#925264}
.accessSection.accessCompact{padding:59px 34px 64px;background:linear-gradient(113deg,#171a21 0%,#241e25 54%,#471a2a 100%)}
.accessCompact .accessInner h2{font-size:clamp(33px,3.4vw,52px);max-width:700px;line-height:1.08}
.accessCompact .accessInner p{font-size:14px;max-width:630px;margin:13px 0 0}
.accessCompact .accessInner .btn{font-size:14px}
@media(max-width:1080px){
  .proofWrap{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr)}
  .proofVisual{min-height:400px}
  .proofMosaic{grid-template-columns:1fr 1fr}
  .proofShot{grid-column:1/-1;grid-row:auto}
  .proofText,.proofTest{min-height:380px}
  .mosaicFooter{flex-wrap:wrap}
  .sectionTopline{align-items:start}
}
@media(max-width:850px){
  .sectionTopline{display:block}
  .microProof{display:inline-block;margin-top:18px}
  .workflowRail{overflow-x:auto;display:flex}
  .workflowTab{flex:0 0 175px;min-height:110px;padding:17px}
  .workflowBody{grid-template-columns:1fr}
  .workflowStage{padding:30px}
  .workflowArtifact{min-height:315px}
  .proofWrap{grid-template-columns:1fr}
  .proofVisual{min-height:0;padding:25px}
  .proofDetails .btn{margin-top:16px}
  .accessCompact .accessInner{flex-direction:column;align-items:flex-start}
}
@media(max-width:650px){
  .sectionTopline h2{font-size:clamp(33px,8.3vw,43px)}
  .sectionTopline .sectionIntro{font-size:14px}
  .workflowSection,.proofsection,.evidenceSection{padding:60px 18px}
  .workflowTab{flex-basis:140px}
  .workflowTab b{font-size:13px}
  .workflowStage{padding:22px}
  .workflowStage h3{font-size:30px;margin:14px 0}
  .workflowStage>p{font-size:14px}
  .workflowRoute{gap:6px;margin:24px 0}
  .wfNode{padding:8px 9px;font-size:10px}
  .wfConnector{font-size:12px}
  .artifactContent{padding:24px 20px}
  .artifactContent pre{font-size:12px}
  .proofVisual{padding:20px 10px}
  .graphWorkspace .proofHeader{padding:19px 15px}
  .proofHeader strong{font-size:14px}
  .graphLegend{padding:11px 13px}
  .proofButtons{padding:13px;gap:7px}
  .proofButtons button{font-size:11px;padding:10px 12px}
  .checkOutput{margin:5px 13px 15px}
  .proofDetails{padding:24px 19px}
  .proofMosaic{grid-template-columns:1fr}
  .proofShot{grid-column:auto}
  .shotWrap{padding:10px;min-height:210px}
  .evidenceTop{font-size:9px}
  .proofText,.proofTest{min-height:0}
  .maturityHeading{display:block}
  .maturityRows>div{grid-template-columns:1fr;gap:6px}
  .maturityRows em{justify-self:start}
  .accessSection.accessCompact{padding:53px 20px}
  .graphWorkspace #traceSvg{display:none}
  .graphWorkspace .mobileNodeList{display:grid}
}
@media(prefers-reduced-motion:reduce){.workflowTab,.edgeLine{transition:none!important}}
