.rh-hub{--bg:#06090f;--bg2:#090d16;--ink:#0d1524;--line:#c7d0de21;--line-hi:#c7d0de47;--text-hi:#f5f8fd;--text:#f4f7fc;--text-lo:#95a1b5;--green:#58e68e;--teal:#69e9fa;--amber:#f7ca6c;--purple:#8b7bf4;--purple-btn:#6d5ae8;--red:#f87171;--mono:"JetBrains Mono",ui-monospace,monospace;--disp:"Space Grotesk","Inter",system-ui,sans-serif;--serif:"Fraunces",Georgia,serif;--body:"Inter",system-ui,sans-serif}.rh-hub *{box-sizing:border-box;margin:0;padding:0}html:has(.rh-hub){scroll-behavior:smooth;scroll-padding-top:92px}.rh-hub{background:var(--bg);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65;overflow-x:hidden}.rh-hub a{color:var(--green);text-decoration:none;transition:color .18s}.rh-hub a:hover{text-underline-offset:4px;text-decoration:underline}.rh-hub .wrap{max-width:1240px;margin:0 auto;padding:0 32px}.rh-hub .narrow{max-width:880px;margin:0 auto;padding:0 32px}.rh-hub h1,.rh-hub h2,.rh-hub h3{font-family:var(--disp);color:var(--text-hi);letter-spacing:-.02em;text-wrap:balance;line-height:1.08}.rh-hub .serif-i{font-family:var(--serif);font-style:italic;font-weight:400}.rh-hub .mono{font-family:var(--mono)}.rh-hub .btn{font-family:var(--disp);cursor:pointer;border:1px solid #0000;border-radius:99px;align-items:center;gap:.55em;padding:.85em 1.55em;font-size:.98rem;font-weight:600;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.rh-hub .btn:hover{text-decoration:none;transform:translateY(-1px)}.rh-hub .btn:active{transform:scale(.985)}.rh-hub .btn-purple{background:var(--purple-btn);color:#fff;box-shadow:0 10px 34px #6d5ae866}.rh-hub .btn-green{background:var(--green);color:#03230f}.rh-hub .btn-ghost{border-color:var(--line-hi);color:var(--text-hi)}.rh-hub .kicker{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin-bottom:1.1rem;font-size:.72rem;font-weight:600;display:block}.rh-hub .kicker:before{content:"";background:var(--green);vertical-align:middle;width:34px;height:1px;margin-right:14px;display:inline-block}.rh-hub .kicker.amber{color:var(--amber)}.rh-hub .kicker.amber:before{background:var(--amber)}.rh-hub .kicker.teal{color:var(--teal)}.rh-hub .kicker.teal:before{background:var(--teal)}.rh-hub .progress{background:linear-gradient(90deg,var(--green),var(--teal));z-index:70;pointer-events:none;width:0;height:2px;position:fixed;top:0;left:0}.rh-hub a:focus-visible,.rh-hub button:focus-visible,.rh-hub input:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}.rh-hub section{content-visibility:auto;contain-intrinsic-size:auto 800px}.rh-hub .reveal{opacity:0;transition:opacity .6s cubic-bezier(.2,.6,.2,1),transform .6s cubic-bezier(.2,.6,.2,1);transition-delay:var(--d,0s);transform:translateY(16px)}.rh-hub .reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.rh-hub *{transition:none!important;animation:none!important}.rh-hub .reveal{opacity:1!important;transform:none!important}html:has(.rh-hub){scroll-behavior:auto}}.rh-hub header{z-index:60;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#06090fd1;position:sticky;top:0}.rh-hub .nav{align-items:center;gap:26px;height:64px;display:flex}.rh-hub .logo{font-family:var(--disp);color:var(--text-hi);align-items:center;gap:.5em;font-size:1.18rem;font-weight:700;display:flex}.rh-hub .logo .dot{background:conic-gradient(from 200deg,#4a6cf7,#6d5ae8,#58e68e,#4a6cf7);border-radius:50%;width:25px;height:25px}.rh-hub .nav-links{gap:22px;font-size:.92rem;font-weight:500;display:flex}.rh-hub .nav-links a{color:var(--text)}.rh-hub .nav-links a:hover{color:var(--text-hi);text-decoration:none}.rh-hub .nav-spacer{flex:1}.rh-hub .hamburger{border:1px solid var(--line-hi);cursor:pointer;background:0 0;border-radius:8px;flex-direction:column;gap:5px;padding:10px;display:none}.rh-hub .hamburger span{background:var(--text-hi);width:20px;height:2px}.rh-hub .hero{padding:64px 0 48px;position:relative;overflow:hidden}.rh-hub .hero:before{content:"";pointer-events:none;background:radial-gradient(900px 420px at 80% -10%,#58e68e1f,#0000 55%),radial-gradient(700px 400px at 5% 110%,#6d5ae824,#0000 60%);position:absolute;inset:0}.rh-hub .hero-inner{text-align:center;max-width:880px;margin:0 auto;position:relative}.rh-hub .hero .co{font-family:var(--mono);letter-spacing:.16em;color:var(--text-lo);margin-bottom:1.4rem;font-size:.72rem;display:block}.rh-hub .hero .co b{color:var(--text-hi)}.rh-hub .hero .co .pulse{color:var(--green)}.rh-hub .hero h1{white-space:nowrap;font-size:clamp(1.5rem,3.6vw,2.9rem);font-weight:700}.rh-hub .hero h1 .g{background:linear-gradient(100deg,#58e68e,#69e9fa);color:#0000;-webkit-background-clip:text;background-clip:text}.rh-hub .hero .sub{max-width:58ch;color:var(--text);margin:1.1rem auto 0;font-size:1.06rem}.rh-hub .hero .sub .story-link{white-space:nowrap}.rh-hub .cmdbar{background:var(--ink);border:1px solid var(--line-hi);border-radius:16px;align-items:center;gap:12px;max-width:640px;margin:2rem auto 0;padding:8px 8px 8px 20px;display:flex;box-shadow:0 20px 60px #0006}.rh-hub .cmdbar:focus-within{border-color:#58e68e80}.rh-hub .cmdbar .icon{color:var(--text-lo);font-size:1rem}.rh-hub .cmdbar input{color:var(--text-hi);font-family:var(--body);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-size:1rem}.rh-hub .cmdbar input::placeholder{color:var(--text-lo)}.rh-hub .cmdbar .btn{padding:.65em 1.3em;font-size:.9rem}.rh-hub .snap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#04070c}.rh-hub .snap .wrap{align-items:center;gap:0;display:flex;overflow-x:auto}.rh-hub .snap-item{border-right:1px solid var(--line);white-space:nowrap;font-family:var(--mono);letter-spacing:.04em;align-items:baseline;gap:.6em;padding:13px 22px;font-size:.74rem;display:flex}.rh-hub .snap-item:first-child{padding-left:0}.rh-hub .snap-item .k{color:var(--text-lo);letter-spacing:.12em;font-size:.62rem}.rh-hub .snap-item .v{color:var(--text-hi);font-weight:600}.rh-hub .snap-item .v.g{color:var(--green)}.rh-hub .snap-item .v.t{color:var(--teal)}.rh-hub .copy-btn{font-family:var(--mono);color:var(--text);border:1px solid var(--line-hi);cursor:pointer;background:#c7d0de14;border-radius:6px;padding:.35em .7em;font-size:.58rem;font-weight:600;transition:border-color .18s,color .18s}.rh-hub .copy-btn:hover{border-color:var(--green);color:var(--green)}.rh-hub .snap-item a{font-size:.7rem}.rh-hub .orient{padding:88px 0 56px}.rh-hub .orient-lede{font-family:var(--serif);color:var(--text-hi);max-width:74ch;font-size:clamp(1.02rem,1.6vw,1.2rem);font-style:italic;line-height:1.5}.rh-hub .orient-lede .hood{color:var(--green);font-style:normal;font-family:var(--disp);font-weight:600}.rh-hub .orient-lede a{font-style:normal}.rh-hub .orient-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:18px;display:grid}.rh-hub .orient-card{border-left:2px solid var(--green);padding:2px 0 2px 16px}.rh-hub .orient-card.o2{border-left-color:var(--teal)}.rh-hub .orient-card.o3{border-left-color:var(--amber)}.rh-hub .orient-card .k{font-family:var(--mono);letter-spacing:.16em;color:var(--green);margin-bottom:6px;font-size:.64rem;font-weight:600;display:block}.rh-hub .orient-card.o2 .k{color:var(--teal)}.rh-hub .orient-card.o3 .k{color:var(--amber)}.rh-hub .orient-card p{color:var(--text);font-size:.84rem}.rh-hub .orient-card p b{color:var(--text-hi)}.rh-hub .orient-card a{font-size:.86rem}@media(max-width:1024px){.rh-hub .orient-grid{grid-template-columns:1fr}}.rh-hub .library{background:var(--bg);padding:96px 0}.rh-hub .lib-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:8px;display:flex}.rh-hub .lib-head h2{font-size:clamp(1.9rem,4vw,3rem)}.rh-hub .lib-head .meta{font-family:var(--mono);letter-spacing:.12em;color:var(--text-lo);text-align:right;font-size:.7rem;line-height:2}.rh-hub .lib-head .meta b{color:var(--green)}.rh-hub .pills{flex-wrap:wrap;gap:8px;margin:22px 0 8px;display:flex}.rh-hub .pill{font-family:var(--mono);letter-spacing:.08em;color:var(--text);border:1px solid var(--line-hi);cursor:pointer;background:0 0;border-radius:99px;padding:.55em 1.15em;font-size:.7rem;font-weight:600;transition:all .15s}.rh-hub .pill:hover{border-color:var(--green);color:var(--green)}.rh-hub .pill.active{background:var(--green);border-color:var(--green);color:#03230f}.rh-hub .start-row{grid-template-columns:repeat(4,1fr);gap:14px;margin:26px 0 40px;display:grid}.rh-hub .start-card{background:linear-gradient(160deg,#58e68e14,var(--ink));color:inherit;border:1px solid #58e68e59;border-radius:16px;padding:20px 22px;transition:transform .2s,border-color .2s;display:block}.rh-hub .start-card:hover{border-color:var(--green);text-decoration:none;transform:translateY(-3px)}.rh-hub .start-card .tag{font-family:var(--mono);letter-spacing:.14em;color:var(--green);margin-bottom:8px;font-size:.6rem;font-weight:600;display:block}.rh-hub .start-card b{font-family:var(--disp);color:var(--text-hi);margin-bottom:6px;font-size:1.02rem;line-height:1.3;display:block}.rh-hub .start-card span{color:var(--text-lo);font-size:.83rem;line-height:1.45;display:block}.rh-hub .lib-grid{columns:3;column-gap:44px}.rh-hub .lib-group{break-inside:avoid;margin-bottom:34px}.rh-hub .g-head{font-family:var(--mono);letter-spacing:.18em;color:var(--text-lo);align-items:baseline;gap:12px;margin-bottom:6px;font-size:.68rem;font-weight:600;display:flex}.rh-hub .g-head .cnt{color:var(--green)}.rh-hub .g-head .rule{background:var(--line-hi);flex:1;height:1px}.rh-hub .lib-group a.row{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 2px;transition:background .2s,padding-left .2s;display:flex}.rh-hub .lib-group a.row:hover{background:linear-gradient(90deg,#58e68e0f,#0000);padding-left:8px;text-decoration:none}.rh-hub .lib-group a.row .ti{font-family:var(--disp);color:var(--text-hi);font-size:.94rem;font-weight:600;line-height:1.3}.rh-hub .lib-group a.row:hover .ti{color:var(--green)}.rh-hub .lib-group a.row .rt{font-family:var(--mono);letter-spacing:.06em;color:var(--text-lo);white-space:nowrap;font-size:.6rem}.rh-hub .lib-group a.row .rt .new{color:var(--green)}.rh-hub .lib-foot{color:var(--text-lo);margin-top:18px;font-size:.9rem}.rh-hub .no-results{color:var(--text-lo);padding:30px 0;font-size:.95rem;display:none}.rh-hub .paths{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:96px 0}.rh-hub .eco-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.rh-hub .eco-head h2{max-width:22ch;font-size:clamp(1.5rem,2.8vw,2rem)}.rh-hub .eco-head p{max-width:44ch;color:var(--text-lo);font-size:.92rem}.rh-hub .eco-head p b{color:var(--text)}.rh-hub .unit-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.rh-hub .unit{background:var(--ink);border:1px solid var(--line);border-top:2px solid var(--green);border-radius:14px;flex-direction:column;padding:22px 24px;transition:transform .2s,border-color .2s;display:flex}.rh-hub .unit:hover{transform:translateY(-3px)}.rh-hub .unit.u2{border-top-color:var(--teal)}.rh-hub .unit.u3{border-top-color:var(--amber)}.rh-hub .unit h3{font-family:var(--disp);margin-bottom:2px;font-size:1.18rem}.rh-hub .unit h3 .n{color:var(--green)}.rh-hub .unit.u2 h3 .n{color:var(--teal)}.rh-hub .unit.u3 h3 .n{color:var(--amber)}.rh-hub .unit .role{font-family:var(--mono);letter-spacing:.14em;color:var(--text-lo);margin-bottom:10px;font-size:.62rem;font-weight:600;display:block}.rh-hub .unit p{color:var(--text-lo);flex:1;margin-bottom:14px;font-size:.88rem}.rh-hub .unit p b{color:var(--text)}.rh-hub .unit .links{flex-wrap:wrap;gap:4px 16px;margin-bottom:16px;font-size:.82rem;display:flex}.rh-hub .unit .links a{color:var(--text-hi);border-bottom:1px solid var(--line-hi);padding-bottom:1px}.rh-hub .unit .links a:hover{color:var(--green);border-color:var(--green);text-decoration:none}.rh-hub .unit .btn{justify-content:center;padding:.7em 1.2em;font-size:.9rem}@media(max-width:1024px){.rh-hub .unit-grid{grid-template-columns:1fr}}.rh-hub .console{border-bottom:1px solid var(--line);background:#04070c;padding:96px 0}.rh-hub .console .head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:28px;display:flex}.rh-hub .console h2{font-size:clamp(1.5rem,2.6vw,2rem)}.rh-hub .console .src{font-family:var(--mono);letter-spacing:.1em;color:var(--text-lo);font-size:.66rem}.rh-hub .console .src a{color:var(--text)}.rh-hub .term-grid{background:var(--line);border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(12,1fr);gap:1px;display:grid;overflow:hidden}.rh-hub .cell{background:#070b12;grid-column:span 3;padding:20px 22px;transition:background .25s}.rh-hub .cell:hover{background:#0a101b}.rh-hub .cell.w4{grid-column:span 4}.rh-hub .cell.w6{grid-column:span 6}.rh-hub .cell .k{font-family:var(--mono);letter-spacing:.16em;color:var(--text-lo);justify-content:space-between;align-items:center;margin-bottom:9px;font-size:.62rem;font-weight:600;display:flex}.rh-hub .cell .v{font-family:var(--mono);color:var(--text-hi);overflow-wrap:anywhere;font-size:1rem}.rh-hub .cell .v .dim{color:var(--text-lo);font-size:.78rem}.rh-hub .cell .v.g{color:var(--green)}.rh-hub .cell .v.t{color:var(--teal)}.rh-hub .cell .note{color:var(--text-lo);font-size:.78rem;font-family:var(--body);margin-top:5px}.rh-hub .spark{width:100%;height:40px;margin-top:6px}.rh-hub .story-sec{padding:110px 0;position:relative}.rh-hub .story-lede{color:var(--text-hi);max-width:34ch;font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.45;font-family:var(--serif);font-style:italic}.rh-hub .story-lede .hood{color:var(--green);font-style:normal;font-family:var(--disp);font-weight:600}.rh-hub .story-cols{grid-template-columns:1fr 1fr;gap:56px;margin-top:44px;display:grid}.rh-hub .story-cols p{margin-bottom:1.3rem;font-size:1rem}.rh-hub .story-cols p b{color:var(--text-hi)}.rh-hub .flowline{margin-top:70px;position:relative}.rh-hub .flowline .rail{background:linear-gradient(90deg,transparent,var(--line-hi) 8%,var(--line-hi) 92%,transparent);height:1px;position:absolute;top:30px;left:0;right:0}.rh-hub .fl-items{grid-template-columns:repeat(5,1fr);gap:24px;display:grid;position:relative}.rh-hub .fl{padding-top:50px;position:relative}.rh-hub .fl:before{content:"";background:var(--bg);border:2px solid var(--text-lo);border-radius:50%;width:12px;height:12px;position:absolute;top:24px;left:2px}.rh-hub .fl.hot:before{background:var(--green);border-color:var(--green);box-shadow:0 0 16px #58e68eb3}.rh-hub .fl .d{font-family:var(--mono);letter-spacing:.14em;color:var(--text-lo);margin-bottom:.4rem;font-size:.66rem;font-weight:600;display:block}.rh-hub .fl.hot .d{color:var(--green)}.rh-hub .fl h4{font-family:var(--disp);color:var(--text-hi);margin-bottom:.3rem;font-size:.98rem}.rh-hub .fl p{color:var(--text-lo);font-size:.83rem}.rh-hub .defs{border-top:1px solid var(--line);margin-top:70px}.rh-hub .def{border-bottom:1px solid var(--line);grid-template-columns:280px 1fr;align-items:baseline;gap:40px;padding:30px 0;display:grid}.rh-hub .def .term{font-family:var(--disp);color:var(--text-hi);font-size:1.4rem;font-weight:600}.rh-hub .def .term .ph{font-family:var(--serif);color:var(--text-lo);margin-top:3px;font-size:.9rem;font-style:italic;font-weight:400;display:block}.rh-hub .def .body{max-width:64ch;font-size:.98rem}.rh-hub .def .body b{color:var(--text-hi)}.rh-hub .def .body .warn{color:var(--amber);font-weight:600}.rh-hub .faq-sec{background:var(--bg2);border-top:1px solid var(--line);padding:110px 0}.rh-hub .faq details{border-bottom:1px solid var(--line)}.rh-hub .faq summary{cursor:pointer;font-family:var(--disp);color:var(--text-hi);justify-content:space-between;align-items:baseline;gap:18px;padding:22px 0;font-size:1.08rem;font-weight:600;list-style:none;display:flex}.rh-hub .faq summary::-webkit-details-marker{display:none}.rh-hub .faq summary .ix{font-family:var(--mono);color:var(--text-lo);margin-right:16px;font-size:.66rem}.rh-hub .faq summary:after{content:"+";color:var(--green);font-size:1.4rem;font-weight:400}.rh-hub .faq details[open] summary:after{content:"–"}.rh-hub .faq .a{max-width:66ch;padding:0 0 22px 42px;font-size:.96rem;animation:.3s both faqIn}@keyframes faqIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.rh-hub .final{text-align:center;padding:100px 0;position:relative;overflow:hidden}.rh-hub .final:before{content:"";background:radial-gradient(700px 380px at 50% 15%,#58e68e1c,#0000 60%);position:absolute;inset:0}.rh-hub .final h2{font-size:clamp(2.2rem,5vw,3.4rem);position:relative}.rh-hub .final h2 .g{color:var(--green)}.rh-hub .final p{max-width:46ch;color:var(--text-lo);margin:18px auto 34px;position:relative}.rh-hub .final-ctas{flex-wrap:wrap;justify-content:center;gap:14px;display:flex;position:relative}.rh-hub footer{border-top:1px solid var(--line);color:var(--text-lo);padding:34px 0 42px;font-size:.84rem}.rh-hub .foot-row{flex-wrap:wrap;justify-content:space-between;gap:20px;margin-bottom:16px;display:flex}.rh-hub .disclaimer{border-top:1px solid var(--line);max-width:74ch;padding-top:14px;font-size:.78rem}@media(max-width:1024px){.rh-hub .start-row{grid-template-columns:1fr 1fr}.rh-hub .lib-grid{columns:2}.rh-hub .story-cols{grid-template-columns:1fr;gap:0}.rh-hub .fl-items{grid-template-columns:1fr}.rh-hub .flowline .rail{display:none}.rh-hub .fl{border-left:1px solid var(--line-hi);padding:14px 0 14px 26px}.rh-hub .fl:before{top:20px;left:-7px}.rh-hub .def{grid-template-columns:1fr;gap:8px}.rh-hub .term-grid{grid-template-columns:1fr 1fr}.rh-hub .cell,.rh-hub .cell.w4,.rh-hub .cell.w6{grid-column:span 1}}@media(max-width:640px){.rh-hub .nav-links{display:none}.rh-hub .hamburger{display:flex}.rh-hub .start-row,.rh-hub .lib-grid{columns:auto;grid-template-columns:1fr;display:grid}.rh-hub .lib-grid{columns:1;display:block}.rh-hub .term-grid{grid-template-columns:1fr}.rh-hub .cmdbar{flex-direction:column;align-items:stretch;padding:14px}.rh-hub .cmdbar .btn{justify-content:center}.rh-hub{font-size:16px}.rh-hub .faq .a{padding-left:0}}.rh-hub .logo img{width:28px;height:28px;display:block}.rh-hub .mobile-menu{border-top:1px solid var(--line);background:#06090ffa;flex-direction:column;gap:2px;padding:10px 32px 18px;display:none}.rh-hub .mobile-menu a{color:var(--text-hi);font-family:var(--disp);border-bottom:1px solid var(--line);padding:12px 0;font-size:1rem;font-weight:600}.rh-hub .mobile-menu.open{display:flex}@media(min-width:641px){.rh-hub .mobile-menu{display:none!important}}.rh-hub .hero-ctas{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:2rem;display:flex}.rh-hub .btn-ghost{border:1px solid var(--line-hi);color:var(--text-hi);background:0 0}.rh-hub .btn-ghost:hover{border-color:var(--green);color:var(--green)}.rh-hub .pills-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.rh-hub .pills-row .pills{flex:auto}.rh-hub .lib-filter{background:var(--ink);border:1px solid var(--line-hi);border-radius:99px;align-items:center;gap:8px;margin:22px 0 8px;padding:6px 16px;display:flex}.rh-hub .lib-filter:focus-within{border-color:#58e68e80}.rh-hub .lib-filter input{color:var(--text-hi);font-family:var(--body);background:0 0;border:none;outline:none;width:190px;padding:4px 0;font-size:.9rem}.rh-hub .lib-filter input::placeholder{color:var(--text-lo)}@media(max-width:640px){.rh-hub .hero h1{white-space:normal}.rh-hub .lib-filter,.rh-hub .lib-filter input{width:100%}}
