/* A material-state spine and a connected computational workflow. */
.platform-workflow{--platform-soft:#f0edf4;--platform-surface:#f5f5f7}
.platform-opening{padding-bottom:35px}
.platform-opening .catalog-lead{max-width:910px}
.platform-challenges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:54px}
.platform-challenges>div{border-top:1px solid var(--line);padding-top:21px}
.platform-challenges h2{font-size:18px;line-height:1.4;font-weight:500;margin:0 0 12px;letter-spacing:-.02em}
.platform-challenges p{font-size:14px;line-height:1.8;color:var(--muted);margin:0;max-width:340px}
.platform-opening .study-jumps{margin-top:42px}
.platform-section{padding:100px 0;scroll-margin-top:20px;border-bottom:1px solid var(--line)}
.platform-section-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:70px;align-items:end;margin-bottom:48px}
.platform-section-heading h2,.platform-pilot h2{font-size:clamp(32px,3.4vw,49px);line-height:1.16;letter-spacing:-.045em;font-weight:500;white-space:pre-line;margin:0}
.platform-section-heading>p,.platform-section-heading>div>p:not(.platform-step){font-size:16px;line-height:1.85;color:var(--muted);margin:0;max-width:610px}
.platform-step{font-size:12px;color:var(--violet-deep);margin:0 0 24px;line-height:1.6;display:inline-block;position:relative;padding-bottom:10px}
.platform-step::after{content:"";position:absolute;bottom:0;left:0;height:2px;width:100%;background:var(--violet);transform:scaleX(var(--stage-progress,0));transform-origin:left}
.platform-framework{background:var(--platform-soft)}
.platform-scale-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;scroll-margin-top:25px}
.platform-scale-strip>a{position:relative;display:flex;flex-direction:column;border-bottom:1px solid #d6cedf;padding:12px 8px 25px;min-width:0}
.platform-scale-strip>a:not(:last-child)::after{content:"→";position:absolute;right:-26px;top:110px;color:#9586a7;font-size:20px}
.platform-scale-strip img{display:block;width:100%;height:190px;object-fit:contain;margin:0 auto 22px;transition:transform .3s}
.platform-scale-strip>a:hover img,.platform-scale-strip>a:focus-visible img{transform:translateY(-4px)}
.platform-scale-strip h3{font-size:20px;letter-spacing:-.025em;font-weight:500;line-height:1.4;margin:0 0 12px}
.platform-scale-strip p{font-size:12px;line-height:1.75;color:var(--muted);margin:0}
.platform-note,.platform-scope{font-size:11px;line-height:1.8;color:var(--muted);max-width:1040px;margin:24px 0 0}
.platform-scope{border-left:2px solid #cbb8e6;padding-left:16px;margin-top:28px}
.platform-lifecycle{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.platform-lifecycle a{position:relative;display:flex;flex-direction:column;height:100%;padding:25px 0 18px;border-top:1px solid #b9aec8;gap:14px;min-height:140px}
.platform-lifecycle a:hover,.platform-lifecycle a:focus-visible{color:var(--violet-deep)}
.platform-lifecycle span{font-size:13px;color:var(--violet-deep)}
.platform-lifecycle strong{font-size:18px;line-height:1.4;font-weight:500;letter-spacing:-.02em}
.platform-lifecycle small{font-size:11px;line-height:1.75;color:var(--muted);margin-top:auto}
.platform-data-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:65px;align-items:center}
.platform-data-visual{background:var(--platform-surface);border:1px solid #e8e5ec;border-radius:24px;padding:36px;min-width:0}
.data-context{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:36px}
.data-context span{border:1px solid #d5cadd;border-radius:18px;font-size:11px;line-height:1.5;padding:8px 12px;color:#675377;background:#fff}
.data-solver-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.data-solver-lanes>div{position:relative;text-align:center;padding:23px 12px;background:#fff;border-radius:12px;display:flex;flex-direction:column;gap:13px;min-height:125px;border:1px solid #e5dfea}
.data-solver-lanes>div::after{content:"";position:absolute;top:100%;left:50%;height:25px;border-left:1px solid #b5a2ce}
.data-solver-lanes strong{font-size:16px;font-weight:500;line-height:1.4}.data-solver-lanes span{font-size:11px;line-height:1.65;color:var(--muted)}
.data-compute{position:relative;display:flex;align-items:center;gap:16px;margin-top:25px;border-block:1px solid #cdbfe0;padding:24px 4px;min-width:0}
.data-compute>svg{width:43px;height:43px;flex-shrink:0;color:var(--violet-deep)}
.data-compute strong{font-size:15px;line-height:1.5;font-weight:500;display:block}.data-compute span{font-size:11px;line-height:1.7;color:var(--muted);display:block;margin-top:7px}
.data-record{display:flex;gap:18px;align-items:center;justify-content:space-between;font-size:12px;line-height:1.7;color:#675377;padding-top:28px}
.data-record-pages{position:relative;width:54px;height:48px;flex-shrink:0}.data-record-pages i{position:absolute;inset:5px 7px;border-radius:4px;border:1px solid #a992c5;background:#e7ddf3;transform:translate(6px,-5px)}.data-record-pages i:nth-child(2){transform:translate(0,0)}.data-record-pages i:nth-child(3){transform:translate(-6px,5px);background:#fff}
.platform-data-copy h3,.platform-model-matching h3,.platform-validation-grid h3,.platform-use-paths h3,.platform-corrected-example h3{font-size:24px;letter-spacing:-.025em;font-weight:500;line-height:1.3;margin:0 0 20px}
.platform-data-copy p,.platform-model-matching p,.platform-validation-grid p,.platform-use-paths p,.platform-corrected-example p,.platform-integration>p{font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 22px}
.platform-workflow .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;line-height:1.7}
.platform-workflow .study-details>summary{min-height:44px;align-content:center;padding:5px 0;font-size:14px}
.platform-workflow .study-details>p{font-size:14px;line-height:1.85;color:var(--muted)}
.platform-learning{background:#f3f1f6}
.platform-training{border:1px solid #e0d9e8;background:#fff;border-radius:24px;overflow:hidden}
.training-modes{display:flex;flex-wrap:wrap;gap:8px;padding:22px 28px;border-bottom:1px solid #ebe5f0}
.training-modes button{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:24px;min-height:44px;padding:10px 22px;font-size:13px;line-height:1.5}
.training-modes button[aria-pressed=true]{background:#eee7f8;color:var(--violet-deep);border-color:#d6c7e9}
.training-modes button:hover{background:#f5f1fa}
.training-signal-map{padding:35px 40px 32px;display:grid;grid-template-columns:1fr 1.25fr 1.1fr;gap:40px;align-items:center}
.training-input{font-size:14px;line-height:1.8;color:var(--muted);text-align:center;border:1px solid var(--line);border-radius:12px;padding:20px;position:relative}
.training-input::after{content:"→";position:absolute;left:calc(100% + 12px);top:calc(50% - 12px);color:#a38bbd;font-size:18px}
.training-signals{display:flex;flex-direction:column;gap:12px;position:relative}
.training-signals::after{content:"→";position:absolute;left:calc(100% + 12px);top:calc(50% - 12px);color:#a38bbd;font-size:18px}
.training-signals>span{display:block;text-align:center;padding:15px 17px;border:1px solid #dacde9;background:#efe9f7;color:#69468e;border-radius:12px;font-size:13px;line-height:1.6;transition:opacity .2s,background .2s}
.training-signal-map[data-training-state=physics] [data-signal=data],.training-signal-map[data-training-state=data] [data-signal=physics]{opacity:.28;border-style:dashed;background:#faf9fc}
.training-model{display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center;color:var(--violet-deep);padding:12px}
.training-model svg{width:116px;height:75px}.training-model strong{font-size:15px;font-weight:500;line-height:1.6}
.training-detail{display:grid;grid-template-columns:1fr 1.4fr;gap:55px;background:#faf9fc;padding:32px 40px;border-top:1px solid #e9e3f0;min-height:240px}
.training-status{font-size:11px;color:var(--violet-deep);line-height:1.7;display:block;margin-bottom:14px}
.training-detail h3{font-size:25px;font-weight:500;line-height:1.3;letter-spacing:-.025em;margin:0}
.training-detail p{font-size:14px;line-height:1.85;color:var(--muted);margin:0 0 12px}
.platform-model-matching{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:50px}.platform-model-matching article{border-top:1px solid var(--line);padding-top:26px}
.platform-model-matching h3{font-size:23px}.platform-model-matching p{font-size:14px}
.platform-validation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-bottom:42px}
.platform-validation-grid>div{border-top:1px solid var(--line);padding-top:24px}.platform-validation-grid h3{font-size:20px}.platform-validation-grid p{font-size:14px;margin:0}
.platform-research-figure{margin:0;border-radius:20px;overflow:hidden;border:1px solid #e5e0e9;background:#fff}
.platform-research-figure>a{display:block;padding:30px}.platform-research-figure img{display:block;width:100%;height:auto;object-fit:contain}
.platform-research-figure figcaption{display:flex;align-items:start;justify-content:space-between;gap:35px;padding:22px 28px;background:#f5f5f7;font-size:12px;line-height:1.8;color:var(--muted)}.platform-research-figure figcaption>span{max-width:740px}.platform-research-figure figcaption>a{flex-shrink:0;max-width:210px}
.platform-use{background:#f0edf4}
.platform-use-paths{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-bottom:38px}.platform-use-paths article{border-top:1px solid #d2c8df;padding-top:24px}.use-path-tag{display:block;font-size:12px;line-height:1.6;color:var(--violet-deep);margin-bottom:18px}.platform-use-paths h3{font-size:25px}
.platform-solver-loop{padding:35px 40px 25px;background:#fff;border:1px solid #e0d8e9;border-radius:22px}
.solver-loop-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px}
.solver-loop-steps li{position:relative;display:flex;flex-direction:column;gap:12px}
.solver-loop-steps li:not(:last-child)::after{content:"→";position:absolute;right:-40px;top:17px;font-size:20px;color:#a48cbd}
.solver-loop-steps span{font-size:12px;line-height:1.7;color:var(--violet-deep)}.solver-loop-steps strong{font-size:18px;font-weight:500;line-height:1.5}
.solver-return{border-top:1px solid #e2d9ed;margin-top:26px;padding-top:18px;color:var(--muted);display:flex;gap:18px;font-size:12px;line-height:1.7}.solver-return>span:first-child{font-size:22px;color:var(--violet-deep)}
.platform-corrected-example{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:55px;align-items:center;margin-top:55px}
.platform-corrected-example .recording{margin:0;min-width:0}.platform-corrected-example .recording-image{aspect-ratio:auto;max-height:none;padding:12px}
.platform-feedback{margin-top:35px;padding-top:22px;border-top:1px solid #d3c7df;display:flex;align-items:center;gap:20px;color:var(--violet-deep)}.platform-feedback>span{font-size:30px}.platform-feedback p{font-size:14px;line-height:1.8;margin:0}
.platform-design-route{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:30px 0;border-block:1px solid var(--line);font-size:21px;line-height:1.5;letter-spacing:-.02em}.platform-design-route>span{flex:1}.platform-design-route>i{font-style:normal;color:#a48cbd;font-size:24px}
.platform-anchor{display:block;scroll-margin-top:210px}
.platform-integration{margin-top:35px}.platform-integration .drx-evidence{margin:28px 0 0}.platform-integration .evidence-heading h3{font-size:25px}
.platform-pilot{background:#29262f;color:#fff;padding:85px 0}
.platform-pilot-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:80px;align-items:center}
.platform-pilot h2{font-size:clamp(30px,3vw,43px)}.platform-pilot p{font-size:15px;color:#cbc3d4;line-height:1.85;max-width:680px;margin:25px 0 0}
.platform-pilot-actions{display:flex;flex-direction:column;align-items:start;gap:20px}.platform-pilot-actions .text-link{color:#d4bcf0}.platform-pilot-actions .copy-status{font-size:12px;line-height:1.8;min-height:42px;color:#d9d0e4}
@media(max-width:1100px){.platform-section{padding:85px 0}.platform-section-heading{gap:45px}.platform-scale-strip{gap:20px}.platform-scale-strip img{height:155px}.platform-scale-strip>a:not(:last-child)::after{right:-19px;top:90px}.platform-scale-strip h3{font-size:18px}.platform-data-layout{gap:35px;grid-template-columns:1.15fr 1fr}.platform-data-visual{padding:24px}.data-solver-lanes{gap:8px}.data-solver-lanes>div{padding:18px 8px}.data-solver-lanes strong{font-size:14px}.training-signal-map{gap:30px;padding:30px}.training-input::after,.training-signals::after{left:calc(100% + 8px)}.training-input{padding:16px;font-size:13px}.training-detail{gap:35px;padding:30px}.platform-model-matching,.platform-use-paths{gap:40px}.platform-corrected-example{gap:35px}.platform-pilot-grid{gap:40px}}
@media(max-width:800px){.platform-section{padding:65px 0}.platform-challenges{gap:25px;margin-top:35px}.platform-challenges h2{font-size:16px}.platform-challenges p{font-size:12px}.platform-section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.platform-section-heading>p{max-width:680px}.platform-section-heading h2{font-size:38px}.platform-scale-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.platform-scale-strip img{height:175px}.platform-scale-strip>a:not(:last-child)::after{display:none}.platform-lifecycle{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:35px;gap:15px 30px}.platform-data-layout{grid-template-columns:1fr;gap:35px}.platform-data-visual{max-width:700px;width:100%;margin:auto}.data-solver-lanes>div{padding:23px 12px}.data-solver-lanes strong{font-size:17px}.training-detail{grid-template-columns:1fr;gap:20px;min-height:265px}.training-detail p{font-size:15px}.training-detail h3{font-size:27px}.platform-model-matching{gap:30px}.platform-validation-grid{gap:25px}.platform-validation-grid h3{font-size:18px}.platform-validation-grid p{font-size:12px}.platform-research-figure figcaption{display:block}.platform-research-figure figcaption>a{margin-top:12px;max-width:none}.platform-use-paths{gap:30px}.platform-use-paths h3{font-size:23px}.platform-solver-loop{padding:28px}.solver-loop-steps{gap:38px}.solver-loop-steps li:not(:last-child)::after{right:-28px}.platform-corrected-example{grid-template-columns:1fr;gap:25px}.platform-pilot-grid{grid-template-columns:1fr;gap:35px}.platform-pilot{padding:65px 0}.platform-design-route{font-size:18px;gap:18px}}
@media(max-width:520px){.platform-opening .catalog-lead{font-size:16px;line-height:1.8}.platform-challenges{grid-template-columns:1fr;gap:20px}.platform-challenges>div{padding-top:18px}.platform-challenges p{font-size:13px;max-width:none}.platform-challenges h2{font-size:18px;margin-bottom:7px}.platform-section-heading h2{font-size:32px}.platform-section-heading>p{font-size:15px}.platform-step{margin-bottom:20px}.platform-scale-strip{gap:18px}.platform-scale-strip img{height:135px;margin-bottom:15px}.platform-scale-strip h3{font-size:17px}.platform-scale-strip p{font-size:11px}.platform-lifecycle{gap:15px 20px}.platform-lifecycle strong{font-size:17px}.platform-lifecycle small{font-size:10px}.platform-data-visual{padding:22px 18px;border-radius:18px}.data-context{gap:6px;margin-bottom:25px}.data-context span{font-size:10px;padding:7px 9px}.data-solver-lanes{grid-template-columns:1fr;gap:10px}.data-solver-lanes>div{min-height:0;display:grid;grid-template-columns:1fr 1.4fr;text-align:left;align-items:center;padding:16px;gap:16px}.data-solver-lanes>div::after{display:none}.data-solver-lanes strong{font-size:14px}.data-solver-lanes span{font-size:11px}.data-compute strong{font-size:14px}.data-compute>svg{width:38px;height:38px}.platform-training{border-radius:18px}.training-modes{padding:16px;gap:6px}.training-modes button{font-size:12px;padding:9px 13px}.training-signal-map{grid-template-columns:1fr;gap:25px;padding:25px}.training-input{font-size:12px}.training-input::after,.training-signals::after{content:"↓";left:calc(50% - 6px);top:calc(100% + 3px);font-size:16px}.training-signals{flex-direction:row;align-items:stretch;gap:10px}.training-signals>span{font-size:11px;padding:13px 10px;flex:1}.training-model{flex-direction:row;text-align:left;gap:16px;padding:10px}.training-model svg{width:85px;flex-shrink:0;height:60px}.training-model strong{font-size:13px}.training-detail{padding:24px;min-height:340px}.training-detail h3{font-size:24px}.training-detail p{font-size:14px}.platform-model-matching,.platform-use-paths{grid-template-columns:1fr;gap:28px}.platform-model-matching h3{font-size:22px}.platform-validation-grid{grid-template-columns:1fr;gap:23px}.platform-validation-grid h3{font-size:20px;margin-bottom:12px}.platform-validation-grid p{font-size:14px}.platform-research-figure>a{padding:14px}.platform-research-figure figcaption{padding:18px;font-size:11px}.platform-solver-loop{padding:25px}.solver-loop-steps{grid-template-columns:1fr;gap:30px}.solver-loop-steps li:not(:last-child)::after{content:"↓";top:calc(100% + 1px);left:0;right:auto;font-size:18px}.solver-loop-steps strong{font-size:18px}.solver-return{font-size:11px;gap:12px}.platform-design-route{flex-direction:column;align-items:start;font-size:20px;gap:16px}.platform-design-route>i{transform:rotate(90deg);font-size:20px}.platform-pilot h2{font-size:30px}.platform-note,.platform-scope{font-size:10px}}
@media(prefers-reduced-motion:reduce){.platform-scale-strip img,.training-signals>span{transition:none}.platform-scale-strip>a:hover img{transform:none}}
