/* EON Research Motion. All production rules are scoped to .erm. */
.erm{--ink:#1c3042;--muted:#607181;--line:#dce3e8;--paper:#f3f6f8;--blue:#456880;font-family:'IBM Plex Sans',Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
.erm *{box-sizing:border-box}.erm button,.erm a{-webkit-tap-highlight-color:transparent}.erm button{font:inherit;color:inherit;cursor:pointer}.erm button:focus-visible,.erm a:focus-visible,.erm canvas:focus-visible{outline:2px solid #527a93;outline-offset:5px}.erm svg{display:block}.erm h2,.erm h3,.erm p{margin:0}.erm a{color:inherit}.erm button svg,.erm-text-link svg{width:20px;height:20px;flex:none}
.erm-section{max-width:1240px;margin:auto;padding:90px 48px;scroll-margin-top:90px}.erm-heading{margin-bottom:45px}.erm-eyebrow,.erm-panel-eyebrow,.erm-stage-top,.erm-stage-bottom,.erm-snapshot-head,.erm-formula-label,.erm-observation-top,.erm-drag-hint,.erm-footer>span{font:10px/1.5 'IBM Plex Mono',monospace;letter-spacing:1.5px;font-weight:400}.erm-eyebrow{display:flex;align-items:center;gap:14px;text-transform:uppercase;color:#5c7487;margin-bottom:23px!important}.erm-eyebrow>span{color:#8fa0af;border-right:1px solid #c8d3dc;padding-right:14px}.erm h2{font-size:clamp(36px,4.1vw,54px);line-height:1.08;letter-spacing:-2px;font-weight:450}.erm h2 em{font-style:normal;color:#8094a5}.erm-intro{max-width:525px;margin-top:21px!important;color:var(--muted);font-size:15px;line-height:1.7}.erm-path-layout{display:grid;grid-template-columns:1.32fr 1fr;gap:54px;align-items:center}.erm-stage{border:1px solid #e0e7ec;border-radius:24px;background:radial-gradient(ellipse at 45% 40%,#fff 4%,#f6f9fb 46%,#eaf0f5 100%);box-shadow:0 25px 50px -36px #3d53644a,inset 0 1px #fff;overflow:hidden;position:relative;isolation:isolate}.erm-stage-top{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#7c8e9c;padding:23px 25px;font-size:8px;letter-spacing:1px}.erm-stage-top>span:first-child{display:flex;align-items:center;gap:8px}.erm-status-dot{width:5px;height:5px;border-radius:50%;background:#6a9b91;box-shadow:0 0 0 4px #e3eeeb}.erm-orbit-scene{position:relative;aspect-ratio:600/480;min-width:0}.erm-orbit-ring{position:absolute;left:50%;top:50%;border:1px solid #b3c5d23a;width:72%;height:85%;border-radius:50%;transform:translate(-50%,-50%) rotate(-24deg);pointer-events:none}.erm-orbit-ring--two{width:86%;height:53%;transform:translate(-50%,-50%) rotate(30deg);border-style:dashed;opacity:.65}.erm-path-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.erm-route{fill:none;stroke:#c7d5df;stroke-width:1.3;transition:stroke .7s}.erm-route.is-active{stroke:var(--route);opacity:.7}.erm-signal{fill:none;stroke:var(--route);stroke-width:3;stroke-dasharray:1 99;stroke-linecap:round;opacity:0;animation:erm-travel 3.3s linear infinite;animation-delay:var(--delay)}.erm-signal.is-active{opacity:1}@keyframes erm-travel{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
.erm-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:33%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 22%,#ffffff 15%,#f9fbfddf 50%,#dbe6ed9e 100%);border:1px solid #fff;box-shadow:inset -5px -8px 16px #b6c8d933,inset 5px 6px 12px #fff,0 14px 34px #465f751c,0 0 0 7px #ffffff50;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 8px 20%;padding-bottom:13%;text-align:center;pointer-events:none}.erm-core canvas{position:absolute;top:6%;left:7%;width:86%;height:55%}.erm-core>span{position:absolute;top:61%;left:5%;width:90%;font-size:clamp(11px,1.6vw,20px);font-weight:500;letter-spacing:-.5px;line-height:1.1;overflow-wrap:anywhere}.erm-core small{position:absolute;top:79%;font:5.4px 'IBM Plex Mono',monospace;letter-spacing:.8px;left:0;width:100%;color:#8d9dac}
.erm-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:0;background:none;display:flex;align-items:center;flex-direction:column;padding:0;width:31%;z-index:2}.erm-node__sphere{width:63px;height:63px;border-radius:50%;position:relative;display:grid;place-items:center;color:white;background:radial-gradient(circle at 32% 23%,color-mix(in srgb,var(--node),white 66%) 0%,var(--node) 58%,color-mix(in srgb,var(--node),#233444 30%) 100%);box-shadow:inset 0 2px 3px #ffffff7a,inset -4px -4px 10px #21374624,0 12px 18px -10px #24415870,0 0 0 5px #fff7;transition:transform .7s cubic-bezier(.16,1,.3,1),box-shadow .7s}.erm-node__sphere:before{content:'';position:absolute;inset:-9px;border:1px solid var(--node);border-radius:50%;opacity:0;transform:scale(.9);transition:opacity .6s,transform .6s}.erm-node.is-active .erm-node__sphere:before{opacity:.3;transform:scale(1)}.erm-node.is-active .erm-node__sphere{transform:translateY(-4px);box-shadow:inset 0 2px 3px #ffffff7a,inset -4px -4px 10px #21374624,0 18px 26px -12px #24415865,0 0 0 6px #fff9}.erm-node__sphere svg{width:23px;height:23px;opacity:.95}.erm-node__label{display:block;margin-top:15px;font-size:11px;line-height:1.35;max-width:100%;letter-spacing:.05px;color:#42596c;font-weight:500;text-shadow:0 1px 4px #fff}.erm-stage-bottom{padding:16px 24px 22px;display:flex;align-items:center;justify-content:space-between;color:#6e8494;font-size:8px;letter-spacing:1px}.erm-icon-button{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid #ccd7df;border-radius:50%;background:#ffffff7d;transition:background .2s,transform .2s}.erm-icon-button:hover{background:#fff;transform:translateY(-2px)}.erm-icon-button svg{width:14px!important;height:14px!important}
.erm-panel-eyebrow{color:#7a8d9b;font-size:9px;margin-bottom:25px!important}.erm-path-card{border-top:1px solid var(--line);position:relative}.erm-path-card h3{font-weight:500;font-size:17px;line-height:1.4}.erm-path-card h3 button{width:100%;padding:22px 0;border:0;background:transparent;display:flex;gap:17px;align-items:center;text-align:left}.erm-path-index{font:10px 'IBM Plex Mono',monospace;color:#93a3af}.erm-path-card h3 button>span:nth-child(2){flex:1}.erm-path-card h3 button>svg{width:17px;color:#9caeb9;transition:transform .5s}.erm-path-card.is-active h3 button>svg{color:var(--node);transform:rotate(-35deg)}.erm-path-card.is-active .erm-path-index{color:var(--node)}.erm-path-detail{display:block;color:var(--muted);font-size:13px;line-height:1.7}.erm-enhanced .erm-path-detail{display:grid;grid-template-rows:0fr;opacity:.4;transition:grid-template-rows .65s cubic-bezier(.16,1,.3,1),opacity .45s}.erm-enhanced .is-active .erm-path-detail{grid-template-rows:1fr;opacity:1}.erm-path-detail>div{overflow:hidden;min-height:0}.erm-path-detail p{padding-left:33px}.erm-path-detail ul{padding:14px 0 24px 33px;margin:0;list-style:none;font-size:11px;line-height:1.65}.erm-path-detail li{padding:3px 0 3px 12px;position:relative}.erm-path-detail li:before{content:'';position:absolute;left:0;top:10px;width:3px;height:3px;background:var(--node);border-radius:50%}.erm-path-progress{position:absolute;bottom:-1px;left:0;right:0;height:1px;overflow:hidden}.erm-path-progress span{display:block;background:var(--node);width:100%;height:100%;transform:scaleX(0);transform-origin:left;opacity:.6}.erm-fineprint{font-size:10px;line-height:1.7;color:#7f8f9b;margin-top:24px!important;max-width:440px}
.erm-snapshot{max-width:1144px;margin:5px auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0 24px}.erm-snapshot-head{display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#7b8e9c;letter-spacing:1px}.erm-stat-grid{display:grid;grid-template-columns:repeat(var(--stat-count),1fr);margin:28px 0 12px}.erm-stat{padding:0 30px;border-left:1px solid var(--line)}.erm-stat:first-child{padding-left:0;border-left:0}.erm-stat-number{font-size:45px;line-height:1.2;letter-spacing:-2px;font-weight:400;font-variant-numeric:tabular-nums}.erm-stat h3{font-size:12px;font-weight:500;margin:12px 0 5px}.erm-stat p{font-size:11px;color:var(--muted);line-height:1.6;max-width:230px}.erm-stat-note{font-size:9px;color:#8a98a4;padding-top:12px}.erm-research-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:80px;align-items:start}.erm-app{display:grid;grid-template-columns:42px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.erm-app-mark{color:var(--node);display:flex;align-items:center;flex-direction:column;gap:13px;padding-top:5px}.erm-app-mark svg{width:24px;height:24px}.erm-app-mark span{font:9px 'IBM Plex Mono',monospace;color:#96a7b4}.erm-app .erm-eyebrow{font-size:8px;margin-bottom:7px!important;color:var(--node);letter-spacing:1.5px}.erm-app h3{font-size:20px;font-weight:450;letter-spacing:-.5px;margin-bottom:9px}.erm-app p:not(.erm-eyebrow){font-size:13px;line-height:1.7;color:var(--muted)}.erm-app small{font-size:10px;color:var(--muted)}.erm-observation-card{padding:32px 32px 30px;background:linear-gradient(135deg,#f2f6f8,#ebf0f4);border:1px solid #e2e9ee;border-radius:20px;box-shadow:inset 0 1px #fff}.erm-observation-top{display:flex;gap:12px;align-items:center;color:#688498;font-size:8px;letter-spacing:1px;margin-bottom:29px}.erm-observation-top svg{width:20px;height:20px}.erm-observation-card>h3{font-size:27px;letter-spacing:-.8px;font-weight:450}.erm-observation-card>p:not(.erm-fineprint){font-size:12px;color:var(--muted);margin-top:10px;line-height:1.7}.erm-observation-list{margin-top:23px}.erm-observation-row{position:relative;padding:23px 0;display:flex;align-items:center;gap:20px;border-top:1px solid #d4dfe7}.erm-observation-row>span{flex:1;font-size:12px;color:#556c7d;max-width:180px}.erm-observation-row strong{font-size:29px;font-weight:400;letter-spacing:-1px;font-variant-numeric:tabular-nums}.erm-observation-row i{position:absolute;bottom:0;left:0;width:28px;height:1px;background:#a0b4c2;transform-origin:left}.erm-in .erm-observation-row i{animation:erm-line 1.2s both;animation-delay:var(--stagger)}@keyframes erm-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.erm-molecular{border-top:1px solid var(--line)}.erm-molecular-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center}.erm-molecular-stage{background:radial-gradient(ellipse at 40% 40%,#fff,#f2f6f9 80%);border:1px solid #e2e9ee;border-radius:22px;overflow:hidden}.erm-model-sculpture{position:relative;aspect-ratio:1.3;cursor:grab}.erm-model-sculpture:active{cursor:grabbing}.erm-model-sculpture canvas,.erm-model-fallback{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y}.erm-canvas-ready .erm-model-fallback{display:none}.erm-model-controls{padding:0 24px;display:flex;align-items:center;justify-content:space-between}.erm-drag-hint{font-size:8px;color:#8294a1;letter-spacing:1px}.erm-model-controls>div{display:flex;gap:8px}.erm-arrow-left{transform:rotate(180deg)}.erm-model-disclaimer{font-size:8px;color:#81939f;text-align:center;padding:21px 15px}.erm-formula{font-size:clamp(27px,3.4vw,42px);font-weight:400;line-height:1.4;letter-spacing:-1.5px;overflow-wrap:anywhere}.erm-formula sub{font-size:50%;letter-spacing:0}.erm-formula-label{font-size:8px;letter-spacing:1px;color:#8b9da9;margin-top:12px!important}.erm-molecule-data dl{margin:35px 0}.erm-molecule-data dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:12px}.erm-molecule-data dt{color:#7b8e9c}.erm-molecule-data dd{margin:0;text-align:right;max-width:58%;overflow-wrap:anywhere;font-weight:500}.erm-text-link{font-size:12px;display:inline-flex;align-items:center;gap:20px;text-decoration:none}.erm-text-link svg{width:16px}.erm-footer{max-width:1144px;border-top:1px solid var(--line);margin:auto;padding:32px 0 40px;display:flex;justify-content:space-between;align-items:center;gap:24px}.erm-footer>span{font-size:8px;color:#668092}.erm-footer p{font-size:10px;color:#8c9aa5}.erm-footer button{border:0;background:none;font-size:10px;color:#668092;text-decoration:underline;text-underline-offset:4px}
.erm-enhanced [data-reveal]{transition:transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--stagger,0ms);transform:translateY(14px)}.erm-enhanced [data-reveal].erm-in{transform:none}.erm-paused *{animation-play-state:paused!important}
@media(min-width:1600px){.erm-core>span{font-size:20px}}
@media(max-width:1000px){.erm-section{padding:65px 32px}.erm-path-layout{gap:32px;grid-template-columns:1.2fr 1fr}.erm-stage-top{padding:20px 17px;font-size:7px}.erm-stage-bottom{padding:15px 17px;font-size:7px}.erm-node__sphere{width:51px;height:51px}.erm-node__label{font-size:10px}.erm-path-card h3{font-size:15px}.erm-path-card h3 button{gap:12px}.erm-path-detail p{padding-left:26px}.erm-path-detail ul{padding-left:26px}.erm-snapshot,.erm-footer{margin-left:32px;margin-right:32px}.erm-research-layout{gap:40px}.erm-molecular-layout{gap:35px}.erm-stat-number{font-size:38px}.erm-stat{padding:0 20px}}
@media(max-width:720px){.erm-section{padding:52px 22px}.erm h2{font-size:39px;letter-spacing:-1.7px}.erm-heading{margin-bottom:30px}.erm-eyebrow{margin-bottom:20px!important}.erm-intro{font-size:14px}.erm-path-layout,.erm-research-layout,.erm-molecular-layout{grid-template-columns:1fr;gap:32px}.erm-stage{max-width:560px;width:100%;margin:auto;border-radius:20px}.erm-node__sphere{width:59px;height:59px}.erm-core>span{font-size:17px}.erm-core small{font-size:6px}.erm-stage-top{font-size:8px;padding:22px}.erm-stage-bottom{padding:13px 22px 20px;font-size:7px}.erm-node__label{font-size:11px}.erm-panel-eyebrow{margin-bottom:18px!important}.erm-path-card h3{font-size:17px}.erm-path-detail{font-size:13px}.erm-path-detail p{padding-left:29px}.erm-path-detail ul{padding-left:29px}.erm-fineprint{font-size:10px}.erm-snapshot{margin:5px 22px 0;padding:24px 0}.erm-snapshot-head>span:last-child{display:none}.erm-stat-grid{grid-template-columns:repeat(2,1fr);gap:28px 0}.erm-stat{padding:0 18px}.erm-stat:nth-child(odd){padding-left:0;border:0}.erm-stat-number{font-size:40px}.erm-stat p{max-width:175px}.erm-stat-grid>.erm-stat:last-child:nth-child(odd){grid-column:1/-1}.erm-observation-card{padding:28px}.erm-molecule-data{padding:6px 3px 0}.erm-molecular-layout{gap:34px}.erm-formula{font-size:39px}.erm-footer{margin:0 22px;padding:25px 0;flex-wrap:wrap;gap:12px}.erm-footer>span{flex-basis:100%}.erm-footer p{max-width:240px}.erm-observation-row strong{font-size:32px}}
@media(max-width:380px){.erm-section{padding-left:18px;padding-right:18px}.erm-stage-top{font-size:6px;padding:20px 15px}.erm-core>span{font-size:13px}.erm-core small{font-size:4.8px}.erm-node__sphere{width:46px;height:46px}.erm-node__label{font-size:9px}.erm-stage-bottom{font-size:6px;padding-left:15px;padding-right:15px}.erm h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){.erm *,.erm *:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.erm [data-reveal]{transform:none!important}}
.erm-enhanced [data-motion-surface]:not(.erm-surface-in) *{animation-play-state:paused!important}
.erm .erm-fineprint,.erm .erm-stat-note,.erm .erm-stage-top,.erm .erm-stage-bottom,.erm .erm-panel-eyebrow,.erm .erm-snapshot-head,.erm .erm-formula-label,.erm .erm-model-disclaimer,.erm .erm-drag-hint,.erm .erm-molecule-data dt,.erm .erm-footer p{color:#607586}
@media(max-width:720px){.erm-icon-button{width:44px;height:44px}.erm-stage-top{font-size:8px}.erm-core small{font-size:5.5px}}
.erm-core small{top:auto;bottom:9%}
@media(max-width:720px){.erm-core small{display:none}}
/* Orbit anchors are sphere centers; captions stay upright below each sphere. */
.erm-orbit-scene{aspect-ratio:600/560}
.erm-node{height:63px}
.erm-node__label{position:absolute;top:100%;left:0;width:100%;margin-top:8px}
@media(max-width:1000px){.erm-node{height:51px}}
@media(max-width:720px){.erm-node{height:59px}.erm-orbit-scene{aspect-ratio:1}}
@media(max-width:380px){.erm-node{height:46px}}
