/* NRV capability circuit */
.capabilities-tree{position:relative;width:100%;max-width:1080px;margin:26px auto 0;aspect-ratio:1000/720;isolation:isolate;background:radial-gradient(ellipse at 50% 88%,#ff7a1810,transparent 48%),radial-gradient(ellipse at 50% 38%,#8ba4bd08,transparent 65%)}
.capabilities-tree svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.tree-wire{fill:none;stroke:url(#nrv-steel);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px #8199af38);vector-effect:non-scaling-stroke}.tree-route,.tree-energy{fill:none;stroke:#ff7a18;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 7px #ff6a00b5)}.tree-route{opacity:0;transition:opacity .25s}.tree-route.active{opacity:1}.tree-energy{stroke:#ffe0c2;stroke-width:7;stroke-dasharray:90 910;stroke-dashoffset:1000;opacity:0}.tree-energy.running{opacity:1;animation:nrv-energy 1.1s cubic-bezier(.2,.65,.3,1) forwards}@keyframes nrv-energy{0%{stroke-dashoffset:1000;opacity:0}5%{opacity:1}88%{opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.tree-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:240px;height:104px;padding:15px 18px;display:grid;grid-template-columns:48px 1fr;grid-template-rows:1fr 1fr;column-gap:14px;align-items:center;text-align:left;border:1px solid #63798d;border-radius:18px;background:radial-gradient(circle at 10% 20%,#253542,#101820 45%,#090e14 100%);color:#e9eff5;cursor:pointer;box-shadow:inset 0 1px 0 #ffffff16,inset 0 -14px 28px #0004,0 16px 38px #0006,0 0 22px #7892a51a;transition:transform .22s,color .22s,border-color .22s,box-shadow .22s,background .22s;clip-path:polygon(13px 0,calc(100% - 13px) 0,100% 13px,100% calc(100% - 13px),calc(100% - 13px) 100%,13px 100%,0 calc(100% - 13px),0 13px);animation:nrv-node-breathe var(--duration,9s) ease-in-out var(--delay,0s) infinite}.tree-node:before{content:'';position:absolute;inset:6px;border:1px solid #8ba0b326;border-radius:12px;pointer-events:none}.tree-node:after{content:'';position:absolute;left:22px;right:22px;bottom:8px;height:1px;background:linear-gradient(90deg,transparent,#8ea4b55e,transparent);pointer-events:none}.tree-icon{grid-column:1;grid-row:1/3;width:48px;height:48px;display:grid;place-items:center;border:1px solid #ff7a1866;border-radius:14px;background:linear-gradient(145deg,#ff7a1819,#ff7a1808);color:#ff9a50;font:700 24px/1 system-ui,sans-serif;box-shadow:inset 0 0 18px #ff6a0012,0 0 14px #ff6a0014}.tree-node>span:not(.tree-icon){grid-column:2;grid-row:1;align-self:end;font:800 18px/1.12 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.02em;color:#fff}.tree-node small{grid-column:2;grid-row:2;align-self:start;margin-top:6px;color:#b7c3ce;font:500 13px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif}.tree-node:hover,.tree-node:focus-visible{transform:translate(-50%,-50%) scale(1.035);border-color:#ff9a50;outline:none;box-shadow:0 0 34px #ff6a0040,inset 0 0 18px #ff6a0015}.tree-node[aria-expanded=true]{border-color:#ff7a18;background:radial-gradient(circle at 12% 25%,#3a2b20,#15181d 52%,#0b1015);box-shadow:0 0 42px #ff6a0060,inset 0 0 25px #ff6a001b}.tree-node[aria-expanded=true]:after{background:linear-gradient(90deg,transparent,#ff9a50,transparent);box-shadow:0 0 10px #ff6a00}.tree-node[aria-expanded=true] .tree-icon{border-color:#ff9a50;background:#ff7a1820;box-shadow:0 0 24px #ff6a0040,inset 0 0 16px #ff6a001d}@keyframes nrv-node-breathe{0%,100%{filter:brightness(1)}50%{filter:brightness(1.08)}}
.tree-core{position:absolute;left:50%;top:90.3%;transform:translate(-50%,-50%);width:176px;height:100px;display:grid;place-items:center;border:1px solid #ff7a1878;border-radius:24px;background:radial-gradient(circle at 50% 20%,#251c17,#0b1016 70%);box-shadow:0 0 42px #ff6a0025,inset 0 0 22px #ff6a000c}.tree-core img{width:136px;height:auto;display:block}.tree-caption{margin:4px 0 26px;text-align:center;color:#aebac6;font-size:14px}
.cap-details[hidden],.cap-detail[hidden]{display:none!important}.cap-details{margin:30px 0 0;scroll-margin-top:112px!important}.cap-detail{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:32px;padding:34px;border:1px solid #77604a;border-radius:24px;background:radial-gradient(ellipse at 100% 0%,#879fb60a,transparent 55%),linear-gradient(145deg,#111a23,#090f15);box-shadow:0 16px 50px #0004;animation:nrv-detail-in .3s ease-out}.cap-detail .num{font:700 14px ui-monospace,monospace;color:#ff9a50}.cap-detail h3{font-size:clamp(27px,4vw,38px);line-height:1.15;letter-spacing:-.03em;margin:16px 0 12px}.cap-detail p{font-size:17px;line-height:1.65;color:#c2cdd8;max-width:65ch;margin:0 0 18px}.cap-detail .solution-list span{font-size:12px}.cap-art{display:grid;place-items:center;align-self:center}.cap-art img{width:100%;max-width:220px;height:auto;filter:grayscale(1);border-radius:14px;opacity:.85}.cap-close{position:absolute;right:12px;top:12px;width:44px;height:44px;display:grid;place-items:center;background:#111a22;color:#dce4ec;border:1px solid #42515e;border-radius:50%;font-size:24px;cursor:pointer}.cap-close:hover{border-color:#ff8a32}.cap-detail .price{min-height:44px;align-items:center;flex-wrap:wrap;color:#ffad72;line-height:1.5}.cap-detail-copy{padding-right:16px;min-width:0}@keyframes nrv-detail-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:640px){.capabilities-tree{aspect-ratio:600/900;max-width:500px;margin-top:18px}.tree-node{width:166px;height:78px;padding:10px 11px;grid-template-columns:34px 1fr;column-gap:8px;border-radius:13px;clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px)}.tree-node:before{inset:4px;border-radius:8px}.tree-icon{width:34px;height:34px;border-radius:9px;font-size:18px}.tree-node>span:not(.tree-icon){font-size:13px}.tree-node small{font-size:10px;margin-top:4px}.tree-wire{stroke-width:2.5}.tree-route{stroke-width:3.5}.tree-energy{stroke-width:6}.tree-core{top:89.5%;width:138px;height:78px}.tree-core img{width:106px}.tree-caption{font-size:13px}.cap-details{margin-top:18px;scroll-margin-top:22px!important}.cap-detail{grid-template-columns:minmax(0,1fr) 82px;padding:58px 18px 24px;gap:10px 16px}.cap-detail-copy{display:contents}.cap-detail .num{grid-column:1;grid-row:1;font-size:12px;align-self:center}.cap-detail h3{grid-column:1/-1;grid-row:2;font-size:27px;margin:6px 0 10px;overflow-wrap:anywhere}.cap-detail p{grid-column:1/-1;grid-row:3;font-size:16px}.cap-detail .solution-list{grid-column:1/-1;grid-row:4;margin:0}.cap-detail .price{grid-column:1/-1;grid-row:5;margin-top:12px;font-size:15px}.cap-art{grid-column:2;grid-row:1;width:64px;align-self:center;justify-self:end}.cap-art img{width:64px}.cap-close{top:10px;right:10px}}
@media(prefers-reduced-motion:reduce){.tree-node,.cap-detail{animation:none}.tree-energy.running{animation:none;opacity:0}.tree-route,.tree-node{transition:none}}
